1 © Jean-Yves Le Boudec and Patrick Thiran Network calculus : CH-1015 Lausanne Jean-Yves.Leboudec Jean-Yves.

Slides:



Advertisements
Similar presentations
Least squares CS1114
Advertisements

CS640: Introduction to Computer Networks Aditya Akella Lecture 20 – QoS.
Resource Allocation: Deterministic Analysis. Traffic Model Stochastic Different sample paths with different properties Expected case analysis Deterministic.
Abhay.K.Parekh and Robert G.Gallager Laboratory for Information and Decision Systems Massachusetts Institute of Technology IEEE INFOCOM 1992.
Berlin Network Calculus & Related Models with Applications by George I. Stassinopoulos Prof. NTUA
Courtesy: Nick McKeown, Stanford 1 Intro to Quality of Service Tahir Azim.
THE SYSTEM THEORY OF NETWORK CALCULUS J.-Y. Le Boudec EPFL WoNeCa, 2012 Mars 21 1.
Communication Networks Network Calculus: Deterministic Traffic Analysis Last updated: Thursday, May 07, 2015 Prof. Amir Herzberg Dept of Computer.
Analytical Modeling and Evaluation of On- Chip Interconnects Using Network Calculus M. BAkhouya, S. Suboh, J. Gaber, T. El-Ghazawi NOCS 2009, May 10-13,
EE 685 presentation Optimal Control of Wireless Networks with Finite Buffers By Long Bao Le, Eytan Modiano and Ness B. Shroff.
0 A Short Course on Network Calculus CH-1015 Ecublens Jean-Yves Le Boudec Patrick Thiran ICA, EPFL.
Recent Progress on a Statistical Network Calculus Jorg Liebeherr Department of Computer Science University of Virginia.
TCP Stability and Resource Allocation: Part II. Issues with TCP Round-trip bias Instability under large bandwidth-delay product Transient performance.
Network Calculus: Reference Material: J.-Y. LeBoudec and Patrick Thiran: “Network Calculus: A Theory of Deterministic Queuing Systems for the Internet”,
Queuing Theory For Dummies
Simulation Where real stuff starts. ToC 1.What, transience, stationarity 2.How, discrete event, recurrence 3.Accuracy of output 4.Monte Carlo 5.Random.
Worst-case Fair Weighted Fair Queueing (WF²Q) by Jon C.R. Bennett & Hui Zhang Presented by Vitali Greenberg.
Edward W. Knightly and Chengzhi Li Rice Networks Group Coordinated Scheduling: A Mechanism for Efficient Multi-Node Communication.
Supporting Stored Video: Reducing Rate Variability and End-toEnd Resource Requirements through Optimal Smoothing By James D. salehi, Zhi-Li Zhang, James.
Algorithm Orals Algorithm Qualifying Examination Orals Achieving 100% Throughput in IQ/CIOQ Switches using Maximum Size and Maximal Matching Algorithms.
CS 268: Lecture 15/16 (Packet Scheduling) Ion Stoica April 8/10, 2002.
Deterministic Network Calculus. Background ● Queueing Theory gives probabilistic results ● Critical applications need hard bounds ● Queueing theory extends.
ACN: IntServ and DiffServ1 Integrated Service (IntServ) versus Differentiated Service (Diffserv) Information taken from Kurose and Ross textbook “ Computer.
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.
Network Calculus: Reference Material: J.-Y. LeBoudec and Patrick Thiran: “Network Calculus: A Theory of Deterministic Queuing Systems for the Internet”,
Smoothing Variable-Bit-Rate Video in an Internetwork Jennifer Rexford, Member, IEEE, and Don Towsley, Fellow, IEEE IEEE/ACM Transactions on Networking,
Lecture 11. Matching A set of edges which do not share a vertex is a matching. Application: Wireless Networks may consist of nodes with single radios,
Deterministic Network Calculus p.2. DNC arrival results Accumulated arrival functions R(t): traffic recieved in [0,t] Arrival function may be constrained:
1 A Class Of Mean Field Interaction Models for Computer and Communication Systems Jean-Yves Le Boudec EPFL – I&C – LCA Joint work with Michel Benaïm.
Internet QoS Syed Faisal Hasan, PhD (Research Scholar Information Trust Institute) Visiting Lecturer ECE CS/ECE 438: Communication Networks.
CSc 461/561 CSc 461/561 Multimedia Systems Part C: 3. QoS.
Lesson 11: Solved M/G/1 Exercises
References for M/G/1 Input Process
Packet Scheduling From Ion Stoica. 2 Packet Scheduling  Decide when and what packet to send on output link -Usually implemented at output interface 1.
A Generalized Processor Sharing Approach to Flow Control in Integrated Services Networks: The Single-Node Case Abhay K. Parekh, Member, IEEE, and Robert.
Flows and Networks Plan for today (lecture 5): Last time / Questions? Waiting time simple queue Little Sojourn time tandem network Jackson network: mean.
E0262 MIS - Multimedia Playback Systems Anandi Giridharan Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India.
1 Network Calculus Jean-Yves Le Boudec, lecturer Patrick Thiran Pisa 2003.
QOS مظفر بگ محمدی دانشگاه ایلام. 2 Why a New Service Model? Best effort clearly insufficient –Some applications need more assurances from the network.
Time-Domain Representations of LTI Systems
Univ. of TehranAdv. topics in Computer Network1 Advanced topics in Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr.
Flows and Networks Plan for today (lecture 4): Last time / Questions? Output simple queue Tandem network Jackson network: definition Jackson network: equilibrium.
Queuing Networks Jean-Yves Le Boudec 1. Contents 1.The Class of Multi-Class Product Form Networks 2.The Elements of a Product-Form Network 3.The Product-Form.
1 Chapters 8 Overview of Queuing Analysis. Chapter 8 Overview of Queuing Analysis 2 Projected vs. Actual Response Time.
Florida State UniversityZhenhai Duan1 BCSQ: Bin-based Core Stateless Queueing for Scalable Support of Guaranteed Services Zhenhai Duan Karthik Parsha Department.
Nick McKeown Spring 2012 Lecture 2,3 Output Queueing EE384x Packet Switch Architectures.
CS433 Modeling and Simulation Lecture 07 – Part 01 Continuous Markov Chains Dr. Anis Koubâa 14 Dec 2008 Al-Imam.
Flows and Networks Plan for today (lecture 6): Last time / Questions? Kelly / Whittle network Optimal design of a Kelly / Whittle network: optimisation.
Loss-Bounded Analysis for Differentiated Services. By Alexander Kesselman and Yishay Mansour Presented By Sharon Lubasz
Delays in Packet Networks
Stochastic Optimization for Markov Modulated Networks with Application to Delay Constrained Wireless Scheduling Michael J. Neely University of Southern.
Deterministic Network Calculus. DNC history Queueing Theory, Agner Krarup Erlang, 1909 Queueing Networks, James R. Jackson, 1957 Scheduling Theory, Liu.
Chengzhi Li and Edward W. Knightly Schedulability Criterion and Performance Analysis of Coordinated Schedulers.
Managing VBR Videos. The VBR Problem Constant quality Burstiness over multiple time scales Difference within and between scenes Frame structure of encoding.
Copyright © Cengage Learning. All rights reserved. 16 Vector Calculus.
Scheduling for QoS Management. Engineering Internet QoS2 Outline  What is Queue Management and Scheduling?  Goals of scheduling  Fairness (Conservation.
1 Chapter 7 Network Flow Slides by Kevin Wayne. Copyright © 2005 Pearson-Addison Wesley. All rights reserved.
Approximation Algorithms based on linear programming.
Chapter 2. Signals and Linear Systems
Math for CS Fourier Transforms
Mean Field Methods for Computer and Communication Systems Jean-Yves Le Boudec EPFL Network Science Workshop Hong Kong July
04/02/08 1 Packet Scheduling IT610 Prof. A. Sahoo KReSIT.
Instructor: Shengyu Zhang
A Short Course on Network Calculus
Network calculus ( system theory )
Lightweight but Powerful QoS Solution for Embedded Systems
Schedulability Conditions for Scheduling Algorithms
کنترل جریان امیدرضا معروضی.
Presentation transcript:

1 © Jean-Yves Le Boudec and Patrick Thiran Network calculus : CH-1015 Lausanne Jean-Yves.Leboudec Jean-Yves Le Boudec and Patrick Thiran LCA-ISC, I&C, EPFL

2 © Jean-Yves Le Boudec and Patrick Thiran Contents 1. Greedy shapers and arrival curves, min-plus convolution 2. Service curves, backlog, delay bounds 3. Diffserv: intuition and formal definition behind EF 4. Min-plus algebra in action: Video smoothing 5. Statistical multiplexing with EF free on-line at :

3 © Jean-Yves Le Boudec and Patrick Thiran What is Network Calculus ?  Deterministic analysis of queuing / flow systems arising in communication networks  Uses Min-Plus, Max-Plus and sometimes Min-Max algebra

4 © Jean-Yves Le Boudec and Patrick Thiran The standard Linear Theory  A LTI filter in conventional algebra (R, +, ×) l Input signal = electrical voltage x(t) System = circuit (filter) with impulse response  (t) Output = convolution of x(t) and  (t) : y(t) =   (t-s) x(s) ds x(t)y(t)  (t) ++ --

5 © Jean-Yves Le Boudec and Patrick Thiran Network Calculus uses Min-Plus Linear Theory  A linear system in min-plus algebra (R, min, +) l Input = arrived traffic in [0,t], x(t) System = CBR trunk of rate c :  (t) = ct Output = convolution of x(t) and  (t): y(t) = inf s {  (t-s)+ x(s) } CBR shaper bit rate c x(t) y(t)

6 © Jean-Yves Le Boudec and Patrick Thiran Two key Concepts Arrival and Service Curves  IntServ and DiffServ use the concepts of arrival curve and service curves

7 © Jean-Yves Le Boudec and Patrick Thiran Contents 1.Arrival curves  Arrival curve: definition  Leaky bucket and GCRA  Arrival curve and min-plus convolution  Good arrival curves are sub-additive  Minimal arrival curve and min-plus deconvolution  Greedy shaper and its properties  Packetization 2. Service curves, GPS, backlog, delay bounds 3. Diffserv: intuition and formal definition behind EF 4. Min-plus algebra in action: Video smoothing 5. Statistical multiplexing with EF

8 © Jean-Yves Le Boudec and Patrick Thiran Cumulative flows  Cumulative flow R(t)  F, t real or integer  F = { x(t) | x(t) is non decreasing and x(t) = 0 for t < 0 }  Examples: time t bits time t bits time t bits 1256 R1(t)R2(t)R3(t) Fluid model (continuous)Packet model (left continuous) Discrete-time model (left continuous)

9 © Jean-Yves Le Boudec and Patrick Thiran Example  MPEG files, 25 frames/sec  RR

10 © Jean-Yves Le Boudec and Patrick Thiran Arrival Curves  Arrival curve  For any times 0  s  t, the cumulative flow R(.) satisfies  R(t) -R(s)   (t-s) Example 1: affine arrival curve  r,b  (t) =  r,b (t) = rt+b for t>0 time bits b slope r R(t)

11 © Jean-Yves Le Boudec and Patrick Thiran Example 2: stair arrival curve  kv T,    (t) = kv T,  (t) = k  (t+  )/T  with T = period,  = tolerance, k = constant packet size  Characterizes flows that are periodic stream of packets of same size k (cells), that suffers a variable delay <=  time bits k kv T,  (t) = k  (t+  )/T   T-  2T-  3T-  2k 3k 4k Arrival Curves o All packets of size k. Then R conforms to  =kv T,   R conforms to  =  r,b with r = k/T and b = k(  +T)/T

12 © Jean-Yves Le Boudec and Patrick Thiran Leaky bucket  All packets of flow R are declared conformant by a leaky buket controller of rate r and size b  R conforms to  (t) =  r,b (t) = rt+b for t>0 R(t)  r,b r x(t) b R(t) slope r t R(t) b x(t) b

13 © Jean-Yves Le Boudec and Patrick Thiran GCRA (T,  )  All packets (cells) of flow R are of the same size k  Arrival time of nth = A n  Theoretical arrival just after nth arrival is  n = max(A n,  n-1 ) + T  If A n+1 >=  n –  then cell is conformant, otherwise not Example: GCRA (10,2) n  n A n ccncccnc  Equivalences: R conforms to  GCRA (T,  )  R conforms to staircase arrival curve  = kv T,   R conforms to  leaky bucket (r = k/T, b = k(  +T)/T)  R conforms to  affine arrival curve  =  r,b

14 © Jean-Yves Le Boudec and Patrick Thiran Combining leaky buckets time bits b M slope r slope m time bits b slope r  standard arrival curve in the Internet (  = min)  (u) = min (pu+M, ru+b) = (pu+M)  (ru+b)

15 © Jean-Yves Le Boudec and Patrick Thiran Sub-additivity and arrival curves  If  is an arrival curve for flow R, so is    (t)   (t)  What is  (t) ?  The answer uses min-plus convolution and sub-additivity T k  (t) 2T 3T 2k 3k 4k 4T T k  (t) 2T 3T 2k 3k 4k 4T

16 © Jean-Yves Le Boudec and Patrick Thiran Min-plus convolution   Definition (f  g) (t) = inf u { f(t-u) + g(u) } t f(t) g(t) (f  g)(t)

17 © Jean-Yves Le Boudec and Patrick Thiran Example (f  g) (t) = ? t T f(t) R K s f(s) t g(t) r t (f  g)(t) g(t-s) b t T (f  g)(t) r KR K+b

18 © Jean-Yves Le Boudec and Patrick Thiran Some properties of min-plus convolution  (f  g)  F   is associative   is commutative  Neutral element:  0 : f  0 = f (  0 (t) = 0 for t = 0 and  0 (t) =  for t > 0)   is distributive with respect to min (    is isotone: f  f’ and g  g’  f  g  f’  g’  Functions passing through the origin (f(0) = g(0) = 0): f  g  f  g  Concave functions passing through the origin: f  g = f  g  Convex piecewise linear functions: f  g is the convex piecewise linear function obtained by putting end-to-end all linear pieces of f and g, sorted by increasing slopes

19 © Jean-Yves Le Boudec and Patrick Thiran Example: rate latency function  T is convex (delay function)  R,T is convex (rate-latency function) latency T  R,T (t) Slope (rate) R  delay T  T (t)  R (t)=Rt Rate R R is convex (delay function)

20 © Jean-Yves Le Boudec and Patrick Thiran Example bis (using rules) t T f(t) R K f = K +  R,T = K +  T  R f  g = (K +  T  R )   r,b = K + ((  T  R )   r,b ) = K + (  T  ( R   r,b )) = K + (  T  ( R   r,b )) = K + (  T  R )  (  T  r,b ) = K +  R,T  (  T  r +b) = K +  R,T  (  r,T +b) t g(t) r g =  r,b =  0  ( r +b) concave with g(0) = 0 b t T (f  g)(t) r KR K+b

21 © Jean-Yves Le Boudec and Patrick Thiran We can express arrival curves with min- plus convolution  Arrival Curve property means for all 0  s  t, x(t) -x(s)   (t-s)  x(t)  x(s) +  (t-s) for all 0  s  t  x(t)  inf u { x(u) +  (t-u) }  x  x 

22 © Jean-Yves Le Boudec and Patrick Thiran Sub-additive function  f is sub-additive  f (t) + f(s)  f(t+s)  f is concave with f(0) = 0  f is sub-additive  f is sub-additive  f is concave  f,g are sub-additive and pass through the origin (f(0) = g(0) = 0)  f  g is sub-additive

23 © Jean-Yves Le Boudec and Patrick Thiran Examples  r,b is concave time bits b slope r  r,b (t) time bits k v T,  (t) 2k 3k 4k v T,  is not concave, but is sub-additive  T-  2T-  3T- 

24 © Jean-Yves Le Boudec and Patrick Thiran Sub-additive closure  f = inf {  0,f,f  f, f  f  f,… }  f is sub-additive with f(0) = 0  f is sub-additive with f(0) = 0  f =f  f = f  f

25 © Jean-Yves Le Boudec and Patrick Thiran Examples time bits T  R,T (t)+K’ R K’ time bits T  R,T (t)+K’’ R K’’ 2T 2K’  R,T (t)+K’) (2) 2T  R,T (t)+K’’  R,T (t)+K’

26 © Jean-Yves Le Boudec and Patrick Thiran Sub-additivity and arrival curves bits k  (t) T 2T 3T 2k 3k 4k 4T T 2T 3T 4T  (t)  What is  (t) ?   can be replaced by its sub-additive closure . o From now on: we will always take sub-additive arrival curves passing through the origin.

27 © Jean-Yves Le Boudec and Patrick Thiran Minimal arrival curve  If the only available information on a flow is obtained from measurements, i.e if we only know R, how can we compute its minimal arrival curve  ? o The answer uses min-plus deconvolution R

28 © Jean-Yves Le Boudec and Patrick Thiran Min-plus deconvolution Ø  Definition (f Ø g) (t) = sup u { f(t+u) - g(u) } t f(t) g(t) (f  g)(t)

29 © Jean-Yves Le Boudec and Patrick Thiran Some properties of min-plus deconvolution  (f  g)  F in general  (f  f)  F  (f  f) is sub-additive with (f  f) (0) = 0  (f  g)  h = f  (g  h)  Duality with  : f  g  h  f  g  h

30 © Jean-Yves Le Boudec and Patrick Thiran  The minimal arrival curve of flow R is  R Ø R . oProof: l It is an arrival curve because R(t) – R(s) = R((t-s)+s) - R(s)  sup u { R((t-s)+u) - R(u) } = (R Ø R) (t-s) If  ’ is another arrival curve for flow R, then R  R  ’  R Ø R  ’ so that  ’. Minimal arrival curve

31 © Jean-Yves Le Boudec and Patrick Thiran Example  MPEG files, 25 frames/sec  RR

32 © Jean-Yves Le Boudec and Patrick Thiran Greedy shaper Definition of Greedy shaper  forces output to be constrained by arrival curve  x(t) - x(s)   (t - s)  stores  data in a buffer if needed  Hence the shaper maximises x(t) such that x(t)  R(t) x(t)  (x  (t) R(t)  Shaper x(t)

33 © Jean-Yves Le Boudec and Patrick Thiran Output of a Greedy shaper R(t)  Shaper x(t)  If  is sub-additive and  x = R  oProof: x = R  is a solution because x = R   R since  x = R  = R  = (R  = x  If x’ is another solution then x’  R and x ’  x’  Combining the two and using isotonicity of  x ’  x’  R  = x

34 © Jean-Yves Le Boudec and Patrick Thiran Greedy shaper = linear min-plus filter  Standard convolution in (R, x, +) (LTI filter) y(t) = (  x)(t) =   (t-u) x(u) du  Min-plus convolution in (R, +,  ) is linear (  = min) y(t) = (   x) (t) = inf u {  (t-u) + x(u) } x(t) y(t)  (t) shaper  x y

35 © Jean-Yves Le Boudec and Patrick Thiran What is done by shaping cannot be undone by shaping R(t)  Shaper x(t)  Suppose that R(t) is constrained by arrival curve  R  R   Then x = R   ( R  )  = R  R  since   Therefore shaping keeps arrival constraints.  In fact, the output flow has  as arrival curve  -smooth

36 © Jean-Yves Le Boudec and Patrick Thiran Packetization  The shaper presented before is for constant size packets or ideal fluid systems  Real life systems are modelled by adding a packetizer transforms fluid input into packets of size l 1, l 2, l 3, …  Packetizer adds some distortion, well understood R(t) R’(t) R * (t) T1T1 T2T2 T3T3 l 1 + l 2 + l 3 l 1 + l 2 l1l1 c l1l1 l2l2 l3l3 l1l1 l2l2 l3l3 (P L ) constant rate server = greedy shaper  (t)=ct + packetizer

37 © Jean-Yves Le Boudec and Patrick Thiran Contents 1.Arrival curves 2. Service curves, backlog, delay bounds  Service curve: definition  Backlog and delay bounds  Guaranteed Rate Servers  Application to IntServ  Application to Core-Stateless 3. Diffserv: intuition and formal definition behind EF 4. Min-plus algebra in action: Video smoothing 5. Statistical multiplexing with EF

38 © Jean-Yves Le Boudec and Patrick Thiran Goal of Service Curve and GR node definitions  define an abstract node model  independent of a specific type of scheduler  applies to real routers, which are not a single scheduler, but a complex interconnection of delay and scheduling elements  applies to nodes that are not work-conserving

39 © Jean-Yves Le Boudec and Patrick Thiran Service Curve  System S offers a (minimal) service curve  to a flow iff for all t there exists some s such that y(t) - x(s)   (t-s) S xy t y(t) s x(s) x y  (t)

40 © Jean-Yves Le Boudec and Patrick Thiran The constant rate server has service curve  (t)=ct Proof: take s = beginning of busy period: y(t) – y(s) = c (t-s) and y(s) = x(s) -> y(t) – x(s) = c (t-s) buffer s t0 ct t

41 © Jean-Yves Le Boudec and Patrick Thiran The service curve of a Greedy shaper is its shaping curve x(t)  Shaper y(t)  If  is sub-additive and  y(t) = (x  (t).  The service curve of a shaper is thus 

42 © Jean-Yves Le Boudec and Patrick Thiran The guaranteed-delay node has service curve  T seconds  T x y 0 T  T (t) Function  T t

43 © Jean-Yves Le Boudec and Patrick Thiran The standard model for an Internet router  rate-latency service curve T bits R seconds

44 © Jean-Yves Le Boudec and Patrick Thiran We can express service curves with min- plus convolution  Service Curve guarantee means there exists some 0  s  t : y(t) - x(s)   (t-s)  y(t)  x(s) +  (t-s) for some 0  s  t  y(t)  inf u { x(u) +  (t-u) }  y  x 

45 © Jean-Yves Le Boudec and Patrick Thiran Tight Bounds on delay and backlog If flow has arrival curve  and node offers service curve  then  backlog  sup (  (s) -  (s)) = (  Ø  )(0) = v( ,  )  delay  inf { s  0 : (  Ø  )(-s)  0 } = h( ,  )   h(,)h(,) v(,)v(,)

46 © Jean-Yves Le Boudec and Patrick Thiran The composition theorem  Theorem: the concatenation of two network elements each offering service curve  i offers the service curve  1   2      

47 © Jean-Yves Le Boudec and Patrick Thiran R1R2 T2  = T1 Example  tandem of routers R1 T2T1+T2

48 © Jean-Yves Le Boudec and Patrick Thiran Pay Bursts Only Once  D1D1 D2D2   D   D  b /R + T 1 + T 2 end to end delay bound is less D  b /R + T 1 + T 2 end to end delay bound is less D 1 +D 2  (2b + RT 1 )/ R + T 1 + T 2

49 © Jean-Yves Le Boudec and Patrick Thiran Re-shaping is for free  Re-shaper is added to re-enforce some fraction of the original constraint  Delay for original system = h ( ,     )  For system with re-shaper = h ( ,     ) = h ( ,     )  Now h ( ,     ) = h ( ,     ) interpretation: put re-shaper before node 1; it is transparent formal proof uses delay = inf { d :  Ø(     ) (-d)  0 }  Therefore delay bound for both systems are equal        end-to-end service curve Shaper       

50 © Jean-Yves Le Boudec and Patrick Thiran Guaranteed Rate node  An alternative definition to service curve for FIFO l for rate-latency service curves only  Definition (Goyal, Lam, Vin; Chang): a node is GR(r,e) if D (n)  F(n) + e F(n) = max{A(n), F(n-1)} + L(n)/r D(n) : departure time for packet n A(n) : arrival time F(n) : virtual finish time, F(0) = 0 L(n) : length in bits for packet n

51 © Jean-Yves Le Boudec and Patrick Thiran F(n-1)D(n-1)A(n) F(n)D(n) L(n)/r F(n-1)D(n-1)A(n) F(n)D(n) L(n)/r F(n) = max{A(n), F(n-1)} + L(n)/r

52 © Jean-Yves Le Boudec and Patrick Thiran GR is equivalent to rate-latency service curve -- for FIFO per flow  GR(r,e) is equivalent to D(n)  max k  n [A(k) + (L(k) + … + L(n))/r] + e l max-plus analog to service curve  Theorem (equivalence for FIFO per flow nodes): l a GR node is a service curve element with rate-latency service curve (r,e) followed by a packetizer l conversely, consider a node which is FIFO per flow and serves entire packets. If it has the rate-latency service curve (R,T) then it is GR(R,T).  FIFO per flow is true in IntServ context

53 © Jean-Yves Le Boudec and Patrick Thiran Properties of GR nodes (FIFO per flow or not)  delay bound = h( ,  ) D max = e + sup[  (t)/r-t] for FIFO per flow nodes = delay at service curve element (packetizer does not add per-packet delay)  backlog bound = v( ,  ) + L max B max = sup[  (t)-R(t-T) + ] + L max e r  (t) D max = e + sup(  (t)/r-t) time bits

54 © Jean-Yves Le Boudec and Patrick Thiran Modelling a node with GR  queue with rate C: R=C, T=0  priority queue with rate c: R=C, T=L max /C  element with bounded delay d: R = , T=d  and combine these elements

55 © Jean-Yves Le Boudec and Patrick Thiran Concatenation of GR nodes  FIFO per flow nodes: apply service curve rule  non FIFO per-flow: not true (LeBoudec Charny, Infocom 2002) GR(r 1,e 1 )GR(r 2,e 2 ) GR(r,e) r = min(r 1,r 2 ) e = e 1 + e 2 + L max /r 1

56 © Jean-Yves Le Boudec and Patrick Thiran Core-Stateless  Imagine routers can maintain flow state information and offer per flow guarantees q rate-based routers GR(0,r): A i (n) = max(A i-1 (n), A i (n-1)) + L(n)/r h-q delay-based routers GR(e,  ): A i (n) = max(A i-1 (n), A i (n-1)) + e Arrival curve at core edge is  (t) =  r,Lmax (t) = L max + rt Service curve for the core is  (t) =  r,(h-q)e+ (q-1)Lmax/r (t) = r[t-((h-q)e + (q-1)L max /r)] + -> Delay bound is h(  ) = (h-q)e + qL max /r (neglecting propagation delays) GR(r,e) A 0 (n) r Edge router A 1 (n)D h-1 (n) Core router Core router Core router D 2 (n) = A 2 (n) GR(r,e) D 2 (n)A h-1 (n)

57 © Jean-Yves Le Boudec and Patrick Thiran Core-Stateless  Core routers do not maintain per flow information  Replace it by the use of timestamps, with the virtual arrival time: virtual arrival time at router i for nth packet is A’ i (n)  NB: A virtual delay adjustment is also inserted (not considered here) (it is the delay that nth packet would have experienced in the ideal system with flow state information – qL(n) /r)  Compute the virtual finish time F’ i (n) = A’ i (n) + L(n)/r + e GR(r,e) A’ 1 (n)F’ 1 (n) A 0 (n) Edge router A 1 (n)D h-1 (n) Core router Core router Core router D 2 (n) A h-1 (n) A 2 (n)

58 © Jean-Yves Le Boudec and Patrick Thiran Core-Stateless  Core routers do not maintain per flow information  The actual departure time D i (n) of the nth packet from the ith core router is less than F’ i (n) + processing delay  Update virtual arrival time: A’ i+1 (n) = F’ i (n) + processing delay + propagation delay  Property: with q rate-based routers and h-q delay-based routers, delay bound is h(  ) = (h-q)e + qL max /r + sum of processing delays + sum of propagation delays A 0 (n) GR(r,e) A’ 1 (n)F’ 1 (n) Edge router A 1 (n)D h-1 (n) Core router Core router Core router D 2 (n) A h-1 (n) A 2 (n) GR(r,e) A’ 2 (n)F’ 2 (n) GR(r,e) A’ h-1 (n)F’ h-1 (n)

59 © Jean-Yves Le Boudec and Patrick Thiran Contents 1.Arrival curves 2. Service curves, backlog, delay bounds 3. Diffserv: intuition and formal definition behind EF  PSRG  non-FIFO and min-max  SETF 4. Min-plus algebra in action: Video smoothing 5. Statistical multiplexing with EF

60 © Jean-Yves Le Boudec and Patrick Thiran Expedited Forwarding is a building block for Diff-Serv  DiffServ uses aggregate treatment of flows (for scalability)  shaping at edge + aggregate scheduling   priority queue  used to build « Virtual Wire », a service similar to ATM CBR EF microflows EF microflows EF aggregates scheduler best effort

61 © Jean-Yves Le Boudec and Patrick Thiran Specification of EF : RFC 2598, June 1999  for one EF aggregate: departure rate  r l measured over any interval  1 packet l r is the configured rate at one EF node departure rate

62 © Jean-Yves Le Boudec and Patrick Thiran The old EF specification is used in Virtual Wire drafts to bound delay jitter  Virtual Wire drafts conclude that end-to-end delay jitter   T  = utilization factor, T = interval at source EF cloud playout buffer at destination playout buffer at destination

63 © Jean-Yves Le Boudec and Patrick Thiran The Virtual Wire jitter bound contradicts other known results  jitter bounds are hard to find for edge shaping + aggregate scheduling  existence of finite bounds in the general case is still an open problem l Lu and Kumar 1991, Rybko and Stolar 1992, Seidmann 1994, Bramson 1994, Andrews 2000  Andrews 2000 presents an example of a network which is unstable for some  <1

64 © Jean-Yves Le Boudec and Patrick Thiran  if   1/(h-1) there is a closed form bound h = number of hops,  = utilization factor  the bound diverges for  -> 1 / (h-1)  compare to virtual wire bound  T  if  > 1/(h-1), for any x, there is a network where the worst case jitter  x  this contradicts the Virtual Wire bound Closed form bounds for delay

65 © Jean-Yves Le Boudec and Patrick Thiran Derivation of the bound  Assume nodes are GR (orFIFO-per aggregate rate latency service curve elements) 1) Assume delay bound hD on low delay traffic (EF) exists, where h = max number of hops, D = max delay bound per node 2) An arrival curve of aggregate traffic at node i  i (t) =  m  i (r m t + (h-1)r m D + b m ) = i R i t + (h-1) i R i D + i R i  i where i = (  m  i r m )/R i and  i = (  m  i b m )/ (  m  i r m ) 3) Compute horizontal distance between  i (t) and  i (t): D i = T i + (h-1) i D + i  i 4) Deduce D <= (T + )/(1 – (h-1) ) where T = max i T i, = max i i and  = max i  i 5) Show that finite bound exists at any time t, and let t ->  RiRi TiTi Di (h-1) i R i D + i R i  i i R i

66 © Jean-Yves Le Boudec and Patrick Thiran The contradiction is in the specification of EF  for practically all known nodes, the EF condition is not true l jitter and source rate fluctuations departure rate may be > r

67 © Jean-Yves Le Boudec and Patrick Thiran Another specification is needed  should allow delay and backlog computations  should apply well to reasonable routers l combinations of schedulers, queue, delay elements l basic schedulers should be easy to model l concatenation  at the 49th IETF (Dec 2000, San Diego), the old EF specification is abandoned in favor of a new one based on packet scale rate guarantee

68 © Jean-Yves Le Boudec and Patrick Thiran Why not use GR as a node model ?  has all nice properties seen before: bounds, concatenation  but: delay-from-backlog bound given observed backlog is B, delay ?  why ? l we want to control delay from backlog l diff-serv is not loss-free l if a network element has a small buffer, it should guarantee a low delay

69 © Jean-Yves Le Boudec and Patrick Thiran GR node does not support a backlog- from-delay bound D max time bits input R(t) minimum outputoutput backlog delay

70 © Jean-Yves Le Boudec and Patrick Thiran Packet Scale Rate Guarantee is the definition used for EF  d(n)  f(n) + e f(n) = max{a(n), min[d(n-1), f(n-1)]}+ L(n)/r d(n) : departure time for packet n a(n) : arrival time f(n) : virtual finish time, f(0) = 0

71 © Jean-Yves Le Boudec and Patrick Thiran f(n-1)d(n-1)a(n) f(n)d(n) L(n)/r f(n-1)d(n-1)a(n) f(n)d(n) L(n)/r f(n-1)d(n-1)a(n) f(n)d(n) L(n)/r f(n) = max{a(n), min[d(n-1), f(n-1)]}+ L(n)/r

72 © Jean-Yves Le Boudec and Patrick Thiran PSRG has all the nice properties  priority scheduler: r=C, e=L max /C  packet based GPS, with accuracy E 1, E 2 : G(n)- E 1  d(n)  G(n) + E 2 G(n) = departure time in fluid GPS system  rate r, e = E 1 + E 2  concatenation of FIFO nodes: same as GR

73 © Jean-Yves Le Boudec and Patrick Thiran Delay from Backlog  Theorem : packet scale rate guarantee  delay  Q/r + e Q: backlog upon arrival  intuitively clear -- and proof is simple -- if node is FIFO (infocom 2001)

74 © Jean-Yves Le Boudec and Patrick Thiran Delay bounds  We can combine all results above and find finite and infinite buffer bounds  delay 1 MB 0.4 MB 0.1 MB h=10 e = 2 MTU/r r=150 Mb/s C=5R

75 © Jean-Yves Le Boudec and Patrick Thiran PSRG versus Service Curve  PSRG => GR l (but not conversely !)  thus PSRG(r,e) => service curve (r, e+l max /r)  there are identical relations l PSRG adaptive service curve (Cruz, 1998) l GR service curve

76 © Jean-Yves Le Boudec and Patrick Thiran A Min-Max approach to solve the non- FIFO case  routers are FIFO per flow l all OK with IntServ (per-flow scheduling)  EF use aggregate scheduling l routers are not FIFO per aggregate  establishing the properties of PSRG with non-FIFO nodes has been an open challenge  a Min-Max approach can break it

77 © Jean-Yves Le Boudec and Patrick Thiran  we can get rid of f(n) by solving (1)  define  we obtain (2)

78 © Jean-Yves Le Boudec and Patrick Thiran The beauty of algebra (2)  re-write (2) by the replacement rule (min, max) -> (+,x) and obtain  use Gauss elimination  use the reverse replacement rule

79 © Jean-Yves Le Boudec and Patrick Thiran Alt. Characterization of PSRG  a node is PSRG(r,e) iff for all n and j in [0, n-1] (A) or there is some k in [j+1,…, n] such that (B)  interpretation: replaces VJ’s intuition

80 © Jean-Yves Le Boudec and Patrick Thiran Applications  Theorem : packet scale rate guarantee  delay  Q/r + e holds also for non-FIFO nodes

81 © Jean-Yves Le Boudec and Patrick Thiran PSRG has all the nice properties…  … but concatenation results for non-FIFO nodes are harder to get  (Le Boudec and Charny 2001): delay T 1 PSRG (r 2,e 2 ) PSRG (r,e)

82 © Jean-Yves Le Boudec and Patrick Thiran SETF  an alternative to EF [Zhi-Li Zhang 2000]  leads to a worst case bound which is finite for all  <1  packets stamped with arrival time at network access l aggregate scheduling l inside aggregate, order is that of timestamps Theorem: Proof: similar to previous bound

83 © Jean-Yves Le Boudec and Patrick Thiran Contents 1.Arrival curves 2. Service curves, backlog, delay bounds 3. Diffserv: intuition and formal definition behind EF 4. Playback Delay for pre-recorded video 5. Statistical multiplexing with EF

84 © Jean-Yves Le Boudec and Patrick Thiran Network delivery of Pre- recorded video  Le Boudec and Verscheure ToN 2000, Thiran, Le Boudec and Worm, Infocom 2001  Network + end-station offers a service curve  to flow x(t) (intserv or diffserv + real time model of end- station)  Smoother delivers a flow x(t) conforming to an arrival curve . Can look-ahead on the server (max d time units)  Video stream is stored in the client buffer B and read after a playback delay D.  a(t-D)x(t)y(t) Network Smoother ß(t)  Video display B Video server a(t+d)

85 © Jean-Yves Le Boudec and Patrick Thiran Network delivery of Pre- recorded video  What are the minimal values of D and B, given d,  and  ?  What is the scheduling (smoothing) strategy at the sender side that achieves these minimal values ?  Is this optimal smoothing strategy unique ?  Does a large look-ahead delay d help in reducing D and B ?  a(t-D)x(t)y(t) Network Smoother ß(t)  Video display B Video server a(t+d)

86 © Jean-Yves Le Boudec and Patrick Thiran Putting the Problem into Equations  Smoothed flow x(t) such that x(t)   0 (t) (i.e, x(t) = 0 if t  0) x(t)  a(t+d) (look-ahead up to d time units) x(t)  (x  (t) (smoothing)  Output flow y(t) such that y(t)  a(t-D) (no buffer underflow) y(t)  a(t-D) + B (no buffer overflow)  y(t) =  x)(t) is not known but (x  (t)  y(t)  x(t)  a(t-D)x(t)y(t) Network Smoother ß(t)  Video display B Video server a(t+d)

87 © Jean-Yves Le Boudec and Patrick Thiran The Min-Plus Residuation Theorem  From Baccelli et al, “Synchronization and Linearity”  Theorem: Assume that the operator  is isotone and upper-semi-continuous. the problem x(t)  a(t)   (x)(t) has one maximum solution, given by x(t) =  (a)(t)  (Definition of closure of an operator)  (x) = inf {x,  (x),  (x),  (x),...}   is isotone if x(t)  y(t) ->  (x)(t)   (y)(t)   is upper-semi continuous if inf i (  x i  ) =  (inf i (x i )) l true in practice for all our systems  The greedy shaper output is an example of use

88 © Jean-Yves Le Boudec and Patrick Thiran Massaging the Equations to use Residuation  Output flow y(t) such that (x  (t)  a (t-D) (no buffer underflow) x(t)  a(t-D) + B (no buffer overflow) or equivalently using deconvolution operator Ø x(t)  (a Ø  ) (t-D) = sup u { a(t-D+u) -  (u) } x(t)  a(t-D) + B  Therefore find smallest D, B s.t. maximal solution of x(t)  {  0 (t)  a(t+d)  (a(t-D) + B) }  {(x  (t) } verifies x(t)  (a Ø  ) (t-D)

89 © Jean-Yves Le Boudec and Patrick Thiran Applying Residuation to our Problem  Maximal solution of x(t)  {  0 (t)  a(t+d)  (a(t-D) + B) }  {(x  (t) } is, with  sub-additive, x(t) =  {  0 (t)  a(t+d)  (a(t-D) + B) } =  (t)  { (  a)(t-D) + B }  (  a)(t+d)  Need to check that this solution x(t)  (a Ø  ) (t-D)  (t)  (a Ø  ) (t-D) -> D  h(a,   ) (  a)(t-D) + B  (a Ø  ) (t-D) -> B  v(a Ø a,   )  (  a)(t+d)  (a Ø  ) (t-D) -> D + d  v(a Ø a,   )

90 © Jean-Yves Le Boudec and Patrick Thiran Bounds for D, B and d  In summary, we have shown that the set of admissible playback delays D, playback buffer B and look-ahead limit d is D  D min = h(a,   ) D + d  (D+d) min = h(a Ø a,   ) B  B min = v(a Ø a,   ) l in particular, there is a minimum playback delay. l if D, d, B satisfy the constraints above, a schedule is possible; else, there is no schedule that can guarantee correct operation

91 © Jean-Yves Le Boudec and Patrick Thiran time bits   The formulae have a simple graphical interpretation  (1) compute  D min = h( a  ) (2) compute the horizontal deviation  (3) compute a  a and the horizontal deviation bits a  (D + d) min = h( a  a  )  bits B min = v( a  a  ) (4) compute the vertical deviation

92 © Jean-Yves Le Boudec and Patrick Thiran Example: MPEG Trace (a Ø a)(t) a(t)  MPEG files, 25 frames/sec, discretized in packets of 416 bytes rt D min (D + d) min D min d (D+d) min - D min - r r

93 © Jean-Yves Le Boudec and Patrick Thiran  Actual values of delays depend on the length of the stream and the position of largest burst, and the ability to predict it  Example: in Jurassic Park trace, largest burst occurs between frames frames frames

94 © Jean-Yves Le Boudec and Patrick Thiran  Actual values of delays depend on the length of the stream, the position of largest burst, and the ability to predict it max over 4 slices of 100 frames 400 frames D max (D1,D2,D3,D4) D1 D2D3D4 D

95 © Jean-Yves Le Boudec and Patrick Thiran Scheduling for D min, d min and B min x max (t) a(t-D min ) a(t)  (t)=rt D min t B min d min a(t+d min ) x max (t) =  (t)  (  a)(t+d min )  { (  a)(t-D min ) + B min }

96 © Jean-Yves Le Boudec and Patrick Thiran Example 3: Dual problem formulation  Find smallest D, B and d s. t. the minimal solution of x(t)  (R Ø  ) (t-D)  (x Ø  ) (t) verifies x(t)   0 (t)  R(t+d)  {R(t-D) + B}.  Find smallest D, B and d s.t. the maximal solution of x(t)   0 (t)  R(t+d)  {R(t-D) + B}  (x  (t) verifies x(t)  (R Ø  ) (t-D).  Property of Ø : x  (x  ) (x Ø  )  x

97 © Jean-Yves Le Boudec and Patrick Thiran Max-Plus System Theory in Action  From Baccelli et al, “Synchronization and Linearity”; assume that  is isotone and lower-semi-continuous. Theorem : the problem x(t)  a(t)   (x)(t) has one minimum solution, given by x min (t) =  (a)(t)  (Definition of super-additive closure)  (x) = sup {x,  (x),  (x),  (x),...}  Minimal solution of x(t)  (R Ø  ) (t-D)  (x Ø  ) (t) is, with  sub-additive with  (0) = 0, x min (t) = (R Ø (   ))(t-D)

98 © Jean-Yves Le Boudec and Patrick Thiran Scheduling for D min, d min and B min x max (t) R(t-D min ) R(t) D min t B min d min R(t+d min ) x max (t) =  (t)  (  R)(t+d min )  { (  R)(t-D min ) + B min } x min (t) = (R Ø (   ))(t-D) (Le Boudec, Verscheure 2000) + Other metrics (Feng, Rexford 99): x min (t) + minimal rate variability (Salehi, Zhang, Kurose, Towsley 98) + ON-OFF (Zhang, Hui 97)

99 © Jean-Yves Le Boudec and Patrick Thiran Contents 1.Arrival curves 2. Service curves, backlog, delay bounds 3. Diffserv: intuition and formal definition behind EF 4. Min-plus algebra in action: Video smoothing 5. Statistical multiplexing with EF

100 © Jean-Yves Le Boudec and Patrick Thiran 5. Stochastic Bounds  network calculus gives deterministic bounds on delay and loss  combine with Hoeffding bounds [1963]: Assume l X i are independent and 0  X i  1 l E(X 1 +…+ X I ) = s is known then for s < x < I

101 © Jean-Yves Le Boudec and Patrick Thiran Bound on loss probability  I independent, stationary sources with identical constraints  i served in a network element with super- additive service curve  [Chang, Vojnovic and L  where 0 = s 0 b else g(u,v) = 0

102 © Jean-Yves Le Boudec and Patrick Thiran  Step 1: reduction to horizon   Step 2:  Step 3 : Hoeffding to each term

103 © Jean-Yves Le Boudec and Patrick Thiran Application to DiffServ  micro-flows in one aggregate assumed independent at network access only  at node i majorize the amount of data in [s,t] by R i j (t)- R i j (s)  R 0 j (t) - R 0 j (s-d) and apply the previous [Chang, Song and Siu Sigmetrics 2001, Vojnovic and Le Boudec Infocom 2002] node i access R 0 j (t) R i j (t)

104 © Jean-Yves Le Boudec and Patrick Thiran Compare to Poisson Approximation  Poisson approximation proposed [Bonald, Proutière, Roberts, Infocom ‘01] for CBR flows  Bound converges to Poisson for many flows and small burstiness Poisson 500 flows 200 flows deterministic

105 © Jean-Yves Le Boudec and Patrick Thiran Conclusion  Network Calculus is a set of tools and theories for the deterministic analysis of communication networks  A new system theory, which applies min-plus algebra to communication networks  Does not supersede stochastic queueing analysis, but gives new tools for analysis of sample paths  “Network calculus”, J-Y Le Boudec and P. Thiran, Lecture Notes in Computer Sciences vol. 2050, Springer Verlag, also available on-line at