Active queue management with flow proportional buffering
First Claim
Patent Images
1. A method for dynamically allocating a buffer, the method comprising:
- estimating a number of active connections;
adjusting a queue threshold for a queue by setting the queue threshold (T(n)) according to the relation;
where P is a bandwidth-delay product, {circumflex over (N)}(n) is an estimated number of active connections at measurement time n, and γ
is a predetermined parameter that represents a minimum number of packets buffered per connection to avoid a TCP timeout;
computing a drop probability based, at least in part, on the adjusted threshold and a measured queue size;
executing a packet drop routine based upon the drop probability.
15 Assignments
0 Petitions
Accused Products
Abstract
A technique for an improved active queue management scheme which dynamically changes its threshold settings as the number of connections (and system load) changes is disclosed. Using this technique, network devices can effectively control packet losses and TCP timeouts while maintaining high link utilization. The technique also allows a network to support a larger number of connections during congestion periods.
-
Citations
14 Claims
-
1. A method for dynamically allocating a buffer, the method comprising:
-
estimating a number of active connections;
adjusting a queue threshold for a queue by setting the queue threshold (T(n)) according to the relation;
where P is a bandwidth-delay product, {circumflex over (N)}(n) is an estimated number of active connections at measurement time n, and γ
is a predetermined parameter that represents a minimum number of packets buffered per connection to avoid a TCP timeout;
computing a drop probability based, at least in part, on the adjusted threshold and a measured queue size;
executing a packet drop routine based upon the drop probability. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An apparatus for dynamically allocating a buffer, the apparatus comprising:
-
an active connection estimator for estimating a number of active connections;
a queue threshold adjuster for adjusting a queue threshold for a queue, the queue threshold adjuster further comprising a module for setting the queue threshold (T(n)) according to the relation;
where P is a bandwidth-delay product, {circumflex over (N)}(n) is an estimated number of active connections at measurement time n, and γ
is a predetermined parameter that represents a minimum number of packets buffered per connection to avoid a TCP timeout;
a drop probability calculator for computing a drop probability based, at least in part, on the adjusted threshold and a sampled queue size; and
a packet drop module for executing a packet drop routine based upon the drop probability. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. An article of manufacture for dynamically allocating a buffer, the article of manufacture comprising:
-
at least one processor readable carrier; and
instructions carried on the at least one carrier;
wherein the instructions are configured to be readable from the at least one carrier by at least one processor and thereby cause the at least one processor to operate so as to;
estimate a number of active connections;
adjust a queue threshold for a queque by setting the queue threshold (T(n)) according to the relation;
where P is a bandwidth-delay product, {circumflex over (N)}(n) is an estimated number of active connections at measurement time n, and γ
is a predetermined parameter that represents a minimum number of packets buffered per connection to avoid a TCP timeout;
compute a drop probability based, at least in part, on the adjusted threshold and a measured queue size;
execute a packet drop routine based upon the drop probability.
-
-
14. A signal embodied in a carrier wave and representing sequences of instructions which, when executed by at least one processor, cause the at least one processor to dynamically allocate a buffer by performing the steps of:
-
estimating a number of active connections;
adjusting a queue threshold for a queue by setting the queue threshold (T(n)) according to the relation;
where P is a bandwidth-delay product, {circumflex over (N)}(n) is an estimated number of active connections at measurement time n, and γ
is a predetermined parameter that represents a minimum number of packets buffered per connection to avoid a TCP timeout;
computing a drop probability based, at least in part, on the adjusted threshold and a measured queue size;
executing a packet drop routine based upon the drop probability.
-
Specification