Control over network coding for enhanced radio transport optimization
First Claim
1. A method for transmitting encoded data in a network comprising:
- grouping packets into a first generation of a plurality of packets;
in a source node of a network, encoding the first generation using linearly-independent encoding vectors to produce an encoded first generation;
transmitting the encoded first generation as a plurality of packets over a subgraph of nodes over multiple paths to a destination node, wherein the subgraph of nodes is a small group of nodes of the network;
determining in a receiving node of the subgraph that an insufficient amount of packets of the encoded first generation have been received in the receiving node in order to decode the encoded first generation;
sending a first repair request from the receiving node to nodes which are upstream of the receiving node, wherein the repair request indicates a need for more packets of the encoded first generation without specifying a particular packet;
in response to the repair request, sending a packet with encoded first generation data to the receiving node from a first node which is upstream of the receiving node; and
while in a fully-reliable mode further comprising;
generating a second repair request in at least one node which is upstream of the receiving node and which does not have data of the encoded first generation, wherein the second repair request indicates a need for more packets with data of the encoded first generation without specifying a particular packet; and
sending the second repair request from the at least one node to nodes which are upstream of the at least one node until a node with data of the encoded first generation receives the second repair request.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for transmitting encoded data in a network is presented. The method begins with a source node of a network encoding a first generation of data using linearly-independent encoding vectors to produce an encoded first generation. Next, packets containing the encoded first generation are created. The packets are then transmitted over a subgraph of nodes with multiple paths to a destination node. A determination is made at a receiving node that an insufficient amount of packets of the encoded first generation have been received in order to decode the encoded first generation. A repair request is sent from the receiving node to nodes upstream to indicate a need for more packets of the encoded first generation without specifying a particular packet. In response to the repair request, at least one node upstream from the receiving node sends a packet with encoded first generation data.
-
Citations
19 Claims
-
1. A method for transmitting encoded data in a network comprising:
-
grouping packets into a first generation of a plurality of packets; in a source node of a network, encoding the first generation using linearly-independent encoding vectors to produce an encoded first generation; transmitting the encoded first generation as a plurality of packets over a subgraph of nodes over multiple paths to a destination node, wherein the subgraph of nodes is a small group of nodes of the network; determining in a receiving node of the subgraph that an insufficient amount of packets of the encoded first generation have been received in the receiving node in order to decode the encoded first generation; sending a first repair request from the receiving node to nodes which are upstream of the receiving node, wherein the repair request indicates a need for more packets of the encoded first generation without specifying a particular packet; in response to the repair request, sending a packet with encoded first generation data to the receiving node from a first node which is upstream of the receiving node; and while in a fully-reliable mode further comprising; generating a second repair request in at least one node which is upstream of the receiving node and which does not have data of the encoded first generation, wherein the second repair request indicates a need for more packets with data of the encoded first generation without specifying a particular packet; and sending the second repair request from the at least one node to nodes which are upstream of the at least one node until a node with data of the encoded first generation receives the second repair request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for transmitting encoded data in a network comprising, while in a fully-reliable mode:
-
grouping packets into a first generation of a plurality of packets; in a source node of a network, encoding the first generation using linearly-independent encoding vectors to produce an encoded first generation; transmitting the encoded first generation as a plurality of packets over a subgraph of nodes over multiple paths to a destination node, wherein the subgraph of nodes is a small group of nodes of the network; determining in a receiving node of the subgraph that an insufficient amount of packets of the encoded first generation have been received in the receiving node in order to decode the encoded first generation; sending a repair request from the receiving node to nodes which are upstream of the receiving node, wherein the repair request indicates a need for more packets of the encoded first generation without specifying a particular packet; in response to the repair request, sending a packet with encoded first generation data to the receiving node from a first node which is upstream of the receiving node; at the destination node, keeping track of the packets of the encoded first generation and a next encoded second generation and detecting a gap in generations received at the destination node by detecting that the encoded second generation is larger than expected; and sending requests from the destination node to nodes which are upstream of the destination node for more packets of the encoded first generation until the encoded first generation is complete enough to be decoded at the destination node.
-
-
18. A method comprising:
-
encoding data into an encoded first generation; transmitting from a source node to a network node a plurality of first generation packets of the encoded first generation, the first generation packets containing random linear combinations of data sets which are linearly independent within the encoded first generation; determining that not enough of the first generation packets have been received at the network node to decode the first generation packets; based, at least in part on the determining, generating and sending a first repair request from the network node to nodes which are upstream of the network node, wherein the repair request indicates a need for more packets of the encoded first generation; in response to the repair request, sending a packet with encoded first generation data to the network node from a first node which is upstream of the network node; and while in a fully-reliable mode further comprising; generating a second repair request in at least one node which is upstream of the network node and which does not have data of the encoded first generation, wherein the second repair request indicates a need for more packets with data of the encoded first generation; and sending the second repair request from the at least one node to nodes which are upstream of the at least one node until a node with data of the encoded first generation receives the second repair request. - View Dependent Claims (19)
-
Specification