投影片 1 - National Cheng Kung University
Download
Report
Transcript 投影片 1 - National Cheng Kung University
Author: Ramana Rao Kompella, Kirill Levchenko, Alex C. Snoeren, and George
Varghese
Publisher: SIGCOMM’09
Presenter: Yun-Yan Chang
Date: 2012/02/22
1
Motivation
Many network applications have stringent end-to-end
latency requirements, even microsecond variations may
be intolerable.
VoIP, automated trading, high-performance computing, etc.
Propose instrumenting routers with a hash-based
primitive that called Lossy Difference Aggregator (LDA) to
measure latencies down to tens of microseconds and
losses as infrequent as one in a million.
2
LDA (Lossy Difference Aggregator)
A measurement data structure that supports measuring
the average delay and standard deviation of delay.
Both sender and receiver maintain an LDA.
At the end of measurement period, the sender send its
LDA to receiver, and the receiver computes the statistics.
Tight time synchronization
Consistent packet ordering
3
No loss
◦ Avg. delay
Difference of timestamp between sender and receiver,
divided by number of packets.
Low loss
Maintain an array of several timestamp accumulators and
packet counters.
Each packet hash to one of the accumulator-counter pairs,
and update the corresponding one.
By using the same hash function on sender and receiver, we
can determine the number of packets hash to each pair and
the number of loss packets.
Assume the number of losses is L, and spilt the traffic into m
separate stream, the expected sample size is at least (1-L/m)
received packets.
4
Example
avg. delay
180 - 120 37 15 14 6 11.25
5 2 1
Figure 2: Computing LDA average delay with one bank of four timestamp accumulatorcounter pairs. Three pairs are usable (with 5, 2, and 1 packets), while the second is not
due to a packet loss. Thus, the average delay is (60 + 22 + 8)/(5 + 2 + 1).
5
Known loss rate
Sample incoming packets to reduce the unusable rows.
Hashing to compute the sampling probability.
At sample rate p, expect the number of lost packets be pL,
the usable rows is at least m-pL.
Arbitrary loss rate
Use multiple LDA banks with different loss rates.
Look the high-order bit to determine the updated bank.
Example.
Consider three banks with sampling probabilities p1 = 1/23, p2=
1/25 and p3=1/27. Each packet hash to an integer.
If the first five bits are zero, update bank 2.
If the first seven bits are zero, update bank 3.
If the first three bits are zero, update bank 1.
Otherwise, the packet is not sampled.
6
Update procedure
Data structure
1.
2.
3.
4.
5.
6.
i ← h(x) // row
j ← g(x) //bank sampling with pj
if j >0 then
T[i, j] ← T[i, j] + τ
S[i, j] ← S[i, j] + 1
end if
Figure 3: The Lossy Difference
Aggregator (LDA) with n banks
of m rows each.
7
Hardware implementation
Figure 10: Potential LDA chip schematic
8
Validation
◦ Use n = 1 bank of m = 1024 counters.
◦ Simulate a 10-Gbps OC-192 link.
E[S] 1 -
m
R
L 1
S: expected sample size
m: number of rows
L: number of loss packets
R: number of received packets
Figure 4: The sample size obtained by a single-bank LDA
as a function of loss rate.
9
Weibull distribution generated by P X x 1 e x /
Pareto distribution generated by P(X ≤ x) = 1−(x/α)−β
α: scale parameter
β : shape parameter
Validation
(α , β)
Figure 5: Average relative error and 98% confidence bounds of the delay
estimates computed by LDA as a function of loss rate. Actual mean delay
is 0.2 μs in all cases. In (b), each curve represents an LDA with different
random seed on the same trace.
10
Weibull distribution generated by P X x 1 e x /
Pareto distribution generated by P(X ≤ x) = 1−(x/α)−β
α: scale parameter
β : shape parameter
Validation
(α , β)
Figure 6: Average relative error of LDA’s standard-deviation
estimator as a function of loss rate.
11
Figure 7: The performance of various multi-bank LDA configurations.
12
Compare with active probes
Figure 8: Sample size, delay and standard deviation estimates obtained using a twobank LDA in comparison with active probing at various frequencies. Log-scale axes.
13