Patent ID: 7075934

Claim:
An apparatus for scheduling the transmission of data packets for a plurality of data packet flows, said data packet flows being allocated service shares of the transmission capacity r of a communication link and being grouped in bundles, said bundles being allocated service shares R I of the transmission capacity of said communication link, the transmission over the communication link being divided in service frames, a service frame offering at least one transmission opportunity to every data packet flow that is backlogged, a backlogged data packet flow being a data packet flow that has at least one data packet stored in respective one of a plurality of packet queues, the scheduling apparatus comprising: means for determining the duration of the service frame; and means for guaranteeing that each data packet flow always receives at least its allocated service share during a service frame if it remains continuously backlogged over the whole duration of said service frame, and that each bundle receives at least its allocated service share during a service frame if there is always at least one data packet flow in the bundle that remains continuously backlogged for the whole duration of said service frame, said guaranteeing means including: means for maintaining, for each bundle I, a cumulative share Î¦ I that relates to the sum of said service shares allocated to respective ones of said data packet flows that are grouped together in the same bundle I; means for computing, for each bundle I, a service ratio between the service share allocated to said bundle I and said cumulative share Î¦ I of the bundle; and means for modulating said service shares allocated to respective ones of said plurality of data packet flows using the service ratio computed for respective ones of said plurality of bundles.