Queueing Theory: Frank Y. S. Lin

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 50

Queueing Theory

Frank Y. S. Lin
Information Management Dept.
National Taiwan University
yslin@im.ntu.edu.tw
1

References

Leonard Kleinrock, Queueing Systems


Volume I: Theory, New York: Wiley, 1975-1976.

D. Gross and C. M. Harris, Fundamentals of


Queueing Theory, New York: Wiley, 1998.

Agenda

Introduction
Stochastic Process
General Concepts
M/M/1 Model
M/M/1/K Model
Discouraged Arrivals
M/M/ and M/M/m Models
M/M/m/m Model
3

Introduction

Queueing System

A queueing system can be described as customers


arriving for service, waiting for service if it is not
immediate, and if having waited for service, leaving
the system after being served.

Why Queueing Theory

Performance Measurement

Average waiting time of customer / distribution of


waiting time.
Average number of customers in the system /
distribution of queue length / current work backlog.
Measurement of the idle time of server / length of an
idle period.
Measurement of the busy time of server / length of a
busy period.
System utilization.
6

Why Queueing Theory (contd)

Delay Analysis
Network Delay =
Queueing Delay
+ Propagation Delay (depends on the distance)
+ Node Delay Processing Delay
(independent of packet length,
e.g. header CRC check)
Adapter Delay (constant)

Characteristics of Queueing Process

Arrival Pattern of Customers

Probability distribution
Patient / impatient (balked) arrival
Stationary / nonstationary

Service Patterns

Probability distribution
State dependent / independent service
Stationary / nonstationary
8

Characteristics of Queueing Process


(contd)

Queueing Disciplines

First come, first served (FCFS)


Last come, first served (LCFS)
Random selection for service (RSS)
Priority queue
Preemptive / nonpreemptive

System Capacity

Finite / infinite waiting room.


9

Characteristics of Queueing Process


(contd)

Number of Service Channels

Single channel / multiple channels


Single queue / multiple queues

Stages of Service

Single stage (e.g. hair-styling salon)


Multiple stages (e.g. manufacturing process)
Process recycling or feedback

10

Notation

A queueing process is described by A/B/X/Y/Z

11

Notation (contd)

For example, M/D/2//FCFS indicates a


queueing process with exponential inter-arrival
time, deterministic service times, two parallel
servers, infinite capacity, and first-come, firstserved queueing discipline.
Y and Z can be omitted if Y = and Z = FCFS.

12

Stochastic Process

13

Stochastic Process

Stochastic process: any collection of random


variables (t), t T, on a common probability
space where t is a subset of time.

Continuous / discrete time stochastic process


Example: (t) denotes the temperature in the class on t
= 7:00, 8:00, 9:00, 10:00, (discrete time)

We can regard a stochastic process as a family of


random variables which are indexed by time.
For a random process X(t), the PDF is denoted by
FX(x;t) = P[X(t) <= x]
14

Some Classifications of Stochastic


Process

Stationary Processes: independent of time


FX (x; t + ) = FX (x; t)

Independent Processes: independent variables


FX (x; t) = FX1,, Xn(x1,, xn ; t1,,tn)
= FX1(x1; t1) FXn(xn; tn)

Markov Processes: the probability of the next state


depends only upon the current state and not upon any
previous states.
P[X(tn+1) = xn+1 | X(tn) = xn, ., X(t1) = x1]
= P[X(tn+1) = xn+1 | X(tn) = xn]

15

Some Classifications of Stochastic


Process (contd)

Birth-death Processes: state transitions take place


between neighboring states only.

Random Walks: the next position the process occupies


is equal to the previous position plus a random variable
whose value is drawn independently from an arbitrary
distribution.

16

General Concepts

17

Continuous-time Memoryless
Property
If X ~Exp(), for any a,b > 0,
P[X > a + b | X > a] = P[X > b]
Proof:
P[X > a + b | X > a]

P[ X a b I X a ]
P X a

P X a b
P X a

1 Fx a b
1 Fx a

X a b X a
e ( a b )
a e b P ( X b)
e

18

Global Balance Equation

Define Pi = P[system is in state i]


Pij = P[get into state j right after leaving state i]

i 0
(i j )

i 0
(i j )

Pj Pij Pi Pij
rate out of state j = rate into state j

19

General Balance Equation

Define S = a subset of the state space

P P P P

j 0
( js )

i 0
( is )

ij

i 0
( is )

j 0
( js )

ij

rate in = rate out

20

General Equilibrium Solution

Notation:

Pk = the probability that the system contains k


customers (in state k)

P
k 0

k= the arrival rate of customers when the system is in


state k.
k= the service rate when the system is in state k.
21

General Equilibrium Solution (contd)

Consider state k:
rate in rate out

k-1

Pk k Pk 1 k 1

Pk 1 k Pk
k 1
k 1
Pk
Pk 1
k

k-1

k+1

k+1

.
.

k 1 k 2
0
Pk .
P0
k k 1
1

i
P0

i 0 i 1
k 1

22

General Equilibrium Solution (contd)

P
k 0

i

P0 1
k 0 i 0 i 1

k 1

P0

N
Pk k , T

k 0

i
1
k 0 i 0 i 1

k 1

waiting time w T

23

Littles Result

N = average number of customers in the system

T = system time (service time + queueing time)


= arrival rate
N T

Black box

Service time

Queueing time

System time T

24

M/M/1 Model
Single Server, Single Queue
(The Classical Queueing System)

25

M/M/1 Queue

Single server, single queue, infinite population:


k
k

Interarrival time distribution:


p (t ) e t

Service time distribution


t0

p (t t0 ) e t dt 1 e t0
0

Stability condition <


26

M/M/1 Queue (contd)

System utilization

= P[system is busy], 1- P[system is idel]

Define state Sn = n customers in the system


(n-1 in the queue and 1 in service)
S0 = empty system
rate out

S
rate in

27

M/M/1 Queue (contd)

Define pn = P[n customers in the system]


pn pn 1 (rate in = rate out)

pn 1 pn pn

n 1
p

p0
n 1

Since pi 1
i 0

n
p

1
p

0
0 1
n

i 0

i 0

n
p

,
p

(1 )
n
0
#

28

M/M/1 Queue (contd)

Average number of customers in the system

N k (1 ) k (1 ) k k
(1 ) d k / d
d
(1 ) k
d
d 1
(1 )

1
N

29

M/M/1 Queue (contd)

Average system time


N
T
(Littles Result)

1
1 1/

1
#

P[ k customers in the system]

k
(1 ) (1 )
k
1
i k

30

M/M/1/K Model
Single Server, Finite Storage

31

M/M/1/K Model

The system can hold at most a total of K


customers (including the customer in service)
k =

if k < K
0

if k K

k =

32

M/M/1/K Model (contd)


Pk P0 P0
i 0

Pk 0
k 1

P0

k 1

kK
kK

1 ( / )
0

1 /

1 ( / ) K 1

0k K
otherwise
33

Discouraged Arrivals

34

Discouraged Arrivals

Arrivals tend to get discouraged when more and


more people are present in the system.

k
k 1
k

35

Discouraged Arrivals (contd)


/(i 1)
k 1
Pk P0
/ P0

k!
i 0

P0

k 1
1 /
k!
k 1
k

N
Pk
e

k!
k 1

36

Discouraged Arrivals (contd)


( / ) ( / )
k Pk

e
k!
k 0
k 0 k 1

1 e ( / )

(Q , 1 P0 )

N
/
T
(1 e / )

37

M/M/ and M/M/m


M/M/ - Infinite Servers, Single Queue
(Responsive Servers)
M/M/m - Multiple Servers, Single Queue
(The m-Server Case)
38

M/M/ Queue

There is always a new server available for each


arriving customer.
k
k k

39

M/M/ Queue (contd)

( / ) k /
Pk P0

e
k!
i 0 (i 1)
k 1

1
T

(Littles Result)

40

M/M/m Queue

The M/M/m queue

An M/M/m queue is shorthand for a single queue served


by multiple servers.
Suppose there are m servers waiting for a single line.
For each server, the waiting time for a queue is a
system with service rate and arrival rate /m.
The M/M/1 1analysis has been done, at risk conclusion:
delay = / n
throughput

/n

41

M/M/m Queue (contd)

k =
k = k

if k m

m if k > m
For k m
For k > m

pk p0

pk p0

2 k

2 n

k 1

p0 ( )
k!

k 1 1 k n
p0
( )
( )
n
n! n
42

M/M/n Queue (contd)

p
i 0

p0

1
n 1
(np) k ( np) n 1
pi

k!
n ! (1 )
k 0

where

P[queueing] =

k m

Total system time =

1
(/ ) n

p0
2
(n 1)!(n )

43

Comparisons (contd)

M/M/1 v.s M/M/4


If we have 4 M/M/1 systems: 4 parallel communication
links that can each handle 50 pps (), arrival rate = 25
pps per queue.
average delay = 40 ms.
Whereas for an M/M/4 system,
average delay = 21.7 ms.

44

Comparisons (contd)

Fast Server v.s A Set of Slow Servers #1


If we have an M/M/4 system with service rate =50 pps for
each server, and another M/M/1 system with service rate
4 = 200 pps. Both arrival rate is = 100 pps
delay for M/M/4 = 21.7 ms
delay for M/M/1 = 10 ms

45

Comparisons (contd)

Fast Server v.s A Set of Slow Servers #2

If we have n M/M/1 system with service rate pps for each


server, and another M/M/1 system with service rate n pps.
Both arrival rate is n pps
1/
S1
T1
S2
1

1/ n 1/ n
T2

n 1
1
n
T1
T2
n

46

M/M/m/m
Multiple Servers, No Storage
(m-Server Loss Systems)

47

M/M/m/m

There are available m servers, each newly arriving


customers is given a server, if a customers arrives
when all servers are occupied, that customer is lost
e.g. telephony system.
if k m
k
0 if k m
k k

48

M/M/m/m (contd)
1
P0 ( / )
k!

if k m

if k m

Pk

1
P0 ( / )
k !
k 0

49

M/M/m/m (contd)

Let pm describes the fraction of time that all m


servers are busy. The name given to this
probability expression is Erlangs loss formula
and is given by
pm

( / ) m / m !
m

k
(

)
/ k!

k 0

This equation is also referred to as Erlangs B


formula and is commonly denoted by B(m,/)
http://www.erlang.com

50

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy