Software L2 Switching Caching for Virtual Network Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Pure software implementation of Layer 2 switching in virtual switches is inherently slower due to the lack of specialized hardware, particularly in table lookups and hash collisions, which affects performance and efficiency.
Innovation Solution
Implementing a caching technique that reuses switching results for consecutive packets with the same destination MAC and VLAN ID, bypassing repetitive table lookups and hash operations by storing and reusing the dispatching results, thus minimizing overhead and improving speed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If pure software implementation of Layer 2 switching is used, then flexibility and cost-effectiveness are improved, but switching speed and performance deteriorate due to lack of specialized hardware
Solution Approach 1:
The patent performs table lookups and hash operations in advance for batches of packets with the same destination MAC address and VLAN ID. By pre-calculating the forwarding decisions for multiple packets before actual transmission, the system avoids repetitive processing and achieves faster switching speeds while maintaining software implementation benefits
2Measurement precision
If table lookup operations are performed for each packet, then accurate forwarding decisions are achieved, but processing time increases and performance decreases
Solution Approach 1:
The patent maintains continuous batching of packets with identical forwarding requirements and performs a single table lookup for the entire batch. This continuous processing approach eliminates repeated lookup operations while ensuring accurate forwarding decisions through the use of hash tables and batching mechanisms
3Speed
If hash tables are used for MAC address table implementation, then lookup operations are accelerated, but hash value calculation time and collision handling overhead increase
Solution Approach 1:
The patent pre-calculates hash values for batches of packets before actual forwarding operations. By performing hash calculations in advance for multiple packets sharing the same destination, the system reduces the frequency of hash computations and minimizes collision handling overhead while maintaining fast lookup capabilities
Data Source
AI summary
In a system that includes a physical forwarding element (PFE), the mapping of each possible destination MAC address to a destination port number of the PFE is stored in a mapping table. A destination port number on the PFE is identified for a first packet in a sequence of packets arrived at a source port of the PFE by searching the mapping table and stores the destination port number in a caching table. For each packet after the first packet, when the destination MAC address of the packet matches the destination MAC address stored in the caching table, the destination port number stored in the caching table is used as the destination port number of the packet. Otherwise, a destination port number for the packet is identified by searching the mapping table and the destination port number stored in the caching table is replaced with the identified destination port number.


