End-to-end Estimation of Available Bandwidth Variation Range

Download Report

Transcript End-to-end Estimation of Available Bandwidth Variation Range

End-to-End Estimation of
Available Bandwidth
Variation Range
Constantine Dovrolis
Joint work with Manish Jain & Ravi Prasad
College of Computing
Georgia Institute of Technology
Probing the Internet
 Several network parameters are important for applications and
transport protocols:

Delay, loss rate, capacity, congestion, load, etc
 Internet routers do not provide direct feedback to end-hosts

Due to scalability, simplicity & administrative issues
Except SNMP, ICMP
 Alternatively:
 Infer network state through end-to-end measurements

End-to-end bandwidth estimation
 “Bandwidth” in data networks refers to throughput (bits/sec)


Capacity: maximum possible throughput w/o cross traffic
Available bandwidth (or residual capacity): capacity – cross traffic
 Bandwidth estimation: measurement techniques & statistical analysis to
infer bandwidth-related metrics of individual links and end-to-end
network paths
 Objectives:




Accuracy: application-specific but typically within 10-20%
Estimation latency: within a few seconds
Non-intrusiveness: cross traffic should not be affected
Scalability: important when monitoring many paths (not covered in this
talk)
Why to measure bandwidth?
 Large TCP transfers and congestion control


Bandwidth-delay product estimation
TCP socket buffer sizing
 Streaming multimedia
Adjust encoding rate based on avail-bw
Intelligent routing systems
 Overlay networks and p2p networks
 Intelligent routing control & multihoming
Content Distribution Networks (CDNs)
 Choose server based on least-loaded path
SLA verification & interdomain problem diagnosis
 Monitor path load and allocated capacity
End-to-end admission control
Network spectroscopy
Several more..







Definitions and problem statement
Capacity
 Maximum possible end-to-end throughput at IP layer


In the absence of any cross traffic
For maximum-sized packets
 If Ci is capacity of link i, end-to-end capacity C defined as:
C  min Ci
i 1,..., H
 Capacity determined by narrow link
Average available bandwidth
 Per-hop average avail-bw:
Ai = Ci (1-ui)
 ui: average utilization
 A.k.a. residual capacity
 End-to-end avg avail-bw A:

A  min Ai
i 1,..., H
 Determined by tight link
 ISPs measure average per-
hop avail-bw passively

5-min averaging intervals
Avail-bw variability
 Avail-bw has significant
variability
 Variability depends on
averaging timescale t

Larger timescale, lower
variance
 Variation range:
 Range between, say, 10th
to 90th percentiles
 Example:



Path-1: variation range
[10Mbps, 90Mbps]
Path-2: variation range
[20Mbps, 20Mbps]
Which path would you
prefer?
The avail-bw as a random process
 Instantaneous utilization ui(t): either 0 or 1
 Link utilization in (t, t+t)
ui (t , t  t ) 
1
t
t t
 u (t )dt
i
t
 Averaging timescale: t
 Available bandwidth in (t, t+t)
Ai (t , t  t )  [1  ui (t , t  t )]Ci
 End-to-end available bandwidth in (t, t+t)
A(t , t  t )  min { Ai (t , t  t )}
i 1,..., H
Problem statement
 Avail-bw random process, measured in timescale t:
At(t)
 Assuming stationarity, marginal distribution of


Ft(R) = Prob [At ≤ R]
At:
Ap :pth percentile of At, such that p = Ft(Ap)
Estimate variation range [AL, AH] for
given averaging timescale t
 Objective:


AL and AH are pL and pH percentiles of At
Typically, pL =0.10 and pH =0.90
Probing methodology
Probing a network path
 Sender transmits periodic packet stream of rate R
K packets, packet size L, interarrival T = L/R
 Receiver measures One-Way Delay (OWD) for each packet
 D(k) = tarv(k) - tsnd(k)
 OWD variations: Δ(k) = D(k+1) – D(k)
 Independent of clock offset between sender/receiver

 With stationary & fluid-modeled cross traffic:


If R > A, then Δ(k) > 0 for all k
Else, Δ(k) = 0 for all k
Self-loading periodic streams
 Increasing OWDs means R>A
 Non-increasing OWDs means R<A
Example of OWD variations
 12-hop path from U-Delaware to U-Oregon


K=100 packets, A=74Mbps, T=100μsec
Rleft = 97Mbps, Rright=34Mbps
Percentile sampling
&
estimation algorithms
Percentile sampling
 Given R and t, estimate Ft(R)
 Ft(R) is also referred to as the rank of rate R

Assume that Ft(R) is inversible
 Sender transmits a periodic packet stream of rate R

Length of stream: measurement timescale t
 Receiver classifies the stream, based on measured one-way
delay trends, as:
 Type-G if At ≤ R:
 I(R)= 1 with probability Ft(R)
 Type-L if At > R:
 I(R)= 0 with probability 1-Ft(R)
Percentile sampling (cont’)
 Send N packet streams, and classify each packet stream as
Type-G if At ≤ R:
 I(R)= 1 with probability Ft(R)
 Type-L if At > R:
 I(R)= 0 with probability 1-Ft(R)
 Number of type-G streams:

N
I ( R, N )   I i ( R )
i 1
E I ( R, N )  N  E I i ( R )  N  Ft ( R )
 Unbiased estimator for the rank of rate R:
Ft ( R ) 
I ( R, N )
N
How many streams do we need?
 Larger N  longer estimation
duration
 Smaller N  larger variance in
estimator I(R,N)/N
 Choose N so that:
I(R,N)/N within Ft(R) ± r
 r: maximum percentile error

 P[N(p-r) < I(R,N) < N(p+r)] > 1-e


where p= Ft(R) and e small
I(R,N) ~ Binomial (N, p)
assuming independent
sampling
 With N=40-50 streams, the
maximum percentile error r for
10th-90th variation range is
about 0.05
Non-parametric estimation
 It does not assume specific avail-bw distribution
 Iterative algorithm
Stationarity requirement across iterations
 N-th iteration: probing rate Rn
 Use percentile sampling to estimate percentile rank of Rn
 To estimate the upper percentile AH with pH = Ft(AH):
 fn = I(Rn,N)/N
 If fn is between pH±r, report AH = Rn
 Otherwise,
H
 If fn > p + r, set Rn+1 < Rn
H
 If fn < p - r, set Rn+1 > Rn
 Similarly, estimate the lower percentile AL

Non-parametric algorithm
•Parameter b
• Upper bound on rate variation
in successive iterations
• Tradeoff between accuracy
and responsiveness
• Larger b:
• Faster convergence
• Larger oscillations
Validation example (non-parametric)
 Testbed experiments using real Internet traffic traces
b=0.05
b=0.15
 Non-parametric estimator tracks variation range within 10-20%
 Optimal selection of b depends on traffic
 Traffic spikes/dips may not be detected if b is too small
 But larger b causes larger MSRE
Parametric estimation
 Assume Gaussian avail-bw distribution
Justified assumption for large degree of traffic
multiplexing
 And/or for long averaging timescale (>200msec)
 Gaussian distribution completely specified by
 Mean m and standard deviation st
 pth percentile of Gaussian distribution
p
-1
 A = m + st f (p)

 Sender transmits N probing streams of rates R1 and R2
 Receiver determines percentiles ranks corresponding to R1
and R2
 m and st can be then estimated by solving
-1
 R1 = m + st f (p1)
-1
 R2 = m + st f (p2)
 Variation range is then calculated from:
H
-1 H
 A = m + st f (p )
L
-1 L
 A = m + st f (p )
Parametric algorithm
• Variation range estimate
• Non-iterative algorithm
• More appropriate under
non-stationary conditions
• Probing rates do not need
to follow variation range
• Less intrusive probing
Validation example (parametric)
Gaussian traffic
non-Gaussian traffic
 Parametric algorithm is more accurate than non-parametric
algorithm, when
 traffic is good match to Gaussian model
 in non-stationary conditions
Comparison of the two algorithms
Non-parametric: t = 40msec
Parametric: t = 250msec
 Non-parametric algorithm
Stationarity assumption is more critical (iterative algorithm)
 Can be used with any cross traffic distribution
 Parametric algorithm
 Provides variation range estimate at end of each round
 Accurate when underlying traffic close to Gaussian

Avail-bw variability factors
A sample measurement from the
Internet
 Path from Georgia Tech to University of Ioannina, Greece
 Average avail-bw increases over this 2-hour period
 Variation range decreases as average avail-bw
increases
Objectives and methodology



Examine effect of following factors on avail-bw variability:
1.
Load at tight link
2.
Degree of multiplexing at tight link
3.
Averaging time scale
Single-hop simulation topology with TCP traffic
Monitore load at tight link

Examine variation range width V


Compare V with Coefficient of Variation (CoV)



V = At H - At L
CoV : standard deviation (at time scalet) over
average avail-bw
V : Absolute variability metric
CoV : Relative variability metric
Tight Link Utilization
 Variation range width V shows non-monotonic behavior
 V increases in low/medium load, due to increasing
variance in input traffic (tight link rarely saturated)
 V decreases in heavy load due to “clamping” by tight link
capacity
 CoV increases monotonically with load
Statistical Multiplexing

Conventional wisdom:


1.
2.
Keeping the load constant, higher degree of multiplexing
makes the traffic smoother
Two models for increasing degree of multiplexing
Capacity Scaling
1.
Increase capacity of tight link and proportionally
increase number of flows
2. Average flow rate remains constant
Flow Scaling
1.
Increase number of flows and proportionally decrease
average flow rate
2. Capacity of tight link remains constant
Capacity Scaling
 Variation range width V increases with capacity scaling
 CoV decreases with capacity scaling
 Conventional wisdom true for relative variability (CoV) but not
for absolute variation range (V)
Flow Scaling
Variation range decreases in both absolute and
relative terms

Measurement Timescale
 Avail-bw variability decreases with averaging time scale
Rate of decrease depends on correlation structure of
avail-bw process

Observed decrease rate consistent with scaling
process in the 50-500ms (Hurst parameter=0.7)

Summary and future work
Future work
 Applications of bandwidth estimation:
 Overlay routing and multihoming: path selection algorithms,
avoidance of oscillations, provisioning
 Interdomain performance problem diagnosis
 TCP throughput prediction (see ACM Sigcomm’05)
 Internet traffic analysis:
 Use of bw-estimation to explain traffic burstiness in short
time scales (see ACM Sigmetrics’05)
 Examine validity of single-bottleneck assumption
 Examine congestion responsiveness of Internet traffic
 New estimation problems:
 Detect maximum possible shared available bandwidth among
set of network paths