Multirate Scheduling for Guaranteed and Predictive Services in ATM Networks Sarit Mukherjee Debanjan Saha Dept. of Computer Science & Engg. IBM T.J. Watson Research Center University of Nebraska, Lincoln, NE 68588 Yorktown Heights, NY 10598 Email:
[email protected] Email:
[email protected] Satish K. Tripathi Dept. of Computer Science University of Maryland, College Park, MD 20742 Email:
[email protected]
Abstract We propose a multirate service mechanism that allows a network session to be served at dierent rates at dierent times. Applications generating bursty data, such as VBR video, can take advantage of multirate service by requesting a high rate of service for brief periods of bursty arrivals and a lower rate of service at other times. Consequently, an application can improve its delay performance without reserving high bandwidth for the entire duration of a session. Using MPEG video traces from a number of applications, we show that a multirate server outperforms single rate PGPS (Packet-by-packet Generalized Processor Sharing) servers in terms of number of connections admitted, while providing the same level of service guarantees. We also investigate the performance of multirate service when service quality need not be guaranteed. We refer to this as predictive service. We show that multirate servers are superior to single rate servers in providing predictive services.
1 Introduction Over the last couple of years, a number schemes [1, 4, 11, 19, 16, 14] have been proposed that provide speci c throughput guarantees to individual network sessions. Typically, they oer a xed rate of service to a connection for the duration of its life time. While a xed rate of service is adequate for constant bit rate (CBR) trac, it is rather unsuitable for bursty trac, such as variable bit rate (VBR)
video. We propose a multirate service mechanism to address this problem. In our scheme, a connection is served at dierent rates at dierent times. For example, a session can be serviced at the peak rate during the times of bursty arrivals and at a lower rate at other times. Consequently, applications can improve their delay performance without reserving a high bandwidth for the entire duration of the session. In general, we can have more than two rates of service. The length and the service rate of each of the service periods is application dependent and can be speci ed at the time of connection setup. The complexity of the scheduling mechanism underlying multirate service is comparable to that of Packetby-packet Processor Sharing (PGPS) [11] and Self Clocked Fair Queueing (SFQ) [5]. Recently it has been shown [17] that variations of PGPS and SFQ can be implemented with O(loglog(N )) complexity, where N is the queue length. Except for some very recent works, multirate service mechanisms have not undergone a very thorough investigation. In [3] a hop-by-hop shaping mechanism is proposed. It can be adapted to provide multirate service. However, the impact of multirate service on real life application trac is not addressed in [3]. A multiple time scale characterization of trac has been proposed in [9, 8]. In [9, 8] the improvement in network utilization due to this enhanced trac characterization is demonstrated in the context of rate controlled static priority scheduling (RCSP). In contrast to [9, 8], we consider a rate based service mechanism and demonstrate the eectiveness of a multirate server used in conjuction with multirate trac char-
acterization. We consider two dierent service paradigms: (a) guaranteed service, and (b) predictive service. In the guaranteed service model each connection is guaranteed a mathematically provable bound on end-toend delay and jitter. It also guarantees no cell loss. Although some applications expect stringent service guarantees from the network, there exists a large class of applications that are robust against occasional cell losses and delay violations. The predictive service is designed for these applications. In predictive service, each connection is promised a speci c grade of service with the understanding that it may be violated at times. If the applications are robust to these violations, the lack of strict guarantees can help increase the system utilization. The scheduling mechanisms used for both guaranteed and predictive services are the same. They dier only in the admission control process. In the guaranteed case we always assume the worst case scenario. A new connection is admitted if and only if its admittance does not violate the service qualities promised to all connections, assuming worst case trac arrivals. In the predictive service, the same admission control process is administered with the dierence that instead of worst case estimate, we use a measurement based estimate of trac arrivals [7]. Using MPEG video traces from a variety of real life applications, we have shown that multirate servers outperform their single rate counterparts in providing guaranteed service. We also show that multirate servers perform far better than single rate servers even in the case of predictive service. In the rest of the paper we have discussed dierent aspects of multirate service - the mechanisms to implement it, its properties, and its bene ts. In section 2 we discuss how an arbitrarily bursty source can be smoothed to a multirate source. Section 3 is dedicated to the details of the scheduling mechanism, and the admission control algorithm. Numerical results are presented in section 4. We conclude in section 5.
2 Trac Pro les In an ideal network with in nite bandwidth, each session is served at the rate at which it injects trac into the network. In other words, in an ideal network the service curve [2] 1 of a session mimics the traf1 Service curve is de ned as the plot of service received against time.
c generation pattern (trac envelope) of the source. Unfortunately, in a real network where bandwidth is limited, mimicing the trac envelope of a source is not feasible since: (a) it is dicult to capture the trac generation pattern of an arbitrary source accurately, and (b) it results in a complex service curve that is very dicult to realize using a simple scheduling mechanism. A good approximation to the ideal service policy is to smooth a bursty source to a multirate source that generates trac at a few dierent rates over dierent periods of time, which then can be served by a multirate server. We will see later in the paper that a multirate service curve can be realized with a reasonably simple scheduling mechanism. One of the commonly used techniques to smooth a bursty trac source is to use a trac shaper. Several shaping mechanisms have been proposed [12] in the literature. Due to lack of space, we restrict ourselves to leaky bucket shapers in this paper. A leaky bucket shaper consists of a token counter and a timer. The counter is incremented by one each t units of time and can reach a maximum value b. A cell is admitted into the system/network if and only if the counter is positive. Each time a cell is admitted, the counter is decremented by one. The trac shaped by a leaky bucket regulator consists of a burst of up to b cells followed by a steady stream of cells with a minimum inter-cell time of t. A single leaky bucket enforces a speci c rate constraint on a source, typically a declared peak or average rate. To enforce multiple rate constraints, we use multiple leaky buckets, each enforcing dierent rate constraints. For example, two leaky buckets arranged in series can be used to enforce a short-term peak rate and a long-term average rate on a source. Choosing appropriate shaper parameters for a given trac source is a problem by itself [10, 13, 6, 18]. We characterize a trac source as a nite sequence of tuples of the form hfi ; ti i, where fi is the trac generated at time ti . Although all trac sources can be mapped into this model, it is particularly useful for characterizing video sources. We assume that fi s and ti s are all known. Now, the problem is to determine the leaky bucket parameters that optimizes a given objective function, such as the utilization of the network, number of connections admitted, etc. First, let us consider the simpler problem of choosing the parameters for a single leaky bucket. A single leaky bucket is characterized by (b; r), where b is the size of the bucket and r = 1=t is the rate of token
Cell departure
generation. Let us denote by x(ti ) the number of to- are used in section 4 to obtain the leaky bucket pakens available at time ti . Precisely speaking, x(ti ) is rameters that maximize the number of connections equal to the number of tokens in the token bucket admitted by single rate servers, given a trac trace. when it holds a non-zero number of tokens. When there are no tokens in the token bucket, x(ti ) equals the number of cells in the shaper buer with the sign reversed (negative). That is, x(ti ) represents the curr a rent state of the shaper. A positive value represents a r credit, and a negative value represents a debit. It can p be shown that [15], given an arrival sequence hfi ; ti i, i = 0; : : : ; N , and a leaky bucket (b; r) the number of ba bp tokens (positive or negative) x(ti ) present at time ti Time can be expressed as, b p rp
x(ti ) = 0min fb + rti ? rtj ? F (j; i ? 1)g; ji where F (i; j ) is the sum of fk s from k = i to k = j . If B is the size of shaper buer, to guarantee lossless shaping we have to satisfy the following set of constraints:
x(ti ) fi ? B; 0 i < N; ) b + r(ti ? tj ) + B F (j; i); 0 i < N; 0 j i:
This is a linear programming formulation (the linear constraints) and and can be easily solved when the objective function is linear. For some speci c non-linear objective functions also, the problem is solvable. We can extend this linear programming formulation to a composite leaky bucket. Assume n leaky buckets (bi ; ri ), such that bi > bj and ri < rj for 1 i < j n. We denote by xk (ti ) the number of tokens (credit or debit) available in bucket k. We can express xk (ti ) in terms of bk , rk , and the trac arrival pattern. Let x(ti ) denote the number of tokens available for the composite leaky bucket at time instant ti . It is easy to observe that [15] x(ti ) is the minimum of xk (ti )s, where k = 1; : : : ; n. Now, if B is the size of the shaper buer, to guarantee loss-less shaping we have to satisfy the following set of conditions:
x(ti ) fi ? B; 0 i < N; ) bk + rk (ti ? tj ) + B F (j; i); 1 k n; 0 j i; 0 i < N:
Given a linear objective function, we can use commonly available solvers to nd bi s and ri s satisfying the constraint set. The results derived in this section
ba r a
Figure 1: Service curve of a session.
3 Multirate Service In this section we discuss a scheduling mechanism to realize a multirate service. We use the concept of service curve [2] to characterize the service received (over time) by a session at a switch. We also present the admission control algorithms for both guaranteed and predictive services. In general, the service curve for a session can be any convex function of piece-wise linear components, where each component corresponds to a dierent rate of service over a period of time. For simplicity, we assume that the service curve (see gure 1) consists of two components hbp ; rp i and hba ; ra i, where ba bp and ra rp . Observe that, the service curve mimics the trac envelope enforced by a dual leaky bucket shaper hhbp ; rp ihba ; ra ii.
3.1 Scheduling Mechanism
The scheduling mechanism is very simple. As the cells arrive, they are stamped with their expected transmission deadlines. We compute the transmission deadline of ith cell Fi of a session with a service curve hhbp ; rp ihba ; ra ii as following (assuming the size of each cell to be unity),
Fia = maxfFia?1 ; Ai ? ba =ra g + 1=ra Fip = maxfFip?1 ; Ai ? bp =rp g + 1=rp Fi = maxf0; Fia; Fip g
In the expressions above Fia is the transmission rate curve, and has a bounded burst component ba deadline of the ith cell of a session that follows a ser- (like a leaky bucket), we can revise the time stamping vice curve with slope (or rate) ra and an initial credit algorithm as, Fia = maxfFia?1 ; Ai ? ba =ra g + 1=ra: of ba cells. We assume that Ai is the arrival time of the ith cell and cell transmission time is the unit of time. Similarly, Fip is the transmission deadline of the ith cell of a session that follows the service curve with rate rp and an initial credit of bp cells. We get Fi by taking the maximum of Fia and Fip . Note that system time is initialized to zero at system startup, τ τ and both F0p and F0a are initialized to ?1. The intuition behind the time stamping algorithm is very simple. It is a simple extension to the algorithms used in virtual clock, PGPS, and SFQ. In each one of these, a session is assigned a single rate of serFigure 3: Universal utilization curve. vice, say ra . As the cells from this session arrive, they are time stamped as, Fia = maxfFia?1 ; Ai g + 1=ra : The implication of having a burst component is that the session starts with an initial credit of ba cells and can accumulate a credit of up to ba cells during Variables: the periods of inactivity. This credit is re ected in the Ai : Arrival time of the ith cell of a session. time stamp as the subtractive factor ba =ra . Note that hhbpp ; rp ihba ; ra ii: Service curve of a session. ?ba=ra is the point where the service curve in gure 1 Fi ; Fia : Variables used for time stamping. intersects the time axis. The service curve in our case is the composition (minimum) of two such segments, Events: hbp ; rp i and hba ; ra i. Hence, the time stamp on the Initialize:: cell is the maximum of Fia and Fip . A time stamp /* Invoked at connection setup time. */ computed this way may be negative. We round up F0p ?1; F0a ?1. the negative time stamps to zero. The cells from dierent sessions are placed in a sinEnqueue:: gle queue sorted in the increasing order of their time /* Invoked at cell arrival time. */ stamps. The cells are served from the head of the p p Fi max(Fi ; Ai ? bp =rp ) + 1=rp. queue if and only if the time stamp on the cell at Fia max(Fia ; Ai ? ba =ra ) + 1=ra. the head of the queue is less than or equal to current Add the cell to the queue with time. Since the cells are held in the queue until their p a time stamp max(0,Fi ; Fi ). scheduled departure time, each session maintains its original trac envelope as it exits the switch. In gDequeue:: ure 2 we formally describe the algorithm. /* Invoked at the beginning of a busy period. */ while not end-of-busy-period do 3.2 Important Properties If time stamp on the cell at the head of the dispatch queue is greater than In order to analyze the properties of the scheduling current time, dispatch the cell. algorithm, we introduce the concept of an universal end while utilization curve or UUC. Informally, the UUC is the superposition of normalized service curves of all sessions assuming that they start their busy periods at Figure 2: Multirate Scheduling. the same time. It is a convex and piece-wise linear In the above expression, Fia is the expected nish function where each segment represents the aggregate time of the ith cell of the session, and Ai is its arrival rate of arrivals of all sessions over that period. We time. The virtual clock, PGPS, and SFQ dier in normalize the aggregate rate by the link speed. We the way they assign the arrival time Ai . Now, if the represent the UUC as a sequence of tuples hui ; i i, service curve is a little more complex than a simple where ui and i are the utilization and length of the Utilization
Cell arrivals
r2 a
r1 a
rp2
r1 p
1
2
u1
u2
u3
Time
tion of one or more segments of the UUC may exceed one. However, in order for the system to be stable, the utilization of the last segment has to be less than one. Figure 3 shows the UUC when two sessions hhb1p ; rp1 ihb1a ; ra1 ii and hhb2p ; rp2 ihb2a ; ra2 ii are active at a switching node. In this example, the UUC consists of three segments hui ; i i, where i = 1; : : : ; 3. We can compute i s from the time axis coordinates of the points of in exion of the service curves. If L is the link speed, we can compute ui s as u1 = (rp1 + rp2 )=L, u2 = (ra1 + rp2 )=L, and u3 = (ra1 + ra2 )=L. In the following we present a few key results on buer requirements and session delays. Proofs are omitted due to space limitation and can be obtained from [15].
Util x Link speed
ith segment of the UUC, respectively. The utiliza-
τ1 τ2 τ3
L u1L
u2L
u3L Time
Figure 4: Buer build up at the switch.
One of the interesting points to note here is that the Lemma 3.1 Given the UUC hui ; i i, i = aggregate of arrivals can exceed the link capacity 1; : : : ; M , and a set of session hhbip ; rpi ihbia ; rai ii, i = for a niterate length of time. The buers in the switch 1; : : : ; N , the maximum backlog at a switching node
are used to absorb this mismatch between the arrival and the service rates. This is an important dierence between the multirate service discipline proposed and n N X X the ones that oer a single rate guarantee, such as virBsystem bip + L (ui ? 1)i ; tual clock, PGPS, and SFQ. In PGPS for example, i=1 i=1 input trac is shaped using a single leaky bucket and where L is the link speed, and un > 1 un+1 . is characterized by a tuple hb; ri, where b is the burst size r is the arrival rate. In order to achieve staLemma 3.2 Given the UUC hui ; i i, i = bility,andPGPS the aggregate arrival rate from all 1; : : : ; M , the maximum backlog of a session charac- sessions at allkeeps times below the link speed. Another terized by hhbp ; rp ihba ; ra ii cannot exceed, point to note here is that the scheduler does not introduce any delay if the UUC is always less than one. n X Also note that the scheduler maintains the original Bsession min rp (1 ? 1=ui)i + bp ; trac envelope of a session. Hence, we can compute i=1 the end-to-end delay of a session using lemma 3.3 if ! n X we know the UUCs of all the switching nodes on the ra (1 ? 1=ui)i + ba path of the connection. i=1 is bounded by,
where un > 1 un+1 .
Lemma 3.3 Given the UUC hui ; i i, i = 3.3 Admission Control 1; : : : ; M , the maximum delay suered by any cell belonging to a session characterized by hhbp ; rp ihba ; ra ii We discuss admission control policies for two dierent cannot exceed, classes of service: (a) guaranteed service, and (b) pre! dictive service. In the guaranteed service each session nX +k nX +l is guaranteed a certain target delay and lossless deDsession = min i + 1 ; i + 2 livery of data. In the predictive service, designed for i=n+1 i=n+1 adaptive applications prepared to tolerate occasional where B is the maximum session backlog, un > 1 cell losses and delay violations, a session is promised un+1 , and 1 n+k+1 and 2 n+l+1 are such a delay target with the understanding that it may be that, violated at times and there may be cell losses once P (bp + B )=rp = ni=+nk+1 (1 ? 1=ui)i +(1 ? 1=un+k+1)1 ; in a while. In the following we discuss the admission P (ba + B )=ra = ni=+nl+1 (1 ? 1=ui)i +(1 ? 1=un+l+1)2 : control algorithms for each of these classes of service.
Guaranteed Service: We assume that each ses- We measure the utilization of the system over difsion is characterized by hhbp ; rp ; ihba ; ra ii. The pro- ferent time scales. Let us assume that the measurecess of admitting a new connection includes three steps: (a) computing the new UUC, (b) checking that the worst case system backlog does not exceed switch buer limit, and (c) checking that the delay bound for each connection is satis ed. In the following we discuss each of these steps in detail. Recomputing the UUC is rather simple. It can be done incrementally. Note that the new UUC has at most one more point of discontinuity which coincides with the point of in exion of the service curve of the new connection. Also, the value of ui for each segment of the curve goes up by rp =L or ra =L depending on whether the segment is on the left or on the right of the point of in exion introduced by the new connection. Using the result from lemma 3.1 it is quite simple to check if the admission of the new connection can lead to buer over ow. As we update the UUC, we can add up (1 ? 1=ui)i for each segment until ui changes from values higher than one to less than one. Once this sum is known, checking for the buer over ow is trivial. For the purpose of quick and easy computation, it may be worthwhile to keep the cumulative sum along with hui ; i i for each segment of the UUC. We can also compute the maximum backlog of each session in the same pass. These results are prerequisite to delay computation for individual sessions. We can compute the session delays using the results from lemma 3.3. For quick computation, we can store the cumulative sum of (1=ui ? 1)i starting from the point where ui changes from values greater than one to less than one. Note that delay bounds of all the sessions can be computed in one pass, and its of O(N ) complexity, where N is the number of connections.
Predictive Service: In the predictive service, a
session is given a loose guarantee on delay and loss. We exploit this laxity to improve network utilization and expedite admission control checks. In predictive service the utilization of the system is measured rather than computed. When a new ow is to be admitted, delay and buer occupancy are estimated based on the measured utilization2 . In the following we explain the procedure in detail. 2 Utilization, de ned to be the ratio of arrival rate and (known) service rate, is measured by observing the number of arrivals during a speci ed time interval.
ment is taken over three time scales T1 , T2 , and T3 , where T3 > T2 > T1 . The measurement process is very simple. We count the number of arrivals C1 , C2 , and C3 over a period of T1 , T2 , and T3 , respectively. We compute the utilization of the system in T1 , T2 , and T3 as u1 = C1 =T1, u2 = C2 =T2, and u3 = C3 =T3, respectively. From these measurements we can estimate the UUC as hu1 ; 1 i, hu2 ; 2 i, hu3 ; 1i, where 1 = T1 , and 2 = T2 ? T1 . The measured values of u1 , u2 , and u3 are updated every T unit of time, where T T3 > T2 > T1 . To be on the conservative side, we update ui s with the highest ui recorded in the last measurement period T . The admission control test for a new connection, characterized by hhbp ; rp ihba ; ra ii, consists of the following steps: Estimate the new UUC of the system after the admittance of the new ow from the current UUC and the service curve of the new connection. If the utilization of the last segment of the updated UUC is greater than one, the connection is rejected right away. If any segment of the UUC is greater than one, we estimate system buer occupancy Be using lemma 3.1. If Be > B , where is a multiplicative factor less than one, and B is the switch buer size, the connection is rejected. Delay estimates for each connection, including the new one, are recomputed using the modi ed UUC and the original trac speci cation of each connection. If the delay estimate of any connection exceeds the promised/requested maximum bound, the connection is rejected. Estimation of system utilization is a very important component of the admission control algorithm. The number and the lengths of the measurement periods determine the accuracy of the measurement, and consequently impacts the size of the admissible region and discrepancy between the estimated and actual delay and loss characteristics. The value of also has a signi cant impact on the system performance. The higher is the value (less than one) more optimistic is the admission control process. However, a higher value of also increases the risk of buer over ows and cell losses. On the other hand, a conservative choice of reduces the chance of cell losses, but only at the cost of lower utilization.
4 Numerical Results In this section we compare the performance of multirate server with that of a single rate server employing Packet-by-Packet Generalized Processor Sharing (PGPS) in providing guaranteed service. We also present numerical results comparing multirate and single rate predictive services. We use four 320240 video clips, each approximately 10 minutes long in our study. In order to understand the eects of trac variability on the performance of multirate service, we selected videos with dierent degrees of scene changes. The rst video is an excerpt from a very fast scene changing basketball game. The second clip is a music video (MTV) of the rock group REM. It is composed of rapidly changing scenes in tune with the song. The third sequence is a clip from CNN Headline news where the scene alternates between the anchor reading news and different news clips. The last one is a lecture video with scenes alternating between the speaker talking and the viewgraphs. The only moving objects here are the speaker's head and hands. In all traces, frames are sequenced as IBBPBB and frame rate is 30 frames/sec. In terms of the size of Group of Pictures and that of an average frame, basket ball and lecture video are at the two extremes (the largest and the smallest, respectively), with the other two videos in between. In each of the comparative studies, we use multiple video sessions following identical video trace. Individual sessions are initiated at randomly chosen times so that their peaks and lulls can be eectively multiplexed by the scheduler. This allows us to compare dierent scheduling disciplines on a common platform, and at the same time, exhibits the properties of the schedulers.
The choice of shaper parameters for multirate service is bit more ad hoc 3 . We pick bp = 0 [3] and use the results from section 2 to nd the minimum rp that guarantees loss-less shaping. We use two dierent values for ba . The rst plot for each set (for a particular sequence) uses ba = 1000 cells and the second plot uses ba = 3000 cells4 . In each case, we nd the corresponding lowest ra that guarantees loss-less shaping. We have plotted the percentage improvement in the number of connections admitted by the multirate server over that of the PGPS server for different switch and shaper buer sizes. For all sequences, the smaller is the shaper buer the larger is the improvement. A smaller buer results in a burstier stream coming out of the shaper and entering the network. The more bursty is a stream the more bene cial it is to use a multirate server. Also observe that for all sequences, as the size of the switch buer increases, the improvement due to using multirate service also increases. For the basketball, MTV, and CNN clips the curve reaches a peak and then declines as the switch buer size increases further. For the lecture video, it keeps increasing with the size of the switch buer. However, we have examined that it also reaches its peak at a certain buer size (larger than the range shown in the plot) and then goes down. This behavior is also due to the fact that multirate service is more eective for bursty trac. Initially with increase in switch buer size the bene ts of using multirate service increases since it eectively uses this buer to multiplex the peaks and the lulls of dierent sessions. During the same time, the best leaky bucket parameters for the PGPS server consists of a small burst and a large token rate. The number of connections admitted by the PGPS server is computed as the ratio of the link speed and the token rate, and a high token rate results in small number of connections being admitted. Therefore, we observe a very sharp increase in the percentage gain. However, if the buer size is increased even further, the advantage becomes less effective since the PGPS server uses this extra buer to choose leaky bucket parameters consisting of larger bursts but smaller token rates. Also note that with a higher value of ba , the peak shifts towards the right. A higher ba signi es a longer peak rate segment (for
Guaranteed Service: For this study, we consider a network consisting of nodes in tandem, connected by OC-1 (51 Mbps) links and transporting xed-size cells. Data from the source is passed through a shaper and then fed to the network. All connections traverse from the source to the sink through ve switches. We assume that the end-to-end delay bound is 300 ms. The following set of graphs ( gure 5) compare the number of connections admitted when PGPS is used in conjunction with a leaky bucket shaper and multi3 This is because we do not have a closed from delay bound rate service is used in conjunction with a dual leaky for multirate service and hence we cannot use the linear probucket shaper. We use results from section 2 to com- gramming formulation to nd the optimal parameters. 4 Due to lack of space, b = 3000 case is not shown here, pute the leaky bucket parameters that maximizes the a number of connections admitted by the PGPS server. and can be obtained from [15]
BasketBall
MTV Video
(Burst = 1000 Cells)
(Burst = 1000 Cells)
100.0 Shaper Buffer = 100 ms Shaper Buffer = 150 ms Shaper Buffer = 200 ms
No. of Connections (% Improvement)
No. of Connections (% Improvement)
100.0
80.0
60.0
40.0
20.0
0.0 0.0
2000.0
4000.0 6000.0 Switch Buffer (Cells)
8000.0
Shaper Buffer = 100 ms Shaper Buffer = 150 ms Shaper Buffer = 200 ms
80.0
60.0
40.0
20.0
0.0 0.0
10000.0
2000.0
News Clip
10000.0
(Burst = 1000 Cells)
100.0 Shaper Buffer = 100 ms Shaper Buffer = 150 ms Shaper Buffer = 200 ms
No. of Connections (% Improvement)
No. of Connections (% Improvement)
8000.0
Lecture
(Burst = 1000 Cells)
100.0
80.0
60.0
40.0
20.0
0.0 0.0
4000.0 6000.0 Switch Buffer (Cells)
2000.0
4000.0 6000.0 Switch Buffer (Cells)
8000.0
10000.0
Shaper Buffer = 100 ms Shaper Buffer = 150 ms Shaper Buffer = 200 ms
80.0
60.0
40.0
20.0
0.0 0.0
2000.0
4000.0 6000.0 Switch Buffer (Cells)
8000.0
10000.0
Figure 5: Percentage improvement in number of connections admitted. multirate service). If we analyze the results for dierent sequences, we observe that the improvement due to multirate service is the lowest for the lecture video. This can be explained from the fact that it is the least bursty of all the clips. Here, even with small amount of shaper buer the dierence between the peak and the average rate is not as much as the other more bursty clips. Consequently, the multiplexing gain is also less.
Predictive Service: The next set of graphs (see
gure 6) compare the number of connections admitted using multirate and single rate predictive service. We used the same experimental setup and the same set of trac parameters as used in the case of guaranteed service. The only dierence is in the admission
control algorithm. We used the measurement based admission control algorithm with T1 = 50 cell time, T2 = 250 cell time, and T3 = 500 cell time. The measurement period is T = 1000 cell time. We plot the percentage improvement in number of connections admitted using multirate service over that of single rate service. We vary the buer utilization factor to achieve loss-less delivary in all the simulation runs. The fundamental observations from the last section also hold here. The gain due to multirate scheduling is higher when (a) trac is burstier (b) buering at the switches is smaller. When switch buer size is in the range of 100 ? 500 cells we get 100% | 200% improvement for all sequences. However with increasing buer size the improvement due to multirate service goes down and stabilizes at around 50% (except for lecture video). Note however that most
BasketBall
MTV Video 200.0
No. of Connections (% Improvement)
No. of Connections (% Improvement)
200.0
150.0
100.0
50.0
0.0 0.0
1000.0
2000.0 3000.0 Switch Buffer (Cells)
4000.0
150.0
100.0
50.0
0.0 0.0
5000.0
1000.0
2000.0 3000.0 Switch Buffer (Cells)
4000.0
5000.0
Lecture 200.0
News Clip
No. of Connections (% Improvement)
No. of Connections (% Improvement)
200.0
150.0
100.0
50.0
0.0 0.0
1000.0
2000.0 3000.0 Switch Buffer (Cells)
4000.0
5000.0
150.0
100.0
50.0
0.0 0.0
1000.0
2000.0 3000.0 Switch Buffer (Cells)
4000.0
5000.0
Figure 6: Percentage improvement in number of connections admitted using a multirate server for predictive service. of the currently available switches use no more than a few hundred cells of buer per port. Due to space and power limitations on the switch wafer this number is not expected to increase dramatically in the near future. In this operating range, the bene ts of multirate service is signi cant.
5 Conclusion We have proposed a multirate service mechanism that is particularly suitable for transporting VBR video trac. We have shown how this multiplexing mechanism can be very eective in providing both deterministic and empirical service guarantees. We have shown that multirate scheduling can outperform its
single rate counter parts, such as PGPS (single rate), in terms of number connections admitted while maintaining the same level of service guarantees. This study can be extended in many ways. In the predictive mode of service, the number and the lengths of measurement intervals have a profound impact on the stability and the utilization of the system. We are currently in the process of analyzing these interactions. Another interesting direction for future work is to apply multirate scheduling for data traf c. For example, it can be used to provide short response times to telnet sessions by reserving a high peak rate for a short duration and low average rate. The ftp sessions on the other hand can be optimized for throughput by reserving a relatively higher average rate of service, and a peak rate that is same as
or close to the average rate.
References [1] S. Keshav C. R. Kalmanek, H. Kanakia. Rate Controlled Servers for Very High Speed Networks. In Proceedings of GLOBECOM, December 1990. [2] R. L. Cruz. Quality of Serice Guarantees in Virtual Circuit Switched Networks. IEEE Journal on Selected Areas in Communications, 13(6), August 1995. [3] L. Georgiadis, R. Guerin, V. Peris, and K.N. Sivarajan. Ecient Network QoS Provisioning Based on per Node Trac Shaping. In Proceedings of INFOCOM, March 1996. [4] S. J. Golestani. A Framing Strategy for Congestion Management. IEEE Journal on Selected Areas of Comminication, 9(7), September 1991. [5] S.J. Golestani. A Self-Clocked Fair Queuing Scheme for Broadband Applications. In Proceedings of INFOCOM, June 1994. [6] F. Guillemin, C. Rosenberg, and J. Mignault. On Characterizing an ATM Source via the Sustainable Cell Rate Trac Descriptor. In Proceedings of INFOCOMM, April 1995. [7] S. Jamin, P. Danzig, S. Shenker, and L. Zhang. A Measurement-based Admission Control Algorithm for Integrated Services Packet Networks. In Proceedings of SIGCOMM, October 1995. [8] E. W. Knightly. H-BIND: A New Approach to Providing Statistical Performance Guarantees to VBR Trac. In Proceedings of INFOCOM, March 1996. [9] E. W. Knightly and H. Zhang. Trac Charcterization and Switch Utilization using a Deterministic Bounding Interval Dependent Traf c Model. In Proceedings of INFOCOM, April 1995. [10] B. L. Mark and G. Ramamurthy. Real-time Estimation of UPC Parameters for Arbitrary Trac Sources in ATM Networks. In Proceedings of INFOCOMM, March 1996.
[11] A. K. Parekh and R. G. Gallager. A Generalized Processor Sharing Approach to Flow Control in Integrated Services Network: The Single Node Case. IEEE/ACM Transactions on Networking, 1(3), June 1993. [12] E. Rathgeb. Modeling and Performance Comparison of Policing Mechanisms for ATM Networks. IEEE Journal on Selected Areas of Communication, 9(3), 1991. [13] A. R. Reibman and A. W. Berger. Trac Descriptors for VBR Video Teleconferencing Over ATM Networks. IEEE/ACM Transsactions on Networking, 3(3), June 1993. [14] J.L. Rexford, A.G. Greenberg, and F.G. Bonomi. Hardware-Ecient Fair Queueing Architecture for High-Speed Networks. In Proceedings of INFOCOM, March 1996. [15] D. Saha, S. Mukherjee, and S. K. Tripathi. Multirate Scheduling of VBR Video Trac in ATM Networks. Technical Report UMIACS-TR96-44, CS-TR-3657, Department of Computer Science, University of Maryland, College Park, 1996. http://www.cs.umd.edu. [16] D. Saha, S. Mukherjee, and S.K. Tripathi. Carry-Over Round Robin: A Simple Cell Scheduling Mechanism for ATM Networks. In Proceedings of INFOCOM, March 1996. [17] S. Suri, G. Varghese, and G. P. Chandranmenon. Leap Forward Virtual Clock: An O(log log N) Fair Queuing Scheme with Guaranteed Delays and Throughput Fairness. Technical report, Department of Computer Science, Washington University at St. Louis, 1996. [18] D. E. Wrege and J. Liebeherr. Video Trac Characterization for Multimedia Networks witha Deterministic Service. In Proceedings of INFOCOMM, March 1996. [19] L. Zhang. Virtual Clock: A New Trac Control Algorith for Packet Switching Networks. In Proceedings of SIGCOMM, 1990.