Load Balancer Connection Failover Mapping Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computing environments where load balancers manage communications, synchronizing mapping tables between active and alternate load balancers is challenging, especially during connection failovers, as active synchronization can delay connections and result in incomplete or outdated mappings, leading to undesirable connection resets.
Innovation Solution
A method and apparatus that send requests for connection information to each server in a group to generate new mappings for a load balancer, determining if a route exists from the received mappings, and forwarding communications to a sub-group of servers if the primary route is not identified, while suppressing connection reset messages until new mappings are generated.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If mapping table synchronization is delayed to avoid connection delays, then connection speed is improved, but mapping accuracy deteriorates
Solution Approach 1:
The system performs preliminary actions by having the alternate load balancer proactively request and store mapping information from the active load balancer before failover is needed. This allows the alternate balancer to have updated mappings ready in advance, so when failover occurs, connections can be established immediately without waiting for synchronization, thus resolving the contradiction between connection speed and mapping accuracy.
Solution Approach 2:
The patent introduces an intermediary mechanism where the alternate load balancer actively queries the active load balancer for mapping information through a dedicated synchronization protocol. This intermediary communication channel allows mapping data to be transferred efficiently without interfering with the primary connection handling path, enabling both fast connections and accurate mappings to coexist.
2Manufacturing precision
If active load balancer synchronization is performed continuously, then mapping table accuracy is improved, but system performance deteriorates
Solution Approach 1:
Instead of continuous synchronization, the system implements periodic action by having the alternate load balancer request mapping information at specific intervals or triggered by specific events (such as when the active balancer receives new mapping data). This periodic synchronization maintains mapping accuracy while minimizing the performance overhead on the active load balancer, thus resolving the contradiction between synchronization accuracy and system throughput.
3Reliability
If connection reset messages are sent immediately when route is unknown, then communication integrity is improved, but client experience deteriorates
Solution Approach 1:
The system performs preliminary action by pre-populating the alternate load balancer's mapping table before failover occurs. When the active load balancer fails, the alternate balancer already has the necessary routing information to handle existing connections, allowing it to forward packets successfully rather than immediately sending connection reset messages. This maintains both communication integrity and smooth client experience during the transition.
Data Source
AI summary
In managing communications for a group of servers, each server in the group of servers receives a request from one or more processor units for connection information for generating a set of mappings for a load balancer of the group of servers to replace another set of mappings for another load balancer of the group of servers. A sub-group of servers, in the group of servers, is created comprising servers that have not yet responded to the request for connection information. Responsive to a determination that a route to the server in the group of servers for a communication received from a client device cannot be identified from the set of mappings for the load balancer while the sub-group of servers includes one or more servers that have not yet responded to the request for connection information, the sub-group of servers receives the communication from the one or more processors.


