Communication Systems and Networks
Download
Report
Transcript Communication Systems and Networks
Al-Imam Mohammad Ibn Saud University
CS433
Modeling and Simulation
Lecture 12
Queueing Theory
03 May 2008
Dr. Anis Koubâa
Goals for Today
Understand the Queuing Model and its
applications
Understand how to describe a Queue Model
Lean the most important queuing models (Part 02)
Single Queue
Multiple Queues
Multiple Servers
Course Outline
The Queuing Model and Definitions
Application of Queuing Theory
Little’s Law
Queuing System Notation
Stationary Analysis of Elementary Queueing Systems
M/M/1
M/M/m
M/M/1/K
…
The Queuing Model
Click for Queue Simulator
Queuing System
Queue
Use Queuing models to
Server
Describe the behavior of queuing systems
Evaluate system performance
A Queue System is characterized by
Queue (Buffer): with a finite or infinite size
The state of the system is described by the Queue Size
Server: with a given processing speed
Events: Arrival (birth) or Departure (death) with given rates
Queuing theory definitions
5
(Bose) “the basic phenomenon of queueing arises whenever a shared facility
needs to be accessed for service by a large number of jobs or customers.”
(Wolff) “The primary tool for studying these problems [of congestions] is known
as queueing theory.”
(Kleinrock) “We study the phenomena of standing, waiting, and serving, and we
call this study Queueing Theory." "Any system in which arrivals place demands
upon a finite capacity resource may be termed a queueing system.”
(Mathworld) “The study of the waiting times, lengths, and other properties of
queues.”
http://www2.uwindsor.ca/~hlynka/queue.html
6
Applications of Queuing Theory
6
Applications of Queuing Theory
7
Telecommunications
Computer Networks
Predicting computer performance
Health services (eg. control of hospital bed assignments)
Airport traffic, airline ticket sales
Layout of manufacturing systems.
Example application of queuing theory
8
In many stores and banks, we can find:
line/multiple checkout system → a queuing
system where customers wait for the next available
cashier
We can prove using queuing theory that : throughput
improves/increases when queues are used instead of
separate lines
multiple
http://www.andrews.edu/~calkins/math/webtexts/prod10.htm#PD
Example application of queuing theory
9
http://www.bsbpa.umkc.edu/classes/ashley/Chaptr14/sld006.htm
Queuing theory for studying networks
10
View network as collections of queues
FIFO
data-structures
Queuing theory provides probabilistic analysis of
these queues
Examples:
Average
length
Average waiting time
Probability queue is at a certain length
Probability a packet will be lost
QNAP/Modline
Example of a Queue Simulator
11
12
The Little’s Law
The long-term average number of customers in
a stable system N, is equal to the long-term
average arrival rate, λ, multiplied by the longterm average time a customer spends in the
system, T.
12
The Queuing Times
Queuing System
Queue
Queuing Time
Server
Service Time
Response Time (or Delay)
Little’s Law
E N E T
Expected number of
customers in the system
Expected time in the system
Arrival rate IN the system
Generality of Little’s Law
Mean number tasks in system = mean arrival rate x mean response time
E N E T
Little’s Law is a pretty general result
It does not depend on the arrival process distribution
It does not depend on the service process distribution
It does not depend on the number of servers and buffers in the system.
Applies to any system in equilibrium, as long as nothing in black box is
creating or destroying tasks
λ
Aggregate
Arrival rate
Queueing
Network
16
Specification of Queuing Systems
16
Characteristics of queuing systems
17
Arrival Process
The
distribution that determines how the tasks arrives in
the system.
Service Process
The
distribution that determines the task processing time
Number of Servers
Total
number of servers available to process the tasks
Specification of Queueing Systems
Arrival/Departure
Customer arrival and service stochastic models
Structural Parameters
Number of servers: What is the number of servers?
Storage capacity: are buffer finite or infinite?
Operating policies
Customer class differentiation
are all customers treated the same or do some have priority over others?
Scheduling/Queueing policies
which customer is served next
Admission policies
which/when customers are admitted
Kendall Notation A/B/m(/K/N/X)
19
To specify a queue, we use the Kendall Notation.
The First three parameters are typically used,
unless specified
1.
2.
3.
4.
5.
6.
A: Arrival Distribution
B: Service Distribution
m: Number of servers
K: Storage Capacity (infinite if not specified)
N: Population Size (infinite)
X: Service Discipline (FCFS/FIFO)
http://en.wikipedia.org/wiki/Kendall's_notation
Kendall Notation of Queueing System
Arrival Process
• M: Markovian
• D: Deterministic
• Er: Erlang
• G: General
Number of servers
m=1,2,…
Storage Capacity
K= 1,2,…
(if ∞ then it is omitted)
A/B/m/K/N/X
Service Process
• M: Markovian
• D: Deterministic
• Er: Erlang
• G: General
Service Discipline
FIFO, LIFO, Round Robin, …
Number of customers
N= 1,2,…
(for closed networks, otherwise
it is omitted)
Distributions
21
M: stands for "Markovian", implying exponential
distribution for service times or inter-arrival times.
D: Deterministic (e.g. fixed constant)
Ek: Erlang with parameter k
http://en.wikipedia.org/wiki/Erlang_distribution
Hk: Hyper-exponential with parameter k
G: General (anything)
CS352 Fall,2005
Kendall Notation Examples
22
M/M/1 Queue
M/M/m Queue
Same, but m servers
M/D/1 Queue
Poisson arrivals (exponential inter-arrival), and exponential
service, 1 server, infinite capacity and population, FCFS (FIFO)
the simplest ‘realistic’ queue
Poisson arrivals and CONSTANT service times, 1 server, infinite
capacity and population, FIFO.
G/G/3/20/1500/SPF
General arrival and service distributions, 3 servers, 17 queues
(20-3), 1500 total jobs, Shortest Packet First
23
Performance Measures
23
Performance Measures of Interest
We are interested in steady state behavior
Even though it is possible to pursue transient results, it is a significantly more
difficult task.
E[S]: average system (response) time (average time spent in the
system)
E[W]: average waiting time (average time spent waiting in
queue(s))
E[X]: average queue length
E[U]: average utilization (fraction of time that the resources are
being used)
E[R]: average throughput (rate that customers leave the system)
E[L]: average customer loss (rate that customers are lost or
probability that a customer is lost)
Recall the Birth-Death Chain Example
λ0
0
μ1
λ1
1
μ2
λ2
2
At steady state, we obtain
0 0 11 0
In general
μ3
μj-1 j-1
μj
λj
j
μj+
1
0
1 0
1
j 1 j 1 j j j j 1 j 1 0
λj-1
λj-2
j 1
Making the sum equal to 1
...
0
j 1
0 1
1
...
j
1
1
j
0 ... j
0
1 ... j 1
Solution exists if
0 ... j 1
S 1
j 1 1 ... j
26
End of Part 01
26