Method for improving TCP performance over wireless links
First Claim
1. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said data packets transmitted from a source to a destination, said method comprising:
- detecting an initial stage of congestion;
determining direction of said congestion by estimating relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network;
determining whether congestion is developing in a forward path;
isolating forward throughput from congestion occurring on a reverse path; and
in the absence of congestion in the reverse path, avoiding retransmission of data packets as a result of a timeout when there are a plurality of packet losses in a time window.
2 Assignments
0 Petitions
Accused Products
Abstract
A protocol for differentiating congestion-related packet loss versus random packet loss in a wireless data connection. The protocol monitors changes in the length of a transmission queue in a wireless data connection over an interval substantially equal to the amount of time it takes to transmit a window of data packets and receive acknowledgements corresponding to all data packets transmitted in the window. If packet loss is preceded by an increase in the queue length over two consecutive intervals, the packet loss is designated as being due to congestion and a congestion avoidance algorithm is initiated. Otherwise, the packet loss is designated as random loss and the transmission window is maintained at its current size. The protocol reduces the transmission rate only when congestion is identified as the cause of lost packets; otherwise wireless losses can simply be quickly retransmitted without a reduction in the data transmission rate.
-
Citations
23 Claims
-
1. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said data packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining direction of said congestion by estimating relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network; determining whether congestion is developing in a forward path; isolating forward throughput from congestion occurring on a reverse path; and in the absence of congestion in the reverse path, avoiding retransmission of data packets as a result of a timeout when there are a plurality of packet losses in a time window. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining direction of said congestion by estimating relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over sold network; wherein said source has a congestion window; estimating the number of packets which reside in a bottleneck queue from said relative delay; and keeping the number of packets in said bottleneck queue at a desired minimum by adjusting the congestion window of the source.
-
-
9. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining direction of said congestion by estimating relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network; determining whether congestion is developing in a forward path; isolating forward throughput from congestion occurring on a reverse path; wherein said source has a congestion window, estimating the number of packets which reside in a bottleneck queue from said relative delay; and keeping the number of packets in said bottleneck queue at a desired minimum by adjusting the congestion window of the source. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining the direction of said congestion by estimating the relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network; said relative delay comprising increases and decreases in delay that said data packets experience with respect to each other; and calculating said relative delay from a timestamp returned by a receiver of a data packet in an acknowledgment packet; said timestamp specifying arrival time of a data packet at the receiver; determining whether congestion is developing in a forward path; isolating forward throughput from congestion occurring on a reverse path; and in the absence of congestion in the reverse path, avoiding retransmission of data packets as a result of a timeout when there are a plurality of packet losses in a time window. - View Dependent Claims (15, 16, 17)
-
-
18. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining direction of said congestion by estimating relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network; said relative delay comprising increases and decreases in delay that said data packets experience with respect to each other; calculating said relative delay from a timestamp returned by a receiver of a data packet in an acknowledgment packet; said timestamp specifying arrival time of a data packet at the receiver; wherein said source has a congestion window, estimating the number of packets which reside in a bottleneck queue from said relative delay; and keeping the number of packets in said bottleneck queue at a desired minimum by adjusting the congestion window of the source.
-
-
19. A method of improving congestion control of data packets transmitted over a communication network employing transmission control protocol (TCP), said packets transmitted from a source to a destination, said method comprising:
-
detecting an initial stage of congestion; determining the direction of said congestion by estimating the relative delay that one data packet experiences with respect to another data packet as said data packets are transmitted over said network; determining whether congestion is developing in a forward path; isolating forward throughput from congestion that may occur on a reverse path; in the absence of congestion in the reverse path, avoiding retransmission of data packets as a result of a timeout when there are a plurality of packet losses in a time window; wherein said relative delay comprises increases and decreases in delay that said data packets experience with respect to each other; and calculating said relative delay from a timestamp returned by a receiver of a data packet in an acknowledgment packet; said timestamp specifying arrival time of a data packet at the receiver. - View Dependent Claims (20, 21, 22, 23)
-
Specification