TCP throughput control by imposing temporal delay
First Claim
1. A network device for managing a communications between devices, comprising:
- a buffer for use in receiving and storing packets; and
one or more physical devices operative to perform actions comprising;
receiving a packet from a sending device;
when it is determined that contents of the buffer are above a threshold value andalso that the contents of the buffer are increasing, then selectively increasing a delay in sending of an acknowledgement (ACK) to the sending device;
when it is determined that both the contents of the buffer are above the threshold value and the contents of the buffer is decreasing, then selectively decreasing the delay of sending the ACK to the sending device; and
when it is determined that the contents of the buffer are substantially increasing above the threshold value and a round trip time for the sending device is less than a round trip time for a destination device, selectively sending an explicit congestion notification echo (ECE) to the sending device.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, apparatus, and method are directed towards managing traffic over a network by imposing temporal delays in acknowledgments (ACKs). A Traffic Management Device (TMD), interposed between two network session end-points monitors a buffer of relayed packets. If the contents of the buffer exceed a threshold value, delays are imposed on sending of acknowledgements. If the buffer contents exceed the threshold, and the buffer'"'"'s contents are increasing, the delays may be increased. If the buffer'"'"'s contents are about at steady state, the acknowledgement delays may be decreased, or maintained at a current delay status. In one embodiment, if the sender is sending packets at a rate above a receiver'"'"'s ability to receive the packets, and the sender appears not to be decreasing its rate of transmission, an explicit congestion notification echo (ECE) may be sent to the sender.
-
Citations
19 Claims
-
1. A network device for managing a communications between devices, comprising:
-
a buffer for use in receiving and storing packets; and one or more physical devices operative to perform actions comprising; receiving a packet from a sending device; when it is determined that contents of the buffer are above a threshold value and also that the contents of the buffer are increasing, then selectively increasing a delay in sending of an acknowledgement (ACK) to the sending device; when it is determined that both the contents of the buffer are above the threshold value and the contents of the buffer is decreasing, then selectively decreasing the delay of sending the ACK to the sending device; and when it is determined that the contents of the buffer are substantially increasing above the threshold value and a round trip time for the sending device is less than a round trip time for a destination device, selectively sending an explicit congestion notification echo (ECE) to the sending device. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A processor-based method operating on a network device, comprising:
-
receiving a packet from a sending device at the network device, the packet being intended for a destination device; when it is determined that contents of a buffer are above a threshold value and also that the contents of the buffer are increasing, then selectively increasing a delay in sending of an acknowledgement (ACK) to the sending device; when it is determined that both the contents of the buffer are above the threshold value and the contents of the butler is decreasing, then selectively decreasing the delay of sending the ACK to the sending device; and when it is determined that the contents of the buffer are substantially increasing above the threshold value and a round trip time for the sending device is less than a round trip time for the destination device, selectively using a Domain Specific Access Control Restriction (DSACR) to control a round trip time of the sending device. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. An apparatus comprising a non-transitory computer readable medium, having computer-executable instructions stored thereon, that in response to execution by a computing device interposed between a sending device and a destination device enables the interposed computing device to perform actions, comprising:
-
receiving a packet from the sending device; when it is determined that contents of a buffer are above a threshold value and also that the contents of the buffer are increasing, then selectively increasing a delay in sending of an acknowledgement (ACK) to the sending device; when it is determined that both the contents of the buffer are above the threshold value and the contents of the buffer is decreasing, then selectively decreasing the delay of sending the ACK to the sending device; and when it is determined that the contents of the buffer are substantially increasing above the threshold value and a round trip time for the sending device is less than a round trip time for the destination device, selectively sending an explicit congestion notification echo (ECE) to the sending device. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification