System for fast recovery from losses for reliable data communication protocols
First Claim
1. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
- sending a first message from one terminal to the other; and
without waiting for receipt of a second message acknowledging receipt of the first message, sending a duplicate of the first message or a message duplicating some part of the data contained in the first message from said one terminal to the other.
2 Assignments
0 Petitions
Accused Products
Abstract
Fast recovery from losses is an important problem for reliable data communication protocols. The Internet standard TCP protocol (Transmission Control Protocol) implements two algorithms for that: an original one based on a special timer, and a later addition to TCP that is triggered when there are three packets received by the client after the missing one. Web communications are most frequently carrying rather small objects that are generally ineligible for anything other than timeout-based retransmission schemes. The present invention describes a system delivering performance improvements to TCP (and other reliable data communication protocols) that are compliant with present Internet standards. One improvement is to send duplicates of packets without waiting for a timeout to occur. Another is to split particular parts of a data stream into smaller packets. A third is to send packets out-of-order to force the remote host to acknowledge all packets that were successfully received.
-
Citations
27 Claims
-
1. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
-
sending a first message from one terminal to the other; and
without waiting for receipt of a second message acknowledging receipt of the first message, sending a duplicate of the first message or a message duplicating some part of the data contained in the first message from said one terminal to the other. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the step of:
at the end of a communication session between the first and second terminals sending at least one duplicate of one or more of the last packets to be sent without waiting for a message acknowledging receipt of the last packets.
-
16. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
at the end of transmission of a packet window, transmitting at least the last two packets out-of-order.
-
17. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
at the end of transmission of a packet window, splitting the last packet into first and second packets and transmitting the first and second packets out-of-order. - View Dependent Claims (18)
-
19. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
- at the end of the transmission of a packet window, splitting any data remaining to be transmitted after transmission of the last full data packet in a packet window into first and second packets and transmitting the first and second packets out-of-order.
-
20. In a communication protocol wherein, in response to a message communicated from a first communication terminal to a second communication terminal, a message is transmitted from the second terminal to the first terminal acknowledging receipt of the message communicated from the first to the second terminal, a method for reducing communication delays arising from lost messages comprising the steps of:
-
at the beginning of a communication session between the first and second terminals sending from one terminal at least one duplicate of a first message without first waiting for a second message acknowledging receipt of the first message; and
at the end of the communication session sending from one terminal at least one duplicate of a third message without first waiting for a fourth message acknowledging receipt of the third message. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
Specification