End-to-End Available Bandwidth:
Measurement Methodology, Dynamics,
and Relation with TCP Throughput
Manish Jain
Constantinos Dovrolis
SIGCOMM 2002
Presented
by
Jyothi Guntaka
Definitions
Path capacity C: Maximum possible end-to-end
throughput. It is defined as C = mini=0…H {Ci}, where, Ci is
capacity of link i.
Available bandwidth (termed as avail-bw): Spare capacity
in the path. In other terms, maximum end-to-end
throughput given cross traffic load. It is a time-varying
metric, defined as average over a certain time interval.
Narrow link: The link with minimum capacity.
Tight link: The link with minimum available bandwidth.
2
Capacity vs. Avail-bw
3
Previous work
Measure throughput of bulk TCP transfer
A bulk TCP’s throughput is not avail-bw.
TCP saturates path (i.e., intrusive measurements)
Carter & Crovella: dispersion of long packet trains
(cprobe)
Ribeiro et al.: estimation technique for singlequeue paths (Delphi)
Melander et al.: attempt to estimate capacity &
avail-bw of every link in path (TOPP)
4
Self-Loading Periodic Streams (SLoPS)
Basic idea:
Periodic stream (probing packets) which consists of K
packets of size L at a constant rate R is sent from sender
to receiver.
When R>A, the one-way delays of successive packets at
the receiver show an increasing trend.
5
SLoPS (2)
Periodic stream: K packets, period T, packet size L, rate:
R=L/T
6
SLoPS with Fluid Cross Traffic
For a path P:
SLoPS Stream
SND
RCV
Cross Traffic
One-way delay (OWD) of packet k
k
H
q
L
L
k
i
D ( ) ( d ik )
Ci
i 1 Ci
i 1 Ci
H
k
q
where i is the queue size at link i upon k’s arrival
7
SLoPS with Fluid Cross Traffic (2)
The OWD difference between two successive
packets k and k+1 is:
k
H
q
D k D k 1 D k i d ik
i 1 Ci
i 1
H
qik qiK 1 qik
where
Proposition 1: if R > A, then D k 0 for
k=1,…,K-1. Else, if R < A, D k 0 for k=1,…,K1
8
SLoPS algorithm
Iterative algorithm
Sender send a periodic stream n at rate R(n)
Receiver determine whether or not R(n) > A
Receiver notify sender:
If R(n) > A, R(n+1) < R(n)
Else, R(n+1) > R(n)
Specifically:
R min 0, R max R0 A
Initially:
R max R(n), else
If R(n) > A, then
R(n 1) ( R max
The algorithm terminate when :
R min R(n)
R min ) / 2
R max R min
9
Check with Proposition 1
A=74Mbps (MRTG), R=96Mbps (K=100packets,
T=100s, L=1200B)
R=96 Mbps
R = 37 Mbps
10
Refinement of SLoPS algorithm
R=82 Mbps
Refinement:
• Watching the increasing
trend during the entire
stream
• Accept the possibility of
variation of A during a
probing stream, no strict
ordering between R and A
which is called
grey-region
11
PATHLOAD: Implementation
No timing issue: consider the variation of OWD
Parameters:
a stream consists of K packets, each has size L, sent at a
constant rate R, inter-spacing time T = L/R,
Stream duration V=KT
12
Detection of increasing OWD trend
OWD of a stream, D1 , D 2 ,..., D k can be
grouped into K groups, find median in each
group D , Pathload analyzes the set
^ k
^ k
{D , k 1,2..., }
Two metrics to determine the trend
^
I (D D
k 2
1
k
Pairwise Comparison Test (PCT) S PCT
PCT: Measures the fraction of consecutive OWD pairs
that are increasing (between 0 and 1).
13
^
k 1
)
Detection of increasing OWD trend (2)
Pairwise Difference Test (PDT) S PDT
^
^
1
D D
^
k 2| D
k
D
^
k 1
|
PDT: Quantifies how strong is the start-to-end OWD
variation, relative to the OWD absolute variations
during the stream (between –1 and 1).
14
Fleets of streams
N streams
idle time between streams
Duration of a fleet U N (V
Average rate of a fleet =
)
NKL
N (V )
R 11
V
packets
One
Stream
V=KT
Interval
between streams
max { RTT, 9V }
N streams in a fleet at a single iterative step
N_default = 12
15
Rate-adjustment algorithm
If either metrics shows an increasing trend, the
stream is typed as type-I, otherwise type-N.
If a fraction f of the streams in a fleet are type-I,
the fleet has a rate > A.
If a fraction f of the streams in a fleet are type-N,
the fleet has a rate < A.
If less than Nf streams are type-I, and also less
than Nf streams are type-N, then the fleet is in
grey-region.
16
Grey region
Measurement stream rate can fall into avail-bw variation range.
Pathload reports grey-region boundaries [Gmin, Gmax].
Relative width of grey-region: quantify avail-bw variability.
17
Experimental Verification
Simulation scenario:
Path tightness factor:
Ant
1
At
18
Simulation Results
Pathload produces a range that includes the average
avail-bw in the path, in both light and heavy load
conditions at the tight link.
19
Simulation Results (2)
Pathload estimates a range that includes the actual availbw in all cases, independent of the number of non-tight
links or of their load.
20
Simulation Results (3)
Pathload succeeds in estimating a range that includes
the actual avail-bw when there is only one tight link in
the path, but it underestimates the avail-bw where there
are multiple tight links.
21
Dynamics of Available Bandwidth
Relative variation metrics:
R max R min
max
( R R min ) / 2
To compare the variability of the avail-bw across
different operating conditions and paths.
Each experiment has 110 runs, plot the
{5,15,…,95} percentiles of .
22
Different Load Condition
Variability of the avail-bw increases significantly as
the utilization u of the tight link increases (i.e., as the
avali-bw A decreases).
23
Effect of Stream Length K
Variability of the avail-bw decreases significantly as the
stream duration increases.
24
Effect of Fleet Length
As the fleet duration increases, the variability in the
measured avail-bw increases. Also, as the fleet duration
increases, the variation across different pathload runs
decreases.
25
TCP and intrusiveness
A Bulk Transfer Capacity (BTC) connection using
TCP can get more bandwidth than what was
previously available in the path, grabbing part of
the throughput of other TCP connections.
Pathload is not intrusive.
26
TCP and intrusiveness (2)
27
TCP and intrusiveness (3)
28
Applications
Bandwidth-Delay-Product in TCP
Overlay networks and end-system multicast
Rate adaptation in streaming applications
End-to-end admission control
Server selection and anycasting
29
Comments
Works well when there is only one tight link.
Almost all parameters are empirical.
Could be difficult to tune them under different scenarios.
Difficult to draw general conclusions.
Difficult to predict converge time.
In their reported experiments, converge time for a single fleet of
streams is [10, 30] seconds.
Not intrusive?
Only gives a single experiment. Difficult to justify.
How about if lots of users are using pathloads?
30
Acknowledgements
Some of the slides are taken from
The presentation by Honggang Zhang
(http://gaia.cs.umass.edu/measurement/slides/avbw.ppt)
http://lion.cs.uiuc.edu/seminar.ppt
31
Questions?
32
© Copyright 2026 Paperzz