Proxy-Based Inter-Container Messaging for Secure OS Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtualized operating systems face challenges in secure and efficient communication between isolated user space containers, as they often require granting global messaging privileges to processes, which can compromise system security and stability.

Innovation Solution

A method and system that decouples local messaging within an operating system container from inter-container messaging by using different messaging mechanisms, allowing a first proxy in one user space container to forward messages to a second proxy using a distinct messaging mechanism, and delivering the message to a service in the second container using either the original or a different mechanism, thereby reducing the number of privileged processes and enhancing access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If global messaging privileges are granted to processes for inter-container communication, then communication capability is improved, but system security and stability deteriorate

Engineering Contradiction:
Improveinter-container communication capabilityVSAvoidsystem security and stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a proxy process as an intermediary between containers for inter-container messaging. The proxy process acts as a mediator that receives messages from one container and forwards them to the destination container, eliminating the need for application processes to have direct global messaging privileges. This resolves the contradiction by enabling communication capability through the proxy while maintaining security by restricting direct process privileges.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the messaging function by separating it from application processes and placing it in a dedicated proxy process. This segmentation allows the messaging functionality to be isolated and controlled independently, enabling inter-container communication without granting broad messaging privileges to all processes, thus maintaining system security while achieving communication goals.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If multiple privileged processes are used for messaging, then communication flexibility is improved, but system complexity and security risks increase

Engineering Contradiction:
Improvemessaging flexibilityVSAvoidnumber of privileged processes
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The proxy process is designed as a universal component that handles messaging between any containers, rather than requiring separate privileged processes for each messaging scenario. The proxy process can route messages to multiple destinations and handle various messaging scenarios, providing flexibility without increasing the number of privileged processes. This resolves the contradiction by consolidating messaging functionality into a single multi-functional proxy.

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

Data Source

PatentEP3459229B1System and method for messaging between operating system containers
Publication Date: 2020.12.09 HUAWEI TECH CO LTD
  • EP3459229B1 patent drawingFigure 1
  • EP3459229B1 patent drawingFigure 2
  • EP3459229B1 patent drawingFigure 3

AI summary

A method for messaging between operating system containers includes receiving, by a first proxy in a first user space container, a first message from a first service in the first user space container, the first message sent to the first proxy using a first messaging mechanism, forwarding, by the first proxy, the first message to a second proxy in a second user space container, the first message sent to the second proxy using a second messaging mechanism that is different than the first messaging mechanism, and delivering, by the second proxy, the first message to a second service in the second user space container.