ŠTÚDIUM MECHANIZMU DYNAMICKÉHO RIADENIA FRONTOV PRE ZABEZPEČENIE QoS A STUDY OF A DYNAMIC SCHEDULING MECHANISM TO GUARANTEE QoS ŠTÚDIUM MECHANIZMU DYNAMICKÉHO RIADENIA FRONTOV PRE ZABEZPEČENIE QoS A STUDY OF A DYNAMIC SCHEDULING MECHANISM TO GUARANTEE QoS

disciplína - pre ktoré navrhujeme analytický popis a predkladáme numerické výsledky získané pomocou Markovho reťazca. Je navrhnutý nový mechanizmus nazývaný Dynamic-Weighted Fair Queuing (Dynamic-WFQ), v ktorom výber do frontu závisí od triedy prevádzky a dĺžky frontu. Je uvedený príklad funkcie výberu, ktorý je riešený Markovým reťazcom a výsledky sú potvrdené simuláciou. Nakoniec porovnáme hodnotenie priepustnosti multimediálnu komunikáciu s použitím popísaného spôsobu výberu z frontov. Packet scheduling is one of the key mechanisms that will be used in network elements (switches and routers) for supporting real-time applications in broadband networks. Provision of Quality-of-Service (QoS) guarantees is an important and challenging issue in the design of integrated service packet networks. Scheduling disciplines are an integral part of the problem and are closely related to other aspects of network modeling such as traffic charaterization and QoS specification. In this paper we discuss two priority scheduling mechanisms: Head of Line (HoL) and preemptive discipline; for both, we propose an analytical description and present numerical results obtained by Markov chain. A novel mechanism called Dynamic-Weighted Fair Queuing (Dynamic-WFQ) which depends on the Classes of Service and the queue occupancies is proposed. An example of selection function is solved by Markov Chain and the results are validated by simulation. Finally, we compare the performance evaluation of multimedia communication scheduling algorithms described above.


Introduction
High speed networks are currently expected to carry a wide range of traffic types, including data, voice, broadcast and interactive video. Each of these traffic types requires a different service from the network. The design of networks that provide a good Quality of Service (QoS) to the large variety of expected users is an open and interesting research area.
Network performance is quite sensitive to the queue service discipline implemented at the output trunks of routers and switches. While most current implementations are of the FCFS type, recent works have shown that other disciplines in which the priorities are taken into account such as HoL, Preemptive discipline, WFQ (Weighted Fair Queuing) provide better performance [1] [6].
Traditionally, the FCFS discipline is used at each output port of switches or routers. Also space priorities (threshold and pushout mechanisms) are considered to differ loss probabilities but not the response time between different Classes of Service [11]. With emerging Classes of Service, this discipline must change and different classes should be placed in separate queues with single server. With FCFS discipline, there is no particular treatment given to packets from flows that are of higher priority or that are more delay sensitive. In addition, small packets can be queued behind long packets, then FCFS queuing discipline results in a larger average delay per packet than if the shorter packets were transmitted before the longer packets. In general, flows of larger packets get better service.
Hence, priorities may be assigned to the basis of traffic type. For example, WFQ is based on a hypothetical fluid-flow system called the Generalized Processor Sharing (GPS) [12] [13]. In GPS, if there are N non-empty queues, the server treats all of the N queues simultaneously at a rate proportional to their "reserved" weights. GPS is hypothetical because it can serve N queues simultaneously.
WFQ has received a lot of attention in the research community. Parekh's work [16] shows that in the absence of link-sharing, the end-to-end delay bound provided by WFQ [15] [16], which is the standard packet approximation algorithm of GPS, is very close to that provided by GPS. While WFQ maintains the bounded delay property of GPS, its fairness property is much weaker than GPS. [14], WFQ can introduce substantial inaccuracy in GPS approximation. This inaccuracy significantly affects besteffort traffic management, real-time traffic management, and linksharing algorithms. WFQ, also known as the Packet-by-Packet Generalized Processor Sharing, is the most weel-known packet approximation algorithm for GPS. In WFQ, when the server is ready to transmit the next packet at time , it picks, among all the packets queued in the system at , the first packet that would complete service in the corresponding GPS system if no additional packets arrive after .
A queuing discipline is nothing more than a means for choosing which packet in the different queues (multi-queues) will be served next [10] . This decision may be based on one or all of the following criteria: -different Classes of Service.
-lenght of different packets.
In our work a three Class-of-Service (CoS) system is considered with various traffic types. A network node is modelled by three-queue system, each of which is dedicated to a set of traffic type. Most of the traffic, particulary best effort, remains bursty. Therefore, the aggregation of Markov Modulated sources used in this study attemps to generate realistic burstiness properties.
In this paper, we introduce a new scheduling algorithm that depends on the both first points.
Analytical models of priority queues, both preemptive and nonpreemptive are well developped [18] [19], but are restricted to infinite queues. In the litterature, the performance of a switch or router that schedules a mixture of real-time, non-real-time and best-effort traffic is studied. The performance measurement of interest for real-time traffic is average delay, and for non-real-time traffic is loss probability.
In this paper, we consider two models. The first is described in section 2 and is represented by three queues with a single server. Three service algorithms are presented: HoL, preemptive discipline and dynamic-WFQ. Let us note that the results are obtained both using simulations and an analytical method based on Markov chain approach, for three disciplines mentioned above. In this section, a second model is presented too to compare the performance obtained by three mechanisms mentioned above (HoL, WFQ and Dynamic-WFQ). However the traffic characteristics are changed as well as the number of sources. In section 3, a complete description is given for this model. So, we present only the simulations results for this model. Finally, some concluding remarks are given in section 4.

Model Description
The system model is depicted in Figure 1. We consider three queues served by a single server. We assume that the arrival streams are independent Poisson processes with intensity i at queue i (i ϭ 1, 2, 3). The service time is exponentially distributed with parameter .
This model will be studied with three service disciplines (HoL, Preemptive and Dynamic-WFQ).

Head-of-Line (HoL)
In this scheduling policy, priority is always given to Class 1 traffic (real-time). Class 2 traffic is served only if there are no queued Class 1 packets. The last Class is served when both queues (queue 1 and queue 2) are empty. A service is not preempted. Within a class, packets are served with FCFS discipline.

Markovian Model
Markov chains are known to be powerful modelling tool for a variety of practical situations. For HoL discipline with three queues, the behaviour of the system described above is represented by a Markov Chain.
The state vector of this Markov chain is given by n ϭ (n 1 , n 2 , n 3 , F) where n i is the number of customers at queue i, and Flag F takes four values as follows: The decision of the server depends on the value of the Flag. So the following algorithm shows how the transitions take place: After generating Q matrix, we compute the steady state probabilities using Arnoldi's method [5].
is the probability that the present state is j and the state vector of these probabilities is ϭ ( 0 ; 1 ; … N ). Let j ϭ (n 1 ; n 2 ; n 3 ; F) be a state of Markov chain, and the probability that there is x customers in queue i is given as follows: Note that the probability that there is x customers in queue i is P i (x).

Results
This section gives the simulation and analytical results concerning the queue length distribution (probability density function (pdf)) and the loss probability. These parameters depend on the buffer capacity and on the distribution of global traffic. The results are obtained for 1 ϭ 0.27 packets/unit time 2 ϭ 0.27 packets/unit time; 3 ϭ 0.26 packets/unit time. Simulation model is writen in C language programing. Figure 2 shows that Markovian results are close to those obtained by simulation.
It is clear that HoL gives good performance for Class 1. Figure 3 presents the loss probabilities vs the proportion of traffic types obtained by simulation and by analytical method for real-time and non-real-time traffics. It appears that the loss probability increases when the Class 1 load increases too.
The second curve in Figure 3 shows the loss probabilty of Class 2 as a function of traffic load (Class1 and Class 2). We note that the Class 1 has an impact on the Class 2.

Preemptive discipline
Preemptive discipline gives absolute high priority to traffic of Class 1, because the traffic which has a high priority preemptes the customer with low priority in service. Therefore, in HoL discipline, they are served after the customer having lower priority has finished his service. For preemptive discipline, three cases are usually identified: -Preemptive resume: customer picks up from where he left off.
-Preemptive repeat without resampling: when customer reenters service after having been preempted, he starts with the same total service time that he has lost previously. -Preemptive repeat with resampling: this case assumes that a new service time is chosen for our reentering customer.
In this study, Preemptive resume is considered. In context of integrated service in Frame Relay, some constructor uses this scheme in the switches. The head of sub-frames that mother frame is preempted, are calculated automatically.

Markovian Model
In this section, we study the model presented in Figure 1 under Preemptive discipline using Markov chain approach. The state vector is given by n ϭ (n 1 , n 2 , n 3 , f 1 , f 2 , f 3 ) where n i is the number of customers in queue i, and the value of f i ʦ {0, 1} select which customer will be served.
Transition rates are given in Figure 4. We compute steady state probabilities of this Markov chain using Arnoldi's method.

Results
We note that the results obtained by solving of Markov chain are close to those obtained by simulation. These results are shown in Figure 5, and are obtained for the same parameters used previ- ously. We note also that Class 1 has greater loss when the HoL discipline are used because we can not preempt the service of lower priority customers. Therefore, loss probability of Class 2 depends on the proportion of each traffic type. Then, when proportion of Class 1 or Class 2 traffics increases, losses with preemptive discipline will be smaller than those with HoL discipline. Table 1 shows that the sejourn time increases when the proportion of traffic corresponding increases.
The results obtained using the simulation and an analytical method (HoL and Preemptive), have 1 % relative error.

Dynamic-WFQ
From the discussion in the previous sections, it is seen clearly that the adapting scheduling algorithm based on queue occupancies and using weight for different Classes of Service can be benifical to network performance. Here, we present Dynamic-WFQ discipline in which we introduce the selection function which plays an important role for the packet transmission scheduling. This function computes a number of packets from different queues that will be transmitted to virtual queue in the next cycle ( Figure 6).
A cycle can be determined as the total time spent to transmit all packets in the virtual queue. The behaviour of this function depends on two parameters (queue occupancies and priorities). When these parameters increase, the function must increase too.
The selection function f(c i ) is given as follows: where m i is a packet number of Class i, QSize is the total packets that will be transmitted next in the virtual queue and oc i is queue i occupancy.
The packets already in the separate queues wait to be chosen to transmit (by the selection function) later. This service scheduling can be seen as cyclic service with priority discipline, but the packet numbers to transmit from each queue can be changed in each cycle. Packet numbers are calculated by the selection function.

Markovian Model
The state vector of Markov chain of Dynamic-WFQ is given by (n 1 , n 2 , n 3 , x 1 , x 2 , x 3 ) where n i is the number of customers in queue i, and x i is the number of class i customers in virtual queue.
The selection function starts when Α When all queues are empties, the first packet that arrives, transits directly to virtual queue.

Results
Given the number of states of related Markov chain increasing as function of buffer capacities, the computation time of the steady state probabilities becomes considerably long.
Therefore, we have reduced buffer sizes to N 1 ϭ N 2 ϭ N 3 ϭ 9 in order to show that Markov results are close to simulation results. These results are shown in Figure 7.
In order to show the real performance of Dynamic-WFQ algorithm, we compare queue length distribution intended in Figure 8 of HoL and Dynamic-WFQ algorithms. We observe that the buffer occupancies for class 1 (higher priority) is longer in the case of Dynamic-WFQ scheduling than HoL scheduling. On the contrary, for both classes with lower priorities, Dynamic-WFQ provide better performance.

Model
In multimedia communication, multiple data streams need to be multiplexed on a single transmission channel. Multiplexing of data streams using such simple mechanism may have undesirable results for multimedia real-time traffic. In this section, we analyze and compare three mechanisms with priority. The assumptions considered for the model under study aim to represent the context of a high speed Wide Area Network (WAN). This implies to take into account non negligeable transmission times between the sources, the bottleneck and the destinations.
We consider that in such backbone, the connectivity is reduced, thus we have modelled three groups of numerous sources whose traffics go through three high speed links (622 Mbit/s). Each set of sources includes numerous sources of different types of traffic (voice, videoconference, video, data with QoS, data best effort). The traffic profiles are disrupted by background traffics which transported in the same links but have other destinations.
This configuration depicted in Figure 9, is intended to be a test for the comparison between the three service scheduling disciplines described above, in the presence of different traffic types and different number of sources.

Traffic Characterization
We have three sets of sources which represent different traffic types and background flows that represent ᎏ 2 3 ᎏ of global traffic. The drawback of this method is that it requires a realistic network simulator, and considerable amount of computing time. However, we approximate the set of background flows by using a server with vacation in multiplexer for each set of sources. Since the parasit proportion is ᎏ 2 3 ᎏ of all traffic, the idle time of server is ᎏ 0.8 3 and working time is ᎏ 0.8 3 * 1 ᎏ (0.8 is load). These periods have an exponential distribution. Figure 10 shows the probability density function of the number of packets in the multiplexer using real model with classical server, and other method with vacation server using different time. We note that 0.01 second, which represents the sum of idle time and working time, is the best approximation. idle time ϭ 0.00267 and working time ϭ 0.00733. In order to understand the effect of different mechanisms, we study a scenario ( Figure 9) using a simulator written in C language. As shown in Figure 9, the simulated network consists of three multiplexers with vacation server which are linked to a router. The router is modeled by three queues with a single server using a priority scheduling mechanisms. The following table shows the parameters used in the model.

Results
This section gives the simulation results as the queue length distribution and voice end-to-end delay.
It appears that the end-to-end delay for voice traffic using Dynamic-WFQ mechanism is near to delay obtained by WFQ and HoL mechanisms. We remark that the peaks corresponding to 20 s in Figure 11, are due to the bursty arrivals. In all case, the endto-end delay is less than 11 ms. The parameters which are taken in this section are: pr 1 ϭ 0.6, pr 2 ϭ 0.3, pr 3 ϭ 0.1 and w ϭ 0.35. On the other hand, Figures 12 and 13 show the comparison of queue 2 and 3 packet distribution using different scheduling mechanisms. In Figure 12 we note that the line graphes which represent the pdf of visioconference traffic using HoL, WFQ and  Dynamic-WFQ, have the similair behaviour. Figure 13 shows the pdf of class 2 and Best-effort traffics, using Dynamic-WFQ and the results are better than those using HoL or WFQ disciplines.

Conclusion
In our studies we observed that the priority queuing mechanisms cannot isolate the impact of load between traffic streams. The basic property of assigning the bandwidth first to the high priority traffics help to maintain short delay and delay variance for high priority queues. With WFQ, the absolute weight are given for different traffic types. When congestion occurs for no real-time traffic, it remains for long time because the real-time traffic have a higher weight. The basic idea in Dynamic-WFQ is to change weight each cycle.

Fig. 13 Video and best-effort traffics PDF
Then, the absolute weight is given to each class (w i * pr i ), and the remain proportion of bandwidth is shared. This sharing depends on queue occupancies. The congestion level in nodes (for no realtime traffics) is reduced.
As described in [6], FCFS scheduling mechanism which is used in most of the transport protocols today is not suitable for supporting the multimedia data streams. The real-time requirements as audio and video traffic, cannot be supported well in FCFS. It is shown in [14] that the inaccuracy introduced by WFQ can (a) signifcantly increases the delay bound for real-time sessions under hierarchical link-sharing; (b) cause end-to-end feedback algorithms for best-effort traffic to oscillate.
As shown above, Dynamic-WFQ using a simple linear function is performant. In future work, we will focus on an analytical method to obtain the better parameters such a w and pr i . PDF packet number in the buffer "video_hol" "video_wfq" "video_fon" "best_hol" "best_wfq" "best_fon"