IP Library Granted Patent US 8,493,862
Granted Patent B2
US 8,493,862 · App. 12/967,787 · Granted Jul 23, 2013

System and method for lost packet recovery with congestion avoidance

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 8,493,862
App. No.
12/967,787
Granted
Jul 23, 2013
Kind
B2
Abstract

Devices and techniques for overcoming lost packets and avoiding congestion when conducting media conferences over packet switched networks are described herein. To avoid the problem of lost packets, redundant information is inserted into the media stream that permits the receiver to reconstruct any lost packets from the redundant information. Congestion avoidance techniques include adjusting the bitrate of the media stream to find the highest bitrate that can be supported without packet loss due to congestion. When increasing the bitrate to a higher rate, the additional bits can come from the redundant information used for lost packet recovery so that any lost packets caused by network congestion will not adversely affect the bitstream.

Claims (36)

1. A method of preventing disruption of a media stream transmitted across a lossy network, the method comprising:

applying a lost packet recovery algorithm to the media stream, wherein the lost packet recovery algorithm inserts redundant information into a transmitted data stream including the media stream to permit reconstruction of one or more lost packets; and

applying a congestion avoidance algorithm to the transmitted data stream, wherein the congestion avoidance algorithm, if there has been no packet loss above a first predetermined threshold for a predetermined period of time:

temporarily increases a data rate of the transmitted data stream by increasing the amount of redundant information inserted into the transmitted data stream;

receives channel information from the network including packet loss and monitoring the packet loss to determine whether the network can support the higher data rate of the transmitted data stream; and

if the packet loss remains below a second predetermined threshold, increases a bit rate of the media stream while maintaining the higher data rate of the transmitted data stream.

2. The method of claim 1 wherein the redundant information comprises one or more recovery packets.

3. The method of claim 2 wherein the number of recovery packets depends on the packet loss determined from RTCP receiver reports.

4. The method of claim 1 wherein the lost packet recovery algorithm includes:

forward erasure correction coding; or

Reed-Solomon encoding.

5. The method of claim 1 wherein the media stream comprises video data.

6. The method of claim 1 wherein applying a lost packet recovery algorithm to the media stream comprises:

determining a protection period;

determining a total number of packets per protection period; and

determining a number of recovery packets per protection period.

7. The method of claim 6 wherein the protection period is determined according to the bit rate of the media stream.

8. The method of claim 6 further comprising adjusting lost packet recovery protection parameters, LPR protection parameters, as a function of the bit rate of the media stream.

9. The method of claim 8 wherein adjusting LPR protection parameters as a function of the bit rate of the media stream comprises:

dynamically adapting the packet size of the data and/or recovery packets; or

sending empty data packets.

10. A media encoding apparatus for preventing disruption of a media stream transmitted across a lossy network, the media encoding apparatus comprising:

a media encoder; and

one or more lost packet recovery modules, wherein the one or more lost packet recovery modules comprise a programmable control device and a memory, the memory being configured to store and the programmable control device being configured to execute instructions causing the meia encoding apparatus to:

insert redundant information into a transmitted data stream including the media stream to permit reconstruction of one or more lost packets; and

if there has been no packet loss above a first predetermined threshold for a predetermined period of time:

temporarily increase a data rate of the transmitted data stream by increasing the amount of redundant information inserted into the transmitted data stream;

receive channel information from the network including packet loss and monitor the packet loss to determine whether the network can support the higher data rate of the transmitted data stream; and

if the packet loss remains below a second predetermined threshold, increase a bit rate of the media stream while maintaining the higher date rate of the transmitted data stream.

11. The media encoding apparatus of claim 10 wherein the media encoding apparatus is further configured to determine lost packet recovery protection parameters, LPR protection parameters, from the channel information.

12. The media encoding apparatus of claim 10 wherein the media encoding apparatus is a video encoder.

13. The media encoding apparatus of claim 10 wherein the LPR protection parameters are determined by:

determining a protection period;

determining a total number of packets per protection period; and

determining a number of recovery packets per protection period.

14. The media encoding apparatus of claim 10 wherein a payload of the recovery packet is encoded using Reed-Solomon encoding.