Patent ID: 7983156

Claim:
A method for implementing transport layer congestion control, the method comprising: estimating a queue size of a queue; if the estimated queue size is below a first threshold, by using a processing unit, executing a first transport layer congestion control method for controlling a rate at which packets are injected into a network; and if the estimated queue size is above a second threshold, by using a processing unit, executing a second transport layer congestion control method for controlling a rate at which packets are injected into the network, the second transport layer congestion control method being different than the first transport layer congestion control method; where estimating the queue size comprises: measuring a round-trip time of the network; calculating a price factor of the network's level of congestion based upon the round-trip time, wherein the price factor is a function of the measured round-trip time relative to a smallest round-trip time observed during the lifetime of a connection; determining a number of bytes queued in the queue based upon the price factor and a flight size, wherein the flight size refers to the amount of data in transit at a specific point in time; and using the number of bytes queued and a maximum segment size to estimate the queue size.