Leaky bucket type traffic shaper and bandwidth controller
First Claim
1. A traffic shaper for transferring variable-length packets received from a plurality of input ports to one output port while guaranteeing preliminarily designated minimum bandwidths, comprising:
- a plurality of buffer memories for temporarily storing the variable-length packets received from said input ports;
a bandwidth controller for specifying a buffer memory from which a packet is to be read out; and
a read controller for reading out a variable-length packet from a buffer memory specified by said bandwidth controller and transmitting the packet to said output port, said bandwidth controller comprising;
a plurality of leaky bucket units prepared in correspondence with said buffer memories;
a plurality of level deviation detectors each for outputting a numerical value indicative of a difference between a level count value output from each of said leaky bucket units and a threshold corresponding to the preliminarily designated minimum guaranteed bandwidth; and
an output queue designation unit for specifying a buffer memory from which a packet is to be read out on the basis of the difference values output from said level deviation detectors, and each of said leaky bucket units comprising;
a level counter for decrementing the count value at a predetermined rate; and
level raising means for increasing the count value of said level counter, in response to reading out of a packet from a corresponding buffer memory by said read controller, by a value proportional to the length of said packet.
1 Assignment
0 Petitions
Accused Products
Abstract
A traffic shaper comprises a bandwidth controller 40 having a plurality of leaky bucket units 41-1 to 41-n prepared in correspondence with buffer memories 20-1 to 20-n, and an output queue designation unit 43 for specifying a buffer memory from which a packet is to be read out. Each of the leaky bucket units 41 has a level counter 416 for decrementing the count value at a predetermined rate, and a level increaser 411 to 417 for increasing the count value of the level counter by a value proportional to the product of the length of a transmitted packet and a unitary increment value which is variable depend on the current count value of the level counter.
69 Citations
16 Claims
-
1. A traffic shaper for transferring variable-length packets received from a plurality of input ports to one output port while guaranteeing preliminarily designated minimum bandwidths, comprising:
-
a plurality of buffer memories for temporarily storing the variable-length packets received from said input ports;
a bandwidth controller for specifying a buffer memory from which a packet is to be read out; and
a read controller for reading out a variable-length packet from a buffer memory specified by said bandwidth controller and transmitting the packet to said output port, said bandwidth controller comprising;
a plurality of leaky bucket units prepared in correspondence with said buffer memories;
a plurality of level deviation detectors each for outputting a numerical value indicative of a difference between a level count value output from each of said leaky bucket units and a threshold corresponding to the preliminarily designated minimum guaranteed bandwidth; and
an output queue designation unit for specifying a buffer memory from which a packet is to be read out on the basis of the difference values output from said level deviation detectors, and each of said leaky bucket units comprising;
a level counter for decrementing the count value at a predetermined rate; and
level raising means for increasing the count value of said level counter, in response to reading out of a packet from a corresponding buffer memory by said read controller, by a value proportional to the length of said packet. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A traffic shaper for temporarily storing variable-length packets received from a plurality of input ports in buffer memories corresponding to the input ports, reading out the packets stored in the buffer memories, and transferring the packets to one output port while guaranteeing minimum bandwidths within maximum allowable bandwidths preliminarily designated for each of the buffer memories, comprising:
-
a bandwidth controller for specifying a buffer memory from which a packet is to be read out, having a plurality of leaky bucket units prepared in correspondence with said buffer memories, and an output queue designation unit for specifying a buffer memory from which a packet is to be read out, among buffer memories of which level count value is equal to or smaller than a first threshold corresponding to the preliminarily designated maximum allowable bandwidth, on the basis of difference values each indicating the difference between a level count value output from each of said leaky bucket units and a second threshold corresponding to the preliminarily designated minimum guaranteed bandwidth, and each of said leaky bucket units having;
a level counter for decrementing the count value at a predetermined rate; and
level raising means for increasing the count value of said level counter, in response to reading out of a packet from a corresponding buffer memory, by a value proportional to the length of said packet. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A bandwidth controller for reading out variable-length packets from a plurality of buffer memories while guaranteeing a minimum bandwidth preliminarily designated for each buffer memory, comprising:
-
a plurality of leaky bucket units prepared in correspondence with said buffer memories;
an output queue designation unit for specifying a buffer memory from which a packet is to be read out, on the basis of difference values each indicating the difference between a level count value output from one of said leaky bucket units and a threshold corresponding to a minimum guaranteed bandwidth preliminarily designated for each buffer memory; and
a read controller for reading out one variable-length packet from a buffer memory specified by said output queue designation unit, each of said leaky bucket units having;
a level counter for decrementing the count value at a predetermined rate; and
level raising means for increasing the count value of said level counter, in response to reading out of a packet from a corresponding buffer memory, by a value proportional to the length of said packet, and said level raising means for increasing the count value of said level counter in accordance with the product of a variable unitary increment value and a packet length, said variable unitary increment value increasing step by step as the level count value of said level counter decreases. - View Dependent Claims (15)
-
-
16. A traffic shaper for transferring variable-length packets received from a plurality of input ports to one output port while guaranteeing preliminarily designated minimum bandwidths, comprising:
-
a plurality of buffer memories for temporarily storing the variable-length packets received from said input ports;
a bandwidth controller for specifying a buffer memory from which a packet is to be read out; and
a read controller for reading out one variable-length packet from the buffer memory specified by said bandwidth controller and transmitting the packet to said output port, wherein said bandwidth controller includes means for assigning an unoccupied bandwidth in said output port to each of said buffer memories in accordance with a rate of the minimum bandwidth designated to each of said buffer memories, and said read control means reads out packets from each of said buffer memories in a transmission rate equal to or higher than the minimum guaranteed bandwidth in response to the assigning of said unoccupied bandwidth from said bandwidth controller.
-
Specification