Quantifiable Service Differentiation for Packet Networks
Total Page:16
File Type:pdf, Size:1020Kb
Quantifiable Service Differentiation for Packet Networks A Dissertation Presented to the Faculty of the School of Engineering and Applied Science University of Virginia In Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy Computer Science by Nicolas Christin August 2003 c Copyright 2003 Nicolas Christin All rights reserved Approvals This dissertation is submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy Computer Science Nicolas Christin Approved: Jorg¨ Liebeherr (Advisor) John A. Stankovic (Chair) Tarek F. Abdelzaher Stephen D. Patek (Minor Representative) Victor Firoiu Alfred C. Weaver Accepted by the School of Engineering and Applied Science: Richard W. Miksad (Dean) August 2003 Abstract In this dissertation, we present a novel service architecture for the Internet, which reconciles ap- plication demand for strong service guarantees with the need for low computational overhead in network routers. The main contribution of this dissertation is the definition and realization of a new service, called Quantitative Assured Forwarding, which can offer absolute and relative differentia- tion of loss, service rates, and packet delays to classes of traffic. We devise and analyze mechanisms that implement the proposed service, and demonstrate the effectiveness of the approach through analysis, simulation and measurement experiments in a testbed network. To enable the new service, we introduce a set of new traffic control algorithms for network routers. The main mechanism proposed in this dissertation uses a novel technique that performs active buffer management (through dropping of traffic) and rate allocation (for scheduling) in a single step. This is different from prior work which views dropping and scheduling as orthogonal tasks. We propose several solutions for rate allocation and buffer management, through solutions to an optimization problem, approximations of such a solution, and through a closed-loop control theoretical approach. Measurement results from a testbed of PC-routers on an Ethernet network indicate that our proposed service architecture is suitable for networks with high data rates. We extend the service guarantees of Quantitative Assured Forwarding to TCP traffic by in- tegrating our buffer management and rate allocation algorithms with the feedback capabilities of TCP, and regulate the sending rate of TCP traffic sources at the microflow level. The presented techniques show, for the first time, that it is feasible to give service guarantees to TCP traffic flows, without per-flow reservations in the network. iv Acknowledgments First, I would like to thank my advisor, Jorg¨ Liebeherr, for his continued support over the last five years. Jorg¨ has not only been a great advisor, who fostered my creativity, and helped me stay focused even in difficult times, but he has also been an excellent and patient teacher. His clarity of thought and his insights are evidenced throughout this dissertation, and I can only wish that, in the years to come, I will manage to be as inspirational to others as he has been to me. In 2002-2003, I spent a year at Nortel Networks, working under the guidance of Victor Firoiu. This internship gave me some perspective regarding the research challenges one can face in industry, and I will keep fond memories of the year I spent in Massachusetts. I hope that I will have more opportunities to collaborate with Victor in the future. I also would like to thank the members of my thesis committee, Jack Stankovic, Tarek Ab- delzaher, Alf Weaver, and Steve Patek, for the feedback they provided regarding my work and their continued interest in my progress. In particular, Tarek helped tremendously in the design of the feedback-based algorithm of Chapter 5, which is a central component of this dissertation. I deeply enjoyed the stimulating discussions I had with my fellow members in the Multimedia Networks Group over the years, and want to thank all past and present members for their help and support. I especially owe a lot of gratitude to Jianping Wang for everything he has done for me over the years. Being a foreign student can be a challenge, especially in the first few months, when one has to adjust to a different culture and a new language. My thanks go to all the friends I made here, and who immediately made me feel at home. In particular, thanks to Richard Ruble for helping me v vi having an easy transition when I first came here, and to my classmates at the time, notably Brian White and Mike Lack, for the much needed comic relief when we were swamped with coursework and research work. Finally, I am forever in debt to my family for their love and support in every moment in my life. Without them, this dissertation would have certainly never been completed. The moral support of my parents, Pierre and Christiane, my sister, Carole, and her husband, Stephan, as well as my two nephews, Andreas and Sven, has always been the single most important thing in my life. I also want to thank my brother Olivier, who has been helping in his very own way. This dissertation is dedicated to all of them. Contents 1 Introduction 1 1.1 History of Internet QoS . 4 1.1.1 Integrated Services . 4 1.1.2 Differentiated Services . 5 1.1.3 Design Space of Service Architectures . 6 1.2 Thesis Statement and Contributions . 8 1.3 Overview of the Proposed Service Architecture . 9 1.3.1 Service Guarantees . 10 1.3.2 Scheduling and Dropping . 12 1.3.3 Regulating Traffic Arrivals . 12 1.4 Structure of the Dissertation . 12 2 Previous Work 15 2.1 Differentiated Services . 16 2.1.1 Expedited Forwarding . 17 2.1.2 Assured Forwarding . 18 2.1.3 Mechanisms . 19 2.1.4 DiffServ Deployment . 22 2.2 Proportional Service Differentiation . 23 2.2.1 Scheduling . 23 2.2.2 Buffer Management . 25 vii Contents viii 2.3 Other Class-Based Services . 26 3 A Framework for Per-Class Service Guarantees 28 3.1 Overview . 29 3.1.1 Assumptions . 30 3.1.2 JoBS Operations . 31 3.2 Formal Description of the Metrics Used in JoBS . 33 3.2.1 Arrival, Input and Output Curves . 34 3.2.2 Predictions . 37 3.2.3 Per-Class Delay and Loss Metrics . 39 3.3 Quantitative Assured Forwarding . 42 4 Service Rate Allocation and Traffic Drops: An Optimization Problem 44 4.1 System and QoS Constraints . 46 4.1.1 System Constraints . 46 4.1.2 QoS Constraints . 48 4.2 Objective Function . 52 4.3 Heuristic Algorithm . 54 4.4 Evaluation . 57 4.4.1 Simulation Experiment 1: Proportional Differentiation Only . 58 4.4.2 Simulation Experiment 2: Proportional and Absolute Differentiation . 62 4.5 Summary and Remarks . 63 5 A Closed-Loop Algorithm Based on Feedback Control 66 5.1 Notations . 68 5.1.1 A Discrete Time Model . 68 5.1.2 Rate Allocation and Drop Decisions . 69 5.2 The Delay Feedback Loop . 71 5.2.1 Objective . 72 Contents ix 5.2.2 Service Rate Adjustment . 73 5.2.3 Deriving a Stability Condition on the Delay Feedback Loop . 74 5.2.4 Including the Absolute Delay and Rate Constraints . 82 5.3 The Loss Feedback Loop . 83 5.4 Evaluation . 85 5.4.1 Simulation Experiment 1: Single Node Topology . 85 5.4.2 Simulation Experiment 2: Multiple Node Simulation with TCP and UDP Traffic . 87 5.5 Summary and Remarks . 93 6 Implementation 94 6.1 Implementation Overview . 95 6.1.1 Configuration of the Service Guarantees . 95 6.1.2 Mechanisms . 97 6.2 Implementation Details . 99 6.2.1 ALTQ . 99 6.2.2 Packet Processing . 101 6.2.3 Overhead Reduction . 106 6.3 Evaluation . 107 6.3.1 Testbed Experiment 1: Near-Constant Load . 107 6.3.2 Testbed Experiment 2: Highly Variable Load . 113 6.3.3 Overhead . 116 6.4 Related Work . 119 6.5 Summary and Remarks . 120 7 Extending JoBS to TCP Traffic 121 7.1 A Reference Marking Algorithm for Avoiding Losses . 123 7.1.1 Predicting Traffic Arrivals to Prevent Losses . 125 7.1.2 Generalization to Multiple TCP Flows . 130 Contents x 7.2 Emulating the Reference Algorithm without Per-Flow State . 131 7.2.1 Flow Filtering . 132 7.2.2 Linear Interpolation . 134 7.3 Traffic Regulation with ECN Marking in Class-Based Service Architectures . 135 7.4 Evaluation . 137 7.4.1 Experiment 1: Active Queue Management . 137 7.4.2 Experiment 2: Providing Service Guarantees . 143 7.5 Summary and Remarks . 146 8 Conclusions and Future Work 147 8.1 Conclusions . 147 8.1.1 Scheduling and Buffer Management . 147 8.1.2 Extending JoBS to TCP . 148 8.2 Future Work . 149 Bibliography 151 List of Figures 1.1 Trade-off between strength of service guarantees and implementation complexity . 7 1.2 Illustration of the deployment of the proposed service in a network . 10 2.1 Drop probability in RED . 20 3.1 Router architecture . 29 3.2 Delay and backlog . 36 3.3 Predicted input curve, predicted output curve, and predicted delays . 37 4.1 Determining service rates required to meet delay bounds . ..