800K PowerPoint Presentation

Optimising Path Discovery
Doubletree and Paris Traceroute
Tony McGregor
a
c
b
e
d
1 e
b
RIPE NCC Visiting
Researcher
[email protected]
2 e
c
3 e
d
4 e
e
The University of Waikato
[email protected]
About Finding The Path
between Two Monitors

Traceroute
a
c
b
e
d
1 e
b
2 e
c
3 e
d
4 e
e
13
19
19
a
b
c
d
e
f
72
72
19
19
13
.1
4
.1
4
.2
0
.2
0
4
99
7.
25
7.
2
0.
8.
16
2.
1
0.
8.
16
2.
2
1.
0.
20
0.
0.
80
0.
10
1
1.
0.
20
0.
25
7.
21
0.
25
7.
21
0.
Traceroute
(the real story)
g
h
1 h
b
2 h
d
3 h
f
4 h
h
19
19
a
b
c
d
1 h
b
1 h
b
1 h
b
2 h
d
2 h
d
e
f
g
.1
72
.1
72
99
7.
20
4.
25
7.
2
0.
8.
1
0.
8.
2
1.
0.
1
1.
0.
4
80
0.
25
7.
10
0.
25
7.
20
4.
16
2.
19
16
2.
19
20
0.
20
0.
21
0.
13
21
0.
13
Traceroute
(the really real story)
h
Traceroute
(more reality)
c
a
b
d
f
g
e
Traceroute
(But wait ... there's more)







RFC1918 addresses
ICMP disabled
ICMP filters
False routes
Load balancing
Interface coalition
ISPs hide topology


TTL 0
Tunnels


MPLS
IPv6
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
D2
f
Donnet B et al. “Efficient Algorithms for Large-Scale Topology Discovery” Sigmetrics 05
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Wasted Probes
(doubletree)
c
S1
a
D1
b
d
S2
e
f
D2
Intra-monitor Redundancy
c
S1
a
D1
b
d
S2
D2
e
f
Stop set
S1, a, b, c, D1
Intra-monitor Redundancy
c
S1
a
D1
b
d
S2
D2
e
f
Stop set
S1, a, b, c, D1, e
Intra-monitor Redundancy
c
S1
a
D1
b
d
S2
D2
e
f
Stop set
S1, a, b, c, D1, e, d
Intra-monitor Redundancy
c
S1
a
D1
b
d
S2
D2
e
f
Stop set
S1, a, b, c, D1, e, d
Intra-monitor Redundancy
c
S1
a
D1
b
d
S2
D2
e
f
Stop set
S1, a, b, c, D1, e, d, D2
Extent of intra-monitor
redundancy

Donnet et al. Estimate that in skitter 87% of
probes were redundant.
skitter
doubletree
Inter-monitor redundancy
c
S1
a
D1
b
d
S2
e
f
D2
Inter-monitor redundancy
c
S1
a
D1
b
d
S2
e
f
D2
Inter-monitor redundancy
c
S1
a
D1
b
d
S2
e
D2
f
global stop set
D1: a, b, c
D2: a, b, d, e
Inter-monitor redundancy
c
S1
a
D1
b
d
S2
e
D2
f
global stop set
D1: a, b, c
D2: a, b, d, e
Inter-monitor redundancy
skitter
doubletree
Limitations

Doubletree finds fewer nodes that repeated
traceroutes



Global stop set requires communication



Path changes
Load balancing
Negates savings to some extent
May be large if there are many destinations
Trade off between reducing intra- and intermonitor redundancy
Doubletree for DAR

The DAR project is investigating the design
of a very large scale active measurement
system


Design should support in the order of 100.000
probes
Want to find path to a small number of
targets from a large number of probes


can't just probe
double tree



A lot of redundancy so much potential for savings
Need to share global stop set between many probes
Global stop set will be smaller than for scamper
Discovering Alternative Paths
load balancing and Paris traceroute

TCP traceroute study (July 2006, 5,000
addresses)



7 of 9 Tear one ISPs
17 of 64 top regional ISPs
Over 80% of destinations appeared to have load
balancers in their path
Augustin et al. “Avoiding traceroute anomalies with Paris traceroute”
Université of Pierre et Marie Curie
Alternative Paths
naïve traceroute
c
S
a
e
b
d
D
Alternative Paths
naïve traceroute
c
S
a
e
b
d
D
Alternative Paths
naïve traceroute
c
S
a
e
b
d
D
Alternative Paths
naïve traceroute
c
S
a
e
b
d
D
Alternative Paths
naïve traceroute
c
S
a
e
b
d
D
Alternative Paths
naïve traceroute
c
S
a
e
D
e
D
d
b
c
S
a
d
Alternative Paths
naïve traceroute
c
S
a
e
D
e
D
d
b
c
S
a
Load Balancing

Three types of load balancers



Random (per-packet)
Destination address based
Flow ID based




Some or all of the classic 5-tuple
TOS
ICMP code and checksum
Traceroute deliberately
varies flow information

Match TTL expired with
probe packet
Paris Traceroute

Goal:




To discover all paths from a source to a destination
Doesn't address per-destination load balancing
Create headers such that flow ID remains the
same
Still need to match ICMP TTL expired packets to
probes

For UDP vary checksum


For ICMP vary sequence number and identifier


Requires manipulating the payload
So that checksum remains constant
For TCP vary the sequence number

Uses TCP half-open technique
Results


For a particular set of 5000
destinations from Université Pierre et
Marie Curie
Loops



Cycles



5.3% of traceroute paths
87% caused by per flow load balancing
0.84% of traceroute paths
78% caused by per-flow load balancing
Diamonds


79% of traceroute paths
64% cause by per-flow load
balancing