Server Load Balancing via Session Broker Mediator

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As the number of sessions increases on server computers in a server collection, the load on these systems can become unbalanced, leading to inefficient resource allocation and potential system performance issues, as existing load balancing techniques may not effectively redirect connection requests to the least loaded server, especially during peak usage or when users reconnect after a session disruption.

Innovation Solution

A server broker computer with a load balancing module calculates the load on each server computer within the collection, redirecting new connection requests to the least loaded server based on parameters such as active sessions, pending sessions, and server weights, ensuring an even distribution of session requests and maintaining optimal system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If connection requests are directed to a previously disconnected session's server computer, then session reconnection is maintained, but load balancing is compromised and server overload may occur

Engineering Contradiction:
Improvesession reconnectionVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

A load balancing module is introduced as an intermediary component that sits between incoming connection requests and server computers. This module monitors the load status of each server and intelligently redirects connection requests, including reconnection requests, to the least loaded server rather than always routing to the original session's server. This mediator approach maintains session reconnection capability while preventing server overload by distributing connections across multiple servers based on current load conditions.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If multiple sessions are concentrated on fewer server computers, then session reconnection is simplified, but load distribution becomes unbalanced leading to resource allocation inefficiency

Engineering Contradiction:
Improvesession managementVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The load balancing module implements dynamic load distribution by continuously monitoring server load metrics and adjusting connection routing in real-time. Instead of static session-to-server mapping, the system dynamically evaluates server capacity, active session counts, and resource availability to determine optimal connection targets. This dynamic approach maintains operational simplicity for users while achieving balanced resource utilization across the server collection.

Inventive Principle:
Principle #15Dynamics

3Reliability

If a fixed number of sessions are allowed per server computer, then server capacity is controlled, but flexibility in handling peak usage demands is reduced

Engineering Contradiction:
Improveserver capacity controlVSAvoidpeak usage handling
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The system segments the server collection into multiple independent server nodes, each capable of handling a controlled number of sessions. The load balancing module acts as a smart gateway that distributes incoming connections across these segmented servers based on their current capacity. This segmentation approach maintains individual server capacity control while providing system-level flexibility to handle peak demands by utilizing available capacity across the entire server collection rather than being constrained by any single server's limits.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8539565B2Load balancing in server computer systems
Publication Date: 2013.09.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8539565B2 patent drawing
  • US8539565B2 patent drawing
  • US8539565B2 patent drawing

AI summary

Systems and methods to implement load balancing of connections to a server computer in a server collection are described. The server collection receives connection requests from remote clients over a network. A session broker evaluates one or more load parameters of the server computers in the server collection and, based on those load parameters, determines load associated with each server computer. The session broker redirects the connection requests to the server computer which has a lesser load.