IP Library Granted Patent US 8,819,755
Granted Patent B2
US 8,819,755 · App. 13/672,998 · Granted Aug 26, 2014

Audio/video channel transbonding in a network device

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,819,755
App. No.
13/672,998
Granted
Aug 26, 2014
Kind
B2
Abstract

A data communication architecture delivers a wide variety of content, including audio and video content, to consumers. The architecture employs channel bonding to deliver more bandwidth than any single communication channel can carry. The architecture includes intermediate network devices that may receive content and send content using different groups of communication channels. The network device may process content received across a first set of communication channels for transmission across a second set of communication channels different from the first set. Such processing may preserve a program order of the content during delivery to a destination device.

Claims (57)

1. A method comprising:

in a network device:

receiving program packets and marker packets corresponding with the program packets from a first set of communication channels in an incoming bonded channel group; and

after receiving the program packets and the marker packets from the first set of communication channels:

arranging the program packets in a program order using the marker packets and without discarding the marker packets; and

distributing the program packets and the marker packets across a second set of communication channels in an outgoing bonded channel group different from the incoming bonded channel group.

2. The method of claim 1 , comprising:

receiving the program packets through the incoming bonded channel group in communication units of a first chunk size; and

distributing the program packets across the outgoing bonded channel group by distributing the marker packets together with the program packets in the communication units of the first chunk size.

3. The method of claim 1 , where distributing the program packets and the marker packets comprises:

distributing the marker packets across the outgoing bonded channel group; and

distributing the program packets across the outgoing bonded channel group behind the marker packets.

4. The method of claim 1 , where distributing the program packets and the marker packets comprises:

dividing the program packets into communication units of a chunk size; and

distributing the communication units with the marker packets across the outgoing bonded channel group.

5. The method of claim 4 , further comprising accessing a transbonding configuration parameter to determine the chunk size.

6. The method of claim 4 , where:

receiving the program packets comprises receiving the program packets in an incoming chunk size; and

dividing the program packets comprises dividing the program packets into communication units of the incoming chunk size.

7. The method of claim 1 , where the incoming bonded channel group and the outgoing bonded channel group do not share a common communication channel.

8. The method of claim 1 , where the incoming bonded channel group and the outgoing bonded channel group share a common communication channel.

9. A system comprising:

input interfaces to a first set of individual communication channels that form an incoming bonded channel group;

output interfaces to a second set of individual communication channels that form an outgoing bonded channel group different from the incoming bonded channel group; and

transbonding logic in communication with the input interfaces and the output interfaces, the transbonding logic configured to:

read transbonding configuration parameters that identify an incoming chunk size for communication units received through the incoming bonded channel group, the communication units comprising program packets;

obtain a first marker packet received through a first input interface among the input interfaces;

obtain a first communication unit of the incoming chunk size received through the first input interface; and after obtaining the first marker packet and the first communication unit:

distribute the first marker packet and the first communication unit, previously received through the first input interface, to a first output interface among the output interfaces for transmission across the outgoing bonded channel group.

10. The system of claim 9 , where the transbonding logic is further configured to:

obtain a second marker packet and second communication unit of the incoming chunk size received through a second input interface among the input interfaces; and after obtaining the first marker packet, first communication unit, second market packet, and second communication unit:

distribute the second marker packet and the second communication unit, previously received through the second input interface, together with the first marker packet and first communication unit, previously received through the first input interface, to the first output interface for transmission across the outgoing bonded channel group as an outgoing chunk of an outgoing chunk size.

11. The system of claim 10 , where the transbonding logic is configured to read the transbonding configuration parameters to determine the outgoing chunk size.

12. The system of claim 10 , where the transbonding logic is further configured to:

generate an outgoing marker packet for the outgoing chunk that comprises the first marker packet, the first communication unit, the second market packet, and the second communication unit; and

distribute an outgoing marker packet for the outgoing chunk to the first output interface that precedes the outgoing chunk.

13. The system of claim 9 , where the transbonding logic is further configured to:

obtain additional marker packets and additional communication units from the input interfaces;

construct a data stream comprising program packets arranged in a program order, where the program order is determined by examining the first marker packet or the additional marker packets while maintaining the additional marker packets; and

distribute the first marker packet, the first communication unit, the additional marker packets, and additional communication units across the outgoing bonded channel group.

14. The system of claim 9 , where the transbonding logic is further configured to:

distribute the first communication unit across the outgoing bonded channel group without distributing the first marker packet when the outgoing bonded channel group comprises a single communication channel.

15. The system of claim 9 , where the incoming bonded channel group and the outgoing bonded channel group share a common communication channel.

16. The system of claim 9 , where the incoming bonded channel group and the outgoing bonded channel group do not share a common communication channel.

17. A gateway device in communication with a destination device, the gateway comprising:

input interfaces to a first set of communication channels that together form an incoming bonded channel group;

output interfaces to a second set of communication channels that together form an outgoing bonded channel group; and

a transbonder in communication with the input and output interfaces, the transbonder configured to:

receive program data across the incoming bonded channel group;

receive marker packets corresponding to the program data across the incoming bonded channel group; and after receiving the program data and the marker packets:

construct a data stream comprising the program data and the marker packets without discarding the marker packets, the data stream arranged in a program order; and

send the data stream comprising the program data and the marker packets to the destination device across the outgoing bonded channel group.

18. The gateway device of claim 17 , where the transbonder is configured to send the data stream across the outgoing bonded channel group by:

dividing the data stream into communication units of a chunk size; and

distributing the communication units across the outgoing bonded channel group.

19. The gateway device of claim 17 , where the incoming bonded channel group and the outgoing bonded channel group do not share a common communication channel type.

20. The gateway device of claim 17 , where the incoming bonded channel group and the outgoing bonded channel group do not share a common communication channel.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER IN THE INCORRECT US PATENT NO. 8,876,094 PREVIOUSLY RECORDED ON REEL 047351 FRAME 0384. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 049248/0558 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE MERGER PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0910. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047351/0384 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0910 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2012
From: MAMIDWAR, RAJESH SHANKARRAO; CHEN, XUEMIN; HOU, VICTOR
To: BROADCOM CORPORATION
Reel/Frame 029271/0015 →