# Berlin 14.07.06 Network Calculus & Related Models with Applications by George I. Stassinopoulos Prof. NTUA

## Presentation on theme: "Berlin 14.07.06 Network Calculus & Related Models with Applications by George I. Stassinopoulos Prof. NTUA"— Presentation transcript:

Berlin 14.07.06 Network Calculus & Related Models with Applications by George I. Stassinopoulos Prof. NTUA stassin@cs.ntua.gr

2 Network Calculus & Related Models with Applications 1.Basic Calculus 2.Modelling Concepts – Traditional 3.Modelling Concepts – Alternatives 4.Applications

3 Network Calculus ‘A Theory for Deterministic Queuing Systems’ ‘Deterministic Queuing Theory’ “for the Internet” Basic Calculus

4 Network Calculus no statistics no probabilities no queuing theory flows non decreasing time functions RATEs / BUFFERs Interplay

5 Arrival Curve α(t) Concerns the input Places restrictions on the input’s burstiness by checking it against a ‘leaky bucket’. Input i(t) is checked against α(t) Service Curve β(t) Concerns the system Guarantees a minimal forwarding capability for the system (‘server’). Output o(t) is bounded from below by an expression involving the input i(t) and β(t)

6 System α(t) Arrival & Service Curves i(t) & β(t) i(t) o(t) GOAL: Make output at every time as large as possible approaching the input which is (roughly) equivalent to minimizing backlog which is (roughly) equivalent to minimizing delay BUT: this depends on capacity of system (β) & smoothness of input (α) β(t)

7 α(t) Arrival & Service Curves i(t) o(t) GOAL: Make output at every time as large as possible approaching the input which is (roughly) equivalent to minimizing backlog which is (roughly) equivalent to minimizing delay BUT: a theory cannot ‘make’ anything – it can only analyze so instead give BOUNDS which check or guide the design backlog delay smoothness α(t) system β(t) t

8 MATHEMATICAL FRAMEWORK i(t) o(t) All functions are flows counted cumulatively, i.e. Nondecreasing functions of time t Starting at t=0 from 0 Very often convex (usually for β(t)) concave (usually for α(τ)) backlog delay t

9 MATHEMATICAL FRAMEWORK i(t) o(t) backlog delay no backlog ????? no delay t the Ordinate (y-) value is a full address for each bit !!!! Non-causal (well known)

10 PHILOSOPHICAL DISGRESSION i(t) t the ordinate (y-) value is a full address for each bit !!!! a mathematically trivial observation πάντα ρεῖ everything flows (against time) Herakleitos, 6 th century B.C. … moreover ‘you can not wash yourself in the river twice with the same water’ Herakleitos, again flow uniqueness

11 MATHEMATICAL FRAMEWORK We model flows systems, via flows (service curve, response to standard inputs) flow f(t) t t flow as bit, packet density, traffic intensity flow f(t) always nondecreasing (because cumulative) but its slope (rate of increase) can be increasing - convex fdecreasing - concave f t t

12 MATHEMATICAL FRAMEWORK flow f(t) Delay does not harm Burst does not harm convexity concavity t t t t T b still f(0)=0 Initial no more a mathematical abstraction Passing a pointer (some nanosecs) can mean a new job of some Gbits

13 Exploiting the assurances on the input’s burstiness i.e. for a certain α(t) Basic Goal Involving Arrival & Service Curves AND the guarantee on the system’s forwarding capability i.e. for a certain β(t) Derive bounds for BACKLOG, DELAY and the SMOOTHNESS of the output

14 b t Arrival Curve α(t) (b,r) f(t’) + α(t-t’) for all t’ ≥ 0t flow f(t) must be below all functions : Arrival Curve Concept vol b f(t)f(t) slope r opening r leaky bucket test Violation !!!! f(t) ≤ f(t’) + α(t-t’) α(t) f(t)f(t) ‘ α constraints the growth of f ’ t

15 Arrival Curve Concept f(t) ≤ f(t’) + α(t-t’) ‘ α constraints the growth of f ’ t Question: Give all flows being constrained by arrival curve α(t) = α t α t Asw: All concave flows

16 t Arrival Curve α(t) {(b i,r i )} Arrival Curve Concept vol b 1 f(t)f(t) r1r1 opening r 1 More elaborate leaky bucket test for f(t) α(t) vol b 2 vol b 3 opening r 2 opening r 3 r2r2 r3r3 Concave !!! b 1 +b 2 +b 3

17 Convex subgraph t Arrival Curve α(t) {(b i,r i )} Arrival Curve Concept vol b 1 same f(t) tested 3x (against 3 hyperplanes) r1r1 r1r1 …and another elaborate leaky bucket test for f(t) α(t) vol b 3 vol b 2 r2r2 r3r3 r2r2 r3r3 Concave !!! h3h3 h2h2 h1h1 A convex set as a intersection of linear half spaces defined by hyperplanes

18 t The flow coincides with the arrival curve by which it is constrained f(t) = α(t) The flow f(t) fills to the limit all test buckets determined by α(t) = f(t) f(t) is greedy The flow f(t) is sub-additive and f(0)=0 f(t+s) ≤ f(t) + f(s) for all t,s ≥ 0 α = α α α = α (sub-additive closure) f(t) = α(t) f(t) = f(t’) + f (t-t’) some other f constrained by α α = α α α is a ‘good’ function

19 System io R T t Service Curve β(t) i(t’) + β(t-t’) for all t’ ≥ 0 t output is above lower envelope of: Service Curve Concept

20 System io R T t Service Curve β(t) i = ct c < R ct’+ β(t-t’) for all t’ ≥ 0t output is above lower envelope of: i = ct c > R above !!! BACKLOG ??

21 System io R T t Service Curve β(t) ct’+ β(t-t’) for all t’ ≥ 0t output is above lower envelope of: i = ct c > R Actual Output of System is Server always busy

22 System io R T t Service Curve β(t) i = ct c < R ct’+ β(t-t’) for all t’ ≥ 0t output is above lower envelope of: Actual Output of System is cT/(R-c) slope c

23 System io R T t Service Curve β(t) i(t’) + β(t-t’) for all t’ ≥ 0t output is above lower envelope of: Service Curve Concept However:Beware of busy / idle periods in the system (‘server’) ! for t 0 beginning of last idle period o(t) ≥ i(t 0 ) + β(t-t 0 ) simpler !!

24 System io R T t Service Curve β(t) Service Curve Concept Explain: for constant rate server and t 0 beginning of last idle period……. o(t) ≥ i(t 0 ) + β(t-t 0 ) t0t0 i(t) !!!! Draw answer above !!!!

25 System io Arrival vs. Service Curve α(t) An arrival curve concerns the growth property of a flow (usually an input) (remember the bucket(s) test) A service curve concerns the ability of a system to sustain an output as long as there is backlog. A service curve concerns a particular system’s response to any input β(t)

26 System io t Service Curve β(t) CONCAVE !! Service Curve The input must be steep enough in order to provide volume to ‘be served’ t0t0 i(t) Responds massively to initially accumulated traffic serving it at the highest rate… A low latency server! … and then levels off !!

27 System io t Service Curve β(t) CONCAVE !! Service Curve … in this case the server is not able to sustain the input rate and the backlog grows beyond any bound i(t) A low latency server! backlog

28 System io t Service Curve β(t) CONVEX !! Service Curve … in this case the server has initially slow response not caring for the delay caused – eventually it clears the backlog i(t) high throughput server! Theory says: o(t) is above red line It actually meets i(t)

29 System io T t Service Curve i i(t’)+ δ(t-t’) for all t’ ≥ 0t output is above lower envelope of: Pure (lossless) Delay T T δ(t) But also: o(t) ≥ i(t 0 ) + δ(t-t 0 ), t 0 idle point Every t is a t 0 !!!! - Infinite rate server CONVEX !! Service Curve

30 t high throughput server! T t δ(t) pure delay delay T slope R rate latency server CONVEX !! Service Curves

31 from Arrival Curve Concept f(t) ≤ f(t’) + α(t-t’) ‘ α constraints f ’ Min-Plus Convolution between f & g (f g)(t) = inf { f(t-s) + g(s) / 0 ≤ s ≤ t } Generalization Set t’ -> s f -> g α-> f

32 from Arrival Curve Concept f(t) ≤ f(t’) + α(t-t’) f is bounded from above by the Min-Plus Convolution between f & α f(t) ≤ (f α)(t) is written now for all t’ ≤ t Flow f is constrained by arrival curve α

33 from Arrival Curve Concept f(t) ≤ f(t’) + α(t-t’) for all t’ ≤ t …. when is a concave flow constrained by itself, taken as arrival curve ? t Concave flow

34 from Arrival Curve Concept f(t) ≤ f(t’) + α(t-t’) A concave α is always constrained by ‘arrival curve’ α α(t) ≤ (α α)(t) for all t’ ≤ t For f = a & concave t α(t) α(t – t 2 ) α(t – t 1 ) t 2 t 1 Trivial, but useful !!!

35 s s Min-Plus Convolution Interpretation (f g)(t) = inf { f(t-s) + g(s) } t f(t-s) g(s) Go back on f by s and replace by a piece from the beginning of g Do that for the s giving min (inf) value 0 ≤ s ≤ t

36 Min-Plus Convolution Interpretation (f g)(t) = inf { f(t-s) + g(s) } t s s f(t-s) g(s) (f g)(t) 0 ≤ s ≤ t

37 Min-Plus Convolution Properties (f g)(t) = inf { f(t-s) + g(s) } ≤ f(t) set s = 0 ≤ g(t) set s = t = (g f)(t) set t’ = t-s (commutativity) = min {f(t), g(t) } if f, g linear 0 ≤ s ≤ t

38 Min-Plus Convolution Properties (f g)(t) = inf { f(t-s) + g(s) / 0 ≤ s ≤ t Take f and g convex !!! Slope non decreasing Take successive slopes in increasing order and put these in succession !!! equal slope Slopes Rule f g f g

Berlin 14.07.06 Modelling Concepts – Traditional

40 System io t Service Curve β(τ) i = ct i(t’) + β(t-t’) for all t’ ≥ 0t output is above lower envelope of: t convex concave i = ct ‘File Server’ Low Latency β(t)

41 i(t) – o(t) ≤ i(t) - inf { i(t-s) + β(s) } i(t) – o(t) ≤ sup { α(s) – β(s)} i(t)i(t) α(s) BOUNDS Backlog o(t) ≥ inf {i(t-s) + β(s) / 0 ≤ s ≤ t} i(t) – o(t) ≤ sup { i(t) - i(t-s) - β(s) } α & β combined! i output is above lower envelope 0 ≤ s ≤ t

42 i(t) – o(t) ≤ sup { α(s) – β(s)} 0 ≤ s ≤ t Input / output relationship o(t) ≥ i(t) β(s) β = β 1 β 2 Systems in series β1 β1 β2 β2 β two out of few results justifying the term ‘calculus’ 1 2

43 BOUNDS Backlog i(t) – o(t) ≤ sup { α(s) – β(s) / 0 ≥ s ≤ t} A system offering a service curve β and fed with a flow constrained by arrival curve α has backlog at t bounded by sup { α(s) – β(s) / 0 ≥ s ≤ t} α β t backlog increasing with time !!! !!! BOUND for sup over t …………. uncertainty of our theory while working far into the future

44 BOUNDS Backlog & Delay o(t) i(t) backlog delay t1t1 the t 1 -th bit at the input appears here at the output t2t2 t 2 -t 1 is the delay at time t 1 t vertical horizontal

45 BOUNDS Delay d(t) δ(s) = inf {τ ≥ 0 / α(s) ≤ β(s+τ) } virtual delay of hypothetical system, input α(t(), output β(t) find h(α,β) sup (over s) of all values δ(s) o(t) β(t) i(t) α(t) τs + τ t For an input, constrained by α and traversing a system offering β d(t) ≤ h(α,β)

46 BOUNDS Output Smoothness Output o is constrained by ‘arrival curve’ α β min-plus deconvolution System io Input i is constrained by arrival curve α System offers service curve β then

47 (f g)(t) = sup { f(t + u) - g(u) } What is min-plus deconvolution ? … in some sense the opposite of min-plus convolution ? MIN-PLUS DECONVOLUTION (f g)(t) = inf { f(t - s) + g(s) } u ≥ 0 0 ≤ s ≤ t min-plus de convolution min-plus con volution How much can f grow over g after a time interval t ?

48 (α β)(0) = backlog BOUNDS Output Smoothness System io α β u giving sup for t=0 with (α β)(t) = sup {α(t + u) - β(u) } u ≥ 0 easily explainable Output o is constrained by ‘arrival curve’ α β sup { α(u) – β(u)} 0 ≤ u

49 BOUNDS Output Smoothness System io α β with (α β)(t) = sup {α(t + u) - β(u) } u ≥ 0 (α β)(0) = backlog (α β)(t) …… for increasing t backlog ‘arrival curve’ of output Compare what arrives t secs ahead with what the system can output Output o is constrained by ‘arrival curve’ α β

50 BOUNDS RECAP Output has ‘arrival curve’ α β min-plus deconvolution Delay bound d(t) ≤ h(α,β) Backlog bound sup { α(s) – β(s) } 0 ≤ s ≤ t …. i.e. the defining role of arrival & service curve !!!

51 Exploiting the assurances on the input’s burstiness i.e. for a certain α(t) Basic Goal Involving Arrival & Service Curves AND the guarantee on the system’s forwarding capability i.e. for a certain β(t) Derive bounds for BACKLOG, DELAY and the SMOOTHNESS of the output EXAMPLE …

52 EXAMPLE System i o Input i is constrained by arrival curve α System offers service curve β b vol bslope r opening r delay T slope R t α β For r ≤ R Buffer bound (of System!) is b + rT Delay bound isT + b/R Output burstiness increased by rT T slope r slope R b ‘arrival’ curve of output!

53 α β t R Concave Arrival curve & Rate Latency Server - - a very typical case -- what can be said for the output ? (α β)(t) = sup {α(t + u) - β(u) } u ≥ 0 u t =2 t =0t =1 T sup Shifting to the left as long as slope of α < R, increases sup by R t Then arg sup sticks at t =T and increase is given by α(t) T

54 α β t R Concave Arrival curve & Rate Latency Server - - a very typical case – what can be said for the output ? (α β)(t) = sup {α(t + u) - β(u) } u ≥ 0 t T Final Result for Departure ‘arrival’ Curve Find backlog (t = 0) Start from (0, Backlog) with slope R Shift α to left until it touches After point of contact continue with α backlog point of contact

55 i(t) o(t) backlog delay t output smoothness Ok,...… but are bounds tight ?! System i o α β

56 α β t Take system with any β and arrival constrained by ‘good’ function α Take input i(t) = α(t) Arrange that output o(t) = min{α(t), β(t)} Such a system exists - is casual, because by construction o(t) ≤ i(t) Can easily show : the system offers service curve β the system achieves the bounds Bounds are tight !!! β minimum guarantee, does not determine the output !!!

57 Star-shaped functions f f(t) t f(t) / t decreasing for all t > 0 f concavef star-shaped f, g star-shapedmin { f, g } star-shaped example

58 Bibliography for Network Calculus Network Calculus. A Theory of Deterministic Queuing Systems for the Internet, J-Y Le Boudec, P.Thiran, Springer Lecture Notes, 2001 A Calculus for Network Delay, Part I & II, R.L. Cruz, IEEE Trans. Inform. Theory, Vol 37-1, pp 113-131 & 132-141, Jan 1991. Service Disciplines for Guaranteed Performance Service in Packet Switching Networks, H. Zhang, Proceedings of the IEEE, 1996. … and numerous papers by the above and other authors Visit http://ica1www.epfl.ch/PS_files/NetCal.htm#_Lectures and obtain book (free) and lecture slides (more advanced and seen as continuation of presented ones (‘traditional’ part only)). See also papers of originators of the ‘service curve’ concept of Parekh and Gallager & further literature.http://ica1www.epfl.ch/PS_files/NetCal.htm#_Lectures Other indicative sources by key players

59 Network Calculus & Related Models with Applications Summing up Not a calculus in the convenient sense Not a calculus in the conventional sense Gives rich insight on what happens micro and macroscopically not much shown but each case needs deep examination along the concepts shown … hopefully two hrs well spent THANK YOU !!

Download ppt "Berlin 14.07.06 Network Calculus & Related Models with Applications by George I. Stassinopoulos Prof. NTUA"

Similar presentations