Active Load Balancer State Replication via Intermediary Agent

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current load balancing systems face challenges in scalability and resilience, particularly with hot stand-by and cold stand-by methods, where connection data replication is either incomplete or prone to errors, leading to service disruptions and inability to handle session traffic after active load balancer failures.

Innovation Solution

A method for resilient load balancing that involves mapping packet flows to multiple active load balancers, storing state information, and transmitting it between processing units to ensure seamless traffic rerouting in case of failures, using a replication agent to maintain and update connection data across active sessions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hot stand-by SLB is used to replicate connection data, then resiliency is improved, but the system becomes vulnerable to data loss and invalid traffic routing when both active SLB and target processing unit fail simultaneously

Engineering Contradiction:
ImproveresiliencyVSAvoiddata loss and invalid traffic routing
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a replication agent as an intermediary component that sits between the active SLB and the stand-by SLB. This replication agent is responsible for selectively replicating connection data and for validating traffic routing decisions. When a failure is detected, the replication agent can intercept traffic and redirect it appropriately, preventing the stand-by SLB from routing traffic to failed processing units while maintaining the benefits of hot stand-by resiliency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the replication agent continuously monitors the health status of processing units and connection data validity. When failures are detected, this feedback information is used to dynamically adjust replication behavior and traffic routing decisions, ensuring that connection data is only replicated from healthy sources and that traffic is never routed to failed targets.

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple active SLBs are deployed for scalability, then system capacity is improved, but complexity of managing state information replication and failure handling increases

Engineering Contradiction:
Improvesystem capacityVSAvoidcomplexity of managing state information
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the load balancing system into independent functional components: multiple active SLBs for traffic distribution, separate replication agents for connection data management, and a centralized or distributed state repository. Each active SLB handles specific packet flows independently, and replication agents independently manage replication for each SLB. This segmentation allows the system to scale horizontally by simply adding more SLB-replication agent pairs without increasing the complexity of individual components.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The replication agent is designed as a universal component that can serve multiple active SLBs and handle various types of connection data replication scenarios. The same replication agent architecture and algorithms are used regardless of the number of active SLBs, providing a scalable solution where the system capacity increases linearly with the number of SLBs while the management complexity remains constant per component.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Speed

If connection data is replicated continuously to hot stand-by SLB, then switchover speed is improved, but the risk of propagating invalid connection data increases

Engineering Contradiction:
Improveswitchover speedVSAvoidconnection data validity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary validation of connection data before replication. The replication agent checks the validity of connection data at the source before replicating it to the stand-by SLB, and also validates the health status of target processing units before allowing traffic routing. This preliminary action ensures that only valid connection data is replicated, preventing the propagation of invalid data while maintaining continuous replication for fast switchover.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The replication process is made dynamic rather than static. The replication agent continuously monitors the validity of connection data and the health status of processing units, adjusting replication behavior in real-time. When invalid data or failed units are detected, replication is dynamically adjusted to exclude problematic data, while still maintaining continuous replication of valid data for fast switchover capability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2803178B1Systems and methods for scalable and resilient load balancing
Publication Date: 2018.04.11 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • EP2803178B1 patent drawingFigure 1
  • EP2803178B1 patent drawingFigure 2
  • EP2803178B1 patent drawingFigure 3

AI summary

A method for providing resilient load balancing in a system comprising a first processing unit, a second processing unit, a first active load balancer and a second active load balancer is disclosed. A first set of packet flows may be mapped to the first active load balancer and a second set of packet flows may be mapped to the second active load balancer. The first set of packet flows may include a first packet flow. In some embodiments, the method includes: (a) storing, by the first processing unit, a set of state information associated with the first active load balancer, the set of state information comprising state information associated with a first session associated with the first packet flow; (b) receiving, by the first processing unit, information indicating that the first active load balancer is inoperable; and (c) in response to receiving the information indicating that the first active load balancer is inoperable, transmitting, from the first processing unit to the second active load balancer, the state information associated with the first session.