Fair Bandwidth Allocation Without Per-Flow State
A fundamental goal of Internet congestion control is to allocate limited bandwidth fairly to competing flows. Such flow control involves an interplay between the behavior of routers and the behavior of end hosts. Routers must decide which packets to drop when their output links become congested. End hosts must decide how to moderate their packet transmissions in response to feedback in the form of acknowledgements of packet delivery (acks). Typically this is done according to the TCP protocol, in which a host maintains a window (the number of packets that have been sent but not yet acknowledged) that is increased when an ack is received and decreased when a drop is detected.
Often the selection of packets to be dropped at a router depends on the order of their arrivals at the router but not on the flows to which the packets belong. An exception occurs when packets are stratified according to their quality of service guarantee; in this case packets at higher strata are given priority, but within a stratum the packets from different flows receive the same treatment. A number of methods have been proposed to ensure fairness by selectively dropping packets from flows that are receiving more than their fair share of bandwidth. The most effective known algorithms for detecting and selectively dropping high-rate flows at a router are based on random hashing or random sampling of packets and give only probabilistic guarantees. The known deterministic algorithms either require excessive storage, require packets to carry accurate estimates of the rates of their flows, assume some special properties of the stream of arriving packets, or fail to guarantee fairness. In a simplified theoretical setting we show that the detection and selective dropping of high-rate flows can be accomplished deterministically without any of these defects. This result belies the conventional wisdom that per-flow state is required to guarantee fairness.
Given an arriving stream of packets, each labeled with the name of its flow, our algorithm drops packets selectively upon arrival so as to guarantee that, in every consecutive subsequence of the stream of surviving packets, no flow has significantly more than its fair share of the packets. The main results of the paper are tight bounds on the worst-case storage requirement of this algorithm. The bounds demonstrate that the storage and computation required to guarantee fairness are easily within the capabilites of conventional routers.
It is important to acknowedge the limitations of this work. We have formulated the achievement of fairness at a router in terms of local information on the stream of arriving packets at that router. The implications of such a locally optimal policy on the global stability of the Internet would require analyzing the Internet as a complex dynamical system involving interactions among routers and end hosts, of which some will be TCP-compliant and some will not. In work not reported here we have made an initial simulation study of this complex process, but such a study is outside the scope of the present paper.
Unable to display preview. Download preview PDF.
- 2.Feng, W.-C., Kandlur, D.D., Saha, D., Shin, K.: Blue: A New Class of Active Queue Management Algorithms. Technical Report CSE-TR-387-99, University of Michigan (April 1999)Google Scholar
- 3.Ferguson, P., Huston, G.: Quality of Service: Delivering QoS on the Internet and in Corporate Networks. John Wiley and Sons, Chichester (1998)Google Scholar
- 6.Mahajan, R., Floyd, S.: Controlling High-Bandwidth Flows at the Congested Router. Technical Report TR-01-001, International Computer Sciences InstituteGoogle Scholar
- 7.Mahajan, R., Floyd, S., Wetherall, D.: Controlling High-Bandwidth Flows at the Congested Router. In: ACM ICNP (November 2001)Google Scholar
- 8.Pan, R., Breslau, L., Prabhakar, B., Shenker, S.: Approximate Fairness through Differential Dropping. In: ACM Computer Communication Review (July 2003)Google Scholar
- 9.Pan, R., Prabhakar, B., Psounis, K.: A Stateless Active Queue Management Scheme for Approximate Fair Bandwidth Allocation. In: IEEE INFOCOM (March 2000)Google Scholar
- 11.Shenker, S., Partridge, C., Guerin, R.: Specification of Guaranteed Quality of Service. IETF RFC 2212 (Septmeber 1997)Google Scholar
- 12.Stoica, I., Shenker, S., Zhang, H.: Core-Stateless Fair Queuing:Achieving Approximately Fair Bandwidth Allocations in High Speed Networks. In: ACM SIGCOMM (September 1998)Google Scholar
- 13.Tanenbaum, A.: Computer networks, 3rd edn. Prentice-Hall, Englewood Cliffs (1996)Google Scholar
- 14.Wrochalski, J.: Specification of Controlled-Load Network Element Service. IETF RFC 2211 (September 1997)Google Scholar