ppt

advertisement
PhD Course: Performance & Reliability Analysis
of IP-based Communication Networks
Henrik Schiøler, Hans-Peter Schwefel, Mark Crovella, Søren Asmussen
•
Day 1
Basics & Simple Queueing Models(HPS)
•
Day 2
Traffic Measurements and Traffic Models (MC)
•
Day 3
Advanced Queueing Models (HPS)
•
Day 4
Network Models and Application (HS)
•
Day 5
Simulation Techniques (SA)
•
Day 6
Reliability Aspects (HPS,HS)
Organized by HP Schwefel & H Schiøler
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 1
Hans Peter Schwefel
Content
1. Intro & Review of basic stochastic concepts
•
•
Random Variables, Exp. Distributions, Stochastic
Processes
Markov Processes: Discrete Time, Continuous Time, ChapmanKolmogorov Eqs., steady-state solutions
2. Simple Qeueing Models
•
•
•
•
•
Kendall Notation
M/M/1 Queues, Birth-Death processes
Multiple servers, load-dependence, service disciplines
Transient analysis
Priority queues
3. Simple analytic models for bursty traffic
•
•
Bulk-arrival queues
Markov modulated Poisson Processes (MMPPs)
4. MMPP/M/1 Queues and Quasi-Birth Death Processes
Note: this slide-set contains only the outline of the lecture; many formulas and the mathematical
derivations will be presented on the black-board!
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 2
Hans Peter Schwefel
Intro: Packet-Based Transport
• Advantages of Packet-Based Transport (as opposed to circuit switched)
– Flexibility
– Optimal Use of Link Capacities, Multiplex-Gain for bursty traffic
• Drawbacks
– Buffering/Queueing at routers can be necessary
– Delay / Jitter / Packet Loss can occur
– Overhead from Headers (20 Byte IPv4, 20 Byte TCP)
+

queueing
... and it makes performance modeling harder!!
Main motivation for Performance Modeling:
• Network Planning
• Evaluation/optimization of protocols/architectures/etc.
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 3
Hans Peter Schwefel
Challenges in Packet Switched Setting
Challenges in IP networks:
•
•
•
•
•
•
HTTP
L5-7
Multiplexing of packets at nodes (L3)
TCP
L4
Burstiness of IP traffic (L3-7)
L3
IP
Impact of Dynamic Routing (L3)
L2
Link-Layer
Performance impact of transport layer, in particular TCP (L4)
Wide range of applications  different traffic & QoS requirements (L5-7)
Feedback: performance  traffic model, e.g. for TCP traffic, adaptive applications
Challenges in Wireless Networks:
• Wireless link models (channel models)
• MAC & LLC modeling
• RRM procedures
• Mobility models
• Cross layer optimization
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 4
Hans Peter Schwefel
Goal of this course
• Application of stochastic models often advantageous
– Stochastic description of traffic
– Stochastic mobility models
– Use of randomization in protocols (e.g. MAC)
• Goal of the course:
Provide an understanding of a selection of (mainly) stochastic modeling techniques in the
context of network performance & reliability analysis for IP-based networks
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 5
Hans Peter Schwefel
Fundamental concepts I
• Probabilities
– ’Random experiment’ with set of possible results 
– Axiomatic definition on event set ()
• 0Pr(A)1; Pr()=0; Pr(AB)=Pr(A)+Pr(B) if AB= [ A,B() ]
– Conditional probabilities: Pr(A|B)=Pr(AB) / Pr(B)
• Random Variables (RV)
– Definition: X: ; Pr(X=x)=Pr(X-1(x))
– Probability density function f(x), cumulative distribution function F(x)=Pr(Xx),
reliability function (complementary distr. Function) R(x)=1-F(x)=Pr(X>x)
– Expected value, moments, coefficient of variation, covariance
– Relevant Examples, e.g.:
•
•
•
•
number of packets that arrive at the access router in the next hour (discrete)
Buffer occupancy (#packets) in switch x at time y (discrete)
Number of downloads (’mouse clicks’) in the next web session (discrete)
Time until arrival of the next IP packet at a base station (continuous)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 6
Hans Peter Schwefel
Fundamental concepts II: Exponential
Distributions
Important Case: Exponentially distributed RV
•
•
•
•
Single parameter: rate 
Density function f(x)=  exp(- x), x>0
Cdf: F(x)=1-exp(- x), Reliability function: R(x)=exp(- x)
Moments: E{X}=1/ ; Var{X}=1/ 2, C2=1
Important properties:
•
•
Memoryless: Pr(X>x+y | X>x) = exp(- y)
Properties of two indep. exponential RV: X with rate , Y with rate 
– Distribution of min(X,Y): exponential with rate (+)
– Pr(X<Y)= /(+)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 7
Hans Peter Schwefel
Fundamental concepts III: Stochastic Processes
•
Definition of process (Xi) (discrete) or (Nt) (continuous)
•
Simplest type: Xi independent and identically distributed (iid)
•
Relevant Examples:
– Inter-arrival time process: Xi
– Counting Process: n-1
N(t) = max{n | i=1 Xi t}
, alternatively Ni() = N(i) – N([i-1])
Important Example: Poisson Process
• Assume i.i.d. exponential packet inter-arrival times (rate ): Xi:=Ti-Ti-1
• Counting Process: Number of packets Nt until time t
– Pr(Nt=n)= (t)n exp(- t) / n!
•
Properties:
– Merging: arrivals from two independent Poisson processes with rate 1 and 2  Poisson
process with rate (1+ 2)
– Thinning: arrivals from a Poisson process of rate  are discarded independently with
probability p  Poisson process with rate (1-p) 
– Central Limit Theorem: superposition of n independent processes results in the limit n
in a Poisson process (under some conditions on the processes)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 8
Hans Peter Schwefel
Markov Processes I:Discrete Time
• State-Space: finite or countable infinite, w/o.l.g. E={0,1,2,...,K} (K= also
allowed)
• Transition probabilities: pjk=Pr(transition from state j to state k)
• Xi = RV indicating the state that the Markov process is in in step i
• ’Markov Property’: State in step i only depends on state in step i-1
– Pr(Xi=k)=j [Pr(Xi-1=j)*pjk]
• Computation of state probabilities
– Probability vector i
– Matrix notation for behavior of i
– Steady-state solution
• Assumption here: irreducibility (no transient states), non-periodicity, and
homogenuity
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 9
Hans Peter Schwefel
Markov Processes II: Continuous Time
• State-Space: finite or countable infinite, w/o.l.g. E={0,1,2,...,K} (K= also allowed)
• Transition rates: jk
– Holding time in state j: exponential with rate kj jk
– Transition probability from state j to k: jk / lj jl
• Xt = RV indicating the state that the Markov process is in at time t
• ’Markov Property’: transitions does not depend on previous states
t0<t1<...<tn , i0,i1,...in ,j E
• Computation of state probabilities
– Probability vector (t)
– Matrix notation for behavior of (t) (Chapman Kolmogorov Equations), Generator
Matrix Q
– Steady-state solution
– Transient solution; eigenvalues of Q and convergence speed to steady state
• Assumption again: restrict ourselves to irreducible, homogeneous processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 10
Hans Peter Schwefel
Content
1. Intro & Review of basic stochastic concepts
•
•
Random Variables, Exp. Distributions, Stochastic
Processes
Markov Processes: Discrete Time, Continuous Time, ChapmanKolmogorov Eqs., steady-state solutions
2. Simple Qeueing Models
•
•
•
•
•
Kendall Notation
M/M/1 Queues, Birth-Death processes
Multiple servers, load-dependence, service disciplines
Transient analysis
Priority queues
3. Simple analytic models for bursty traffic
•
•
Bulk-arrival queues
Markov modulated Poisson Processes (MMPPs)
4. MMPP/M/1 Queues and Quasi-Birth Death Processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 11
Hans Peter Schwefel
Queueing Models: Kendall Notation
X/Y/C[/[B][/N]] Queues (example: M/M/1, GI/M/2/10, M/M/10//10, ...)
• X: Specifies Arrival Process
–
–
–
–
•
•
•
M=Markovian Poisson
GI=General Independent iid
ME=Matrix Exponential
MMPP=Markov Modulated Poisson Process


Finite buffer
(size B)
Scope here: Point-process
models as opposed to fluidflow queues
Y: Specifies Service Process (M,G(I),...)
C: Number of Servers
B: size of finite waiting room (buffer) [also counting the packet in service]
– If not specified: B=
•
N: number of overall customers in system
– unlimited, if not specified
•
Often also specified: service discipline
–
–
–
–
FIFO: First-In-First-Out (default)
Processor Sharing: PS
Last-in-first-out LIFO (preemptive or non-preemptive)
Earliest Deadline First (EDF), etc.
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 12
Hans Peter Schwefel
M/M/1 queue
•
•
•
•



Infinite buffer
Poisson arrival of packets (first ’M’  Markovian) with rate 
Exponentially distributed service times of rate  (second ’M’)
Single Server (1)
FIFO service discipline
Qt = Number of packets in system is continuous Markov Process
Important Parameter:
•
Utilization, = /  : if 1, instable case (no steady-state q.l.d)
Performance Parameters
•
•
•
•
Queue-length distribution: (t) , steady-state limit: =lim (t) (if <1)
Queue-length that an arriving customer sees
Waiting/System time distribution
Buffer-Overflow Probability for level B = Pr(arriving customers sees buffer occupancy B or
higher)
•
First Passage Time Distribution, duration of busy periods
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 13
Hans Peter Schwefel
M/M/1 queue: Performance






• Birth-Death Process
– Probability of i packets in queue [using Chapman-Kolmogorov Equations]
i := Pr(Q=i) = (1-)* i , where = /  <1
– Probability of idle server: 0 = (1-)
– Average Queue-length
– Average Delay
– Buffer Overflow Probabilities (PASTA principle)
– Transient Queue-length Probabilities
– Mean First Passage Times
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 14
Hans Peter Schwefel
General Birth-Death Processes
0
1
1
2
2
3
• Steady-State Probabilities
Derived Models:
•
•
•
•
M/M/1/B, M/M/1//N
M/M/c
Load-dependent services, discouraged arrivals
FIFO vs LIFO vs PS service discipline
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 15
Hans Peter Schwefel
The circuit switched scenario
•
•
•
•
K channels
Users allocate one channel per call for certain call duration
If all channels are allocated additional starting calls are blocked
How many channels are necessary to achieve a call certain maximal
blocking probability?
Common Model Assumptions:
• Calls are arriving according to a Poission Process (justified for large user
population, limit theorems for stochastic processes) with rate 
• Call durations are exponentially distributed with mean T (okay for voice
calls)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 16
Hans Peter Schwefel
Computation of blocking probabilities:
M/M/K/K model, Erlang-B
formula



K
1/T
2/T
3/T
K/T
• Finite Birth-Death Process:
– Probability of i calls active
i := Pr(n=i) =  0 (T)i /i! , i=1,…,K
where  0 = 1/[(T)i /i!] (sum taken over i=0 to K)
– Probability of blocked call:
p(B) = pK = p0 (T)K /K!
[also known as Erlang-B formula]
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 17
Hans Peter Schwefel
Exercise 1:
Use MATLAB to... (unless specified otherwise, use mu=1 for convenience)
1. (optional) Plot the Queue-length distribution for the M/M/1/K queue with rho in {0.5, 0.9, 1.0, 1.1,
2.0}. Plot a curve of the dropping probability for rho in [0;5], discuss its behavior for rho>1.
2. Implement the Q matrix for an M/M/1/K queue with rho=0.6, K=5, and plot transient probabilities for
pi_0(t), given that the queue is empty at t=0.
3. One router in a network (to be modelled as M/M/1 queue) is apparently creating large delays. The
admin decides to add a second routing processor to it. In principle, the admin now has the choice to
upgrade to an M/M/2 system, but he could also configure separate queues for the new routing
module (packets will be randomly directed to one of the two queues); alternatively, he could replace
the routing processor with another one that is twice as fast. Which solution is performance-wise
better? Plot the ratio of the mean system times for varying arrival rate lambda.
4. DiffServ-like scenario: Assume a single server (rate mu) at which two types of packets, High
priority and low-priority, arrive (according to a Poisson process with rate lambda_l and lambda_h).
Two queues are used to store the packets, but low-priority packets are only serviced when there are
no high-priority packets. Also, an arrival of a high-priority packet preempts a currently ongoing
service of a low-priority packet.
–
–
–
Draw the Markov chain for such priority model for buffer-sizes 2 packets for HP, 3 packets for LP.
Implement a MTALB function which allows to set-up the Q matrix of the Markov chain for arbitrary lambda_I
and mu, and for arbitrary buffer-size for the low-priority packets (the high priority buffer is fixed to size 2).
Compute the steady-state probability vector plus the loss probabilities for varying lambda_h.
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 18
Hans Peter Schwefel
Content
1. Intro & Review of basic stochastic concepts
•
•
Random Variables, Exp. Distributions, Stochastic
Processes
Markov Processes: Discrete Time, Continuous Time, ChapmanKolmogorov Eqs., steady-state solutions
2. Simple Qeueing Models
•
•
•
•
•
Kendall Notation
M/M/1 Queues, Birth-Death processes
Multiple servers, load-dependence, service disciplines
Transient analysis
Priority queues
3. Simple analytic models for bursty traffic
•
•
Bulk-arrival queues
Markov modulated Poisson Processes (MMPPs)
4. MMPP/M/1 Queues and Quasi-Birth Death Processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 19
Hans Peter Schwefel
Models for bursty traffic
• Poisson assumption for packet arrivals may be applicable for highly
aggregated traffic (core networks), but otherwise traffic tends to be bursty
– High data rates in ftp download but less activity between downloads
– http: activities after mouse-clicks
– Video streaming: high data rates in frame transmissions
– Interactive Voice: talk and silent periods
• Model Modifications:
– Bulk Arrival processes
– MMPPs
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 20
Hans Peter Schwefel
Bulk Arrival Models
• Queue-length at arrival instances increases not only by 1, but by a
Random Variable B, the bulk-size
• Parameter set of model
– Bulk arrival process, e.g. exponential with rate 
– Bulk-Size distribution: pi (e.g. geometric)
– Service rate (single packet)
• Steady-state solution for mean system time [Chaudhry & Templeton 83]:
E{S} = [ E{B}+E{B2} ] / [2 E{B}  (1-) ]
• E.g. M(B)/M/1 queue with geometrically distributed B
– Graph and Q Matrix for bulk-arrival model
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 21
Hans Peter Schwefel
Markov Modulated Poisson Processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 22
Hans Peter Schwefel
MMPP: Definition
• MMPP defined by
– Generator Matrix Q of modulating process
– Matrix of Poisson Rates L
• Average Packet Rate
• Example: Single-Source ON/OFF model
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 23
Hans Peter Schwefel
Defining Burstiness for ON/OFF sources
• One possibility: Burstiness = Peak Rate of Source p / Average Rate of
Source 
• Slightly modified to give it range 0 (not bursty) to 1 (very bursty):
b:=1-/p
• Investigating burstiness:
– Vary p 
– Keep #packets per ON period  scale ON duration accordingly
– Extreme Cases:
• b=0 (p= ): Poisson arrivals, no burstiness
• b=1 (p= ): Bulk arrivals
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 24
Hans Peter Schwefel
Multiplexed ON/OFF Models
Parameters:
•
N sources, each average rate 
•
During ON periods: peak-rate p
•
Mean duration of ON and OFF times
ON & OFF Times exponential  MMPP representation with N+1 states
(Exercises!)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 25
Hans Peter Schwefel
Content
1. Intro & Review of basic stochastic concepts
•
•
Random Variables, Exp. Distributions, Stochastic
Processes, Poisson Process & CLT
Markov Processes: Discrete Time, Continuous Time, ChapmanKolmogorov Eqs., steady-state solutions
2. Simple Qeueing Models
•
•
•
•
•
Kendall Notation
M/M/1 Queues, Birth-Death processes
Multiple servers, load-dependence, service disciplines
Transient analysis
Priority queues
3. Simple analytic models for bursty traffic
•
•
Bulk-arrival queues
Markov modulated Poisson Processes (MMPPs)
4. MMPP/M/1 Queues and Quasi-Birth Death Processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 26
Hans Peter Schwefel
MMPP/M/1 Queues
• Generator matrix Block-tri-diagonal: Quasi-Birth-Death Process
• Matrix Form of Balance Equations  Matrix Geometric Solution
• Quadratic matrix equation and solution methods
– Simple iteration
– Spectral decomposition
• Performance Parameters
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 27
Hans Peter Schwefel
MMPP/M/1/B Queues
•
•
•
•
•
Finite buffer-space, loss model
Generator matrix
Mixed matrix geometric solution
Approaches to obtain matrix factor S
Performance Parameters (indicate problems with matrix geometric sums)
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 28
Hans Peter Schwefel
Exercises II:
•
•
A network operator asks you to assist him in dimensioning his access router. The operator
expects that during the daily busy hours, the router is used by N=10 users, each of them
independently generates traffic according to an ON/OFF process with exponential ON and OFF
periods. On periods have mean ON=10s with a Poisson packet rate of p=6pck/sec for a single
user. OFF periods show mean Z=20 seconds. The aggregated traffic stream of N=10 users can
be described by an MMPP with K=11 states.
a.
Determine the Q and the L matrix of the MMPP (in MATLAB).
•
b.
Compute the stationary probability vector pi of the MMPP. What is the average packet rate generated by
the MMPP?
•
c.
•
•
•
•
Determine the queue-length distribution of an MMPP/M/1 queue with service rate nu=30pck/sec via the
following steps.
i. Compute the coefficient matrices A0,A1,A2 for the quadratic matrix equation for the rate matrix R.
ii. Solve the quadratic matrix equation via the simple iterative method from the lecture. Measure the time
that Matlab needs to do so.
iii. (Optional) Use spectral decomposition to solve for R and compare the run-time for that algorithm.
Compare the obtained R matrix with the previous one.
iv. Use R to compute and plot the queue-length probabilities and the average queue-length.
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 29
Hans Peter Schwefel
Summary
1. Intro & Review of basic stochastic concepts
•
•
Random Variables, Exp. Distributions, Stochastic
Processes, Poisson Process & CLT
Markov Processes: Discrete Time, Continuous Time, ChapmanKolmogorov Eqs., steady-state solutions
2. Simple Qeueing Models
•
•
•
•
•
Kendall Notation
M/M/1 Queues, Birth-Death processes
Multiple servers, load-dependence, service disciplines
Transient analysis
Priority queues
3. Simple analytic models for bursty traffic
•
•
Bulk-arrival queues
Markov modulated Poisson Processes (MMPPs)
4. MMPP/M/1 Queues and Quasi-Birth Death Processes
PHD Course: Performance & Reliability Analysis, Day 1, Spring04
Page 30
Hans Peter Schwefel
Download