22
Deterministic Network Calculus p.2

Deterministic Network Calculus p.2. DNC arrival results Accumulated arrival functions R(t): traffic recieved in [0,t] Arrival function may be constrained:

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Deterministic Network Calculus p.2

DNC arrival results

• Accumulated arrival functions R(t): traffic recieved in [0,t]

• Arrival function may be constrained:

R(t)-R(s) <= (t-s)

• (t-s) is typically either affine or staircase

• Packet spacing with period T and tolerance is constrained by staircase arrival curve.

• For fixed length packets affine and staircase constraints are equivalent.

• Leaky buckets and GCRAs are euqivalent and are affine and staircase constrained.

DNC arrival results

• Arrival curves and their left limits L are equivalent.

• Good functions have (0)=0 and are subadditive:

(t+s) <= (t) + (s)

• Arrival curves and their subadditive closures are equivalent.

• Good functions are sufficient as arrival functions.

• Affine and staircase functions are good.

• R R (t) = sup {R(t+v)-R(v)} (for all positive v) is the smallest arrival curve for R

Service curves (definition)

Service curves specify in the worst service to be experienced by some service element in a network. Service curves play the role of transfer functions (system impulse responses in our network calculus)

Definition (of service curve)

An input flow R is guaranteed a service from som network element iff:

R >= R* >= R = inf {(t-s)+R(s)} (for all s <= t)

Where R* is the output flow from the network element.

Service curves (motivation)Consider a service element where the output rate is constantly r within busy periods. Input flow is R and output flow is R*

We have directly for t0 < t

R*(t)-R*(t0) = r(t-t0)

when t and t0 are in the same busy period.

If t0 is the beginning of the busy period:

R(t0)=R*(t0)

so that

R*(t)-R(t0) = r(t-t0)

R*(t)=R(t0)+r(t-t0)

R*(t) >= inf {r(t-s)+R(s)} (for all s <= t)

Service Curves (motivation)Consider a service element where every bit is delayed constantly d.

We have directly for t0 < t

R*(t)=R(t-d)

Consider the funtion d defined by

d(t)=0 for t <=d

d(t)=infinity for t > d

Then

R*(t) =R(t-d) = inf {d(t-s)+R(s)} (for all s <= t)

(s must be the smallest value for which t-s <= d i.e. s = t-d)

d

infinity

Service curves (motivation)(strict service curves)

Consider a network element where the output from the beginning of the present busy period is above (t-t0) (t0 – beginning of busy period) when t is in busy period.

Then for some t in a busy period:

R*(t)-R*(t0) >= (t-t0)

R*(t) >= R*(t0) + (t-t0)

R*(t) >= R(t0) + (t-t0) >= inf {(t-s)+R(s)} (for all s <= t)

Then for some t in an idle period:

R*(t) = R(t) >= inf {(t-s)+R(s)} (for all s <= t)

Service Curves (Concatenation)

Consider the following tandem configuration of network elements

R(t) R**(t)R*(t)

Then the tandem guarantees a service curve

What we need to prove is that is monotone and associative, i.e.

R** >= R* R R (

Concatenation (associativity)R infst {(t-s) +inf <= s{(sR(infst {inf <= s{(t-s) +(sR(infst, <= s {(t-s) + (sR(

R (infst {inf <= t-s {(t-s-)+ (R(s) }}= infst {inf <= t-s {(t-s-) + (R(s) }} infst, <= t-s {(t-s-) + (R(s) }

(t- = = t-= inft, s<= {-s) + (tR(s) }= inft, s<= {(t(-sR(s) }

(-> s, s -> = infst, <= s {(t-s(sR }= R

Concatenating Constant Rates

= inf s <= t{(t-s1s)}= inf s <= t {r2(t-s) + r1(s)}= inf s <= t {r2(t-s) + r1(s)}

r2 t for r1>r2 (s=0)r1 t for r2>r1 (s=t)

= min{r1,r2} t

CONSITENT WITH BOTTLENECK INTUITION

Concatenating with max. Delay

d = inf s <= t{(t-sds)}

= min{inf s <= d {(t-s)},inf}

= inf s <= d {(t-s)}= (t-d)

or in fact [(t-d)]+

d

Prioritizing Servers (preemptive)

H = c t

L = [c t – H]+

H

H = c t

L

Queue Lengths

R

t

R*

time

q(t)

q

Queue Lengths from Specifications

qmax

Proof

R(t)-R*(t) <= R(t)-inf s<=t {(t-s)+R(s)}

= sup s<=t {R(t) - (t-s) - R(s)}

= sup s<=t {R(t) – R(s) - (t-s)}

<= sup s<=t {(t-s) - (t-s)}

= sup 0<=t-s {(t-s) - (t-s)}

Waiting Times

R

t

R*

time

w(t)

Waiting Times from Specifications

wmax

Output FlowLet the inflow R to some service element be constrained by and the service element guarantee a service curve

Then

The output flow R* is constrained by

sup u>=0 {(t+u) – (u)}

Output Flow (example)

sup u>=0 {(t+u) – (u)}=sup u>=0 {r(t+u)+b – [s u – p]+}=

max{sup 0<=u<d {r(t+u)+b}, sup u>=d {r(t+u)+b – s u + p}}=max{{r(t+d)+b},{r (t+d) – (s d – p)}}=r(t+d) + b = rt + rd + b = rt + r (p/s) + b

d

rd

Converging Flows

n+x <= n + x

Loops (example)

RL

cc

LlowRlow

LhighRhigh

Lhigh= Rhigh=c t,

Llow= [c t- Rlow]+, Rlow= [c t- Llow]+,

Loops (example)Lhigh= Rhigh=c t,

Llow= [c t- Rlow]+, Rlow= [c t- Llow]+

L = rL t + bL , R = rR t + bR

Rlow = rRlow t + bRlow , Llow = rLlow t + bLlow

rRlow = rR , rLlow = rL

bRlow = bR + rR bLlow /(c- rLlow) = bR + bLlow rR /(c- rLlow)

bLlow = bL + rL bRlow /(c- rRlow) = bL + bRlow rL /(c- rRlow)