CDA 6530 Performance Models of Computers and Networks

  • Slides: 31
Download presentation
CDA 6530: Performance Models of Computers and Networks Chapter 6: Elementary Queuing Theory

CDA 6530: Performance Models of Computers and Networks Chapter 6: Elementary Queuing Theory

Definition q Queuing system: q q a buffer (waiting room), service facility (one or

Definition q Queuing system: q q a buffer (waiting room), service facility (one or more servers) a scheduling policy (first come first serve, etc. ) We are interested in what happens when a stream of customers (jobs) arrive to such a system q q throughput, sojourn (response) time, q q q Service time + waiting time number in system, server utilization, etc. 2

Terminology q A/B/c/K queue A - arrival process, interarrival time distr. q B -

Terminology q A/B/c/K queue A - arrival process, interarrival time distr. q B - service time distribution q c - no. of servers q K - capacity of buffer q q Does not specify scheduling policy 3

Standard Values for A and B q q q M - exponential distribution (M

Standard Values for A and B q q q M - exponential distribution (M is for Markovian) D - deterministic (constant) GI; G - general distribution M/M/1: most simple queue M/D/1: expo. arrival, constant service time M/G/1: expo. arrival, general distr. service time 4

Some Notations q q q Cn: custmer n, n=1, 2, an: arrival time of

Some Notations q q q Cn: custmer n, n=1, 2, an: arrival time of Cn dn: departure time of Cn ®(t): no. of arrivals by time t (t): no. of departure by time t N(t): no. in system by time t q N(t)=®(t)- (t) 5

®(t) q Average arrival rate (from t=0 to now): q ¸t = ®(t)/t 6

®(t) q Average arrival rate (from t=0 to now): q ¸t = ®(t)/t 6

Little’s Law q q q (t): total time spent by all customers in system

Little’s Law q q q (t): total time spent by all customers in system during interval (0, t) Tt: average time spent in system during (0, t) by customers arriving in (0, t) Tt = (t)/®(t) Nt: average no. of customers in system during (0, t) q q For a stable system, Nt= ¸t Tt q q Nt = (t)/t Remmeber ¸t = ®(t)/t For a long time and stable system N=¸T Regardless of distributions or scheduling policy 7

Utilization Law for Single Server Queue X: service time, mean T=E[X] q Y: server

Utilization Law for Single Server Queue X: service time, mean T=E[X] q Y: server state, Y=1 busy, Y=0 idle q ½: server utilization, ½ = P(Y=1) q Little’s Law: N = ¸ E[X] q While: N = P(Y=1)¢ 1 + P(Y=0)¢ 0 = ½ q Thus Utilization Law: ½ = ¸ E[X] Q: What if the system includes the queue? q 8

Internet Queuing Delay Introduction q q How many packets in the queue? How long

Internet Queuing Delay Introduction q q How many packets in the queue? How long a packet takes to go through? 9

The M/M/1 Queue q An M/M/1 queue has q Poisson arrivals (with rate λ)

The M/M/1 Queue q An M/M/1 queue has q Poisson arrivals (with rate λ) q q q Exponential time between arrivals 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 for network analysis 10

State Analysis of M/M/1 Queue q N : number of customers in the system

State Analysis of M/M/1 Queue q N : number of customers in the system (including queue + server) q Steady state q q q ¼n defined as ¼n=P(N=n) = / : Traffic rate (traffic intensity) State transition diagram 11

q q we can use ¼Q = 0 and ¼i = 1 We can

q q we can use ¼Q = 0 and ¼i = 1 We can also use balance equation 12

State Analysis of M/M/1 Queue q # of transitions = # of transitions ¼n

State Analysis of M/M/1 Queue q # of transitions = # of transitions ¼n are probabilities: : prob. the server is working (why is called “server utilization”) 13

State Analysis of M/M/1 Queue q N: avg. # of customers in the system

State Analysis of M/M/1 Queue q N: avg. # of customers in the system 14

M/M/1 Waiting Time q q Xn: service time of n-th customer, Xn =st X

M/M/1 Waiting Time q q Xn: service time of n-th customer, Xn =st X where X is exponential rv Wn: waiting time of n-th customer q q q Not including the customer’s service time Tn: sojourned time Tn =Wn +Xn When ½ < 1, steady state solution exists and Xn, Wn, Tn X, W, T q q Q: E[W]? 15

State Analysis of M/M/1 Queue q W: waiting time for a new arrival :

State Analysis of M/M/1 Queue q W: waiting time for a new arrival : service time of i-th customer : remaining service time of the customer in service Exponential r. v. with mean 1/ due to memoryless property of expo. Distr. q T: sojourn (response) time 16

Alternative Way for Sojourn Time Calculation q q We know that E[N] = ½/(1

Alternative Way for Sojourn Time Calculation q q We know that E[N] = ½/(1 -½) We know arrival rate ¸ Then based on Little’s Law N=¸T E[T]=E[N]/¸ = 1/(¹-¸) 17

M/M/1 Queue Example q q q n n n A router’s outgoing bandwidth is

M/M/1 Queue Example q q q n n n A router’s outgoing bandwidth is 100 kbps Arrival packet’s number of bits has expo. distr. with mean number of 1 kbits Poisson arrival process: 80 packets/sec How many packets in router expected by a new arrival? What is the expected waiting time for a new arrival? What is the expected access delay (response time)? What is the prob. that the server is idle? What is P( N > 5 )? Suppose you can increase router bandwidth, what is the minimum bandwidth to support avg. access delay of 20 ms? 18

Sojourn Time Distribution q q T’s pdf is denoted as f. T(t), t¸ 0

Sojourn Time Distribution q q T’s pdf is denoted as f. T(t), t¸ 0 T = X 1 + X 2 + +Xn + X Given there are N=n customers in the system q Then, T is sum of n+1 exponential distr. q q q T is (n+1)-order Erlang distr. When conditioned on n, the pdf of T (n+1 order Erlang) is denoted as f. T|N(t|n) 19

Sojourn Time Distribution q Remove condition N=n: q Remember P(N=n) = ¼n = (1

Sojourn Time Distribution q Remove condition N=n: q Remember P(N=n) = ¼n = (1 -½)½n Thus, T is exponential distr. with rate (¹-¸) 20

M/M/1/K Queue q q q Arrival: Poisson process with rate ¸ Service: exponential distr.

M/M/1/K Queue q q q Arrival: Poisson process with rate ¸ Service: exponential distr. with rate ¹ Finite capacity of K customers q q Customer arrives when queue is full is rejected Model as B-D process N(t): no. of customers at time t q State transition diagram q 21

Calculation of ¼ 0 q Balance equation: q ¼i=½¼i-1 = ½i¼ 0, i=1, ,

Calculation of ¼ 0 q Balance equation: q ¼i=½¼i-1 = ½i¼ 0, i=1, , K q If ¸ ¹: q If ¸=¹: 22

E[N] q If ¸ ¹: q If ¸=¹: 23

E[N] q If ¸ ¹: q If ¸=¹: 23

Throughput q Throughput? When not idle = ¹ q When idle = 0 q

Throughput q Throughput? When not idle = ¹ q When idle = 0 q Throughput = (1 -¼ 0)¹ +¼ 0¢ 0 q When not full q When full q q q = ¸ (arrive pass) = 0 (arrive drop) Prob. Buffer overflow = ¼K Throughput = (1 -¼K)¸ +¼K¢ 0 24

Sojourn Time q One way: T = X 1+X 2+ +Xn if there are

Sojourn Time q One way: T = X 1+X 2+ +Xn if there are n customers in (n·K) q q Doable, but complicated Another way: Little’s Law N=¸T q The ¸ means actual throughput q 25

M/M/c Queue q c identical servers to provide service Model as B-D process, N(t):

M/M/c Queue q c identical servers to provide service Model as B-D process, N(t): no. of customers State transition diagram: q Balance equation: q q 26

q Solution to balance equation: q Prob. a customer has to wait (prob. of

q Solution to balance equation: q Prob. a customer has to wait (prob. of queuing) 27

M/M/1 Queue q Infinite server (delay server) q Each user gets its own server

M/M/1 Queue q Infinite server (delay server) q Each user gets its own server for service No waiting time q Balance equation: q why? 28

29

29

PASTA property q q q PASTA: Poisson Arrivals See Time Average Meaning: When a

PASTA property q q q PASTA: Poisson Arrivals See Time Average Meaning: When a customer arrives, it finds the same situation in the queueing system as an outside observer looking at the system at an arbitrary point in time. N(t): system state at time t Poisson arrival process with rate ¸ M(t): system at time t given that an arrival occurs in the next moment in (t, t+ t) 30

q If not Poisson arrival, then not correct 31

q If not Poisson arrival, then not correct 31