Patent ID: 6975638
Filing Date: 2005-12-13
Classification: H04L

Abstract:
1. A method of scheduling packets from multiple queues onto a common output packet stream, wherein the common output packet stream serves multiples sets of queues, the method comprising: maintaining a programmable interleaving table having multiple entries, each entry identifying one of the queues with an epoch value, each set of queues having its own programmable interleaving table; maintaining a separate pointer for each set of queues to a current table entry in the programmable interleaving table for that set of queues; selecting, for each epoch in the sequence of epochs, one of the sets of queues for packet scheduling during that epoch; selecting the pointer corresponding to the selected set of queues for use during that epoch; scheduling packets onto the output packet stream from the queue identified with the current table entry of the selected pointer, and charging that entry for use of the epoch; and moving the pointer to a next table entry when the current table entry has been charged with use of a number of epochs set aside for that entry.