IP Library Granted Patent US 9,641,803
Granted Patent B1
US 9,641,803 · App. 15/292,729 · Granted May 2, 2017

Multiplexing FEC protection of multiple streams with different delay requirements

Inventors: Ahmed Atef Younes Badr (Toronto, CA); Ashish Khisti (Toronto, CA); Dan Tan (Sunnyvale, CA); John George Apostolopoulos (Palo Alto, CA); Xiaoqing Zhu (Austin, TX)
Assignee: Cisco Technology, Inc.
H04N7/152H04L1/0013H04L1/0042H04L1/0057H04L65/60H04N7/54
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 9,641,803
App. No.
15/292,729
Granted
May 2, 2017
Kind
B1
Abstract

In one embodiment, a device in a network identifies delay requirements of each of a plurality of media streams. The device selects a joint forward error correction (FEC) encoding strategy for the plurality of media streams based on the identified delay requirements of the streams and on a burst loss length of a communication channel. The device applies the selected joint FEC encoding strategy to the plurality of media streams, to form a multiplexed packet stream. The device sends the multiplexed packet stream to one or more nodes in the network via the communication channel.

Claims (46)

1. A method, comprising:

identifying, by a device in a network, delay requirements of each of a plurality of media streams;

selecting, by the device, a joint forward error correction (FEC) encoding strategy for the plurality of media streams based on the identified delay requirements of the streams and on a burst loss length of a communication channel;

applying, by the device, the selected joint FEC encoding strategy to the plurality of media streams, to form a multiplexed packet stream; and

sending, by the device, the multiplexed packet stream to one or more nodes in the network via the communication channel.

2. The method as in claim 1 , wherein the media streams comprise at least one audio stream and at least one video stream.

3. The method as in claim 1 , wherein selecting the joint FEC encoding strategy for the plurality of media streams comprises:

determining, by the device, whether a delay requirement of a first one of the media streams plus twice the burst loss length of the communication channel is less than or equal to a delay requirement of a second one of the media streams.

4. The method as in claim 3 , wherein the delay requirements of the first and second media streams correspond to delay deadlines before delays in the media streams are perceivable to a user of the one or more nodes, and wherein the first media stream has a shorter delay deadline than that of the second media stream.

5. The method as in claim 3 , wherein selecting the joint FEC encoding strategy for the plurality of media streams further comprises:

determining, by the device, whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is less than or equal to a ratio of the delay deadline of the first media stream to that of the second media stream.

6. The method as in claim 1 , wherein selecting the joint FEC encoding strategy for the plurality of media streams comprises:

determining, by the device, whether a delay requirement of a first one of the media streams plus the burst loss length of the communication channel is less than a delay requirement of a second one of the media streams and whether the delay requirement of the second media stream is less than or equal to the delay requirement of the first media stream plus twice the burst loss length of the communication channel.

7. The method as in claim 6 , wherein selecting the joint FEC encoding strategy for the plurality of media streams further comprises:

determining, by the device, whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is equal to one or is equal to a ratio of the delay deadline of the first media stream to that of the delay deadline of the first media stream plus the burst loss length of the communication channel.

8. The method as in claim 1 , wherein selecting the joint FEC encoding strategy for the plurality of media streams comprises:

determining, by the device, whether a delay requirement of a first one of the media streams plus the burst loss length of the communication channel is greater than or equal to a delay requirement of a second one of the media streams.

9. The method as in claim 8 , wherein selecting the joint FEC encoding strategy for the plurality of media streams comprises:

determining, by the device, whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is greater than a ratio of a difference between the delay requirement of the second media stream and the burst loss length of the communication channel to the delay requirement of the second media stream.

10. An apparatus, comprising:

one or more network interfaces to communicate with a network;

a processor coupled to the network interfaces and configured to execute one or more processes; and

a memory configured to store a process executable by the processor, the process when executed operable to:

identify delay requirements of each of a plurality of media streams;

select a joint forward error correction (FEC) encoding strategy for the plurality of media streams based on the identified delay requirements of the streams and on a burst loss length of a communication channel;

apply the selected joint FEC encoding strategy to the plurality of media streams, to form a multiplexed packet stream; and

send the multiplexed packet stream to one or more nodes in the network via the communication channel.

11. The apparatus as in claim 10 , wherein the apparatus selects the joint FEC encoding strategy for the plurality of media streams by:

determining whether a delay requirement of a first one of the media streams plus twice the burst loss length of the communication channel is less than or equal to a delay requirement of a second one of the media streams.

12. The apparatus as in claim 11 , wherein the delay requirements of the first and second media streams correspond to delay deadlines before delays in the media streams are perceivable to a user of the one or more nodes, and wherein the first media stream has a shorter delay deadline than that of the second media stream.

13. The apparatus as in claim 11 , wherein the apparatus further selects the joint FEC encoding strategy by:

determining whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is less than or equal to a ratio of the delay deadline of the first media stream to that of the second media stream.

14. The apparatus as in claim 10 , wherein the apparatus selects the joint FEC encoding strategy by:

determining whether a delay requirement of a first one of the media streams plus the burst loss length of the communication channel is less than a delay requirement of a second one of the media streams and whether the delay requirement of the second media stream is less than or equal to the delay requirement of the first media stream plus twice the burst loss length of the communication channel.

15. The apparatus as in claim 14 , wherein the apparatus further selects the joint FEC encoding strategy by:

determining whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is equal to one or is equal to a ratio of the delay deadline of the first media stream to that of the delay deadline of the first media stream plus the burst loss length of the communication channel.

16. The apparatus as in claim 10 , wherein the apparatus selects the joint FEC encoding strategy for the plurality of media streams by:

determining whether a delay requirement of a first one of the media streams plus the burst loss length of the communication channel is greater than or equal to a delay requirement of a second one of the media streams.

17. The apparatus as in claim 16 , wherein the apparatus further selects the joint FEC encoding strategy by:

determining whether a fraction of bytes in the first media stream to total bytes in the plurality of media streams is greater than a ratio of a difference between the delay requirement of the second media stream and the burst loss length of the communication channel to the delay requirement of the second media stream.

18. A tangible, non-transitory, computer-readable media having software encoded thereon, the software when executed by a device in a network operable to:

identify delay requirements of each of a plurality of media streams;

select a joint forward error correction (FEC) encoding strategy for the plurality of media streams based on the identified delay requirements of the streams and on a burst loss length of a communication channel;

apply the selected joint FEC encoding strategy to the plurality of media streams, to form a multiplexed packet stream; and

send the multiplexed packet stream to one or more nodes in the network via the communication channel.

19. The computer-readable media as in claim 18 , wherein the media streams comprise at least one audio stream and at least one video stream.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2016
From: BADR, AHMED ATEF YOUNES; KHISTI, ASHISH; TAN, DAN; APOSTOLOPOULOS, JOHN GEORGE; ZHU, XIAOQING
To: CISCO TECHNOLOGY, INC.
Reel/Frame 040007/0698 →