TCP throughput control by imposing temporal delay
First Claim
1. A network device for managing a communications over a network, comprising:
- a buffer for use in receiving and storing network packets; and
a management component that is programmed to perform actions, including;
receiving a network packet;
monitoring changes in an amount of content stored in the buffer;
selectively adjusting a delay for sending an acknowledgement (ACK) to the received network packet based on the monitored changes in the buffer, wherein selectively adjusting includes;
the management component determining that the contents of the buffer are above a threshold value, and determining that the contents of the buffer are increasing, and when both determinations are valid, then increasing the delay of sending the ACK to a sending network device of the received network packet;
the management component determining that the contents of the buffer are above a threshold value, and determining that the contents of the buffer are decreasing, and when both determinations are valid, then decreasing the delay of sending the ACK to the sending network device of the received network packet; and
selectively forwarding the network packet to a destination.
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.
96 Citations
19 Claims
-
1. A network device for managing a communications over a network, comprising:
-
a buffer for use in receiving and storing network packets; and a management component that is programmed to perform actions, including; receiving a network packet; monitoring changes in an amount of content stored in the buffer; selectively adjusting a delay for sending an acknowledgement (ACK) to the received network packet based on the monitored changes in the buffer, wherein selectively adjusting includes; the management component determining that the contents of the buffer are above a threshold value, and determining that the contents of the buffer are increasing, and when both determinations are valid, then increasing the delay of sending the ACK to a sending network device of the received network packet; the management component determining that the contents of the buffer are above a threshold value, and determining that the contents of the buffer are decreasing, and when both determinations are valid, then decreasing the delay of sending the ACK to the sending network device of the received network packet; and selectively forwarding the network packet to a destination. - View Dependent Claims (2, 3, 4)
-
-
5. A method of managing a communications over a network, comprising:
-
receiving a network packet at an intermediate device interposed between a sending device and a receiving device; determining a status of a buffer within the intermediate device and is configured for receiving the network packet; when it is determined that the status of the buffer indicates that the buffer'"'"'s contents are increasing and it is determined that the buffer'"'"'s contents is above a threshold value, such that both determinations are valid, increasing a temporal delay for sending of an acknowledgement (ACK) to network packets received from the sending device; when it is determined that the status of the buffer indicates that the buffer'"'"'s contents are decreasing and it is determined that the buffer'"'"'s contents is above the threshold value, such that both determinations are valid, decreasing a temporal delay for sending of an ACK to network packets received from the sending device; and selectively sending the ACK based on the determined temporal delay and the buffer'"'"'s contents, in response to the received network packet. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A non-transitory, computer-readable storage medium having machine-executable instructions for managing communications over a network, the machine-executable instructions when installed onto a network device interposed between a sending network device and a receiving network device enables the interposed network device to perform actions, comprising:
-
receiving a network packet from the sending network device; when it is determined that a buffer'"'"'s contents are increasing and when it is also determined that the buffer'"'"'s contents is above a threshold value, selectively increasing a temporal delay for sending of an acknowledgement (ACK) to network packets received from the sending device; when it is determined that the buffer'"'"'s contents are decreasing and when it is also determined that the buffer'"'"'s contents is above the threshold value, selectively decreasing a temporal delay for sending of an acknowledgement (ACK) to network packets received from the sending device; and based on the temporal delay, selectively sending the ACK to the sending device. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A traffic management device (TMD) for enabling communications between at least one sending network device and a receiving network device, comprising:
-
a transceiver that receives packets from the sending network device destined for the receiving network device; and a processor for executing instructions for selectively delaying sending of an acknowledgement (ACK) to the sending device in response to receiving a network packet, based, at least in part, on whether a buffer'"'"'s contents are above a threshold value, and further whether the buffer'"'"'s contents are also increasing, at substantially steady-state, or decreasing. - View Dependent Claims (18)
-
-
19. A traffic management device (TMD) for enabling communications between at least one sending network device and a receiving network device, comprising:
-
a transceiver that receives packets from the sending network device destined for the receiving network device; and a processor for executing instructions that; selectively delays sending of an acknowledgement (ACK) to the sending device in response to receiving a network packet, based, at least in part, on whether a buffer'"'"'s contents are above a threshold value, and further whether the buffer'"'"'s contents are also increasing, at substantially steady-state, or decreasing; 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 network device is less than a round trip time for a destination, sending an explicit congestion notification (ECN) to the sending network device.
-
Specification