IP Phone Queuing via Doubly Linked List to Reduce PBX Overload

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In client/server voice communication networks, large numbers of IP phones attempting to reconnect after events like power failures cause PBX overload, leading to prolonged connection delays due to SYN packet queuing and the overhead of security protocols like SSL, resulting in inefficient and lengthy connection processes.

Innovation Solution

IP devices form a doubly linked list to queue and coordinate their connection attempts to the central server, using a random backoff mechanism and a maximum count to spread out connection requests, ensuring only a limited number of devices attempt connections simultaneously, thereby reducing collisions and server burden.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a large number of IP phones attempt to establish connections to the PBX simultaneously after events like power failures, then the connection speed for individual phones is improved, but the PBX becomes overloaded causing SYN packet queuing and prolonged connection delays for all phones

Engineering Contradiction:
Improveconnection speedVSAvoidtotal connection time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent implements a periodic action principle by having IP phones send connection attempts at regulated intervals rather than simultaneously. The system uses a token bucket algorithm where tokens are added periodically at a controlled rate, and phones can only attempt connections when tokens are available. This transforms the bursty simultaneous connection attempts into a periodic, regulated stream of connections that prevents PBX overload while maintaining efficient connection establishment for all phones.

Inventive Principle:
Principle #19Periodic action

2Reliability

If IP phones use SSL security protocols to establish secure connections, then connection security is improved, but the connection establishment time increases due to the computational overhead of key creation

Engineering Contradiction:
Improveconnection securityVSAvoidconnection establishment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by performing SSL key exchange and security handshake operations in advance during the token accumulation phase, before actual data transmission begins. The token bucket mechanism allows phones to complete security protocol initialization and key creation during periods of low traffic, so that when connection attempts are made, the security infrastructure is already in place and ready, reducing the perceived connection establishment time while maintaining high security standards.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If the PBX accepts registration requests from many IP phones simultaneously, then the system can support more devices, but the internal messaging flows for configuration cause significant degradation of PBX performance

Engineering Contradiction:
Improvenumber of supported devicesVSAvoidPBX performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent uses periodic action to regulate the flow of registration requests and configuration messaging. The token bucket algorithm controls the rate at which phones can register with the PBX, spreading out configuration events over time rather than allowing simultaneous bulk registrations. This periodic throttling ensures the PBX can handle the total number of devices while maintaining performance by processing configuration messaging at a sustainable rate.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8194644B2Client/server queuing method to coordinate connection attempts to a server
Publication Date: 2012.06.05 MITEL CORP
  • US8194644B2 patent drawing
  • US8194644B2 patent drawing
  • US8194644B2 patent drawing

AI summary

A client/server network includes a plurality of IP devices in communication with a central server. The plurality of IP devices communicate with one another to queue themselves onto a linked list. The plurality of IP devices then connect to the central server in the order determined by the linked list. Prior to attempting to connect to the central server, each of the plurality of IP devices verifies that a number of IP devices currently attempting to connect to the central server is not equal to a maximum number.