Programmable Data Plane Hardware Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional load balancing systems using front end servers suffer from inefficiencies such as traffic tromboning, latencies due to CPU and NIC handshakes, and state synchronization issues, which hinder performance and utilization of resources.
Innovation Solution
Implementing programmable data plane hardware in network node devices that integrate communication ports, a load balancing engine, and a server device table to perform health-based load balancing, eliminating the need for front end servers to handle load balancing duties, thereby reducing latencies and optimizing traffic paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If front end servers are positioned at the edge of the network to perform load balancing, then load balancing functionality is provided, but traffic tromboning occurs causing inefficient traffic paths
Solution Approach 1:
The patent extracts the load balancing functionality from the front end servers and relocates it to dedicated load balancer devices positioned at the network edge. This separation allows front end servers to focus on their primary workload while load balancing is handled by specialized hardware, eliminating traffic tromboning and improving traffic path efficiency.
Solution Approach 2:
The patent introduces dedicated load balancer devices as intermediary components between the network edge and front end servers. These load balancers act as mediators that receive traffic, perform load balancing decisions, and forward traffic to appropriate servers, thereby eliminating the need for front end servers to handle load balancing and preventing inefficient traffic paths.
2Adaptability or versatility
If front end servers handle load balancing through CPU and NIC, then load balancing is performed, but latencies are introduced and CPU cycles are consumed for networking tasks
Solution Approach 1:
The patent replaces the software-based load balancing mechanism (CPU executing load balancing algorithms) with hardware-based load balancing devices. This substitution eliminates the need for CPU-NIC handshakes and software processing, significantly reducing load balancing latency and freeing up CPU cycles for non-networking workloads.
3Reliability
If multiple front end servers are used as load balancers, then load balancing redundancy is provided, but state synchronization protocols create additional latencies
Solution Approach 1:
The patent enables load balancer devices to independently maintain their own state information without requiring synchronization protocols with other load balancers. Each load balancer independently tracks server health and makes load balancing decisions, eliminating the need for state synchronization and the associated latencies while maintaining redundancy through multiple independent load balancer instances.
Data Source
AI summary
A programmable data plane hardware load balancing system includes a plurality of server devices and an edge networking device that is located on an edge of a local area network. The edge networking device includes programmable data plane hardware that integrates each of at least one communications port, a server device table, and a load balancing engine. The at least one communications port is coupled to the plurality of server devices. The server device table includes health information about the plurality of server devices. The load balancing engine is configured to receive traffic directed to the plurality of server devices through the at least one communication port, and has been programmed to forward the traffic to one of the plurality of server devices in response to performing health based load balancing on the traffic using the health information about the plurality of server devices in the server device table.


