## A Two-Queue Polling Model with Two Priority Levels in the First Queue ∗ †

M.A.A. Boon ‡ marko@win.tue.nl

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

O.J. Boxma † boxma@win.tue.nl

May, 2008

## Abstract

In this paper we consider a single-server cyclic polling system consisting of two queues. Between visits to successive queues, the server is delayed by a random switchover time. Two types of customers arrive at the first queue: high and low priority customers. For this situation the following service disciplines are considered: gated, globally gated, and exhaustive. We study the cycle time distribution, the waiting times for each customer type, the joint queue length distribution 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 high and low priority customers. More specifically, we study a polling system which consists of two queues, Q 1 and Q 2 . The first of these queues contains customers of two priority classes, high ( H ) and low ( L ). The exhaustive, gated and globally gated service disciplines are studied.

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

† The present paper is an adapted and extended version of [3].

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

Our motivation to study a polling model with priorities is that the performance of a polling system can be improved through the introduction of priorities. In production environments, e.g., one could give highest priority to jobs with a service requirement below a certain threshold level. This might decrease the mean waiting time of an arbitrary customer without having to purchase additional resources [24]. 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. Another application is discussed in [9], where a priority polling model is used to study scheduling of surgery procedures in medical emergency rooms. In the computer science community the Bluetooth and 802.11 protocols are frequently modelled as polling systems, cf. [17, 18, 19, 27]. Many scheduling policies that have been considered or implemented in these protocols involve different priority levels in order to improve Quality-of-Service (QoS) for traffic that is very sensitive to delays or loss of data, such as Voice over Wireless IP. The 802.11e amendment defines a set of QoS enhancements for wireless LAN applications by differentiating between high priority traffic, like streaming multimedia, and low priority traffic, like web browsing and email traffic.

Although there is quite an extensive amount of literature available on polling systems, only very few papers treat priorities in polling models. Most of these papers only provide approximations or focus on pseudo-conservation laws. In [24] exact mean waiting time results are obtained using the Mean Value Analysis (MVA) framework for polling systems, developed in [26]. 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. The main contribution of the present paper is the derivation of Laplace Stieltjes Transforms (LSTs) of the distributions of the marginal waiting times for each customer type; in particular it turns 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 (PGFs) are 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.

The present paper is structured as follows: Section 2 gathers known results of nonpriority polling models which are relevant for the present study. Sections 3 (gated), 4 (globally gated), and 5 (exhaustive) 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. A numerical example is presented in Section 6 to illustrate some of the improvements that can be obtained by introducing prioritisation in a polling system.

## 2 Notation and description of the nonpriority polling model

The model that is considered in this section, is a nonpriority polling model with two queues ( Q 1 and Q 2 ). We consider three service disciplines: gated, globally gated, and exhaustive. The gated service discipline states that during a visit to Q i , the server serves only those type i customers who are present at the polling epoch. All type i customers that arrive during this visit will be served in the next cycle. In this respect, a cycle is the time between two successive visit beginnings to a queue. The exhaustive service discipline states that when the server arrives at Q i , all type i customers are served until no type i customer is present in the system. We also consider the globally gated service discipline, which 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 ( i = 1 2) , . Service times can follow any distribution, and we assume that a customer's service time is independent of other service times and independent of the arrival processes. 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 2), 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 ρ := ρ 1 + ρ 2 . 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.

[22] studied this model, but without switch-over times and only with the exhaustive service discipline. [11] analysed this polling system for any number of queues, and for both gated and exhaustive service disciplines. [12] obtained results for a polling system with switchover times (but only exhaustive service) by relating the PGFs of the joint queue length distributions at visit beginnings, visit endings, service beginnings and service endings. [20] was the first to point out the relation between polling systems and Multitype Branching Processes with immigration in each state. 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 two queues, two priorities in the first queue, 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 [4]:

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 [16], 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 [20] can be extended to this model.

[5] combined the results of [20] and [12] to find a relation between the PGFs of the marginal queue length distribution for polling systems with and without switch-over times, expressed in the Fuhrmann-Cooper queue length decomposition form [13].

## 2.1 Joint queue length distribution at polling epochs

glyph[negationslash]

The probability generating function h i ( z , . . . , z 1 n ) which is mentioned in Property 2.1 depends on the service discipline. In a polling system with two queues and gated service we have h i ( z , z 1 2 ) = β i ( λ 1 (1 -z 1 ) + λ 2 (1 -z 2 )) . For exhaustive service this PGF becomes h i ( z , z 1 2 ) = π i ( ∑ j = i λ j (1 -z j )) , where π i ( ) · is the LST of a busy period (BP) distribution in an M/G/ 1 system with only type i customers, so it is the root of the equation π i ( ω ) = β i ( ω + λ i (1 -π i ( ω ))) . We choose the beginning of a visit to Q 1 as start of a cycle. In order to find the joint queue length distribution at the beginning of a cycle, we relate the numbers of customers in each queue at the beginning of a cycle to those at the beginning of the previous cycle. Customers always enter the system during a switch-over time, or during a visit period. The first group is called immigration , whereas a customer from the second group is called offspring of the customer that is served at the moment of his arrival. We define the immigration PGF for each switch-over time and the offspring PGF for each visit period analogous to [20]. The immigration PGFs are:

$$g ^ { ( 2 ) } ( z _ { 1 }, z _ { 2 } ) & = \sigma _ { 2 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ), \\ g ^ { ( 1 ) } ( z _ { 1 }, z _ { 2 } ) & = \sigma _ { 1 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - h _ { 2 } ( z _ { 1 }, z _ { 2 } ) ) ).$$

g (2) ( z , z 1 2 ) is the PGF of the joint distribution of type 1 and 2 customers that arrive during S 2 . For S 1 things are slightly more complicated, since type 2 customers arriving during S 1 may be served before the end of the cycle, and generate offspring. g (1) ( z , z 1 2 ) is the joint PGF of the type 1 and 2 customers present at the end of the cycle that either arrived during

S 1 , or are offspring of type 2 customers that arrived during S 1 . The total immigration PGF is the product of these two PGFs:

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

We define the offspring PGFs for each visit period in a similar manner:

$$f ^ { ( 2 ) } ( z _ { 1 }, z _ { 2 } ) & = h _ { 2 } ( z _ { 1 }, z _ { 2 } ), \\ f ^ { ( 1 ) } ( z _ { 1 }, z _ { 2 } ) & = h _ { 1 } ( z _ { 1 }, h _ { 2 } ( z _ { 1 }, z _ { 2 } ) ).$$

The term for Q 1 is again slightly more complicated than the term for Q 2 , since type 2 customers arriving during a server visit to Q 1 may be served before the end of the cycle, and generate offspring.

[20] shows that the following recursive expression holds for the joint queue length PGF at the beginning of a cycle (starting with a visit to Q 1 ):

$$P _ { 1 } ( z _ { 1 }, z _ { 2 } ) = g ( z _ { 1 }, z _ { 2 } ) P _ { 1 } \left ( f ^ { ( 1 ) } ( z _ { 1 }, z _ { 2 } ), f ^ { ( 2 ) } ( z _ { 1 }, z _ { 2 } ) \right ).$$

This expression can be used to compute moments of the joint queue length distribution. Alternatively, iteration of this expression yields the following closed form expression for P 1 ( z , z 1 2 ) :

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

where we use the following recursive definition for f n ( z , z 1 2 ) , n = 0 1 2 , , , . . . :

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

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

We can relate the joint queue length distribution at other polling epochs to P 1 ( z , z 1 2 ) . We denote the PGF of the joint queue length distribution at a visit beginning to Q i by V b i ( ) · , so P 1 ( ) = · V b 1 ( ) · . The PGF of the joint queue length distribution at a visit completion to Q i is denoted by V c i ( ) · . The following relations hold:

$$V _ { b _ { 1 } } ( z _ { 1 }, z _ { 2 } ) & = V _ { c _ { 2 } } ( z _ { 1 }, z _ { 2 } ) \sigma _ { 2 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ) \\ & = V _ { b _ { 2 } } ( z _ { 1 }, h _ { 2 } ( z _ { 1 }, z _ { 2 } ) ) \sigma _ { 2 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ) \\ & = V _ { b _ { 2 } } ( z _ { 1 }, f ^ { ( 2 ) } ( z _ { 1 }, z _ { 2 } ) ) g ^ { ( 2 ) } ( z _ { 1 }, z _ { 2 } ), & ( 2. 2 ) \\ V _ { b _ { 2 } } ( z _ { 1 }, z _ { 2 } ) & = V _ { c _ { 1 } } ( z _ { 1 }, z _ { 2 } ) \sigma _ { 1 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ) \\ & = V _ { b _ { 1 } } ( h _ { 1 } ( z _ { 1 }, z _ { 2 } ), z _ { 2 } ) \sigma _ { 1 } ( \lambda _ { 1 } ( 1 - z _ { 1 } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ). & ( 2. 3 )$$

## 2.2 Cycle time

The cycle time, starting at a visit beginning to Q 1 , is the sum of the visit times to Q 1 and Q 2 , and the two switch-over times which are independent of the visit times. Since type 2 customers who arrive during the visit to Q 1 or the switch from Q 1 to Q 2 will be served during the visit to Q 2 , it can be shown that the LST of the distribution of the cycle time C 1 , γ 1 ( ) · , is related to P 1 ( ) · as follows:

$$\gamma _ { 1 } ( \omega ) = \sigma _ { 1 } ( \omega + \lambda _ { 2 } ( 1 - \phi _ { 2 } ( \omega ) ) ) \, \sigma _ { 2 } ( \omega ) \, P _ { 1 } ( \phi _ { 1 } ( \omega + \lambda _ { 2 } ( 1 - \phi _ { 2 } ( \omega ) ) ), \phi _ { 2 } ( \omega ) ), \quad ( 2. 4 )$$

where φ i ( ) · is 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 ( ) · . A proof of (2.4) can be found in [8].

In some cases it is convenient to choose a different starting point for a cycle, for example when analysing a polling system with exhaustive service. If we define C ∗ 1 to be the time between two successive visit completions to Q 1 , the LST of its distribution, γ ∗ 1 ( ) · , is:

$$\gamma _ { 1 } ^ { * } ( \omega ) = & \sigma _ { 1 } ( \omega + \lambda _ { 1 } ( 1 - \phi _ { 1 } ( \omega ) ) + \lambda _ { 2 } ( 1 - \phi _ { 2 } ( \omega + \lambda _ { 1 } ( 1 - \phi _ { 1 } ( \omega ) ) ) ) ) \\ & \cdot \sigma _ { 2 } ( \omega + \lambda _ { 1 } ( 1 - \phi _ { 1 } ( \omega ) ) ) \, V _ { c _ { 1 } } ( \phi _ { 1 } ( \omega ), \phi _ { 2 } ( \omega + \lambda _ { 1 } ( 1 - \phi _ { 1 } ( \omega ) ) ) ),$$

with V c 1 ( z , z 1 2 ) = P 1 ( h 1 ( z , z 1 2 ) , z 2 ) .

## 2.3 Marginal queue lengths and waiting times

We denote the PGF of the steady-state marginal queue length distribution of Q 1 at the visit beginning by ˜ V b 1 ( z ) = V b 1 ( z, 1) . Analogously we define ˜ V b 2 ( ) · , V ˜ c 1 ( ) · , and ˜ V c 2 ( ) · . It is shown in [5] 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 N i I | . [5] show that by virtue of PASTA, N 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 ^ { N _ { i | I } } ) = \frac { E ( z ^ { N _ { i | I } _ { b e g i n } } ) - E ( z ^ { N _ { i | I } _ { e n d } } ) } { ( 1 - z ) ( E ( N _ { i | I _ { e n d } } ) - E ( N _ { i | I _ { b e g i n } } ) ) },$$

where N i I | begin is the number of type i customers at the beginning of an intervisit period I i , and N 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 PGFs for the distributions of these random variables: ˜ V c i ( ) · and ˜ V b i ( ) · . This leads to the following expression for the PGF of the steady-state queue length distribution of Q i at an arbitrary epoch, E z [ N i ] :

$$E [ z ^ { N _ { 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 ( N _ { i | I _ { e n d } } ) - E ( N _ { i | I _ { b e g i n } } ) ) }.$$

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

$$\bar { \ } _ { \mu \nu } ^ { - } \quad \lambda _ { i } \, \varphi ^ { 2 } \quad \, \int _ { I \, \nu \nu \nu } \, \stackrel { \sim } { \sim } \, \longrightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \longrightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \,  \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \leftarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \leftarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \rightarrow\, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow \, \rightarrow.$$

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 PGFs: ˜ V b i ( z ) = γ i ( λ i (1 -z )) . The number of 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 PGFs: ˜ V c i ( z ) = γ i ( λ i (1 -β i ( λ i (1 -z )))) . We can rewrite E N ( i I | end ) -E N ( i I | begin ) as λ E I i ( i ) , because this is the number of type i customers that arrive during an intervisit time. In Section 2.4 we show that λ E I i ( i ) = λ i (1 -ρ i ) E C ( ) . Using these expressions we can rewrite Equation (2.7) 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.7) 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 [ \mathrm 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 } ) }.$$

To the best of our knowledge, the following result is new.

Proposition 2.3 Let the cycle time C ∗ i be the time between two successive visit completions to Q i . The LST of the cycle time distribution is given by (2.5). An equivalent expression for E [ e -ωW i ] if Q i is served exhaustively, is:

$$\cdot \quad \cdot \quad \cdot & \quad \cdot \\ & 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 .

## Proof:

The cycle time is the length of an intervisit period I i plus the length of a visit V i , which is the time required to serve all type i customers that have arrived during I i , and their type i descendants. Hence, the following equation holds:

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

We use this equation to find the inverse relation:

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

If we substitute s := ω + λ i (1 -π i ( ω )) , we find

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

$$\text{Substitution of (2.12) into (2.9) gives (2.10). }$$

Remark 2.4 We can write (2.11) and (2.12) as follows:

$$\gamma _ { i } ^ { * } ( \omega ) = \widetilde { I } _ { i } ( \psi ( \omega ) ), \quad \widetilde { I } _ { i } ( s ) = \gamma _ { i } ^ { * } ( \phi ( s ) ),$$

where φ ( ) · equals the Laplace exponent of the Lévy process ∑ N t ( ) j =1 B i,j -t , with N t ( ) a Poisson process with intensity λ i , and with ψ ω ( ) = ω + λ i (1 -π i ( ω )) , which is known to be the inverse of φ ( ) · .

## 2.4 Moments

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

First we will 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 )+ E S ( 2 ) 1 -ρ . This can easily be seen, because 1 -ρ is the fraction of time that the server is not working, but switching. The total switch-over time is E S ( 1 ) + E S ( 2 ) .

The expected length of a visit to Q i is E V ( i ) = ρ E C i ( ) . 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 ) . The

expected number of type i customers at the beginning of a visit to Q i +1 is λ i ( E V ( i )+ E S ( i )) for gated service, and λ E S i ( i ) for exhaustive service.

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

Gated:

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

Exhaustive:

$$( 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 , whereas the start of C ∗ i is the end of a visit. Equations (2.13) and (2.14) are in agreement with Equations (4.1) and (4.2) in [6]. Although at first sight these might seem nice, closed formulas, it should be noted that the expected residual cycle time and the expected residual intervisit time are not easy to determine, requiring the solution of a large 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 [26] for an MVA framework for polling models.

## 3 Gated service

In this section we study the gated service discipline for a polling system with two queues and two priority classes in the first queue: high ( H ) and low ( L ) priority customers. All type H and L customers that are present at the moment when the server arrives at Q 1 , will be served during the server's visit to Q 1 . First all type H customers will be served, then all type L customers. Type H customers arrive at Q 1 according to a Poisson process with intensity λ H , and have a service requirement B H with LST β H ( ) · . Type L customers arrive at Q 1 with intensity λ L , and have a service requirement B L with LST β L ( ) · . If we do not distinguish between high and low priority customers, we can still use the results from Section 2 if we regard the system as a polling system with two queues where customers in Q 1 arrive according to a Poisson process with intensity λ 1 := λ H + λ L and have service requirement B 1 with LST β 1 ( ) = · λ H λ 1 β H ( ) + · λ L λ 1 β L ( ) · .

We follow the same approach as in Section 2. First we study the joint queue length distribution at polling epochs, then the cycle time distribution, followed by the marginal queue length distribution and waiting time distribution. The last subsection provides the first moment of these distributions.

## 3.1 Joint queue length distribution at polling epochs

Equations (2.2) and (2.3) give the PGFs of the joint queue length distribution at visit beginnings, V b i ( z , z 1 2 ) . A type 1 customer entering the system is a type H customer with probability λ H /λ 1 , and a type L customer with probability λ /λ L 1 . We can express the PGF of the joint queue length distribution in the polling system with priorities, V b i ( · , · , · ) , in terms of the PGF of the joint queue length distribution in the polling system without priorities, V b i ( · , · ) .

## Lemma 3.1

$$V _ { b _ { i } } ( z _ { H }, z _ { L }, z _ { 2 } ) = V _ { b _ { i } } \left ( \frac { \lambda _ { H } z _ { H } + \lambda _ { L } z _ { L } } { \lambda _ { 1 } }, z _ { 2 } \right ).$$

## Proof:

Let X H be the number of high priority customers present in Q 1 at the beginning of a visit to Q i , i = 1 2 , . Similarly define X L to be the number of low priority customers present in Q 1 at the beginning of a visit to Q i . Let X 1 = X H + X L . Since the type H L / customers in Q 1 are exactly those H L / customers that arrived since the previous visit beginning at Q i , we know that

$$P ( X _ { H } = i, X _ { L } = k - i | X _ { 1 } = k ) = \binom { k } { i } \left ( \frac { \lambda _ { H } } { \lambda _ { 1 } } \right ) ^ { i } \left ( \frac { \lambda _ { L } } { \lambda _ { 1 } } \right ) ^ { k - i }.$$

Hence

Finally,

$$V _ { b _ { i } } ( z _ { H }, z _ { L }, z _ { 2 } ) & = \sum _ { i = 0 } ^ { \infty } \sum _ { j = 0 } ^ { \infty } \left ( \frac { \lambda _ { H } z _ { H } + \lambda _ { L } z _ { L } } { \lambda _ { 1 } } \right ) ^ { i } z _ { 2 } ^ { j } P ( X _ { 1 } = i, X _ { 2 } = j ) \\ & = V _ { b _ { i } } \left ( \frac { 1 } { \lambda _ { 1 } } ( \lambda _ { H } z _ { H } + \lambda _ { L } z _ { L } ), z _ { 2 } \right ).$$

$$E [ z _ { H } ^ { X _ { H } } z _ { L } ^ { X _ { L } } | X _ { 1 } = k ] & = \sum _ { i = 0 } ^ { \infty } \sum _ { j = 0 } ^ { \infty } z _ { H } ^ { i } z _ { L } ^ { j } P ( X _ { H } = i, X _ { L } = j | X _ { 1 } = k ) \\ & = \left ( \frac { \lambda _ { H } z _ { H } + \lambda _ { L } z _ { L } } { \lambda _ { 1 } } \right ) ^ { k }.$$

glyph[square]

## 3.2 Cycle time

The LST of the cycle time distribution is still given by (2.4) if we define λ 1 := λ H + λ L and β 1 ( ) · := λ H λ 1 β H ( ) + · λ L λ 1 β L ( ) · , because the cycle time does not depend on the order of service.

Equation (2.4) is valid for polling systems with queues having any branching type service discipline. In the present section we can derive an alternative, shorter expression for γ 1 ( ) · by explicitly using the fact that Q 1 receives gated service. The type 1 (i.e. both H and L ) customers present at the visit beginning to Q 1 are those that arrived during the previous cycle: P 1 ( z, 1) = γ 1 ( λ 1 (1 -z )) . By setting ω = λ 1 (1 -z ) , this leads to the following expression for the LST of the distribution of C 1 if service in Q 1 is gated:

$$\gamma _ { 1 } ( \omega ) = P _ { 1 } ( 1 - \frac { \omega } { \lambda _ { 1 } }, 1 ).$$

## 3.3 Marginal queue lengths and waiting times

We first determine the LST of the waiting time distribution for a type L customer, using the fact that this customer will not be served until the next cycle (starting at Q 1 ). The time from the start of the cycle until the arrival will be called 'past cycle time', denoted by C 1 P . The residual cycle time will be denoted by C 1 R . The waiting time of a type L customer is composed of C 1 R , the service times of all high priority customers that arrived during C 1 P + C 1 R , and the service times of all low priority customers that have arrived during C 1 P . Let N H ( T ) be the number of high priority customers that have arrived during time interval T , and equivalently define N L ( T ) .

## Theorem 3.2

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

## Proof:

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

$$& = \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } \text{e} ^ { - t ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) } \text{e} ^ { - u ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) ) } \text{d} P ( C _ { 1 P } < t, C _ { 1 R } < u ) \\ & = \frac { \gamma _ { 1 } ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) - \gamma _ { 1 } ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) ) } { ( \omega - \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) E ( C ) }. \\ - \quad. & \quad. & \quad. & \quad. & \quad. & \quad. & \quad. & \quad. & \quad.$$

$$\begin{array} { l } & & \cdot e ^ { - \omega u } \frac { ( \lambda _ { H } ( t + u ) ) ^ { m } } { m! } e ^ { - \lambda _ { H } ( t + u ) } \frac { ( \lambda _ { L } t ) ^ { n } } { n! } \mathrm e ^ { - \lambda _ { L } t } \mathrm d P ( C _ { 1 P } < t, C _ { 1 R } < u ) \\ & & \\ & = \int _ { t = 0 } ^ { \infty } \int _ { u = 0 } ^ { \infty } \mathrm e ^ { - t ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) } \mathrm e ^ { - u ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) ) } \mathrm d P ( C _ { 1 P } < t, C _ { 1 R } < u ) \\ & = \frac { \gamma _ { 1 } ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) - \gamma _ { 1 } ( \omega + \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) ) } { ( \omega - \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) ) E ( C ) }. \end{array}$$

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

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

which is obtained in [7].

glyph[square]

Remark 3.3 The Fuhrmann-Cooper decomposition [13] still holds for the waiting time of type L customers, because (3.3) can be rewritten into

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

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 L customers. An interpretation of the other two terms on the right-hand side can be found when regarding the polling system as a polling system with three queues ( Q ,Q ,Q H L 2 ) and no switch-over time between Q H and Q L . The service discipline of this equivalent system is synchronised gated, which is a more general version of gated. The gates for queues Q H and Q L are set simultaneously when the server arrives at Q H , but the gate for Q 2 is still set when the server arrives at Q 2 . In the following paragraphs we show that the second and third term on the right-hand side of (3.4) together can be interpreted as E [ ( 1 -ω λ L ) N L I | ] , where N L I | is the number of type L customers at a random epoch during the intervisit period of Q L .

The expression for the LST of the distribution of the number of type L customers at an arbitrary epoch is determined by first converting the waiting time LST to sojourn time LST, i.e., multiplying expression (3.4) with β L ( ω ) . Second, we apply the distributional form of Little's law [14] to (3.4). This law can be applied because the required conditions are fulfilled for each customer class (H, L, and 2): 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. The result is:

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

In this equation ˜ V b L ( z ) denotes the PGF of the distribution of the number of type L customers at the beginning of a visit to Q L , and ˜ V c L ( z ) denotes the PGF at the completion of a visit to Q L :

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

The last term in (3.5) is the PGF of the distribution of the number of type L customers at an arbitrary epoch during the intervisit period of Q L , E z [ N L I | ] . Substitution of ω := λ L (1 -z ) in (3.5), and using ( E N ( L I | end ) -E N ( L I | begin )) = λ E I L ( L ) , shows that the second and third term at the right-hand side of (3.4) together indeed equal E [ ( 1 -ω λ L ) N L I | ] .

The derivation of the LSTs of W H and W 2 is similar and leads to the following expressions:

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

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

Remark 3.4 Equations (3.6) and (3.7) are equivalent to the LST of W i in a nonpriority polling system (2.8), which illustrates that the Fuhrmann-Cooper decomposition also holds for the waiting time distributions of high priority customers in Q 1 and type 2 customers in a polling system with gated service.

Application of the distributional form of Little's law to these expressions results in:

$$E \left [ z ^ { N _ { H } } \right ] & = \frac { ( 1 - \rho _ { H } ) ( 1 - z ) \beta _ { H } ( \lambda _ { H } ( 1 - z ) ) } { \beta _ { H } ( \lambda _ { H } ( 1 - z ) ) - z } \cdot \frac { \gamma _ { 1 } ( \lambda _ { H } ( 1 - \beta _ { H } ( \lambda _ { H } ( 1 - z ) ) ) ) - \gamma _ { 1 } ( \lambda _ { H } ( 1 - z ) ) } { \lambda _ { H } ( 1 - \rho _ { H } ) ( 1 - z ) E ( C ) }, \\ E \left [ z ^ { N _ { 2 } } \right ] & = \frac { ( 1 - \rho _ { 2 } ) ( 1 - z ) \beta _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) } { \beta _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) - z } \cdot \frac { \gamma _ { 2 } ( \lambda _ { 2 } ( 1 - \beta _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) ) ) - \gamma _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) } { \lambda _ { 2 } ( 1 - \rho _ { 2 } ) ( 1 - z ) E ( C ) }.$$

Remark 3.5 If the service discipline in Q 2 is not gated, but another branching type service discipline that satisfies Property 2.1, (3.7) should be replaced by the more general expression (2.7).

## 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 H and L customers. For a type H customer, it is immediately clear that E W ( H ) = (1 + ρ H ) E C ( 1 , res ) . The mean waiting time for a type L customer can be obtained by differentiating (3.3). This results in:

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

These formulas can also be obtained using MVA, as shown in [24].

## 4 Globally gated service

In this section we discuss a polling model with two queues ( Q , Q 1 2 ) and two priority classes ( H and L ) in Q 1 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 three queues ( Q ,Q ,Q H L 2 ) . 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 three ( i = H,L, 2) offspring PGFs are:

$$f ^ { ( i ) } ( z _ { H }, z _ { L }, z _ { 2 } ) & = h _ { i } ( z _ { H }, z _ { L }, z _ { 2 } ) \\ & = \beta _ { i } ( \lambda _ { H } ( 1 - z _ { H } ) + \lambda _ { L } ( 1 - z _ { L } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ),$$

The two ( i = 1 2) , immigration functions are:

$$g ^ { ( i ) } ( z _ { H }, z _ { L }, z _ { 2 } ) = \sigma _ { i } ( \lambda _ { H } ( 1 - z _ { H } ) + \lambda _ { L } ( 1 - z _ { L } ) + \lambda _ { 2 } ( 1 - z _ { 2 } ) ),$$

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

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

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 _ { H }, z _ { L }, z _ { 2 } ) = \gamma _ { 1 } ( \lambda _ { H } ( 1 - z _ { H } ) + \lambda _ { L } ( 1 - z _ { L } ) + \lambda _ { 2 } ( 1 - z _ { 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 ) = \sigma _ { 1 } ( \omega ) \sigma _ { 2 } ( \omega ) P _ { 1 } ( \beta _ { H } ( \omega ), \beta _ { L } ( \omega ), \beta _ { 2 } ( \omega ) ).$$

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

$$& \gamma _ { 1 } ( \omega ) = \sigma _ { 1 } ( \omega ) \sigma _ { 2 } ( \omega ) \\ & \cdot \gamma _ { 1 } ( \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) + \lambda _ { 2 } ( 1 - \beta _ { 2 } ( \omega ) ) ).$$

[7] show that this relation leads to the following expression for the cycle time LST:

$$\gamma _ { 1 } ( \omega ) = \prod _ { i = 0 } ^ { \infty } \sigma ( \delta ^ { ( i ) } ( \omega ) ),$$

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

$$\delta ^ { ( 0 ) } ( \omega ) & = \omega, \\ \delta ^ { ( i ) } ( \omega ) & = \delta ( \delta ^ { ( i - 1 ) } ( \omega ) ), \quad \ i = 1, 2, 3, \dots, \\ \delta ( \omega ) & = \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) + \lambda _ { 2 } ( 1 - \beta _ { 2 } ( \omega ) ).$$

## 4.3 Marginal queue lengths and waiting times

For type H and L customers, the expressions for E ( e -ωW H ) and E ( e -ωW L ) are exactly the same as the ones found in Section 3.3, but with γ 1 ( ) · as defined in (4.3).

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

$$\ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e pr o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ ep r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e pr o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e vc { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e pro c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } \\ \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c < \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ ev c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n } & \ e v c { \ e p r o c o n }$$

We can use the distributional form of Little's law to determine the LST of the marginal queue length distribution of Q 2 :

$$E \left [ z ^ { N _ { 2 } } \right ] = & \sigma _ { 1 } ( \lambda _ { 2 } ( 1 - z ) ) \frac { ( 1 - \rho _ { 2 } ) ( 1 - z ) \beta _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) } { \beta _ { 2 } ( \lambda _ { 2 } ( 1 - z ) ) - z } \\ & \cdot \frac { \gamma _ { 1 } \left ( \sum _ { i = H, L, 2 } \lambda _ { i } ( 1 - \beta _ { i } ( \lambda _ { 2 } ( 1 - z ) ) ) \right ) - \gamma _ { 1 } \left ( \lambda _ { 2 } ( 1 - z ) + \sum _ { i = H, L } \lambda _ { i } ( 1 - \beta _ { i } ( \lambda _ { 2 } ( 1 - z ) ) ) \right ) } { \lambda _ { 2 } ( 1 - \rho _ { 2 } ) ( 1 - z ) E ( C ) }.$$

Remark 4.1 The Fuhrmann-Cooper queue length decomposition also holds for all customer classes in a polling system with globally gated service.

.

## 4.4 Moments

The expressions for E W ( H ) and E W ( L ) from Section 3.4 also hold in a globally gated polling system, but with a different mean residual cycle time. We only provide the mean waiting time of type 2 customers:

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

## 5 Exhaustive service

In this section we study the same polling model as in the previous two sections, but the two queues are served exhaustively. The section has the same structure as the other sections, so we start with the derivation of the LST of the joint queue length distribution at polling epochs, followed by the LST of the cycle time distribution. LSTs of the marginal queue length distributions and waiting time distributions are provided in the next subsection. In the last part of the section the mean waiting time of each customer type is studied.

It should be noted that, although we assume that both Q 1 and Q 2 are served exhaustively, a model in which Q 2 is served according to another branching type service discipline, requires only minor adaptations.

## 5.1 Joint queue length distribution at polling epochs

We can derive the joint queue length distribution at the beginning of a cycle for a polling system with two queues and two priority classes in Q 1 , P 1 ( z H , z L , z 2 ) , directly from (2.1) for P 1 ( z , z 1 2 ) . Similar to the proof of Lemma 3.1, we can prove that

$$P _ { 1 } ( z _ { H }, z _ { L }, z _ { 2 } ) = P _ { 1 } \left ( \frac { 1 } { \lambda _ { 1 } } ( \lambda _ { H } z _ { H } + \lambda _ { L } z _ { L } ), z _ { 2 } \right ).$$

The same holds for V b 2 ( · , · , · ) and visit completion epochs V c i ( · , · , · ) , for i = 1 2 , .

## 5.2 Cycle time

For the cycle time starting with a visit to Q 1 , (2.4) is still valid. However, when studying the waiting time of a specific customer type in an exhaustively served queue, it is convenient to consider the completion of a visit to Q 1 as the start of a cycle. Hence, in this section the notation C ∗ 1 , or the LST of its distribution, γ ∗ 1 ( ) · , refers to the cycle time starting at the completion of a visit to Q 1 . Equation (2.5) gives the LST of the distribution of C ∗ 1 .

Using the fact that customers in Q 1 are served exhaustively, we can find an alternative, compact expression for γ ∗ 1 ( ) · . The type 1 (i.e. both type H and L customers) customers at

the beginning of a visit to Q 1 are exactly those type 1 customers that have arrived during the previous intervisit time: P 1 ( z, 1) = ˜ I 1 ( λ 1 (1 -z )) . Hence, by setting ω = λ 1 (1 -z ) , we get ˜ I 1 ( ω ) = P 1 (1 -ω λ 1 , 1) , and thus by (2.11),

$$\gamma _ { 1 } ^ { * } ( \omega ) = P _ { 1 } ( \pi _ { 1 } ( \omega ) - \frac { \omega } { \lambda _ { 1 } }, 1 ).$$

## 5.3 Marginal queue lengths and waiting times

Analysis of the model with exhaustive service requires a different approach. The key observation, made by [13], is that a nonpriority polling system from the viewpoint of a type i customer is an M/G/ 1 queue with multiple server vacations. This implies that the Fuhrmann-Cooper decomposition can be used, even though the intervisit times are strongly dependent on the visit times. The M/G/ 1 queue with priorities and vacations can be analysed by modelling the system as a special version of the nonpriority M/G/ 1 queue with multiple server vacations, and then applying the results from Fuhrmann and Cooper. This approach has been used by [15] who used the concept of delay cycles , and also by [21] who used level crossing analysis ; see also [23]. We apply Kella and Yechiali's approach to the polling model under consideration to find the waiting time LST for type H and L customers. In [15] systems with single and multiple vacations, preemptive resume and nonpreemptive service are considered. In the present paper we do not consider preemptive resume, so we only use results from the case labelled as NPMV (nonpreemptive, multiple vacations) in [15]. We consider the system from the viewpoint of a type H and type L customer separately to derive E [ e -ωW H ] and E [ e -ωW L ] .

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

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

Equation (5.2) follows immediately from the fact that the number of type 1 (i.e. both H and L) customers at the beginning of a visit to Q 1 is the number of type 1 customers that have arrived during the previous intervisit period: P 1 ( z, 1) = E [ e -( λ 1 (1 -z )) I 1 ] .

We now use the concept of delay cycles, introduced in [15], to find the waiting time LST of a type H customer. The key observation is that an arrival of a tagged type H customer will always take place within either an I H cycle, or an L H cycle. An I H cycle is a cycle that starts with an intervisit period for Q 1 , followed by the service of all type H customers that have arrived during the intervisit period, and ends at the moment that no type H customers are left in the system. Notice that at the start of the intervisit period, no type H customers were present in the system either. An L H 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 customers are left in the system.

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

$$\psi _ { \nu - \rho _ { H } } ^ { \nu - \rho _ { H } } E ( L _ { H } \text{ cycle} ) & = E ( B _ { L } ) + \lambda _ { H } E ( B _ { L } ) E ( B P _ { H } ) \\ & = E ( B _ { L } ) + \lambda _ { H } E ( B _ { L } ) \frac { E ( B _ { H } ) } { 1 - \rho _ { H } } \\ & = ( 1 + \frac { \rho _ { H } } { 1 - \rho _ { H } } ) E ( B _ { L } ) = \frac { E ( B _ { L } ) } { 1 - \rho _ { H } }, \\ \cdots \text{is the mean length of a busy period of true } H \text{ customers}$$

where E ( BP H ) is the mean length of a busy period of type H customers.

The fraction of time that the system is in an I H cycle, is 1 -ρ L 1 -ρ H = 1 -ρ 1 1 -ρ H . 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 1 , which is equal to 1 -ρ 1 . A cycle which starts with such an intervisit period and stops when all type H customers that arrived during the intervisit period and their type H descendants have been served, has mean length E I ( 1 )+ λ H E I ( 1 ) E ( BP H ) = E I ( 1 ) 1 -ρ H . This also leads to the conclusion that 1 -ρ 1 1 -ρ H is the fraction of time that the system is in an I H cycle. A customer arriving during an I H cycle views the system as a nonpriority M/G/ 1 queue with multiple server vacations I 1 ; a customer arriving during an L H cycle views the system as a nonpriority M/G/ 1 queue with multiple server vacations B L .

[13] 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. Hence, the LST of the waiting time distribution of a type H customer is:

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

Equation (5.3) is in accordance with the more general equation in Section 4.1 in [15].

Remark 5.1 The LST of the distribution of the waiting time of a high priority customer in a two priority M/G/ 1 queue without vacations is

$$E [ \mathrm e ^ { - \omega W _ { H | M / G / 1 } } ] = \frac { ( 1 - \rho _ { 1 } ) \omega + \lambda _ { L } ( 1 - \beta _ { L } ( \omega ) ) } { \omega - \lambda _ { H } ( 1 - \beta _ { H } ( \omega ) ) },$$

see, e.g., Equation (3.85) in [10], Chapter III.3. Equation (5.4) can be rewritten to (5.3), with 1 -˜ I 1 ( ω ) ωE I ( 1 ) replaced by 1. Hence, the waiting time distribution of a high priority customer in a two priority M/G/ 1 queue equals the waiting time distribution of a customer in a nonpriority M/G/ 1 queue with only type H customers, where the server goes on a vacation B L with probability ρ L 1 -ρ H .

Remark 5.2 Substitution of (2.12) in (5.3) expresses E [ e -ωW H ] in terms of the LST of the cycle time distribution starting at a visit completion to Q 1 , γ ∗ 1 ( ) · :

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

The concept of cycles is not really needed to model the system from the perspective of a type L customer, because for a type L customer the system merely consists of I HL cycles. An I HL cycle is the same as an I H cycle, discussed in the previous paragraphs, except that it ends when no type H or L customers are left in the system. So the system can be modelled as a nonpriority M/G/ 1 queue with server vacations. The vacation is the intervisit time I 1 , plus the service times of all type H customers that have arrived during that intervisit time and their type H descendants. We will denote this extended intervisit time by I ∗ with LST

1

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

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

We also have to take into account that a busy period of type L customers might be interrupted by the arrival of type H customers. Therefore the alternative system that we are considering will not contain regular type L customers, but customers still arriving with arrival rate λ L , whose service time equals the service time of a type L customer in the original model, 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 ∗ L is

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

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

Now we use the results from the M/G/ 1 queue with server vacations (starting with the Fuhrmann-Cooper decomposition) to determine the LST of the waiting time distribution for type L customers:

$$E [ e ^ { - \omega W _ { L } } ] = & \frac { ( 1 - \rho _ { L } ^ { * } ) \omega } { \omega - \lambda _ { L } ( 1 - \beta _ { L } ^ { * } ( \omega ) ) } \cdot \frac { 1 - \widetilde { I } _ { 1 } ^ { * } ( \omega ) } { \omega E ( I _ { 1 } ^ { * } ) } \\ = & \frac { ( 1 - \rho _ { 1 } ) ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { \omega - \lambda _ { L } ( 1 - \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) ) } \cdot \frac { 1 - \widetilde { I } _ { 1 } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) E ( I _ { 1 } ) }. \\ \dots \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 \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdot \quad \cdots$$

The last term of (5.6) is the LST of the distribution of the residual intervisit time, plus the time that it takes to serve all type H customers and their type H descendants that arrive during this residual intervisit time. The first term of (5.6) is the LST of the waiting time distribution of a low-priority customer in an M/G/ 1 queue with two priorities, without vacations (see e.g. (3.76) in [10], Chapter III.3).

Remark 5.3 The M/G/ 1 queue with two priorities can be viewed as a nonpriority M/G/ 1 queue with vacations, if we consider the waiting time of type L customers. We only need to rewrite the first term of (5.6):

$$\Lambda _ { \ } \cdots \cdots \cdots \\ E [ e ^ { - \omega W _ { L | M / G / 1 } } ] = & \frac { ( 1 - \rho _ { 1 } ) ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } { \omega - \lambda _ { L } ( 1 - \beta _ { L } ( \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) ) } \\ = & \frac { ( 1 - \rho _ { L } ^ { * } ) \omega } { \omega - \lambda _ { L } ( 1 - \beta _ { L } ^ { * } ( \omega ) ) } \cdot \frac { 1 - \rho _ { 1 } } { 1 - \rho _ { L } ^ { * } } \cdot \frac { \omega + \lambda _ { H } ( 1 - \pi _ { H } ( \omega ) ) } { \omega } \\ = & E [ e ^ { - \omega W _ { L | M / G / 1 } ^ { * } } ] \cdot \left [ ( 1 - \rho _ { H } ) + \rho _ { H } \frac { 1 - \pi _ { H } ( \omega ) } { \omega E ( B P _ { H } ) } \right ], \\. \quad - \Lambda _ { \ } \cdots W _ { * } ^ { * } \quad \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \cdots \end{$$

where E e [ -ωW ∗ L M/G/ | 1 ] is the LST of the waiting time distribution of a customer in an M/G/ 1 queue where customers arrive at intensity λ L and have service requirement LST β L ( ω + λ H (1 -π H ( ω ))) . So with probability 1 -ρ H the waiting time of a customer is the waiting time in an M/G/ 1 queue with no vacations, and with probability ρ H the waiting time of a customer is the sum of the waiting time in an M/G/ 1 queue and the residual length of a vacation, which is a busy period of type H customers.

Remark 5.4 Substitution of (2.12) in (5.6) leads to a different expression for E [ e -ωW L ] :

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

The waiting time of type 2 customers is not affected at all by the fact that Q 1 contains multiple classes of customers, so (2.9) is still valid for E ( e -ωW 2 ) .

We will refrain from mentioning the PGFs 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.

## 5.4 Moments

The mean waiting times for high and low priority customers can be found by differentiation of (5.3) and (5.6):

$$E ( W _ { H } ) & = \frac { \rho _ { H } E ( B _ { H, r e s } ) + \rho _ { L } E ( B _ { L, r e s } ) } { 1 - \rho _ { H } } + \frac { 1 - \rho _ { 1 } } { 1 - \rho _ { H } } E ( I _ { 1, r e s } ), \\ E ( W _ { L } ) & = \frac { \rho _ { H } E ( B _ { H, r e s } ) + \rho _ { L } E ( B _ { L, r e s } ) } { ( 1 - \rho _ { H } ) ( 1 - \rho _ { 1 } ) } + \frac { 1 } { 1 - \rho _ { H } } E ( I _ { 1, r e s } ).$$

Differentiation of (5.5) and (5.7) leads to alternative expressions, that can also be found in [24].

$$E ( W _ { H } ) & = \frac { ( 1 - \rho _ { 1 } ) ^ { 2 } } { 1 - \rho _ { H } } \frac { E ( C _ { 1 } ^ { * 2 } ) } { 2 E ( C ) }, \\ E ( W _ { L } ) & = \frac { ( 1 - \rho _ { 1 } ) ^ { 2 } } { ( 1 - \rho _ { H } ) ( 1 - \rho _ { 1 } ) } \frac { E ( C _ { 1 } ^ { * 2 } ) } { 2 E ( C ) } \\ & = \left ( 1 - \frac { \rho _ { L } } { 1 - \rho _ { H } } \right ) \frac { E ( C _ { 1 } ^ { * 2 } ) } { 2 E ( C ) }.$$

## 6 Example

Consider a polling system with two queues, and assume exponential service times and switch-over 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 [26] where MVA was used to compute mean waiting times and mean residual cycle times for the gated and exhaustive service disciplines.

In this example we show that the performance of this system can be improved by giving higher priority to jobs with smaller service times. We define a threshold t and divide the jobs into two classes: jobs with a service time less than t receive high priority, the other jobs receive low priority. In Figures 1 and 2 the mean waiting times of customers in Q 1 are shown as a function of the threshold t . The following four cases are distinguished:

- · the mean waiting time of the low priority customers in Q 1 (indicated as 'Type L');
- · the mean waiting time of the high priority customers in Q 1 (indicated as 'Type H');
- · a weighted average of the above two mean waiting times: λ L λ 1 E W ( L ) + λ H λ 1 E W ( H ) (indicated as 'Type 1 with priorities'). This can be interpreted as the mean waiting time of an arbitrary customer in Q 1 ;
- · the mean waiting time of an arbitrary customer in Q 1 if no priority rules would be applied to this queue (indicated as 'Type 1 no priorities'). In this situation there is no such thing as high and low priority customers, so the mean waiting time does not depend on t , and has already been computed in [26].

The figures show that a unique optimal threshold exists that minimises the mean weighted waiting time for customers in Q 1 . This value depends on the service discipline used and is discussed in [24]. In this example the optimal threshold is 1 for gated, and 1.38 for exhaustive. Figure 1 confirms that the mean waiting times for type H and L customers in the gated model only differ by a constant value: E W ( L ) -E W ( H ) = ρ E C 1 ( 1 , res ) . For globally gated service no figure is included, because we again have E W ( L ) -E W ( H ) =

ρ E C 1 ( 1 , res ) . The mean residual cycle time is different from the one in the gated model, but this does not affect the optimal threshold which is still t = 1 .

In the exhaustive model we have the following relation:

$$E ( W _ { L } ) - E ( W _ { H } ) = \frac { \rho _ { 1 } ( 1 - \rho _ { 1 } ) } { 1 - \rho _ { H } } E ( C _ { 1, r e s } ^ { * } ).$$

If we increase threshold t , the fraction of customers in Q 1 that receive high priority grows, and so does their mean service time. This means that ρ H increases as t increases, so E W ( L ) -E W ( H ) gets bigger, which can be seen in Figure 2. Notice that E W ( H ) E W ( L ) = 1 -ρ 1 , so it does not depend on t .

Figure 1: Mean waiting time of customers in Q 1 in the gated polling system, versus threshold t .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-3e880c34-37f1-4a0e-8e85-ec82b59379d6.jpg)

It is interesting to also consider the variance, or rather the standard deviation of the waiting time. Figures 3 and 4 show the standard deviation of the type H and L customers versus the threshold t . The figures also show the standard deviation of an arbitrary customer in Q 1 , with and without priorities. The figures indicate that the waiting times in the gated system have smaller standard deviations than in the exhaustive case. In this example, the introduction of priorities affects the standard deviation of an arbitrary type 1 customer only slightly. However, it is interesting to zoom in to investigate the influence of threshold t . Figure 5 contains zoomed versions of Figures 3 and 4 and indicates that the threshold t that minimises the overall mean waiting time of type 1 customers in the priority system does not minimise the standard deviation. In fact, changing threshold t affects the entire service time distributions B H and B L , which results in two local minima for the standard deviation as function of threshold t .

Figure 2: Mean waiting time of customers in Q 1 in the exhaustive polling system, versus threshold t .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-e267a7ed-39b3-4037-af36-1c732023be0e.jpg)

Figure 3: Standard deviation of the waiting time of customers in Q 1 in the gated polling system, versus threshold t .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-fda2ca1c-32ab-4396-8703-ab9fe392511d.jpg)

## 7 Possible extensions and future research

The polling system studied in the present paper leaves many possibilities for extensions or variations. In this section we discuss some of them.

Multiple queues and priority levels. Probably the most obvious extension of the model under consideration, is a polling system with any number of queues and any number of priority levels in each queue. In recent research [2], we have discovered that such a polling

Figure 4: Standard deviation of the waiting time of customers in Q 1 in the exhaustive polling system, versus threshold t .

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-250df2db-3497-4485-91d0-5c8a8366e951.jpg)

Figure 5: Zoomed versions of Figures 3 (left) and 4 (right).

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-718b27f9-e5b5-4150-90cf-3a1788d81ea7.jpg)

![image](https://ac.marcodsn.me/arxiv-markdown-images/1408.0110v1-figure-47e1c886-e058-4ab0-a7f0-ec55b6a9c648.jpg)

model can be analysed in detail. Each queue can have its own service discipline, either exhaustive or (synchronised) gated.

Preemptive resume. In the present paper, the service of low priority customers is not interrupted by the arrival of a high priority customer. If we allow for service interruptions, these would only take place in a queue with exhaustive service, since (globally) gated service forces high priority customers to wait behind the gate. We note that allowing service interruptions does not affect the joint queue length distributions at polling instants, nor the cycle time. Also the waiting time of low priority customers is unaffected (but they might have a longer sojourn time ). It only affects the waiting time of high priority customers, because they do not have to wait for a residual service time of a low priority customer. The LST of the waiting time distribution of a high priority customer if service is preemptive resume, is:

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

Mixed gated/exhaustive service. In the present paper, customers in Q 1 receive either exhaustive or (globally) gated service. One may consider serving each priority level according to a different service discipline. In [1], high priority customers receive exhaustive service, whereas low priority customers receive gated service. This gives high priority customers an additional advantage, but it turns out that for low priority customers this strategy may be better than, e.g., gated service for all priority levels. A mixture of globally gated service for low priority customers and exhaustive service for high priority customers can be analysed similarly.

The 'opposite' strategy, where low priority customers are served exhaustively and high priority customers are served according to the gated service discipline is easier to analyse, since we can model it as a nonpriority polling model with Q 1 replaced by two queues, Q H and Q L , containing the type H and type L customers and having gated and exhaustive service respectively.

Partially gated. A variant of the gated service discipline is partially gated service: every customer, type H or L , standing in front of the gate is served during a visit with a fixed probability p , and is not served with probability 1 -p . The probability p might even depend on the customer type. Whether a rejected customer is eligible for service in the next cycle, or leaves the system, does not matter. Both situations can be analysed.

Different polling sequences. We assume that the server alternates between Q 1 and Q 2 . A different way of introducing priorities to a polling system is by increasing the frequency of visits to a queue within a cycle. One can, e.g., decide to visit Q 1 two consecutive times if gated service is used. Or one can think of a system where the server switches to Q j after completing a visit to Q i with probability p ij .

Large setup times. [25] establishes fluid limits for polling systems with any branching type service discipline and deterministic switch-over times tending to infinity. The scaled waiting time distribution is shown to converge to a uniform distribution with bounds that can be computed explicitly. The results are relevant to applications in production systems, where large setup times are common. These fluid limits can also be computed for the polling model that is discussed in the present paper and give explicit insight in when each of the discussed service disciplines is optimal.

## References

- [1] M. A. A. Boon and I. J. B. F. Adan. Mixed gated/exhaustive service in a polling model with priorities. Eurandom report 2008-045, submitted for publication, 2008.

- [2] M. A. A. Boon, I. J. B. F. Adan, and O. J. Boxma. A polling model with multiple priority levels. Eurandom report 2008-029, submitted for publication, 2008.
- [3] 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. ValueTools 2008 (Third International Conference on Performance Evaluation Methodologies and Tools, Athens, Greece, October 20-24, 2008) , 2008.
- [4] S. C. Borst. Polling Systems , volume 115 of CWI Tracts . 1996.
- [5] S. C. Borst and O. J. Boxma. Polling models with and without switchover times. Operations Research , 45(4):536 - 543, 1997.
- [6] O. J. Boxma. Workloads and waiting times in single-server systems with multiple customer classes. Queueing Systems , 5:185-214, 1989.
- [7] 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.
- [8] O. J. Boxma, J. Bruin, and B. H. Fralix. Waiting times in polling systems with various service disciplines. Eurandom report 2008-019, submitted for publication, 2008.
- [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] 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.
- [14] 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.
- [15] O. Kella and U. Yechiali. Priorities in M/G/ 1 queue with server vacations. Naval Research Logistics , 35:23-34, 1988.
- [16] A. Khamisy, E. Altman, and M. Sidi. Polling systems with synchronization constraints. Annals of Operations Research , 35:231 - 267, 1992.

| [17]   | R. Y. W. Lam, V. C. M. Leung, and H. C. B. Chan. Polling-based protocols for packet voice transport over IEEE 802.11 wireless local area networks. IEEE transactions on wireless communications , 13:22-29, 2006.   |
|--------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [18]   | D. Miorandi and A. Zanella. Performance evaluation of bluetooth polling schemes: An analytical approach. Mobile Networks and Applications , 9:63-72, 2004.                                                          |
| [19]   | Q. Ni. Performance analysis and enhancements for IEEE 802.11e wireless networks. IEEE Network , 19:21-27, 2005.                                                                                                     |
| [20]   | J. A. C. Resing. Polling systems and multitype branching processes. Queueing Sys- tems , 13:409 - 426, 1993.                                                                                                        |
| [21]   | J. G. Shanthikumar. Level crossing analysis of priority queues and a conservation identity for vacation models. Naval Research Logistics , 36:797-806, 1989.                                                        |
| [22]   | L. Takács. Two queues attended by a single server. Operations Research , 16(3):639- 650, 1968.                                                                                                                      |
| [23]   | H. Takagi. Queueing Analysis: A Foundation Of Performance Evaluation , volume 1: Vacation and priority systems, part 1. North-Holland, Amsterdam, 1991.                                                             |
| [24]   | A. Wierman, E. M. M. Winands, and O. J. Boxma. Scheduling in polling systems. Performance Evaluation , 64:1009-1028, 2007.                                                                                          |
| [25]   | E. M. M. Winands. Polling, Production & Priorities . PhD thesis, Eindhoven Univer- sity of Technology, 2007.                                                                                                        |
| [26]   | 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.                                                                               |
| [27]   | R. A. Yaiz and G. Heijenk. Polling best effort traffic in bluetooth. Wireless Personal Communications , 23:195-206, 2002.                                                                                           |
Marko Boon Ivo Adan Onno Boxma
A Two-Queue Polling Model with Two Priority Levels in the First Queue
In this paper we consider a single-server cyclic polling system consisting of
two queues. Between visits to successive queues, the server is delayed by a
random switch-over time. Two types of customers arrive at the first queue: high
and low priority customers. For this situation the following service
disciplines are considered: gated, globally gated, and exhaustive. We study the
cycle time distribution, the waiting times for each customer type, the joint
queue length distribution at polling epochs, and the steady-state marginal
queue length distributions for each customer type.