Title: Pathload A measurement tool for end-to-end available bandwidth
1Pathload A measurement tool for end-to-end
available bandwidth
- Manish Jain, Univ-Delaware
- Constantinos Dovrolis, Univ-Delaware
- Sigcomm 02
2Overview
- Capacity and available bandwidth metrics
- Self-Loading Periodic Streams (SLoPS) methodology
- Description of pathload
- Verification experiments
3Part I
4Definition of capacity
- Capacity maximum possible end-to-end throughput
- End-to-end capacity C is limited by narrow link
n - Pathrate measurement tool based on packet
pairs/trains (Infocom01) - See www.pathrate.org
DS3/ATM
Fast Ethernet
Fast Ethernet
S
45
100
100
R
36(IP) 9 (ATM)
5Definition of available bandwidth
- ui utilization of link i in time interval T
( 0 ? ui ? 1 ) - Available bandwidth of link i
- Available bandwidth is limited by tight link t
-
C2
C3
C1
A
Sink
Source
t
6Measuring per-hop available bandwidth
- Network managers are very interested in available
bandwidth - Can be measured at each link from router
utilization statistics (via SNMP) - Multi Router
Traffic Grapher - MRTG graphs 5-minute averages (each graph one
direction) - BUT, users do not normally see this data and it
is not end-to-end
7Previous work on available bandwidth estimation
- Blast the path with UDP traffic (bad and wrong!)
- Measure throughput of large TCP transfer
- TCP does not get available bandwidth in
under-buffered paths - TCP gets more than available bandwidth in
over-buffered paths - TCP saturates the path (intrusive measurements)
- Carter Crovella Dispersion of packet trains
(see cprobe) - Does not measure available bandwidth (see
Infocom01) - Melander et. al. (Global Internet00) and Ribeiro
et.al.(ITC00) - Correct estimation when queuing only at single
link in path
8Part II
- Self-Loading Periodic Streams (SLoPS) Methodology
9Major Idea
- SLoPS analyzes One-Way Delays (OWDs) of packets
from sender S to receiver R - OWD Di TRarrive-TSsend Tarrive - Tsend
Clock_Offset(S,R) - Relative OWDs between successive packets Di
Di1 - S and R do not have synchronized clocks.
10Basic Idea
- Periodic Stream K packets, size L bytes, rate R
L/T - If RgtA, OWDs gradually increase due to
self-loading of stream
T L/R
1
2
3
4
K4
4
1
2
3
D1
D2
D3
D4
1
2
3
4
D1
D2
D3
D4
11Experimental result R gt A case
- K 100 packets, A 74Mbps, R96Mbps, T100?s
12Experimental result R lt A case
- K 100 packets, A 74Mbps, R37Mbps, T100?s
13Experimental result R A case
- K 100 packets, A 74Mbps, R82Mbps, T100?s
14Iterative algorithm in SLoPS
- At source Send periodic stream n with rate
R(n) - At receiver Measure OWDs Di for i1K
- At receiver Check for increasing trend in OWDs
and notify source - At source If trend is -
- increasing (i.e. R(n)gtA ), ?repeat with
R(n1) lt R(n) - non-increasing (i.e. R(n)ltA ),? repeat
with R(n1)gtR(n) - Terminate if R(n1) R(n) lt ?
- ? resolution of final estimate
15Part III
16Selection of L, T and K
- L can not be less than certain number of bytes
- L should not be greater than path MTU, to avoid
fragmentation - T should be small to complete transmission of
stream before context switch - Large K may overflow the queue of the tight link
when R gt A - Small K does not give enough samples to infer
trend robustly
17Use of Several Streams
- N streams allow us to examine for N consecutive
times whether R gt A or not - Disjoint streams, separated by silence period
allow queues in network to drain measurement
traffic - Duration of a fleet of N streams
- Effects of stream duration and fleet duration
described in a technical report, End-to-end
available bandwidth measurement methodology,
dynamics, and relation with TCP throughput
18How do we detect an increasing trend?
- Pairwise Comparison Test (PCT)
- EPCT0.5 for independent OWDs,
when increasing trend - Pairwise Difference Test (PDT)
- EPDT0 for independent OWDs,
when increasing trend
19Illustration of PCT and PDT metrics
- Infer increasing trend when PCT or PDT trend ? 1.0
20PCT variation for 3 fleets
21PDT variation for 3 fleets
22Rate adjustment algorithm
- Increasing trend
- Rmax R(n)
- R(n1) (Gmax Rmax)/2
- Non-increasing trend
- Rmin R(n)
- R(n1) (Gmax Rmin)/2
- Grey region R(n) gt Gmax
- Gmax R(n)
- R(n1) (Gmax Rmax )/2
- Grey region R(n) lt Gmin
- Gmin R(n)
- R(n1) (Gmin Rmin )/2
Grey region
Terminate if Rmax Rmin lt ? or Gmax
Gmin lt ?
23Detecting sender side context switch
- Context Switches on sender machine can distort
the inter-packet spacing in a stream. - Receiver detects the sender side context switches
in a stream by testing t(i1) - t(i) gt CS T
24Detecting receiver side context switch
- Receiver side context switch results in packets
being accumulated in the buffer in the kernel - Receiver detects the receiver side context by
checking if a(i1) - a(i) ? 0
25Other pathload features
- Clock skew between sender and receiver can
distort the relative OWD. - Clock skew not an issue in pathload due to small
stream duration. - Pathload aborts the fleet if
- stream encounters excessive loss ( gt10 )
- a fraction of streams encounter moderate loss
- For default tool parameters, and avail-bw ? 10
Mbps, pathload takes 12 seconds
26Part IV
27Verification Approach
- Use paths from U-Delaware to Greek universities
and U-Oregon. - Routes through UDel, Abilene, Dante, GRnet
- MRTG graphs for all links in path report 5-min
averages for avail-bw - In 5-min interval, pathload runs W times, each
for qi secs - 5-min average avail-bw R reported by pathload
-
28Verification I
- Tight link U-Ioannina to AUTH(C8.2Mbps),
resolution w1Mbps
29Verification II
- Tight link U-Oregon gigapop-Abilene(C155Mbps),
- Resolution w1 Mbps
30Summary
- Avail-bw estimation has numerous application
- SLoPS fast, accurate and non-intrusive
measurement - First release of pathload in Spring02
- Examined avail-bw variability using pathload, and
results published in a technical report,
End-to-end available bandwidth measurement
methodology, dynamics, and relation with TCP
throughput - Future work incorporate avail-bw estimation in
transport,QOS and routing