Queueing Networks Stochastic models of resource sharing systems computer, communication, traffic, manufacturing systems Queueing Network a system model set of service centers representing the system resources that provide Queueing Networks service to a collection of customers that represent the users Customers compete for the resource service => queue QN are powerful and versatile tool for system performance evaluation and prediction Stochastic models based on * queuing system models (single service center) Simonetta Balsamo, Andrea Marin represent the system as a unique resource Università Ca’ Foscari di Venezia * queueing networks represent the system as a set of interacting resources Dipartimento di Informatica, Venezia, Italy => model system structure => represent traffic flow among resources School on Formal Methods 2007: Performance Evaluation Bertinoro, 28/5/2007 System performance analysis * derive performance indices (e.g., resource utilization, system throughput, customer response time) * analytical methods exact, approximate * simulation S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 0 SFM ‘07 - PE 1

Page ‹n.› Outline Introduction: the queue I) Queueing systems - basic QN: Queueing Systems various hypotheses analysis to evaluate performance indices underlying stochastic Markov process - Customers arrive to the service center II) Queueing networks (QN) ask for resource service model definition possibly wait to be served => queueing discipline analysis to evaluate performance indices leave the service center types of customers: multi-chain, multi-class models types of QN Markovian QN underlying stochastic Markov process service facility arrivals departures III) Product-form QN have a simple closed form expression of the stationary state distribution BCMP theorem queue => efficient algorithms to evaluate average performance measures Solution algorithms for product-form QN Convolution, MVA, RECAL, … - under exponential and independence assumptions IV) Properties of QN one can define an associated stochastic continuous-time Markov process - exact aggregation - insensitivity to represent system behaviour Extensions and application examples special system features (e.g., state-dependent routing, negative customers, - performance indices are derived from the solution of the Markov process customers batch arrivals and departures and finite capacity queues)

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 2 SFM ‘07 - PE 3

Page ‹n.› Stochastic processes Markov processes Discrete-time Markov process Stochastic process: set of random variables {Xn | n=1,2,...} {X(t) | t ∈ T} if the state at time n + 1 only depends on the state probability at time n and defined over the same probability space indexed by the parameter t, called time is independent of the previous history

each X(t) random variable Prob{Xn+1=j|X0=i0;X1=i1;...;Xn=in} =Prob{Xn+1=j|Xn=in} takes values in the set Γ called state space of the process ∀n>0, ∀j, i0, i1,..., in ∈ Γ Both T (time) and Γ (space) can be either discrete or continuous Continuos-time Markov process Continuous-time process if the time parameter t is continuous {X(t) | t ∈ T} Discrete-time process if the time parameter t is discrete Prob{X (t) =j|X(t0) =i0;X(t1)=i1;...;X(tn)=in} =Prob{X (t) =j| X(tn)=in} {Xn | n∈ T } ∀t0,t1,...,tn,t : t00, ∀j, i0, i1,..., in ∈ Γ Joint probability distribution function of the random variables X (ti) Markov property Pr{X (t ) ≤x ; X (t )≤x ; . . . ; X (t ) ≤x } 1 1 2 2 n n The residence time of the process in each state is distributed according to for any set of times t ∈ T , x ∈ Γ, 1≤i≤n, n≥1 geometric for discrete-time Markov processes i i negative exponential distribution for continuous-time Markov processes Discrete-space Γ Markov processes are called Markov chain S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 4 SFM ‘07 - PE 5

Page ‹n.› Analysis of Markov processes Analysis of Markov processes

Discrete-time Markov chain Continuous-time Markov chain

{Xn | n=1,2,...} {X(t) | t ∈ T} homogeneous if the one-step conditional probability is independent on time n homogeneous if the one-step conditional probability only depens on the

pij =Prob{Xn+1=j|Xn=i} ∀n>0, ∀i,j∈ Γ interval width p (s) =Prob{X(t+s) =j| X(t) =i} t>0, i,j∈ Γ P=[pij] state transition probability matrix ij ∀ ∀

If the stability conditions holds, we can compute the Q = lim s→0 (P(s) - I)/s stationary state probability Q=[qij] matrix of state transition rates (infinitesimal generator)

π =[π0, π1, π2, …]

πj =Pr{X=j} ∀j∈ Γ If the stability conditions holds, we compute the stationary state probability

For ergodic Markov chain (irreducible and with positively recurrent aperiodic states) π π =[π0, π1, π2, …] can be computed as For ergodic Markov chain (irreducible and with positively recurrent aperiodic states) as

π Q = 0 with π =1 π = π P with ∑j πj =1 ∑j j system of global balance equations system of global balance equations

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 6 SFM ‘07 - PE 7

Page ‹n.› Birth-death Markov processes Birth-death Markov processes

Sufficient condition for stationary distribution State space Γ = N π =[π0, π1, π2, …] The only non-zero state transitions are those ∃ k : ∀k> k λ < µ from any state i to states i − 1, i, i + 1, ∀i ∈ Γ 0 0 k k Matrix P (discrete-time) or Q (continuous-time) is tri-diagonal Special case: constant birth and death rates

λi birth transition rate , i≥0 λi = λ birth transition rate , i≥0 µi death transition rate, i≥1 continuos-time Markov chain µi = µ death transition rate, i≥1 q = i≥0 i i+1 λi Let ρ= λ / µ q = µ i≥1 i i-1 i If ρ<1 q i i = -(λi + µi ) i≥1 q = -λ 00 0 π = [ k ] -1 = 1- q = 0 |i-j|>1 0 ∑k ρ ρ i j k πk = π0 (λ / µ)

k πk = (1- ρ) ρ k≥0

Closed-form expression Normalizing condition Geometric distribution

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 8 SFM ‘07 - PE 9

Page ‹n.› Basic queueing systems Basic queueing systems

Single service center n Single service center q w s

1 sseerrvveenrte 1 2 … sseervrveenrte 2 ! … m

qcuoeduae t t sseervrveenrte m w s ppooppuolaltaioznione t tqr Δ : interarrival time w : number of customers in the queue tw : queue waiting time Customers resources offering a service s : number of customers in service ts : service time => resource contention n : number of customers in the system tr : response time

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 10 SFM ‘07 - PE 11

Page ‹n.› Definition of a queueing systems Analysis of a queueing systems • system analysis • The queueing system is described by Transient for a time interval, given the initial conditions * the arrival process Stationary in steady-state conditions, for stable systems * the service process * the number of servers and their service rate • Analysis of the associated stochastic process that represents system * the queueing discipline process behavior * the system or queue capacity Markov stochastic process * the population constraints birth and death processes • Evaluation of a set of performance indices of the queueing system • Kendall’s notation A/B/X/Y/Z * number of customers in the system n A interarrival time distribution (Δ) * number of customers in the queue w B service time distribution (t ) s * response time t X number of servers (m) r Y system capacity (in the queue and in service) * waiting time tw Z queueing discipline * utilization U A/B/X if Y = ∞ and Z = FCFS (default) * throughput X Examples: A,B : D deterministic (constant) random variables: evaluate probability distribution and/or the moments M exponential (Markov) average performance indices Ek -k * average number of customers in the system N=E[n] G general * mean response time R=E[tr] Examples of queueing systems: D/D/1, M/M/1, M/M/m (m>0), M/G/1, G/G/1

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 12 SFM ‘07 - PE 13

Page ‹n.› Some basic relations in queueing systems A simple example: D/D/1

Relations on random variables n= w + s a s tr = tw + ts => • deterministic arrivals: constant interarrival time (a) N = E[w] + E[s] • deterministic service: each customers have the same service demand (s) R = E[tw] + E[ts] • transient analysis Little’s theorem from time t=0 N = X R • if s

The average number of customers in the system is equal to the throughput times the average response time then U= … • if s=a Very general assumptions • if s>a Can be applied at various abstraction levels (queue, system, subsystem) Basic relation used in several algorithms for Queueing Network models and solution algorithms for product-form QN then U= …

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 14 SFM ‘07 - PE 15

Page ‹n.› A simple example: D/D/1 Basic queueing systems: M/M/1

Arrival Poisson process, with rate λ • transient analysis (exponential interarrival time) µ n(t) number of customer in the system at time t λ Exponential service time with rate µ if n(0)=0 empty system at time 0 E[t ] = 1/µ then s Single server n(t) = 0 if sa for t≥0     birth-death continuous-time Markov chain with constant rates λ and µ • stationary analysis stability condition: s≤a If arrival rate (1/a) ≤ service rate (1/s) λ λ λ λ λ λ ⇒The system reaches the steady-state ⇒n ∈ {0,1} 0 1 … k-1 k k+1 … Prob{n=0} = (a-s)/a Prob{n=1} = s/a • w = 0 tw = 0 tr = s (deterministic r.v.) µ µ µ µ µ µ • X=1/a throughput • U = s/a utilization

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 16 SFM ‘07 - PE 17

Page ‹n.› Basic queueing systems: M/M/1 Basic queueing systems: M/M/m

Arrival Poisson process, with rate λ µ 1 µ (exponential interarrival time) • stationary analysis λ Exponential service time with rate µ 2 stability condition: λ < µ µ E[ts] = 1/µ λ m servers … traffic intensity ρ= λ / µ µ m System state: n stationary state probability πk = Prob {n = k} k ∈ N Associated stochastic process: k πk = ρ (1 - ρ) k≥0 birth-death continuous-time Markov chain with rates

N = ρ / (1 - ρ) λk=λ µk=min{k,m} µ R = 1 / (µ - λ) (Little’s theorem) λ λ λ λ λ λ λ λ λ λ X = λ U = ρ 0 1 … m-1 m m+1 … k-1 k k+1 …

E[w] = 2 / (1 - ) ρ ρ µ 2µ (m-1)µ mµ mµ mµ mµ mµ mµ mµ

E[tw] = (1 / µ) ρ / (1 - ρ) (Little’s theorem)

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 18 SFM ‘07 - PE 19

Page ‹n.› Basic queueing systems: M/M/m Basic queueing systems: M/M/∞ µ 1 µ • stationary analysis 2 Arrival Poisson process, with rate λ µ (exponential interarrival time) λ λ µ … Exponential service time with rate µ stability condition: λ < m µ … m µ E[ts] = 1/µ traffic intensity ρ= λ / m µ infinite identical servers µ No queue … stationary state probability π = π (m ρ)k /k! 1≤k≤m k o System state: n π = π mm ρ k /m! k>m k o Associated stochastic process: -1 m-1 k m birth-death continuous-time Markov chain with rates (m#) (m#) 1 ! = + λk=λ 0 " k! m! (Erlang-C formula) k = 0 1-# µk=k µ

2 λ λ λ λ N = m ρ + πm ρ / (1 - ρ) λ λ 2 R = πm / (m µ (1 - ρ)) ) + 1 / µ (Little’s theorem) 0 1 … k-1 k k+1 … m X = λ U = ρ Prob{queue}=∑k≥m πk = πo (m ρ ) /m! (1 - ρ) 2 (k-1) k (k+1) (k+2) 2 µ µ µ µ µ µ E[w] = πm ρ / (1 - rρ) 2 E[tw] = πm / ((1 - ρ) µ) (Little’s theorem)

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 20 SFM ‘07 - PE 21

Page ‹n.› Basic queueing systems: M/M/∞ Basic queueing systems: M/G/1 µ • stationary analysis Arrival Poisson process, with rate λ (exponential interarrival time) µ λ µ the system is always stable λ General service time with rate µ … E[ts] = 1/µ µ 1/2 traffic intensity ρ= λ / µ CB = (Var [ ts]) / E[ts] coefficient of variation of ts … Single server The state defined as n (number of customers in the system) does not lead to a -ρ k stationary state probability πk = e ρ /k! k≥0 Markov process

Poisson distribution State description n for system M/M/1 gives a (birth-death) continuous-time Markov chain because of the exponential distribution (memoryless property) N = ρ We can use a different (more detailed) state definition to define a Markov process

R = 1 / µ (e.g., the number of customers and the amount of service already provided to the customer X = λ currently in service) U = ρ E[w] = E[tw] = 0 The associated Markov process is not birth-death Analysis of an embedded Markov process Delay queue Z-transform technique

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 22 SFM ‘07 - PE 23

Page ‹n.› Basic queueing systems: M/G/1 Coxian distribution Coxian distribution are E[ts] = 1/µ formed by a network of 1/2 CB = (Var [ ts]) / E[ts] λ µ exponential stages Khinchine Pollaczeck theorem for any queueing discipline independent of service time without pre-emption

2 2 µ1 µ 2 µ L ! (1 + C ) B a 1 a 2 E[ w ] = ! + 1 2 … L 2(1-!) b1 b 2 b L=1 N = E[w] + l E[ts] R = N / X L exponential stages Stability condition: λ < µ Stage service rate µ l probabilities a l, b : a + b =1 PASTA theorem: Poisson Arrivals See Time Average l l l l Coxian distributions have rational Laplace transform The state distribution and moments seen by a customer at arrival time Can be used is the same as those observed by a customer at arbitrary times - to represent general distribution with rational Laplace transform in steady-state conditions - to approximate any general distribution with known bounds PH-distributions (phase-type) have similar representation and property

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 24 SFM ‘07 - PE 25

Page ‹n.› Queueing disciplines Queueing Networks

algorithms • A queueing system describes the system as a unique resource FCFS first come first served • A queueing network describes the system as a set of interacting resources LCFS last come first served Queueing Network LCFSPr * idem with pre-emption a collection of service centers that provide service to a set of customers Random - open external arrivals and departures Round Robin each customer is served for a fixed quantum δ - closedconstant number of customers (finite population) PS * for δ→0 - mixed if it is open for some types of customers, closed for other types all the customers are served at the same time for service rate µ and n customers, each - Customers receives service with rate µ /n arrive to a service center (node) (possibly external arrival for open QN) IS * Infinite Serves no queue (delay queue) ask for resource service SPTF Shortest Processing Time First possibly wait to be served (queueing discipline) SRPTF Shortest Remaining Processing Time First at completion time exit the node and - immediately move to another node - with/without priority - or exit the QN - abstract priority/dependent on service time in closed QN customers are always in queue or in service - with/without pre-emption

* Immediate service

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 26 SFM ‘07 - PE 27

Page ‹n.› Queueing Networks Examples Queueing Networks Definition

open QN Informally, a QN is defined by the set of service centers Ω = {1, . . . , M } the set of customers the network topology

Each service center is defined by - the number of servers usually independent and identical servers - the service rate either constant or dependent on the station state - the queueing discipline closed QN p 12 Customers are described by 2 - their total number (closed QN) - the arrival process to each service center (open QN) 1 - the service demand to each service center … service demand: expressed in units of service service rate of each server: units of service / units of time => service time = service demand/service rate M p non-negative random variable with mean denoted by 1/μ 1M

N customers S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 28 SFM ‘07 - PE 29

Page ‹n.› Queueing Networks Definition Types of customers: classes, chains

The network topology In simple QN we often assume that all the customers are statistically identical models the customer behavior among the interconnected service Modeling real systems can require to identify different types of customers - centers - service time - assume a non-deterministic behavior represented by a probabilistic model - routing probabilities

- pij probability that a customer completing its service in station i immediately Multiple types of customers: concepts of class and chain. moves to station j, 1≤i,j≤ M A chain forms a permanent categorization of customers - pi0 for open QN probability that a customer completing its service in station i a customer belongs to the same chain during its whole activity in the network immediately exits the network from station i A class is a temporary classification of customers - P = [p ], routing probability matrix 1≤i,j≤ M ij a customer can switch from a class to another during its activity in the network where 0≤ pij ≤1, ∑ i pij =1 for each station i (usually with a probabilistic behavior)

A QN is well-formed if it has a well-defined long-term customer behavior: The customer service time in each station and the routing probabilities usually - for a closed QN if every station is reachable from any other with a non-zero depend on the class it belongs to probability - for an open QN add a virtual station 0 that represents the external behavior, that Multiple-class single-chain QN generates external arrivals and absorbs all departing customers, so obtaining a Multiple-class and multiple-chain QN closed QN. Definition as for closed QN. R set of classes of the QN R number of classes C set of chains C number of chains

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 30 SFM ‘07 - PE 31

Page ‹n.› Types of customers: classes, chains Types of customers: classes, chains

Example of multiple-class and multiple-chain QN R classes M=2 stations C chains R=3 classes C=2 chains R ={1,2,3}

Classes can be partitioned into chains, such that there cannot be a customer switch Chain 1 is open and formed by classes 1 and 2 from classes belonging to different chains Chain 2 is closed and formed by class 3 Class 2 P(c) routing probability matrix of customers for each chain c ∈ C (c) Station 1 Station 2 - pir,js probability that a customer completing its service in station i class r immediately moves to station j, class s, 1≤i,j≤ M , r,s in R, classes of chain c Class 1 (c) - pir,0 probability that a customer completing its service in station i class r immediately exits the network Class 3 - K (c) population of a closed chain c ∈ C Ri set of classes served by station i - p (d) probability of an external arrival to station i class r for an open chain d ∈ C 0,ir Ec = {(i,r): r ∈ Ri set, 1≤i≤M, class r ∈ chain c} R (c) set of classes served by station i and belonging to chain c A QN is said to be i

open if all its chains are open R1 = {1,2,3} R2 ={1,3} closed if they are all closed E1 = {(1,1), (1,2),(2,1)} E2 = {(1,3), (2,3)} mixed otherwise (1) (1) (2) (2) R1 = {1,2} R2 ={1} R1 = R2 = {3}

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 32 SFM ‘07 - PE 33

Page ‹n.› Types of customers: classes, chains QN performance indices

Example of single-class and multiple-chain QN R=C Local performance indices (only one class in each chain)

Related to a single resource i (a ser vice center) average indices Ui utilization M=3 stations Xi throughput R=2 classes C=2 chains R ={1,2} Ni mean queue length no class switching random variables Ri mean response time number of customers in station i Chain 1 is open and formed by one class ni number of customers in station i and class r Chain 2 is closed and formed by one class nir (c) ni number of customers in station i and chain c

Chain 1 ti customer passage time through the resource

Station 1 Station 2 distribution of ni U utilization π (n ) at arbitrary times i i X throughput Global performance indices N mean population Chain 2 (for open networks) Station 3 Related to the overall network average indices R mean response time

passage time

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 34 SFM ‘07 - PE 35

Page ‹n.› Notation - QN Markovian QN S network state Network model parameters (single class, single chain) E set of all feasible states of the QN M number of nodes λ total arrival rate K number of customers (closed network) µi service rate of node i Markovian network P=[pij] routing matrix p0i arrival probability at node i the network behavior can be represented by a ei visit ratio at node i, solution of homogeneous continuous time Markov process M

E discrete state space of the process ei = λ p0i + Σj ej pji 1≤i≤M Q infinitesimal generator if P (network routing matrix) irreducible S = (S1,…,SM) system state Si node i state which includes ni , 1≤i≤M then ∃ ! stationary state distribution π = {π(S), S∈E} solution of the global balance equations Example: M nodes, R classes and C chains , single-class multi-chain (R=C) n = (n ,…, n ) network state 1 M π Q = 0 , ΣS∈E π(S) = 1 ni = (ni1,…, niR) station i state, 1≤i≤M • the definition of S, E and Q depends on We can describe QN behavior by an associated stochastic process ❖ the network characteristics ❖ the network parameters Under exponential and independence assumption we can define an homogeneous continuous-time Markov process

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 36 SFM ‘07 - PE 37

Page ‹n.› Exact analysis of Markovian QN Example of Queueing Network: two-node cyclic

Solution algorithm for the evaluation of average performance indices and joint closed network queue length distribution at arbitrary times (π) in Markovian QN

FCFS service discipline 1 Definition of system state and state space E µ exponential service time µ 1 2 2 Definition of transition rate matrix Q Independent service time 3 Solution of global balance equations to derive π 4 Computation from π of the average performance indices S = (S1,S2) system state K customers Si = ni birth-death Markov process This method becomes unfeasible as |E| grows, closed-form solutioµn µ µ µ i.e., proportionally to the dimension of the model 2 2 2 2 (number of customers, nodes and chains) Example: single class closed QN with M nodes and K customers |E|= M+K-1 K 0, K 1, K-1 … K-1, 1 K, 0

⇒ exact product-form solution under special constraints µ µ µ µ ⇒ approximate solution methods 1 1 1 1

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 38 SFM ‘07 - PE 39

Page ‹n.› Example of Queueing Network: two-node cyclic Example of Queueing Network: tandem

closed network open network µ λ µ µ 1 2 µ 1 2 Arrival Poisson process Exponential service times K customers Independence assumption FCFS discipline Let ρ = (µ1/µ2) S = (S1,S2) system state Si = ni n2 π(n1, n2)=(1/G) ρ 0≤n1≤K , n2=K-n1 closed-form solution E = { (n1, n2) | ni≥0} state space k K+1 π(n1, n2) stationary state probability G = Σ 0≤k≤K ρ = (1- ρ ) / (1- ρ ) NON birth-death Markov process - complex structure - global balance equations

k π(K-k,k)= π(K,0) ρ 0≤k≤K BUT node 1 can be analyzed independently K+1 π(K,0)= (1- ρ ) / (1- ρ ) => it is an M/M/1 system with parameters λ and µ1 k => π1(k)= ρ1 (1-ρ1) k≥0 if ρ1 = λ / µ1<1 node 2 ? arrival process at node 2?

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 40 SFM ‘07 - PE 41

Page ‹n.› Burke’s Theorem Some extensions

Poisson(λ) exp Poisson(λ) An immediate application of Burke theorem’s together with The departure process of a stable M/M/1 is a Poisson process with the property of composition and decomposition of Poisson processes the same parameters as the arrival process leads to a closed form solution of the state probability for a class of QN with exponential service time distribution Burke theorem’s also holds for M/M/m and M/G/∞ FCFS discipline

exponential interarrival time (Poisson arrivals, parameter γi ) For the tandem two node network: independence assumption acyclic probabilistic routing topology (triangular routing matrix P) ⇒Node 2 has a Poisson arrival process (λ) M ⇒Isolated node 2 is an M/M/1 system with parameters λ and µ 2 ! (n , n , …, n ) = Prob {n } k 1 2 M " i i ⇒π2(k) = ρ2 (1-ρ2) k≥0 if ρ2 = λ / µ2<1 i = 1

k where Probi(k) = ρi (1-ρi) k≥0 if ρi = λ i / µi<1 Moreover for the independence assumption and λi = γ i + Σj λj pji 0≤i≤M n n π(n1, n2)= π1(n1 ) π2(n2)= ρ1 1 ρ2 2 (1-ρ1) (1-ρ2) (traffic equations) closed-form solution That satisfies the process global πQ=0 Note: Burke’s theorem does not hold when feedback is introduced, but…

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 42 SFM ‘07 - PE 43

Page ‹n.› Product-form Queueing Networks BCMP Queueing Networks Types of node product-form solution of π (under certain constraints) 1) FCFS and exponential chain independent service time 1 M # 2) PS "(S) = d(n) gi (n i ) G i=1 3) IS and Coxian service time The stationary state probability π can be computed as the product of a set of 4) LCFCPr functions each dependent only on the state of a station Other average performance indices can be derived by state probability π For types 2-4 the service rate may also depend on the customer chain. (c) Jackson theorem open exponential-FCFS networks Let µi denote the service rate for node i and chain c. => (c) = for each chain c, for type-1 nodes. Gordon-Newell theorem closed exponential-FCFS networks µi µi BCM!P th eorem open, closed, mixed QN with various types of nodes Consider single-class multiple-chain QN Consider open, closed, mixed QN with M nodes of types 1-4, Poisson arrivals with parameter λ(n) dependent on the overall QN population n, The solution is obtained as if R classes and C chains, population K (c) for each closed chain c ∈ C , (c) the QN is formed by independent M/M/1 (or M/M/m) nodes external arrival probabilities p0,i for each open chain c ∈ C , routing probability matrices P(c) for each chain c ∈ C , that define the traffic equation system derive the visit ratio of (relative) (c) Computationally efficient exact solution algorithms throughputs ei Convolution Algorithm (c) (c) (c) ei = p0,i + Σj ej pji 1≤i≤M, 1≤c≤C

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 44 SFM ‘07 - PE 45

Page ‹n.› BCMP Queueing Networks BCMP Queueing Networks

BCMP theorem [Baskett, Chandy, Muntz, Palacios 1975] functions gi(ni) depend only on (c) (c) For open, closed, mixed QN with M nodes of types 1-4 and the assumptions node i parameters ei and µi and (c) (c) (c) (c) above, let ρi = ei / µi for each node i and each chain c. node i state ni (c) If the system is stable, i.e., if ρi <1 ∀i,∀c, C n n (c) R (c)i r i then the steady state probability can be computed as the product-form: (ρ"i ) f ((nn ) = nn ! ir for node s of type 1, 2 and 4 (FCFS, PS and LCFSPr) gi ii) = i!i ! se il nodo i è FIFO, PS, LIFOPr r = 1 n(icr!) 1 M c=1 ni ! "(S) = d(n)# g (n ) G i i i=1 C (c) n (c) (ρi ) i for nodes of type 3 (IS) gi (ni) = (c) where G is a normalizing constant, ∏ ni ! c=1 function d(n)=1 for closed network, and for open and mixed network (c) depends on the arrival functions as follows: Where ni number of customers in node i and chain c (r)(c) number of customers in node i n - 1 RC nn -- 11 ni ! d(n) = "((k)k) d(n) = " (k)(k) ! λ ! ! λ rc The proof is based on the a detailed definition of the network state k = 0 r = 1 k = 0 k=0 c=1 k=0 and by substitution of the product-form expression into the global balance equations for arrival rates dependent on the number of customers in the network n, or of the associated continuous-time Markov process. in the network and chain c,

functions gi(ni) depend on node type as follows:

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 46 SFM ‘07 - PE 47

Page ‹n.› BCMP Queueing Networks - extensions BCMP Queueing Networks - extensions

The service rate of node i may depend on the The service rate of node i may depend on the A) the state of the node n C) i the state of a subnetwork H nH= Σ h∈H nh let xi(ni) a positive functions (capacity function) where H is a subset of stations that gives the relative service rate (x (1)=1) i let zH(nH) a positive functions defined similarly to xi above and the actual service rate for class r customers at node i is relative service rate when nH=1 xi(ni) µir => the product of functions ∏h∈H gh(nh) in the product-form is multiplied by factor => function gi(ni) in the product-form is multiplied by factor nH ni ∏ (1/ zH(a)) a=1 ∏ (1/ xi(a)) a=1 Note that multiservers can be modeled by type-A and type-B functions B) the state of the node in chain c n (c) i Example: PS or LCFSPr node with class dependent service rates and m servers (c) (c) let yi (ni ) a positive functions defined similarly to xi above can be modelled by => function in the product-form is multiplied by factor gi(ni) xi(ni) = min {m, ni}/ ni (c) (c) (c) yi (ni ) = ni ni Further BCMP extensions include (1/ y (c) (a)) ∏ ∏ i - other serving disciplines a=1 c ∈ Ri - special form of state-dependent routing (not for type 1 nodes) - special cases of blocking and finite capacity queues

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 48 SFM ‘07 - PE 49

Page ‹n.› BCMP QN - multi-class multi-chain BCMP QN - multi-class multi-chain

Consider multi-class multiple-chain QN functions gi(ni) depend only on (c) (c) node i and class r parameters eir and µir and Customers can move within a chain with class switching (c) node i and class r state nir (c) (c) routing probability matrices P = [pir,js ] for each chain c ∈ C , C n (c) that define the traffic equation system (c) ir (ρir ) (c) for nodes of type 1, 2 and 4 (FCFS, PS and LCFSPr) from which we derive the visit ratio of (relative) throughputs eir g (n ) = n ! i i i ∏ ∏ (c) nir ! (c) (c) (c) (c) (c) 1≤i≤M, s 1≤c≤C c=1 (c) eir = p0,ir + Σj Σs∈ Ri(c) ejs pir,js ∈ Ri r ∈ Ri

C (c) (c) (c) (c) (c) )nir Let ρir = eir / µir (ρir for nodes of type 3 (IS) M nodes, R classes C chains, multi-class multi-chain (R≠ C) gi (ni) = ∏ ∏ (c) nir ! n = (n ,…, n ) network state c=1 1 M (c) (1) (C) r ∈ Ri ni = (ni ,…, ni ) station i state, 1≤i≤M n (c) has components n (c) for each class r (c) i ir ∈ Ri Estensions: the state dependent functions can be defined for each class r and node i n number of customers in station i (c) (c) (c) i capacity function: yir (nii ) for each class r ∈ Ri 1≤c≤C (c) ni number of customers in station i and chain c for node types 2,3 and 4 (c) nir number of customers in station i and class r of chain c

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 50 SFM ‘07 - PE 51

Page ‹n.› Product-form QN Product-form QN and properties Under some assumptions local balance (e.g., non-priority scheduling, infinite queue capacity, non-blocking factors, state-independent routing) the effective rate at which the system i the effective rate at which the system it is possible to give conditions on leaves state ξ due to = enters state ξ due to - service time distributions a service completion of an arrival of a chain r customer at station i a chain r customer to station i - queueing disciplines to determine whether a well-formed QN yield a BCMP-like product-form solution If π satisfies the local balance equations => it satisfies also the global balance equations (LBEs) (GBEs) Properties strictly related to product-form ⇐ local balance LBEs are a sufficient condition for network solution M ⇒ M Solving LBEs is computationally easier than solving GBEs quasi-reversibility but it still requires to handle the set of reachable states station balance (can be a problem for open chains or networks) M ⇒ M for each station LBE is a property of a station embedded in a QN, since the considered states are still network states station balance Product-form for each station Note: a service center with work-conserving discipline and independent on service time local balance and exponentlial service time holds LBE

For non priority service centers

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 52 SFM ‘07 - PE 53

Page ‹n.› Product-form QN and properties Product-form QN and properties M => M property quasi-reversibility property

For a single queueing system: if the queue length at a given time t is independent an open queueing system holds M => M property if of the arrival times of customers after t and under independent Poisson arrivals per class of customers, of the departure times of customer before t then the departure processes are also independent Poisson processes then a queueing systems holds quasi-reversibility M ⇒ M property applies to the station in isolation A QN with quasi-reversible stations => QN has product-form solution It can be used to decide whether a station (with given queueing discipline and service time distribution) can be embedded in a product-form QN Quasi-reversibility property is defined for isolated stations

A station with M ⇒ M => the station has a product-form solution One can prove that all the arrival streams to a quasi-reversible system should be independent An open QN where each station has the M ⇒ M => the QN has M ⇒ M and Poisson, and all departure streams should be independent and Poisson For a QN with stations with non-priority scheduling disciplines property A system is quasi-reversible <=> it has M ⇒ M M ⇒ M for every station <=> local balance holds

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 54 SFM ‘07 - PE 55

Page ‹n.› Product-form QN and properties Product-form QN and properties

Station balance Insensitivity A scheduling discipline holds station balance property if For symmetric disciplines the QN steady state probabilities the service rates at which the customers in a position of the queue are served only depend on are proportional to the average of the service time distribution and the probability that a customer enters this position the (relative) visit ratio

symmetric scheduling disciplines State probabilities and average performance indices p position in the queue 1≤p≤n are independent of δ(p,n+1) probability that an arrival enters position p - higher moments of the service time distribution µ(n) service rate - possibly different routing matrices that yield the same (relative) visit ratios ϕi(p,n) proportion of the service to position p A symmetric discipline is such that: δ(p,n+1) = ϕi(p,n+1) ∀p, ∀n

examples: IS, PS, LCFSPr are symmetric Note: but FCFS does not yields station balance only symmetric scheduling disciplines allow product-form solution for

δ(p,n+1) = 1 if p=n+1, 0 otherwise, ϕi(p,n) = 1, if p=1, 0 otherwise non-exponential service distribution

station balance is defined for an isolated station symmetric disciplines immediately start serving a customer at arrival time => they are always pre-emptive discipline It is a sufficient condition for product-form

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 56 SFM ‘07 - PE 57

Page ‹n.› Product-form QN: further extensions Product-form QN: algorithms - single chain Special forms of state-dependent routing depending on state Algorithms for closed QN with M stations and K customers (single chain) of the entire network or of subnetworks and/or single service centers Polynomial time computational complexity

Special forms of QN with finite capacity queues and various blocking mechanisms Convolution various types of blocking evaluation of the normalizing constant G and average performance indices constraints depending on blocking type, topology and types of stations Batch arrivals and batch departures MVA direct computation of average performance indices Special disciplines (mean response time, throughput, mean queue length) example: Multiple Servers with Concurrent Classes of Customers PASTA theorem (arrival theorem) G-networks: QN with positive and negative customers that can be used to represent special system behaviors Convolution Negative customer arriving to a station reduces the total queue length by one if the queue based on a set of recursive equations, derivation of - marginal queue length distribution π (n ) length is positive and it has no effect otherwise. They do not receive service. i i - mean queue length Ni A customer moving can become either negative or remain positive - mean response time R Exponential and independence assumptions, solution based on a set of non linear traffic eq. i - throughput Xi Various extentions: e.g.,multi-class, reset-customers, triggered batch signal movement - utilization Ui

time computational complexity: O(M K)

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 58 SFM ‘07 - PE 59

Page ‹n.› Product-form QN: Convolution Algorithm Product-form QN: Convolution Algorithm Direct and efficient computation of the normalizing constant G in product- form formula Gj(0) = 1 1≤j≤M G0(0) = 1 Assume that stations G0(k) =0 0

k For the remaining stations with load-dependent service rate G (k) = f (n) G (k-n) convolution of vectors Gj and (gj(0)…gj(K)j ) j ! gjj (n) G jj-11 (k-n) we apply convolution n = 0

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 60 SFM ‘07 - PE 61

Page ‹n.› Product-form QN: Convolution Algorithm Product-form QN: Convolution Algorithm

Performance indices Performance indices throughput queue length distribution

GM(K-1) G (K-k) X (K) = e ! (k) = f (k) M - {j} j j G (K) πi (k)j = gi (nji) M GM(K)

utilization GM-{j}(k) normalizing constant of the network obtained by the original network * Uj(K) = 0 1≤j≤D, IS node with station j removed * Uj(K) = Xj(K) / µj mj D+1≤j≤D+I, simple station, mj servers K that simplifies as * U (K) = min{k, m } ! (k) / m D+I+1≤j≤M, load-dependent station j ! j j j k k = 1 ! (k) = ! G (K-k) - ! G (K-k-1) / G (K) j j { M j M } M

for D+1≤j≤D+I, simple station, mj servers mean queue length with GM(n)=0 if n<0

* Nj(K) = Xj(K) / µj 1≤j≤D, IS node K Potential numerical instability k GM(K-k) * N (K) = " D+1≤j≤D+I, simple station - scaling techniques j ! j G (K) k = 1 M K Computational complexity N (K) = k ! (k) * j ! j D+I+1≤j≤M, load-dependent station without load-dependent service rates O(MK) k = 1 2 2 with load-dependent service rates O(K+IK+L K ) S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 62 SFM ‘07 - PE 63

Page ‹n.› Convolution Algorithm - multi-chain QN Convolution Algorithm - multi-chain QN

Performance indices for each node i and chain c For the first D stations with IS disciplines we immediately obtain, for 0≤k≤K K (c) population of a closed chain c ∈ C n n K1(1) KR(c) MD ' MD' G (k) normalizing constant for the QN with a population 1 j G (K) (1) (c) GMD '(n) = ρ "j j1 … ρ"j jR of k = (k1,…kR) customers and the first j nodes ! ! Kn(1!…n) ! … K(!c) ! j = 1 j = 1 1 R Gj = ( Gj(0) … Gj(K) ) j (c) (c) G (k) = fg(n(n)) Throughput Xj = ej GM(K-1c) / GM(K) j ! # i i i i n " E(j,k) i = 1 (c) (c) Utilization Uj = ρj GM(K-1c) / GM(K) E(j,k) state space of the QN with j stations and k customers Mean queue length N (c) = (c (c) Prob{n =n} j ∑1≤a≤K ) ∑ n: n =a i Then G = GM(K) k Computational complexity (c) G (k) = fg(n(n) )G G (k(k-n-n)) convolution H = ∏1≤c≤C (K + 1) j ! j j j-1j-1 n = 0 an iteration step of Convolution for a simple station requires O(C H ) For the I stations with load-independent service rate we can write for a load- dependent station requires O(H 2)

CR Special case: QN where all the chains have K(c)=K=K/C , G (k) = G (k) + " (c )G (k - e ) 0!k!K D+1≤j≤D+I j j-1 ! ρjjr Gjj-1(K-r1c) C r = 1 with load-independent stations, then O(M C K ) c=1 S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 64 SFM ‘07 - PE 65

Page ‹n.› Product-form QN: MVA Product-form QN: MVA MVA 1) Mean response time - directly calculates the QN performance indices R (K) = 1 / µ 1≤j≤D, IS node (delay node) - avoids the explicitly computation of the normalizing constant j j - based on the arrival theorem and on Little’s theorem 1 Rj(K) = ( 1 + Nj(K-1) ) D+1≤j≤D+I, simple node (load-independent) µj Arrival theorem (Arrival theorem) K [Sevcik - Mitrani 1981; Reiser - Lavenberg 1980 ] n R (K) = ! (n-1 | K-1) K>0 In a closed product-form QN j ! µ (n) j n = 1 j

the steady state distribution of the number of customers at station i D+I+1≤j≤M , load-dependent at customer arrival times at i Throughput is identical to 2) the steady state distribution of the number of customers at the same station K Xj(K) = for each node j (Little’s theorem) at an arbitrary time with that user removed from the QN M e i R (K) ! e i This leads to a recursive scheme i = 1 j

3) Mean queue length Assume: 1,…, D constant service rate and IS discipline (type-3) (delay stations) (Little’s theorem) D + 1,…,D+I load independent service rates (simple stations) Nj(K) = Xj(K) Rj(K) for each node j D + I + 1,…, D + I + L = M load-dependent service rates

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 66 SFM ‘07 - PE 67

Page ‹n.› Product-form QN: MVA Product-form QN: MVA Computational complexity 3) For load dependent stations queue length distribution - For single-chain QN without load-dependent stations with K customers and M nodes, as Convolution O(KM ) Xj(K) !j(n | K) = !j(n-1 | K-1) 1"n"K , K>1 µj(n) 2 - For single-chain QN with has only load-dependent stations O(MK ) 2 2 K (better than Convolution O(M K )) ! (0 | K) = 1 - ! (n | K) - To overcome numerical instability MMVA has the same complexity as Convolution j ! j n = 1 - For multi-chain QN (c) H = ∏1≤c≤C (K + 1) Initial conditions: an iteration step of MVA πj(0|0) = 1 for each node j for a simple station requires O(C H ) Nj(0) = 0 for a load- dependent station requires O(K C H ) (better than Convolution O(H 2)) Potential numerical instability MMVA modified MVA - Special case: QN where all the chains have K(c)=K=K/C , X (K) with load-independent stations, then as Convolution O(M C K C) ! (0 | K ) = ! (0 | K-1) i X M-{j}(K) throughput of any node i j j M - {j} i Xi (K) computed for the QN with node j removed - MVA considers only type A capacity function, Convolution types A and B

- MVA is generalized to compute higher moments of performance measures

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 68 SFM ‘07 - PE 69

Page ‹n.› Product-form QN: algorithms for multi-chain Product-form QN: algorithms for multi-chain • Convolution MVAC and DAC • MVA (Mean Value Analysis) - extends MVA with a recursive scheme on the chains • Recal (Recursion by Chain Algorithm) - direct computation of some performance parameters • DAC - numerically robust, even for load-dependent stations • Tree convolution - possible numerical problems • Tree-MVA Tree-MVA and Tree-Convolution - for sparse network is sparse, RECAL (most of the chains visit just a small number of the QN stations) - main idea: build a tree data structure where QN stations are leaves - for networks with many customers classes but few stations that are combined into subnetworks in order to obtain the full QN (the root of the tree) - main idea: - locality and network decomposition principle recursive scheme is based on the formulation of the normalizing constant G for C chains as function of the normalizing constant for C − 1 chain For networks with class switching: Note: it is possible to reduce a closed QN with C ergodic chains (c) - if K = K for all the chains c, M and K constant, and class switching to an equivalent closed network with C chains M+1 then for C → ∞ the time requirement is O(C ) without class switching

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 70 SFM ‘07 - PE 71

Page ‹n.› Approximate analysis of QN Markov Process Decomposition Markov process with state space E and transition matrix Q Many approximation methods • Identify a partition of E into K subsets Most of them do not provide any bound on the introduced error Validation by comparison with exact solution or simulation E=U 1≤k≤K Ek ⇒ decomposition of Q • decomposition-aggregation procedure Basic principles a - decomposition applied to the Markov process π(S) = Prob(S | Ek) π (Ek) - decomposition applied to the network (aggregation theorem) Prob(S|Ek) conditional distribution - forced product-form solution πa aggregated probabilities - for multiple-chain models: approximate algorithms for product-form QN based on MVA • computation of π(S) reduces to

- exploit structural properties for special cases the computation of Prob(S | Ek) ∀ S, ∀Ek the computation of πa - other approaches • exact computation soon becomes computationally intractable Various accuracy and time computational complexity EXCEPT FOR special cases (symmetrical networks)

• approximation of Prob(S | Ek) and Prob(Ek)

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 72 SFM ‘07 - PE 73

Page ‹n.› Process and Network Decomposition Approximate analysis of QN

Heuristics take into account the network model characteristics For multiple-chain QN

NOTE: the identification of an appropriate state space partition affects approximate algorithms for product-form QN based on MVA the algorithm accuracy - Bard and Schweitzer Approximation the time computational complexity - (SCAT) Self-Correcting Approximation Technique generalized as the Linearizer Algorithm If the partition of E corresponds to a NETWORK partition into subnetworks Main idea: ⇒ network decomposition subsystems are (possibly modified) subnetworks approximate the MVA recursive scheme and The decomposition principle applied to QN apply an approximate iterative scheme is based on the aggregation theorem for QN Mean queue length (c) 1. network decomposition into a set of subnetworks For population K, the MVA recursive equations require Nj (K - 1d) 2. analysis of each subnetwork in isolation to define an aggregate component for each chain d (c) (c) (c) 3. definition and analysis of the new aggregated network Approximation: Nj (K - 1d)= ( |K - 1d|c / K ) Nj (K )

(c) where |K - 1d|c = K if c≠d Exact aggregation (Norton’s theorem) holds for product-form BCMP QN = K(c) -1 if c=d

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 74 SFM ‘07 - PE 75

Page ‹n.› Example: machine repair model Example: machine repair model

µ1 µ2

Model: single-chain single-class closed BCMP QN With M = 2 stations, where - station 1 represents the state of operative machines - station 2 the machines in repair

K= α customers.

α identical machines which can achieve the same task with identical speed Visit ratios e1= e2 Service rates µ1 and µ2 They operate independently, in parallel and are subject to breakdown Multiple servers: At most β ≤ α of them can be operating simultaneously (active) (β servers for station 1, γ servers for station 2) An active machine operates until failure BCMP representation with a single server with load-dependent service rate with capacity functions The active-time is a random time exponentially distributed with mean 1/µ1 x (k) = min{k, β} , x (k) = min{k, γ} After a failure a machine waits for being repaired 1 2 At most γ machines can be in repair, and We can choose any BCMP-type discipline to compute product-form solution

the repair-time is a random time exponentially distributed with mean 1/ µ2

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 76 SFM ‘07 - PE 77

Page ‹n.› Example: machine repair model Example: database mirror

A database (DB) repository system with two servers: master and a mirror µ1 µ2 The arrival is dispatched to the primary or to the mirror When a query is sent to the mirror:if the data are not found, then the mirror Examples of performance measures redirects the query to master

– steady state probability distribution π(n1, n2) (n1 active machines and n1 machines in waiting to be repaired) Design of the optimal dispatcher routing strategy – mean number of working machines, and mean number of machines in repair min system response time, given the DB average service times, (N1 and N2) the cache hit probability for the slave database, and the arrival rate – the utilization at station 1 (U ratio between the effective average work and the maximum work) 1 Under some independence and exponential assumptions: BCMP QN – mean time that a machine is broken (R2 )

S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 78 SFM ‘07 - PE 79

Page ‹n.› Example: database mirror Open problems Model: open BCMP QN where a request is a customer Extension of QN M = 3 stations - special features of real systems - station 1 represents the dispatcher - models of classes of systems - station 2 the master e.g.: software architectures, mobile systems,real time systems, … - station 3 the mirror LQN, G-nets, … Assume Poisson arrivals of requests with rate λ Solution algorithms and product-form QN If we assume request independent routing => single chain QN, otherwise we should use a multi-chain model - identify efficient algorithms to evaluate average performance measures consider the new classes of product-form QN A request can be fulfilled by the mirror with probability q and it generates a new request to the master with probability 1−q - explore/extend product-form class of QN dispatcher -> delay station - identify efficient approximate and bound algorithms DB stations -> with PS queueing discipline Coxian service time distribution for non product-form QN to evaluate average performance measures Visit ratios: e1=1, e2=p+(1−p)(1−q), e3= 1−p

Then by setting ρi= λei/µi where µi is the mean service rate of station i, i=1,2,3 Properties of QN BCMP formulas if ρi=<1 - explore the relations with other classes of stochastic models Examples: evaluate average response time for each node i R i and average overall response time - product-form classes - hybrid modeling R = R +e R +e R 1 2 2 3 3 - explore the possible integration of various types of performance models Possible parametric analysis of response time R as function of probability p to identify the optimal routing strategy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy S. Balsamo, A. Marin - Università Ca’ Foscari di Venezia - Italy SFM ‘07 - PE 80 SFM ‘07 - PE 81

Page ‹n.›