Aggregate -flow scheduling: Theory and practice
This dissertation studies providing QoS to individual flows using aggregate-flow scheduling. Our work is carried out on both theoretical and practical sides. ^ We present a theoretical framework for reasoning about scalable QoS provisioning using aggregate-flow scheduling, constrained to be implementable in IP networks. Our control framework—Scalar QoS Control—generalizes per-hop and edge control achievable by setting a scalar value in packet headers, e.g., the TOS field of IP. We study optimal aggregate-flow scheduling problem under the framework and the properties the optimal solution exhibit which facilitate end-to-end QoS via the joint action of aggregate-flow scheduling per-hop and per-flow provisioning at the edge. ^ We design an optimal aggregate-flow per-hop control algorithm that achieves the induced optimal aggregate-flow scheduling solution and implement the algorithm in Cisco routers. We conduct a comprehensive performance evaluation by both simulation and experiments over Q-bahn testbed comprised of Cisco routers running the implemented optimal aggregate-flow per-hop control. The benchmarking results confirm our theoretical framework and analysis, and reveal further quantitative features of both structural and dynamical properties of the system. Our results, collectively, show that user-specified services can be efficiently and effectively achieved over networks with optimal aggregate-flow per-hop control substrate when coupled with either open-loop or closed-loop (adaptive label control) edge control. ^ We generalize our optimal aggregate-flow per-hop control analysis by considering stochastic input and study optimal aggregate-flow scheduling problem in general multi-class queueing systems. We introduce a stochastic framework of optimal aggregate-flow scheduling, which extends the optimal per-flow scheduling framework pioneered by Coffman and Mitrani. We show that optimal aggregate-flow scheduling in multi-class G/G/1 systems with work-conserving, non-preemptive and non-anticipative scheduling disciplines—for which Kleinrock's conservation law holds—is NP-hard. This stands in contrast with the quadratic time complexity of optimal per-flow scheduling and cubic time complexity of optimal aggregate-flow scheduling in static input environments subject to relative service differentiation. We show that computational hardness results from the combination of optimal aggregation and Kleinrock's conservation law. ^
Major Professor: Kihong Park, Purdue University.
Engineering, Electronics and Electrical|Computer Science