Independent Container Layer Sharing to Reduce Redundant Downloads
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed computing systems, container image layers are unique to specific images, leading to excessive networking costs when individual applications re-download layers that already exist on the local system, especially in environments with heavy use of containerized applications.
Innovation Solution
A container orchestrator identifies shared dependencies among container images and rebuilds them to include both application-specific and shared layers, optimizing network costs by leveraging local caching.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If container images download layers from remote repositories, then container images can be built and stored, but network costs increase due to redundant downloads of shared layers
Solution Approach 1:
The patent merges shared layers from multiple container images into a single shared layer stored on the host system. When building container images, the system identifies common dependency layers across images and consolidates them, so that instead of each image downloading its own copy of shared layers, all images reference the single shared layer stored locally on the host.
Solution Approach 2:
The host system acts as an intermediary between container images and the remote layer cache. It maintains a local cache of shared layers and mediates the layer retrieval process by serving shared layers from this local cache to multiple container images, thereby reducing redundant network requests and downloads.
2Adaptability or versatility
If container images are built with unique layers, then application-specific functionality is achieved, but network costs increase when multiple images need the same layers
Solution Approach 1:
The patent segments container image layers into two distinct types: shared layers (common dependency layers) and application-specific layers (unique to each container image). This segmentation allows the system to treat different layers differently - shared layers are consolidated and cached locally, while application-specific layers remain unique to each image.
Solution Approach 2:
The system applies different storage and retrieval strategies to different layer types based on their quality characteristics. Shared layers are stored locally on the host system for efficient access, while application-specific layers are retrieved only when needed. This local quality approach optimizes network usage by ensuring shared layers are always available from local cache.
Data Source
AI summary
An information handling system may include a processor and a container orchestrator comprising a program of instructions configured to, when read and executed by the processor, in a distributed ecosystem comprising a plurality of host systems, in connection with a build of a new container image to be stored in a container image repository associated with the distributed ecosystem: identify, based on existing container images stored in the container image repository, existing dependency layers of the existing container images for which the new container image has dependencies; identify application-specific layers of the new container image unique to the new container image; and build and store the new container image in the container image repository, the image including the application-specific layers and the dependency layers.


