Method and Apparatus for Network Congestion Control Based on Transmission Rate Gradients
First Claim
1. A method for congestion control in a data communication protocol employing acknowledged communication in which a transmitting node transmits data to a receiving node and the receiving node acknowledges receipt of the data, wherein a congestion window specifies a maximum amount of unacknowledged data which the transmitting node may transmit before reception of a positive acknowledgement for all or part of that data, the method to be performed by the transmitting node and comprising:
- measuring a flight size indicating an amount of data sent by the transmitting node and not yet acknowledged by the receiving node;
measuring a transmission rate, the transmission rate corresponding to a same time instant as the flight size;
determining a trend of the flight size;
determining a trend of the transmission rate, wherein the trend is derived from a transmission rate gradient calculation, in which either the transmission rate measurements or the transmission rate gradient calculations or both, are filtered to reduce their temporal variability;
detecting whether there is a congestion according to the determined trend of the transmission rate and the trend of the flight size;
upon positive detection of the congestion, modifying the congestion window; and
transmitting data while respecting the congestion window size.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for congestion control for acknowledged communication over networks detects congestion based on trends of flight size and transmission rate in order to adapt a congestion window in accordance with a detection result. Such congestion detection enables, for example, distinguishing between the congestion with or without unfair competition. Moreover, the measured transmission rate or its trend can be filtered to compensate for time variations. An end node or a proxy can be used for congestion control.
-
Citations
28 Claims
-
1. A method for congestion control in a data communication protocol employing acknowledged communication in which a transmitting node transmits data to a receiving node and the receiving node acknowledges receipt of the data, wherein a congestion window specifies a maximum amount of unacknowledged data which the transmitting node may transmit before reception of a positive acknowledgement for all or part of that data, the method to be performed by the transmitting node and comprising:
-
measuring a flight size indicating an amount of data sent by the transmitting node and not yet acknowledged by the receiving node; measuring a transmission rate, the transmission rate corresponding to a same time instant as the flight size; determining a trend of the flight size; determining a trend of the transmission rate, wherein the trend is derived from a transmission rate gradient calculation, in which either the transmission rate measurements or the transmission rate gradient calculations or both, are filtered to reduce their temporal variability; detecting whether there is a congestion according to the determined trend of the transmission rate and the trend of the flight size; upon positive detection of the congestion, modifying the congestion window; and transmitting data while respecting the congestion window size. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An apparatus for controlling, in a transmitting node, congestion in a data communication protocol employing acknowledged communication in which the transmitting node transmits data to a receiving node and the receiving node acknowledges receipt of the data, wherein a congestion window specifies a maximum amount of unacknowledged data which the transmitting node may transmit before reception of a positive acknowledgement for all or part of that data, the apparatus comprising:
-
a flight size measuring unit for measuring a flight size indicating an amount of data sent by the transmitting node and not yet acknowledged by the receiving node; a transmission rate measuring unit for measuring a transmission rate, the transmission rate corresponding to a same time instant as the flight size; a flight size trend calculation unit for determining a trend of the flight size; a transmission rate trend calculation unit for determining a trend of the transmission rate, wherein the trend is derived from a transmission rate gradient calculation, in which either the transmission rate measurements or the transmission rate gradient calculations or both, are filtered to reduce their temporal variability; a congestion detection unit for detecting whether there is a congestion according to the determined trend of the transmission rate and the trend of the flight size; a congestion handling unit for, upon positive detection of the congestion by the congestion detection unit, modifying the congestion window; and a transmission unit for transmitting data while respecting the congestion window size. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification