Dynamic Rebalancer for Server Session Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing load balancing systems require extensive code to coordinate multiple routers in a server cluster, and they struggle to account for configuration changes, leading to performance issues and potential system failures due to uneven server loads.

Innovation Solution

A dynamic rebalancer system that operates independently of routers, comprising a configuration component, statistic component, manager component, analysis component, and filter component, which monitors and analyzes real-time server configurations and statistics to redistribute sessions without requiring router coordination, ensuring seamless load balancing and configuration adaptation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a distributed locking mechanism is used to coordinate multiple routers, then session distribution consistency is improved, but device complexity and code requirements increase significantly

Engineering Contradiction:
Improvesession distribution consistencyVSAvoidcoordination code complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the session management functionality from the routers themselves and places it in a dedicated session manager component. This separation allows routers to make independent decisions without needing complex coordination mechanisms, as the session manager handles session state independently and routers simply query it for session affinity information.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The session manager acts as an intermediary between routers and session state information. Instead of routers directly coordinating with each other through complex locking mechanisms, they all interact with the session manager which provides a simplified interface for session lookup and management, eliminating the need for router-to-router coordination code.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If routers are coordinated to make the same redirection decisions, then load balancing consistency is improved, but system performance and response time deteriorate due to coordination overhead

Engineering Contradiction:
Improveload balancing consistencyVSAvoidcoordination time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by having the session manager pre-calculate and store session affinity information and server load statistics. When a router needs to make a redirection decision, it simply queries the pre-computed information from the session manager rather than engaging in real-time coordination with other routers, significantly reducing decision-making time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Each router independently queries the session manager for session affinity information and makes its own redirection decisions without needing to coordinate with other routers. The session manager independently maintains session state and provides information to routers, allowing each router to serve itself without external coordination overhead.

Inventive Principle:
Principle #25Self-service

3Productivity

If session redistribution is performed without accounting for configuration changes, then rebalancing speed is improved, but system reliability deteriorates due to invalid redistributions

Engineering Contradiction:
Improverebalancing speedVSAvoidrebalancing validity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The session manager continuously monitors server configuration changes and receives feedback about the current state of the server cluster. This feedback mechanism allows the system to detect when configuration changes occur (such as server additions, removals, or weight changes) and adjust session redistribution decisions accordingly, ensuring that rebalancing operations remain valid despite dynamic changes in the cluster.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adapts to configuration changes by having the session manager continuously update its knowledge of server availability and weights. When configuration changes are detected, the session manager adjusts session affinity calculations and redistribution decisions in real-time, allowing the system to maintain reliability while responding quickly to both configuration changes and load conditions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11363097B2Method and system for dynamically rebalancing client sessions within a cluster of servers connected to a network
Publication Date: 2022.06.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11363097B2 patent drawing
  • US11363097B2 patent drawing
  • US11363097B2 patent drawing

AI summary

A dynamic rebalancer operates in a server cluster independently of routers directing traffic to the servers in the cluster. An analysis component uses configuration information and statistics information to determine which session, if any, should be moved. A filter component receives transfer instructions from the analysis component. When the filter component receives transfer instructions from the analysis component, the filter component adds a redirect command to the client request. The filter component continually redirects client requests within the session to the new server until the client receives the redirect command and begins to send client requests to the new server.