Simulations (cont’d)
Each class has a “time-to-send” field
If a class has avg negative (i.e. overlimit), the estimator sets time-to-send to a time x seconds ahead of current time to bring avg to zero
If time-to-send is zero, the class is at-limit or underlimit, and the general scheduler is allowed to send a packet from that class
If time-to-send is greater than current time, then the class is overlimit. The general scheduler can only send a packet from that class if permitted by the link-sharing rules
Each class is getting its allocated rate
The excess is given to higher priority classes; divided in proportion of allocations among classes of same priority
The approximations are good, with Ancestors-Only sometimes slightly imprecise