Two-Tiered Load Balancing for VoIP PBX Clusters
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
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.
Data Source
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.


