Loss tolerant transmission control protocol
First Claim
1. A device comprising:
- a transmitter configured to;
estimate a packet erasure rate for packets of a data window to be transmitted to a receiver;
determine a number of proactive forward error correction packets for the data window based on the estimated packet erasure rate;
determine a packet size for the packets in the data window based on a window size of the data window and the determined number of proactive forward error correction packets; and
transmit the data window to the receiver, wherein the packets in the transmitted data window have a size corresponding to the determined packet size and include the determined number of proactive forward error correction packets.
2 Assignments
0 Petitions
Accused Products
Abstract
A particular device includes a transmitter. The transmitter is adapted to estimate a packet erasure rate for packets of a data window to be transmitted to a receiver. The transmitter is adapted to determine a number of proactive forward error correction (FEC) packets for the data window based on the estimated packet erasure rate. The transmitter is adapted to determine a packet size for the packets in the data window based on a window size of the data window and the determined number of proactive FEC packets. The transmitter is also adapted to transmit the data window to the receiver. The packets in the transmitted data window have a size corresponding to the determined packet size and include the determined number of proactive FEC packets.
-
Citations
20 Claims
-
1. A device comprising:
a transmitter configured to; estimate a packet erasure rate for packets of a data window to be transmitted to a receiver; determine a number of proactive forward error correction packets for the data window based on the estimated packet erasure rate; determine a packet size for the packets in the data window based on a window size of the data window and the determined number of proactive forward error correction packets; and transmit the data window to the receiver, wherein the packets in the transmitted data window have a size corresponding to the determined packet size and include the determined number of proactive forward error correction packets. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A method comprising:
-
setting a size of a block; determining a number of packets for the block based on a window granularity; calculating a number of proactive forward error correction packets for the block based on a loss estimate value; selecting a data window for the block, wherein the number of packets for the block includes the number of proactive forward error correction packets and a number of data packets in the data window; forming the block that includes proactive forward error correction packets and the data window; sending the block to a receiver; receiving at least one acknowledgement from the receiver, wherein the at least one acknowledgement includes an updated loss estimate value; recalculating the number of proactive forward error correction packets based on the updated loss estimate value and the window granularity; forming a second block wherein a number of packets for the second block is based on the window granularity, and wherein the number of packets of the second block includes the recalculated number of proactive forward error correction packets and a number of data packets in a second data window; and sending the second block to the receiver. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
receiving an incoming packet at a receiver from a transmitter, wherein the incoming packet is one of a data packet and a forward error correction packet; identifying a block associated with the incoming packet at the receiver; after the identified block is decoded, discarding the incoming packet; if the identified block is not decoded; when the incoming packet is a new packet, allocating decoding structures at the receiver; generating a loss estimate value and a hole size for the block; sending an acknowledgement of the incoming packet from the receiver to the transmitter, wherein the acknowledgement includes the loss estimate value and the hole size; and when the incoming packet raises a number of received data packets for the block and received forward error correction packets for the block to a number sufficient to decode the block, decoding the block at the receiver. - View Dependent Claims (17, 18, 19, 20)
-
Specification