A scheduler apparatus provides bandwidth guarantees to individual data
packet flows as well as to aggregations of those flows (referred to as
"bundles") in a completely transparent manner, i.e., without using any
additional scheduling structure. For each bundle, the scheduler
determines the ratio between the bandwidth nominally allocated to the
bundle and the sum of the individual bandwidth allocations of the flows
that are currently backlogged in the bundle. The scheduler uses that
ratio to modulate the timestamp increments that regulate the distribution
of bandwidth to the individual flows. In this manner, the greater the
ratio for that bundle, the more the bandwidth that each backlogged flow
in the bundle receives.