Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar1 ECSE-4730: Computer Communication Networks (CCN) Network Layer Performance.

Slides:



Advertisements
Similar presentations
Introduction to Queuing Theory
Advertisements

1 Chapter 8 Queueing models. 2 Delay and Queueing Main source of delay Transmission (e.g., n/R) Propagation (e.g., d/c) Retransmission (e.g., in ARQ)
Queueing Theory: Recap
1 ELEN 602 Lecture 8 Review of Last lecture –HDLC, PPP –TDM, FDM Today’s lecture –Wavelength Division Multiplexing –Statistical Multiplexing –Preliminary.
Queuing Theory For Dummies
ECS 152A Acknowledgement: slides from S. Kalyanaraman & B.Sikdar
Performance analysis for high speed switches Lecture 6.
1 Performance Evaluation of Computer Networks Objectives  Introduction to Queuing Theory  Little’s Theorem  Standard Notation of Queuing Systems  Poisson.
Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar1 ECSE-4730: Computer Communication Networks (CCN) Network Layer Performance.
Data Communication and Networks Lecture 13 Performance December 9, 2004 Joseph Conron Computer Science Department New York University
1 Queueing Theory H Plan: –Introduce basics of Queueing Theory –Define notation and terminology used –Discuss properties of queuing models –Show examples.
Little’s Theorem Examples Courtesy of: Dr. Abdul Waheed (previous instructor at COE)
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4670: Computer Communications Netwoks Exam 2: Solutions Time: 75 min (strictly enforced)
Module 2.0: Modeling of Network Components. Queueing theory  Basics : average number of packets 1/  : mean service time per packet [s] arriving per.
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2012 (Term 112)
Queueing Theory.
7/3/2015© 2007 Raymond P. Jefferis III1 Queuing Systems.
Queuing Networks: Burke’s Theorem, Kleinrock’s Approximation, and Jackson’s Theorem Wade Trappe.
Introduction to Queuing Theory. 2 Queuing theory definitions  (Kleinrock) “We study the phenomena of standing, waiting, and serving, and we call this.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 2 Shivkumar Kalyanaraman:
Internet Queuing Delay Introduction How many packets in the queue? How long a packet takes to go through?
Lesson 11: Solved M/G/1 Exercises
Lesson 9: Advanced M/G/1 Methods and Examples Giovanni Giambene Queuing Theory and Telecommunications: Networks and Applications 2nd edition, Springer.
Introduction to Queuing Theory
Queueing Theory I. Summary Little’s Law Queueing System Notation Stationary Analysis of Elementary Queueing Systems  M/M/1  M/M/m  M/M/1/K  …
Introduction to Queuing Theory
Copyright ©: Nahrstedt, Angrave, Abdelzaher, Caccamo1 Queueing Systems.
Probability Review Thinh Nguyen. Probability Theory Review Sample space Bayes’ Rule Independence Expectation Distributions.
CS433 Modeling and Simulation Lecture 13 Queueing Theory Dr. Anis Koubâa 03 May 2009 Al-Imam Mohammad Ibn Saud University.
MIT Fun queues for MIT The importance of queues When do queues appear? –Systems in which some serving entities provide some service in a shared.
Introduction to Operations Research
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
Introduction to Queueing Theory
Network Design and Analysis-----Wang Wenjie Queueing System IV: 1 © Graduate University, Chinese academy of Sciences. Network Design and Analysis Wang.
Queuing Theory Basic properties, Markovian models, Networks of queues, General service time distributions, Finite source models, Multiserver queues Chapter.
1 Queueing Theory Frank Y. S. Lin Information Management Dept. National Taiwan University
Queueing Theory What is a queue? Examples of queues: Grocery store checkout Fast food (McDonalds – vs- Wendy’s) Hospital Emergency rooms Machines waiting.
TexPoint fonts used in EMF.
1 Elements of Queuing Theory The queuing model –Core components; –Notation; –Parameters and performance measures –Characteristics; Markov Process –Discrete-time.
Modeling and Analysis of Computer Networks
M/M/1 queue λn = λ, (n >=0); μn = μ (n>=1) λ μ λ: arrival rate
CS433 Modeling and Simulation Lecture 12 Queueing Theory Dr. Anis Koubâa 03 May 2008 Al-Imam Mohammad Ibn Saud University.
1 Chapters 8 Overview of Queuing Analysis. Chapter 8 Overview of Queuing Analysis 2 Projected vs. Actual Response Time.
yahoo.com SUT-System Level Performance Models yahoo.com SUT-System Level Performance Models8-1 chapter11 Single Queue Systems.
State N 2.6 The M/M/1/N Queueing System: The Finite Buffer Case.
The M/M/ N / N Queue etc COMP5416 Advanced Network Technologies.
CS352 - Introduction to Queuing Theory Rutgers University.
Network Design and Analysis-----Wang Wenjie Queueing Theory II: 1 © Graduate University, Chinese academy of Sciences. Network Design and Performance Analysis.
Computer Networking Queueing (A Summary from Appendix A) Dr Sandra I. Woolley.
Maciej Stasiak, Mariusz Głąbowski Arkadiusz Wiśniewski, Piotr Zwierzykowski Model of the Nodes in the Packet Network Chapter 10.
1 Queuing Delay and Queuing Analysis. RECALL: Delays in Packet Switched (e.g. IP) Networks End-to-end delay (simplified) = End-to-end delay (simplified)
Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.
COMT 4291 Queuing Analysis COMT Call/Packet Arrival Arrival Rate, Inter-arrival Time, 1/ Arrival Rate measures the number of customer arrivals.
Chap 2 Network Analysis and Queueing Theory 1. Two approaches to network design 1- “Build first, worry later” approach - More ad hoc, less systematic.
Queueing Fundamentals for Network Design Application ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Random Variables r Random variables define a real valued function over a sample space. r The value of a random variable is determined by the outcome of.
Mohammad Khalily Islamic Azad University.  Usually buffer size is finite  Interarrival time and service times are independent  State of the system.
Al-Imam Mohammad Ibn Saud University
Queueing Theory What is a queue? Examples of queues:
Internet Queuing Delay Introduction
ECE 358 Examples #1 Xuemin (Sherman) Shen Office: EIT 4155
Queueing Theory Carey Williamson Department of Computer Science
System Performance: Queuing
TexPoint fonts used in EMF.
Queueing Theory 2008.
Carey Williamson Department of Computer Science University of Calgary
CSE 550 Computer Network Design
Queueing Theory Frank Y. S. Lin Information Management Dept.
Course Description Queuing Analysis This queuing course
Presentation transcript:

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar1 ECSE-4730: Computer Communication Networks (CCN) Network Layer Performance Modeling & Analysis Shivkumar Kalyanaraman: Biplab Sikdar: Network Layer Performance Modeling & Analysis Shivkumar Kalyanaraman: Biplab Sikdar:

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar2 Overview Network Layer Performance Modeling & Analysis –Part I: Essentials of Probability –Part II: Inside a Router –Part III: Network Analysis

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar3 Network Layer Performance Modeling & Analysis: Part II Inside a Router Basic Single Queue Model Poisson Arrival Model The M/M/1 Queue Read any of the queuing theory references, e.g. Schwartz (Sections 2.1-3), Molloy, Kleinrock.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar4 Queuing in the Network Layer at a Router

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar5 Basic Single Queue Model Classical queuing theory can be applied to an output link in a router.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar6 Basic Single Queue Model For example, a 56 kbps transmission line can “serve” 1000-bit packets at a rate of

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar7 Applications of Queuing Analysis Outside of Networking Checkout line in a supermarket Waiting for a teller in a bank Batch jobs waiting to be processed by the CPU

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar8 Applications of Queuing Analysis Outside of Networking “That’s the way the whole thing started, Silly but it’s true, Thinking of a sweet romance Beginning in a queue.” -G. Gouldman, “Bus Stop” The Hollies

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar9 The Poisson Arrival Model A Poisson process is a sequence of events “randomly spaced in time”

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar10 The Poisson Arrival Model Examples –Customers arriving to a bank –Packets arriving to a buffer The rate λ of a Poisson process is the average number of events per unit time (over a long time).

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar11 Properties of a Poisson Process For a length of time t the probability of n arrivals in t units of time is

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar12 Properties of a Poisson Process For 2 disjoint (non-overlapping) intervals, (s 1, s 2 ) and (s 3, s 4 ), (i.e. s 1 < s 2 s 3 < s 4 ), the number of arrivals in (s 1, s 2 ) is independent of the number of arrivals in (s 3, s 4 )

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar13 Interarrival Times of a Poisson Process Pick an arbitrary starting point in time (call it 0). Let= the time until the next arrival

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar14 Interarrival Times of a Poisson Process So,the time until the first arrival, Has an exponential distribution!

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar15 Interarrival Times of a Poisson Process Let = the length of time between the first and second arrival. We can show that i.e. is exponential and independent of !

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar16 Interarrival Times of a Poisson Process Similarly define as the time between the second and third arrival;as the time between the third and fourth arrival;… The random variables,,, … are called the interarrival times of the Poisson process

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar17 Interarrival Times of a Poisson Process The interarrival time random variables,,, … –Are (pair-wise) independent. –Each has an exponential distribution with mean 1/λ.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar18 The M/M/1 Queue An M/M/1 queue has –Poisson arrivals (with rate λ) –Exponential service times (with mean 1/μ, so μ is the “service rate”). – One (1) server –An infinite length buffer The M/M/1 queue is the most basic and important queuing model.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar19 Queuing Notation “M/M/1” is a special case of more general (Kendall) notation: X/Y/m/k, where X is a symbol representing the interarrival process –M = Poisson (exponential interarrival times, ) –D = Deterministic (constant ).

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar20 Queuing Notation Y is a symbol representing the service distribution M = exponential, D = deterministic G = General (or arbitrary). m = number of servers k = number of buffer slots (omitted when k = )

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar21 Aside: The D/D/1 Queue The D/D/1 queue has –Deterministic arrivals (periodic with period = 1/λ). –Deterministic service times (each service takes exactly 1/μ). –As well as 1 server and an infinite length buffer.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar22 Aside: The D/D/1 Queue If λ < μ then there is no waiting in a D/D/1 queue. Randomness is a major cause of delay in a network node!

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar23 State Analysis of an M/M/1 Queue Let n be the state of the system = the number of packets in the system (including the server). Let p n be the steady state probability of finding n customers waiting in the system (including the server).

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar24 State Analysis of an M/M/1 Queue How to find p n ? The state diagram:

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar25 State Analysis of an M/M/1 Queue If the system is stable (i.e. p n 0 for each n), then in a steady state it will drift back and forth across the dotted line. So, the number of transitions from left to right = the number of transitions from right to left.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar26 State Analysis of an M/M/1 Queue Thus we obtain the balance equations

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar27 State Analysis of an M/M/1 Queue Lets solve the balance equations: For n = 0 we get If we let, this becomes

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar28 State Analysis of an M/M/1 Queue Similarly And if general

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar29 State Analysis of an M/M/1 Queue We have for n =1,2,3,... We need to solve for p 0, so we need one more equation. Use We obtain {

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar30 State Analysis of an M/M/1 Queue So we must have and

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar31 State Analysis of an M/M/1 Queue Note that requiring ρ < 1 for stability (i.e. λ < ) makes intuitive sense. Also ρ=1-ρ 0 = probability that the queuing system is NOT empty = probability the server is working

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar32 State Analysis of an M/M/1 Queue So ρ is sometimes called the “server utilization” Finally note that p n = (1- ρ)p n, n = 0,1,2,3,… is a geometric distribution

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar33 The Finite Buffer Case: M/M/1/N Infinite buffer assumption is unrealistic in practice. N = total number of buffer slots (including server). New state diagram:

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar34 The Finite Buffer Case: M/M/1/N Get the same balance equations, but now only for n = 0,1,2,…,N - 1 with N <. So as before, but we get a different p 0.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar35 The Finite Buffer Case: M/M/1/N From for n = 0,1,2,…, N < and = 1 we get So

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar36 The Finite Buffer Case: M/M/1/N Note that this holds for any. No need to assume ρ < 1. We always have the stability in the finite buffer case.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar37 Blocking Probability and the Right Size Buffer So in the finite buffer case, Note that P N is the probability that the buffer is full at an arbitrary point in time.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar38 Blocking Probability and the Right Size Buffer Since arrivals are independent of buffer state, we have P N = P B = probability an arriving packet is turned away due to a full buffer. P B is called blocking probability.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar39 Blocking Probability and Buffer Size P B is very important! We can use P B to choose the correct buffer size. Example: For ρ= 0.5, p N > for N 18, while p N < for N 19.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar40 Blocking Probability and Buffer Size Thus, if we desire a blocking probability less than 10 -6, we need a buffer capable of holding 19 or more packets.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar41 Throughput in the Finite Buffer Case The throughput of any queuing system is the rate at which customers successfully leave the system. For the M/M/1 infinite buffer case, if the system is stable. (Everything that arrives must eventually depart.)

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar42 Throughput in the Finite Buffer Case For the M/M/1/N finite buffer case, (Everything that arrives and is not blocked must eventually depart.)

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar43 Throughput in the Finite Buffer Case Alternate way to compute throughput of M/M/1/N: Look at the output side. P (server is busy) = When the server is busy, the output rate = when the sever is idle, the output rate = 0 So the average rate =

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar44 Aside: Derivation of P N = P B Using Throughput Equating our two formulas for we get Solving for P B we get Isn’t that neat?

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar45 Approximation of a Finite Buffer System by the Infinite Buffer Model For a infinite buffer, For a finite buffer, For ρ = 0.8 and N = 16 packets, these probabilities differ by less than 2.3% For ρ = 0.8 and N = 32, the difference is only 0.06%

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar46 Approximation of a Finite Buffer System by the Infinite Buffer Model The infinite buffer model is a very good approximation of a finite buffer system. Even for moderate buffer sizes!

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar47 How Long is that Line? Lets look again at the M/M/1 queuing system. n = the number in the system (including the server) So the average number in the system is

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar48 Little’s Formula and Queuing Delay Let T = time spent by a customer in a queuing system (waiting and being served). E(T) = the average delay for a customer.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar49 Little’s Formula and Queuing Delay Little’s Formula says where λ is the “arrival rate for customers eventually served” (which we called ) Little’s Formula holds for very general queuing systems (not just M/M/1). Even whole networks!

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar50 Little’s Formula and Queuing Delay Little’s Formula is either deep of obvious. Intuition: Pick a “typical customer” When it arrives to the queuing system, it should find E(n) customers waiting.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar51 Little’s Formula and Queuing Delay When it leaves the system, it has been in the system for E(T). Thus λE(T) customers should have arrived during its time in the system. In steady state, the average number of customers left behind on the departure should equal the average number found on the arrival, i.e. λE(T) = E(n)

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar52 Little’s Formula and Queuing Delay Let’s apply Little to the M/M/1 queue E(T) is measured in units of time. Sometimes it is more convenient to consider which is unitless

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar53 Little’s Formula and Queuing Delay Sometimes we consider the waiting time W, i.e. the time spent waiting in the queue (not in service). So,

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar54 Single Link Example Poisson packet arrivals with rate λ = 2000 p/s Fixed link capacity C = Mb / s (T1 Carrier rate).

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar55 Single Link Example We approximate the packet length distribution by an exponential with mean L = 515 b/p Thus the service time is exponential with mean i.e. packets are served at a rate of

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar56 Single Link Example Using our formulas for an M/M/1 queue So and

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar57 Other Queuing Models There are many other important queuing models which are useful in networking. M/M/k for k>1. Multiple servers –Good model of a link which is made up of multiple channels, either physically of through multiplexing (e.g. a T1 carrier is typically time division multiplexed with k = 24). –Has worse performance at lower loads than M/M/1 with same total capacity.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar58 Other Queuing Models M/M/k/k for k 1. One or more servers, no buffers (except one in each server). –Important model in circuit switched networks. –Models a trunk line with k circuits available.

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar59 Other Queuing Models –Any customer (a call) which doesn’t get a circuit is blocked (gets a busy signal). –Blocking probability is given by the Erlang B (or Erlang Loss) Formula

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar60 Other Queuing Models M/G/1. Arbitrary service (packet length) distribution. –Can still compute the mean number in the system via the Pollaczek-Khinchine (P-K) Formula

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar61 Other Queuing Models where is the variance of the service time distribution. Again, variablility (randomness) causes delay. Can apply Little’s Formula to get the mean delay

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar62 Other Queuing Models M/D/1. Deterministic service times (packet length). –Special case of M/G/1 with –Under heavy load ( ), M/D/1 has half the delay of an M/M/1 –This is one motivation for a fixed- packet-length system like ATM

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar63 Other Queuing Models Can also model and analyze other queuing systems –With priority –With more general arrival process –With “vacations” –Many others

Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar64 Other Queuing Models See Schwartz (Ch. 2), Kleinrock (Vol. I & II) or take ECSE- 6820/DSES-6820, Queuing (sic) Systems & Applications Queuing theory is also used in analysis of Operating Systems, e.g. in CSCI-6140