Pipeline scheduler with fairness and minimum bandwidth guarantee
First Claim
1. A device comprising:
- an input component to;
generate a request for constructing a data segment, the data segment including;
a predetermined number of aggregated first type of data units corresponding to a particular output port, ora predetermined number of aggregated second type of data units corresponding to the particular output port; and
a scheduler component to;
receive the request for constructing the data segment, andgenerate, based on receiving the request, a grant to construct the data segment including the predetermined number of aggregated first type of data units or the predetermined number of second type of data units.
0 Assignments
0 Petitions
Accused Products
Abstract
A pipeline scheduler provides a minimum bandwidth guarantee by transporting cells from an input port to an output port in a two-phased approach. Cells that conform to a minimum cell rate (MCR) are selected from queues at the input port and arranged into supercells for transport to the output port, followed by nonconforming cells, to guarantee fairness by using scheduling modules to build the supercells first for conforming cells, and then for nonconforming cells. Reservation vectors are used to permit the same time slot of the next frame to be reserved by a first queue, and the same time slot of the following time frame to be held for reservation by a second queue, to ensure equal time slot access by the first and second queues over successive time frames.
-
Citations
20 Claims
-
1. A device comprising:
-
an input component to; generate a request for constructing a data segment, the data segment including; a predetermined number of aggregated first type of data units corresponding to a particular output port, or a predetermined number of aggregated second type of data units corresponding to the particular output port; and a scheduler component to; receive the request for constructing the data segment, and generate, based on receiving the request, a grant to construct the data segment including the predetermined number of aggregated first type of data units or the predetermined number of second type of data units. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
generating, by a network device, a request for constructing a data segment of a number of aggregated first type of data units or a number of aggregated second type of data units, the number of aggregated first type of data units or the number of aggregated second type of data units corresponding to one of a plurality of classes of traffic; and generating, by the network device and based on generating the request, a grant to construct the data segment that includes the number of aggregated first type of data units or the number of aggregated second type of data units. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A method comprising:
-
aggregating, by an input component of a network device, a first type of data units generated from data received at the network device, where the first type of data units are aggregated based on an input port—
output port pair associated with the first type of data units;receiving, by the input component, a grant from a scheduler of the network device, where the grant is received in response to a request transmitted by the input component to the scheduler in response to the input component determining that a predetermined number of the aggregated first type of data units had been stored in one of a plurality of buffers of the network device; constructing, by the input component and based on the grant, a data segment, where the constructed data segment includes a quantity of the aggregated first type of data units; routing, by the input component, the constructed data segment to an output port corresponding to the input port—
output port pair associated with the aggregated first type of data units; andde-constructing, by the output port, the constructed data segment into standardized data units for output to a network. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification