SYSTEM AND METHOD FOR ACHIEVING ACCELERATED THROUGHPUT
First Claim
1. A method of accelerating data communications over an unreliable network;
- comprising;
providing encoding components associated with each of two endpoints to a communication;
establishing an encoded channel between the encoding components for a communication session between the endpoints;
intercepting a plurality of data packets related to the communication at one of the encoding components;
segmenting and packaging each of the plurality of data packets to provide a segmented and packaged data packet having at least one encoded data segment and at least one extra encoded segment for transmission to the other of the encoding components;
storing the segmented and packaged data packets at the one of the encoding components;
transmitting the segmented and packaged data packets to the other of the encoding components over the encoded channel when a predetermined condition is met;
decoding and reassembling the plurality of data packets at the other of the encoding components based on received encoded data segments and received extra encoded segments; and
transmitting the reassembled data packets from the other of the encoding components to its respective endpoint.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for transporting data between two endpoints over an encoded channel are disclosed. Data transmission units (data units) from the source network are received at an encoding component logically located between the endpoints. These first data units are subdivided into second data units and are transmitted to the destination network over the transport network. Also transmitted are encoded or extra second data units that allow the original first data units to be recreated even if some of the second data units are lost. These encoded second data units may be merely copies of the second data units transmitted, parity second data units, or second data units which have been encoded using erasure correcting coding. At the receiving endpoint, the second data units are received and are used to recreate the original first data units.
-
Citations
39 Claims
-
1. A method of accelerating data communications over an unreliable network;
- comprising;
providing encoding components associated with each of two endpoints to a communication; establishing an encoded channel between the encoding components for a communication session between the endpoints; intercepting a plurality of data packets related to the communication at one of the encoding components; segmenting and packaging each of the plurality of data packets to provide a segmented and packaged data packet having at least one encoded data segment and at least one extra encoded segment for transmission to the other of the encoding components; storing the segmented and packaged data packets at the one of the encoding components; transmitting the segmented and packaged data packets to the other of the encoding components over the encoded channel when a predetermined condition is met; decoding and reassembling the plurality of data packets at the other of the encoding components based on received encoded data segments and received extra encoded segments; and transmitting the reassembled data packets from the other of the encoding components to its respective endpoint. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
- comprising;
-
17-29. -29. (canceled)
-
30. A method of setting an encoding rate for encoding data for accelerated data communication across an unreliable network between two endpoints each respectively associated with an encoding component;
- comprising;
establishing an encoded channel between the encoding components for a communication session between the endpoints; intercepting a data packet related to the communication at one of the encoding components; segmenting and packaging the data packet to provide encoded data segments for transmission to the other of the encoding components; transmitting the encoded data segments and at least one extra encoded segment to the other of the encoding components over the encoded channel; decoding and reassembling the data packet at the other of the encoding components based on the received encoded data segments; transmitting the reassembled data packet from the other of the encoding components to its respective endpoint; computing a weighted loss ratio for the communication session; and adjusting the encoding rate based on the weighted loss ratio. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38, 39)
- comprising;
Specification