COMMUNICATION TRANSPORT OPTIMIZED FOR DATA CENTER ENVIRONMENT
First Claim
1. A method for controlling congestion on a network connection between a first computing device and a second computing device, comprising:
- transmitting a set of data packets on the network connection from the first computing device to the second computing device;
identifying each data packet in the set of data packets that experienced congestion on the network connection;
sending, by the second computing device to the first computing device, a sequence of bits that represents the number of data packets in the set of data packets that were identified as having experienced congestion; and
adjusting a rate of transmitting data packets on the network connection based on the sequence of bits sent to the first computing device.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus for congestion control in computer networks achieve high burst tolerance, low latency and high throughput with shallow-buffered switches. A method for controlling congestion includes transmitting a set of data packets on a network connection from a first computing device to a second computing device, identifying each data packet in the set of data packets that experienced congestion on the network connection, sending, by the second computing device to the first computing device, a sequence of bits that represents the number of data packets in the set of data packets that were identified as having experienced congestion, and adjusting a rate of transmitting data packets on the network connection based on the sequence of bits sent to the first computing device.
89 Citations
20 Claims
-
1. A method for controlling congestion on a network connection between a first computing device and a second computing device, comprising:
-
transmitting a set of data packets on the network connection from the first computing device to the second computing device; identifying each data packet in the set of data packets that experienced congestion on the network connection; sending, by the second computing device to the first computing device, a sequence of bits that represents the number of data packets in the set of data packets that were identified as having experienced congestion; and adjusting a rate of transmitting data packets on the network connection based on the sequence of bits sent to the first computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for controlling congestion on a network connection between a first computing device and a second computing device, comprising:
-
transmitting, by the first computing device, a set of data packets on the network connection to the second computing device; marking data packets in the set of transmitted data packets if a queue size in a device on the network connection exceeds a predetermined, single value threshold K; receiving, at the first computing device, information identifying data packets in the set of transmitted data packets that were marked; estimating, at the first computing device, a measure of congestion on the network connection based on the data packets in the set of data packets that were identified as marked; and adjusting, by the first computing device, a rate of transmitting data packets on the network connection based on the estimated measure of congestion. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A method for controlling congestion on a network connection between a first computing device and a second computing device, comprising:
-
transmitting a set of data packets on the network connection from the first computing device to the second computing device; marking data packets in the set of transmitted data packets if a queue size in a device on the network connection exceeds a predetermined, single value threshold K; sending, by the second computing device to the first computing device, a sequence of bits that represents the number of data packets in the set of data packets that were marked; estimating a measure of congestion on the network connection by determining, based on the sequence of bits, a fraction of data packets in the set of transmitted data packets that were marked; adjusting a rate of transmitting data packets on the network connection based on the fraction of marked data packets in the set of transmitted data packets; and updating the estimated measure of congestion on the network connection for each set of transmitted data packets.
-
Specification