Computer Communications 25 (2002) 21±31
www.elsevier.com/locate/comcom
Packet scheduling with delay and loss differentiation A. Striegel*, G. Manimaran Dependable Computing and Networking Laboratory, Department of Electrical and Computer Engineering, Iowa State University, Ames, IA 50011, USA Received 21 December 2000; revised 3 March 2001; accepted 23 March 2001
Abstract To support quality of service over the Internet, the Differentiated Services model has been proposed recently by the IETF. In the Differentiated Services model, ¯ows with similar qualities of service (QoS) requirements are aggregated into classes in order to counter the scalability problem faced by the Integrated Services model. There have been several models proposed for service differentiation. The relative differentiated service model is one among them in which an assurance is given that `higher classes will be better, or at least no worse, than lower classes'. Packet delay and packet loss are two general quality metrics under which the differentiation can take place. In this paper, we propose three schedulers based on the relative differentiated service model, namely, delay only, loss only, and both delay and loss schedulers. To evaluate the performance of the proposed schedulers, we have conducted extensive simulation studies (both per-hop and end-to-end) under uniform and non-uniform traf®c loads. Our simulation studies show that the delay only and loss only schedulers differentiate effectively only in delay and loss, respectively, and the combined delay and loss scheduler differentiates effectively in both delay and loss. q 2002 Elsevier Science B.V. All rights reserved. Keywords: Differentiated services; Packet scheduling; Delay differentiation; Loss differentiation
1. Introduction The Internet is continually evolving from a medium used primarily for research and academic to a medium used by business and user communities. For these communities, the applications being used require different qualities of service (QoS) to be provided to them. However, the Internet in its current form does not support the notion of QoS. Rather, the Internet follows the same-service-to-all paradigm such that all packets receive the same quality of service. This besteffort model that the Internet currently employs is inadequate for meeting the growing demands of next generation applications that demand QoS requirements. Therefore, several models have been proposed by the Internet Engineering Task Force (IETF) to support QoS requirements across the Internet with testing of these models occurring on Internet2. The ®rst model, Integrated Services (IntServ) [2] aims to provide an absolute guarantee of QoS for each ¯ow across the network. This model provides two broad categories of service, guaranteed service [3] for realtime ¯ows requiring strict delay and jitter bounds, and
controlled load service [4] for non real-time ¯ows which are insensitive to congestion. The IntServ model relies on a signaling protocol known as RSVP [5] for admission control and resource reservation. The strengths of the IntServ model are that it provides an absolute service guarantee and that it provides a way of monitoring that each ¯ow in the network does not violate its respective allocation of resources. However, the IntServ model has several key weaknesses. First, each router requires a signi®cant amount of processing overhead and each router is required to maintain state information for each ¯ow. On the Internet, several million ¯ows may be ¯owing across a router, thus presenting scalability dif®culties with IntServ. In addition, IntServ is impractical for short-lived ¯ows since the connection setup overhead is often greater than the transmission of all packets in a ¯ow. Consequently, the Differentiated Services (DiffServ) model [7,8] was proposed as an alternative model for providing QoS over the Internet that overcomes the shortcomings of the IntServ model. 2. Differentiated services
* Corresponding author. E-mail addresses:
[email protected] (A. Striegel),
[email protected] (G. Manimaran).
DiffServ [7] was the result of addressing of the limitations of IntServ. The goal of DiffServ was to provide the bene®ts
0140-3664/02/$ - see front matter q 2002 Elsevier Science B.V. All rights reserved. PII: S 0140-366 4(02)00337-1
22
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
of different levels of QoS while avoiding the limitations of the IntServ model. The DiffServ model accomplishes this by aggregating traf®c with similar QoS requirements into classes. DiffServ does not maintain any per-¯ow information across the network, thus eliminating the overhead of maintaining per-¯ow state information and also eliminating the connection setup costs. Thus, short-lived ¯ows bene®t from this model due to the absence of connection setup costs. However, DiffServ does have several weaknesses. Under the DiffServ architecture, policing and resource reservation are migrated to the edge of the DiffServ domain, leaving the routers inside the DiffServ core to act only upon the DSCP (DiffServ Code Point) [7] within a given packet. The IETF has de®ned several DSCPs following a ®xed behavior. The Per Hop Behavior (PHBs) [8] associated with these DSCPs include Expedited Forwarding [9] and Assured Forwarding [10]. These two PHBs fall into the category of absolute differentiated services such that for a given PHB, a ®xed behavior is de®ned regarding the packet. The ®rst PHB, Expedited Forwarding [9], is equivalent to a leased line provided that throughput stays below a certain level. The second PHB, Assured Forwarding [10], classi®es packets into four classes (AF1x±AF4x) with three drop precedence levels within each class (e.g. AF11±AF13). Under the Assured Forwarding PHB, packets of a higher drop precedence are always dropped before packets of a lower drop precedence, hence providing absolute (®xed) service. 2.1. Relative differentiated services The second variation of DiffServ is relative differentiated services. For relative differentiated services, all traf®c is grouped into N classes of service. For each class i, the service provided to class i will be better (or at least no worse) than the service provided to class (i 2 1), where 1 , i # N, in terms of queuing delays and packet losses [7]. The `or at least no worse' clause is included for levels of low network activity where all classes experience the same quality of service. An application selects an appropriate class according to its required level of service. However, this level of service is relative to the other classes in the network and is not an absolute guarantee. The relative differentiated services model assures that the performance of the selected class will be relatively better than the performance of lower classes in the network. To implement relative differentiated services, several approaches have been proposed. The ®rst approach, price differentiation, proposed by the Paris Metro Pricing (PMP) scheme [12], uses only pricing of classes to differentiate services with the assumption that higher pricing will lead to lower loads and hence lower loads in the higher classes. A second approach, careful capacity provisioning, involves higher classes having more forwarding resources relative to their expected loads through the use of schedulers such as Weighted Fair Queuing [13±15]. However, each of these
two approaches has the same problem when dealing with Internet traf®c. Because of the bursty nature of Internet traf®c, a higher class may be overloaded, thus performing worse than a lower class [16,17]. In Ref. [1], two principles were proposed in order for a differentiated services model to be effective for both users and network operators. First, a model must be predictable, such that the differentiation is consistent (a higher class is better or at least no worse than a lower class) and the differentiation is independent of class loads. Second, the model must be controllable, such that the network operators can select the appropriate level of spacing between the classes based on their criteria. The absolute differentiated services provides an extremely predictable model at the expense of controllability. The low controllability of absolute differentiated services is due to the cutoffs between PHBs being ®xed (i.e. always drop a higher drop precedence before a lower drop precedence), thus allowing controllability only at the edge of the DS (DiffServ) domain, not within the DS core. The relative differentiated services can be extremely controllable (i.e. distribute losses between classes in a ratioed manner), but special care must be taken to make sure a solution is predictable. From these two principles, the proportional differentiation model was proposed in Ref. [1]. The premise of the proportional differential model is that the performance measures for packet forwarding at each hop are ratioed proportionally via the use of class differentiation parameters. Two schemes, Backlog Proportional Rate (BPR) and Waiting-Time Priority (WTP) scheduling were proposed for applying the proportional differential model to packet delay. Thus, BPR and WTP are only applicable to delay-sensitive applications such as IP-telephony and video-conferencing. However, the performance of such applications is also dependent upon the packet loss that is received across the network, thus requiring that loss also be considered. In Ref. [18], the proportional loss dropper was introduced to work together with WTP and BPR. The proportional loss dropper uses the notion of a loss history buffer (LHB) which captures the loss information for the last K packets received. This loss dropper is invoked during buffer over¯ow and selects a class to drop packets based on the distance of the class from the normalized loss rates of the other classes. This loss dropper can be used in conjunction with the BPR and WTP schedulers to achieve differentiation according to both loss as well as delay. However, this loss differentiation mechanism does face several tradeoffs. First, this mechanism may not differentiate effectively both in delay and loss for all delay-loss combinations (e.g. high delay and low loss requirement). Second, as the value of K increases, a better approximation of the loss rate is achieved at a cost of differentiation in short time scales. In summary, most applications require a wide range of QoS which can vary in terms of both delay and loss which introduces the motivation for our paper. Our paper proposes
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
23
Fig. 1. (m,k) state diagram for a ¯ow with parameters (2,3).
a scheduler that differentiates in terms of both delay and loss using a uni®ed mechanism. This mechanism allows our scheduler to provide both predictable and controllable differentiation in the DiffServ environment. Another QoS parameter is delay jitter for which differentiation is not dealt with in this paper. The structure of our paper is as follows. Section 3 details the three schedulers that we are proposing. In Section 4, we present the simulation results of the proposed schedulers for per-hop behavior. Next, in Section 5, we present the simulation results for end-to-end behavior. Finally, in Section 6, we make some concluding remarks. 3. Proposed differential schedulers In this section, we ®rst discuss the proportional differential model. Then, we discuss the (m,k) model on which our generic scheduler is based. Finally, we propose three variants of our generic scheduler, a scheduler based on delay only, a scheduler based on loss only, and a scheduler that combines both delay and loss. Each of these variants differ in terms of how ¯ows are aggregated into classes. 3.1. Proportional differential model The goal of the proportional differential model [1] is to appropriately `space' class performance metrics according to the differentiation parameters chosen by the network operator. Consider N classes and let the performance metric of a class i be denoted by Qi : The proportional model imposes a constraint for class i such that: Qi =Qj Ci =Cj
i; j 1¼N where C1 , C2 , ¼CN is de®ned as the generic quality differentiation parameters. 3.2. (m,k) model and DBP scheduling scheme In our class based scheduler, we adopt the (m,k) model and the Distance Based Priority (DBP) scheduling algorithm proposed in [19] for scheduling real-time streams (¯ows).
The (m,k) model provides a unique method to capture the loss constraints of an individual ¯ow and is stated as follows: for every k consecutive packets in a given ¯ow, at least m packets have to meet their end-to-end deadlines (delays). In the DBP algorithm, a state machine is associated with each ¯ow at each node along the ¯ow's path. The states represent the transmission status of the last k packets. The DBP value of a ¯ow is the number of transitions required to reach a failing state, where failing states are those states in which the number of transmissions is less than the number of drops. The lower the DBP value, the higher the priority. The packet from the ¯ow with the highest priority is selected for transmission. The DBP algorithm aims at minimizing the transitions to a failing state. Fig. 1 shows the state diagram for a ¯ow with a (2,3)-®rm guarantee wherein M and m are used to represent transmission and dropping of packets, respectively. Each state is represented by a threeletter string. For example, MMm denotes the state where the most recent packet was dropped and the two previous packets were transmitted. The edges represent the possible state transitions. Starting from a state, the ¯ow makes a transition to one of two states, depending on whether its next packet is transmitted (denoted by M) or is dropped (denoted by m). For example, if a ¯ow is in state MMm (DBP value of 1) and its next packet is transmitted, then the ¯ow transits to state MmM. In Fig. 1, the failure states are mMm, Mmm, mmM, and mmm (states representing two or more drops). The DBP scheme provides a method for evaluating the history of a ¯ow based on the transmission status of the last k packets of the ¯ow. This history is then used to prioritize the ¯ow in the form assigning a DBP value to the ¯ow. Since only the history of the last k packets is maintained, a tradeoff exists between short-term and long-term failure (loss) performance. As k increases, the scheduler is less effective for short-term changes in the network traf®c. However, an increased k value does yield a better controllability over the long-term such that the losses are more evenly distributed [18]. In our paper, we use a lower value for k to handle the bursty nature of the traf®c on the Internet and to bene®t short-lived ¯ows.
24
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
Fig. 2. C-DBP Buffer Management.
3.3. Proposed generic class scheduler (C-DBP) We propose a variation of the DBP scheduler, Class DBP (C-DBP), for use with the Proportional Differentiated model. For the C-DBP scheduler, the number of queues is equal to the number of differentiation classes as opposed to the number of ¯ows as in the DBP scheduler. In C-DBP, the state history is maintained at a class level, not on a ¯ow level as with DBP. Thus, the state history of a class then is in regards to the transmission of a packet from a class or dropping of a packet from a class. In the case of best-effort ¯ows as with the Internet, packets will not have a deadline and thus the meet will correspond to successfully including the packet into the class queue whereas the miss will correspond to dropping the packet due to buffer over¯ow. Thus, in the context of the DBP scheduler, the packets will appear to have an extremely high deadline that will never expire. In future cases, the use of deadline checking could be incorporated into the C-DBP scheduler in order to prevent packets with stale or unusable information from being transmitted onward and consuming unnecessary bandwidth. Since DBP uses the notion of a lower DBP state equating to a higher priority, therefore we use a rede®ned notion of class priority in our scheduler such that given two classes Ci and Ci11 ; class Ci will receive better or at least no worse service than class Ci11 :
Fig. 3. C-DBP Scheduling.
With the C-DBP algorithm, each class in the scheduler can be differentiated based upon on the (m,k) parameters for a given class. The C-DBP algorithm meets the necessary quali®cations outlined earlier for effective relative differentiated services. First, the C-DBP algorithm is predictable since a class with a more restrictive (m,k) parameter will receive a higher priority while in operation. Second, the C-DBP algorithm is controllable in that a given (m,k) parameter for a class can be appropriately changed to provide the necessary spacing between classes. The C-DBP scheme consists of two main parts, the buffer management 1 algorithm and the scheduling algorithm. To distinguish the loss and delay differentiation behaviors, we use two sets of DBP histories, one for loss differentiation (DBPLossHistory) and the other for delay differentiation (DBPDelayHistory). The loss history is concerned only with the successful inclusion of a packet in the class queue versus an unsuccessful inclusion (dropping the packet). The delay history is concerned only with the successful transmission of a packet versus dropping the packet (dropping due to buffer over¯ow). The class queues are FIFO and are formed from a central pool of buffer space available at the router. Fig. 2 shows the pseudo code for the buffer management algorithm of the C-DBP scheme. During low load operation, the algorithm simply inserts the packet into the appropriate class queue. When buffer over¯ow occurs, the algorithm selects an appropriate packet for dropping from the class with the maximum C-DBP loss value 2 (lowest priority). In the class selection, only non-empty class queues are 1 The original DBP algorithm assumes in®nite buffer and hence does not have a mechanism for buffer management. 2 The C-DBP loss value is obtained from the DBPLossHistory.
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
Fig. 4. Mapping delay and loss requirements onto delay classes.
considered. If the class selected is the same as that of the incoming packet, the incoming packet is dropped. However, if the selected class is different from the class of the incoming packet, the tail packet of the selected class is dropped and the incoming packet is inserted into its corresponding class queue. Note that, the tail drop mechanism can be replaced with sophisticated packet dropping mechanisms such as RED [20]. Fig. 3 shows the pseudo code for the scheduling algorithm of the C-DBP scheme. The algorithm selects the class that has the lowest C-DBP delay value for transmission. In the C-DBP scheme, the loss history is adjusted when a new packet arrives at the router, whereas the delay history is adjusted when either a packet is transmitted or a packet is dropped due to buffer over¯ow. The proportional differentiation of the C-DBP algorithm arises from the (m,k) parameters of each of the class queues. A set of differentiation parameters, s, is chosen by the network operator along with a k parameter. The (m,k) parameter for class Ci is
k 2 si ; k where MinNi1 {k 2 si } $ 1: Thus, the s parameters must be selected to satisfy the targeted differentiation with the only restriction that k must be greater than the largest s parameter being used. Consider a network operator who wishes to establish a differentiation factor of 1.5 between two different classes. Let k 32: If si for class Ci is 14, then si11 for class Ci11 is equal to 14 times 1.5 yielding 21. In theory, the number of
25
classes available with the C-DBP algorithm is limited only by the number of bits required to represent different classes. In practice, the class that de®nes the PHB of a packet must ®t within the Differentiated Services (DS) ®eld, formerly the TOS ®eld. In Ref. [7], the DiffServ architecture outlines that there is no distinction between delay and loss rate between classes. However, in the following subsections, we propose a method for unifying both loss and delay under a class selection method that captures QoS selection across both the loss and delay spectrums. The selection of QoS parameters across both loss and delay allows the applications to more precisely specify their requirements. Consider two ¯ows: video and audio. Although both have low latency requirements, the video ¯ow can tolerate a higher loss rate than the audio ¯ow. Thus, in an ideal case, the network would be able to differentiate between the two ¯ows, providing the appropriate QoS to each. Thus, in order to accommodate a more of a diverse realm of applications by offering a larger variety of QoS selections, the following C-DBP based scheduling algorithms offer both delay and loss QoS class selection. 3.4. C-DBP-delay and C-DBP-loss schedulers The ®rst scheduler that we propose, C-DBP-Delay, is a delay based scheduler using the C-DBP algorithm. Here, the ¯ows are aggregated into classes with similar delay requirements under the premise that a higher delay class will receive a better delay performance. Ideally, an application will select an appropriate delay class and it can upgrade or downgrade the class, if necessary. Fig. 4 shows how four delay classes and four loss classes would be mapped onto four delay classes. The second scheduler that we propose, C-DBP-Loss, is a loss based scheduler using the C-DBP algorithm. Here, the ¯ows are aggregated into classes with similar loss requirements under the premise that a higher loss class will receive a better loss performance. The mapping of delay and loss classes for the C-DBP-Loss scheduler would follow the same aggregation style as the C-DBP-Delay scheduler with the classes being aggregated according to loss instead of delay. 3.5. C-DBP-delay-loss scheduler
Fig. 5. Mapping delay and loss requirements onto delay-loss classes.
The a third scheduler, that we propose, C-DBP-DelayLoss, that couples both packet loss and packet delay using the C-DBP algorithm. Recall Fig. 4 divided a matrix of four loss classes by four delay classes and mapped them onto four delay classes. To construct a scheduler that couples loss and delay together, these two QoS parameters must be somehow related. At ®rst examination, a simple solution would be to simply to use 4 £ 4 16 classes. However, to use 16 classes, the classes must be appropriately prioritized in order to decide how a respective delay-loss combination relates to the 16 classes. This approach has possibilities for
26
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
follow the IETF Assured Forwarding RFC exactly since the RFC outlines absolute behavior. In the next two sections, we examine the impact of our proposed schedulers on a per-hop basis and on an end-toend basis. We examine our schedulers for both predictability and controllability under uniform and non-uniform traf®c loads. 4. Simulation studies-per-hop behavior
Fig. 6. Delay differentiation by C-DBP-delay scheduler-uniform load.
inconsistencies across Internet domains if the classes are prioritized differently. Therefore, we propose a method, C-DBP-Delay-Loss, that relates delay and loss in a uniform manner as shown in Fig. 5. In the ®gure, each delay-loss combination is related by connecting a diagonal line from upper left to lower right. Each diagonal line represents a distinct level of service provided by the scheduler. The difference between each diagonal is a distance of one on either the delay axis or the loss axis. The coupled delayloss class CDL for a given ¯ow with delay class CD and loss class CL is CDL CD 1 CL : With this approach, the applications requiring the highest QoS (in terms of both delay and loss) will then receive the highest priority, whereas those with the lowest QoS will receive the lowest priority. Consider a videoconferencing application that tolerates minimal packet loss and requires minimal delay. This application would be categorized as CD 0; CL 0; thus receiving CDL 0; the highest priority possible. Conversely, consider an web browsing application that tolerates maximum packet loss and has a high packet delay tolerance. This application would be categorized as CD 3; CL 3; thus receiving CDL 6; the lowest priority possible from this approach. This approach could be mapped onto the Assured Forwarding PHB in the following manner. The delay class would be represented by the four available Assured Forwarding classes (AF1±AF4). The loss classes would be condensed from the earlier example of four loss classes to three loss classes. With this approach, a network operator could offer relative differentiation in terms of both loss and delay while still using the existing Assured Forwarding codepoints. Note that such an implementation would not
An event-driven simulator was developed to evaluate and compare the performance of the three proposed schedulers. On each link, the scheduler determines the class from which the packets should be sent across the link. Each ¯ow is characterized by a delay class, loss class, and ¯ow duration based on input parameters to the simulator. As each packet is transmitted or dropped, the statistics such as per-hop dropped packets and per-hop delay are recorded. For our simulations, a topology of a single link between two nodes was used to evaluate the per-hop performance of our schedulers. The schedulers were evaluated using per-hop packet delay and percentage of packets dropped as the performance metrics. The per-hop delay metric provides a basis for evaluating the effective packet delay at each node along the ¯ow's path. The packet loss metric captures the number of packets dropped relative to the number of packets generated for a ¯ow. On each metric, the individual performances of the ¯ows are averaged to obtain the class performance. In our simulation, one millisecond (ms) is represented by one clock tick. The ¯ows for the simulation are generated as follows: ² The arrival of ¯ows follow Poisson distribution with a mean inter-arrival time of 20 ms. ² The inter-arrival time of packets in a ¯ow is exponentially distributed with a mean of 10 ms. ² The duration of each ¯ow is exponentially distributed with a mean of 1500 ms. ² Packets are assumed to be of ®xed length and each link has a transmission delay of one millisecond. ² Each node has a buffer of 40 packets with the packets being dropped according to the tail-drop method. Although Poisson and exponential distributions do not necessarily represent Internet traf®c accurately, we believe that the proposed schedulers will perform equally well under self-similar traf®c. We have begun experimenting with the schedulers under self-similar traf®c. Each scheduler was evaluated using four delay classes and four loss classes. The simulations were conducted for both uniform and non-uniform traf®c loads. The schedulers were evaluated for loads whose total packet loss vary between 1 and 10%. The s parameters were selected to achieve a differentiation of 1.5 between their respective
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
Fig. 7. Loss differentiation by C-DBP-loss scheduler-uniform load.
loss and delay classes. For the C-DBP-Delay and C-DBPLoss schedulers, the controllability parameter s {9; 14; 21; 32}: The C-DBP-Loss-Delay scheduler, the controllability parameter s {2; 3; 6; 9; 14; 21; 32}: 4.1. Uniform traf®c load For the uniform load, the loads were 25, 25, 25, and 25% for classes 0, 1, 2, and 3, respectively.
Fig. 8. Delay differentiation by C-DBP-delay-loss scheduler-uniform load.
27
4.1.1. C-DBP-delay and C-DBP-loss schedulers As shown in Fig. 6, the C-DBP-Delay scheduler differentiates effectively accordingly to delay. Each class receives a distinctive level of delay performance and follows the core principle that `a higher class will always perform better, or at least no worse than a lower class.' As the load increases, the effective queuing delay is spread proportionally between the classes as outlined by the s parameters. Note that, although (m,k) and DBP were originally proposed for use in prioritizing loss, the simulation studies show that C-DBP can be effective in scheduling to achieve differentiation based on delay such that the history is changed to re¯ect the transmission or dropping of packets from a class. For the C-DBP-Delay scheduler, the differentiation according to loss class is not examined as it does not take into account the loss aspect. Similarly, the C-DBP-Loss scheduler is not examined for its differentiation according to delay class for the same reason. Fig. 7 shows the loss performance for the C-DBP-Loss scheduler according to loss class. Similar to the C-DBPDelay scheduler, the C-DBP-Loss scheduler achieves adequate differentiation between the respective loss classes. This is expected as the initial proposal of the DBP algorithm was for prioritization of ¯ows according to loss rate. 4.1.2. C-DBP-delay-loss scheduler Fig. 8 shows the delay performance of the C-DBP-DelayLoss scheduler according to delay classes under uniform traf®c loads. The scheduler achieves a slightly lower delay performance for the higher priority classes (Class 0 and 1) than the C-DBP-Delay scheduler due to its delay-loss coupling nature. Following this, the loss performance of the C-DBP-Delay-Loss scheduler in Fig. 9 is shown to be slightly poorer than the C-DBP-Loss scheduler for higher priority classes as well. However, these performances penalties are not very high when it is considered that the scheduler meets its goal of providing relative differentiation according to both loss and delay. This represents a signi®cant ¯exibility in services that can be offered to applications, i.e. the requested value of one QoS parameter is not necessarily related to another QoS parameter. 4.1.3. Predictability and controllability As has been shown in the graphs (Figs. 6±9), all three schedulers meet the necessary prerequisites for an adequate relative services model as outlined in Ref. [1]. First, each scheduler achieves predictable differentiation in that for a given class, a higher class will yield better, or at least no worse performance in the respective QoS parameters selectable in the schedulers. The differentiation between classes is maintained as the load increases. Second, the core C-DBP algorithm provides controllable differentiation as outlined in Figs. 10 and 11. Each scheduler shows controllable differentiation approaching the target level of 1.5 between the respective classes. For the schedulers, the delay differentiation most closely matches the
28
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
Fig. 9. Loss differentiation by C-DBP-delay-loss scheduler-uniform load.
Fig. 11. Loss differentiation relative to the target (C-DBP-delay-loss).
targeted differentiation. The delay differentiation is achieved solely on the basis of the C-DBP scheme without maintaining waiting time for queues. During low loads, packets of a lower class simply have to wait longer but are not starved nor receive excessive delays since the network bandwidth is adequate to service all packets. As the load increases, the delay is proportionally spread starting with the lower classes and slowly moving to the higher
classes. The packet dropping by the buffer management mechanism causes the lower delay classes to rise in their priority until a packet is ®nally transmitted from them. The loss differentiation does not match the targeted differentiation as well as the delay differentiation although the loss differentiation is still controllable via the s parameters. The loss differentiation is affected by the combination of history window size (k) and the size of the
Fig. 10. Delay differentiation relative to the target (C-DBP-delay-load).
Fig. 12. Delay differentiation by C-DBP-delay-loss scheduler.
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
29
C-DBP-Delay and C-DBP-Loss schedulers are not discussed as they obtain similar differentiation to the differentiation achieved under the uniform load. 4.2.1. DBP-delay-loss scheduler Fig. 12 shows the delay performance of the C-DBPDelay-Loss scheduler under a non-uniform traf®c load. The scheduler achieves adequate differentiation between the respective delay classes. Although it performs slightly poorer than the C-DBP-Delay scheduler in terms of delay for the higher classes, it achieves better performance for the lowest delay class and thus achieves a differentiation closer to the actual targeted differentiation. This is due to the inherent nature of the coupling between delay and loss in the C-DBP-Delay-Loss scheduler. A similar observation can be made between C-DBP-Delay-Loss scheduler and C-DBP-Loss scheduler in terms of loss differentiation (see Fig. 13).
Fig. 13. Loss differentiation by C-DBP-delay-loss scheduler.
buffer. Since our algorithm maintains a smaller history window, it is not able to achieve the targeted proportional loss differentiation, which conforms to the ®ndings in [18]. 4.2. Non-uniform traf®c load For non-uniform traf®c load, the loads were 10, 10, 40, and 40% for classes 0, 1, 2, and 3, respectively. All other parameters are the same as with the uniform traf®c load. The
Fig. 14. Delay differentiation over time (C-DBP-delay-loss).
4.2.2. Predictability and controllability As with the uniform traf®c load, the differentiation achieved by the C-DBP-Delay-Loss scheduler under a non-uniform traf®c load is quite similar (plots are not shown). The delay differentiation between classes is close to the targeted proportional differentiation of 1.5. However, the loss differentiation under a non-uniform traf®c load achieves worse proportional differentiation than in the uniform traf®c load. Although the classes are still adequately differentiated, the highest priority classes receive noticeably higher performance than the lower priority classes. This arises due to the low amount of traf®c ¯owing into the higher priority classes and the buffer management mechanism. In our buffer management mechanism, a class cannot be penalized for having the lowest C-DBP value if there are no packets in the class queue to drop. Thus, when higher classes experience low load, the frequency of this happening increases dramatically, thus explaining the difference in proportional differentiation. The studies under the uniform and non-uniform traf®c loads show that the C-DBP-Delay-Loss scheduler meets the two criteria for an effective relative differentiated services scheduler. First, the scheduler has been shown to be predictable by differentiating under different network loads and different class loads. Second, the scheduler has been shown to produce controllable results. The delay differentiation under both types of traf®c loads was close to the targeted proportional differentiation of 1.5. Although the scheduler is not able to achieve the targeted proportional differentiation in loss, our simulation studies have shown that, the loss can still be differentiated upon but not with extreme precision due to the small history window (k) being used. 4.2.3. Short-term performance-uniform traf®c load In the two previous subsections, we examined the average
30
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
Fig. 15. Loss differentiation over time (C-DBP-delay-loss).
Fig. 17. Loss differentiation relative to the target (end-to-end).
loss and delay differentiation achieved by the C-DBPDelay-Loss scheduler over long timescales. However, achieving differentiation in the short timescales is not only bene®cial to short-lived ¯ows, but also has a greater impact on the QoS perceived by the users. Because of this, we examine the C-DBP-Delay-Loss scheduler under small timescales. Figs. 14 and 15 show the delay and loss performance of the C-DBP-Delay-Loss scheduler with a uniform
class load and a ¯ow inter-arrival time of 150 ms. In both the ®gures, the lowest priority class (class 3) is penalized ®rst when congestion occurs, after which the penalization is spread proportionally to the higher classes. Thus, the delay and loss performance experienced in short-term will more closely follow the targeted differentiation selected by the network operator. 5. Simulation studies-end-to-end Behavior To conclude our initial studies, we have examined the end-to-end behavior of our proposed schedulers under both uniform and non-uniform traf®c loads. The ¯ows were generated in a similar manner as outlined earlier with an increased ¯ow inter-arrival rate in order to accommodate the additional network capacity (increase in number of links). The network topology used for the simulations was ARPANET since it provides a realistic network topology. Fig. 16 and 17 show the controllability of the C-DBP-Delay-Loss scheduler under an increasing network load. The C-DBP-Delay-Loss scheduler demonstrated similar delay and loss differentiation for the end-to-end simulations in comparison to the per-hop simulations. 6. Conclusions
Fig. 16. Delay differentiation relative to the target (end-to-end).
In this paper, we proposed three relative differentiation schedulers, C-DBP-Delay, C-DBP-Loss, and C-DBPDelay-Loss to achieve proportional differentiation. We evaluated the performance of the proposed schedulers through extensive simulation studies (per-hop and
A. Striegel, G. Manimaran / Computer Communications 25 (2002) 21±31
end-to-end) under uniform and non-uniform traf®c loads. Our simulation studies have shown that the C-DBP-Delay and C-DBP-Loss schedulers differentiate respectively for delay and loss only. The C-DBP-Delay-Loss scheduler was able to provide predictable and controllable differentiation both in delay and loss, thus overcoming the problems associated with the other two schedulers. Moreover, the C-DBP-Delay-Loss scheduler is highly ¯exible in that it offers a wide range of QoS selection in which the delay and loss can be chosen independently. References [1] C. Dovrolis, D. Stilliadis, P. Ramanathan, Proportional differentiated service: delay differentiation and packet scheduling, in: Proceedings of the SIGCOMM, 1999, pp.109±120. [2] R. Braden, D. Clark, S. Shenkar, Integrated services in the internet architecture: an overview, RFC 1633, IETF, June 1994. [3] S. Shenkar, C. Partridge, R. Guerin, Speci®cation of guaranteed quality of service, RFC 2212, IETF, September 1997. [4] J. Wroclawski, Speci®cation of the controlled-load network element service, RFC 2211, IETF, September 1997. [5] R. Braden, L. Zhang, S. Berson, S. Herzog, S. Jamin, Resource reservation protocol (RSVP) version 1, functional speci®cation, RFC 2205, IETF, September. 1997. [7] K. Nichols, S. Blake, F. Baker, D.L. Black, de®nition of the differentiated services ®eld (DS Field) in the IPv4 and IPv6 headers, IETF RFC 2474, December 1998.
31
[8] S. Blake et.al., An architecture for differentiated services, RFC 2475, IETF, December 1998. [9] V. Jacobson, K. Nichols, K. Poduri, An expedited forwarding PHB, RFC 2598, IETF, June 1999. [10] J. Heinanen, F. Baker, W. Weiss, J. Wroclawski, Assured Forwarding PHB Group, RFC 2597, IETF, June 1999. [12] A.M. Odlyzko, Paris Metro Pricing: the minimalist differentiated services solution, in :Proceedings of the IEEE/IFIP International Workshop on Quality of Service, June 1999. [13] A. Demers, S. Keshav, S. Shenker, Analysis and simulation of a fair queuing algorithm, internetworking: research and experience, 1990, pp. 3±26. [14] A.K. Parekh, R.G. Gallager, A generalized processor sharing approach to ¯ow control in integrated services networks: the singlenode case, IEEE/ACM Trans. Networking 1 (June) (1993) 344±357. [15] J.C.R. Bennett, H. Zhang, Hierarchical packet fair queuing algorithms, IEEE/ACM Trans. Networking 5 (October) (1997) 675±689. [16] D. Stiliadis, A. Varma, Latency-rate servers: a general model for analysis of traf®c scheduling algorithms, IEEE/ACM Trans. Networking 6 (October) (1998) 611±625. [17] C. Dovrolis, D. Stiliadis, Relative differentiated service in the internet: issues and mechanisms, in Proceedings of the ACM SIGMETRICS, 1999. [18] C. Dovrolis, P. Ramanathan, A case for relative differentiated services and the proportional differentiation model, IEEE Network (1999) 26± 34. [19] M. Hamdaoui, P. Ramanathan, A dynamic priority assignment technique for streams with (m,k)-®rm guarantees, IEEE Trans. Comput. 44 (12) (1995) 1443±1451. [20] S. Floyd, V. Jacobson, Random early detection gateways for congestion avoidance, IEEE/ACM Trans. Networking 1 (4) (1993) 397±413.