measuring the autonomous system path through the internet

23
Measuring the Autonomous Measuring the Autonomous System Path Through the System Path Through the Internet Internet Jennifer Rexford Internet and Networking Systems AT&T Labs - Research; Florham Park, NJ http://www.research.att.com/~jrex Joint work with Z. Morley Mao, David Johnson, Jia Wang, and Randy Katz

Upload: brasen

Post on 08-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Measuring the Autonomous System Path Through the Internet. Jennifer Rexford Internet and Networking Systems AT&T Labs - Research; Florham Park, NJ http://www.research.att.com/~jrex. Joint work with Z. Morley Mao, David Johnson, Jia Wang, and Randy Katz. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Measuring the Autonomous System Path Through the Internet

Measuring the Autonomous System Measuring the Autonomous System Path Through the InternetPath Through the Internet

Jennifer Rexford

Internet and Networking SystemsAT&T Labs - Research; Florham Park, NJ

http://www.research.att.com/~jrex

Joint work with Z. Morley Mao, David Johnson, Jia Wang, and Randy Katz

Page 2: Measuring the Autonomous System Path Through the Internet

IP Forwarding PathIP Forwarding Path

Path packets traverse through the Internet

Why important? Characterize end-to-end network

paths

Discover the router-level Internet topology

Detect and diagnose reachability problems

IP traffic

Internet

sourcedestination

Page 3: Measuring the Autonomous System Path Through the Internet

Traceroute: Measuring the Forwarding PathTraceroute: Measuring the Forwarding Path

Time-To-Live field in IP packet header– Source sends a packet with a TTL of n

– Each router along the path decrements the TTL

– “TTL exceeded” sent when TTL reaches 0

Traceroute tool exploits this TTL behavior

source destination

TTL=1

Time exceeded

TTL=2

Send packets with TTL=1, 2, 3, … and record source of “time exceeded” message

Page 4: Measuring the Autonomous System Path Through the Internet

Example Traceroute Output (Berkeley to CNN)Example Traceroute Output (Berkeley to CNN)

1 169.229.62.1

2 169.229.59.225

3 128.32.255.169

4 128.32.0.249

5 128.32.0.66

6 209.247.159.109

7 *

8 64.159.1.46

9 209.247.9.170

10 66.185.138.33

11 *

12 66.185.136.17

13 64.236.16.52

Hop number, IP address, DNS nameinr-daedalus-0.CS.Berkeley.EDU

soda-cr-1-1-soda-br-6-2

vlan242.inr-202-doecev.Berkeley.EDU

gigE6-0-0.inr-666-doecev.Berkeley.EDU

qsv-juniper--ucb-gw.calren2.net

POS1-0.hsipaccess1.SanJose1.Level3.net

?

?

pos8-0.hsa2.Atlanta2.Level3.net

pop2-atm-P0-2.atdn.net

?

pop1-atl-P4-0.atdn.net

www4.cnn.com

No responsefrom router

No name resolution

Page 5: Measuring the Autonomous System Path Through the Internet

AS A

AS BAS C

AS DAutonomous System (AS)

Autonomous System Forwarding PathAutonomous System Forwarding Path

Example: Pinpoint forwarding loop & responsible AS

IP trafficInternet

sourcedestination

Page 6: Measuring the Autonomous System Path Through the Internet

Border Gateway Protocol (BGP)Border Gateway Protocol (BGP)

BGP path may differ from forwarding AS path– Routing loops and deflections

– Route aggregation and filtering

– BGP misconfiguration

AS A AS B AS Cprefix d

Signaling path: control traffic

d: path=[C]

Forwarding path: data traffic

d: path=[BC]Origin AS

Page 7: Measuring the Autonomous System Path Through the Internet

Map Traceroute Hops to ASesMap Traceroute Hops to ASes

1 169.229.62.1

2 169.229.59.225

3 128.32.255.169

4 128.32.0.249

5 128.32.0.66

6 209.247.159.109

7 *

8 64.159.1.46

9 209.247.9.170

10 66.185.138.33

11 *

12 66.185.136.17

13 64.236.16.52

Traceroute output: (hop number, IP)AS25

AS25

AS25

AS25

AS11423

AS3356

AS3356

AS3356

AS3356

AS1668

AS1668

AS1668

AS5662

Berkeley

CNN

Calren

Level3

AOL

Need accurate IP-to-AS mappings(for network equipment).

Page 8: Measuring the Autonomous System Path Through the Internet

Candidate Ways to Get IP-to-AS MappingCandidate Ways to Get IP-to-AS Mapping

Routing address registry– Voluntary public registry such as whois.radb.net

– Used by prtraceroute and “NANOG traceroute”

– Incomplete and quite out-of-date» Mergers, acquisitions, delegation to customers

Origin AS in BGP paths– Public BGP routing tables such as RouteViews

– Used to translate traceroute data to an AS graph

– Incomplete and inaccurate… but usually right» Multiple Origin ASes (MOAS), no mapping, wrong mapping

Page 9: Measuring the Autonomous System Path Through the Internet

Refining Initial IP-to-AS MappingRefining Initial IP-to-AS Mapping

Start with initial IP-to-AS mapping– Mapping from BGP tables is usually correct

– Good starting point for computing the mapping

Collect many BGP and traceroute paths– Signaling and forwarding AS path usually match

– Good way to identify mistakes in IP-to-AS map

Successively refine the IP-to-AS mapping– Find add/change/delete that makes big difference

– Base these “edits” on operational realities

Page 10: Measuring the Autonomous System Path Through the Internet

Extra AS due to Internet eXchange PointsExtra AS due to Internet eXchange Points

IXP: shared place where providers meet– E.g., Mae-East, Mae-West, PAIX

– Large number of fan-in and fan-out ASes

A

B

C

D

E

F

G

Traceroute AS path BGP AS path

Physical topology and BGP session graph do not always match.

B

C

F

G

A E

Page 11: Measuring the Autonomous System Path Through the Internet

Extra AS due to Sibling ASesExtra AS due to Sibling ASes

Sibling: organizations with multiple ASes:– E.g., Sprint AS 1239 and AS 1791

– AS numbers equipment with addresses of another

Traceroute AS path BGP AS path

A

B

C

D

E

F

G

H

A

B

C

D

E

F

G

Sibling ASes “belong together” as if they were one AS.

Page 12: Measuring the Autonomous System Path Through the Internet

Weird Paths Due to Unannounced AddressesWeird Paths Due to Unannounced Addresses

A B

C

A C

A C A C

B A C B C

C does not announce part ofits address space in BGP

(e.g., 12.1.2.0/24)

12.0.0.0/8

Fix the IP-to-AS map to associate 12.1.2.0/24 with C

Page 13: Measuring the Autonomous System Path Through the Internet

Reasons BGP and Traceroute Paths May DifferReasons BGP and Traceroute Paths May Differ

IP-to-AS mapping is inaccurate (fix these!)– Internet eXchange Points (IXPs)

– Sibling ASes owned by the same institution

– Unannounced infrastructure addressesForwarding and signaling paths differ (study these!)

– Forwarding loops and deflections

– Route aggregation and filteringTraceroute inaccuracies (don’t overreact to these!)

– Forwarding path changing during measurement

– Address assignment to border links between ASes

– Outgoing link identified in “time exceeded” message

Page 14: Measuring the Autonomous System Path Through the Internet

Optimization FrameworkOptimization Framework

Start with initial IP-to-AS map A(x)– IP address x maps to A(x), a set of ASes

Iterative refinement– Apply A(x) to the hops in each traceroute path

– Compare the traceroute hops to the BGP AS path

– Compute mismatch statistics for each entry x

– Modify A(x) depending on a small set of rules

Terminate when no further modifications

Page 15: Measuring the Autonomous System Path Through the Internet

Matching Function and Unavoidable ErrorMatching Function and Unavoidable Error

Matching function m for BGP/traceroute pair– Traceroute path: t1, t2, …, tn of n IP addresses

– BGP path: b1, b2, …, bl of l AS numbers

– Matching: associate IP hop ti with AS hop bm(i)

Find the matching m that minimizes error– Number of traceroute hops with bm(i) not in A(ti)

– Dynamic programming algorithm to find best m

t: 7 13 6 5 8 3 10 2

b: A B C

Page 16: Measuring the Autonomous System Path Through the Internet

Rules for Modifying the IP-to-AS MappingRules for Modifying the IP-to-AS Mapping

Computing match statistics across paths– Focusing on path pairs with at most two errors

Example rules– Create a mapping: A(x) is null

» Assign to the AS y that appears in the most matchings

– Replace a mapping: A(x) has one entry» If an AS y not in A(x) accounts for > 55% of matchings

– Delete from a mapping: A(x) has multiple entries» If an AS y in A(x) accounts for < 10% of matchings

Algorithm converges in less than ten iterations

Page 17: Measuring the Autonomous System Path Through the Internet

Measurement Data: Eight Vantage PointsMeasurement Data: Eight Vantage Points

Organization Location Upstream Provider

AT&T Research NJ, US UUNET, AT&T

UC Berkeley CA, US Qwest, Level3, Internet 2

PSG home network WA, US Sprint, Verio

Univ of Washington WA, US Verio, Cable&Wireless

ArosNet UT, US UUNET

Nortel ON, Canada AT&T Canada

Vineyard.NET MA, US UUNET, Sprint, Level3

Peak Web Hosting CA, US Level 3, Global Crossing, Teleglobe

Sweep the routable IP address space– ~200,000 IP addresses

– 160,000 prefixes

– 15,000 destination ASes

Page 18: Measuring the Autonomous System Path Through the Internet

Initial Analysis of BGP and Traceroute PathsInitial Analysis of BGP and Traceroute Paths

Traceroute paths: initial mapping A from BGP– Unmapped hops: match no ASes (1-3% of paths)

– MOAS hops: match any AS in the set (10-13% of paths)

– “*” hops: match any AS (7-9% of paths)

BGP paths: discard 1% of prefixes with AS paths – Routing changes based on BGP updates

– Private AS numbers (e.g., 65100)

– Empty AS paths (local destinations)

– Apparent AS-level loops from misconfiguration

– AS_SET instead of AS sequence

Page 19: Measuring the Autonomous System Path Through the Internet

Comparison of IP-to-AS MappingsComparison of IP-to-AS Mappings

Whois: unmapped hops cause half of mismatchesBGP tables: mostly match, as our algorithm assumesRefined mapping: change 2.9% of original mapping

– Robust to reducing # of probes and introducing noise

Whois BGPorigins

Refined mapping

Match 47% 85% 95%

Mismatch 53% 15% 5%

Ratio 0.88 5.8 18

Comparing BGP and Traceroute AS paths for various IP-to-AS mappings

Page 20: Measuring the Autonomous System Path Through the Internet

Validating the Changes to the MappingValidating the Changes to the Mapping

AT&T’s tier-1 network (AS 7018)– Dump of configuration state from each of the routers

– Explains 45 of 54 changes involving AS 7018» E.g., customer numbered from AT&T addresses» E.g., Internet exchange point where AT&T connects

Whois query on prefix or AS– Look for “exchange point” or “Internet exchange”

» Explains 24 of the changes to the mappings

– Look for ASes with similar names (Sprintlink vs. Sprintlink3)» Explains many of the changes to the mappings

List of known Internet eXchange Points– Explains 24 of the MOAS inferences

– Total of 38 IXPs contributed to mapping changes

Page 21: Measuring the Autonomous System Path Through the Internet

Exploring the Remaining MismatchesExploring the Remaining Mismatches

Route aggregation

– Traceroute AS path longer in 20% of mismatches

– Different paths for destinations in same prefix

Interface numbering at AS boundaries

– Boundary links numbered from one AS

– Verified cases where AT&T (AS 7018) is involved

BGP path: B CTraceroute path: B C DB CC

DD

EE

B CB D DBGP path: B C DTraceroute path: B D

Page 22: Measuring the Autonomous System Path Through the Internet

ContributionsContributions

Problem formulation– AS-level traceroute tool for troubleshooting

– Compute an accurate IP-to-AS mappingOptimization approach

– Compute matchings using dynamic programming

– Improve mapping through iterative refinementMeasurement methodology

– Traceroute and BGP paths from many locationsValidation of our results

– Changes to the IP-to-AS mappings

– Remaining mismatches between traceroute and BGP

Page 23: Measuring the Autonomous System Path Through the Internet

Future Work on AS TracerouteFuture Work on AS Traceroute

Lower measurement overhead– Avoid traceroute probes that would discover similar paths

– Work with BGP routing tables rather than live feeds Limiting the effects of traceroute inaccuracies

– Catch routing changes through repeat experiments

– Use router-level graphs to detect AS boundaries

– Detect routers using outgoing link in “time exceeded” Public AS traceroute tool

– Periodic data collection and computation of IP-to-AS mapping

– Software to apply mapping to traceroute output Network troubleshooting

– Analyze valid differences between forwarding and signaling paths

– Use the AS traceroute tool to detect and characterize anomalies