You are previewing Internet Congestion Control.
O'Reilly logo
Internet Congestion Control

Book Description

Internet Congestion Control provides a description of some of the most important topics in the area of congestion control in computer networks, with special emphasis on the analytical modeling of congestion control algorithms.

The field of congestion control has seen many notable advances in recent years and the purpose of this book, which is targeted towards the advanced and intermediate reader, is to inform about the most important developments in this area. The book should enable the reader to gain a good understanding of the application of congestion control theory to a number of application domains such as Data Center Networks, Video Streaming, High Speed Links and Broadband Wireless Networks. When seen through the lens of analytical modeling, there are a number of common threads that run through the design and analysis of congestion control protocols in all these different areas, which are emphasized in this book. The book also cuts a path through the profusion of algorithms in the literature, and puts the topic on a systematic and logical footing.

Internet Congestion Control provides practicing network engineers and researchers with a comprehensive and accessible coverage of analytical models of congestion control algorithms, and gives readers everything needed to understand the latest developments and research in this area.



  • Examines and synthesizes the most important developments in internet congestion control from the last 20 years.
  • Provides detailed description on the congestion control protocols used in four key areas; broadband wireless networks, high speed networks with large latencies, video transmission networks, and data center networks.
  • Offers accessible coverage of advanced topics such as Optimization and Control Theory as applied to congestion control systems.

Table of Contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Dedication
  6. Preface
  7. About the Author
  8. Acknowledgments
  9. List of Abbreviations
  10. Chapter 1. Introduction
    1. 1.1 Introduction
    2. 1.2 Basics of Congestion Control
    3. 1.3 Description of TCP Reno
    4. 1.4 Network Feedback Techniques
    5. 1.5 Delay-Based Congestion Control: TCP Vegas
    6. 1.6 Outline of the Rest of the Book
    7. 1.7 Further Reading
    8. References
  11. Part 1: Theory
    1. Chapter 2. Analytic Modeling of Congestion Control
      1. 2.1 Introduction
      2. 2.2 TCP Throughput Analysis
      3. 2.3 A Fluid Flow Model for Congestion Control
      4. 2.4 A Stochastic Model for Congestion Control
      5. 2.5 Why Does the Square-Root Formula Work Well?
      6. 2.6 The Case of Multiple Parallel TCP Connections
      7. 2.7 Further Reading
      8. Appendix 2.A Derivation of Q=min(1,3/E(W))
      9. References
      10. Suggested Reading
    2. Chapter 3. Optimization and Control Theoretic Analysis of Congestion Control
      1. 3.1 Introduction
      2. 3.2 Congestion Control Using Optimization Theory
      3. 3.3 Generalized TCP–Friendly Algorithms
      4. 3.4 Stability Analysis of TCP with Active Queue Management
      5. 3.5 The Averaging Principle (AP)
      6. 3.6 Implications for Congestion Control Algorithms
      7. 3.7 Further Reading
      8. Appendix 3.A Linearization of the Fluid Flow Model
      9. Appendix 3.B The Nyquist Stability Criterion
      10. Appendix 3.C Transfer Function for the RED Controller
      11. Appendix 3.D Convex Optimization Theory
      12. Appendix 3.E A General Class of Utility Functions
      13. References
      14. Suggested Reading
  12. Part 2: Applications
    1. Chapter 4. Congestion Control in Broadband Wireless Networks
      1. 4.1 Introduction
      2. 4.2 Wireless Access Architecture and Issues
      3. 4.3 Split-Connection TCP
      4. 4.4 Algorithms to Improve Performance Over Lossy Links
      5. 4.5 Link-Level Error Correction and Recovery
      6. 4.6 The Bufferbloat Problem in Cellular Wireless Systems
      7. 4.7 Some Design Rules
      8. 4.8 Further Reading
      9. References
      10. Suggested Reading
    2. Chapter 5. Congestion Control in High-Speed Networks
      1. 5.1 Introduction
      2. 5.2 Design Issues for High-Speed Protocols
      3. 5.3 High Speed TCP (HSTCP) Protocol
      4. 5.4 TCP BIC and CUBIC
      5. 5.5 The Compound TCP (CTCP) Protocol
      6. 5.6 The Fast TCP Protocol
      7. 5.7 The eXpress Control Protocol (XCP)
      8. 5.8 The Rate Control Protocol (RCP)
      9. 5.9 Stability of High-Speed TCP Algorithms
      10. 5.10 Further Reading
      11. References
      12. Suggested Reading
    3. Chapter 6. Flow Control for Video Applications
      1. 6.1 Introduction
      2. 6.2 Video Delivery Over Packet Networks
      3. 6.3 HTTP Adaptive Streaming (HAS)
      4. 6.4 The Adaptive Bit Rate (ABR) Algorithm
      5. 6.5 Description of Some Adaptive Bit Rate (ABR) Algorithms
      6. 6.6 The Problem with TCP Throughput Measurements
      7. 6.7 Interaction Between TCP and ABR
      8. 6.8 Further Reading
      9. References
      10. Suggested Reading
    4. Chapter 7. Congestion Control in Data Center Networks
      1. 7.1 Introduction
      2. 7.2 Data Center Architecture and Traffic Patterns
      3. 7.3 Data Center TCP (DCTCP)
      4. 7.4 Deadline-Aware Congestion Control Algorithms
      5. 7.5 Load Balancing over Multiple Paths with Multipath TCP (MPTCP)
      6. 7.6 The Incast Problem in Data Center Networks
      7. 7.7 Further Reading
      8. References
      9. Suggested Reading
    5. Chapter 8. Congestion Control in Ethernet Networks
      1. 8.1 Introduction
      2. 8.2 Differences between Switched Ethernet and IP Networks
      3. 8.3 Objectives of the Quantum Congestion Notification Algorithm
      4. 8.4 Quantum Congestion Notification Algorithm Description
      5. 8.5 Quantum Congestion Notification Stability Analysis
      6. 8.6 Further Reading
      7. References
    6. Chapter 9. Emerging Topics in Congestion Control
      1. 9.1 Introduction
      2. 9.2 Machine Learning and Congestion Control: Project Remy
      3. 9.3 Software Defined Networks and Congestion Control
      4. 9.4 The Google Congestion Control (GCC) Algorithm
      5. Appendix 9.A Kalman Filtering
      6. References
      7. Suggested Reading
  13. Index