117
Queues Stability Average Computable queues Networks Multiclass networks Performance Evaluation : Contention and Queues Stochastic Modeling of Computer Systems MOSIG Master 2 Jean-Marc Vincent Laboratoire LIG, projet Inria-Mescal UniversitéJoseph Fourier [email protected] 2012 October 19 1 / 49 Performance Evaluation : Contention and Queues

Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Performance Evaluation : Contention and QueuesStochastic Modeling of Computer Systems

MOSIG Master 2

Jean-Marc Vincent

Laboratoire LIG, projet Inria-MescalUniversitéJoseph Fourier

[email protected]

2012 October 19

1 / 49Performance Evaluation : Contention and Queues

Page 2: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 QueuesCharacterization

2 Stability

3 Average

4 Computable queues

5 Networks

6 Multiclass networks

2 / 49Performance Evaluation : Contention and Queues

Page 3: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 4: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 5: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 6: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 7: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 8: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Queues

Queues are among simplest dynamic systems, but are still the source ofmany open problems.Tasks do not have any constraints, sizes and arrival times are oftenindependent.

3 / 49Performance Evaluation : Contention and Queues

Page 9: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kendall’s notation

Rejection/blocking policy

Service rate µ

Arrival Process

Number of servers K

Queue total capacity CService Process

arrival rate λ

Notation : A/S/K/C/Disc

A : arrival process

B : service process

K : number of servers

C : total queue capacity (including currently served customers)

Disc : Service discipline (FIFO, LIFO, PS, Quantum, Priorities,...)

4 / 49Performance Evaluation : Contention and Queues

Page 10: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

State variables

User variables

Input rate λ or inter-arrival δ

Service time σ or S (service rate µ)

Waiting time W

Response time R (in some books W )

Rejection probability

Resource variables

Resource utilisation (offered load) ρ

Queue occupation N

System availability

5 / 49Performance Evaluation : Contention and Queues

Page 11: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

One Server Queue load

5

δ

δδδδ δ

σ

a

d d d d2 3 4 5d1

a a a a1 2 3 4 5 a6

W(t)

0

32 4 5

0t

61

6 / 49Performance Evaluation : Contention and Queues

Page 12: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Lindley’s formula (2)

Wn is the waiting time of the n-th task. It is a dynamical system of the formWn = ϕ(Wn−1,Xn) with Xn = σn−1 − δn and ϕ defined by the

Lindley’s equation:

Wn = max (Wn−1 + Xn, 0) .

- FIFO scheduling- Non-linear evolution equation

7 / 49Performance Evaluation : Contention and Queues

Page 13: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 Queues

2 Stability

3 Average

4 Computable queues

5 Networks

6 Multiclass networks

8 / 49Performance Evaluation : Contention and Queues

Page 14: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Stability of the G/G/1 queue

Wn = max (Wn−1 + Xn, 0) ,

= max (max(Wn−2 + Xn−1, 0) + Xn, 0) ,

= max (Wn−2 + Xn−1 + Xn,Xn, 0) ,

= max (Wn−3 + Xn−2 + Xn−1 + Xn,Xn−1 + Xn,Xn, 0) ,

= max (W0 + X1 + · · ·+ Xn−1 + Xn, · · · ,Xn−1 + Xn,Xn, 0) ,

= max (X1 + · · ·+ Xn−1 + Xn, · · · ,Xn−1 + Xn,Xn, 0) ,

∼ max (Xn + · · ·+ X2 + X1, · · · ,X2 + X1,X1, 0) ,

def= Mn.

Wn =st Mn = max (Mn−1,X1 + · · ·+ Xn) .

9 / 49Performance Evaluation : Contention and Queues

Page 15: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Stability of the G/G/1 queue (2)

Wn =st Mn = max (Mn−1,X1 + · · ·+ Xn) .

Mn is a non-decreasing sequenceEither Mn −→ M∞ or Mn −→ +∞

Stability

EX = E(σ − δ) < 0 The system is Stable

M∞ =st max(M∞ + X , 0).

Functional equation on the distribution

P(M∞ < x) def= F (x) =

∫F (x − u)dFX (u).

Condition : Eσ < Eδ or λ < µ

EX = E(σ − δ) > 0 The system is Unstable

Depends only on service and inter-arrival expectation

10 / 49Performance Evaluation : Contention and Queues

Page 16: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Loynes’ scheme

Theorem

Wn 6st Wn+1 in a G/G/1 queue, initialy empty.

Proof. done by a backward coupling known as the Loynes’ scheme.Construct on a common probability space two trajectories by going backwardin time: S1

i−n(ω) = S2i−n−1(ω) with distribution Si and T 1

i−n(ω) = T 2i−n−1(ω),

with distribution Ti − Tn+1 for all 0 6 i 6 n + 1 and S1−n−1(ω) = 0.

By construction, W 10 =st Wn and W 2

0 =st Wn+1. Also, it should be clear that0 = W 1

−n+1(ω) 6 W 2−n+1(ω) for all ω.

This implies W 1−i (ω) 6 W 2

−i (ω) so that Wn 6st Wn+1.

11 / 49Performance Evaluation : Contention and Queues

Page 17: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Loynes’ scheme

Theorem

Wn 6st Wn+1 in a G/G/1 queue, initialy empty.

Proof. done by a backward coupling known as the Loynes’ scheme.Construct on a common probability space two trajectories by going backwardin time: S1

i−n(ω) = S2i−n−1(ω) with distribution Si and T 1

i−n(ω) = T 2i−n−1(ω),

with distribution Ti − Tn+1 for all 0 6 i 6 n + 1 and S1−n−1(ω) = 0.

By construction, W 10 =st Wn and W 2

0 =st Wn+1. Also, it should be clear that0 = W 1

−n+1(ω) 6 W 2−n+1(ω) for all ω.

This implies W 1−i (ω) 6 W 2

−i (ω) so that Wn 6st Wn+1.

11 / 49Performance Evaluation : Contention and Queues

Page 18: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Loynes’ scheme

Theorem

Wn 6st Wn+1 in a G/G/1 queue, initialy empty.

Proof. done by a backward coupling known as the Loynes’ scheme.Construct on a common probability space two trajectories by going backwardin time: S1

i−n(ω) = S2i−n−1(ω) with distribution Si and T 1

i−n(ω) = T 2i−n−1(ω),

with distribution Ti − Tn+1 for all 0 6 i 6 n + 1 and S1−n−1(ω) = 0.

By construction, W 10 =st Wn and W 2

0 =st Wn+1. Also, it should be clear that0 = W 1

−n+1(ω) 6 W 2−n+1(ω) for all ω.

This implies W 1−i (ω) 6 W 2

−i (ω) so that Wn 6st Wn+1.

11 / 49Performance Evaluation : Contention and Queues

Page 19: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Loynes’ scheme

W 10

W 20

0Ti − Tn+1−Tn+1

This has many consequences in terms of existence and uniqueness of astationary (or limit) regime for the G/G/1 queue Baccelli Bremaud, 2002).

12 / 49Performance Evaluation : Contention and Queues

Page 20: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Loynes’ scheme

W 10

W 20

0Ti − Tn+1−Tn+1

This has many consequences in terms of existence and uniqueness of astationary (or limit) regime for the G/G/1 queue Baccelli Bremaud, 2002).

12 / 49Performance Evaluation : Contention and Queues

Page 21: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 Queues

2 Stability

3 Average

4 Computable queues

5 Networks

6 Multiclass networks

13 / 49Performance Evaluation : Contention and Queues

Page 22: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Little’s Formula

At

Nt

Rn

Assumptions

limt→+∞

At

t= λ, lim

t→+∞

1t

∫ t

0Nsds = EN and lim

n→+∞

1n

n∑i=1

Ri = ER,

Little’s Formula

EN = λER.

14 / 49Performance Evaluation : Contention and Queues

Page 23: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Little’s Formula (proof)

d8

Nt

Time

Client

a1 a2 a3 a4 a5 a6 a7 a8 a9

d1 d3 d2 d1 d7 d6 d1

1T

∫ T

0Nsds =

AT

T1

AT

AT∑i=1

Ri .

T →∞ implies EN = λER.

15 / 49Performance Evaluation : Contention and Queues

Page 24: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Little’s Formula (proof)

Client

a1 a2 a3 a4 a5 a6 a7 a8 a9

d1 d3 d2 d1 d7 d6 d1 d8

Nt

Time

1T

∫ T

0Nsds =

AT

T1

AT

AT∑i=1

Ri .

T →∞ implies EN = λER.

15 / 49Performance Evaluation : Contention and Queues

Page 25: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Little’s Formula (proof)

Client

a1 a2 a3 a4 a5 a6 a7 a8 a9

d1 d3 d2 d1 d7 d6 d1 d8

Nt

Time

1T

∫ T

0Nsds =

AT

T1

AT

AT∑i=1

Ri .

T →∞ implies EN = λER.

15 / 49Performance Evaluation : Contention and Queues

Page 26: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 Queues

2 Stability

3 Average

4 Computable queuesSingle server queueLimited capacity

5 Networks

6 Multiclass networks

16 / 49Performance Evaluation : Contention and Queues

Page 27: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

µλ

M/M/1 queue

Infinite capacity

Poisson(λ) arrivals

Exp(µ) service times

FIFO discipline

Definition

ρ = λµ

is the traffic intensity of the queueing system.

17 / 49Performance Evaluation : Contention and Queues

Page 28: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

µλ

M/M/1 queue

Infinite capacity

Poisson(λ) arrivals

Exp(µ) service times

FIFO discipline

Definition

ρ = λµ

is the traffic intensity of the queueing system.

17 / 49Performance Evaluation : Contention and Queues

Page 29: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

Let X (t) the number of clients in the system at time t . X (t) is a birth anddeath process.

n + 1λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ0 1 3 4 n − 1 n

Results for M/M/1 queue

1 Stable if and only if ρ < 12 Clients follow a geometric distribution ∀i ∈ N, πi = (1− ρ)ρi

3 Mean number of clients EX = ρ(1−ρ)

4 Average response time ET = 1µ−λ

18 / 49Performance Evaluation : Contention and Queues

Page 30: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

Let X (t) the number of clients in the system at time t . X (t) is a birth anddeath process.

n + 1λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ0 1 3 4 n − 1 n

Results for M/M/1 queue

1 Stable if and only if ρ < 12 Clients follow a geometric distribution ∀i ∈ N, πi = (1− ρ)ρi

3 Mean number of clients EX = ρ(1−ρ)

4 Average response time ET = 1µ−λ

18 / 49Performance Evaluation : Contention and Queues

Page 31: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

Let X (t) the number of clients in the system at time t . X (t) is a birth anddeath process.

n + 1λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ0 1 3 4 n − 1 n

Results for M/M/1 queue

1 Stable if and only if ρ < 12 Clients follow a geometric distribution ∀i ∈ N, πi = (1− ρ)ρi

3 Mean number of clients EX = ρ(1−ρ)

4 Average response time ET = 1µ−λ

18 / 49Performance Evaluation : Contention and Queues

Page 32: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1

Let X (t) the number of clients in the system at time t . X (t) is a birth anddeath process.

n + 1λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ

λ

µ0 1 3 4 n − 1 n

Results for M/M/1 queue

1 Stable if and only if ρ < 12 Clients follow a geometric distribution ∀i ∈ N, πi = (1− ρ)ρi

3 Mean number of clients EX = ρ(1−ρ)

4 Average response time ET = 1µ−λ

18 / 49Performance Evaluation : Contention and Queues

Page 33: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

M/M/1/C

In reality, buffers are finite: M/M/1/C is a queueing system with rejection.

Rejection

C

µλ

µ

λ

µ

λ

µ

λ

µ

λ

µ0 1 3 4 C − 1

Results for M/M/1/C queue

Geometric distribution with finite state space

π(i) =(1− ρ)ρi

1− ρC+1

19 / 49Performance Evaluation : Contention and Queues

Page 34: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 Queues

2 Stability

3 Average

4 Computable queues

5 NetworksTandem queuesJackson networksOpen networks of M/M/c queues

6 Multiclass networks

20 / 49Performance Evaluation : Contention and Queues

Page 35: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Reversibility

Proposition

An ergodic birth and death process is time-reversible.

Proof

. . .0 1 . ..i−1 i i+1

µi−1 µi+2µ1 µ2µi+1µi

λ0 λ1λi−2 λi−1 λi λi+1

By induction:1 π0λ0 = π1µ1

2 Suppose πi−1λi−1 = πiµi . Thenπi (λi + µi ) = πi+1µi+1 + πi−1λi−1Which gives πiλi = πi+1µi+1.

21 / 49Performance Evaluation : Contention and Queues

Page 36: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Reversibility

Proposition

An ergodic birth and death process is time-reversible.

Proof

. . .0 1 . ..i−1 i i+1

µi−1 µi+2µ1 µ2µi+1µi

λ0 λ1λi−2 λi−1 λi λi+1

By induction:1 π0λ0 = π1µ1

2 Suppose πi−1λi−1 = πiµi . Thenπi (λi + µi ) = πi+1µi+1 + πi−1λi−1Which gives πiλi = πi+1µi+1.

21 / 49Performance Evaluation : Contention and Queues

Page 37: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Reversibility

Proposition

An ergodic birth and death process is time-reversible.

Proof

. . .0 1 . ..i−1 i i+1

µi−1 µi+2µ1 µ2µi+1µi

λ0 λ1λi−2 λi−1 λi λi+1

By induction:1 π0λ0 = π1µ1

2 Suppose πi−1λi−1 = πiµi . Thenπi (λi + µi ) = πi+1µi+1 + πi−1λi−1Which gives πiλi = πi+1µi+1.

21 / 49Performance Evaluation : Contention and Queues

Page 38: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Burke’s theorem

Theorem

The output process of an M/M/s queue is a Poisson process that isindependent of the number of customers in the queue.

Sketch of Proof.

i i+1

µ

λ

X (t) increases by 1 at rate λπi (Poisson process λ). Reverse processincreases by 1 at rate µπi+1= λπi by reversibility.

22 / 49Performance Evaluation : Contention and Queues

Page 39: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Burke’s theorem

Theorem

The output process of an M/M/s queue is a Poisson process that isindependent of the number of customers in the queue.

Sketch of Proof.

i i+1

µ

λ

X (t) increases by 1 at rate λπi (Poisson process λ). Reverse processincreases by 1 at rate µπi+1= λπi by reversibility.

22 / 49Performance Evaluation : Contention and Queues

Page 40: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

λ µ2µ1

Let X1 and X2 denote the number of clients in queues 1 and 2 respectively.

Lemma

X1 and X2 are independent rv’s.

Proof

Arrival process at queue 1 is Poisson(λ) so future arrivals are independent ofX1(t).By time reversibility X1(t) is independent of past departures.Since these departures are the arrival process of queue 2, X1(t) and X2(t)are independent.

23 / 49Performance Evaluation : Contention and Queues

Page 41: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

λ µ2µ1

Let X1 and X2 denote the number of clients in queues 1 and 2 respectively.

Lemma

X1 and X2 are independent rv’s.

Proof

Arrival process at queue 1 is Poisson(λ) so future arrivals are independent ofX1(t).By time reversibility X1(t) is independent of past departures.Since these departures are the arrival process of queue 2, X1(t) and X2(t)are independent.

23 / 49Performance Evaluation : Contention and Queues

Page 42: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

λ µ2µ1

Let X1 and X2 denote the number of clients in queues 1 and 2 respectively.

Lemma

X1 and X2 are independent rv’s.

Proof

Arrival process at queue 1 is Poisson(λ) so future arrivals are independent ofX1(t).By time reversibility X1(t) is independent of past departures.Since these departures are the arrival process of queue 2, X1(t) and X2(t)are independent.

23 / 49Performance Evaluation : Contention and Queues

Page 43: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem

The number of clients at server 1 and 2 are independent and

P(n1, n2) =

µ1

)n1(

1− λ

µ1

)(λ

µ2

)n2(

1− λ

µ1

)

Proof

By independence of X1 and X2 the joint probability is the product of M/M/1distributions.

This result is called a product-form result for the tandem queue.This product form also appears in more general networks of queues.

24 / 49Performance Evaluation : Contention and Queues

Page 44: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem

The number of clients at server 1 and 2 are independent and

P(n1, n2) =

µ1

)n1(

1− λ

µ1

)(λ

µ2

)n2(

1− λ

µ1

)

Proof

By independence of X1 and X2 the joint probability is the product of M/M/1distributions.

This result is called a product-form result for the tandem queue.This product form also appears in more general networks of queues.

24 / 49Performance Evaluation : Contention and Queues

Page 45: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem

The number of clients at server 1 and 2 are independent and

P(n1, n2) =

µ1

)n1(

1− λ

µ1

)(λ

µ2

)n2(

1− λ

µ1

)

Proof

By independence of X1 and X2 the joint probability is the product of M/M/1distributions.

This result is called a product-form result for the tandem queue.This product form also appears in more general networks of queues.

24 / 49Performance Evaluation : Contention and Queues

Page 46: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example of a feed-forward network:

pik

pjl

pk0

pl0

µl

µkµi

µj

pj0

pi0

p jk

λ0i

λ0j

λ0k

λ0l

pil

Exponential service times

output of i is routed to j with probability pij

external traffic arrives at i with rate λ0i

packets exiting queue i leave the system withprobability pi0.

Routing matrix

R =

0 pij pik pil

pji 0 pjk pjl

pki pkj 0 pjl

pli plj plk 0

25 / 49Performance Evaluation : Contention and Queues

Page 47: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Reminder

N(t) Poisson process with rate λ

Z (n) sequence of iid rv’s ∼ Bernoulli(p) independent of N.

Suppose the nth trial is performed at the nth arrival of the Poisson process.

The resulting process M(t) of successes is a Poisson process with rate λp.The process of failures L(t) is a Poisson process with rate λ(1− p) and isindependent of M(t).

Bernoullip

1−p

Poisson(λ)

26 / 49Performance Evaluation : Contention and Queues

Page 48: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Reminder

N(t) Poisson process with rate λ

Z (n) sequence of iid rv’s ∼ Bernoulli(p) independent of N.

Suppose the nth trial is performed at the nth arrival of the Poisson process.The resulting process M(t) of successes is a Poisson process with rate λp.

The process of failures L(t) is a Poisson process with rate λ(1− p) and isindependent of M(t).

Bernoullip

1−p

Poisson(λ)Poisson(λp)

Poisson(λ(1− p))

26 / 49Performance Evaluation : Contention and Queues

Page 49: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Reminder

N(t) Poisson process with rate λ

Z (n) sequence of iid rv’s ∼ Bernoulli(p) independent of N.

Suppose the nth trial is performed at the nth arrival of the Poisson process.The resulting process M(t) of successes is a Poisson process with rate λp.The process of failures L(t) is a Poisson process with rate λ(1− p) and isindependent of M(t).

Bernoullip

1−p

Poisson(λ)Poisson(λp)

Poisson(λ(1− p))

26 / 49Performance Evaluation : Contention and Queues

Page 50: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Define λi the total arrival rate at queuei , 1 6 i 6 K .

pik

pjl

pk0

pl0

µl

µkµi

µj

pj0

pi0

p jk

λ0i

λ0j

λ0k

λ0l

pil

No feedback : from Burke we can consider K independent M/M/1 queueswith Poisson arrivals with rate λi , where

λi = λ0i +

K∑j=0

λjpji~Λ = ~Λ0 + ~ΛR

in matrix notation.

Stability condition

λi < µi ,∀i = 1, 2, . . . ,K .

27 / 49Performance Evaluation : Contention and Queues

Page 51: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Define λi the total arrival rate at queuei , 1 6 i 6 K .

pik

pjl

pk0

pl0

µl

µkµi

µj

pj0

pi0

p jk

λ0i

λ0j

λ0k

λ0l

pil

No feedback : from Burke we can consider K independent M/M/1 queueswith Poisson arrivals with rate λi , where

λi = λ0i +

K∑j=0

λjpji~Λ = ~Λ0 + ~ΛR

in matrix notation.

Stability condition

λi < µi ,∀i = 1, 2, . . . ,K .

27 / 49Performance Evaluation : Contention and Queues

Page 52: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Remark

Arrivals are not Poisson anymore!

Result

The departure process is still Poisson with rate λp.

Proof in [Walrand, An Introduction to Queueing Networks, 1988].

28 / 49Performance Evaluation : Contention and Queues

Page 53: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Remark

Arrivals are not Poisson anymore!

Result

The departure process is still Poisson with rate λp.

Proof in [Walrand, An Introduction to Queueing Networks, 1988].

28 / 49Performance Evaluation : Contention and Queues

Page 54: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 55: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 56: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 57: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 58: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 59: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

����

���� p

1−p

µλ0

Balance equations:

π(0)λ0 = µpπ(1)

π(n)(λ0 + pµ) = λ0π(n − 1) + µpπ(n + 1), n > 0

Actual arrival rate λ = λ0 + (1− p)λ, so λ0 = λp which gives

π(0)λ = µπ(1)

π(n)(λ+ µ) = λπ(n − 1) + µπ(n + 1), n > 0 M/M/1!

The unique solution is:

π(n) =

(1− λ

µ

)(λ

µ

)n

=

(1− λ0

)(λ0

)n

29 / 49Performance Evaluation : Contention and Queues

Page 60: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i

λ0j

λ0k

pi0pii

pik

pilλ0

l

Backfeeding allowed.

30 / 49Performance Evaluation : Contention and Queues

Page 61: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i

λ0j

λ0k

pi0pii

pik

pilλ0

l

pjk

pj0pjj

pji

pjl

Backfeeding allowed.

30 / 49Performance Evaluation : Contention and Queues

Page 62: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i

λ0j

λ0k

pi0pii

pik

pilλ0

l

pjk

pj0pjj

pji

pjl

plj

pl0

pk0

Backfeeding allowed.

30 / 49Performance Evaluation : Contention and Queues

Page 63: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem (Jackson, 1957)

If λi < µi (stability condition), ∀i = 1, 2, . . .K then

π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

∀~n = (n1, . . . , nK ) ∈ NK .

where λ1, . . . , λK are the unique solution of the system

λi = λ0i +

K∑j=0

λjpji

Product form even with backfeeding!

31 / 49Performance Evaluation : Contention and Queues

Page 64: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem (Jackson, 1957)

If λi < µi (stability condition), ∀i = 1, 2, . . .K then

π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

∀~n = (n1, . . . , nK ) ∈ NK .

where λ1, . . . , λK are the unique solution of the system

λi = λ0i +

K∑j=0

λjpji

Product form even with backfeeding!

31 / 49Performance Evaluation : Contention and Queues

Page 65: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Derive balance equations:

π(~n)

(K∑

i=1

λ0i +

K∑i=1

11ni > 0µi

)=

K∑i=1

11ni > 0λ0i π(~n − ~ei )

+K∑

i=1

pi0µiπ(~n + ~ei )

+K∑

i=1

K∑j=1

11nj > 0pijµiπ(~n + ~ei − ~ej )

Then check that π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

satisfies the balance equations

with λi = λ0i +

∑Kj=0 λjpji .

32 / 49Performance Evaluation : Contention and Queues

Page 66: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Derive balance equations:

π(~n)

(K∑

i=1

λ0i +

K∑i=1

11ni > 0µi

)=

K∑i=1

11ni > 0λ0i π(~n − ~ei )

+K∑

i=1

pi0µiπ(~n + ~ei )

+K∑

i=1

K∑j=1

11nj > 0pijµiπ(~n + ~ei − ~ej )

Then check that π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

satisfies the balance equations

with λi = λ0i +

∑Kj=0 λjpji .

32 / 49Performance Evaluation : Contention and Queues

Page 67: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Derive balance equations:

π(~n)

(K∑

i=1

λ0i +

K∑i=1

11ni > 0µi

)=

K∑i=1

11ni > 0λ0i π(~n − ~ei )

+K∑

i=1

pi0µiπ(~n + ~ei )

+K∑

i=1

K∑j=1

11nj > 0pijµiπ(~n + ~ei − ~ej )

Then check that π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

satisfies the balance equations

with λi = λ0i +

∑Kj=0 λjpji .

32 / 49Performance Evaluation : Contention and Queues

Page 68: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Derive balance equations:

π(~n)

(K∑

i=1

λ0i +

K∑i=1

11ni > 0µi

)=

K∑i=1

11ni > 0λ0i π(~n − ~ei )

+K∑

i=1

pi0µiπ(~n + ~ei )

+K∑

i=1

K∑j=1

11nj > 0pijµiπ(~n + ~ei − ~ej )

Then check that π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

satisfies the balance equations

with λi = λ0i +

∑Kj=0 λjpji .

32 / 49Performance Evaluation : Contention and Queues

Page 69: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Derive balance equations:

π(~n)

(K∑

i=1

λ0i +

K∑i=1

11ni > 0µi

)=

K∑i=1

11ni > 0λ0i π(~n − ~ei )

+K∑

i=1

pi0µiπ(~n + ~ei )

+K∑

i=1

K∑j=1

11nj > 0pijµiπ(~n + ~ei − ~ej )

Then check that π(~n) =K∏

i=1

(1− λi

µi

)(λi

µi

)ni

satisfies the balance equations

with λi = λ0i +

∑Kj=0 λjpji .

32 / 49Performance Evaluation : Contention and Queues

Page 70: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Traffic equations give λi = λi−1 for i > 2 and λ1 = λ0 + (1− p)λK .The uniquesolution is clearly λi = λ0

p for 1 6 i 6 K . Apply Jackson’s theorem:

π(~n) =

(1− λ0

)K (λ0

)n1+...+nK

∀~n = (n1, . . . , nK ) ∈ NK .

33 / 49Performance Evaluation : Contention and Queues

Page 71: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Traffic equations give λi = λi−1 for i > 2 and λ1 = λ0 + (1− p)λK .The uniquesolution is clearly λi = λ0

p for 1 6 i 6 K . Apply Jackson’s theorem:

π(~n) =

(1− λ0

)K (λ0

)n1+...+nK

∀~n = (n1, . . . , nK ) ∈ NK .

33 / 49Performance Evaluation : Contention and Queues

Page 72: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Traffic equations give λi = λi−1 for i > 2 and λ1 = λ0 + (1− p)λK .The uniquesolution is clearly λi = λ0

p for 1 6 i 6 K . Apply Jackson’s theorem:

π(~n) =

(1− λ0

)K (λ0

)n1+...+nK

∀~n = (n1, . . . , nK ) ∈ NK .

33 / 49Performance Evaluation : Contention and Queues

Page 73: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Traffic equations give λi = λi−1 for i > 2 and λ1 = λ0 + (1− p)λK .The uniquesolution is clearly λi = λ0

p for 1 6 i 6 K . Apply Jackson’s theorem:

π(~n) =

(1− λ0

)K (λ0

)n1+...+nK

∀~n = (n1, . . . , nK ) ∈ NK .

33 / 49Performance Evaluation : Contention and Queues

Page 74: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Traffic equations give λi = λi−1 for i > 2 and λ1 = λ0 + (1− p)λK .The uniquesolution is clearly λi = λ0

p for 1 6 i 6 K . Apply Jackson’s theorem:

π(~n) =

(1− λ0

)K (λ0

)n1+...+nK

∀~n = (n1, . . . , nK ) ∈ NK .

33 / 49Performance Evaluation : Contention and Queues

Page 75: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 76: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 77: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 78: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 79: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 80: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Example

Switches transmitting frames with random errors.

����

�������

���

���

���

����

����

����

����

����

����

���

���

.. .

1−p

server 1 server 2 server K

pµ µλ0µ

Using M/M/1 results for each queue we get the mean number of frames ateach queue EXi = λ0

pµ−λ0

The expected transmission time of a frame is therefore (Little)

ET =1λ0 EX =

1λ0

K∑i=1

EXi =K

pµ− λ0

34 / 49Performance Evaluation : Contention and Queues

Page 81: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Open Queueing Networks

Theorem

Consider an open network of K M/M/ci queues. Let µi (n) = µi min(n, ci ) andρi = λi

µi.

Then if ρi < ci for all 1 6 i 6 K then

π(~n) =K∏

i=1

Ci

nii∏ni

m=1 µi (m)

)∀~n = (n1, . . . , nK ) ∈ NK

where (λ1, . . . , λK ) is the unique positive solution of the traffic equations

λi = λ0i +

K∑j=0

λjpji , and where Ci =

(ci−1∑m=1

ρi

i!+

ρcii

ci !(1− ρi/ci )

)−1

35 / 49Performance Evaluation : Contention and Queues

Page 82: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Closed Queueing Networks

Computing the normalization factor C(N,K ) is a heavy task!

C(n, k) =∑

~n∈S(n,k)

k∏i=1

(λi

µi

)ni

=n∑

m=0

∑~n ∈ S(n, k)

nk = m

k∏i=1

(λi

µi

)ni

=n∑

m=0

(λk

µk

)m ∑~n∈S(n−m,k−1)

k−1∏i=1

(λi

µi

)ni

Convolution algorithm (Buzen,1973)

C(n, k) =n∑

m=0

(λk

µk

)m

C(k −m, k − 1) and

{C(n, 1) =

(λ1µ1

)n

C(0, k) = 1, ∀1 6 i 6 K

36 / 49Performance Evaluation : Contention and Queues

Page 83: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Closed Queueing Networks

Computing the normalization factor C(N,K ) is a heavy task!

C(n, k) =∑

~n∈S(n,k)

k∏i=1

(λi

µi

)ni

=n∑

m=0

∑~n ∈ S(n, k)

nk = m

k∏i=1

(λi

µi

)ni

=n∑

m=0

(λk

µk

)m ∑~n∈S(n−m,k−1)

k−1∏i=1

(λi

µi

)ni

Convolution algorithm (Buzen,1973)

C(n, k) =n∑

m=0

(λk

µk

)m

C(k −m, k − 1) and

{C(n, 1) =

(λ1µ1

)n

C(0, k) = 1, ∀1 6 i 6 K

36 / 49Performance Evaluation : Contention and Queues

Page 84: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Closed Queueing Networks

Computing the normalization factor C(N,K ) is a heavy task!

C(n, k) =∑

~n∈S(n,k)

k∏i=1

(λi

µi

)ni

=n∑

m=0

∑~n ∈ S(n, k)

nk = m

k∏i=1

(λi

µi

)ni

=n∑

m=0

(λk

µk

)m ∑~n∈S(n−m,k−1)

k−1∏i=1

(λi

µi

)ni

Convolution algorithm (Buzen,1973)

C(n, k) =n∑

m=0

(λk

µk

)m

C(k −m, k − 1) and

{C(n, 1) =

(λ1µ1

)n

C(0, k) = 1, ∀1 6 i 6 K

36 / 49Performance Evaluation : Contention and Queues

Page 85: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Closed Queueing Networks

Computing the normalization factor C(N,K ) is a heavy task!

C(n, k) =∑

~n∈S(n,k)

k∏i=1

(λi

µi

)ni

=n∑

m=0

∑~n ∈ S(n, k)

nk = m

k∏i=1

(λi

µi

)ni

=n∑

m=0

(λk

µk

)m ∑~n∈S(n−m,k−1)

k−1∏i=1

(λi

µi

)ni

Convolution algorithm (Buzen,1973)

C(n, k) =n∑

m=0

(λk

µk

)m

C(k −m, k − 1) and

{C(n, 1) =

(λ1µ1

)n

C(0, k) = 1, ∀1 6 i 6 K

36 / 49Performance Evaluation : Contention and Queues

Page 86: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Closed Queueing Networks

Computing the normalization factor C(N,K ) is a heavy task!

C(n, k) =∑

~n∈S(n,k)

k∏i=1

(λi

µi

)ni

=n∑

m=0

∑~n ∈ S(n, k)

nk = m

k∏i=1

(λi

µi

)ni

=n∑

m=0

(λk

µk

)m ∑~n∈S(n−m,k−1)

k−1∏i=1

(λi

µi

)ni

Convolution algorithm (Buzen,1973)

C(n, k) =n∑

m=0

(λk

µk

)m

C(k −m, k − 1) and

{C(n, 1) =

(λ1µ1

)n

C(0, k) = 1, ∀1 6 i 6 K

36 / 49Performance Evaluation : Contention and Queues

Page 87: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Outline

1 Queues

2 Stability

3 Average

4 Computable queues

5 Networks

6 Multiclass networksOther service disciplinesBCMP networksKelly networks

37 / 49Performance Evaluation : Contention and Queues

Page 88: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i ,1 p(i ,1)→0

p(k ,1)→0

λ0j ,1

p(i ,1)→(k ,1)

38 / 49Performance Evaluation : Contention and Queues

Page 89: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i ,1 p(i ,1)→0

p(k ,1)→0

λ0j ,1

p(i ,1)→(k ,1)

p(j ,1)→(l ,2)

p(i ,1)→(l ,2)

38 / 49Performance Evaluation : Contention and Queues

Page 90: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i ,1 p(i ,1)→0

p(k ,1)→0

λ0j ,1

p(i ,1)→(k ,1)

p(l ,2)→0p(j ,2)→(l ,2)

p(l ,2)→(j ,2)

p(j ,1)→(l ,2)

p(i ,1)→(l ,2)

38 / 49Performance Evaluation : Contention and Queues

Page 91: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

����

����

���

���

���

���

����

����

����

����

���

���

����

����

����

����

���

���

���

���

����

����

����

����

����

����

���

���

µl

µkµi

µj

λ0i ,1 p(i ,1)→0

p(k ,1)→0

λ0j ,1

p(i ,1)→(k ,1)

p(l ,2)→0p(j ,2)→(l ,2)

p(l ,2)→(j ,2)

p(j ,1)→(l ,2)

p(i ,1)→(l ,2)p(j ,2)→(i ,1)

38 / 49Performance Evaluation : Contention and Queues

Page 92: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 93: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 94: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 95: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 96: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 97: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 98: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

K <∞ nodes and R <∞ classes

Customer at node i in class r will go to node j with class s with probabilityp(i,r);(j,s)

(i, r) and (j, s) belong to the same subchain if p(i,r);(j,s) > 0

FIFO discipline and exponential service times

Definition

A subchain is open iff there exist one pair (i, r) for which λ0(i,r) > 0.

Definition

A mixed system contains at least one open subchain and one closedsubchain.

39 / 49Performance Evaluation : Contention and Queues

Page 99: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

The state of a multiclass network may be characterized by the number ofcustomers of each class at each node

~Q(t) = (~Q1(t), ~Q2(t), . . . , ~QK (t)) with ~Qi (t) = (Qi1(t)), . . . ,QiR(t))

Problem

~Q(t) is not a CMTC!

To see why, consider the FIFO discipline: how do you know the class of thenext customer?

40 / 49Performance Evaluation : Contention and Queues

Page 100: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

The state of a multiclass network may be characterized by the number ofcustomers of each class at each node

~Q(t) = (~Q1(t), ~Q2(t), . . . , ~QK (t)) with ~Qi (t) = (Qi1(t)), . . . ,QiR(t))

Problem

~Q(t) is not a CMTC!

To see why, consider the FIFO discipline: how do you know the class of thenext customer?

40 / 49Performance Evaluation : Contention and Queues

Page 101: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

The state of a multiclass network may be characterized by the number ofcustomers of each class at each node

~Q(t) = (~Q1(t), ~Q2(t), . . . , ~QK (t)) with ~Qi (t) = (Qi1(t)), . . . ,QiR(t))

Problem

~Q(t) is not a CMTC!

To see why, consider the FIFO discipline: how do you know the class of thenext customer?

40 / 49Performance Evaluation : Contention and Queues

Page 102: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

Define ~Xi (t) = (Ii1(t), . . . , IiQi (t)(t)) with Iij (t) the class of the j th customer atnode i .

Proposition

~X (t) is a CMTC!

Solving the balance equations for X gives a product-form solution. Thesteady-state distribution of ~X (t) also gives the distribution of ~Q(t) byaggregation of states.

41 / 49Performance Evaluation : Contention and Queues

Page 103: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

Define ~Xi (t) = (Ii1(t), . . . , IiQi (t)(t)) with Iij (t) the class of the j th customer atnode i .

Proposition

~X (t) is a CMTC!

Solving the balance equations for X gives a product-form solution. Thesteady-state distribution of ~X (t) also gives the distribution of ~Q(t) byaggregation of states.

41 / 49Performance Evaluation : Contention and Queues

Page 104: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Multiclass Networks

Define ~Xi (t) = (Ii1(t), . . . , IiQi (t)(t)) with Iij (t) the class of the j th customer atnode i .

Proposition

~X (t) is a CMTC!

Solving the balance equations for X gives a product-form solution. Thesteady-state distribution of ~X (t) also gives the distribution of ~Q(t) byaggregation of states.

41 / 49Performance Evaluation : Contention and Queues

Page 105: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Other queueing networks

Jackson networks implyFIFO discipline

probabilistic routing

These assumptions can be relaxed using BCMP and Kelly networks.

42 / 49Performance Evaluation : Contention and Queues

Page 106: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

Definition

BCMP networks are multiclass networks with exponential service times andci servers at node i .

Service disciplines may be:FCFS

Processor Sharing

Infinite Server

LCFS

BCMP networks also have product-form solution!

43 / 49Performance Evaluation : Contention and Queues

Page 107: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

Definition

BCMP networks are multiclass networks with exponential service times andci servers at node i .

Service disciplines may be:FCFS

Processor Sharing

Infinite Server

LCFS

BCMP networks also have product-form solution!

43 / 49Performance Evaluation : Contention and Queues

Page 108: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

Consider an open/closed/mixed BCMP network with K nodes and R classesin which each node is either FIFO,PS,LIFO or IS. Define

ρir = λirµir

for LIFO, IS and PS nodes

ρir = λirµi

for FIFO nodes

λir = λ0ir +

∑(j,s)∈Ek

λjsp(i,r);(j,s) for any (i, r) of each open subchain Ek

λir =∑

(j,s)∈Em

λjsp(i,r);(j,s) for any (i, r) of each closed subchain Em

44 / 49Performance Evaluation : Contention and Queues

Page 109: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

Consider an open/closed/mixed BCMP network with K nodes and R classesin which each node is either FIFO,PS,LIFO or IS. Define

ρir = λirµir

for LIFO, IS and PS nodes

ρir = λirµi

for FIFO nodes

λir = λ0ir +

∑(j,s)∈Ek

λjsp(i,r);(j,s) for any (i, r) of each open subchain Ek

λir =∑

(j,s)∈Em

λjsp(i,r);(j,s) for any (i, r) of each closed subchain Em

44 / 49Performance Evaluation : Contention and Queues

Page 110: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

Theorem

The steady-state distribution is given by: for all ~n in state space S,

π(~n) =1G

K∏i=1

fi (~ni ) with G =∑~n∈S

K∏i=1

fi (~ni )

with ~n = (~n1, . . . , ~nK ) ∈ S and ~ni = (ni1, . . . , niR), if and only if (stabilitycondition for open subchains)

∑r :(i,r)∈ any open Ek

ρir < 1, ∀1 6 i 6 K .

Moreover, fi (~ni ) has an explicit expression for each service discipline.

45 / 49Performance Evaluation : Contention and Queues

Page 111: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

BCMP networks

FIFO fi (~ni ) = |ni |!|ni |∏j=1

1αi (j)

R∏r=1

ρnirir

nir !with αj (j) = min(ci , j).

PS or LIFO fi (~ni ) = |ni |!R∏

r=1

ρnirir

nir !

IS fi (~ni ) =R∏

r=1

ρnirir

nir !

46 / 49Performance Evaluation : Contention and Queues

Page 112: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Extensions

the BCMP product form result may be extended to the following cases:state-dependent routing probabilities

arrivals depending on the number of customers in the corresponding subchain

47 / 49Performance Evaluation : Contention and Queues

Page 113: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kelly networks

In Kelly networks the routing is deterministic. The network is thencharacterized by its set of nodes and its set of routes.

Definition

In a Kelly network, each class of customers corresponds to a route.

Let λk be the arrival rate of class k clients (Poisson process). Note that classk customers can only arrive at one single node.

����

����

����

����

����

����

����

����

���

���

���

���

�������

���

µ1 µ2

µ3 µ4

λ1

48 / 49Performance Evaluation : Contention and Queues

Page 114: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kelly networks

In Kelly networks the routing is deterministic. The network is thencharacterized by its set of nodes and its set of routes.

Definition

In a Kelly network, each class of customers corresponds to a route.

Let λk be the arrival rate of class k clients (Poisson process). Note that classk customers can only arrive at one single node.

����

����

����

����

����

����

����

����

���

���

���

���

�������

���

µ1 µ2

µ3 µ4

λ1

λ2

48 / 49Performance Evaluation : Contention and Queues

Page 115: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kelly networks

In Kelly networks the routing is deterministic. The network is thencharacterized by its set of nodes and its set of routes.

Definition

In a Kelly network, each class of customers corresponds to a route.

Let λk be the arrival rate of class k clients (Poisson process). Note that classk customers can only arrive at one single node.

����

����

����

����

����

����

����

����

���

���

���

���

�������

���

µ1 µ2

µ3 µ4

λ1

λ2

λ3

48 / 49Performance Evaluation : Contention and Queues

Page 116: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kelly networks

In Kelly networks the routing is deterministic. The network is thencharacterized by its set of nodes and its set of routes.

Definition

In a Kelly network, each class of customers corresponds to a route.

Let λk be the arrival rate of class k clients (Poisson process). Note that classk customers can only arrive at one single node.

����

����

����

����

����

����

����

����

���

���

���

���

�������

���

µ1 µ2

µ3 µ4

λ1

λ2

λ3

λ4

48 / 49Performance Evaluation : Contention and Queues

Page 117: Performance Evaluation : Contention and Queuespolaris.imag.fr/.../index.html/M2R-EP/2012-EP4-Contention-Queues.pdf · Queues Stability Average Computable queues Networks Multiclass

Queues Stability Average Computable queues Networks Multiclass networks

Kelly networks

the state space of a Kelly network is the set of N × K matricesM = ((mi,k )) with mi,k is the number of class k clients in queue i

Theorem (Kelly)

πM =N∏

i=1

(1− λ̂i

µi

)m̂i !

mi,1! · · ·mi,K !

(λ̂i,1

µi

)mi,1

· · ·

(λ̂i,K

µi

)mi,K

with λ̂i,k global input rate of class k clients in queue iwith λ̂i =

∑k λ̂i,k global input rate queue i

and m̂i =∑

k mi,k

49 / 49Performance Evaluation : Contention and Queues