1
Start-time Fair Queuing: A Scheduling Algorithm for
Integrated Services Packet Switching Networks
Pawan Goyal, Harrick M. Vin, and Haichen Cheng
Distributed Multimedia Computing Laboratory Department of Computer Sciences, University of Texas at Austin
Taylor Hall 2.124, Austin, Texas 78712-1188 g E-mail: fpawang,vin,hccheng @cs.utexas.edu, Telephone: (512) 471-9732, Fax: (512) 471-8885 URL: http://www.cs.utexas.edu/users/dmcl
Abstract To determine the characteristics of a suitable scheduling algo- rithm, consider the requirements of some of the principal applica- We present Start-time Fair Queuing (SFQ) algorithm that is com- tions envisioned for integrated services networks: putationally ef®cient, achieves fairness regardless of variation in a server capacity, and has the smallest fairness measure among all Audio applications: To maintain adequate interactivity for known fair scheduling algorithms. We analyze its throughput, sin- such applications, scheduling algorithms must provide low gle server delay, and end-to-end delay guarantee for variable rate average and maximum delay. Fluctuation Constrained (FC) and Exponentially Bounded Fluctua-
Video applications: Variable bit rate (VBR) video sources, tion (EBF) servers. We show that SFQ is better suited than Weighted which are expected to impose signi®cant requirements on Fair Queuing for integrated services networks and it is strictly better network resources, have unpredictable as well as highly vari- than Self Clocked Fair Queuing. To support heterogeneousservices able bit rate requirement at multiple time-scales [10, 12, 14]. and multiple protocol families in integrated services networks, we These features impose two key requirements on network re- present a hierarchical SFQ scheduler and derive its performance source management: bounds. Our analysis demonstrates that SFQ is suitable for inte- grated services networks since it: (1) achieves low average as well ± Due to the dif®culty in predicting the bit rate require- as maximum delay for low-throughput applications (e.g., interac- ment of VBR video sources, video channels may utilize tive audio, telnet, etc.); (2) provides fairness which is desirable more than the reserved bandwidth. As long as the ad- for VBR video; (3) provides fairness, regardless of variation in a ditional bandwidth used is not at the expense of other server capacity, for throughput-intensive, ¯ow-controlled data ap- channels (i.e., if the channel utilizes idle bandwidth), plications; (4) enables hierarchical link sharing which is desirable it should not be penalized in the future by reducing its for managing heterogeneity; and (5) is computationally ef®cient. bandwidth allocation.
± Due to multiple time-scale variation in the bit rate re- Intro duction 1 quirement of video sources, to achieve ef®cient utiliza-
tion of resources, a network will have to over-book Motivation 1.1 available bandwidth. Since such over-booking may Integrated services networks are required to support a variety of yield persistent congestion, a network should provide applications (e.g., audio and video conferencing, multimedia in- some QoS guarantees even in the presence of conges- formation retrieval, ftp, telnet, WWW, etc.) with a wide range of tion. Quality of Service (QoS) requirements. Whereas continuous media Unfair scheduling algorithms, such as Virtual Clock [24], applications such as audio and video conferencing require the net- Delay EDD [23], etc., penalize channels for the use of idle work to provide QoS guarantees with respect to bandwidth, packet bandwidth and do not provide any QoS guarantee in the pres- delay, and loss; applications such as telnet and WWW require low ence of congestion [18]. Fair scheduling algorithms, on the packet delay and loss. Throughput intensive applications like ftp,on other hand, guarantee that, regardless of prior usage or con- the other hand, require network resources to be allocated such that gestion, bandwidth would be allocated fairly[18]. Hence, fair the throughput is maximized. A network meets these requirements scheduling algorithms are desirable for video applications.
primarily by appropriately scheduling its resources.
Data applications: To support low-throughput, interactive
hwas supp orted in part by IBM Graduate Fellowship,
This researc data applications (e.g., telnet), scheduling algorithms must
IBM Faculty DevelopmentAward, Intel, the National Science Foun-
h Initiation Award CCR-9409666), NASA, Mitsubishi
dation (Researc provide low average delay. On the other hand, to support h Lab oratories (MERL), and Sun Microsystems Inc. Electric Researc throughput-intensive, ¯ow-controlled applications in hetero- geneous, large-scale, decentralized networks, scheduling al- gorithms must allocate bandwidth fairly [5, 15, 19]. Due to the coexistence of VBR video sources and data sources in integrated services networks, the bandwidth available to data applications may vary signi®cantly over time. Consequently, the fairness property of the scheduling algorithm must hold To appear in the Proceedings of SIGCOMM 1996. regardless of variation in server capacity.
2
(t) Hence, in summary, a suitable scheduling algorithm for inte- a bit-by-bit weighted round robin manner. Formally, v is de®ned
grated services networks should: (1) achieve low average as well as:
(t) C
as maximum delay for low throughput applications (e.g., interac- dv
P
= (3)
dt r
tive audio, telnet, etc.); (2) provide fairness for VBR video; and j
2B (t)
(3) provide fairness, regardless of variation in server capacity, for j
B (t) throughput-intensive, ¯ow-controlled data applications. Further- where C is the capacity of the server and is the set of back- more, since such networks will support a wide variety of services logged ¯ows at time t in the bit-by-bit round robin server. WFQ and multiple protocol families, the scheduling algorithm should fa- then schedules packets in the increasing order of their ®nish tags.
cilitate hierarchical link sharing [6, 20]. Finally, to facilitate its Observe that implementation of WFQ requires computation of
(t) implementation in high-speed networks, it should be computation- v , which in turn requires simulation of bit-by-bit round robin ally ef®cient. A scheduling algorithm that achieves all of these server in real time. This simulation is computationally expensive. objectives is the subject of investigation in this paper. Furthermore, as the following examples illustrate, since WFQ is based on the assumption that the capacity of a server is constant, it
fails to provide fairness over servers with time varying capacity.
1.2 Relation To Previous Work
Each unit of data transmission at the network level is a packet. Example 1 Let the capacity of the server that WFQ is emulating
C>1
We refer to the sequence of packets transmitted by a source as a be C pkts/s, . Let the actual servercapacity be 1 pkt/s in [0,1)
f m
¯ow [24]. Each packet within a ¯ow is serviced by a sequence of and C pkt/s in [1,2). Consider two ¯ows and both of which have
C +1
servers (or switching elements) along the path from the source to unit length packets and weights of 1 pkt/s. Let ¯ow f send
j
f F (p )=j 1j C +1
the destination in the network. Before we describe fair scheduling packets at time 0. Hence, for ¯ow , ;.
f
t =1 algorithms that may be employed by the servers, let us consider the Let ¯ow m become backlogged at and be backlogged during
precise meaning of fair allocation of link bandwidth. the interval [1,2]. Since only ¯ow f is backloged during [0,1),
1
)=C +1 v (1) = C m F (p
Intuitively, allocation of link bandwidth is fair if equal band- using (3), we get . Hence, for ¯ow , m .
width is allocated in every time interval to all the ¯ows. This Since WFQ schedules packets in the increasing order of ®nish tags,
C 1 W (1; 2) C W (1; 2) 1 m
concept generalizes to weighted fairness in which the bandwidth we get: f and . However, for
W (1; 2) W (1; 2) m
must be allocated in proportion to the weights associated with the fair allocation of bandwidth, f and should both
C=2 C
r f W (t ;t )
f 1 2 ¯ows. Formally, if f is the weight of ¯ow and be .Since can be chosen arbitrarily, this example illustrates
is the aggregate service (in bits) received by it in the interval the unfairness that can result when the actual capacity is lower than
[t ;t ] [t ;t ]
2 1 2
1 , then an allocation is fair if, for all intervals in which the capacity being assumed.
W (t ;t )
W (t ;t )
1 2
f
m
1 2