worst-caseanalysisofnetworks usingnetwork calculusafsec.asr.cnrs.fr/wp-content/uploads/2011/01/ens...
TRANSCRIPT
Worst-case Analysis of NetworksUsing Network Calculus
Giovanni SteaComputer Networking Group
Department of Information EngineeringUniversity of Pisa, Italy
ENS Lyon, December 7, 2010
ENS Lyon, December 7, 2010 2
Dipartimento di Ingegneria dellaInformazione
OutlineOutline
• Motivation• Performance analysis of real-time traffic
• Network Calculus• Basic modeling: arrival and service curves
• Concatenation, bounds• “Pay burst only once” principle / IntServ
• Advanced modeling: aggregate scheduling
ENS Lyon, December 7, 2010 3
Dipartimento di Ingegneria dellaInformazione
RealReal--time traffictime traffic
• Expected to represent the bulk of the traffic in the Internet soon• Skype users: 107-108
• Cisco white paper: video traffic volume to surpass P2P in 2010
• Revenue-generating only if reliable• Reliability boils down to “packets meeting
deadlines”• End-to-end delay bounds are required
ENS Lyon, December 7, 2010 4
Dipartimento di Ingegneria dellaInformazione
Performance analysisPerformance analysis
• Tagged flow (of packets) traversing a path
• Cross traffic
• Many queueing points (routers)
• How to compute a bound on the e2e delay?
ENS Lyon, December 7, 2010 5
Dipartimento di Ingegneria dellaInformazione
Performance analysis (2)Performance analysis (2)
• Service Level Agreement with upstream neighbor
• I will carry • up to X Mbps of your traffic • from A to B
• within up to Y ms (!!)• for Z$
A
B
ENS Lyon, December 7, 2010 6
Dipartimento di Ingegneria dellaInformazione
Modeling a network with NC (1)Modeling a network with NC (1)
Fixed delays: propagation, …
Variable delay: queueing
Per-flow scheduling Aggregate scheduling
ENS Lyon, December 7, 2010 7
Dipartimento di Ingegneria dellaInformazione
Modeling a Modeling a queueingqueueing point with NCpoint with NC
• A scheduler serves its queues on a time sharing basis:
• Most guarantee that a queue is visited:• For a minimum amount of time• After a computable maximum vacation
Round robin
Strict priority
ENS Lyon, December 7, 2010 8
Dipartimento di Ingegneria dellaInformazione
Modeling a Modeling a queueingqueueing point with NC (2)point with NC (2)
• Minimum service over a maximum interval• A minimum guaranteed rate• With a latency (when the server is away)• The latency is upper bounded
• Round robin schedulers (DRR, PDRR, …)• Fair Queueing schedulers (PGPS, WFQ,
WF2Q, STFQ, SCFQ, …)• Strict priority (for the queue at highest prio)
ENS Lyon, December 7, 2010 9
Dipartimento di Ingegneria dellaInformazione
Example: a Round Robin schedulerExample: a Round Robin scheduler
• Fixed length packets, 2 packets per queueservice
Slope C
latency
Slope R<C
ENS Lyon, December 7, 2010 10
Dipartimento di Ingegneria dellaInformazione
TF
P2
TF
P3
TF
P4
TF
P5
TF
P6
TF
P7
t
F2
P1
TF
P1
t
service
Example: a priority schedulerExample: a priority scheduler
• Strict non preemptive priority, queuescheduled at top priority
Slope C
latency
Service curve: summarizes the service received in a worst case by a backlogged tagged flow
Models the presence of other queues
Rate-latency service curves most common in practice
ENS Lyon, December 7, 2010 11
Dipartimento di Ingegneria dellaInformazione
Modeling a Modeling a queueingqueueing point with NC (3)point with NC (3)
• Worst-case behavior for my queue:• served at minimum rate
• with maximum latency
ENS Lyon, December 7, 2010 12
Dipartimento di Ingegneria dellaInformazione
Modeling a Modeling a queueingqueueing point with NC (4)point with NC (4)
• Nodes transform functions of time( )A t ( )D t
TF
P1
TF
P2
TF
P3
TF
P4
Server with
latency
capacity
R<C
time
bits ( )A t ( )D t
( )tβ
0t
( )0A t
( )0D t
( ) ( )D t A tβ≥ ⊗
( )( ) ( )
0inf
s t
A t
A s t s
β
β≤ ≤
⊗ =
+ −
( ) ( )0
tA s t s dsβ⋅ −∫
ENS Lyon, December 7, 2010 13
Dipartimento di Ingegneria dellaInformazione
Concatenation propertyConcatenation property
• Assume a flow traverses a tandem of nodes
1 2
( )( )
1,2
1 2
t
t
ββ β
=
⊗
( )A t ( )D t ( ) ( )1,2D t A tβ≥ ⊗
It works for any # of nodes
ENS Lyon, December 7, 2010 14
Dipartimento di Ingegneria dellaInformazione
Concatenation property (2)Concatenation property (2)
• At each of the N nodes:• Cross traffic could be anything• Schedulers need not be the same
• mid ’90s: analyzing a tandem of identical schedulers • Took a whole PhD
• Was enough for a top-level journal paper (Parekh ’93, Saha ’98,…, all on IEEE/ACM TNet)
1 2
ENS Lyon, December 7, 2010 15
Dipartimento di Ingegneria dellaInformazione
An endAn end--toto--end delay bound (1)end delay bound (1)
• A bound on the delay for a given arrival process can easily be computed
time
bits ( )A t
Dmax
( )2e eA tβ⊗
( )2e e tβ
( )A t ( )D t
ENS Lyon, December 7, 2010 16
Dipartimento di Ingegneria dellaInformazione
An endAn end--toto--end delay bound (2)end delay bound (2)
• Traffic shaping/policing• Check conformance with a pre-specified profile
• Drop/delay out-of-profile traffic• Employed to verify SLA conformance
packets shaper network
A
B
ENS Lyon, December 7, 2010 17
Dipartimento di Ingegneria dellaInformazione
An endAn end--toto--end delay bound (3)end delay bound (3)
• Arrival curve: a constraint on the arrival process
time
bits ( )A t
( )tα
( ) ( ) ( )A t A s t sα− ≤ −
( ) ( )A t A tα≤ ⊗
example:
a token bucketburst B, rate r
B
r
ENS Lyon, December 7, 2010 18
Dipartimento di Ingegneria dellaInformazione
Backlog and delay bounds in NCBacklog and delay bounds in NC
• service curve for a path + arrival curve for a flow
time
bits
( )tα
D
D is a bound on the e2e delay
B B is a bound on the backlog
Bounds are tight
ENS Lyon, December 7, 2010 19
Dipartimento di Ingegneria dellaInformazione
Convolution of rateConvolution of rate--latency curveslatency curves
( ) ( )( ) ( )
1,2 1 2
1 20inf
s t
t t
s t s
β β β
β β≤ ≤
= ⊗
= + −( ) ( )i i it R t Lβ += ⋅ −
bits
bits
L1
L2
L1+L2
min(R1,R2)R1
R2
• Sum of the latencies, min of the rates
ENS Lyon, December 7, 2010 20
Dipartimento di Ingegneria dellaInformazione
““Pay bursts only oncePay bursts only once”” principleprinciple
• When traversing a tandem, your DB consists of• N latencies• One burst delay
bits
( )tα
1min i
i N
B
R≤ ≤
1 1
1min
N N
i ii ii i
i N
B BD L L
R R= =
≤ ≤
= + < +
∑ ∑
B
Pay burst only once(at the min rate)
1
N
iiL
=∑ D(1…N) < D(1)+…+D(N)
ENS Lyon, December 7, 2010 21
Dipartimento di Ingegneria dellaInformazione
IntServIntServ architecture (1)architecture (1)
• RSVP protocol
• FlowSpec: burst and rate of the flow• i.e., its token bucket arrival curve
• Path message• Includes FlowSpec and required delay bound• Collects node latencies at each hop
PATHL1
PATHL1+L2
PATHL1+…+LN
ENS Lyon, December 7, 2010 22
Dipartimento di Ingegneria dellaInformazione
IntServIntServ architecture (2)architecture (2)
• At the destination• compute what rate you need to reserve
• Based on your required delay D
bits
( )tα
B R
B1
N
iiL
=∑
D
1
max ,N
ii
BR r
D L=
= − ∑
r
ENS Lyon, December 7, 2010 23
Dipartimento di Ingegneria dellaInformazione
IntServIntServ architecture (3)architecture (3)
• RESV message travels back and reservesa rate R at each node• The delay bound is guaranteed from now on
RESVR
ENS Lyon, December 7, 2010 24
Dipartimento di Ingegneria dellaInformazione
TrafficTraffic aggregationaggregation
• Aggregation as "the" solution for scalableprovisioning of QoS in core networks
• Internet:• Differentiated Services• MPLS
Per-flow resource management
(e.g., packet scheduling) just doesn’t scale
ENS Lyon, December 7, 2010 25
Dipartimento di Ingegneria dellaInformazione
PerPer--aggregate schedulingaggregate scheduling
• Packets of an aggregate normally queued FIFO
• Arbitration (scheduling) among aggregates• Forwarding guarantees for the aggregate
ENS Lyon, December 7, 2010 26
Dipartimento di Ingegneria dellaInformazione
NC with aggregate schedulingNC with aggregate scheduling
• Computations get more involved…
Multi-queue scheduler
FIFO queues
ENS Lyon, December 7, 2010 27
Dipartimento di Ingegneria dellaInformazione
Traffic aggregation (cont.)Traffic aggregation (cont.)
• Aggregates change along a path• Per-node guarantees for different sets of flows
at each node• Cannot use concatenation of SCs
?
bits ( )A t
ENS Lyon, December 7, 2010 28
Dipartimento di Ingegneria dellaInformazione
Performance evaluation problemPerformance evaluation problem
• Users care about their flows, not aggregates• Users want e2e delay bounds, not per-node
forwarding guarantees
How to compute
per-flow end-to-end delay bounds
from per-aggregate per-node guarantees?
ENS Lyon, December 7, 2010 29
Dipartimento di Ingegneria dellaInformazione
Performance AnalysisPerformance Analysis
• Tandem network of FIFO rate-latency elements• All nodes have a rate-latency SC for the aggregate• All flows have a leaky-bucket AC
( )1,3
( )1,1 ( )2,2
( )2,3
( )3,3
1 2 3Tagged flow
Cross flows
ENS Lyon, December 7, 2010 30
Dipartimento di Ingegneria dellaInformazione
Leftover service curvesLeftover service curves
• Th. FIFO Mux - Minimum Service Curves• [Cruz et al., ‘98]
( ) ( ) ( ) 2 1 , 0' , tttt τα ττβ βτ +
> ⋅ −= − ≥
( )tβ
( )0' ,tβ τ
( )1' ,tβ τ?
ENS Lyon, December 7, 2010 31
Dipartimento di Ingegneria dellaInformazione
The LUDB methodologyThe LUDB methodology
LUDB: Least Upper Delay Bound
Step 1:Apply the FIFO Mux theorem iteratively so as to
“remove” all cross-flows
Ref: L. Lenzini, E. Mingozzi, G. Stea, "A Methodology for Computing End-to-end Delay Bounds in FIFO-multiplexing Tandems" Elsevier Performance Evaluation, 65 (2008), pp. 922-943
ENS Lyon, December 7, 2010 32
Dipartimento di Ingegneria dellaInformazione
The LUDB methodology (2)The LUDB methodology (2)
( )1,3
( )1,1 ( )2,2
( )2,3
( )3,3
1 2 3
( )1,3
( )2,3
1' 2 ' 3'
( )1,3
( )2,3
1' 2' 3'⊗
( )1,3 1' ( )2' 3' '⊗
( )1,3
( )1,1 ( )2,2
( )2,3
( )3,3
1 2 3
( )1,3 ( )1' 2 ' 3' '⊗ ⊗
( )tα
ENS Lyon, December 7, 2010 33
Dipartimento di Ingegneria dellaInformazione
The LUDB methodology (3)The LUDB methodology (3)
• An n-dimensional infinity of e2e SCs for the tagged flow• n = # of cross-flows
• Delay bound = fn. of n parameters
• Step 2• Solve an optimization problem
• The minimum is the best, i.e. tightest, delay bound
( ) 10min ,...,
inLUDB D
ττ τ
≥=
ENS Lyon, December 7, 2010 34
Dipartimento di Ingegneria dellaInformazione
Nested vs. nonNested vs. non--nested tandemsnested tandems
• Nested iff• path(f1)∩∩∩∩path(f2) =∅∅∅∅ (disjoint)• path(f1)⊆⊆⊆⊆path(f2) (nested)
• You can only compute an e2e SC for the tagged flow in a nested tandem
( )1,3
( )1,2
( )2,3
( )3,3
1 2 3
( )1,3
( )2,3
( )3,3
1 2 3Nested
Non-nested
ENS Lyon, December 7, 2010 35
Dipartimento di Ingegneria dellaInformazione
NonNon--nested tandems: MSA and STAnested tandems: MSA and STA
( )1,3α
( )1,2α
( )2,3α
1 2 3
( )1,3α
( )1,2α
( )2,3α
1 2 3
( )( )32,3α
( )( )31,3α
( )1,3α
( )1,2α
( )2,3α
1 2 3
( )( )32,3α
Ref: L. Bisti, L. Lenzini, E. Mingozzi, G. Stea, "Numerical analysis of worst-case end-to-end delay bounds in FIFO tandem networks “, submitted (Oct 2010)
ENS Lyon, December 7, 2010 36
Dipartimento di Ingegneria dellaInformazione
Two important pointsTwo important points
• The LUDB method:1. Is scalable enough
• You can use it in paths of 30+ nodes
2. Yields accurate bounds• Close to a flow’s Worst-Case Delay• (Sometimes)
Ref: L. Bisti, L. Lenzini, E. Mingozzi, G. Stea, "Estimating the Worst-case Delay in FIFO Tandems Using Network Calculus", Proc. VALUETOOLS'08, Athens, Greece, October 21-23, 2008
ENS Lyon, December 7, 2010 37
Dipartimento di Ingegneria dellaInformazione
Nested tandems: Piecewise linear problemNested tandems: Piecewise linear problem
• Piecewise linear objective, linear constraints• Explode it recursively into Ω simplexes
• Problem: Ω grows exponentially• 30-node tandem: Ω≈109
• Most simplexes are infeasible: Ω→106
• Use a heuristic sampling: Ω→102, very reliable
( ) 10min ,...,
inLUDB D
ττ τ
≥=
( )( )
1
11... 0,..., 0
min min ,...,i
j n
j nj
f
LUDB Dτ
τ τ
τ τ= Ω ≥
≥
=
ENS Lyon, December 7, 2010 38
Dipartimento di Ingegneria dellaInformazione
Nested tandems: nesting treeNested tandems: nesting tree
• Build the nesting tree
• Every leaf is a SC• Up: FIFO mux• Siblings: ⊗⊗⊗⊗
1 65432
( )1, 6
( )2, 3 ( )4, 6
( )3, 3 ( )4, 4 ( )5, 6
( )6, 6
( )1,6
( )2,3
( )3,3
( )5,6
( )6,6( )4,6
( )4,4
1
2
3 4 5
6
Early identification of infeasible simplexes
9 6: 10 10Ω →
ENS Lyon, December 7, 2010 39
Dipartimento di Ingegneria dellaInformazione
NestedNested tandem: tandem: heuristicheuristic LUDBLUDB
• Solve only very few “promising” simplexes• Very fast (indeed)
• High chance to attain the optimum (80%+)• Maximum error negligible (1%-2%)
0
0.02
0.04
0.06
0.08
0.1
0
0.2
0.4
0.6
0.8
1
2 4 6 8 10
k=2, l=3k=2, l=4k=2, l=5k=3, l=3
ma
xim
um r
elat
ive
erro
r
% o
f exa
ct m
atch
es
n
ENS Lyon, December 7, 2010 40
Dipartimento di Ingegneria dellaInformazione
NonNon--nested tandems: where to cut?nested tandems: where to cut?
• Rule of thumb: the less, the better• Sever all the dependencies• Primary sets of cuts PSCs
1 2 3 4
1
2
3
4
F
× × ××
×
( )( )
( )( )
( )( )
1,2 1,3 2,3
2,3 3,4 3,4
1
2
3
4
DM
×× × ×
× ×
321 4
( )1,2
( )2,3
( )3,4( )1,3
( )1,4
Repeat the algorithm (MSA/STA) for each
PSC (costly!)
ENS Lyon, December 7, 2010 41
Dipartimento di Ingegneria dellaInformazione
NonNon--nested tandemsnested tandems
• Complexity is exp. with tandem length• Feasible for up to 20-30 nodes
0.01
0.1
1
10
100
1000
104
10 15 20 25 30
MSA, 20%MSA, 50%MSA, 100%
STA, 20%STA, 50%STA, 100%
h-STA, 20%h-STA, 50%h-STA, 100%
com
puta
tion
time
(s)
N
MSA
h-STASTA
ENS Lyon, December 7, 2010 42
Dipartimento di Ingegneria dellaInformazione
What you get for complexityWhat you get for complexity
• LUDB bounds exponentially better than (naïve) per-node bounds
1
10
100
1000
10 15 20 25 30
20%50%100%
per
-nod
e de
lay
/ LU
DB
ra
tio
N
500-1000 times smaller
ENS Lyon, December 7, 2010 43
Dipartimento di Ingegneria dellaInformazione
AccuracyAccuracy
• Delay bounds are as useful as they are tight, i.e. close to the Worst-Case Delay• WCD unknown (to date)
• End-to-end analysis is fundamental
( )1,3
( )1,2
( )2,3
( )3,3
1 2 3
( )1,3
( )2,3
( )3,3
1 2 3
ENS Lyon, December 7, 2010 44
Dipartimento di Ingegneria dellaInformazione
SinkSink--tree networkstree networks
1
N iii
i
DB
LCR=
= +∑Interfering flow
at node 10
Interfering flow
at node 6
Ref: L. Lenzini, L. Martorini, E. Mingozzi, G. Stea, "Tight End-to-end Per-flow Delay Bounds in FIFO Multiplexing Sink-tree Networks",
Perf. Evaluation, 63/9-10, Oct. ’06, pp. 956-987
• Closed-form delay bound
• = Worst-Case Delay• Proof by construction
ENS Lyon, December 7, 2010 45
Dipartimento di Ingegneria dellaInformazione
Accuracy (2)Accuracy (2)
• e2e analysis is however not sufficient• Sink trees: nested tandems, all paths are (j,N)
WCD = LUDB• Tune flows so that a bit experiences a delay = LUDB
• However, in other nested tandems
WCD < LUDB
N1N −1 2( )1,N
( ),N N( )1,N N−( )2,N
ENS Lyon, December 7, 2010 46
Dipartimento di Ingegneria dellaInformazione
A conclusive negative answerA conclusive negative answer
• “extend” flow (j, N-1) to (j, N)• New WCD larger or equal (Theorem)
• Compute the LUDB for both tandems• New LUDB strictly smaller than the old one• the LUDB may be larger than the WCD
( )1,2
( )1,1
1 2
T
( ) ( ) 1,2 , 1,11 2
T
W W LUDBLUDB≤≤≤≤ ≤≤≤≤ <
ENS Lyon, December 7, 2010 47
Dipartimento di Ingegneria dellaInformazione
Flow extensionFlow extension
• Other applications• Turn a non-nested tandem into a nested one
• Nodes must be overprovisioned, otherwise FE is useless
( )1,3
( )*1,3
( )2,3
1 2 3
( )1,3
( )1,2
( )2,3
1 2 3
ENS Lyon, December 7, 2010 48
Dipartimento di Ingegneria dellaInformazione
Assessing the accuracyAssessing the accuracy
• Compute a (heuristic) lower bound• Tune flows carefully so as to “maximize” delay
• Compare the lower bound and the LUDB
• The smaller the interval, the tighter the bound
• Relative Overrating Bound (ROB):
1 - LowerBound/LUDB
[ ],WCD LowerBound LUDB∈
ENS Lyon, December 7, 2010 49
Dipartimento di Ingegneria dellaInformazione
1
Lower bounds on the WCTTLower bounds on the WCTT
• Benchmark the accuracy of the LUDB• Works with nested and non-nested tandems
140
150
160
170
180
190
200
210
0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1
LUDB lower bound
dela
y (m
s)
Rf
ENS Lyon, December 7, 2010 50
Dipartimento di Ingegneria dellaInformazione
Case Studies Case Studies –– nested tandemsnested tandems
N1N −1 2( )1,N
( )1,1( )1,2( )1, 1N −
0
0.05
0.1
0.15
0.2
0.25
2 4 6 8 10 12 14 16
20%50%100%
RO
B
N
Node utilization
ENS Lyon, December 7, 2010 51
Dipartimento di Ingegneria dellaInformazione
Case studies: nonCase studies: non--nested tandemsnested tandems
N1N −1 5432
( )1,N
( )1,1 ( )2,3
( )1,2 ( )3,4
( )4,5 ( ),N N
( )1,N N−
1c 2c 2 1Nc − 2Nc
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
2 4 6 8 10 12 14 16
20%50%100%
RO
B
N
Node utilization
ENS Lyon, December 7, 2010 52
Dipartimento di Ingegneria dellaInformazione
The DEBORAH toolThe DEBORAH tool
• Compute LUDBs and lower bounds• In all kind of tandems (nested, non nested)• Using both MSA and STA
• Highly optimized C++ code• Makes a lot of difference
• Try it out, it’s free!• Available with source code at http://info.iet.unipi.it/~cng/• Straightforward textual syntax • Works under Linux, Windows, MacOS
• Drop us an email and let us know what you think of it
ENS Lyon, December 7, 2010 53
Dipartimento di Ingegneria dellaInformazione
ConclusionsConclusions
• Network Calculus allows one to compute e2e delay bounds • Easy and tight in a per-flow scheduling
environment• Complex and not always tight in an
aggregate-scheduling environment
ENS Lyon, December 7, 2010 54
Dipartimento di Ingegneria dellaInformazione
ReferencesReferences
1. J.-Y. Le Boudec, P. Thiran, Network Calculus, Springer LNCS vol. 2050, 2001 (available online).
2. C. S. Chang, Performance Guarantees in Communication Networks, Springer, New York, 2000.
3. Y. Jiang, Y. Liu, “Stochastic Network Calculus”, Springer 2008
4. R.L. Cruz. “A calculus for network delay, part i: Network elements in isolation”. IEEE Transactions on Information Theory, Vol. 37, No. 1, March 1991, pp. 114-131.
5. R.L. Cruz. “A calculus for network delay, part ii: Network analysis”. IEEE Transactions on Information Theory, Vol. 37, No. 1, March 1991, pp. 132–141.
ENS Lyon, December 7, 2010 55
Dipartimento di Ingegneria dellaInformazione
More referencesMore references
1. L. Lenzini, E. Mingozzi, G. Stea, "A Methodology for Computing End-to-end Delay Bounds in FIFO-multiplexing Tandems" Elsevier Performance Evaluation, 65 (2008) 922-943
2. L. Lenzini, L. Martorini, E. Mingozzi, G. Stea, "Tight End-to-end Per-flowDelay Bounds in FIFO Multiplexing Sink-tree Networks", ElsevierPerformance Evaluation, Vol. 63, Issues 9-10, October 2006, pp. 956-987
3. L. Lenzini, E. Mingozzi, G. Stea, "Delay Bounds for FIFO Aggregates: a Case Study", Elsevier Computer Communications 28/3, February 2005, pp. 287-299
4. L. Bisti, L. Lenzini, E. Mingozzi, G. Stea, "Estimating the Worst-case Delayin FIFO Tandems Using Network Calculus", Proceedings ofVALUETOOLS'08, Athens, Greece, October 21-23, 2008
5. L. Lenzini, E. Mingozzi, G. Stea, "End-to-end Delay Bounds in FIFO-multiplexing Tandems", Proc. of VALUETOOLS'07, Nantes (FR), October 23-25, 2007.
6. L. Lenzini, E. Mingozzi, G. Stea, "Delay Bounds for FIFO Aggregates: a Case Study", Proceedings of the 4th COST263 International Workshop on Quality of Future Internet Services (QoFIS '03), Stockholm, Sweden, October 1-3, 2003 LNCS 2811/2003, pp. 31-40
ENS Lyon, December 7, 2010 56
Dipartimento di Ingegneria dellaInformazione
Thank you for listeningThank you for listening
• Questions? • Comments?