Container Image Upgrade via Incremental Layer Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Linux containers do not support incremental image upgrades, leading to wastage of bandwidth and disk resources, and inefficient upgrade processes.

Innovation Solution

An image upgrade method that uses incremental image files to update container image layers by forming new sublayers, merging existing sublayers, and setting hidden states for deleted files, ensuring efficient bandwidth use and reduced disk space without losing container data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a complete image is downloaded to upgrade a Linux container, then the image upgrade can be completed, but bandwidth is wasted and disk resources are wasted and upgrade time is increased

Engineering Contradiction:
Improveimage upgrade completionVSAvoidbandwidth waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The image is segmented into multiple layers (read-only layers and read-write layers). During upgrade, only the necessary incremental layers are downloaded and applied, rather than downloading the complete image. This segmentation allows selective updating of image components, reducing bandwidth consumption while ensuring reliable upgrades.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The container image is pre-configured with layered structure and metadata information before the upgrade process. This preliminary organization enables the system to identify and download only the specific incremental layers needed for the upgrade, rather than downloading the entire image, thus conserving bandwidth resources.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If a complete image is downloaded to upgrade a Linux container, then the image upgrade can be completed, but disk space on the device is wasted

Engineering Contradiction:
Improveimage upgrade completionVSAvoiddisk space
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The image is segmented into multiple layers (read-only layers and read-write layers). During upgrade, only the necessary incremental layers are downloaded and applied, rather than downloading the complete image. This segmentation allows selective updating of image components, reducing bandwidth consumption while ensuring reliable upgrades.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The container image uses a nested layered structure where multiple image layers are stacked hierarchically. Each layer can be independently managed, updated, or removed. This nesting allows the system to apply only the specific incremental layers needed for upgrading, minimizing disk space usage while completing the upgrade reliably.

Inventive Principle:
Principle #7Nested doll (Nesting)

3Reliability

If a complete image is downloaded to upgrade a Linux container, then the image upgrade can be completed, but upgrade time is increased

Engineering Contradiction:
Improveimage upgrade completionVSAvoidupgrade time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The image is segmented into multiple layers (read-only layers and read-write layers). During upgrade, only the necessary incremental layers are downloaded and applied, rather than downloading the complete image. This segmentation allows selective updating of image components, reducing bandwidth consumption while ensuring reliable upgrades.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The container image is pre-configured with layered structure and metadata information before the upgrade process. This preliminary organization enables the system to identify and download only the specific incremental layers needed for the upgrade, rather than downloading the entire image, thus conserving bandwidth resources.

Inventive Principle:
Principle #10Preliminary action

4Loss of energy

If layered management is implemented on container image layers, then incremental image upgrade is supported and bandwidth and disk resources are saved, but system complexity increases

Engineering Contradiction:
Improvebandwidth savingVSAvoidsystem complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The image is segmented into multiple layers (read-only layers and read-write layers). During upgrade, only the necessary incremental layers are downloaded and applied, rather than downloading the complete image. This segmentation allows selective updating of image components, reducing bandwidth consumption while ensuring reliable upgrades.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The layered image management system is designed to be universal, working with standard container formats and providing multiple functions (incremental updates, rollback, space optimization) through a single unified architecture. This multi-functionality reduces the need for separate complex systems while achieving resource efficiency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3678019B1Mirror image upgrading method and device
Publication Date: 2022.07.27 HUAWEI TECH CO LTD
  • EP3678019B1 patent drawingFigure 1~3
  • EP3678019B1 patent drawingFigure 4~6
  • EP3678019B1 patent drawingFigure 7~9

AI summary

An image upgrade method is provided. The method includes: receiving an incremental image file of a container (401), where the incremental image file includes a newly-added file, a modified file, and information about a deleted file, and the information about the deleted file includes a name of each deleted file and a storage path of the deleted file; updating an original image layer based on the incremental image file to obtain an updated image layer (402), where a state of the deleted file is set to a hidden state at the updated image layer; and overlaying a file at the updated image layer with a file at a container data layer to form an updated unified view at a view layer for use by the container (403), where the updated unified view does not include the deleted file whose state is set to the hidden state.