Bandwidth allocation in accordance with shared queue output limit
First Claim
1. A method for dynamically adjusting the flow rate of a plurality of pipes that feed into a shared queue, said method comprising:
- setting a minimum flow and a maximum flow for each of said plurality of pipes;
determining whether or not excess queue bandwidth exists in accordance with a queue output flow rate;
in response to the existence of excess queue bandwidth, linearly increasing a flow rate of a pipe; and
in response to a lack of excess queue bandwidth, exponentially decreasing a flow rate of a pipe.
3 Assignments
0 Petitions
Accused Products
Abstract
A method for dynamically adjusting the flow rate of a plurality of logical pipes that share a common output queue. In accordance with the method of the present invention, a minimum flow rate and a maximum flow rate are set for each of the pipes. Next a determination is made of whether or not excess queue bandwidth exists in accordance with the output flow rate of the shared queue. The determination of whether or not excess bandwidth exists comprises comparing the output flow rate of the shared queue with a pre-determined threshold queue output value. An instantaneous excess bandwidth signal has a value of 1 if there is excess bandwidth and is otherwise 0 if there is no excess bandwidth. In an alternate embodiment, the instantaneous excess bandwidth signal for a particular pipe is logically ANDed with one or more additional excess bandwidth signals to form a composite instantaneous excess bandwidth signal. In response to the existence of excess queue bandwidth, a flow rate of a pipe is linearly increased while in response to a lack of excess queue bandwidth, the flow rate of the pipe is exponentially decreased.
40 Citations
36 Claims
-
1. A method for dynamically adjusting the flow rate of a plurality of pipes that feed into a shared queue, said method comprising:
-
setting a minimum flow and a maximum flow for each of said plurality of pipes;
determining whether or not excess queue bandwidth exists in accordance with a queue output flow rate;
in response to the existence of excess queue bandwidth, linearly increasing a flow rate of a pipe; and
in response to a lack of excess queue bandwidth, exponentially decreasing a flow rate of a pipe. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
13. A system for dynamically adjusting the flow rate of a plurality of pipes that feed into a shared queue, said system comprising:
-
processing means for setting a minimum flow and a maximum flow for each of said plurality of pipes;
processing means for determining whether or not excess queue bandwidth exists in accordance with a queue output flow rate;
processing means responsive to the existence of excess queue bandwidth for linearly increasing a flow rate of a pipe; and
processing means responsive to a lack of excess queue bandwidth for exponentially decreasing a flow rate of a pipe.
-
-
25. A computer program product for dynamically adjusting the flow rate of a plurality of pipes that feed into a shared queue, said computer program product comprising:
-
instruction means for setting a minimum flow and a maximum flow for each of said plurality of pipes;
instruction means for determining whether or not excess queue bandwidth exists in accordance with a queue output flow rate;
instruction means responsive to the existence of excess queue bandwidth for linearly increasing a flow rate of a pipe; and
instruction means responsive to a lack of excess queue bandwidth for exponentially decreasing a flow rate of a pipe.
-
Specification