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)
measure latencies down to tens of microseconds and losses as infrequent as one in a million.
to 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 separate stream, the expected sample size is at least (1-L/m) received packets.
L, and spilt the traffic into m 4
Example
avg.
delay 180 120 37 5 2 15 14 1 6 11 .
25 Figure 2: Computing LDA average delay with one bank of four timestamp accumulator counter 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 the usable rows is at least m pL .
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 p 1 = 1/2 3 , p 2 = 1/2 5 and p 3 =1/2 7 . 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
Data structure
Update procedure 1. i ← h( x ) // row 2. j 3. if ← g( j 4. 5. 6. end if x >0 then T S ) [ [ i i //bank sampling with , , j j ] ← ] ← T S [ [ i i , , j j ] + τ ] + 1 p j 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
L m
1
R
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
Validation
(α , β) Weibull distribution generated by Pareto distribution generated by α: scale parameter β : shape parameter
P
X
x
1
e
P(X ≤ x) = 1−(x/α) x
/
−β
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
Validation
Weibull distribution generated by Pareto distribution generated by α: scale parameter β : shape parameter
P
X
x
1
e
P(X ≤ x) = 1−(x/α) x
/
−β
(α , β) 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 two bank LDA in comparison with active probing at various frequencies. Log-scale axes.
13