870 likes | 1.09k Views
ACM Sigmetrics 2010. A Modern Tool for Approximative Queueing Analysis: Theory and Practice. -A Tutorial-. Florin Ciucu T-Labs / TU-Berlin. Jens Schmitt TU Kaiserslautern. The Problem of Queueing. … is about analyzing queue size (backlog), loss, delay, e.g.,.
E N D
ACM Sigmetrics 2010 A Modern Tool for Approximative Queueing Analysis: Theory and Practice -A Tutorial- Florin Ciucu T-Labs / TU-Berlin Jens Schmitt TU Kaiserslautern
The Problem of Queueing … is about analyzing queue size (backlog), loss, delay, e.g.,
Each call is allocated a fixed chunk of network’s capacity Goal: size the network so that the queue is empty most of time (almost zero blocking probabilities) Queueing in Circuit Switching Networks, e.g., Telephone Network
All flows share the available bandwidth by interleaving packets (statistical multiplexing) Goal: analysis of loss, delay (important for voice/video applications) Queueing in Packet Switching Networks, e.g., the Internet
Behind the Title: The Stochastic Network Calculus (SNC) • Probabilistic extension of the Deterministic Network Calculus (DNC), which • Was conceived by R. Cruz in the early 1990’s • Is regarded as the theory for deterministic queueing analysis • SNC is a tool (technique) for stochastic queueing analysis • It’s approximative: provides rigorous bounds on queueing measures but no guarantees on the gap to optimal results • Can solve queueing problems which other alternative tools cannot • It works like • Deterministic evaluation of sample paths using the DNC • Probabilistic evaluation of sample paths (e.g., using large deviations arguments) • Our goal is to convey that SNC is useful (…and approachable)
Relationship with Existing Methods for Queueing Analysis • Single-queue analysis is broadly understood using Queueing Theory, Matrix Geometric Methods, Effective Bandwidth • Solutions are tailored for each queueing problem • Queueing network analysis is largely restricted to Poisson arrivals (BCMP, Kelly networks) • SNC provides a uniform network queueing algebra for broad classes of arrivals/scheduling/service and has two main features • ‘‘Scheduling Abstraction’’: abstracts away the details of scheduling by a uniform service representation • ‘‘Convolution Form Networks”: abstracts the network service by a single-node view
Outline of the Tutorial • Theory • Arrival/Service processes • Feature 1: ‘‘Scheduling Abstraction” • Single-Node queueing measures (backlog, delay, output) • Feature 2: ‘‘Convolution Form Networks” • Applications • Reanalysis of classical queueing systems (M/M/1, M/D/1) • End-to-End delays in a packet network with cross traffic • End-to-End analysis of networks with heavy-tailed and self-similar traffic • Output behavior at overloaded queues • Insights on the SNC bounds accuracy. Conclusions
Arrivals at a Queue Arrival Process • … as a Point Process • … as a Marked Point Process • … as a Fluid Process
Arrival Process • Also called Workload Process • Bivariate extension • Non-negative, non-decreasing, left-continuous • Time model: in this tutorial mostly discrete
Approximate the Arrival Process • Estimation of backlog/delay distributions reduces to theTail Estimation Problem, e.g., • Closed-form solutions/numerical evaluation is difficult, even for the Poisson process • One may look for approximations (bounds) of the form • The tail estimation problem remains • Basic idea: assume the existence of bounds on either • Tail (distribution) or • MGF
Arrival Approximation 1: Tail Bound • Formally defined as • Note that • provides a stationary bound but is not required to be stationary • is not necessarily linear in
Example 1: Hyperexponential Bound • Can be constructed for • Markov-Modulated processes, measured data • Arbitrarily close approximations for Pareto, Weibull distributions • Classical case (in SNC) with only one exponential (Exponentially Bounded Burstiness – EBB) • Notation simplifies but accuracy lessens
Example 2: Heavy-Tailed Self-Similar • Can be constructed for • stable distributions • Compound point processes with Pareto increments • Multiplexed heavy-tailed On-Off • Measured data, e.g., aggregate Internet traffic
Arrival Approximation 2: MGF Bound • Formally defined as • Note that • It captures bounds on all the moments of the arrivals • Inapplicable to heavy-tailed arrivals • Classical example with only one exponential (EBB) • Notation simplifies but accuracy lessens
Relationship Between Tail and MGF bounds Recall definitions for single exponentials
Approximate the Service Process • Problem: How to represent ’s service in order to achieve ‘‘Scheduling Abstraction” (Feature 1)? • Or … How to abstract away the details of many scheduling algorithms by a uniform service representation? • To get the idea consider two cases depending on whether the server is • always busy or • sometimes idle
Case 1: Always Busy Server • Observations • Busy means that there is always backlog to serve • R.V. denotes the maximum possible service at time • Time varying service capacity (e.g., due to cross traffic) • Then the cumulative offered service in time interval
Case 2: Sometimes Idle Server • Denote the beginning of the last busy period before • Observe that • Then • Note: arrival and departure processes are related!
Cases 1 + 2: Service Process • Service process abstractly characterized by • Observations • defined as a bivariate random process • convolution provides a probabilistic lower bound (note the inequality) on ’s service (i.e., service guarantees)
A First Glimpse into Multi-Node Analysis.Recall Feature 2: ‘‘Convolution Form Networks” • Remark: computation of end-to-end queueing measures involves a ‘convolution’ • Problem: What if the two service processes are not statistically independent? • Basic idea: ‘‘Move the randomness” of service processes
Moving the Randomness of a Service Process: Stochastic Service Curve
(General) Service Process • Formally defined as • Observations • is a bivariate random process • is a non-random error function • Some randomness (dependencies) may be moved in • This way it is possible to convolve originally dependent service processes, by considering instead the following
Examples 1+2: Stochastic Service Curves Can be constructed from: • Scheduling assumptions + hyperexponentially (or heavy-tailed self-similar) bounded arrivals • Measurements + fitting
Some Assumptions for Achieving ‘‘Scheduling Abstraction” • Upper bounds on the (aggregate) cross traffic • Recall that a service (curve) process sets lower bounds • Server with capacity guarantees • Driving factors: • the scheduling algorithm • (choice of fluid/packetized service model (t.b.d. later))
More on the Versatility of the (min,+) Convolution for Approximating the Service Process • So far … approximations of (per-flow) service process in terms of capacity guarantees, i.e., • These imply (per-flow) delay guarantees (t.b.d. later) • But is it possible to directly approximate the (per-flow) service process in terms of delay guarantees?
Approximate the Service Process with Delay Guarantees. Example: Exponential
A Second Glimpse into Multi-Node Analysis.Recall Feature 2: ‘‘Convolution Form Networks” • Possible when per-flow/per-node service processes expressed in terms of delay guarantees • …or capacity guarantees, or combinations of the two, e.g.,
Derivation of Queueing Measures • Recall that SNC provides a ‘‘Uniform Queueing Algebra” for queueing systems • Based on ‘‘Scheduling Abstraction” (Feature 1) and the idea of ‘‘Convolution Form Networks” (Feature 2) • Main purpose: derivation of per-flow measures (backlog and delay process, output characterization) • Main steps for per-flow queueing algebra • Arrival representation with a tail/MGF bound • (Per-flow) service representation with a service process • Estimation of sample-path events, e.g.,
The Root of Sample Path Events: History Matters … • Lindley’s equation for w.-c. server with rate • Captures the history of the queueing process • Leads to Reich’s equation • Relation of with Reich’s equation
Bounding The Backlog Process. Case 1: Independent Arrivals/Service
Bounding The Backlog Process. Case 1: Independent Arrivals/Service (contd.)
Bounding The Backlog Process. Case 2: Not Necessarily Ind. Arrivals/Service
Bounding The Backlog Process. Case 3: Tail Bounds Assumptions
Bounding The Delay Process. Only the Case of Independent Arrivals/Service
Bounding The Output Process. Only the Case of Independent Arrivals/Service