Queueing Networks
Total Page:16
File Type:pdf, Size:1020Kb
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 queueing theory * 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 arrival theorem - 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 : t0<t1<...<tn<t , ∀n>0, ∀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 π = π P with π =1 π Q = 0 with ∑ π =1 ∑j j 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 Erlang-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<a E[w] = X E[tw] 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 s<a , i a + s < t < (i+1) a, i≥0 n(t) = 1 if s<a , i a ≤ t ≤ i a + s , i≥0 System state: n n(t) = 1 if s=a Associated stochastic process: n(t) = t/a - t/s if s>a 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.