Stochastics and Statistics
On a dual queueing system with preemptive priority service discipline

https://doi.org/10.1016/j.ejor.2003.06.024Get rights and content

Abstract

In this paper, we use matrix–analytic methods to construct a novel queueing model called the dual queue. The dual queue has the additional feature of a priority scheme to assist in congestion control. Detailed structure of the infinitesimal generator matrix is derived and used in the solution process. Using a computational algorithm, which utilises a combination of iterative and elementary matrix techniques, the steady state solution is obtained for all queues with a finite buffer. Finally, we present numerical examples to illustrate the algorithm.

Introduction

The dual queue was designed to improve the performance characteristics for customers in communication networks. Specifically, it was designed to not only improve existing notions of fairness, but also to maximise the number of customers who receive good service. In [10] the new scheduling discipline called the dual queue was proposed and was shown to be superior in many criteria over existing FIFO and fair queueing schemes in a series of packet simulations. This work has recently been extended to include wireless local area networks [19], and with some minor adjustments, the dual queue scheme has again proved superior to existing schemes using simulated packet traffic. Where these two models differ from the one presented in this paper is that we include a class-based priority scheme and discard the time-out criteria used in [10], [19]. Much of the exhaustive analysis in the theoretical arena has been on modifications of the basic two finite queues or buffers. For example, length threshold [11], cyclic servers [9], synchronisation queues [20], Bernoulli schedules [13], Bernoulli schedules with switching times [8] and dynamic server assignment [5] are some of the modifications to the basic dual queue model analysed. None of these however, include a priority scheme. Nevertheless, priority schemes have been used throughout many communications models [14], including wireless packet communications [17]. We have shown through extensive simulations in [2], [3] that the dual queue with a priority scheduling scheme for multi-classes of customers clearly outperforms multi-classes of customers alone in a single queue for both priority and non-priority schemes.

In the model proposed in this paper, two classes of customers arrive to the dual queueing system as two independent Poisson processes. The class of customers labelled 1 (the high class) has a mean arrival rate λ1 and the other class, labelled 2 (the low class), has mean arrival rate λ2. The dual queue is partitioned into the primary queue and secondary queue. There is a single server at the primary queue dispensing an exponentially distributed service time with rate μi to class i customers, i=1, 2. Both queues have finite capacity. The primary queue employs a preemptive priority service discipline where class 1 customers have priority over class 2 customers. When an arriving customer finds the primary queue full, he waits in the secondary queue (provided it isn't full) which has no service facility and only serves as a holding queue for the overloaded primary queue. If both queues are full, an arriving customer is lost to the system. In the secondary queue, customers also arrange themselves in order of priority, with class 1 customers ahead of class 2 customers. Once a space is vacant in the primary queue, the head of the line in the secondary queue joins the primary queue. A schematic diagram describing the dual queues is given below in Fig. 1, where Nq is the number in the queue (including one in service), and ci is the capacity of queue i,i=1, 2. In the sequel, we refer to the system described as a multiple priority dual queue (MPDQ). This system was devised to partition a single (M1+M2/M/1/c1) into two queues with finite waiting room so some lower class traffic would have an opportunity to pass through the system even with the existence of a higher class customer in the combined system. For example, if the primary queue is full of class 2 customers, then any arriving class 1 customer cannot enter service or enter the primary queue and must wait in the secondary queue until a space becomes vacant in the primary queue. This model brings together the ideas of differentiated classes of customers as proposed in [18] with the improved quality of service of the simple dual queue design.

The remarkable ability to solve complicated queueing systems using matrix–analytic methods has been explored in detail in [12], [15], [16]. Also, many queueing systems are solved using computational recursive algorithms (cf. [1], [4], [6], [7]). In this paper, a combination of the two is used to provide a novel approach to obtaining the solution of the steady-state probabilities to the dual queue discussed above. If the infinitesimal generator can be presented in a block tridiagonal form, then this will, in principle, lead to an explicit solution of the steady-state distribution through simple algorithms. While based on this idea, the steady-state distribution obtained in this paper is not derived in the conventional way. This is due to the fact that the states we described for the dual queues do not render the infinitesimal generator into a workable block tridiagonal form. Also, not all submatrices are invertible, specifically the ones representing transitions between the primary and secondary queues. A computational algorithm will be devised which will circumvent these difficulties and produce an approach to solving dual queues of this type in a systematic way. We remark here that the general approach we have adopted is similar to that of [21], [22] in their analysis of a single finite capacity queue with non-preemptive priority scheduling.

Section 2 describes the states of the MPDQ system and its corresponding infinitesimal generator matrix. We then exhibit the system of vector–matrix linear equations which are required to obtain solution of the steady-state distribution in Section 3. In Section 4, we present a computational algorithm to solve these systems of equations and finally in Section 5, we demonstrate the algorithm by applying it to some examples.

In the sequel, Rn refers to the Euclidean space of dimension n and v̄t refers to the transpose of a vector . Also, the symbol 1{} denotes the indicator function of the set {}.

Section snippets

State space

The process describing the states of our MPDQ system is a homogeneous ergodic Markov process which takes values in a state space S. S can be partitioned in two distinct ways, corresponding to the case when the secondary queue is empty and when it is not empty respectively. In the first case, define S1={(i,j):0⩽i+jc1} where the first number of the pair i=number of customers of class 1 and j=number of customers of class 2. In the second case, define S2={(i,i,j):0⩽i+jc2,i=0,1,…,c1} where i

Linear system of steady state distributions

To establish the general technique used later in the computational algorithm, we will first establish the system of linear equations using the generic matrices Λi, Πi and Ωi. Letαit=πit,πi,0t,πi,1t,…,πi,c2t,where i=0,…,c1. Therefore πt=(α0t1t,…,αc1t) and the system (1) can be described byα0t1t,…,αc1tA=0.Expanding the above, we obtain the following system of linear equations:1{i⩾1}i−1tΠi−1)+αitΛi+1{i<c1}i+1tΩi+1)=0,where i=0,…,c1.

From (15) we obtain c1+1 equations in vector–matrix form.

Computational algorithm

In this section, we develop the computational algorithm which will be used to solve the MPDQ. While the process is quite complicated, the idea is based on the structures given by (15). To illustrate the idea, let us consider a MPDQ system with queue 1 and queue 2 each with capacity 3. The system of generic equations given by (15) gives usα0tΛ01tΩ1=0,α0tΠ01tΛ12tΩ2=0,α1tΠ12tΛ23tΩ3=0,α2tΠ23tΛ3=0.

The algorithm is based on solving all probabilities within αc1 first. Once this is

Numerical examples

The algorithm given in the previous sections was used to obtain the steady state probabilities for two small dual queueing systems with c1=c2=2 and c1=5, c2=3 under various arrivals and service rates. We use the following performance statistics to compare between the performances of these systems:

  • (i)

    The utilisation, or probability of finding a busy server,πB=1−π0,0.

  • (ii)

    The probability of finding only class 1 customers in the system,π1=∑i=1c1πi,0+∑j=1c2πc1,j,0.

  • (iii)

    The probability of finding only class 2

Conclusion

In this paper, we have introduced the MPDQ with preemptive priority service scheme. This type of queueing system has been shown here, and in other works [2], [3], to outperform single queueing systems for multi-classes of customers. Through a judicious labeling of the states of the system, we are able to provide a new recursive algorithm for solving the linear system of equations governing the steady-state probabilities. Even though the algorithm is intricate at several stages of the process, a

References (22)

  • O. Boxma et al.

    Dynamic server assignment in a two-queue model

    European Journal of Operational Research

    (1997)
  • I. Cidon et al.

    Recursive computation of steady-state probabilities in priority queues

    Operations Research Letters

    (1990)
  • D. Wagner

    Waiting times of a finite-capacity multi-server model with non-preemptive priorities

    European Journal of Operational Research

    (1997)
  • G. Balbo, S. Bruell, S. Ghanta, Modelling priority schemes, in: Proceedings of ACM Sigmetrics Conference on Measurement...
  • A. Bedford et al.

    Simulation studies of waiting time approximation for the multi- priority dual queue (MPDQ) with finite waiting room and non-preemptive scheduling

  • A. Bedford et al.

    Simulation studies on the performance characteristics of multi-priority dual queue (MPDQ) with finite waiting room and non-preemptive scheduling

  • S. Bruell et al.

    Computational Algorithms for Closed Queueing Networks

    (1980)
  • I. Cidon et al.

    Analysis of packet loss processes in high-speed networks

    IEEE Transactions on Information Theory

    (1993)
  • W. Feng et al.

    A two-queue model with Bernoulli service schedule and switching Times

    Queueing Systems

    (1998)
  • F. Hartanto et al.

    Protective buffer policies at ATM switches

    IEEE Conference on Communications

    (1995)
  • D. Hayes et al.

    Quality of service driven packet scheduling disciplines for real-time applications: Looking beyond fairness

    IEEE Infocom

    (1999)
  • Cited by (5)

    • An evolutionary simulation-based optimization approach for dispatching scheduling

      2013, Simulation Modelling Practice and Theory
      Citation Excerpt :

      A non-preemptive queuing discipline requires that a job that has begun service to be completed without interruption should a job with a higher priority index arrive at the system. Preemptive systems have been widely considered, [5,33,52,56,58] as have non-preemptive systems [28,39,45]. These papers note that preemptive and non-preemptive queuing disciplines are also widely applicable in different fields of computer science, telecommunication networks and production processes.

    • Waiting time analysis of the multiple priority dual queue with a preemptive priority service discipline

      2006, European Journal of Operational Research
      Citation Excerpt :

      Finally, we combine the two queues into a single queue with capacity c = 5 but with the other parameters held fixed to compare its performance with that of the dual queue. The next table displays the stationary distribution πi,j which were obtained using a similar technique to that used in [3]: Combining these with the probabilities πi,j displayed above give an expected waiting time of 1.066 units for a class 2 customer.

    • Quality of service in networks with prioritised traffic involving the Multi-Priority Dual Queue

      2004, International Journal of Computational Engineering Science
    View full text