Session-Aware Load Balancing for SIP Telephony Servers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current load balancing techniques are inadequate for large-scale telephony applications, particularly for SIP protocols, as they fail to efficiently distribute requests across servers, leading to inefficiencies in response time and throughput due to the session-oriented nature of SIP and varying transaction overheads.

Innovation Solution

The implementation of Session-Aware Request Assignment (SARA) combined with dynamic estimates of server load and knowledge of the SIP protocol, using algorithms such as Call-Join-Shortest-Queue (CJSQ), Transaction-Join-Shortest-Queue (TJSQ), and Transaction-Least-Work-Left (TLWL), to route requests to servers based on load and response times, ensuring that transactions corresponding to the same session are directed to the same server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional load balancing techniques are used for SIP protocols, then server requests can be distributed, but response time and throughput are inefficient due to session-oriented nature and varying transaction overheads

Engineering Contradiction:
Improverequest throughputVSAvoidresponse time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent changes the load balancing parameters from simple request counting to weighted parameters that account for transaction overheads, response times, and session affinity. Different SIP transactions are assigned different weights based on their complexity and resource consumption, enabling more intelligent load distribution that optimizes both throughput and response time.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system dynamically adjusts load balancing decisions based on real-time server state, transaction characteristics, and session information. The load balancer continuously monitors server response times and transaction outcomes, adapting its routing decisions to optimize performance under varying conditions rather than using static rules.

Inventive Principle:
Principle #15Dynamics

2Quantity of substance

If servers are scaled to support more users, then service capacity increases, but load distribution efficiency decreases without session-aware routing

Engineering Contradiction:
Improvenumber of users supportedVSAvoidload distribution efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the load balancing process into multiple dimensions: session-based routing, transaction-type weighting, and server-state monitoring. This segmentation allows independent optimization of each aspect - maintaining session affinity for ongoing calls while distributing new transactions based on weighted criteria, thereby scaling efficiently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The load balancer acts as an intelligent intermediary between clients and servers, making informed routing decisions that consider session affinity, transaction overheads, and server capabilities. This intermediary function enables efficient scaling by mediating the complexity of load distribution across the entire server pool.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Device complexity

If all transactions are treated equally in load balancing, then implementation is simple, but performance is suboptimal due to varying transaction overheads

Engineering Contradiction:
Improveload balancing implementation complexityVSAvoidtransaction processing efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent applies different quality attributes to different transactions based on their type and overhead characteristics. INVITE transactions, which establish sessions and have higher overhead, are weighted differently compared to simpler UPDATE or DELETE transactions. This local differentiation optimizes processing efficiency while remaining implementable through standardized weighting rules.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9071608B2Method and apparatus for load balancing in network based telephony application
Publication Date: 2015.06.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9071608B2 patent drawing
  • US9071608B2 patent drawing
  • US9071608B2 patent drawing

AI summary

Techniques are disclosed for load balancing in networks such as those networks handling telephony applications. By way of example, such techniques direct requests associated with calls to servers in a system comprised of a network routing calls between a plurality of callers and at least one receiver wherein a load balancer sends requests associated with calls to a plurality of servers as follows. A request associated with a call, a caller, or a receiver is received, depending on the particular load balancing technique. A server is selected to receive the request. A subsequent request is received. A determination is made whether or not the subsequent request is associated with the call, the caller, or the receiver, depending on the particular load balancing technique. The subsequent request is sent to the server based on determining that the subsequent request is associated with the call, the caller, or the receiver, again depending on the particular load balancing technique.