SIP Overload Control via Buffer Slot Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing SIP server technologies face overload issues due to high call volumes and flash crowds, leading to congestion collapse and delayed session setup, which traditional TCP flow control mechanisms are unable to effectively manage without modifying the SIP or TCP specifications.
Innovation Solution
Implementing a method that limits the number of INVITE messages by using explicit connection split, buffer minimization, and smart forwarding algorithms within the existing TCP flow control infrastructure, allowing timely feedback and preventing long queuing delays, thereby controlling SIP overload without altering the SIP or TCP specifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If traditional TCP flow control mechanisms are used without modifying SIP or TCP specifications, then implementation simplicity is maintained, but SIP overload management effectiveness deteriorates
Solution Approach 1:
The patent segments the send buffer into multiple fixed-size slots (e.g., 8 slots of 128 bytes each). This segmentation allows the system to track buffer occupancy at a granular level and implement precise control over INVITE message forwarding, enabling effective overload management without requiring complex buffer management or protocol modifications.
Solution Approach 2:
The patent changes the parameter of buffer management by using fixed-size slots with explicit occupancy tracking instead of traditional dynamic buffer allocation. By monitoring the number of occupied slots and their states (empty, sending, sent), the system can make informed decisions about message forwarding, achieving reliable overload control through simple parameter-based logic.
2Productivity
If buffer size is increased to handle high call volumes, then throughput capacity is improved, but queuing delays increase causing congestion collapse
Solution Approach 1:
The patent implements dynamic buffer slot allocation where each slot can transition between different states (empty, sending, sent) based on real-time conditions. The send buffer dynamically adjusts its effective capacity by managing slot states, allowing the system to handle variable call volumes while preventing excessive queuing delays that lead to congestion collapse.
Solution Approach 2:
The patent uses feedback from buffer slot state monitoring to control message forwarding. By continuously tracking which slots are empty, sending, or sent, and using this information to decide whether to forward incoming INVITE messages, the system maintains optimal throughput while minimizing queuing delays through real-time adaptive control.
3Quantity of substance
If multiple INVITE messages are queued in the send buffer, then handling of flash crowds is improved, but session setup time increases beyond acceptable limits
Solution Approach 1:
The patent prepares buffer slots in advance by pre-allocating fixed-size slots and initializing them to an empty state. This preliminary preparation allows the system to quickly accept and manage incoming INVITE messages during flash crowds without requiring complex buffer allocation decisions at message arrival time, thus reducing session setup time while maintaining the ability to queue multiple messages.
4Adaptability or versatility
If TCP infrastructure is used without modifications, then compatibility with existing systems is maintained, but fine-grained control over SIP message flow is lost
Solution Approach 1:
The patent introduces buffer slot state tracking as an intermediary layer between TCP's coarse-grained flow control and SIP's fine-grained message flow control requirements. By monitoring individual slot states (empty, sending, sent) and using this information to control message forwarding, the system achieves fine-grained control while maintaining compatibility with the existing TCP infrastructure without requiring protocol modifications.
Data Source
AI summary
Techniques for controlling Session Initiation Protocol (SIP) overload between a sending entity and a receiving entity includes receiving a message at a send buffer at the sending entity and forwarding the message to a receive buffer at the receiving entity if the send buffer is empty of other messages or rejecting the message if the send buffer is not empty of other messages.


