Virtualization Software Load Balancing Without External Choke Points
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized datacenter environments, load balancing across multiple virtual machines often relies on a virtual load balancer, which acts as a choke point for network throughput, consuming memory and processing resources and limiting efficiency.
Innovation Solution
Implementing load balancing within the virtualization software layer of a host computer, where virtual machines share a common virtual link layer address, allowing the virtualization software to map packet flows directly to individual virtual machines and update destination addresses during migration, eliminating the need for an external load balancer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a virtual load balancer is implemented as a virtual machine to distribute workloads, then load balancing functionality is achieved, but network throughput is reduced and processing resources are consumed
Solution Approach 1:
The patent extracts the load balancing functionality from the virtual machine layer and relocates it to the virtualization software layer. This removes the virtual load balancer virtual machine from the packet traversal path, eliminating it as a choke point while preserving load balancing capabilities through software-based flow mapping.
Solution Approach 2:
The virtualization software acts as an intermediary between physical machines and virtual machines, implementing load balancing through flow mapping in the virtualization layer rather than requiring a dedicated virtual load balancer virtual machine. This intermediary approach enables load balancing without the performance overhead of a virtual machine choke point.
2Adaptability or versatility
If a virtual load balancer is implemented as a virtual machine to distribute workloads, then load balancing functionality is achieved, but memory and processing resources are consumed
Solution Approach 1:
The patent extracts the load balancing processing requirements from the virtual machine layer and consolidates them in the virtualization software layer. This eliminates the need for a virtual load balancer virtual machine to consume memory and processing resources, while the virtualization software handles flow mapping more efficiently.
3Adaptability or versatility
If packet flows are routed through a virtual load balancer for load balancing, then workload distribution is achieved, but network efficiency is reduced
Solution Approach 1:
The patent removes the virtual load balancer from the packet traversal path by implementing load balancing in the virtualization software layer. Packets no longer need to traverse through the virtual load balancer virtual machine, eliminating the efficiency bottleneck while maintaining workload distribution through flow mapping.
Solution Approach 2:
The virtualization software performs flow mapping in advance at the virtualization layer, determining the destination virtual machine before packets are forwarded. This preliminary action eliminates the need for packets to traverse through a virtual load balancer and be processed again, improving network efficiency.
4Adaptability or versatility
If a virtual load balancer is used to perform load balancing, then service distribution is achieved, but device complexity increases
Solution Approach 1:
The patent merges the load balancing functionality with the virtualization software layer, combining multiple functions (virtualization management and load balancing) into a single component. This reduces system complexity by eliminating the need for a separate virtual load balancer virtual machine while maintaining service distribution capabilities.
Data Source
AI summary
Exemplary methods, apparatuses, and systems include virtualization software of a host computer receiving a first packet addressed to a first virtual link layer address. Each of a first plurality of virtual machines on the first host computer is configured to share the first virtual link layer address. The virtualization software of the first host computer maps a flow of packets, including the first packet, to a first virtual machine within the first plurality of virtual machines and forwards the first packet to the first virtual machine. The virtualization software of the first host computer receives a second packet from the first virtual machine in response to the first packet. The second packet includes the first virtual link layer address as a source address for the first virtual machine.


