WebTP Meeting (10/18/1999) Link Sharing Principles Class Based Queueing (CBQ) S. Floyd and V. Jacobson - ToN 1995
Goals Link Sharing: –Distribute bandwidth according to some hierarchy
Goals Link Sharing: –Distribute bandwidth according to some hierarchy CBQ: A unified framework for supporting – Link Sharing – Real-time (delay sensitive) services
Link Sharing between Traffic Classes
Link Sharing Leaf Class Interior Class
Link Sharing Level 1 Level 2 Level 3
Link Sharing between Users
Link Weights Allocation Static Dynamic –network condition –user preferences –adding/removing connections
Link Sharing Goal Over appropriate time-intervals, each interior or leaf class should receive its allocated bandwidth (given sufficient demand)
Link Sharing between Users
Link Sharing between Traffic Classes
CBQ Fundamentals Scheduling –General scheduler –Link sharing scheduler
CBQ Fundamentals Scheduling –General scheduler –Link sharing scheduler Classes –Unregulated –Regulated
CBQ Fundamentals Scheduling –General scheduler –Link sharing scheduler Classes –Unregulated –Regulated Bandwidth Estimator –Exponential weighted moving average
Classes - Definitions Bandwidth Utilization –Overlimit –Underlimit –At-limit
Classes - Definitions Bandwidth Utilization –Overlimit –Underlimit –At-limit Satisfaction –Unsatisfied: Underlimit + persistent backlog –Satisfied
Link Sharing - Guidelines A class stays unregulated if 1. It is not overlimit
Link Sharing - Guidelines A class stays unregulated if 1. It is not overlimit, OR 2. It has a not-overlimit ancestor at level j, and there are no unsatisfied classes in the link- sharing structure at levels lower than j.
Link Sharing - Guidelines A class stays unregulated if 1. It is not overlimit, OR 2. It has a not-overlimit ancestor at level j, and there are no unsatisfied classes in the link- sharing structure at levels lower than j. Otherwise it should be regulated
Link Sharing - Guidelines A class stays unregulated if 1. It is not overlimit, OR 2. It has a not-overlimit ancestor at level j, and there are no unsatisfied classes in the link- sharing structure at levels lower than j. Otherwise it should be regulated Remark: The root is always not-overlimit
Examples
Example 1 Under Over
Example 2 Under Over
Example 2 Backlog
Example 2 Unsatisfied
Example 2 Regulated Unsatisfied
Example 3 Unsatisfied Overlimit + Backlog Regulated
CBQ - Pros Bandwidth protection Hierarchy Support of priorities for delay-sensitive services flexibility
CBQ - Cons No deterministic/statistical guarantees on performance measure (delay, throughput) Many tunable parameters with unknown effects
CBQ and WebTP Allow sharing of multiple connections with different requirements within a pipe Allow sharing between multiple users or protocols (FAT pipes) Open questions: –Traffic classification, admission control –Variable-rate server –interaction with the ADU scheduler