IP Library Granted Patent US 7,460,480
Granted Patent B2
US 7,460,480 · App. 11/078,059 · Granted Dec 2, 2008

Dynamically adapting the transmission rate of packets in real-time VoIP communications to the available bandwidth

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,460,480
App. No.
11/078,059
Granted
Dec 2, 2008
Kind
B2
Abstract

A system and method for dynamically adapting the transmission rate of packets in real-time voice over IP communications to the available bandwidth. A real-time bandwidth monitor (RTBM) for VoIP applications senses the call path bandwidth between two endpoints of a VoIP communication and adapts in real-time the packet transmission rate to utilize that bandwidth. If sufficient bandwidth is available, the RTBM selects a low compression, low latency CODEC to offer best possible voice quality to the user. If the bandwidth is constrained, the RTBM degrades gracefully by switching to a high compression CODEC. On further bandwidth reduction, the RTBM increases the media frames per packet. Because the bandwidth reduction may be transitory, the RTBM constantly monitors the end-to-end available bandwidth so as to invoke the CODEC/frame per packet combination that provides the best quality of service (QoS) achievable over the current end-to-end available bandwidth.

Claims (18)

1. A method for adapting the transmission rate of media packets between endpoints in a voice over Internet protocol (VoIP) communication comprising:

determining a starting bandwidth measure at a starting endpoint;

selecting a staffing CODEC at the starting endpoint based on the starting bandwidth measure, wherein the starting CODEC is associated with a staffing CODEC nominal data rate; determining an ending bandwidth measure at an ending endpoint;

selecting an ending CODEC at the ending endpoint based on the ending bandwidth measure, wherein the ending CODEC is associated with an ending CODEC nominal data rate; informing the ending endpoint of the starting CODEC nominal data rate; informing the starting endpoint of the ending CODEC nominal data rate; selecting a current CODEC comprising a data rate equal to the lower of the starting CODEC nominal data rate and the ending CODEC nominal data rate;

using the current CODEC at the starting and ending end points;

obtaining a packet loss ratio of a media packet stream between the starting endpoint and the ending endpoint;

determining whether the packet loss ratio exceeds a maximum packet loss ratio associated with the current CODEC;

when the packet loss ratio exceeds the maximum packet loss ratio, determining a nominal in-use data rate of the current CODEC;

determining whether the current CODEC is associated with an alternate nominal data rate that is lower than the nominal in-use data rate;

when the current CODEC is associated with the alternate nominal data rate that is lower than the nominal in-use data rate, substituting the alternate nominal data rate for the nominal in-use data rate;

when the current CODEC is not associated with the alternate nominal data rate that is lower than the in-use nominal data rate, determining whether a current frames per packet measure is less than a maximum frames per packet measure associated with the current CODEC; when the current frames per packet measure is less than the maximum frames per packet measure associated with the current CODEC, increasing the frames per packet measure of the media packet stream;

when the current frames per packet measure is greater than or equal to the maximum frames per packet measure, determining whether a substitute CODEC having a substitute nominal data rate that is lower than the in-use nominal data rate is available at the starting and ending endpoints; and

when the substitute CODEC is available at the staffing and ending endpoints, using the substitute CODEC at the staffing and ending endpoints.

2. The method for adapting the transmission rate of media packets between endpoints in a VoIP communication of claim 1 , wherein determining the staffing bandwidth measure comprises:

sending a staffing probe packet from the staffing endpoint to a network device; echoing the staffing probe packet from the network device to the staffing endpoint; and determining the bandwidth of the path from the staffing endpoint to the network device.

3. The method for adapting the transmission rate of media packets between endpoints in a VoIP communication of claim 2 , wherein the network device is selected from a STUN server, a SIP server, an endpoint, and an echo server.

4. The method for adapting the transmission rate of media packets between endpoints in a VoIP communication of claim 1 , wherein selecting the starting CODEC at the staffing endpoint comprises:

associating the starting CODEC with a bandwidth range; determining whether the staffing bandwidth measure is within the bandwidth range; and if the staffing bandwidth measure is within the bandwidth range, then selecting the starting CODEC.

Assignments (8)
PARTIAL RELEASE OF SECURITY INTERESTS IN PATENTS AT REEL/FRAME 050002/0536 Recorded Jul 24, 2025
From: JEFFERIES FINANCE LLC
To: UPLAND SOFTWARE, INC.
Reel/Frame 072248/0588 →
PARTIAL RELEASE REEL/FRAME 050002/0536 Recorded Jul 24, 2025
From: JEFFERIES FINANCE LLC
To: UPLAND SOFTWARE, INC.
Reel/Frame 072126/0001 →
SECURITY INTEREST Recorded Mar 25, 2025
From: UPLAND SOFTWARE INC.; UPLAND SOFTWARE VII, LLC; OMTOOL, LTD.; WATERFALL INTERNATIONAL, INC.; QVIDIAN CORPORATION; REFERENCES- ONLINE, INC.
To: JEFFERIES FINANCE LLC
Reel/Frame 070626/0779 →
SECURITY INTEREST Recorded Aug 8, 2019
From: UPLAND SOFTWARE, INC.; UPLAND SOFTWARE I, INC.; UPLAND SOFTWARE IV, LLC; UPLAND SOFTWARE V, INC.; UPLAND SOFTWARE VI, INC.; UPLAND SOFTWARE VII, INC.; UPLAND IX, LLC; ULTRIVA, LLC; ADVANCED PROCESSING & IMAGING, INC.; OMTOOL, LTD.; RIGHTANSWERS, INC.; WATERFALL INTERNATIONAL INC.; QVIDIAN CORPORATION; REFERENCES-ONLINE, INC.; ADESTRA INC.; POSTUP HOLDINGS, LLC; POSTUP DIGITAL, LLC; DAILY INCHES, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050002/0536 →
RELEASE OF SECURITY INTEREST Recorded Aug 7, 2019
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
To: UPLAND SOFTWARE, INC.
Reel/Frame 049990/0019 →
RELEASE OF SECURITY INTEREST Recorded Aug 7, 2019
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
To: UPLAND SOFTWARE, INC.
Reel/Frame 049989/0307 →
SECURITY INTEREST Recorded Feb 24, 2017
From: UPLAND SOFTWARE, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 041370/0411 →
CHANGE OF NAME Recorded Jan 23, 2017
From: UPLAND SOFTWARE III, LLC
To: UPLAND SOFTWARE, INC.
Reel/Frame 041047/0411 →