Inter-Container Direct Memory Access via Address Space Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems face challenges in efficiently managing large data sets and supporting a large number of concurrent users, particularly in distributed and geographically diverse environments, where existing technologies struggle with memory allocation and direct access across virtual storage directors.
Innovation Solution
The implementation of a computing node with a hypervisor that allocates memory to virtual storage directors and uses a driver program to map and lock address spaces, enabling direct memory access between virtual storage directors across containers, allowing for efficient inter-container direct memory access and zero-copy operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory is allocated to virtual storage directors in separate containers, then memory isolation and security are improved, but direct memory access between virtual storage directors is prevented
Solution Approach 1:
The patent introduces a driver program as an intermediary component that enables direct memory access between virtual storage directors in separate containers. The driver program maps address spaces and manages memory locking, allowing VSD1 to access memory allocated to VSD2 without breaking container isolation. This mediator resolves the contradiction by providing controlled access paths that maintain security boundaries while enabling efficient data transfer.
2Reliability
If traditional memory access methods are used across containers, then memory isolation is maintained, but access latency increases due to virtual switch traversal
Solution Approach 1:
The patent segments the memory address space into distinct regions that can be mapped between containers. By dividing the address space and creating specific mapping relationships, the system allows direct access to specific memory segments without traversing the virtual switch, thereby reducing latency while maintaining isolation for other memory regions.
Solution Approach 2:
The driver program acts as an intermediary that provides direct memory access paths, eliminating the need to traverse the virtual switch for inter-container memory operations. This reduces access latency significantly while the driver maintains proper isolation boundaries through address space mapping and locking mechanisms.
3Productivity
If address space mapping is implemented between containers, then direct memory access is enabled, but system complexity increases
Solution Approach 1:
The driver program implements self-service mechanisms for address space management by automatically handling mapping and locking operations. The system manages its own address space mappings and memory locks without requiring external intervention, which simplifies the overall system architecture despite the complexity of inter-container memory access requirements.
Data Source
AI summary
A driver enables a first virtual storage director running in a container maintained by a hypervisor to achieve direct memory access to memory of a second virtual storage director running in a different container. An address space is made available to the first virtual storage director. A first portion of the address space is associated with memory allocated to the first virtual storage director by the container. A second portion of the address space is mapped to memory allocated to the second virtual storage director.


