Weighted Load Balancing for Heterogeneous Network Interface Controllers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized computing environments, conventional load balancing algorithms fail to distribute traffic efficiently among physical network interface controllers (NICs) with different network speeds, leading to sub-optimal throughput for virtual machines due to treating all NICs as equal options.
Innovation Solution
Implementing a weighted load balancing approach that assigns load balancing weights based on the network speed of each NIC, allowing for fairer and more efficient distribution of traffic by allocating different proportions of the overall load to NICs with varying speeds.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional load balancing algorithms treat all NICs as equal options, then the system maintains simplicity in load balancing logic, but the network throughput for virtual machines becomes sub-optimal due to inefficient traffic distribution among NICs with different speeds
Solution Approach 1:
The patent changes the load balancing parameter from uniform weight to dynamic weight based on NIC network speed. The hypervisor assigns different weights to NICs according to their capabilities, allowing faster NICs to handle more traffic. This parameter change resolves the contradiction by improving throughput through speed-based weight assignment while keeping the implementation relatively simple through hypervisor-level control.
Solution Approach 2:
The patent introduces dynamic load balancing where the weight assignment to NICs can be adjusted based on their network speed and current load conditions. This dynamic approach allows the system to adapt to changing network conditions and NIC performance, improving overall throughput while maintaining manageable complexity through automated hypervisor control.
2Productivity
If the host uses multiple physical NICs to improve network throughput, then the network capacity increases, but it becomes challenging to perform load balancing for the different NICs such that they are utilized fairly and efficiently
Solution Approach 1:
The patent implements self-service load balancing where the hypervisor automatically assigns weights to NICs based on their network speed without requiring manual configuration. The system self-adjusts the load distribution by calculating appropriate weights for each NIC, making the multi-NIC system easy to operate while achieving efficient and fair traffic distribution.
Solution Approach 2:
The patent automatically changes the load balancing parameters (weights) based on NIC network speed characteristics. This automated parameter adjustment simplifies operation by eliminating manual load balancing configuration while ensuring that NICs with different speeds are utilized fairly and efficiently according to their capabilities.
3Productivity
If all NICs are assigned equal load balancing weights, then the configuration remains simple and uniform, but faster NICs are underutilized while slower NICs are overutilized, reducing overall network efficiency
Solution Approach 1:
The patent changes the weight assignment parameter from uniform to differentiated based on NIC network speed. Faster NICs receive higher weights allowing them to handle more traffic, while slower NICs receive lower weights. This parameter change improves network efficiency by matching traffic distribution to NIC capabilities while keeping the mechanism simple through automated hypervisor management.
Solution Approach 2:
The patent applies local quality by assigning different weights to different NICs based on their individual network speed characteristics. Each NIC receives a weight appropriate to its local capability, allowing faster NICs to be overutilized and slower NICs to be appropriately limited. This local differentiation improves overall network efficiency while the automated assignment keeps the system manageable.
Data Source
AI summary
An example method is provided for a host to perform load balancing for multiple network interface controllers (NICs) configured as a team. The method may comprise the host detecting egress packets from a virtualized computing instance supported by the host for transmission to a destination via the team. The method may also comprise the host selecting one of the multiple NICs from the team based on load balancing weights associated with the respective multiple NICs. Each load balancing weight may be assigned based on a network speed supported by the associated NIC, and different load balancing weights are indicative of different network speeds among the multiple NICs in the team. The method may further comprise the host sending, via the selected one of the multiple NICs, the egress packets to the destination.


