Patent ID: 7099275

Claim:
A method of scheduling data, comprising: for each of a plurality of criteria entries, initializing a plurality of alterable traffic parameters; and ordering the plurality of criteria entries to achieve a desired set of traffic characteristics; receiving variable length data by a plurality of queues; mapping each queue in the plurality of queues to a selected one of the plurality of criteria entries; reading the plurality of alterable traffic parameters associated with the selected one of the plurality of criteria entries corresponding to each queue in the plurality of queues, the read alterable traffic parameters selected to associate a particular queue with a particular portion of the desired set of traffic characteristics; scheduling the queues to output the received data using the read alterable traffic parameters and the ordering of the criteria entry corresponding to the read alterable traffic parameters; and dynamically modifying the plurality of alterable traffic parameters in the plurality of criteria entries and the ordering of the plurality of criteria entries to update the desired set of traffic characteristics before repeating the steps of receiving variable length data through scheduling the queues.