Hybrid Networking System with Seamless Path Switching of Streams
First Claim
1. A method for a first device to switch a stream to a new transmission medium, wherein the first device is coupled to a second device via a plurality of transmission media, the method comprising:
- receiving a first stream for transmission to the second device;
transmitting a first plurality of packets of the first stream to the second device on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets;
determining that at least a portion of the first plurality of packets may not have been received by the second device;
transmitting a second plurality of packets of the first stream to the second device on a second transmission medium of the plurality of transmission media, wherein the second plurality of packets of the first stream comprise at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets;
wherein the one or more index marker packets are configured for use by the second device to detect and discard duplicate packets.
3 Assignments
0 Petitions
Accused Products
Abstract
System and method for switching a stream to a new transmission medium. A first stream may be received. A first plurality of packets of the first stream may be transmitted to a second device on a first transmission medium. The first plurality of packets may include one or more index marker packets. It may be determined that at least a portion of the first plurality of packets may not have been received by the second device. A second plurality of packets of the first stream may be transmitted to the second device on a second transmission medium. The second plurality of packets may include at least a subset of the first plurality of packets and at least a subset of the one or more index marker packets. The one or more index marker packets may be configured for use by the second device to detect and discard duplicate packets.
43 Citations
29 Claims
-
1. A method for a first device to switch a stream to a new transmission medium, wherein the first device is coupled to a second device via a plurality of transmission media, the method comprising:
-
receiving a first stream for transmission to the second device; transmitting a first plurality of packets of the first stream to the second device on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; determining that at least a portion of the first plurality of packets may not have been received by the second device; transmitting a second plurality of packets of the first stream to the second device on a second transmission medium of the plurality of transmission media, wherein the second plurality of packets of the first stream comprise at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; wherein the one or more index marker packets are configured for use by the second device to detect and discard duplicate packets. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A device, comprising:
-
a plurality of ports for coupling to a second device via a plurality of transmission media; logic configured to switch a stream to a new transmission medium, wherein the logic is configured to; receive a first stream for transmission to the second device; transmit a first plurality of packets of the first stream to the second device on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; determine that at least a portion of the first plurality of packets may not have been received by the second device; transmit a second plurality of packets of the first stream to the second device on a second transmission medium of the plurality of transmission media, wherein the second plurality of packets of the first stream comprise at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; wherein the one or more index marker packets are configured for use by the second device to detect and discard duplicate packets. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A system for switching a stream to a new transmission medium, the system comprising:
-
means for receiving a first stream for transmission to the second device; means for transmitting a first plurality of packets of the first stream to the second device on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; means for determining that at least a portion of the first plurality of packets may not have been received by the second device; means for transmitting a second plurality of packets of the first stream to the second device on a second transmission medium of the plurality of transmission media, wherein the second plurality of packets of the first stream comprise at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; wherein the one or more index marker packets are configured for use by the second device to detect and discard duplicate packets.
-
-
14. A computer-readable memory medium comprising program instructions for switching a stream to a new transmission medium, wherein the program instructions are executable to:
-
receive a first stream for transmission; route a first plurality of packets of the first stream to a first transmission medium of a plurality of transmission media for transmission, wherein the first plurality of packets comprises one or more index marker packets; determine that at least a portion of the first plurality of packets may not have been received by the second device; route a second plurality of packets of the first stream to a second transmission medium of the plurality of transmission media for transmission, wherein the second plurality of packets of the first stream comprise at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; wherein the one or more index marker packets are configured for use by the second device to detect and discard duplicate packets.
-
-
15. A method for a receiving device to remove duplicate packets received from a transmitting device, wherein the receiving device is coupled to the transmitting device via a plurality of transmission media, the method comprising:
-
receiving a first plurality of packets of a first stream on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; receiving a second plurality of packets of the first stream on a second transmission medium, wherein the second plurality of packets comprises at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; determining, based on the one or more index marker packets comprised in the first plurality of packets and the second plurality of packets, that one or more of the first plurality of packets received on the first transmission medium or the second plurality of packets received on the second transmission medium are duplicate packets; discarding the determined duplicate packets. - View Dependent Claims (16, 17, 18)
-
-
19. A device, comprising:
-
a plurality of ports for coupling to a second device via a plurality of transmission media; logic configured to detect and remove duplicate packets received from the second device, wherein the logic is configured to; receive a first plurality of packets of a first stream on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; receive a second plurality of packets of the first stream on a second transmission medium, wherein the second plurality of packets comprises at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; determine, based on the one or more index marker packets comprised in the first plurality of packets and the second plurality of packets, that one or more of the first plurality of packets received on the first transmission medium or the second plurality of packets received on the second transmission medium are duplicate packets; discard the determined duplicate packets. - View Dependent Claims (20, 21, 22)
-
-
23. A system for a receiving device to remove duplicate packets received from a transmitting device, wherein the receiving device is coupled to the transmitting device via a plurality of transmission media, the system comprising:
-
means for receiving a first plurality of packets of a first stream on a first transmission medium of the plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; means for receiving a second plurality of packets of the first stream on a second transmission medium, wherein the second plurality of packets comprises at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; means for determining, based on the one or more index marker packets comprised in the first plurality of packets and the second plurality of packets, that one or more of the first plurality of packets received on the first transmission medium or the second plurality of packets received on the second transmission medium are duplicate packets; means for discarding the determined duplicate packets.
-
-
24. A computer-readable memory medium comprising program instructions for detecting and removing received duplicate packets, wherein the program instructions are executable to:
-
receive a first plurality of packets of a first stream via a first transmission medium of a plurality of transmission media, wherein the first plurality of packets comprises one or more index marker packets; receive a second plurality of packets of the first stream via a second transmission medium, wherein the second plurality of packets comprises at least a subset of the first plurality of packets, wherein the second plurality of packets further comprise at least a subset of the one or more index marker packets; determine, based on the one or more index marker packets comprised in the first plurality of packets and the second plurality of packets, that one or more of the first plurality of packets received on the first transmission medium or the second plurality of packets received on the second transmission medium are duplicate packets; discard the determined duplicate packets.
-
-
25. A method for minimizing packet loss when switching a stream to a new transmission medium, the method comprising:
-
transmitting a first plurality of packets of a first stream to a receiver on a first transmission medium; storing a first portion of the first plurality of packets of the first stream in a buffer; determining that some of the first plurality of packets may not have been received by the receiver; re-transmitting the first portion of the first plurality of packets stored in the buffer to the receiver on a second transmission medium. - View Dependent Claims (26, 27)
-
-
28. A method for re-ordering out-of-order packets of a first stream received via a plurality of transmission media, the method comprising:
-
receiving and processing a first portion of a first plurality of packets of a first stream on a first transmission medium; receiving a beginning-of-stream marker packet of the first stream on a second transmission medium; receiving and buffering a first portion of a second plurality of packets of the first stream on the second transmission medium, wherein the first plurality of packets are prior to the second plurality of packets in first stream packet ordering; receiving and processing a second portion of the first plurality of packets of the first stream on the first transmission medium, wherein the second portion of the first plurality of packets is received after the beginning-of-stream marker packet is received; receiving an end-of-stream marker packet on the first transmission medium, wherein the end-of-stream marker packet is received after the first portion of the second plurality of packets is received; processing the buffered first portion of the second plurality of packets after receiving the end-of-stream marker packet on the first transmission medium based on receiving the end-of-stream marker packet on the first transmission medium; receiving and processing a second portion of the second plurality of packets of the first stream on the second transmission medium, wherein said processing the second portion of the second plurality of packets is performed after said processing the buffered first portion of the second plurality of packets.
-
-
29. A method for a receiver to self-throttle, the method comprising:
-
receiving a first plurality of packets of a first stream on a first transmission medium; storing the first plurality of packets of the first stream in a buffer, wherein the buffer comprises a head end and a tail end; receiving an additional packet of the first stream on the first transmission medium; storing the additional packet of the first stream at the tail end of the buffer; processing a pre-selected number of packets from the head end of the buffer based on said receiving the additional packet of the first stream on the first transmission medium; removing the processed pre-selected number of packets from the head end of the buffer.
-
Specification