Multi-path data transfer using network coding
First Claim
Patent Images
1. A machine implemented method for use at a source node for transferring data to a destination node, the method comprising:
- receiving, from an application layer within the source node, a plurality of original data packets to be transferred to the destination node;
generating, at the source node, first coded packets by combining original data packets using a linear network code;
distributing the first coded packets among multiple available paths leading from the source node to the destination node;
generating, at the source node, second coded packets associated with a first path of the multiple available paths by combining two or more of the first coded packets distributed to the first path using the linear network code;
generating, at the source node, second coded packets associated with a second path of the multiple available paths by combining two or more of the first coded packets distributed to the second path using the linear network code;
transmitting the second coded packets associated with the first path to the destination node via the first path; and
transmitting the second coded packets associated with the second path to the destination node via the second path.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques, devices, systems, and protocols are disclosed herein that relate to data transfer between communication nodes via multiple heterogeneous paths. In various embodiments, network coding may be used to improve data flow and reliability in a multiple path scenario. Transmission control protocol (TCP) may also be used within different paths to further enhance data transfer reliability. In some embodiments, multiple levels of network coding may be provided within a transmitter in a multiple path scenario, with one level being applied across ail paths and another being applied within individual paths.
126 Citations
15 Claims
-
1. A machine implemented method for use at a source node for transferring data to a destination node, the method comprising:
-
receiving, from an application layer within the source node, a plurality of original data packets to be transferred to the destination node; generating, at the source node, first coded packets by combining original data packets using a linear network code; distributing the first coded packets among multiple available paths leading from the source node to the destination node; generating, at the source node, second coded packets associated with a first path of the multiple available paths by combining two or more of the first coded packets distributed to the first path using the linear network code; generating, at the source node, second coded packets associated with a second path of the multiple available paths by combining two or more of the first coded packets distributed to the second path using the linear network code; transmitting the second coded packets associated with the first path to the destination node via the first path; and transmitting the second coded packets associated with the second path to the destination node via the second path. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A communication device comprising:
-
a first network interface unit configured for communication in a first network; a second network interface unit configured for communication in a second network that is different from the first network; and at least one processor to manage data transfer between the communication device and a destination node using multiple different paths, the at least one processor to; receive, from an application layer, a plurality of original packets representative of data to be transferred to the destination node; generate first coded packets by combining original data packets using a linear network code; distribute the first coded packets to the multiple different paths to the destination node; generate second coded packets associated with a first path of the multiple different paths by combining two or more of the first coded packets distributed to the first path using the linear network code; generate second coded packets associated with a second path of the multiple available paths by combining two or more of the first coded packets distributed to the second path using the linear network code; transmit the second coded packets associated with the first path to the destination node via the first network using the first network interface unit; and transmit the second coded packets associated with the second path to the destination node via the second network using the second network interface unit. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification