Load Balancing Engine in Switch Fabric for Scalable Virtual IP Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing load balancing systems in data centers face bottlenecks due to the overhead of software-based load balancers, which reduce scalability and network traffic handling efficiency, especially when dealing with high-bandwidth terabit-class traffic.
Innovation Solution
Implementing a load balancing engine in programmable hardware within network switches, utilizing ternary content-addressable memory (TCAM) for high-speed searches and eliminating the need for external appliances by configuring every port of the switch as a load-balancer, allowing for native load balancing and scalable virtual IP address management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If software-based load balancers are used, then load balancing functionality is provided, but scalability and network traffic handling efficiency deteriorate due to overhead
Solution Approach 1:
The patent replaces software-based load balancing with hardware-based load balancing implemented in network switches. The load balancing functionality is moved from the software layer to the hardware layer, specifically utilizing TCAM (ternary content-addressable memory) and ASIC (application-specific integrated circuit) resources within the switch fabric. This substitution eliminates the overhead associated with software processing while maintaining load balancing functionality, thereby improving network traffic handling efficiency and scalability.
Solution Approach 2:
The patent merges the load balancing function with the network switch infrastructure. Instead of using separate external load balancer appliances, the load balancing engine is integrated directly into the switch fabric. The same hardware resources (TCAM, ASIC, switch fabric) that handle packet forwarding are also utilized for load balancing decisions, eliminating the need for separate processing paths and reducing system overhead.
2Adaptability or versatility
If external load balancer appliances are used, then load balancing is achieved, but scalability and deployment flexibility are reduced
Solution Approach 1:
The patent makes the network switch multi-functional by enabling it to perform both packet forwarding and load balancing operations. The switch fabric and associated hardware resources are configured to handle multiple functions: standard packet switching, routing, and load balancing. This eliminates the need for dedicated external load balancer appliances and allows every port of the switch to potentially function as a load-balancer, greatly enhancing deployment flexibility and adaptability to different network architectures.
Solution Approach 2:
The patent extracts the load balancing functionality from external appliances and embeds it directly within the network switch infrastructure. By taking out the load balancing function from separate devices and integrating it into the switch fabric, the system eliminates external dependencies and enables more flexible deployment scenarios where load balancing can be implemented at any point within the network without requiring separate appliance installations.
3Productivity
If traditional IP address matching is used, then routing is performed, but scalability for large-scale virtual IP address management is limited
Solution Approach 1:
The patent changes the parameter representation for IP address matching by introducing bitmask patterns that can represent ranges of IP addresses. Instead of storing and matching individual IP addresses, the system uses compressed representations where a base IP address is combined with a bitmask to define a range. For example, a virtual IP address 10.0.0.0 with mask 255.255.0.0 can represent all addresses from 10.0.0.0 to 10.255.255.255. This parameter transformation enables scalable management of large numbers of virtual IP addresses while reducing the complexity of address matching operations in the TCAM.
Data Source
AI summary
In an example, there is disclosed a load balancing network apparatus, including a first network interface operable to communicatively couple to a first network; a plurality of second network interfaces operable to communicatively couple to a second network; and one or more logic elements providing a load balancing engine operable for: receiving an address mask; receiving an incoming network packet; masking a destination virtual network address with the address mask to match a plurality of virtual ip addresses; and load balancing the incoming network packet to the plurality of service nodes. There is also disclosed one or more computer-readable mediums including instructions for carrying out the operations, and a method of providing load balancing including carrying out the operations.


