VxLAN Fast Path Offloading for Linux Kernel Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Linux-based operating systems face performance limitations in processing VxLAN packets, specifically in terms of throughput and CPU cycles, as existing methods require significant processing resources and latency, even with hardware offloads.
Innovation Solution
Implementing a fast path environment that offloads VxLAN processing from the Linux OS to a dedicated dataplane, allowing most packets to bypass the Linux environment and utilize a fast data plane for high-throughput processing, with selective redirection to the Linux network stack for specific operations through an exception path.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If VxLAN processing is performed through the Linux kernel network stack, then protocol processing accuracy and control functionality are maintained, but processing throughput is limited and CPU cycles are consumed
Solution Approach 1:
The patent segments VxLAN packet processing into two distinct paths: a fast path for standard packet forwarding that bypasses the Linux kernel network stack, and a slow path for exceptional packets that require kernel processing. This segmentation allows most packets to be processed rapidly while maintaining the ability to handle complex cases through the kernel, thereby resolving the contradiction between throughput and processing accuracy.
Solution Approach 2:
The patent introduces a fast path environment as an intermediary layer between the network interface and the Linux kernel network stack. This intermediary handles routine VxLAN packet processing independently, reducing the burden on the kernel and improving overall processing speed while maintaining protocol accuracy through coordinated interaction with the kernel when needed.
2Productivity
If hardware offloads are used for VxLAN processing, then some processing burden is reduced, but significant CPU cycles are still consumed and throughput remains limited
Solution Approach 1:
The patent extracts VxLAN packet processing functionality from the Linux kernel network stack and places it in a dedicated fast path environment. This extraction removes the processing burden from the kernel, allowing packets to be handled more efficiently with reduced CPU cycle consumption while maintaining the kernel's role in handling exceptional cases.
Solution Approach 2:
The fast path environment provides self-service for VxLAN packet processing by independently handling encapsulation, decapsulation, and forwarding decisions without requiring kernel intervention for routine packets. This self-service capability significantly reduces CPU cycle consumption while maintaining processing accuracy through coordinated kernel interaction when needed.
Data Source
Figure 1
Figure 2a
Figure 2b
AI summary
A process for processing VxLAN data units in an environment that includes an operating system configured for processing VxLAN data units, and a fast path environment configured for receiving incoming VxLAN data units and capable of processing such VxLAN data units is proposed. The process comprises obtaining VxLAN processing configuration parameters used by the operating system, configuring the fast path environment for processing received VxLAN data units based on the obtained parameters, and selecting, at the fast path environment, at least one received VxLAN data unit for processing by the operating system.