1 Introduction -- 2 Resource Allocation -- 2.1 Resource allocation as an optimization problem -- 2.2 A general class of utility functions -- 2.3 Appendix: Convex optimization -- 3 Congestion Control: A decentralized solution -- 3.1 Primal algorithm -- 3.2 Dual algorithm -- 3.3 Exact penalty functions -- 3.4 Primal-dual approach -- 3.5 Other variations in the primal approach -- 3.6 REM: A one-bit marking scheme -- 3.7 Multipath routing -- 3.8 Multirate multicast congestion control -- 3.9 A pricing interpretation of proportional fairness -- 3.10 Appendix: Lyapunov stability -- 4 Relationship to Current Internet Protocols -- 4.1 Window flow control -- 4.2 Jacobson's adaptive window flow control algorithm -- 4.3 TCP-Vegas -- 4.4 Random Early Detection (RED) -- 4.5 Explicit Congestion Notification (ECN) -- 4.6 High-throughput TCP -- 5 Linear Analysis with Delay: The single link case -- 5.1 Single TCP-Reno source with droptail -- 5.2 Multiple TCP sources with identical RTTs -- 5.3 TCP-Reno and RED -- 5.4 Proportionally-fair controller -- 5.5 High-throughput TCP -- 5.6 Dual algorithm -- 5.7 Primal-dual algorithm -- 5.8 Appendix: The Nyquist criterion -- 6 Linear Analysis with Delay: The network case -- 6.1 Primal controllers -- 6.2 Dual algorithm -- 6.3 Primal-dual algorithm -- 6.4 Appendix: Multivariable Nyquist criterion -- 7 Global Stability for a Single Link and a Single Flow -- 7.1 Proportionally-fair controller over a single link -- 8 Stochastic Models and their Deterministic Limits -- 8.1 Deterministic limit for proportionally-fair controllers -- 8.2 Individual source dynamics -- 8.3 Price feedback -- 8.4 Queue-length-based marking -- 8.5 TCP-type congestion controllers -- 8.6 Appendix: The weak law of large numbers -- 9 Connection-level Models -- 9.1 Stability of weighted proportionally-fair controllers -- 9.2 Priority resource allocation -- 10 Real-time Sources and Distributed Admission Control -- 10.1 Resource sharing between elastic and inelastic users -- 10.2 Probing and distributed admission control -- 10.3 A simple model for queueing at the link buffer -- 10.4 Appendix: Diffusion approximation -- 11 Conclusions -- References.
0
Congestion control algorithms were implemented for the Internet nearly two decades ago, but mathematical models of congestion control in such a large-scale are relatively new. This text presents models for the development of new protocols that can help make Internet data transfers virtually loss- and delay-free. Introduced are tools from optimization, control theory, and stochastic processes integral to the study of congestion control algorithms. Features and topics include: * A presentation of Kelly's convex program formulation of resource allocation on the Internet; * A solution to the resource allocation problem which can be implemented in a decentralized manner, both in the form of congestion control algorithms by end users and as congestion indication mechanisms by the routers of the network; * A discussion of simple stochastic models for random phenomena on the Internet, such as very short flows and arrivals and departures of file transfer requests. Intended for graduate students and researchers in systems theory and computer science, the text assumes basic knowledge of first-year, graduate-level control theory, optimization, and stochastic processes, but the key prerequisites are summarized in an appendix for quick reference. The work's wide range of applications to the study of both new and existing protocols and control algorithms make the book of interest to researchers and students concerned with many aspects of large-scale information flow on the Internet.