We study how protocol design for various functionalities within a communication network architecture can be viewed as a distributed resource allocation problem. This involves understanding what resources are, how to allocate them fairly, and perhaps most importantly, how to achieve this goal in a distributed and stable fashion. We start with ideas of a centralized optimization framework and show how congestion control, routing and scheduling in wired and wireless networks can be thought of as fair resource allocation. We then move to the study of controllers that allow a decentralized solution of this problem. These controllers are the analytical equivalent of protocols in use on the Internet today, and we describe existing protocols as realizations of such controllers. The Internet is a dynamic system with feedback delays and flows that arrive and depart, which means that stability of the system cannot be taken for granted. We show how to incorporate stability into protocols, and thus, prevent undesirable network behavior. Finally, we consider a futuristic scenario where users are aware of the effects of their actions and try to game the system. We will see that the optimization framework is remarkably robust even to such gaming.
The Internet is a very large network with a complex array of control algorithms designed to facilitate data transfer by the users who use it everyday. Network Optimization and Control is aimed at understanding how such control algorithms can be designed for both wired and wireless networks. The approach is primarily based on optimization and control theory, and studies the problem in terms of designing controllers that would make optimal use of network resources. These controllers can be translated into protocols for computers that allow the Internet with many millions of flows to harmoniously adapt to changing traffic loads while maintaining good performance. Network Optimization and Control is the ideal starting point for a mature reader with little background on the subject of congestion control to understand the basic concepts underlying network resource allocation. Though self-contained in itself, there is also an extensive reference list that the interested reader could consult to obtain a deeper understanding of the topics covered. By providing a foundation for understanding the analytical approach to congestion control, the authors hope to encourage both analysts and systems designers to work in synergy while developing protocols for the future Internet.