User Mode OVS IO Request Processing via Kernel Module
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The performance of virtual machines using user mode Open vSwitch (OVS) for processing IO requests is low due to context switching and quality of service control, leading to inefficiencies in network traffic management.
Innovation Solution
Direct conversion of IO requests into formats processable by the user mode OVS, eliminating the need for context switching between user and kernel modes, and optimizing Quality of Service control within the user mode OVS.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the IO packet is forwarded by switching between user mode OVS and kernel mode, then the network traffic can be managed with QoS control, but the processing performance of virtual machines deteriorates due to context switching and packet copying
Solution Approach 1:
The patent introduces a kernel module as an intermediary component that enables the user mode OVS to access the physical network interface card directly through a character device interface. This intermediary allows the user mode OVS to perform packet forwarding and QoS control without requiring context switching to kernel mode, thus maintaining reliability while improving productivity. The kernel module acts as a bridge that provides necessary kernel-level access capabilities to the user space application.
2Ease of operation
If context switching is performed between user mode and kernel mode for packet forwarding, then proper system management is achieved, but the processing speed and efficiency deteriorate
Solution Approach 1:
The kernel module serves as an intermediary that provides system management capabilities to the user mode OVS through a well-defined character device interface. This interface allows the user mode OVS to perform packet forwarding, QoS control, and other management functions without exiting user mode, thereby maintaining ease of operation while significantly improving packet forwarding speed by eliminating context switching overhead.
3Adaptability or versatility
If packet copying is performed to forward IO packets from user mode to storage stack, then data can be accessed by kernel components, but the processing performance deteriorates
Solution Approach 1:
The patent extracts the packet copying operation from the data path by enabling the user mode OVS to send packets directly to the physical network interface card through the kernel module intermediary. This eliminates the unnecessary packet copying step between user mode OVS and storage stack, thereby improving IO request processing throughput while maintaining data accessibility through the character device interface.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A data transmission method and an apparatus used in a virtual switch technology are provided, and the method includes: receiving an IO request of a virtual machine VM for accessing a file or a disk, and determining whether the IO request is to be sent to a physical NIC by using a user mode Open vSwitch OVS, where the user mode OVS implements network interworking between virtual machines on a same host and between virtual machines on different hosts; and if it is determined that the IO request is to be sent to the physical NIC by using the user mode OVS, converting the IO request into an Internet Small Computer Systems Interface iSCSI command in a user mode, and then sending the iSCSI command to the user mode OVS, where the user mode OVS sends the iSCSI command to the physical NIC. The method and apparatus disclosed in the present invention resolve a prior-art problem that performance of a virtual machine of the user mode OVS for processing the IO request is relatively low.