1. A method of allocating bandwidth among a plurality of queues, wherein each of the plurality of queues is associated with a quality of service and has a corresponding quantum value, the method comprising the steps of: determining an available quantum value based on a total amount of committed bandwidth on a downstream channel and a total amount of bandwidth on the downstream channel; and updating the quantum values of each of the plurality of queues by an update quantum value corresponding to respective ones of the plurality of queues, the update quantum values being based on the available quantum value, a total reserved quantum value corresponding to packets enqueued in the plurality of queues for an update period and the quality of service associated with the respective queue.