Discrete-tijd-wachtlijnmodellen
met prioriteiten
Discrete-time queueing models
with priorities
Joris Walraevens

Promotor: Prof. dr. ir. H. Bruneel

Proefschrift ingediend tot het behalen van de graad vanDoctor in de Toegepaste Wetenschappen
Vakgroep Telecommunicatie en Informatieverwerking
Voorzitter: Prof. dr. ir. H. Bruneel
Faculteit Toegepaste Wetenschappen
Academiejaar 2004–2005

iDankwoord
Hierbij wens ik iedereen te bedanken die bij mijn doctoraatsonderzoek en/of
het schrijven van deze thesis (van dichtbij of van iets verderaf) betrokken was.
Eerst en vooral wens ik mijn promotor Herwig Bruneel te bedanken voor debegeesterende manier waarop hij mij aangezet heeft om zelfstandig onderzoek te voeren en specifiek om mij te verdiepen in het mooie domein van dewachtlijntheorie. Ook bedankt om naast de heel belangrijke morele steun ook
steeds te zorgen voor de even belangrijke financiële ondersteuning.
Verder wil ik alle collega’s en ex-collega’s van vakgroep TELIN (en in het bijzonder diegenen van de SMACS onderzoeksgroep) bedanken voor de aangename werksfeer. Alhoewel ik iedereen wel met naam zou willen noemen,moet ik mij beperken tot een aantal. Annette Nevejans bedank ik voor de warme manier waarop ze steeds klaarstaat om de praktische beslommeringen inde vakgroep te regelen. Bart Steyaert en Sabine Wittevrongel bedank ik om
mij bij te schaven in het schrijven van wetenschappelijke artikels en om steeds
te antwoorden op allerlei vragen (van wetenschappelijke of iets minder wetenschappelijke aard). Tenslotte wil ik mijn bureaugenoten door de jaren heen(en met name de ’constanten’ Dieter Fiems en Stijn De Vuyst) bedanken voorde levendige en produktieve discussies.
Tenslotte bedank ik mijn ouders, familie en vrienden voor de blijvende aanmoedigingen (en dit vooral gedurende de laatste maanden van het schrijven
van dit boekje).
Bedankt, Joris.

iiContents
Samenvatting
S.1 Inleiding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S.1.1 Wachtlijnen en buffers . . . . . . . . . . . . . . . . . . . .
S.1.2 Belang van het wachtlijn- of buffergedrag . . . . . . . . .
S.1.3 Toevalsveranderlijken . . . . . . . . . . . . . . . . . . . .
S.1.4 Analysetechnieken . . . . . . . . . . . . . . . . . . . . . .
S.1.5 Verschillende types verkeer . . . . . . . . . . . . . . . . .
S.1.6 Schedulering van verschillende types verkeer . . . . . .
S.1.7 Het wachtlijnmodel . . . . . . . . . . . . . . . . . . . . .
S.1.8 Typische resultaten . . . . . . . . . . . . . . . . . . . . . .
S.1.9 Overzicht van dit proefschrift . . . . . . . . . . . . . . . .
S.2 Deterministische bedieningstijden van 1 slot . . . . . . . . . . .
S.2.1 Berekening pgf’s . . . . . . . . . . . . . . . . . . . . . . .
S.2.2 Berekening prestatiematen . . . . . . . . . . . . . . . . .
S.2.3 Numerieke voorbeelden . . . . . . . . . . . . . . . . . . .
S.3 Algemene bedieningstijden . . . . . . . . . . . . . . . . . . . . .
S.3.1 Bespreking van de gebruikte methodes . . . . . . . . . .
S.3.2 Berekeningen van de pgf’s . . . . . . . . . . . . . . . . .
S.3.3 Berekening prestatiematen . . . . . . . . . . . . . . . . .
S.3.4 Numerieke voorbeelden . . . . . . . . . . . . . . . . . . .
S.4 Conclusies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
1
1
1
2
2
3
3
3
6
9
9
10
12
14
18
20
21
29
30
39

1 Introduction
1.1 Queues and buffers . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Importance of the queue/buffer behavior . . . . . . . . . . . . .
1.3 Stochastic variables . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4 Analysis techniques . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5 Multiple types of traffic . . . . . . . . . . . . . . . . . . . . . . . .
1.6 Scheduling multiple types of traffic . . . . . . . . . . . . . . . . .
1.7 Queueing model . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7.1 System modeling . . . . . . . . . . . . . . . . . . . . . . .
1.7.2 Arrival process . . . . . . . . . . . . . . . . . . . . . . . .
1.7.3 Service process . . . . . . . . . . . . . . . . . . . . . . . .
1.7.4 Priority scheduling discipline . . . . . . . . . . . . . . . .

1
1
1
2
2
3
4
5
5
6
8
9

iv

CONTENTS
1.8

Typical results . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8.1 Output stochastic variables . . . . . . . . . . . . . . . . .
1.8.2 Performance measures . . . . . . . . . . . . . . . . . . . .
Overview of this dissertation . . . . . . . . . . . . . . . . . . . .

10
10
11
16

2 Single-slot service times
2.1 System contents . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1 Calculation of the joint pgf U (z1 , z2 ) . . . . . . . . . . . .
2.1.2 The function Y (z) . . . . . . . . . . . . . . . . . . . . . . .
2.1.3 The marginal pgf UT (z) . . . . . . . . . . . . . . . . . . .
2.1.4 The marginal pgf U1 (z) . . . . . . . . . . . . . . . . . . .
2.1.5 The marginal pgf U2 (z) . . . . . . . . . . . . . . . . . . .
2.1.6 Calculation of moments . . . . . . . . . . . . . . . . . . .
2.1.7 Calculation of tail probabilities . . . . . . . . . . . . . . .
2.2 Queue contents . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Unfinished work . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 Cell delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1 Pgf D1 (z) of the class-1 cell delay . . . . . . . . . . . . . .
2.4.2 Pgf D2 (z) of the class-2 cell delay . . . . . . . . . . . . . .
2.4.3 Pgf D(z) of the delay of a random cell . . . . . . . . . . .
2.4.4 The function Y (z) revisited . . . . . . . . . . . . . . . . .
2.4.5 Calculation of moments . . . . . . . . . . . . . . . . . . .
2.4.6 Calculation of tail probabilities . . . . . . . . . . . . . . .
2.5 Waiting time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.1 Input processes . . . . . . . . . . . . . . . . . . . . . . . .
2.6.2 Influence of load on moments . . . . . . . . . . . . . . . .
2.6.3 Influence of second order characteristics of the arrival
process on mean values . . . . . . . . . . . . . . . . . . .
2.6.4 Tail probabilities . . . . . . . . . . . . . . . . . . . . . . .
2.7 Concluding remarks . . . . . . . . . . . . . . . . . . . . . . . . .

17
19
19
21
21
22
23
24
25
35
36
36
36
38
40
41
42
43
47
47
48
49

3 Non-preemptive priority
3.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 System contents at the beginning of start-slots . . . . . . . . . .
3.3 System contents at the beginning of random slots . . . . . . . .
3.3.1 Calculation of the joint pgf U (z1 , z2 ) . . . . . . . . . . . .
3.3.2 The marginal pgf UT (z) . . . . . . . . . . . . . . . . . . .
3.3.3 The marginal pgf U1 (z) . . . . . . . . . . . . . . . . . . .
3.3.4 The marginal pgf U2 (z) . . . . . . . . . . . . . . . . . . .
3.3.5 Calculation of moments . . . . . . . . . . . . . . . . . . .
3.3.6 Calculation of tail probabilities . . . . . . . . . . . . . . .
3.4 Queue contents . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 Unfinished work . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 Packet delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6.1 Pgf D1 (z) of the class-1 packet delay . . . . . . . . . . . .

63
67
67
71
71
74
75
77
77
79
83
84
87
88

1.9

56
57
61

CONTENTS

3.7
3.8

3.9

v

3.6.2 Pgf D2 (z) of the class-2 packet delay . . . . . . . . . . . . 91
3.6.3 Pgf D(z) of the delay of a random packet . . . . . . . . . 95
3.6.4 The functions Yj (z) revisited . . . . . . . . . . . . . . . . 95
3.6.5 Calculation of moments . . . . . . . . . . . . . . . . . . . 96
3.6.6 Calculation of tail probabilities . . . . . . . . . . . . . . . 97
Waiting time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . 102
3.8.1 Input processes . . . . . . . . . . . . . . . . . . . . . . . . 102
3.8.2 Influence of load on moments . . . . . . . . . . . . . . . . 104
3.8.3 Influence of the service times on mean values . . . . . . 106
3.8.4 Tail probabilities . . . . . . . . . . . . . . . . . . . . . . . 113
Concluding remarks . . . . . . . . . . . . . . . . . . . . . . . . . 116

4 Preemptive resume priority
119
4.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.2 The supplementary variable technique . . . . . . . . . . . . . . . 124
4.2.1 Geometrically distributed service times . . . . . . . . . . 124
4.2.2 Generally distributed class-1 service times, geometrically distributed class-2 service times . . . . . . . . . . . . 127
4.2.3 Generally distributed service times . . . . . . . . . . . . . 131
4.3 System contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.3.1 Calculation of the pgf P1 (x, z) . . . . . . . . . . . . . . . . 140
4.3.2 Calculation of the pgf P2 (x, z) . . . . . . . . . . . . . . . . 140
4.3.3 Calculation of the pgf U (z1 , z2 ) . . . . . . . . . . . . . . . 141
4.3.4 The marginal pgf UT (z) . . . . . . . . . . . . . . . . . . . 141
4.3.5 The marginal pgf U1 (z) . . . . . . . . . . . . . . . . . . . 141
4.3.6 The marginal pgf U2 (z) . . . . . . . . . . . . . . . . . . . 142
4.3.7 Calculation of moments . . . . . . . . . . . . . . . . . . . 142
4.3.8 Calculation of tail probabilities . . . . . . . . . . . . . . . 143
4.4 Queue contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
4.5 Unfinished work . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
4.6 Packet delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
4.6.1 Pgf D1 (z) of the class-1 packet delay . . . . . . . . . . . . 147
4.6.2 Pgf D2 (z) of the class-2 packet delay . . . . . . . . . . . . 148
4.6.3 Pgf D(z) of the delay of a random packet . . . . . . . . . 151
4.6.4 Calculation of moments . . . . . . . . . . . . . . . . . . . 151
4.6.5 Calculation of tail probabilities . . . . . . . . . . . . . . . 152
4.7 Waiting time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.8 Identical variables in PR and NP priority queues . . . . . . . . . 156
4.8.1 Total unfinished work . . . . . . . . . . . . . . . . . . . . 156
4.8.2 Class-2 waiting time . . . . . . . . . . . . . . . . . . . . . 157
4.9 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . 158
4.9.1 Input processes . . . . . . . . . . . . . . . . . . . . . . . . 158
4.9.2 Influence of the load . . . . . . . . . . . . . . . . . . . . . 159
4.9.3 Influence of the service times . . . . . . . . . . . . . . . . 160
4.9.4 Tail probabilities . . . . . . . . . . . . . . . . . . . . . . . 167

vi

CONTENTS
4.10 Concluding remarks . . . . . . . . . . . . . . . . . . . . . . . . . 167

5 Preemptive repeat priority
171
5.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
5.2 The supplementary variable technique . . . . . . . . . . . . . . . 174
5.2.1 PRD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.2.2 PRI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
5.2.3 Stability issues . . . . . . . . . . . . . . . . . . . . . . . . 189
5.3 System contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
5.3.1 Calculation of the pgf U (z1 , z2 ) . . . . . . . . . . . . . . . 190
5.3.2 Calculation of the pgf UT (z) . . . . . . . . . . . . . . . . . 192
5.3.3 Calculation of the pgf U1 (z) . . . . . . . . . . . . . . . . . 192
5.3.4 Calculation of the pgf U2 (z) . . . . . . . . . . . . . . . . . 192
5.3.5 Calculation of moments . . . . . . . . . . . . . . . . . . . 192
5.4 Queue contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
5.5 Unfinished work . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
5.6 Packet delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
5.6.1 Pgf D1 (z) of the class-1 packet delay . . . . . . . . . . . . 196
5.6.2 Pgf D2 (z) of the class-2 packet delay . . . . . . . . . . . . 197
5.6.3 Pgf D(z) of the delay of a random packet . . . . . . . . . 208
5.6.4 The functions Yj (z) . . . . . . . . . . . . . . . . . . . . . . 208
5.6.5 Calculation of moments . . . . . . . . . . . . . . . . . . . 211
5.7 Waiting time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
5.8 Numerical examples . . . . . . . . . . . . . . . . . . . . . . . . . 213
5.8.1 Input processes . . . . . . . . . . . . . . . . . . . . . . . . 213
5.8.2 Influence of load . . . . . . . . . . . . . . . . . . . . . . . 214
5.8.3 Influence of service times . . . . . . . . . . . . . . . . . . 218
5.9 Concluding remarks . . . . . . . . . . . . . . . . . . . . . . . . . 220
6 Conclusions
223
6.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
6.2 Possible extensions and related topics . . . . . . . . . . . . . . . 224
A The function Y1 (z)227
A.1 Rouché’s theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
A.2 Determination of Y1 (z) for |z| < 1 . . . . . . . . . . . . . . . . . . 227
A.3 Outside the unit disk . . . . . . . . . . . . . . . . . . . . . . . . . 229
A.3.1 The implicit function theorem . . . . . . . . . . . . . . . . 229
A.3.2 Y1 (z) on the positive real axis . . . . . . . . . . . . . . . . 229

List of Figures
S.1
S.2

Een N × N schakelelement met uitgangsbuffers . . . . . . . . .
Gemiddelde systeembezettingen versus de totale aankomstintensiteit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S.3 Varianties van de systeembezettingen versus de totale aankomstintensiteit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S.4 Correlatiecoëfficiënt van de klasse-1 en klasse-2 systeembezettingen versus de totale aankomstintensiteit . . . . . . . . . . . .
S.5 Gemiddelde vertragingstijden versus de totale aankomstintensiteit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
S.6 Invloed van de tweede-orde momenten van het aankomstproces op de gemiddelde systeembezettingen . . . . . . . . . . . . .
S.7 Staartprobabiliteiten van de klasse-1 en klasse-2 vertragingstijden voor een aantal combinaties van klasse-1 en klasse-2 aankomstintensiteiten . . . . . . . . . . . . . . . . . . . . . . . . . . .
S.8 Monster van de tijdsas om de locatie van de startslots te tonen .
S.9 Monster van de tijdsas om de prioriteitsdiscipline en de bijkomende veranderlijken te illustreren . . . . . . . . . . . . . . . . .
S.10 Monster van de tijdsas in het PRD geval om de prioriteitsdiscipline en de bijkomende veranderlijken te illustreren . . . . . . .
S.11 Monster van de tijdsas in het PRI geval om de prioriteitsdiscipline en de bijkomende veranderlijken te illustreren . . . . . . .
S.12 Gemiddelde klasse-1 systeembezetting versus de totale belasting voor de NP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . .
S.13 Gemiddelde klasse-2 systeembezetting versus de totale belasting voor de NP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . .
S.14 Gemiddelde klasse-1 vertragingstijd versus de totale belastingvoor de NP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . . .
S.15 Gemiddelde klasse-2 vertragingstijd versus de totale belastingvoor de NP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . . .

5
14
15
16
16
17
18
21
24
26
27
31
31
32
33

viii

LIST OF FIGURES
S.16 Gemiddelde klasse-2 vertragingstijd versus de gemiddelde klasse1 bedieningstijden voor de NP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (ρT = 0.75, µ2 = 20) . . . . . . 34
S.17 Gemiddelde klasse-1 vertragingstijd versus de gemiddelde klasse2 bedieningstijden voor de NP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (ρT = 0.75, µ1 = 20) . . . . . . 34
S.18 Staartgedrag van de klasse-1 vertragingstijden voor verschillende klasse-2 belastingen voor zowel de NP (bovenste curven)als de PR (onderste curve) prioriteitsdisciplines (ρ1 = 0.4, µ1 =µ2 = 16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
S.19 Staartgedrag van de klasse-2 vertragingstijden voor verschillende klasse-2 belastingen voor zowel de NP (onderste curven)als de PR (bovenste curven) prioriteitsdisciplines (ρ1 = 0.4, µ1 =µ2 = 16) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
S.20 Gemiddelde klasse-2 vertragingstijd versus de totale belastingvoor de PR (onderste curven) en PRD en PRI (bovenste curven)prioriteitsdisciplines voor constante bedieningstijden (µ1 = 2, µ2 =20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
S.21 Gemiddelde klasse-2 vertragingstijd versus de totale belastingvoor de PRD (onderste curven) en PRI (bovenste curven) prioriteitsdisciplines voor variabele bedieningstijden (µ1 = µ2 = 20) 37
S.22 Gemiddelde klasse-2 vertragingstijd versus de klasse-1 bedieningstijden voor de PR (onderste curven) en PRD en PRI (bovenste curven) prioriteitsdisciplines voor constante bedieningstijden (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . 38
1.1
1.2

Conceptual representation of a queueing system . . . . . . . . .
An NxN output queueing switch . . . . . . . . . . . . . . . . . .

5
8The functions z and AT (z) for z real and positive . . . . . . . . .
Types of behavior of Y (z) . . . . . . . . . . . . . . . . . . . . . .
An NxN output queueing switch . . . . . . . . . . . . . . . . . .
Mean value of system contents versus the total arrival rate . . .
Variance of system contents versus the total arrival rate . . . . .
Mean value of system contents versus the fraction of class-1 arrivals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7 Variance of system contents versus the fraction of class-1 arrivals
2.8 Correlation coefficient of system contents versus the total arrival rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9 Correlation coefficient of system contents versus the fraction ofclass-1 arrivals . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10 Mean value of cell delays versus the total arrival rate . . . . . .
2.11 Variance of cell delays versus the total arrival rate . . . . . . . .
2.12 Mean cell delays versus the fraction of class-1 cells (λT = 0.6) .
2.13 Variance of cell delays versus the fraction of class-1 cells (λT =0.6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27
32
49
50
51

2.1
2.2
2.3
2.4
2.5
2.6

51
52
53
54
55
55
56
57

LIST OF FIGURES
2.14 Influence of second order characteristics of arrival process on
the mean system contents for α = 0.25 . . . . . . . . . . . . . . .
2.15 Influence of second order characteristics of arrival process on
the mean cell delay for α = 0.25 . . . . . . . . . . . . . . . . . . .
2.16 Regions for tail behavior as a function of the arrival rates ofboth classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.17 Tail behavior of the class-1 and class-2 system contents for somecombinations of class-1 and class-2 arrival rates . . . . . . . . . .
2.18 Tail behavior of the class-1 and class-2 cell delay for some combinations of class-1 and class-2 arrival rates . . . . . . . . . . . .
2.19 Tail behavior of the class-2 system contents near the transition
from non-geometrical to geometrical behavior . . . . . . . . . .
3.1
3.2
3.3

ix

58
58
59
60
60
61

Sample of the time-axis in order to show the location of start-slots 68
Service time of the packet in service during slot k . . . . . . . . 84
Service time of the packet in service during the tagged packet’s
arrival slot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
3.4 Mean values of system contents versus the total arrival rate(µ1 = µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
3.5 Variances of system contents versus the total arrival rate (µ1 =µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
3.6 Mean values of the packet delay versus the total load (µ1 =µ2 = 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
3.7 Variances of the packet delay versus the total load (µ1 = µ2 = 2) 107
3.8 Mean values of the packet delay versus the total load (µ1 =2, µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
3.9 Mean values of system contents versus the (mean) class-1 service times (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . . . . . . . . . 109
3.10 Mean values of system contents versus the (mean) class-2 service times (ρT = 0.75, µ1 = 20) . . . . . . . . . . . . . . . . . . . . 110
3.11 Mean values of system contents versus the variance of the class1 service times (ρT = 0.75, µ1 = µ2 = 20) . . . . . . . . . . . . . . 110
3.12 Mean values of system contents versus the variance of the class2 service times (ρT = 0.75, µ1 = µ2 = 20) . . . . . . . . . . . . . . 111
3.13 Mean packet delays versus mean service times of class-1 packets (ρT = 0.75, µ2 = 2) . . . . . . . . . . . . . . . . . . . . . . . . 112
3.14 Mean packet delays versus mean service times of class-2 packets (ρT = 0.75, µ1 = 2) . . . . . . . . . . . . . . . . . . . . . . . . 112
3.15 Mean packet delay of class-1 packets versus the total load (ρ1 =
0.5, µ1 = 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3.16 Mean values of the packet delays versus the variance of theclass-1 service times (ρT = 0.75, µ1 = µ2 = 0.75) . . . . . . . . . 114
3.17 Mean values of packet delays versus the variance of the class-2
service times (ρT = 0.75, µ1 = µ2 = 0.75) . . . . . . . . . . . . . . 114
3.18 Regions for tail behavior as a function of the load of both classes
in the case of deterministic class-1 service times (µ1 = 2) . . . . 115

x

LIST OF FIGURES
3.19 Regions for tail behavior as a function of the load of both classes
in the case of geometric class-1 service times (µ1 = 2) . . . . . . 116
3.20 Tail behavior of the class-1 and class-2 packet delay for several
class-2 loads (ρ1 = 0.4, µ1 = µ2 = 2) . . . . . . . . . . . . . . . . 117
3.21 Tail behavior of the class-1 packet delay for several class-2 service times (ρ1 = ρ2 = 0.4, µ1 = 2) . . . . . . . . . . . . . . . . . . 117
4.1

Sample of the time-axis for general class-1 and geometric class2 service times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.2 Sample of the time-axis for general class-1 and class-2 service
times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.3 Mean class-1 system contents versus the total arrival rate forboth the PR (lower curves) as the NP priority (upper curves)scheduling disciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . 159
4.4 Mean class-2 system contents versus the total arrival rate forboth the PR (upper curves) as the NP priority (lower curves)scheduling disciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . 160
4.5 Mean class-1 packet delay versus the total arrival rate for boththe PR (lower curves) as the NP priority (upper curves) scheduling disciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . . . . 161
4.6 Mean class-2 packet delay versus the total arrival rate for boththe PR (upper curves) as the NP priority (lower curves) scheduling disciplines (µ1 = µ2 = 2) . . . . . . . . . . . . . . . . . . . . . 161
4.7 Mean class-1 system contents versus the mean class-1 service
time for both the PR (lower curves) as the NP priority (upper
curves) scheduling disciplines (ρT = 0.75, µ2 = 20) . . . . . . . . 162
4.8 Mean class-2 system contents versus the mean class-1 service
time for both the PR (upper curves) as the NP priority (lower
curves) scheduling disciplines (ρT = 0.75, µ2 = 20) . . . . . . . . 163
4.9 Mean class-1 system contents versus the mean class-2 service
time for both the PR (lower curves) as the NP priority (upper
curves) scheduling disciplines (ρT = 0.75, µ1 = 20) . . . . . . . . 163
4.10 Mean class-2 system contents versus the mean class-2 service
time for both the PR (upper curves) as the NP priority (lower
curves) scheduling disciplines (ρT = 0.75, µ1 = 20) . . . . . . . . 164
4.11 Mean class-1 packet delay versus the mean class-1 service time
for both the PR (lower curves) as the NP priority (upper curves)scheduling disciplines (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . 165
4.12 Mean class-2 packet delay versus the mean class-1 service time
for both the PR (upper curves) as the NP priority (lower curves)scheduling disciplines (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . 165
4.13 Mean class-1 packet delay versus the mean class-2 service time
for both the PR (lower curves) as the NP priority (upper curves)scheduling disciplines (ρT = 0.75, µ1 = 20) . . . . . . . . . . . . 166

LIST OF FIGURES

xi

4.14 Mean class-2 packet delay versus the mean class-2 service time
for both the PR (upper curves) as the NP priority (lower curves)scheduling disciplines (ρT = 0.75, µ1 = 20) . . . . . . . . . . . . 166
4.15 Tail probabilities of the class-1 packet delay for several class-2
loads for both the PR (lower curve) and the NP (upper curves)priority disciplines (ρ1 = 0.4, µ1 = µ2 = 16) . . . . . . . . . . . . 167
4.16 Tail probabilities of the class-2 packet delay for several class-2
loads for both the PR (upper curves) and the NP (lower curves)priority disciplines (ρ1 = 0.4, µ1 = µ2 = 16) . . . . . . . . . . . . 168
5.1
5.2
5.3

Sample of the time-axis in case of the PRD priority queue . . . . 175
Sample of the time-axis in case of the PRI priority queue . . . . 175
Mean class-2 system contents versus the total arrival rate for thePR (lower curves) and the PRD and PRI priority (upper curves)scheduling disciplines and with the service times deterministic(µ1 = µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
5.4 Variance of the class-2 system contents versus the total arrival
rate for the PR (lower curves) and the PRD and PRI priority (upper curves) scheduling disciplines and with the service times
deterministic (µ1 = µ2 = 20) . . . . . . . . . . . . . . . . . . . . . 215
5.5 Mean class-2 system contents versus the fraction of class-1 load
for the PR (lower curves) and the PRD and PRI priority (upper curves) scheduling disciplines and with the service times
deterministic (µ1 = µ2 = 20) . . . . . . . . . . . . . . . . . . . . . 216
5.6 Mean class-2 system contents versus the total arrival rate for
the PRD (lower curves) and the PRI priority (upper curves)scheduling disciplines and with the class-2 service times variable (µ1 = µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . 217
5.7 Mean class-2 packet delays versus the total arrival rate for thePR (lower curves) and the PRD and PRI priority (upper curves)scheduling disciplines and with the service times deterministic(µ1 = 2, µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
5.8 Mean class-2 packet delays versus the total arrival rate for the
PRD (lower curves) and the PRI priority (upper curves) scheduling disciplines and with the class-2 service times variable (µ1 =2, µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
5.9 Mean class-2 system contents versus the class-1 service time forboth the PR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines and with the service times
deterministic (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . . . . . . . 219
5.10 Mean class-2 system contents versus the class-2 service time forboth the PR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines and with the service times
deterministic (ρT = 0.75, µ1 = 20) . . . . . . . . . . . . . . . . . . 220

xii

LIST OF FIGURES
5.11 Mean class-2 system contents versus the variance of the class-2
service times for the PR, PRD and PRI case (ρT = 0.75, µ1 =µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
5.12 Mean class-2 packet delays versus the class-1 service time forboth the PR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines and with the service times
deterministic (ρT = 0.75, µ2 = 20) . . . . . . . . . . . . . . . . . . 221
5.13 Mean value of class-2 packet delays versus the variance of theclass-2 service times for the PR, PRD and PRI case (ρT = 0.75, µ1 =µ2 = 20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
A.1 z1 and E1 (z1 , z2 ) for different z2 . . . . . . . . . . . . . . . . . . . 231
A.2 Y1 (z) and Y1∗ (z) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

Notations, acronyms, . . .
ATM
aj
aj,k
aT
aT,k
A(z1 , z2 )Aj (z)
AT (z)αB(z)Corr[. . . ,. . . ]Cov[. . . ,. . . ]
d
dj
D(z)
Dj (z)
E[. . .]
Ej (z1 , z2 )
(1)

f1,k

(2)

fj,k

(2)

fT,k
(1)

F1 (z)
F (2) (z1 , z2 )Asynchronous Transfer Mode
number of class-j arrivals during a random slot
number of class-j arrivals during slot ktotal number of arrivals during a random slot
total number of arrivals during slot kjoint pgf of the number of per-slot class-j (j = 1, 2) arrivals
pgf of the number of per-slot class-j arrivals
pgf of the total number of per-slot arrivals
the fraction of class-1 load in the overall traffic load
the pgf of a busy period
the correlation coefficient between two stochastic variables
the covariance of two stochastic variables
delay of a random unit in steady-state
delay of a random class-j unit in steady-state
pgf of the delay of a random unit in steady-state
pgf of the delay of a random class-j unit in steady-state
the expected value operator
joint pgf of the number of class-1 and class-2 arrivals during the service time of a class-j unit
the number of class-1 arrivals during the arrival-slot of atagged class-1 unit (slot k by definition), served before thistagged unit
the number of class-j arrivals during the arrival-slot of atagged class-2 unit (slot k by definition), served before thistagged unit
the total number of arrivals during the arrival-slot of atagged class-2 unit (slot k), served before this tagged unit
pgf of the number of class-1 arrivals during the arrival-slotof a tagged class-1 unit, served before this tagged unit
joint pgf of the number of class-1 and class-2 arrivals during the arrival-slot of a tagged class-2 unit, served before
this tagged unit

xiv

Notations, acronyms, . . .
(2)

FT (z)
iff
IP
I(z)
λj
λT
µj
NP
pgf
pmf
PR
PRD
PRI
Prob[. . .]QoS
qj,kQ(z1 , z2 )ρjρT
ρ u1 u2sj
Sj (z)ttj
T (z)
Tj (z)
uj
uj,k
uT
uT,k
Uk (z1 , z2 )U (z1 , z2 )Uj (z)UT (z)v

pgf of the total number of arrivals during the arrival-slotof a tagged class-2 unit, served before this tagged unit
if and only if
Internet Protocol
pgf of an idle period
arrival rate of class-j units
total arrival ratemean service time of a class-j unit
Non-Preemptive
probability generating function
probability mass function
Preemptive Resume
Preemptive Repeat Different
Preemptive Repeat Identical
the probability operator
Quality of Service
queue contents of class-j at the beginning of slot kjoint pgf of the steady-state queue contents of class-1 andclass-2 at the beginning of a random slot
arrival load of class-j
total arrival load
the correlation coefficient of the steady-state class-1 andclass-2 system contents at the beginning of a random slot
service time of a class-j unit
pgf of the service time of a class-j unit
waiting time of a random unit in steady-state
waiting time of a random class-j unit in steady-state
pgf of the waiting time of a random unit in steady-state
pgf of the waiting time of a random class-j unit in steadystatesteady-state system contents of class-j at the beginning ofa random slot
system contents of class-j at the beginning of slot ktotal steady-state system contents at the beginning of arandom slot
total system contents at the beginning of slot kjoint pgf of the system contents of class-1 and class-2 at the
beginning of slot kjoint pgf of the steady-state system contents of class-1 andclass-2 at the beginning of a random slot
pgf of the steady-state system contents of class-j at the beginning of a random slot
pgf of the total steady-state system contents at the beginning of a random slot
sub-busy period initiated by a unit

xv
vj
V (z)
Vj (z)wj
W (z1 , z2 )
y
yj
Y (z)
Yj (z)

sub-busy initiated by a class-j unit
pgf of a sub-busy period initiated by a unit
pgf of a sub-busy period initiated by a class-j unit
steady-state unfinished work of class-j at the beginning ofa random slot
joint pgf of the steady-state unfinished work of class-1 andclass-2 at the beginning of a random slot
number of class-2 arrivals during a sub-busy period initiated by a random unit
number of class-2 arrivals during a sub-busy period initiated by a class-j unit
pgf of the number of class-2 arrivals during a sub-busy
period initiated by a unit
pgf of the number of class-2 arrivals during a sub-busy
period initiated by a class-j unit

xvi

Notations, acronyms, . . .

Samenvatting
S.1 Inleiding
S.1.1 Wachtlijnen en buffers
Wachtlijnen maken deel uit van het dagelijks leven. Zo bv. kunnen we wachtlijnfenomenen observeren op autowegen, in supermarkten, . . . . Wachtlijsten
in ziekenhuizen is een ander voorbeeld. Algemeen kunnen we een wachtlijnproces definiëren als het wachten alvorens het verkrijgen van een zekere
bediening.
Specifiek in telecommunicatienetwerken worden buffers gebruikt om informatie op te slaan die niet onmiddellijk naar haar bestemming kan verstuurd
worden. Dit kan b.v. optreden doordat informatie van verschillende ingangslijnen gemultiplexeerd wordt op één uitgangslijn, informatie van een snelle
ingangslijn moet getransporteerd worden naar een tragere uitgangslijn, . . . .
Zonder buffers zou daardoor (te veel) informatie verloren gaan.
De entiteiten die aankomen in het wachtlijnsysteem, duiden we in het algemeen met de benaming eenheden aan doorheen dit proefschrift.

S.1.2 Belang van het wachtlijn- of buffergedragHet wachtlijngedrag is een belangrijk onderzoeksonderwerp. B.v., bij het ontwerpen van nieuwe wegen kan het voordelig zijn om vooraf uit te zoeken
of een zeker ontwerp al dan niet aanleiding zal geven tot (grote) wachtlijnen(files) en/of - als er een aantal mogelijke ontwerpen zijn - welk ontwerp dekortste files veroorzaakt.
In het geval van een wachtlijst voor operaties kan het zijn dat sommige ingrepen zo vlug mogelijk moeten gebeuren wegens levensgevaar voor de patiënt.
Het is dus belangrijk om de wachttijden te bestuderen zodat nodeloze sterfgevallen voorkomen kunnen worden.
In telecommunicatienetwerken tenslotte, is de manier waarop een buffer zichgedraagt cruciaal voor de prestatie van het netwerk, aangezien de prestatie en

2Samenvatting

de bedieningskwaliteit (Engels: Quality of Service of QoS) gerelateerd zijn aan
dit buffergedrag. Informatie kan b.v. verloren gaan doordat een buffer vol is,of eenheden kunnen te veel vertragingstijd oplopen doordat ze te lang moeten
wachten in de netwerkknooppunten alvorens verder gezonden te worden. De
gevolgen voor de gebruikers zijn afhankelijk van de applicatie die zij gebruiken. Zo zijn lange vertragingstijden niet acceptabel voor reële-tijds-applicaties(Engels: real-time applications) - zoals telefonie - maar meestal wel aanvaardbaar voor data-applicaties (b.v. het versturen van bestanden). Omgekeerd zal
verlies van informatie tot op zekere hoogte aanvaardbaar zijn voor telefonieterwijl dit onaanvaardbaar is voor de meeste data-applicaties.

S.1.3 Toevalsveranderlijken
Om het buffergedrag te bestuderen, definiëren we eerst een aantal ingangsen uitgangsveranderlijken. De ingangsveranderlijken beschrijven de karakteristieken van het inkomende verkeer en worden bekend verondersteld doorheen dit proefschrift. De uitgangsveranderlijken beschrijven het buffergedragen zijn dus te analyseren. Aangezien de verkeerskarakteristieken van een onzekere natuur zijn, definiëren we deze veranderlijken als toevalsveranderlijken.
Elke veranderlijke wordt gekenmerkt door een probabiliteitsdistributie.

S.1.4 Analysetechnieken
Er zijn verschillende technieken om buffergedragingen te analyseren. Ze zijn
ruwweg in te delen in vier verschillende categorieën: de analytische methode,de numerieke methode, simulaties en experimenten. Bij de eerste twee worden systeemvergelijkingen (uitgangsveranderlijken i.f.v. ingangsveranderlijken) opgesteld en deze worden respectievelijk analytisch en numeriek opgelost. Bij de laatste twee worden respectievelijk een computerversie en een
ware versie van het desbetreffende (buffer)systeem geconstrueerd en worden
de nodige resultaten bekomen door metingen uit te voeren.
Deze methoden hebben alle hun eigen voor- en nadelen. Het voordeel vande analytische methode is dat de afhankelijkheid van de prestatie van de verschillende ingangsparameters meestal onmiddellijk duidelijk is. Het grote nadeel van deze techniek is dat er meestal gebruik moet gemaakt worden van
een vereenvoudigd wiskundig model zodanig dat het probleem analytischoplosbaar is. De voor- en nadelen van de experimentele techniek zijn juist
het tegenovergestelde, terwijl de numerieke techniek en de simulatie-aanpak- qua voor- en nadelen - tussen beide andere technieken in liggen.
In dit proefschrift zullen we gebruik maken van een analytische methodegebaseerd op probabiliteitsgenererende functies (Engels: probability generating
functions of pgf’s) om het desbetreffende wachtlijnmodel te analyseren.

S.1 Inleiding

3

S.1.5 Verschillende types verkeer
In vele wachtlijnstudies wordt aangenomen dat alle verkeer van hetzelfde type is. Het meeste verkeer is echter heterogeen van nature. Het verkeer kan
dus opgesplitst worden in verschillende klassen, zowel naar karakteristieken
als naar vereisten. Verkeerskarakteristieken kunnen inderdaad verschillend
zijn (monotoon verkeer t.o.v. grillig verkeer, eenheden van constante lengte
t.o.v. eenheden van variabele lengte, . . . ). Ten tweede kunnen ook de vereisten verschillen, bv., verschillende verliesvereisten, verschillende vertragingstijdvereisten, . . . . Een veelgebruikte classificatie in multimedianetwerken isdan ook reële-tijds-verkeer t.o.v. niet-reële-tijds-verkeer.

S.1.6 Schedulering van verschillende types verkeer
Als het verkeer (o.m.) geclassificeerd is op basis van vereisten, kunnen verschillende types van verkeer op verschillende manieren ’behandeld’ worden
in de buffersystemen. Zo b.v. kunnen de eenheden worden opgedeeld naargelang hun vertragingsgevoeligheid en kan verkeer van een vertragingsgevoelige klasse (gemiddeld gezien) voorrang verkrijgen op vertragingsongevoelig
verkeer wat betreft het verzenden. In de Engelstalige tekst (sectie 1.6) worden
een aantal van deze ’scheduleringsdisciplines’ besproken. In dit proefschrift
lichten we er één uit en analyseren deze grondig, nl., de prioriteitsdiscipline(Engels: priority discipline). Bij deze discipline wordt het verkeer verdeeld
over een aantal klassen met verschillende prioriteit en eenheden van een bepaalde klasse kunnen alleen maar bediend worden als er geen eenheden van
een klasse met hogere prioriteit aanwezig zijn.

S.1.7 Het wachtlijnmodel
We beschrijven de karakteristieken van het wachtlijnmodel dat we doorheen
dit proefschrift gebruiken. De modellering kan opgesplitst worden in 3 delen,nl., de modellering van buffersysteem zelf, de modellering van het aankomstproces en de modellering van het bedieningsproces.
Het buffersysteem
We analyseren een discrete-tijd buffersysteem met twee klassen, één bedieningsstation, een oneindige bufferlengte en een prioriteitsdiscipline. Het bedieningsstation staat in voor de bediening van de eenheden. Eenheden die niet onmiddellijk kunnen verzonden worden, worden gebufferd. Aangezien we een
discrete-tijd systeem analyseren, nemen we aan dat alle toevalsveranderlijken
enkel discrete (niet-negatieve) waarden kunnen aannemen. De buffer is oneindig groot verondersteld, wat er op neerkomt dat er geen eenheden verloren kunnen gaan. Bediening kan enkel aanvangen op slotgrenzen. Daardoor

4

Samenvatting

kan de bediening van een eenheid ten vroegste starten bij het begin van het
slot na zijn aankomstslot. Het verkeer is verondersteld onderverdeeld te zijn
in 2 klassen. De prioriteitsdiscipline zelf zal op het einde van deze subsectie
in meer detail beschreven worden.
Het aankomstproces
Het aankomstproces wordt gekarakteriseerd door het aantal aankomsten per
slot. Het aantal aankomsten van klasse-j gedurende het k-de slot wordt aangeduid met aj,k , j = 1, 2. Doorheen het proefschrift wordt aangenomen dat
de aantallen aankomsten van de verschillende klassen onafhankelijk en identisch gedistribueerd (Engels: independent and identically distributed of i.i.d.)zijn van slot-tot-slot en deze worden met de volgende gezamenlijke probabiliteitsgenererende functie gekarakteriseerd: aaA(z1 , z2 ) ,E z1 1,k z2 2,k .

(S.1)

Aj (z) ,E[z aj,k ]=A(z1 , z2 )|zj =z,zi =1,i6=j ,

(S.2)
(S.3)

Belangrijk aan deze gezamenlijke pgf is dat ze incorporeert dat de aantallen
aankomsten van de twee klassen in 1 slot stochastisch afhankelijk kunnenzijn. Dit soort aankomstprocessen wordt ook wel gestructureerde input (Engels:structured input) genoemd. Uit deze gezamenlijke pgf kunnen de marginale
pgf’s van het aantal aankomsten van klasse-1 en klasse-2 berekend worden:

j = 1, 2, alsook de pgf van het totaal aantal aankomsten in een slot:
(S.4)
(S.5)

AT (z) ,E[z a1,k +a2,k ]=A(z, z).

De (gemiddelde) aankomstintensiteit van klasse-j wordt genoteerd met λj en
kan gevonden worden uit de corresponderende pgf als A0j (1). De totale aankomstintensiteit λT is dan de som van de klasse-1 en klasse-2 aankomstintensiteiten. In dit proefschrift zullen we - als voorbeeld - doorlopend een (tweedimensionaal) binomiaalverdeeld aantal per-slot aankomsten van beide klassenveronderstellen, i.e.,A(z1 , z2 ) = 1 +

2
X
λj

N
j=1

N

(zj − 1) .

(S.6)

Dit is het aankomstproces dat waargenomen wordt aan de ingang van een
willekeurige uitgangsbuffer in een N × N schakelelement met uitgangsbuf-

S.1 Inleiding

5

Figuur S.1: Een N × N schakelelement met uitgangsbuffers

fers (zie Figuur S.1), waarbij de aankomstprocessen aan de ingangen van
het schakelelement gekenmerkt worden door (onafhankelijke en identische)Bernoulli-processen met parameter λT - een aankomende eenheid is van
klasse-j met probabiliteit λj /λT , j = 1, 2 - en waarbij alle eenheden onafhankelijk en uniform naar de uitgangen geschakeld worden.
Het bedieningsproces
Het bedieningsproces heeft de volgende (algemeen gemaakte) beperkingen:de bedieningstijden zijn onderling onafhankelijk en bedieningstijden van eenheden van klasse-j zijn identisch gedistribueerd. Noteren we de bedieningstijd van een willekeurige klasse-j eenheid als sj , dan is de pgf van de klasse-jbedieningstijden gegeven door
Sj (z) ,E[z sj ].

(S.7)

De gemiddelde bedieningstijd van een klasse-j eenheid - genoteerd als µj - isgegeven door Sj0 (1). De aankomstbelasting van klasse-j is dus gegeven doorρj = λj µj en de totale aankomstbelasting ρT is de som van de klasse-1 en
klasse-2 belasting.
De prioriteitsdiscipline
Tenslotte bespreken we de prioriteitsdiscipline. Er wordt aangenomen dat
klasse-1 eenheden voorrang hebben op de klasse-2 eenheden bij de bediening. Binnen één klasse nemen we aan dat de discipline FCFS (Engels: First
Come First Served) is, wat betekent dat de eenheden van een specifieke klasse bediend worden in volgorde van aankomst. Dus als het bedieningsstation

6

Samenvatting

vrijkomt, wordt een klasse-1 eenheid bediend en enkel als er geen klasse-1
eenheden zijn, kan de bediening van een klasse-2 eenheid aanvangen. Er
kunnen twee soorten prioriteitsdisciplines onderscheiden worden, nl., de nietpreëmptieve prioriteitsdiscipline en de preëmptieve prioriteitsdiscipline. Bij de nietpreëmptieve (Engels: non-preemptive of NP) prioriteitsdiscipline worden bedieningen nooit onderbroken. Dus als er klasse-1 eenheden aankomen gedurende een klasse-2 bediening, kan deze bediening niet onderbroken worden en moeten de klasse-1 eenheden (ten minste) wachten tot het einde vandie bediening. Bij de preëmptieve prioriteitsdisciplines daarentegen, wordt
een klasse-2 bedieningstijd wel onderbroken door nieuwe klasse-1 aankomsten. Bij deze laatste kunnen nog drie soorten onderscheiden worden, nl., depreëmptieve met voortzetting (Engels: preemptive resume of PR), de preëmptieve
met verschillende herhaling (Engels: preemptive repeat different of PRD) en depreëmptieve met identieke herhaling (Engels: preemptive repeat identical of PRI)
prioriteitsdisciplines. Bij de eerste soort wordt de onderbroken bediening
voortgezet na de onderbreking, of m.a.w., enkel het nog niet bediende gedeelte van de eenheid moet na de onderbreking nog bediend worden. In de twee
preëmptieve disciplines met herhaling moet de volledige eenheid opnieuw bediend worden. Bij deze met verschillende herhaling kan de bedieningstijd
veranderen na een onderbreking - er wordt dan een nieuw monster van deklasse-2 bedieningstijden genomen - terwijl bij deze met identieke herhaling
de bedieningstijden identiek blijven na een onderbreking. Dus een eenheid
heeft telkens dezelfde bedieningstijd bij elke bedieningspoging.
Merk tenslotte op, dat als de bedieningstijden van klasse-2 deterministischgelijk zijn aan 1 slot, alle besproken prioriteitsdisciplines identiek zijn. Dit iswegens het feit dat een klasse-2 eenheid het systeem sowieso verlaat op het
einde van zijn bedieningsslot, of er nu klasse-1 eenheden aankomen of niet
gedurende dat slot.

S.1.8 Typische resultaten
Toevalsveranderlijken
Voor de verschillende wachtlijnmodellen bestudeerd in dit proefschrift, worden telkens een aantal toevalsveranderlijken gedefinieerd en geanalyseerd.
Deze toevalsveranderlijken worden allen in regime geanalyseerd in dit proefschrift. Een eerste is de systeembezetting bij het begin van een willekeurig slot.
Dit is het aantal eenheden dat aanwezig is in het systeem bij het begin van dit
slot. Hierbij worden zowel de systeembezettingen van beide klassen afzonderlijk - genoteerd met u1 en u2 - gedefinieerd als de totale systeembezettinguT = u 1 + u 2 .
Gerelateerde toevalsveranderlijken zijn de wachtlijnbezettingen bij het begin
van een willekeurig slot, i.e., het aantal eenheden in de wachtlijn bij het begin van een willekeurig slot. Het verschil tussen de systeembezettingen en deS.1 Inleiding

7

wachtlijnbezettingen is dat bij de eerste de eenheid die in bediening is wordt
meegerekend, terwijl dit niet het geval is bij de laatste. Ook de wachtlijnbezetting kan per klasse gedefinieerd worden - genoteerd met q1 en q2 - alsook
voor de totale wachtlijn - genoteerd met qT .
Een derde soort veranderlijke is het onvoltooid werk. Het totale onvoltooid
werk bij het begin van een slot wT is gedefinieerd als het aantal slots nodig
om de bediening van alle eenheden in het systeem bij het begin van dat slot af
te werken, waarbij men aanneemt dat er geen nieuwe eenheden meer zouden
aankomen. Het onvoltooid werk van klasse-j, wj , (j = 1, 2) is dan het aantal
slots van dit totale onvoltooid werk dat gespendeerd wordt aan bedieningen
van klasse-j eenheden.
Tenslotte definiëren we nog de vertragingstijd en de wachttijd. De vertragingstijd van een eenheid wordt gedefinieerd als het aantal slots dat deze zich in het
buffersysteem bevindt, terwijl de wachttijd het aantal slots is dat de eenheidzich in de wachtlijn bevindt. De bedieningstijd maakt dus deel uit van de vertragingstijd terwijl deze geen deel uitmaakt van de wachttijd. We definiëren
dus zowel de klasse-j vertragings- en wachttijd - respectievelijk genoteerd als
dj en tj - alsook de vertragings- en de wachttijd van een willekeurige (klasse-1
of klasse-2) eenheid - respectievelijk d en t.
In deze Nederlandstalige samenvatting zullen we enkel ingaan op de analyse
van de systeembezettingen en vertragingstijden, maar in het Engelstalig deelis er ook op de analyse van de andere gedefinieerde toevalsveranderlijken(meestal kort) ingegaan.
Probabiliteitsgenererende functies (pgf’s)
In dit proefschrift maken we veelvuldig gebruik van probabiliteitsgenererende functies. We zullen - voor de verschillende modellen - telkens de tweedimensionale pgf’s berekenen van de klasse-1 en klasse-2 systeembezettingenbij het begin van een willekeurig slot in regime. Uit deze tweedimensionale
pgf’s kunnen dan de marginale pgf’s van de toevalsveranderlijken berekend
worden, alsook de pgf van de som van beiden (of dus de pgf’s van de totale
systeembezetting, totale wachtlijnbezetting en totaal onvoltooid werk respectievelijk). Verder zullen we de pgf’s van de vertragingstijden en wachttijden
van klasse-1, klasse-2 en willekeurig geselecteerde eenheden berekenen.
MomentenUit de verkregen pgf’s kunnen we uiteindelijk de effectieve prestatiematen
berekenen, te beginnen met de momenten van de verschillende toevalsveranderlijken. De gemiddelde waarde en variantie van een veranderlijke X met
pgf X(z) zijn respectievelijk gelijk aan
E[X] =X 0 (1)

(S.8)

8

Samenvatting
Var[X] =X 00 (1) + X 0 (1) − (X 0 (1))2 .

(S.9)

Dus door het afleiden van de genererende functies en het evalueren in z = 1
kunnen alle (centrale) momenten van de toevalsveranderlijken - waarvan degenererende functies berekend zijn - gevonden worden. Verder kunnen van
toevalsveranderlijken waarvan de gezamenlijke genererende functie gevonden is de kruismomenten berekend worden. Zo worden b.v. de covariantie
en de correlatiecoëfficiënt van twee toevalsveranderlijken X1 en X2 , met gezamenlijke genererende functie X(z1 , z2 ), respectievelijk gegeven door
Cov[X1 , X2 ] ,E [(X1 − E[X1 ])(X2 − E[X2 ])]2=∂ X(z1 , z2 )− X10 (1)X20 (1)∂z1 ∂z2
z1 =z2 =1

Corr[X1 , X2 ] , p

Cov[X1 , X2 ].
Var[X1 ]Var[X2 ](S.10)(S.11)(S.12)

Massafuncties en staartprobabiliteiten
Een nog belangrijkere prestatiemaat is de probabiliteitsmassafunctie (Engels:probability mass function of pmf) van een toevalsveranderlijke X:
x(n) = Prob[X = n],(S.13)

voor n = 0, 1, . . .. Merk op dat de pgf X(z) van X niets anders is dan dez-getransformeerde van de pmf x(n), i.e.,X(z) =∞
X

x(n)z n .

(S.14)

n=0

Omgekeerd worden deze x(n) uit X(z) gevonden als:x(n) =

1 dn X(z).
n! dz n z=0(S.15)

Dus eens X(z) berekend is, kan d.m.v. deze laatste formule x(n) (voor allen) in principe berekend worden. Aangezien we echter meestal geı̈nteresseerdzijn in de x(n) voor grote n, is dit geen praktisch werkbare formule, wegens
het feit dat X(z) n maal moet afgeleid worden voor de berekening van x(n).
Daarom worden in de bestaande literatuur meestal benaderende technieken
gebruikt die exact zijn voor n → ∞ (de zogenaamde staartprobabiliteiten). In
dit proefschrift zullen we veelvuldig gebruik maken van enkele theorema’s,b.v., het theorema van Darboux (theorema 1.1 in de Engelstalige tekst), die destaartprobabiliteiten geven als (een deel van) het gedrag van de pgf’s in hun

S.2 Deterministische bedieningstijden van 1 slot

9

dominante singulariteit(en) (dit zijn de singulariteiten met kleinste norm) gekend is. Merk op dat 1 van die dominante singulariteiten op de positieve reëleas ligt. In de literatuur wordt meestal verondersteld dat dit de enige dominante singulariteit is. We hebben doorheen dit proefschrift deze veronderstelling
ook gemaakt.
In dit proefschrift worden de staartprobabiliteiten van de relevante toevalsveranderlijken berekend voor aankomstprocessen en bedieningsprocessen die
aan bepaalde voorwaarden voldoen (die er meestal op neerkomen dat de(marginale) pgf’s en hun afgeleiden naar oneindig moeten gaan voor z gelijk
aan hun convergentiestraal). Deze voorwaarden zijn voldaan voor de meeste’normale’ aankomst- en bedieningsprocessen, maar indien dit niet zo is, zijn
de gebruikte technieken meestal uitbreidbaar.

S.1.9 Overzicht van dit proefschrift
We beëindigen deze inleidende sectie met een kort overzicht (van het Nederlandstalig deel) van dit proefschrift. In de volgende sectie bespreken we het
geval van vaste bedieningstijden van 1 slot voor alle eenheden. Aangeziende klasse-2 eenheden vaste bedieningstijden hebben van 1 slot, hoeven we in
dit geval dus geen opsplitsing te doen van de prioriteitsdisciplines. We zullen de invloed van de aankomstkarakteristieken op de prestatiematen nagaan
via enkele numerieke voorbeelden. In sectie S.3 bespreken we hoe de nietpreëmptieve prioriteitsbuffer, de preëmptieve prioriteitsbuffer met voortzetting en de preëmptieve prioriteitsbuffer met verschillende en identieke herhaling geanalyseerd kunnen worden, als de bedieningstijden van de pakketten
algemeen gedistribueerd zijn (en eventueel verschillend voor beide prioriteitsklassen). We tonen d.m.v. een aantal numerieke voorbeelden ook de invloeden van en de verschillen tussen de verschillende disciplines aan. Tenslotte
besluiten we deze Nederlandstalige sectie en belichten kort enkele mogelijke
uitbreidingen.

S.2 Deterministische bedieningstijden van 1 slot
In eerste instantie hebben we een model bestudeerd waarbij de bedieningstijden van beide klassen deterministisch gelijk zijn aan één slot. Dit is een
model dat veelvuldig gebruikt wordt in discrete-tijd wachtlijnmodellen, aangezien het enerzijds het eenvoudigste model is voor de bedieningstijden enaangezien het anderzijds in de praktijk vaak voorkomt dat alle eenheden dezelfde bedieningstijd hebben. In een telecommunicatiecontext b.v., wordt dit
soort model gebruikt om wachtlijngedragingen in ATM (Asynchronous Transfer Mode) netwerken te bestuderen. In ATM netwerken zijn de cellen - in ATM
worden de eenheden aangeduid door cellen - allen van dezelfde lengte en de
tijd nodig om een cel te verzenden wordt als slotlengte genomen.

10Samenvatting

Discrete-tijd prioriteitssystemen met bedieningstijden van één slot en geencorrelatie tussen de aankomstprocessen van de verschillende prioriteitsklassen zijn bestudeerd door Hashida and Takahashi [1991], Schormans et al.
[1991], Takine et al. [1994b], Choi et al. [1998a], Shakkottai and Srikant [2001],
Xabier Albizuri et al. [2003] en Mehmet Ali and Song [2004], waarbij deverschillende artikels zowel verschillen in de modellering van het aankomstproces als in de gebruikte oplossingstechnieken en behaalde resultaten.
Discrete-tijd prioriteitssystemen met bedieningstijden van één slot en correlatie tussen de aankomstprocessen van de verschillende prioriteitsklassen zijn
geanalyseerd in [Sidi and Segall 1983, Chang and Harn 1992, Khamisy andSidi 1992, Laevens and Bruneel 1998, Walraevens and Bruneel 1999] en [Walraevens et al. 2003c], waarbij in al deze artikels de pgf-methode gebruikt is,maar waarbij er onderling verschillen zijn in het aantal bedieningsstations en
in de behaalde resultaten.
Alhoewel dit initieel bestudeerde model - met bedieningstijden gelijk aan éénslot - een speciaal geval is van het model bestudeerd in [Laevens and Bruneel
1998] - waarin een prioriteitsbuffer met meerdere bedieningsstations geanalyseerd is - en van de verdere modellen bestudeerd in dit proefschrift - waarbij
meer algemene bedieningstijden aangenomen worden - vinden we het nuttig
om de analyse van dit model in dit proefschrift uitvoerig te beschrijven. Dit
geeft ons de kans om de technieken die we doorheen het proefschrift gebruiken vooreerst uit te leggen voor een vrij eenvoudig model. Verder geeft dit
eenvoudig model ons ook de kans om de (pure) invloed van het aankomstproces op de prestatiematen te bestuderen, aangezien het aankomstproces deenige ’stochastische input’ is in dit model. De analyse van dit model is het
onderwerp van het tweede hoofdstuk in het Engelstalige gedeelte.

S.2.1 Berekening pgf’s
Systeembezettingen
Allereerst wordt de gezamenlijke pgf U (z1 , z2 ) van de systeembezettingen van
klasse-1 en klasse-2 bij het begin van een willekeurig slot in regime berekend,
door uit te gaan van de systeemvergelijkingen (systeembezetting bij begin van
een slot i.f.v. de systeembezetting bij het begin van het vorige slot en de nieuwe aankomsten gedurende dit laatste slot). Dit werkt aangezien de bedieningstijden gelijk zijn aan één slot. Daardoor vormen de systeembezettingen
van klasse-1 en klasse-2 bij het begin van opeenvolgende slots een Markov keten of m.a.w. deze toevalsveranderlijken bij het begin van een slot zijn gekend
als we diezelfde toevalsveranderlijken kennen bij het begin van het vorige slot
- alsmede de ingangsveranderlijken (in dit geval zijn dit het aantal klasse-1 en
klasse-2 aankomsten gedurende het vorige slot). U (z1 , z2 ) wordt dan gevonden, door onder meer gebruik te maken van Rouché’s theorema (zie Appen-S.2 Deterministische bedieningstijden van 1 slot

11dix) en de normalisatievoorwaarde (U (1, 1) = 1). We verkrijgen uiteindelijk
U (z1 , z2 ) =(1 − λT )A(z1 , z2 )(z1 − Y (z2 ))(z2 − 1),(z1 − A(z1 , z2 ))(z2 − Y (z2 ))(S.16)

waarbij
Y (z) , A(Y (z), z).

(S.17)

Belangrijk hierbij is dat Y (z) enkel impliciet gedefinieerd is (voor algemene
aankomstprocessen). Daardoor is U (z1 , z2 ) niet expliciet berekend, maar wetonen aan dat dit geen probleem vormt om de prestatiematen te berekenen(zie verder). De gezamenlijke pgf U (z1 , z2 ) is vervolgens het uitgangspunt
van alle verdere berekeningen. Zo b.v. zijn hieruit de marginale pgf’s van deklasse-1, klasse-2 en totale bufferbezettingen eenvoudig te vinden.

Vertragingstijden
Verder worden de pgf’s van de vertragingstijden van klasse-1 en klasse-2
cellen (afzonderlijk) berekend. Dit gebeurt door de vertragingstijden van
een willekeurige klasse-1 cel of willekeurige klasse-2 cel uit te drukken i.f.v.
de systeembezettingen bij het begin van hun aankomstslots en deze te ztransformeren. Bij de klasse-2 vertragingstijd voeren we dan de notie vande fundamentele periode (Engels: sub-busy period) in. Deze is ruwweg gedefinieerd als het aantal slots dat nodig is om het aantal wachtende cellen die
bediend moeten worden vóór een bepaalde klasse-2 cel met één te verminderen. Merk op dat deze fundamentele periode niet noodzakelijk gelijk is aan
1 aangezien klasse-1 cellen die aankomen terwijl de klasse-2 cel zich in dewachtlijn bevindt voor deze cel bediend worden. Uiteindelijk verkrijgen wede volgende pgf’s voor de klasse-1 en klasse-2 vertragingstijden:
1 − λ1 z(A1 (z) − 1)
λ1
z − A1 (z)1 − λT zAT (V (z)) − V (z)D2 (z) =,λ2 V (z) − AT (V (z))

D1 (z) =(S.18)(S.19)met
V (z) = zA1 (V (z)),(S.20)de pgf van de fundamentele periodes. Merk op dat V (z) - net als Y (z) - enkel
impliciet gedefinieerd is.

12

Samenvatting

S.2.2 Berekening prestatiematen
Zoals in de inleiding besproken kunnen uit de behaalde pgf’s de momenten
en staartprobabiliteiten van de verschillende toevalsveranderlijken berekend
worden. Het enige overblijvende probleem is het feit dat impliciet gedefinieerde functies voorkomen in de pgf’s van de klasse-2 toevalsveranderlijken. We
bespreken kort het effect hiervan op de berekening van momenten en staartprobabiliteiten.
Momenten
Bij de berekening van de momenten moeten de genererende functies een aantal maal afgeleid worden en vervolgens geëvalueerd worden in z = 1. Aangezien Y (z) en V (z) pgf’s (blijken te) zijn, zijn deze gelijk aan 1 in z = 1. Doordat
we de expliciete waarde van deze functies dus weten voor z = 1, kunnen weook alle afgeleiden van deze functies, geëvalueerd in 1, expliciet berekenen.
We besluiten dus dat de berekeningen van de momenten uit de pgf’s geenprobleem vormen.
Staartprobabiliteiten
Wat de berekening van de staartprobabiliteiten betreft, gaan we eerst in op destaartprobabiliteiten van de toevalsveranderlijken waarbij zich geen impliciet
gedefinieerde functies bevinden (vooral de “klasse-1 toevalsveranderlijken”).
Noteren we de pgf van een toevalsveranderlijke met X(z). Deze heeft een
enkelvoudige dominante pool z∗ op de positieve reële as (> 1). Deze pgf is
dus in de buurt van deze pool benaderend te schrijven als
X(z) ≈

K,z∗ − z(S.21)

waarbij K berekend wordt door de limiet van X(z) te berekenen voor z →z∗ . Doordat we het benaderende gedrag van de pgf in zijn dominante pool
kennen, kunnen we de staartprobabiliteiten berekenen - gebruik makende vanDarboux’s theorema - en we verkrijgen het volgende geometrische staartgedragx(n) ≈Kz∗−n−1 ,(S.22)

met x(n) de probabiliteitsdistributie horende bij X(z). Deze benadering wordt
beter naarmate n groter is en is exact voor n → ∞.

De staartprobabiliteiten berekenen van een toevalsveranderlijke wiens pgf impliciet gedefinieerd is, Y (z) b.v., is gecompliceerder. Dit is vooral omdat dezefuncties doorgaans dominante singulariteiten hebben die geen geı̈soleerde polen zijn. In hun dominante singularteit blijven deze functies zelf eindig, terwijl

S.2 Deterministische bedieningstijden van 1 slot

13

hun afgeleiden er oneindig worden. Dit punt is een vertakkingspunt. Gebruiken we Y (z) hier verder als voorbeeld, dan kunnen we deze pgf in de buurt
van haar dominante singulariteit zB schrijven als
Y (z) ≈Y (zB ) − KY (zB − z)1/2 ,(S.23)

waarbij KY gevonden wordt door Y (z) en zijn afgeleiden te evalueren in zB .
Opnieuw gebuik makend van Darboux’s theorema vinden we het volgende
niet-geometrische gedrag voor de distributie behorende bij Y (z):y(n) ≈KY2

r

zB −3/2 −n
n
zB .
π

(S.24)

Uiteindelijk kunnen de staartprobabiliteiten van de toevalsveranderlijken berekend worden wiens pgf’s een impliciet gedefinieerde functie - b.v. Y (z) bevatten. Noteren we zo een pgf opnieuw met X(z). Deze heeft dan twee
singulariteiten die een rol spelen, nl. een enkelvoudige pool - opnieuw genoteerd met z∗ - en het vertakkingspunt zB van de impliciet gedefinieerde
functie. Drie gevallen kunnen zich dan onderscheiden, nl., z∗ is dominant,z∗ = zB is dominant en zB is dominant. In deze drie gevallen kan de genererende functie X(z) in de buurt van zijn dominante singulariteit geschreven
worden als
 (1)
K


als z∗ dominant


z

 ∗−z
X(z) ≈K (2)
als z∗ = zB dominant(zB − z)1/2
X(zB ) − K (3) (zB − z)1/2 als zB dominant,(S.25)

waarbij de K (i) (i = 1, 2, 3) kunnen berekend worden door de limiet van X(z)voor z gaande naar zijn dominante singulariteit te bepalen. Door Darboux’s
theorema te gebruiken worden de staartprobabiliteiten gevonden: (1) −n−1
K z∗
als z∗ dominant(2) −1/2 −n

K
n
z

B

als z∗ = zB dominant√
πzBx(n) ≈
 K (3) n−3/2 z −n


B

p
als zB dominant.

2 π/zB(S.26)We besluiten dus dat de invloed van een impliciet gedefinieerde functie in deuitdrukking van een pgf is dat het staartgedrag niet langer noodzakelijkerwijs
geometrisch is.

14

Samenvatting

5
E[u2]
α=

0.25
0.5
0.75
FIFO (α = 0.5)

4

3

2
E[u1]

1

0
0

0.2

0.4

0.6

0.8

1

λT
Figuur S.2: Gemiddelde systeembezettingen versus de totale aankomstintensiteit

S.2.3 Numerieke voorbeelden
In deze paragraaf zullen we kort de invloed van enkele parameters op deprestatiematen tonen. We zullen dit doen a.d.h.v. het schakelelement met uitgangsbuffers zoals eerder vermeld (zie Figuur S.1). De gezamenlijke pgf van
het aantal klasse-j aankomsten (j = 1, 2) aan een willekeurige uitgangsbuffer is gegeven door (S.6). We definiëren α als de fractie klasse-1 belasting van
de totale belasting (in dit model is dit gelijk aan λ1 /λT ). Zonder andere vermelding veronderstellen we N - het aantal ingangen van het schakelelement steeds gelijk aan 16.
Figuren S.2 en S.3 tonen de gemiddelde waarden en varianties van de systeembezettingen van klasse-1 en klasse-2 als functies van de totale aankomstintensiteit λT voor verschillende waarden van α. We hebben deze grootheden ook uitgezet voor een FIFO discipline i.p.v. een prioriteitsdiscipline voor
α = 0.5. Merk op dat de gemiddelde waarden en varianties van de bufferbezettingen van beide klassen in dit geval gelijk zijn. Uit deze figuren kan
duidelijk de invloed gezien worden van de prioriteitsdiscipline: de gemiddelde waarde en variantie van de klasse-1 systeembezetting worden gereduceerd
door de prioriteitsdiscipline, terwijl het tegengestelde geldt voor de klasse-2
cellen, en dit vooral bij een hoge aankomstintensiteit.
Figuur S.4 toont de correlatiecoëfficiënt ρu1 u2 van de klasse-1 en klasse-2 systeembezettingen bij het begin van een slot als een functie van λT voor verschillende waarden van α (alsmede diezelfde correlatiecoëfficiënt als de discipline
FIFO is en α = 0.5). ρu1 u2 is licht negatief voor kleine λT , maar wordt positief

S.2 Deterministische bedieningstijden van 1 slot

15

5
Var[u2]
α=

0.25
0.5
0.75
FIFO (α = 0.5)

4

3

2Var[u1]
1

0
0

0.2

0.4

0.6

0.8

1

λT

Figuur S.3: Varianties van de systeembezettingen versus de totale aankomstintensiteit

voor grotere λT . De reden daarvoor is dat er twee tegenwerkende effecten
optreden. Het eerste is de negatieve correlatie tussen het aantal aankomsten
van klasse-1 en klasse-2 in een slot (aangezien het aantal ingangen van het
schakelelement eindig is) die doorgegeven wordt aan de correlatie tussen desysteembezettingen. Dit effect is vooral belangrijk bij lage aankomstintensiteiten aangezien er dan zo goed als geen buffering optreedt. De correlatie tussen
de bufferbezettingen is dan zo goed als het directe gevolg van de correlatie
tussen het aantal klasse-1 en klasse-2 aankomsten binnen een slot. De tweede
invloed is de prioriteitsdiscipline zelf: als λ1 en λT toenemen, komen er steedsmeer cellen aan en de aanwezigheid van klasse-1 cellen verhindert de bediening van klasse-2 cellen, waardoor de correlatie positief wordt: hoe groter deklasse-1 systeembezetting, hoe groter de klasse-2 systeembezetting. Merk op
dat als λT → 1 de buffer van klasse-2 onstabiel wordt en de systeembezetting
van klasse-2 naar oneindig gaat (onafhankelijk van de klasse-1 systeembezetting). Daardoor gaat ρu1 u2 naar 0.
Figuur S.5 toont de gemiddelde klasse-1 en klasse-2 vertragingstijden als functies van λT voor verschillende waarden van α. Opnieuw werd ook de vertragingstijd getoond in het geval van een FIFO discipline (die aanleiding geeft tot
gelijk gedistribueerde vertragingstijden voor klasse-1 en klasse-2 in dit specifiek geval). Het is duidelijk dat de gemiddelde klasse-1 vertragingstijd gereduceerd wordt, terwijl de gemiddelde klasse-2 vertragingstijd stijgt als gevolg
van de prioriteitsdiscipline. Dit is natuurlijk precies waarom een prioriteitsdiscipline wordt ingevoerd. Tenslotte kunnen we ook opmerken dat zowel
de gemiddelde klasse-1 als klasse-2 vertragingstijden stijgen met stijgende α,
of m.a.w., dat de prioriteitsdiscipline het best werkt als het aantal cellen die
prioriteit krijgen zo klein mogelijk gehouden wordt.

16

Samenvatting

1
α=

0.25
0.5
0.75
FIFO (α = 0.5)

0.8
0.6
ρu u

1 2

0.4
0.2
0
0

0.2

0.4

0.6

0.8

1

λT

Figuur S.4: Correlatiecoëfficiënt van de klasse-1 en klasse-2 systeembezettingen versus
de totale aankomstintensiteit

5
E[d2]
α=

4

0.25
0.5
0.75
FIFO

3

E[d1]

2

1

0
0

0.2

0.4

0.6

0.8

1

λT
Figuur S.5: Gemiddelde vertragingstijden versus de totale aankomstintensiteit

S.2 Deterministische bedieningstijden van 1 slot

17

5
E[u2]
N= 2
4
16
∞

4

3

2

1
E[u1]
0
0

0.2

0.4

0.6

0.8

1

λT
Figuur S.6: Invloed van de tweede-orde momenten van het aankomstproces op de
gemiddelde systeembezettingen

In Figuur S.6 worden de gemiddelde systeembezettingen van klasse-1 en
klasse-2 getoond als functies van λT voor α = 0.25 en voor verschillende
waarden van N (het aantal ingangen van het bestudeerde schakelelement).
Door N te variëren worden de tweede-orde karakteristieken - varianties encovarianties - van de klasse-1 en klasse-2 aankomsten in een slot gevarieerd.
Wanneer N stijgt, neemt de variantie van de klasse-1 en klasse-2 aankomsten toe en wordt de covariantie minder negatief. Daardoor stijgen ook de
gemiddelde systeembezettingen van klasse-1 en klasse-2 (zie figuur) en deze toename is vooral belangrijk in het geval van de gemiddelde klasse-2
systeembezetting en wanneer N klein is (de stijging als het aantal schakelelementingangen van 2 naar 4 gaat is b.v. een stuk groter dan wanneer deze van
16 naar ∞ gaat).
Tenslotte toont Figuur S.7 de staartprobabiliteiten van de klasse-1 en klasse-2
vertragingstijden voor λ1 = 0.4 en λ2 = 0.1, 0.21 en 0.4. De λ2 zijn zodanig
gekozen dat de drie gedragingen van de staartprobabiliteiten voor de klasse2 vertragingstijden gerepresenteerd zijn, nl. respectievelijk niet-geometrischgedrag, het transitiegedrag en geometrisch gedrag. Aangezien de staartprobabiliteiten benaderingen zijn (voor eindige n) hebben we deze gevalideerd
door de distributies te berekenen uit simulaties (aangegeven door de markeringen in de figuur). Deze tonen aan dat de benaderende waarden heel dicht
tegen de exacte waarden liggen.

18

Samenvatting

1
0.1
0.01
0.001
0.0001
1e-05
klasse-1
klasse-2 niet-geo
klasse-2 transklasse-2 geo

1e-06
1e-07
1e-08
0

5

10

15

20

25

30

n

Figuur S.7: Staartprobabiliteiten van de klasse-1 en klasse-2 vertragingstijden voor een
aantal combinaties van klasse-1 en klasse-2 aankomstintensiteiten

S.3 Algemene bedieningstijden
In het vervolg van dit proefschrift veronderstellen we dat de klasse-1 en
klasse-2 bedieningstijden willekeurige distributies hebben. Deze kunnen tevens verschillend zijn, i.e., de distributie van de bedieningstijden van klasse-1
eenheden kan verschillend zijn van deze van de klasse-2 eenheden.
In hedendaagse multimedia pakketgebaseerde telecommunicatienetwerkenb.v., hebben de eenheden doorgaans niet allemaal dezelfde lengte. Het model met constante bedieningstijden van één slot is dan ook te restrictief om deprestatiematen in deze netwerken te analyzeren. Prioriteitsdisciplines in deze multimedianetwerken zijn een belangrijk onderzoeksonderwerp. In [Xiaoand Ni 1999] wordt bv. een prioriteitsdiscipline voorgesteld in het gedifferentieerde bedieningsmodel (Engels: differentiated service model). Hierbij wordt
verkeer van één klasse (de Premium Bedieningsklasse) een hogere prioriteit
gegeven over het andere verkeer. We zullen in deze sectie de pakketgebaseerde terminologie overnemen en de eenheden ’pakketten’ noemen.
Zoals in subsectie S.1.7 vermeld is, kunnen verschillende soorten prioriteitsdisciplines gedefinieerd worden wanneer de klasse-2 bedieningstijden
meer dan één slot kunnen bedragen, nl. de niet-preëmptieve (NP) prioriteitsdiscipline, de preëmptieve prioriteitsdiscipline met voortzetting (PR), depreëmptieve prioriteitsdiscipline met verschillende herhaling (PRD) en depreëmptieve prioriteitsdiscipline met identieke herhaling (PRI). Bij de NP prioriteitsdisciplines kan de bediening van eenheden niet onderbroken worden,
terwijl bij de PR, PRD en PRI prioriteitsdisciplines nieuw aankomende klasse1 eenheden een aan de gang zijnde klasse-2 bediening wel onderbreken. Bij

S.3 Algemene bedieningstijden

19de PR prioriteitsdiscipline wordt de onderbroken bediening van de klasse-2
eenheid voortgezet, terwijl deze herhaald wordt bij de PRD en PRI disciplines. Het verschil tussen deze laatste twee is dat de herhaalde bediening een
nieuwe monsterwaarde aanneemt bij de PRD discipline terwijl deze identiek
blijft bij de PRI prioriteitsdiscipline. Deze vier prioriteitsdisciplines zijn elk
op hun beurt geanalyzeerd in dit proefschrift. In het Engelstalig gedeelte van
dit proefschrift zijn de analyses en berekeningen van de prestatiematen tevinden. In hoofdstuk 3 hebben we de analyse van de NP prioriteitswachtlijn
beschreven, in hoofdstuk 4 de analyse van de PR prioriteitswachtlijn en in
hoofdstuk 5 de analyses van de PRD en PRI prioriteitswachtlijnen.
Discrete-tijd wachtlijnen met een prioriteitsdiscipline en zonder correlatie inde aankomstprocessen van de verschillende prioriteitsklassen zijn bestudeerd
door o.a. Rubin and Tsai [1989], Chen and Guérin [1991], Mukherjee et al.
[1995], Choi et al. [1997], Lee et al. [1998], Wang et al. [2000], Lee [2001], Leeet al. [2003], Fiems et al. [2004] en Fiems [2004]. In [Rubin and Tsai 1989] zijnde (gemiddelde) wacht- en vertragingstijden geanalyzeerd in NP en PR prioriteitswachtlijnen gebruik makend van pgf’s. ATM schakelelementen met
buffers aan de ingang en een PR prioriteitsdiscipline zijn bestudeerd in [Chenand Guérin 1991] en [Lee et al. 1998]. In [Choi et al. 1997] is dit ook bestudeerd alsmede het geval dat een NP prioriteitsdiscipline gebruikt wordt i.p.v.
een PR prioriteitsdiscipline. In [Mukherjee et al. 1995] wordt een PRI (of PRD)
prioriteitssysteem met constante bedieningstijden (van meerdere slots) geanalyseerd. De lage prioriteitsbuffer wordt bestudeerd d.m.v. een wachtlijnmodelmet bedieningsonderbrekingen. Wang et al. [2000] berekenen de gemiddeldevertragingstijden in een NP prioriteitswachtlijn en deze worden gebruikt voorde prestatie-analyse van een ring netwerk met meerdere kanalen. Lee [2001]
en Lee et al. [2003] analyseren respectievelijk een PR en een NP prioriteitswachtlijn gebruik makend van pgf’s. Tenslotte bestuderen Fiems et al. [2004]
en Fiems [2004] de prestatiematen van de lage prioriteitsklasse in PR, PRD en
PRI prioriteitswachtlijnen. Dit wordt gedaan a.d.h.v. een wachtlijnmodel met
bedieningsonderbrekingen.
Verder zijn er een aantal discrete-tijd wachtlijnmodellen geanalyzeerd met
correlatie in de aankomstprocessen van de verschillende prioriteitsklassen,
nl. o.a. door Takahashi and Hashida [1991] en Walraevens et al. [2000b,c,a,d,
2001, 2002a,b, 2003a,b, 2004b]. In al deze artikels wordt gebruik gemaakt van
pgf’s. Takahashi and Hashida [1991] berekenen de gemiddelde vertragingstijden van de verschillende prioriteitsklassen in een NP en PR prioriteitswachtlijn, gebruik makend van vertragingstijdcycli. De analyses in deze sectie zijn
gebaseerd op [Walraevens et al. 2000b,c,d, 2002a, 2003b] - waarin NP prioriteitswachtlijnen geanalyseerd zijn -, op [Walraevens et al. 2000a, 2001, 2002b,
2004b] - waarin PR prioriteitswachtlijnen bestudeerd zijn - en op [Walraevens
et al. 2003b] - waarin een PRD prioriteitswachtlijn aan bod komt. De behaalde
resultaten voor de PRI prioriteitswachtlijn zijn nog niet gepubliceerd.
In deze sectie bespreken we hoe we de vier prioriteitswachtlijnen met algemene bedieningstijden geanalyseerd hebben. Deze zijn in het Engelstalig gedeel-

20

Samenvatting

te van het proefschrift één voor één bestudeerd. In dit Nederlandstalig gedeelte richten we ons op de verschillen tussen de analyses van deze 4 wachtlijnen
alsmede op de verschillen in hun prestatiematen.

S.3.1 Bespreking van de gebruikte methodes
Aangezien de bedieningstijden van de pakketten willekeurig gedistribueerdzijn, vormen de systeembezettingen van beide klassen bij het begin van opeenvolgende slots niet langer een Markov keten. Of m.a.w., de kennis van desysteembezettingen bij het begin van een willekeurig slot (samen met het aantal aankomsten van beide klassen in dat slot) is niet genoeg informatie om dedistributie van de systeembezettingen te kennen bij het begin van het volgend
slot. De oplossing bestaat erin nieuwe toevalsveranderlijken te definiëren zodat een Markov keten kan opgesteld worden. Er zijn twee mogelijke manierenom een Markov keten op te bouwen en deze worden beide in de volgende paragrafen besproken.
De eerste mogelijkheid is de systeembezettingen van beide klassen te beschouwen bij het begin van specifiek gedefinieerde slots i.p.v. bij het begin
van willekeurige slots. De op deze manier geconstrueerde Markov keten
wordt een ingebouwde Markov keten (Engels: embedded Markov chain) genoemd,
aangezien de Markov keten ingebouwd is in de keuze van de speciefieke tijdstippen. Het gebruik van deze methode beperkt zich niet tot prioriteitswachtlijnen en zelfs niet tot discrete-tijd wachtlijnen, maar wordt voor allerhande
wachtlijnanalyses toegepast. Een veel gebruikte methode is bv. de systeembezettingen eerst te analyzeren op opeenvolgende vertrektijdstippen (als deze
een Markov keten vormen) en de systeembezetting op willekeurig bepaalde
tijdstippen te berekenen uit deze op vertrektijdstippen.
De tweede mogelijkheid om een Markov keten op te bouwen is het definiërenvan bijkomende toevalsveranderlijken bij het begin van alle slots (naast debufferbezettingen van beide klassen), zodanig dat de systeembezettingen van
beide klassen en deze bijkomende toevalsveranderlijken bij het begin van opeenvolgende slots een Markov keten vormen. Deze techniek wordt de bijkomende veranderlijke techniek genoemd (Engels: supplementary variable technique)en wordt - volgens o.a. Chaudhry and Templeton [1983] - toegeschreven aan
Kosten. Deze techniek wordt veelvuldig in discrete tijd gebruikt aangezien
het grote voordeel van discrete-tijd analyses net het beschouwen van opeenvolgende slots is. In [Bruneel 1993] b.v., wordt een FIFO buffer met één klasse
en algemene bedieningstijden op deze manier geanalyseerd.
In dit proefschrift hebben we beide methoden gebruikt. De eerste methodehebben we toegepast op wachtlijnen met een NP prioriteitsdiscipline, terwijl
we de bijkomende veranderlijke techniek gebruikt hebben om de PR, PRD en
PRI prioriteitswachtlijnen te bestuderen. Deze keuzes zijn natuurlijk niet toevallig. Het definiëren van specifieke slots zodat de systeembezettingen van

S.3 Algemene bedieningstijden

21

Figuur S.8: Monster van de tijdsas om de locatie van de startslots te tonen

beide klassen bij het begin van opeenvolgende van deze slots een Markov keten vormen, is een stuk eenvoudiger/natuurlijker voor het NP geval dan voorde andere gevallen. Dit komt doordat bij de NP prioriteitsdiscipline geen bedieningstijden onderbroken worden. Daardoor is het aantal slots tussen twee
opeenvolgende slots waar een bediening start gelijk aan de lengte van een bedieningstijd en bevat de buffer bij het begin van deze specifiek gedefinieerde
slots enkel “complete” pakketten (voor meer details zie verder). Aangezienbij de drie andere prioriteitsdisciplines de bedieningen van klasse-2 pakketten onderbroken kunnen worden, is het definiëren van zulke specifieke slots
niet meer zo eenvoudig als bij het NP geval. Het definiëren van bijkomende toevalsveranderlijken bij het begin van alle slots daarentegen zodanig dat
deze samen met de systeembezettingen van beide klassen bij het begin van
opeenvolgende slots een Markov keten vormen, is een vrij eenvoudige zaak
(zoals we verder zullen aantonen). Merk wel op dat het daarom niet noodzakelijk onmogelijk is om de verschillende prioriteitswachtlijnen ook op deandere manier te analyseren.

S.3.2 Berekeningen van de pgf’s
NP prioriteitsdiscipline
We introduceren de notie van startslots in dit model als volgt: startslots zijn
gedefinieerd als die slots bij het begin van welke de bediening van een nieuw
pakket kan starten. Merk op dat uit deze definitie direct volgt dat slots bij
het begin van welke het systeem geen pakketten bevat startslots zijn. In Figuur S.8 wordt een voorbeeld van een tijdsas getoond met aanduiding van destartslots.
De systeembezettingen van beide klassen bij het begin van opeenvolgende

22

Samenvatting

startslots vormen een Markov keten. Inderdaad, de systeembezettingen van
klasse-1 en klasse-2 bij het begin van het l + 1-ste startslot kunnen geschreven
worden als functies van de systeembezettingen van klasse-1 en klasse-2 bij het
begin van het l-de startslot en de ingangsveranderlijken (specifiek: de bedieningstijd tussen beide startslots en het aantal klasse-1 en klasse-2 aankomsten
gedurende deze bedieningstijd). Uitgaande van deze systeemvergelijkingenen gebruik makend van enkele wiskundige technieken (waaronder het theorema van Rouché) vinden we de gezamenlijke pgf N (z1 , z2 ) van de systeembezettingen van klasse-1 en klasse-2 bij het begin van een willekeurig startslot
in regime. Deze gezamenlijke pgf N (z1 , z2 ) is vervolgens het uitgangspunt
van alle verdere berekeningen.
De gezamenlijke pgf U (z1 , z2 ) van de klasse-1 en klasse-2 systeembezettingenbij het begin van een willekeurig slot in regime wordt hier vooreerst uit berekend en is gegeven door
E1 (z1 , z2 )(z1 − 1)
+ (1 − ρT )(S.27)
z1 − E1 (z1 , z2 )
 z1 E2 (z1 , z2 )(E1 (z1 , z2 ) − 1) (A(Y1 (z2 ), z2 ) − 1) +z2 E1 (z1 , z2 )(1 − E2 (z1 , z2 ))+z1 z2 (E2 (z1 , z2 ) − E1 (z1 , z2 ))×,(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))U (z1 , z2 ) =(1 − ρT )met
Ej (z1 , z2 ) ,Sj (A(z1 , z2 ))(S.28)Yj (z) ,Ej (Y1 (z), z).

(S.29)Net als in de analyse in de vorige sectie is deze pgf U (z1 , z2 ) niet volledig
expliciet gekend, aangezien Y1 (z) impliciet gedefinieerd is. Hieruit kunnen
dan de marginale pgf’s van de totale, klasse-1 en klasse-2 systeembezettingen
berekend worden.
Vervolgens worden de vertragingstijden van klasse-1 en klasse-2 pakketten(afzonderlijk) bestudeerd. Dit gebeurt door de vertragingstijden van een willekeurig klasse-1 of willekeurig klasse-2 pakket uit te drukken i.f.v. de systeembezetting bij het begin van het laatste startslot voor zijn aankomstslot
en deze te z-transformeren. Bij de klasse-2 vertragingstijd gebruiken we opnieuw de notie van de fundamentele periode. Bij algemene bedieningstijden
maken we echter onderscheid tussen twee soorten fundamentele periodes, nl.
fundamentele periodes geı̈nitieerd door een klasse-1 pakket en fundamentele periodes
geı̈nitieerd door een klasse-2 pakket. Een fundamentele periode geı̈nitieerd door
een klasse-1 pakket wordt gedefinieerd als de periode (uitgedrukt in een aantal slots) die nodig is om het aantal klasse-1 pakketten - vanaf het begin van
de bedieningstijd van het klasse-1 pakket - te verminderen met 1. Een fundamentele periode geı̈nitieerd door een klasse-2 pakket start bij het begin van deS.3 Algemene bedieningstijden

23

bedieningstijd van dit klasse-2 pakket en eindigt wanneer de bediening van
een volgend klasse-2 pakket kan starten. Deze twee soorten fundamentele
periodes zijn verschillend gedistribueerd als de bedieningstijden van klasse1 en klasse-2 pakketten een verschillende distributie hebben. Daarom was
het in het vorige model - constante bedieningstijden van één slot - niet nodig
om het onderscheid te maken tussen deze twee types fundamentele periodes.
Uiteindelijk verkrijgen we de volgende pgf’s voor de klasse-1 en klasse-2 vertragingstijden in de NP prioriteitswachtlijn:
ρ2 S2 (z) − 1
1 − ρT+
1 − ρ11 − ρ1 µ2 (z − 1)
(S.30)

D1 (z) =1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1
λ1 z − A1 (S1 (z)) S1 (z) − 1

D2 (z) =1 − ρT S2 (z)(A(V1 (z), V2 (z)) − A1 (V1 (z))) zA1 (V1 (z)) − 1,
λ2
zA1 (V1 (z)) − A(V1 (z), V2 (z))
V2 (z) − 1(S.31)Vj (z) ,Sj (zA1 (V1 (z))),(S.32)

met

j = 1, 2, de pgf van een fundamentele periode geı̈nitieerd door een klassej pakket. Merk op dat V1 (z) - net als Y1 (z) - enkel impliciet gedefinieerd is.
De pgf van de vertragingstijd van een willekeurig pakket is dan een gewogen
som van D1 (z) en D2 (z) (met respectievelijke gewichten λ1 /λT en λ2 /λT ).
PR prioriteitsdiscipline
Zoals al vermeld, maken we voor de analyse van de PR prioriteitswachtlijn
gebruik van de bijkomende veranderlijke techniek. We analyseren echter niet
onmiddellijk een wachtlijn met willekeurige bedieningstijden, maar starten
met een vereenvoudigd model dat we gaandeweg veralgemenen.
Eerst veronderstellen we de bedieningstijden geometrisch verdeeld. Het specifieke aan de geometrische distributie is het feit dat ze de geheugenloze eigenschap bezit. Toegepast op de bedieningstijden wil dit specifiek zeggen dat als
we een slot uitkiezen waarin een bedieningstijd aan de gang is, dat het residuele deel van deze bedieningstijd niet afhangt van het aantal slots dat het
pakket al bediend is. M.a.w. de kans dat een pakket in bediening nog minstens een slot bediening nodig heeft, kan beschreven worden door één parameter, onafhankelijk van hoelang dat pakket al in bediening is. Daardoor
vormen de systeembezettingen van beide klassen bij het begin van opeenvolgende slots een Markov keten en moeten er voor dit vereenvoudigd model
geen bijkomende toevalsveranderlijken gedefinieerd worden. Merk op dat deparameters van de geometrische distributies van de klasse-1 en klasse-2 bedieningstijden verschillend kunnen zijn. De gezamenlijke pgf U (z1 , z2 ) van
de systeembezettingen van beide klassen kan dan berekend worden.

24

Samenvatting

Figuur S.9: Monster van de tijdsas om de prioriteitsdiscipline en de bijkomende veranderlijken te illustreren

Dit eerste model breiden we dan vooreerst uit naar algemene bedieningstijden
voor de klasse-1 pakketten. In dit geval vormen de systeembezettingen van
beide klassen bij het begin van opeenvolgende slots niet langer een Markov
keten. Daarom definiëren we een bijkomende veranderlijke, namelijk, het
overblijvend aantal slots dat het klasse-1 pakket nog in bediening is alvorens
het systeem te verlaten. Deze toevalsveranderlijke wordt de residuele bedieningstijd van klasse-1 genoemd. Aangezien de klasse-2 bedieningstijden in dit
tweede model nog steeds geometrisch verdeeld zijn, is deze nieuwe bijkomende stochastische veranderlijke - samen met de systeembezettingen van beide
klassen - voldoende voor een Markoviaanse beschrijving van het systeem. In
Figuur S.9 hebben we een voorbeeld van de tijdsas gegeven om de concepten
te illustreren: een klasse-1 pakket komt aan tijdens een klasse-2 bediening. Deze laatste wordt onderbroken en later voortgezet. De residuele bedieningstijd
van klasse-1 bij het begin van slot k is gelijk aan twee slots. De gezamenlijke pgf van de residuele bedieningstijd van klasse-1, de systeembezetting van
klasse-1 en de systeembezetting van klasse-2 bij het begin van een willekeurig
slot in regime is dan berekend. Uit deze driedimensionale pgf kunnen alle
andere pgf’s van belang afgeleid worden.
De laatste uitbreiding is het veralgemenen naar algemene bedieningstijden
voor beide klassen. In dit geval wordt - naast de residuele bedieningstijd van
klasse-1 - nog een veranderlijke toegevoegd om een Markoviaanse beschrijving van het systeem te bekomen, nl., het overblijvende aantal slots van debedieningstijd van het oudste klasse-2 pakket. (Het oudste klasse-j pakket
in het systeem bij het begin van een zeker slot is gedefinieerd als dit klasse-j
pakket dat - van alle klasse-j pakketten op dat tijdstip aanwezig - het eerst
aankwam.) Deze nieuw gedefinieerde toevalsveranderlijke wordt de residuele bedieningstijd van klasse-2 genoemd. De systeembezettingen en de residuele
bedieningstijden van beide klassen bij het begin van opeenvolgende slots vor-

S.3 Algemene bedieningstijden25

men dan een Markov keten. Bekijken we opnieuw als voorbeeld de tijdsas van
Figuur S.9: de residuele bedieningstijd van klasse-2 bij het begin van slot k isgelijk aan twee slots. De vierdimensionale pgf P (x1 , z1 , x2 , z2 ) van de residuele bedieningstijd van klasse-1, de systeembezetting van klasse-1, de residuele
bedieningstijd van klasse-2 en de systeembezetting van klasse-2 wordt berekend.
Voor de drie besproken modellen kunnen dan alle verdere pgf’s van belang
afgeleid worden uit de berekende gezamenlijke pgf’s. In wat volgt, bespreken
we enkel de verdere analyse van het meest uitgebreide model, nl., algemene
bedieningstijden voor beide klassen.
Uitgaande van de uitdrukking voor de vierdimensionale pgf P (x1 , z1 , x2 , z2 )wordt U (z1 , z2 ) verkregen als
U (z1 , z2 ) =P (1, z1 , 1, z2 )(S.33)Y2 (z2 )(z2 − 1)=(1 − ρT )(S.34)
z2 − Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1),
× 1 + z1
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))met
Yj (z) ,Ej (Y1 (z), z).

(S.35)

Merk op dat deze Yj (z) identiek gedefinieerd is als in de NP prioriteitswachtlijn. Uit U (z1 , z2 ) kunnen dan de marginale pgf’s van de totale, klasse-1 en
klasse-2 systeembezettingen berekend worden.
De vertragingstijden van klasse-1 en klasse-2 pakketten zijn vervolgens geanalyseerd. Dit gebeurt door de vertragingstijden van een willekeurig klasse1 of willekeurig klasse-2 pakket uit te drukken i.f.v. de veranderlijken in deMarkoviaanse beschrijving bij het begin van het aankomstslot van het pakket
en deze te z-transformeren. Daardoor verkrijgen we D1 (z) en D2 (z) als functies van P (., ., ., .). Bij de klasse-2 vertragingstijd gebruiken we dan opnieuw
de notie van de fundamentele periodes. Deze zijn identiek gedistibueerd als
in de NP prioriteitswachtlijn. We verkrijgen
1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1(S.36)
λ1 z − A1 (S1 (z)) S1 (z) − 1
1 − ρT V2 (z)(zA1 (V1 (z)) − 1) A(V1 (z), V2 (z)) − A1 (V1 (z)), (S.37)
D2 (z) =λ2 A1 (V1 (z))(V2 (z) − 1) zA1 (V1 (z)) − A(V1 (z), V2 (z))
D1 (z) =met de pgf van een fundamentele periode geı̈nitieerd door een klasse-j pakket
nog steeds gegeven door
Vj (z) ,Sj (zA1 (V1 (z))),(S.38)

26

Samenvatting

Figuur S.10: Monster van de tijdsas in het PRD geval om de prioriteitsdiscipline en debijkomende veranderlijken te illustreren

j = 1, 2. De pgf van de vertragingstijd van een willekeurig pakket is dan een
gewogen som van de Dj (z) (met gewichten λj /λT respectievelijk).
PRD en PRI prioriteitsdisciplines
In de analyses van de PRD en PRI prioriteitswachtlijnen - i.e. de preëmptieve
prioriteitswachtlijnen met herhaling - maken we opnieuw gebruik van de bijkomende veranderlijke techniek.
In het geval dat een nieuw monster van de klasse-2 bedieningstijden gekozen
wordt bij herhaling, i.e. in het PRD-geval, definiëren we de residuele bedieningstijd van het pakket in bediening bij het begin van een slot als de bijkomende veranderlijke om een Markoviaanse beschrijving van het systeem te bekomen. Deze
toevalsveranderlijke is gedefinieerd als het overblijvende deel van het pakket(dat zowel van klasse-1 als klasse-2 kan zijn) in bediening bij het begin van
een willekeurig slot. Figuur S.10 geeft een voorbeeld van een tijdsas weer. De
onderbroken bediening van het klasse-2 pakket wordt later herhaald, maar delengte kan veranderen (in het voorbeeldje is deze lengte vier slots bij de eerste
poging en drie slots bij de tweede). Bij het begin van slot k is de residuele bediening van het pakket in bediening 2 slots. De gezamenlijke pgf P (x, z1 , z2 )van de residuele bedieningstijd van het pakket in bediening en de systeembezettingen van klasse-1 en klasse-2 bij het begin van een willekeurig slot in
regime is dan berekend.
In het geval van een PRI prioriteitsdiscipline, i.e., het geval waarbij een onderbroken klasse-2 bedieningstijd van dezelfde lengte blijft bij herhalingen, isde residuele bedieningstijd van het pakket in bediening niet meer voldoende
als bijkomende veranderlijke om een Markov keten te vormen. Daarom definiëren we naast deze eerste bijkomende veranderlijke een tweede, nl. de (vol-S.3 Algemene bedieningstijden

27

Figuur S.11: Monster van de tijdsas in het PRI geval om de prioriteitsdiscipline en debijkomende veranderlijken te illustreren

ledige) bedieningstijd van het oudste klasse-2 pakket. Figuur S.11 geeft opnieuw
een voorbeeld van een tijsdas. De onderbroken bediening van het klasse-2
pakket wordt later herhaald en de lengte blijft identiek. De nieuw gedefinieerde bijkomende veranderlijke is bij het begin van alle slots in de figuur gelijk
aan vier slots. We verkrijgen dan een uitdrukking voor de gezamenlijke pgf
P (x, z1 , y2 , z2 ) van de residuele bedieningstijd van het pakket in bediening,de systeembezetting van klasse-1, de bedieningstijd van het klasse-2 pakket
langst in het systeem en de systeembezetting van klasse-2 bij het begin van
een willekeurig slot in regime na vrij extensieve berekeningen.
Uitgaande van de uitdrukkingen voor P (x, z1 , z2 ) en P (x, z1 , y2 , z2 ) in respectievelijk de PRD en PRI prioriteitswachtlijn berekenen we U (z1 , z2 ) - de gezamenlijke pgf van de systeembezettingen van klasse-1 en klasse-2 bij het begin
van een willekeurig slot in regime - voor beide prioriteitsdisciplines. We verkrijgen
Y2 (z2 )(z2 − 1)
(S.39)
U (z1 , z2 ) =(1 − ρT,ef f )z2 − Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1)
× 1 + z1,
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))in beide gevallen met
ρT,ef f ,ρ1 + λ2 µ2,ef fµ2,ef f ,A1 (0)(1 − S2 (A1 (0)))
S2 (A1 (0))(1 − A1 (0))

Y1 (z) ,E1 (Y1 (z), z)(S.40)(S.41)(S.42)

28

Samenvatting

Y2 (z) ,(1 − A(0, z))A(Y1 (z), z)E2 (0, z),(A(Y1 (z), z) − A(0, z))E2 (0, z) − A(0, z)(A(Y1 (z), z) − 1)

(S.43)

in het geval van PRD en(S.44)

ρT,ef f ,ρ1 + λ2 µ2,ef fµ2,ef f ,S2 (1/A1 (0)) − 1
1/A1 (0) − 1(S.45)Y1 (z) ,E1 (Y1 (z), z)(S.46)∞X
s2 (i)(1 − A(0, z))A(Y1 (z), z)A(0, z)iY2 (z) ,, (S.47)(A(Y1 (z), z) − A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)i=1
in het geval van PRI. Merk op dat alhoewel Y1 (z) en Y2 (z) nog dezelfde ’rol’
spelen als in de NP en PR wachtlijnen, de uitdrukkingen voor Y2 (z) in deze
gevallen een stuk ingewikkelder zijn. Dit komt doordat de bedieningstijden
herhaald moeten worden. Zo is ook de effectieve belasting ρT,ef f niet langer
gelijk aan de aankomstbelasting ρT - zoals het geval was in de NP en PR prioriteitswachtlijnen - aangezien de laatste geen rekening houdt met de mogelijke
herhalingen van de klasse-2 bedieningen. Uit de uitdrukkingen voor U (z1 , z2 )kunnen dan opnieuw de marginale pgf’s van de totale, klasse-1 en klasse-2
systeembezettingen berekend worden.
Tenslotte berekenen we de vertragingstijden van klasse-1 en klasse-2 pakketten voor de PRD en PRI prioriteitswachtlijnen. Dit gebeurt opnieuw door devertragingstijden van een willekeurig klasse-1 en willekeurig klasse-2 pakket
uit te drukken i.f.v. de veranderlijken in de Markoviaanse beschrijving bij het
begin van het aankomstslot van het pakket en deze te z-transformeren. Bij
de klasse-2 vertragingstijd gebruiken we opnieuw de notie van fundamentele
periodes. Deze geı̈nitieerd door een klasse-2 pakket zijn echter in dit geval
een stuk ingewikkelder om te analyseren (opnieuw wegens de mogelijke herhalingen van klasse-2 bedieningstijden). Uiteindelijk verkrijgen we
D1 (z) =1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1,
λ1 z − A1 (S1 (z)) S1 (z) − 1(S.48)

voor de pgf van de klasse-1 vertragingstijd in zowel de PRD als de PRI prioriteitswachtlijn. Merk op dat dit dezelfde uitdrukking is als voor D1 (z) in de
PR prioriteitswachtlijn, aangezien klasse-1 pakketten geen hinder ondervinden van klasse-2 pakketten bij de drie preëmptieve prioriteitsdisciplines enhet dus wat betreft de klasse-1 systeemkarakteristieken niet uitmaakt of een
klasse-2 bediening voortgezet of herhaald wordt na een onderbreking. De pgf
van de klasse-2 vertragingstijd wordt gegeven door
1 − ρT,ef f V2 (z)D2 (z) =λT
A1 (V1 (z))

(zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))

S.3 Algemene bedieningstijden

29(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z)))C(z)A(Y1 (V2 (z)), V2 (z))

(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1)
×,(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))+(S.49)

in beide prioriteitswachtlijnen met
C(z) ,Y2 (V2 (z))
V2 (z) − Y2 (V2 (z))(S.50)(S.51)V1 (z) ,S1 (zA1 (V1 (z)))
V2 (z) ,(1 − A1 (0)z)A1 (V1 (z))S2 (A1 (0)z),(A1 (V1 (z)) − A1 (0))S2 (A1 (0)z) − A1 (0)(zA1 (V1 (z)) − 1)

(S.52)

in het PRD geval en met
C(z) ,

P∞

i=1 s2 (i)(V2,i (z) − 1)Y2,i (V2 (z))(V2 (z) − Y2 (V2 (z)))(V2 (z) − 1)

(S.53)(S.54)V1 (z) ,S1 (zA1 (V1 (z)))

i(1 − A1 (0)z)A1 (V1 (z))(A1 (0)z)(A1 (V1 (z)) − A1 (0))(A1 (0)z)i − A1 (0)(zA1 (V1 (z)) − 1)∞X
V2 (z) ,s2 (i)V2,i (z)V2,i (z) ,(S.55)(S.56)

i=1

Y2,i (z) ,(1 − A(0, z))A(Y1 (z), z)A(0, z)i,(A(Y1 (z), z) − A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)

(S.57)

in het PRI geval.
Het is duidelijk dat deze uitdrukkingen een stuk gecompliceerder zijn dande (overeenkomstige) uitdrukkingen voor de NP en PR prioriteitswachtlijnen.
Dit is enerzijds te wijten aan de herhalingen van de onderbroken klasse-2 bedieningstijden en anderzijds aan de mogelijke correlatie tussen klasse-1 en
klasse-2 aankomsten in een slot. De pgf van de vertragingstijd van een willekeurig pakket is opnieuw een gewogen som van D1 (z) en D2 (z) met respectievelijke gewichten λ1 /λT en λ2 /λT .

S.3.3 Berekening prestatiematen
Uit de behaalde uitdrukkingen voor de pgf’s kunnen wederom de momenten
en staartprobabiliteiten berekend worden van de verschillende toevalsveranderlijken. De procedures voor de berekeningen van momenten en staartprobabiliteiten zijn heel gelijkaardig aan die uit de vorige sectie en we gaan er dan
ook niet dieper op in, maar verwijzen naar subsectie S.2.2 voor meer details
omtrent het berekenen van deze prestatiematen.

30

Samenvatting

Bij het berekenen van staartprobabiliteiten in de PRI prioriteitswachtlijn is er
echter een extra moeilijkheid, nl. het optreden van de oneindige sommen inde uitdrukkingen voor Y2 (z) en V2 (z) (respectievelijk uitdrukkingen (S.47) en(S.56)). Het lijkt geen triviaal probleem te zijn om de dominante singulariteit
en het gedrag van de pgf’s in de buurt van deze singulariteit te bepalen. Daarom hebben we in het proefschrift geen staartprobabiliteiten kunnen berekenen
in het PRI-geval.

S.3.4 Numerieke voorbeelden
In deze paragraaf zullen we kort de invloed van enkele parameters op de prestatiematen tonen. We concentreren ons op het schakelelement met uitgangsbuffers zoals eerder vermeld (zie Figuur S.1). De gezamenlijke pgf van het
aantal klasse-j aankomsten (j = 1, 2) aan een willekeurige uitgangsbuffer isgegeven door (S.6). In het vervolg definiëren we α als de fractie klasse-1 belasting van de totale belasting (dus gelijk aan ρ1 /ρT ). We veronderstellen dat
N - het aantal ingangen van het schakelelement - gelijk is aan 16.
We zullen ons in deze subsectie vooral richten op de verschillen tussen deprestatiematen in de verschillende prioriteitswachtlijnen. Eerst zullen we deklasse-1 en klasse-2 prestatiematen in de NP en PR prioriteitssystemen vergelijken. Vervolgens bekijken we wat de invloed van herhalingen is - t.o.v.
voortzetting - op de klasse-2 prestatiematen bij de preëmptieve prioriteitsdisciplines.
Vergelijking van de NP en PR prioriteitsdisciplines
De bedieningstijden zijn constant verondersteld doorheen deze paragraaf.
In Figuren S.12 en S.13 tonen we respectievelijk de gemiddelde klasse-1 en
klasse-2 systeembezettingen als functies van de totale belasting met µ1 =µ2 = 2 en α = 0.25, 0.5 en 0.75. In beide figuren, zijn de curven voor de
NP en PR prioriteitsdiscipline uitgezet. De gemiddelde klasse-1 systeembezetting is groter in het geval van de NP prioriteitsdiscipline. Het omgekeerde
geldt voor de gemiddelde klasse-2 systeembezetting. Dit is logisch, aangezienin de NP prioriteitswachtlijn aankomende klasse-1 pakketten een klasse-2 bediening niet onderbreken en dus hinder ondervinden van het klasse-2 verkeer,
terwijl dit in de PR prioriteitswachtlijn niet het geval is. In het PR geval kunnen de klasse-2 bedieningen meermaals onderbroken worden waardoor ze
langer in de buffer verblijven en daardoor is de gemiddelde klasse-2 systeembezetting in dit geval groter.
Gelijkaardige verschillen in de invloeden van de NP en PR prioriteitsdisciplines kunnen gezien worden in Figuren S.14 en S.15, waarin respectievelijk
de gemiddelde klasse-1 en klasse-2 vertragingstijden als functies van de totale belasting getoond zijn, voor dezelfde parameters als in de twee vorige

S.3 Algemene bedieningstijden

312

α = 0.25
0.5
0.75

1.5

1

0.5

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.12: Gemiddelde klasse-1 systeembezetting versus de totale belasting voor deNP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (µ 1 = µ2 = 2)

5
α=

4

0.25
0.5
0.75

3

2

1

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.13: Gemiddelde klasse-2 systeembezetting versus de totale belasting voor deNP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (µ 1 = µ2 = 2)

32

Samenvatting

5

4

3

2
α=
1

0.25
0.5
0.75

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.14: Gemiddelde klasse-1 vertragingstijd versus de totale belasting voor deNP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (µ 1 = µ2 = 2)

figuren. Uit deze figuren blijkt dat de verschillen significant kunnen zijn. Zo
kan b.v. voor α = 0.25 de gemiddelde klasse-1 vertragingstijd in het NP geval
ongeveer 25% groter worden dan in het PR geval.
Vervolgens hebben we de invloed van de lengte van de bedieningstijden op de
gemiddelde systeembezettingen en vertragingstijden bekeken. In Figuur S.16
tonen we de gemiddelde klasse-2 vertragingstijd als functie van de gemiddelde klasse-1 bedieningstijd voor zowel de NP als de PR prioriteitsdisciplines,
met µ2 = 20 slots, ρT = 0.75 en α = 0.25, 0.5 en 0.75. Het is duidelijk dat
de gemiddelde klasse-2 vertragingstijden groter worden naarmate de klasse-1
pakketten langer worden. Dit is een direct gevolg van de prioriteitsdisciplines.
Om de invloed van de NP discipline op de gemiddelde klasse-1 vertragingstijd aan te tonen, zetten we in Figuur S.17 de gemiddelde klasse-1 vertragingstijd uit als functie van de klasse-2 bedieningstijden voor µ1 = 20 en de andere
parameters identiek aan deze uit de vorige figuur, voor zowel de PR als de
NP prioriteitsdisciplines. Aangezien de klasse-1 vertragingstijd in het PR geval onafhankelijk is van het klasse-2 verkeer, is in dit geval de gemiddeldeklasse-1 vertragingstijd onafhankelijk van µ2 . In het NP geval daarentegen,zien we dat de gemiddelde klasse-1 vertragingstijd stijgt met µ2 . Dit is omdat
aankomende klasse-1 pakketten (gemiddeld gezien) langer moeten wachten
wanneer een klasse-2 pakket in bediening is (de residuele bedieningstijd van
dit klasse-2 pakket bij aankomst van klasse-1 pakketten zal gemiddeld geziengroter zijn naarmate de klasse-2 bedieningstijden zelf groter zijn). Het is duidelijk dat voor lange klasse-2 pakketten de klasse-1 vertragingstijd (te) hoog

S.3 Algemene bedieningstijden

33

10

8

6

4
α = 0.25
0.5
0.75

2

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.15: Gemiddelde klasse-2 vertragingstijd versus de totale belasting voor deNP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (µ 1 = µ2 = 2)

kan oplopen.
Vervolgens vergelijken we de staartprobabiliteiten van de klasse-1 en klasse-2
vertragingstijden in het NP en PR geval. Het is zo dat de dominante singulariteiten van D1 (z) en D2 (z) - de pgf’s van de klasse-1 en klasse-2 vertragingstijden respectievelijk - die een rol spelen in het overeenkomstig staartgedraggelijk zijn voor de beide prioriteitsdisciplines. De hellingen van de curves
worden nu net uitsluitend bepaald door deze singulariteiten en dus zullen dehellingen voor de beide disciplines gelijk zijn. Figuren S.18 en S.19 tonen destaartprobabiliteiten van respectievelijk de klasse-1 en klasse-2 vertragingstijden voor beide types prioriteitsdisciplines. De klasse-1 belasting is voor alle
curven gelijk aan 0.4 terwijl de klasse-2 belasting de waarden 0.1, (ongeveer)
0.21 en 0.4 aanneemt. De bedieningstijden van alle pakketten zijn gelijk aan 16.
In Figuur S.18 is de onderste curve die voor de klasse-1 staartprobabiliteiten
in het PR geval. Aangezien voor deze discipline de klasse-1 vertragingstijden onafhankelijk zijn van de klasse-2 karakteristieken, krijgen we inderdaad
dezelfde curve voor de verschillende waarden van de klasse-2 belasting. In
Figuur S.19 zijn de waarden van ρ2 zodanig gekozen dat opnieuw de 3 types
staartprobabiliteiten getoond zijn: nl. niet-geometrische gedrag treedt op voor
ρ2 = 0.1, transitiegedrag voor ρ2 = 0.21 en geometrisch gedrag voor ρ2 = 0.4.
Verder kan uit deze twee figuren geconcludeerd worden dat het type van prioriteitsdiscipline een (niet te verwaarlozen) rol speelt in de staartprobabiliteiten
van de vertragingstijden van beide klassen.

34

Samenvatting300
α = 0.25
0.5
0.75

250
200
150
100
50
0
10

20

30

40

50
µ1

60

70

80

90 100Figuur S.16: Gemiddelde klasse-2 vertragingstijd versus de gemiddelde klasse-1 bedieningstijden voor de NP (onderste curven) en PR (bovenste curven) prioriteitsdisciplines (ρT = 0.75, µ2 = 20)

60
50
40
30
20
α = 0.25
0.5
0.75

10
0
10

20

30

40

50
µ2

60

70

80

90 100Figuur S.17: Gemiddelde klasse-1 vertragingstijd versus de gemiddelde klasse-2 bedieningstijden voor de NP (bovenste curven) en PR (onderste curven) prioriteitsdisciplines (ρT = 0.75, µ1 = 20)

S.3 Algemene bedieningstijden

35

1
ρ2 =

0.1

0.1
0.21
0.4

0.01

0.001

0.0001

1e-05
20

30

40

50

60
n

70

80

90

100

Figuur S.18: Staartgedrag van de klasse-1 vertragingstijden voor verschillende klasse2 belastingen voor zowel de NP (bovenste curven) als de PR (onderste curve) prioriteitsdisciplines (ρ1 = 0.4, µ1 = µ2 = 16)

1
ρ2 =

0.1
0.21
0.4

70

80

0.1

0.01

0.001
20

30

40

50

60
n

90

100

Figuur S.19: Staartgedrag van de klasse-2 vertragingstijden voor verschillende klasse2 belastingen voor zowel de NP (onderste curven) als de PR (bovenste curven) prioriteitsdisciplines (ρ1 = 0.4, µ1 = µ2 = 16)

36

Samenvatting

100

80

60

40
α = 0.25
0.5
0.75

20

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.20: Gemiddelde klasse-2 vertragingstijd versus de totale belasting voor dePR (onderste curven) en PRD en PRI (bovenste curven) prioriteitsdisciplines voor constante bedieningstijden (µ1 = 2, µ2 = 20)

Vergelijking van de PR, PRD en PRI prioriteitsdisciplines
Aangezien in al deze preëmptieve disciplines de klasse-1 veranderlijken identiek zijn, focussen we enkel op de klasse-2 prestatie (en meer specifiek op de
gemiddelde klasse-2 vertragingstijden).
In Figuur S.20 tonen we de gemiddelde klasse-2 vertragingstijd als functie
van de totale aankomstbelasting voor constante bedieningstijden van 2 slots
voor de klasse-1 pakketten, voor constante bedieningstijden van 20 slots voorde klasse-2 pakketten, voor α = 0.25, 0.5 en 0.75 en voor de PR, PRD en PRIprioriteitsdisciplines. Verder hebben we ook de verticale asymptoten van de
PRD en PRI curven getoond. Deze tonen voor welke aankomstbelasting deeffectieve belasting gelijk wordt aan 1. Deze twee soorten belastingen zijnniet identiek aangezien de herhalingen aanleiding geven tot ’extra’ belasting.
Rechts van deze asymptoten verliezen de PRI en PRD wachtlijnen dus hun
stabiliteit. Merk op dat voor deterministische klasse-2 bedieningstijden de
PRD en PRI disciplines aanleiding geven tot dezelfde discipline (aangezienbij herhaling van de klasse-2 bedieningstijd een nieuw monster nemen en deoorspronkelijke bedieningstijd behouden identiek zijn). De curven in Figuur
S.20 zijn dan ook identiek voor deze 2 disciplines. De figuur toont dat degemiddelde klasse-2 bedieningstijd significant groter kan zijn in het geval van
PRI en PRD t.o.v. het PR geval. Dit is een gevolg van de extra belasting die
door de herhalingen van de klasse-2 bedieningen wordt toegevoegd.

S.3 Algemene bedieningstijden

37

100

80

60

40
α=

20

0.25
0.5
0.75

0
0

0.2

0.4

0.6

0.8

1

ρT
Figuur S.21: Gemiddelde klasse-2 vertragingstijd versus de totale belasting voor dePRD (onderste curven) en PRI (bovenste curven) prioriteitsdisciplines voor variabele
bedieningstijden (µ1 = µ2 = 20)

Om de invloeden van de PRD en PRI prioriteitsdisciplines onderling te vergelijken veronderstellen we in de volgende figuren de klasse-2 bedieningstijden
variabel. In Figuur S.21 is de gemiddelde klasse-2 vertragingstijd uitgezet
voor de PRD en PRI prioriteitsdisciplines als functie van de totale aankomstbelasting voor constante bedieningstijden van 20 slots voor de klasse-1 pakketten. De klasse-2 bedieningstijden zijn gelijk aan 10 slots of 30 slots elk met
kans 1/2. Verder is α = 0.25, 0.5 en 0.75. Het is duidelijk dat de PRI prioriteitsdiscipline aanleiding geeft tot (gemiddeld) langere vertragingstijden. Dit
komt doordat in de PRD prioriteitsdiscipline lange klasse-2 bedieningstijden(30 slots) herbemonsterd kunnen worden tot korte bedieningstijden (10 slots)
bij onderbreking door klasse-1 pakketten. Het omgekeerde kan natuurlijk ook
maar de kans dat een lange bedieningstijd onderbroken wordt is groter dan
dat een korte onderbroken wordt. Daardoor is de ’netto’ invloed van de herbemonstering op de prestatie van het systeem positief.
Figuur S.22 tenslotte toont de gemiddelde klasse-2 vertragingstijd in het geval van de PR, PRD en PRI prioriteitsdisciplines als functie van de gemiddelde klasse-1 bedieningstijden. De klasse-1 en klasse-2 bedieningstijden zijn
constant met µ2 = 20 slots, ρT = 0.75 en α = 0.25, 0.5 en 0.75. Opnieuw
zijn de PRD en PRI disciplines identiek wegens de constante klasse-2 bedieningstijden. In het geval van de PR discipline groeit de gemiddelde klasse-2
vertragingstijd met stijgende µ1 . In de PRD en PRI gevallen zijn er twee tegenwerkende effecten: enerzijds geven langere klasse-1 pakketten aanleiding
tot langere ophopingsperiodes voor de klasse-2 pakketten in de buffer, waar-

38

Samenvatting

400
α = 0.25
0.5
0.75

350
300
250
200
150
100
50
0
10

20

30

40

50
µ1

60

70

80

90 100Figuur S.22: Gemiddelde klasse-2 vertragingstijd versus de klasse-1 bedieningstijden
voor de PR (onderste curven) en PRD en PRI (bovenste curven) prioriteitsdisciplines
voor constante bedieningstijden (ρT = 0.75, µ2 = 20)

door de gemiddelde klasse-2 vertragingstijd stijgt (dit is ook het effect dat
in het PR geval speelt). Anderzijds betekenen langere klasse-1 pakketten minder klasse-1 pakketten (aangezien we de (klasse-1) belasting constant houden)
waardoor de kans dat een klasse-2 bediening onderbroken wordt door nieuw
aankomende klasse-1 pakketten kleiner wordt. Dit heeft een dalend effect op
de gemiddelde klasse-2 vertragingstijd. Op de figuur kan gezien worden dat- voor kleine klasse-1 bedieningstijden - de gemiddelde vertragingstijd spectaculair stijgt naarmate de pakketten korter worden. Dit komt wegens het
tweede effect: als µ1 klein is, komen heel veel korte klasse-1 pakketten aan
in het systeem waardoor de klasse-2 bedieningen veel onderbroken worden.
Aangezien deze steeds herhaald moeten worden na een onderbreking heeft
dit aanleiding tot heel grote vertragingstijden. Voor hoge µ1 stijgt de gemiddelde klasse-2 vertragingstijd met stijgende µ1 en dat is een gevolg van het
eerste effect. Het is ook duidelijk dat voor lange klasse-1 pakketten het verschil tussen de PRD en PRI disciplines enerzijds en de PR discipline anderzijds
relatief klein is. Aangezien de klasse-1 pakketten lang zijn, komen er weinig
aan. Hierdoor worden onderbrekingen van klasse-2 bedieningen schaars en
is ook de invloed van voortzetten of herhalen van de bediening na een onderbreking minder belangrijk. Door deze twee tegenwerkende effecten krijgen
we een optimum voor µ1 in de PRD en PRI prioriteitwachtlijnen waarvoor degemiddelde klasse-2 vertragingstijd minimaal wordt.

S.4 Conclusies

39

S.4 Conclusies
In dit proefschrift hebben we een gedetailleerde studie beschreven van
discrete-tijd wachtlijnmodellen met verschillende types prioriteitsdisciplines.
Doorheen het proefschrift hebben we twee prioriteitsklassen beschouwd. Het
aankomstproces is i.i.d. van slot-tot-slot, alhoewel de aantallen aankomsten
in één slot van beide klassen gecorreleerd kunnen zijn. In een eerste model
hebben we ons beperkt tot constante bedieningstijden van één slot en dit is inverdere modellen uitgebreid naar willekeurige bedieningstijden. Verder hebben we in deze latere modellen geı̈ncorporeerd dat de bedieningstijden vanverschillende prioriteitsklassen verschillende distributies kunnen hebben.
We hebben dus eerst een prioriteitswachtlijn met constante bedieningstijden
van één slot bestudeerd (in hoofdstuk 2 van het Engelstalig gedeelte). Dit iseen vrij eenvoudig model en geeft aanleiding tot een gesimplificeerde analyse (t.o.v. de latere analyses) zodat de lezer voeling krijgt met het gebruik
van pgf’s in de analyse van wachtlijnen met prioriteiten en de manier waarop
de prestatiematen uit deze pgf’s kunnen gehaald worden. Maar dit (simplistisch) model is ook bruikbaar in de praktijk, b.v., in telecommunicatienetwerken waar de pakketten die door het netwerk getransporteerd worden alle vandezelfde lengte zijn (b.v. ATM).
Vervolgens is dit model uitgebreid naar algemene bedieningstijden. Een aantal verschillende prioriteitsdisciplines zijn beschreven en geanalyseerd. Ten
eerste de niet-preëmptieve prioriteitswachtlijn. In deze wachtlijn worden bedieningen van pakketten niet onderbroken. De analyse van dit type wachtlijnen is in hoofdstuk 3 van het Engelstalig gedeelte van dit proefschrift beschreven. Vervolgens hebben we in hoofdstuk 4 van het Engelstalig gedeelte de preëmptieve prioriteitswachtlijn met voortzetting geanalyseerd. Bij deze discipline wordt de bediening van een lage-prioriteitspakket onderbroken
door nieuw aankomende hoge-prioriteitspakketten. De onderbroken bediening wordt later voortgezet. Uiteindelijk hebben we in hoofdstuk 5 twee
preëmptieve prioriteitswachtlijnen met herhaling bestudeerd. Het verschil
met de vorige prioriteitsdiscipline is dat de onderbroken bediening in dit laatste hoofdstuk herhaald wordt vanaf het begin. Het pakket moet dus opnieuw
volledig bediend worden.
Doorheen de verschillende bestudeerde wachtlijnmodellen, hebben we een
vrij algemene analytische methode gebruikt. Eerst hebben we een Markov
keten voor het desbetreffende systeem geconstrueerd. Vervolgens hebben
we een methode gebaseerd op probabiliteitsgenererende functies gebruikt om
de gezamenlijke pgf van de stochastische veranderlijken gedefinieerd in deMarkov keten (in regime) te berekenen. Startende van deze gezamenlijke pgf
worden dan alle verdere pgf’s die onze interesse wegdragen afgeleid. Uit deze pgf’s verkrijgen we tenslotte de nuttige prestatiematen, zoals de momenten
en staartprobabiliteiten van verschillende toevalsveranderlijken.
Alhoewel we dit proefschrift als een afgewerkt geheel hebben voorgesteld, is40

Samenvatting

onderzoek natuurlijk nooit voltooid. Er zijn dan ook nog velerlei mogelijke
uitbreidingen van de modellen en analyses gepresenteerd in dit proefschrift.
Zo kunnen de modellen uitgebreid worden naar meer dan twee prioriteitsklassen, tijdscorrelatie in het aankomstproces, prioriteitssystemen met meerdere bedieningsstations, analyse van het uitgangsproces van prioriteitswachtlijnen, transiëntanalyses, . . . .

Chapter 1

Introduction
1.1 Queues and buffers
Queues are part of daily life. Queueing phenomena are observed on the roads,
when waiting in line in supermarkets, movie theaters, post offices, emergency
rooms in hospitals, when being on a waiting list for surgery, . . . . In general aqueueing process can be defined as the process of waiting before getting somekind of service.
Specifically in telecommunication networks, buffers are used to store information that cannot be sent instantly to its next destination. The cause of this is
the instantaneous overload of arriving information, i.e., during a time period
more information arrives than can be (simultaneously) transmitted. Examples
of causes are multiplexing of several input links/traffic streams to one output
link, switching from a link to a slower link, temporary errors in output links,
re-sequencing of information units, . . . . Without buffers, too much information would get lost in the above described cases.
The entities that arrive in the queue are in general called units throughout thisdissertation. We will however also use - the telecommunications inspired cells or packets.

1.2 Importance of the queue/buffer behavior
The behavior of a queue (in time) is an important topic, e.g., when designing new roads it is beneficial to know beforehand whether a certain design isprone to the formation of queues.
In case of a waiting list for surgery, people with life-threatening injuries may
be part of the queue. It is thus important to study the behavior of the queue -2Introduction

or more specifically the amount of time a patient is on the waiting list before
surgery - in order to avoid unnecessary casualties.
In telecommunications, the way buffers behave is an important research topic
because the performance of the network and the Quality of Service (QoS) experienced by the users is closely related to the buffers’ behavior. Information
can be lost because of buffer overflow or information units can suffer too long
delays. The consequences to the users will vary depending on the application.
For instance, large delays (and delay variations) are very bad for real-time applications (voice, video, . . . ), while they are more acceptable for non-real-time
applications (data). On the other hand, loss of information is devastating for
data, while it is to some extent acceptable for voice (because of redundancy).
Therefore, the consequences for the experienced QoS depend on the application, but it is clear that the buffer behavior plays a major role in (how the user
evaluates) the performance of the network.

1.3 Stochastic variables
In order to study the queue behavior, first a number of input and output variables have to be defined. The input variables describe the characteristics of thetraffic offered to the queue. The output variables describe the queue behavior.
Since traffic behavior is of a non-deterministic, probabilistic nature - and thus
also the queue behavior is of an uncertain nature - these variables are definedas stochastic variables. In this dissertation, the input variables will be assumed
to be known variables, while the output variables are the variables which haveto be analyzed. The input stochastic variables used in this dissertation will be
discussed in more detail in section 1.7. The output stochastic variables, i.e.,the variables that describe the behavior of the particular queues that will beanalyzed in this dissertation, will be discussed in section 1.8.

1.4 Analysis techniques
There are several analysis techniques, all with their own specific advantages
and disadvantages. They can roughly be categorized in 4 groups. The first
technique is the analytical technique. System equations for the stochastic variables of interest are established and solved analytically. The second way ofanalyzing queueing systems is through a numerical method. In this approach,the system equations of the desired stochastic variables are also determined,
but they are solved numerically. The third method is solving the systemthrough simulations. In this method, a computer program is written to simulate the network/queueing system and results are calculated by runningthe program. The last approach is the experimental approach. Instead of a

1.5 Multiple types of traffic

3computer-version of the (queueing) system the ’real thing’ is built and experiments are executed on this. The variables of interest are measured while running the experiments. In telecommunications, e.g., one can build a test-bed
version of the network to perform experiments on.
As already mentioned, each method has its own advantages and disadvantages. The advantage of the analytical method is the obvious parameterdependence of the results. In general, formulas are obtained in which thedifferent parameters appear. Changing the value of a parameter gives the(new) result immediately. The disadvantage of the analytical method is theneed to use simplified models in order to be able to analyze the system underconsideration. The important question is whether the simplified model is still“rich” enough to model the real system in a satisfying way. The advantages
and disadvantages of the experimental method are the opposite of the analytical method. Its advantage is that the real system under consideration is built
and the obtained results are thus certainly reliable. The disadvantage is thatparameter-dependence is totally lacking. If a parameter has to be changed,
the experiment has to be repeated. Therefore, this method takes considerably
more time when the influence of certain parameters has to be studied. Furthermore, this method is not always practically possible (e.g., when designingroads) or too expensive. The numerical analysis and simulation approaches
lay between those two extremes, where the advantages and disadvantagesof the numerical analysis lean more to analytical analysis while those of thesimulations approach lean more to the experimental approach.
In this dissertation, we use an analytical technique based on probability generating functions (see further for more details). We will thus propose a mathematical model and use this analytical technique to study this model. In order tocheck some results which are only found through the use of an approximative solution technique, we will compare with simulations in order to test thevalidity of the approximation.

1.5 Multiple types of traffic
In many queueing studies, traffic is assumed to be homogeneous, i.e., all traffic
is assumed to be of the same type. However, most traffic is heterogeneous innature. It can thus be subdivided in multiple classes, depending on both theircharacteristics and requirements. Indeed, the traffic characteristics are diverse(bursty traffic ↔ monotonous traffic, long service times or short service times,
constant ↔ variable service times, . . . ). Secondly, different traffic types canhave different requirements, e.g., different loss requirements (i.e., the probability of not receiving any service and “being lost” in telecommunication networks), different delay requirements, . . . .
An example of a classification, which is frequently used in nowadays multimedia telecommunication systems, is real-time traffic (e.g., voice) and non-real-4

Introduction

time traffic (e.g., data). A similar classification can be used in case of a waiting
list for surgery: some patients’ treatment is extremely urgent, while other patient can sustain some time (days, weeks, . . . ) before receiving treatment. This
classification is the most obvious - in case of these two examples - but other
and/or more detailed classifications are possible.

1.6 Scheduling multiple types of traffic
As touched upon in the previous section, it is sometimes necessary to differentiate traffic classes because of different requirements. In telecommunications,different types of traffic need different QoS standards. For real-time applications, it is important that mean delay and delay-jitter are bound, while for
non-real-time applications, the loss ratio is the restrictive quantity.
In the remainder of this section, we will give a brief overview of scheduling schemes that have been proposed - and analyzed - in order to guarantee
acceptable delay bounds to delay-sensitive traffic in multimedia networks.
Amongst these scheduling disciplines are some well-known strategies likeweighted round-robin (WRR), weighted fair queueing (WFQ) or generalized
processor sharing (GPS), earliest deadline first (EDF), probabilistic priority(PP) and (strict) priority scheduling.
In a queueing system with WRR (see e.g. Liu et al. [1997] and references
therein), WFQ or GPS (see e.g. Parekh and Gallager [1994] and references),the server serves a number of queues by a weighted schedule. Delay sensitive
traffic is assigned a higher weight, i.e., (on average) delay-sensitive traffic isserved earlier/longer than delay-insensitive traffic.
When the EDF scheduling is applied, deadlines are imposed on the packets
that have to be served (based on their QoS constraints) and packets are transmitted in the order of their deadlines (see Liebeherr and Wrege [1999] andreferences therein).
A PP scheduling discipline (see e.g. Tham et al. [2002]) serves a given numberof priority queues in a probabilistic manner. Each priority queue is assigned aparameter pi , which determines the probability that a packet from that priority
queue is served when the server is ready to transmit a (new) packet.
All these scheduling disciplines try to give some kind of priority to delaysensitive traffic over delay-insensitive traffic. The most drastic in this respect is the strict priority scheduling (which we analyze in this dissertation).
With this scheduling, as long as delay-sensitive (or high-priority) packets arepresent in the queueing system, this type of traffic is served. Delay-insensitive
packets can thus only be transmitted when no delay-sensitive traffic is present
in the system. As already mentioned, this is the most drastic way to meet the
QoS constraints of delay-sensitive traffic (and thus the scheduling with themost disadvantageous consequences on the delay characteristics of the delayinsensitive traffic), but also the easiest to implement. E.g., in Shenker [1995]

1.7 Queueing model

5

Figure 1.1: Conceptual representation of a queueing system

categorizing traffic in different service classes and using a priority schedulingdiscipline in the routers to serve these classes are proposed as the best solution
in the nowadays and future Internet.
Note that the application of priority scheduling is not limited to telecommunications. Basically all queues in which the delay requirements of the units
differ may profit from a priority scheduling discipline.
A last notable example is a waiting list for surgery. According to Wang [2004],
a story entitled “Surgeon can’t sleep as patients die waiting” appeared in theToronto Star newspaper on May 13, 1988. It is about a senior cardiovascularsurgeon who announced that there had been twelve or thirteen deaths on his
personal waiting list for open-heart surgery. One of the reasons was that patients (and their diseases) are not carefully evaluated and patients were picked
for surgery more or less on a First-Come-First-Served basis. This triggered achange in the scheduling of the patients for surgery (see Hadorn [2000], Wang
[2004]): (the diseases of) the patients are evaluated and are put in a certain priority class according to the life-threatening nature of the disease. The patientsare scheduled for surgery according to their priority.

1.7 Queueing model
In this section, we describe the characteristics of the queueing model underinvestigation in the remainder of this dissertation. Units arrive in the system,
wait a certain amount of time before starting to receive service and when theirservice is completed, they leave the system. The modeling assumptions canroughly be split in three parts (see Figure 1.1). Firstly, we specify the buffer
system itself. Secondly, the arrival process is modeled and finally the service
process is characterized. We will put special emphasis on the characterizationand impact of the priority scheduling discipline, studied in this dissertation.

1.7.1 System modeling
We consider a discrete-time single-server multi-class queueing system with infinite buffer space and a priority scheduling discipline. Time is divided into slots

6

Introductionof equal length. There is one server which transmits the units from the queue.
Units which cannot be transmitted instantaneously are stored in the queue.
Since we analyze discrete-time queueing systems, all stochastic variables encountered in this dissertation are assumed to only take discrete (non-negative)
values. The buffer space is assumed to be infinitely large, which means thatno units are lost. Service of units can only start at slot boundaries. Noticethat this means that an arriving unit cannot enter the server during its arrival
slot, even when the server is empty when the unit arrives. Traffic is generally
subdivided into M different classes, but we only discuss and analyze systems
with two priority classes in this dissertation, i.e., M = 2 throughout the dissertation. This is done for a couple of reasons. The first is the fact that most of
the time two (priority) classes are sufficient, e.g. in telecommunications systems, one class represents the real-time traffic while the non-real-time traffic
is categorized by a second class. Secondly, although the techniques used for asystem with 2 classes are (more or less straightforwardly) extendable to a system with a general number of classes, the formulas become more cumbersome
and give little extra information.
The priority scheduling discipline of the buffer will be thoroughly discussed
in subsection 1.7.4.

1.7.2 Arrival process
In most queueing studies, especially in continuous-time queueing analyses,
the arrival process is characterized by the interarrival time. This stochastic variable is defined as the time between two consecutive arrival epochs of units. In
discrete-time queues, an alternative characterization can be used. In this characterization, the number of per-slot arrivals is characterized. This equals thenumber of units that arrive in a (random) slot. We use the latter characterization of the arrival process throughout this dissertation. Since we only focus
on slot boundaries and on discrete stochastic variables (see further) the precise
moment a unit arrives in the slot is of no importance in our analysis, but thiscan be altered if one does not want to restrict the analysis to slot boundaries
and/or discrete stochastic variables (see e.g. Bruneel [1993] for more details).
Units of two types of traffic arrive in the system, namely units of class-1 andof class-2. We denote the number of arrivals of class-j during slot k by aj,k(j = 1, 2). Both types of unit arrivals are assumed to be independent andidentically distributed (i.i.d.) from slot-to-slot and are characterized by thejoint probability mass function (pmf)a(n1 , n2 ) ,Prob[a1,k = n1 , a2,k = n2 ],(1.1)

and corresponding joint probability generating function (pgf) A(z1 , z2 ), aaA(z1 , z2 ) ,E z1 1,k z2 2,k(1.2)

1.7 Queueing model

7

=

∞ X
∞
X

a(n1 , n2 )z1n1 z2n2 .

(1.3)

n1 =0 n2 =0

We furthermore denote the total number of arriving packets during slot k by
aT,k , a1,k + a2,k and its pgf is defined as
(1.4)
(1.5)

AT (z) ,E[z aT ,k ]=A(z, z).

In the same way, we define the marginal pgf of the number of arrivals fromclass-j during a slot by(1.6)

Aj (z) ,E[z aj,k ]=A(z1 , z2 ) zj =z,zi =1,i6=j ,(1.7)

j = 1, 2. We furthermore denote the (mean) arrival rate of class-j units by
λj = A0j (1) and the total arrival rate by λT = A0T (1) = λ1 + λ2 .
Notice that equations (1.1) and (1.3) incorporate the possibility that the numbers of arrivals from different classes (within a slot) are correlated. This issometimes called a discrete structured batch arrival process or structured input.
Incorporating this correlation is for instance necessary in the case of a nonblocking output-queueing switch with N inlets and N outlets (see Figure 1.2).
The numbers of arrivals on each inlet are assumed to be i.i.d., and generated
by a Bernoulli process with arrival rate λT . An arriving unit is assumed to beof class-j with probability λj /λT , j = 1, 2 (with λ1 + λ2 = λT ). The incoming units are then routed to the output queue corresponding to their destination in an independent and uniform way. Therefore, the output queues behave identically and we can concentrate on the analysis of one output queue.
The former arrival process assumptions lead to the fact that the arrivals ofboth types of units to an output queue are generated according to a twodimensional binomial process. It is fully characterized by the following jointpgf

A(z1 , z2 ) = 1 +

2
X
λj
j=1

N

N

(zj − 1) .

(1.8)

Obviously, the numbers of class-j arrivals at an output queue during a slot are
mutually correlated (for finite N ). This is simply demonstrated by the following observation: when m class-i units arrive at the tagged queue during a slot
(0 ≤ m ≤ N ), the maximum number of arrivals of the other class during thesame slot is limited by N − m. We note that for N going to infinity, expression

8

Introduction

Figure 1.2: An NxN output queueing switch(1.8) becomesA(z1 , z2 ) =e=P2

j=1 λj (zj −1)2Y

eλj (zj −1) ,(1.9)(1.10)

j=1

a product of two pgf’s of Poisson distributions with means λj (j = 1, 2) respectively, and as a result, the numbers of arrivals of both classes are mutuallyuncorrelated. We use this type of switch extensively as a means to show theapplications of our results. The applications are however not limited to thistype of telecommunication device - and not even to telecommunications.

1.7.3 Service process
The service times of consecutive units are assumed to be independent. Furthermore, the service times of the consecutive class-j units, j = 1, 2, are assumed to be i.i.d. Therefore, we define the stochastic variable sj as the service
time of a random class-j unit (expressed in slots). sj is characterized by its
pmf
sj (n) ,Prob[sj = n slots], n ≥ 1,

(1.11)and pgf
Sj (z) ,E[z sj ](1.12)

1.7 Queueing model

9

=

∞
X

sj (n)z n ,(1.13)

n=1

with j = 1, 2. Note that serving a unit requires at least one slot. We furthermore denote the mean service time of a class-j packet by µj , E[sj ] = Sj0 (1).
We define the arrival load offered by class-j packets as ρj , λj µj (j = 1, 2).
The total load is then given by ρT , ρ1 + ρ2 .
In this dissertation, a number of specific types of distributions for the service
times are important. Firstly, in chapter 2, we will consider packets with deterministic service times of 1 slot. Secondly, the shifted geometric distribution
will play an important role. The pmf x(n) and pgf X(z) of a random variable
X with a shifted geometric distribution with parameter β are given by
x(n) = (1 − β)β n−1 , n ≥ 1,

(1.14)

andX(z) =(1 − β)z,1 − βz(1.15)

respectively. The reason for using this specific distribution for the service
times as a first attempt to analyze a specific queueing system, is its memoryless property. In our analysis, this property implies that at a certain time instant the remaining number of slots that the unit in service still has to receive
service is independent of the number of slots it is already in the server. In thecorresponding analysis, we do not have to keep track of the latter variable, as
opposed to in a system with (more) general service times.

1.7.4 Priority scheduling discipline
Class-1 units are assumed to have priority over class-2 units and within one
class the service discipline is First Come First Served (FCFS). Due to the priority scheduling mechanism, it is as if class-1 units are stored in front of class-2
units in the queue. So, if there are class-1 packets in the queue when the serveris ready to service a new unit, the class-1 unit with the longest waiting time
will start service. Only if there are no class-1 units, a class-2 unit - namely theone with the longest waiting time - starts service.
In the case that the service time may be more than one slot, two types of priority scheduling are distinguished, namely, non-preemptive and preemptive priority scheduling. In the non-preemptive priority scheduling discipline, service of a unit cannot be interrupted. So, when a unit of a certain class isbeing served its service is not interrupted by newly arriving units, even if
they have higher priority. The latter units have to wait until the lower priority unit is totally served. In the preemptive priority scheduling discipline

10

Introduction

on the other hand, the service of that unit will be interrupted by newly arriving higher priority traffic and the unit whose service time was interrupted
will have to go back to the queue. In the latter discipline, we can characterize
three categories, namely, the preemptive resume, the preemptive repeat different(or repeat with resampling) and the preemptive repeat identical (or repeat without
resampling) priority scheduling disciplines. They differ from each other in theway they handle a unit whose service was interrupted, at the moment it enters
the server for a second (or third, fourth,. . . ) time. In the preemptive resume
priority scheduling discipline, the unit resumes service where it was interrupted, i.e., only the part which was not yet served before the interruption, has
to be served afterwards. In the preemptive repeat priority scheduling disciplines, the whole unit has to be served after the interruption by higher priority
traffic, thus including the part that was already served before. The preemptive
repeat different priority discipline takes a new sample with the same distribution. The service time of that particular packet may thus change after an interruption. The preemptive repeat identical on the other hand keeps the same
service time when re-attempting to transmit the unit.
In the remainder of this dissertation, we will use the following abbreviations
for the different priority scheduling disciplines: NP for the non-preemptive,
PR for the preemptive resume, PRD for the preemptive repeat different and
PRI for the preemptive repeat identical priority scheduling discipline.

1.8 Typical results
1.8.1 Output stochastic variables
As discussed in section 1.3, a number of output stochastic variables can be
defined and have to be analyzed. A first important stochastic variable is thesystem contents at the beginning of a random slot. The system contents isdefined as the number of units in the system. In the two-class priority queues
we analyze in this dissertation, the system contents of class-j at the beginningof slot k is denoted by uj,k , and equals the number of units of class-j in thesystem at the beginning of slot k. The total number of units in the system - orthe total system contents - at the beginning of the k-th slot is denoted by uT,k
and is given by u1,k + u2,k .
A related stochastic variable is the queue contents, which is defined as the number of units in the queue at a certain time instant. The difference between thesystem contents and the queue contents is that the possible unit being servedat that time instant is not included in the latter. In the remaining chapters of
this dissertation, the queue contents of class-j at the beginning of slot k will
be denoted by qj,k and the total queue contents by qT,k = q1,k + q2,k .
A third important characteristic is the unfinished work at a given time instant,which is defined as the number of slots it takes to empty the system of all1.8 Typical results

11units stored at that time, if there are no new arrivals (from that time instantonwards). The unfinished work of class-j is defined as the number of slots it
would take to serve all class-j units stored at that time, if there were no new
arrivals and if the server only served the class-j packets from that time instantonwards. The unfinished work of class-j at the beginning of slot k is denotedby wj,k andwT,k =w1,k + w2,k ,(1.16)

is the total unfinished work at the beginning of the k-th slot. From expression (1.16) an alternative explanation of the unfinished work of a single class(class-j) can be given: this unfinished work is the number of slots of the total
unfinished work that the server spends on serving class-j units.
In the analyses in this dissertation, we will concentrate on the steady-stateversions of these variables, i.e., we will find performance measures of thestochastic variables defined so far for k → ∞. In the remainder of this subsection we discuss some more stochastic variables, but we directly define thesteady-state versions of these stochastic variables (in contrast with the systemcontents, queue contents and unfinished work).
The steady-state delay of a specific unit is defined as the time a unit spends inthe system, i.e., the time period between its arrival and departure instants. As
discussed before, in discrete-time queueing systems, it is common practice toonly consider the discrete-part of the delay. Or, more precisely, the delay of a
specific unit is defined as the number of slots between the end of the arrival
slot of this unit and the end of its departure slot. In the remaining chaptersof this dissertation, the steady-state delay of a class-j unit is denoted by dj ,while the steady-state delay of a random unit is denoted by d.
There is a related stochastic variable to the delay, namely the queueing or waiting time, which is defined as the amount of time the unit stays in the queue
before starting service. tj is defined as the (steady-state) waiting time of aclass-j unit and t is the waiting time of a random unit.

1.8.2 Performance measures
Probability generating functions
For the stochastic variables defined in 1.8.1, several specific performance characteristics can be defined and calculated. Since we make extensive use ofprobability generating functions in this dissertation, pgf’s of the stochastic
variables of interest will be calculated first. For the system contents, queue
contents and unfinished work, the joint pgf of these (steady-state) stochastic
variables of all classes will be calculated. If Xj , j = 1, 2 is the steady-state
stochastic variable (of interest) of class-j, then the joint pgf of the stochastic

12

Introduction

variables X1 and X2 is defined asihX(z1 , z2 ) ,E z1X1 z2X2 .

(1.17)

From this joint pgf, the marginal pgf’s can be calculated as follows(1.18)Xj (z) ,E z Xj

(1.19).

=X(z1 , z2 )zj =z,zi =1,i6=jAlso, the sum of the stochastic variables in question can be found from (1.17),
yielding(1.20)
XT (z) ,E z XT=E z X1 +X2=X(z, z).

(1.21)(1.22)For the two other types of stochastic variables, notably the steady-state delay
and waiting time, the pgf’s Xj (z) of these stochastic variables of class-j, j =1, 2 and the pgf X(z) of the stochastic variable of a random unit will all becalculated separately.

Moments
From the obtained pgf’s, the (central) moments of the variables can be calculated. For instance, the mean value and variance of a stochastic variable X with
pgf X(z) are given by
E[X] =X 0 (1)Var[X] ,E (X − E[X])200

0(1.23)(1.24)
0

2=X (1) + X (1) − (X (1)) .

(1.25)

So, by calculating the derivatives of the pgf’s of the stochastic variables one
finds the moments of these stochastic variables. Note that this is not restricted
to the calculation of the mean value and the variance, but that, in principle,
all (central) moments of a stochastic variable can be derived once its pgf isobtained. However, in order to obtain the n-th (central) moment up to then-th derivative of the pgf has to be calculated, which makes the calculation ofhigh moments practically infeasible. In this dissertation, we will restrict our
results to mean values and variances.

1.8 Typical results

13

For the stochastic variables of which the joint pgf is obtained (see expression(1.17)), the concept of moments of the respective stochastic variables separately can be expanded to cross-moments of the respective stochastic variables.
For instance, the covariance of two stochastic variables X1 and X2 is given by
Cov[X1 , X2 ] ,E [(X1 − E[X1 ])(X2 − E[X2 ])]2=∂ X(z1 , z2 )− X10 (1)X20 (1),∂z1 ∂z2
z1 =z2 =1(1.26)(1.27)

with X(z1 , z2 ) the joint pgf of X1 and X2 and Xj (z) the (marginal) pgf of Xj(j = 1, 2). The correlation coefficient is the normalized covariance and is definedasCorr[X1 , X2 ] , p

Cov[X1 , X2 ],Var[X1 ]Var[X2 ](1.28)and is a real number between −1 and +1.
Probability mass functions and tail probabilities
Another important performance characteristic is the complete distribution or
the probability mass function of the stochastic variables. The distribution of a(discrete) stochastic variable X is defined asx(n) = Prob[X = n],(1.29)

for all non-negative discrete n. This pmf can, in principle, be straightforwardly derived from the corresponding pgf of the stochastic variable bymeans of the so-called probability generating property of probability generating functions, yielding
x(n) =

1 dn X(z).
n! dz n z=0(1.30)

Since the n-th derivative of the pgf X(z) is required for the calculation of x(n),this is in general not a practical method, especially for high n. Since we aremost of the time (only) interested in x(n) for high n, the so-called tail probabilities of X, a more practical method has to be used. A possible solution is
the numerical inversion of pgf’s (using e.g. Discrete Fourier Transforms). In
this dissertation, we will use an approximate analytical technique which is
introduced in the remainder.
Quite some research has been done on finding (good) analytic approximations - which are easy to calculate - of the x(n) once (some information of)X(z) is known. This is not only a research topic in queueing theory (see e.g.

14

Introduction

Bruneel et al. [1994], Laevens [1999] and others), but also in combinatorics (seee.g. Bender [1974], Flajolet and Odlyzko [1990] and references therein). Basically, to calculate the complete distribution of a stochastic variable, we have tofind/know all singularities of its pgf, or more precisely of its analytic continuation (for more details see Bruneel et al. [1994]). If we are only interested in
the tail probabilities on the other hand, it suffices to determine the dominant
singularities of the pgf, i.e., the singularities with smallest modulus. These
are nothing but the singularities on the circle of convergence of the pgf. We
will frequently make use of some basic (transfer) theorems in this dissertation.
Before we describe these theorems we first give some notations: F (z) ∼ G(z)means that F (z)/G(z) → 1 as z goes to a certain value (which should be clear
from the context). Similarly, f (n) ∼ g(n) means that f (n)/g(n) → 1 as n → ∞.
Finally, f (n) = o(g(n)) means that f (n)/g(n) → 0 as n → ∞.
The first theorem is Darboux’s theorem:

P∞
Theorem 1.1 (Darboux’s theorem) Suppose X(z) = n=0 x(n)z n with positive
real coefficients x(n) is analytic near 0 and has only algebraic singularities αk on its
circle of convergence |z| = R, in other words, in a neighborhood of αk we haveX(z) ∼(1 −z −ωk)Gk (z),
αk(1.31)

where ωk 6= 0, −1, −2, . . . and Gk (z) denotes a nonzero analytic function near αk .
Let ω = maxk Re(ωk ) denote the maximum of the real parts of the ωk . Then we havex(n) =X Gj (αj )jΓ(ωj )nωj −1 αj−n + o(nω−1 R−n ),(1.32)

with the sum taken over all j with Re(ωj ) = ω and Γ(ω) the Gamma-function of ω(with Γ(n) = (n − 1)! for n discrete).
So, once a pgf is explicitly calculated, it suffices to find all algebraic singularities on the circle of convergence and use Darboux’s theorem. Following
theorem (see e.g. Laevens [1999]) gives one of those singularities:
Theorem 1.2 (Vivanti’s theorem) If X(z) is a power series with real positive coefficients and with radius of convergence R, then z = R is a singularity of X(z).
This theorem is sometimes also attributed to the German mathematician
Pringstein.
The point of the circle of convergence on the real positive axis is thus always
a singularity of the corresponding pgf. In the remainder, we assume that thissingularity is the only singularity on the radius of convergence. Extensions
can be made to cases where this assumption is not valid (some extensions are
not straightforward though), but since this assumption seems to be valid for1.8 Typical results

15

a whole range of “typical” distributions (or in other words, the underlying
distributions have to be of a very specific nature for the assumptions not to bevalid), we will not go into these cases. We then “translate” Darboux’s theorem
in this case as follows: if X(z) is explicitly known and in the neighborhood of
its dominant singularity R on the positive real axis we haveG(z),(R − z)ω

(1.33)

KX ω−1 −n−ω
n
R
,
Γ(ω)

(1.34)

X(z) ≈
thenx(n) ≈

for n large enough and with KX = G(R). For example, when the dominant
singularity on the real axis is a pole with multiplicity 1, a case which we will
frequently have/assume, we getx(n) ≈ KX R−n−1 .

(1.35)In this dissertation, we will frequently find pgf’s which are only implicitly
defined. If an explicit expression can be found, Darboux’s theorem can be used
to obtain the tail probabilities. If no explicit expression can be found however,
we cannot easily find an expression (1.33) and thus we cannot straightforwardly use Darboux’s theorem. To cope with implicitly defined pgf’s, we will
make use of the following theorem:P∞nTheorem 1.3 (Bender’s theorem) Assume that the series x(z) =n=0 x(n)zwith nonnegative coefficients satisfies F (z, x(z)) = 0. Suppose there exists real numbers r > 0 and s > x(0) such that
1. for some δ > 0, F (z, w) is analytic whenever |z| < r + δ and |w| < s + δ;
2. F (r, s) = Fw (r, s) = 0;
3. Fz (r, s) 6= 0, and Fww (r, s) 6= 0; and4. if |z| ≤ r, |w| ≤ s, and F (z, w) = Fw (z, w) = 0, then z = r and w = s.
Thenx(n) ∼



rFz
2πFww

1/2

n−3/2 r −n ,(1.36)

for n → ∞ and where the partial derivatives Fz and Fww are evaluated at z = r, w =s.

16Introduction

Remark
The techniques used in this dissertation to calculate the tail probabilities will
not be (mathematically) correct for all possible pgf’s. Therefore we will sometimes restrict the pgf’s for which the obtained tail probabilities are correct.
However, we do not think that this restricts the possible application of ourresults much, since our results are correct for most ’typical’ forms of generating functions (such as exponential or rational functions). So one should be
careful with using the techniques in this dissertation (and in queueing theory
in general) for ’special’ functions (and respective stochastic variables).

1.9 Overview of this dissertation
We will end this first chapter by briefly describing the contents of the following chapters. In chapter 2, we analyze a two-class priority queue where
the service times of all units are equal to 1 slot. Therefore, no subdivisionof the priority scheduling discipline (as described in subsection 1.7.4) has tobe made. In chapters 3, 4 and 5 we will analyze two-class priority queues
with (more) general service times and a non-preemptive, preemptive resume
and preemptive repeat priority scheduling respectively. Finally, we will draw
some conclusions in chapter 6.

Chapter 2

Single-slot service times
In this chapter, we analyze a priority queue as described in section 1.7 withtwo priority classes and deterministic service times of one slot.
Deterministic service times equal to the slot length is a typical type of service
time frequently used in discrete-time queueing models. This is due to two main
reasons. Firstly, it is the easiest model to analyze. This is mainly due to the factthat a unit will leave the system at the end of the slot that it has commenced
service. Secondly, constant service times frequently occur in practice. For example in telecommunications, this model is extremely useful for analyzing
the performance of switches in an ATM (Asynchronous Transfer Mode) context ([De Prycker 1991]). The main feature of the ATM technology is the factthat all cells - in an ATM context, the information units are called cells - havethe same length (53 bytes) and the time necessary to transmit a cell is taken as
the slot length. We will follow the ATM terminology in the remainder of thischapter.
Discrete-time priority queues with one slot service time and no correlation
between the arrival processes of the different priority classes have been analyzed in [Hashida and Takahashi 1991, Takine et al. 1994b, Choi et al. 1998a,
Shakkottai and Srikant 2001, Xabier Albizuri et al. 2003] and [Mehmet Ali andSong 2004]. Hashida and Takahashi [1991] analyze a two-class priority system,
where the high-priority arrivals and low-priority arrivals are governed by a
two-state Markov modulated Batch Bernoulli Process and a Batch Bernoulli
Process (or vice-versa). Conservation laws and mean delay are found. In [Takine et al. 1994b], a two-class priority system is investigated. The numbers of
per-slot arriving high-priority cells are governed by an underlying Markov
chain and the numbers of per-slot low-priority arrivals are i.i.d. Using matrix
analytic techniques, moments of high-priority, low-priority and total systemcontents and moments of high-priority and low-priority delay are calculated.
In [Choi et al. 1998a], a two-class priority queue with train arrivals is analyzed. Both priority arrival streams are modeled as fixed-length trains, i.e.,18Single-slot service times

when the first cell of a train of length m arrives in a slot, m − 1 cells will arrivein the next m − 1 slots at a rate of one cell per slot. Using pgf’s, it is shownhow moments of the queue length and waiting time of cells are calculated.
In [Shakkottai and Srikant 2001] bounds for the delay distribution are given
in a multi-server queue with a rather general arrival process. Xabier Albizuri
et al. [2003] study the delay of the low-priority traffic in a multi-server queueby assuming that the number of servers available for the low-priority traffic isvariable (depending on the number of high-priority cells served at the time).
Finally, Mehmet Ali and Song [2004] analyze a queue with the arrival process
existing out of a number of two-state Markovian sources and by using pgf’s.
In [Sidi and Segall 1983, Chang and Harn 1992, Khamisy and Sidi 1992,
Laevens and Bruneel 1998, Walraevens and Bruneel 1999] and [Walraevens
et al. 2003c], discrete-time priority queues with one slot service time and(some sort of) correlation between the arrival processes of the different priority classes are investigated. In [Sidi and Segall 1983] and [Khamisy and Sidi
1992], priority queueing systems with a general number of priority classes
are analyzed. In [Sidi and Segall 1983], the number of arrivals is i.i.d. fromslot-to-slot. Departing cells from one priority queue can leave the system or
can be switched to another priority queue. In [Khamisy and Sidi 1992], thedistribution of the number of per-slot arrivals depends on the state of a twostate Markov chain. In both papers [Sidi and Segall 1983, Khamisy and Sidi
1992], the joint pgf of the system contents of all classes is calculated. From
this pgf, the mean system contents and - through (the discretized version of)Little’s law (see [Little 1961, Fiems and Bruneel 2002]) - the mean delay of allclasses are derived. In [Chang and Harn 1992, Laevens and Bruneel 1998],
a two-class multiserver queue is analyzed with the number of arrivals i.i.d.
from slot-to-slot. The joint pgf of the system contents of both classes is calculated in both papers (although the analysis in [Chang and Harn 1992] is moretedious as in [Laevens and Bruneel 1998]). The pgf’s of the delays of bothtypes of cells are also calculated in [Laevens and Bruneel 1998], while this is
not done in [Chang and Harn 1992]. From these pgf’s, moments of the analyzed stochastic variables are calculated in both papers. In [Chang and Harn1992], pmf’s are furthermore numerically determined using the Fast Fourier
Transform, while these probabilities are analytically approximated for highvalues of the stochastic variable (tail probabilities) in [Laevens and Bruneel
1998]. Walraevens and Bruneel [1999] and Walraevens et al. [2003c] basically
discussed the single-server variant of [Laevens and Bruneel 1998].
In this chapter, we discuss the analysis of a two-class ATM priority queue, asin [Walraevens and Bruneel 1999] and in [Walraevens et al. 2003c]. Although
the model we study is a special case of the model in [Laevens and Bruneel
1998] and the models discussed further in this dissertation, we feel it is usefulto show the analysis of this simplified queueing model first in full detail. This
will permit us to show the techniques used throughout this dissertation in a
relatively simple setting.
In section 2.1, we will analyze the system contents. Furthermore, we will

2.1 System contents

19

briefly describe corresponding results for the queue contents and unfinishedwork in sections 2.2 and 2.3. In section 2.4, we will concentrate on the celldelays of both classes and briefly describe some results for the waiting times
in section 2.5. Some numerical examples will finally be shown in section 2.6,
before giving some concluding remarks in section 2.7.

2.1 System contents
2.1.1 Calculation of the joint pgf U (z1 , z2 )In this subsection, we concentrate on the effect of the priority scheduling discipline on the joint probability generating function of the steady-state systemcontents of both classes. As discussed in subsection 1.7.2, the number of cell
arrivals of class-j in slot k is denoted by aj,k , j = 1, 2. The joint pgf of a1,k anda2,k is denoted by A(z1 , z2 ).
We denote the system contents of class-j at the beginning of slot k by uj,k(j = 1, 2) and the total system contents at the beginning of slot k by uT,k .
Furthermore, the joint pgf of u1,k and u2,k is denoted by Uk (z1 , z2 ), i.e.,uu

Uk (z1 , z2 ) , E[z1 1,k z2 2,k ].

(2.1)

The system contents of both types of cells are characterized by the following
system equations:
u1,k+1 =[u1,k − 1]+ + a1,k ;
[u2,k − 1]+ + a2,k if u1,k = 0
u2,k+1 =,u2,k + a2,k
if u1,k > 0

(2.2)
(2.3)

where [.]+ denotes the maximum of the argument and 0. Equation (2.2) follows from the observation that class-1 cells are not influenced by class-2 cells.
So, when there are class-1 cells in the system at the beginning of slot k, a class-1
cell is served during slot k. The class-1 system contents at the beginning of slot
k + 1 is thus the superposition of the cells in the queue at the beginning of slot
k and the class-1 cells arriving during slot k. A class-2 cell on the other hand
can only be served, if there are no class-1 cells in the system, i.e., if u1,k = 0.
This leads to expression (2.3).
Calculation of the joint pgf of the system contents of both classes at the beginning of slot k + 1, yields uu
Uk+1 (z1 , z2 ) ,E z1 1,k+1 z2 2,k+1
 u
u=E z1 1,k+1 z2 2,k+1 {u1,k = 0} uu
+ E z1 1,k+1 z2 2,k+1 {u1,k > 0} ,

(2.4)
(2.5)

20

Single-slot service times

with E[X{Y }] , E[X|Y ]Prob[Y ]. Using the system equations (2.2) and (2.3),
we form the following relation between Uk+1 (., .) and Uk (., .)A(z1 , z2 )Uk+1 (z1 , z2 ) =
z2 Uk (z1 , z2 ) + (z1 − z2 )Uk (0, z2 )+z1 (z2 − 1)Uk (0, 0)
.
z1 z2

(2.6)

Notice that

and

 u

Uk (0, z2 ) = E z2 2,k {u1,k = 0} ,(2.7)

Uk (0, 0) = Prob [u1,k = u2,k = 0] ,(2.8)

by definition.
Since we are interested in the steady-state distribution of the system contents,
we define U (z1 , z2 ) asU (z1 , z2 ) , lim Uk (z1 , z2 ).
k→∞

Applying this limit in equation (2.6), we find the following expression for
U (z1 , z2 ),U (z1 , z2 ) = A(z1 , z2 )(z1 − z2 )U (0, z2 ) + z1 (z2 − 1)U (0, 0).
z2 (z1 − A(z1 , z2 ))(2.9)

There are two quantities yet to be determined in the right-hand side of equation (2.9), namely the function U (0, z2 ) and the constant U (0, 0). Applying
Rouché’s theorem, it can be proven (see section A.1 and A.2 in the appendix
for this proof) that for a given value of z2 (|z2 | < 1), the equation z1 = A(z1 , z2 )has one solution in the unit circle for z1 , which will be denoted by Y (z2 ) in theremainder, and which is implicitly defined by Y (z) , A(Y (z), z). Since Y (z2 )is a zero of the denominator of the right-hand side of (2.9) and since U (z1 , z2 )is analytic for |z1 | < 1 and |z2 | < 1 - since U (z1 , z2 ) is a pgf - Y (z2 ) must also
be a zero of the numerator. We thus find
U (0, z2 ) =U (0, 0)

Y (z2 )(z2 − 1).
z2 − Y (z2 )(2.10)

Substituting this expression in equation (2.9) yields
U (z1 , z2 ) =U (0, 0)

A(z1 , z2 )(z1 − Y (z2 ))(z2 − 1).
(z1 − A(z1 , z2 ))(z2 − Y (z2 ))(2.11)

2.1 System contents

21

Finally, U (0, 0) can be found by applying the normalization condition U (1, 1) =1. Substituting z1 and z2 by 1 in (2.11) and using de l’ Hôpital’s rule gives the
expected result for the probability of having an empty system:
U (0, 0) =1 − λT ,(2.12)dA(z, z)
= A0T (1) the total arrival rate (as defined in subdz
z=1
section 1.7.2). Using (2.12) in expression (2.11), we finally get the following
expression:
with λT =U (z1 , z2 ) =(1 − λT )A(z1 , z2 )(z1 − Y (z2 ))(z2 − 1).
(z1 − A(z1 , z2 ))(z2 − Y (z2 ))(2.13)

2.1.2 The function Y (z)It can be proved that Y (z) is a pgf and as a result is analytic inside the unit
disk. It is however not easy to show - at this time - which stochastic variable
Y (z) is the pgf of, and we will therefore postpone this explanation until after
the analysis of the cell delay.
Notice furthermore that the function Y (z) = A(Y (z), z) is only implicitly
defined, and that it can only be explicitly calculated for specific arrival processes. In the case of the binomial arrival process discussed in subsection 1.7.2(see formula (1.8)) with N = 2 for instance, Y (z) can be explicitly calculatedasp
2 − 2λ1 + λ21 + λ1 λ2 (1 − z) − 2 1 − 2λ1 + λ21 + λ1 λ2 (1 − z)
Y (z) =. (2.14)
λ21
For the binomial arrival process with N → ∞, we findY (z) = eλ1 (Y (z)−1) eλ2 (z−1) ,(2.15)

which is a transcendental equation with respect to Y (z). An explicit expression for Y (z) cannot easily be obtained in this case. We will however show
further that this is not a problem for calculating the performance measures,such as moments and tail probabilities.

2.1.3 The marginal pgf UT (z)From equation (2.13), we easily obtain an expression for the pgf UT (z) describing the total system contents
UT (z) , lim E [z uT ,k ]k→∞(2.16)

22

Single-slot service times=U (z, z)(2.17)

AT (z)(z − 1)=(1 − λT ).
z − AT (z)(2.18)

This is the same pgf as the pgf of the system contents of a single-class buffer system with AT (z) the pgf of the number of per-slot arrivals, single-slot
service times and with a FIFO (First In First Out) scheduling discipline (seeBruneel and Kim [1993]). Even more generally, this is the same pgf as the
pgf of the total system contents of a buffer system with AT (z) the pgf of thetotal number of per-slot arrivals, single-slot service times and with a (general) work-conserving scheduling discipline. Indeed, when the service times of
all cells are equal to one slot, the total system contents is independent of thechosen scheduling discipline, as long as it is work-conserving, i.e., as long as
the server serves cells when the system is non-empty.

2.1.4 The marginal pgf U1 (z)We furthermore calculate the pgf U1 (z) of the system contents of class-1 cells
as follows
U1 (z) , lim E [z u1,k ](2.19)=U (z, 1).

(2.20)k→∞

By substituting z2 by 1 in expression (2.13) and using de l’Hôpital’s rule, we
get
U1 (z) =1 − λT A1 (z)(z − 1).
1 − Y 0 (1) z − A1 (z)(2.21)

The first derivative of Y (z) evaluated in 1 can be found as follows. Taking thefirst derivative of both sides of Y (z) = A(Y (z), z) yields
Y 0 (z) =A(1) (Y (z), z)Y 0 (z) + A(2) (Y (z), z)(2)=

with A(j) (x, y) ,A (Y (z), z),
1 − A(1) (Y (z), z)∂A(z1 , z2 )∂zj

(2.22)(2.23), j = 1, 2. Substituting z by 1 - and Y (1)z1 =x,z2 =yby 1 - in (2.23) gives Y 0 (1) as a function of the arrival rates:
Y 0 (1) =λ2.
1 − λ1(2.24)

2.1 System contents

23

Substituting expression (2.24) in expression (2.21), we finally findU1 (z) =(1 − λ1 )A1 (z)(z − 1).
z − A1 (z)(2.25)

From this expression, we see that the system contents of class-1 cells is not
influenced by class-2 cells and furthermore that its pgf has the same structureas UT (z). This is of course due to the priority scheduling discipline: the class-1
system contents is not influenced by the amount of arriving class-2 cells.

2.1.5 The marginal pgf U2 (z)Finally, we calculate the pgf of the system contents of class-2 cells, denoted by
U2 (z), from expression (2.13) as follows
U2 (z) , lim E [z u2,k ](2.26)=U (1, z)(2.27)

k→∞=(1 − λT )A2 (z)(z − 1)(Y (z) − 1).
(z − Y (z))(A2 (z) − 1)

(2.28)

Special case: uncorrelated numbers of per-slot class-1 and class-2 arrivals
In the special case that the numbers of arrivals of class-1 and class-2 cells areuncorrelated, i.e. A(z1 , z2 ) = A1 (z1 )A2 (z2 ), we can analyze the system contents of class-2 cells in an alternative way. Since class-2 cells can only be served
when there are no class-1 cells in the system, we can model the system, withrespect to class-2 cells, in terms of a system with server interruptions. The
server is blocked for class-2 cells if there are class-1 cells waiting to be sent,
and it is available if there are none. We can then calculate the pgf’s of theduration of busy and idle periods of class-1 cells, i.e., the time period during
which there are class-1 cells in the system (i.e., u1 > 0, with u1 the steady-statesystem contents at the beginning of a random slot) and the time period during
which there are no such cells (i.e., u1 = 0), respectively. The duration of theidle period is geometrically distributed with parameter A1 (0), since the probability that the idle period lasts an additional slot is equal to the probability
that no class-1 cells arrive during that slot, i.e., equal to A1 (0). The pgf of theduration of the idle period is thus given by
I(z) =(1 − A1 (0))z.
1 − A1 (0)z(2.29)

24

Single-slot service times

The analysis of the busy period is a bit more involved, and can be found in
Bruneel and Kim [1993] for a general service time distribution. In case of deterministic service times of one slot, its pgf B(z) is implicitly given by thefollowing formula:B(z) =A1 (z((1 − A1 (0))B(z) + A1 (0))) − A1 (0).
1 − A1 (0)(2.30)

Note that the lengths of consecutive busy and idle periods are statisticallyindependent. It is clear that when the system is busy with respect to class-1
cells, it is blocked for class-2 cells. Therefore, with respect to class-2 cells, thesystem can be modeled as a single-server buffer with server interruptions, forwhich the lengths of consecutive available and blocked periods are i.i.d. andtheir respective pgf’s are given by equation (2.29) and (2.30) respectively. Sucha queueing system has already been analyzed in Bruneel [1983]. Translating
the results from this analysis to our case, the pgf of the system contents ofclass-2 cells becomesU2 (z) = (1 − λT )A2 (z)(z − 1) 1 − A2 (z) [A1 (0) + (1 − A1 (0))B(A2 (z))].
1 − A2 (z) z − A2 (z) [A1 (0) + (1 − A1 (0))B(A2 (z))](2.31)

Defining
X(z) , A2 (z) [A1 (0) + (1 − A1 (0))B(A2 (z))] ,(2.32)

this leads toU2 (z) = (1 − λT )A2 (z)(z − 1) 1 − X(z).
z − X(z) 1 − A2 (z)(2.33)

Combining (2.32) and (2.30), X(z) is also implicitly given by
X(z) = A1 (X(z))A2 (z).

(2.34)

Equations (2.28) and (2.33) lead to the same result for U2 (z), when X(z) =Y (z). This is indeed the case when the numbers of class-1 and class-2 arrivals
during a slot are uncorrelated.

2.1.6 Calculation of moments
The moments of the total, class-1 and class-2 system contents are calculated bytaking the necessary derivatives of the respective pgf’s and evaluating for z =1 (as explained in subsection 1.8.2). We will explicitly show the expressions of
the means. Higher (central) moments can also be calculated straight-forwardly,2.1 System contents

25

but expressions are not shown here, although we will show some figures ofvariances in section 2.6.
The mean total system contents is given by (using expression (2.18))
E[uT ] =Var[aT ]λT+.
22(1 − λT )(2.35)The mean class-1 system contents is given by (using expression (2.25))
E[u1 ] =λ1
Var[a1 ]+.
2
2(1 − λ1 )(2.36)

The calculation of the mean class-2 system contents is a bit more involved,
because of the appearance of Y (z) in the expression (2.28) of U2 (z). As mentioned in subsection 2.1.2, the function Y (z) can only be explicitly found incase of some simple arrival processes. Its derivatives for z = 1, necessary to
calculate the moments of the system contents and the cell delay, on the contrary, can be calculated in closed-form. This is because we know Y (1) = 1,
since Y (z) is a pgf. For example, Y 0 (1) is given by expression (2.24). Finally,taking the first derivative of (2.28), substituting z by 1 and using expression(2.24) yields
E[u2 ] =λ2
Var[a2 ] + 2Cov[a1 , a2 ]λ2 Var[a1 ]++,2
2(1 − λT )2(1 − λT )(1 − λ1 )(2.37)

for the mean system contents of class-2 cells, with Cov[X, Y ], the covariance
between variables X and Y (as defined in subsection 1.8.2).
Since Var[X + Y ] =Var[X]+Var[Y ] + 2Cov[X, Y ], and thus
Var[aT ] = Var[a1 ] + Var[a2 ] + 2Cov[a1 , a2 ],(2.38)

it is easily verified that equations (2.35), (2.36) and (2.37) satisfy E[uT ] =E[u1 ] + E[u2 ] (which is expected since uT = u1 + u2 ).

2.1.7 Calculation of tail probabilities
From the pgf’s of the total, class-1 and class-2 system contents, (approximations of) the tail probabilities can be derived using Darboux’s (Theorem 1.1)
or Bender’s theorem (Theorem 1.3).
Note that we assume for the reasoning in the remainder that the pgf’s of thearrival processes (AT (z), A1 (z) and A2 (z)) and their derivatives go to infinity for z equal to their radii of convergence or for z → ∞ (which is correct
for most ’normally’ applied arrival distributions). For most pgf’s that do not26Single-slot service times

fulfil this assumptions, the reasoning in this subsection can be adjusted, but
this is not the main topic of this dissertation. Our goal in this subsection is
twofold: firstly, we want to show that tail probabilities can be calculated - inpriority queues - from the obtained pgf’s. Secondly, we want to show that the
tail probabilities are not necessarily geometrically (or exponentially) decaying,even for ’simple’ (pgf’s of the) arrival processes.
Total system contents
First we concentrate on the total system contents. From (2.18), it can be seenthat the singularities of UT (z) are composed of the zeros of z − AT (z) andthe (possible) singularities of AT (z). Under the assumptions mentioned in theprevious paragraph, we first prove that the dominant singularity of UT (z) is apole with multiplicity 1 and is a zero of z − AT (z).

From Vivanti’s theorem (theorem 1.2), we know that the dominant singularity
lies on the positive real axis. We first look at the zeros of f (z) , z − AT (z). Its
smallest zero on the positive real axis is z = 1. Since f 0 (1) = 1 − λT > 0, thisis a zero with multiplicity 1. This is however not a pole of UT (z) since pgf’s
remain finite in z = 1. Starting from z = 1, we look for the next zero of f (z)by increasing z. It is seen that f (z) > 0 at first (since f (1) = 0 and f 0 (1) > 0).
However since A0T (z) is a strictly increasing function, f 0 (z) = 1 − A0T (z) is astrictly decreasing function. Therefore f (z) reaches a maximum for z = z∗(with f 0 (z∗ ) = 0) and then decreases again. For a certain zT , f (z) equals zero(again) and f 0 (zT ) < 0. Therefore zT is a zero with multiplicity 1 of z − AT (z).
Since zT is inside the region of convergence of AT (z), zT is smaller than the(possible) dominant singularity of AT (z) and is thus the dominant singularity
of UT (z).
For example, if AT (z) = (1 − λT (1 − z)/N )N , z and AT (z) are shown in Figure
2.1 for real positive values of z (for N = 16 and λT = 0.5). z − AT (z) has two
zeros on the real positive axis. The first one is z = 1 and the second one is zT .
AT (z) is smaller than z for z ∈]1, zT [ leading to a positive f (z) = z − AT (z) forz in that particular range (as described above).
So, in the neighborhood of its dominant pole zT , we can approximate UT (z)byUT (z) ≈KT,
zT − z(2.39)

since zT is a single pole of UT (z). KT can be found by substituting z = zT in(2.39) and using the expression (2.18) for UT (z):(2.40)

KT = lim UT (z)(zT − z)z→zT

= (1 − λT )zT (zT − 1) lim

zT − zz→zT z − AT (z)(2.41)

2.1 System contents

27

5

4

3

2

1

z
AT(z)

0
0

1

2

3

4

5

z
Figure 2.1: The functions z and AT (z) for z real and positive=(1 − λT )zT (zT − 1),
A0T (zT ) − 1(2.42)

where we have used de l’Hôpital’s rule in the last step. Using Darboux’s theorem (or more precisely equations (1.33)-(1.34) with ω = 1) the coefficients ofthe power series UT (z) can be found from expression (2.39):
uT (n) ,Prob[uT = n]
≈KT zT−n−1 ,(2.43)(2.44)

for large enough n. Substituting (2.42) in this expression yields
uT (n) ≈(1 − λT ) (zT − 1) zT−n.
A0T (zT ) − 1(2.45)

A quantity of practical interest is the probability that the total system contents
exceeds a bound L. We finduT (L)zT − 1(1 − λT )zT−L.
= 0
AT (zT ) − 1

Prob[uT > L] ≈(2.46)(2.47)

28

Single-slot service times

Expression (2.46) is found by noting that∞X

Prob[uT > n]z n =n=0

UT (z) − 1.
z−1(2.48)

By using Darboux’s theorem on this expression - and since this expression
inherits the singularities of UT (z) - expression (2.46) is found.
Note that we could have made the approximation of UT (z) in (2.39) more accurate by replacing the constant KT with a function G(z). Since G(zT ) = KT
though and since G(zT ) is ultimately the only value of G(z) that is important
for the calculation of the tail probabilities (see Darboux’s theorem), we havedirectly replaced G(z) by KT in the (approximate) expression of UT (z). We
will do this in all calculations of the tail probabilities in this dissertation.
Class-1 system contents
Since the pgf of the class-1 system contents (expression (2.25)) is similar to theone of the total system contents, the system contents of class-1 cells has an
identical tail behavior:u1 (n) , Prob[u1 = n]−n
(1 − λ1 ) (zH − 1) zH≈,0A1 (zH ) − 1(2.49)(2.50)

for large enough n, with zH the dominant singularity on the positive real axisof U1 (z), i.e., zH is a zero of z − A1 (z).
The probability that the system contents of class-1 exceeds a bound L is givenbyProb[u1 > L] ≈−L
(1 − λ1 )zH.
0A1 (zH ) − 1(2.51)

The function Y (z)The tail behavior of the system contents of class-2 cells is a bit more involved,
since it is not a priori clear what the dominant singularity is of U2 (z). This isdue to the occurrence of the function Y (z) in (2.28), which is only implicitly
defined.
First we take a closer look at that function Y (z) on the (positive) real axis (seealso section A.3.2 for more details). The first derivative of Y (z) is - as already2.1 System contents

29

mentioned in subsection 2.1.4 - given by
Y 0 (z) =A(2) (Y (z), z).
1 − A(1) (Y (z), z)(2.52)

Consequently, Y (z) has a singularity, denoted as zB , where the denominatorof Y 0 (z) becomes 0, i.e., A(1) (Y (zB ), zB ) = 1. Note that Y (zB ) is finite (formore details see section A.3.2).
As will be proven later on Y (z) is a pgf and thus can be written as a power
series with non-negative coefficients:
Y (z) =∞
X

(2.53)

y(n)z n ,n=0thus with y(n) a pmf. Since z1 = Y (z2 ) satisfies the equation z1 −A(z1 , z2 ) = 0,
we will make use of Bender’s theorem (Theorem 1.3) to obtain an approximation for the y(n) for n sufficiently high.
To be able to use Bender’s theorem, we have to check the four assumptionsin this theorem. This is not always an easy task (in general). Therefore, wewill not check them for general A(z1 , z2 ), but we will - as an example - showthat the four assumptions are valid for A(z1 , z2 ) equal to the two-dimensional
binomial pgf defined in the previous chapter, i.e., forA(z1 , z2 ) = 1 +

2
X
λj
j=1

N

N

(zj − 1) .

(2.54)

1. for some δ > 0, z1 − A(z1 , z2 ) is analytic whenever |z2 | < zB + δ and|z1 | < Y (zB ) + δ: indeed, z1 and A(z1 , z2 ) are analytic in the complete
complex plane for our example.
2. Y (zB ) − A(Y (zB ), zB ) = 1 − A(1) (Y (zB ), zB ) = 0: this follows directlyfrom the definition of Y (z) and zB .
3. A(2) (Y (zB ), zB ) 6= 0, and A(11) (Y (zB ), zB ) 6= 0. For our example, it iseasily seen that this holds true for N > 1, but for N = 1 it is seen that
A(11) (Y (z), z) = 0 for all z. Note that for N = 1 only one packet canenter the queue during a slot - which is served at the beginning of thenext slot - and thus there is no queueing at all. The tail probabilities ofthe system contents are thus zero.
4. if |z2 | ≤ zB , |z1 | ≤ Y (zB ), and z1 − A(z1 , z2 ) = 1 − A(1) (z1 , z2 ) = 0, thenz2 = zB and z1 = Y (zB ). z1 − A(z1 , z2 ) = 1 − A(1) (z1 , z2 ) = 0 is in our30Single-slot service times
example equal toN
P 2 λj=0 z1 − 1 + j=1 (zj − 1)
N
.
N −1


P

 1 − λ1 1 + 2j=1 λj (zj − 1)
=0
N
(m)

This set of equations has N − 1 solutions (z1

(m)

, z2

):


 j2πm 1/(N −1)

e
(m)


z
=
 1
N
λ
"1
#,

1/(N −1)
N N − 1 ej2πmλT(m)
 z2 =
−1+

λ2
N
λ1
N
(0)

(2.55)(2.56)(0)with m = 0, . . . , N −2. Note that the solution z1 , z2 equals (Y (zB ), zB ).
Since −1 + λT /N < 0 it is seen that |z20 | < |z2m | for all m > 0, whichmeans that this assumption is indeed valid.
Note that this last assumption is in general the hardest one to check. Basically,
it is equivalent with “Y (z2 ) has no other singularities inside and on the circle
with radius zB ”. Since zB is one of the dominant singularities, this condition
will be true for |z2 | < zB . However, for special arrival processes, Y (z) could
have other singularities on that circle. More details on conditions for this assumption to be true can be found in Meir and Moon [1989]. They prove for
instance that knowing in advance that y(m)y(n) > 0 for some m > n withthe greatest common devision of m and n equal to 1 is a sufficient condition.
However, once again, we stress that it is not always easy to check the assumptions and thus we advice - in respect with Bender’s theorem - to “handle withcare”.
Assuming these 4 conditions are met, Bender’s theorem gives the following
approximate values of y(n) (for large enough n):y(n) ≈szB A(2) (Y (zB ), zB ) −3/2−nn(zB ) .
2πA(11) (Y (zB ), zB )(2.57)An alternative method to obtain y(n) for large enough n is the following: if wefind an explicit function for Y (z2 ) which is correct in the neighborhood of zB ,we can use Darboux’s theorem to obtain the tail probabilities y(n). In Drmota[1997] it is shown (in the more general context of a set of functional equations)that in the neighborhood of zB , Y (z) is approximately given by
Y (z) ≈Y (zB ) − KY (zB − z)1/2 .

(2.58)

2.1 System contents

31This can also be seen from the fact that zB is a (square-root) branch point ofY (z) (see A.3.2). KY can be found from expression (2.58) as follows:2(Y (zB ) − Y (z))
z→zBzB − z= lim [2 (Y (zB ) − Y (z)) Y 0 (z)] ,KY2 = lim

z→zB

(2.59)(2.60)

where we have used de ’l Hôpital’s rule. Using expression (2.23) for Y 0 (z), we
obtainKY2 =2A(2) (Y (zB ), zB ) lim

Y (zB ) − Y (z)z→zB 1 − A(1) (Y (z), z)

Y 0 (z),z→zB A(11) (Y (z), z)Y 0 (z) + A(12) (Y (z), z)=2A(2) (Y (zB ), zB ) lim(2.61)(2.62)

after using de ’l Hôpital’s rule once more. Since Y 0 (z) → ∞ for z → zB , thelast term of the denominator of (2.62) is negligible. This ultimately leads too

KY =

s

2A(2) (Y (zB ), zB ).
A(11) (Y (zB ), zB )(2.63)

Using Darboux’s theorem on expression (2.58), we get√
KY zB −3/2 −ny(n) = −nzB .
Γ(−1/2)(2.64)√
Using expression (2.63) and the knowledge that Γ(−1/2) = −2 π, we indeed
find expression (2.57). Both methods thus lead to the same result.
Class-2 system contents
Since Y (z) appears in the expression (2.28) of U2 (z), zB is also a singularity ofU2 (z). Indeed, taking the first derivative of expression (2.28) yields (z − 1)(1 − Y (z))(z − Y (z))A02 (z) (1 − λT ) +A2 (z)(1 − Y (z))2 (1 − A2 (z))

−A2 (z)(z − 1)2 (1 − A2 (z))Y 0 (z)U20 (z) =,(z − Y (z))2 (1 − A2 (z))2(2.65)and it is easily seen that this expression goes to infinity as Y 0 (z) → ∞, or, asz → zB .

A second potential singularity zL of U2 (z) on the real axis is given by the
positive zero of the denominator z − Y (z), and it is easily proved to be equal32Single-slot service times

4
3.5

z
Y(z) (λ1=0.05)

3

Y(z) (λ1=2/3)

2.5

Y(z) (λ1=0.75)

2
1.5
1
0.5
0
0

0.5

1

1.5

2

2.5

3

3.5

4

z
Figure 2.2: Types of behavior of Y (z)to zT , if zL exists. Figure 2.2 gives three typical types of behavior of Y (z) forA(z1 , z2 ) = (1 − λ1 (1 − z1 )/N − λ2 (1 − z2 )/N )N , for N = 2, λT = 0.8 andλ1 = 0.05, 2/3 and 0.75 respectively. For λ1 = 0.05, Y (z) intersects z twice(for z = 1 and for z = zL ), before reaching the branch point (not shown in the
Figure). For λ1 = 2/3, Y (z) intersects z once in z = 1 and equals z in its branch
point. When λ1 = 0.75 finally, Y (z) intersects z once in z = 1 and reaches its
branch point before it could intersect z a second time. In this case, no zL isfound, or alternatively, z − Y (z) 6= 0 for real z > 1 (and for z for which Y (z)exists), see Appendix for more details.
The tail behavior of the system contents of class-2 cells is thus characterized
by zL or zB , depending on which is the dominant (i.e., smallest) singularity.
Furthermore, zL equals zT when it is dominant (or equivalently, when it exists). Three situations may thus occur, namely when zL = zT < zB , zL does
not exist, and zL = zT = zB . We will discuss these three cases separately first,
or more precisely we will first study the (approximate) behavior of U2 (z) in
the neighborhood of its dominant singularity for the three cases separately.
In the first case, the single pole zT is dominant and thus
(1)U2 (z) ≈(1)

K2,
zT − z(2.66)

for z → zT . K2 can be calculated by substituting expression (2.28) in the pre-

2.1 System contents

33

vious expression and substituting z = zT (in a similar way as in the calculationof (2.42)). This yields
(1)

K2

2

=

(1 − λT )A2 (zT ) (zT − 1).
(A2 (zT ) − 1) (Y 0 (zT ) − 1)

(2.67)In the second case, i.e., when zL does not exist, the branch point zB is dominant. Using the definition of Y (z) (Y (z) , A(Y (z), z)), expression (2.28) canbe transformed in a functional equation. Using Bender’s theorem, it is thenpossible to obtain the tail behavior. Alternatively, we first study the behaviorof U2 (z) in the neighborhood of zB . Using expression (2.58) in (2.28), we find
A2 (z)(z − 1) Y (zB ) − KY (zB − z)1/2 − 1U2 (z) ≈(1 − λT ) z − Y (zB ) + KY (zB − z)1/2 (A2 (z) − 1)
 A2 (z)(z − 1) Y (zB ) − KY (zB − z)1/2 − 1  × z − Y (zB ) − KY (zB − z)1/2≈(1 − λT ) .
(z − Y (zB ))2 − KY2 (zB − z) (A2 (z) − 1)

(2.68)(2.69)

This expression leads to(3)

U2 (z) ≈ U2 (zB ) − K2 (zB − z)1/2 ,(2.70)(3)in the neighborhood of zB - note that we have used the notation K2 instead of(2)(the expected) K2 because we will switch the last two types of tail behavior
in the end formula’s - with
(3)

K2

=

(1 − λT )KY A2 (zB ) (zB − 1)22 .

(A2 (zB ) − 1) (zB − Y (zB ))(2.71)In the third case, zT and zB coincide. Again, we will study the behavior of
U2 (z) in the neighborhood of this dominant singularity and use Darboux’s
theorem to calculate the tail probabilities of the class-2 system contents. The
approximation of U2 (z) in the neighborhood of zB is again found by substituting expression (2.58) in expression (2.28):

1/2
A2 (z)(z − 1) zB − KY (zB − z) − 1U2 (z) ≈(1 − λT ) z − zB + KY (zB − z)1/2 (A2 (z) − 1)

(2.72)

34

Single-slot service times
A2 (z)(z − 1) zB − KY (zB − z)1/2 − 1
,≈(1 − λT )(zB − z)1/2 (zB − z)1/2 + KY (A2 (z) − 1)

(2.73)

where we have also used the fact that Y (zB ) = zB . This leads to the following
form of U2 (z) in the neighborhood of its dominant singularity:(2)

U2 (z) =K2(zB − z)1/2(2.74)

,

with
(2)

K2

2

=

(1 − λT )A2 (zB ) (zB − 1).
KY (A2 (zB ) − 1)

(2.75)

Summarizing, U2 (z) can be approximated in the neighborhood of its dominant
singularity by:

(1)

K2


if zL = zT < zB zT − z(2)U2 (z) ≈K2

if zL = zT = zB

1/2


 (zB − z)


(3)
1/2
U2 (zB ) − K2 (zB − z)if zL does not exist,(2.76)(i)where the constants K2 (i = 1, 2, 3) are given by expressions (2.67), (2.75) and(2.71) respectively (note that we switched the second and third case). Using
Darboux’s theorem (see Theorem 1.1), we find the tail probabilities for thethree possible cases:u2 (n) ,Prob[u2 = n]
(1 − λT )A2 (zT ) (zT − 1)2 zT−n−1





(A2 (zT ) − 1) (Y 0 (zT ) − 1)
 (1 − λ )A (z ) (z − 1)2 n−1/2 z −n
T
2 B
B
B
≈
√

K
z
π
(A
Y
B
2 (zB ) − 1)



2
−n


(1 − λ )K A (z ) (z − 1) n−3/2 zB p T Y 2 B B
2 ,2 π/zB (A2 (zB ) − 1) (zB − Y (zB ))(2.77)(2.78)

for large enough n, if zL = zT < zB , if zL = zT = zB and if zL does not exist,
respectively. The first expression constitutes a typical geometric (or exponential)
tail behavior, while the third expression is a typical non-geometric tail behavior.
The second expression exhibits a behavior in between the two other cases, andwe will thus call this tail behavior of transition type.

2.2 Queue contents

35

Finally, the probability that the system contents of class-2 exceeds a bound Lis (approximately) given by
Prob[u2 > L] ≈u2 (L),z∗ − 1(2.79)

with z∗ the dominant singularity of U2 (z) and for large enough L. This can befound in the same way as (2.46).

2.2 Queue contents
The queue contents, defined as the number of cells in the queue (thus without
the one in the server if any), can be easily derived from the system contents.
We denote the queue contents of class-j at the beginning of the k-th slot by qj,k(j = 1, 2). We then get the following relation between the qj,k and the uj,k+1 :uj,k+1 = qj,k + aj,k ,(2.80)

for j = 1, 2. uj,k+1 and aj,k are still defined as the class-j system contents atthe beginning of slot k + 1 and the number of class-j arrivals during slot krespectively. This relation can be understood as follows: the system contents
at the beginning of slot k + 1 exists out of the queue contents at the beginningof the previous slot (the possible cell in the server during slot k has left thesystem at the end of that slot) and the cells that arrived during slot k. Let us
denote the joint pgf of the steady-state queue contents by Q(z1 , z2 ), i.e., qq
Q(z1 , z2 ) = lim E z11,k z22,k .
k→∞(2.81)

By z-transforming the system equations (2.80) and letting k → ∞, we findQ(z1 , z2 ) =U (z1 , z2 ).
A(z1 , z2 )(2.82)

Substituting U (z1 , z2 ) with its expression (2.13) finally yields:
Q(z1 , z2 ) =(1 − λT )(z1 − Y (z2 ))(z2 − 1).
(z1 − A(z1 , z2 ))(z2 − Y (z2 ))(2.83)

From this expression, marginal pgf’s, moments and tail probabilities of thetotal, the class-1 and the class-2 queue contents can be calculated as is donein section 2.1 for the system contents. We will not give the expressions here,
because it results in basically the same expressions as in the previous section,
but without the factor introduced by the factor A(z1 , z2 ) in (2.13).

36Single-slot service times

2.3 Unfinished work
In the case of single-slot service times, the system contents and the unfinishedwork are equal. This is because every arriving cell in the queue adds one unit
to the system contents and adds one slot to the unfinished work. So, denoting
W (z1 , z2 ) as the pgf of the steady-state unfinished work at the beginning of arandom slot, or w
w
W (z1 , z2 ) = lim E z1 1,k z2 2,k ,k→∞(2.84)

with wj,k (j = 1, 2) the unfinished work of class-j at the beginning of slot k,
W (z1 , z2 ) equals (see expression (2.13))
W (z1 , z2 ) =U (z1 , z2 )A(z1 , z2 )(z1 − Y (z2 ))(z2 − 1).
=(1 − λT )(z1 − A(z1 , z2 ))(z2 − Y (z2 ))(2.85)(2.86)

From this joint pgf, the same marginal pgf’s and performance measures canbe calculated as in section 2.1.
Note that the unfinished work and the system contents are equal because of
the single-slot service times. Since we will assume more general service times
in the other chapters, these two stochastic variables will have to be analyzed
separately in the following chapters (although they will obviously still be related).

2.4 Cell delay
In this section, we analyze the cell delay of the class-1 and class-2 cells respectively. As stated in chapter 1, the delay of a tagged cell is - in a discrete-time
context - defined as the number of slots between the end of its arrival slot andthe end of its departure slot. In this section, we derive expressions for the pgf’sof the steady-state cell delay of both classes and of the steady-state delay of arandom cell, and calculate the related performance measures.

2.4.1 Pgf D1 (z) of the class-1 cell delay
We can analyze the cell delay of class-1 cells - the high-priority cells - as if they
were the only type of cells in the system. Indeed, when a class-1 cell arrives it
is served before all class-2 cells in the system at that time and thus the highpriority cells do not “see” the low-priority cells. Therefore, the class-1 celldelay is the same as in a corresponding single-class system with only class-1
cells arriving. This analysis is (obviously) already done in the past - in a more

2.4 Cell delay

37

general context (see e.g. Bruneel and Kim [1993]), but to set the mind of thereader we will reconstruct this analysis in the setting of this chapter. We tag aclass-1 cell and assume that the arrival slot of the tagged cell is the k-th slot.
The delay d1 of this tagged cell is given by(1)

d1 = [u1,k − 1]+ + f1,k + 1,

(2.87)(1)with u1,k the system contents of class-1 at the beginning of slot k and f1,k isdefined as the number of class-1 cells that arrive during the arrival slot of thetagged cell, but which have to be served before it (or which arrive during thesame slot as the tagged cell but “before” it). Indeed, the tagged cell has to
wait in the queue until all class-1 cells that were already in the queue when
it arrives (i.e., all cells that were already in the queue at the beginning of its
arrival slot and all cells that arrived in front of the tagged cell in its arrival slot)
are served. The delay then equals this waiting time augmented with its own
service time, which equals 1 in this model. This leads to expression (2.87).
Note that we could express this expression also in terms of queue contents
instead of system contents (this would lead to a more “simplified” expression+
in this case because [u1,k − 1] = q1,k ). This is a matter of choice, and we willthroughout this dissertation choose to express the delay as a function of thesystem contents. Translating expression (2.87) into pgf’s yields 
D1 (z) , lim E z d1

(2.88)k→∞(1)=F1 (z) [U1 (z) + (z − 1)U1 (0)] ,(2.89)

withh (1) i(1)F1 (z) ,E z f1,k .

(2.90)(1)

Notice that we have used the fact that u1,k and f1,k are uncorrelated - because(1)

the arrival process is i.i.d. from slot-to-slot - to obtain (2.89). F1 (z) can becalculated by taking into account that an arbitrary cell is more likely to arrive
in a larger bulk (e.g. Bruneel and Kim [1993]), yielding - we will describe thecalculation of a similar (but more general) pgf in more detail in the following
subsection (1)F1 (z) =A1 (z) − 1.
λ1 (z − 1)

(2.91)

Using expressions (2.25) and (2.91) in (2.89), we finally find
D1 (z) =1 − λ1 z(A1 (z) − 1).
λ1
z − A1 (z)(2.92)

38

Single-slot service times

Notice that U1 (z) (expression (2.25)) and D1 (z) (expression (2.92)) fulfil thefollowing general relation (see Xiong and Bruneel [1993] or Vinck and Bruneel[1995]):
U1 (z) =1 − λ1 + λ1 D1 (z).

(2.93)

2.4.2 Pgf D2 (z) of the class-2 cell delay
The analysis of the cell delay of class-2, denoted by d2 , is more complicated.
Consider a logically equivalent queueing system where all class-1 cells are
stored in front of the class-2 cells, and let us tag an arbitrary class-2 cell that
arrives in the system. The amount of time it spends in the system equals(2)[uT ,k −1]+ +fT ,k

d2 =

X

vj + 1,(2.94)

j=1

where slot k is assumed to be the arrival slot of the tagged class-2 cell, uT,k is(2)
the total system contents at the beginning of slot k, fT,k is defined as the total
number of cells that arrive during the arrival slot of the tagged cell, but whichhave to be served before it, and vj is the length of the j-th sub-busy period(from slot k onwards) initiated by the cells already in the queue when theclass-2 cell arrives. Note that, since all class-1 and class-2 cells have single-slot
service times, it is sufficient to know the total system contents at the beginningof slot k in order to analyze the class-2 cell delay in this model. In the following chapters, the distributions of the class-1 and class-2 service times may bedifferent and as a result u1,k and u2,k will have to be known separately (instead of only their sum uT,k ).
The notion of a sub-busy period initiated by a cell is widely used in queueing
analyses. It is - in the context of our analysis - basically defined as follows: thesub-busy period starts at the beginning of the slot the cell enters the server.
Assume that at that time instant, m cells are waiting in the queue in front of
the tagged class-2 cell (in the logically equivalent queueing system, i.e., allclass-1 cells are stored in front of the class-2 cells). The sub-busy period ends
at the beginning of the slot where - for the first time - the number of cells
waiting before the tagged class-2 cell equals m − 1, i.e., equals one less than at
the beginning of the sub-busy period. In case of a FIFO scheduling, vj would
equal 1 (see e.g. also expression (2.87)). For a priority scheduling, this is notnecessarily the case, since new class-1 cells can arrive while the tagged cell is
waiting in the queue and these class-1 cells have to be served before the tagged
cell. More specifically, assume that the tagged cell is stored in the j-th positionin the queue at the beginning of the l-th slot. If no class-1 cells arrive duringslot l, vj equals 1. If a1,l (> 0) class-1 cells arrive during this slot on the other
hand, the tagged cell will move back to position j + a1,l − 1 in the queue at2.4 Cell delay39

the beginning of slot l + 1, since these class-1 cells have to be served before allclass-2 cells, and thus before the tagged one.
Since the arrival process is i.i.d. from slot-to-slot it is obvious that the vj are
all i.i.d. stochastic variables. We denote their common pgf by V (z). Since(2)
uT,k , fT,k and the vj are all mutually independent variables, z-transforming
expression (2.94) yields 
D2 (z) , lim E z d2

(2.95)

k→∞(2)=zFT (V (z))(2)

UT (V (z)) + (V (z) − 1)UT (0),V (z)(2.96)(2)

with FT (z) the pgf of fT,k and with UT (z) the pgf of the total system contents(2)

at the beginning of a random slot. Furthermore, fT,k is the sum of all the class1 cells that arrive during the same slot as the tagged one, and of the class-2 cells(2)that have arrived before it during its arrival slot. The pgf of fT,k is calculated
first. We define
h
i
(2)
(2)
fT (n) ,Prob fT,k = n ,(2.97)â(m, n) ,Prob [â1 = m, â2 = n] ,(2.98)

andwith âj the number of class-j arrivals in the arrival slot of a tagged class-2 cell.
Taking into account that an arbitrary tagged cell is more likely to arrive in alarger bulk â(m, n) is given byâ(m, n) =na(m, n),λ2(2.99)

with a(m, n) the probability mass function of the number of class-1 and class2 arrivals in a random slot. Note that â(m, n) and a(m, n) are not equal (see(2)
Bruneel and Kim [1993] for more details). When fT,k = n, the number of class1 arrivals is at most n and the total number of arrivals during slot k has to belarger than n, leading to(2)

fT (n) =nX∞Xâ(m, i).
i
m=0 i=n−m+1(2.100)Substituting expression (2.99) in this expression and taking the z-transform

40

Single-slot service times

yields(2)

FT (z) =AT (z) − A1 (z).
λ2 (z − 1)

(2.101)

Using equations (2.18) and (2.101) in expression (2.96) gives
D2 (z) =1 − λT z(AT (V (z)) − A1 (V (z))).
λ2
V (z) − AT (V (z))(2.102)

It remains for us to determine V (z). During the first slot of a sub-busy period,class-1 packets arrive which all initiate sub-busy periods of their own, partof the initial sub-busy period. The newly introduced sub-busy periods arestochastically indistinguishable from the initial sub-busy period, so they (all)have the same pgf V (z). Thus, since the length of the initial sub-busy period
equals one (the first slot) added with the sum of the lengths of the sub-busy
periods (initiated by the class-1 arrivals during the first slot), V (z) is implicitly
given by
V (z) = zA1 (V (z)).

(2.103)

Expression (2.102) is then further transformed inD2 (z) =1 − λT zAT (V (z)) − V (z),λ2
V (z) − AT (V (z))(2.104)

with V (z) implicitly given by (2.103).

2.4.3 Pgf D(z) of the delay of a random cellIn this subsection, we will derive the pgf D(z) of a random cell arriving in thesystem. Tagging a random arriving cell, it is of class-1 with probability λ1 /λT
and of class-2 with probability λ2 /λT . We thus get
D(z) =λ1
λ2
D1 (z) +D2 (z).
λT
λT(2.105)

Substituting expressions (2.92) and (2.104) in this expression leads toD(z) =

1 − λ1 z(A1 (z) − 1) 1 − λT zAT (V (z)) − V (z)+.
λTz − A1 (z)λT
V (z) − AT (V (z))(2.106)

2.4 Cell delay

41

2.4.4 The function Y (z) revisited
We mentioned in subsection 2.1.2 that Y (z) - defined as Y (z) , A(Y (z), z) - isa pgf. In this subsection, we will “define” a stochastic variable with pgf Y (z).
The function Y (z) is the pgf of the stochastic variable y, which is defined as
the number of class-2 cells that arrive during a sub-busy period (denoted byv) initiated by a random cell (as defined in subsection 2.4.2), i.e.,

y=

v
X
(i)
a2 ,

(2.107)i=1(i)with a2 defined as the number of class-2 arrivals during the i-th slot of v.
We furthermore define the number of class-1 arrivals during the i-th slot of v
(i)by a1 . The sub-busy period v exists out of the first slot, needed to serve the(1)cell that initiates the sub-busy period, and a1 sub-busy periods (initiated by
the class-1 arrivals during the first slot), all with the same distribution as theoriginal sub-busy period. y is thus given by(1)(1)
y =a2 +

a1
X

(1)
ym
,

(2.108)m=1(1)

with ym the number of class-2 cells that arrive during the sub-busy period
initiated by the m-th class-1 cell that arrives during the first slot of v. Natur(1)ally, all ym have the same distribution as y (since the lengths of all sub-busy
periods are also i.i.d.) and their pgf is thus indeed given by
Y (z) =A(Y (z), z),(2.109)as immediately follows by z-transforming (2.108).
Note that Y (z) not necessarily equals V (A2 (z)) as one would expect from the(i)definition of the stochastic variable y. Since v depends on the a1 and since (i)(i)(i)
for each i - a1 and a2 are correlated, v also depends on the a2 . Thus, since(i)v and a2 are correlated, Y (z) does not equal V (A2 (z)) in general. This willbe the case however, when the number of class-1 and class-2 arrivals in a slot
are mutually independent. Indeed, when A(z1 , z2 ) = A1 (z1 )A2 (z2 ), Y (z) andV (A2 (z)) are solutions of the same functional equation x = A1 (x)A2 (z) (ascan be seen from expressions (2.109) and (2.103) respectively) and thus since
they are both pgf’s Y (z) = V (A2 (z)) in this case.

42Single-slot service times

2.4.5 Calculation of moments
Taking the first derivative of equation (2.92) and substituting z = 1 yields themean delay of a class-1 cell:1
Var[a1 ]E[d1 ] = +.
2 2λ1 (1 − λ1 )(2.110)Note that this expression is always at least equal to 1, since Var[a1 ] ≥ λ1 (1 −λ1 ). This can intuitively be seen as follows: in order for a discrete stochastic
variable to have a mean value of λ1 < 1 and a minimal variance, it has tobe 1 with probability λ1 and 0 with probability 1 − λ1 . This distribution has avariance of λ1 (1−λ1 ) and this is thus the least possible variance of the numberof per-slot class-1 arrivals. Note that this was intuitively expected since theservice time of a cell is always an integral part of the delay of that cell (andthus E[d1 ] ≥ 1). Thus the mean delay is at least the mean service time of a cell,which equals 1 in this model.
The mean delay of a class-2 cell is found by taking the first derivative of expression (2.104) and substituting z by 1, yieldingE[d2 ] =1 Var[a2 ] + 2Cov[a1 , a2 ]Var[a1 ]++,2
2λ2 (1 − λT )2(1 − λT )(1 − λ1 )(2.111)for the mean cell delay of a class-2 cell. This expression is also at least one,since for given mean arrival rates of class-1 and class-2 (λ1 and λ2 respectively), the minimal value of Var[aj ] is λj (1 − λj ) (j = 1, 2) and the minimalvalue of Cov[a1 , a2 ] is −λ1 λ2 . These least possible values occur when one
class-1 cell and no class-2 cells arrive during a slot with probability λ1 , noclass-1 cells and one class-2 cell arrive with probability λ2 and no arrivals occur during a slot with probability 1 − λT .
Finally the mean delay of a random cell equals

λ1
λ2
E[d1 ] +E[d2 ]λT
λT
1 Var[a1 ] + Var[a2 ] + 2Cov[a1 , a2 ]= +.
22λT (1 − λT )E[d] =(2.112)(2.113)We have used expressions (2.110) and (2.111) to obtain this formula. Note that
this expression can (obviously) also be found by taking the first derivative of
expression (2.106) and substituting z by 1. Finally, sinceVar[aT ] =Var[a1 + a2 ]=Var[a1 ] + Var[a2 ] + 2Cov[a1 , a2 ],(2.114)(2.115)

2.4 Cell delay

43

we find1
Var[aT ]E[d] = +.
2 2λT (1 − λT )(2.116)This expression is the same expression as in a single-class queue with a FIFO
scheduling discipline, or, in other words the mean delay of a random cellis independent whether the scheduling discipline is FIFO or there is some
type of priority scheduling discipline. This is even extendable to every workconserving scheduling discipline. This can easily be proven by (the discretisized version of) Little’s law (see Little [1961] and Fiems and Bruneel [2002]).
For each work-conserving scheduling discipline, the distribution of the (total)
system contents is identical and thus leads to the same pgf UT (z) (expression(2.18)), and to a same mean total system contents E[uT ] (expression (2.35)).
Little’s law, in our model given by
E[uT ] =λT E[d],(2.117)then gives a same mean delay for all scheduling disciplines. Indeed, expressions (2.35) and (2.116) satisfy Little’s law.
Little’s law is not only valid for the “total” buffer, but can also be used on“parts of the buffer/cells”. In a priority context, for instance, Little’s law isalso valid for each priority class separately. Or, more precisely,E[uj ] =λj E[dj ],(2.118)for j = 1, 2. It is easily verified that expressions (2.36)-(2.110) and expressions(2.37)-(2.111) respectively satisfy Little’s law.

2.4.6 Calculation of tail probabilities
From the pgf’s of the delay of a class-1 cell, a class-2 cell and a random cell,the tail probabilities can be derived using Darboux’s theorem (Theorem 1.1)
or Bender’s theorem (Theorem 1.3), in a similar way as for the system contents (see subsection 2.1.7). Details about the methods used can be found inthat subsection. We will here only give a brief overview of the method andobtained results.
Class-1 delay
The dominant singularity of D1 (z) (expression (2.92)) is the same as the oneof U1 (z) (also with multiplicity 1), i.e., zH , the dominant zero of z − A1 (z). In

44

Single-slot service times

the neighborhood of this singularity, D1 (z) is given by
D1 (z) ≈(1 − λ1 )zH (zH − 1).
λ1 (A01 (zH ) − 1) (zH − z)

(2.119)Using Darboux’s theorem, we approximate the tail behavior of the delay ofclass-1 cells by
d1 (n) ,Prob[d1 = n]−n
(1 − λ1 ) (zH − 1) zH≈,0λ1 (A1 (zH ) − 1)

(2.120)(2.121)for large enough n. Summing this equation for all n = D + 1, . . . , ∞ gives theprobability that the delay of a class-1 cell exceeds a bound D:
Prob[d1 > D] ≈−D
(1 − λ1 )zH,
λ1 (A01 (zH ) − 1)

(2.122)Sub-busy periods
The tail behavior of the delay of class-2 cells is again a bit more involved because of the appearance of the function V (z) in (2.104), which is only implicitly
known by expression (2.103). The first derivative of V (z) is given by
V 0 (z) =A1 (V (z)),
1 − zA01 (V (z))(2.123)

which, similar as for Y (z), indicates that V (z) has a branch point ẑB , withẑB A01 (V (ẑB )) = 1. In the neighborhood of ẑB , V (z) is approximately given by
V (z) ≈ V (ẑB ) − KV (ẑB − z)1/2 ,(2.124)

with
KV =

s

2A1 (V (ẑB )).
ẑB A001 (V (ẑB ))(2.125)Using Bender’s theorem on the functional equation (2.103) or Darboux’s theorem on (2.124) leads to the tail probabilities v(n) of a sub-busy period initiated by a class-1 cellv(n) =s

A1 (V (ẑB )) −3/2 −nnẑB
2πA001 (V (ẑB ))(2.126)

2.4 Cell delay

45

Class-2 delay
Since V (z) appears in the expression of D2 (z), ẑB is also a branch-point typesingularity of D2 (z). A second singularity of D2 (z) is given by the dominantzTzero ẑL of V (z) − AT (V (z)) on the real axis. It is proved to equal, if ẑL
A1 (zT )exists.
So, similar as for U2 (z) - see subsection 2.1.7 - D2 (z) can be approximated in
the neighborhood of its dominant singularity by:

(1)

K̂2


if ẑL < ẑBẑL − z
(2)D2 (z) ≈K̂2
if ẑL = ẑB

1/2


(ẑB − z)(3)D2 (ẑB ) − K̂2 (ẑB − z)1/2 if ẑL does not exist,(2.127)(i)where the constants K̂2 (i = 1, 2, 3) can be found by investigating D2 (z) (expression (2.104)) in the neighborhood of its dominant singularity. Doing so,
we find(1 − λT )V (ẑL ) (ẑL − 1)
λ2 V 0 (ẑL ) (A0T (V (ẑL )) − 1)
(1 − λT ) (ẑB AT (V (ẑB )) − V (ẑB ))
(2)
K̂2 =
λ2 KV (A0T (V (ẑB )) − 1)
(1 − λT )KV (ẑB − 1) (V (ẑB )A0T (V (ẑB )) − AT (V (ẑB )))
(3)
K̂2 =
.
λ2 (V (ẑB ) − AT (V (ẑB )))2
(1)

K̂2

=

(2.128)(2.129)(2.130)(i)

These are calculated in a similar way as the K2 in expressions (2.67), (2.75)
and (2.71) respectively.
By using Darboux’s theorem on expression (2.127) the tail probabilities of thedelay of the class-2 cells are given byd2 (n) ,Prob[d2 = n](1) −n−1K̂2 ẑL







−n
 K̂2(2) n−1/2 ẑB
√
≈
πẑB




(3)
−n
−3/2
 K̂ n
ẑB

2


p

2 π/ẑB(2.131)
if ẑL < ẑB
if ẑL = ẑB
if ẑL does not exist,(2.132)

46

Single-slot service times(i)with K̂2 , i = 1, 2, 3, given by (2.128), (2.129) and (2.130) respectively. Again,
the first expression shows the typical geometric tail behavior, the third expression the typical non-geometric tail behavior and the second expression
the transition type behavior between the two other types.
The probability that a class-2 cell has a delay that exceeds a bound D is thengiven byProb[d2 > D] ≈d2 (n),ẑ∗ − 1(2.133)

with ẑ∗ the dominant singularity of D2 (z) for D large enough.
Delay random cell
Finally, we calculate the tail probabilities of the delay of a random cell. Its pgf
D(z) is given by expression (2.106). The dominant singularity of this functionis ẑL or ẑB , depending on which is smallest.
Note that zH is also a singularity of D(z), but we will show in this paragraphthat zH > ẑB and thus that zH is never dominant. Firstly, since ẑB satisfies therelation ẑB A01 (V (ẑB )) = 1 and since ẑB is bigger than 1
A01 (V (ẑB )) <1.

(2.134)Furthermore, since A1 (z) and z intersect in zH , A01 (zH ) > 1. This combinedwith (2.134) and the fact that A01 (z) is assumed to be a strictly increasing function, it follows that
V (ẑB ) <zH .

(2.135)Since V (z) = zA1 (V (z)) and since A1 (V (ẑB )) > 1 (since V (ẑB ) > 1) it follows
from the previous inequality that ẑB < zH , and thus zH is never a dominant
singularity of D(z). It is also intuitively clear that - because of the priority
scheduling discipline - the behavior of d(n) for high n will be dominated by
the delay of the class-2 cells.
We return to the calculation of the tail probabilities of D(z). From expression (2.105) and the fact that the dominant singularities of D(z) and D2 (z) areequal, it is easily seen thatd(n) ,Prob[d = n]λ2
≈ d2 (n),λT(2.136)(2.137)for large enough n. Since d2 (n) is approximately calculated in expression(2.132), d(n) is approximately determined.

2.5 Waiting time

47

Finally, the probability that the steady-state delay of a random cell is larger
than a bound D is given by
Prob[d > D] ≈λ2
Prob[d2 > D].
λT(2.138)2.5 Waiting time
The waiting time of a cell, defined as the number of slots a cell has to waitin the queue before getting service, is easily analyzed using the result in theprevious section. Indeed since the service times of all cells are equal to one
slot, the waiting time of a cell equals the delay of that cell minus 1. Thus, thepgf of the steady-state waiting time of a class-1 cell is given by
D1 (z)z
1 − λ1 A1 (z) − 1=.
λ1 z − A1 (z)T1 (z) =(2.139)(2.140)Furthermore the pgf of the steady-state waiting time of a class-2 cell yields
D2 (z)z
1 − λT AT (V (z)) − A1 (V (z))=.
λ2
V (z) − AT (V (z))

T2 (z) =(2.141)(2.142)

Finally, the pgf of the steady-state waiting time of a random cell is given by
T (z) =

1 − λ1 A1 (z) − 1 1 − λT AT (V (z)) − A1 (V (z))+.
λT z − A1 (z)λT
V (z) − AT (V (z))(2.143)

From these pgf’s, performance measures can be calculated as is done in theprevious section. Similar expressions are found as in the previous section, so
we will not go further into detail here.

2.6 Numerical examples
In this section, we will show the influence of the system parameters on theperformance measures calculated throughout this chapter. We will specifically focus on the performance measures of the system contents (analyzed in
section 2.1) and of the cell delay (analyzed in 2.4).

48Single-slot service times

2.6.1 Input processes
We use the example of the output queueing switch, discussed in section 1.7.2,
throughout this section. A conceptual model of such a switch is (again) shownin Figure 2.3. Having (independently distributed) Bernoulli arrivals at the inlets of the switch and having an independent and uniform routing throughout
the switch, A(z1 , z2 ), the pgf of the number of per-slot class-1 and class-2 arrivals to one of the (output) queues, is given by - see section 1.7.2 

λ1
λ2
A(z1 , z2 ) = 1 − (1 − z1 ) − (1 − z2 )
N
N

N

,

(2.144)

with N the number of inlets and with λj the probability that a class-j cell
arrives at a randomly chosen inlet. The marginal pgf AT (z) is then given byN
λT(1 − z),
AT (z) = 1 −N(2.145)

with λT = λ1 + λ2 . The marginal pgf of the number of per-slot arrivals ofclass-j is given byλj
Aj (z) = 1 − (1 − z)
N

N

,

(2.146)

with j = 1, 2. The means of the total, class-1 and class-2 number of per-slot
arrivals are thus given by λT , λ1 and λ2 respectively. The variances of thesethree stochastic variables are given by
λVar[a] =λ 1 −,N(2.147)

with λ equal to λT , λ1 and λ2 respectively. Finally, the covariance of the numbers of per-slot class-1 and class-2 arrivals is given by
Cov[a1 , a2 ] = −

λ1 λ2
.
N

(2.148)This covariance is always negative for finite N , which is intuitively clear sincehaving more arrivals of one class in a slot, means that less arrivals of the otherclass can occur (the maximum number of per-slot cell arrivals is N ). If N → ∞,the arrival processes of both classes are uncorrelated (distributed according toPoisson processes), and the covariance thus tends to 0.

2.6 Numerical examples

49

Figure 2.3: An NxN output queueing switch

2.6.2 Influence of load on moments
Firstly, we will show the influence of the load characteristics on the meansand variances of the system contents and cell delays. The arrival process is
as defined in expression (2.144) with N = 16. We define α as the fraction ofclass-1 arrivals in the overall traffic mix, i.e.,
α,

λ1
.
λT

(2.149)Mean values and variances of the system contents
In Figures 2.4 and 2.5, the mean values and variances of the system contents ofclass-1 and class-2 cells are shown as functions of the total arrival rate, when
α = 0.25, 0.5 and 0.75 respectively. We have also shown the mean value andvariance of the system contents of one class (class-1 or class-2) for α = 0.5
when a FIFO scheduling discipline is applied. Note that in this case the system contents of class-1 and class-2 are identically distributed. These values canbe easily calculated because - in the special case of the arrival process characterized by (2.144) - the joint pgf of the numbers of arrivals of both classes has
the feature that it can be written as AT (αz1 + (1 − α)z2 ). I.e., looking at one(arriving) cell, this cell is of class-1 with probability α and of class-2 with probability 1 − α, irrespective of the type of other arrivals. When the schedulingdiscipline is FIFO, the order of service is random with respect to the type ofthe cells and thus every cell in the system is also of class-1 with probability α
and of class-2 with probability 1 − α. The joint pgf of the system contents ofboth classes is thus given by UT (αz1 + (1 − α)z2 ), with UT (z) the pgf of the50Single-slot service times

5
E[u2]
α=

0.25
0.5
0.75
FIFO (α = 0.5)

4

3

2
E[u1]

1

0
0

0.2

0.4

0.6

0.8

1

λT
Figure 2.4: Mean value of system contents versus the total arrival rate

total system contents (given by expression (2.18)), and the mean and varianceare thus easily obtainable from this pgf. From Figures 2.4 and 2.5, one can see
the influence of the priority scheduling discipline: the mean and the varianceof the number of class-1 cells in the system are severely reduced by the priority scheduling discipline; the opposite holds for class-2 cells. In addition, it isalso clear that the impact of the priority scheduling discipline on the systemcontents is more important if the (total) load is high. Finally, it also becomesapparent that increasing the fraction of class-1 cells in the overall traffic mix increases the amount of class-1 cells in the system while decreasing the amountof class-2 cells.
Similar conclusions can be drawn from Figures 2.6 and 2.7, which show themean value and variance respectively of the system contents of both classes
versus α for λT = 0.3, 0.6 and 0.9. The mean value and variance of the class1 system contents increase with the fraction of class-1 cells in the traffic mix,
while the opposite holds for the mean value and variance of the class-2 systemcontents. As can be seen from both figures, the difference between class-1 andclass-2 system contents for different values of α can be especially large when
the load is high. For high α, the mean and variance of class-1 system contents
can be larger than the mean and variance of the class-2 system contents. This isdue to the fact that most of the arriving cells are of class-1 for high α and thus
the class-1 queue builds up “more” than the class-2 queue (although class-1
cells are served with priority). The most extreme case is when α = 1 and thus
all cells are of type 1, which means that the class-2 buffer stays empty.

2.6 Numerical examples

51

5
Var[u2]
α=

0.25
0.5
0.75
FIFO (α = 0.5)

4

3

2Var[u1]
1

0
0

0.2

0.4

0.6

0.8

1

λT

Figure 2.5: Variance of system contents versus the total arrival rate

5

4
λT =

3

0.3
0.6
0.9

2
E[u2]

1

E[u1]

0
0

0.2

0.4

0.6

0.8

1

α
Figure 2.6: Mean value of system contents versus the fraction of class-1 arrivals

52Single-slot service times

20

15

λT =

10

0.3
0.6
0.9

5

Var[u1]Var[u2]

0
0

0.2

0.4

0.6

0.8

1

α
Figure 2.7: Variance of system contents versus the fraction of class-1 arrivals

Correlation coefficient of class-1 and class-2 system contents
In Figure 2.8, the correlation coefficient ρu1 u2 , which quantifies the correlation
between the number of class-1 and class-2 cells in the system at the beginningof a slot, is shown as a function of the total arrival rate for α = 0.25, 0.5 and
0.75. We see that ρu1 u2 is (slightly) negative when the total load is small, but
becomes positive when the total load is large. The reason for this are twocounteracting mechanisms. The first one is the switch structure: when moreclass-1 cells arrive at the switch, there will be less class-2 cells arriving at thesame time (since the amount of inlets is limited), and vice versa. This negative correlation between cell arrivals of the two priority classes during a slot
shows for small values of λT . For these parameter values, there is virtually
no queueing and the buffer behavior is mainly determined by the number ofarrivals during a single slot. The second mechanism is the priority schedulingdiscipline. As λT (and λ1 ) further increases, more and more cells are being
queued, and the presence of class-1 cells starts to seriously hinder the transmission of class-2 cells, thereby leading to a positive correlation between u1
and u2 . Finally, when λT approaches 1, the total system contents (and thenumber of class-2 cells) approaches infinity, due to the system becoming unstable. As a result ρu1 u2 approaches 0. We have also shown the correlation
coefficient for α = 0.5, when a FIFO scheduling discipline is applied. The
correlation coefficient is in this case larger than when a priority schedulingdiscipline is applied (for α = 0.5). Since the system contents of both classes
go to infinity at the same pace (for α = 0.5) when λT approaches 1, ρu1 u2
approaches 1.

2.6 Numerical examples

53

1
α=

0.25
0.5
0.75
FIFO (α = 0.5)

0.8
0.6
ρu u

1 2

0.4
0.2
0
0

0.2

0.4

0.6

0.8

1

λT

Figure 2.8: Correlation coefficient of system contents versus the total arrival rate

In Figure 2.9, we show the correlation coefficient of the class-1 and class-2
system contents versus the fraction of class-1 cells α, with λT = 0.3, 0.6 and 0.9
respectively. From this figure it is seen that the correlation coefficient increases
with increasing α for α not too high (as Figure 2.8 also indicated). This is
not true for high α though. For higher α the correlation coefficient decreases
with increasing α. This can be understood as follows: since for high α the
arriving cells are mainly from class-1, the class-2 queue does not build up
dramatically. Again, the extreme case is α = 1, i.e., there are no class-2 packets
arriving in the queue. For α = 1, there is no correlation between the numbersof class-1 and class-2 system contents (the class-2 system contents equals 0,
independently of the value of the class-1 system contents).
Mean values and variances of the cell delays
Figures 2.10 and 2.11 show the mean values and the variances of the cell delaysof both classes as functions of the total load for α = 0.25, 0.5 and 0.75. In order to compare with FIFO scheduling, we have also shown the mean value
and variance of the cell delay of any cell in that case. The cell delay is in thisparticular case the same for class-1 and class-2 cells (independently of α), andcan thus be calculated as if there were only one class arriving according to an
arrival process with pgf A(z, z). Note that the mean delay in the FIFO caseequals the mean delay of a random customer in the system with a priority
scheduling discipline. We observe that the influence of a priority schedulingdiscipline is quite large. The mean delay and the variance of the delay ofclass-1 cells reduce considerably compared to a queue with a FIFO scheduling discipline. The price to pay is of course a larger mean and variance of the54Single-slot service times

0.4
0.35
0.3
λT =

0.25
ρu u

0.2

0.3
0.6
0.9

1 2

0.15
0.1
0.05
0

-0.05
0

0.2

0.4

0.6

0.8

1

α

Figure 2.9: Correlation coefficient of system contents versus the fraction of class-1 arrivals

class-2 cell delay. Also note that it follows from these figures that increasing
the fraction of class-1 cells in the overall traffic mix, increases the delay characteristics of class-1 and class-2 cells. This is quite obvious: more class-1 cells in
the traffic mix means that the class-1 arrival rate increases and thus the delay
characteristics of the class-1 cells deteriorates too. Secondly, more class-1 cells
in the traffic mix means that more class-1 cells arrive while class-2 cells are
waiting in the queue. Since these have priority over the class-2 cells, the delayof the class-2 cells increases as well.
In Figures 2.12 and 2.13, the mean values and variances of the delay of a class1, class-2 and random cell respectively are shown as functions of the fraction ofclass-1 cells in the traffic mix, for a total load of 0.6. As expected (and alreadyexplained) the mean delay of a random cell is independent of α. The mean
delay of the class-1 cells is always smaller than the mean delay of a random
cell, while the mean delay of a class-2 cell is always larger (except for the 2boundary cases α = 0 and α = 1: in these cases we have a single-class system(all cells are of class-1 or of class-2 respectively)). The same is valid for thevariances. It is also seen from Figure 2.12 that the mean class-1 and class-2
delay are both increasing functions with α - as already discussed. From Figure
2.13, we conclude that the variance of the delay of a random cell is smallest
for α = 0 and α = 1. In these cases, we have a single-class system with a
FIFO scheduling discipline. For other α values, the variance of the delay of arandom cell is larger. This is intuitively clear: a priority scheduling disciplineis adopted to decrease the delay of a class of cells (class-1) by increasing thedelay of the other cells (class-2 cells). By applying the priority schedulingdiscipline, the variance of the delay of a random cell will increase. As for the2.6 Numerical examples

55

5
E[d2]
α=

4

0.25
0.5
0.75
FIFO

3

E[d1]

2

1

0
0

0.2

0.4

0.6

0.8

1

λT
Figure 2.10: Mean value of cell delays versus the total arrival rate5
Var[d2]
α=

4

0.25
0.5
0.75
FIFO

3

Var[d1]

2

1

0
0

0.2

0.4

0.6

0.8

1

λT

Figure 2.11: Variance of cell delays versus the total arrival rate

56

Single-slot service times

4
E[d1]
E[d2]
E[d]

3.5
3
2.5
2
1.5
1
0.5
0
0

0.2

0.4

0.6

0.8

1

α

Figure 2.12: Mean cell delays versus the fraction of class-1 cells (λ T = 0.6)

mean values, it is seen that the variances of the delay of class-1 and class-2
increase with increasing α.
Concluding this subsection, it is clear that the priority scheduling discipline isespecially effective - in reducing the delay of the high-priority cells - when thefraction of these high-priority cells in the traffic mix is (kept) small.

2.6.3 Influence of second order characteristics of the arrival
process on mean values
From the expressions of the mean class-1 and class-2 system contents and celldelay, it is easily seen that the second order characteristics of the arrival process (variances and covariances) have an influence on these mean values. For
example the mean class-2 system contents and mean class-2 cell delay are seen
to be linearly dependent of the variance of the number of per-slot class-1 arrivals, the variance of the number of per-slot class-2 arrivals and the covariance between the number of per-slot class-1 and class-2 arrivals. From expressions (2.147) and (2.148), it can be seen that increasing the parameter Nof the (two-dimensional) binomial distribution of the arrival process, Var[a1 ],Var[a2 ] and Cov[a1 , a2 ] are increased, while the arrival rates of both classes are
kept constant. In this subsection, we will thus change N in order to study the
influence of the second order characteristics of the arrival process.

2.6 Numerical examples

57

10
Var[d1]Var[d2]Var[d]

8

6

4

2

0
0

0.2

0.4

0.6

0.8

1

α

Figure 2.13: Variance of cell delays versus the fraction of class-1 cells (λ T = 0.6)

System contents
We show the mean system contents of class-1 and class-2 versus the total arrival rate for α = 0.25 and N = 2, 4, 16 and ∞ in Figure 2.14. As can be seenfrom this figure, the second order characteristics play a considerable role in themean system contents. Especially the mean class-2 system contents increases
considerably when N increases. This is because the variance of the number ofarrivals of both classes and the covariance between these two have impact on
the mean class-2 system contents, as opposed to the mean class-1 system contents that is only influenced by the variance of the number of per-slot class-1
arrivals.
Cell delays
In Figure 2.15, the mean class-1 and class-2 cell delay are shown versus thetotal arrival rate for α = 0.25 and N = 2, 4, 16 and ∞. Similar conclusions as
for the mean system contents can be drawn.

2.6.4 Tail probabilities
We have shown in subsections 2.1.7 and 2.4.6 that the tail probabilities of theclass-2 system contents and class-2 cell delay can have three types of behavior,depending on which singularity of U2 (z) or D2 (z) respectively is dominant. In
case of the output queueing switch considered in this section (arrival process
given by expression (2.144) with N = 16), the curves in Figure 2.16 show for58Single-slot service times

5
E[u2]
N= 2
4
16
∞

4

3

2

1
E[u1]
0
0

0.2

0.4

0.6

0.8

1

λT
Figure 2.14: Influence of second order characteristics of arrival process on the meansystem contents for α = 0.25

5
E[d2]
N= 2
4
16
∞

4

3

2
E[d1]
1

0
0

0.2

0.4

0.6

0.8

1

λT
Figure 2.15: Influence of second order characteristics of arrival process on the meancell delay for α = 0.25

2.6 Numerical examples

59

1

Transition type behavior

0.8

system contents
cell delay

0.6
λ2
Geometric behavior

0.4

0.2
Non-geometric behavior
0
0

0.2

0.4

0.6

0.8

1

λ1

Figure 2.16: Regions for tail behavior as a function of the arrival rates of both classes

which combination of class-1 and class-2 arrival rates the transition type behavior occurs for the system contents and cell delay respectively, i.e., for which
combinations of arrival rates the regular pole and the branch point coincide.
Above the curves, the tail behavior is geometric, while below the curves thetail behavior is typically non-geometric. E.g. for the system contents curve in
Figure 2.16, having an arrival rate combination that is located above (below
respectively) the curves means that the regular pole (branch point respectively) of U2 (z) is dominant. For a (λ1 , λ2 )-combination on the curve, these
two singularities coincide. Note that in the area above the linear line (definedby λ1 + λ2 = 1) in Figure 2.16, the total load is larger than 1, and as a result,the system becomes unstable.
Figures 2.17 and 2.18 show the tail behavior of the system contents and celldelay of class-1 and class-2 cells if λ1 = 0.4 and λ2 = 0.1 (non-geometric behavior), approximately 0.21 (transition type behavior) and 0.4 (geometric behavior) respectively. The tail behavior of the system contents and cell delay ofclass-1 cells is of course the same for the three cases, since the arrival processof class-1 cells does not change. We have also compared our approximations
with simulation results (marks in the figures). The figures show that the approximations of the class-1, the geometric and transition type tail behavior ofsystem contents and cell delay are very good in these cases. The approximations of the tails of the non-geometric case are not as good, but still satisfactory.
Note that the fact that the non-geometric asymptotes are in general not nearlyas accurate as the geometric ones is also concluded in Abate and Whitt [1997]- wherein the tail probabilities of the class-2 waiting time in a continuous-timepriority queue are approximated.

60

Single-slot service times

1class-1class-2 non-geo
class-2 transclass-2 geo

0.1
0.01
0.001
0.0001
1e-05
1e-06
1e-07
0

5

10

15

20

n

Figure 2.17: Tail behavior of the class-1 and class-2 system contents for some combinations of class-1 and class-2 arrival rates

1
0.1
0.01
0.001
0.0001
1e-05
class-1class-2 non-geo
class-2 transclass-2 geo

1e-06
1e-07
1e-08
0

5

10

15

20

25

30

n

Figure 2.18: Tail behavior of the class-1 and class-2 cell delay for some combinations ofclass-1 and class-2 arrival rates

2.7 Concluding remarks

61

1
non-geo
trans
geo

1e-05
1e-10
1e-15
1e-20
1e-25
1e-30
1e-35
1e-40
0

20

40

60

80

100

n

Figure 2.19: Tail behavior of the class-2 system contents near the transition from nongeometrical to geometrical behavior

The approximations of the tails are not good in all cases though, as is illustrated in Figure 2.19. In this figure, the tail probabilities of the class-2 system contents are shown, with the parameters of the transition type behaviorof the previous examples (λ1 = 0.4 and λ2 = 0.21). This can be understood as follows: for λ1 = 0.4 constant, we pick three values of λ2 , notably
λ2 = 0.21 (transition type tail), λ2 an infinitesimal amount lower than 0.21
(non-geometric) and λ2 an infinitesimal amount higher than 0.21 (geometrictail). These tail probabilities should be very near to each other, but the figure shows this is not the case. The incorrectness of the geometrical and nongeometrical approximations is due to the single-singularity approximations
and/or the approximation of the respective pgf’s in their dominant singularity. If both singularities lie near to each other, which is the case near thetransition from non-geometric to geometric behavior, the single-singularity
approximation is less accurate.

2.7 Concluding remarks
In this chapter, we studied a fairly easy priority queueing system with singleslot service times. We will extend this model to more general service times in
the next chapters. The usefulness of this chapter is twofold.
Firstly, we have shown the basic principles of the analysis of a discrete-timepriority queue using pgf’s and we demonstrated how to calculate the basic
performance measures. By using a fairly easy model, the insight in the used

62

Single-slot service times

method(s) has not been degraded by too many complexities in the model.
Furthermore, the analyses used in the remaining chapters will be highly basedon this analysis.
Secondly, although the performance measures of the priority queue in thismodel are useful in their own right (e.g. in an ATM context), the (pure) influences of the arrival process on the performance measures are easily deductible. This is because the arrival process is the only “stochastic input” in thismodel. The intuitive explanation of certain behavioral aspects of the priority queue when changing arrival parameters (load, fraction of priority cells in
the traffic mix, second order characteristics of the arrival process, ...) can thus
more easily be explained.

Chapter 3

Non-preemptive priority
In this chapter, we describe the analysis of a queue with a non-preemptive (NP)priority discipline with two priority classes and generally distributed service
times. So, whenever the server becomes available, a high-priority (class-1)
unit will be scheduled next (if any). If no high-priority traffic is present, alow-priority (class-2) unit is served (if any). The service of a unit cannot beinterrupted. Thus when class-1 units arrive while a class-2 unit is in service,
the class-1 units have to wait until the class-2 service is completely finished.
For example in telecommunications, the units are not necessarily all of thesame length in nowadays multimedia packet-based networks (IP networks for
instance). So the model with single-slot service times analyzed in the previous
chapter is a too restrictive model to accurately study the queueing phenomena in such networks. Therefore, we will analyze priority queues with generalservice times in this chapter (and the following chapters). Especially the NP
priority discipline has been proposed for packet-based networks, such as the
Differentiated Service model for IP networks (see [Xiao and Ni 1999], wheretraffic of one class, the Premium Service traffic class, has NP priority over all
remaining traffic. We will furthermore adopt the packet networks terminology, and call the units packets in this chapter. The service time of a packet
then equals the number of slots necessary to transmit the packet.
Continuous-time NP priority queues have been introduced by Cobham [1954],
according to Miller [1960]. In this latter paper, the pgf of the steady-state system contents and the Laplace transform of the steady-state delay of all priority classes - a general number of priority classes are assumed - are found incase of Poisson arrivals and generally distributed service times. The first two
moments of the stochastic variables are calculated from the obtained transform functions. An overview of some other basic (non-)preemptive priority queueing models in continuous-time can be found in the monographs ofKleinrock [1976] and Takagi [1991], and references therein.

64

Non-preemptive priority

Continuous-time NP priority queues with infinite buffer space, one server and nocorrelation between the arrival processes of the different priority classes are analyzed
in [Marks 1973, Miller 1981, Cidon and Sidi 1990, Takine et al. 1990, Stanford
1991, Takahashi and Miyazawa 1994, Takine et al. 1994a, Sugahara et al. 1995,
Takine 1996, 1999, Abate and Whitt 1997, Venkataramani et al. 1997, Boxma
et al. 1999, Subramanian and Srikant 2000, Iida et al. 2001, Drekic and Stafford
2002, Karam and Tobagi 2002] and [Isotupa and Stanford 2002]. Marks [1973]
gives an algorithm for the calculation of the state probabilities in a NP priority queue with negative exponential interarrival and service times. In [Miller
1981], an NP priority queue with Poisson arrivals and exponential service
times is analyzed. The state probabilities of the number of packets of eachclass in the system are presented in explicit recursive formulas. In [Venkataramani et al. 1997], an NP priority queue with a Markov-modulated Poisson
Process (MMPP) as arrival process and with constant service times is studied.
This model is applied in an ATM context (hence the constant service times, seechapter 2 for more details). Sugahara et al. [1995] study an NP priority queuewith two priority classes, where high-priority packets arrive according to a
2-state Markov Modulated Poisson Process (MMPP) and low-priority packets
according to a Poisson process. The service times of all classes are generally
distributed and these distributions may differ for different classes. Systemcontents and waiting time are studied using the supplementary variable technique (which we will also use in chapters 4 and 5). Takine et al. [1990] study apolling system and an NP priority system in parallel (with a general numberof priority classes/polling stations). The arrival process is a Poisson process
and the service times are assumed general. Mean waiting times are obtained.
In [Takine et al. 1994a], a NP priority queue with a general number of priority classes, a Markovian Arrival Process (MAP) and general service times (butidentically distributed for all priority classes) is studied. More precisely, using
matrix-analytic methods and generating function techniques, the mean system contents and mean packet delay are obtained. This analysis is extended
to service times with different distributions for the different classes in [Takine1996] - for two priority classes - and in [Takine 1999] - for a general number ofpriority classes. Cidon and Sidi [1990] have proposed a recursive computationof the steady-state probabilities of the system contents, using the generating
functions of the system contents obtained in [Miller 1960]. In [Takahashi and
Miyazawa 1994], a relationship between the distribution of the system contents and the waiting time is obtained for an NP priority queue. Abate andWhitt [1997] quantify the effect of the priority structure on the low-priority
steady-state delay tail probabilities (in NP and preemptive resume priority
systems). They show that the priority structure tends to make these tail probabilities have a relatively long tail. Boxma et al. [1999] have derived a heavytraffic limit theorem for the low-priority waiting time when the service times
are heavy-tailed. Subramanian and Srikant [2000] calculate the tail probabilities of the low-priority waiting times numerically - from the Laplace-Stieltjes
transform - in an NP priority queue with a Markovian Arrival Process (MAP)65
and general service times. From their numerical studies, they conclude thatthese tail probabilities may be non-exponential. Iida et al. [2001], Karam andTobagi [2002] analyze the delay of the high-priority packets in an NP priority
queue with the arrivals broadcasted by a number of multiplexed sources. Theinterarrival times in the packet stream of each source and the service times ofthe packets are deterministic. In [Iida et al. 2001], this model is used to model
the CBR (Constant Bit Rate) traffic in ATM, while in [Karam and Tobagi 2002]
the delay of voice traffic in the Internet is studied. In both papers, the influence of the packet size on the delay is analyzed. In [Drekic and Stafford
2002], a symbolic computation procedure is proposed to calculate (higher order) moments of the system contents and packet delay - starting from the pgf
or Laplace-Stieltjes transform of these variables - in (general) priority queues.
Isotupa and Stanford [2002] analyze an NP priority queue with Poisson arrivals and phase-type service times. Using matrix-geometric solution techniques, the joint distribution of the number of packets of all classes in thesystem is derived.
Continuous-time multi-server NP priority queues with a general number of priority classes are analyzed in [Williams 1980, Wagner 1997, Altinkemer et al.
1998, Kao and Wilson 1999, Bose and Pal 2002]. In [Altinkemer et al. 1998,
Bose and Pal 2002], a Poisson arrival process and deterministic service times
are assumed. In [Altinkemer et al. 1998] the buffer space is infinite while thebuffer space is assumed to be finite in [Bose and Pal 2002]. In both papers,
approximate results of the mean waiting time of all classes are obtained, using the heavy-traffic assumption. In [Williams 1980, Wagner 1997], the service
times are assumed to be identical for all priority classes. These service times
are assumed to be exponentially distributed in [Wagner 1997] and generally
distributed in [Williams 1980]. In the latter paper the analysis is approximate
while it is exact in [Wagner 1997]. Kao and Wilson [1999] study an NP priority queue with Poisson arrivals and exponential service times (which may
be different for different classes). Using matrix-analytic methods, several performance measures - such as the mean system contents and waiting times - arederived. The Laplace-Stieltjes transforms of the waiting times of each priority
class are calculated.
In most “continuous-time papers” about priority queues, it is assumed thatthe arrival processes of the different priority classes are all mutually uncorrelated. An exception is [Langaris and Katsaros 1995]. Langaris and Katsaros[1995] perform a time-dependent analysis of an NP priority queue with a general number of priority classes and batch arrivals. It is assumed that batches
arrive according to a Poisson distribution and that a batch consists of packets
from several classes. Laplace-Stieltjes transforms of the busy period of eachclass and the general busy period as well as the pgf of the system contents arecalculated.
Discrete-time priority queues with an NP priority discipline and without correlation between the arrival processes of the different priority classes are analyzed in[Rubin and Tsai 1989, Schormans et al. 1991, Choi et al. 1997, Wang et al. 2000]

66

Non-preemptive priorityand [Lee et al. 2003]. In [Rubin and Tsai 1989, Lee et al. 2003], waiting timeand delay of a two-class priority queue where the number of arrivals are i.i.d.
from slot-to-slot and the service times are generally distributed (and can bedifferent for both classes) are studied using pgf’s. In [Schormans et al. 1991],
unfinished work and waiting times are analyzed entirely in the probability
domain. The arrival process is such that of each class maximum one cell arrives per slot. In [Choi et al. 1997], the NP and preemptive resume priority
disciplines are investigated in an ATM packet switch with input buffers andtwo priority classes. Note that the service times are not deterministic (as one
would expect in an ATM context) because a cell at the head of the input queue
is not necessarily switched to the desired output directly, since several cells
can simultaneously request to be sent to the same output, while only one ofthem will effectively be transmitted during that slot. The other cells have to
wait longer than one slot at the head of their queue - which is incorporated in
the service times in the queueing model - leading to service times of more than
one slot. A.o., the mean delay of both classes is obtained. Finally, Wang et al.
[2000] calculate the mean delay in an NP priority queue and use this in theperformance analysis of a multiple-channel slotted ring network with tunabletransmitters and fixed receivers.
Discrete-time NP priority queues with correlation between the arrival processesof different priority classes are studied in [Takahashi and Hashida 1991] and[Walraevens et al. 2000b,c,d, 2002a, 2003b]. In all these systems the service
times are generally distributed and can be different from class-to-class. In[Walraevens et al. 2000b,c,d, 2002a] two-class priority system are analyzed
while the number of priority classes is equal to three in [Walraevens et al.
2003b] and assumed general in [Hashida and Takahashi 1991]. In [Takahashi
and Hashida 1991], the pgf of the delay of all priority classes is calculated,based on delay-cycles. In [Walraevens et al. 2000b,c,d, 2002a, 2003b], the joint
pgf of the system contents of all classes at specific slots is calculated. From
this joint pgf, the joint pgf of the system contents of all classes at random slot
boundaries (in [Walraevens et al. 2000c,d, 2003b]) and the pgf’s of the delaysof all priority classes (in [Walraevens et al. 2000b, 2002a, 2003b]) are obtained.
In this chapter, we describe the analysis of a two-class non-preemptive priority buffer with a discrete structured batch arrival process and general classdependent service times, as in [Walraevens et al. 2000b,c,d, 2002a]. In section
3.2, we calculate the joint pgf of the system contents of both priority classes
at specific slot boundaries. All other pgf’s and performance measures will be
determined, starting from this joint pgf. This procedure is first explained in
more detail in section 3.1. The system contents, the queue contents and theunfinished work at the beginning of random slots are analyzed in sections 3.3,
3.4 and 3.5 respectively. Further, the packet delay and waiting time are studiedin sections 3.6 and 3.7. Finally, we show the impact of the input parameters on
the performance measures through some numerical examples in section 3.8.

3.1 Preliminaries

67

3.1 Preliminaries
Since the service times of the packets are generally distributed, the systemcontents of both classes at the beginning of random slots do not form a Markov
chain (as was the case for single-slot service times discussed in chapter 2). Or
in other words, the knowledge of the system contents at the beginning of slot
k is not enough information to know the system contents at the beginning ofslot k + 1. The solution is to describe the system such that it forms a Markov
chain.
There are 2 main directions: the first is defining a number of supplementary
stochastic variables at the beginning of all slots, so that the system contents
at the beginning of consecutive slots together with these supplementary variables form a Markov chain. This is called the supplementary variable techniqueand is - according to e.g. Chaudhry and Templeton [1983] - first used by Kosten in 1942. The name appears to be due to Cox [1955]. It is for instance used in[Bruneel 1993] for the single-class (i.e. without priorities) version of the buffer
studied in this chapter. A second approach is to look at specific slot boundaries instead of at all slot boundaries. These slot boundaries are chosen in sucha way that the system contents of both classes at the beginning of these (consecutive) specific slot boundaries form a Markov chain. This Markov chain iscalled an embedded Markov chain, since the Markov chain is embedded in the
choice of the chosen slot boundaries.
We will use the latter technique in this section, while we will use the supplementary variable technique in chapters 4 and 5 in the analysis of preemptive
priority queues. Note that this supplementary variable technique can also be
used in the case of the NP priority queue analyzed in this chapter (an example
is found in [Choi et al. 1997]).

3.2 System contents at the beginning of start-slots
We will thus first analyze the system contents at the beginning of so-called
start-slots. These slots are defined as slots at the beginning of which a serviceof a packet (if one available) can start. Note that every slot during which thesystem is empty, is also a start-slot. We denote the system contents of classj packets at the beginning of the l-th start-slot by nj,l (j = 1, 2). In Figure
3.1, a sample of the time axis is shown. Specifically, the location of the startslots is shown in this figure. The set {(n1,l , n2,l ), l ≥ 1} forms a Markov chain,since the numbers of arrivals of both classes are i.i.d. from slot-to-slot and only
random variables during start-slots are involved.
The joint pgf of the nj,l , j = 1, 2, is denoted by Nl (z1 , z2 ), i.e.,
 n n Nl (z1 , z2 ) ,E z1 1,l z2 2,l .

(3.1)

68

Non-preemptive priority

Figure 3.1: Sample of the time-axis in order to show the location of start-slots

Let s∗l indicate the service time of the packet that enters service at the beginning of start-slot l (which is - by definition - regular slot k) if n1,l + n2,l > 0 andequal to 1 if n1,l = n2,l = 0. Or alternatively, s∗l indicates the number of slots
between the beginning of the l-th start-slot and the beginning of the l + 1-th
start-slot. The following system equations are then established:
s∗
l −1
+

n1,l+1 =[n1,l − 1] +n2,l+1 =(X

a1,k+i ;

(3.2)

i=0

Ps∗l −1[n2,l − 1]+ + i=0
a2,k+i if n1,l = 0.
Ps∗l −1n2,l + i=0 a2,k+i
if n1,l > 0(3.3)

These can be explained as follows: a packet of class-1 is served at the beginning of start-slot l if n1,l > 0 and it leaves the system just before start-slot
l + 1. In this case no class-2 packet can be served between start-slots l andl + 1. A class-2 packet can only be transmitted in this time period if no class-1
packets are present in the system at the beginning of the l-th start-slot, i.e., if
n1,l = 0. The system contents at the beginning of start-slot l + 1 are then equal
to the number of packets present at the beginning of the previous start-slot
minus the one served during the epoch between both start-slots, augmented
with the packets that arrive during this same epoch. Notice the similarity
between these system equations and the system equations (2.2)-(2.3) of theprevious chapter. Indeed, when the service times are equal to one slot (as assumed in the previous chapter), all slots are start-slots and thus s∗l = 1 for alll. Equations (3.2)-(3.3) then simplify to (2.2)-(2.3). The procedure followed inthis section to calculate the steady-state joint pgf of the nj,l ’s will thus also be3.2 System contents at the beginning of start-slots

69

similar to the analysis in subsection 2.1.1.
Using system equations (3.2)-(3.3), we derive a relation between Nl (., .) andNl+1 (., .). Taking into account the statistical independence of the random variables s∗l , (n1,l , n2,l ) and (a1,k+i , a2,k+i ), i ≥ 0 respectively, we find - as before,
E[X{Y }] is defined as E[X|Y ]Prob[Y ]  nnNl+1 (z1 , z2 ) ,E z1 1,l+1 z2 2,l+1(3.4)
 Ps∗ −1
∗ −1
P
s
l
l
a
a
(3.5)
=E z1 i=0 1,k+i z2 i=0 2,k+i {n1,l = n2,l = 0} Ps∗ −1Ps∗l −1 alan + i=02,k+i −1{n1,l = 0, n2,l > 0}
+ E z1 i=0 1,k+i z2 2,l


P s∗
Ps∗
l −1 al −1n + i=01,k+i −1 n2,l +i=0 a2,k+i+ E z1 1,l
z2{n1,l > 0} .
s∗l is a stochastic variable that equals 1 if n1,l = n2,l = 0, that has a (conditional)
pgf S2 (z) if n1,l = 0, n2,l > 0 and that has a (conditional) pgf S1 (z) if n1,l > 0.
This leads toNl+1 (z1 , z2 ) =A(z1 , z2 )Prob [n1,l = n2,l = 0]

S2 (A(z1 , z2 ))  n2,l+E z2 {n1,l = 0, n2,l > 0}z2S1 (A(z1 , z2 ))  n1,l n2,l+E z1 z2 {n1,l > 0}z1
S2 (A(z1 , z2 ))=A(z1 , z2 )Nl (0, 0) +[Nl (0, z2 ) − Nl (0, 0)]z2
S1 (A(z1 , z2 ))[Nl (z1 , z2 ) − Nl (0, z2 )] ,
+
z1

(3.6)

(3.7)

with A(z1 , z2 ) the joint pgf of the numbers of per-slot class-1 and class-2 arrivals and Sj (z) the pgf of the service times of class-j packets (j = 1, 2) as
defined in chapter 1. In the remainder we will furthermore use the following
notation:Ej (z1 , z2 ) ,Sj (A(z1 , z2 )),(3.8)

with j = 1, 2.
We assume that the system is stable. Since the scheduling discipline is workconserving and since one server transmits the packets, this implies that the
total arrival load ρT < 1, with ρT = λ1 µ1 +λ2 µ2 (as a reminder, λj is the arrival
rate of class-j and µj is the mean service time of a class-j packet, j = 1, 2). In astable system, Nl (z1 , z2 ) and Nl+1 (z1 , z2 ) converge both to a common steady-70

Non-preemptive priority

state value for l → ∞:N (z1 , z2 ) , lim Nl (z1 , z2 ).
l→∞

(3.9)

By taking the l → ∞ limit of equation (3.7), we obtain:(z1 E2 (z1 , z2 ) − z2 E1 (z1 , z2 ))N (0, z2 )+z1 (z2 A(z1 , z2 ) − E2 (z1 , z2 ))N (0, 0)
N (z1 , z2 ) =.
z2 (z1 − E1 (z1 , z2 ))(3.10)

It now remains for us to determine the unknown function N (0, z2 ) and theunknown parameter N (0, 0). This can be done in two steps. First, we noticethat N (z1 , z2 ) must be bounded for all values of z1 and z2 such that |z1 | < 1
and |z2 | < 1. In particular, this should be true for z1 = Y1 (z2 ), with Y1 (z2 ) ,E1 (Y1 (z2 ), z2 ) and |z2 | < 1 (as explained in the appendix). The above implies
that if we choose z1 = Y1 (z2 ) in equation (3.10), where |z2 | < 1, the denominator of the right-hand side of this equation vanishes. Since N (z1 , z2 ) is a pgf,
the same must then be true for the numerator, yielding
N (0, z2 ) =N (0, 0)

z2 A(Y1 (z2 ), z2 ) − Y2 (z2 ),z2 − Y2 (z2 )(3.11)withY2 (z) ,E2 (Y1 (z), z).

(3.12)An almost fully determined expression for N (z1 , z2 ) can now be derived by
combining equations (3.10) and (3.11):
 z1 (z2 A(z1 , z2 ) − E2 (z1 , z2 ))N (0, 0) +Y2 (z2 )(E1 (z1 , z2 ) − z1 A(z1 , z2 ))+A(Y1 (z2 ), z2 )(z1 E2 (z1 , z2 ) − z2 E1 (z1 , z2 )).
N (z1 , z2 ) =(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))(3.13)

Finally, in order to find an expression for N (0, 0), we put z1 = z2 = 1 and use
de l’Hôpital’s rule in equation (3.13). Therefore, we need the first derivativeof Y1 (z) (at z = 1). Y10 (z) is given by
(1)

(2)

Y10 (z) =E1 (Y1 (z), z)Y10 (z) + E1 (Y1 (z), z)(2)
E1 (Y1 (z), z)=,(1)
1 − E1 (Y1 (z), z)(3.14)(3.15)

3.3 System contents at the beginning of random slots(j)with E1 (x, y) =∂E1 (z1 , z2 )∂zj

71

. Using the definition of E1 (z1 , z2 ) andz1 =x,z2 =y

the fact that Y1 (1) = 1 - we will prove later on that Y1 (z) is a pgf - it follows
that
Y10 (1) =λ2 µ 1,1 − ρ1(3.16)

with ρ1 = λ1 µ1 , the class-1 arrival load. We then obtain N (0, 0):
N (0, 0) =1 − ρT,
1 − ρ T + λT

(3.17)

with λT the total arrival rate. Substituting this expression in (3.13) finalizes
the calculation of N (z1 , z2 ).
We will use expression (3.13) as a starting-point for the analysis of the systemcontents at random slot boundaries and for the analysis of all other stochastic
variables studied in this chapter.
Note that expression (3.13) equals expression (2.13) when the service times are
deterministically equal to 1 slot (i.e., when Ej (z1 , z2 ) = A(z1 , z2 ), j = 1, 2), as
expected.

3.3 System contents at the beginning of randomslots
In this section, we analyze the system contents at the beginning of arbitraryslots. First, we will determine the joint pgf of the steady-state system contents
of both classes. From this pgf, marginal pgf’s and performance measures arecalculated.

3.3.1 Calculation of the joint pgf U (z1 , z2 )Denoting the class-j system contents at the beginning of slot k as uj,k , the joint
pgf of the system contents of both priority classes at the beginning of slot k isdefined as:uu

Uk (z1 , z2 ) ,E[z1 1,k z2 2,k ].

(3.18)In order to derive an expression for Uk (z1 , z2 ), we have to know the statusof the server during slot k. There are 3 possibilities: the server can be idle, a72

Non-preemptive priority

class-2 packet or a class-1 packet can be in service during slot k. This yields
 u
 u
u
u
Uk (z1 , z2 ) =E z1 1,k z2 2,k {no service ] + E z1 1,k z2 2,k {service class-2 ] u1,k u2,k
+ E z1 z2 {service class-1 ],(3.19)

with “no service” and “service class-j” (j = 1, 2) short for the events that there
is no service during slot k and that a class-j packet is being served during slot
k respectively. If slot k is a start-slot, we will assume that it is start-slot l. If
slot k is not a start-slot on the other hand, the last start-slot preceding slot k isdenoted as start-slot l. Equation (3.19) then becomes uu
Uk (z1 , z2 ) =Prob[no service]E z1 1,k z2 2,k |n1,l = n2,l = 0(3.20)
 u1,k u2,k
+ Prob[service class-2]E z1 z2 |n1,l = 0, n2,l > 0 uu+ Prob[service class-1]E z1 1,k z2 2,k |n1,l > 0 .

This can be understood as follows: the server is idle during slot k if there
were no packets in the system at the beginning of start-slot l, a class-2 packet
is being served during slot k if there were no class-1 packets and at least oneclass-2 packet in the system at the beginning of start-slot l and a class-1 packet
is in service during slot k if there was at least one class-1 packet in the systemat the beginning of start-slot l. Thus the three conditions “no service”, “service
class-2 packet” and “service class-1 packet” imply “n1,l = n2,l = 0”, “n1,l =0, n2,l > 0” and “n1,l > 0” respectively. We denote the elapsed service timeof the packet in service (if any) during slot k by s+
k . This is thus the numberof slots between the beginning of start-slot l and the beginning of slot k. The
system contents at the beginning of slot k is a superposition of the systemcontents at the beginning of start-slot l and the arrivals during s+
k , yielding
Uk (z1 , z2 ) =Prob[no service] + Prob[service class-2]
"
+
+
P sk

a

n

× E z1 i=1 1,k−i z2 2,l+Psk+ Prob[service class-1]
"
+

×E

n +
z1 1,lP sk

i=1 a1,k−ii=1 a2,k−in +z2 2,l(3.21)|n1,l = 0, n2,l > 0Ps+ki=1 a2,k−i=Prob[no service]|n1,l > 0##(3.22)Nl (0, z2 ) − Nl (0, 0)
Nl (0, 1) − Nl (0, 0)
Nl (z1 , z2 ) − Nl (0, z2 )+,+ Prob[service class-1]S1,k(A(z1 , z2 ))1 − Nl (0, 1)++ Prob[service class-2]S2,k(A(z1 , z2 ))3.3 System contents at the beginning of random slots

73

with Nl (z1 , z2 ) the joint pgf of the system contents of both classes at the be+ginning of start-slot l (as defined in the previous section) and Sj,k(z) (j = 1, 2)
defined as the pgf of the elapsed service time of the class-j packet in service atthe beginning of slot k.
We denote the steady-state version of Uk (z1 , z2 ) by U (z1 , z2 ), i.e.,(3.23)

U (z1 , z2 ) , lim Uk (z1 , z2 ).
k→∞

We first determine the probabilities of the events “no service”, “service class1” and “service class-2” in steady-state, i.e., for a random slot in steady-state.
These are given by
Prob[no service] =U (0, 0)(3.24)

ρ1
Prob[service class-1] =(1 − U (0, 0))ρTρ2
Prob[service class-2] =(1 − U (0, 0)) .
ρT(3.25)(3.26)

This is found as follows: the server is idle during a random slot iff the system
was empty at the beginning of that slot. This leads to the first expression. On
the other hand, if the server is busy during slot k (with probability 1−U (0, 0)),a class-j packet is being served with probability ρj /ρT (j = 1, 2). Substituting
expressions (3.24)-(3.26) in the steady-state version of expression (3.22) (thusfor k → ∞), we find
1 − U (0, 0)
N (0, z2 ) − N (0, 0)
U (z1 , z2 ) =U (0, 0) +
ρ2 S2+ (A(z1 , z2 ))ρTN (0, 1) − N (0, 0)

N
(z
,
z
)
−
N
(0,
z
)
1
2
2
+ρ1 S1+ (A(z1 , z2 )),1 − N (0, 1)(3.27)

with N (z1 , z2 ) and Sj+ (z) (j = 1, 2) the steady-state versions of Nl (z1 , z2 ) and+Sj,k(z) respectively. Secondly, it is shown in e.g. Bruneel and Kim [1993] that+
Sj (z) yields - keeping in mind that choosing a slot in a larger service time hasa higher probability Sj+ (z) =Sj (z) − 1,µj (z − 1)

(3.28)

for j = 1, 2. We will show the calculations of this pgf - in a more general
setting - further in this chapter. Substituting this expression in (3.27), we find
1 − U (0, 0)
U (z1 , z2 ) =U (0, 0) +
ρT (A(z1 , z2 ) − 1)

λ2 (E2 (z1 , z2 ) − 1)

N (0, z2 ) − N (0, 0)
N (0, 1) − N (0, 0)(3.29)

74

Non-preemptive priority
N (z1 , z2 ) − N (0, z2 )+λ1 (E1 (z1 , z2 ) − 1)
1 − N (0, 1).

Finally, we calculate U (0, 0). Keeping in mind that if the server is idle duringslot k, slot k is a start-slot, U (0, 0) is found as follows:
U (0, 0) = lim Prob[u1,k = u2,k = 0]k→∞(3.30)= lim Prob[n1,l = n2,l = 0 and slot k is a start-slot](3.31)= lim Prob[n1,l = n2,l = 0| slot k is a start-slot](3.32)

k,l→∞

k,l→∞

× Prob[slot k is a start-slot]
There are three possibilities for slot k to be a start-slot: the system is empty
at the beginning of slot k, slot k is the first slot of the service time of a class-1
packet or slot k is the first slot of the service time of a class-2 packet. U (0, 0)
then becomes
1 − U (0, 0) ρ1
1 − U (0, 0) ρ2
U (0, 0) =N (0, 0) U (0, 0) +(3.33)
+
µ1
ρT
µ2
ρT
=1 − ρT ,(3.34)

where we used expression (3.17) for N (0, 0). Finally, using equations (3.13)
and (3.34) in equation (3.29), we derive a fully determined version for U (z1 , z2 ):E1 (z1 , z2 )(z1 − 1)
+ (1 − ρT )(3.35)
z1 − E1 (z1 , z2 )
 z1 E2 (z1 , z2 )(E1 (z1 , z2 ) − 1) (A(Y1 (z2 ), z2 ) − 1) +z2 E1 (z1 , z2 )(1 − E2 (z1 , z2 ))+z1 z2 (E2 (z1 , z2 ) − E1 (z1 , z2 ))×.
(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))U (z1 , z2 ) =(1 − ρT )From this two-dimensional pgf, we calculate some marginal pgf’s in the following subsections.
Note that for the special case of deterministic service times of one slot, expression (3.35) equals expression (2.13), as expected.

3.3.2 The marginal pgf UT (z)From the two-dimensional pgf U (z1 , z2 ), we can derive an expression for the
pgf of the total system contents at the beginning of an arbitrary slot - denoted
by UT (z) - yielding
UT (z) , lim E [z uT ,k ]k→∞(3.36)

3.3 System contents at the beginning of random slots

75(3.37)=U (z, z)

S1 (AT (z))(z − 1) A(Y1 (z), z) − 1+
z − S1 (AT (z))
AT (z) − 1z(z − 1)(S2 (AT (z)) − S1 (AT (z))).
×(z − S1 (AT (z)))(z − Y2 (z))=(1 − ρT )(3.38)In the special case that S1 (z) = S2 (z)(≡ S(z)), i.e., when the distributions of
the service times of class-1 and class-2 priority packets are the same, UT (z)becomes
UT (z) =(1 − ρT )S(AT (z))(z − 1).
z − S(AT (z))(3.39)

This is the expression of the pgf of the system contents in a single-class queuewith AT (z) the pgf of the number of per-slot arrivals, S(z) the pgf of the service times and with a FIFO scheduling discipline (see e.g. Bruneel [1993]). Indeed, if all packets have the same service distribution, the scheduling discipline does not influence the total system contents, as long as the schedulingdiscipline is work-conserving, independent of the actual service times, and aslong as service of packets cannot be preempted. It is also intuitively clear thatwhen S1 (z) 6= S2 (z), the (total) system contents are not equally distributed
when applying a priority or a FIFO scheduling discipline.

3.3.3 The marginal pgf U1 (z)From the two-dimensional pgf U (z1 , z2 ), we derive an expression for the pgf
of the system contents of class-1 packets at the beginning of an arbitrary slot denoted by U1 (z) - yielding
U1 (z) , lim E [z u1,k ](3.40)

k→∞(3.41)=U (z, 1)=(1 − ρ1 )

S1 (A1 (z))(z − 1) 1 − ρT
ρ2 S2 (A1 (z)) − 1, (3.42)+z − S1 (A1 (z))
1 − ρ11 − ρ1 µ2 (A1 (z) − 1)which is found from expression (3.35) and using de l’Hôpital’s rule.
The class-1 contents can be analyzed in an alternative way, namely by looking
at the class-1 system as a single-class system with (multiple) vacations. Indeed,
for class-1 packets it is as if the server goes on vacation when the class-1 system gets empty. During this vacation, a class-2 packet is served, if any, or thevacation only lasts for a slot when no class-2 packets are present in the systemat that time instant. Coming back from a vacation, the server starts serving theclass-1 system again, or takes another vacation when the class-1 system is still
empty, and so on. In the remainder of this subsection, we will call a vacation

76

Non-preemptive priority

when the original system is empty a vacation of type-I and a vacation when aclass-2 packet of the original priority system is served a vacation of type-II. Thusa vacation of type-I lasts one slot, while the length of a vacation of type-II has
the same distribution as a class-2 service time. Since our “constructed” vacation queue is part of a broader class of generalized vacation queues, we can use
the stochastic decomposition property of vacation queues (see e.g. Takagi [1991]
and Fiems [2004]). In the context of our system, this property states that the
pgf U1 (z) of the system contents of the vacation system equals the product of(1)
the pgf U1 (z) of the system contents of the system without vacations and the(2)
pgf U1 (z) of the system contents at the beginning of a random vacation slot.
The first pgf is given by - see e.g. Bruneel [1993] (1)U1 (z) =(1 − ρ1 )S1 (A1 (z))(z − 1).
z − S1 (A1 (z))(3.43)The second pgf is calculated as follows: first a random vacation slot is tagged.
Since the system is in vacation iff the original priority system is not serving
a class-1 packet, the probability that the tagged vacation slot is a slot in avacation of type-I equals:
Prob[vacation slot type-I] =Prob[no service|no service or service class-2](3.44)
Prob[no service]=
Prob[no service or service class-2]
1 − ρT=,
1 − ρ1(3.45)(3.46)and thus
Prob[vacation slot type-II] =1 −=1 − ρT
1 − ρ1ρ2.
1 − ρ1(3.47)(3.48)

When a vacation is of type-I, it lasts one slot and the vacation system is empty
at the beginning of that slot (the server of the original system is idle during
this slot). When a vacation slot is of type-II, the original system is serving
a class-2 packet. Since the vacation system was empty at the beginning of
the vacation which the tagged vacation slot is part of, the system contents atthe beginning of the tagged vacation slot then equals the number of arrivals
during the elapsed part of the vacation (or - translated to the original system- the number of class-1 packet arrivals during the elapsed part of a class-2

3.3 System contents at the beginning of random slots

77

(2)

service time). U1 (z) thus equals(2)

U1 (z) =Prob[vacation slot type-I]
S2 (A1 (z)) − 1µ2 (A1 (z) − 1)
1 − ρTρ2 S2 (A1 (z)) − 1=+.
1 − ρ11 − ρ1 µ2 (A1 (z) − 1)

(3.49)+ Prob[vacation slot type-II](3.50)

Using expressions (3.43) and (3.50) in the stochastic decomposition property
(1)

(2)

U1 (z) =U1 (z)U1 (z),(3.51)

then indeed yields expression (3.42) for U1 (z).

3.3.4 The marginal pgf U2 (z)The pgf of the class-2 system contents is also calculated from U (z1 , z2 ) (expression (3.35)), yielding
U2 (z) , lim E [z u2,k ](3.52)=U (1, z)(3.53)

k→∞=(1 − ρT )S2 (A2 (z))(z − 1) A(Y1 (z), z) − 1.
z − Y2 (z)A2 (z) − 1(3.54)

3.3.5 Calculation of moments
In this subsection, we give the expressions of the mean total, class-1 and class2 system contents respectively.
The mean total system contents is found by taking the first derivative of expression (3.38) and substituting z by 1:
E[uT ] =UT0 (1)=µ1 Var[aT ] µ1 λ2 (µ2 − µ1 )Var[a1 ] (µ2 − µ1 )Var[a2 ]
ρT
+
−
+
2
2(1 − ρT )2(1 − ρT )(1 − ρ1 )
2(1 − ρT )(λ1 Var[s1 ] + λ2 Var[s2 ])(λ1 (1 − ρ1 ) + λ2 (1 − µ2 λ1 ))+2(1 − ρT )(1 − ρ1 )λ1 λ2 (µ2 − 1)(µ2 − µ1 ).
+2(1 − ρ1 )(3.55)(3.56)

Note that this expression simplifies considerably in the special case that theservice times of both classes are equally distributed, or more specifically - in

78

Non-preemptive priority

the case of the mean total system contents - when µ1 = µ2 (= µ) and Var[s1 ] =Var[s2 ](= Var[s]), yieldingE[uT ] =ρTµVar[aT ]λ2 Var[s]++ T.
22(1 − ρT ) 2(1 − ρT )(3.57)As expected (see also the discussion in subsection 3.3.2), this is the same expression as for the mean system contents in a single-class queue with a FIFO
scheduling discipline with aT the number of arrivals in a random slot (withmean λT ) and s the service time of a random packet (with mean µ).
Furthermore, the mean class-1 system contents is found by taking the first
derivative of U1 (z) and substituting z by 1:
E[u1 ] =U10 (1)=(3.58)
λ21 Var[s1 ]ρ1µ1 Var[a1 ]λ1 λ2 (µ2 (µ2 − 1) + Var[s2 ])
+
+
+
.
2
2(1 − ρ1 )
2(1 − ρ1 )
2(1 − ρ1 )(3.59)The sum of the first three terms of this expression equals the mean system contents in a single-class system with only class-1 arrivals (see also the resemblance with expression (3.57)) while the last term of this expression represents
the influence of the class-2 traffic on the mean class-1 contents. It is seen thatthe class-2 arrival rate and the mean and variance of the service times of class2 packets influence the mean class-1 system contents, while the variance of thenumber of per-slot class-2 arrivals does not.
Finally, the mean class-2 system contents is given by(3.60)

E[u2 ] =U20 (1)=µ21 λ2 Var[a1 ]µ2 Var[a2 ] µ1 Cov[a1 , a2 ]
ρ2
+
+
+
2
2(1 − ρT )(1 − ρ1 ) 2(1 − ρT )1 − ρTλ2 (λ1 Var[s1 ] + λ2 Var[s2 ]) ρ1 λ2 (µ2 − 1)+−.
2(1 − ρT )(1 − ρ1 )
2(1 − ρ1 )(3.61)

It is easily verified that equations (3.56), (3.59) and (3.61) satisfy E[uT ] =E[u1 ] + E[u2 ].
In a similar way, expressions for the variance (and higher moments) of thesystem contents can be calculated by taking the appropriate derivatives of therespective pgf’s. As in chapter 2, we will not show the expressions of thehigher moments, but we will show figures of second order moments in the
numerical examples later on.

3.3 System contents at the beginning of random slots

79

3.3.6 Calculation of tail probabilities
In this subsection, we show (approximate) expressions of the tail probabilities of the total, class-1 and class-2 system contents, i.e., we approximate
Prob[uT = n], Prob[u1 = n] and Prob[u2 = n] for high enough n. We will not
go into (much) detail about the calculations, but we refer to the corresponding
subsection in the previous chapter (subsection 2.1.7).
Note that we assume for the reasoning in the remainder that the pgf’s of thearrival and service processes (AT (z), the Aj (z) and the Sj (z)) and their derivatives go to infinity for z equal to their radii of convergence or for z → ∞(which is correct for most ’normally’ applied arrival distributions). For mostpgf’s that do not fulfil these assumptions, the reasoning in this subsection canbe adjusted, but this is not the main topic of this dissertation (see also section
2.1.7).
Since in the expressions of the pgf’s UT (z) and U2 (z) the function Y1 (z) appears, we will first show the behavior of this function in its dominant singularity.

Behavior of Y1 (z) and Y2 (z) in the neighborhood of the dominant branchpoint
Y1 (z) is implicitly defined as Y1 (z) = E1 (Y1 (z), z). As discussed in subsection
2.1.7, this function has a dominant branch-point singularity zB where Y10 (z)becomes infinite, i.e.,(1)(3.62)E1 (Y1 (zB ), zB ) =1,(j)with E1 (x, y) =∂E1 (z1 , z2 )∂zj

, j = 1, 2. In the neighborhood of thisz1 =x,z2 =y(dominant) singularity, Y1 (z) is approximately given by
Y1 (z) ≈Y1 (zB ) − KY1 (zB − z)

1/2,

(3.63)

with
v
u (2)
u 2E (Y1 (zB ), zB )1
KY1 =t (11),E1 (Y1 (zB ), zB )(3.64)

which is found by substituting z = zB in expression (3.63) and using the definition of Y1 (z). Using the definition E1 (z1 , z2 ) = S1 (A(z1 , z2 )), this formula is80

Non-preemptive prioritytransformed intovuu
K Y1 = t

2A(2) (Y1 (zB ), zB )A(11) (Y1 (zB ), zB ) + S100 (A(Y1 (zB ), zB )) A(1) (Y1 (zB ), zB )

3 . (3.65)

zB is also a branch-point of Y2 (z), sincehi
Y20 (z) =S20 (A(Y1 (z), z)) A(1) (Y1 (z), z)Y10 (z) + A(2) (Y1 (z), z) .

(3.66)

Thus in the neighborhood of zB , we find√Y2 (z) ≈Y2 (zB ) − KY2 zB − z,

(3.67)

KY2 =KY1 S20 (A(Y1 (zB ), zB ))A(1) (Y1 (zB ), zB ).

(3.68)

withTotal system contents
We now concentrate first on the total system contents. In general, Y1 (z) appears in the expression of UT (z). In the special case of S1 (z) = S2 (z) for all z(i.e., when S1 (.) and S2 (.) are identical functions), this is not the case though.
We will first concentrate on this special case and later on discuss the tail probabilities of uT when S1 (z) 6= S2 (z).

When S1 (z) = S2 (z), we have expression (3.39) for UT (z). The dominant
singularity of this expression is the zero on the positive real axis (> 1) of z −S1 (AT (z)), denoted as zT , and this is an ordinary pole with multiplicity 1. In
the neighborhood of this pole, UT (z) is thus approximated byKT,zT − z(3.69)(1 − ρT )zT (zT − 1).
0
S1 (AT (zT ))A0T (zT ) − 1(3.70)UT (z) ≈with
KT =Using Darboux’s theorem, the tail probabilities of uT are thus given byuT (n) ,Prob[uT = n]
=KT zT−n−1 ,(3.71)(3.72)

3.3 System contents at the beginning of random slots

81

andProb[uT > L] =uT (L).
zT − 1(3.73)In the case that S1 (.) 6= S2 (.), the behavior of UT (z) is more complicated. In
this case, zB is also a (branch-point) singularity of UT (z). Two more singularities may play a role, namely the respective zeros of z − S1 (AT (z)), i.e., zT andof z − Y2 (z), denoted as zL on the real positive axis (with z > 1). We may thus
have quite some more different cases depending on which singularities are
dominant. However since it is for general S1 (z) and S2 (z) not clear which singularities may (or may not) be dominant, we will not go in further detail about
this. For specific pgf’s of the service times however the tail probabilities of thetotal system contents can be calculated by studying the behavior of UT (z) in
the neighborhood of its dominant singularity and using Darboux’s theorem(as is done in the previous chapter and as will be done in the remainder of thissection).
Class-1 system contents
The dominant singularity zH of U1 (z) is the dominant zero of z − S1 (A1 (z))
on the positive real axis (> 1) and this singularity is a pole with multiplicity
1 (for more details see subsection 2.1.7). In the neighborhood of this pole, we
approximate U1 (z) by
U1 (z) ≈K1,
zH − z(3.74)withK1 =[(1 − ρT )(A1 (zH ) − 1) + λ2 (S2 (A1 (zH )) − 1)](zH − 1)zH.
(A1 (zH ) − 1)(S10 (A1 (zH ))A01 (zH ) − 1)

(3.75)

Using Darboux’s theorem on expression (3.74), we findu1 (n) =Prob[u1 = n]−n−1≈K1 zH.

(3.76)(3.77)

andProb[u1 > L] ≈for large enough n and L.

−L
K1 z H.
zH − 1(3.78)

82

Non-preemptive priority

Class-2 system contents
From expression (3.54) it is seen that U2 (z) has 2 important singularities, thesingle pole zL and the branch point zB , with zL the (dominant) zero of z−Y2 (z)(1)
and zB the (dominant) branchpoint of Y1 (z) (thus with E1 (Y1 (zB ), zB ) = 1).
The tail behavior of the system contents of class-2 packets is thus characterized
by zL or zB , depending on which is the dominant (i.e., smallest) singularity.
Three different types of tail behavior may thus occur, namely when zL is dominant, when zL = zB and when zB is dominant. In those three cases, U2 (z) isapproximated in the neighborhood of its dominant singularity by:

(1)

K

 2
if zL dominant zL − z(2)U2 (z) ≈K2

if zL = zB dominant

1/2


(z
−
z)
B



(3)
1/2
U2 (zB ) − K2 (zB − z)
if zB dominant,(3.79)(i)with the constants K2 equal to(1 − ρT )S2 (A2 (zL )) (zL − 1) (A(Y1 (zL ), zL ) − 1)
(Y20 (zL ) − 1) (A2 (zL ) − 1)
(1 − ρT )S2 (A2 (zB )) (zB − 1) (A(Y1 (zB ), zB ) − 1)(2)
K2 =KY2 (A2 (zB ) − 1)
(1 − ρT )S2 (A2 (zB )) (zB − 1)(3)
K2 =(zB − S2 (A(Y1 (zB ), zB ))) (A2 (zB ) − 1)
KY2 (A(Y1 (zB ), zB ) − 1)(1).
× KY1 A (Y1 (zB ), zB ) −zB − S2 (A(Y1 (zB ), zB ))
(1)

K2

=

(3.80)(3.81)(3.82)

Using Darboux’s theorem once again, we find the tail probabilities of the class2 system contents for the three possible cases:and (1) −n−1K2 z L
if zL dominant





 (2) −1/2 −n

K2 n
zB
if zL = zB dominant√u2 (n) ≈
z
π
B




(3) r

K
zB −3/2 −n


 2
n
zB if zB dominant,2πProb[u2 > L] ≈u2 (L),z∗ − 1(3.83)(3.84)

3.4 Queue contents

83

with z∗ the dominant singularity and which is found by inverting (U2 (z) −1)/(z − 1), the z-transform of the Prob[u2 > n], n ≥ 0 (see subsection 2.1.7 formore details).

3.4 Queue contents
The queue contents - defined as the number of packets in the queue (thuswithout the possible one in the server), is easily derived from the system contents. We denote the queue contents of class-j at the beginning of the k-th slot
by qj,k (j = 1, 2). We relate the queue contents at the beginning of the k-th slot
to the system contents at the beginning of the last start-slot preceding this slot.
We denote this start-slot by start-slot l (when slot k is a start-slot it is assumed
to be start-slot l). As in subsection 3.3, the server will be in one of three states:
no service during slot k, a class-1 packet is served during slot k or a class-2
packet is served during slot k. A similar analysis can thus be performed asin subsection 3.3, leading to a similar expression as expression (3.29) for thejoint pgf Q(z1 , z2 ) of the steady-state class-1 and class-2 queue contents at the
beginning of a random slot: qq
Q(z1 , z2 ) = lim E z11,k z22,k(3.85)

k→∞1 − U (0, 0)
ρT (A(z1 , z2 ) − 1)

λ2 (E2 (z1 , z2 ) − 1) N (0, z2 ) − N (0, 0)z2
N (0, 1) − N (0, 0)(3.86)λ1 (E1 (z1 , z2 ) − 1) N (z1 , z2 ) − N (0, z2 )+.
z1
1 − N (0, 1)=U (0, 0) +This expression varies from expression (3.29) in the second and third term: inthe second (third respectively) term an extra division by z2 (by z1 ) respectively is added. This is done because the second (third respectively) term gives
the partial pgf of the queue contents in case a class-2 (class-1 respectively)
packet is served during slot k (and thus the queue contents of class-2 (class-1
respectively) is one less than the class-2 (class-1 respectively) system contents).
Substituting N (z1 , z2 ) by its expression (3.13) yields
z1 − 1+ (1 − ρT )(3.87)
z1 − E1 (z1 , z2 )z (E (z , z ) − 1) + z2 (1 − E1 (z1 , z2 ))(A(Y1 (z2 ), z2 ) − 1) 1 2 1 2+E1 (z1 , z2 ) − E2 (z1 , z2 ).
×(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))Q(z1 , z2 ) =(1 − ρT )From this expression, marginal pgf’s, moments and tail probabilities of thetotal, the class-1 and the class-2 queue contents can be calculated as is done insection 3.3 for the system contents.

84

Non-preemptive priority

Figure 3.2: Service time of the packet in service during slot k

3.5 Unfinished work
The total unfinished work at the beginning of slot k, denoted by wT,k , isdefined as the number of slots it takes to serve all packets in the system at the
beginning of slot k, when no new packets arrive from slot k on. Furthermore,
the unfinished work of class-j (j = 1, 2) at the beginning of slot k, denotedby wj,k , is defined as the number of slots of the total unfinished work that are
effectively spent on serving class-j packets.
As opposed to single-slot service times (see section 2.3), the unfinished workand the system contents are not identical stochastic variables in this case. We
define Wk (z1 , z2 ) as the pgf of the unfinished work at the beginning of slot k,
or

 w
w
Wk (z1 , z2 ) ,E z1 1,k z2 2,k .

(3.88)We relate the unfinished work at the beginning of the k-th slot to the systemcontents at the beginning of the last start-slot preceding this slot. We denote
this start-slot by start-slot l (when slot k is a start-slot it is assumed to be thel-th start-slot). As explained in subsection 3.3, the server is in one of threestates: no service during slot k, a class-1 packet is served during slot k or aclass-2 packet is served during slot k. We denote the service time of the packet
in service during slot k by s∗k and its elapsed part by s+
k . The latter randomvariable is the amount of service that the packet served has already received
at the beginning of slot k (see Figure 3.2).
The following relationships between the wj,k and the nj,l can be obtained:
1. The server is idle during slot k yielding
wj,k =0,
since the system is empty when the server is idle.

(3.89)

3.5 Unfinished work85

2. A class-2 packet is in service during slot k (implying that n1,l = 0, n2,l >0):+

sk a1,k−i
X (k−i)X
s1,mw1,k =(3.90)

i=1 m=1n2,l −1

w2,k =s∗k − s+
k



+

X

m=1

+

sk a2,k−iX
X (k−i)s̃2,m +
s2,m ,(3.91)

i=1 m=1

with the s̃2,m the service times of the class-2 packets already in the queueat the beginning of the ongoing service (thus without the packet in ser(k−i)
vice during slot k), the sj,m ’s (1 ≤ i ≤ s+k , j = 1, 2) the service timesof the class-j packets that arrived during slot k − i. w1,k equals the sumof the service times of the class-1 packets that arrived during s+
k . w2,kequals the sum of the residual service time of the packet in service (thefirst term), the superposition of the service times of the class-2 packets
present in the queue at the beginning of start-slot l (the second term) andthe superposition of the service times of the class-2 packets that arrived
during the elapsed service time (the third term).
3. A class-1 packet is in service during slot k (i.e., n1,l > 0), yielding
n1,l −1

w1,k =

w2,k =s∗k − s+
k
n2,l
X

m=1



+

X

m=1
+

+

sk a1,k−iX
X (k−i)s̃1,m +
s1,m

(3.92)

i=1 m=1

sk a2,k−iX
X (k−i)s̃2,m +
s2,m ,(3.93)

i=1 m=1

with the s̃1,m the service times of the class-1 packets already in the queueat the beginning of the ongoing service.
Taking the z-transform of these equations, we find
Wk (z1 , z2 )=Prob[no service] + Prob[service class-2](3.94)"#++
Psk Pa2,k−i (k−i)
Psk Pa1,k−i (k−i)
+
∗
s
s
−s
+
s
(
)
k
m=1
2,m
i=1
k
× E z1 i=1 m=1 1,m z2|service class-2
 Pn −12,ls̃
× E z2 m=1 2,m |service class-2+ Prob[service class-1]#"
Pa1,k−i (k−i) Ps+
P s+
Pa2,k−i (k−i)
k
k
s1,m
s2,m
(s∗k −s+
m=1
m=1
i=1
i=1
k )+
|service class-1
× E z1z2

86Non-preemptive priority
 Pn −1

Pn2,l
1,l
s̃1,m
m=1
m=1 s̃2,m
× E z1
z2|service class-1 ,where we specifically used the independence between the nj,l (j = 1, 2) and+(s∗k , s+k ) (and the arrivals during sk ) respectively under the condition that aclass-1 or class-2 service is ongoing. Since s+
k is the elapsed part of the service
time s∗k , both variables are mutually correlated and we defineh + ∗iSj∗ (x, z) = lim E xsk z sk |service class-j .
k→∞(3.95)We denote the steady-state version of Wk (z1 , z2 ) by W (z1 , z2 ), i.e.,
W (z1 , z2 ) , lim Wk (z1 , z2 ).
k→∞(3.96)

Letting k → ∞, using the definitions of S2∗ (x, z) and S1∗ (x, z) and substituting
expressions (3.24)-(3.26) and expression (3.34) in expression (3.94), yield
W (z1 , z2 ) =(1 − ρT ) + ρ2 S2∗ (+ ρ1 S1∗ (A(S1 (z1 ), S2 (z2 ))N (0, S2 (z2 )) − N (0, 0), z2 )z2
S2 (z2 )(N (0, 1) − N (0, 0))(3.97)

A(S1 (z1 ), S2 (z2 ))N (S1 (z1 ), S2 (z2 )) − N (0, S2 (z2 )), z1 ),z1
S1 (z1 )(1 − N (0, 1))with N (z1 , z2 ) the joint pgf of the steady-state class-1 and class-2 contents atthe beginning of a randomly chosen start-slot. Note that we used the fact that
n1,l = 0, n2,l > 0 (n1,l > 0 respectively) when a class-2 (class-1 respectively)
service is ongoing during slot k.
We still have to calculate the Sj∗ (x, z) (j = 1, 2). First we note that+∗∗∗
Prob[s+j = n, sj = m] = Prob[sj = n|sj = m]Prob[sj = m].

(3.98)Taking into account that an arbitrary class-j service slot is more likely to bechosen in a larger service time, we findProb[s∗j = m] =msj (m),µj(3.99)

with sj (m) the pmf of the service times of class-j packets. Furthermore it iseasily seen that∗
Prob[s+j = n|sj = m] =1,
m

(3.100)3.6 Packet delay87

for n = 0, . . . , m − 1. Expression (3.98) thus becomes∗
Prob[s+j = n, sj = m] =sj (m),µj(3.101)for n = 0, . . . , m − 1 (and 0 for n ≥ m). Taking the (two-dimensional) ztransform of this expression leads to
Sj∗ (x, z) =Sj (xz) − Sj (z),µj (x − 1)

(3.102)for j = 1, 2. Note that Sj+ (z) defined in subsection 3.3.1 equals the marginal
pgf Sj∗ (z, 1). Thus it can be seen from (3.102) that expression (3.28) is indeed
valid.
Substituting this expression and expression (3.13) in (3.97), we find a fully
determined version for W (z1 , z2 ):A(S1 (z1 ), S2 (z2 ))(z1 − 1)
+ (1 − ρT )(3.103)z1 − A(S1 (z1 ), S2 (z2 ))A(S1 (z1 ), S2 (z2 ))(z1 − z2 )(A(Y1 (S2 (z2 )), S2 (z2 )) − 1)×
(z1 − A(S1 (z1 ), S2 (z2 )))(z2 − A(S1 (z1 ), S2 (z2 )))S2 (z2 ) − E2 (S1 (z1 ), S2 (z2 ))×.
S2 (z2 ) − Y2 (S2 (z2 ))W (z1 , z2 ) =(1 − ρT )From this joint pgf, marginal pgf’s and performance measures can be calculated as is done in section 2.1. It is seen that substituting S1 (z) = S2 (z) = z
in this equation yields the corresponding expression of W (z1 , z2 ) in chapter 2(expression (2.86)).

3.6 Packet delay
The packet delay is defined as the total time period a tagged packet spends
in the system, or more precisely, the number of slots between the end of thepacket’s arrival slot and the end of its departure slot. As before, we denote thesteady-state packet delay of a tagged class-j packet by dj and its pgf by Dj (z)(j = 1, 2). Furthermore, the steady-state packet delay of a random packet isdenoted by d with pgf D(z). Before deriving expressions for D1 (z), D2 (z) andD(z), we first define some notions and stochastic variables we will frequently
use in this section.
In the next subsections, we tag a packet. We denote the arrival slot of thetagged packet by slot k. If slot k is a start-slot, it is assumed to be start-slot l. If
slot k is not a start-slot on the other hand, the last start-slot preceding slot k is

88

Non-preemptive priority

Figure 3.3: Service time of the packet in service during the tagged packet’s arrival slot

assumed to be start-slot l. We denote the number of class-j packets that arrive
during slot k, but which are served before the tagged packet by fj,k (j = 1, 2).
We furthermore denote the service time of the tagged class-j packet by ŝj (j =1, 2). We finally denote the service time and the elapsed service time of thepacket in service (if any) during the arrival slot of the tagged packet by s∗k ands+k respectively (see Figure 3.3). Note that these latter two stochastic variables
have the same distributions as the stochastic variables with the same notationin section 3.5 (see Figure 3.2), since the arrival slot of a random tagged packet
is basically identical to a random slot (for i.i.d. per-slot arrivals). Therefore,
we use the same notations in this section as in the previous section.

3.6.1 Pgf D1 (z) of the class-1 packet delay
We tag a class-1 packet. There are 3 possibilities when the tagged packet arrives:
1. The server is idle during slot k, yielding

d1 =

f1,k
X

(k)

s1,m + ŝ1 ,(3.104)m=1(k)with the s1,m ’s the service times of the class-1 packets that arrived during slot k, but that are served before the tagged class-1 packet.
2. A class-2 packet is in service during slot k, yielding+

d1 =(s∗k − s+k − 1) +(k−i)

sk a1,k−if1,kX (k−i) XX(k)s1,m + ŝ1 ,
s1,m +
i=1 m=1(3.105)m=1

with s1,m (0 ≤ i ≤ s+k ) the service time of the m-th class-1 packet that
arrived during slot k−i. The residual service time of the packet in service

3.6 Packet delay

89

during slot k contributes in the first term, the service times of the class-1
packets in the system at the beginning of slot k contribute in the second
term, the service times of the class-1 packets arrived during slot k, but
served before the tagged class-1 packet contribute in the third term, andfinally the service time of the tagged class-1 packet itself contributes in
the last term.
3. A class-1 packet is in service during slot k yielding
n1,l −1d1 =(s∗k − s+k − 1) +

X

m=1

+

sk a1,k−i
f1,kX
X (k−i) X(k)s̃1,m +
s1,m +
s1,m + ŝ1 .
i=1 m=1m=1(3.106)The difference with the previous situation is that there may be multiple
class-1 packets in the buffer (apart from the one in service) at the beginning of start-slot l, which contribute to the tagged packet’s delay. If
we denote by s̃1,m the service times of the class-1 packets already in thequeue at the beginning of the ongoing service (thus without the packet
in service during slot k), then this condition is quantified by the second
term in the right-hand side of the above expression.
Using these equations, we derive an expression for D1 (z):
D1 (z) =E z d1 {no service} + E z d1 {service class-2}+ E z d1 {service class-1} Pf
1,k (k)=E z m=1 s1,m +ŝ1
1 − ρT
Pa1,k−i (k−i)
P s+
+
∗
k
+ ρ2 E z sk −sk −1+ i=1 m=1 s1,m |service class-2
Pa1,k−i (k−i)
P s+
k
s1,m
s∗
−s+
−1+ i=1km=1k|service class-1+ ρ1 E z
 Pn −1
1,l×E z m=1 s̃1,m |service class-1 ,(3.107)(3.108)where we used that Prob[no service]=1 − ρT , Prob[service class-2]=ρ2 andProb[service class-1]=ρ1 (see section 3.3). In the third term, we also used the
independence of the number of class-1 packets in the queue at the beginningof start-slot l and the number of packets arriving between start-slots l andl + 1 (under the condition that a class-1 packet is being served between thestart-slots). This expression can be further transformed by keeping in mind
that n1,l = 0, n2,l > 0 (n1,l > 0 respectively) when a service of a class-2 (class-1

90Non-preemptive priority

respectively) packet is ongoing, yieldingwith
A1 (S1 (z))


, z)
S2∗ (
(1)
z
D1 (z) =F1 (S1 (z))S1 (z) 1 − ρT + ρ2z
A1 (S1 (z))
S1∗ (, z) N (S (z), 1) − N (0, 1) 
1
z
+ρ1
,
z
S1 (z)(1 − N (0, 1)) (1)F1 (z) , lim E[z f1,k ](3.109)(3.110)k→∞

S2∗ (x, z) , lim E[xsk z sk |service class-2]+∗(3.111)+∗(3.112)k→∞

S1∗ (x, z) , lim E[xsk z sk |service class-1].
k→∞

(1)

F1 (z) was already calculated in subsection 2.4.1:(1)

F1 (z) =A1 (z) − 1,
λ1 (z − 1)

(3.113)and the Sj∗ (x, z) (j = 1, 2) were already calculated in section 3.5:
Sj∗ (x, z) =Sj (xz) − Sj (z).
µj (x − 1)

(3.114)

We now obtain a fully determined expression for D1 (z) from equation (3.109)
together with equations (3.13), (3.113) and (3.114):
1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1
D1 (z) =λ1 z − A1 (S1 (z)) S1 (z) − 1
ρ2 S2 (z) − 1
1 − ρT.
+
1 − ρ11 − ρ1 µ2 (z − 1)
(3.115)Note that the stochastic decomposition property discussed in subsection 3.3.3 forthe class-1 system contents, is also apparent in this expression of the pgf of thedelay of the class-1 packets: the first factor of expression (3.115) equals the pgf
of the packet delay in a single-class system with a FIFO scheduling discipline
and the second factor equals the influence of the class-2 packets on the pgf ofthe class-1 packet delay. This influence is zero with probability (1−ρT )/(1−ρ1 )and equals a residual class-2 service time with probability ρ2 /(1 − ρ1 ).

3.6 Packet delay91

3.6.2 Pgf D2 (z) of the class-2 packet delay
Because of the priority discipline, finding an expression for D2 (z) will be a
bit more involved. We now tag a class-2 packet that enters the buffer duringslot k. We will again use the notion of sub-busy periods to analyze the class-2
packet delay, as in the previous chapter. In this case, we define two kinds of
sub-busy periods, i.e., sub-busy periods initiated by a class-1 packet and sub-busy
periods initiated by a class-2 packet.
The first type is defined as follows: it starts at the beginning of the slot theinitiating class-1 packet enters the server. Assume that at that time instant mother class-1 packets are present in the system. The sub-busy period then ends
at the beginning of the slot where - for the first time - the number of class-1
packets in the system equals m − 1, i.e., one less than at the beginning of the
sub-busy period. Or in other words, the sub-busy period initiated by a class-1
packet is the period necessary to decrease the number of class-1 packets in thesystem by 1.
The second type - a sub-busy period initiated by a class-2 packet - is defined
as follows: it starts at the beginning of the slot the initiating class-2 packet
enters the server and it ends at the beginning of which a new class-2 packet
can enter the server (if there are any). It thus ends when the class-2 packet
left the system and when the system is emptied of class-1 packets (for the firsttime).
In order to analyze the delay of a tagged class-2 packet, let us refer to thepackets in the system at the end of slot k, but that have to be served before
the tagged packet as the “primary packets”. So, basically, the tagged class-2
packet can enter the server, when all primary packets and all class-1 packets that
arrived after slot k (i.e., while the tagged packet is waiting in the queue) aretransmitted. To summarize, all primary class-j packets will add a class-j subbusy period to the delay of the tagged packet. Let ṽj,m denote the length ofthe m-th class-j sub-busy period added to the tagged packet’s delay by them-th class-j packet already in the queue at the beginning of start-slot l and let(i)vj,m denote the length of the sub-busy period added to the delay of the taggedclass-2 packet by the m-th class-j packet that arrived during slot i.
When the tagged class-2 packet arrives, the server can - again - be in one ofthree possible states: the server is idle, a class-2 packet is in service or a class-1
packet is in service. In the following, we give the expressions for d2 in thethree situations.
1. The server is idle during slot k, yielding

d2 =

fj,k
2 X
X

j=1 m=1(k)

vj,m + ŝ2 ,(3.116)

92

Non-preemptive priority
with fj,k the number of class-j packets arriving in the same slot as thetagged packet but that are served before it. f1,k class-1 primary packets
and f2,k class-2 primary packets that arrived during slot k have to beserved before the tagged class-2 packet and those primary packets all
add a sub-busy period to the tagged packet’s delay.
2. A class-2 packet is in service during slot k, yielding+

d2 =(s∗k − s+k − 1) ++s∗k −sk −1 a1,k+i

+

X
i=1

X

sk aj,k−i
2 X
X
X

(k−i)

vj,m

+

fj,k
2 X
X

(k)

vj,m

(3.117)

j=1 m=1j=1 i=1 m=1n2,l −1(k+i)

v1,m +

Xṽ2,m + ŝ2 .

m=1

m=1

The residual service time of the packet in service during slot k contributes in the first term; the sub-busy periods added to the tagged packet’s
delay by the class-1 and class-2 packets that arrived during the elapsed
service time contribute in the second term; the sub-busy periods added
to the tagged packet’s delay by the class-1 and class-2 packets arriving
during slot k, but that have to be served before the tagged class-2 packet
contribute in the third term; the sub-busy periods added to the tagged
packet’s delay by the class-1 packets arriving during the residual service
time contribute in the fourth term; the sub-busy periods added to thetagged packet’s delay by the class-2 packets already in the queue at the
beginning of start-slot l contribute in the fifth term; finally the service
time of the tagged class-2 packet itself contributes in the last term.
3. A class-1 packet is in service during slot k, yielding+

n1,l −1d2 =(s∗k − s+k − 1) +Xṽ1,m +

+

X
i=1

X

m=1

j=1 i=1 m=1

m=1

+
s∗
k −sk −1 a1,k+i(k+i)

v1,m +

sk aj,k−i
2 X
X
X

n2,l
X

(k−i)

vj,m

+

fj,k
2 X
X

(k)

vj,m

j=1 m=1(3.118)ṽ2,m + ŝ2 .

m=1

The difference with the previous situation is that there may be multiple
class-1 packets in the buffer (apart from the one in service) at the beginning of start-slot l, which will contribute to the tagged packet’s delay.
This condition is quantified by the second term in the right-hand side of
the above expression.

3.6 Packet delay

93

Using equations (3.116)-(3.118), we derive an expression for D2 (z):
D2 (z) =E z d2 {no service} + E z d2 {service class-2}+ E z d2 {service class-1}
 P Pf
(
(k)
j,k
2
v
+ŝ
=E z j=1 m=1 j,m 2
1 − ρTPaj,k−i (k−i) 1P 2 P s++∗k
B sk − s k − 1 +m=1 vj,m C
i=1
j=1
C
B
A
@ Ps∗ −s+ −1 Pa
(k+i)

 0


 +
+ ρ2 E 
z


k

i=1

1,k+i

k

m=1

v1,m

 Pn −1

2,l
ṽ2,m
m=1
×E z
|service class-2

P 2 P s+
Paj,k−i (k−i) 1+∗k
B sk − s k − 1 +m=1 vj,m C
i=1
j=1
B
C
@ Ps∗ −s+ −1 Pa
A
(k+i)

 0


 +
+ ρ1 E 
z


k

i=1

1,k+i

k

m=1

v1,m

 Pn −1

Pn2,l
1,l
×E z m=1 ṽ1,m + m=1 ṽ2,m |service class-1 .

(3.119)(3.120)
service class-2






service class-1
It is clear that the lengths of the sub-busy periods initiated by class-1 packets
are i.i.d. and thus all have the same pgf V1 (z). Also the lengths of the subbusy periods initiated by class-2 packets are i.i.d., and their common pgf isdenoted by V2 (z). Notice that f1,k and f2,k are correlated, since they depend
on a1,k and a2,k respectively, which are assumed to be correlated throughout
this dissertation. Equation (3.120) then becomesS2 (z) 1 − ρT

D2 (z) =E V1 (z) V2 (z)(3.121)"# s+A(V1 (z), V2 (z)) ks∗kE(zA1 (V1 (z))) |service class-2
zA1 (V1 (z))+ ρ2zA1 (V1 (z))
E [V2 (z)n2,l |n1,l = 0, n2,l > 0]×V2 (z)"# s+
A(V1 (z), V2 (z)) ks∗kE(zA1 (V1 (z))) |service class-1
zA1 (V1 (z))+ ρ1zA1 (V1 (z))
E [V1 (z)n1,l V2 (z)n2,l |n1,l > 0]
V1 (z)


f1,k

f2,k



94

Non-preemptive priority((3.122)=F (2) (V1 (z), V2 (z))S2 (z) 1 − ρT
A(V1 (z), V2 (z)), zA1 (V1 (z))
N (0, V2 (z)) − N (0, 0)
zA1 (V1 (z))+ ρ2zA1 (V1 (z))(N (0, 1) − N (0, 0))V2 (z)A(V1 (z), V2 (z))∗
S1
, zA1 (V1 (z))
zA1 (V1 (z))+ ρ1zA1 (V1 (z)))
N (V1 (z), V2 (z)) − N (0, V2 (z))×,(1 − N (0, 1))V1 (z)
S2∗

with
h
i
f
f
F (2) (z1 , z2 ) ,E z1 1,k z2 2,k ,(3.123)h + ∗iSj∗ (x, z) , lim E xsk z sk |service class-j ,(3.124)andk→∞with j = 1, 2. As in the previous chapter, the random variables f1,k and f2,kcan be shown to have the following joint pgf:
F (2) (z1 , z2 ) =A(z1 , z2 ) − A1 (z1 ).
λ2 (z2 − 1)

(3.125)The Sj∗ (x, z)’s (j = 1, 2) are already calculated in the previous subsection andare given by equation (3.102).
Finally, we find expressions for V1 (z) and V2 (z). Denote a (random) sub-busy
period of class-j by vj and the service time of the class-j packet initiating the
sub-busy period by sj , j = 1, 2. Furthermore, denoting the class-1 arrivals(m)during the m-th slot of this service time by a1 , we have(m)

vj =sj +sj a 1XX(m)

v1,l ,(3.126)m=1 l=1(m)with v1,l defined as the class-1 sub-busy period added to the original subbusy period by the l-th class-1 packet arriving in the m-th slot of the service
time sj . Since vj and sj have pgf’s Vj (z) and Sj (z) respectively and since(m)the class-1 sub-busy periods v1,l are i.i.d. and have a common pgf V1 (z), z-3.6 Packet delay95

transforming (3.126) yields
Vj (z) =Sj (zA1 (V1 (z))),(3.127)

with j = 1, 2.
Equation (3.122) together with equations (3.13), (3.102) and (3.125) leads to:D2 (z) =1 − ρT S2 (z)(A(V1 (z), V2 (z)) − A1 (V1 (z))) zA1 (V1 (z)) − 1, (3.128)λ2
zA1 (V1 (z)) − A(V1 (z), V2 (z))
V2 (z) − 1

with Vj (z) (j = 1, 2) implicitly given by equation (3.127).
In the special case of deterministic service times of 1 slot for both classes, expression (3.128) equals expression (2.104).

3.6.3 Pgf D(z) of the delay of a random packet
In this subsection, we derive the pgf D(z) of a random packet arriving in thesystem. Tagging a random arriving packet, it is of class-1 with probability
λ1 /λT and of class-2 with probability λ2 /λT . We thus get
D(z) =λ2
λ1
D1 (z) +D2 (z).
λT
λT(3.129)Substituting expression (3.115) and (3.128) in this expression leads toD(z) =

1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1
λT z − A1 (S1 (z)) S1 (z) − 1+
1 − ρTρ2 S2 (z) − 1+
1 − ρ11 − ρ1 µ2 (z − 1)
(3.130)1 − ρT S2 (z)(A(V1 (z), V2 (z)) − A1 (V1 (z))) zA1 (V1 (z)) − 1.
λT
zA1 (V1 (z)) − A(V1 (z), V2 (z))
V2 (z) − 1

3.6.4 The functions Yj (z) revisited
The functions Yj (z) (j = 1, 2) are the pgf’s of stochastic variables, namely thestochastic variables yj , which are defined as the number of class-2 packets
that arrive during a sub-busy period initiated by a class-j packet. If at the
beginning of a random slot a class-j packet with service time sj enters theserver, a new sub-busy period starts (with length denoted by vj ). Denoting
the number of class-2 packets that arrive during this sub-busy period by yj96

Non-preemptive priority

and denoting the number of class-i arrivals during the m-th slot of this sub(m)busy period by ai (i = 1, 2), we get
yj =

vj
X

(m)

(3.131)

a2

m=1

=

sj
X

m=1



a2(m) +

(m)

a1

X
l=1

(m)



y1,l  ,(3.132)(m)with y1,l the number of class-2 packets that arrive during the sub-busy period
added to vj by the l-th class-1 packet that arrives during the m-th slot of the(m)service time sj . Naturally, all y1,l have the same distribution as y1 (since thelengths of class-1 sub-busy periods are all identically distributed) and therefore the pgf of yj is thus indeed given by
Yj (z) =Sj (A(Y1 (z), z)),(3.133)for j = 1, 2, as immediately follows from (3.132) assuming that a stationary
regime is reached.
When the number of class-1 and class-2 arrivals are independent stochastic(m)variables, it can be seen that vj and the a2 are also independent variables.
From expression (3.131), it then follows that
Yj (z) =Vj (A2 (z)),(3.134)for j = 1, 2. Note that this latter expression is not generally valid when thenumber of class-1 and class-2 arrivals in a slot are correlated, since vj and the(m)(m)
a2 ’s both depend on the a1 ’s in this case.

3.6.5 Calculation of moments
Taking the first derivative of equation (3.115) and substituting z by 1 yields
the mean class-1 packet delay:
E[d1 ] =µ1µ1 Var[a1 ]λ1 Var[s1 ] λ2 (µ2 (µ2 − 1) + Var[s2 ])
+
+
+
.
2
2λ1 (1 − ρ1 ) 2(1 − ρ1 )
2(1 − ρ1 )(3.135)Note that this expression is always at least equal to µ1 . Since Var[a1 ] ≥ λ1 (1 −λ1 ) (for more details see subsection 2.1.6), the second term of (3.135) equalsµ1 /2 for λ1 → 0 and λ2 → 0 - and keeping Var[a1 ] = λ1 (1 − λ1 ) -, thusE[d1 ] ≥ µ1 . This is also intuitively clear, since the service time of a packet isan integral part of the delay of that packet. Thus the mean delay is at least the3.6 Packet delay

97

mean service time of a packet, i.e., µ1 in this case. It can furthermore be seenfrom expressions (3.59) and (3.135) that E[u1 ] = λ1 E[d1 ], which is also foundfrom (the discretized version of) Little’s law.
The mean delay of a class-2 packet is found by taking the first derivative of
expression (3.128) and substituting z by 1, yieldingE[d2 ] =µ2µ21 Var[a1 ]µ2 Var[a2 ]µ1 Cov[a1, a2]+++22(1 − ρT )(1 − ρ1 ) 2λ2 (1 − ρT )λ2 (1 − ρT )λ1 Var[s1 ] + λ2 Var[s2 ] ρ1 (µ2 − 1)+−.
2(1 − ρT )(1 − ρ1 )
2(1 − ρ1 )(3.136)This expression is at least µ2 , since for given mean arrival rates of class-1 andclass-2 (λ1 and λ2 respectively), the minimal value of Var[aj ] is λj (1 − λj )(j = 1, 2) and the minimal value of Cov[a1 , a2 ] is −λ1 λ2 . These least possible
values occur when one class-1 packet and no class-2 packets arrive during aslot with probability λ1 , no class-1 packets and one class-2 packet arrive withprobability λ2 and no arrivals occur during a slot with probability 1−λT . With
these values, expression (3.136) equals µ2 for λ1 and λ2 going to 0. Little’s law
is again valid: E[u2 ] = λ2 E[d2 ].
Finally, the mean delay of a random packet is given by
λ1
λ2
E[d1 ] +E[d2 ](3.137)λT
λTµ1 Var[aT ]µ1 λ2 (µ2 − µ1 )Var[a1 ] (µ2 − µ1 )Var[a2 ]
ρT
+
−
+
=
2λT
2λT (1 − ρT )
2λT (1 − ρT )(1 − ρ1 )2λT (1 − ρT )(3.138)E[d] =(λ1 Var[s1 ] + λ2 Var[s2 ])(λ1 (1 − ρ1 ) + λ2 (1 − µ2 λ1 ))2λT (1 − ρT )(1 − ρ1 )λ1 λ2 (µ2 − 1)(µ2 − µ1 )+.
2λT (1 − ρ1 )+We have used expressions (3.135) and (3.136) to obtain this formula. Expressions (3.56) and (3.138) clearly satisfy Little’s law.

3.6.6 Calculation of tail probabilities
In this subsection, we calculate the tail probabilities of the delay of a class-1
packet, of the delay of a class-2 packet and of the delay of a random packet.
Class-1 packet delay
The dominant singularity of D1 (z) (expression (3.115)), denoted by ẑH , is thedominant zero of z −A1 (S1 (z)) on the positive real axis (> 1). It is a single pole

98

Non-preemptive priority

and we can thus approximate the tail behavior of the delay of class-1 packetsbyd1 (n) ,Prob[d1 = n]−n−1
≈K̂1 zH,(3.139)(3.140)andProb[d1 > D] ≈−D
K̂1 ẑH.
ẑH − 1

(3.141)for large enough n and D respectively, withK̂1 =

S1 (ẑH ) (ẑH − 1) [(1 − ρT ) (ẑH − 1) + λ2 (S2 (ẑH ) − 1)].
λ1 (S1 (ẑH ) − 1) (A01 (S1 (ẑH ))S10 (ẑH ) − 1)

(3.142)Behavior of V1 (z) and V2 (z) in the neighborhood of their dominant branchpoint
The tail behavior of the delay of class-2 packets is again a bit more involved
because of the appearance of the function V1 (z) in (3.128), which is (generally)
only implicitly known. We will first observe the behavior of V1 (z) and V2 (z).
The first derivative of V1 (z) is given by
V10 (z) =S10 (zA1 (V1 (z)))A1 (V1 (z)),
1 − zS10 (zA1 (V1 (z)))A01 (V1 (z))(3.143)

which, similar as before, indicates that V1 (z) has a branch point ẑB , withẑB S10 (ẑB A1 (V1 (ẑB )))A01 (V1 (ẑB )) = 1.

(3.144)In the neighborhood of ẑB , V1 (z) is approximately given by
V1 (z) ≈V1 (ẑB ) − KV1
withK V1 =spẑB − z,2A1 (V1 (ẑB )).
ẑB A001 (V1 (ẑB )) + S100 (ẑB A1 (V1 (ẑB )))(ẑB A01 (V1 (ẑB )))3

(3.145)(3.146)ẑB is also a branch-point of V2 (z), sinceV20 (z) =S20 (zA1 (V1 (z))) [A1 (V1 (z)) + zA01 (V1 (z))V10 (z)] .

(3.147)

3.6 Packet delay

99

Thus in the neighborhood of ẑB , we find
V2 (z) ≈V2 (ẑB ) − KV2
with(3.148)pẑB − z,(3.149)KV2 =KV1 S20 (ẑB A1 (V1 (ẑB )))ẑB A01 (V1 (ẑB )).

Class-2 packet delayẑB is also a branch-point singularity of D2 (z). A second (potential) singularityof D2 (z) is given by the dominant zero ẑL of zA1 (V1 (z)) − A(V1 (z), V2 (z)). So,
D2 (z) is approximated in the neighborhood of its dominant singularity by:

(1)

K̂2


if ẑL dominant ẑL − z
(2)D2 (z) ≈K̂√ 2
if ẑL = ẑB dominantẑB − z




(3) √
ẑB − z if ẑB dominant,D2 (ẑB ) − K̂2(3.150)(i)with the constants K̂2 (i = 1, 2, 3) found by investigating D2 (z) in the neighborhood of its dominant singularity, yielding(1)

K̂ 2 =(1 − ρT )S2 (ẑL )A1 (V1 (ẑL )) (ẑL − 1) (ẑL A1 (V1 (ẑL )) − 1)dA(V1 (z), V2 (z)) d(zA1 (V1 (z))λ2 (V2 (ẑL ) − 1)−dz
dz

(3.151)z=ẑL(1 − ρT ) (ẑB A1 (V1 (ẑB )) − 1)
(2)
(3.152)K̂ 2 =
λ2 (V2 (ẑB ) − 1)S2 (ẑB )A1 (V1 (ẑB )) (ẑB − 1)×(1)
KV1 A (V1 (ẑB ), V2 (ẑB )) − ẑB A01 (V1 (ẑB )) + KV2 A(2) (V1 (ẑB ), V2 (ẑB ))(1 − ρT )S2 (ẑB )(3)(3.153)K̂ 2 =λ2 (ẑB A1 (V1 (ẑB )) − A(V1 (ẑB ), V2 (ẑB )))2 (V2 (ẑB ) − 1)2nh× A1 (V1 (ẑB )) KV1 A(1) (V1 (ẑB ), V2 (ẑB )) + KV2 A(2) (V1 (ẑB ), V2 (ẑB ))i− KV1 A(V1 (ẑB ), V2 (ẑB ))A01 (V1 (ẑB )) (ẑB − 1)(ẑB A1 (V1 (ẑB )) − 1)

× (V2 (ẑB ) − 1) + [KV1 ẑB A01 (V1 (ẑB ))(V2 (ẑB ) − 1) − KV2 (ẑB A1 (V1 (ẑB )) − 1)]o× (A(V1 (ẑB ), V2 (ẑB )) − A1 (V1 (ẑB ))) (ẑB A1 (V1 (ẑB )) − A(V1 (ẑB ), V2 (ẑB ))) .

100

Non-preemptive priority

Using Darboux’s theorem, we findandd2 (n) ,Prob[d2 = n]
 (1)
−n−1

K̂2 ẑL
if ẑL dominant






 K̂ (2) n−1/2 ẑ −n2B√if ẑL = ẑB dominant
≈
ẑ
π

B

 (3) rẑB −3/2 −n
 K̂2

n
ẑB if ẑB dominant,2πProb[d2 > D] ≈d2 (D),ẑ∗ − 1

(3.154)(3.155)(3.156)

with ẑ∗ the dominant singularity of D2 (z).
Delay random packet
Finally, we calculate the tail probabilities of the delay of a random packet.
Its pgf D(z) is given by expression (3.130). The dominant singularity of thisfunction is ẑL or ẑB , depending on which is smallest.
Note that - similar as in the previous chapter - the dominant singularity of
D1 (z) - ẑH - is also a singularity of D(z), but ẑH is never dominant, sinceẑH > ẑB . We will first prove this latter inequality. Firstly, since ẑB fulfils therelation S10 (ẑB A1 (V1 (ẑB )))ẑB A01 (V1 (ẑB )) = 1 and since ẑB is larger than 1
S10 (ẑB A1 (V1 (ẑB )))A01 (V1 (ẑB )) <1,(3.157)or - by using the definition of V1 (z) = S1 (zA1 (V1 (z))) dA1 (S1 (z))
dz

<1.

(3.158)z=ẑB A1 (V1 (ẑB ))Furthermore, since A1 (S1 (z)) and z intersect in ẑH ,dA1 (S1 (z))
dz

>1.

(3.159)z=ẑHThis inequality combined with (3.158) and the fact that dA1 (S1 (z))/dz is astrictly increasing function for the assumed pgf’s - for z positive real and in-3.7 Waiting time101

side the region of convergence of the corresponding series - it follows thatẑB A1 (V1 (ẑB )) <ẑH .

(3.160)Since A1 (V (ẑB )) > 1 it follows from the previous inequality that ẑB < ẑH ,and thus ẑH is never a dominant singularity of D(z). It is also intuitively clearthat - because of the priority scheduling discipline - the behavior of d(n) for
high n will be dominated by the delay of the class-2 packets.
From expression (3.129) and the fact that the dominant singularities of D(z)and D2 (z) are equal, it is easily seen thatd(n) ,Prob[d = n]λ2
≈ d2 (n),λT(3.161)(3.162)for large enough n. Since d2 (n) is approximately calculated in expression(3.155), d(n) is approximately determined from this expression. Finally, theprobability that the steady-state delay of a random packet is larger than abound D is given by
Prob[d > D] ≈λ2
Prob[d2 > D],
λT(3.163)for large D.

3.7 Waiting time
The waiting time of a packet, defined as the number of slots a packet has to
wait in the queue before starting service, is easily determined using the results
obtained in the previous section for the packet delay. Indeed, since the service
times of the packets are not interrupted, the waiting time of a packet equals
its delay minus its service time. Thus, the pgf of the steady-state waiting timeof a class-j packet is given by
Tj (z) =Dj (z),Sj (z)(3.164)for j = 1, 2. Using expressions (3.115) and (3.128), we findT1 (z) =z−1
A1 (S1 (z)) − 1
1 − ρ1
λ1 z − A1 (S1 (z)) S1 (z) − 1
1 − ρTρ2 S2 (z) − 1+,
1 − ρ11 − ρ1 µ2 (z − 1)
(3.165)

102

Non-preemptive priority

for the pgf of the class-1 waiting time andT2 (z) =1 − ρT A(V1 (z), V2 (z)) − A1 (V1 (z)) zA1 (V1 (z)) − 1,
λ2 zA1 (V1 (z)) − A(V1 (z), V2 (z)) V2 (z) − 1(3.166)for the pgf of the class-2 waiting time. Finally, the pgf of the steady-state
waiting time of a random packet is given by
λ1
λ2
T1 (z) +T2 (z)(3.167)λTλT
1 − ρ1z−1
A1 (S1 (z)) − 1 1 − ρT
ρ2 S2 (z) − 1=+
λT z − A1 (S1 (z)) S1 (z) − 1
1 − ρ11 − ρ1 µ2 (z − 1)
(3.168)T (z) =+

1 − ρT A(V1 (z), V2 (z)) − A1 (V1 (z)) zA1 (V1 (z)) − 1.
λT zA1 (V1 (z)) − A(V1 (z), V2 (z)) V2 (z) − 1

From these pgf’s, performance measures can be calculated as is done in theprevious section.

3.8 Numerical examples
To conclude this chapter, we apply our results to an output queueing switch
with an NP priority scheduling discipline. We will specifically focus on theperformance measures of the system contents and of the packet delay (analyzed in sections 3.3 and 3.6 respectively).
Because of the rather large number of input parameters one can vary in thismodel, the numerical examples discussed in this section are merely a (limited)
subset of the possible numerical examples. We will furthermore focus on one
type of arrival distribution (see further). This gives us a chance of limiting thenumber of plots, without losing too much generality.

3.8.1 Input processes
The arrival process
We use the example of the output queueing switch, discussed in section 1.7.2,
throughout this section. The pgf of the number of per-slot class-1 and class-2
arrivals is given by

λ1
λ2
A(z1 , z2 ) = 1 − (1 − z1 ) − (1 − z2 )
N
N

N

,

(3.169)

3.8 Numerical examples

103

with N the number of in- and outlets of the output queueing switch and withλj the probability that a class-j cell arrives at a randomly chosen inlet (formore details see 1.7.2). We will briefly repeat the most important characteristics of this arrival process: the marginal pgf AT (z) is given byλT
AT (z) = 1 −(1 − z)N

N,(3.170)and the marginal pgf of the number of per-slot arrivals of class-j is given by
N

λj
,
Aj (z) = 1 − (1 − z)N

(3.171)

with j = 1, 2. The means of the total, class-1 and class-2 numbers of per-slot
arrivals are thus given by λT , λ1 and λ2 respectively, while the variances ofthese three stochastic variables are given by
λVar[a] =λ 1 −,N(3.172)

with λ equal to λT , λ1 and λ2 respectively. The covariance of the number ofper-slot class-1 and class-2 arrivals is given by
Cov[a1 , a2 ] = −

λ1 λ2
.
N

(3.173)The service process
In this section, the service times of both classes are assumed deterministic inmost examples, i.e.,(3.174)Sj (z) = z µj ,j = 1, 2, with µj the class-j service time.

In order to study the influence of the variance of the service times though(since the variance of deterministic service times is obviously equal to 0), we(1)
assume in some examples the class-j service times to be equal to µj with(2)

probability pj and equal to µj with probability 1 − pj , i.e.,
(2)

(1)

Sj (z) =pj z µj + (1 − pj )z µj .

(3.175)The mean value and variance corresponding with this distribution equal
(1)

(2)

µj =pj µj + (1 − pj )µj ,(3.176)

104

Non-preemptive priority

and

2
(2)
(1)
Var[sj ] =pj (1 − pj ) µj − µj,(3.177)(1)(2)

respectively. In order to study the influence of Var[sj ], pj , µj and µj will
be varied so that µj stays constant and Var[sj ] is varied from 0 to infinity (indiscrete steps).

3.8.2 Influence of load on moments
Firstly, we show the influence of some load characteristics on the mean andvariance of the system contents and packet delay. The arrival process isdefined by expression (3.169) with N = 16 and the service times of class-j
packets are deterministically equal to µj . We define α as the fraction of class-1
load in the overall traffic mix, i.e.,
α,

ρ1
,
ρT

(3.178)with ρj = λj µj (j = 1, 2) and ρT = ρ1 + ρ2 (as before).
Since we have extensively studied the influence of the load on the means andvariances of the system contents and delays in subsection 2.6.2 - in the caseof deterministic service times of one slot - we limit the number of examples
in this subsection. However, all types of figures from subsection 2.6.2 can be’replicated’ in the context of this chapter.
System contents
In Figures 3.4 and 3.5, the mean values and variances of the system contents
of class-1 and class-2 packets are shown as functions of the total load, when
α = 0.25, 0.5 and 0.75 respectively and when the service times of both classes
are deterministically equal to 20 slots. We have also shown the mean value
and variance of the system contents of any class (class-1 or class-2) for α = 0.5
when a FIFO scheduling discipline is applied. These can be easily calculated
because - in the special case of the arrival process characterized by (3.169) andequally distributed service times of both classes - the joint pgf of the numberof arrivals of both classes has the feature that it can be expressed as AT (αz1 +(1−α)z2 ). The joint pgf of the system contents of both classes is thus also given
by UT (αz1 + (1 − α)z2 ), with UT (z) the pgf of the total system contents (given
by expression (3.39)) - for more details see subsection 2.6.2 - and the mean andvariance are thus easily obtainable from this pgf. From Figures 3.4 and 3.5,
one can see the influence of the priority scheduling discipline: especially forhigh loads, the mean and the variance of the number of class-1 packets in the3.8 Numerical examples

105

8
α=

0.25
0.5
0.75
FIFO (α = 0.5)

7
6

E[u2]

5
4
3
2
E[u1]

1
0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 3.4: Mean values of system contents versus the total arrival rate (µ 1 = µ2 = 20)

system are reduced by the priority scheduling discipline; the opposite holds
for class-2 packets.
Packet delays
In Figures 3.6 and 3.7, the mean values and variances of the packet delay ofclass-1 and class-2 packets are shown as functions of the total load ρT , when
µ1 = µ2 = 2 with α equal to 0.25, 0.5 and 0.75 respectively. In order to comparewith a FIFO scheduling discipline, we have also shown the mean value andvariance of the packet delay of any packet in that case. Because of the service
times of the class-1 and class-2 packets being equally distributed and becauseof the specific arrival process considered in this section, the packet delay is
the same for class-1 and class-2 packets in case of FIFO scheduling, and canthus be calculated as if there is only one class of packets arriving according toan arrival process with pgf AT (z). This situation has already been analyzed,e.g., in Bruneel and Kim [1993]. One can observe the influence of the priority
scheduling discipline: mean value and variance of the delay of class-1 packets
reduce significantly. The price to pay is a larger mean value and varianceof the delay for class-2 packets. Also, for this parameter set, the smaller thefraction α of class-1 packets in the overall traffic mix, the lower the mean value
and variance of the packet delay of both classes will be. This is not always thecase however as can be deduced from Figure 3.8, which shows the mean delayof class-1 and class-2 packets as a function of ρT , when µ1 = 2 and µ2 = 20.
α is again 0.25, 0.5 and 0.75 respectively. In this case, if the load is smaller

106

Non-preemptive priority

8
7
Var[u2]

α=

0.25
0.5
0.75
FIFO (α = 0.5)

6
5
4
3

Var[u1]

2
1
0
0

0.2

0.4

0.6

0.8

1

ρT

Figure 3.5: Variances of system contents versus the total arrival rate (µ 1 = µ2 = 20)than ≈ 0.9, the smaller the fraction of class-1 packets in the overall traffic mix,
the higher the mean packet delay of both classes will be. For loads higher
than 0.9, the opposite holds. This can be explained as follows. For low andmoderate values of the load - due to the long service times of class-2 packets- the delay of class-1 packets will be determined by the probability of having
to wait for a class-2 residual service time upon arrival and is therefore highest
when the share of the class-2 packets in the overall traffic mix is highest. The
same holds for the delay of the class-2 packets since there are too few class-1
packet arrivals to have a severe impact on their delay. As the total load further
increases however, the transmission of class-1 packets becomes more frequentand starts to take its toll.

3.8.3 Influence of the service times on mean values
In this subsection, we show the influence of the service times on the meansystem contents and mean packet delay. To show the influence of the mean
service times of both classes, we assume deterministic service times. In orderto show the influence of the variances of the class-1 and class-2 service times(on the mean system contents and mean packet delay) however, service times
with a pgf as in (3.175) are also considered (when appropriate).
System contents
In the first two figures, we assume deterministic service times for both classes.
Figure 3.9 shows the mean system contents of both classes versus the class-1

3.8 Numerical examples

107

10
E[d2]
8
α=
6

0.25
0.5
0.75

FIFO
E[d1]

4

2

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 3.6: Mean values of the packet delay versus the total load (µ 1 = µ2 = 2)10
Var[d2]
FIFO

8
α = 0.25
0.5
6
0.75
4

Var[d1]
2

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 3.7: Variances of the packet delay versus the total load (µ 1 = µ2 = 2)

108

Non-preemptive priority

60
α=

50
40

0.25
0.5
0.75
E[d2]

30
20

E[d1]

10
0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 3.8: Mean values of the packet delay versus the total load (µ 1 = 2, µ2 = 20)

service time with µ2 = 20 and α = 0.25, 0.5 and 0.75 respectively. The totalload is equal to 0.75. It can be seen that the mean class-1 system contents decreases with increasing µ1 . This is explained as follows: less class-1 packets
arrive when µ1 increases (since ρ1 is kept constant, λ1 decreases when µ1 increases). The mean class-2 system contents on the other hand increases withincreasing µ1 (when Var[s1 ] = 0). So, although the load of class-1 packets stays
the same, the mean class-2 contents (heavily) increases with the class-1 service
time. This is due to the fact that when the class-1 packets are longer, the variance in the lengths of the periods that the server is available and unavailable
for class-2 packets grows. It is a well-known fact from queues with server interruptions (i.e., queues with a server that is unavailable for certain periods)that a higher variance in the interruption process gives rise to higher meansystem contents (see e.g. Bruneel and Kim [1993], Fiems [2004]). The same
phenomenon is the cause of the behavior of the mean class-2 system contents
in this plot.
In Figure 3.10, the mean system contents of both classes are plotted as a function of the (mean) class-2 service time with µ1 = 20, ρT = 0.75 and α = 0.25,
0.5 and 0.75. It can be seen that the mean class-1 contents increases, while themean class-2 system contents decreases with increasing µ2 . The increase of themean class-1 system contents is easily explained as follows: as seen in subsection 3.3.3, the influence of the class-2 packets on the class-1 system contents is
closely related to (the number of class-1 arrivals during) the residual service
times of class-2. Obviously residual service times increase when service times

3.8 Numerical examples

109

7
6
5

α = 0.25
0.5
0.75

E[u2]

4
3
2
E[u1]

1
0
50

100

150

200
µ1

250

300

350

400

Figure 3.9: Mean values of system contents versus the (mean) class-1 service times(ρT = 0.75, µ2 = 20)

increase. Or in other words, when the service times of the class-2 packets
increase, more class-1 packets will arrive during the time periods that class2 packets are being served. Since the arriving packets cannot interrupt theservice of these class-2 packets, they have to wait until this packet leaves thesystem, thus leading to a larger mean class-1 system contents. The decreaseof the mean class-2 system contents is caused by the decrease of λ2 when µ2
increases (and ρ2 is constant), i.e., on average less class-2 packets arrive.
As can be seen from formulas (3.59) and (3.61), the mean class-1 and class2 system contents are linearly dependent on the variance of the class-1 andclass-2 service times. This is also shown in Figures 3.11 and 3.12. In Figure
3.11 (Figure 3.12 respectively), the mean class-1 and class-2 system contents
versus the variance of the class-1 (class-2 respectively) service times are depicted when the total load is 0.75, when α = 0.25, 0.5 and 0.75, when the meanclass-1 (class-2 respectively) service time is equal to 20 and when the class-2(class-1 respectively) service times are deterministically equal to 20. The service times of class-1 (class-2 respectively) have a pgf as defined in expression(1)(2)(3.175), with µj = 1, µj varying from 20 to infinity and pj chosen so thatthe mean service time µj is kept constantly equal to 20 slots. It can be seenthat mean class-1 and mean class-2 system contents increase with increasing
Var[sj ]. The influence on the mean class-2 system contents is generally larger
than the influence on the mean class-1 system contents, due to the priority
scheduling discipline.

110

Non-preemptive priority5
α = 0.25
0.5
0.75

4

3
E[u1]

2

1
E[u2]
0
50

100

150

200
µ2

250

300

350

400

Figure 3.10: Mean values of system contents versus the (mean) class-2 service times(ρT = 0.75, µ1 = 20)8
α = 0.25
0.5
0.75

7
6

E[u2]

5
4
E[u1]

3
2
1
0
0

1000

2000
3000
Var[s1]

4000

5000

Figure 3.11: Mean values of system contents versus the variance of the class-1 service
times (ρT = 0.75, µ1 = µ2 = 20)

3.8 Numerical examples

111

8
α = 0.25
0.5
0.75

7
6

E[u2]

5
4
3
2
E[u1]

1
0
0

1000

2000
3000
Var[s2]

4000

5000

Figure 3.12: Mean values of system contents versus the variance of the class-2 service
times (ρT = 0.75, µ1 = µ2 = 20)

Packet delays
Figure 3.13 shows the mean packet delays of class-1 and class-2 packets asfunctions of the service time of class-1 packets, when ρT = 0.75, µ2 = 2 andα is, as before, 0.25, 0.5 and 0.75. Service times of class-1 and class-2 are deterministically equal to µ1 and µ2 respectively. We see that the mean packet
delays of both classes are proportional with µ1 and that the impact of µ1 on
the delay of both priority classes is significant. Figure 3.14 shows the mean
packet delays of class-1 and class-2 packets as functions of the service time ofclass-2 packets, when ρT = 0.75, µ1 = 2 and α is 0.25, 0.5 and 0.75. Varying
the mean service time of class-2 packets has a considerable influence on themean delay of class-2 packets, while the influence on the mean packet delayof class-1 packets is small, but not negligible. Furthermore we observe that forsmall class-2 packets, both classes have a smaller mean delay if the fraction of
the load of class-1 packets is lower, while for long service times of the class-2
packets, the opposite holds, as already discussed before (see also Figure 3.8).
To emphasize the possible influence of the (mean) service times of the class-2
packets on the (mean) class-1 packet delay, we show the mean value of thepacket delay of class-1 packets as a function of the total load, when λ1 = 0.25,µ1 = 2 and µ2 = 1, 2, 4, 8, 16 in Figure 3.15. This figure shows the influenceof the NP priority scheduling discipline. When the service time of a class-2
packet is assumed to be deterministically equal to one slot, i.e., µ2 = 1, theNP priority scheduling has the same effect - on the mean class-1 delay - as thepreemptive priority scheduling, and E[d1 ] is not influenced by the presence

112

Non-preemptive priority

40
35
30

α = 0.25
0.5
0.75

25
20
15

E[d2]

10
5
E[d1]
0
2

4

6

8

10

12

14

16

µ1
Figure 3.13: Mean packet delays versus mean service times of class-1 packets (ρ T =0.75, µ2 = 2)

40
35
30

α = 0.25
0.5
0.75

25
20
15

E[d2]

10

E[d1]

5
0
2

4

6

8

10

12

14

16

µ2
Figure 3.14: Mean packet delays versus mean service times of class-2 packets (ρ T =0.75, µ1 = 2)

3.8 Numerical examples

113

10

8

µ2 = 1
2
4
8
16

6

4

2

0
0.5

0.6

0.7

0.8

0.9

1

ρT
Figure 3.15: Mean packet delay of class-1 packets versus the total load (ρ 1 = 0.5, µ1 =2)of class-2 packets. For µ2 > 1, the higher the value of ρT (and hence ρ2 ), thehigher the probability that a newly arriving class-1 packet has to wait for aclass-2 packet service completion, and obviously the effect becomes worse asµ2 increases.
In the next two figures, we assume the service time of class-1 or class-2 packets
respectively to have a pgf as defined in expression (3.175). The weight pj isagain chosen in such a way that the mean service time remains constant. By(1)(2)
varying µj while keeping µj constant the variance of the class-j service
time can be varied (from 0 until ∞). In Figure 3.16, we have plotted the mean
delays of both classes as functions of the variance of the service times of class1 packets, when ρT = 0.75, deterministic class-2 service times, µ1 = µ2 = 2
and α = 0.25, 0.5 and 0.75 respectively. Figure 3.17 shows the mean delays ofboth classes as functions of the variance of the service times of class-2 packets,
when ρT = 0.75, deterministic class-1 service times, µ1 = µ2 = 2 and α =0.25, 0.5 and 0.75 respectively. These figures illustrate that even though themean lengths of class-1 and class-2 packets are kept constant, their variances
have a large impact on both the class-1 and class-2 mean packet delays.

3.8.4 Tail probabilities
In the next figures, we illustrate the tail behavior of the packet delay. The
tail behavior of the system contents is similar and as a result similar plots as
the ones for the packet delay can be constructed. We have shown in section

114

Non-preemptive priority200
α = 0.25
0.5
0.75

150

E[d2]

100
E[d1]
50

0
0

50

100
Var[s1]150

200

Figure 3.16: Mean values of the packet delays versus the variance of the class-1 service
times (ρT = 0.75, µ1 = µ2 = 0.75)

100
α = 0.25
0.5
0.75

80

E[d2]

60
E[d1]

40

20

0
0

50

100
Var[s2]150

200

Figure 3.17: Mean values of packet delays versus the variance of the class-2 service
times (ρT = 0.75, µ1 = µ2 = 0.75)

3.8 Numerical examples

115

1
µ2 =

0.8
geometric
tail behavior

0.6

1
2
4
8

ρ2
0.4

0.2

0
0

0.2

0.4

0.6

0.8

1

ρ1

Figure 3.18: Regions for tail behavior as a function of the load of both classes in thecase of deterministic class-1 service times (µ1 = 2)

3.6.6, that the tail probabilities of the class-2 packet delay can have 3 types of
behavior, depending on which singularity of D2 (z) is dominant. In case of
the arrival process considered in this section, Figures 3.18 and 3.19 show forwhich combination of class-1 and class-2 loads the transition type behavior
occurs for the packet delay when µ1 = 2 and for several values of µ2 , i.e., forwhich combination of loads the regular pole and the branch point coincide.
The service times of the class-2 packets are deterministic. In Figure 3.18, theservice times of the class-1 packets are also assumed to be deterministic, while
in Figure 3.19 the service times of class-1 packets are geometrically distributed.
In the region above the curves, the tail behavior is geometric for the respective
ρ1 and ρ2 , while below the curves the tail behavior is non-geometric. Notethat in the area above the line defined by ρ1 + ρ2 = 1 in both figures, thetotal load is larger than 1, and as a result, the system becomes unstable. As
can be seen from these figures, the higher the mean service time of class-2
packets, the smaller the region where the tail behavior is non-geometric. By
comparing both figures (and from other extensive examples), we conclude
that the transition between geometric and non-geometric tails highly depends
on the service time distribution of the class-1 packets.
Figure 3.20 shows the tail probabilities of the packet delay of class-1 and class2 packets for deterministic service times (µ1 = µ2 = 2), if ρ1 = 0.4 and ρ2 = 0.1(non-geometric behavior), approximately 0.21 (transition type behavior) and
0.4 (geometric behavior) respectively. Tail behavior of the packet delay ofclass-1 packets is not the same for the 3 cases, but the curves lie (in this case)near to each-other. We have also compared our approximations with simulation results (marks in the figures). The figure shows that the approximations

116

Non-preemptive priority

1

0.8

µ2 =

geometric
tail behavior

0.6

1
2
4
8

ρ2
0.4

0.2

0
0

0.2

0.4

0.6

0.8

1

ρ1

Figure 3.19: Regions for tail behavior as a function of the load of both classes in thecase of geometric class-1 service times (µ1 = 2)

for the tail probabilities of the delay of both classes are very good.
Finally, Figure 3.21 shows the tail probabilities of the class-1 delay for ρ1 =
ρ2 = 0.4, µ1 = 2 and several values of µ2 (µ2 = 1, 2, 4, 8, 16). The service timesof both classes are deterministic. This figure clearly shows that the class-2 service times can have a big effect on the tail probabilities of the class-1 delay.
Since class-1 traffic is delay-sensitive, this is something to keep in mind whenincorporating priority scheduling disciplines (e.g., in telecommunication networks).

3.9 Concluding remarks
In this chapter, we studied a more evolved priority queueing system with generally distributed service times. The priority scheduling was of the NP type.
The analysis was an extension of techniques used in the previous chapter.
The most important step was finding an embedded Markov chain. This wasdone by first analyzing the system contents at specific time instants. The twodimensional pgf of the steady-state class-1 and class-2 system contents at the
beginning of such slots was the starting-point of all further calculations in thischapter.
An important conclusion is that the NP priority discipline can differentiate
the quality of service of different classes. More precisely it is shown that thedelay of the high-priority traffic can be decreased by applying the NP priority discipline. The price to pay is an increase in the delay of the low-priority

3.9 Concluding remarks

117

1
ρ2 =

0.1

0.1
0.21
0.4

0.01
0.001
0.0001
1e-05

d2(n)
d1(n)

1e-06
10

20

30

40

50
n

60

70

80

90 100Figure 3.20: Tail behavior of the class-1 and class-2 packet delay for several class-2
loads (ρ1 = 0.4, µ1 = µ2 = 2)

1
µ2 =
0.01

1
2
4
8
16

0.0001

1e-06

1e-08

1e-10
5

10

15

20

25

30

35

40

45

50

n

Figure 3.21: Tail behavior of the class-1 packet delay for several class-2 service times(ρ1 = ρ2 = 0.4, µ1 = 2)

118

Non-preemptive priority

traffic. However, it is also shown that the NP property of this scheduling discipline can have an important ’negative’ influence on the high-priority delay
characteristics. Especially when the service times of the low-priority class are
relatively large (compared to the service times of the high-priority packets),the positive influence of the priority discipline on the high-priority delay canbe severely decreased by the NP property.

Chapter 4

Preemptive resume priority
In this chapter, we describe the analysis of a preemptive resume (PR) priority
queue. Packets of two classes (class-1 and class-2) arrive in a single-server
queueing system where packets of class-1 have (PR) priority over class-2 packets. Whenever the server becomes available, a class-1 packet is served next (ifany). If no class-1 packets are present, a class-2 packet can start service. In contrast with the NP (non-preemptive) priority scheduling discipline analyzed in
the previous chapter, newly arriving class-1 packets interrupt an on-going service of a class-2 packet. So, when class-1 packets arrive during a service slotof a class-2 packet, one of the class-1 packets starts service at the beginning of
the next slot, and the (not-yet-served part of the) interrupted class-2 packet ispushed back in the queue (unless it was its last slot of service). In this chapter,
we analyze the preemptive resume priority scheduling discipline. An interrupted class-2 service resumes after all class-1 packets have left the system.
Or in other words, only the not-yet-served part of the interrupted packet has
to be served afterwards.
According to Miller [1960], the first published results for the preemptive (resume) priority queue are by White and Christie [1958]. In [Miller 1960], theLaplace-Stieltjes transform of the waiting time is found for a continuous-time
PR priority queue with Poisson arrivals and generally distributed service
times. Furthermore - as already mentioned in the previous chapter - anoverview of some other basic (non)-preemptive priority queueing models incontinuous-time can be found in the monographs of Kleinrock [1976] andTakagi [1991].
Continuous-time single-server PR priority queues with no correlation between
the arrival processes of the priority classes have been analyzed by a.o. Marks[1973], Miller [1981], Brandwajn [1982], Cidon and Sidi [1990], Takahashi
and Miyazawa [1994], Takine and Hasegawa [1994], Abate and Whitt [1997],
Boxma et al. [1999], Berger and Whitt [2000], Kraimeche [2001], Drekic andGrassmann [2002], Drekic and Stafford [2002], Sharma and Virtamo [2002],

120

Preemptive resume priority

Takada and Miyazawa [2002] and Liu and Gong [2003]. Marks [1973] gives analgorithm for the calculation of the state probabilities in a PR priority queuewith negative exponential interarrival and service times. Miller [1981] analyzes a PR priority queue with Poisson arrivals and exponential service times.
The state probabilities of the number of packets of each type in the system arepresented by explicit recursive formulas. Brandwajn [1982] demonstrates atechnique whereby one attempts to solve the difference equations - the starting point of most queueing problems - directly for PR priority queues withrather general input processes. A two-class PR priority queue with Poisson
arrivals and exponential service times is studied by Drekic and Grassmann[2002]. The buffer storing the high-priority packets is assumed to be infinitely
large, while the low-priority buffer is of finite length. The method of the generalized eigenvalues is used to determine the joint distribution of the numberof high- and low-priority packets. A recursive formula for the steady-state
probabilities of the system contents of the two priority classes is proposedby Cidon and Sidi [1990]. This formula is found from the joint pgf of thesestochastic variables, as calculated by Miller [1960]. Abate and Whitt [1997]
quantify the effect of the priority structure on the low-priority steady-state
delay tail probabilities (in NP and PR priority systems). They show that thepriority structure tends to make the tail probabilities non-exponential (as also
shown in this dissertation). Takahashi and Miyazawa [1994] propose a relationship between the queue contents and the waiting time for the NP and PR
priority queues. Takine and Hasegawa [1994] study a queue with Markovian
arrivals and with state-dependent service time distributions. As an application of the results obtained for this queueing model, a PR priority queue isanalyzed. In particular, the Laplace-Stieltjes transform and the mean valuesof the waiting times of packets of all priority classes are obtained. Boxma
et al. [1999] derive a heavy-traffic limit theorem for the low-priority waitingtime when the service times are heavy-tailed. Upper and lower bounds on the
per-class workload distributions in a priority fluid queue are established byBerger and Whitt [2000]. Kraimeche [2001] models the multiplexing of video
and data sources in an ATM access network by a fluid priority queue. The
cell loss of the data traffic is analyzed. Drekic and Stafford [2002] propose asymbolic computation procedure to calculate (higher order) moments of thesystem contents and packet delay - starting from the pgf or Laplace-Stieltjes
transform of these variables - in (general) priority queues. Sharma and Virtamo [2002] study a two-class PR priority queue with (Markov modulated)
Poisson arrivals and general service times. The queue is assumed to be of finite length in the sense that the total amount of (unfinished) work in the queueis assumed to be limited (in contrast with traditional finite queue analyses,
where the number of packets in the system is assumed to be limited). Takada
and Miyazawa [2002] analyzed a fluid priority queue with the high-priority
traffic existing out of continuous fluid and the low-priority traffic out of batch
fluid. The stationary joint distribution of the buffer contents of both types isobtained in terms of matrix transforms. In Liu and Gong [2003], a two-class121
fluid priority queue is studied with the high-priority traffic modeled by thesuperposition of on-off sources and the low-priority traffic by a constant bit
rate flow. Sample path analysis tools are used to obtain various analyticalresults (e.g., the low-priority system contents distribution).
Continuous-time multi-server PR priority queues are analyzed by a.o. Goldberg[1981], Mitrani and King [1981], Buzen and Bondi [1983], Kao and Narayanan[1991], Gail et al. [1992], Tabet-Aouel and Kouvatsos [1992], Kouvatsos andTabet-Aouel [1994], Núñez Queija and Boxma [1998] and van der Heijden
et al. [2004]. All these papers except for Gail et al. [1992], Tabet-Aouel andKouvatsos [1992] assume Poisson arrivals and exponential service times. In[Goldberg 1981], an exact and a (faster) approximate procedure to calculate
the steady-state probabilities numerically are established. Mitrani and King
[1981], Buzen and Bondi [1983] calculate the mean values of the steady-state
delay. Both papers provide an exact analysis for a two-class system and an approximative analysis for a system with a general number of priority classes.
Kao and Narayanan [1991] analyze a two-class PR priority queue by making
use of matrix-analytic solution techniques. To limit the state space, two approximations are proposed: assuming a finite high-priority buffer or a finite
low-priority buffer respectively. Gail et al. [1992] analyze a two-class PR priority queue. By eliminating remaining unknown variables from the generating
functions of the state probabilities, these latter ones are numerically calculated. An entropy maximization approach is used to characterize the distributional form of the steady-state probabilities in a PR priority queue with general interarrival and service times by Tabet-Aouel and Kouvatsos [1992] andKouvatsos and Tabet-Aouel [1994]. Núñez Queija and Boxma [1998] study
a two-class priority system with independent Poisson arrivals and exponential service times. The low-priority packets are furthermore served in a processor sharing fashion. A complete characterization of the joint distributionof the steady-state system contents of both classes is given and the results areapplied in an ATM context. The approximation of performance measures in
multi-class PR priority queues is discussed by van der Heijden et al. [2004] forlarge problem instances (many classes and servers) using class aggregationand server reduction.
Discrete-time PR priority queues with no correlation between the arrival processesof different classes are studied by a.o. Rubin and Tsai [1989], Chen and Guérin[1991], Choi et al. [1997], Lee et al. [1998], Lee [2001] and Fiems et al. [2004].
Chen and Guérin [1991], Choi et al. [1997] and Lee et al. [1998] analyze an
input queueing ATM switch with cells of two traffic classes arriving to theinlets of the switch. The cells arrive at the inlets according to a Bernoulli process and are all of the same length. Because of the head-of-the-line blockingof the input queues, the service times of cells are not deterministic but are approximatively - modeled by a geometric distribution. Fiems et al. [2004]
describe an analysis of a queue with service interruptions. The service interruptions are of renewal type. The results are used to analyze the low-priority
characteristics (such as the system contents and packet delay) in preemptive

122

Preemptive resume priority

priority queues. Rubin and Tsai [1989] and Lee [2001] analyze a PR priority
queue with general service times. The numbers of per-slot arrivals are i.i.d.
from slot-to-slot. The mean delays of a general number of priority classes arecalculated using pgf’s in [Rubin and Tsai 1989]. Lee [2001] calculates the joint
pgf of the system contents of two priority classes, as well as the pgf’s of theunfinished work and the delay of both classes. The queueing model and theanalysis method described in this chapter is closely related to the ones in thispaper. The main difference is that we allow correlation between the numberof per-slot arrivals in this chapter, while this is assumed not to be the case in
the model in [Lee 2001].
Takahashi and Hashida [1991] and Walraevens et al. [2000a, 2001, 2002b,
2004b] study discrete-time PR priority queues with correlation between the number of per-slot arrivals of the different priority classes. The numbers of per-slot
arrivals are assumed to be i.i.d. in all these papers. Takahashi and Hashida[1991] calculate the pgf of the delay of a general number of priority classes,
starting from the total unfinished work (without analyzing the system contents). In [Walraevens et al. 2000a, 2001, 2002b, 2004b], the number of priority
classes is assumed to be equal to two. In these papers the joint pgf of thesystem contents and the pgf’s of the packet delays of both classes are determined. In [Walraevens et al. 2000a, 2004b], the service times are assumed tobe geometrically distributed. This condition is first relaxed to general service
times for the high-priority service times in [Walraevens et al. 2001]. Finally,in [Walraevens et al. 2002b], the service times of both classes are generally
distributed. Note that in the models of all these papers the distributions of theservice times of different classes may be different.
In this chapter, we describe the analysis of a PR priority queue with two priority classes as described in [Walraevens et al. 2000a, 2001, 2002b, 2004a,b].
First, we describe the analysis approach in section 4.1. The multivariate pgf
that is the starting-point of our further calculations is described in section 4.2.
The system contents, queue contents and unfinished work of both classes areanalyzed in section 4.3, 4.4 and 4.5 respectively. The packet delay and waiting time are discussed in sections 4.6 and 4.7. In section 4.8, we briefly focus
on some relationships with results of the NP priority queue. Some numericalexamples are shown in section 4.9, before completing this chapter with someconcluding remarks in section 4.10.

4.1 Preliminaries
As described in section 3.1, the system contents at consecutive slot boundaries of queues with generally distributed service times do not form a Markov
chain. Therefore, a Markov chain first has to be constructed.
The embedded Markov chain technique used in the previous chapter - defining specific slot boundaries so that the system contents at these slot bound-4.1 Preliminaries

123

aries form a Markov chain - is more complicated for the PR priority queue.
This is caused by the fact that the service of low-priority packets can be interrupted and later resumed. In the previous chapter for instance, we defined
the start-slots as the slots at the beginning of which a packet can enter theserver (if there are any packets). Because of the non-preemptive property, thenumber of slots between a start-slot and the next start-slot was either one, thelength of a class-1 service time or the length of a class-2 service time. In the
PR priority case however, this is no longer true, since class-2 service times areinterrupted by newly arriving class-1 packets. It is furthermore complicatedto define other time epochs so that the system contents at these time epochs
form a Markov chain.
Therefore, we follow another approach in the case of queues with a preemptive (resume) priority scheduling discipline. This is a technique that is
widely used in queueing theory. We construct a Markov chain using stochastic
variables at consecutive slot boundaries (we thus do not define specific slot
boundaries). When the system contents at consecutive slots do not form aMarkov chain, supplementary variables are defined in such a way that the system contents together with these supplementary variables form a Markov
chain. This is called the supplementary variable technique (and is as one of thefirst times used by Cox [1955]). In this chapter, we start with a relatively
simple model and extend the model and analysis in a few steps.
Firstly, we assume that the service times of both classes are (shifted) geometrically distributed. The geometric distribution contains the memoryless property. In this case the memoryless property means that when tagging a slot
wherein a service time is on-going the residual part of the service time fromthat slot on is independent of the amount of service the packet has already received. Or in other words, the probability that a packet that is served during aslot will need at least another slot of service is equal to a constant parameter β,
independent of the amount of service it has already received before that slot.
Therefore, the system contents at consecutive slot boundaries form a Markov
chain and no supplementary variables have to be defined. Note that we allow this parameter β to be different for class-1 and class-2 service times. Thismodel is analyzed in [Walraevens et al. 2000a, 2004b].
Secondly, we assume general service times for the class-1 packets, while keeping the service times of the class-2 packets geometrically distributed. In thiscase, the system contents at consecutive slot boundaries do no longer form aMarkov chain. We therefore define a supplementary variable, notably, the remaining number of slots that a class-1 packet in service needs before leaving
the system. This is called the residual service time of class-1. The system contents of both classes and the residual service time of class-1 at the beginningof consecutive slots form a Markov chain. Note, that since the class-2 service
times are geometrically distributed, the class-2 system contents is still enoughto describe the class-2 characteristics of the queue. This model is studied in[Walraevens et al. 2001, 2004a].

124

Preemptive resume priority

Finally, we relax the last limitation in our model and analyze the system contents in the case of generally distributed service times for both classes. In thiscase, we define a second supplementary variable - besides the residual service
time of class-1 - notably, the residual service time of class-2. This stochastic variable is defined as the number of slots of service that the oldest class-2 packet
in the system needs to be completely served. The oldest class-j packet in thesystem at a certain time instant is defined as the class-j packet that - from all
the packets present in the system at that time instant - arrived first. Note, thatthe definition of the residual service time of class-2 is a bit different than forthe class-1 residual service time. This is because the oldest class-2 packet is
not necessarily in service - because of the possible presence of class-1 packets
in the system which are served with priority over the class-2 packets - as opposed to the oldest class-1 packet. The analysis described for this model is asin [Walraevens et al. 2002b].

4.2 The supplementary variable technique4.2.1 Geometrically distributed service times
First, we assume geometric service times for both classes. The pgf of the service times of class-j packets is given by
Sj (z) =(1 − βj )z,
1 − βj z(4.1)

with j = 1, 2. Thus βj denotes the probability that an on-going class-j service
time lasts at least another slot.
We denote the system contents of class-j packets at the beginning of slot k by
uj,k (j = 1, 2). Their joint pgf is given by uu
Uk (z1 , z2 ) ,E z1 1,k z2 2,k .

(4.2)

As already mentioned in section 4.1, the set {(u1,k , u2,k ), k ≥ 1} forms a
Markov chain, since the arrival process is i.i.d. and the service times aregeometrically distributed. The following system equations are established:
1. If u1,k = u2,k = 0:uj,k+1 =aj,k ,(4.3)

j = 1, 2, i.e., the only packets present in the system at the beginning ofslot k + 1 are the packets that arrived during slot k.

4.2 The supplementary variable technique125

2. If u1,k = 0, u2,k > 0:
u1,k+1 =a1,k
u2,k + a2,kwith probability β2
u2,k+1 =u2,k + a2,k − 1 with probability 1 − β2 ,

(4.4)
(4.5)

i.e., the class-2 packet in service stays in the system (not necessarily inthe server) with probability β2 and leaves the system at the end of slot kwith probability 1 − β2 .
3. If u1,k > 0:
u1,k+1 =

u1,k + a1,kwith probability β1
u1,k + a1,k − 1 with probability 1 − β1u2,k+1 =u2,k + a2,k ,

(4.6)
(4.7)

i.e., the class-1 packet in service stays in the system with probability β1
and leaves the system at the end of slot k with probability 1 − β1 .
Using these system equations, we derive a relation between Uk (z1 , z2 ) andUk+1 (z1 , z2 ). We remind the reader that E[X{Y }] is short for E[X|Y ]Prob[Y ].
We proceed as follows, taking into account the statistical independence of therandom variables (u1,k , u2,k ) and (a1,k , a2,k ): uuUk+1 (z1 , z2 ) ,E z1 1,k+1 z2 2,k+1 aa=E z1 1,k z2 2,k {u1,k = u2,k = 0}
i
h
u +a
a
+ β2 E z1 1,k z2 2,k 2,k {u1,k = 0, u2,k > 0}hiau +a −1+ (1 − β2 )E z1 1,k z2 2,k 2,k {u1,k = 0, u2,k > 0}
i
h
u +a
u +a
+ β1 E z1 1,k 1,k z2 2,k 2,k {u1,k > 0}ihu +a −1 u +a
+ (1 − β1 )E z1 1,k 1,k z2 2,k 2,k {u1,k > 0}

(4.8)
(4.9)

=A(z1 , z2 )Prob [u1,k = u2,k = 0]
(4.10) u
1 − β2+ A(z1 , z2 ) β2 +E z2 2,k {u1,k = 0, u2,k > 0}
z2


 u

1 − β1u+ A(z1 , z2 ) β1 +E z1 1,k z2 2,k {u1,k > 0}
z1
A(z1 , z2 )[z1 z2 Uk (0, 0) + z1 (1 − β2 + β2 z2 )(Uk (0, z2 ) − Uk (0, 0))=z1 z2(4.11)+ (1 − β1 + β1 z1 )z2 (Uk (z1 , z2 ) − Uk (0, z2 ))].

126

Preemptive resume priority

We assume the system is stable and as a result Uk (z1 , z2 ) and Uk+1 (z1 , z2 ) converge both to a common steady-state value U (z1 , z2 ). By taking the k → ∞limit of equation (4.11), we obtain:
z1 (1 − β2 )(z2 − 1)U (0, 0)
A(z1 , z2 )+[(1 − β2 )z1 − (1 − β1 )z2 + (β2 − β1 )z1 z2 ]U (0, z2 )U (z1 , z2 ) =.
z2 [(1 − β1 A(z1 , z2 ))z1 − (1 − β1 )A(z1 , z2 )](4.12)
It now remains for us to determine the unknown function U (0, z2 ) and theunknown parameter U (0, 0). This can be done in two steps. Firstly, we noticethat the joint pgf U (z1 , z2 ) must be bounded for all values of z1 and z2 suchthat |z1 | < 1 and |z2 | < 1. In particular, this should be true for z1 = Y1 (z2 ) with
Y1 (z) ,E1 (Y1 (z), z)=(1 − β1 )A(Y1 (z), z),
1 − β1 A(Y1 (z), z)(4.13)(4.14)and Ej (z1 , z2 ) , Sj (A(z1 , z2 )) - and for |z2 | < 1 (see the appendix for moredetails). The above implies that if we choose z1 = Y1 (z2 ) in equation (4.12),
with |z2 | < 1, the denominator of the right-hand side of this equation becomeszero. The same must then be true for its numerator, yielding
U (0, z2 ) =U (0, 0)Y1 (z2 )(1 − β2 )(z2 − 1).
(1 − β1 )z2 − (1 − β2 )Y1 (z2 ) − (β2 − β1 )Y1 (z2 )z2(4.15)

The following expression for U (z1 , z2 ) is then derived from equation (4.12)
together with equation (4.15):
U (z1 , z2 ) =U (0, 0)E1 (z1 , z2 )(z1 − Y1 (z2 ))z1 − E1 (z1 , z2 )(1 − β2 )(z2 − 1)×.
(1 − β2 )Y1 (z2 )(z2 − 1) − (1 − β1 )z2 (Y1 (z2 ) − 1)

(4.16)

Finally, in order to find an expression for U (0, 0), we put z1 = z2 = 1 and use
de l’Hôpital’s rule in expression (4.16). Therefore, we will need to calculate
the value of Y10 (1). By taking the derivative of both sides of the definition of
Y1 (z) and by substituting z by 1, we obtain - Y1 (1) = 1 since we have alreadyproved in the previous chapter that Y1 (z) is a pgf Y10 (1) =λ2 µ 11 − ρ1(4.17)

4.2 The supplementary variable technique

127

Figure 4.1: Sample of the time-axis for general class-1 and geometric class-2 service
times

=

λ2
.
1 − β 1 − λ1

(4.18)

Using this expression, we obtain the expected result for U (0, 0):
U (0, 0) = 1 − ρT .

(4.19)

Substituting expression (4.19) in expression (4.16) finally gives U (z1 , z2 ) interms of the system’s parameters and the implicitly defined Y1 (z).
In the special case that β1 = β2 = 0, the service times are deterministicallyequal to one slot. Substituting β1 = β2 = 0 indeed yields expression (2.13) forU (z1 , z2 ) in chapter 2.

4.2.2 Generally distributed class-1 service times, geometrically distributed class-2 service times
In this subsection, we analyze the steady-state system contents in the case ofgenerally distributed class-1 service times and geometrically distributed (withparameter β2 ) class-2 service times. Since the service times of class-1 packets
are generally distributed, the set {(u1,k , u2,k ), k ≥ 1} does (generally) not forma Markov chain. Therefore, we introduce a new stochastic variable r1,k as
follows: r1,k indicates the remaining number of slots needed to transmit theclass-1 packet in service at the beginning of slot k, if u1,k > 0, and r1,k =0 if u1,k = 0. A sample of the time axis is given in Figure 4.1, in order todemonstrate the relevant stochastic variables.

128

Preemptive resume priority

With this definition, {(r1,k , u1,k , u2,k ), k ≥ 1} is seen to constitute a Markovian
state description of the system at the beginning of slot k. Let s∗1,k indicate theservice time of the next class-1 packet to receive service at the beginning ofslot k. The following system equations are then established:
1. If r1,k = 0 (and hence u1,k = 0):(a) If u2,k = 0:uj,k+1 =aj,k0
if a1,k = 0
r1,k+1 = ∗s1,k if a1,k > 0,(4.20)(4.21)(j = 1, 2), i.e., the only packets present in the system at the beginning of slot k + 1 are the packets that have arrived during theprevious slot. If there are new arrivals of class-1 packets during slotk, the remaining number of slots needed to serve the packet in service at the beginning of slot k + 1 is equal to this packet’s complete
service time; otherwise, a class-2 packet (if any) enters the server atthe beginning of slot k + 1.
(b) If u2,k > 0:
u1,k+1 =a1,k
u2,k + a2,kwith probability β2
u2,k+1 =u2,k − 1 + a2,k with probability 1 − β20
if a1,k = 0
r1,k+1 = ∗s1,k if a1,k > 0.

(4.22)(4.23)(4.24)

Expression (4.23) expresses that the service of the class-2 packet inservice at the beginning of slot k is completed at the end of slot kwith probability 1 − β2 , or that the packet stays in the system (notnecessarily the server) with probability β2 . This last event combined with a1,k > 0 represents the case where the service of theclass-2 packet is interrupted by a newly arriving class-1 packet, due
to the preemptive service discipline.
2. If r1,k = 1:
u1,k+1 =u1,k − 1 + a1,ku2,k+1 =u2,k + a2,k0
if u1,k − 1 + a1,k = 0
r1,k+1 = ∗s1,k if u1,k − 1 + a1,k > 0.

(4.25)(4.26)(4.27)

Since the class-1 packet in service at the beginning of slot k needs one
more slot of service (namely slot k), it leaves the system at the end of

4.2 The supplementary variable technique

129

slot k. If there are class-1 packets present in the system at the end of slotk, the service of a new class-1 packet is started.
3. If r1,k > 1:
uj,k+1 =uj,k + aj,k
r1,k+1 =r1,k − 1,

(4.28)(4.29)

for j = 1, 2. The class-1 packet in service at the beginning of slot k stays
in the server at the beginning of slot k + 1. Its residual service time isdecreased by one.
We define Pk (x1 , z1 , z2 ) as the joint pgf of the state vector (r1,k , u1,k , u2,k ):

 r
u
u
Pk (x1 , z1 , z2 ) ,E x11,k z1 1,k z2 2,k .

(4.30)

Using the system equations, we derive a relation between Pk (., ., .) andPk+1 (., ., .). We first defineihu −1 uRk (z1 , z2 ) ,E z1 1,k z2 2,k {r1,k = 1}
=

∞
∞ X
X

Prob[r1,k = 1, u1,k = m, u2,k = n]z1m−1 z2n .

(4.31)(4.32)

m=1 n=0

For further use we also note that u
Rk (0, z2 ) =E z2 2,k {r1,k = u1,k = 1} .

(4.33)Taking into account the statistical independence of the random variables(r1,k , u1,k , u2,k ) and (a1,k , a2,k ) respectively, we find:Pk+1 (x1 , z1 , z2 ) =A(0, z2 )Pk (0, 0, 0) + (A(z1 , z2 ) − A(0, z2 ))S1 (x1 )Pk (0, 0, 0)(4.34)
1 − β2+ A(0, z2 ) β2 +(Pk (0, 0, z2 ) − Pk (0, 0, 0))z2
1 − β2+ (A(z1 , z2 ) − A(0, z2 ))S1 (x1 ) β2 +z2× (Pk (0, 0, z2 ) − Pk (0, 0, 0)) + A(0, z2 )Rk (0, z2 )+ A(z1 , z2 )S1 (x1 )Rk (z1 , z2 ) − A(0, z2 )S1 (x1 )Rk (0, z2 )+A(z1 , z2 )[Pk (x1 , z1 , z2 ) − x1 z1 Rk (z1 , z2 ) − Pk (0, 0, z2 )].
x1

130

Preemptive resume priority

We assume that the system is stable and as a result Pk (x1 , z1 , z2 ) (Rk (z1 , z2 )respectively) and Pk+1 (x1 , z1 , z2 ) (Rk+1 (z1 , z2 ) respectively) converge both to
a common steady-state value P (x1 , z1 , z2 ) (R(z1 , z2 ) respectively). By taking
the k → ∞ limit of expression (4.34), we obtain:
P (x1 , z1 , z2 ) =1[(1 − β2 )x1 (z2 − 1){A(0, z2 )(1 − S1 (x1 ))z2 (x1 − A(z1 , z2 ))(4.35)+ A(z1 , z2 )S1 (x1 )}P (0, 0, 0)+ x1 A(0, z2 )(1 − S1 (x1 ))(1 − β2 + β2 z2 )P (0, 0, z2 )+ A(z1 , z2 )(x1 S1 (x1 )(1 − β2 + β2 z2 ) − z2 )P (0, 0, z2 )+ x1 z2 A(0, z2 )(1 − S1 (x1 ))R(0, z2 )+ x1 z2 A(z1 , z2 )(S1 (x1 ) − z1 )R(z1 , z2 )].

It now remains for us to determine the unknown functions P (0, 0, z2 ), R(0, z2 )and R(z1 , z2 ) and the unknown parameter P (0, 0, 0) from equation (4.35). Thiscan be done in the following steps. Firstly, we observe that P (x1 , 0, z2 ) =P (0, 0, z2 ) for all x1 and z2 , due to the fact that r1,k = 0 iff u1,k = 0. Substituting z1 by 0 in equation (4.35) and using this property, we obtain:[z2 − A(0, z2 )(1 − β2 + β2 z2 )]P (0, 0, z2 )−(1 − β2 )(z2 − 1)A(0, z2 )P (0, 0, 0)
R(0, z2 ) =.
z2 A(0, z2 )(4.36)

This expression can be used to eliminate R(0, z2 ) in expression (4.35).
Next, we notice that the function P (x1 , z1 , z2 ) must be bound for all values ofx1 and zj such that |x1 | < 1 and |zj | < 1 (j = 1, 2) since P (x1 , z1 , z2 ) is a pgf.
In particular, this should be true for x1 = A(z1 , z2 ) and |zj | < 1 (j = 1, 2), since|A(z1 , z2 )| < 1 for all such zj (A(z1 , z2 ) is a pgf). The above implies that if wechoose x1 = A(z1 , z2 ) in equation (4.35), where |zj | < 1, the denominator of
the right-hand side of this equation vanishes. The same must then be true forits numerator, which yields the following relation for R(z1 , z2 ):E1 (z1 , z2 )R(z1 , z2 ) =A(z1 , z2 )(1 − β2 )(z2 − 1)P (0, 0, 0)+[A(z1 , z2 )(1 − β2 + β2 z2 ) − z2 ]P (0, 0, z2 ), (4.37)z2 A(z1 , z2 )(z1 − E1 (z1 , z2 ))where we have used equation (4.36) to eliminate R(0, z2 ).
Next, we also notice that the partial pgf R(z1 , z2 ) must be bound for all valuesof zj such that |zj | < 1 (j = 1, 2). In particular, this should be true for z1 =Y1 (z2 ), with - as before Y1 (z) , E1 (Y1 (z), z),(4.38)

4.2 The supplementary variable technique131

and |z2 | < 1. If we put z1 = Y1 (z2 ) in equation (4.37), the denominator of theright-hand side of this equation equals zero. The same must then be true forits numerator, yielding
P (0, 0, z2 ) = P (0, 0, 0)

A(Y1 (z2 ), z2 )(1 − β2 )(z2 − 1).
z2 − A(Y1 (z2 ), z2 )(1 − β2 + β2 z2 )(4.39)

Using this equation and equations (4.36)-(4.37) in equation (4.35), the following expression for P (x1 , z1 , z2 ) is derived:
P (0, 0, 0)(1 − β2 )(z2 − 1)
A(Y1 (z2 ), z2 )(4.40)
P (x1 , z1 , z2 ) =z2 − A(Y1 (z2 ), z2 )(1 − β2 + β2 z2 )
x1 z1 (A(Y1 (z2 ), z2 ) − A(z1 , z2 ))(S1 (x1 ) − E1 (z1 , z2 ))−.
(x1 − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))Finally, in order to find an expression for P (0, 0, 0), we put x1 = z1 = z2 = 1
and use de l’Hôpital’s rule in equation (4.40). Using
Y10 (1) =λ2 µ 1,1 − ρ1(4.41)

we find the expected result
P (0, 0, 0) = 1 − ρT .

(4.42)

If we assume geometric class-1 service times with parameter β1 , P (1, z1 , z2 )equals expression (4.16) of U (z1 , z2 ) in the previous model, as expected.

4.2.3 Generally distributed service times
Finally, we analyze the system contents in case of generally distributed service times for both classes (which can be different for the two classes). The set{(r1,k , u1,k , u2,k ), k ≥ 1}, as defined in the previous subsection, does no longer
form a Markov chain, since the class-2 service times are also generally distributed in this subsection. Therefore, we introduce a new series of stochastic
variables r2,k as follows: r2,k indicates the remaining number of slots service
time of the oldest class-2 packet in the system at the beginning of slot k, if
u2,k > 0, and r2,k = 0 if u2,k = 0. A sample of the time axis is given in Figure
4.2 in order to demonstrate the relevant stochastic variables.
With this definition, {(r1,k , u1,k , r2,k , u2,k ), k ≥ 1} is seen to constitute a
Markovian state description of the system at the beginning of slot k. Let s∗j,k(j = 1, 2) indicate the service time of the next class-j packet to receive service
at the beginning of slot k. The following system equations are established:

132

Preemptive resume priority

Figure 4.2: Sample of the time-axis for general class-1 and class-2 service times

1. If r1,k = 0 (and hence u1,k = 0):Class-1 system equations:
u1,k+1 =a1,k0
if a1,k = 0
r1,k+1 = ∗.
s1,k if a1,k > 0(4.43)(4.44)The only class-1 packets present in the system at the beginning of slot
k + 1 are the packets that arrive during the previous slot. If there havebeen new arrivals of class-1 packets during slot k, the remaining numberof slots needed to serve the first class-1 packet is that packet’s full service
time.
Class-2 system equations:
In order to give expressions for u2,k+1 and r2,k+1 , the value of r2,k isimportant. Three situations are distinguished:(a) If r2,k = 0 (and hence u2,k = 0):
u2,k+1 =a2,k0
if a2,k = 0,
r2,k+1 = ∗s2,k if a2,k > 0(4.45)(4.46)

4.2 The supplementary variable technique133

i.e., when class-2 packets arrive during slot k, the remaining service
time of the oldest class-2 packet is this packet’s service time.
(b) If r2,k = 1:
u2,k+1 =u2,k − 1 + a2,k ;0
if u2,k − 1 + a2,k = 0.
r2,k+1 = ∗s2,k if u2,k − 1 + a2,k > 0(4.47)(4.48)

The class-2 packet in service at the beginning of slot k leaves thesystem at the end of slot k. If there are more class-2 packets present
at the end of slot k, the remaining number of slots needed to serve
the oldest class-2 packet is that packet’s complete service time.
(c) If r2,k > 1:
u2,k+1 =u2,k + a2,k
r2,k+1 =r2,k − 1,

(4.49)(4.50)

i.e., the class-2 packet in service at the beginning of slot k remains
in the system (not necessarily in the server - it only remains in theserver if there are no new class-1 arrivals). Its remaining service
time is decreased by one.
2. If r1,k > 0:Class-1 system equations:(a) If r1,k = 1:
u1,k+1 =u1,k − 1 + a1,k0
if u1,k − 1 + a1,k = 0
r1,k+1 = ∗.
s1,k if u1,k − 1 + a1,k > 0(4.51)(4.52)

The class-1 packet in service at the beginning of slot k, leaves thesystem at the end of slot k. If any class-1 packets present, a new one
enters the server.
(b) If r1,k > 1:
u1,k+1 =u1,k + a1,k
r1,k+1 =r1,k − 1,

(4.53)(4.54)

i.e., the class-1 packet in service at the beginning of slot k stays inthe server at the beginning of slot k + 1. Its remaining service timeis decreased by one.

134

Preemptive resume priority
Class-2 system equations:(a) If r2,k = 0 (and hence u2,k = 0):
u2,k+1 =a2,k0
if a2,k = 0
r2,k+1 = ∗.
s2,k if a2,k > 0(4.55)(4.56)

There were no class-2 packets in the system at the beginning of slotk.
(b) If r2,k > 0:
(4.57)(4.58)

u2,k+1 =u2,k + a2,k
r2,k+1 =r2,k .

The difference with the previous situation is that there are class2 packets in the system at the beginning of slot k. The remaining
service time of the oldest class-2 packet stays the same.
We define Pk (x1 , z1 , x2 , z2 ) as the pgf of the state vector (r1,k , u1,k , r2,k , u2,k ):
r

u

r

u

Pk (x1 , z1 , x2 , z2 ) , E[x11,k z1 1,k x22,k z2 2,k ].

(4.59)

Note that we use the same notation for the 4-dimensional pgf in this subsection, as we have used for the 3-dimensional pgf in the previous subsection.
This is done because they are both the pgf of the Markovian state vectors.
Since these are two different analyses, this does not give rise to any confusion.
Using the system equations (4.43)-(4.58), we constitute a relation between
Pk (x1 , z1 , x2 , z2 ) and Pk+1 (x1 , z1 , x2 , z2 )- taking into account the statistical independence of the random variables (r1,k , u1,k , r2,k , u2,k ), (a1,k , a2,k ), s∗1,k ands∗2,k respectively - which is given by
Pk+1 (x1 , z1 , x2 , z2 )(4.60)
= A(0, 0) + (A(0, z2 ) − A(0, 0))S2 (x2 ) + (A(z1 , 0) − A(0, 0))S1 (x1 )
+ (A(z1 , z2 ) − A(z1 , 0) − A(0, z2 ) + A(0, 0))S1 (x1 )S2 (x2 ) Pk (0, 0, 0, 0)+ A(0, 0)R2,k (0) + A(0, z2 )R2,k (z2 ) − A(0, 0)R2,k (0) S2 (x2 )+ (A(z1 , 0) − A(0, 0))R2,k (0)S1 (x1 ) + (A(z1 , z2 ) − A(0, z2 ))R2,k (z2 )− (A(z1 , 0) − A(0, 0))R2,k (0) S1 (x1 )S2 (x2 )A(0, z2 ) + (A(z1 , z2 ) − A(0, z2 ))S1 (x1 ) +
Pk (0, 0, x2 , z2 ) − x2 z2 R2,k (z2 )
x
  2

− Pk (0, 0, 0, 0) + A(0, 0) + (A(0, z2 ) − A(0, 0))S2 (x2 ) R1,k (0, 0, 0)+ A(z1 , 0)R1,k (z1 , 0, 0) − A(0, 0)R1,k (0, 0, 0) S1 (x1 )4.2 The supplementary variable technique

135



+ (A(z1 , z2 ) − A(z1 , 0))R1,k (z1 , 0, 0) − (A(0, z2 ) − A(0, 0))R1,k (0, 0, 0)
× S1 (x1 )S2 (x2 ) + A(0, z2 ) R1,k (0, x2 , z2 ) − R1,k (0, 0, 0)+ A(z1 , z2 )(R1,k (z1 , x2 , z2 ) − R1,k (z1 , 0, 0))− A(0, z2 )(R1,k (0, x2 , z2 ) − R1,k (0, 0, 0)) S1 (x1 )A(z1 , 0) + (A(z1 , z2 ) − A(z1 , 0)S2 (x2 )x1× Pk (x1 , z1 , 0, 0) − x1 z1 R1,k (z1 , 0, 0) − Pk (0, 0, 0, 0)
A(z1 , z2 ) +(Pk (x1 , z1 , x2 , z2 ) − Pk (x1 , z1 , 0, 0)) − x1 z1 (R1,k (z1 , x2 , z2 )x1

− R1,k (z1 , 0, 0)) − (Pk (0, 0, x2 , z2 ) − Pk (0, 0, 0, 0)) ,+with the partial pgf’s R1,k (z1 , x2 , z2 ) and R2,k (z2 ) defined ashiu −1 ru
R1,k (z1 , x2 , z2 ) ,E z1 1,k x22,k z2 2,k {r1,k = 1}ihu −1R2,k (z2 ) ,E z2 2,k {r1,k = u1,k = 0, r2,k = 1} .

(4.61)(4.62)

We assume that the queueing system is stable and as a result Pk (x1 , z1 , x2 , z2 ),R1,k (z1 , x2 , z2 ) and R2,k (z2 ) converge to the steady-state values:
P (x1 , z1 , x2 , z2 ) , lim Pk (x1 , z1 , x2 , z2 )(4.63)

R1 (z1 , x2 , z2 ) , lim R1,k (z1 , x2 , z2 )(4.64)

R2 (z2 ) , lim R2,k (z2 ),(4.65)

k→∞

k→∞

k→∞

respectively. By taking the k → ∞ limit in (4.60) we obtain(4.66)

P (x1 , z1 , x2 , z2 )=1x1 x2 A(0, 0)(1 − S1 (x1 ))(1 − S2 (x2 ))x2 (x1 − A(z1 , z2 ))+ x1 A(0, z2 )(1 − S1 (x1 ))(x2 S2 (x2 ) − 1)
+ x2 A(z1 , 0)(x1 S1 (x1 ) − 1)(1 − S2 (x2 ))+ A(z1 , z2 )(x1 S1 (x1 )(x2 S2 (x2 ) − 1) − x2 (S2 (x2 ) − 1)) P (0, 0, 0, 0)+ x1 x2 A(0, 0)(1 − S1 (x1 )) + A(z1 , 0)S1 (x1 ) (1 − S2 (x2 ))R2 (0)+ x1 x2 (A(0, z2 ) − A(0, 0))(1 − S1 (x1 ))(S2 (x2 ) − 1)R1 (0, 0, 0)n+ x2 (A(z1 , z2 ) − A(z1 , 0))(S2 (x2 ) − 1)P (x1 , z1 , 0, 0)+ x1 x2 (A(z1 , z2 ) − A(z1 , 0))(z1 − S1 (x1 ))(1 − S2 (x2 ))R1 (z1 , 0, 0)+ x1 A(0, z2 )(1 − S1 (x1 )) + A(z1 , z2 )(x1 S1 (x1 ) − x2 ) P (0, 0, x2 , z2 )
+ x1 x2 A(0, z2 )(1 − S1 (x1 )) + A(z1 , z2 )S1 (x1 ) (S2 (x2 ) − z2 )R2 (z2 )136Preemptive resume priority+ x1 x2 A(0, z2 )(1 − S1 (x1 ))R1 (0, x2 , z2 )o
+ x1 x2 A(z1 , z2 )(S1 (x1 ) − z1 )R1 (z1 , x2 , z2 ) .

It now remains for us to determine the unknown functions P (x1 , z1 , 0, 0),
R1 (z1 , 0, 0), P (0, 0, x2 , z2 ), R2 (z2 ), R1 (0, x2 , z2 ) and R1 (z1 , x2 , z2 ) and the unknown parameters P (0, 0, 0, 0), R2 (0) and R1 (0, 0, 0). This is done in a few
steps.
We observe that, due to the fact that rj,k = 0 iff uj,k = 0 (j = 1, 2 respectively),
the following equations hold:
P (x1 , 0, x2 , 0) =P (0, 0, 0, 0)
R1 (0, x2 , 0) =R1 (0, 0, 0),(4.67)(4.68)

for all xj (j = 1, 2). By putting zj = 0 (j = 1, 2) in (4.66) and using equations(4.67) and (4.68), we obtain the following relation between P (0, 0, 0, 0), R2 (0)and R1 (0, 0, 0):
P (0, 0, 0, 0) =A(0, 0)[P (0, 0, 0, 0) + R2 (0) + R1 (0, 0, 0)].

(4.69)

We furthermore observe that the following equations hold - again because
rj,k = 0 iff uj,k = 0 P (x1 , z1 , x2 , 0) =P (x1 , z1 , 0, 0)
R1 (z1 , x2 , 0) =R1 (z1 , 0, 0)
P (x1 , 0, x2 , z2 ) =P (0, 0, x2 , z2 ),(4.70)(4.71)(4.72)

for all xj and zj (j = 1, 2). Replacing z2 (z1 respectively) by 0 in equation (4.66)
and using the former equations and equation (4.69), we find the following
expressions for P (x1 , z1 , 0, 0) and P (0, 0, x2 , z2 ) respectively:
x1 (1 − S1 (x1 )) + A(z1 , 0)(x1 S1 (x1 ) − 1)]P (0, 0, 0, 0)
+x1 A(z1 , 0) S1 (x1 )R2 (0) + (S1 (x1 ) − z1 )R1 (z1 , 0, 0)
P (x1 , z1 , 0, 0) =x1 − A(z1 , 0)(4.73)
 x2 (1 − S2 (x2 )) + A(0, z2 )(x2 S2 (x2 ) − 1) P (0, 0, 0, 0) 
+x2 A(0, z2 )(S 2 (x2 ) − 1)R1 (0, 0, 0)+x2 A(0, z2 ) (S2 (x2 ) − z2 )R2 (z2 ) + R1 (0, x2 , z2 )P (0, 0, x2 , z2 ) =.
x2 − A(0, z2 )(4.74)
Substituting these two expressions in expression (4.66) allows us to eliminate
P (x1 , z1 , 0, 0) and P (0, 0, x2 , z2 ) in this latter expression.

4.2 The supplementary variable technique137

Firstly, we determine all unknown functions in the right-hand side of expression (4.74) as a function of the - at this moment still unknown - constantP (0, 0, 0, 0). Therefore, we go back to expression (4.66). We notice that thefunction P (x1 , z1 , x2 , z2 ) must be bound for all values of xj and zj such that|xj | < 1 and |zj | < 1 (j = 1, 2) since P (x1 , z1 , x2 , z2 ) is a pgf. In particular,
this should be true for x1 = A(z1 , z2 ), |x2 | < 1 and |zj | < 1 (j = 1, 2), since|A(z1 , z2 )| < 1 for all such x2 and zj . The above implies that if we choose
x1 = A(z1 , z2 ) in equation (4.66), where |x2 | < 1 and |zj | < 1, the denominatorof the right-hand side of this equation vanishes. Of course, the same mustthen be true for the numerator, which yields the following expression:(S2 (x2 ) − 1)R1 (z1 , 0, 0) + R1 (z1 , x2 , z2 )(4.75)1=
A(z1 , z2 )(x2 − A(0, z2 ))(z1 − E1 (z1 , z2 ))n× (A(z1 , z2 ) − A(0, z2 ))E1 (z1 , z2 )S2 (x2 )(x2 − 1)P (0, 0, 0, 0)+ A(0, z2 )(A(z1 , z2 ) − x2 )E1 (z1 , z2 )(S2 (x2 ) − 1)R1 (0, 0, 0)+ x2 (A(z1 , z2 ) − A(0, z2 ))E1 (z1 , z2 )(S2 (x2 ) − z2 )R2 (z2 )o+ A(0, z2 )(A(z1 , z2 ) − x2 )E1 (z1 , z2 )R1 (0, x2 , z2 ) .

Here we also substituted P (x1 , z1 , 0, 0) and P (0, 0, x2 , z2 ) by their expressions
obtained in equations (4.73) and (4.74) respectively.
Next, we notice that (S2 (x2 ) − 1)R1 (z1 , 0, 0) + R1 (z1 , x2 , z2 ) must be bound forall values of x2 and zj such that |x2 | < 1 and |zj | < 1 (j = 1, 2). In particular,
this should be true for z1 = Y1 (z2 ), with
Y1 (z) , E1 (Y1 (z), z).

(4.76)

The above implies that if we insert z1 = Y1 (z2 ) in equation (4.75), where |z2 | <1, the denominator of the right-hand side of this equation vanishes. The same
must then be true for its numerator, yielding(S2 (x2 ) − 1)R1 (0, 0, 0) + R1 (0, x2 , z2 )(4.77)S2 (x2 )(x2 − 1)P (0, 0, 0, 0)
A(Y1 (z2 ), z2 ) − A(0, z2 )+x2 (S2 (x2 ) − z2 )R2 (z2 ).
=A(0, z2 )(x2 − A(Y1 (z2 ), z2 ))Next, we notice that (S2 (x2 ) − 1)R1 (0, 0, 0) + R1 (0, x2 , z2 ) must be bounded
for all values of x2 and z2 such that |x2 | < 1 and |z2 | < 1. In particular,
this should be true for x2 = A(Y1 (z2 ), z2 ). The above implies that if we choosex2 = A(Y1 (z2 ), z2 ) in equation (4.77), the denominator of the right-hand side ofthis equation vanishes. The same must then be true for its numerator, yielding

138

Preemptive resume priority

the following expression for R2 (z2 ):R2 (z2 ) =P (0, 0, 0, 0)Y2 (z2 )(A(Y1 (z2 ), z2 ) − 1),
A(Y1 (z2 ), z2 )(z2 − Y2 (z2 ))(4.78)withY2 (z) , S2 (A(Y2 (z), z)).

(4.79)

Using equations (4.77) and (4.78) in equation (4.74), we find:
P (0, 0, x2 , z2 ) =P (0, 0, 0, 0)(4.80)
(A(Y1 (z2 ), z2 ) − 1)(S2 (x2 ) − Y2 (z2 )).
× 1 + x 2 z2(x2 − A(Y1 (z2 ), z2 ))(z2 − Y2 (z2 ))It now remains for us to determine the unknown functions P (x1 , z1 , 0, 0),
R1 (z1 , 0, 0) and the unknown parameters P (0, 0, 0, 0), R2 (0) and R1 (0, 0, 0)- we already have relation (4.69) between the latter three constants - in expression (4.66). Therefore, we return to expression (4.73). We notice that thefunction P (x1 , z1 , 0, 0) must be bound for all values of x1 and z1 such that|x1 | < 1 and |z1 | < 1 since P (x1 , z1 , x2 , z2 ) is a pgf. In particular, this shouldbe true for x1 = A(z1 , 0), |z1 | < 1, since |A(z1 , 0)| < 1 for all such z1 , because A(z1 , z2 ) is a pgf. The above implies that if we choose x1 = A(z1 , 0) in
equation (4.73), where |z1 | < 1, the denominator of the right-hand side of thisequation vanishes. Of course, the same must then be true for its numerator,
which yields the following relation for R1 (z1 , 0, 0):
R1 (z1 , 0, 0) =E1 (z1 , 0)[(A(z1 , 0) − 1)P (0, 0, 0, 0) + A(z1 , 0)R2 (0)].
A(z1 , 0)(z1 − E1 (z1 , 0))(4.81)

Finally, R2 (0) is easily calculated by substituting z2 by 0 in expression (4.78)
R2 (0) =P (0, 0, 0, 0)

1 − A(Y1 (0), 0).
A(Y1 (0), 0)(4.82)

We find the following expression for P (x1 , z1 , 0, 0) from equation (4.73) together with equations (4.81) and (4.82):
P (x1 , z1 , 0, 0) =P (0, 0, 0, 0)(4.83)

(A(z1 , 0) − A(Y1 (0), 0))(S1 (x1 ) − S1 (A(z1 ), 0)).
× 1 + x 1 z1
A(Y1 (0), 0)(x1 − A(z1 , 0))(z1 − E1 (z1 , 0))
The following expression for P (x1 , z1 , x2 , z2 ) as function of the system parameters, the functions Yj (z) and P (0, 0, 0, 0) is now derived by substituting all4.2 The supplementary variable technique139

found unknown functions and constants in expression (4.66):"(4.84)

P (x1 , z1 , x2 , z2 ) =P (0, 0, 0, 0) 1+

x1 z1 (A(z1 , 0) − A(Y1 (0), 0))(S1 (x1 ) − E1 (z1 , 0))(1 − S2 (x2 ))A(Y1 (0), 0)(x1 − A(z1 , 0))(z1 − E1 (z1 , 0))(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(S1 (x1 ) − E1 (z1 , z2 ))+ x 1 z1(x1 − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))
Y2 (z2 )(z2 − S2 (x2 ))(x2 − 1)(S2 (x2 ) − Y2 (z2 ))×+ z2A(Y1 (z2 ), z2 )x2 − A(Y1 (z2 ), z2 )#(A(Y1 (z2 ), z2 ) − 1)(S2 (x2 ) − Y2 (z2 ))+ x 2 z2.
(x2 − A(Y1 (z2 ), z2 ))(z2 − Y2 (z2 ))Finally, in order to find an expression for P (0, 0, 0, 0), we put x1 = z1 = x2 =z2 = 1 and use de l’Hôpital’s rule in equation (4.84). Again the value of Y10 (1)Y10 (1) =λ2 µ 1,1 − ρ1(4.85)

is needed in this calculation. We obtain the expected result for the probabilityof an empty system:
P (0, 0, 0, 0) = 1 − ρT .

(4.86)

Substituting this result in equation (4.84), we finally obtain a fully determined- albeit an elaborate - expression for P (x1 , z2 , x2 , z2 ).
If we assume geometric class-2 service times, P (x1 , z1 , 1, z2 ) equals expression(4.40), as expected.
This concludes the calculation of the multivariate pgf’s for the three different
models, which are the starting-points for all further calculations. However,since these calculations are fairly similar for these three models, we will in theremainder of the analysis only concentrate on the most extensive model discussed in this subsection. From this point on, the service times of both classes
are thus assumed to be generally distributed and we start from expression(4.84) of the multivariate pgf P (x1 , z1 , x2 , z2 ). The calculation of some of theperformance measures for the other two models can be found in [Walraevens
et al. 2000a, 2004b] and [Walraevens et al. 2001, 2004a] respectively.

140

Preemptive resume priority

4.3 System contents
In this section, we calculate marginal pgf’s, moments and tail probabilities ofthe steady-state total, class-1 and class-2 system contents.

4.3.1 Calculation of the pgf P1 (x, z)
From expression (4.84) some useful joint pgf’s are calculated. First, we calculate the joint steady-state pgf of the system contents of class-1 packets and theresidual service time of the class-1 packet in service:
P1 (x, z) , lim E [xr1,k z u1,k ]k→∞=P (x, z, 1, 1)(A1 (z) − 1)(S1 (x) − S1 (A1 (z))).
=(1 − ρ1 ) 1 + xz
(x − A1 (z))(z − S1 (A1 (z)))(4.87)(4.88)(4.89)

This joint pgf is independent of class-2 characteristics, due to the preemptive
property of the priority scheduling discipline. From the point-of-view of class1 packets, it is as if they are the only packets in the system. This pgf is thus
the same as obtained in Bruneel [1993], wherein a single-class system with thenumbers of per-slot arrivals i.i.d. and with general service times is analyzed.

4.3.2 Calculation of the pgf P2 (x, z)Secondly, we calculate the joint pgf of the system contents of class-2 packets
and the remaining service time of the oldest class-2 packet at the beginning ofa random slot in steady-state (note that this packet is not necessarily in service)from equation (4.84), yielding
P2 (x, z) , lim E [xr2,k z u2,k ]k→∞(4.90)=P (1, 1, x, z)(4.91)
A2 (0)(1 − A(Y1 (0), 0)) − (A2 (0) − A(Y1 (0), 0))S2 (x)=(1 − ρT )A(Y1 (0), 0)(1 − A2 (0))(4.92)Y2 (z)(A2 (z) − A(Y1 (z), z))(z − S2 (x))
A(Y1 (z), z)(1 − A2 (z))(z − Y2 (z))(x − 1)(A2 (z) − A(Y1 (z), z))(S2 (x) − Y2 (z))+z
(1 − A2 (z))(x − A(Y1 (z), z))(z − Y2 (z))
(A(Y1 (z), z) − 1)(S2 (x) − S2 (A(Y1 (z), z)))+xz.
(x − A(Y1 (z), z))(z − Y2 (z))+

4.3 System contents

141

4.3.3 Calculation of the pgf U (z1 , z2 )Thirdly - and most importantly - we calculate the joint pgf of the system contents of class-1 and class-2 packets at the beginning of a random slot fromequation (4.84). It is given by: uu
U (z1 , z2 ) , lim E z1 1,k z2 2,k(4.93)

k→∞(4.94)=P (1, z1 , 1, z2 )Y2 (z2 )(z2 − 1)
(4.95)=(1 − ρT )z2 − Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1).
× 1 + z1
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))4.3.4 The marginal pgf UT (z)From expression (4.95) of the two-dimensional pgf U (z1 , z2 ), we derive an expression for the pgf of the total steady-state system contents at the beginningof an arbitrary slot, yielding
UT (z) , lim E [z uT ,k ](4.96)=U (z, z)(4.97)Y2 (z)(z − 1)=(1 − ρT )z − Y2 (z)(AT (z) − A(Y1 (z), z))(S1 (AT (z)) − 1)
× 1+z.
A(Y1 (z), z)(AT (z) − 1)(z − S1 (AT (z)))(4.98)k→∞

Note that in the special case that the service times of both classes are equallydistributed, this expression does no longer equal the pgf of the system contents in a single-class queue, as is the case for a queue with an NP priority
scheduling discipline. The reason is that, since the class-2 service times canbe interrupted, ’partial’ packets are stored in the queue, which are counted as(integer) packets in the system contents.

4.3.5 The marginal pgf U1 (z)The pgf of the class-1 system contents is calculated from U (z1 , z2 ) as follows:
U1 (z) , lim E [z u1,k ](4.99)=U (z, 1)(4.100)k→∞=(1 − ρ1 )S1 (A1 (z))(z − 1).
z − S1 (A1 (z))(4.101)

142

Preemptive resume priority

Note that U1 (z) is also obtained from P1 (x, z) by substituting x by 1.
This expression is identical to the pgf of the system contents in a single-classbuffer with A1 (z) the pgf of the number of per-slot arrivals and the pgf ofthe service times equal to S1 (z). Indeed - as already discussed - since thepriority scheduling discipline is preemptive, the class-1 system contents is not
influenced by arriving class-2 traffic.

4.3.6 The marginal pgf U2 (z)The pgf of the class-2 system contents is easily determined from U (z1 , z2 ):U2 (z) , lim E [z u2,k ](4.102)=U (1, z)(4.103)k→∞=(1 − ρT )Y2 (z)(z − 1) A2 (z)(A(Y1 (z), z) − 1).
z − Y2 (z) A(Y1 (z), z)(A2 (z) − 1)

(4.104)

Alternatively, this expression is found by substituting x by 1 in P2 (x, z).

4.3.7 Calculation of moments
From the pgf’s (4.98), (4.101) and (4.104), we calculate the moments of thetotal, class-1 and class-2 system contents respectively. We give the expressionsof the means in this subsection.
The mean total system contents is given by
E[uT ] =UT0 (1)=(4.105)ρTµ1 Var[aT ] µ1 λ2 (µ2 − µ1 )Var[a1 ] (µ2 − µ1 )Var[a2 ]+−+(4.106)2
2(1 − ρT )2(1 − ρT )(1 − ρ1 )
2(1 − ρT )λ22 Var[s2 ]λ1 Var[s1 ](λ1 (1 − ρ1 ) + λ2 (1 − µ2 λ1 ))++2(1 − ρT )(1 − ρ1 )
2(1 − ρT )(1 − ρ1 )
ρ1 λ2 (µ2 − 1)+.
2(1 − ρ1 )The mean class-1 system contents is found by taking the first derivative of
U1 (z) and substituting z by 1, yieldingE[u1 ] =U10 (1)=(4.107)
λ21 Var[s1 ]µ1 Var[a1 ]
ρ1
+
+
.
2
2(1 − ρ1 )
2(1 − ρ1 )(4.108)

4.3 System contents

143

Finally, the mean class-2 system contents is given by(4.109)E[u2 ] =U20 (1)=µ21 λ2 Var[a1 ]ρ2µ2 Var[a2 ] µ1 Cov[a1 , a2 ]+++2
2(1 − ρT )(1 − ρ1 ) 2(1 − ρT )1 − ρTλ2 (λ1 Var[s1 ] + λ2 Var[s2 ]) ρ1 λ2 (µ2 − 1)+.
+
2(1 − ρT )(1 − ρ1 )
2(1 − ρ1 )(4.110)Note that expressions (4.106), (4.108) and (4.110) satisfy E[uT ] = E[u1 ] + E[u2 ],since Var[aT ] =Var[a1 ]+Var[a1 ] + 2Cov[a1 , a2 ].

4.3.8 Calculation of tail probabilities
As in the previous chapters, approximate tail probabilities of the system contents can be calculated, i.e., approximate expressions of Prob[u = n] andProb[u > L] (with u the class-1 or class-2 system contents respectively) arefound for large enough n and L.
The respective pgf’s of the system contents show a similar qualitative behavior as the pgf’s of the system contents in the case of an NP priority scheduling. More precisely, exactly the same singularities play a role in the pgf’s forboth types of priority. The difference in the behavior of the pgf’s near their
dominant singularity (and thus in the tail probabilities) are the scaling factors(i)KT , K1 and the K2 ’s (i = 1, 2, 3) (see further). We will thus only show theexpressions of the tail probabilities in this subsection and refer to subsections
2.1.7 and 3.3.6 for (more) detailed derivations. We once again note howeverthat we assume that the pgf’s of the arrival and service processes (AT (z), theAj (z) and the Sj (z)) and their derivatives go to infinity for z equal to theirradii of convergence or for z → ∞.
Behavior of Y1 (z) and Y2 (z)Y1 (z) is implicitly defined as Y1 (z) = S1 (A(Y1 (z), z)). This function has adominant branch-point singularity zB where Y 0 (z) becomes infinite, i.e.,(1)(4.111)E1 (Y1 (zB ), zB ) =1,(j)with E1 (z1 , z2 ) , S1 (A(z1 , z2 )) and E1 (x, y) =∂E1 (z1 , z2 )
∂zj

,j =
z1 =x,z2 =y1, 2. In the neighborhood of this (dominant) singularity, Y1 (z) is approximately given by
Y1 (z) ≈Y1 (zB ) − KY1 (zB − z)1/2 ,(4.112)

144

Preemptive resume priority

with
v
u
u
K Y1 = t

2A(2) (Y1 (zB ), zB )A(11) (Y1 (zB ), zB ) + S100 (A(Y1 (zB ), zB )) A(1) (Y1 (zB ), zB )

3 . (4.113)

zB is also a branch-point of Y2 (z), sincehi
Y20 (z) =S20 (A(Y1 (z), z)) A(1) (Y1 (z), z)Y10 (z) + A(2) (Y1 (z), z) .

(4.114)Thus in the neighborhood of zB , we find√Y2 (z) ≈Y2 (zB ) − KY2 zB − z,

(4.115)KY2 =KY1 S20 (A(Y1 (zB ), zB ))A(1) (Y1 (zB ), zB ).

(4.116)

withClass-1 system contents
The dominant singularity zH of U1 (z) is the dominant zero of z − S1 (A1 (z))
on the positive real axis (> 1) and this singularity is a single pole. We get
u1 (n) ,Prob[u1 = n]−n−1≈K1 zH,(4.117)(4.118)for large enough n andProb[u1 > L] ≈−L−1
K1 z H,zH − 1(4.119)for large enough L. The constant K1 is given byK1 =(1 − ρ1 )(zH − 1)zH.
S10 (A1 (zH ))A01 (zH ) − 1(4.120)Class-2 system contents
U2 (z) has 2 important singularities, a single pole zL and a branch point zB ,with zL the dominant zero of z − Y2 (z) and zB the branch-point of Y1 (z) (thus(1)
E1 (Y1 (zB ), zB ) = 1). The tail behavior of the system contents of class-2 packets is thus characterized by zL or zB , depending on which is the dominant (i.e.,4.4 Queue contents

145

smallest) singularity. The following three different types of tail behavior may
occur:
u2 (n) ,Prob[u2 = n] (1) −n−1K2 z L
if zL dominant






 K (2) n−1/2 z −n2Bif zL = zB dominant
√
≈
z
π
B


 (3) rK
zB −3/2 −n


 2
n
zB if zB dominant,2π(4.121)(4.122)(i)

The constants K2 are given by(1 − ρT )zL A2 (zL )(zL − 1)(A(Y1 (zL ), zL ) − 1)
(4.123)A(Y1 (zL ), zL )(A2 (zL ) − 1) (Y20 (zL ) − 1)
(1 − ρT )zB A2 (zB )(zB − 1)(A(Y1 (zB ), zB ) − 1)(2)
K2 =(4.124)KY2 A(Y1 (zB ), zB )(A2 (zB ) − 1)
(1 − ρT )A2 (zB )(zB − 1)
(3)
K2 =(4.125)
A(Y1 (zB ), zB )(A2 (zB ) − 1)(zB − Y2 (zB ))
KY1 A(1) (Y1 (zB ), zB )Y2 (zB ) KY2 zB (A(Y1 (zB ), zB ) − 1)+.
×A(Y1 (zB ), zB )zB − Y2 (zB ))
(1)

K2

=

Finally,
Prob[u2 > L] ≈u2 (L),z∗ − 1(4.126)

with z∗ the dominant singularity of U2 (z).

4.4 Queue contents
The queue contents - defined as the number of packets in the queue (thuswithout the one in the server) - are easily derived from the system contents.
We denote - as before - the queue contents of class-j at the beginning of thek-th slot by qj,k (j = 1, 2). The following relations between qj,k and uj,k arethen found:q1,k =[u1,k − 1]+[u2,k − 1]+ if u1,k = 0
q2,k =.
u2,kif u1,k > 0(4.127)(4.128)

146

Preemptive resume priority

When a class-1 packet is in service during slot k - i.e. when u1,k > 0, the class1 queue contents is one less as the class-1 system contents, while the class-2
queue contents and class-2 system contents are equal. When a class-2 packet
is in service during slot k (u1,k = 0, u2,k > 0), the class-1 system contents andclass-1 queue contents are zero and the class-2 queue contents is one less thanthe class-2 system contents. This leads to the former equations. Taking the(two-dimensional) z-transform of these equations and letting k → ∞ leads toqq

Q(z1 , z2 ) = lim E[z11,k z22,k ](4.129)k→∞=U (0, 0) +U (0, z2 ) − U (0, 0) U (z1 , z2 ) − U (0, z2 )
+
.
z2
z1

(4.130)Substituting equation (4.95) in this expression yields
z2 − 1Q(z1 , z2 ) =(1 − ρT )(4.131)z2 − Y2 (z2 )
Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1).
× 1+
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))4.5 Unfinished work
The joint pgf of the steady-state unfinished work of class-1 and class-2 at the
beginning of a random slot is easy to derive from the results in subsection
4.2.3. We denote the class-j unfinished work at the beginning of slot k by wj,k ,j = 1, 2. The following relations between wj,k , uj,k and rj,k are established[uj,k −1]+

wj,k = rj,k +X

sj,m ,(4.132)m=1

j = 1, 2, with rj,k the residual service time of the oldest class-j packet atthe beginning of slot k (as defined in subsection 4.2.3) and the sj,m (m =1, . . . , [uj,k − 1]+ ) the service times of the class-j packets in the system at the
beginning of slot k (except for the oldest one). Expression (4.132) is explained
as follows: all class-j packets except for the oldest one add a complete service
time to the unfinished work, while the oldest class-j packet adds a residual
service time.
By z-transforming equations (4.132), the joint pgf of the class-1 and class-2
steady-state unfinished work at the beginning of a random slot is calculated asa function of the four-dimensional pgf P (x1 , z1 , x2 , z2 ) of the class-1 residual
service time and system contents and the class-2 residual service time andsystem contents respectively. We findww

W (z1 , z2 ) ,E[z1 1,k z2 2,k ](4.133)

4.6 Packet delay147
P (z1 , S1 (z1 ), 0, 0) − P (0, 0, 0, 0)(4.134)S1 (z1 )P (0, 0, z2 , S2 (z2 )) − P (0, 0, 0, 0)+
S2 (z2 )
P (z1 , S1 (z1 ), z2 , S2 (z2 )) − P (z1 , S1 (z1 ), 0, 0)−P (0, 0, z2 , S2 (z2 )) + P (0, 0, 0, 0)+.
S1 (z1 )S2 (z2 )=P (0, 0, 0, 0) +The first term gives the partial pgf of the unfinished work when the system
is empty, the second (third respectively) term is the partial pgf of the unfinished work of both classes when a class-1 (class-2 respectively) packet is being
served while the class-2 (class-1 respectively) system contents are zero. Finally, the last term is the partial pgf of the unfinished work of both classes
when there is at least one class-1 and at least one class-2 packet in the system.
Substituting expression (4.84) in expression (4.134) yields
W (z1 , z2 ) =(1 − ρT )A(S1 (z1 ), S2 (z2 ))(z1 − A(Y1 (S2 (z2 )), S2 (z2 )))(z2 − 1).
(z1 − A(S1 (z1 ), S2 (z2 )))(z2 − A(Y1 (S2 (z2 )), S2 (z2 )))(4.135)

4.6 Packet delay
In this section, we study the steady-state packet delay. We first calculate thepgf of the packet delay of a class-1 packet, a class-2 packet and a random
packet respectively. These pgf’s are used to analyze the performance measures, such as the mean values and the tail probabilities.

4.6.1 Pgf D1 (z) of the class-1 packet delay
We can analyze the packet delay of class-1 packets as if they are the only packets in the system. Indeed, because of the preemptive property of the studied
priority scheduling, the class-1 packet delay is independent of class-2 packets. The pgf of the class-1 packet delay is thus the same pgf as the pgf of thedelay in a single-class system with the numbers of arrivals i.i.d. from slot-toslot with a common pgf A1 (z) and general service times with pgf S1 (z). Thissystem is e.g. analyzed in Bruneel and Kim [1993] and the pgf of the packet
delay of class-1 packets is given by
D1 (z) =1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1,
λ1 z − A1 (S1 (z)) S1 (z) − 1(4.136)

with λ1 and ρ1 the class-1 arrival rate and class-1 arrival load respectively.

148

Preemptive resume priority

Note that this expression equals the pgf of the class-1 packet delay in a queuewith an NP priority scheduling discipline and deterministic class-2 service timesof one slot. Indeed, substituting S2 (z) by z (and µ2 by 1) in expression (3.115)
yields expression (4.136). Although class-1 packets arriving during a class-2
service time have to wait (at least) until this class-2 service time is completed
in the NP case, this service time is completed at the end of the slot in case of
single-slot service times. Thus (one of) the arriving class-1 packet(s) enters theserver at the beginning of the next slot. The same happens in the preemptive
case (with general class-2 service times): class-1 packets arriving during a class2 service time interrupt this service and one of them enters the server at the
beginning of the next slot.

4.6.2 Pgf D2 (z) of the class-2 packet delay
Because of the priority discipline, an expression for D2 (z) will be more involved. We tag a class-2 packet that enters the buffer during slot k. We will as in the previous chapters - use the notion of sub-busy periods to analyze theclass-2 packet delay. Two different kinds of sub-busy periods are defined, notably, sub-busy periods initiated by a class-1 packet and sub-busy periods initiated bya class-2 packet. The first type is defined as follows: it starts at the beginningof the slot the initiating class-1 packet enters the server and ends when thenumber of class-1 packets in the system is one less - for the first time - as when
the initiating class-1 packet entered the server. A sub-busy period initiated bya class-2 packet is defined as: it starts at the beginning of the slot the initiatingclass-2 packet enters the server for the first time and it ends at the beginningof which a new class-2 packet can enter the server (if there is any).
We denote the pgf of the length of a sub-busy period initiated by a class-j
packet by Vj (z) (j = 1, 2). Note that these pgf’s are identical in the case of a
PR and an NP priority scheduling discipline. For V1 (z), this is clear: duringa sub-busy period initiated by a class-1 packet only class-1 packets are served
and therefore the pgf V1 (z) is independent of the type of the priority scheduling discipline. A sub-busy period initiated by a class-2 packet starts with theservice of a class-2 packet. The class-1 system contents is thus zero at that time
instant (in both the NP and the PR case). It ends when two conditions are satisfied for the first time: firstly, the initiating class-2 packet is fully transmitted
and secondly, the class-1 system contents is zero (again). Since both types ofpriority scheduling are work-conserving, these two conditions are satisfied atexactly the same time for both priority disciplines (if the same number of arrivals occur during the sub-busy period for both scheduling types). Therefore
the lengths of the class-2 sub-busy periods are equally distributed for bothpriority types. The Vj (z) are thus identical as in the previous chapter, namely
Vj (z) =Sj (zA1 (V1 (z))),with j = 1, 2.

(4.137)

4.6 Packet delay149

We now perform a similar delay analysis as in the previous chapter (subsection 3.6.2). Let us again refer to the packets in the system at the end of slotk, but that have to be served before the tagged packet as the “primary packets”. So, the tagged class-2 packet enters the server for the first time when
all primary packets and all class-1 packets that arrived after slot k (i.e., while thetagged packet is waiting in the queue) are served. All primary class-j packets add a class-j sub-busy period to the delay of the tagged packet. Let ṽj,mdenote the length of the m-th class-j sub-busy period added to the tagged
packet’s delay by the m-th class-j packet already in the queue at the begin(i)ning of slot k and let vj,m denote the length of the sub-busy period added tothe delay of the tagged class-2 packet by the m-th class-j packet that arrives
during slot i.
The delay of the tagged packet depends on the state of the system at the beginning of its arrival slot (slot k by definition). This state is described by theclass-1 and class-2 system contents u1,k and u2,k and the residual service timesof the oldest class-1 and class-2 packet r1,k and r2,k respectively, which aredefined earlier in this chapter. The delay of the tagged packet is written as afunction of this state vector {r1,k , u1,k , r2,k , u2,k } at the beginning of its arrival
slot as follows:[r1,k +r2,k −1]+ a1,ni+

d2 =[r1,k + r2,k − 1] ++−1]
2 [uj,k
X
X
j=1

m=1

+

X
i=1

X

X X

fj,k
2 X
X

(k)

vj,m

(4.138)j=1 m=1m=1as∗
2 −1 1,liṽj,m + s∗2 +(n )v1,mi +
(l )

i
,
v1,m

i=1 m=1

with fj,k , j = 1, 2 defined as the numbers of class-j packets arriving during slot k, but that have to be served before the tagged packet. Slots ni (i =1, . . . , [r1,k + r2,k − 1]+ ) are defined as the slots that the oldest class-1 andclass-2 packet receive service and the slots li (i = 1, . . . , s∗2 ) are defined as
the slots during which the tagged packet receives service. Expression (4.138)of the class-2 packet delay exists of the following parts: the remaining service times of the oldest class-1 packet and class-2 packet at the beginning ofslot k (note that the remaining service time of the class-2 packet can exist of
non-consecutive slots, because of the preemptive property), and the sub-busy
periods added by the class-1 packets arriving during these remaining service
times. These contribute in the first 2 terms of (4.138). The class-j primary
packets that arrive during slot k and that have to be served before the tagged
packet add fj,k class-j sub-busy periods to the delay. These contribute in thethird term. The sub-busy periods added by the class-1 and class-2 packets
already in the system (excluding the oldest ones) at the beginning of slot k contribute in the fourth term. Finally the service time of the tagged class-2 packet
itself and the sub-busy periods of the class-1 packets arriving during this service time (except for its last slot) contribute in the last two terms. Note that

150

Preemptive resume priority

the class-1 packets arriving during the last slot of the tagged packet’s service
time do not influence its delay, since the tagged packet’s service is completed
at the end of that slot.
We distinguish four possibilities of the system state at the beginning of slot k:
u1,k = u2,k = 0; u1,k = 0, u2,k > 0; u1,k > 0, u2,k = 0 and u1,k > 0, u2,k > 0.
We thus findD2 (z) =E z d2 {u1,k = u2,k = 0} + E z d2 {u1,k = 0, u2,k > 0}
(4.139)
 d2

 d2

+ E z {u1,k > 0, u2,k = 0} + E z {u1,k > 0, u2,k > 0} .

Using expression (4.138) of d2 in this expression yields(  P Pf
P s∗
Pa1,li (li )
(k)
j,k
2
2 −1
vj,m
s∗
+ i=1
v1,m
2
m=1
j=1
m=1
Prob[u1,k = u2,k = 0]
E z
D2 (z) =E z

(4.140) Pr −1 “ Pa1,n (n ) ” Pu −1
2,k
2,k
i
1+ m=1i v1,m
+ m=1
ṽ2,m
{u1,k = 0, u2,k > 0}
+ E z i=1
 Pr −1 “ Pa1,n (n ) ” Pu −1
1,k
1,k
i
1+ m=1i v1,m
+ m=1
ṽj,m
i=1
{u1,k > 0, u2,k = 0}
+E z
9
8


Pa1,n (n ) >Pr1,k +r2,k −1>>=<
1 + m=1i v1,mi >
i=1
"
#)
+
P
P
>
>
[u
−1]
2
j,k
>
>
;
:
+ j=1 m=1
ṽj,m
+E z
{u1,k > 0, u2,k > 0} .

The first factor equals the pgf of the total number of sub-busy periods added
to the tagged packet’s delay by the packets arriving in the same slot as thetagged one, but that have to be served before it. The second factor equals the
pgf of the last part of the tagged packet’s delay, namely, starting at the slot thetagged packet enters the server for the first time. Finally, the influence of thestate of the system at the beginning of slot k is given by the third factor. Thisfactor can thus be written in terms of the pgf P (x1 , z1 , x2 , z2 ). We get
D2 (z) =F(2)(
S2 (zA1 (V1 (z)))(V1 (z), V2 (z))
P (0, 0, 0, 0)
A1 (V1 (z))(4.141)

P (0, 0, zA1 (V1 (z)), V2 (z)) − P (0, 0, 0, 0)
zA1 (V1 (z))V2 (z)P (zA1 (V1 (z)), V1 (z), 0, 0) − P (0, 0, 0, 0)+
zA1 (V1 (z))V1 (z)1+[P (zA1 (V1 (z)), V1 (z), zA1 (V1 (z)), V2 (z))
zA1 (V1 (z))V1 (z)V2 (z)− P (0, 0, zA1 (V1 (z)), V2 (z)) − P (zA1 (V1 (z)), V1 (z), 0, 0)+

4.6 Packet delay151)+ P (0, 0, 0, 0)] ,ffwith F (2) (z1 , z2 ) , E[z1 1,k z2 2,k ]. The random variables f1,k and f2,k have thefollowing joint pgf (for more details see chapter 3):
F (2) (z1 , z2 ) =A(z1 , z2 ) − A1 (z1 ).
λ2 (z2 − 1)

(4.142)

Substituting expressions (4.84) and (4.142) in expression (4.141) leads to thefollowing final expression of D2 (z):D2 (z) =1 − ρT V2 (z)(zA1 (V1 (z)) − 1) A(V1 (z), V2 (z)) − A1 (V1 (z)), (4.143)
λ2 A1 (V1 (z))(V2 (z) − 1) zA1 (V1 (z)) − A(V1 (z), V2 (z))

with Vj (z) given by (4.137), j = 1, 2.

4.6.3 Pgf D(z) of the delay of a random packet
In this subsection, we tag a random (class-1 or class-2) packet. Since, the probability that the tagged packet is of class-j is equal to λj /λT ,D(z) =λ1
λ2
D1 (z) +D2 (z).
λT
λT(4.144)

Substituting (4.136) and (4.143) in this expression yields
D(z) =

1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1(4.145)
λT z − A1 (S1 (z)) S1 (z) − 1
1 − ρT V2 (z)(zA1 (V1 (z)) − 1) A(V1 (z), V2 (z)) − A1 (V1 (z)).
+λT A1 (V1 (z))(V2 (z) − 1) zA1 (V1 (z)) − A(V1 (z), V2 (z))

4.6.4 Calculation of moments
From the pgf’s D1 (z), D2 (z) and D(z), all moments of the delays of a class1, of a class-2 and of a random packet can be calculated. We show the meanvalues in this subsection.
The mean class-1 delay is given byE[d1 ] =D10 (1)=µ1µ1 Var[a1 ]λ1 Var[s1 ]++,2
2λ1 (1 − ρ1 ) 2(1 − ρ1 )(4.146)(4.147)

152

Preemptive resume priority

with Var[a1 ] and Var[s1 ], the variance of the number of per-slot class-1 arrivals
and of the class-1 service times respectively.
Taking the first derivative of expression (4.143), the mean class-2 delay isfound to beE[d2 ] =D20 (1)=(4.148)µ21 Var[a1 ]µ2 Var[a2 ]µ1 Cov[a1 , a2 ]
µ2
+
+
+
2
2(1 − ρT )(1 − ρ1 ) 2λ2 (1 − ρT )λ2 (1 − ρT )λ1 Var[s1 ] + λ2 Var[s2 ] ρ1 (µ2 − 1)++.
2(1 − ρT )(1 − ρ1 )
2(1 − ρ1 )(4.149)Var[a2 ] and Var[s2 ] are the variances of the number of per-slot class-2 arrivals
and of the class-2 service times respectively.
Finally, the mean delay of a random packet is given byE[d] =D 0 (1)(4.150)λ1
λ2= E[d1 ] +E[d2 ](4.151)λT
λTµ1 Var[aT ]µ1 λ2 (µ2 − µ1 )Var[a1 ] (µ2 − µ1 )Var[a2 ]
ρT
=
+
−
+
2λT
2λT (1 − ρT )
2λT (1 − ρT )(1 − ρ1 )2λT (1 − ρT )(4.152)
λ22 Var[s2 ]λ1 Var[s1 ](λ1 (1 − ρ1 ) + λ2 (1 − λ1 µ2 ))+2λT (1 − ρT )(1 − ρ1 )2λT (1 − ρT )(1 − ρ1 )
ρ1 λ2 (µ2 − 1)+.
2λT (1 − ρ1 )+Little’s law can be seen to hold for the total system and for the classes separately (see expressions (4.106)-(4.152), (4.108)-(4.147) and (4.110)-(4.149)).

4.6.5 Calculation of tail probabilities
In this subsection, we retrieve expressions of tail probabilities of the delay of
a class-1, of a class-2 and a of a random packet respectively.
Class-1 packet delay
From expression (4.136), it is seen that the dominant pole ẑH of D1 (z) is a zeroof z − A1 (S1 (z)) and that this pole has multiplicity one. We thus obtaind1 (n) ,Prob[d1 = n]−n−1
≈K̂1 ẑH,(4.153)(4.154)

4.6 Packet delay

153

for large enough n, andProb[d1 > D] ≈−D−1
K̂1 ẑH,ẑH − 1

(4.155)

with
2

K̂1 =

(1 − ρ1 )S1 (ẑH ) (ẑH − 1).
λ1 (S1 (ẑH ) − 1) (A01 (S1 (ẑH ))S10 (ẑH ) − 1)

(4.156)

Behavior of V1 (z) and V2 (z)Since the Vj (z) are equally defined as in chapter 3 and since we have studied
their behavior in that chapter (subsection 3.6.6), we will only summarize theresults in this chapter.
Both Vj (z) have the same branch-point singularity ẑB withẑB S10 (ẑB A1 (V1 (ẑB )))A01 (V1 (ẑB )) = 1.

(4.157)In the neighborhood of ẑB , Vj (z) behaves asVj (z) ≈Vj (ẑB ) − KVj
withK V1 =spẑB − z,(4.158)2A1 (V1 (ẑB )),ẑB A001 (V1 (ẑB )) + S100 (ẑB A1 (V1 (ẑB )))(ẑB A01 (V1 (ẑB )))3

(4.159)KV2 =KV1 S20 (ẑB A1 (V1 (ẑB )))ẑB A01 (V1 (ẑB )).

(4.160)andClass-2 packet delay
Expression (4.143) of D2 (z) has two important singularities: the branch
point ẑB and a pole ẑL with multiplicity 1 which is a zero of zA1 (V1 (z)) −A(V1 (z), V2 (z)). Both singularities can be dominant, depending on the input
parameters/pgf’s of the queueing system. The tail behavior of the class-2
packet delay is summarized as:
d2 (n) ,Prob[d2 = n]

(4.161)

154

andPreemptive resume priority
 (1)
−n−1

K̂2 ẑL
if ẑL dominant






 K̂ (2) n−1/2 ẑ −n2B√if ẑL = ẑB dominant
≈
ẑ
π

B


 (3) rẑB −3/2 −n
K̂

 2
n
ẑB if ẑB dominant,2πProb[d2 > D] ≈d2 (D),ẑ∗ − 1

(4.162)(4.163)

with ẑ∗ the dominant singularity of D2 (z) and with(1)

K̂ 2 =(1 − ρT )V2 (ẑL )(ẑL − 1)(ẑL A1 (V1 (ẑL )) − 1)dA(V1 (z), V2 (z)) d(zA1 (V1 (z))λ2 (V2 (ẑL ) − 1)−dz
dz

(4.164)z=ẑL(1 − ρT )(ẑB A1 (V1 (ẑB )) − 1)
(2)
(4.165)K̂ 2 =
λ2 (V2 (ẑB ) − 1)V2 (ẑB )(ẑB − 1)×(1)
KV1 A (V1 (ẑB ), V2 (ẑB )) − ẑB A01 (V1 (ẑB )) + KV2 A(2) (V1 (ẑB ), V2 (ẑB ))1 − ρT(3)
K̂ 2 =22
λ2 A1 (V1 (ẑB )) (V2 (ẑB ) − 1) (ẑB A1 (V1 (ẑB )) − A(V1 (ẑB ), V2 (ẑB )))2
(4.166)nh
× A1 (V1 (ẑB )) KV1 A(1) (V1 (ẑB ), V2 (ẑB )) + KV2 A(2) (V1 (ẑB ), V2 (ẑB ))i− KV1 A(V1 (ẑB ), V2 (ẑB ))A01 (V1 (ẑB )) (ẑB − 1)(ẑB A1 (V1 (ẑB )) − 1)
× (V2 (ẑB ) − 1)A1 (V1 (ẑB ))V2 (ẑB ) + [KV1 V2 (ẑB )A01 (V1 (ẑB ))(V2 (ẑB ) − 1)
− KV2 A1 (V1 (ẑB ))(ẑB A1 (V1 (ẑB )) − 1)] (A(V1 (ẑB ), V2 (ẑB )) − A1 (V1 (ẑB )))o× (ẑB A1 (V1 (ẑB )) − A(V1 (ẑB ), V2 (ẑB ))) .
(4.167)

Delay random packet
Finally, we calculate the tail probabilities of the delay of a random packet.
Its pgf D(z) is given by expression (4.145). The dominant singularity of thisfunction is ẑL or ẑB , depending on which is smallest.
Note that - similar as in the previous chapter - the dominant singularity of
D1 (z) - ẑH - is also a singularity of D(z), but that ẑH is never dominant, sinceẑH > ẑB . This inequality is proved in section 3.6.6. From expression (4.144)
and the fact that the dominant singularities of D(z) and D2 (z) are equal, it is4.7 Waiting time155

easily seen that
(4.168)d(n) ,Prob[d = n]λ2
≈ d2 (n),λT(4.169)for large enough n. Since d2 (n) is approximately calculated in expression(4.162), d(n) is approximately determined from this expression.
Finally, the probability that the steady-state delay of a random packet is larger
than a bound D is given by
Prob[d > D] ≈λ2
Prob[d2 > D].
λT(4.170)4.7 Waiting time
The waiting time is defined as the number of slots a packet has to wait in
the queue before starting service. Thus specifically for the class-2 packets, thewaiting time - as defined in this dissertation - does not include the slots thepackets spend in the queue after the possible interruption.
The relation between the waiting time t1 and the delay d1 of a class-1 packet
is given by(4.171)d1 =t1 + s∗1 ,with s∗1 the service time of the packet. Since t1 and s∗1 are independent variables, we findT1 (z) =D1 (z),
S1 (z)(4.172)for the pgf of the steady-state class-1 waiting time. Substituting expression(4.136) in this expression yields
T1 (z) =1 − ρ1z−1
A1 (S1 (z)) − 1,
λ1 z − A1 (S1 (z)) S1 (z) − 1(4.173)for the pgf of the class-1 waiting time.
The relation between the waiting time t2 and the delay d2 of a class-2 packet
is given byas∗
2 −1 1,li

d2 =t2 + s∗2 +X X

i=1 m=1

(l )

i
v1,m
,

(4.174)

156

Preemptive resume priority(l )iwith s∗2 the service time of the packet and the v1,mthe sub-busy periods added
to the delay by the class-1 packets arriving during the service slots of the class2 packet (see also expression (4.138)). Since the first term of the right-hand sideof expression (4.174) is independent of the other two terms, we findT2 (z) =D2 (z)A1 (V1 (z)),
S2 (zA1 (V1 (z)))(4.175)for the pgf of the class-2 waiting time. Substituting expression (4.143) in thisexpression gives
T2 (z) =1 − ρT A(V1 (z), V2 (z)) − A1 (V1 (z)) zA1 (V1 (z)) − 1.
λ2 zA1 (V1 (z)) − A(V1 (z), V2 (z)) V2 (z) − 1(4.176)

Finally, the pgf of the steady-state waiting time of a random (class-1 or class-2)
packet is given by
λ1
λ2
T1 (z) +T2 (z)(4.177)λT
λT
1 − ρ1z−1
A1 (S1 (z)) − 1=(4.178)
λT z − A1 (S1 (z)) S1 (z) − 1
1 − ρT A(V1 (z), V2 (z)) − A1 (V1 (z)) zA1 (V1 (z)) − 1.
+
λT zA1 (V1 (z)) − A(V1 (z), V2 (z)) V2 (z) − 1

T (z) =

4.8 Identical variables in PR and NP priority queues
There exist some stochastic variables in case of an NP (studied in section 3)
and a PR (studied in this section) priority queue which are identically distributed.

4.8.1 Total unfinished work
The total unfinished work at the beginning of a random slot is independentof the scheduling discipline, as long as this scheduling discipline is workconserving. Since both the NP and PR priority scheduling disciplines are
work-conserving disciplines, the total unfinished work is equally distributedfor both scheduling disciplines. Indeed, using expressions (3.103) and (4.135)
of the joint pgf of the unfinished work of both classes in case of the NP and PR
priority scheduling discipline respectively, we find(4.179)WT (z) =W (z, z)=(1 − ρT )A(S1 (z), S2 (z))(z − 1),z − A(S1 (z), S2 (z))(4.180)4.8 Identical variables in PR and NP priority queues

157

for the pgf of the total unfinished work in both cases. More generally, thisexpression equals the pgf of the (total) unfinished work in a queueing system
where the pgf of the work arriving in the system during a slot is equal toA(S1 (z), S2 (z)).

4.8.2 Class-2 waiting time
The class-2 waiting times in queues with the NP or the PR priority discipline are closely related to the total unfinished work in these queues. In thissubsection, we show an alternative calculation of the pgf T2 (z) of the class-2
waiting time, based on expression (4.180) of WT (z). Furthermore, we showthat the class-2 waiting times in a PR and an NP priority queue are equallydistributed.
Denoting t2 as the waiting time of a (tagged) class-2 packet, wT the total unfinished work at the beginning of this packet’s arrival slot and gT the total
amount of work arriving in the same slot as and ultimately served before thetagged packet, t2 is given by[wT −1]+ +gT

t2 =

X

vi ,

(4.181)i=1where the vi are defined as the number of slots necessary to lower the work
ahead of the tagged class-2 packet by 1 (taking into account newly arriving
class-1 packets). All vi are i.i.d. and their common pgf is given by
V (z) =zA1 (V1 (z)),(4.182)since the vi consist of one slot augmented with the sub-busy periods added by
the class-1 arrivals during that slot. Recall that
V1 (z) =S1 (zA1 (V1 (z))).

(4.183)Since wT and gT are independent stochastic variables, z-transforming (4.181)
yieldsT2 (z) =(V (z) − 1)WT (0) + WT (V (z))
GT (V (z)),
V (z)(4.184)

with WT (z) and GT (z) the pgf of wT and gT respectively. WT (z) is given by
expression (4.180) and GT (z) is given by
GT (z) = F (2) (S1 (z), S2 (z)),(4.185)

158

Preemptive resume priority

with F (2) (z1 , z2 ) given by expression (4.142). Substituting all this in expression(4.184) finally yields expressions (3.166) and (4.176).
Concluding, (the pgf of) the class-2 waiting time is identical for both the NP
and PR priority scheduling discipline, because in both cases a class-2 packet
can only start service when all class-2 packets arrived before it and all class1 packets are serviced. Whether or not the class-1 packets interrupt class-2
service times is not important for the class-2 waiting time.
Finally, we note that the reasoning in this section is part of the approach followed in [Takahashi and Hashida 1991] to analyze the packet delays in NP
and PR priority queues.

4.9 Numerical examples
In this section, we discuss some numerical examples. We have studied theinfluence of different parameters on system contents and packet delay performance measures in the case of an NP priority scheduling discipline quite
extensively (in the previous chapter). Furthermore, the general influence of
these parameters is often similar for the NP or the PR priority schedulingdisciplines. Therefore, we focus - in this section - mostly on the comparison
between the results for these priority disciplines.

4.9.1 Input processes
We first briefly summarize the most important characteristics of the arrivaland service processes we consider in this section.

The arrival process
The pgf of the number of per-slot class-1 and class-2 arrivals is given by
N

λ2
λ1
.
A(z1 , z2 ) = 1 − (1 − z1 ) − (1 − z2 )NN

(4.186)

N is chosen 16 in the figures in this section.
The means of the total, class-1 and class-2 number of per-slot arrivals are given
by λT , λ1 and λ2 respectively.

4.9 Numerical examples

159

2

α = 0.25
0.5
0.75

1.5

1

0.5

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 4.3: Mean class-1 system contents versus the total arrival rate for both the PR(lower curves) as the NP priority (upper curves) scheduling disciplines (µ 1 = µ2 = 2)

The service process
The service times of both classes are assumed deterministic throughout thissection, i.e.,
Sj (z) = z µj ,(4.187)

j = 1, 2, with µj the class-j service time.

4.9.2 Influence of the load
System contents
In Figures 4.3 and 4.4, we show the mean class-1 and class-2 system contents
respectively as functions of the total load, with µ1 = µ2 = 2 and with α ,ρ1 /ρT - equal to 0.25, 0.5 and 0.75. In both figures, we show the curves for boththe PR and the NP priority scheduling disciplines. The mean class-1 systemcontents is larger in case of the NP priority scheduling. The opposite holds
for the mean class-2 system contents. It is seen that the difference between
both scheduling disciplines is (relatively) more significant for the mean class1 system contents, especially as ρT → 1.

160

Preemptive resume priority

5
α=

4

0.25
0.5
0.75

3

2

1

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 4.4: Mean class-2 system contents versus the total arrival rate for both the PR(upper curves) as the NP priority (lower curves) scheduling disciplines (µ 1 = µ2 = 2)

Packet delay
Similar differences between the PR and the NP priority scheduling disciplines
can be seen for the mean packet delay. Figures 4.5 and 4.6 depict the meanclass-1 and class-2 packet delays respectively as functions of the total load,with µ1 = µ2 = 2 and with α equal to 0.25, 0.5 and 0.75. It can be seen thatthe mean class-1 delay can be considerably higher in the NP priority case,especially for low α. On the other hand for high α, the mean delay of theclass-2 packets is significantly higher in the case of the PR priority scheduling.
Indeed, for high α, a service time of a class-2 packet is interrupted with a large
probability when a PR priority scheduling is applied.

4.9.3 Influence of the service times
System contents
Figures 4.7 and 4.8 show the mean class-1 and class-2 system contents respectively versus the (deterministic) lengths of the class-1 service times for both the
NP and PR priority scheduling disciplines. The total load is 0.75, the class-2
service times are deterministically equal to 20 and α = 0.25, 0.5 and 0.75 respectively. From Figure 4.7 it is seen that the mean class-1 system contents
stay constant in the case of the PR priority scheduling (for this particular arrival and service process). For low µ1 the difference between the mean class-1

4.9 Numerical examples

161

5

4

3

2
α=
1

0.25
0.5
0.75

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 4.5: Mean class-1 packet delay versus the total arrival rate for both the PR (lower
curves) as the NP priority (upper curves) scheduling disciplines (µ 1 = µ2 = 2)

10

8

6

4
α = 0.25
0.5
0.75

2

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 4.6: Mean class-2 packet delay versus the total arrival rate for both the PR(upper curves) as the NP priority (lower curves) scheduling disciplines (µ 1 = µ2 = 2)162

Preemptive resume priority3
α = 0.25
0.5
0.75

2.5
2
1.5
1
0.5
0
10

20

30

40

50
µ1

60

70

80

90 100Figure 4.7: Mean class-1 system contents versus the mean class-1 service time for boththe PR (lower curves) as the NP priority (upper curves) scheduling disciplines (ρ T =0.75, µ2 = 20)

system contents in the NP and PR case is rather large, while the difference isnegligible for high µ1 . Indeed, for low µ1 the mean class-1 system contents
in the NP priority queue is largely due to a residual class-2 service time. For
high µ1 , a residual service time of class-2 packets is negligible to the (residual)
service times of class-1 packets, and thus the curves for the NP and PR priority
queue lie near to each other for high µ1 . From Figure 4.8, we conclude that thedifference between the mean class-2 system contents in the case of the PR and
the NP priority queue is independent of µ1 (when ρ1 is kept constant).
In Figures 4.9 and 4.10, we show the mean class-1 and class-2 system contents
respectively as functions of the length of the class-2 service times, with ρT =0.75, µ1 = 20 and α = 0.25, 0.5 and 0.75. It is seen that the mean class-1
contents are independent of the class-2 service times in case of the PR priority
scheduling, as expected. For µ2 = 1, the mean class-1 system contents in
the NP priority queue is equal to the mean class-1 system contents in the PRpriority queue - for single-slot class-2 service times, the class-1 system contents
are indeed independent of the class-2 characteristics - and the mean class-2
system contents increase with increasing µ2 .
Packet delay
Figures 4.11 and 4.12 depict the mean class-1 and class-2 packet delays respectively as functions of the mean class-1 service times for both the NP and4.9 Numerical examples

163

3
2.5
2
1.5
α = 0.25
0.5
0.75

1
0.5
0
10

20

30

40

50
µ1

60

70

80

90 100Figure 4.8: Mean class-2 system contents versus the mean class-1 service time for boththe PR (upper curves) as the NP priority (lower curves) scheduling disciplines (ρ T =0.75, µ2 = 20)21.5

α = 0.25
0.5
0.75

1

0.5

0
10

20

30

40

50
µ2

60

70

80

90 100Figure 4.9: Mean class-1 system contents versus the mean class-2 service time for boththe PR (lower curves) as the NP priority (upper curves) scheduling disciplines (ρ T =0.75, µ1 = 20)

164

Preemptive resume priority3
α = 0.25
0.5
0.75

2.5
2
1.5
1
0.5
0
10

20

30

40

50
µ2

60

70

80

90 100Figure 4.10: Mean class-2 system contents versus the mean class-2 service time forboth the PR (upper curves) as the NP priority (lower curves) scheduling disciplines(ρT = 0.75, µ1 = 20)

PR priority scheduling disciplines. The total load is 0.75, the class-2 service
times are equal to 20 and α = 0.25, 0.5 and 0.75 respectively. It is seen that thedifference between the mean class-1 packet delay for both scheduling disciplines is larger for smaller α. For the class-2 packet delay, the difference is larger
for increasing α. It is also seen from both plots that the difference between themean packet delays in both priority queues is independent of µ1 . So for highµ1 (compared with µ2 ), the difference between the mean delays of both types
in the PR and NP priority queue is (relatively) negligible, while this is not thecase for small µ1 .
In Figures 4.13 and 4.14, we show the mean class-1 and class-2 packet delays
respectively as functions of the mean class-2 service time, with ρT = 0.75,µ1 = 20 and α = 0.25, 0.5 and 0.75. Since the class-1 performance measures
are independent of the class-2 characteristics in the PR priority queue, themean class-1 packet delay is independent of the class-2 service times in caseof the PR priority scheduling. For µ2 = 1, the mean class-1 packet delay in
the NP priority queue is equal to the mean class-1 delay in the PR priority
queue and the mean class-2 packet delay increases with increasing µ2 . The
mean class-2 delay is equal for both types of scheduling disciplines for µ2 = 1.
For µ2 > 1, the class-2 packet delay is larger in the case of the PR priority
scheduling and the difference increases for increasing µ2 and/or increasing
α. As can be seen from Figure 4.14, the difference can be substantial for longclass-2 service times and/or a high fraction of class-1 traffic.

4.9 Numerical examples

165

160
α = 0.25
0.5
0.75

140
120
100
80
60
40
20
0
10

20

30

40

50
µ1

60

70

80

90 100Figure 4.11: Mean class-1 packet delay versus the mean class-1 service time for boththe PR (lower curves) as the NP priority (upper curves) scheduling disciplines (ρ T =0.75, µ2 = 20)300
α = 0.25
0.5
0.75

250
200
150
100
50
0
10

20

30

40

50
µ1

60

70

80

90 100Figure 4.12: Mean class-2 packet delay versus the mean class-1 service time for boththe PR (upper curves) as the NP priority (lower curves) scheduling disciplines (ρ T =0.75, µ2 = 20)

166

Preemptive resume priority

60
50
40
30
20
α = 0.25
0.5
0.75

10
0
10

20

30

40

50
µ2

60

70

80

90 100Figure 4.13: Mean class-1 packet delay versus the mean class-2 service time for boththe PR (lower curves) as the NP priority (upper curves) scheduling disciplines (ρ T =0.75, µ1 = 20)

300
250
200
150
α = 0.25
0.5
0.75

100
50
0
10

20

30

40

50
µ2

60

70

80

90 100Figure 4.14: Mean class-2 packet delay versus the mean class-2 service time for boththe PR (upper curves) as the NP priority (lower curves) scheduling disciplines (ρ T =0.75, µ1 = 20)

4.10 Concluding remarks

167

1
ρ2 =

0.1

0.1
0.21
0.4

0.01

0.001

0.0001

1e-05
20

30

40

50

60

70

80

90

100

n

Figure 4.15: Tail probabilities of the class-1 packet delay for several class-2 loads
for both the PR (lower curve) and the NP (upper curves) priority disciplines (ρ 1 =0.4, µ1 = µ2 = 16)

4.9.4 Tail probabilities
In this subsection, we compare the tail behaviors of the class-1 and class-2
packet delays in case of the NP and the PR priority scheduling disciplines.
We have seen that all singularities of D1 (z) and D2 (z) that play a role in the
tail behavior are equal in case of both scheduling types. This means that theslopes of the tail probabilities will be equal for both types. In Figures 4.15 and
4.16, the tail probabilities of the class-1 and class-2 packet delay respectively
are shown in case of the NP and the PR priority scheduling disciplines. The
class-1 load equals 0.4 for all curves and the class-2 loads take the values 0.1(non-geometric class-2 tail), approximately 0.21 (transition type class-2 tail)and 0.4 (geometric class-2 tail). The service times are equal to 16. In Figure
4.15, the lower curve is the curve of the tail probabilities of the class-1 packet
delay in the PR priority queue. This packet delay is independent of the class-2
characteristics, and we thus get the same curve for the three chosen valuesof ρ2 . It is seen from these figures that the type of the priority schedulingdiscipline plays a significant role in the tail probabilities of both the class-1
and class-2 packet delay.

4.10 Concluding remarks
In this chapter, we analyzed a PR priority queue. In the most general case general service times for both classes - the most important step was to find -168

Preemptive resume priority

1
ρ2 =

0.1
0.21
0.4

70

80

0.1

0.01

0.001
20

30

40

50

60

90

100

n

Figure 4.16: Tail probabilities of the class-2 packet delay for several class-2 loads
for both the PR (upper curves) and the NP (lower curves) priority disciplines (ρ 1 =0.4, µ1 = µ2 = 16)

besides the system contents of both classes - supplementary variables in order
to construct a Markov chain. A four-dimensional pgf was calculated, which
was the starting-point to obtain all performance measures.
In the previous chapter, a Markov chain was introduced by studying the system first at specific slot boundaries. The methods used to analyze (discretetime) queues with general service times - namely, the method discussed in
the previous chapter and the supplementary variable technique studied inthis chapter - both have their advantages and disadvantages. The advantageof the analysis on specific slot boundaries is that the initial analysis is more
simple, i.e., finding the joint pgf of the steady-state system contents at the
specific slot boundaries is a quite straight-forward extension of the single-slot
analysis. The disadvantage of this method is the quite extensive calculations
which are necessary to calculate the pgf’s of the required stochastic variables(system contents at random slot boundaries, unfinished work, packet delay,. . . ). A second disadvantage is the fact that it is sometimes hard to define specific slot boundaries so that the system contents at these slot boundaries forma Markovian description of the system. This is especially hard when service
times can be interrupted (e.g., the scheduling discipline in this section). The
advantages of the supplementary variable technique is the ease of defining
supplementary variables to form a Markov chain and the relative ease to findthe interesting pgf’s once the pgf of the stochastic variables of the Markov
chain is calculated. The main disadvantage is the complexity in calculating
the multivariate pgf.
Comparing the performance measures - we concentrate on the (mean) packet

4.10 Concluding remarks

169

delay - in the NP and PR priority queue, it is seen that the NP schedulingdiscipline is more tolerant to the class-2 packet delay than the PR priority
scheduling discipline. However, the latter discipline gives rise to a lower
class-1 packet delay. The class-1 delay characteristics are completely independent of the characteristics of the class-2 traffic in the PR priority queue.
This latter feature is not the case in the NP priority queue. Thus, purely
reasoning on the performance measures, the PR priority scheduling discipline seems to be a better candidate to be used than the NP priority schedulingdiscipline since the primordial goal of a priority scheduling is to decrease thehigh-priority - or class-1 - packet delay. However - in e.g. telecommunication
systems - the implementation of the PR priority discipline is more cumbersome, since service of packets can be interrupted and have to be (partially)
restored in the queue. Even more importantly, the network will have to beable to cope with partial packets floating through the network instead of complete packets. This gives a more complicated header creation (each part of thepacket its own header?), packets that have to be re-assembled, . . . . Since the
NP priority scheduling discipline does not have these problems, this scheduling is mostly used in telecommunication systems. However, we have shownthat the influence of the class-2 characteristics on the class-1 delay can be significant for this scheduling discipline, especially for long class-2 service times.

170

Preemptive resume priority

Chapter 5

Preemptive repeat priority
In this chapter, we describe the analysis of a preemptive repeat priority queue.
Packets of two classes (class-1 and class-2) arrive in a single-server queueing
system and the packets of class-1 are scheduled for service with priority overclass-2 packets. So, when the server becomes available, a class-1 packet isserved next (if any). If no class-1 packets are present, a class-2 packet starts
service (if any). The scheduling type is preemptive - as in the previous chapter which means that newly arriving class-1 packets interrupt an on-going serviceof a class-2 packet. Or in other words, when class-1 packets arrive during aservice slot of a class-2 packet, one of the class-1 packet starts service the next
slot, and the interrupted class-2 packet is pushed back in the queue (unless it
was its last slot of service). In this chapter, we analyze the preemptive repeat
priority scheduling discipline, which means that an interrupted class-2 packet
has to repeat its complete service upon returning in the server (after all class-1
packets have left the system).
In the literature, two main types of preemptive repeat priority disciplines are
distinguished, namely, preemptive repeat different (PRD) - or preemptive repeat with resampling - and preemptive repeat identical (PRI) - or without resampling. In the first type, an interrupted service time is resampled. Thus,
when an interrupted packet enters the server for a new service attempt, the
new service time is not necessarily the same as the old one, but it takes a new
sample (with the same distribution). In the PRI queue, the service time of aparticular class-2 packet is the same in all its service attempts. In this chapter,
we study both these priority types.
Although this type of priority scheduling is mentioned - not analyzed - inearlier works like [White and Christie 1958, Miller 1960] and in e.g. the standard work of Kleinrock [1976], analyses of queues with this type of scheduling discipline are more scarce than analyses considering NP and PR priority
queues. In our opinion, this is due to two (equally important) reasons. First,
this type of priority scheduling is less useful in practice. This is basically be-172

Preemptive repeat priority

cause it is a non-work-conserving scheduling discipline, since an interrupted
packet has to be fully retransmitted. In other words, the load incorporates not
only the service time of class-2 packets, but also their possible repeats. The
load offered to the system is thus different from the arrival load. Therefore theperformance of this kind of queue is generally worse than the ones analyzed
in the two previous chapters. A second reason that this kind of queue is lessstudied, is that its analysis is more complicated than that of the NP and PR
priority queues. We go in further detail about the nature of this complexity inthe first section of this chapter.
Continuous-time queues with a preemptive repeat priority discipline are analyzed by a.o. Sumita and Sheng [1988], Yoon and Un [1994] and Krinik et al.
[2002]. Sumita and Sheng [1988] analyze a PRD queue in the context of a database system. The arrival process is assumed to be a Poisson process, while theservice times are generally distributed. In this database system it is assumed
that update requests and read queries are performed, where the former havepreemptive repeat priority over the latter. The reason why the low-priority
service times are resampled is because a file copy is likely to be stored on disk,
and processing of update requests may change the location of the read/write
heads, thus leading to a possibly resampled version of the service time of the(interrupted) read query. The authors state that therefore resampling gives amore accurate model than the model without resampling. The use of a PRI
priority scheduling discipline in CSMA-CD protocols for fiber optic bus networks is described in [Yoon and Un 1994]. A general finite number (M ) of stations, each with an infinite queueing capacity, are connected by an optic bus
network. A station has priority of accessing the bus network over its downstream stations possibly overwriting information of the downstream stations.
Therefore, this is modeled by a PRI priority queue with M priority classes.
The arrival processes are modeled by a Poisson process. Finally, Krinik et al.
[2002] analyze the transient behavior of a PRI priority queue with a Poisson arrival process and exponential service times using the randomization solution
form and lattice path combinatorics.
In [Mukherjee et al. 1995, Fiems et al. 2004, Fiems 2004], discrete-time queues
with a preemptive repeat priority scheduling discipline and without correlation between the arrival processes of different classes are studied. Mukherjee et al.
[1995] study a preemptive repeat protocol for voice-data integration in a ringbased LAN. A number of stations is connected by a ring network and eachstation is either a voice or a data station. Voice stations can overwrite theinformation of the data stations. The data stations can only put data on the
network when no information of the other stations is passing by. When thepacket reaches its destination an acknowledgement is immediately send to
the sender. The ring is unidirectional and the sender thus waits for a deterministic amount of slots - the round-trip-time (RTT) - for the acknowledgement.
When no acknowledgement is received, the packet has to be retransmitted.
This system is thus modeled as a preemptive repeat priority queueing systemwith deterministic service times (a number of slots so that the lengths of the5.1 Preliminaries

173

service times equal the RTT) for the low-priority packets. Note that the data
and voice queues are all analyzed separately and that the queueing model forthe low-priority queue is given by a queueing model with service interruptions.
Fiems et al. [2004], Fiems [2004] analyze preemptive priority queues. This isalso done by means of queues with service interruptions. A technique - thetechnique of the effective service times - is proposed for analyzing PR, PRD and
PRI queues commonly. The interruptions are incorporated in the service timesof the packets. These effective service times are obtained for the three priority disciplines separately, but once these are calculated a common queueing
analysis is performed.
Walraevens et al. [2003a] analyze a discrete-time two-class PRD queue with correlation between the arrival processes of the two classes. The numbers of arrivals
are i.i.d. from slot-to-slot and the service times are generally distributed. Using pgf’s, the moments of the system contents and packet delay of both classes
are obtained.
In this chapter, we analyze the PRD and PRI priority queues. Firstly, we startby focusing on the particular difficulties in their analyses in section 5.1. The
joint pgf of the numbers of per-slot class-1 and class-2 arrivals is still given by
A(z1 , z2 ). The service times of class-j packets are assumed to be generally distributed with their pgf’s equal to Sj (z), j = 1, 2. In this chapter, we describe
the analysis of both the preemptive repeat priority queues jointly when possible and separately when necessary. The analysis of the PRD priority queue is
as described in [Walraevens et al. 2003a], while the analysis of the PRI priority
queue is not previously published. We make use of the supplementary variable technique - as in the previous chapter - and describe the basic analysis
in chapter 5.2. The analysis of the system contents is described in section 5.3.
The joint pgf’s of queue contents and unfinished work of both classes are calculated in sections 5.4 and 5.5 respectively. The analyses of the packet delays
and waiting times of both classes are described in sections 5.6 and 5.7 respectively. We show some numerical examples in section 5.8, where we specificallyfocus on the comparison of the class-2 performance measures of the PR, of the
PRD and of the PRI priority queues. Finally, some concluding remarks are
given in section 5.9.

5.1 Preliminaries
In this chapter, we use the supplementary variable technique to analyze the preemptive repeat priority queues. For more details about this technique, we referto section 4.1.
As mentioned in the introductory paragraphs of this chapter, one of the reasons that these types of priority queues - and especially the PRI priority queues- have not been analyzed frequently in the literature is the fact that the analyses are (much) more complicated than the analyses of their NP and PR coun-

174

Preemptive repeat priority

terparts. This is mainly because one has to keep track of the complete service
time of the oldest class-2 packet in the queue in the PRI priority queue. (Theoldest class-j packet in the system at a certain time instant is defined as theclass-j packet that - of all the class-j packets present in the system at that time
instant - arrived first.) This is necessary, since this packet’s service can beinterrupted and afterwards its complete service has to be repeated. This complexity does not occur for the PRD priority scheduling discipline, since theservice time is resampled after an interruption. Therefore, the latter scheduling discipline can (also) be seen as a simplified version of the former - in termsof the analysis. We will however show that the performance measures of bothqueues can be considerably different.
Note that because of the more complex analysis the (finally) obtained pgf’s
will also be more complex. For example for the PRI priority queue an infinite sum will still appear in the pgf’s of the class-2 output stochastic variables.
Although means and variances are still (relatively) easy to obtain from these
pgf’s, calculating higher moments is in practice much more difficult. Furthermore, which singularities of the pgf’s can be dominant and what the behaviorof these pgf’s is in the neighborhood of these singularities, is an open issue
at this time. It will thus take further study to calculate tail probabilities fromthese pgf’s.

5.2 The supplementary variable technique
We denote the system contents of class-j packets at the beginning of slot k by
uj,k (j = 1, 2), as usual. The set {(u1,k , u2,k ), k ≥ 1} does not form a Markovchain in the case of general service times for both classes. Therefore, we introduce some additional stochastic variables.
Firstly, we define rk as follows: rk indicates the residual service time at the
beginning of slot k, i.e., the remaining number of slots needed to serve thepacket in service from the beginning of slot k on, if uT,k > 0, and rk = 0 if
uT,k = 0. uT,k , u1,k + u2,k denotes the total system contents at the beginningof slot k. With this definition, {(rk , u1,k , u2,k ), k ≥ 1} forms a Markov-chainof the PRD queue. A sample of the time-axis is shown in 5.1 to demonstrate
the PRD priority scheduling discipline and the stochastic variables. In thisexample, a class-2 service time of 5 slots is preempted by a newly arriving
class-1 packet and it is repeated with a new sample of 3 slots after this class-1
packet’s service time.
However, in the case of the PRI queue, this set of stochastic variables still does
not form a Markov-chain, since an interrupted class-2 service time is not resampled and thus the (complete) service time has to be kept track of. Therefore,
we introduce an additional stochastic variable t2,k for the PRI Markov-chain,
as follows: t2,k indicates the complete service time of the oldest class-2 packet
at the beginning of slot k, if u2,k > 0, and t2,k = 0 if u2,k = 0. With this5.2 The supplementary variable technique

175

Figure 5.1: Sample of the time-axis in case of the PRD priority queue

Figure 5.2: Sample of the time-axis in case of the PRI priority queue

definition, {(rk , u1,k , t2,k , u2,k ), k ≥ 1} forms a Markov-chain of the PRI priority system. A sample of the time-axis is shown in 5.2 to demonstrate the
PRI priority scheduling discipline and the stochastic variables involved. In
this example, a class-2 service time of 5 slots is preempted by a newly arriving
class-1 packet and it is identically repeated after this class-1 packet’s servicetime.
We first calculate the joint pgf of the steady-state version of {rk , u1,k , u2,k }in the PRD case and calculate the joint pgf of the steady-state version of{rk , u1,k , t2,k , u2,k } in the PRI priority queue next. For both models, s∗j,k(j = 1, 2) denotes the service time of the next class-j packet to receive service
after slot k.

176

Preemptive repeat priority

5.2.1 PRD
The following system equations are established:
1. If rk = 0 (and hence uT,k = 0):
u1,k+1 =a1,ku2,k+1 =a2,k
if a1,k = a2,k = 0
0
rk+1 = s∗2,k if a1,k = 0, a2,k > 0 .
 ∗s1,k if a1,k > 0

(5.1)
(5.2)
(5.3)

The system was empty at the beginning of slot k. If no packets arrive
during slot k, the system stays empty. If no class-1 packets and at least
one class-2 packet arrives during slot k, a class-2 packet starts receiving
service at the beginning of slot k + 1. If at least one class-1 packet arrives
during slot k, a class-1 packet enters the server.
2. If rk = 1:(a) If u1,k = 0 (and thus u2,k > 0):
u1,k+1 =a1,ku2,k+1 =u2,k − 1 + a2,k
if a1,k = u2,k − 1 + a2,k = 0
0
rk+1 = s∗2,k if a1,k = 0, u2,k − 1 + a2,k > 0 .
 ∗s1,k if a1,k > 0

(5.4)
(5.5)
(5.6)

A class-2 packet left the system at the end of slot k. A new packet(of class-1, if any, otherwise of class-2) enters the server at the beginning of slot k+1 (if the system is non-empty at that time instant).
(b) If u1,k > 0:
u1,k+1 =u1,k − 1 + a1,ku2,k+1 =u2,k + a2,k
 0 if u1,k − 1 + a1,k = u2,k + a2,k = 0
rk+1 = s∗2,k if u1,k − 1 + a1,k = 0, u2,k + a2,k > 0 .
 ∗s1,k if u1,k − 1 + a1,k > 0

(5.7)
(5.8)
(5.9)

A class-1 packet left the system at the end of slot k. A new packet
commences service at the beginning of slot k + 1.
3. If rk > 1:

5.2 The supplementary variable technique

177(a) If u1,k = 0 (and thus u2,k > 0):
u1,k+1 =a1,ku2,k+1 =u2,k + a2,kr − 1 if a1,k = 0
rk+1 = k∗.
s1,kif a1,k > 0(5.10)(5.11)(5.12)

A class-2 packet was in service during slot k, but needs at least
one more slot to complete its service. It stays in the server whenno new class-1 packets arrive during slot k, otherwise its service ispreempted by one of the newly arriving class-1 packets.
(b) If u1,k > 0:
u1,k+1 =u1,k + a1,ku2,k+1 =u2,k + a2,krk+1 =rk − 1.

(5.13)(5.14)(5.15)

A class-1 packet was in service during slot k, but needs at least
one more slot to complete its service. Its residual service time isdecreased by one.
We defineuu

Pk (x, z1 , z2 ) , E[xrk z1 1,k z2 2,k ],(5.16)

as the joint pgf of the state vector (rk , u1,k , u2,k ). We also define the partial
pgf’s
i
h
u −1 uR1,k (z1 , z2 ) ,E z1 1,k z2 2,k {rk = 1, u1,k > 0}hiu −1R2,k (z2 ) ,E z2 2,k {rk = 1, u1,k = 0} .

(5.17)(5.18)

Using the system equations, we constitute the following relation between
Pk (., ., .) and Pk+1 (., ., .):Pk+1 (x, z1 , z2 ) =A(0, 0)Pk (0, 0, 0) + (A(0, z2 ) − A(0, 0))S2 (x)Pk (0, 0, 0)(5.19)+ (A(z1 , z2 ) − A(0, z2 ))S1 (x)Pk (0, 0, 0) + A(0, 0)R2,k (0)+ [A(0, z2 )R2,k (z2 ) − A(0, 0)R2,k (0)]S2 (x)+ (A(z1 , z2 ) − A(0, z2 ))S1 (x)R2,k (z2 ) + A(0, 0)R1,k (0, 0)+ [A(0, z2 )R1,k (0, z2 ) − A(0, 0)R1,k (0, 0)]S2 (x)+ [A(z1 , z2 )R1,k (z1 , z2 ) − A(0, z2 )R1,k (0, z2 )]S1 (x)178Preemptive repeat priority
A(0, z2 )[Pk (x, 0, z2 ) − xz2 R2,k (z2 ) − Pk (0, 0, 0)]x+ (A(z1 , z2 ) − A(0, z2 ))[P1,k (1, 0, z2 ) − z2 R2,k (z2 )+A(z1 , z2 )[Pk (x, z1 , z2 )x
− xz1 R1,k (z1 , z2 ) − Pk (x, 0, z2 )].
− Pk (0, 0, 0)]S1 (x) +We assume that the system is stable (we will comment on the stability condition later) and as a result Pk (x, z1 , z2 ), R1,k (z1 , z2 ) and R2,k (z2 ) converge to
steady-state functions denoted by P (x, z1 , z2 ), R1 (z1 , z2 ) and R2 (z2 ) respectively. By taking the k → ∞ limit in expression (5.19), we obtain:
P (x, z1 , z2 ) =n1xA(0, 0)(1 − S2 (x))[P (0, 0, 0) + R1 (0, 0) + R2 (0)]x − A(z1 , z2 )(5.20)+ A(0, z2 )(xS2 (x) − 1)P (0, 0, 0)+ xA(0, z2 )(S2 (x) − S1 (x))R1 (0, z2 ) + x[A(0, z2 )(S2 (x) − z2 )+ (A(z1 , z2 ) − A(0, z2 ))S1 (x)(1 − z2 )]R2 (z2 )+ (A(z1 , z2 ) − A(0, z2 ))[xS1 (x)P (1, 0, z2 ) − P (x, 0, z2 )]o+ xA(z1 , z2 )(S1 (x) − z1 )R1 (z1 , z2 ) .

It now remains for us to determine the unknown functions P (x, 0, z2 ), R1 (z1 , z2 )and R2 (z2 ). This can be done in the following steps. Firstly, we observe that
P (x, 0, 0) = P (0, 0, 0), due to the fact that rk = 0 iff u1,k = u2,k = 0. By putting
zj = 0 (j = 1, 2) in (5.20) and using this observation, we obtain:
P (0, 0, 0) =A(0, 0) [P (0, 0, 0) + R1 (0, 0) + R2 (0)] .

(5.21)

Replacing z1 by 0 in equation (5.20) and using equation (5.21), we find thefollowing expression for P (x, 0, z2 ):P (x, 0, z2 ) =1{[x(1 − S2 (x)) + A(0, z2 )(xS2 (x) − 1)]P (0, 0, 0)
x − A(0, z2 )(5.22)+ xA(0, z2 )S2 (x)R1 (0, z2 ) + xA(0, z2 )(S2 (x) − z2 )R2 (z2 )}.

We note that P (x, 0, z2 ) is bound for all values of x and z2 such that |x| < 1
and |z2 | < 1 since P (x, z1 , z2 ) is a pgf. In particular, this should be true for x =A(0, z2 ), |z2 | < 1, since |A(0, z2 )| < 1 for all such z2 . If we choose x = A(0, z2 )in equation (5.22), with |z2 | < 1, the denominator in the right-hand side of thisequation equals zero. The above then implies that its numerator also equals

5.2 The supplementary variable technique179

zero, which yields the following expression:

R1 (0, z2 ) =E2 (0, z2 )(1 − A(0, z2 ))P (0, 0, 0) + A(0, z2 )(z2 − E2 (0, z2 ))R2 (z2 ),A(0, z2 )E2 (0, z2 )(5.23)

with Ej (z1 , z2 ) , Sj (A(z1 , z2 )).
Returning to expression (5.20), we notice that P (x, z1 , z2 ) must be bound forall values of x and zj such that |x| < 1 and |zj | < 1 (j = 1, 2) since P (x, z1 , z2 )is a pgf. In particular, this should be true for x = A(z1 , z2 ), |zj | < 1 (j = 1, 2),since |A(z1 , z2 )| < 1 for all such zj . Substituting x by A(z1 , z2 ) in equation(5.20), where |zj | < 1, the denominator in the right-hand side of this equation
vanishes. The same must then be true for its numerator, which yields thefollowing expression: (A(0, z2 ) − 1)(A(z1 , z2 ) − 1)E2 (0, z2 )P (0, 0, 0) 
E1 (z1 , z2 ) +[(A(z1 , z2 ) − A(0, z2 ))E2 (0, z2 )(z2 − 1)
−A(0, z2 )(A(z1 , z2 ) − 1)(z2 − E2 (0, z2 ))]R2 (z2 )R1 (z1 , z2 ) =,(A(0, z2 ) − 1)A(z1 , z2 )E2 (0, z2 )(z1 − E1 (z1 , z2 ))(5.24)
by substituting P (x, 0, z2 ) and R1 (0, z2 ) by their expressions (5.22) and (5.23)
respectively. We furthermore note that R1 (z1 , z2 ) must be bound for all valuesof zj such that |zj | < 1 (j = 1, 2). In particular, this should be true for z1 =Y1 (z2 ) - with
Y1 (z) , E1 (Y1 (z), z),(5.25)- and |z2 | < 1 (see the Appendix for more details). The above implies that if
we insert z1 = Y1 (z2 ) in equation (5.24), where |z2 | < 1, the denominator in
the right-hand side of this equation vanishes. The same must then be true forits numerator, yielding

R2 (z2 ) =P (0, 0, 0)(A(Y1 (z2 ), z2 ) − 1)Y2 (z2 ),A(Y1 (z2 ), z2 )(z2 − Y2 (z2 ))(5.26)withY2 (z) =(1 − A(0, z))A(Y1 (z), z)S2 (A(0, z)). (5.27)(A(Y1 (z), z) − A(0, z))S2 (A(0, z)) − A(0, z)(A(Y1 (z), z) − 1)

180

Preemptive repeat priority

The following expression of P (x, z1 , z2 ) is derived by substituting the equations (5.21)-(5.26) in expression (5.20):
P (x, z1 , z2 ) = P (0, 0, 0) 1

(5.28)(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(S1 (x) − E1 (z1 , z2 ))Y2 (z2 )(z2 − 1)
A(Y1 (z2 ), z2 )(x − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))(z2 − Y2 (z2 ))A(0, z2 )(A(Y1 (z2 ), z2 ) − 1)(S2 (x) − E2 (0, z2 ))Y2 (z2 ).
+xz2
A(Y1 (z2 ), z2 )E2 (0, z2 )(x − A(0, z2 ))(z2 − Y2 (z2 ))+ xz1Finally, in order to find an expression for P (0, 0, 0), we put x = z1 = z2 = 1 inequation (5.28) and use de l’Hôpital’s rule. We obtain
P (0, 0, 0) =1 − ρT,ef f ,(5.29)

ρT,ef f ,ρ1 + λ2 µ2,ef f ,(5.30)

withandµ2,ef f ,A1 (0)(1 − S2 (A1 (0))).
S2 (A1 (0))(1 − A1 (0))(5.31)

So, ρT,ef f is the effective load (including retransmissions of class-2 packets)
offered to the system. Using this result in equation (5.28), we finally obtain an
expression of P (x, z1 , z2 ) in terms of the system parameters.

5.2.2 PRI
As already mentioned, we need an extra stochastic variable t2,k - the complete
service time of the oldest class-2 packet - in order to analyze the PRI priority
queue.
The following system equations are established:
1. If rk = 0 (and hence uT,k = 0):
u1,k+1 =a1,ku2,k+1 =a2,k
if a1,k = a2,k = 0
0
rk+1 = s∗2,k if a1,k = 0, a2,k > 0 ∗s1,k if a1,k > 0(5.32)(5.33)(5.34)

5.2 The supplementary variable techniquet2,k+1 =0
if a2,k = 0.
s∗2,k if a2,k > 0

181(5.35)The system is empty at the beginning of slot k. If no packets arrive during slot k, the system stays empty. If no class-1 packets and at least oneclass-2 packet arrive during slot k, a class-2 packet starts receiving service at the beginning of slot k + 1. If at least one class-1 packet arrives
during slot k, a class-1 packet enters the server. If class-2 packets arrive,
t2,k+1 equals the service time of one of these class-2 packets.
2. If rk = 1:(a) If u1,k = 0 (and thus u2,k > 0):
u1,k+1 =a1,ku2,k+1 =u2,k − 1 + a2,k
if a1,k = u2,k − 1 + a2,k = 0
0
rk+1 = s∗2,k if a1,k = 0, u2,k − 1 + a2,k > 0 ∗s1,k if a1,k > 0
0
if u2,k − 1 + a2,k = 0
t2,k+1 = ∗.
s2,k if u2,k − 1 + a2,k > 0(5.36)(5.37)(5.38)(5.39)

A class-2 packet is served during slot k and leaves the system atthe end of this slot. A new packet (of class-1, if any, otherwise ofclass-2) enters the server at the beginning of slot k + 1 (if the system
is non-empty at that time instant).
(b) If u2,k = 0 (and thus u1,k > 0):
u1,k+1 =u1,k − 1 + a1,ku2,k+1 =a2,k 0 if u1,k − 1 + a1,k = a2,k = 0
rk+1 = s∗2,k if u1,k − 1 + a1,k = 0, a2,k > 0 ∗s1,k if u1,k − 1 + a1,k > 00
if a2,k = 0
t2,k+1 = ∗.
s2,k if a2,k > 0(5.40)(5.41)(5.42)(5.43)

A class-1 packet leaves the system at the end of slot k. A new packet
commences service at the beginning of slot k + 1.
(c) If u1,k > 0, u2,k > 0:
u1,k+1 =u1,k − 1 + a1,ku2,k+1 =u2,k + a2,k(5.44)(5.45)

182

Preemptive repeat priority

rk+1 =

t2,k if u1,k − 1 + a1,k = 0s∗1,k if u1,k − 1 + a1,k > 0

t2,k+1 =t2,k .

(5.46)(5.47)The difference with the previous situation is that at least one class-2
packet is in the system at the beginning of slot k. The oldest class-2
packet - with service time equal to t2,k - starts service at the beginning of the next slot if no class-1 packets are present in the systemat that time instant.
3. If rk > 1:(a) If u1,k = 0 (and thus u2,k > 0):
u1,k+1 =a1,ku2,k+1 =u2,k + a2,kr − 1 if a1,k = 0
rk+1 = k∗s1,kif a1,k > 0
t2,k+1 =t2,k .

(5.48)(5.49)(5.50)(5.51)

A class-2 packet is in service during slot k, but needs at least one
more slot to complete its service. The class-2 packet stays in theserver when no new class-1 packets arrive during slot k, otherwise
its service is preempted by one of the newly arriving class-1 packets
and the class-2 packet is put back in the queue.
(b) If u2,k = 0 (and thus u1,k > 0):
u1,k+1 =u1,k + a1,ku2,k+1 =a2,krk+1 =rk − 1
0
if a2,k = 0
t2,k+1 = ∗.
s2,k if a2,k > 0(5.52)(5.53)(5.54)(5.55)

A class-1 packet is in service during slot k, but needs at least one
more slot to complete its service.
(c) If u1,k > 0, u2,k > 0:
u1,k+1 =u1,k + a1,ku2,k+1 =u2,k + a2,krk+1 =rk − 1
t2,k+1 =t2,k .

(5.56)(5.57)(5.58)(5.59)

5.2 The supplementary variable technique183

The difference with the previous situation is that at least one class-2
packet was present in the system at the beginning of slot k.
We defineutu

Pk (x, z1 , y2 , z2 ) , E[xrk z1 1,k y22,k z2 2,k ],(5.60)

as the joint pgf of the state vector (rk , u1,k , t2,k , u2,k ). Further, we define thepartial pgf’shiu −1 tu
R1,k (z1 , y2 , z2 ) ,E z1 1,k y22,k z2 2,k {rk = 1, u1,k > 0}
h
i
t
u −1
R2,k (y2 , z2 ) ,E y22,k z2 2,k {rk = 1, u1,k = 0} .

(5.61)(5.62)

Using the system equations, we constitute the following relation between
Pk (x, z1 , y2 , z2 ) and Pk+1 (x, z1 , y2 , z2 ):Pk+1 (x,z1 , y2 , z2 ) = [A(0, 0) + (A(0, z2 ) − A(0, 0))S2 (xy2 )(5.63)+ (A(z1 , 0) − A(0, 0))S1 (x) + (A(z1 , z2 ) − A(z1 , 0) − A(0, z2 )+ A(0, 0))S1 (x)S2 (y2 )]Pk (0, 0, 0, 0) + A(0, 0)R2,k (1, 0)+ [A(0, z2 )R2,k (1, z2 ) − A(0, 0)R2,k (1, 0)]S2 (xy2 )+ (A(z1 , 0) − A(0, 0))S1 (x)R2,k (1, 0) + [(A(z1 , z2 )− A(0, z2 ))R2,k (1, z2 ) − (A(z1 , 0) − A(0, 0))R2,k (1, 0)]S1 (x)S2 (y2 )+ [A(0, 0) + (A(0, z2 ) − A(0, 0))S2 (xy2 )]R1,k (0, 0, 0)+ [A(z1 , 0)R1,k (z1 , 0, 0) − A(0, 0)R1,k (0, 0, 0)]S1 (x) + [(A(z1 , z2 )− A(z1 , 0))R1,k (z1 , 0, 0) − (A(0, z2 ) − A(0, 0))R1,k (0, 0, 0)]S1 (x)S2 (y2 )+ A(0, z2 )(R1,k (0, xy2 , z2 ) − R1,k (0, 0, 0)) + [A(z1 , z2 )(R1,k (z1 , y2 , z2 )− R1,k (z1 , 0, 0)) − A(0, z2 )(R1,k (0, y2 , z2 ) − R1,k (0, 0, 0))]S1 (x)A(0, z2 )[Pk (x, 0, y2 , z2 ) − xz2 R2,k (y2 , z2 ) − Pk (0, 0, 0, 0)]x+ (A(z1 , z2 ) − A(0, z2 ))S1 (x)[P1,k (1, 0, y2 , z2 ) − z2 R2,k (y2 , z2 )+A(z1 , 0) + (A(z1 , z2 ) − A(z1 , 0))S2 (y2 )x× [Pk (x, z1 , 0, 0) − xz1 R1,k (z1 , 0, 0) − Pk (0, 0, 0, 0)]− Pk (0, 0, 0, 0)] +A(z1 , z2 )[(Pk (x, z1 , y2 , z2 ) − Pk (x, z1 , 0, 0)) − xz1 (R1,k (z1 , y2 , z2 )x
− R1 (z1 , 0, 0)) − (Pk (x, 0, y2 , z2 ) − Pk (0, 0, 0, 0))].
+We assume that the system is stable (we will comment on the stability condition in subsection 5.2.3) and as a result Pk (x, z1 , y2 , z2 ), R1,k (z1 , y2 , z2 ) andR2,k (y2 , z2 ) converge to the steady-state functions P (x, z1 , y2 , z2 ), R1 (z1 , y2 , z2 )

184Preemptive repeat priority

and R2 (y2 , z2 ) respectively. By taking the k → ∞ limit in expression (5.63), we
obtain:P (x, z1 , y2 , z2 ) =n1xA(0, 0)(1 − S2 (xy2 ) + S1 (x)(S2 (y2 ) − 1))
x − A(z1 , z2 )(5.64)× (P (0, 0, 0, 0) + R1 (0, 0, 0) + R2 (1, 0))+ [A(0, z2 )(xS2 (xy2 ) − 1 + xS1 (x)(1 − S2 (y2 )))+ (A(z1 , z2 ) − A(z1 , 0))(xS1 (x) − 1)(S2 (y2 ) − 1)]P (0, 0, 0, 0)+ xA(z1 , 0)S1 (x)(1 − S2 (y2 ))R2 (1, 0) + xA(0, z2 )(S2 (xy2 ) − 1+ S1 (x)(1 − S2 (y2 )))R1 (0, 0, 0) + x(A(z1 , z2 ) − A(z1 , 0))

× (S1 (x) − z1 )(S2 (y2 ) − 1)R1 (z1 , 0, 0) + (A(z1 , z2 ) − A(z1 , 0))
× (S2 (y2 ) − 1)P (x, z1 , 0, 0) + xA(0, z2 )S2 (xy2 )R2 (1, z2 )+ x(A(z1 , z2 ) − A(0, z2 ))S1 (x)S2 (y2 )R2 (1, z2 )− xA(0, z2 )S1 (x)R1 (0, y2 , z2 ) − xz2 [A(0, z2 )+ (A(z1 , z2 ) − A(0, z2 ))S1 (x)]R2 (y2 , z2 ) + x(A(z1 , z2 )− A(0, z2 ))S1 (x)P (1, 0, y2 , z2 ) − (A(z1 , z2 − A(0, z2 ))× P (x, 0, y2 , z2 ) + xA(0, z2 )R1 (0, xy2 , z2 )o+ xA(z1 , z2 )(S1 (x) − z1 )R1 (z1 , y2 , z2 ) .
In the remainder we determine the functions P (x, z1 , 0, 0), P (x, 0, y2 , z2 ),R1 (z1 , y2 , z2 ) and R2 (y2 , z2 ) and the unknown constants P (0, 0, 0, 0), R1 (0, 0, 0)
and R2 (1, 0). This can be done in a few steps. Firstly, we observe that
P (x, 0, y2 , 0) = P (0, 0, 0, 0) and R1 (0, y2 , 0) = R1 (0, 0, 0), due to the fact thatrk = 0 iff u1,k = u2,k = 0 and t2,k = 0 iff u2,k = 0. By putting zj = 0 (j = 1, 2)
in expression (5.64) and using this observation, we obtain:
P (0, 0, 0, 0) =A(0, 0) [P (0, 0, 0, 0) + R1 (0, 0, 0) + R2 (1, 0)] .

(5.65)

We furthermore observe that the following equations hold (because t2,k = 0
iff u2,k = 0):
P (x, z1 , y2 , 0) =P (x, z1 , 0, 0)
R1 (z1 , y2 , 0) =R1 (z1 , 0, 0).

(5.66)(5.67)

Replacing z2 (z1 respectively) by 0 in equation (5.64) and using the former
equations and equation (5.65), we find the following expression for P (x, z1 , 0, 0)

5.2 The supplementary variable technique185(P (x, 0, y2 , z2 ) respectively):x(1 − S1 (x))
 + A(z1 , 0)(xS1 (x) − 1)]P (0, 0, 0, 0) 
+xA(z1 , 0) S1 (x)R2 (1, 0) + (S1 (x) − z1 )R1 (z1 , 0, 0)
P (x, z1 , 0, 0) =x − A(z1 , 0)(5.68) x(1 − S2 (xy 2 )) + A(0, z2 )(xS2 (xy2 ) − 1) P (0, 0, 0, 0) +xA(0, z2 ) S2 (xy2 )R2 (1, z2 ) − z2 R2 (y2 , z2)+(S2 (xy2 ) − 1)R1 (0, 0, 0) + R1 (0, xy2 , z2 )P (x, 0, y2 , z2 ) =.
x − A(0, z2 )(5.69)
Substituting these expressions in (5.64) allows us to eliminate P (x, z1 , 0, 0),
P (x, 0, y2 , z2 ) and P (1, 0, y2 , z2 ).
We now first return to expression (5.64) and extract as much information as
possible from this expression. We notice that the function P (x, z1 , y2 , z2 ) must
be bound for all values of x, y2 and zj such that |x| < 1, |y2 | < 1 and |zj | < 1(j = 1, 2) since P (x, z1 , y2 , z2 ) is a pgf. In particular, this should be true for
x = A(z1 , z2 ), |x| < 1, |y2 | < 1 and |zj | < 1 (j = 1, 2), since |A(z1 , z2 )| < 1
for |zj | < 1. The above implies that if we choose x = A(z1 , z2 ) in equation(5.64) the denominator of the right-hand side of this equation vanishes. The
same is then true for the numerator, which yields the following expression (byalso substituting P (x, z1 , 0, 0) and P (x, 0, y2 , z2 ) by their expressions obtainedin equations (5.68) and (5.69) respectively):(S2 (y2 ) − 1)R1 (z1 , 0, 0) + R1 (z1 , y2 , z2 )(5.70)

E1 (z1 , z2 )=A(z1 , z2 )(1 − A(0, z2 ))(z1 − E1 (z1 , z2 ))× {A(0, z2 )(1 − A(z1 , z2 ))[(1 − S2 (y2 ))R1 (0, 0, 0) − R1 (0, y2 , z2 )]+ (A(z1 , z2 ) − A(0, z2 ))[S2 (y2 )R2 (1, z2 ) − z2 R2 (y2 , z2 )]}.

Next, we notice that (S2 (y2 ) − 1)R1 (z1 , 0, 0) + R1 (z1 , y2 , z2 ) must be bound forall values of y2 and zj such that |y2 | < 1 and |zj | < 1 (j = 1, 2). In particular,
this is true for z1 = Y1 (z2 ), with
Y1 (z) , E1 (Y1 (z), z).

(5.71)

The above implies that if we insert z1 = Y1 (z2 ) in equation (5.70), where |z2 | <1, the denominator of the right-hand side of this equation equals zero. The
same must then be true its numerator, yielding(S2 (y2 ) − 1)R1 (0, 0, 0) + R1 (0, y2 , z2 )(5.72)

186

Preemptive repeat priority=(A(Y1 (z2 ), z2 ) − A(0, z2 ))(S2 (y2 )R2 (1, z2 ) − z2 R2 (y2 , z2 )).
A(0, z2 )(1 − A(Y1 (z2 ), z2 ))From this expression, no more information can be extracted. Therefore, we
return to expressions (5.68) and (5.69).
Firstly, we notice that expression (5.68) must be bound for all values of x
and z1 such that |x| < 1 and |z1 | < 1. In particular, this should be true for
x = A(z1 , 0). The above implies that if we choose x = A(z1 , 0) in equation(5.68), where |z1 | < 1, the denominator of the right-hand side of this equation vanishes. Of course, the same must then be true for its numerator, whichyields the following relation for R1 (z1 , 0, 0):
R1 (z1 , 0, 0) =E1 (z1 , 0)[(A(z1 , 0) − 1)P (0, 0, 0, 0) + A(z1 , 0)R2 (1, 0)].
A(z1 , 0)(z1 − E1 (z1 , 0))(5.73)

This expression must be bound for its argument z1 within the complex unit
circle, the denominator of the right-hand side of this expression vanishes
when z1 = Y1 (0), since the denominator vanishes also for this value of z1 since Y (0) = E1 (Y (0), 0) - yielding:
R2 (1, 0) =P (0, 0, 0, 0)

1 − A(Y1 (0), 0).
A(Y1 (0), 0)(5.74)We then determine the following expression for P (x, z1 , 0, 0) from equation(5.68) together with equations (5.73) and (5.74):
P (x, z1 , 0, 0) =P (0, 0, 0, 0)(5.75)

(A(z1 , 0) − A(Y1 (0), 0))(S1 (x) − S1 (A(z1 ), 0))
× 1 + xz1.
A(Y1 (0), 0)(x − A(z1 , 0))(z1 − E1 (z1 , 0))Finally, we find the remaining unknown function R2 (y2 , z2 ) (which is the only
still unknown - except for P (0, 0, 0, 0) - at this time). First, substituting expression (5.72) in expression (5.69) yields the following expression of P (x, 0, y2 , z2 ):(x − A(0, z2 ))(1 − A(Y1 (z2 ), z2 ))P (0, 0, 0, 0)







 −x(1 − A(0, z2 ))S2 (xy2 )(1 − A(Y1 (z2 ), z2 ))P (0, 0, 0, 0) 
+x(1 − A(0, z2 ))A(Y1 (z2 ), z2 )S2 (xy2 )R2 (1, z2 )−xz2 A(0, z2 )(1 − A(Y1 (z2 ), z2 ))R2 (y2 , z2 )






−xz2 (A(Y1 (z2 ), z2 ) − A(0, z2 )R2 (xy2 , z2 )P (x, 0, y2 , z2 ) =.
(x − A(0, z2 ))(1 − A(Y1 (z2 ), z2 ))(5.76)
P (x, 0, y2 , z2 ) must be bound for all values of x, y2 and z2 such that |x| < 1,|y2 | < 1 and |z2 | < 1. In particular, this should be true for x = A(0, z2 ).

5.2 The supplementary variable technique187

Choosing x = A(0, z2 ) in equation (5.76), the denominator of the right-handside vanishes. The same must be true for the denominator, yielding: (1 − A(0, z2 ))S2 (A(0, z2 )y2 )[(A(Y1 (z2 ), z2 ) − 1) 
×P (0, 0, 0, 0) + A(Y1 (z2 ), z2 )R2 (1, z2 )]+A(0, z2 )z2 (A(Y1 (z2 ), z2 ) − 1)R2 (y2 , z2 ).
R2 (A(0, z2 )y2 , z2 ) =z2 (A(Y1 (z2 ), z2 ) − A(0, z2 ))(5.77)
This latter expression thus gives a functional equation of R2 (y2 , z2 ) (as a function of P (0, 0, 0, 0)). Defining the following partial conditional pgf
R2,i (z2 ) ,E z2u2 −1 |t2 = i{r = 1, u1 = 0} ,(5.78)

where r, u1 , t2 and u2 are the steady state versions of rk , u1,k , t2,k and u2,krespectively. R2 (y2 , z2 ) is expressed in function of the R2,i (z2 ) as follows:
R2 (y2 , z2 ) =∞X

Prob[t2 = i|r = 1, u1 = 0]y2i R2,i (z2 ).

(5.79)

i=1

Note that the slots at the beginning of which r = 1 and u1 = 0 are the slotsof which at the end a class-2 packet leaves the system (and vice versa). Sincet2 equals the service time of the packet that leaves the system (the oldest one)and since every packet leaves the system just once, we findProb[t2 = i|r = 1, u1 = 0] =s2 (i),(5.80)

with s2 (i) the pmf of the class-2 service times. Expression (5.79) thus becomesR2 (y2 , z2 ) =∞X

s2 (i)y2i R2,i (z2 ).

(5.81)

i=1

Substituting this expression in expression (5.77) givesz2 (A(Y1 (z2 ), z2 ) − A(0, z2 ))∞X

s2 (i)(A(0, z2 )y2 )i R2,i (z2 )

i=1
∞
X

=(1 − A(0, z2 ))(5.82)

s2 (i)(A(0, z2 )y2 )ii=1× [(A(Y1 (z2 ), z2 ) − 1)P (0, 0, 0, 0) + A(Y1 (z2 ), z2 )R2 (1, z2 )]∞X+ A(0, z2 )z2 (A(Y1 (z2 ), z2 ) − 1)s2 (i)y2i R2,i (z2 ),
i=1

188

Preemptive repeat priority

where we have also substituted S2 (A(0, z2 )y2 ) by its power series expression.
Since this equation has to hold for all y2 (|y2 | < 1), the coefficients of y2i in bothsides of the expression have to be equal (and this for all i). This leads to(A(Y1 (z2 ), z2 ) − 1)P (0, 0, 0, 0)+A(Y1 (z2 ), z2 )R2 (1, z2 )R2,i (z2 ) =,z2 [(A(Y1 (z2 ), z2 ) − A(0, z2 ))A(0, z2 )i − A(0, z2 )(A(Y1 (z2 ), z2 ) − 1)](5.83)(1 − A(0, z2 ))A(0, z2 )ii ≥ 1. Substituting this in (5.81) yields
R2 (y2 , z2 ) =B(y2 , z2 )z2A(Y1 (z2 ), z2 ) − 1
P (0, 0, 0, 0) + R2 (1, z2 ) ,A(Y1 (z2 ), z2 )(5.84)

with
B(y, z) ,∞X

s2 (i)y i (1 − A(0, z))A(Y1 (z), z)A(0, z)i.
(A(Y1 (z), z) − A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)i=1

(5.85)

Substituting y2 by 1 in expression (5.84), gives an expression of R2 (1, z2 ) as afunction of P (0, 0, 0, 0):
R2 (1, z2 ) =P (0, 0, 0, 0)(A(Y1 (z2 ), z2 ) − 1)B(1, z2 ).
A(Y1 (z2 ), z2 )(z2 − B(1, z2 ))(5.86)

Substituting expressions (5.84) and (5.86) in expression (5.76) yields the following expression of P (x, 0, y2 , z2 ) as a function of P (0, 0, 0, 0):(5.87) A(Y1 (z2 ), z2 )(B(xy2 , z2 ) − S2 (xy2 ))



+A(0,
z
)A(Y
(z
),
z
)(S
(xy
)
−
B(y
,
z
))
2
1
2
2
2
2
2
2





+A(0,
z
)(B(y
,
z
)
−
B(xy
,
z
))
2
2
2
2
2
.
=P (0, 0, 0, 0) 
1 + xz2
A(Y
(z
),
z
)(x
−
A(0,
z
))(z
−
B(1,
z
))
1 2
2
2
2
2





P (x,0, y2 , z2 )We find the following expression for P (x, z1 , y2 , z2 ) - since all unknown functions and constants in expression (5.64) are basically found as a function of
P (0, 0, 0, 0) "P (x,z1 , y2 , z2 ) = P (0, 0, 0, 0) 1

(5.88)

5.2 The supplementary variable technique

189(A(z1 , 0) − A(Y1 (0), 0))(E1 (z1 , 0) − S1 (x))(S2 (y2 ) − 1)
A(Y1 (0), 0)(x − A(z1 , 0))(z1 − E1 (z1 , 0))(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(S1 (x) − E1 (z1 , z2 ))+ xz1
A(Y1 (z2 ), z2 )(x − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))(z2 − B(1, z2 ))× (z2 B(y2 , z2 ) − S2 (y2 )B(1, z2 )) A(Y1 (z2 ), z2 )(B(xy2 , z2 ) − S2 (xy2 ))+A(0, z2 )A(Y1 (z2 ), z2 )(S2 (xy2 ) − B(y2 , z2 )) #
+A(0, z2 )(B(y2 , z2 ) − B(xy2 , z2 ))+ xz2.
A(Y1 (z2 ), z2 )(x − A(0, z2 ))(z2 − B(1, z2 ))+ xz1Finally, in order to find an expression for P (0, 0, 0, 0), we put x1 = z1 = x2 =z2 = 1 and use de l’Hôpital’s rule in equation (5.88). We obtain
P (0, 0, 0, 0) =1 − ρT,ef f ,(5.89)

ρT,ef f ,ρ1 + λ2 µ2,ef f ,(5.90)

S2 (1/A1 (0)) − 1.
1/A1 (0) − 1(5.91)

withandµ2,ef f ,ρT,ef f denotes also in this model the effective load (including retransmissionsof class-2 packets) offered to the system. Using this result in equation (5.88),
we finally obtain P (x, z1 , y2 , z2 ).

5.2.3 Stability issues
We briefly touch upon stability issues of these priority queues. We notice that
P (0, 0, 0) = 0 and P (0, 0, 0, 0) = 0 for ρT,ef f = 1 in the PRD and PRI caserespectively. As a result the system becomes instable for ρT,ef f ≥ 1. Note thatin the PRI caseµ2,ef f ≥ µ2 .

(5.92)

This is proved by writing expression (5.91) in terms of power series, yieldingµ2,ef f =

∞
X

n=1

s2 (n)(1/A1 (0))n − 1,
1/A1 (0) − 1(5.93)

190

Preemptive repeat priority

and by noting that
(1/A1 (0))n − 1≥ n,
1/A1 (0) − 1(5.94)

for all n ≥ 1, since A1 (0) ≤ 1. As a result the effective load is always larger
than the arrival load in a PRI priority queue. This is also intuitively clear, since
retransmissions increase the total (effective) load of a system. Note that this is
not necessarily the case for the PRD priority queue, since the resampling of aservice time can actually lead to a decrease of the (effective) load.

5.3 System contents
5.3.1 Calculation of the pgf U (z1 , z2 )In this paragraph, we calculate the joint pgf of the system contents of class1 and class-2 packets. It is given by P (1, z1 , z2 ) in case of PRD and by
P (1, z1 , 1, z2 ) in the PRI case. Both lead to the following expression for
U (z1 , z2 ):U (z1 , z2 ) ,E [z1u1 z2u2 ](5.95)Y2 (z2 )(z2 − 1)=(1 − ρT,ef f )(5.96)
z2 − Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1),
× 1 + z1
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))with Y2 (z) given by
Y2 (z) =(1 − A(0, z))A(Y1 (z), z)S2 (A(0, z)), (5.97)(A(Y1 (z), z) − A(0, z))S2 (A(0, z)) − A(0, z)(A(Y1 (z), z) − 1)in the PRD case and by
Y2 (z) ,B(1, z)(5.98)∞iX
s2 (i)(1 − A(0, z))A(Y1 (z), z)A(0, z)=, (5.99)
(A(Y
(z),
z)
− A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)1i=1
in the PRI case.
We give a stochastic interpretation of this function Y2 (z) - which is a pgf further in this chapter.

5.3 System contents

191

Special case: geometric class-2 service times
In the special case of geometric class-2 service times, i.e.,
S2 (z) =(1 − β2 )z,
1 − β2 z(5.100)expression (5.96) equals(1 − ρT )(1 − β2 )(z2 − 1)
A(Y1 (z2 ), z2 )U (z1 , z2 ) =z2 − A(Y1 (z2 ), z2 )(1 − β2 + β2 z2 )(A(Y1 (z2 ), z2 ) − A(z1 , z2 ))(E1 (z1 , z2 ) − 1)
−z1,
(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))(5.101)in the case of PRD. This is the same pgf for U (z1 , z2 ) as in chapter 4 for apreemptive resume priority queue with the same arrival and service processes.
The difference between a PR and a PRD scheduling discipline is that from aninterrupted low-priority packet only the not-yet-served part has to be served
after the interruption in the PR priority queue, while in the PRD priority queue
an interrupted class-2 service has to be repeated with a new sample of theclass-2 service times. Since the geometric distribution is memoryless however,a residual service time and a new sample of the complete service time havethe same (geometric) distribution, and thus the system contents in a buffer
with PR priority on the one hand and PRD priority on the other hand are
identically distributed. Note that the expression of U (z1 , z2 ) in the PRI queue
is different, because in this case, a second attempt of a class-2 service time is
not resampled and as a result class-2 service times are no longer memorylessafter an interruption.
Special case: deterministic class-2 service times
In the special case of deterministic class-2 service times, i.e.,
S2 (z) =z µ2 ,(5.102)the expressions of Y2 (z) in the PRD and PRI queue are equal:Y2 (z) =(1 − A(0, z))A(Y1 (z), z)A(0, z)µ2.
(A(Y1 (z), z) − A(0, z))A(0, z)µ2 − A(0, z)(A(Y1 (z), z) − 1)

(5.103)As a result the expressions of U (z1 , z2 ) in both cases are also equal. Indeed,
when the class-2 service times are deterministic, resampling the class-2 service times after an interruption has no effect since all ’samples’ have the samelength.

192

Preemptive repeat priority

5.3.2 Calculation of the pgf UT (z)From the two-dimensional pgf U (z1 , z2 ), we derive the expression for the marginal pgf of the total system contents:(5.104)(5.105)
UT (z) ,E z u1 +u2=U (z, z)
Y2 (z)(z − 1)=(1 − ρT,ef f )z − Y2 (z)(AT (z) − A(Y1 (z), z))(S1 (AT (z)) − 1).
× 1+z
A(Y1 (z), z)(AT (z) − 1)(z − S1 (AT (z)))(5.106)5.3.3 Calculation of the pgf U1 (z)Furthermore, the pgf of the steady-state class-1 system contents is calculated
from U (z1 , z2 ):(5.107)(5.108)U1 (z) ,E [z u1 ]=U (z, 1)=(1 − ρ1 )S1 (A1 (z))(z − 1).
z − S1 (A1 (z))(5.109)5.3.4 Calculation of the pgf U2 (z)Finally, the pgf of the steady-state class-2 system contents is obtained fromU (z1 , z2 ) and we find(5.110)(5.111)U2 (z) ,E [z u2 ]=U (1, z)=(1 − ρT,ef f )A2 (z)(A(Y1 (z), z) − 1) Y2 (z)(z − 1).
A(Y1 (z), z)(A2 (z) − 1) z − Y2 (z)(5.112)5.3.5 Calculation of moments
By taking the necessary derivatives of these (marginal) pgf’s, moments of thetotal, of the class-1 and of the class-2 system contents are found. We show theexpressions of the mean values in this subsection.
The mean total system contents is found by taking the first derivative of (5.106)
and substituting z by 1:
E[uT ] =UT0 (1)(5.113)

5.3 System contents=

193µ1 Var[aT ]µ1 λ2 (µ2,ef f − µ1 )Var[a1 ]ρT,ef f+−(5.114)2
2(1 − ρT,ef f )2(1 − ρT,ef f )(1 − ρ1 )(µ2,ef f − µ1 )Var[a2 ] λ1 Var[s1 ](λ1 (1 − ρ1 ) + λ2 (1 − µ2,ef f λ1 ))++2(1 − ρT,ef f )2(1 − ρT,ef f )(1 − ρ1 )2
ρ1 λ2 (µ2,ef f − 1)
λ2 Var[s2 ]ef f+,+2(1 − ρT,ef f )(1 − ρ1 )
2(1 − ρ1 )with
Var[s2 ]ef f =µ2,ef f"2(1 − ρ1 )A(2) (0, 1)
λ2 A1 (0)(1 − A1 (0))


S20 (A1 (0))A1 (0)(1 − A1 (0))
1−S2 (A1 (0))(1 − S2 (A1 (0)))(5.115)#+ µ2,ef f − 1 ,for the PRD case, andVar[s2 ]ef f =µ2,ef f"2(1 − ρ1 )A(2) (0, 1)
λ2 A1 (0)(1 − A1 (0))

S 0 (1/A1 (0))
1− 2µ2,ef f

(5.116)#2(S2 (1/A1 (0)2 ) − S2 (1/A1 (0))2 )++ µ2,ef f − 1 ,(1/A1 (0) − 1)(S2 (1/A1 (0)) − 1)for the PRI priority queue.
The mean class-1 system contents is given by
E[u1 ] =U10 (1)=(5.117)
λ21 Var[s1 ]ρ1µ1 Var[a1 ]++.
2
2(1 − ρ1 )
2(1 − ρ1 )(5.118)And finally, the mean class-2 system contents is given by
E[u2 ] =U20 (1)=(5.119)µ21 λ2 Var[a1 ]µ2,ef f Var[a2 ] µ1 Cov[a1 , a2 ]ρ2,ef f+++2
2(1 − ρT,ef f )(1 − ρ1 ) 2(1 − ρT,ef f )1 − ρT,ef f(5.120)+λ2 (λ1 Var[s1 ] + λ2 Var[s2 ]ef f ) ρ1 λ2 (µ2,ef f − 1)+,
2(1 − ρT,ef f )(1 − ρ1 )
2(1 − ρ1 )with Var[s2 ]ef f given by expressions (5.115) or (5.116) for the PRD or PRI priority queue respectively.

194

Preemptive repeat priority

It is easily verified that expressions (5.114), (5.118) and (5.120) satisfy the relation E[uT ] =E[u1 ]+E[u2 ].

5.4 Queue contents
The queue contents are easily derived from the system contents. We denote - as
before - the queue contents of class-j at the beginning of the k-th slot by qj,k(j = 1, 2). The following relation between qj,k and uj,k - the class-j systemcontents at the beginning of slot k - is then found:q1,k =[u1,k − 1]+[u2,k − 1]+ if u1,k = 0
q2,k =.
u2,kif u1,k > 0(5.121)(5.122)

These are the same expressions as given in the previous chapter (subsection
4.4). When class-1 packets are present in the system, one of them is in service.
A class-2 packet is in service when at least one class-2 packet is present andno class-1 packets are present. This leads to the above relations.
Taking the z-transform of these relations, the following relationship between
Q(z1 , z2 ) - the joint pgf of the steady-state queue contents of class-1 and class-2
at the beginning of a random slot - and U (z1 , z2 ) is foundqq

Q(z1 , z2 ) = lim E[z11,k z22,k ]k→∞=U (0, 0) +U (0, z2 ) − U (0, 0) U (z1 , z2 ) − U (0, z2 )
+
.
z2
z1

(5.123)(5.124)

Substituting expression (5.96) in this expression finally yields
z2 − 1(5.125)Q(z1 , z2 ) =(1 − ρT,ef f )z2 − Y2 (z2 )(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(E1 (z1 , z2 ) − 1)Y2 (z2 )× 1+.
A(Y1 (z2 ), z2 )(A(z1 , z2 ) − 1)(z1 − E1 (z1 , z2 ))5.5 Unfinished work
The total unfinished work at the beginning of slot k, denoted by wT,k , isdefined as the number of slots it takes to serve all packets in the system at the
beginning of slot k, when no new packets arrive from slot k on. Furthermore,
the unfinished work of class-j (j = 1, 2) at the beginning of slot k, denotedby wj,k , is defined as the number of slots of the total unfinished work that are
effectively spent on serving class-j packets. The steady-state unfinished work

5.5 Unfinished work

195

of class-j at the beginning of a random slot is denoted by wj , j = 1, 2. We will
perform separate calculations of W (z1 , z2 ) - the joint pgf of w1 and w2 - for the
PRD and PRI priority queues.
PRD
W (z1 , z2 ) is expressed as a function of P (x, z1 , z2 ) as follows:
W (z1 , z2 ) ,E[z1w1 z2w2 ]P (z2 , 0, S2 (z2 )) − P (0, 0, 0)=P (0, 0, 0) +S2 (z2 )P (z1 , S1 (z1 ), S2 (z2 )) − P (z1 , 0, S2 (z2 ))+.
S1 (z1 )(5.126)(5.127)

The first term is the partial pgf when the system is empty at the beginning of
the randomly chosen slot. The second term is the partial pgf of the unfinishedwork of both classes when a class-2 packet is in service at the beginning of
the slot. In that case, the remaining service time is part of the class-2 unfinished work. All other class-2 packets in the queue add a class-2 service timeto the unfinished work of class-2. The third term is the partial pgf of the unfinished work of both classes when a class-1 packet is in service. In this case,the remaining service time is part of the class-1 unfinished work, and all classj packets in the queue add a class-j service time to the unfinished work ofclass-j. Note that the oldest class-2 packet could have already attempted toget served (but was interrupted). Since the priority discipline is of the PRD
type, this packet indeed also adds a random class-2 service time to the unfinished work.
Substituting expression (5.28) in expression (5.127) gives(A(S1 (z1 ), S2 (z2 )) − A(Y1 (S2 (z2 )), S2 (z2 )))W (z1 , z2 ) =(1 − ρT,ef f ) 1 + z1
A(Y1 (S2 (z2 )), S2 (z2 ))(z1 − A(S1 (z1 ), S2 (z2 )))(5.128)Y2 (S2 (z2 ))(S2 (z2 ) − 1)
A(0, S2 (z2 ))Y2 (S2 (z2 ))+ z2S2 (z2 ) − Y2 (S2 (z2 ))A(Y1 (S2 (z2 )), S2 (z2 ))(A(Y1 (S2 (z2 )), S2 (z2 )) − 1)(S2 (z2 ) − S2 (A(0, S2 (z2 ))))×.
S2 (A(0, S2 (z2 )))(z2 − A(0, S2 (z2 )))(S2 (z2 ) − Y2 (S2 (z2 )))×

PRI
In this case, W (z1 , z2 ) is written as a function of P (x, z1 , y2 , z2 ) as follows:
W (z1 , z2 ) =E[z1w1 z2w2 {w1 = w2 = 0}] + E[z1w1 z2w2 {w1 = 0, w2 > 0}](5.129)

196

Preemptive repeat priority+ E[z1w1 z2w2 {w1 > 0, w2 = 0}] + E[z1w1 z2w2 {w1 > 0, w2 > 0}]
P (z2 , 0, 1, S2 (z2 )) − P (0, 0, 0, 0)
S2 (z2 )P (z1 , S1 (z1 ), 0, 0) − P (0, 0, 0, 0)+
S1 (z1 )
P (z1 , S1 (z1 ), z2 , S2 (z2 )) − P (z1 , 0, z2 , S2 (z2 ))−P (z1 , S1 (z1 ), 0, 0) + P (0, 0, 0, 0)+.
S1 (z1 )S2 (z2 )=P (0, 0, 0, 0) +(5.130)All class-j packets in the queue add a (random) class-j service time to theunfinished work of class-j, except for the (possible) oldest class-1 and class-2
packets. The oldest class-1 packet is being served and it thus adds a residualclass-1 service time. The oldest class-2 packet adds a residual service time if
no class-1 packets are present at the time. Otherwise it adds a complete service
time equal to t2 (i.e., not just a random class-2 service time)
Substituting expression (5.88) in expression (5.130) gives(

W (z1 , z2 ) = (1 − ρT,ef f ) 1 + z1

A(S1 (z1 ), S2 (z2 )) − A(Y1 (S2 (z2 )), S2 (z2 ))A(Y1 (S2 (z2 )), S2 (z2 ))(z1 − A(S1 (z1 ), S2 (z2 )))(5.131)

B(z2 , S2 (z2 )) − B(1, S2 (z2 ))×S (z ) − B(1, S2 (z2 ))2 2 A(0, S2 (z2 ))A(Y1 (S2 (z2 )), S2 (z2 ))(S2 (z2 ) − B(1, S2 (z2 ))) z2 +A(Y1 (S2 (z2 )), S2 (z2 ))(B(z2 , S2 (z2 )) − S2 (z2 )))+A(0, S2 (z2 ))(B(1, S2 (z2 )) − B(z2 , S2 (z2 )))+.
A(Y1 (S2 (z2 )), S2 (z2 ))(z2 − A(0, S2 (z2 )))(S2 (z2 ) − B(1, S2 (z2 )))5.6 Packet delay
5.6.1 Pgf D1 (z) of the class-1 packet delay
Since the class-1 characteristics in the preemptive priority queues are independent of whether an interrupted class-2 packet is resumed or repeated, thedelays of class-1 packets in preemptive repeat and preemptive resume priority queues are identical. We thus have the same expression for D1 (z) as in theprevious chapter (expression (4.136)):
D1 (z) =1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1.
λ1 z − A1 (S1 (z)) S1 (z) − 1(5.132)

5.6 Packet delay

197

5.6.2 Pgf D2 (z) of the class-2 packet delay
We tag a class-2 packet that enters the buffer during slot k. We use the notion of sub-busy periods to analyze the class-2 packet delay (as in the previous
chapters). Two different kinds of sub-busy periods are defined, i.e., sub-busy
periods initiated by a class-1 packet and sub-busy periods initiated by a class-2 packet.
The first type is defined as follows: it starts at the beginning of the slot the initiating class-1 packet enters the server and ends when the number of class-1
packets in the system is one less - for the first time - than when the initiating class-1 packet entered the server. A sub-busy period initiated by a class-2
packet starts at the beginning of the slot the initiating class-2 packet enters theserver (for the first time) and it ends at the beginning of which a new class-2
packet can enter the server (if there is any).
Let us refer to the packets in the system at the end of slot k, but that have to
be served before the tagged packet as the “primary packets”. So, the taggedclass-2 packet enters the server for the first time, when all primary packets andall class-1 packets that arrived after slot k (i.e., while the tagged packet is waitingin the queue) are served. All primary class-j packets (except for the oldest
class-1 and class-2 packet) add a class-j sub-busy period to the delay of thetagged packet. Let ṽj,m denote the length of the sub-busy period added tothe tagged packet’s delay by the m-th class-j packet already in the queue at(i)the beginning of slot k and let vj,m denote the length of the sub-busy period
added to the delay of the tagged class-2 packet by the m-th class-j packet that
arrives during slot i. Finally ṽ2 denotes the sub-busy period initiated by thetagged class-2 packet itself.
During the tagged packet’s arrival slot, the system is in one of the following
states:1. u1,k = u2,k = 0:
d2 =

fj,k
2 X
X

j=1 m=1(k)
vj,m +

a1,k+d2

ṽ2 −

X

m=1

(k+d )
v1,m 2!

,(5.133)

with fj,k the number of class-j packets arriving during slot k, but thathave to be served before the tagged packet. fj,k class-j primary packets(j = 1, 2) all add a class-j sub-busy period to d2 . During the service
time of the tagged class-2 packet, new class-1 packets may arrive, whichinterrupt the tagged packet’s service. The sub-busy periods added to d2
by the class-1 packets arriving in the slot preceding the departure of thetagged packet (slot k + d2 ), are part of ṽ2 , but are not part of the delayof the tagged packet, since the tagged packet departs from the system atthe end of this slot. This accounts for the negative part in the right-handside of the above expression. Note that the last term in the right-handside of this expression is stochastically independent of the first term.

198

Preemptive repeat priority

2. u1,k = 0, u2,k > 0:u2,k −1+d2 =(v2,k− 1) +

Xṽ2,m +

m=1

f2,k
X

(k)
v2,m +

m=1

a1,k+d2ṽ2 −X(k+d )
v1,m 2m=1!

,(5.134)+
with v2,kthe remaining part of the sub-busy period initiated by the oldest class-2 packet at the beginning of slot k. The difference with theformer case, is that (multiple) class-2 packets are present in the system
when the tagged class-2 packet arrives and thus have to be served before
the tagged packet. All these class-2 packets initiate their own sub-busy
periods.

3. u1,k > 0, u2,k = 0:d2 =(rk − 1) +

rX
1,k+i
k −1 aX
i=1 m=1

a1,k+d2

+

X

ṽ2 −

u1,k −1(k+i)

v1,m +

Xṽ1,m +

m=1

(k+d )
v1,m 2

m=1

!

fj,k
2 X
X

(k)

vj,m

(5.135)

j=1 m=1.

The residual service time of the class-1 packet in service during slot kcontributes in the first term, the sub-busy periods added to d2 by theclass-1 packets arriving during the residual service time contribute in thesecond term, the sub-busy periods added by the class-1 packets alreadyin the queue at the beginning of slot k contribute in the third term, thesub-busy periods added by the class-1 and class-2 packets arriving during slot k, but that have to be served before the tagged class-2 packet contribute in the fourth term and finally the service time of and the sub-busy
period initiated by the tagged class-2 packet itself (minus the sub-busy
periods initiated by the class-1 packets arriving in the slot preceding theclass-2 packet’s departure) contribute in the last term.
4. u1,k > 0, u2,k > 0:
u1,k −1(k+i)
v1,m +

fj,k
2 X
Xṽ1,m +

u2,k −1X

a1,k+d2

X

X(k+d )
v1,m 2d2 =(rk − 1) +++ v2,k+rX1,k+i
k −1 aXm=1

i=1 m=1m=1ṽ2,m +

ṽ2 −

m=1

j=1 m=1!

This is a combination of the two previous situations.

.

(k)

vj,m

(5.136)

5.6 Packet delay199

D2 (z) is given by - by conditioning on whether the class-1 and/or the class-2
systems are empty D2 (z) =E z d2 {u1,k = u2,k = 0} + E z d2 {u1,k = 0, u2,k > 0}
(5.137)
 d2

 d2

+ E z {u1,k > 0, u2,k = 0} + E z {u1,k > 0, u2,k > 0} .

Before calculating the four terms of expression (5.137) - using the systemequations (5.133)-(5.136) - we first take a closer look at the pgf’s of the subbusy periods. It can easily be seen that the sub-busy periods initiated by the
primary packets of class-1 (class-2 respectively) form a set of i.i.d. randomvariables and their common pgf is - as usual - represented by V1 (z) (V2 (z)respectively).
The sub-busy periods initiated by a class-1 packet are still identically distributed as in the previous chapters. Thus we have
V1 (z) = S1 (zA1 (V1 (z))).

(5.138)The sub-busy periods initiated by a class-2 packet are different from the ones
discussed in the previous chapters. The reason for this is that the possible
repeats of the class-2 packet’s service time have to be accounted for in the subbusy period in this case. These sub-busy periods are furthermore different for
the PRD and PRI priority queues.
From this point forward we continue the analyses of the PRD and PRI priority
queues separately. We start with the PRD case.
PRD
We first calculate V2 (z). When a class-2 packet enters the server, two events
can occur: the class-2 packet can either be completely served in the first attempt, or the service of the class-2 packet is interrupted by newly arriving
class-1 packets during its service time. Denoting a random class-2 sub-busy
period by v2 , we find
V2 (z) ,E[z v2 ]=E[z v2 {no interruption}] + E[z v2 {interruption}],(5.139)(5.140)with “interruption” and “no interruption” short for the events that the firstattempt of the class-2 service is interrupted or not interrupted respectively
by arriving class-1 packets. A class-2 service is not interrupted if no class-1
packets arrive during the slots of the class-2 service time, with exception of
the last slot (since the class-2 packet leaves the system at the end of that slot
independent of whether class-1 packets arrive during that slot). The possibleclass-1 packets that enter the system during that last service slot add class-1

200

Preemptive repeat priority

sub-busy periods to the class-2 sub-busy period. Therefore the first term of(5.140) is given byE[z v2 {no interruption}] =A1 (V1 (z))=∞
X

s2 (i)A1 (0)i−1 z i(5.141)i=1S2 (zA1 (0))A1 (V1 (z)),
A1 (0)(5.142)

with s2 (i) the pmf of the class-2 service times.
The class-2 service is interrupted when m ≥ 1 class-1 packets arrive during
one of the service slots of the class-2 packet (excluding the last one). These
class-1 packets all add a class-1 sub-busy period. The class-2 packet is put
back in the queue and has to wait in the queue until all class-1 packets areserved before having another service attempt. Since the service time in the
new attempt is resampled, this again initiates a new class-2 sub-busy periodwith pgf V2 (z). This leads to the following expression
E[z v2 {interruption}] =V2 (z)∞Xs2 (i)i=1

i−1
XA1 (0)j−1 z j

j=1

∞
X

a1 (m)(V1 (z))mm=1(5.143)(A1 (V1 (z)) − A1 (0))(S2 (A1 (0)z) − A1 (0)z)V2 (z)=,A1 (0)(A1 (0)z − 1)
(5.144)
with a1 (m) the pmf of the per-slot class-1 arrivals.
Substituting expressions (5.142) and (5.144) in (5.140), we find the following
expression for V2 (z):V2 (z) =(1 − A1 (0)z)A1 (V1 (z))S2 (A1 (0)z).
(A1 (V1 (z)) − A1 (0))S2 (A1 (0)z) − A1 (0)(zA1 (V1 (z)) − 1)

(5.145)

We now return to formula (5.137) and calculate the four partial pgf’s one byone. Firstly, z-transforming expression (5.133), we findwith
 F (2) (V1 (z), V2 (z))V2 (z)P (0, 0, 0),
E z d2 {u1,k = u2,k = 0} =A1 (V1 (z))
hiff
F (2) (z1 , z2 ) ,E z1 1,k z2 2,k=A(z1 , z2 ) − A1 (z1 ),λ2 (z2 − 1)

(5.146)(5.147)(5.148)

5.6 Packet delay

201

which was already calculated in the previous chapters.
The second term in expression (5.137) is a bit more involved, because in thiscase - u1,k = 0, u2,k > 0 - a class-2 packet is in service when the tagged packet
arrives, which can be interrupted by newly arriving class-1 packets. Thus, thepacket in service during slot k is either completely served during that service
attempt or is interrupted by class-1 packets, leading to:E z d2 {u1,k = 0, u2,k > 0} =E z d2 {u1,k = 0, u2,k > 0, no interruption}(5.149) d2
+ E z {u1,k = 0, u2,k > 0, interruption} .

The first term equals - by z-transforming expression (5.134) E z d2 {u1,k = 0, u2,k > 0, no interruption}
=

F

(2)

(5.150)(2)(V1 (z), V2 (z))V2 (z)F (0, V2 (z))
R2 (V2 (z)) +A1 (V1 (z))(A1 (0))2 z
× [P (A1 (0)z, 0, V2 (z)) − A1 (0)zV2 (z)R2 (V2 (z)) − P (0, 0, 0)],with R2 (z2 ) and P (x, z1 , z2 ) defined in section 5.3 The first term is the partial
pgf of when the remaining service time of the class-2 packet equals 1 slot,
while the second term gives the partial pgf when this remaining service timeis larger than 1. Note that in this latter case f1,k = 0, since we consider thecase that the service of the packet in service during slot k is not interrupted.
The second term of (5.149) is given by - again by using expression (5.134) andafter some extensive mathematical manipulations E z d2 {u1,k = 0, u2,k > 0, interruption}

=(F

(2)

(V1 (z), V2 (z)) − F(2)(5.151)(0, V2 (z)))[P (1, 0, V2 (z)) − V2 (z)R2 (V2 (z))

V2 (z)z(A1 (V1 (z)) − A1 (0))− P (0, 0, 0)]+ F (2) (0, V2 (z))
A1 (V1 (z))
A1 (0)z − 1P (A1 (0)z, 0, V2 (z)) − A1 (0)zV2 (z)R2 (V2 (z)) − P (0, 0, 0)
×(A1 (0)z)2
V2 (z)− [P (1, 0, V2 (z)) − V2 (z)R2 (V2 (z)) − P (0, 0, 0)].
A1 (V1 (z))

The first term of this expression is the partial pgf when class-1 packets arrive
during slot k, while the second term is the partial pgf when no class-1 arrivals
occur during this slot.
Thirdly, we take a look at the third and fourth term of expression (5.137). Note,+that v2,k
is equally distributed as a complete sub-busy period when u1,k >0, u2,k > 0 since the oldest class-2 packet is waiting in the queue at the beginning of slot k and as a result it starts a “new” complete sub-busy period

202

Preemptive repeat priority

with pgf V2 (z) once it (re)starts service. (This is due to the resampling of theservice time after an interruption and will thus not be valid for the PRI priority queue.) As a result, it can be seen from expressions (5.135)-(5.136) that thesituations u1,k > 0, u2,k = 0 and u1,k > 0, u2,k > 0 can be analyzed together.
We findE z d2 {u1,k > 0} =E z d2 {u1,k > 0, u2,k = 0} + E z d2 {u1,k > 0, u2,k > 0}

(5.152)(2)=

V2 (z)F (V1 (z), V2 (z))(5.153)A1 (V1 (z))
P (zA1 (V1 (z)), V1 (z), V2 (z)) − P (zA1 (V1 (z)), 0, V2 (z)).
×
zA1 (V1 (z))V1 (z)Summing expressions (5.146), (5.150), (5.151) and (5.153) yields the following
expression for D2 (z)(V2 (z)
D2 (z) =F (2) (V1 (z), V2 (z))[P (0, 0, 0) + R2 (V2 (z))](5.154)A1 (V1 (z))

zA1 (V1 (z)) − 1(2)(2)+ F (V1 (z), V2 (z)) − F (0, V2 (z))[P (1, 0, V2 (z))
A1 (0)z − 1
zA1 (V1 (z)) − 1− V2 (z)R2 (V2 (z)) − P (0, 0, 0)] + F (2) (0, V2 (z))
A1 (0)z − 1
P (A1 (0)z, 0, V2 (z)) − A1 (0)zV2 (z)R2 (V2 (z)) − P (0, 0, 0)
×A1 (0)zS2 (A1 (0)z)+ F (2) (V1 (z), V2 (z)))
P (zA1 (V1 (z)), V1 (z), V2 (z)) − P (zA1 (V1 (z)), 0, V2 (z))×.
zA1 (V1 (z))V1 (z)Using expressions (5.26), (5.28), (5.29) and (5.148) in the previous expressionof D2 (z), we finally find
D2 (z) =1 − ρT,ef f V2 (z)λ2
A1 (V1 (z))

(zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))(5.155)

Y2 (V2 (z))(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z)))
A(Y1 (V2 (z)), V2 (z))(V2 (z) − Y2 (V2 (z)))
(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1)
×,(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))+

with Y2 (z) given by (5.27).

5.6 Packet delay

203

PRI
We first calculate V2 (z) for this case. We denote the conditional pgf of the subbusy period of a class-2 packet with a service time of i slots by V2,i (z). We thushave
V2 (z) =∞X

s2 (i)V2,i (z).

(5.156)i=1

We first calculate an expression for the V2,i (z). The pgf of the sub-busy period
initiated by a class-2 service time equal to i slots is the same as the pgf of theclass-2 sub-busy period in the case of a PRD priority queue and deterministicclass-2 service times of i slots. Indeed, in case of deterministic service times
resampling or not resampling are identical. This V2,i (z) thus equals expression(5.145) with S2 (z) = z i , orV2,i (z) =(1 − A1 (0)z)A1 (V1 (z))(A1 (0)z)i.
(A1 (V1 (z)) − A1 (0))(A1 (0)z)i − A1 (0)(zA1 (V1 (z)) − 1)

(5.157)

Substituting this expression in (5.156) yields
V2 (z) =∞X

s2 (i)(1 − A1 (0)z)A1 (V1 (z))(A1 (0)z)i. (5.158)(A1 (V1 (z)) − A1 (0))(A1 (0)z)i − A1 (0)(zA1 (V1 (z)) − 1)i=1

We calculate the four partial pgf’s in the right-hand side of expression (5.137)
one by one in the PRI case. Firstly, taking the z-transform of equation (5.133)
yields F (2) (V1 (z), V2 (z))V2 (z)P (0, 0, 0, 0)
E z d2 {u1,k = u2,k = 0} =,A1 (V1 (z))(5.159)with F (2) (z1 , z2 ) still given by expression (5.148).
The second term in expression (5.137) is (again) a bit more involved. The class2 packet in service during slot k is either served completely during that transmission attempt or is interrupted by class-1 packets, leading to:E z d2 {u1,k = 0, u2,k > 0} =E z d2 {u1,k = 0, u2,k > 0, no interruption}(5.160)
 d2
+ E z {u1,k = 0, u2,k > 0, interruption} .

The first term equals - by z-transforming expression (5.134) E z d2 {u1,k = 0, u2,k > 0, no interruption}(5.161)

204

Preemptive repeat priority=

F (2) (V1 (z), V2 (z))V2 (z)F (2) (0, V2 (z))
R2 (1, V2 (z)) +A1 (V1 (z))(A1 (0))2 z
× [P (A1 (0)z, 0, 1, V2 (z)) − A1 (0)zV2 (z)R2 (1, V2 (z)) − P (0, 0, 0, 0)].

The first term is the partial pgf when the remaining service time of the class-2
packet in service during slot k equals 1 slot, while the second term yields thepartial pgf when this remaining service time is larger than 1.
The second term of (5.160) is given by - by using expression (5.134) and aftersome mathematical manipulations
E z d2 {u1,k = 0, u2,k > 0, interruption}∞
F (2) (V1 (z), V2 (z)) − F (2) (0, V2 (z)) X=
V2,i (z) [Qi (1, 0, V2 (z))
A1 (V1 (z))
i=1(5.162)F (2) (0, V2 (z)) z(A1 (V1 (z))) − A1 (0)−s2 (i)V2 (z)R2,i (V2 (z))] +A1 (V1 (z))
A1 (0)z − 1
 P∞
V
(z)[Q
(A
(0)z,
0,
V
(z))
−
s
(i)A
i
1
2
2
1 (0)zV2 (z)R2,i (V2 (z))]
i=1 2,i×2(A1 (0)z)∞XV2,i (z) [Qi (1, 0, V2 (z)) − s2 (i)V2 (z)R2,i (V2 (z))] ,
−
i=1

with
u

u

Qi (x, z1 , z2 ) ,E[xrk z1 1,k z2 2,k {t2,k = i}],(5.163)i > 0. We show later on how the latter partial pgf’s are calculated using
the expression of P (x, z1 , y2 , z2 ). The first term of expression (5.162) is thepartial pgf when class-1 packets arrive during slot k, while the second termis the partial pgf when no class-1 arrivals occur during this slot. Note that
expression (5.162) resembles expression (5.151) in the PRD case. The differenceis that in the PRI case, we have to condition on the service time t2 of the class-2
packet which service is preempted because this service time is not resampled
in this case.
Furthermore, we take a look at the third term of expression (5.137). We find
 F (2) (V1 (z), V2 (z))V2 (z)E z d2 {u1,k > 0, u2,k = 0} =(5.164)A1 (V1 (z))
P (zA1 (V1 (z)), V1 (z), 0, 0) − P (0, 0, 0, 0).
×
zA1 (V1 (z))V1 (z)5.6 Packet delay

205

Finally, the last term of expression (5.137) is given by F (2) (V1 (z), V2 (z))
E z d2 {u1,k > 0, u2,k > 0} =(5.165)A1 (V1 (z))
P∞
V2,i (z)[Qi (zA1 (V1 (z)), V1 (z), V2 (z)) − Qi (zA1 (V1 (z)), 0, V2 (z))]× i=1.
zA1 (V1 (z))V1 (z)Again, we have to condition on the service time of the oldest class-2 packet
because this service time could have been interrupted before.
Summing expressions (5.159), (5.161), (5.162), (5.164) and (5.165) yields an expression for D2 (z) in terms of the functions P (., ., ., .) and R2 (1, .) and the functions R2,i (.) and Qi (., ., .) (i > 0). The R2,i (z2 ), R2 (1, z2 ) and P (x, z1 , y2 , z2 ) are
given by expressions (5.83), (5.86) and (5.88) respectively. So it remains for us
to calculate the Qi (x, z1 , z2 ). From the definition (5.163) of Qi (x, z1 , z2 ) andP (x, z1 , y2 , z2 ), it is seen that the following relation exists:∞X

Qi (z1 , y2 , z2 )y2i .

(5.166)

P (x,z1 , y2 , z2 ) − P (x, z1 , 0, 0) = (1 − ρT,ef f )x"
(A(z1 , 0) − A(Y1 (0), 0))(E1 (z1 , 0) − S1 (x))S2 (y2 )× z1
A(Y1 (0), 0)(x − A(z1 , 0))(z1 − E1 (z1 , 0))(5.167)

P (x, z1 , y2 , z2 ) − P (x, z1 , 0, 0) =i=1

From expressions (5.75) and (5.88), we find(A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(S1 (x) − E1 (z1 , z2 ))A(Y1 (z2 ), z2 )(x − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))(z2 − B(1, z2 ))× (z2 B(y2 , z2 ) − S2 (y2 )B(1, z2 )) A(Y1 (z2 ), z2 )(B(xy2 , z2 ) − S2 (xy2 ))+A(0, z2 )A(Y1 (z2 ), z2 )(S2 (xy2 ) − B(y2 , z2 )) #
+A(0, z2 )(B(y2 , z2 ) − B(xy2 , z2 ))+ z2.
A(Y1 (z2 ), z2 )(x − A(0, z2 ))(z2 − B(1, z2 ))+ z1

The right-hand sides of the last two expressions have to be equal for each y2 ,|y2 | < 1. Thus, the coefficients of the y2i of both expressions are also equal(forto - by noting that B(y, z) is given by (5.85) and S2 (y) =P∞ all i), leading
i
s
(i)y
i=1 2
(5.168)Qi (x, z1 , z2 ) =(1 − ρT,ef f )xs2 (i)"z1 (A(z1 , 0) − A(Y1 (0), 0))(E1 (z1 , 0) − S1 (x))
A(Y1 (0), 0)(x − A(z1 , 0))(z1 − E1 (z1 , 0))206

Preemptive repeat priority
z1 (A(z1 , z2 ) − A(Y1 (z2 ), z2 ))(S1 (x) − E1 (z1 , z2 ))A(Y1 (z2 ), z2 )(x − A(z1 , z2 ))(z1 − E1 (z1 , z2 ))(z2 − B(1, z2 ))(z2 (1 − A(0, z2 ))A(Y1 (z2 ), z2 )A(0, z2 )i×(A(Y1 (z2 ), z2 ) − A(0, z2 ))A(0, z2 )i − A(0, z2 )(A(Y1 (z2 ), z2 ) − 1))z2 (xi − A(0, z2 )i )− B(1, z2 ) +(A(Y1 (z2 ), z2 ) − A(0, z2 ))A(0, z2 )i−1 − (A(Y1 (z2 ), z2 ) − 1)#
(1 − A(0, z2 ))(A(Y1 (z2 ), z2 ) − 1)
×.
(x − A(0, z2 ))(z2 − B(1, z2 ))+Finally bringing everything together, we find (after some extensive mathematical manipulations)
D2 (z) =1 − ρT,ef f V2 (z)λ2
A1 (V1 (z))

(zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))(5.169)P∞(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z))) i=1 s2 (i)(V2,i (z) − 1)Y2,i (V2 (z))
A(Y1 (V2 (z)), V2 (z))(V2 (z) − Y2 (V2 (z)))(V2 (z) − 1)(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1)
×,(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))+

with Y2 (z) given by (5.99) andY2,i (z) ,(1 − A(0, z))A(Y1 (z), z)A(0, z)i,(A(Y1 (z), z) − A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)

(5.170)or thus
Y2 (z) =∞X

s2 (i)Y2,i (z).

(5.171)i=1Special case: geometric class-2 service times
In the special case of geometric service times of class-2, i.e.,(1 − β2 )z,
1 − β2 z(5.172)

1 − ρT z(A(V1 (z), V2 (z)) − A1 (V1 (z))),ρ2zA1 (V1 (z)) − A(V1 (z), V2 (z))(5.173)S2 (z) =expression (5.155) equals
D2 (z) =5.6 Packet delay207

with V2 (z) = S2 (zA1 (V1 (z))) in the case of PRD. This is the same expression
as found in chapter 4 for a preemptive resume priority queue with the same
arrival and service processes. As discussed earlier, a remaining class-2 service
time and (a new sample of) a complete class-2 service time have the same
geometric distribution in this case, and thus both PR and PRD queues arestochastically equal.
Special case: deterministic class-2 service times
In the special case of deterministic class-2 service times, i.e., S2 (z) = z µ2 ands2 (i) = µ2 , we find in the PRI case thatP∞

i=1 s2 (i)(V2,i (z) − 1)Y2,i (V2 (z))(V2 (z) − Y2 (V2 (z)))(V2 (z) − 1)=

Y2 (V2 (z)).
V2 (z) − Y2 (V2 (z))(5.174)Since, Y2 (z) and V2 (z) are - in this special case - equal for the PRD and PRI
case, D2 (z) also becomes equal for both priority queues. Indeed, as alreadymentioned, resampling or not resampling are identical when the class-2 service times are of constant length.
Special case: uncorrelated number of per-slot class-1 and class-2 arrivals
In this case A(z1 , z2 ) = A1 (z1 )A2 (z2 ). The second terms of the right-handsides of expressions (5.155) and (5.169) are equal to zero in this case and D 2 (z)equalsD2 (z) =1 − ρT,ef f V2 (z)(zA1 (V1 (z)) − 1) A2 (V2 (z)) − 1.
λ2
A1 (V1 (z))(V2 (z) − 1) z − A2 (V2 (z))(5.175)Note that in the case of PR, the same expression is obtained in case of uncorrelated per-slot class-1 and class-2 arrivals (see expression (4.143)). So, in thiscase, the distribution of class-2 sub-busy periods is still different for the threepriority queues (PR, PRD and PRI), but the relationship between the delay of
a class-2 packet and the sub-busy periods of class-2 packets is identical for thethree cases. In Fiems [2004], a similar relationship is found. In Fiems’ dissertation, the low-priority characteristics of priority queues are analyzed by using
queues with server interruptions. Indeed, from the point-of-view of class-2
packets the server is interrupted when class-1 packets are being served. In
Fiems [2004], these interruptions are incorporated in the service times - andare called effective service times - which are analyzed separately for the PR,
PRD and PRI queue respectively. Once the distributions of these effective service times are found however, the PR, PRD and PRI queues are analyzed ina uniform manner. The effective service times in that dissertation are thus

208

Preemptive repeat priority

closely related to the sub-busy periods initiated by class-2 packets defined inour dissertation.
Note that - as expressions (5.155) and (5.169) show - D2 (z) is much more complicated in the case the numbers of per-slot class-1 and class-2 arrivals arecorrelated.

5.6.3 Pgf D(z) of the delay of a random packet
We tag a random (class-1 or class-2) packet. Since, the probability that thetagged packet is of class-j is equal to λj /λT , we find for the pgf of the delayof a random packet
λ1
λ2
D1 (z) +D2 (z)(5.176)λT
λT
1 − ρ1 S1 (z)(z − 1) A1 (S1 (z)) − 1(5.177)=
λT z − A1 (S1 (z)) S1 (z) − 1
(zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))
1 − ρT,ef f V2 (z)λT
A1 (V1 (z))(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z)))C(z)+A(Y1 (V2 (z)), V2 (z))

(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1)
×,(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))D(z) =

withC(z) ,Y2 (V2 (z)),
V2 (z) − Y2 (V2 (z))(5.178)in case of PRD, andC(z) =

P∞

i=1 s2 (i)(V2,i (z) − 1)Y2,i (V2 (z))(V2 (z) − Y2 (V2 (z)))(V2 (z) − 1),

(5.179)in case of PRI.

5.6.4 The functions Yj (z)As in the previous chapters Yj (z) (j = 1, 2) is the pgf of the number of class-2
arrivals during a sub-busy period initiated by a class-j packet. For Y1 (z) thisis directly clear, since Y1 (z) is identically defined as in the previous chapters.
In case of Y2 (z) on the other hand, the possible repeats of the class-2 service
times have to be taken into account. Therefore we will in this section calculate

5.6 Packet delay209

the pgf of the number of class-2 arrivals during a sub-busy period initiated bya class-2 packet and prove that it equals Y2 (z).
When at the beginning of a slot a class-2 packet with service time s2 enters theserver, a new sub-busy period starts (with length denoted by v2 ). Denoting thenumber of class-2 packets that arrive during this sub-busy period by y2 anddenoting the number of class-j arrivals during the i-th slot of this sub-busy(i)period by aj (j = 1, 2), we get
y2 =

v2
X
(i)
a2 .

(5.180)i=1

We prove in the remainder of this subsection, that Y2 (z) is the pgf of y2 forboth the PRD and the PRI queue.
PRD
When a class-2 packet enters the server, two events may occur: the class-2
packet is either completely served in the first attempt, or the service of theclass-2 packet is interrupted by newly arriving class-1 packets. The service
time of the class-2 packet is not interrupted if no class-1 packets arrive during
all slots of the class-2 service time (with exception of its last slot). The possibleclass-1 packets that enter the system during that last service slot add class-1
sub-busy periods to the the (initial) class-2 sub-busy period and thus the class2 arrivals during those class-1 sub-busy period are part of y2 . Since Y1 (z) is
the pgf of the number of class-2 arrivals during a class-1 sub-busy period, thepartial pgf of y2 in case of no interruptions during the initial attempt of theclass-2 packet to get transmitted is given byE[z y2 {no interruption}] =S2 (A(0, z))
A(Y1 (z), z).
A(0, z)(5.181)

The first factor is the pgf of the number of class-2 arrivals during all slots of
the initial service time (excluding the last slot) and the second factor is the pgf
of the number of class-2 arrivals during the last service slot and during the
sub-busy periods added by the class-1 arrivals in this last slot.
The class-2 service is interrupted before completing its service time whenm ≥ 1 class-1 packets arrive during one of the service slots of the class-2
packet (excluding the last one). These class-1 packets all initiate a class-1 subbusy period. The class-2 packet is put back in the queue and has to wait in
the queue until all class-1 packets are served before having another service attempt. Since the service time in the new attempt is resampled, this again initiates a new class-2 sub-busy period and thus the class-2 arrivals during this210

Preemptive repeat priority

new sub-busy period - denoted by y2∗ - is equally distributed as y2 . This leads
to the following expression (in a similar way as reaching expression (5.144)):∗(A(Y1 (z), z) − A(0, z))(S2 (A(0, z)) − A(0, z))E[z y2 ]E[z {interruption}] =.
A(0, z)(A(0, z) − 1)
(5.182)y2

From expressions (5.181) and (5.182) and from the fact that y2 and y2∗ areequally distributed we indeed find expression (5.27) for the pgf of y2 .

PRI
In this case, we condition on the lengths of the service times. Thus
E[z y2 ] =

∞
X
i=1

s2 (i)E[z y2 |s2 = i],(5.183)

with s2 the service time of the initial class-2 packet. E[z y2 |s2 = i] equals Y2 (z)in case of PRD and of deterministic class-2 service times of i slots, i.e.,E[z y2 |s2 = i] =(1 − A(0, z))A(Y1 (z), z)A(0, z)i.
(A(Y1 (z), z) − A(0, z))A(0, z)i − A(0, z)(A(Y1 (z), z) − 1)
(5.184)

Substituting this in the previous expression, we indeed find expression (5.99).
When the number of class-1 and class-2 arrivals are independent stochastic(i)variables, it can be seen that v and the a2 are also independent variables.
From expression (5.180), it then follows that
Y2 (z) =V2 (A2 (z)).

(5.185)

Indeed, by substituting A(z1 , z2 ) by A1 (z1 )A2 (z2 ), expression (5.27) (expression (5.99)) and expression (5.145) (expression (5.158)) satisfy the previous relationship in case of PRD (PRI respectively), since Y1 (z) = V1 (A2 (z)) in thiscase.
Note that expression (5.185) is not generally valid when the number of class-1(i)and class-2 arrivals in a slot are correlated, since v2 and the a2 both depend(i)on the a1 (in general).

5.7 Waiting time

211

5.6.5 Calculation of moments
The mean class-1 packet delay is given byE[d1 ] =D10 (1)µ1µ1 Var[a1 ]λ1 Var[s1 ]
=
+
+
.
2
2λ1 (1 − ρ1 ) 2(1 − ρ1 )(5.186)(5.187)The mean class-2 packet delay is expressed as follows:E[d2 ] =D20 (1)=(5.188)µ21 Var[a1 ]µ2,ef fµ2,ef f Var[a2 ]µ1 Cov[a1 , a2 ]+++2
2(1 − ρT,ef f )(1 − ρ1 ) 2λ2 (1 − ρT,ef f ) λ2 (1 − ρT,ef f )(5.189)+(λ1 Var[s1 ] + λ2 Var[s2 ]ef f ) ρ1 (µ2,ef f − 1)+,
2(1 − ρT,ef f )(1 − ρ1 )
2(1 − ρ1 )with Var[s2 ]ef f given by expressions (5.115) or (5.116) for the PRD or PRI priority queue respectively.
Finally, the mean delay of a random packet yields
E[d] =D 0 (1)(5.190)ρT,ef fµ1 Var[aT ]µ1 λ2 (µ2,ef f − µ1 )Var[a1 ]=+−(5.191)2λT
2λT (1 − ρT,ef f )2λT (1 − ρT,ef f )(1 − ρ1 )(µ2,ef f − µ1 )Var[a2 ] λ1 Var[s1 ](λ1 (1 − ρ1 ) + λ2 (1 − µ2,ef f λ1 ))++2λT (1 − ρT,ef f )2λT (1 − ρT,ef f )(1 − ρ1 )2
λ2 Var[s2 ]ef f
ρ1 λ2 (µ2,ef f − 1)++.
2λT (1 − ρT,ef f )(1 − ρ1 )2λT (1 − ρ1 )It can be seen from the expressions in this subsection and subsection 5.3.5 that
Little’s law holds for the total system and for the class-1 and class-2 systems
separately.

5.7 Waiting time
The waiting time is defined as the number of slots a packet has to wait in
the queue before starting service. Thus specifically for the class-2 packets, thewaiting time - as defined in this dissertation - does not include the slots thepackets spend in the queue after the possible interruption(s).

212Preemptive repeat priority

We find the same expression for the pgf T1 (z) as in the previous chapter since
the class-1 waiting time is independent of whether service times of class-2
packets are resumed or repeated after an interruption. Therefore, we have
T1 (z) =1 − ρ1z−1
A1 (S1 (z)) − 1
λ1 z − A1 (S1 (z)) S1 (z) − 1(5.192)for the pgf of the class-1 waiting time.
The relation between the waiting time t2 and the delay d2 of a class-2 packet
is given by
a1,k+d2

d2 =t2 + ṽ2 −X(k+d )

v1,m 2 ,(5.193)m=1(k+d )

with ṽ2 the sub-busy period initiated by the class-2 packet and v1,m 2 thesub-busy periods added to the delay by the class-1 packets arriving during
the last service slot of the class-2 packet. The class-1 packets arriving during
the tagged class-2 packet’s last service slot are part of the sub-busy period
initiated by the class-2 packet but are not part of its delay (since the class-2
packet leaves the system at the end of that slot). Since the first term of theright-hand side of expression (5.193) is independent of the other two terms,
we find
T2 (z) =D2 (z)A1 (V1 (z)).
V2 (z)(5.194)

Substituting expressions (5.155) and (5.169) for the PRD and PRI priority
queue respectively gives1 − ρT,ef f (zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))
T2 (z) =(5.195)λ2(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z)))C(z)+A(Y1 (V2 (z)), V2 (z))

(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1)
×,(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))
with C(z) given by (5.178) or (5.179) for the PRD or PRI case respectively.
Finally, the pgf of the waiting time of a random packet is given by
λ1
λ2
T1 (z) +T2 (z)λT
λT
z−1
A1 (S1 (z)) − 1
1 − ρ1=
λT z − A1 (S1 (z)) S1 (z) − 1

T (z) =

(5.196)(5.197)

5.8 Numerical examples213


1 − ρT,ef f (zA1 (V1 (z)) − 1)(A(0, V2 (z)) − A1 (0))+λT
(V2 (z) − 1)(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(Y1 (V2 (z)), V2 (z)))C(z)+A(Y1 (V2 (z)), V2 (z))

(A1 (0)A(V1 (z), V2 (z)) − A1 (V1 (z))A(0, V2 (z)))(z − 1).
×(A1 (0)z − A(0, V2 (z)))(zA1 (V1 (z)) − A(V1 (z), V2 (z)))

5.8 Numerical examples
In this section, we discuss some numerical examples. Since the class-1 characteristics are the same as in the previous chapter, we solely focus on class-2
performance measures. More precisely, we focus on the comparison of the PRpriority scheduling discipline - discussed in the previous chapter - and the
PRD and PRI priority scheduling disciplines - analyzed in this chapter.

5.8.1 Input processes
We first briefly summarize the most important characteristics of the arrivaland service processes we consider in this section.
The arrival process
The pgf of the number of per-slot class-1 and class-2 arrivals is given by

N
λ1
λ2
A(z1 , z2 ) = 1 − (1 − z1 ) − (1 − z2 ).
NN

(5.198)

N is chosen 16 in all figures in this section.
The means of the total, class-1 and class-2 number of per-slot arrivals are given
by λT , λ1 and λ2 respectively.
The service process
In most figures of this section, the service times of both classes are assumed
deterministic
Sj (z) = z µj ,(5.199)j = 1, 2, with µj the class-j service time.
In order to study the influence of the variance of the class-2 service times on
the difference between the PRD and PRI case, we use class-2 service times

214

Preemptive repeat priority
(1)

(2)

which are equal to µ2 with probability p2 and equal to µ2 with probability
1 − p2 , i.e.,
(1)

(2)

(5.200)S2 (z) =p2 z µ2 + (1 − p2 )z µ2 .
(1)

(2)

In order to study the influence of Var[s2 ], p2 , µ2 and µ2 will be varied so that
µ2 is kept constant and Var[s2 ] is varied from 0 to infinity (in discrete steps).

5.8.2 Influence of load
System contents
In Figures 5.3 and 5.4, we show the mean value and the variance of the class2 system contents as functions of the total load, with the class-1 and class-2
service times deterministically equal to 20 and with α - α = ρ1 /ρT - equal to0.25, 0.5 and 0.75. In both figures, we have shown the curves for the PR and
the PRD and PRI priority queues. Because the service times are assumed to be
deterministic the latter two scheduling types are equivalent. We furthermore
show - on this figure and the other figures presented in this section - the vertical asymptotes of the curves in case of PRD and PRI, which equal the valuesof the arrival load for which the effective load equals 1. On the right of thisasymptotes, the priority repeat queues are instable. It is seen that the meanvalue and the variance of the class-2 system contents can be considerably larger in case of the PRI and PRD cases. This is because of the extra load that is
added because of the repeats of class-2 packets.
Figure 5.5 shows the mean class-2 system contents as a function of α, withdeterministic service times of 20 slots and with ρT equal to 0.7, 0.8 and 0.9.
We show the curves for the PR and the PRD (and PRI) priority queues. It canbe seen that the influence of repeats of class-2 service times is especially highwhen α equals mediocre values, i.e., lies around 0.5. Indeed, for low α, almost
no class-1 packets are arriving in the system and thus the interruptions ofclass-2 service times are scarce. For high α, the mean class-2 system contents
is low simply because the arrival rate of class-2 packets is low. Note that - inthe case of PRD (and PRI) and ρT = 0.9 - the system is instable for α between(approximately) 0.37 and 0.70. For values of α in this range ρT,ef f ≥ 1.

In Figure 5.6, the mean class-2 system contents in case of PRI and PRD are
depicted as functions of the total load for α = 0.25, 0.5 and 0.75 respectively.
The class-1 service times are deterministically equal to 20 slots and the class-2(1)(2)
service time process is given by expression (5.200) with µ2 = 10 and µ2 = 30
in such a way that µ2 = 20 (or thus p2 = 0.5 in this case). It is seen thatthe mean class-2 system contents may differ considerably for both priority
scheduling disciplines. It is also seen that the mean class-2 system contents in
the PRD priority queue is lower than the mean class-2 system contents in the5.8 Numerical examples

215

5
α=

4

0.25
0.5
0.75

3

2

1

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 5.3: Mean class-2 system contents versus the total arrival rate for the PR (lower
curves) and the PRD and PRI priority (upper curves) scheduling disciplines and withthe service times deterministic (µ1 = µ2 = 20)10
α = 0.25
0.5
0.75

8

6

4

2

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 5.4: Variance of the class-2 system contents versus the total arrival rate for thePR (lower curves) and the PRD and PRI priority (upper curves) scheduling disciplines
and with the service times deterministic (µ1 = µ2 = 20)

216

Preemptive repeat priority

10
ρT =

8

0.7
0.8
0.9

6

4

2

0
0

0.2

0.4

0.6

0.8

1

α
Figure 5.5: Mean class-2 system contents versus the fraction of class-1 load for the PR(lower curves) and the PRD and PRI priority (upper curves) scheduling disciplines andwith the service times deterministic (µ1 = µ2 = 20)

PRI priority queue. This is because a long class-2 service time (30 slots) whichis interrupted is resampled in the PRD priority queue and is resampled to 10
slots with a probability equal to 0.5 in the next service attempt. Obviously,
a service time of 10 slots can also be resampled to one with 30 slots wheninterrupted, but since the probability that a 30 slots service time is interrupted
is larger than that a 10 slots service time is interrupted, the resampling of theclass-2 service times decreases the (mean) class-2 system contents.
Packet delay
Figure 5.7 depicts the mean class-2 packet delays as functions of the total load,with deterministic service times, µ1 = 2, µ2 = 20 and with α equal to 0.25, 0.5
and 0.75. It is seen that the mean delay of the class-2 packets is significantly
higher in the case of the PRI (and PRD) priority scheduling. Again this is dueto the repeats of the class-2 packets.
Furthermore, Figure 5.8 shows the mean class-2 packet delay in case of the
PRD and PRI priority scheduling disciplines for α = 0.25, 0.5 and 0.75 respectively. The class-1 service times are deterministically equal to 2 slots and(1)
the class-2 service time process is given by expression (5.200) with µ2 = 10
(2)and µ2 = 30 in such a way that µ2 = 20. It is again seen that the PRD priority
queue performs better - in terms of mean class-2 delays - than the PRI priority
queue when the variance of the class-2 service times is larger than 0.

5.8 Numerical examples

217

5
α=

4

0.25
0.5
0.75

3

2

1

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 5.6: Mean class-2 system contents versus the total arrival rate for the PRD(lower curves) and the PRI priority (upper curves) scheduling disciplines and withthe class-2 service times variable (µ1 = µ2 = 20)

100

80

60

40
α = 0.25
0.5
0.75

20

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 5.7: Mean class-2 packet delays versus the total arrival rate for the PR (lower
curves) and the PRD and PRI priority (upper curves) scheduling disciplines and withthe service times deterministic (µ1 = 2, µ2 = 20)

218

Preemptive repeat priority

100

80

60

40
α=

20

0.25
0.5
0.75

0
0

0.2

0.4

0.6

0.8

1

ρT
Figure 5.8: Mean class-2 packet delays versus the total arrival rate for the PRD (lower
curves) and the PRI priority (upper curves) scheduling disciplines and with the class-2
service times variable (µ1 = 2, µ2 = 20)

5.8.3 Influence of service times
System contents
Figure 5.9 shows the mean class-2 system contents in case of PR and PRD (andPRI) as functions of the class-1 service time µ1 , when class-2 service times
equal 20 slots, the total arrival load is 0.75 and for α equal to 0.25, 0.5 and 0.75.
The service times of both classes are deterministic. In case of PR scheduling,
the mean system contents increase with increasing µ1 . In case of the PRI and
PRD scheduling, two counter-acting effects can be observed: firstly, longer
class-1 packets increase the build-up periods for class-2 packets in the queue(i.e., longer periods when the server is busy with class-1 packets), thereby increasing the mean class-2 packet delay. Secondly, longer class-1 packets (while
keeping the class-1 arrival load constant) means less class-1 packet arrivals,
thus decreasing the probability of a class-2 packet’s service getting preemptedand having to be repeated. This has a decreasing effect on the mean class-2
system contents. The latter effect is important for small class-1 service times.
Indeed, it can be seen on the figure that for low µ1 the mean class-2 systemcontents increase dramatically with decreasing µ1 . So, in the case of the repeat
scheduling disciplines there is an optimum for µ1 for which the mean class-2
system contents becomes minimal.
Figure 5.10 depicts the mean class-2 system contents in the PR and PRD (andPRI) priority queues as functions of the (mean) class-2 service times, for µ1 =

5.8 Numerical examples

219

5

4

3

2
α=

0.25
0.5
0.75

60

70

1

0
10

20

30

40

50
µ1

80

90

100

Figure 5.9: Mean class-2 system contents versus the class-1 service time for both thePR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines
and with the service times deterministic (ρT = 0.75, µ2 = 20)

20, ρT = 0.75 and the different values of α. We see that for low µ2 , the meanclass-2 system contents in both priority queues are high. This is due to the factthat λ2 is relatively large for low µ2 (in order to keep ρ2 constant) and thus
many class-2 packets arrive to - and have to be stored in - the system. For
increasing µ2 , the mean system contents in case of PR decreases, while in caseof PRI (and PRD) the mean system contents first decreases and then increases
again. The latter is due to the fact that service of longer class-2 packets havea higher probability of being preempted by arriving class-1 packets. For aparticular µ2 these numbers of interruptions and repeats are too large to still
have a stable system.
Figure 5.11 shows the mean class-2 system contents in the PR, PRD and PRIpriority queues as functions of the variance of the class-2 service times. The
total load is fixed at 0.75, the class-1 service times are deterministically equal
to 20 slots and α = 0.25. The class-2 service time process is characterized by(1)(2)
expression (5.200), with µ2 equal to 1, µ2 varying and p2 also varying but
such that µ2 is kept constant (equal to 20 slots). This figure clearly shows thatthe mean class-2 system contents can be very different in the PRD and PRIpriority queues respectively. Indeed, when the variance is large, long service
times have a high probability of being resampled in service times of 1 slot in
the PRD case, while this is not the case in a PRI priority queue. Also noticethat the mean class-2 system contents is lower in the PRD case than in the PRcase for high variances. Indeed, since long service times can be resampled to220

Preemptive repeat priority

5

4

α=

0.25
0.5
0.75

70

80

3

2

1

0
10

20

30

40

50
µ2

60

90

100

Figure 5.10: Mean class-2 system contents versus the class-2 service time for both thePR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines
and with the service times deterministic (ρT = 0.75, µ1 = 20)

service times of 1 slot, the resampled version of the complete service time canbe smaller than the residual part of the original service time.
Packet delay
Similar conclusions can be drawn for the mean class-2 packet delay from Figures 5.12 and 5.13. In Figure 5.12 the same input parameters are chosen as in
Figure 5.9, while the input parameters in Figure 5.13 are identical to the onesin Figure 5.11. It is seen that the PRI and PRD scheduling types have an optimum µ1 (for which the mean class-2 packet delay is minimal) and that themean delay differs considerably in the PRD and PRI priority queues respectively if the variance of the class-2 service times is large.

5.9 Concluding remarks
In this chapter, we analyzed two types of preemptive repeat priority queues,
namely a PRD and PRI priority queue. In both cases, we defined supplementary variables - besides the system contents of both priority classes - in order
to construct a Markov-chain. In the PRD case, defining the remaining service
time of the packet in service was enough to construct a Markov-chain. In the
PRI case, we needed to keep track of the complete service time of the oldest

5.9 Concluding remarks

221

8
PR
PRD
PRI

7
6
5
4
3
2
1
0
0

400

800
1200
Var[s2]

1600

2000

Figure 5.11: Mean class-2 system contents versus the variance of the class-2 service
times for the PR, PRD and PRI case (ρT = 0.75, µ1 = µ2 = 20)400
α = 0.25
0.5
0.75

350
300
250
200
150
100
50
0
10

20

30

40

50
µ1

60

70

80

90 100Figure 5.12: Mean class-2 packet delays versus the class-1 service time for both thePR (lower curves) and the PRI and PRD priority (upper curves) scheduling disciplines
and with the service times deterministic (ρT = 0.75, µ2 = 20)

222

Preemptive repeat priority

400
350
PR
PRD
PRI

300
250
200
150
100
50
0
0

400

800
1200
Var[s2]

1600

2000

Figure 5.13: Mean value of class-2 packet delays versus the variance of the class-2
service times for the PR, PRD and PRI case (ρT = 0.75, µ1 = µ2 = 20)class-2 packet as well. We thus had to calculate a three-dimensional pgf in
the PRD case and a four-dimensional pgf in the PRI case. These pgf’s were
the starting points of all calculations of the performance measures of thesepriority queues.
Note that an infinite sum is part of the solution in the class-2 pgf’s (systemcontents, packet delay, . . . ) of the PRI case. This infinite sum does not give
problems when evaluating the means and variances of these variables, but
the calculation of higher moments could turn out to be of a more complex
nature in practice - although it is feasible in theory. Furthermore, the infinite
sum prohibits us - at this time? - to find approximate tail probabilities of theclass-2 variables.
We compared the performance measures of a PR priority queue - analyzed in
the previous chapter - of a PRD priority queue and of a PRI priority queue.
Main conclusions are firstly the fact that repeats of class-2 service times in the
PRI and PRD priority queues may considerably deteriorate the performanceof these systems, especially when the arrival rate of class-1 packets is large.
Secondly, the results of the PRD priority queue and the PRI priority queue are
only similar when the variance of the class-2 service times is sufficiently small.
Both scheduling disciplines are only identical when this variance is zero.

Chapter 6

Conclusions
In this last chapter, we summarize the main results of this dissertation andbriefly describe some possible extensions and related topics.

6.1 Summary
In this dissertation, we comprehensively described the analysis of discrete-timequeues with different types of priority scheduling disciplines. We assumed
two priority classes throughout the dissertation. The arrival process was assumed to be i.i.d. from slot-to-slot, but the number of per-slot arrivals of bothpriority classes may be correlated, i.e., so-called structured input. We started
by analyzing a priority queue with service times of one slot and extended thisto general service times for both classes. The distributions of the service times
could furthermore be different for both classes.
In chapter 2, we analyzed a priority queue with single-slot service times. Thisis a fairly easy model and analysis which was mainly used to familiarize thereader with pgf’s, the way in which the performance measures of interest are
extracted from the obtained pgf’s and the specific difficulties introduced by
the priority scheduling discipline. Furthermore, this type of service times isuseful in practice, e.g. in telecommunication networks where the packets floating through the network are all of the same size (e.g. in ATM).
In chapters 3, 4 and 5, we extended this inital model to a model with generally distributed service times. In case of general service times, 3 main priority
scheduling disciplines are distinguished in the literature and analyzed in thisdissertation. The first one is the non-preemptive priority scheduling discipline.
In this discipline, service times are never interrupted, i.e., once a unit starts
service it stays in the server until its service is completed. This type of priority
queue was analyzed in chapter 3. The second type is the preemptive resume224

Conclusions

priority scheduling discipline, studied in chapter 4. In this discipline, a new
arrival of a unit of higher priority than the one served during that slot interrupts this latter unit’s service at the end of the slot. When all higher priority
units have left the system the interrupted unit resumes its service, i.e., the notyet-served part of this unit has to be served after the interruption. The lastscheduling type is the preemptive repeat priority scheduling discipline, which
we analyzed in section 5. This type of priority scheduling differs from thepreemptive resume priority in the fact that a unit whose service was interrupted by higher priority arrivals repeats its service from the start. Thus the unit’s
service time has to be repeated completely.
Throughout the different queueing models, we used a fairly general analysis
method. Firstly, a Markovian description of the system was found. This
Markovian description exists out of a number of stochastic variables. We adopted the probability generating functions (pgf’s) technique in order to analyze these priority queues. The joint pgf of the steady-state versions of therandom variables defined in the Markovian description is calculated. From
this joint pgf all further pgf’s and performance measures of interest are calculated (in steady-state). These pgf’s are: the joint pgf and the marginal pgf’s of
the number of units of both classes in the system at the beginning of a random
slot, the marginal pgf of the total number of units in the system, the joint pgf
of the number of units of both classes in the queue (i.e., without the unit inservice), the joint pgf of the unfinished work of both classes, the pgf’s of thedelays of units of both classes, the pgf of the delay of a random unit and finally the pgf’s of the waiting times of units of both classes. From these pgf’s, it
was shown how moments and approximate tail probabilities of the stochastic
variables of interest can be calculated.

6.2 Possible extensions and related topics
As with all research, this dissertation - although described as a self-containing
unit - has many possible extensions. To conclude this dissertation, we describe some of these extensions and other related topics and refer the interested reader to related work.
The most direct extension is the extension of the input model of the priority queue. Firstly, we have only described the analysis of a two-class priority
queue in this dissertation. This could be extended to more classes (and evena general number of classes). For example in the case of the non-preemptive
priority scheduling, we have already analyzed a three-class priority queue
in [Walraevens et al. 2003b] and a priority queue with a general number ofclasses in [Walraevens et al. 2004c]. Secondly, the arrival process could be extended to a correlated arrival process, i.e., in which the numbers of arrivals
during a slot depend on the numbers of arrivals of previous slots. The easiest
extension is a model in which the number of arrivals during one slot only depends on the number of arrivals during the previous slot, but other extensions

6.2 Possible extensions and related topics

225

are also possible (e.g. the use of so-called ’train arrivals’, see e.g. [Wittevrongel 1998] for a thorough discussion and analysis of single-class discrete-time
FIFO buffers with this type of arrival process). Finally, the service time process
could be extended in a couple of ways. In this dissertation, we have only studied single-server queueing models. This could be extended to multi-server
models. This is e.g. already done by Gao et al. [2004] in the case of a preemptive resume priority scheduling discipline and geometric service times.
Furthermore, service interruptions or vacations could also be incorporated in
the queueing model. Examples of studies of priority queues with vacations
are studied by Blondia [1987, 1989], Sandhu and Posner [1989], Katsaros andLangaris [1995] and Langaris and Katsaros [1997].
In this dissertation, we studied the system characteristics and mainly focussed
on the system contents and delay. Another interesting topic is studying theoutput process of priority queues. The study of this output process is importantwhen studying cascades of queues, since the output process of one queue is(related to) the input process of another. For example in [Stanford 1991, 1997,
He and Stanford 1999], the departure process of priority queues is studied in
more detail. In our model, we could e.g. extend the supplementary variable
technique in order to keep track of the length of the ongoing busy period (of acertain class).
We have analyzed the steady-state performance characteristics in this dissertation. Studying the transient behavior could be interesting as well though. This
could be done by combining our methods and the method used in Bruneel[1991], where the transient behavior of a single-class discrete-time queue withservice times of one slot was analyzed.
Another extension is combining the different priority scheduling disciplines
analyzed in this dissertation, i.e., combining the NP, the PR, the PRD and/or
the PRI priority scheduling disciplines. This could e.g. be done by splitting
the service times of the low-priority units in several parts and using a different
priority scheduling discipline for each part. Hokstad [1978], Sandhu and Posner [1989], Cho and Un [1993], Paterok and Ettl [1994] and Machihara [1995]
propose and analyze combinations of NP and PR priority scheduling disciplines. Queues with a priority scheduling discipline which is some kind of
mixture between the NP and the PRI or PRD cases are analyzed by Adiri andDomb [1984], Cho and Un [1993]. Yoon and Un [1991], Drekic and Stanford[2001], Drekic and Grassmann [2002] and Drekic [2003] investigate combinations between PR and PRI priority scheduling disciplines. Finally, Hong and
Takagi [1997] study a queue with a priority scheduling which is a combinationof NP, PR and PRI.
In the remainder of this section, we will briefly touch upon analyses of somerelated (priority) queues. Priority queueing networks are studied by Peterson[1991], Chen and Zhang [1998, 2000], Afèche [2003] and Kouvatsos and Awan
[2003]. Tijms [1974] investigates a control policy for a priority queue with removable servers. This policy turns the server off when the system is empty

226

Conclusions

and turns it back on when a given linear combination of the numbers of unitsof all priority classes in the system exceeds a given value. Schaack and Larson [1986] study a multi-server non-preemptive cut-off priority queue. In thistype of priority queues, the system deliberately queues arriving lower priority units whenever the number of busy servers exceeds a given prioritydependent number, instead of serving them directly. This is done to keepsome of the servers idle to be able to serve arriving higher priority units immediately. A priority queue with set-up times is studied by Takagi [1990]. In thissystem, a set-up time is required before initiating service from the system’s
idle state. Sidi [1987, 1988] analyzes a discrete-time priority queue with partial interference. More precisely, a number of traffic classes are served according to a priority scheduling discipline, while one class uses a random access
scheme (i.e., a cell of this class (if any) is tried to be served with an assigned
probability in [Sidi 1987], while there is some kind of correlation between theprobabilty of attempting to be served in consecutive slots in [Sidi 1988]). If
a cell of one of the priority classes and a cell of this latter class are attempted to be served simultaneously, there is no service at all. Choi et al. [1998b]
analyze a priority queue with random order of service within each priority
class, while van der Mei et al. [2003] study a priority processor sharing queue.
Antal and Bı́ró [2000] study a priority system with one high-priority source
and a number of low-priority sources. The time-axis is divided into frames(which consist of a fixed number of slots). High-priority cells can be transmitted in every slot, while the low-priority sources can use only one slot in every
frame (evidently, a cell can only be transmitted in that slot if no high-priority
cells are present). Lee and Choi [2001] study a queueing system with a priority scheduling discipline and a push-out scheme. Leemans [2001] analyzes a
two-server two-class priority queue. The priority order is different for the twoservers: in the first server one of the classes has priority over the other, while
it is the other way around in the other server. Choi and Park [1990], Falin et al.
[1993], Takahashi et al. [1999], Artalejo et al. [2001] and Gómez-Corral [2002]
study retrial queues with an NP priority scheduling discipline. In [Ozawa
1992], an NP priority queue with gates is analyzed. Chao [1994] analyzes apriority tandem queue. Mandjes [2003] investigates pricing strategies in networks with priority. Finally, Maertens et al. [2004] analyze a priority queuewith priority jumps. In this model, units can jump to a higher priority queue
while waiting.

Appendix A

The function Y1(z)In this appendix, we describe more fundamental details on the function Y1 (z)(or the function Y (z) of chapter 2) which is an important function in this dissertation. First, we describe Rouché’s theorem and its use in finding the solution z1 = Y1 (z2 ) of z1 − S1 (A(z1 , z2 )) = 0, for |z1 | < 1 and |z2 | < 1. Furthermore, we explain the behavior of Y1 (z) on the real axis (outside the unit disk).
For ease of notation, define E1 (z1 , z2 ) = S1 (A(z1 , z2 )), with A(z1 , z2 ) the twodimensional pgf of the numbers of class-1 and class-2 arrivals in a random
slot and S1 (z) the pgf of the service time of a random class-1 unit. Further(1)more, we define E1 (z1 , z2 ) as the first derivative of E1 (z1 , z2 ) in z1 . Note that
E1 (z1 , z2 ) is also a two-dimensional pgf, more precisely, it is the joint pgf ofthe numbers of class-1 and class-2 arrivals during the service time of a class-1
packet.

A.1 Rouché’s theorem
Theorem A.1 Let f (z) and g(z) be two analytic functions inside and on a closed
contour C in the complex z-plane such that |g(z)| < |f (z)| for all z on C. Then thefunctions f (z) and f (z) + g(z) have the same number of zeros inside C.

A.2 Determination of Y1 (z) for |z| < 1
We use Rouché’s theorem to prove that for each z2 (with |z2 | < 1), there exists
a unique solution of z1 − E1 (z1 , z2 ) = 0 for z1 in the unit disk.

First, we look for a contour C to apply Rouché’s theorem. Therefore, we firstcompare the functions fˆ(|z1 |) , |z1 | and ĝ(|z1 |) , E1 (|z1 |, |z2 |), with z2 a fixed
point inside the unit disk and |z1 | in the range [0, 1]. Firstly, it is easily seen that

The function Y1 (z)228fˆ(|z1 |) and ĝ(|z1 |) are continuously increasing functions in [0, 1[. Furthermore,sinceĝ(0) =E1 (0, |z2 |)≥E1 (0, 0)>0=fˆ(0),

(A.1)
(A.2)
(A.3)

ĝ(1) =E1 (1, |z2 |)<1=fˆ(1),

(A.5)
(A.6)

(A.4)

and since(A.7)

fˆ(|z1 |) − ĝ(|z1 |) has exactly one zero z∗ in [0, 1[. In the following we will define
the contour C as the circle with radius R with R a randomly chosen real number in the interval ]z∗ , 1[. Note that it directly follows from the choice of R
thatĝ(R) <fˆ(R).

(A.8)

Now, definef (z1 ) ,z1(A.9)

g(z1 ) ,E1 (z1 , z2 ),(A.10)

with z2 still a fixed point inside the unit disk. f (z1 ) is analytic in the wholecomplex plane and since E1 (z1 , z2 ) is a pgf, g(z1 ) is analytic inside the unit
circle. Both f (z1 ) and g(z1 ) are thus analytic inside and on the contour C - acircle inside the unit disk. Since|f (z1 )| = fˆ(R),(A.11)

and - keeping in mind that |z2 | < 1 |g(z1 )| = |E1 (z1 , z2 )|≤ E1 (|z1 |, |z2 |)= ĝ(R),(A.12)(A.13)(A.14)

on the contour C (|z1 | = R), it follows from (A.8) that |g(z1 )| < |f (z1 )| on C. It
then follows from Rouché’s theorem that z1 − E1 (z1 , z2 ) has the same numberof zeros as z1 inside the contour C. The latter has one solution - namely z1 = 0

A.3 Outside the unit disk229

- and thus z1 − E1 (z1 , z2 ) has a unique solution for z1 inside C. Since thecontour C can be chosen arbitrarily close to the unit disk - inequality (A.8) is
valid for every R ∈]z∗ , 1[ - z1 − E1 (z1 , z2 ) has one solution inside the unit disk
which is denoted by Y1 (z2 ) (for each z2 , with |z2 | < 1).

Note that another possible choice of C is the unit circle. However, since pgf’s
are not necessarily analytic on the unit circle this would have restricted the
choice of the pgf E1 (z1 , z2 ) in order for Rouché’s theorem to work, in contrast
with the proof given in this appendix, which is valid for every pgf E1 (z1 , z2 ).
The next question is whether Y1 (z) itself is an analytic function inside the unit
circle (i.e., for |z| < 1)? Since Y1 (z) is a pgf - in the dissertation a stochastic
variable is found with a pgf equal to Y1 (z) - Y1 (z) is indeed an analytic function inside the unit circle. Furthermore we have Y1 (1) = 1.

A.3 Outside the unit disk
To calculate the (tail) probabilities of the stochastic variable corresponding
with the pgf Y1 (z), the behavior of Y1 (z) outside the unite disk is important,and more precisely the singularities of this function. To calculate the tail probabilities only the dominant singularity, lying on the positive real axis, is important. Therefore, we limit the function Y1 (z) for values of z on the positive
real axis in the remainder. First, we give a useful theorem, the implicit function
theorem. There are many versions of this theorem, depending on the domains
and types of functions one is dealing with. The following version is suitablefor our case.

A.3.1 The implicit function theorem
Theorem A.2 Given a real function F (z1 , z2 ), which is continuously differen(0)(0)(0) (0)
tiable in the neighborhood of z1 = z1 , z2 = z2 . If F (z1 , z2 ) = 0 and(0)(0)
F (1) (z1 , z2 ) 6= 0 then there exists a unique continuously differentiable func(0)(0)(0)
tion f (z2 ) in the neighborhood of z2 with z1 = f (z2 ) and F (f (z2 ), z2 ) = 0.

A.3.2 Y1 (z) on the positive real axis
We have already proved that Y1 (z) is continuously differentiable in the interval [0, 1[. Can we now extend the function Y1 (z) for higher z? Starting in the
point z = 1, Y1 (z) = 1, we use the implicit function theorem to investigate inwhat region Y1 (z) is continuously differentiable. Denoting F (z1 , z2 ) = z1 −E1 (z1 , z2 ), it can be seen that the implicit function theorem will work as longas F (z1 , z2 ) is continuously differentiable and F (1) (Y1 (z), z) 6= 0. F (z1 , z2 )The function Y1 (z)230

is continuously differentiable iff E1 (z1 , z2 ) is continuously differentiable andF (1) (Y1 (z), z) 6= 0 iff(A.15)

E (1) (Y1 (z), z) 6= 1.

We start at z = 1. We assume that E1 (z1 , z2 ) is continuously differentiable in(1, 1). Furthermore, condition (A.15) is true, since E (1) (Y1 (1), 1) = ρ1 < 1.
We furthermore assume that E (1) (Y1 (z), z) is a strictly increasing function in z
inside the region of convergence of E(Y (z), z) (which is true for most ’normal’arrival and service processes). So, by increasing z, E (1) (Y1 (z), z) will get closer
to 1. As long as it does not reach 1, Y1 (z) can be defined for that particular z.
For a specific z however, denoted by zB , E (1) (Y1 (z), z) becomes 1, and theimplicit function theorem can no longer be used. So Y1 (z) can be defined in
the interval [0, zB [.
The last question remaining is what happens for z = zB ? Note that it cannot be proved through the implicit function theorem that Y1 (zB ) exists (or,in other words, stays finite). We can however illustrate this by noting thatz1 − E1 (z1 , z2 ) has 2 solutions for z2 ∈ [0, zB [. This can for instance be seenin Figure A.1. In this figure, we have shown z1 , and E1 (z1 , z2 ) for four z2 ’s,(i)denoted by z2 (i = 1, . . . , 4), with
(1)

z2

(2)

< z2

(3)

< z2

(4)

= zB < z2 ,(A.16)

with E1 (z1 , z2 ) a two-dimensional pgf (this is just an example; the specific expression of the pgf E1 (z1 , z2 ) is not important). We see that z1 − E1 (z1 , z2 ) has
two solutions if z2 < zB . The smallest solution is Y1 (z2 ) and we denote theother solution by Y1∗ (z2 ). Notice that for z2 < zB this second solution always
exists, since E (1) (Y1 (z2 ), z2 ) < 1 and thus E1 (z1 , z2 ) and z1 will intersect inthis point. Since we assumed throughout this dissertation that E1 (z1 , z2 ) andE (1) (z1 , z2 ) go to infinity for z1 equal to the convergence radius of E1 (z1 , z2 )(for the specific z2 ), E1 (z1 , z2 ) and z1 intersect once more, resulting in thesecond solution Y1∗ (z2 ). It can be proven that Y1∗ (z) is a continuously differentiable function for z < zB in a similar way as this is proven for Y1 (z). Since
E1 (z1 , z2 ) is a strictly increasing function in z2 it can be seen that Y1 (z2 ) is astrictly increasing function while Y1∗ (z2 ) is a strictly decreasing function (see
(1)
(2)
(1)
(2)
Figure A.1: Y1 (z2 ) < Y1 (z2 ) and Y1∗ (z2 ) > Y1∗ (z2 )). For z2 going to zB ,∗Y1 (z2 ) and Y1 (z2 ) grow nearer to each-other, resulting in Y1 (zB ) = Y1∗ (zB ). It
can thus also be seen that Y1 (zB ) will always be finite, since for all z∗ < zB ,Y1 (z∗ ) < Y1 (zB ) = Y1∗ (zB ) < Y1∗ (z∗ ). For z2 > zB , E1 (z1 , z2 ) > z1 for all z1
resulting in the fact that z1 − E1 (z1 , z2 ) = 0 has no solution for z2 > zB (see(4)
the curve of E1 (z1 , z2 ) in Figure A.1). For the same input functions as usedin Figure A.1, Y1 (z) and Y1∗ (z) are shown in Figure A.2.
So, summarizing, z1 − E1 (z1 , z2 ) = 0 has 2 solutions for z1 when z2 ∈ [0, zB [,which coincide in zB . For z2 > zB , z1 − E1 (z1 , z2 ) = 0 has no solution. Y1 (z)A.3 Outside the unit disk

231

18
z1
(1)

16

E1(z1,z2 )(2)
E1(z1,z2 )E1(z1,z2(3))
E1(z1,z2(4))

14
12
10
8
6
4
2
0
0

2

4

6

8

10

12

14

16

18

z1
Figure A.1: z1 and E1 (z1 , z2 ) for different z2

20

15

Y1(z)
Y1*(z)

10

5

0
0

0.5

1

1.5

2
z

2.5

Figure A.2: Y1 (z) and Y1∗ (z)

3

3.5

4

232

The function Y1 (z)thus has a branch point zB on the real positive axis and a branch cut which
is chosen on the positive real axis (starting in this branch point). This branch
point is furthermore the dominant singularity of Y1 (z).

Bibliography
Abate, J. and Whitt, W. (1997). Asymptotics for M/G/1 low-priority waitingtime tail probabilities. Queueing Systems, 25(1-4):173–233.
Adiri, I. and Domb, I. (1984). Mixing of non-preemptive and preemptive repeat priority disciplines. European Journal of Operational Research, 18(1):86–97.
Afèche, P. (2003). Delay performance in stochastic processing networks withpriority service. Operation Research Letters, 31(5):390–400.
Altinkemer, K., Bose, I., and Pal, R. (1998). Average waiting time of customers
in an M/D/k queue with nonpreemptive priorities. Computers and Operations Research, 25(4):317–328.
Antal, C. and Bı́ró, J. (2000). Analysis of a time division multiplexing methodwith priorities, chapter 11, pages 165–175. System Performance Evaluation:
methodologies and Applications. CRC Press.
Artalejo, J., Dudin, A., and Klimenok, V. (2001). Stationary analysis of a retrial queue with preemptive repeated attempts. Operation Research Letters,
28(4):173–180.
Bender, E. (1974).
16(4):485–515.

Asymptotic methods in enumeration.

SIAM Review,

Berger, A. and Whitt, W. (2000). Workload bounds in fluid models with priorities. Performance Evaluation, 41(4):249–267.
Blondia, C. (1987). An M/G/1 finite capacity queue with vacations and priorities. In Proceedings of the 12th IFIP WG 7.3 International Symposium on Computer Performance Modelling, Measurement and Evaluation (Performance ’87),
pages 305–325, Brussels.
Blondia, C. (1989). A finite capacity multi-queueing system with priorities andwith repeated server vacations. Queueing Systems, 5(4):313–330.

234

BIBLIOGRAPHY

Bose, I. and Pal, R. (2002). Average waiting time of customers in a priority M/D/k queue with finite buffers. Computers and Operations Research,
29(4):327–339.
Boxma, O., Cohen, J., and Deng, Q. (1999). Heavy-traffic analysis of the
M/G/1 queue with priority classes. In Proceedings of ITC 16, pages 1157–
1167, Edinburgh.
Brandwajn, A. (1982). A finite difference equations approach to a priority
queue. Operations Research, 30(1):74–81.
Bruneel, H. (1983). Analysis of buffer behaviour for an integrated voice-datasystem. Electronics Letters, 19(2):72–74.
Bruneel, H. (1991). Exact derivation of transient behavior for buffers with random output interruptions. Computers Networks and ISDN Systems, 22:277–
285.
Bruneel, H. (1993). Performance of discrete-time queueing systems. Computers
and Operations Research, 20(3):303–320.
Bruneel, H. and Kim, B. (1993). Discrete-time models for communication systems
including ATM. Kluwer Academic Publisher, Boston.
Bruneel, H., Steyaert, B., Desmet, E., and Petit, G. (1994). Analytic derivationof tail probabilities for queue lengths and waiting times in ATM multiserver
queues. European Journal of Operational Research, 76(3):563–572.
Buzen, J. and Bondi, A. (1983). The response times of priority classes underpreemptive resume in M/M/m queues. Operations Research, 31(3):456–465.
Chang, J. and Harn, Y. (1992). A discrete-time priority queue with two-classcustomers and bulk services. Queueing Systems, 10:185–212.
Chao, C. (1994). A priority tandem queue with no intermediate buffer. Journalof the Operational Research Societys, 45(3):321–329.
Chaudhry, M. and Templeton, J. (1983). A first course in bulk queues. John Wiley& Sons.
Chen, H. and Zhang, H. (1998). Diffusion approximation for Kumar-Seidman
network under a priority service discipline. Operations Research Letters, 23(35):171–181.
Chen, H. and Zhang, H. (2000). Stability of multiclass queueing networks
under priority service disiplines. Operations Research, 48(1):26–37.
Chen, J. and Guérin, R. (1991). Performance study of an input queueing
packet switch with two priority classes. IEEE Transactions on Communications, 39(1):117–126.

BIBLIOGRAPHY

235

Cho, Y. and Un, C. (1993). Analysis of the M/G/1 queue under a combinedpreemptive/nonpreemptive priority discipline. IEEE Transactions on Communications, 41(1):132–141.
Choi, B., Choi, D., Lee, Y., and Sung, D. (1998a). Priority queueing system with fixed-length packet-train arrivals. IEE Proceedings-Communications,
145(5):331–336.
Choi, B., Lee, Y., and Choi, D. (1998b). GeoX1 ,GeoX2 /D/c HOL priority
queueing system with random order selction within each priority class.
Probability in the Engineering and Informational Sciences, 12(1):125–139.
Choi, B. and Park, K. (1990). The M/G/1 retrial queue with Bernoulli schedule. Queueing Systems, 7(2):219–228.
Choi, J., Lee, K., and Un, C. (1997). Performance comparison of nonpreemptive and preemptive priority queueing strategies in ATM packet switch with
input buffers. Performance Evaluation, 29(3):177–194.
Cidon, I. and Sidi, M. (1990). Recursive computation of steady-state probabilities in priority queues. Operations Reasearch Letters, 9(4):249–256.
Cobham, A. (1954). Priority assignment in waiting line problems. Journal of
the American Operations Research Society, 2(1):70–76.
Cox, D. (1955). The analysis of non-Markovian stochastic processes by the
inclusion of supplementary variables. Proceedings of the Cambridge Phylosophical Society, 51:433–441.
De Prycker, M. (1991). Asynchronous transfer mode: solution for broadband ISDN.
Ellis Horwood Limited, New York.
Drekic, S. (2003). A preemptive resume queue with an expiry time for retained
service. Performance Evaluation, 54(1):59–74.
Drekic, S. and Grassmann, W. (2002). An eigenvalue approach to analyzing afinite source priority queueing model. Annals of Operations Research, 112(14):139–152.
Drekic, S. and Stafford, J. (2002). Symbolic computation of moments in priority
queues. INFORMS Journal on Computing, 14(3):261–277.
Drekic, S. and Stanford, D. (2001). Reducing delay in preemptive repeat priority queues. Operations Research, 49(1):145–156.
Drmota, M. (1997). Systems of functional equations. Random Structures &Algorithms, 10(1-2):103–124.
Falin, G., Artalejo, J., and Martin, M. (1993). On the single-server retrial queuewith priority customers. Queueing Systems, 14(3-4):439–455.

236

BIBLIOGRAPHY

Fiems, D. (2004). Analysis of discrete-time queueing systems with vacations. PhD
thesis, Ghent University.
Fiems, D. and Bruneel, H. (2002). A note on the discretization of Little’s result.
Operations Research Letters, 30(1):17–18.
Fiems, D., Steyaert, B., and Bruneel, H. (2004). Discrete-time queues withgenerally distributed service times and renewal-type server interruptions.
Performance Evaluation, 55(3-4):277–298.
Flajolet, P. and Odlyzko, A. (1990). Singularity analysis of generating functions. SIAM Journal on discrete mathematics, 3(2):216–240.
Gail, H., Hantler, S., and Taylor, B. (1992). On a preemptive Markovian queuewith multiple servers and two priority classes. Mathematics of Operations
Research, 17(2):365–391.
Gao, P., Wittevrongel, S., and Bruneel, H. (2004). Analysis of buffer behavior
for a discrete-time multiserver preemptive priority queue with geometricservice times. In Abstracts of the Twelfth INFORMS/APS Conference, Beijing.
Goldberg, H. (1981). Computation of state probabilities for M/M/s priority queues with customer classes having different service rates. INFOR,
19(1):48–58.
Gómez-Corral, A. (2002). Analysis of a single-server retrial queue with quasirandom input and nonpreemptive priority. Computers and Mathematics with
Applications, 43(6-7):767–782.
Hadorn, D. (2000). Setting priorities for waiting lists: defining our terms. Canadian Medical Association Journal, 163(7):857–860.
Hashida, O. and Takahashi, Y. (1991). A discrete-time priority queue withswitched batch bernoulli process inputs and constant service time. In Proceedings of ITC 13, pages 521–526, Copenhagen.
He, Q. and Stanford, D. (1999). Distributions of the interdeparture times in fcfs
and nonpreemptive priority MMAP[2]/G[2]/1 queues. Performance Evaluation, 38(2):85–103.
Hokstad, P. (1978). A M/G/1 priority queue. INFOR, 16(2):158–170.
Hong, S. and Takagi, H. (1997). Analysis of transmission delay for astructured-priority packet-switching system. Computer Networks and ISDN
Systems, 29(6):701–715.
Iida, K., Takine, T., Sunahara, H., and Oie, Y. (2001). Delay analysis for cbr
traffic under static-priority scheduling. IEEE/ACM Transactions on Networking, 9(2):117–185.

BIBLIOGRAPHY

237

Isotupa, K. and Stanford, D. (2002). An infinite-phase quasi-birth-and-deathmodel for the non-preemptive priority M/PH/1 queue. Stochastic Models,18(3):387–424.
Kao, E. and Narayanan, K. (1991). Modeling a multiprocessor system withpreemptive priorities. Management Science, 37(2):185–197.
Kao, E. and Wilson, S. (1999). Analysis of nonpreemptive priority queues withmultiple servers and two priority classes. European Journal of Operational
Research, 118(1):181–193.
Karam, M. and Tobagi, F. (2002). Analysis of delay and delay jitter of voicetraffic in the internet. Computer Networks, 40(6):711–726.
Katsaros, A. and Langaris, C. (1995). An N-class structured priority queuewith vacations. Communications in Statistics - Stochastic Models, 11(2):235–
248.
Khamisy, A. and Sidi, M. (1992). Discrete-time priority queues with two-statemarkov modulated arrivals. Stochastic Models, 8(2):337–357.
Kleinrock, L. (1976). Queueing systems volume II: Computer applications. John
Wiley & Sons.
Kouvatsos, D. and Awan, I. (2003). Entropy maximisation and open queueing
networks with priorities and blocking. Performance Evaluation, 51(2-4):191–
227.
Kouvatsos, D. and Tabet-Aouel, N. (1994). An ME-based approximation for
multi-server queues with preemptive priority. European Journal of Operational Research, 77(3):496–515.
Kraimeche, B. (2001). Multiplexing of video and data sources in an ATM accessnetwork. Computer Communications, 24(9):889–897.
Krinik, A., Marcus, D., Shiflett, R., and Chu, L. (2002). Transient probabilities
of a single server priority queueing system. Journal of Statictical Planning andInference, 101(1-2):185–190.
Laevens, K. (1999). Stochastische modellering van ATM-schakelelementen met buffers aan de ingangszijde. PhD thesis, Ghent University.
Laevens, K. and Bruneel, H. (1998). Discrete-time multiserver queues withpriorities. Performance Evaluation, 33(4):249–275.
Langaris, C. and Katsaros, A. (1995). Time-dependent analysis of a queue withbatch arrivals and n levels of nonpreemptive priority. Queueing Systems,
19(3):269–288.

238

BIBLIOGRAPHY

Langaris, C. and Katsaros, A. (1997). Preemptive resume priorities in an Nclass structured queue with server vacations. Journal of the Operations Research Society of Japan, 40(1):45–61.
Lee, J., Choi, J., and Un, C. (1998). Performance analysis of an input queueing
ATM switch with two priority classes. Performance Evaluation, 32(2):137–149.
Lee, Y. (2001). Discrete-time Geox /G/1 queue with preemptive resume priority. Mathematical and Computer Modelling, 34(3-4):243–250.
Lee, Y. and Choi, B. (2001). Queueing system with multiple delay and loss
priorities for ATM networks. Information Science, 138(1-4):7–29.
Lee, Y., Kim, Y., and Huh, J. (2003). Discrete-time Geox /G/1 queue with
non-preemptive priority. Computers and Mathematics with Applications, 46(1011):1625–1632.
Leemans, H. (2001). Waiting time distribution in a two-class two-server heterogeneous priority queue. Performance Evaluation, 43(2-3):133–150.
Liebeherr, J. and Wrege, D. (1999). Priority queue schedulers with approximate sorting in output-buffered switches. IEEE Journal on Selected Areas inCommunications, 17(6):1127–1144.
Little, J. (1961). A proof for the queueing formula l = λw. Operations Research,
9:383–387.
Liu, K., Petr, D., Frost, V., Zhu, H., Braun, C., and Edwards, W. (1997). Design
and analysis of a bandwidth management framework for atm-based broadband ISDN. IEEE Communications Magazine, pages 138–145.
Liu, Y. and Gong, W. (2003). On fluid queueing systems with strict priority.
IEEE Transactions on Automatic Control, 48(12):2079–2088.
Machihara, F. (1995). A bridge between preemptive and nonpreemptive
queueing models. Performance Evaluation, 23(2):93–106.
Maertens, T., Walraevens, J., and Bruneel, H. (2004). Performance analysis ofa single-server queue with HOL-PJ priority scheduling discipline. In Proceedings of the Second International Working Conference on Performance Modelling and Evaluation of Heterogeneous Networks (HET-NETs ’04, pages P42/1–
P42/10, Ilkley.
Mandjes, M. (2003). Pricing strategies under heterogeneous service requirements. Computer Networks, 42(2):231–249.
Marks, B. (1973). State probabilities of M/M/1 priority queues. Operations
Research, 21(4):974–987.

BIBLIOGRAPHY

239

Mehmet Ali, M. and Song, X. (2004). A performance analysis of a discrete-timepriority queueing system with correlated arrivals. Performance Evaluation,
57(3):307–339.
Meir, A. and Moon, J. (1989). On an asymptotic method in enumeration.
Journal of Combinatorial Theory, series A, 51:77–89.
Miller, D. (1981). Computation of steady-state probabilities for M/M/1 priority queues. Operations Research, 29(5):945–958.
Miller, R. (1960). Priority queues. Annals of Mathematical Statistics, 31:86–103.
Mitrani, I. and King, P. (1981). Multiprocessor systems with preemptive priorities. Performance Evaluation, 1(2):118–125.
Mukherjee, S., Saha, D., and Tripathi, S. (1995). A preemptive protocol forvoice-data intergration in ring-based lan: performance analysis and comparison. Performance Evaluation, 11(3):339–354.
Núñez Queija, R. and Boxma, O. (1998). Analysis of a multi-server queueing
model of ABR. Journal of Applied Mathematics and Stochastic Analysis,11(3):339–354.
Ozawa, T. (1992). Analysis of a multiqueue model for an ISDN access interface. Performance Evaluation, 15(2):65–176.
Parekh, A. and Gallager, R. (1994). A generalized processor sharing approach
to flow control in integrated services networks: the multiple node case.
IEEE/ACM Transactions on Networking, 2(2):137–150.
Paterok, M. and Ettl, M. (1994). Sojourn time and waiting time distributions
for m/gi/1 queues with preemption-distance priorities. Operations Research,
42(6):1146–1161.
Peterson, W. (1991). A heavy traffic limit theorem for networks of queues withmultiple customer types. Mathematics of Operations Research, 16(1):90–118.
Rubin, I. and Tsai, Z. (1989). Message delay analysis of multiclass priority
TDMA, FDMA, and discrete-time queueing systems. IEEE Transactions on
Information Theory, 35(3):637–647.
Sandhu, D. and Posner, M. (1989). A priority M/G/1 queue with application to voice/data communication. European Journal of Operational Research,
40(1):99–108.
Schaack, C. and Larson, R. (1986). An N-server cutoff priority queue. Operations Research, 34(2):257–266.
Schormans, J., Pitts, J., and Scharf, E. (1991). Time priorities in ATM switches.
In Proceedings of ITC 13, pages 527–532, Copenhagen.

240

BIBLIOGRAPHY

Shakkottai, S. and Srikant, R. (2001). Many-sources delay asymptotics withapplications to priority queues. Queueing Systems, 39(2-3):183–2000.
Sharma, V. and Virtamo, J. (2002). A finite buffer queue with priorities. Performance Evaluation, 47(1):1–22.
Shenker, S. (1995). Fundamental design issues for the future Internet. IEEE
Journal on Selected Areas in Communications, 13(7):1176–1188.
Sidi, M. (1987). Discrete-time priority queues with partial interference. IEEE
Journal on Selected Areas in Communications, 5(6):1041–1050.
Sidi, M. (1988). Two competing discrete-time queues with priority. Queueing
Systems, 3(4):347–362.
Sidi, M. and Segall, A. (1983). Structured priority queueing systems with applications to packet-radio networks. Performance Evaluation, 3(4):265–275.
Stanford, D.
P(1991). Interdeparture-time distributions in the non-preemptive
priority Mi /Gi /1 queue. Performance Evaluation, 21(1):43–60.
Stanford, D. (1997). Waiting and interdeparture times in priority queues withpoisson- and general-arrival streams. Operations Research, 45(5):725–735.

Subramanian, V. and Srikant, R. (2000). Tail probabilities of low-priority waiting times and queue lengths in MAP/GI/1 queues. Queueing Systems, 34(14):215–236.
Sugahara, A., Takine, T., Takahashi, Y., and Hasegawa, T. (1995). Analysis of anonpreemptive priority queue with SPP arrivals of high class. Performance
Evaluation, 21(3):215–238.
Sumita, U. and Sheng, O. (1988). Analysis of query processing in distributed
database systems with fully replicated files: a hierarchical approach. Performance Evaluation, 8(3):223–238.
Tabet-Aouel, N. and Kouvatsos, D. (1992). On an approximation to the mean
response times of priority classes in a stable G/G/c/PR queue. Journal of
the Operational Research Society, 43(3):227–239.
Takada, H. and Miyazawa, M. (2002). A Markov modulated fluid queue withbatch arrivals and preemptions. Stochastic Models, 18(4):529–652.
Takagi, H. (1990). Priority queues with setup times. Operations Research,
38(4):667–677.
Takagi, H. (1991). Queueing analysis: a foundation of performance evaluation
volume 1: vacation and priority systems, part 1. North-Holland.
Takahashi, M., Ōsawa, H., and Fujisawa, T. (1999). Geo[X] /G/1 retrial queuewith non-preemptive priority. Asia-Pacific Journal of Operational Research,
16(2):215–234.

BIBLIOGRAPHY

241

Takahashi, Y. and Hashida, O. (1991). Delay analysis of discrete-time priority
queue with structured inputs. Queueing Systems, 8(2):149–164.
Takahashi, Y. and Miyazawa, M. (1994). Relationship between queue-length
and waiting time distributions in a priority queue with batch arrivals.
Journal of the Operations Research Society of Japan, 37(1):48–63.
Takine, T. (1996). A nonpreemptive priority MAP/G/1 queue with two classesof customers. Journal of Operations Research Society of Japan, 39(2):266–290.
Takine, T. (1999). The nonpreemptive priority MAP/G/1 queue. Operations
Research, 47(6):917–927.
Takine, T. and Hasegawa, T. (1994). The workload in the MAP/G/1 queuewith state-dependent services: its application to a queue with preemptive
resume priority. Communications in Statistics - Stochastic Models, 10(1):183–
204.
Takine, T., Matsumoto, Y., Suda, T., and Hasegawa, T. (1994a). Mean waitingtimes in nonpreemptive priority queues with Markovian arrival and i.i.d.
service processes. Performance Evaluation, 20:131–149.
Takine, T., Sengupta, B., and Hasegawa, T. (1994b). An analysis of a discretetime queue for broadband ISDN with priorities among traffic classes. IEEE
Transactions on Communications, 42(2-4):1837–1845.
Takine, T., Takagi, H., Takahashi, Y., and Hasegawa, T. (1990). Analysis ofasymmetric single-buffer polling and priority systems without switchover
times. Performance Evaluation, 11(4):253–264.
Tham, C., Yao, Q., and Jiang, Y. (2002). Achieving differentiated services
through multi-class probabilistic priority scheduling. Computer Networks,
40(4):577–593.
Tijms, H. (1974). A control policy for a priority queue with removable server.
Operations Research, 22(4):833–837.
van der Heijden, M., Van Harten, A., and Sleptchenko, A. (2004). Approximations for Markovian multi-class queues with preemptive priorities. Operations Research Letters, 32(3):273–282.
van der Mei, R., van den Berg, J., Vranken, R., and Gijsen, B. (2003). Sojourntime approximations for a multi-server processor sharing system with priorities. Performance Evaluation, 54(3):249–261.
Venkataramani, B., Bose, S., and Srivathsan, K. (1997). Queuing analysis ofa non-pre-emptive MMPP/D/1 priority system. Computer Communications,20(11):999–1018.
Vinck, B. and Bruneel, H. (1995). A note on the system contents and cell delay
in FIFO ATM-buffers. Electronics Letters, 31(12):952–954.

242

BIBLIOGRAPHY

Wagner, D. (1997). Waiting times of a finite-capacity multi-server modelwith non-peemptive priorities. European Journal of Operational Research,
102(1):227–241.
Walraevens, J. and Bruneel, H. (1999). HOL priority in an ATM output
queueing switch. In Proceedings of the seventh IFIP workshop on performancemodelling and evaluation of ATM/IP networks, Antwerp.
Walraevens, J., Steyaert, B., and Bruneel, H. (2000a). Analysis of a GI-Geo-1
preemptive resume priority buffer. In Proceedings of the IFIP ATM & IP 2000
Workshop, pages 88/1–88/11, Ilkley.
Walraevens, J., Steyaert, B., and Bruneel, H. (2000b). Analysis of packet delay in
a GI-G-1 queue with non-preemptive priority scheduling, pages 433–445. LNCS
1815 (Proceedings of the Networking 2000 Conference, Paris). Springer Verlag.
Walraevens, J., Steyaert, B., and Bruneel, H. (2000c). Analysis of the systemcontents in a GI-G-1 queue with non-preemptive priority scheduling. In
Book of Abstracts ORBEL 14, pages 32–33, Mons.
Walraevens, J., Steyaert, B., and Bruneel, H. (2000d). Performance analysis of
the system contents in a discrete-time non-preemptive priority queue withgeneral service times. Belgian Journal of Operations Research, Statistics andComputer Science (JORBEL), 40(1-2):91–103.
Walraevens, J., Steyaert, B., and Bruneel, H. (2001). Analysis of a preemptive
resume priority buffer with general service times for the high priority class.
In Proceedings of the Africom 2001 Conference, Cape Town.
Walraevens, J., Steyaert, B., and Bruneel, H. (2002a). Delay characteristics indiscrete-time GI-G-1 queues with non-preemptive priority queueing discipline. Performance Evaluation, 50(1):53–75.
Walraevens, J., Steyaert, B., and Bruneel, H. (2002b). Performance analysis of a
GI-G-1 preemptive resume priority buffer, pages 745–756. LNCS 2345 (Proceedings of the Networking 2002 Conference, Pisa). Springer Verlag.
Walraevens, J., Steyaert, B., and Bruneel, H. (2003a). Analysis of a preemptive
repeat priority buffer with resampling. In Proceedings of the International
Network Optimization Conference (INOC 2003), pages 581–586, Evry.
Walraevens, J., Steyaert, B., and Bruneel, H. (2003b). Delay analysis of a discretetime non-preemptive priority buffer with 3 traffic classes, pages 350–357. Recent
Advances in Communications and Computer Science. WSEAS Press.
Walraevens, J., Steyaert, B., and Bruneel, H. (2003c). Performance analysis ofa single-server ATM queue with a priority scheduling. Computers & Operations Research, 30(12):1807–1829.

BIBLIOGRAPHY

243

Walraevens, J., Steyaert, B., and Bruneel, H. (2004a). A packet switch witha priority scheduling discipline: Performance analysis. Telecommunication
Systems. To appear.
Walraevens, J., Steyaert, B., and Bruneel, H. (2004b). Performance analysis ofa GI-Geo-1 buffer with a preemptive resume priority scheduling discipline.
European Journal of Operational Research, 157(1):130–151.
Walraevens, J., Steyaert, B., and Bruneel, H. (2004c). Performance evaluationof a discrete-time HOL priority queue with multiple traffic classes. Technical report, Ghent University.
Wang, J., Hwang, W., Wang, W., and Shieh, C. (2000). Performance evaluation of multiple-channel slotted ring networks with tunable transmittersand fixed receivers. Computer Communications, 23(13):1281–1291.
Wang, Q. (2004). Modeling and analysis of high risk patient queues. European
Journal of Operational Research, 155(2):502–515.
White, H. and Christie, L. (1958). Queuing with preemptive priorities or withbreakdown. Operations Research, 6(1):79–95.
Williams, T. (1980). Nonpreemptive multi-server priority queues. The Journalof the Operational Research Society, 31(12):1105–1107.
Wittevrongel, S. (1998). Prestatie-analyse van discrete-tijd-buffersystemen met
grillige aankomststromen. PhD thesis, Ghent University.
Xabier Albizuri, F., Graña, M., and Raducanu, B. (2003). Statistical transmission delay guarantee for nonreal-time traffic multiplexed with real-timetraffic. Computer Communications, 26(12):1365–1375.
Xiao, X. and Ni, L. (1999). Internet QoS: a big picture. IEEE Network, 13(2):8–18.
Xiong, Y. and Bruneel, H. (1993). Buffer contents and delay for statisticalmultiplexers with fixed-length packet-train arrivals. Performance Evaluation,
17(1):31–42.
Yoon, C. and Un, C. (1991). Unslotted CSMA-CD protocols with combined
retransmission strategy for fiber optic bus and ring networks. Computer
Networks and ISDN Systems, 21(5):381–397.
Yoon, C. and Un, C. (1994). Unslotted 1- and pi -persistent CSMA-CD protocols
for fiber optic bus networks. IEEE Transactions on Communications, 42(24):158–465.