Congestion Window Control Based On Queuing Delay and Packet Loss
First Claim
1. A method of controlling size of a congestion window, comprising:
- at a transmitting device;
transmitting a number of data packets over a communication channel from the transmitting device to a receiver;
determining a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets;
determining a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted;
comparing the queuing delay to a threshold queuing delay;
comparing the loss rate to a threshold loss rate;
in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is less than the threshold loss rate, resetting the size of the congestion window in accordance with a first function of a current size of the congestion window and the queuing delay, wherein at equilibrium the first function generates a value inversely related to an excess queuing delay, which corresponds to the difference between the queuing delay and the threshold queuing delay;
in response to a determination that the queuing delay is less than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a second function of the current size of the congestion window and the loss rate, wherein at equilibrium the second function generates a value inversely related to an excess loss rate, which corresponds to the difference between the loss rate and the threshold loss rate;
in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a third function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the third function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of controlling size of a congestion window, includes, at a transmitting device, transmitting a plurality of data packets over a communication channel from the transmitting device to a receiver, determining a queuing delay and a loss rate of the transmission, comparing the queuing delay to a threshold queuing delay, comparing the loss rate to a threshold loss rate, and in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the function generates a value inversely proportional to a weighted sum of an excess queuing delay and an excess loss rate.
-
Citations
12 Claims
-
1. A method of controlling size of a congestion window, comprising:
at a transmitting device; transmitting a number of data packets over a communication channel from the transmitting device to a receiver; determining a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determining a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; comparing the queuing delay to a threshold queuing delay; comparing the loss rate to a threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is less than the threshold loss rate, resetting the size of the congestion window in accordance with a first function of a current size of the congestion window and the queuing delay, wherein at equilibrium the first function generates a value inversely related to an excess queuing delay, which corresponds to the difference between the queuing delay and the threshold queuing delay; in response to a determination that the queuing delay is less than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a second function of the current size of the congestion window and the loss rate, wherein at equilibrium the second function generates a value inversely related to an excess loss rate, which corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a third function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the third function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (2)
-
3. An apparatus for controlling size of a congestion window, the apparatus comprising:
-
a transceiver to transmit a plurality of packets over a communication channel to a receiver; one or more processors; and memory for storing instructions to be executed by the one or more processors, the stored instructions to; determine a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determine a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; compare the queuing delay to a threshold queuing delay; compare the loss rate to a threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is less than the threshold loss rate, reset the size of the congestion window in accordance with a first function of a current size of the congestion window and the queuing delay, wherein at equilibrium the first function generates a value inversely related to an excess queuing delay, which corresponds to the difference between the queuing delay and the threshold queuing delay; in response to a determination that the queuing delay is less than the threshold queuing delay and the loss rate is greater than the threshold loss rate, reset the size of the congestion window in accordance with a second function of the current size of the congestion window and the loss rate, wherein at equilibrium the second function generates a value inversely related to an excess loss rate, which corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, reset the size of the congestion window in accordance with a third function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the third function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (4)
-
-
5. A computer readable storage medium, storing one or more programs for execution by one or more processor of an apparatus that includes a transceiver to transmit packets over a communication channel to a receiver;
wherein the one or more programs are for execution by the one or more processors of the apparatus so as to perform a method comprising; transmitting a number of data packets over a communication channel from the transmitting device to a receiver; determining a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determining a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; comparing the queuing delay to a threshold queuing delay; comparing the loss rate to a threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is less than the threshold loss rate, resetting the size of the congestion window in accordance with a first function of a current size of the congestion window and the queuing delay, wherein at equilibrium the first function generates a value inversely related to an excess queuing delay, which corresponds to the difference between the queuing delay and the threshold queuing delay; in response to a determination that the queuing delay is less than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a second function of the current size of the congestion window and the loss rate, wherein at equilibrium the second function generates a value inversely related to an excess loss rate, which corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a third function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the third function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (6)
-
7. A method of controlling size of a congestion window, comprising:
at a transmitting device; transmitting a plurality of data packets over a communication channel from the transmitting device to a receiver; determining a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determining a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; comparing the queuing delay to a threshold queuing delay; comparing the loss rate to a threshold loss rate; determining an excess queuing delay, wherein excess queuing delay corresponds to the difference between the queuing delay and the threshold queuing delay; determining an excess loss rate, wherein excess loss rate corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (8)
-
9. An apparatus for controlling size of a congestion window, the apparatus comprising:
-
a transceiver to transmit a plurality of packets over a communication channel to a receiver; one or more processors; and memory for storing instructions to be executed by the one or more processors, the stored instructions to; transmit a plurality of data packets over a communication channel from the transmitting device to a receiver; determine a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determine a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; compare the queuing delay to a threshold queuing delay; compare the loss rate to a threshold loss rate; determine an excess queuing delay, wherein excess queuing delay corresponds to the difference between the queuing delay and the threshold queuing delay; determine an excess loss rate, wherein excess loss rate corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, reset the size of the congestion window in accordance with a function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (10)
-
-
11. A computer readable storage medium, storing one or more programs for execution by one or more processor of an apparatus that includes a transceiver to transmit packets over a communication channel to a receiver;
wherein the one or more programs are for execution by the one or more processors of the apparatus so as to perform a method comprising; transmitting a plurality of data packets over a communication channel from the transmitting device to a receiver; determining a queuing delay of the transmission, wherein the queuing delay corresponds to the difference of an average round trip time of the data packets and a base round trip time of the data packets; determining a loss rate of the transmission, wherein the loss rate corresponds to the ratio of a number of data packets lost in the transmission to the number of data packets transmitted; comparing the queuing delay to a threshold queuing delay; comparing the loss rate to a threshold loss rate; determining an excess queuing delay, wherein excess queuing delay corresponds to the difference between the queuing delay and the threshold queuing delay; determining an excess loss rate, wherein excess loss rate corresponds to the difference between the loss rate and the threshold loss rate; in response to a determination that the queuing delay is greater than the threshold queuing delay and the loss rate is greater than the threshold loss rate, resetting the size of the congestion window in accordance with a function of the current size of the congestion window, the queuing delay, and the loss rate, wherein at equilibrium the function generates a value inversely proportional to a weighted sum of the excess queuing delay and excess loss rate. - View Dependent Claims (12)
Specification