Back to results
US 7,613,199 B1Granted
Systems and methods for permitting queues to oversubscribe
AssigneeJuniper Networks, Inc.
InventorsPradeep Sindhu, Debashis Basu, Jayabharat Boddu, Avanindra Godbole
Life of this patent
Estimating the term…
Abstract
A system permits queues to use more than an allocated amount of bandwidth. The system allocates an amount of bandwidth to each of the queues and determines whether any of the queues is using less than the allocated amount of bandwidth. If so, the system reallocates the allocated bandwidth from one of the queues to at least one other one of the queues based on the amount of bandwidth used by each of the queues.
Claims21
A network device, comprising:
- a plurality of queues to temporarily store data associated with a stream of data, each of the plurality of queues having an associated weight and an associated rate-control parameter, the weight associated with one of the plurality of queues identifying a fraction of a total bandwidth of the stream assigned to the one of the plurality of queues, the rate-control parameter associated with the one of the plurality of queues identifying whether the one of the plurality of queues is permitted to oversubscribe;
- and
- an oversubscription engine to:
- determine an amount of bandwidth used by each of the plurality of queues, and
- reallocate a portion of the fraction of the total bandwidth from a first one of the plurality of queues to one or more other ones of the plurality of queues based on the amount of bandwidth used by each of the plurality of queues, the weight associated with the first queue, and the rate-control parameter associated with each of the plurality of queues.
2 more elements
A system, comprising:
- means for providing a plurality of queues to temporarily store data associated with a stream of data;
- means for associating a weight with each of the plurality of queues, the weight associated with one of the plurality of queues identifying a fraction of a total bandwidth of the stream assigned to the one of the plurality of queues;
- means for allocating a static amount of bandwidth to each of the plurality of queues based on the weight associated with each of the plurality of queues;
- means for associating a rate-control parameter with each of the plurality of queues, the rate-control parameter associated with the one of the plurality of queues identifying whether the one of the plurality of queues is permitted to oversubscribe;
- means for determining an amount of bandwidth used by each of the plurality of queues;
- and
- means for reallocating a portion of the fraction of the total bandwidth from a first one of the plurality of queues to one or more other ones of the plurality of queues based on the amount of bandwidth used by each of the plurality of queues, the static amount of bandwidth allocated to the first queue, and the rate-control parameter associated with each of the plurality of queues.
4 more elements
A method, comprising:
- providing a plurality of queues to temporarily store data;
- allocating a fraction of a total bandwidth to each of the plurality of queues;
- associating a rate-control parameter with each of the plurality of queues, the rate-control parameter associated with one of the plurality of queues identifying whether the one of the plurality of queues is permitted to oversubscribe;
- determining an average amount of bandwidth used by each of the plurality of queues over a plurality of time intervals;
- and
- reallocating a portion of the fraction of the total bandwidth from a first one of the plurality of queues to one or more other ones of the plurality of queues based on the average amount of bandwidth used by each of the plurality of queues, the fraction of the total bandwidth allocated to the first queue, and the rate-control parameter associated with each of the plurality of queues.
3 more elements
Dependencies are inferred from the claim text.