capprobe: a simple and accurate capacity estimation technique kapoor et al., sigcomm ‘04
Post on 19-Dec-2015
215 views
TRANSCRIPT
CapProbe: A Simple and Accurate Capacity Estimation Technique
Kapoor et al., SIGCOMM ‘04
Capacity Estimation Techniques
Monitor delays of packet pairs and trains
Monitor dispersions of packet pairs and trains
CapProbe uses both: dispersion measurements for estimation, delay measurements to filter out inaccurate estimations
Dispersion – The Packet Pair Algorithm
If two packets sent back-to-back are queued one after the other at a narrow link, they will exit the link with dispersion T given by:
T = L / B,
L = size of second packet,
B = bandwidth of narrow link
Packet Pair Algorithm Inaccuracies
Capacity over-estimation– Observed dispersion
smaller than what would have been introduced by the narrow link
– If the first packet queued after narrow link while the second packet experiences less queue delay after narrow link, observable dispersion decreases—a.k.a. compression
Packet Pair Algorithm Inaccuracies
Capacity under-estimation
– Observed dispersion larger than what would have been introduced by narrow link
– Can occur if cross-traffic packets serviced between packets of a pair—a.k.a. expansion
– Can occur anywhere on the link
CapProbe Observation
CapProbe is based on the simple observation that a packet pair which produces either an over- or under-estimation of capacity must have incurred a cross-traffic induced delay at some link
CapProbe Observation
For each packet pair, CapProbe calculates delay sum:
delay(packet_1) + delay(packet_2) A packet pair which incurs no cross-traffic delays
exhibits the minimum delay sum; its dispersion measurement can produce an error-free capacity estimation
Given a set of packet pair probes, the probe which exhibits the smallest delay sum will provide the most accurate capacity estimate
Effect of Packet Size
Decreasing probability of cross-traffic induced delays will improve CapProbe’s effectiveness
Want to consider the relationship between probe packets’ sizes and probability of delay
Effect of Probing Packet Size
Queuing probability of second packet:– Second packet departs L/C (= dispersal) time units after
first packet—known as “vulnerability window”– If cross-traffic arrives during vulnerability window,
capacity estimation accuracy will decrease
Effect of Probing Packet Size
Queuing probability of second packet:– Can be reduced by decreasing probe packet sizes
Eg: halving the packet size shrinks the vulnerability window, which reduces the probability that the second packet will incur a delay, thereby decreasing the probability of capacity under-estimation
Effect of Probing Packet Size
Small packet sizes decreases probability of delay for second packet, but probability of delay for the first packet remains the same
– Thus the “relative” probability of delay for the first packet w.r.t. the second packet increases as size decreases
– Results in an increase in the probability of over-estimation Small packet sizes also increase the magnitude of
over-estimation:– Consider the case when the first packet suffers more
queuing than the second, leading to compression: Compression ratio will be larger when the original dispersion is
smaller
Effects of Probing Packet Sizes
Simulation: narrow link = 4 Mbps
a) packet size = 100 bytes b) packet size = 1500 bytes
Effects of Small Probing Packets
Smaller packet sizes lead to a higher chance of over-estimation
Capacity mode occurs with relative frequency of 25%
Higher chance of accurate estimate
Probability of no queuing delay = 13%
Harder for OS clocks to accurately measure dispersion for small packets
Effects of Large Probing Packets
Under-estimation is predominant
Capacity mode occurs with a relative frequency of 4%
Probability of no queuing delay = 1.5%
Effect of Probing Packet Size on Cross-Traffic Queuing
Effect of probe size on the probability of not queuing when cross-traffic size 550 bytes
CapProbe Convergence
CapProbe provides accurate estimates if no cross-traffic delays introduced
Desirable to understand the probability of obtaining delay-free measurements
Also want to determine the average number of samples needed before a delay-free measurement is made (convergence rate)
Two cases when cross-traffic poses a problem:– Cross-traffic present upon arrival of first packet– Cross-traffic arrives between the packet pair
Poisson Cross-traffic
Probability P1 that first packet arrives to empty system =
Probability P0 that no traffic arrives between pair =
Probability of no queuing =
Expected # of samples needed =
λ = traffic arrival rate, μ = service rate, τ = dispersion
Deterministic Cross-traffic
Probability of no queuing =
λ= traffic arrival rate,
τ = dispersion,
tx = transmission time of cross-traffic packet
Pareto On/Off Cross-traffic
If tx < 1/2λ < tx + τ, a good sample can only arrive during an OFF period.
If 1/2λ > tx + τ, a good sample can occur in both ON and OFF periods
If 1/2λ < tx, good samples can only occur in OFF periods with idle time longer than the dispersion τ (see figure below)
Long Range Dependent Cross-traffic
Effect of cross-traffic packet size on requisite number of samples. Mix = 50%, 25%, 25%
6-hop LRD Cross-traffic
Above: a) persistentb) non-persistent
Minimum Delay Sum Condition
Want to determine accuracy of estimations– Accuracy based on absence of delay—best estimate comes
from probe pair w/ minimum delay sum = delay(P_first) + delay(P_second)
– It is more likely that a single packet will not experience queuing than it is that neither of a pair of packets will experience queuing
– If the observed minimum delay sum is greater than the observed minimum possible delay, i.e. the minimum delay sum is greater than the sum of the minimum delays of individual packets, then the probe incurred some delay and is not as accurate as possible
Minimum Sum Delay Condition
Probability of an unqueued sample for pairs and single packets
Minimum Delay Sum Condition
Percentage increase in probability of unqueued sample when using single packets instead of packet pairs
Minimum Delay Sum Condition
Effect of probe packet size on the number of samples required to satisfy the minimum delay condition
CapProbe Algorithm
Initialization period of 40 samples If MDSC is not satisfied in less than 100 samples,
then:– If large variation in estimates, increase packet size 20% to
improve OS timing accuracy– Else, decrease packet size 20% to decrease cross-traffic
delay probability Obtain 2 sequential MDSC-compliant
measurements @ packet sizes around 700 and 900 bytes; if estimations are within 5% of each other, algorithm stops; else, it restarts
Simulation Results
Simulation Results
Simulation Results
Simulation Results
Simulation Results
Simulation Results—Comparison to Other Techniques
CapProbe Extensions
TCP Probe: A TCP with Built-in Path Capacity Estimation
End-to-end Asymmetric Link Capacity Estimation
http://nrl.cs.ucla.edu/CapProbe/
Conclusion
CapProbe relies on novel combination of packet pair dispersion measurements to estimate link capacities and packet pair delays to filter out distorted estimates
Accurate; much faster than other techniques Has problems with cross-traffic consisting of small
packets Has problems with high-load UDP cross-traffic