Two-Tiered Load Balancing for VoIP PBX Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional load balancing solutions for VoIP and SIP systems are inadequate in ensuring reliable and high-quality VoIP communications, particularly in hosted VoIP PBX environments with limited computing resources, as they fail to optimize intra-group communications and handle unforeseen load increases effectively.

Innovation Solution

A two-tiered load balancing system is implemented, comprising device load balancers and call load balancers that dynamically assign VoIP-enabled client devices to clusters of server nodes based on predefined conditions, ensuring optimal resource allocation and quality of service by routing communications through available nodes and rerouting if quality thresholds are not met.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional load balancing solutions are used, then communications are distributed across available computing resources, but the reliability and quality of VoIP communications cannot be significantly increased from limited computing resources

Engineering Contradiction:
ImproveVoIP call quality reliabilityVSAvoidload balancing solution complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the load balancing system into two distinct tiers: device load balancers that operate at the network layer to distribute communications across clusters, and call load balancers that operate at the application layer to manage individual call quality. This segmentation allows each tier to specialize in specific functions, improving overall reliability while keeping the complexity manageable through clear functional separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to load balancing by implementing multiple tiers of balancers operating at different levels (network layer vs. application layer). This dimensional approach enables simultaneous optimization of both broad communication distribution and specific call quality, thereby improving reliability without overwhelming complexity in a single layer.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If traditional load balancing solutions are used, then communications are distributed across servers, but intra-group communications like call transfers and conference calls cannot be optimized

Engineering Contradiction:
Improveintra-group communication efficiencyVSAvoidload balancing configuration complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The call load balancer implements local quality optimization by making load balancing decisions specific to individual calls and client devices rather than applying uniform policies. It considers call-specific parameters such as quality thresholds, preferred clusters, and real-time conditions to optimize intra-group communications like call transfers and conference calls, thereby improving productivity with targeted rather than blanket configurations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically adjusts load balancing decisions based on real-time conditions, call-specific requirements, and changing network states. The call load balancer continuously monitors call quality metrics and can reroute calls or adjust cluster assignments on-the-fly, enabling optimization of intra-group communications without requiring complex static configurations.

Inventive Principle:
Principle #15Dynamics

3Reliability

If traditional load balancing solutions are used, then communications are distributed evenly, but unforeseen load increases or spikes in demand cannot be protected against

Engineering Contradiction:
Improveprotection against load spikesVSAvoidresponse to unforeseen demand changes
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The device load balancer performs preliminary actions by pre-configuring cluster assignments and quality thresholds before load spikes occur. It maintains ready-to-activate backup clusters and pre-established routing policies that can be instantly deployed when unexpected demand increases, thereby improving reliability protection without requiring complex real-time decision-making during crises.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the call load balancer continuously monitors call quality metrics and network conditions, feeding this information back to adjust load distribution decisions. This feedback loop enables the system to detect and respond to unforeseen load increases dynamically, improving adaptability while maintaining simple, rule-based response patterns.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9647943B2Method for providing tiered load balancing for a hosted voice-over internet protocol (VoIP) private branch exchange (PBX)
Publication Date: 2017.05.09 VONAGE BUSINESS INC
  • US9647943B2 patent drawing
  • US9647943B2 patent drawing
  • US9647943B2 patent drawing

AI summary

A system and method is provided for two-tiered load balancing on a hosted voice-over Internet protocol (VoIP) private branch exchange (PBX). The system includes a plurality of client devices, at least one device load balancer, and at least one call load balancer. The device load balancer identifies a device group to which each client device belongs; and a cluster of computing resources for processing calls for the device group. The cluster is assigned to the device group based on prescribed conditions. In response to a communications request, call load balancers in communication with the device load balancers dynamically determine if predefined conditions are currently being met within an identified cluster of computing resources. If the predefined conditions are currently being met, then the communications request for a primary client device associated with the request is established via one of a plurality of server nodes within the cluster of computing resources.