Virtual Machine RDMA Shared Memory Aperture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current RDMA communication between virtual machines incurs high network overheads and delays due to the need for multiple steps of virtualization and data forwarding, reducing system efficiency.
Innovation Solution
Implementing a packet transmission method that allows applications on virtual machines to directly access shared memory, bypassing network virtualization and using a shared agent for RDMA data transfer, thereby reducing network overheads and improving efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If virtualization and data forwarding are performed multiple times for RDMA communication between virtual machines, then network communication can be achieved between virtual machines, but network overheads increase and delay increases
Solution Approach 1:
The patent extracts and removes the virtualization and data forwarding steps from the RDMA communication path between virtual machines. By allowing direct memory access between VMs without passing through virtual switches or performing multiple forwarding operations, the solution eliminates unnecessary processing steps while maintaining communication capability.
Solution Approach 2:
The patent introduces a shared memory aperture as an intermediary mechanism that enables direct communication between virtual machines. This shared aperture allows VMs to access each other's memory directly through RDMA operations without requiring traditional network virtualization layers, thus reducing overhead and delay.
2Reliability
If virtualization and data forwarding are performed multiple times for RDMA communication between virtual machines, then network communication can be achieved between virtual machines, but system efficiency decreases
Solution Approach 1:
The patent removes unnecessary virtualization and data forwarding operations from the communication path, extracting only the essential RDMA memory access functionality. This reduction in processing steps directly improves system efficiency while preserving the ability to communicate between virtual machines.
Solution Approach 2:
The patent enables virtual machines to perform self-service memory access through direct RDMA operations on shared apertures. By allowing VMs to access each other's memory directly without intermediary forwarding services, the system eliminates redundant processing and improves overall efficiency.
3Reliability
If traditional network virtualization is used for RDMA communication, then virtual machines can communicate over the network, but network overheads increase
Solution Approach 1:
The patent extracts and eliminates the traditional network virtualization layer from the RDMA communication path. By allowing direct memory access between virtual machines through shared apertures, the solution removes the overhead associated with virtual switches and multiple forwarding operations while maintaining communication capability.
Solution Approach 2:
The patent replaces the mechanical network virtualization system with a direct memory access mechanism. Instead of using traditional network protocols and virtualization layers, the solution uses shared memory apertures that allow direct RDMA operations, significantly reducing network overhead and energy consumption.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention provides a data transmission method, and an apparatus for implementing the method. In current practice, when applications running on virtual devices on hosts communicate through remote direct memory access, virtualization and data forwarding need to be performed for a plurality of times. As a result, steps required for performing data transmission are increased, and high network overheads and a long delay are caused. For a problem of low efficiency caused in the current practice, in the present invention, an application on a virtual device applies for shared memory, and uses the shared memory to transmit data with another application. In this way, steps required for performing data transmission between applications on virtual devices are reduced, network overheads are reduced, a delay is shortened, and system efficiency is improved.