vNIC Device Driver Batched Frame Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized environments, the inefficiency of sending data frames from virtual machines to hypervisors due to system calls and processor state transitions reduces overall system performance and limits bandwidth utilization.
Innovation Solution
Implementing a method where device drivers of virtual network interface controllers (vNICs) store data frames in queues and generate optimized data frames with a modified Ethernet preamble, which are then sent to the hypervisor, reducing processor transitions and maintaining frame integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data frames are sent individually from virtual machines to hypervisors using system calls, then data transmission can be performed, but processor state transitions increase and system performance decreases
Solution Approach 1:
The patent combines multiple individual data frame transmissions into a single batched transmission operation. The device driver accumulates multiple data frames in a buffer and sends them together in one operation, reducing the number of system calls and processor state transitions from N individual calls to just 1 batched call, thereby improving system performance and reducing processor overhead
Solution Approach 2:
The device driver performs preliminary actions by pre-buffering and preparing multiple data frames before transmission. Data frames are collected and organized in advance in a buffer memory, and only when the buffer is ready does the transmission occur, eliminating the need for repeated processor interventions and system calls for each individual frame
2Adaptability or versatility
If multiple virtual network interface controllers share a physical network interface controller, then resource utilization improves, but data frame handling complexity increases
Solution Approach 1:
The device driver acts as an intermediary layer between multiple virtual network interface controllers and the shared physical network interface controller. It manages the buffering and batched transmission of data frames, abstracting the complexity of handling multiple virtual interfaces away from the hypervisor and individual virtual machines, thereby simplifying the overall data frame handling process while maintaining efficient resource sharing
Data Source
AI summary
Systems, methods, and computer program products to perform an operation comprising receiving a first data frame and a second data frame by a device driver of a first virtual network interface controller (vNIC) of a plurality of vNICs sharing a physical network interface controller (NIC) of a computing system, storing, by the device driver of the first vNIC, the first and second data frames in a first queue for the first vNIC, generating, by the device driver of the first vNIC, an optimized data frame comprising the first and second data frames, wherein the optimized data frame specifies a modified Ethernet preamble, and sending the optimized data frame to a hypervisor of the computing system.


