## A Polling Model with Multiple Priority Levels ∗

M.A.A. Boon †

marko@win.tue.nl

I.J.B.F. Adan † iadan@win.tue.nl

O.J. Boxma †

boxma@win.tue.nl

August, 2009

## Abstract

In this paper we consider a single-server cyclic polling system. Between visits to successive queues, the server is delayed by a random switch-over time. The order in which customers are served in each queue is determined by a priority level that is assigned to each customer at his arrival. For this situation the following service disciplines are considered: gated, exhaustive, and globally gated. We study the cycle time distribution, the waiting times for each customer type, the joint queue length distribution of all priority classes at all queues at polling epochs, and the steady-state marginal queue length distributions for each customer type.

Keywords: Polling, priority levels, queue lengths, waiting times

## 1 Introduction

A polling model is a single-server system in which the server visits N queues Q , . . . , Q 1 N in cyclic order. Customers that arrive at Q i are referred to as type i customers. The special feature of the model considered in the present paper is that, within a customer type, we distinguish multiple priority levels. More specifically, we study a polling system which consists of N queues, Q , . . . , Q 1 N , and K i priority levels in Q i . The exhaustive, gated and globally gated service disciplines are studied.

Our motivation to study a polling model with priorities is that scheduling through the introduction of priorities in a polling system can improve the performance of the system significantly without having to purchase additional resources [27]. Priority polling systems can be used to study the Bluetooth and IEEE 802.11 wireless LAN protocols, or scheduling policies at routers and I/O subsystems in web servers. For example, Quality-of-Service (QoS) has become a very important issue in wireless LAN protocols because delays in responses or data transmissions do not have a major impact on, e.g., web browsing or email traffic, but video transmissions and Voice over Wireless LAN (VoWLAN) are very sensitive to delays or loss of data. The 802.11e amendment introduces different priority levels to differentiate between

∗ The research was done in the framework of the BSIK/BRICKS project, and of the European Network of Excellence Euro-FGI.

† Eurandom and Department of Mathematics and Computer Science, Eindhoven University of Technology, P.O. Box 513, 5600MB Eindhoven, The Netherlands

types of data in order to improve QoS for streaming traffic. In production environments the introduction of priorities can lead to smaller mean waiting times (see, e.g., [28]). It is shown in [1, 27] that assigning highest priority to jobs with a service requirement below a certain threshold level may reduce overall mean waiting times. Priority polling models also can be used to study traffic intersections where conflicting traffic flows face a green light simultaneously; e.g. traffic which takes a left turn may have to give right of way to conflicting traffic that moves straight on, even if the traffic light is green for both traffic flows. The last application area of polling models with priorities that we mention here, is health care (see, e.g., [9]).

Although there is an extensive amount of literature available on polling systems (see, e.g., the surveys of Takagi [24], Levy and Sidi [19], and Vishnevskii and Semenova [26]), very few papers treat priorities in polling models. Most of these papers only provide approximations or focus on pseudo-conservation laws [13, 22]. Wierman, Winands and Boxma [27] have obtained exact mean waiting time results using the Mean Value Analysis (MVA) framework for polling systems, developed in [29]. The MVA framework can only be used to find the first moment of the waiting time distribution for each customer type, and the mean residual cycle time. In a recent report [1] we have studied a polling model with two queues that are served according to the exhaustive, gated or globally gated service discipline. The first of these two queues contains customers of two priority classes. The main contribution of [1] is the derivation of Laplace-Stieltjes Transforms (LSTs) of the distributions of the marginal waiting times for each customer type; in particular it turned out to be possible to obtain exact expressions for the waiting time distributions of both high and low priority customers at a queue of a polling system. Probability Generating Functions (GFs) have been derived for the joint queue length distribution at polling epochs, and for the steady-state marginal queue length distribution of the number of customers at an arbitrary epoch. In the present paper these results are generalised to a polling model with N queues and K i priority levels in Q i ( i = 1 , . . . , N ). The actual probability distributions can be obtained by numerical inversion of the LSTs and GFs. A very efficient technique for numerical inversion of GFs and LSTs in polling models is discussed in [8].

The present paper is structured as follows: Section 2 gathers known results of nonpriority polling models which we shall need in the present study. Sections 3 (gated and exhaustive), and 4 (globally gated) give new results on the priority polling model. In each of the sections we successively discuss the joint queue length distribution at polling epochs, the cycle time distribution, the marginal queue length distributions and waiting time distributions. The mean waiting times are given at the end of each section.

## 2 The nonpriority polling model

The model that is considered in this section, is a polling model with N queues ( Q , . . . , Q 1 N ) without priorities. Each queue is served according to either the gated, or the exhaustive service discipline. The gated service discipline states that during a visit to Q i , only those type i customers are served who are present at the moment that the server arrives at Q i . All type i customers that arrive during the visit to Q i will be served during the next cycle. A cycle is the time between two successive visit beginnings (or completions) at a queue. The exhaustive service discipline states that when the server arrives at Q i , all type i customers that

are present at that polling epoch, and all type i customers that arrive during this particular visit to Q i , are served until no type i customer is present in the system. In Section 4 we also consider the globally gated service discipline, which is similar to the gated service discipline, except for the fact that the symbolic gate is being set at the beginning of a cycle for all queues. This means that during a cycle only those customers will be served that were present at the beginning of that cycle.

Customers of type i arrive at Q i according to a Poisson process with arrival rate λ i . Service times can follow any distribution. The LST of the distribution of the generic service time B i of type i customers is denoted by β i ( ). · The fraction of time that the server is serving customers of type i equals ρ i := λ E B i ( i ). Switches of the server from Q i to Q i +1 (all indices modulo N ), require a switch-over time S i . The LST of this switch-over time distribution is denoted by σ i ( ). · The fraction of time that the server is working (i.e., not switching) is ρ := ∑ N i =1 ρ i . We assume that ρ &lt; 1, which is a necessary and sufficient condition for the steady state distributions of cycle times, queue lengths and waiting times to exist. We assume that all the usual independence assumptions apply to the model under consideration.

This model has been extensively investigated. Tak´ acs [23] studied this model, but with only two queues, without switch-over times and only with the exhaustive service discipline. Cooper and Murray [11] analysed this polling system for any number of queues, and for both gated and exhaustive service disciplines. Eisenberg [12] obtained results for a polling system with switch-over times (but only exhaustive service) by relating the GFs of the joint queue length distributions at visit beginnings, visit endings, service beginnings and service endings. Resing [21] and Fuhrmann [14] both pointed out the relation between polling systems and Multitype Branching Processes (MTBPs). Resing [21] considers the use of MTBPs with immigration in each state, which makes it possible to relate polling systems with and without switch-over times. His results can be applied to polling models in which each queue satisfies the following property:

Property 2.1 If the server arrives at Q i to find k i customers there, then during the course of the server's visit, each of these k i customers will effectively be replaced in an i.i.d. manner by a random population having probability generating function h i ( z , . . . , z 1 N ), which can be any N -dimensional probability generating function.

We use this property, and the relation to Multitype Branching Processes, to find results for our polling system with multiple priority levels, and gated, globally gated, and exhaustive service discipline. Notice that, unlike the gated and exhaustive service disciplines, the globally gated service discipline does not satisfy Property 2.1. But the results obtained by Resing also hold for a more general class of polling systems, namely those which satisfy the following (weaker) property that is formulated in [2]:

Property 2.2 If there are k i customers present at Q i at the beginning (or the end) of a visit to Q π i ( ) , with π i ( ) ∈ { 1 , . . . , N } , then during the course of the visit to Q i , each of these k i customers will effectively be replaced in an i.i.d. manner by a random population having probability generating function h i ( z , . . . , z 1 N ), which can be any N -dimensional probability generating function.

Globally gated and gated are special cases of the synchronised gated service discipline, which states that only customers in Q i will be served that were present at the moment that the

server reaches the 'parent queue' of Q i : Q π i ( ) . For gated service, π i ( ) = i , for globally gated service, π i ( ) = 1. The synchronised gated service discipline is discussed in [18], but no observation is made that this discipline is a member of the class of polling systems satisfying Property 2.2 which means that results as obtained in [21] can be extended to this model.

Borst and Boxma [3] combined the results of Resing [21] and Eisenberg [12] to find a relation between the GFs of the marginal queue length distribution for polling systems with and without switch-over times, expressed in the Fuhrmann-Cooper queue length decomposition form [15].

## 2.1 Joint queue length distribution at polling epochs

As discussed in [21], polling systems which satisfy Property 2.1 can be modelled as a MTBP. If the polling model has switch-over times, as is assumed in the present paper, we are dealing with a MTBP with immigration in each state. The immigration is formed by the customers that arrive during the switch-over times and all of their descendants. Polling models without switch-over times can be modelled as a MTBP with immigration in state zero (when the server is idle) only. Although the present paper studies a polling model with switch-over times, it is possible to relate results from a model with switch-over times to a model without switch-over times, as is shown in [3].

glyph[negationslash]

glyph[negationslash]

For now, we choose the beginning of a visit to Q 1 as start of a cycle. Property 2.1 states that each customer present at the beginning of a cycle will be 'replaced' by customers of type 1 , . . . , N during that cycle according to the probability generating function h i ( z , . . . , z 1 N ), which depends on the service discipline. If Q i ( i = 1 , . . . , N ) receives gated service, a customer of type i present at the beginning of the cycle is replaced by the type 1 , . . . , N customers that arrive during his service: h i ( z , . . . , z 1 N ) = β i ( ∑ N j =1 λ j (1 -z j )). For exhaustive service, a type i customer will not just be replaced by all type 1 , . . . , N customers that arrive during his service, but also all customers that arrive during the service of all type i customers that have arrived during the service of this tagged customer, etc., until no type i customer is present in the system. The consequence is that this type i customer has been replaced by the type j customers ( j = 1 , . . . , N ; j = ) that have arrived during the busy period (BP) i of type i customers that is initiated by the particular type i customer. This results in the expression h i ( z , . . . , z 1 N ) = π i ( ∑ j = i λ j (1 -z j )), where π i ( ) is · the LST of a BP distribution in an M/G/ 1 system with only type i customers, so it is the root in (0 , 1] of the equation π i ( ω ) = β i ( ω + λ i (1 -π i ( ω ))), ω ≥ 0 (cf. [10], p. 250).

In order to find the joint queue length distribution at the beginning of a cycle, we have to define the immigration GF and the offspring GF analogous to [21]. The first generation of offspring consists of the customers that have effectively replaced the customers present at the beginning of the cycle. The offspring GFs for queues N,N -1 , . . . , 1 are given below.

$$f ^ { ( N ) } ( z _ { 1 }, \dots, z _ { N } ) & = h _ { N } ( z _ { 1 }, \dots, z _ { N } ), \\ f ^ { ( i ) } ( z _ { 1 }, \dots, z _ { N } ) & = h _ { i } ( z _ { 1 }, \dots, z _ { i }, f ^ { ( i + 1 ) } ( z _ { 1 }, \dots, z _ { N } ), \dots, f ^ { ( N ) } ( z _ { 1 }, \dots, z _ { N } ) ), \quad i = 1, \dots, N - 1.$$

We define the GF for the n th generation of offspring recursively:

$$f _ { n } ( z _ { 1 }, \dots, z _ { N } ) & = ( f ^ { ( 1 ) } ( f _ { n - 1 } ( z _ { 1 }, \dots, z _ { N } ) ), \dots, f ^ { ( N ) } ( f _ { n - 1 } ( z _ { 1 }, \dots, z _ { N } ) ) ), \\ f _ { 0 } ( z _ { 1 }, \dots, z _ { N } ) & = ( z _ { 1 }, \dots, z _ { N } ).$$

The immigration GF is the GF of the joint distribution of the numbers of customers that are present at the beginning of a cycle due to the immigration during the switch-over times of the previous cycle. These customers can be divided into two groups: the customers that arrived during a switch after the service of their queue, and offspring of customers that arrived during a switch before the service of their queue. The immigration GFs are:

$$\hat { g } ^ { ( N ) } ( z _ { 1 }, \dots, z _ { N } ) & = \sigma _ { N } ( \sum _ { j = 1 } ^ { N } \lambda _ { j } ( 1 - z _ { j } ) ), \\ g ^ { ( i ) } ( z _ { 1 }, \dots, z _ { N } ) & = \sigma _ { i } ( \sum _ { j = 1 } ^ { i } \lambda _ { j } ( 1 - z _ { j } ) + \sum _ { j = i + 1 } ^ { N } \lambda _ { j } ( 1 - f ^ { ( j ) } ( z _ { 1 }, \dots, z _ { N } ) ) ), \quad i = 1, \dots, N - 1.$$

The total immigration GF is the product of these GFs:

$$g ( z _ { 1 }, \dots, z _ { N } ) = \prod _ { i = 1 } ^ { N } g ^ { ( i ) } ( z _ { 1 }, \dots, z _ { N } ).$$

This leads to the following recursive expression for the GF of the steady-state joint queue length at the beginning of a cycle (starting with a visit to Q 1 ) :

$$P _ { 1 } ( z _ { 1 }, \dots, z _ { N } ) & = P _ { 1 } ( f _ { 1 } ( z _ { 1 }, \dots, z _ { N } ) ) g ( z _ { 1 }, \dots, z _ { N } ). & ( 2. 1 )$$

Resing [21] shows how (2.1) can be used to obtain moments from the marginal queue length distribution at the beginning of a cycle. It is shown in [20] that iteration of (2.1) leads to

$$P _ { 1 } ( z _ { 1 }, \dots, z _ { N } ) = \prod _ { n = 0 } ^ { \infty } g ( f _ { n } ( z _ { 1 }, \dots, z _ { N } ) ).$$

Resing [21] proves that this infinite product converges if and only if ρ &lt; 1.

We can relate the steady-state joint queue length distribution at other visit beginnings and endings to P 1 ( z , . . . , z 1 N ). We denote the GF of the joint queue length distribution at a visit beginning to Q i by V b i ( ), so · V b 1 ( ) = · P 1 ( ). · The queue length GF at a visit completion to Q i is denoted by V c i ( ). · The following relation holds:

$$V _ { b _ { i } } ( z _ { 1 }, \dots, z _ { N } ) = V _ { c _ { i - 1 } } ( z _ { 1 }, \dots, z _ { N } ) \sigma _ { i - 1 } ( \sum ^ { N } \lambda _ { j } ( 1 -$$

$$( 2. 3 )$$

$$V _ { b _ { i } } ( z _ { 1 }, \dots, z _ { N } ) & = V _ { c _ { i - 1 } } ( z _ { 1 }, \dots, z _ { N } ) \sigma _ { i - 1 } ( \sum _ { j = 1 } ^ { N } \lambda _ { j } ( 1 - z _ { j } ) ) \\ & = V _ { b _ { i - 1 } } ( z _ { 1 }, \dots, z _ { i - 2 }, h _ { i - 1 } ( z _ { 1 }, \dots, z _ { N } ), z _ { i }, \dots, z _ { N } ) \sigma _ { i - 1 } ( \sum _ { j = 1 } ^ { N } \lambda _ { j } ( 1 - z _ { j } ) ). \quad ( 2. 3 )$$

Since V b 1 ( ) is known, applying (2.3) · i -1 times expresses V b i ( ) into · V b 1 ( ) = · P 1 ( ). · Applying (2.3) N times gives expression (2.1).

## 2.2 Cycle time

The cycle time, starting at a visit beginning to Q 1 , is the sum of the visit times to Q , . . . , Q 1 N , and the switch-over times S , . . . , S 1 N which are independent of the visit times. Let θ i ( ) denote · the LST of the distribution of the time that the server spends at Q i due to the presence of one type i customer there. For gated service θ i ( ) = · β i ( ), for exhaustive service · θ i ( ) = · π i ( ). · Furthermore, we define

$$\psi _ { i } ( \omega ) & = \omega + \lambda _ { i } ( 1 - \theta _ { i } ( \omega ) ), & i = 1, \dots, N, \\ \psi _ { i, N } ( \omega ) & = \psi _ { i + 1 } ( \psi _ { i + 2 } ( \dots ( \psi _ { N } ( \omega ) ) ) ), & i = 1, \dots, N - 1, \\ \psi _ { N, N } ( \omega ) & = \omega.$$

It is shown in [7] that the LST of the distribution of the cycle time C 1 , γ 1 ( ), · is related to P 1 ( ) as follows: ·

$$\gamma _ { 1 } ( \omega ) = \prod _ { i = 1 } ^ { N } \sigma _ { i } ( \psi _ { i, N } ( \omega ) ) \, P _ { 1 } ( \theta _ { 1 } ( \psi _ { 1, N } ( \omega ) ), \dots, \theta _ { N } ( \psi _ { N, N } ( \omega ) ) ).$$

In the present paper we need expressions for the LST of the distribution of the cycle time starting at the beginning of a visit to an arbitrary queue. We denote the cycle time starting with a visit beginning to Q j by C j , and its LST by γ j ( ). · It is straightforward to see that

$$\gamma _ { j } ( \omega ) = \prod _ { i = 1 } ^ { N } \sigma _ { i } ( \psi _ { i, j - 1 } ( \omega ) ) \, V _ { b _ { j } } ( \theta _ { 1 } ( \psi _ { 1, j - 1 } ( \omega ) ), \dots, \theta _ { N } ( \psi _ { N, j - 1 } ( \omega ) ) ),$$

where we use the following notation:

$$\psi _ { i, j } ( \omega ) & = \psi _ { i + 1 } ( \dots ( \psi _ { j } ( \omega ) ) ), & j & = 1, \dots, N ; i < j, \\ \psi _ { i, j } ( \omega ) & = \psi _ { i + 1 } ( \dots ( \psi _ { N } ( \psi _ { 1 } ( \dots ( \psi _ { j } ( \omega ) ) ) ) ), & j & = 1, \dots, N ; i > j, \\ \psi _ { j, j } ( \omega ) & = \omega, & j & = 1, \dots, N.$$

When analysing a queue with exhaustive service, it is convenient to define C ∗ j to be the time between two successive visit completions to Q j . The LST of its distribution, denoted by γ ∗ j ( ), · is:

$$\gamma _ { j } ^ { * } ( \omega ) = \prod _ { i = 1 } ^ { N } \sigma _ { i } ( \psi _ { i, j } ^ { * } ( \omega ) ) \, V _ { c _ { j } } ( \theta _ { 1 } ( \psi _ { 1, j } ( \omega ) ), \dots, \theta _ { N } ( \psi _ { N, j } ( \omega ) ) ),$$

with V c j ( z , . . . , z 1 N ) = V b j ( z , . . . , z 1 j -1 , h j ( z , . . . , z 1 N ) , z j +1 , . . . , z N ), and glyph[negationslash]

$$\psi _ { i, j } ^ { * } ( \omega ) & = \psi _ { i, j } ( \omega ), & j & = 1, \dots, N ; i \neq j, \\ \psi _ { j, j } ^ { * } ( \omega ) & = \psi _ { j + 1 } ( \dots ( \psi _ { N } ( \psi _ { 1 } ( \dots ( \psi _ { j } ( \omega ) ) ) ) ), & j & = 1, \dots, N.$$

## 2.3 Marginal queue lengths and waiting times

We denote the GF of the steady-state marginal queue length distribution of Q i at the visit beginning by ˜ V b i ( z ) = V b i (1 , . . . , 1 , z, 1 , . . . , 1), with z as i th argument. Analogously we define

˜ V c i ( ). · It is shown in [3] that the steady-state marginal queue length of Q i can be decomposed into two parts: the queue length of the corresponding M/G/ 1 queue with only type i customers, and the queue length at an arbitrary epoch during the intervisit period of Q i , denoted by L i I | . An intervisit period of Q i is the time between a visit ending at Q i , and the next visit beginning at Q i . Borst [2] shows that by virtue of PASTA, L i I | has the same distribution as the number of type i customers seen by an arbitrary type i customer arriving during an intervisit period, which equals

$$E ( z ^ { L _ { i | I } } ) = \frac { E ( z ^ { L _ { i | I } } _ { b e g i n } ) - E ( z ^ { L _ { i | I } } _ { e n d } ) } { ( 1 - z ) ( E ( L _ { i | I } _ { e n d } ) - E ( L _ { i | I } _ { b e g i n } ) ) },$$

where L i I | begin is the number of type i customers at the beginning of an intervisit period I i , and L i I | end is the number of type i customers at the end of I i . Since the beginning of an intervisit period coincides with the completion of a visit to Q i , and the end of an intervisit period coincides with the beginning of a visit, we know the GFs for the distributions of these random variables: ˜ V c i ( ) and · ˜ V b i ( ). · This leads to the following expression for the GF of the steady-state queue length distribution of Q i at an arbitrary epoch, E z [ L i ]:

$$E [ z ^ { L _ { i } } ] = \frac { ( 1 - \rho _ { i } ) ( 1 - z ) \beta _ { i } ( \lambda _ { i } ( 1 - z ) ) } { \beta _ { i } ( \lambda _ { i } ( 1 - z ) ) - z } \cdot \frac { \widetilde { V } _ { c _ { i } } ( z ) - \widetilde { V } _ { b _ { i } } ( z ) } { ( 1 - z ) ( E ( L _ { i | I _ { e n d } } ) - E ( L _ { i | I _ { b e g i n } } ) ) }. \quad ( 2. 7 )$$

Keilson and Servi [16] show that the distributional form of Little's law can be used to find the LST of the distribution of the marginal waiting time W i : E z ( L i ) = E (e -λ i (1 -z )( W i + B i ) ), hence E (e -ωW i ) = E [(1 -ω λ i ) L i ] /β i ( ω ). This can be substituted into (2.7):

$$\cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \\ E [ e ^ { - \omega W _ { i } } ] & = \frac { ( 1 - \rho _ { i } ) \omega } { \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) } \cdot \frac { \widetilde { V } _ { c _ { i } } \left ( 1 - \frac { \omega } { \lambda _ { i } } \right ) - \widetilde { V } _ { b _ { i } } \left ( 1 - \frac { \omega } { \lambda _ { i } } \right ) } { ( E ( L _ { i } | _ { I _ { e n d } } ) - E ( L _ { i } | _ { I _ { b e g i n } } ) ) \omega / \lambda _ { i } } \\ & = E [ e ^ { - \omega W _ { i } | M / G / 1 } ] E \left [ \left ( 1 - \frac { \omega } { \lambda _ { i } } \right ) ^ { L _ { i } | I } \right ]. \\ \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \cdot \end{cases}$$

The interpretation of this formula is that the waiting time of a type i customer in a polling model is the sum of two independent random variables: the waiting time of a customer in an M/G/ 1 queue with only type i customers, W i M/G/ | 1 , and the remaining intervisit time for a customer that arrives at an arbitrary epoch during the intervisit time of Q i .

For gated service, the number of type i customers at the beginning of a visit to Q i is exactly the number of type i customers that arrived during the previous cycle, starting at Q i . In terms of GFs: ˜ V b i ( z ) = γ i ( λ i (1 -z )). The type i customers at the end of a visit to Q i are exactly those type i customers that arrived during this visit. In terms of GFs: ˜ V c i ( z ) = γ i ( λ i (1 -β i ( λ i (1 -z )))). We can rewrite E L ( i I | end ) -E L ( i I | begin ) as λ E I i ( i ), because this is the mean number of type i customers that arrive during an intervisit time. In Section 2.4 we observe that λ E I i ( i ) = λ i (1 -ρ i ) E C ( ). Using these expressions we can rewrite Equation (2.8) for gated service to:

$$E [ \mathrm e ^ { - \omega W _ { i } } ] = \frac { ( 1 - \rho _ { i } ) \omega } { \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) } \cdot \frac { \gamma _ { i } ( \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) ) - \gamma _ { i } ( \omega ) } { ( 1 - \rho _ { i } ) \omega E ( C ) }.$$

For exhaustive service, ˜ V c i ( z ) = 1, because Q i is empty at the end of a visit to Q i . The number of type i customers at the beginning of a visit to Q i in an exhaustive polling system

is equal to the number of type i customers that arrived during the previous intervisit time of Q i . Hence, ˜ V b i ( z ) = ˜ I i ( λ i (1 -z )), where ˜ I i ( ) is the LST of the intervisit time distribution for · Q i . Substitution of ˜ I i ( ω ) = ˜ V b i (1 -ω λ i ) in (2.8) leads to the following expression for the LST of the steady-state waiting time distribution of a type i customer in an exhaustive polling system:

$$E [ e ^ { - \omega W _ { i } } ] = \frac { ( 1 - \rho _ { i } ) \omega } { \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) } \cdot \frac { 1 - \widetilde { I } _ { i } ( \omega ) } { \omega E ( I _ { i } ) }.$$

In [1] another expression is found for E [e -ωW i ]. Let the cycle time C ∗ i be the time between two successive visit completions to Q i . The LST of the cycle time distribution, γ ∗ i ( ), is given · by (2.5). In [1] an equation is derived that expresses ˜ I i ( ) in · γ ∗ i ( ): ·

$$\widetilde { I } _ { i } ( \omega ) = \gamma _ { i } ^ { * } ( \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) ).$$

Using this expression we can write E [e -ωW i ] in terms of E [e -ωC ∗ i ]:

$$E [ e ^ { - \omega W _ { i } } ] & = \frac { 1 - \gamma _ { i } ^ { * } ( \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) ) } { ( \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) ) E ( C ) } \\ & = E [ e ^ { - ( \omega - \lambda _ { i } ( 1 - \beta _ { i } ( \omega ) ) ) C _ { i, r e s } ^ { * } } ],$$

where C ∗ i, res is the residual length of C ∗ i .

Remark 2.3 Substitution of ω := s + λ i (1 -π i ( s )) in (2.12) leads to:

$$E [ e ^ { - ( s + \lambda _ { i } ( 1 - \pi _ { i } ( s ) ) ) W _ { i } } ] & = E [ e ^ { - ( s + \lambda _ { i } ( 1 - \pi _ { i } ( s ) ) - \lambda _ { i } ( 1 - \beta _ { i } ( s + \lambda _ { i } ( 1 - \pi _ { i } ( s ) ) ) ) C _ { i, r e s } ^ { * } } ] } \\ & = E [ e ^ { - ( s + \lambda _ { i } ( 1 - \pi _ { i } ( s ) ) - \lambda _ { i } ( 1 - \pi _ { i } ( s ) ) ) C _ { i, r e s } ^ { * } } ] \\ & = E [ e ^ { - s C _ { i, r e s } ^ { * } } ].$$

The interpretation, which can also be found in [4], is that the residual cycle time consists of two components; firstly the amount of work present at the beginning of the residual cycle, and secondly all work that arrives at Q i during the residual cycle. By virtue of PASTA, the amount of work at the beginning of the residual cycle is the waiting time of an arbitrary type i customer. The work that arrives during this waiting time, is equal to the length of the busy periods generated by the customers that have arrived during this waiting time.

## 2.4 Moments

The focus of this paper is on LST and GF of distribution functions, not on their moments. Moments can be obtained by differentiation or Taylor series expansion, and are also discussed in [27]. In this subsection we will only mention some results that will be used later.

First we derive the mean cycle time E C ( ). Unlike higher moments of the cycle time, the mean does not depend on where the cycle starts: E C ( ) = E S ( ) 1 -ρ , where S = ∑ N i =1 S i . This can easily be seen, because 1 -ρ is the fraction of time that the server is not working, but switching. The total mean switch-over time is ∑ N i =1 E S ( i ) = E S ( ).

The expected length of a visit to Q i is E V ( i ) = ρ E C i ( ), hence the mean length of an intervisit period for Q i is E I ( i ) = (1 -ρ i ) E C ( ). Notice that these expectations do not depend on the

service discipline used. The expected number of type i customers at polling moments does depend on the service discipline. For gated service the expected number of type i customers at the beginning of a visit to Q i is λ E C i ( ). For exhaustive service this is λ E I i ( i ).

Moments of the waiting time distribution for a type i customer at an arbitrary epoch can be derived from the LSTs given by (2.9), (2.10) and (2.12). We only present the first moment:

$$Q _ { i } \, \text{gated} \colon & & E ( W _ { i } ) = ( 1$$

$$E ( W _ { i } ) = ( 1 + \rho _ { i } ) \frac { E ( C _ { i } ^ { 2 } ) } { 2 E ( C ) },$$

$$Q _ { i } \text{ exhaustive} \colon$$

$$& + \rho _ { i } ) \frac { E ( C _ { i } ^ { 2 } ) } { 2 E ( C ) }, & & ( 2. 1 3 ) \\ & \frac { ( I _ { i } ^ { 2 } ) } { \L ( I _ { i } ) } + \frac { \rho _ { i } } { 1 - \rho _ { i } } \frac { E ( B _ { i } ^ { 2 } ) } { 2 E ( B _ { i } ) } \\ & - \rho _ { i } ) \frac { E ( C _ { i } ^ { * 2 } ) } { 2 E ( C ) }. & & ( 2. 1 4 )$$

$$E ( W _ { i } ) & = \frac { E ( I _ { i } ^ { 2 } ) } { 2 E ( I _ { i } ) } + \frac { \rho _ { i } } { 1 - \rho _ { i } } \frac { E ( B _ { i } ^ { 2 } ) } { 2 E ( B _ { i } ) } \\ & = ( 1 - \rho _ { i } ) \frac { E ( C _ { i } ^ { * } ^ { 2 } ) } { 2 E ( C ) }.$$

Notice that the start of C i is the beginning of a visit to Q i for gated service, whereas the start of C ∗ i is the end of a visit for exhaustive service. Equations (2.13) and (2.14) are in agreement with Equations (4.1) and (4.2) in [4], which also gives interpretations of these equations. Although at first sight these might seem nice, closed formulas, it should be noted that second moments of the cycle time and intervisit time are not easy to determine, requiring the solution of a set of equations. MVA is an efficient technique to compute mean waiting times, the mean residual cycle time, and also the mean residual intervisit time. We refer to [29] for an MVA framework for polling models.

## 3 The priority polling model with gated and/or exhaustive service

In this section we study a polling system with N queues. The service discipline of each queue is either gated, or exhaustive. Each queue contains customers that can be divided into one or more priority classes. Let K i be the total number of priority levels in Q i . Customers of level 1 receive highest priority, customers of level K i receive lowest priority. Customers in Q i of priority level k ( k = 1 , . . . , K i ) arrive according to a Poisson process with intensity λ ik , and have a service requirement B ik with LST β ik ( ). · If we consider the total number of customers in each queue at polling epochs, which means that we ignore the fact that they will be served according to their priority levels instead of ordinary First-Come-First-Served (FCFS), all the results from Subsections 2.1 and 2.2 still hold. In this situation the system should be regarded as a polling system with N queues where customers in Q i arrive according to a Poisson process with intensity λ i := ∑ K i k =1 λ ik and have service requirement B i with LST β i ( ) = · ∑ K i k =1 λ ik λ i β ik ( ). ·

We follow the same approach as in Section 2. First we study the joint queue length distribution of all customer types at polling epochs, then the cycle time distribution, followed by the marginal queue length distribution and waiting time distribution, which depend on the service discipline in the selected queue. Subsection 3.4 provides the first moment of these distributions. The last subsection gives a pseudo-conservation law for this system.

## 3.1 Joint queue length distribution at polling epochs

Equation (2.2) gives the GF of the joint queue length distribution at the beginning of a visit to Q 1 in a non-priority polling system. Equation (2.3) can be used to find the GF of the joint queue length distribution at the beginning of a visit to any other queue. The introduction of multiple priority levels to this polling system will only affect the queue length of a queue that is being served, but it will not affect the queue lengths at polling epochs. At the beginning of a visit to Q i , a waiting type i customer has priority level k with probability λ ik /λ i . We can express the GF of the joint queue length distribution in the polling system with priorities, V prio b i ( z 11 , . . . , z 1 K 1 , . . . , z N 1 , . . . , z NK N ), in terms of the GF of the joint queue length distribution in the polling system without priorities, V b i ( z , . . . , z 1 N ).

## Lemma 3.1

$$V _ { b _ { i } } ^ { p r i o } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) = V _ { b _ { i } } \left ( \frac { 1 } { \lambda _ { 1 } } \sum _ { k = 1 } ^ { K _ { 1 } } \lambda _ { 1 k } z _ { 1 k }, \dots, \frac { 1 } { \lambda _ { N } } \sum _ { k = 1 } ^ { K _ { N } } \lambda _ { N k } z _ { N k } \right ). \ \ ( 3. 1 )$$

## Proof:

Let X ijk be the number of customers with priority level k present in Q j at the beginning of a visit to Q i ( i, j = 1 , . . . , N ). Let X ij = ∑ K j k =1 X ijk . Since the type j customers with priority k are exactly those customers that arrived since the previous visit beginning (for gated service; for exhaustive: visit ending ) at Q j , we know that for i, j = 1 , . . . , N :

$$& P ( X _ { i j 1 } = n _ { 1 }, X _ { i j 2 } = n _ { 2 }, \dots, X _ { i j K _ { j } } = n _ { K _ { j } } | X _ { i j } = n ) \\ & = \frac { n! } { n _ { 1 }! \cdots n _ { K _ { j } }! } \left ( \frac { \lambda _ { j 1 } } { \lambda _ { j } } \right ) ^ { n _ { 1 } } \cdots \left ( \frac { \lambda _ { j K _ { j } } } { \lambda _ { j } } \right ) ^ { n _ { K _ { j } } },$$

under the condition ∑ K j k =1 n k = n Hence, for i, j = 1 , . . . , N :

.

$$\text{Hence, for } i, j = 1, \dots, N \colon \\ & E | z _ { j 1 } ^ { X _ { i j 1 } } \cdots z _ { j K _ { j } } ^ { X _ { i j K _ { j } } } | X _ { i j } = n ) \\ & = \sum _ { n _ { 1 } = 0 } ^ { \infty } \cdots \sum _ { n _ { K _ { j } } = 0 } ^ { \infty } z _ { j 1 } ^ { n _ { 1 } } \cdots z _ { j K _ { j } } ^ { n _ { K _ { j } } } P ( X _ { i j 1 } = n _ { 1 }, X _ { i j 2 } = n _ { 2 }, \dots, X _ { i j K _ { j } } = n _ { K _ { j } } | X _ { i j } = n ) \\ & = \sum _ { n _ { 1 }, \dots, n _ { K _ { j } } } \frac { n! } { n _ { 1 }! \cdots n _ { K _ { j } }! } \left ( \frac { \lambda _ { j 1 } } { \lambda _ { j } } z _ { j 1 } \right ) ^ { n _ { 1 } } \cdots \left ( \frac { \lambda _ { j K _ { j } } } { \lambda _ { j } } z _ { j K _ { j } } \right ) ^ { n _ { K _ { j } } } \\ & = \left ( \sum _ { k = 1 } ^ { K _ { j } } \frac { \lambda _ { j k } } { \lambda _ { j } } z _ { j k } \right ) ^ { n }.$$

Finally,

$$V _ { b _ { i } } ^ { p r i o } ($$

$$\text{Finally}, & & V _ { b _ { i } } ^ { p r i o } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) \\ & = \sum _ { n _ { 1 } = 0 } ^ { \infty } \dots \sum _ { n _ { N } = 0 } ^ { N } \prod _ { j = 1 } ^ { N } \left ( \sum _ { k = 1 } ^ { K _ { j } } \frac { \lambda _ { j k } } { \lambda _ { j } } z _ { j k } \right ) ^ { n _ { j } } P ( X _ { i 1 } = n _ { 1 }, \dots, X _ { i N } = n _ { N } ) \\ & = V _ { b _ { i } } \left ( \frac { 1 } { \lambda _ { 1 } } \sum _ { k = 1 } ^ { K _ { 1 } } \lambda _ { 1 k } z _ { 1 k }, \dots, \frac { 1 } { \lambda _ { N } } \sum _ { k = 1 } ^ { K _ { N } } \lambda _ { N k } z _ { N k } \right ), \quad \quad i = 1, \dots, N.$$

## 3.2 Cycle time

The LST of the cycle time distribution is still given by (2.4) (cycle starting at a visit beginning) or (2.5) (cycle starting at a visit completion) if we define λ i := ∑ K i k =1 λ ik and β i ( ) · := ∑ K i k =1 λ ik λ i β ik ( ), · for i = 1 , . . . , N , because the cycle time does not depend on the order of service within each queue.

## 3.3 Marginal queue lengths and waiting times

The LST of the marginal queue length distribution of Q i at an arbitrary epoch depends on the service discipline that is used to serve Q i , and so does the LST of the waiting time distribution. First we study a queue with gated service, afterwards a queue with exhaustive service.

## Gated service

We focus on a particular queue, say Q i , assuming it has gated service. We determine the LST of the waiting time distribution for a type i customer with priority level k , from now on called a 'type ik customer', using the fact that this customer will not be served until the next cycle (starting at a visit beginning to Q i ). The time from the start of the cycle until the arrival of this customer will be called 'past cycle time', denoted by C iP . The residual cycle time will be denoted by C iR . The waiting time of a type ik customer is composed of C iR , the service times of all higher priority customers that arrived during C iP + C iR , and the service times of all type ik customers that have arrived during C iP . Let L H ( T ) be the number of higher priority customers that have arrived during time interval T , and equivalently define L k ( T ) for the type ik customers. The arrival process of higher priority customers is a Poisson process with intensity λ H := ∑ k -1 j =1 λ ij . This intensity equals 0 if k = 1, which corresponds to the highest priority customers in Q i . The service time distribution of these higher priority customers is denoted by B H (suppressing i and k for notational reasons), with LST β H ( ) := · ∑ k -1 j =1 λ ij λ H β ij ( ). ·

Theorem 3.2 The LST of the waiting time distribution of a type ik customer in a polling system with Q i being served according to the gated discipline, is:

$$E \left [ \mathrm e ^ { - \omega W _ { i k } } \right ] = \frac { \gamma _ { i } \left ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) \right ) - \gamma _ { i } \left ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) \right ) } { [ \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) ] E ( C ) }.$$

## Proof:

$$E \left [ e ^ { - \omega W _ { i k } } \right ] = & E \left [ e ^ { - \omega ( C _ { i R } + \sum _ { j = 1 } ^ { L _ { H } ( C _ { i P } + C _ { i R } ) } B _ { H, j } + \sum _ { j = 1 } ^ { L _ { k } ( C _ { i P } ) } B _ { i k, j } ) } \right ] \\ = & \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } \sum _ { m = 0 } ^ { \infty } \sum _ { n = 0 } ^ { \infty } E \left [ e ^ { - \omega ( u + \sum _ { j = 1 } ^ { m } B _ { H, j } + \sum _ { j = 1 } ^ { n } B _ { i k, j } ) } \right ] \\ & \cdot P ( L _ { H } ( C _ { i P } + C _ { i R } ) = m, L _ { k } ( C _ { i P } ) = n ) \, \mathrm d P ( C _ { i P } < t, C _ { i R } < u ) \\ = & \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } e ^ { - \omega u } \sum _ { m = 0 } ^ { \infty } \sum _ { n = 0 } ^ { \infty } E \left [ e ^ { - \omega \sum _ { j = 1 } ^ { m } B _ { H, j } } \right ] E \left [ e ^ { - \omega \sum _ { j = 1 } ^ { n } B _ { i k, j } } \right ] \\ & \cdot \frac { ( \lambda _ { H } ( t + u ) ) ^ { m } } { m! } e ^ { - \lambda _ { H } ( t + u ) } \frac { ( \lambda _ { i k } t ) ^ { n } } { n! } e ^ { - \lambda _ { i k } t } \, \mathrm d P ( C _ { i P } < t, C _ { i R } < u )$$

$$= & \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } \mathrm e ^ { - t \left ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) \right ) } \mathrm e ^ { - u \left ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) \right ) } \mathrm d P ( C _ { i P } < t, C _ { i R } < u ) \\ = & \frac { \gamma _ { i } \left ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) \right ) - \gamma _ { i } \left ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) \right ) } { [ \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) ] E ( C ) }.$$

$$& J _ { t = 0 } \, J _ { u = 0 } \underset { m = 0 } { \underbrace { n = 0 } } \, \underbrace { \downarrow } & \quad \text{L} \\ & \cdot P ( L _ { H } ( C _ { i P } + C _ { i R } ) = m, L _ { k } ( C _ { i P } ) = n ) \, \mathrm d P ( C _ { i P } < t, C _ { i R } < u ) \\ = & \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } e ^ { - \omega u } \sum _ { m = 0 } ^ { \infty } \sum _ { n = 0 } ^ { \infty } E \left [ e ^ { - \omega \sum _ { j = 1 } ^ { m } B _ { H, j } } \right ] E \left [ e ^ { - \omega \sum _ { j = 1 } ^ { n } B _ { i k, j } } \right ] \\ & \cdot \frac { ( \lambda _ { H } ( t + u ) ) ^ { m } } { m! } e ^ { - \lambda _ { H } ( t + u ) } \frac { ( \lambda _ { i k } t ) ^ { n } } { n! } e ^ { - \lambda _ { i k } t } \, \mathrm d P ( C _ { i P } < t, C _ { i R } < u ) \\ \\ = & \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } e ^ { - t } \left ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) \right ) e ^ { - u } \left ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) \right ) \, \mathrm d P ( C _ { i P } < t, C _ { i R } < u ) \\ & \overset { \chi } { \hat { \lambda } } ( \lambda u ( 1 - \beta u ( \hat { u } ) ) + \lambda _ { u } ( 1 - \beta u ( \hat { u } ) ) \right ) - \chi _ { i } ( \omega + \lambda u ( 1 - \beta u ( \hat { u } ) ) \right )$$

For the last step in the derivation of (3.2) we used

$$E [ \mathrm e ^ { - \omega _ { P } C _ { i P } - \omega _ { R } C _ { i R } } ] = \frac { E [ \mathrm e ^ { - \omega _ { P } C _ { i } } ] - E [ \mathrm e ^ { - \omega _ { R } C _ { i } } ] } { ( \omega _ { R } - \omega _ { P } ) E ( C ) },$$

see, e.g., [6]. The cycle time C i starts with a visit beginning to Q i , and its LST γ i ( ) is given · by (2.4). glyph[square]

We now present an alternative derivation of (3.2) by modelling the system in such a way that the Fuhrmann-Cooper decomposition [15] can be used. Fuhrmann and Cooper [15] showed that the waiting time of a customer in an M/G/ 1 queue with server vacations is the sum of two independent quantities: the waiting time of a customer in a corresponding M/G/ 1 queue without vacations, and the residual vacation time. Conditions that have to be satisfied in order to use this composition, are:

- 1. Poisson arrivals, service times are independent of each other, of the arrival process and of the sequence of vacation periods that precede a certain service time;
- 2. all customers are eventually served;
- 3. customers are served in an order that is independent of their service times;
- 4. service is nonpreemptive;
- 5. the rules that govern when the server begins and ends vacations do not anticipate future jumps of the Poisson arrival process.

In order to use the Fuhrmann-Cooper decomposition to determine E [ e -ωW ik ] , we first model the system as a polling system with N +2 queues ( Q , . . . , Q 1 i -1 , Q H , Q ik , Q L , Q i +1 , . . . , Q N ) and no switch-over times between Q ,Q H ik , and Q L . Q H contains all type i customers with

priority level higher than k (i.e. priority index less than k ), Q ik contains all type i customers of priority level k , and Q L contains all type i customers of priority level lower than k . Lower priority customers arrive according to a Poisson process with intensity λ L := ∑ K i j = +1 k λ ij (again suppressing index i for notational reasons). The service time distribution of these customers is denoted by B L , with LST β L ( ) · := ∑ K i j = +1 k λ ij λ L β ij ( ). · The service discipline of this equivalent system is synchronised gated, which is a more general version of gated. The gates for queues Q ,Q H ik , and Q L are set simultaneously when the server arrives at Q H , but the gates for the other queues are still set at the server's arrival at these queues. From the viewpoint of a type ik customer, and as far as waiting times are concerned, this system is an M/G/ 1 queue with generalised vacations (because service is not exhaustive and the length of a vacation is positively correlated with the length of a visit period). The vacation is the intervisit period of Q ik , which starts with a service to Q L and ends when service of Q H is completed. Fuhrmann and Cooper [15] state that the number of type ik customers in the system at an arbitrary epoch ( L ik ) is the sum of the queue length in an isolated M/G/ 1 queue with only type ik customers ( L ik M/G/ | 1 ), and the number of type ik customers at a random epoch during a vacation ( L ik I | ):

$$E \left [ z ^ { L _ { i k } } \right ] = \frac { ( 1 - \rho _ { i k } ) ( 1 - z ) \beta _ { i k } ( \lambda _ { i k } ( 1 - z ) ) } { \beta _ { i k } ( \lambda _ { i k } ( 1 - z ) ) - z } \cdot \frac { \widetilde { V } _ { c _ { i k } } ( z ) - \widetilde { V } _ { b _ { i k } } ( z ) } { ( 1 - z ) ( E ( L _ { i k | I _ { e n d } } ) - E ( L _ { i k | I _ { b e q i n } } ) ) }.$$

Equation (2.6) has been used to derive the second term at the right-hand side of (3.3), where ˜ V b ik ( z ) denotes the GF of the distribution of the number of type ik customers at the beginning of a visit to Q ik , and ˜ V c ik ( z ) denotes the GF at the completion of a visit to Q ik . The number of type ik customers at the beginning of a visit to Q ik is the number of type ik customers that arrived during the previous cycle (starting with a visit to Q i , which corresponds to a visit beginning to Q H in this model), plus the number of type ik customers that arrived during the service of the type H customers that arrived during the previous cycle. However, because of the synchronised gated service discipline only those type ik customers present at the visit beginning of Q H will be served:

$$\widetilde { V } _ { b _ { i k } } ( z ) & = \gamma _ { i } \Big ( \lambda _ { H } ( 1 - \beta _ { H } ( \lambda _ { i k } ( 1 - z ) ) ) + \lambda _ { i k } ( 1 - z ) \Big ), \\ \widetilde { V } _ { c _ { i k } } ( z ) & = \gamma _ { i } \Big ( \lambda _ { H } ( 1 - \beta _ { H } ( \lambda _ { i k } ( 1 - z ) ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \lambda _ { i k } ( 1 - z ) ) ) \Big ).$$

Furthermore, we have E L ( ik I | end ) -E L ( ik I | begin ) = λ ik E I ( ik ) = λ ik (1 -ρ ik ) E C ( ). Now, to derive the LST of the waiting time W ik , we can apply the distributional form of Little's law [16] to (3.3), because the required conditions are fulfilled for each customer class (including customer types H ik , , and L ): the customers enter the system in a Poisson stream, every customer enters the system and leaves the system one at a time in order of arrival, and for any time t the entry process into the system of customers after time t and the time spent in the system by any customer arriving before time t are independent. This leads to the following expression:

$$E \left [ e ^ { - \omega W _ { i k } } \right ] = & \, \frac { ( 1 - \rho _ { i k } ) \omega } { \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) } \\ & \, \cdot \frac { \gamma _ { i } ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) ) - \gamma _ { i } ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) ) } { ( 1 - \rho _ { i k } ) \omega E ( C ) }.$$

We recognise the first term on the right-hand side of (3.4) as the LST of the waiting time distribution of an M/G/ 1 queue with only type ik customers. Equation (3.4) can be rewritten to (3.2).

## Exhaustive service

Analysis of the model with exhaustive service requires a different approach. The key observation, made by Fuhrmann and Cooper [15], is that the polling system from the viewpoint of a type i customer is an M/G/ 1 queue with multiple server vacations. The M/G/ 1 queue with priorities and vacations has been extensively analysed by Kella and Yechiali [17]. We use their approach to find the waiting time LST for type ik customers. Kella and Yechiali [17] distinguish between systems with single and multiple vacations, and preemptive resume and nonpreemptive service. The polling system that we consider corresponds to the system with multiple vacations, because the server is never idling, but keeps on switching if the system is empty. In the present paper we do not focus on preemptive resume, but we will give some results on it later in this subsection. First we focus on the case labelled as NPMV (nonpreemptive, multiple vacations) in [17]. We consider the system from the viewpoint of a type ik customer to derive E [e -ωW ik ]. For the waiting time of a type ik customer, the order in which the higher priority customers are served is irrelevant. We will refer to all type i customers with higher priority than k as 'type H customers' arriving according to one Poisson stream with intensity λ H := ∑ k -1 j =1 λ ij . The service time distribution of these customers is denoted by B H , with LST β H ( ) := · ∑ k -1 j =1 λ ij λ H β ij ( ). · A busy period of type H customers is denoted by BP H with LST π H ( ) which is the root of the equation · π H ( ω ) = β H ( ω + λ H (1 -π H ( ω ))). In a similar way we define 'type L ' customers which arrive according to a Poisson stream with intensity λ L := ∑ K i j = +1 k λ ij . The service time of these customers is denoted by B L , with LST β L ( ) := · ∑ K i j = +1 k λ ij λ L β ij ( ). ·

From the viewpoint of a type ik customer and as far as waiting times are considered, a polling system is a nonpriority single server system with multiple vacations. The vacation can either be the intervisit period I i , or a busy period of type H customers, or the service of a type L customer. The LSTs of these three types of vacations are:

$$E [ \mathrm e ^ { - \omega I _ { i } } ] & = \widetilde { V } _ { b _ { i } } ( 1 - \omega / \lambda _ { i } ), \\ E [ \mathrm e ^ { - \omega B P _ { H } } ] & = \pi _ { H } ( \omega ), \\ E [ \mathrm e ^ { - \omega B _ { L } } ] & = \beta _ { L } ( \omega ).$$

The first equality in Equation (3.5) follows immediately from the fact that the number of type i customers at the beginning of a visit to Q i is the number of type i customers that have arrived during the previous intervisit period: ˜ V b i ( z ) = E [e -( λ i (1 -z )) I i ].

The key observation is that an arrival of a type ik customer will always take place within either an I H,ik cycle, or an L H,ik cycle. An I H,ik cycle is a cycle that starts with an intervisit period for Q i , followed by the service of all customers with priority level H or k , and ends at the moment that no type H or ik customers are left in the system. Notice that at the start of the intervisit period, no type H or ik customers were present in the system either. An L H,ik cycle is a similar cycle, but starts with the service of a type L customer. This cycle also ends at the moment that no type H or ik customers are left in the system.

The fraction of time that the system is in an L H,ik cycle is ρ L 1 -ρ H -ρ ik , because type L customers arrive with intensity λ L . Each of these customers will start an L H,ik cycle and the length of an L H,ik cycle equals E B ( L ) 1 -ρ H -ρ ik :

$$E ( L _ { H, i k } \text{ cycle} ) & = E ( B _ { L } ) + \lambda _ { H, i k } E ( B _ { L } ) E ( B P _ { H, i k } ) \\ & = E ( B _ { L } ) + \lambda _ { H, i k } E ( B _ { L } ) \frac { E ( B _ { H, i k } ) } { 1 - \rho _ { H, i k } } \\ & = \left ( 1 + \frac { \rho _ { H } + \rho _ { i k } } { 1 - \rho _ { H } - \rho _ { i k } } \right ) E ( B _ { L } ) = \frac { E ( B _ { L } ) } { 1 - \rho _ { H } - \rho _ { i k } }, \\. \quad \sim \quad \sim \quad. \quad. \quad. \quad. \quad. \quad. \quad. \quad. \quad. \quad. \quad. \quad.$$

where λ H,ik , B H,ik , BP H,ik , and ρ H,ik denote the intensity, service time, busy period and occupation rate corresponding to type i customers with priority level 1 , . . . , k .

The fraction of time that the system is in an I H,ik cycle, is 1 -ρ L 1 -ρ H -ρ ik = 1 -ρ i 1 -ρ H -ρ ik . This result can also be obtained by using the argument that the fraction of time that the system is in an intervisit period is the fraction of time that the server is not serving Q i , which is equal to 1 -ρ i . A cycle which starts with such an intervisit period and stops after the service of all customers with priority levels 1 , . . . , k that arrived during the intervisit period and their descendants of priority levels 1 , . . . , k , has mean length E I ( i ) + λ H,ik E I ( i ) E ( BP H,ik ) = E I ( i ) 1 -ρ H -ρ ik . This also leads to the conclusion that 1 -ρ i 1 -ρ H -ρ ik is the fraction of time that the system is in an I H,ik cycle.

A type ik customer arriving during an I H,ik cycle views the system as a nonpriority M/G/ 1 queue with multiple server vacations. The service requirement in this system is not the service requirement of a type ik customer, B ik , but the time that is required to serve a type ik customer and all higher priority customers that arrive during this service until no higher priority customers are present in the system. We will elaborate on this so-called completion time later. The vacation is the intervisit time I i , plus the service times of all type H customers that have arrived during that intervisit time and their type H descendants. We denote this extended intervisit time by I ∗ i with LST

$$\widetilde { I } _ { i } ^ { * } ( \omega ) = \widetilde { I } _ { i } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ).$$

The mean of I ∗ i equals E I ( ∗ i ) = E I ( i ) 1 -ρ H .

A type ik customer arriving during an L H,ik cycle views the system as a nonpriority M/G/ 1 queue with multiple server vacations B L plus the busy periods generated by all type H customers that have arrived during the service time of the type L customer. We will denote this extended service time by B ∗ L with mean E B ( ∗ L ) = E B ( L ) 1 -ρ H , and LST

$$\beta _ { L } ^ { * } ( \omega ) = \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ).$$

We also have to take into account that a busy period of type ik customers might be interrupted by the arrival of type H customers. Therefore, in the alternative system that we are considering, the service time of a type ik customer is equal to B ik plus the service times of all type H customers that arrive during this service time, and all of their type H descendants. The LST of the distribution of this extended service time B ∗ ik is

$$\beta _ { i k } ^ { * } ( \omega ) = \beta _ { i k } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ).$$

This extended service time is often called completion time in the literature, cf. [25]. In this alternative system, the mean service time of these customers equals E B ( ∗ ik ) = E B ( ik ) 1 -ρ H . The fraction of time that the system is serving these customers is ρ ∗ ik = ρ ik 1 -ρ H = 1 -1 -ρ H -ρ ik 1 -ρ H .

Theorem 3.3 The LST of the waiting time distribution of a type ik customer in polling system with Q i being served exhaustively, is:

$$E [ e ^ { - \omega W _ { i k } } ] = \frac { ( 1 - \rho _ { i k } ^ { * } ) \omega } { \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ^ { * } ( \omega ) ) } \cdot \left [ \frac { 1 - \rho _ { i } } { 1 - \rho _ { H } - \rho _ { i k } } \cdot \frac { 1 - \widetilde { I } _ { i } ^ { * } ( \omega ) } { \omega E ( I _ { i } ^ { * } ) } + \frac { \rho _ { L } } { 1 - \rho _ { H } - \rho _ { i k } } \cdot \frac { 1 - \beta _ { L } ^ { * } ( \omega ) } { \omega E ( B _ { L } ^ { * } ) } \right ].$$

## Proof:

The system has been modelled as an M/G/ 1 queue with customers that have service requirement B ∗ ik , and multiple server vacations that have length I ∗ i with probability 1 -ρ i 1 -ρ H -ρ ik , and length B ∗ L with probability ρ L 1 -ρ H -ρ ik . Equation (3.6) follows immediately from application of the Fuhrmann-Cooper decomposition to this system. glyph[square]

Remark 3.4 Equation (3.6) can be rewritten in several forms, which lead to different interpretations. A compact form is

$$E [ e ^ { - \omega W _ { i k } } ] = \frac { \frac { 1 - \rho _ { i } } { E ( I _ { i } ) } [ 1 - \widetilde { I } _ { i } ( \omega + \lambda _ { H } - \lambda _ { H } \pi _ { H } ( \omega ) ) ] + \lambda _ { L } [ 1 - \beta _ { L } ( \omega + \lambda _ { H } - \lambda _ { H } \pi _ { H } ( \omega ) ) ] } { \lambda _ { i k } \beta _ { i k } ( \omega + \lambda _ { H } - \lambda _ { H } \pi _ { H } ( \omega ) ) - \lambda _ { i k } + \omega }, \quad ( 3. 7 )$$

which is the form used by Kella and Yechiali (see [17], Section 4.1).

Another form, which is more suitable for interpretation, is

$$\text{other form, which is more suitable for interpretation, is} \\ E [ e ^ { - \omega W _ { i k } } ] & = \frac { ( 1 - \rho _ { i k } ^ { * } ) \omega } { \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ^ { * } ( \omega ) ) } \\ & \cdot \left [ \frac { 1 - \rho _ { i } } { 1 - \rho _ { H } - \rho _ { i k } } \cdot \frac { 1 - \widetilde { I } _ { i } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) E ( I _ { i } ) } \\ & \quad + \frac { \rho _ { L } } { 1 - \rho _ { H } - \rho _ { i k } } \cdot \frac { 1 - \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) E ( B _ { L } ) } \right ] \\ & \cdot \left [ ( 1 - \rho _ { H } ) + \rho _ { H } \cdot \frac { 1 - \pi _ { H } ( \omega ) } { \omega E ( B P _ { H } ) } \right ]. \\ \\ \text{he first term on the right hand side of } ( 3 \, 8 \, \sl i \, the \, I \, T \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \t, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, \t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \. t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t \, t.$$

The first term on the right hand side of (3.8) is the LST of the waiting time distribution of a customer in a nonpriority M/G/ 1 queue with customers arriving with intensity λ ik and having service requirement LST β ∗ ik ( ), · i.e. the completion time of a type ik customer. The second term indicates that with probability 1 -ρ i 1 -ρ H -ρ ik a type ik customer has to wait a residual intervisit time, plus the busy periods of all higher priority customers that arrive during this residual intervisit time. With probability ρ L 1 -ρ H -ρ ik the customer has to wait a residual service time of a type L customer, plus the busy periods of all higher priority customers that arrive during this residual intervisit time. The last term in (3.8) indicates that with probability ρ H a customer also has to wait for the residual length of a busy period of higher priority customers.

Remark 3.5 Substitution of (2.11) in (3.7) leads to a different expression for E [e -ωW ik ]:

$$& \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \\ & E [ e ^ { - \omega W _ { i k } } ] \\ & = \frac { 1 - \gamma _ { i } ^ { * } ( \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) - \lambda _ { L } ( 1 - \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) } { [ \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) ] E ( C ) } \\ & \quad + \frac { \lambda _ { L } [ 1 - \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ] } { \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) }. \\ & \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot$$

For the lowest priority customers this expression simplifies to

$$E [ \mathrm e ^ { - \omega W _ { i K _ { i } } } ] & = \frac { 1 - \gamma _ { i } ^ { * } \left ( \omega - \lambda _ { i K _ { i } } ( 1 - \beta _ { i K _ { i } } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) \right ) } { \left ( \omega - \lambda _ { i K _ { i } } ( 1 - \beta _ { i K _ { i } } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) \right ) E ( C ) } \\ & = E [ \mathrm e ^ { - ( \omega - \lambda _ { i K _ { i } } ( 1 - \beta _ { i K _ { i } } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) ) C _ { i, r e s } ^ { * } } ],$$

where type H customers in this case are all type i customers except for those with the lowest priority.

Remark 3.6 In the derivation of Equation (3.6) we followed the approach of Kella and Yechiali [17], but restricted ourselves to the nonpreemptive situation only. Using the decomposition (3.8), it only requires a small extra step to obtain the waiting time LST in a system with preemptive resume . The term 1 -β L ( ω + λ H (1 -π H ( ω ))) ( ω + λ H (1 -π H ( ω ))) E B ( L ) on the third line is the LST of a residual service time of a type L customer, plus the busy periods of all type H customers that arrive during this residual type L service time. If type ik customers are allowed to preempt the service of a type L customer, this term simply vanishes from the waiting time LST. This leads to the following expression for the waiting time LST of a type ik customer if the service policy is preemptive resume :

$$E [ e ^ { - \omega W _ { i k } } ] & = \frac { ( 1 - \rho _ { i k } ^ { * } ) \omega } { \omega - \lambda _ { i k } ( 1 - \beta _ { i k } ^ { * } ( \omega ) ) } \cdot \left [ ( 1 - \rho _ { H } ) + \rho _ { H } \cdot \frac { 1 - \pi _ { H } ( \omega ) } { \omega E ( B P _ { H } ) } \right ] \\ & \quad \cdot \left [ \frac { 1 - \rho _ { i } } { 1 - \rho _ { H } - \rho _ { i k } } \cdot \frac { 1 - \widetilde { I } _ { i } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) E ( I _ { i } ) } + \frac { \rho _ { L } } { 1 - \rho _ { H } - \rho _ { i k } } \right ].$$

Note that the sojourn time of a type ik customer equals the waiting time plus a completion time in this situation. Equation (3.10) is in agreement with the result in [17].

We will refrain from mentioning the GFs of the marginal queue length distributions here, because they can be obtained by applying the distributional form of Little's law as we have done before.

## 3.4 Moments

As mentioned in Section 2.4, we do not focus on moments in this paper, and we only mention the mean waiting times of type ik customers. The formulas in this subsection can also be obtained using MVA, as shown in [27], but we have obtained them by differentiating (3.2),

(3.6), and (3.10) respectively:

Q i gated:

Q i exhaustive (nonpreemptive):

Q

i

exhaustive

(preemptive resume):

$$E ( W _ { i k } ) = ( 1 + 2 \rho _ { H } + \rho _ { i k } ) E ( C _ { i, r e s } )$$

$$= ( 1 + 2 \sum _ { j = 1 } ^ { k - 1 } \rho _ { i j } + \rho _ { i k } ) E ( C _ { i, r e s } ),$$

$$E ( W _ { i k } ) = \frac { \sum _ { j = 1 } ^ { K _ { i } } \stackrel { \cdot } { \rho _ { i j } } E ( B _ { i j, r e s } ) + ( 1 - \rho _ { i } ) E ( I _ { i, r e s } ) } { ( 1 - \sum _ { j = 1 } ^ { k - 1 } \rho _ { i j } ) ( 1 - \sum _ { j = 1 } ^ { k } \rho _ { i j } ) },$$

$$E ( W _ { i k } ) = \frac { \sum _ { j = 1 } ^$$

Differentiation of (3.9) leads an to alternative expression for the mean waiting time of a type ik customer if Q i is served exhaustively:

$$\begin{array} {$$

Notice that the cycle time in this exhaustive case starts at a visit completion to Q i .

## 3.5 A pseudo-conservation law

Let V be the amount of work in the polling system at an arbitrary epoch. Boxma and Groenendijk [5] show that V can be written as the sum of two independent random variables:

$$V \stackrel { d } { = } V _ { M / G / 1 } + V _$$

with V M/G/ 1 the amount of work at an arbitrary epoch in the corresponding M/G/ 1 queue, and V I the amount of work in the system at an arbitrary epoch in an intervisit period when the server is idling. It is shown in [5] that relation (3.11) leads to a pseudo-conservation law for nonpriority polling systems which is not specified in more detail here. This law has been generalised for polling systems with multiple priority levels in each queue in [22] and [13]:

$$\circ \cdots \cdots \cdots \cdots \cdots \cdots \cd$$

where S = ∑ N i =1 S i and Z ii is the amount of work left behind by the server at Q i at the completion of a visit. Equation (3.12) is called a pseudo-conservation law because it indicates that the weighted sum of the mean waiting times ∑ N i =1 ∑ K i k =1 ρ ik E W ( ik ) is constant, except for the term Z ii which depends on the service discipline. For gated service, E Z ( ii ) = ρ E C 2 i ( ). For exhaustive service, E Z ( ii ) = 0 because Q i is empty at the completion of a visit to this queue. For globally gated service, which is discussed in the next section, E Z ( ii ) = ρ i ( E C ( ) ∑ i j =1 ρ j + ∑ i -1 j =1 E S ( j ) ) .

## 4 Globally gated service

In this section we discuss a polling model with N queues ( Q , . . . , Q 1 N ) and K i priority classes in Q i with globally gated service. For this service discipline, only customers that were present when the server started its visit to Q 1 are served. This feature makes the model exactly the same as a nonpriority polling model with ∑ N i =1 K i queues ( Q 11 , . . . , Q 1 K 1 , . . . , Q N 1 , . . . , Q NK N ).

It was observed in Section 2 that, although this system does not satisfy Property 2.1, it does satisfy Property 2.2 which implies that we can still follow the same approach as in the previous sections.

## 4.1 Joint queue length distribution at polling epochs

We define the beginning of a visit to Q 1 as the start of a cycle, since this is the moment that determines which customers will be served during the next visits to the queues. Arriving customers will always be served in the next cycle, so the offspring GFs are:

$$& \cdot \quad \cdot \quad \cdot \quad \cdot \quad \$$

The N immigration functions are:

$$g ^ { ( i ) } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) = \sigma _ { i } ( \sum _ { j = 1 } ^ { N } \sum _ { l = 1 } ^ { K _ { j } } \lambda _ { j l } ( 1 - z _ { j l } ) ), \quad \quad i = 1, \dots, N.$$

Using these definitions, the formula for the GF of the joint queue length distribution at the beginning of a cycle is similar to the one found in Section 2:

$$P _ { 1 } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) = \prod _ { n = 0 } ^ { \infty } g ( f _ { n } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) ). \quad ( 4. 1 )$$

Notice that in a system with globally gated service it is possible to express the joint queue length distribution at the beginning of a cycle in terms of the cycle time LST, since all customers that are present at the beginning of a cycle are exactly all of the customers that have arrived during the previous cycle:

$$P _ { 1 } ( z _ { 1 1 }, \dots, z _ { 1 K _ { 1 } }, \dots, z _ { N 1 }, \dots, z _ { N K _ { N } } ) = \gamma _ { 1 } ( \sum _ { i = 1 } ^ { N } \sum _ { k = 1 } ^ { K _ { i } } \lambda _ { i k } ( 1 - z _ { i k } ) ). \quad \quad ( 4. 2 )$$

## 4.2 Cycle time

Since only those customers that are present at the start of a cycle, starting at Q 1 , will be served during this cycle, the LST of the cycle time distribution is

$$\gamma _ { 1 } ( \omega ) = \prod _ { i = 1 } ^ { N } \sigma _ { i } ( \omega ) P _ { 1 } ( \beta _ { 1 1 } ( \omega ), \dots, \beta _ { 1 K _ { 1 } } ( \omega ), \dots, \beta _ { N 1 } ( \omega ), \dots, \beta _ { N K _ { N } } ( \omega ) ).$$

Substitution of (4.2) into this expression gives us the following relation:

$$\gamma _ { 1 } ( \omega ) = \prod _ { i = 1 } ^ { N } \sigma _ { i } ( \omega ) \, \gamma _ { 1 } ( \sum _ { i = 1 } ^ { N } \sum _ { k = 1 } ^ { K _ { i } } \lambda _ { i k } ( 1 - \beta _ { i k } ( \omega ) ) ).$$

Boxma, Levy and Yechiali [6] show (for a model without priorities) that this relation leads to the following expression for the cycle time LST:

$$\gamma _ { 1 } ( \omega ) = \prod _ { i = 0 } ^$$

where σ ( ) = · ∏ N i =1 σ i ( ), and · δ ( ) i ( ω ) is recursively defined as follows:

$$\cdot \, \_ \quad & \delta ^ { ( 0 ) } ( \omega$$

## 4.3 Marginal queue lengths and waiting times

The expression for E (e -ωW ik ) can be obtained by the method used in Section 3.3:

$$\begin{array} { l l$$

We can use the distributional form of Little's law to determine the LST of the marginal queue length distribution of Q ik . Substituting ω := λ ik (1 -z ) in (4.4) yields an expression for E z [ L ik ] , the GF of the distribution of the number of type ik customers at an arbitrary epoch.

## 4.4 Moments

We can obtain E W ( ik ) by differentiation of (4.4):

$$\cdot \cdot \cdot \cdot \cdot \cdot \cdot \cd$$

The interpretation of this expression is that the mean waiting time of a type ik customer in a globally gated polling system consists of the mean residual cycle time, the mean switch-over times S 1 + · · · + S i -1 , the mean service times of all type 1 , . . . , i -1 customers that arrive during the past cycle time plus the residual cycle time, the mean service times of all type i customers with higher priority level than k that arrive during the past cycle time plus the mean residual cycle time, and the mean service times of all type i customers of priority level k that have arrived during the past cycle time. Notice that the mean past cycle time is equal to the mean residual cycle time.

## 5 Numerical example

Consider a polling system with two queues, and assume exponential service times and switchover times. Suppose that λ 1 = 6 10 , λ 2 = 2 10 , E ( B 1 ) = E B ( 2 ) = 1 , E ( S 1 ) = E S ( 2 ) = 1. The workload of this polling system is ρ = 8 10 . This example is extensively discussed in [29] where MVA is used to compute mean waiting times and mean residual cycle times for the gated and exhaustive service disciplines, and in [1], where it is shown that the performance of this system can be improved by dividing jobs into two categories (small and large service times) and giving higher priority to jobs with smaller service times. In this example we illustrate how much further the performance of this system can be improved by increasing the number of priority levels in Q 1 . Let K 1 be the number of priority levels in Q 1 . We define thresholds t 1 , . . . , t K 1 -1 that divide the jobs arriving in Q 1 into K 1 classes: jobs with a service time less than t 1 receive highest priority, jobs with a service time between t 1 and t 2 receive second highest priority, and so on. The thresholds t 1 , . . . , t K 1 -1 are determined in such a way that the overall mean waiting time for customers in Q 1 is minimised. The values of these thresholds depend on the service discipline and are discussed in [27]. Figures 1, 2, and 3 show the overall mean waiting time for customers in Q 1 versus the number of priority levels K 1 for gated, exhaustive and globally gated service respectively. Notice that K 1 = 1 corresponds to a system without priorities in which customers are served FCFS. Both plots indicate that most of the improvement is obtained for values of K 1 up to 3 or 4. Creating more than 4 priority levels hardly improves this system anymore. The situation K 1 →∞ corresponds to a system with shortest-job-first (SJF) policy, which results in a mean waiting time of 10.38 for gated service, 3.53 for exhaustive service, and 9.75 for globally gated service. The dotted horizontal lines in Figures 1, 2 and 3 indicate these values.

From Figures 1 - 3 we can conclude that, as far as overall mean waiting time is concerned, the introduction of priority levels significantly improves the performance of this polling system of two queues. An interesting question is whether the introduction of multiple priority levels

still significantly improves the performance of a polling system consisting of more than two queues. In order to answer this question we compare polling systems with identical total occupation rate and identical total mean switch-over time. We only vary the number of queues N and, in order to keep the total occupation rate constant, the arrival intensities λ , i i = 1 , . . . , N . All systems are symmetrical, which means that in each system λ i = Λ /N,ρ i = ρ/N,E B ( i ) = β, E S ( i ) = E S /N,i ( ) = 1 , . . . , N . For this example we use Λ = 8 10 , B i exponentially distributed with mean β = 1, and deterministic switch-over times with E S ( ) = 2. Figures 4 (gated) and 5 (exhaustive) show the mean waiting time (which is identical for each queue, because of symmetry) versus the number of queues in the system. In each figure the mean waiting time is plotted for both the FCFS and the SJF policy. The mean waiting time of SJF provides a lower bound for what can be achieved by introducing priority levels. A conclusion that can be drawn from both figures is that the relative improvement by adding priority levels decreases quickly when the number of queues increases. This suggests that the introduction of priority levels has less influence in a system with more queues, because the server spends a greater part of each cycle serving other queues. Another typical feature that is illustrated in Figures 4 and 5 is that the mean waiting time of an arbitrary customer decreases when the number of queues increases in a gated polling system, whereas it increases in an exhaustive polling system. This can be verified using the pseudo-conservation law. For a polling system without priorities with FCFS service at each queue, Equation (3.12) reduces to

$$\sum _ { i = 1 } ^ { N } \rho _ { i } E ( W _$$

The Z ii ( i = 1 , . . . , N ) depend on the service discipline that is used and are discussed in Subsection 3.5. For an exhaustive polling system, E Z ( ii ) = 0, so if we substitute ρ i = ρ/N , we obtain

$$E ( W _ { i } ) = \frac { \rho } { 1 - \rho } \frac { E ( B _ { i } ^ { 2 } ) } { 2 E ( B _ { i } ) } + \frac { E ( S ^ { 2 } ) } { 2 E ( S ) } + \left ( 1 - \frac { 1 } { N } \right ) \frac { \rho E ( S ) } { 2 ( 1 - \rho ) },$$

which indeed gets larger as N increases. For gated service, we have E Z ( ii ) = ρ E S 2 i ( ) 1 -ρ , which results in

$$E ( W _ { i } ) = \frac { \rho } { 1 - \rho } \frac { E ( B _ { i } ^ { 2 } ) } { 2 E ( B _ { i } ) } + \frac { E ( S ^ { 2 } ) } { 2 E ( S ) } + \left ( 1 + \frac { 1 } { N } \right ) \frac { \rho E ( S ) } { 2 ( 1 - \rho ) }.$$

This expression indeed gets smaller as N increases. In practice this means that mean waiting times can be reduced when gated service is used, by creating more queues and assign arriving customers to a random queue. It is however questionable whether this can be realised without changing the total switch-over time distribution. Notice that for N → ∞ the mean waiting time in an exhaustive symmetric polling system is equal to the mean waiting time in a gated symmetric polling system.

Figure 1: Overall mean waiting time of customers in Q 1 in the gated polling system, versus number of priority levels K 1 .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0282v1-figure-56e7b5b3-3d06-45f3-8d61-31828f1eb656.jpg)

Figure 2: Overall mean waiting time of customers in Q 1 in the exhaustive polling system, versus number of priority levels K 1 .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0282v1-figure-1901337c-a804-42ea-a7b8-6a0ec5e132ad.jpg)

Figure 3: Overall mean waiting time of customers in Q 1 in the globally gated polling system, versus number of priority levels K 1 .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0282v1-figure-f109bb55-53b4-4ffd-97a0-231f2bf44cbe.jpg)

Figure 4: Mean waiting time E W ( i ) in the gated polling system, versus number of queues.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0282v1-figure-05c1e574-7d5a-4c24-aa2e-f4c113311e9d.jpg)

Figure 5: Mean waiting time E W ( i ) in the exhaustive polling system, versus number of queues.

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0282v1-figure-c784dbe2-dc3b-4c1e-b347-2425ff741bd5.jpg)

## References

- [1] M. A. A. Boon, I. J. B. F. Adan, and O. J. Boxma. A two-queue polling model with two priority levels in the first queue. Eurandom report 2008-016, Eurandom , 2008. (to appear in Discrete Event Dynamic Systems, 2009)
- [2] S. C. Borst. Polling Systems , volume 115 of CWI Tracts . 1996.
- [3] S. C. Borst and O. J. Boxma. Polling models with and without switchover times. Operations Research , 45(4):536 - 543, 1997.
- [4] O. J. Boxma. Workloads and waiting times in single-server systems with multiple customer classes. Queueing Systems , 5:185-214, 1989.
- [5] O. J. Boxma and W. P. Groenendijk. Pseudo-conservation laws in cyclic-service systems. Journal of Applied Probability , 24(4):949-964, 1987.
- [6] O. J. Boxma, H. Levy, and U. Yechiali. Cyclic reservation schemes for efficient operation of multiple-queue single-server systems. Annals of Operations Research , 35(3):187-208, 1992.
- [7] O. J. Boxma, J. Bruin, and B. H. Fralix. Waiting times in polling systems with various service disciplines. Performance Evaluation , 66:621-639, 2009.
- [8] G. L. Choudhury and W. Whitt. Computing distributions and moments in polling models by numerical transform inversion. Performance Evaluation , 25(4):267-292, 1996.
- [9] M. Cicin-Sain, C. E. M. Pearce, and J. Sunde. On the application of a polling model with non-zero walk times and priority processing to a medical emergency-room environment.

Proceedings of the 23rd International Conference on Information Technology Interfaces, 2001 , 1:49-56, 2001.

- [10] J. W. Cohen. The Single Server Queue . North-Holland, Amsterdam, revised edition, 1982.
- [11] R. B. Cooper and G. Murray. Queues served in cyclic order. The Bell System Technical Journal , 48(3):675-689, 1969.
- [12] M. Eisenberg. Queues with periodic service and changeover time. Operations Research , 20(2):440-451, 1972.
- [13] L. Fournier and Z. Rosberg. Expected waiting times in polling systems under priority disciplines. Queueing Systems , 9(4):419-439, 1991.
- [14] S. W. Fuhrmann. Performance analysis of a class of cyclic schedules. Technical memorandum 81-59531-1, Bell Laboratories, March 1981.
- [15] S. W. Fuhrmann and R. B. Cooper. Stochastic decompositions in the M/G/ 1 queue with generalized vacations. Operations Research , 33(5):1117-1129, 1985.
- [16] J. Keilson and L. D. Servi. The distributional form of Little's Law and the FuhrmannCooper decomposition. Operations Research Letters , 9(4):239-247, 1990.
- [17] O. Kella and U. Yechiali. Priorities in M/G/ 1 queue with server vacations. Naval Research Logistics , 35:23-34, 1988.
- [18] A. Khamisy, E. Altman, and M. Sidi. Polling systems with synchronization constraints. Annals of Operations Research , 35:231 - 267, 1992.
- [19] H. Levy and M. Sidi. Polling systems: applications, modeling, and optimization. IEEE Transactions on Communications , 38:1750-1760, 1990.
- [20] M. P. Quine. The multi-type Galton-Watson process with immigration. Journal of Applied Probability , 7(2):411-422, 1970.
- [21] J. A. C. Resing. Polling systems and multitype branching processes. Queueing Systems , 13:409 - 426, 1993.
- [22] S. Shimogawa and Y. Takahashi. A pseudo-conservation law in a cyclic-service system with priority classes. IEICE Research Report , (IN88-86):13-18, 1988.
- [23] L. Tak´cs. Two queues attended by a single server. a Operations Research , 16(3):639-650, 1968.
- [24] H. Takagi. Queuing analysis of polling models. ACM Computing Surveys (CSUR) , 20: 5-28, 1988.
- [25] H. Takagi. Priority queues with setup times. Operations Research , 38(4):667-677, 1990.
- [26] V. M. Vishnevskii and O. V. Semenova. Mathematical methods to study the polling systems. Automation and Remote Control , 67(2):173-220, 2006.

- [27] A. Wierman, E. M. M. Winands, and O. J. Boxma. Scheduling in polling systems. Performance Evaluation , 64:1009-1028, 2007.
- [28] E. M. M. Winands. Polling, Production &amp; Priorities . PhD thesis, Eindhoven University of Technology, 2007.
- [29] E. M. M. Winands, I. J. B. F. Adan, and G.-J. van Houtum. Mean value analysis for polling systems. Queueing Systems , 54:35-44, 2006.
Marko Boon Ivo Adan Onno Boxma
A Polling Model with Multiple Priority Levels
In this paper we consider a single-server cyclic polling system. Between
visits to successive queues, the server is delayed by a random switch-over
time. The order in which customers are served in each queue is determined by a
priority level that is assigned to each customer at his arrival. For this
situation the following service disciplines are considered: gated, exhaustive,
and globally gated. We study the cycle time distribution, the waiting times for
each customer type, the joint queue length distribution of all priority classes
at all queues at polling epochs, and the steady-state marginal queue length
distributions for each customer type.