Network Load Balancing via Hash-Based Packet Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional network load balancing apparatuses do not effectively reduce CPU load when transferring packets to external servers, leading to decreased throughput due to significant packet discarding and communication bottlenecks.
Innovation Solution
A network load balancing apparatus that includes a hash value calculation unit, external transfer control unit, priority control unit, load balancing control unit, and packet transfer control unit, which determine the optimal communication path for packet transfer based on calculated hash values, allowing direct transfer to external servers and balancing CPU load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If packets are transferred through VNFs on general-purpose servers, then flexibility and cost are improved, but significant packet discarding occurs when traffic exceeds certain quantity
Solution Approach 1:
The patent extracts the packet distribution function from the VNF layer and implements it directly in the NIC hardware. By separating the packet distribution function from the processing chain, packets can be distributed to multiple data buffers before reaching the VNFs, enabling parallel processing and preventing packet discarding while maintaining configuration flexibility through software control of the distribution policy.
Solution Approach 2:
The patent performs packet distribution to multiple data buffers in advance, before packets reach the VNF processing stage. This preliminary distribution action enables multiple CPU cores to simultaneously process packets from different buffers, increasing throughput and preventing packet discarding when traffic volume exceeds single-processing-capacity limits.
2Productivity
If multiple data buffers are used with load balancing control, then throughput is improved, but packet reordering may occur in flows
Solution Approach 1:
The patent applies different quality characteristics to different packet groups by using hash-based classification. Packets belonging to the same flow (identified by matching hash values) are directed to the same data buffer, maintaining their original order, while different flows can be processed in parallel from different buffers. This local consistency approach enables both high throughput and flow ordering preservation.
3Ease of operation
If SR-IOV is used to reduce CPU load, then ease of operation is improved, but communication bottlenecks with CPU still occur
Solution Approach 1:
The patent segments the packet processing workload by distributing packets to multiple data buffers that can be processed by multiple CPU cores simultaneously. This segmentation of the processing chain, combined with SR-IOV virtualization, allows parallel processing of different packet streams, reducing communication bottlenecks between CPU and network interface while maintaining the ease of operation provided by virtualization.
Data Source
AI summary
A network load balancing apparatus has a data buffer for each communication path of a received packet's transfer destinations, calculates a first hash value using a field value contained in the packet, determines, based on the field value of the packet or the first hash value, a communication path of a transfer destination of the packet subject to external transfer control for transmission to a predetermined external server, determines, based on the first hash value, a communication path of a transfer destination of the packet to be subject to priority control, determines, based on a second hash value based on the first hash value, a communication path of a transfer destination of the packet to be subject to load balancing control, to match a preset load balancing situation of the data buffer, and transmits the packet to a data buffer corresponding to the communication path of the transfer destination.


