QUEUEING THEORY WITH APPLICATIONS TO PACKET QUEUEING THEORY WITH APPLICATIONS TO PACKET TELECOMMUNICATION

JOHN N. DAIGLE Prof. of Electrical Engineering The University of Mississippi University, MS 38677

Springer ISBN 978-0-387-22859-4 (eBook) Print ISBN 978-0-387-22857-0

Additional material to this book can be downloaded from http://extras.springer.com

©2005 Springer Science + Business Media, Inc.

Print ©2005 Springer Science + Business Media, Inc. Boston

All rights reserved

No part of this eBook may be reproduced or transmitted in any form or by any means, electronic, mechanical, recording, or otherwise, without written consent from the Publisher

Created in the United States of America

Visit Springer's eBookstore at: http://ebooks.kluweronline.com and the Springer Global Website Online at: http://www.springeronline.com NOTE TO INSTRUCTORS

A complete solution manual has been prepared for use by those interested in using this book as the primary text in a course or for independent study. Inter- ested persons should please contact the publisher or the author at http://www.olemiss.edu/~wcdaigle/QueueingText to obtain an electronic copy of the solution manual as well as other support materials, such as computer programs that implement many of the computational procedures described in this book. Contents

List of Figures xi List of Tables xv Preface xvii Acknowledgments xxiii 1. TERMINOLOGY AND EXAMPLES 1 1.1 The Terminology of Queueing Systems 2 1.2 Examples of Application to System Design 9 1.2.1 Cellular Telephony 9 1.2.2 Multiplexing Packets 11 1.2.3 CDMA-Based Cellular Data 14 1.3 Summary 17 2. REVIEW OF RANDOM PROCESSES 19 2.1 Statistical Experiments and Probability 20 2.1.1 Statistical Experiments 20 2.1.2 Conditioning Experiments 22 2.2 Random Variables 27 2.3 33 2.4 Poisson Process 39 2.5 Markov Chains 45 3. ELEMENTARY CTMC-BASED QUEUEING MODELS 57 3.1 M/M/1 Queueing System 58 3.1.1 Time-Dependent M/M/1 Occupancy Distribution 58 3.1.2 Stochastic Equilibrium M/M/1 Distributions 60 3.1.3 Busy Period for M/M/1 Queueing System 76 viii QUEUEING THEORY FOR

3.2 Dynamical Equations for General Birth-Death Process 81 3.3 Time-Dependent Probabilities for Finite-State Systems 83 3.3.1 Classical Approach 84 3.3.2 Jensen’s Method 88 3.4 Balance Equations Approach for Systems in Equilibrium 91 3.5 Probability Generating Function Approach 98 3.6 Supplementary Problems 101 4. ADVANCED CTMC-BASED QUEUEING MODELS 107 4.1 Networks 108 4.1.1 Feedforward Networks: Fixed Routing 109 4.1.2 Arbitrary Open Networks 110 4.1.3 Closed Networks of Single Servers 111 4.2 Phase-Dependent Arrivals and Service 122 4.2.1 Probability Generating Function Approach 124 4.2.2 138 4.2.3 Rate Matrix Computation via Eigenanalysis 143 4.2.4 Generalized State-Space Methods 146 4.3 Phase-Type Distributions 152 4.4 Supplementary Problems 156 5. THE BASIC M/G/1 QUEUEING SYSTEM 159 5.1 M/G/1 Transform Equations 161 5.1.1 Sojourn Time for M/G/1 165 5.1.2 Waiting Time for M/G/1 167 5.1.3 Busy Period for M/G/1 167 5.2 Ergodic Occupancy Distribution for M/G/1 170 5.2.1 Discrete Fourier Transform Approach 170 5.2.2 Recursive Approach 180 5.2.3 Generalized State-Space Approach 183 5.3 Expected Values Via 210 5.3.1 Expected Waiting and Renewal Theory 210 5.3.2 Busy Periods and Alternating Renewal Theory 216 5.4 Supplementary Problems 219 6. THE M/G/1 QUEUEING SYSTEM WITH PRIORITY 225 6.1 M/G/1 Under LCFS-PR Discipline 226 6.2 M/G/1 System Exceptional First Service 229 6.3 M/G/1 under HOL Priority 236 Contents ix

6.3.1 Higher Priority Customers 238 6.3.2 Lower Priority Customers 241 6.4 Ergodic Occupancy Probabilities for Priority Queues 244 6.5 Expected Waiting Times under HOL Priority 246 6.5.1 HOL Discipline 248 6.5.2 HOL-PR Discipline 249 7. VECTOR MARKOV CHAINS ANALYSIS 253 7.1 The M/G/1 and G/M/1 Paradigms 254 7.2 G/M/1 Solution Methodology 259 7.3 M/G/1 Solution Methodology 261 7.4 Application to Statistical Multiplexing 265 7.5 Generalized State Space Approach: Complex Boundaries 278 7.6 Summary 290 7.7 Supplementary Problems 294 8. CLOSING REMARKS 297 References 301 Index 309 About the Author 315 List of Figures

1.1 Schematic diagram of a single-server queueing system. 2 1.2 Sequence of events for first customer. 3 1.3 Sequence of events for general customer. 4 1.4 Typical realization for unfinished work. 6 1.5 Blocking probability as a function of population size at a load of 11 1.6 Queue length survivor function for an N-to-1 multi- plexing system at a traffic intensity of 0.9 with N as a parameter and with independent, identically distributed arrivals. 14 1.7 Queue length survivor function for an 8-to-1 multiplex- ing system at a traffic intensity of 0.9 with average run length as a parameter. 15 1.8 Comparison between a system serving a fixed number of 16 units per frame and a system serving a binomial number of units with an average of 16 at a traffic inten- sity of 0.9. 16 2.1 Distribution function for the random variable defined in Example 2.4. 29 3.1 Survivor function for system occupancy for several val- ues of 63 3.2 Schematic diagram of a single-server queueing system. 65 3.3 Schematic diagram of a simple network of queues. 76 3.4 Sequence of busy and idle periods. 76 3.5 Sequence of service times during a generic busy period. 77 xii QUEUEING THEORY FOR TELECOMMUNICATIONS

3.6 Busy period decompositions depending upon interar- rival versus service times. 79 3.7 Time-dependent state probabilities corresponding to Ex- ample 3.1. 86 3.8 Steps involved in randomization. 90 3.9 State diagram for M/M/1 System. 92 3.10 State diagram for general birth-death process. 92 3.11 State diagram for general birth-death process. 95 3.12 State diagram illustrating local balance. 98 4.1 Block diagram for window flow control network. 117 4.2 State diagram for phase process. 122 4.3 State diagram for system having phase-dependent ar- rival and service rates. 123 5.1 Survivor functions with deterministic, -2, expo- nential, branching Erlang and gamma service-time dis- tributions at 176 5.2 Survivor functions for system occupancy with message lengths drawn from truncated geometric distributions at 178 5.3 Survivor functions for system having exponential ordi- nary and exceptional first service and as a parameter. 198 5.4 Survivor functions with unit deterministic service and binomially distributed arrivals with N as a parameter at 199 5.5 Survivor functions with unit-mean Erlang-10 service and Poisson arrivals with C as a parameter at a traffic load of 0.9. 201 5.6 Survivor functions with unit-mean Erlang-K service and Poisson arrivals with K as a parameter at a traf- fic load of 0.9. 203 5.7 Survivorfunctions with and Pade(2, 2) ser- vice, Poisson arrivals, and a traffic load of 0.9. 205 5.8 Survivor functions for deterministic (16) batch sizes with Pade deterministic service and Poisson arrivals at a traffic load of 0.9 for various choices of 206 List of Figures xiii

5.9 Survivor functions for deterministic (16) batch sizes with Erlang-K-approximated deterministic service and Poisson arrivals at a traffic load of 0.9 for various choices of K. 207 5.10 Survivor functions for binomial (64,0.25) and deter- ministic (16) batch sizes with deterministic service ap- proximated by a Pade(32, 32) approximation and Pois- son arrivals at a traffic load of 0.9. 208 5.11 A sample of service times. 211 5.12 An observed interval of a renewal process. 212 6.1 HOL service discipline. 237 7.1 Survivor functions for occupancy distributions for sta- tistical multiplexing system with 0.5 to 1.0 speed con- version at 273 7.2 Survivor functions for occupancy distributions for sta- tistical multiplexing system with equal line and trunk capacities at 277 7.3 Survivor functions for occupancy distributions for sta- tistical multiplexing system with and without line-speed conversion at 278 7.4 Survivor functions for occupancy distributions for wire- less communication link with on time as a parameter. 291 List of Tables

5.1 Blocking probabilities versus occupancy probabilities for various service time distributions. 180 5.2 Parameters for Example 5.5. 193 5.3 Formulae to compute parameter values for Example 5.6. 197 5.4 Parameter values for Example 5.8. 200 5.5 Occupancy values as a function of the number of units served for the system of Example 5.8. 202 5.6 Comparison of values of survivor function computed using various Pade approximations for service time in Example 5.10. 204 5.7 Possible data structure for representing the input pa- rameters in a program to implement the scalar case of the generalized state space approach. 209 5.8 Possible data structure for representing the output pa- rameters in a program to implement the scalar case of the generalized state space approach. 209 7.1 Definition of the phases for the problem solved in Ex- ample 7.1. 269 7.2 Definition of the phases for the system of Exercise 7.8. 269 7.3 Mean and second moments of queue lengths for multi- plexed lines with line speed conversion. 274 7.4 Mean and second moments of queue lengths for multi- plexed lines with no line speed conversion. 277 7.5 Transition probabilities for the system of Example 7.4. 289 7.6 Major characteristics of the solution process for the system of Example 7.4. 290 Preface

Soon after Samuel Morse’s telegraphing device led to a deployed electri- cal telecommunications system in 1843, waiting lines began to form by those wanting to use the system. At this writing queueing is still a significant factor in designing and operating communications services, whether they are provided over the Internet or by other means, such as circuit switched networks. This book is intended to provide an efficient introduction to the fundamental concepts and principles underlying the study of queueing systems as they ap- ply to telecommunications networks and systems. Our objective is to provide sufficient background to allow our readers to formulate and solve interesting queueing problems in the telecommunications area. The book contains a se- lection of material that provides the reader with a sufficient background to read much of the queueing theory-based literature on telecommunications and net- working, understand their modeling assumptions and solution procedures, and assess the quality of their results. This text is a revision and expansion of an earlier text. It has been used as a primary text for graduate courses in queueing theory in both Electrical Engineering and departments. There is more than enough material for a one-semester course, and it can easily be used as the primary text for a two-semester course if supplemented by a small number of current journal articles. Our goals are directed towards the development of an intuitive understand- ing of how queueing systems work and building the mathematical tools needed to formulate and solve problems in the most elementary setting possible. Nu- merous examples are included and exercises are provided with these goals in mind. These exercises are placed within the text so that they can be discussed at the appropriate time. The instructor can easily vary the pace of the course according to the char- acteristics of individual classes. For example, the instructor can increase the pace by assigning virtually every exercise as homework, testing often, and cov- xviii QUEUEING THEORY FOR TELECOMMUNICATIONS ering topics from the literature in detail. The pace can be decreased to virtually any desired level by discussing the solutions to the exercises during the lecture periods. I have worked mostly with graduate students and have found that we achieve more in a course when the students work exercises on the blackboard during the lecture period. This tends to generate discussions that draw the students in and bring the material to life. The minimum prerequisite for this course is an understanding of calculus and linear algebra. However, we have achieved much better results when the students have had at least an introductory course in probability. The best re- sults have been obtained when the students have had a traditional electrical engineering background, including transform theory, an introductory course in stochastic processes, and a course in computer communications. We now present an abbreviated summary of the technical content of this book. In Chapter 1, we introduce some general terminology from queueing systems and some elementary concepts and terminology from the general the- ory of stochastic processes, which will be useful in our study of queueing systems. The waiting time process for a single-server, first-come-first-serve (FCFS) queueing system, is discussed. We also demonstrate the application of queueing analysis to the design of wireless communication systems and IP switches. In the process, we demonstrate the importance of choosing queue- ing models that are sufficiently rich to capture the important properties of the problem under study. In Chapter 2, we review some of the key results from the theory of ran- dom processes that are needed in the study of queueing systems. In the first section, we provide a brief review of probability. We begin with a definition of the elements of a statistical experiment and conclude with a discussion of event probabilities via conditioning. We then discuss random vari- ables, their distributions, and manipulation of distributions. In the third and fourth sections, we develop some of the key properties of the exponential dis- tribution and the Poisson process. In the fifth section, we review discrete- and continuous-parameter Markov chains defined on the nonnegative integers. Our goal is to review and reinforce a subset of the ideas and principles from the theory of stochastic processes that is needed for understanding queueing systems. As an example, we review in detail the relationship between discrete- time and discrete-parameter stochastic processes, which is very important to the understanding of queueing theory but often ignored in courses on stochastic processes. Similarly, the relationship between frequency-averaged and time- averaged probabilities is addressed in detail in Chapter 2. In Chapter 3, we explore the analysis of several queueing models that are characterized as discrete-valued, continuous-time Markov chains (CTMCs). That is, the queueing systems examined Chapter 3 have a countable state space, and the dwell times in each state are drawn from exponential distri- PREFACE xix butions whose parameters are possibly state-dependent. We begin by examin- ing the well known M/M/1 queueing system, which has Poisson arrivals and identically distributed exponential service times. For this model, we consider both the time-dependent and equilibrium occupancy distributions, the stochas- tic equilibrium sojourn and waiting time distributions, and the stochastic equi- librium distribution of the length of the busy period. Several related processes, including the departure process, are introduced, and these are used to obtain equilibrium occupancy distributions for simple networks of queues. After discussing the M/M/1 system, we consider the time-dependent behav- ior of finite-state general birth-death models. A reasonably complete derivation based upon classical methods is presented, and the rate of convergence of the system to stochastic equilibrium is discussed. Additionally, the process of ran- domization, or equivalently uniformization, is introduced. Randomization is described in general terms, and an example that illustrates its application is provided. We also discuss the approach to formulating equi- librium state probability equations for birth-death processes and other more general processes. Elementary traffic engineering models are introduced and blocking probabilities for these systems are discussed. Finally, we introduce the probability generating function technique for solving balance equations. In Chapter 4, we continue our analysis of queueing models that are charac- terized by CTMCs. We discuss simple networks of exponential service stations of the feedforward, open, and closed varieties. We discuss the form of the joint state probability mass functions for such systems, which are of the so-called product form type. We discuss in detail a novel technique, due to Gordon [1990], for obtaining the normalizing constant for simple closed queueing net- works in closed form. This technique makes use of generating functions and contour integration, which are so familiar to many engineers. Next, we address the solution of a two-dimensional queueing model in which both the arrival and service rates are determined by the state of a single independent CTMC. This type of two-dimensional is called a quasi-birth and death process (QBD), which is a vector version of the scalar birth-death process discussed previously. A number of techniques for solving such problems are developed. The first approach discussed uses the probabil- ity generating function approach. We make extensive use of eigenvector-based analysis to resolve unknown probabilities. Next, the matrix analytic technique is introduced and used to solve for the state probabilities. A technique based on solving eigensystems for finding the rate matrix of the matrix geometric method, which reveals the entire solution, is discussed next. Finally, a gen- eralized state space approach, which seems to have been introduced first by Akar et. al [1998], is developed. We show how this technique can be used efficiently to obtain the rate matrix, thereby complementing the matrix ana- lytic approach. We then introduce distributions of the phase (PH) type, and xx QUEUEING THEORY FOR TELECOMMUNICATIONS we provide the equilibrium occupancy distribution for the M/PH/1 system in matrix geometric form. We conclude the chapter with a set of supplementary exercises. In Chapter 5, we introduce the M/G/1 queueing system. We begin with a classical development of the Pollaczek-Khintchine transform equation for the occupancy distribution. We also develop the Laplace-Stieltjes transforms for the ergodic waiting time, sojourn time, and busy period distributions. We next address inversion of probability generating functions. Three meth- ods are discussed. The first method is based upon Fourier analysis, the second approach is recursive, and the third approach is based on generalized state space methods, which were used earlier to determine the equilibrium probabil- ities for QBD processes. A number of practical issues regarding a variety of approximations are addressed using the generalized state space approach. For example, in the case of systems having deterministic service time, we obtain queue length distributions subject to batch arrivals for the cases where batch sizes are binomially distributed. We explore convergence of the queue length distribution to that of the M/D/1 system. We also explore the usefulness of the Pade approximation to deterministic service in a variety of contexts. We next turn our attention to the direct computation of average waiting and sojourn times for the M/G/1 queueing system. Our development follows that for the M/M/1 system to the point at which the consequences of not having the Markovian property surfaces. At this point, a little renewal theory is introduced so that the analysis can be completed. Additional insight into the properties of the M/G/1 system are also introduced at this point. Following completion of the waiting- and sojourn-time development, we introduce alternating renewal theory and use a basic result of alternating renewal theory to compute the av- erage length of the M/G/1 busy period directly. The results of this section play a key role in the analysis of queueing systems with priority, which we address in Chapter 6. We begin Chapter 6 with an analysis of the M/G/1 system having the last come first serve service discipline. We show that the Pollaczek-Khintchine transform equations for the waiting and sojourn times can be expressed as ge- ometrically weighted sums of random variables. Next, we analyze the M/G/1 queueing system with exceptional first service. We begin our development by deriving the Pollaczek-Khintchine transform equation of the occupancy distri- bution using the same argument by which Fuhrmann-Cooper decomposition was derived. This approach avoids the difficulties of writing and solving dif- ference equations. We then use decomposition techniques liberally in the re- mainder of the chapter to study the M/G/1 queueing system with externally assigned priorities and head-of-the-line service. Transform equations are de- veloped for the occupancy, waiting-time and sojourn-time distributions. Inver- sion of transform equations to obtain occupancy distribution is then discussed. PREFACE xxi

Finally, we develop expressions for the average waiting and sojourn times for the M/G/1 queueing system underboth preemptive and nonpreemptive priority disciplines. In Chapter 7 we introduce the G/M/1 and M/G/1 paradigms, which have been found to be useful in solving practical problems and have been discussed at length in Neuts’ books. These paradigms are natural extensions of the or- dinary M/G/1 and G/M/1 systems. In particular, the structure of the one-step transition probability matrices for the embedded Markov chains for these sys- tems are simply matrix versions of the one-step transition probability matrices for the embedded Markov chains of the elementary systems. In the initial part of the chapter, Markov chains of the M/G/1 and G/M/1 type are defined. The general solution procedure for models of the G/M/1 type and the M/G/1 with simple boundaries are discussed. The application of M/G/1 paradigm ideas to analysis of statistical multiplexing systems is then discussed by way of examples. Then, we extend our earlier development of the generalized state space methods to the case of the Markov chains of the M/G/1 type with complex boundary conditions. The methodology presented there is relatively new, and we believe our presentation is novel. Because generalized state-space procedures are relatively new, we attempt to provide a thorough introduction and reinforce the concepts through an example. Finally, additional environments where Markov chains of the G/M1 and M/G/1 types surface are discussed and pointers to descriptions of a variety of techniques are given. We close in Chapter 8 with a brief discussion of a number of nontraditional techniques for gaining insights into the behavior of queueing systems. Among these are asymptotic methods and the statistical envelope approach introduced by Boorstyn and others.

JOHN N. DAIGLE Acknowledgments

For their many valuable contributions, I am indebted to many people. John Mahoney of Bell Laboratories guided my early study of communications. Shel- don Ross of the University of California-Berkeley introduced me to the queue- ing theory and taught me how to think about queueing problems. Tom Robbins of Addison Wesley, Jim Meditch of The University of Washington, Ray Pick- holtz of The George Washington University, and Bill Tranter of the Virginia Polytechnic Institute and State University initially encouraged me to write this book. Marty Wortman of Texas A&M University taught from early drafts and provided encouragement and criticism for several years. John Spragins of Clemson University and Dave Tipper of The University of Pittsburgh taught from the various draft forms and offered many suggestions for improvement. Discussions with Ralph Disney of Texas A&M University, Bob Cooper of Florida Atlantic University, Jim Meditch, and Paul Schweitzer of the Univer- sity of Rochester also yielded many improvements in technical content. Numerous students, most notably Nikhil Jain, John Kobza, Joe Langford, Marcos Magalhães, Naresh Rao, Stan Tang, and Steve Whitehead have asked insightful questions that have resulted in many of the exercises. Mary Jo Zukoski played a key role in developing the solution manual for the first edi- tion. Nail Akar of Bilikent University contributed much to my education on the generalized state space approach, and provided invaluable help in setting up and debugging a suitable programming environment for LAPACK routines. Ongoing discussions with Martin Reisslein, David Lucantoni, Ness Shroff, and Jorg Liebeherr have helped to keep me up-to-date on emerging developments. Alex Greene and Mellissa Sullivan of Kluwer Publishers have provided the appropriate encouragement to bring the manuscript to completion. Finally, I am indebted to Katherine Daigle who read numerous drafts and provided many valuable suggestions to improve organization and clarity. For all errors and flaws in the presentation, I owe thanks only to myself.