Queueing Networks G. Rubino INRIA / IRISA, Rennes, France

Similar documents
Performance Evaluation of Queuing Systems

Queuing Networks: Burke s Theorem, Kleinrock s Approximation, and Jackson s Theorem. Wade Trappe

CHAPTER 4. Networks of queues. 1. Open networks Suppose that we have a network of queues as given in Figure 4.1. Arrivals

Intro Refresher Reversibility Open networks Closed networks Multiclass networks Other networks. Queuing Networks. Florence Perronnin

Markov Chains. X(t) is a Markov Process if, for arbitrary times t 1 < t 2 <... < t k < t k+1. If X(t) is discrete-valued. If X(t) is continuous-valued

6 Solving Queueing Models

Introduction to Markov Chains, Queuing Theory, and Network Performance

TCOM 501: Networking Theory & Fundamentals. Lecture 6 February 19, 2003 Prof. Yannis A. Korilis

Lecture 7: Simulation of Markov Processes. Pasi Lassila Department of Communications and Networking

15 Closed production networks

15 Closed production networks

Markov Chain Model for ALOHA protocol

Lecture 20: Reversible Processes and Queues

Statistics 150: Spring 2007

Queueing Theory II. Summary. ! M/M/1 Output process. ! Networks of Queue! Method of Stages. ! General Distributions

Exercises Stochastic Performance Modelling. Hamilton Institute, Summer 2010

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 "

Buzen s algorithm. Cyclic network Extension of Jackson networks

CS 798: Homework Assignment 3 (Queueing Theory)

Non Markovian Queues (contd.)

Solutions to Homework Discrete Stochastic Processes MIT, Spring 2011

IEOR 6711, HMWK 5, Professor Sigman

Queueing Networks and Insensitivity

Time Reversibility and Burke s Theorem

Recap. Probability, stochastic processes, Markov chains. ELEC-C7210 Modeling and analysis of communication networks

Part I Stochastic variables and Markov chains

Link Models for Circuit Switching

COMP9334 Capacity Planning for Computer Systems and Networks

NICTA Short Course. Network Analysis. Vijay Sivaraman. Day 1 Queueing Systems and Markov Chains. Network Analysis, 2008s2 1-1

8. Statistical Equilibrium and Classification of States: Discrete Time Markov Chains

reversed chain is ergodic and has the same equilibrium probabilities (check that π j =

Data analysis and stochastic modeling

Stochastic process. X, a series of random variables indexed by t

Part II: continuous time Markov chain (CTMC)

Introduction to queuing theory

Contents Preface The Exponential Distribution and the Poisson Process Introduction to Renewal Theory

1 IEOR 4701: Continuous-Time Markov Chains

Efficient Nonlinear Optimizations of Queuing Systems

COMP9334: Capacity Planning of Computer Systems and Networks

BIRTH DEATH PROCESSES AND QUEUEING SYSTEMS

MAS275 Probability Modelling Exercises

GI/M/1 and GI/M/m queuing systems

On Tandem Blocking Queues with a Common Retrial Queue

CHAPTER 14. Quantifying the Quality of Audio and Video Transmissions over the Internet: The PSQA Approach. Gerardo Rubino

2905 Queueing Theory and Simulation PART III: HIGHER DIMENSIONAL AND NON-MARKOVIAN QUEUES

Queueing. Chapter Continuous Time Markov Chains 2 CHAPTER 5. QUEUEING

Link Models for Packet Switching

Chapter 16 focused on decision making in the face of uncertainty about one future

Lecture 11: Introduction to Markov Chains. Copyright G. Caire (Sample Lectures) 321

Figure 10.1: Recording when the event E occurs

Convolution Algorithm

Elementary queueing system

Classical Queueing Models.

Performance analysis of queueing systems with resequencing

Introduction to Queuing Networks Solutions to Problem Sheet 3

Kendall notation. PASTA theorem Basics of M/M/1 queue

λ λ λ In-class problems

Queueing systems. Renato Lo Cigno. Simulation and Performance Evaluation Queueing systems - Renato Lo Cigno 1

Probability Models in Electrical and Computer Engineering Mathematical models as tools in analysis and design Deterministic models Probability models

Readings: Finish Section 5.2

Networks of Queues Models with Several. Classes of Customers and Exponential. Service Times

STOCHASTIC PROCESSES Basic notions

The Erlang Model with non-poisson Call Arrivals

Computer Networks More general queuing systems

IEOR 6711: Stochastic Models I, Fall 2003, Professor Whitt. Solutions to Final Exam: Thursday, December 18.

2. Transience and Recurrence

Markov Processes and Queues

Model reversibility of a two dimensional reflecting random walk and its application to queueing network

Derivation of Formulas by Queueing Theory

The Transition Probability Function P ij (t)

HITTING TIME IN AN ERLANG LOSS SYSTEM

G-networks with synchronized partial ushing. PRi SM, Universite de Versailles, 45 av. des Etats Unis, Versailles Cedex,France

6 Markov Chain Monte Carlo (MCMC)

Dynamic resource sharing

Stochastic Models in Computer Science A Tutorial

Input-queued switches: Scheduling algorithms for a crossbar switch. EE 384X Packet Switch Architectures 1

Birth-Death Processes

On Tandem Blocking Queues with a Common Retrial Queue

Markov Processes Hamid R. Rabiee

T. Liggett Mathematics 171 Final Exam June 8, 2011

ECE 3511: Communications Networks Theory and Analysis. Fall Quarter Instructor: Prof. A. Bruce McDonald. Lecture Topic

A New Technique for Link Utilization Estimation

λ, µ, ρ, A n, W n, L(t), L, L Q, w, w Q etc. These

Session-Based Queueing Systems

Markov processes and queueing networks

Multi Stage Queuing Model in Level Dependent Quasi Birth Death Process

57:022 Principles of Design II Final Exam Solutions - Spring 1997

CDA5530: Performance Models of Computers and Networks. Chapter 4: Elementary Queuing Theory

Continuous Time Processes

Answers to selected exercises

CPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017

Queues and Queueing Networks

Irreducibility. Irreducible. every state can be reached from every other state For any i,j, exist an m 0, such that. Absorbing state: p jj =1

Flow Equivalence and Stochastic Equivalence in G-Networks

Example: physical systems. If the state space. Example: speech recognition. Context can be. Example: epidemics. Suppose each infected

J. MEDHI STOCHASTIC MODELS IN QUEUEING THEORY

Queueing Theory and Simulation. Introduction

Name of the Student:

A Study on Performance Analysis of Queuing System with Multiple Heterogeneous Servers

Lecture 20 : Markov Chains

Transcription:

Queueing Networks G. Rubino INRIA / IRISA, Rennes, France February 2006

Index 1. Open nets: Basic Jackson result 2 2. Open nets: Internet performance evaluation 18 3. Closed nets: Basic Gordon-Newell result 25 4. Closed nets: Convolution algorithm 41 5. Closed nets: Mean Value Analysis (MVA) 47 6. Closed nets: Applications 53 7. Loss nets: The model 58 8. Loss nets: Product-form 62 9. Loss nets: Erlang fixed point approach 72 Open QN G. Rubino, INRIA / IRISA slide 1

1: Basic Jackson result The basic model! N nodes; each one is a./m/1 queue! in node i, service rate: µ i ; external arrival flow: Poisson with rate λ i 0; arrival flows are independent! routing probabilities (transfer time = 0): r ij = Pr(a customer leaving i goes to j) (i, j = 1, 2,..., N) r i0 = Pr(a customer leaving i, leaves the network), (i = 1, 2,..., N) for i = 1, 2,..., N, N j=0 r ij = 1! total arrival rate: λ = N i=1 λ i > 0 Open QN G. Rubino, INRIA / IRISA slide 2

(1: Basic Jackson result) Example λ 1 1 λ 2 1 3 2 3 2 3 4 1 4 3 Here, we assume λ 1 > 0, λ 2 > 0, λ 3 = 0. For instance, we have r 1,2 = 1/3, r 1,3 = 2/3, r 2,3 = 1/4, r 2,0 = 3/4, r 3,0 = 1. Open QN G. Rubino, INRIA / IRISA slide 3

(1: Basic Jackson result) The assumptions and the goal! arrival processes, service processes and switching processes are independent of each other! at each server, service times are independent of each other! at each switching point, switching results are also independent of each other! the goal is to evaluate performance metrics in equilibrium, such as mean # of customers at each node, or in the whole network, mean delay at each node, or at the whole network, utilization rate of some specific server, etc. Open QN G. Rubino, INRIA / IRISA slide 4

(1: Basic Jackson result) Computing the mean throughput (in equilibrium) λ 1 1 λ 2 1 3 2 3 2 3 4 1 4 3 Define T i = mean throughput at i, i = 1, 2, 3, in customers per sec. We have T 1 = λ 1. Then, T 2 = λ 2 + T 1 r 1,2 = λ 2 + λ 1 /3, and T 3 = T 1 r 1,3 + T 2 r 2,3 = (3λ 1 + λ 2 )/4. Open QN G. Rubino, INRIA / IRISA slide 5

(1: Basic Jackson result) Extended network A node 0, representing the environment of the net, with service rate λ, is added as the figure shows. def The routing probability from 0 to i is r 0i = λ i /λ. 0 λr 0,1 λr 0,2 1 1 3 2 3 2 3 4 1 4 3 To see that the two networks are equivalent, we use the decomposition properties of Poisson processes. Open QN G. Rubino, INRIA / IRISA slide 6

(1: Basic Jackson result) Eliminating pathological and/or trivial cases! Seeing the extended network as a graph, we assume it is strongly connected. This way, we eliminate the pathological situations in which nodes will eventually empty, nodes will eventually explode. Open QN G. Rubino, INRIA / IRISA slide 7

(1: Basic Jackson result) A pathological example Assume an arrow entering a node means that the external arriving flow has a non-null rate. Node 2 will explode (at t =, customers inside). 2 1 Here, eliminate node 2. 3 Open QN G. Rubino, INRIA / IRISA slide 8

(1: Basic Jackson result) Another pathological example In this example, node 1 receives no customer. So, at t =, it is empty. 2 1 Here, eliminate node 1. 3 Open QN G. Rubino, INRIA / IRISA slide 9

(1: Basic Jackson result) Jackson s theorem! Resuming, from T i = λ i + N T j r ji, the strongly connected property of the extended graph implies that there is an unique (and strictly positive) solution, = we get the T i s. j=1 This can be seen, from instance, from Markov chain theory, seeing the extended graph as the graph of a Markov chain.! Let ϱ i = T i. µ i Open QN G. Rubino, INRIA / IRISA slide 10

(1: Basic Jackson result)! If for all i we have ϱ i < 1, then, in equilibrium (Jackson result) Pr(n 1 in 1,..., n N in N) = N (1 ϱ i )ϱ n i i=1 i. This is called a product form result.! The simplest proof of this result is straightforward: argue that the multidimensional stochastic process (L (1) t,, L (N) t ) is Markov (continuous time, infinite denumerable state space, homogeneous), that it is irreducible (so, when ergodic, only one stationary distribution), and then check that the given expression (product form) satisfies the equilibrium equations (Chapman-Kolmogorov equations). Open QN G. Rubino, INRIA / IRISA slide 11

(1: Basic Jackson result) Proof of the result concerning the T i s! Consider a Markov chain in continuous time, with state space {0, 1,, N} and transition probabilities (r i,j ). The departure rate of state i is some d i > 0.! The strong connectivity condition means that the chain is irreducible, and then, we know that the system of N + 1 unknowns (x 0,, x N ) and equations x i = N x j r ji, i = 0, 1,, N j=0 has a unique non-trivial solution up to a factor, and that it is composed of strictly positive numbers. Open QN G. Rubino, INRIA / IRISA slide 12

(1: Basic Jackson result)! Then, choose the solution such that x 0 = λ. It follows that the remaining x i s verify the throughtput equations. Reciprocally, given a solution (T 1,, T N ) to the throughput equations, then (λ, T 1,, T N ) is a solution to the auxiliary homogeneous system, so, the solution with x 0 = λ, proving the unicity of the solution in the throughputs.! Observe that this also gives for any node i, T i > 0.! Given the fact that if π x is the stationary probability of state x in an ergodic Markov chain, 1/π x is the relative average frequency of visits to that state, we deduce that T i /λ is the expected # of visits a customer will make to node i before leaving.! For the same reason, the number i T i/λ is the mean number visits to nodes a customer does before leaving. Open QN G. Rubino, INRIA / IRISA slide 13

(1: Basic Jackson result) The marginal distributions Pr(n 1 in 1) = n 2 0,,n N 0 = = (1 ϱ 1 )ϱ n 1 1 Pr(n 1 in 1,..., n N in N) So, Pr(n 1 in 1,..., n N in N) = N Pr(n i in i). i=1 We say that the occupation processes at each node (the processes L (1) t,, L (N) t ) are asymptotically independent. Open QN G. Rubino, INRIA / IRISA slide 14

(1: Basic Jackson result) An equivalent view! Everything happens as if the network was composed of N queues M/M/1 independent, in parallel, where the ith has arrival rate T i and service rate µ i (same joint stationary distributions).! So, mean # of packets at i: L i = ϱ i 1 ϱ i = T i µ i T i! Since in the two models, each node i has the same L i and the same T i, then by Little the mean delay to pass through it is also the same: 1 D i = µ i T i! mean delay to pass through the whole network (Little): D = 1 λ N i=1 T i µ i T i Open QN G. Rubino, INRIA / IRISA slide 15

(1: Basic Jackson result) Questions! Since the factors in the product form are geometric, we could conjecture that arrival flows at each node are Poisson: if the network is feedforward, this can be shown to be true: it is based in Burke s Theorem: in equilibrium, the output of a M/M/1 queue is Poisson (true also for M/M/c or M/M/ queues) if not, the conjecture is false! We still don t understand completely what is happening here. Open QN G. Rubino, INRIA / IRISA slide 16

(1: Basic Jackson result) Extensions! Jackson s result also holds if the nodes are./m/c or./m/ queues, if the global network has finite storage capacity, if, more generally, the arrival rates depend on the total # of units in the network, and if the service rate at i is a function µ i (n i ) of the backlog at i.! There are also different multiclass extensions. Open QN G. Rubino, INRIA / IRISA slide 17

2: Internet performance evaluation Analyzing a network of routers! A packet switching network has N switches, working in datagram mode.! Denote by c ij the speed (or capacity) of the line from i to j (0 means that there is no connexion from i to j).! Let C i denote the set of switches that can directly receive packets from i, that is, C i = {j : c ij > 0}.! Inside switch i there are C i = M i output queues, each corresponding to an output link. Denote by Q ij the queue associated with the link connected to j C i ; it has service rate in pps µ ij = c ij /B. Open QN G. Rubino, INRIA / IRISA slide 18

2: Internet performance evaluation! A packet leaving i to j, goes to queue Q jk with probability r jk and leaves the network (to go to some host connected to switch j) with probability r j0.! This leads to a Jackson model having M = i M i nodes (one for each output line leaving a switch).! Problem: service times are certainly not indep.! Kleinrock approximation: assume they are!!! Observation: if there are many packets traveling and the speeds are not too low, the approximation is very good. Open QN G. Rubino, INRIA / IRISA slide 19

(2: Internet performance evaluation) Other metrics! The utilization rate U i of node i is the probability that, in equilibrium, server i is busy. We have U i = ϱ i.! Assume a customer arrives at a node i (even for a node where λ i = 0). Let E i = mean delay to travel through the whole network for the customer.! In the example, we have E 3 = D 3. Then, E 2 = D 2 + 1 4 E 3 = D 2 + 1 4 D 3, and E 1 = D 1 + 1 3 E 2 + 2 3 E 3 = D 1 + 1 3 D 2 + 3 4 D 3. Open QN G. Rubino, INRIA / IRISA slide 20

(2: Internet performance evaluation)! In general, the system of equations leading to the E i s is E i = D i + N r ij E j, j=1 which solution is unique (observe that the system matrix is the transpose of the one leading to the T i s). Open QN G. Rubino, INRIA / IRISA slide 21

(2: Internet performance evaluation) Exercise Consider the network represented here. 1 0 2 3 After leaving node 0, packets can follow either of the two paths (1) or (2,3). Working on the routing algorithm, we can control the proportion of packets using each path. The output link speed at router i is c i bps; the packets arrive at a rate of λ pps; the mean packet size is B bits. We denote by p the fraction of packets following path (1). Problem: find p so that the global delay is minimal, when λ = 10 4, c 0 = c 1 = 2 10 7, c 2 = 3 10 7, c 3 = 4 10 7 and B = 10 3. Open QN G. Rubino, INRIA / IRISA slide 22

(2: Internet performance evaluation) Example (cont.)! With the usual assumptions, denoting µ i = c i /B, we have the Jackson network p 1 λ µ 1 0 1 p! The mean delay at each node is D 0 = 1/(µ 0 λ), µ 0 2 µ 2 3 µ 3 D 1 = 1 µ 1 pλ, D 2 = 1 µ 2 (1 p)λ, D 3 = 1 µ 3 (1 p)λ.! Simplifying and using as unit of time 100 µs, D 0 = 1, D 1 = 1 2 p, D 2 = 1 2 + p, D 3 = 1 3 + p. Open QN G. Rubino, INRIA / IRISA slide 23

(2: Internet performance evaluation)! Global delay: D = 1 + pd 1 + (1 p)(d 2 + D 3 ). Solving dd/dp = 0 we obtain (numerically) the minimal value for p 0.4520, and the min delay is 1.6742.! For the same prize, let us compare D 1 and D 2 + D 3 : D 1? D 2 + D 3 1 2 p? 1 2 + p + 1 3 + p 3p 2 + 6p 4? 0.! So, with p 0 = 1 + 21 3 0.5275, p < p 0 (resp. p > p 0 ) (1) shorter (resp. longer)! Remark: when p = p 0, D 1 = D 2 + D 3 and the total delay is 1.6791. Open QN G. Rubino, INRIA / IRISA slide 24

3: Basic Gordon-Newell result The basic model! N nodes; each one is a./m/1 queue! in node i, mean output rate: µ i ;! no external arrivals, no departures to outside! routing probabilities (transfer time = 0): r ij = Pr(a customer leaving i goes to j) (i, j = 1, 2,..., N) N for i = 1, 2,..., N, j=1 r ij = 1! the graph defined by the routing probabilities is assumed to be strongly connected (again, everything reduces to this case)! H customers circulating in the network Open QN G. Rubino, INRIA / IRISA slide 25

(3: Basic Gordon-Newell result) Example 2 1 1 3 H customers 2 3 3 Open QN G. Rubino, INRIA / IRISA slide 26

(3: Basic Gordon-Newell result) The assumptions and the goal! service processes and switching processes are independent of each other! service times and switching results are also independent of each other and of the previous mentioned processes! the goal is to evaluate performance metrics in equilibrium, such as mean # of customers at each node, or in the whole network, mean delay at each node, or at the whole network, utilization rate of some specific server, etc. Open QN G. Rubino, INRIA / IRISA slide 27

(3: Basic Gordon-Newell result) Computing the mean throughput (in equilibrium) 2 1 1 3 H customers 2 3 3 Define T i = mean throughput at i, i = 1, 2, 3, in customers per sec. We have T 1 = T 3 and T 2 = T 1 /3. Up to this point, the throughputs are known up to a multiplicative constant. Open QN G. Rubino, INRIA / IRISA slide 28

(3: Basic Gordon-Newell result) Gordon-Newell s theorem! From T i = N T j r ji, j=1 the strongly connected property of the extended graph unique (and strictly positive) solution up to a factor. For instance, let (V i ) be the only solution such that N i=1 V i = 1.! V i is the visit ratio of node i. Recall that V i > 0. If ν i (t) is the number of visits made by a customer to node i in [0, t], then ν i (t) lim t ν j (t) = V i. V j Open QN G. Rubino, INRIA / IRISA slide 29

(3: Basic Gordon-Newell result)! Let X i = V i µ i.! Since we are assuming that all service times are indep., then (Gordon-Newell s result) Pr(n 1 in 1,..., n N in N) = This is called a product form result. N i=1 Xn i i G.! G is the normalizing constant. It is given by G = n 1 + +n N =H N i=1 X n i i.! Immediate to verify that we can express the product-form using X i = KV i /µ i for any K > 0. Open QN G. Rubino, INRIA / IRISA slide 30

(3: Basic Gordon-Newell result) Example In the example, 2 1 1 3 H customers 2 3 3 from V 1 = V 3 and V 2 = V 1 /3 we have V 1 = 3 7, V 2 = 1 7, V 3 = 3 7. Open QN G. Rubino, INRIA / IRISA slide 31

(3: Basic Gordon-Newell result) Example (cont.) Let us look for the probability that the server in node 3 is busy, for H = 2 customers and in the case µ i = µ, i = 1, 2, 3.! Let us denote a = V 1 /µ and b = V 2 /µ.! G = 3a 2 + 2ab + b 2! Pr(node 3 busy) = 1 Pr(node 3 empty) Pr(node 3 empty) = a2 + ab + b 2 G! So, Pr(node 3 busy) = 2a 2 + ab 3a 2 + 2ab + b 2 = 21 25. Open QN G. Rubino, INRIA / IRISA slide 32

(3: Basic Gordon-Newell result) Example (end)! Since we know the probability that node 3 is not empty, we have T 3 = µ 21 25.! From this, we obtain all the throughputs: T 1 = T 3 = 21µ 25, T 2 = 7µ 25. Open QN G. Rubino, INRIA / IRISA slide 33

(3: Basic Gordon-Newell result) Proof of Gordon-Newell s theorem! The simplest proof of Gordon-Newell s result is straightforward: argue that the multidimensional stochastic process (L (1) t,, L (N) t ) is Markov (continuous time, infinite denumerable state space, homogeneous), where L (i) t is the occupation process (# of customers) of node i at time t; the chain is irreducible and the state space is finite; the chain is then ergodic; there is only one stationary distribution; then, check that the given expression (product form) satisfies the equilibrium equations (Chapman-Kolmogorov equations). Remark: see that, trivially, the variables L (1) t,, L (N) t are never independent (not even for t = ), since H i=1 L(i) t = H. Open QN G. Rubino, INRIA / IRISA slide 34

(3: Basic Gordon-Newell result) The state space! Vector (L (1) t! There are ( ) N+H 1 H states.,, L (N) t ) lives in the state space { (n 1,..., n N ) IN N : } N n i = H. i=1! For instance, N = 10, H = 20 10 7 states N = 20, H = 100 5 10 21 states Open QN G. Rubino, INRIA / IRISA slide 35

(3: Basic Gordon-Newell result) The convolution operator! Denote G = G(H).! Define f i (n) = X n i.! Clearly, G() is the convolution of f 1 (),, f N () (recall that convolution is commutative and associative). Open QN G. Rubino, INRIA / IRISA slide 36

(3: Basic Gordon-Newell result) The marginal distribution Denote by π i (n) = Pr(n in i) (always, in equilibrium). We have π i (n) = n 1 + +n N =H, n i =n = Xn i G(i) (H n) G(H) Pr(n 1 in 1,..., n N in N) where G (i) () is the convolution of f 1 (),, f i 1 (), f i+1 (),, f N () Open QN G. Rubino, INRIA / IRISA slide 37

(3: Basic Gordon-Newell result) P r(at least k at i) = Pr(L (i) k) = H Xi ng(i) (H n) G(H) = n=k = Xk i X k i G(H) H k n=0 G(H k). G(H) X n i G (i) (H k n) Open QN G. Rubino, INRIA / IRISA slide 38

(3: Basic Gordon-Newell result) Throughputs! We know that T i = T V i for some T. Since N i=1 T i = T, T is called mean global throughput.! We have Using the previous slide, T i = (1 π i (0))µ i = Pr(L (i) 1)µ i. T i = X ig(h 1) G(H)! The mean global throughput is, then, G(H 1) µ i = V i. G(H) T = G(H 1) G(H). Open QN G. Rubino, INRIA / IRISA slide 39

(3: Basic Gordon-Newell result)! In the example, G(1) = 2a + b T = G(1) G(2) = 2a + b 3a 2 + 2ab + b 2 = 49 34 µ. Open QN G. Rubino, INRIA / IRISA slide 40

4: Convolution algorithm Main idea! Recall that π n1,,n N = N i=1 Xn i i G(H).! The problem is G(). Using its definition G(H) = n 1 + +n N =H N i=1 X n i i. is useless except for very small models.! Key idea: G() is the convolution of f 1 (),, f N () with f i (n) = Xi n, and the convolution is commutative and associative. Open QN G. Rubino, INRIA / IRISA slide 41

(4: Convolution algorithm) Convolution algorithm! Denote by G i () the convolution of f 1 (),, f i ().! We have that G 1 () = f 1 (), G() = G N () and that G i () is the convolution of G i 1 () and f i () for i 2.! Working ( this way, the computation of G() moves from a complexity (N+H 1 ) ) Θ to θ(nh). H Open QN G. Rubino, INRIA / IRISA slide 42

(4: Convolution algorithm) Using convolutions Recall that everything can be computed from these convolutions:! Thoughputs: T = G(H 1) G(H) and T i = T V i! Marginals: π i (n) = Xn i G(i) (H n) G(H) (or H π i (k) = Xk i n=k G(H k) G(H) Open QN G. Rubino, INRIA / IRISA slide 43 )

(4: Convolution algorithm)! Mean number of customers: L i = H k=1 X k i G(H k) G(H)! Mean response time: R i = L i /T i (Little) Open QN G. Rubino, INRIA / IRISA slide 44

(4: Convolution algorithm) Implementing! We can exhibit another recurrence while computing G i (): G i (n) = G i 1 (n) + X i G i (n 1).! This means that to compute G() we can use the scheme for (i=1; i<=n; i++) for (h=1; h=h; h++) G[h] += X[i]*G[h-1] Open QN G. Rubino, INRIA / IRISA slide 45

(4: Convolution algorithm) Possible problems! Main difficulty: overflows or underflows while computing convolutions.! For instance, consider a ring composed of N identical./m/1 nodes, with H customers. Let µ i = 1 for all i. Then, By symmetry, L i = H/N, but G(n) = 1 N n ( n + H 1 Consider N = 20 and H = 100: L i = 5 but G() has very small values, most of them too small to be stored as double.! Some solutions exist (dynamic scaling, for instance). H ). Open QN G. Rubino, INRIA / IRISA slide 46

5: Mean Value Analysis (MVA) Main idea! Instead of a recurrence on the nodes, as in the convolution approach, we look for a recurrence on the customers.! Make explicit the dependency on the number of customers: L i (H), R i (H). Write S i = 1/µ i the mean service time.! Key result: R i (H) = S i [1 + L i (H 1)].! From L i (H) = T i (H)R i (H), T i (H) = T (H)V i and N i=1 L i(h) = H we obtain T (H) = H N i=1 V ir i (H). Open QN G. Rubino, INRIA / IRISA slide 47

(5: Mean Value Analysis (MVA)) MVA scheme! Start with L i (0) = 0! Call R(h) the network with h customers.! The parameters for R(h) are obtained from the following scheme: Compute the response times: R i (h) = S i [1 + L i (h 1)] for i = 1,, N Then, compute the global throughput: T (h) = h N i=1 V ir i (h). Finally, compute the mean queue lengths: L i (h) = T (h)v i R i (h) for i = 1,, N Open QN G. Rubino, INRIA / IRISA slide 48

(5: Mean Value Analysis (MVA)) Properties! MVA is robust (no overflow or underflow risk)! Complexity in θ(nh) (as for convolution)! The probabilistic interpretation of the key relationships leads to many other approximation algorithms, bounding techniques, etc. Open QN G. Rubino, INRIA / IRISA slide 49

(5: Mean Value Analysis (MVA)) An example of approximation technique based on MVA! In some problems, we have to evaluate many times a network with a large number H of customers. This can be costly.! Schweitzer s method: for H large, assume L i (H 1) H 1 H L i(h).! Write L i (H) as a function of L 1 (H 1),, L N (H 1) using the MVA recurrences: L i (H) = HX i [1 + L i (H 1)] N j=1 X j [1 + L j (H 1)] Open QN G. Rubino, INRIA / IRISA slide 50

(5: Mean Value Analysis (MVA))! Use Schweitzer s idea, solve the fixed-point equation [ HX i 1 + H 1 ] H y i y i = [ N j=1 X j 1 + H 1 ] H y j! It can be proved (using Brower s fixed point theorems) results about existence and unicity of a fixed point for the previous equation.! Many improvements of this scheme have been published. Open QN G. Rubino, INRIA / IRISA slide 51

(5: Mean Value Analysis (MVA)) Extensions! Gordon-Newell s result also holds if the nodes are./m/c or./m/ queues, for different multiclass extensions.! For instance, if node i is of the./m/ type, we have that for all population size H, R i (H) = 1 µ i.! If node i is./m/c i, then 1 if c i H, R i (H) = µ i 1 (1 L i (H 1)) if c i < H. µ i Open QN G. Rubino, INRIA / IRISA slide 52

6: Applications Client-server models A standard model of a client-server architecture is depicted in the following figure: C clients requests server services (answers) Open QN G. Rubino, INRIA / IRISA slide 53

(6: Applications) Client-server models (cont.)! This leads to use a closed queueing network as a representative model.! For instance, the goal can be to evaluate the maximum of the number of customers that can be served in order to keep the response time low enough.! The model can be made more precise, if relevant, as for instance in the next picture. Open QN G. Rubino, INRIA / IRISA slide 54

(6: Applications) Client-server models (cont.) the clients (a./m/k node) p a database (say) 2 3 1 p the server Here, a fraction p of the request sent to the server are followed by a request to another resource (a database), and then the answer arrives at the client. Open QN G. Rubino, INRIA / IRISA slide 55

(6: Applications) Flow control using windows mechanisms! Consider a network connection where some window mechanism is used to work with a maximum of H packets.! If the connection uses N routers, a simple model allowing to perform some global performance analysis is a closed queuing network with N nodes and H customers organized as a ring.! As an exercise, assume that we use such a model with identical routers, represented as./m/1 nodes with same mean service time S. Compute the mean RTT (Round Trip Time). Open QN G. Rubino, INRIA / IRISA slide 56

(6: Applications) Flow control using windows mechanisms (cont.) 1 2 N H customers! We have already observed that, by symmetry, the mean # of customers at node i is L i = H/N.! The main MVA recurrence gives us the response time: [ R i = S[1 + L i (H 1)] = S 1 + H 1 ]. N! The mean throughput in i is given by T i = L i R i = H S(N + H 1).! RTT = N i=1 R i = S(N + H 1) Open QN G. Rubino, INRIA / IRISA slide 57

7: Loss nets Telephone switches! A switch in a telephone system can be seen as a G/G/c/c queue. Integer c is the # of channels or circuits.! The blocking probability or loss probability is the probability that an arriving call finds all channels busy.! Computing this blocking probability is the basic task in telephony dimensioning. Open QN G. Rubino, INRIA / IRISA slide 58

(7: Loss nets) Blocking probabilities! Assuming that calls arrive according to a Poisson process with rate λ, and that the duration of a call is exponentially distributed with mean S, the blocking probability (M/M/c/c model) is E(ϱ, c) = ϱ c /c! c i=0 ϱi /i!, where ϱ = λs.! Insensitivity: recall that if we keep the same mean call duration but we change the distribution (that is, if we consider a M/G/c/c model with same ϱ), the result is the same. Open QN G. Rubino, INRIA / IRISA slide 59

(7: Loss nets) Networks of switches! In telephone systems, switches are interconnected by links. link l (it has c l circuits) switch i! Each link has several channels or circuits.! Calls arrive at a switch and follow a path along the network before leaving. Open QN G. Rubino, INRIA / IRISA slide 60

(7: Loss nets) Networks of switches (cont.)! We associate a call with a route along the graph, that can be seen as a sequence of consecutive switches or links, without repetitions (acyclic).! Each call occupies an available circuit on each link of its route. If there is no available link, that is, if at least at one link of the route all circuits are busy, the call is blocked or lost.! As in the single-node case, the most important engineering task in telephony is the dimensioning of the system, which needs to evaluate the blocking probability. Open QN G. Rubino, INRIA / IRISA slide 61

8: Product-form Notation and assumptions! # of switches: N! # of links: L! link l has c l circuits! we assume that calls duration has mean 1 with exponential distribution Open QN G. Rubino, INRIA / IRISA slide 62

(8: Product-form) Notation and assumptions (cont.)! there are R routes! the flow of calls arriving to route r is Poisson, with rate λ r! route r is characterized by the sequence of consecutive links that are followed by the associated calls! we define matrix A = (A rl ), which is R L; A rl = 1 {link l belongs to route r}. Open QN G. Rubino, INRIA / IRISA slide 63

(8: Product-form) State space! We analyze the stochastic process L t = (L (1) t L (r) t is the # of calls in progress following route r.! We must respect the constraint,, L (R) t ), where for every link l, R r=1 L (r) t A rl c l.! L t is Markov (homogeneous) with finite state space { } R S = (n 1,, n R ) IN R : for every link l, n r A rl c l. r=1! Denoting n = (n 1,, n R ) and c = (c 1,..., c L ), S = { (n 1,, n R ) IN R : na c }. Open QN G. Rubino, INRIA / IRISA slide 64

(8: Product-form) Stationary (product-form) solution! Assume that for any l we have c l =. In this case, the r.v. L (1) t,, L (R) t are independent, the distribution of L (r) is Pr(L (r) = n) = e λ r λ n r n! = p(λ r, n), and the joint stationary distribution is ( ) Pr (L (1),, L (R) ) = (n 1,, n R ) = p(λ 1, n 1 ) p(λ R, n R ). Open QN G. Rubino, INRIA / IRISA slide 65

(8: Product-form)! In our model, routes interfere, but, remarkably enough, the joint distribution is still proportional to the previous one: Pr ( ) (L (1),, L (R) ) = (n 1,, n R ) = p(λ 1, n 1 ) p(λ R, n R ) G.! G is a normalizing constant: G = (n 1,,n R ) S p(λ 1, n 1 ) p(λ R, n R ).! The proof can be done in a straightforward manner as for Jackson or Gordon-Newell models. Open QN G. Rubino, INRIA / IRISA slide 66

(8: Product-form) Blocking probabilities! Let us denote by S r the following space: S r = {(n 1,, n R ) S : (n 1,, n r + 1,, n R ) S}.! A call in route r is lost if it arrives when the network state is in S r.! Using PASTA, where blocking probability in route r = B r = G r G, G r =! Writing S( c) and S r ( c), (n 1,,n R ) S r p(λ 1, n 1 ) p(λ R, n R ). S r ( c) = S( c 1 r A), where 1 r is the vector (δ r1,, δ rr ). Open QN G. Rubino, INRIA / IRISA slide 67

(8: Product-form) Computational aspects! The irregular shape of the state space makes difficult the analysis of this kind of models if its size is not very small.! There are recurrences similar to those of Gordon-Newell networks, but they are more complex due to the model s structure.! Other possibilities exist, for instance, using Monte Carlo to approximate the numerator and the denominator of the expression in B r = G r /G. Open QN G. Rubino, INRIA / IRISA slide 68

(8: Product-form) Back to a single node! Consider the case of a single node, but with K flows (for instance, K different types or classes or calls) arriving to a switch with c channels.! Class-k calls arrive with mean intensity λ k and their calls last a random time with exponential distribution and mean 1/µ k.! This is a multiclass M/M/c/c queue with K classes {! State space: S = n = (n 1,, n K ) IN K K : k=1 n k c}. Open QN G. Rubino, INRIA / IRISA slide 69

(8: Product-form)! The analysis of this model gives π n = 1 G ϱ n 1 1 ϱn K K n 1! n K!. The proof consists of verifyng that the evolution of the state with time is Markov irreducible, of writing the balance equations and then verifying that the given expression satisfies them.! See that the loss probability is the same for any class, and that it is given by p L = π n. n: n 1 + +n K =c! Let us define N = total number of units in the queue. Open QN G. Rubino, INRIA / IRISA slide 70

(8: Product-form) We have Pr(N = m) = = = 1 G = 1 G n: n 1 + +n K =m n: n 1 + +n K =m 1 m! where ϱ = ϱ 1 + + ϱ K. 1 m! ϱm, π n 1 G n: n 1 + +n K =m ϱ n 1 1 ϱn K K n 1! n K! m! n 1! n K! ϱn 1 1 ϱn K K! So, N behaves as the # of ongoing calls in the classic Erlang B model, and thus the loss probability wee are looking for is simply p L = E(ϱ, c) = ϱ c c! c j=0 Open QN G. Rubino, INRIA / IRISA slide 71 ϱ j j!.

9: Erlang fixed point approach Asymptotic behavior! It can be shown that if c l and λ r such that c l /λ r is kept constant, B r 1 (1 B l ) l route r where B l is the locking probability of link l.! In the limit, the links behave independently. Open QN G. Rubino, INRIA / IRISA slide 72

(9: Erlang fixed point approach) The Erlang fixed point idea! Assume that the links behave independently. The flow of calls in route r arrives at link l with mean rate (1 B j ). λ r j route r, j l! The global rate arriving at node l is then ν l = R λ r r=1 j route r, j l (1 B j ).! Now, use B l = E(ν l, c l ), to obtain the fixed point equations for all link l, ν l = R λ r r=1 j route r, j l (1 E(ν j, c j )). Open QN G. Rubino, INRIA / IRISA slide 73

(9: Erlang fixed point approach)! Equivalently, we have for all link l, B l = E R λ r r=1 j route r, j l (1 B j ), c l.! It has been shown that these fixed point equations have a solution and that it is unique.! The accuracy of this approximation is, in general, very good if the network is large. Open QN G. Rubino, INRIA / IRISA slide 74