Upload
carlos-hoyte
View
214
Download
0
Embed Size (px)
Citation preview
Available Bandwidth Estimation
Manish JainNetworking and Telecom Group
CoC, Georgia Tech
8803 Class Presentation 2 09/23/2003
Outline
Introduction and definitions Estimation methodologies
Train of Packet Pairs(TOPP)Self Loading Periodic Streams (SLoPS)Packet Train Gap Model
Open Issues
8803 Class Presentation 3 09/23/2003
Varies with time ui : utilization of link i in time interval ( 0 <= ui <=
1 ) Available bandwidth in link i:
Available bandwidth in path (Avail-bw):
Tight link: minimum avail-bw link
Definition Available Bandwidth: unutilized capacity
)u-(1C A iii
)u-(1 C min A min A ii0..Hi
i0..Hi
8803 Class Presentation 4 09/23/2003
Available Bandwidth:time varying metric
defines sampling/averaging timescale Average avail-bw in
Does not tell how avail-bw varies Variation range gives more information
t
A(t)
T
8803 Class Presentation 5 09/23/2003
Why do we care ?
ssthresh in TCP Streaming applications SLA verification Overlay routing End-to-end admission control
8803 Class Presentation 6 09/23/2003
Measuring per-hop available bandwidth
Can be measured at each link from interface utilization data using SNMP
MRTG graphs: 5-minute averages
But users do not normally have access to SNMP data And MRTG graphs give only per-hop avail-bandwidth
8803 Class Presentation 7 09/23/2003
Measuring path Available Bandwidth
Blast path with UDP packets Intrusive Carter & Crovella: cprobe (Infocom 1996)
Packet train dispersion does not measure available bandwidth (Dovrolis et.al. Infocom’01)
Measure throughput of large TCP transfer TCP throughput depends on network buffer
Ribeiro et.al. : Delphi (ITC’00) Correct estimation when queuing occurs only at single
link Assumes that cross traffic can be modelled by MWM
model
8
A New End-to-end probing and analysis method for estimating bandwidth
bottlenecks
B. Melander et al, In Global Internet Symposium, 2000
8803 Class Presentation 9 09/23/2003
Introduction
& C*
&
&
111j
11
1
1111
1111**
1
11
1
11
11
jjjjjj
jj
j
jjjjjjj
jjjjjjjj
j
jj
j
jj
jj
mComCoifmo
omComCoifo
mCo-mCoifCCm
mo
omo
oo
In one hop:
In two hop:
CjCj+1
Oj-1 Oj
Mj-1
Oj+1
Mj
11
1*11
1
jjjj
jjjjjj
jj
mCoifo
-mCoifCmooo
In FCFS queue, output rate is function of input rate and cross-traffic rate
Cj+1-Mj > Cj-Mj-1
8803 Class Presentation 10 09/23/2003
Key Idea:TOPP
o :sending rate f: receiving rate
where i is number links with different available bandwidth
For i=1 =1/Ctight
1=1-Atight/Ctight
of
oii
Break points
8803 Class Presentation 11 09/23/2003
Algorithm Algorithm:
Send n probe pairs with a minimum rate Record receive rate at receiver Increment rate by fixed and repeat Measure available bandwidth from the relation of o/f
vs o
Avail-bw and capacity of other links can be measured if links in ascending order of avail-bw
In practice, break points may be hard to identify
12
End-to-end Available Bandwidth: Measurement
Methodology, Dynamics and Relation with TCP Throughput
M. Jain and C. Dovrolis, In IEEE/ACM TON, August 2003
8803 Class Presentation 13 09/23/2003
Key idea: SLoPS
Examine One-Way Delay (OWD) variations of a fixed rate stream Relate rate to avail-bw
OWD: Di = Tarrive-T = Tarrive - Tsend + Clock_Offset(S,R)
SLoPS uses relative OWDs, Di = Di+1 – Di-1 (independent of clock offset)
With a stationary & fluid model for the cross traffic, and FIFO queues:
If R > min Ai, then Di > 0 for I = 1…N Else Di = 0 for for I = 1…N
sendS
R RR
8803 Class Presentation 14 09/23/2003
Illustration of SLoPS Periodic Stream: K packets, size L bytes, rate R = L/T
If R>A, OWDs gradually increase due to self-loading of stream
8803 Class Presentation 15 09/23/2003
Trend in real data
For some rate R Increasing trend in OWDs R > Avail-bw No trend in OWDs R < Avail-bw
8803 Class Presentation 16 09/23/2003
Iterative algorithm in SLoPS
At sender: Send periodic stream n with rate Rn At receiver: Measure OWDs Di for i=1…K At receiver: Notify sender of trend in OWDs At sender: If trend is :-
increasing (i.e. Rn >A ) repeat with Rn+1 < Rn non-increasing (i.e. Rn <A ) repeat with Rn+1>Rn
Selection of Rn+1 : Rate adjustment algorithm
Terminate if Rn+1 – Rn < : resolution of final estimate
8803 Class Presentation 17 09/23/2003
If things were black and white…
Grey region: Rate R not clearly greater or smaller than Avail-bw during the duration of stream Rate R is within variation range of avail-bw
8803 Class Presentation 18 09/23/2003
Big Picture
Increasing trend R > variation range of Avail-bw
No trend R < variation range of Avail-bw Grey trend R inside variation range
8803 Class Presentation 19 09/23/2003
Grey region
Rate adjustment algorithmIncreasing trend :
Rmax = R(n)R(n+1) = (Gmax + Rmax)/2
Non-increasing trend:Rmin = R(n)R(n+1) = (Gmax +Rmin)/2
Grey region & R(n) > Gmax:
Gmax = R(n) R(n+1) = (Gmax + Rmax )/2
Grey region & R(n) < Gmin:
Gmin = R(n)R(n+1) = (Gmin + Rmin )/2
Terminate if:(Rmax – Gmax) && (Rmin– Gmin) <
Rmax > A
Rmin < A
Gmax
Gmin
Vari
ati
on R
ange
8803 Class Presentation 20 09/23/2003
How do we detect an increasing trend?
Infer increasing trend when PCT or PDT trend 1.0
1
)( 12
K
DDIR
jj
pct
K
j
||
)(
1
1
2
2
jj
jj
pdt
DD
DDR
K
j
K
j
8803 Class Presentation 21 09/23/2003
Verification approach
2300
minmax
1
iiW
i
RRqR
i
Simulation Multi-hop topology Cross traffic: Exponential and Pareto interarrivals Varying load conditions
Experiment Paths from U-Delaware to Greek universities and U-Oregon MRTG graphs for most heavily used links in path Compare pathload measurements with avail-bw from
MRTG graph of tight link In 5-min interval, pathload runs W times, each for qi secs
5-min average avail-bw R reported by pathload:
8803 Class Presentation 22 09/23/2003
Verification: Simulation Effect of tight link load
Pathload range versus avail-bw during simulation (average of 50 runs)
5 Hop, Ctight=10Mbps, utilnon-tight=.6 %
Center of pathload range: good estimate of average of avail-bw
8803 Class Presentation 23 09/23/2003
Verification: Experiment Tight link: U-Ioannina to AUTH (C=8.2Mbps), =1Mbps
8803 Class Presentation 24 09/23/2003
Avail-bw Variability versus stream length
Relative variation index:
Longer probing stream observe lower variability However, longer streams can be more intrusive
8803 Class Presentation 25 09/23/2003
Avail-bw variability versus traffic load
Heavier link utilization leads to higher avail-bw variability
26
Evaluation and Characterization of Available Bandwidth
Techniques
N. Hu et al, JSAC, August 2003
8803 Class Presentation 27 09/23/2003
Packet Pair Model: Single Hop
Assumption: Fluid cross traffic In practice, CT is bursty
Packet train will capture average
Input
Case1: Go = Gi – q/C < Gi
Case2: Go=m/C+Gb
Gi
Go
Go
q
m/Ct
t
t
In single hop path Competing traffic may be inserted between packet pair Packet pair gap at receiver is function of cross traffic
8803 Class Presentation 28 09/23/2003
Packet Train Model: Single Hop
Assumption: Only increased gap sees CT Packet dispersion not affected by CT at post-tight link
N
ii
K
ii
M
ii
M
iBi
ggg
ggC
111
1
)(*
Where Total numer of probing packets = M+K+N
Gi
Gb Gi+
t
t
8803 Class Presentation 29 09/23/2003
IGI and PTR Algorithm
Start by sending out packet train with minimum gap ( gB)
If gap@receiver != gap@senderSend another train with increased gap
Else calculate available bandwidth IGI: Use equationPTR: Available Bandwidth = Rate of last
train measured at receiver
8803 Class Presentation 30 09/23/2003
Summary: Single Hop Model
IGI: Need to know the capacity of tight link Assume that tight link is same as narrow link
PTR: Same as TOPP
Relation of amount of cross-traffic and dispersion May not hold in multi-hop path
8803 Class Presentation 31 09/23/2003
Open Issues Integrate avail-bw estimation methodology with
application Use data packets in place of probe packets
Implement avail-bw estimation algorithm in network interface card
Allow routers to do avail-bw estimation Can we make some short-term predictions of
avail-bw? High bandwidth paths
Time stamping packets MTU limitations
8803 Class Presentation 32 09/23/2003
Pathchirp Uses exponentially spaced packet train Main idea:
Avail-bw > Rk , if qk >= qk+1
Avail-bw < Rk , otherwise Can be used when probe packets are close enough
Identify excursions: consecutive packets show increased queuing delays
Per-packet avail-bw Ek Final estimate: Expected value of Rk