Container Data Rerouting via Shared Namespace

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional systems for managing application containers are inefficient in handling storage and storage I/O operations, leading to increased resource demands on hosts due to the overhead of data transfer through kernel space.

Innovation Solution

The method involves identifying application and storage containers, configuring them to share a namespace, and creating a resource within this shared namespace to reroute data between them, bypassing the kernel and using user space for data transfer, potentially employing a data structure in shared memory or an inter-process communication socket.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is transferred through kernel space between application containers and storage containers, then data transfer can be performed using traditional system calls, but host processing resources are overwhelmed due to the overhead of kernel space operations

Engineering Contradiction:
Improvedata transfer capabilityVSAvoidhost processing resource availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces a message queue as an intermediary component that mediates data transfer between application containers and storage containers. Instead of direct kernel space operations, data is queued in user space and processed asynchronously, reducing the burden on host processing resources while maintaining reliable data transfer capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the traditional mechanical kernel space data transfer mechanism with a user space message queue system. This substitution eliminates the need for costly context switches and kernel mode transitions, significantly reducing processing overhead while maintaining data transfer functionality.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If more application containers are run on the same host, then resource utilization increases, but storage I/O demand and kernel processing load increase proportionally

Engineering Contradiction:
Improvecontainer densityVSAvoidstorage I/O management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the monolithic storage I/O management system into container-level message queues. Each container has its own message queue instance, allowing independent management and processing of I/O requests. This segmentation reduces the complexity of managing storage I/O for multiple containers simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The message queue system enables containers to self-manage their own data transfer operations through standardized queue interfaces. Containers can independently enqueue and dequeue messages without requiring complex centralized coordination, reducing the overall system complexity while supporting high container density.

Inventive Principle:
Principle #25Self-service

3Ease of manufacture

If traditional container management systems are used, then implementation is straightforward using existing tools, but efficiency in handling storage and storage I/O is poor

Engineering Contradiction:
Improvesystem implementation easeVSAvoidstorage I/O handling efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The message queue system serves multiple functions: it handles data transfer between containers, manages storage I/O operations, provides buffering capabilities, and enables asynchronous processing. This multi-functionality improves storage I/O handling efficiency while maintaining ease of implementation through a unified, standardized interface.

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

Data Source

PatentUS10298681B1Systems and methods for rerouting data sent between application containers and storage containers
Publication Date: 2019.05.21 ARCTERA US LLC
  • US10298681B1 patent drawing
  • US10298681B1 patent drawing
  • US10298681B1 patent drawing

AI summary

The disclosed computer-implemented method for rerouting data sent between application containers and storage containers may include (1) identifying an application container, a storage container that stores data for the application container, and a host that hosts both the application container and the storage container, (2) configuring the application container and the storage container to share a namespace on the host, (3) creating, within the shared namespace on the host, a resource that enables the application container and the storage container to share data, and (4) rerouting at least one item of data sent between the application container and the storage container to pass through the resource in the shared namespace rather than through a kernel of the host. Various other methods, systems, and computer-readable media are also disclosed.