Merging Logical Topologies UsingMerging Logical Topologies UsingEnd-to-end MeasurementsEnd-to-end Measurements
Michael Rabbat Mark Coates Robert Nowak
Internet Measurement Conference 2003
Tuesday October 28, 2003
Motivation:• BGP data gives the big picture• ICMP-based techniques (i.e. traceroute) don’t work
everywhere
Existing end-to-end techniques:• Single active source, many receivers• Assume tree structured logical topology• Exploit:
– Correlated events on upstream links– Additive, non-decreasing nature of performance parameters
[Ratnasamy & McCanne], [Duffield et al.], [Bestavros et al.], [Coates et al.]
A
3 5421
Topology Identification via Active Probing
Extending to Multiple Sources
• Marginal Utility [Barford et al., ‘01]– Can gain by using a few more sources
• Net. Tomo. on General Topologies [Bu et al., ’02]– Evaluate various algorithms for inferring internal characteristics– Sources make measurements separately– Identifiability conditions given the general topology
A
3 5421 3 5421
B
No labels on internal nodes Merging is non-trivial
Merging Strategy
A
3 54213 5421
BA B
1 2 3 4 5
• Identify joining nodes merge topologies– Placement is logical, relative
• Non-shared joining node– Merging node for routes to a single receiver
• Shared joining node– Routes to multiple receivers merge at one node
Goal: Identify Shared Joining Nodes• Two sources, two receivers• Is there a shared joining node?• Locate joining node relative to
branching node
• All other cases have more than one non-shared joining node
• Make measurements and form a binary hypothesis test:
H0 : One joining node
H1 : More than one joining node
A B
1 2
A B
1 2
A
21
B
21
Packet Arrival Order MeasurementsAssumptions:1. Sources synchronized (for now)2. Arrival order determined at
first shared queue
A B
1 2
t(n)
t(n) + t
tv(n)
t
Procedure:1. At t(n), send packets to Rcv12. After t, send packets to Rcv2
t > O(1/bmin)3. Compare arrival orders
4. Repeat, varying send time at Bv(n) ~ Unif orm(-D, D)|D| ¼ O(RTTmax) À t
Rcv1 Rcv2 y(n)
A A 0
B B 0
A B 1
B A 1
Analysis: Packet Arrival Order and Timing
A B
1
Conditions for a Different Arrival Order
Prob. different arrival order | v(n)
A B
1 2
Contours of p(d1, d2)
d1
d2
For Non-Shared Topologies
• On packet reordering [Bellardo & Savage, ’02]– Pr{In-network reordering} / 1/(time-spacing)
• Sources of measurement noise– Packet reordering for a few values of v(n)– Spacing t distorted by queueing (also, for few values of v)
Prob. different arrival order | v(n)
A B
1 2
Contours of p(d1, d2)
d1
d2
Measure the Noise
Send all packets to one receiver Force one joining node
A B
1 2
t(n)t
v(n)t
Similar procedure:1. At t(n), send packets to Rcv12. After t, send to Rcv1 again
t ¼ O(1/bmin)3. Compare arrival orders
4. Repeat, varying send time at Bv(n) ~ Unif orm(-D, D)|D| ¼ O(RTTmax)
Rcv1 Rcv2 y1(n)
A A 0
B B 0
A B 1
B A 1
Must be noise
1
11
1
22
22
Making A DecisionA B
1 2
A B
1 2
Some Experiments
• Rice ECE LAN– 18 Unix/Linux hosts
– Spread across two buildings, two VLANs
– Mostly layer-2, two routers
– Validated with help from IT
• Internet “Test bed”– 11 academic hosts
– Mostly N. American, few in Europe
– Validated using traceroute
• Extremely successful
Summary
• Merge logical topologies by identifying joining nodes– Shared joining nodes located relative to branching node
• Novel multiple source active probing scheme– Uniform random offset– Look for packet arrival order differences
• A few concluding remarks– Unicast or multicast– O(NS2 R2) measurements, reduce to O(NS2 R) using “stripes”– Infrastructure independent (layer-3 or layer-2)
Signal Processing In Networkinghttp://spin.rice.edu