Zero-Copy Packet Transmission Between Virtualized Instances
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional packet transmission between virtual machines (VMs) on the same host in a Software-Defined Networking (SDN) environment is inefficient, leading to reduced throughput and increased latency due to the need for packet copying between transmit and receive buffers.
Innovation Solution
Implementing a zero-copy packet transmission approach where packets are stored in a shared memory location accessible by both the source and destination VMs, eliminating the need for copying and optimizing the efficiency of the virtual switch, thereby reducing CPU utilization and improving throughput.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If packet copying between transmit and receive buffers is implemented in conventional packet transmission, then packet transmission between VMs can be achieved, but transmission efficiency decreases and latency increases
Solution Approach 1:
The patent extracts the packet copying operation from the transmission path by implementing a zero-copy mechanism. Instead of copying packets between transmit and receive buffers through the virtual switch, the system allows direct memory access between source and destination VMs, removing the harmful copying step that caused efficiency loss and latency.
Solution Approach 2:
The patent introduces a memory mapping mechanism as an intermediary that enables direct access between VMs without physical packet copying. The virtual switch maintains forwarding tables that map source and destination VM identifiers to their respective buffer addresses, allowing packets to be transmitted directly through shared memory space without traditional copying operations.
2Ease of operation
If packet copying is performed in the virtual switch, then packet forwarding between VMs is enabled, but CPU utilization increases
Solution Approach 1:
The patent extracts the CPU-intensive packet copying operation from the virtual switch by implementing zero-copy transmission. The virtual switch only performs lightweight table lookups and memory address translations, while the actual packet movement occurs directly between VM memory spaces, dramatically reducing CPU utilization.
Solution Approach 2:
The patent replaces the mechanical packet copying process with a memory-mapped I/O approach. Instead of physically copying packet data through CPU-mediated operations, the system uses memory address translation and direct memory access, substituting the traditional mechanical copying mechanism with a more efficient memory management approach.
Data Source
AI summary
Example methods are provided for a host to perform zero-copy packet transmission. On example method may comprise allocating a transmit (TX) packet buffer to a first virtualized computing instance and a receive (RX) packet buffer to a second virtualized computing instance, wherein the TX packet buffer and the RX packet buffer are both mapped to a shared memory location associated with the host. The method may also comprise: accessing, by the first virtualized computing instance, the TX packet buffer to store a packet in the shared memory location; processing, by the forwarding element, the packet in the shared memory location; and accessing, by the second virtualized computing instance, the RX packet buffer to receive the packet stored in the shared memory location.


