Patent ID: 8320240

Claim:
A network device for scheduling packets in a plurality of queues, the network device comprising: a switch comprising: a plurality of metering modules, each of the metering modules being associated with a queue and comprising: a minimum threshold bucket module configured to indicate to the metering module whether a minimum bucket threshold is met based on comparing a minimum bucket count of the packets received by the associated queue to the minimum bucket threshold, the minimum bucket threshold being less than a minimum bucket high value and greater than a minimum bucket empty value for the minimum threshold bucket, the minimum bucket high value associated with the given queue determining a maximum burst size for the associated queue; and a maximum threshold bucket module configured to indicate to the metering module whether a maximum bucket threshold is met based on comparing a maximum bucket count of the packets received by the associated queue to the maximum bucket threshold; wherein each of the metering modules is configured to send, to a scheduler, a minimum bandwidth signal if the minimum bucket threshold is not met, an excess bandwidth signal if the minimum bucket threshold is met and the maximum bucket threshold is not met, and an idle signal if both the minimum bucket threshold is met and the maximum bucket threshold is met; and the scheduler configured to allocate bandwidth for each of the plurality of queues first to the queues which are associated with metering modules that sent the minimum bandwidth signal and second to the queues which are associated with metering modules that sent the excess bandwidth signal, and to not service queues which are associated with metering modules that sent the idle signal.