Download presentation
Presentation is loading. Please wait.
Published byMarjory Armstrong Modified over 6 years ago
1
computing the relationships between autonomous systems
giuseppe di battista maurizio patrignani maurizio pizzonia univ. of rome III
2
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
3
the routing process router 2 router 3 router 1
lan send to directly connected router 1 everything else router 2 router 1 router 3 lan send to directly connected router 4 router 2 lan send to router 5 router 3 router 1 lan send to router 6 router 2 directly connected Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
4
routing protocols routing protocols are used to automatically update the routing tables they fall into two main cathegories: link-state routing protocols approach: send information about your neighbors to everyone each router reconstructs the whole network and computes a shortest path tree to all destinations examples: is-is, ospf distance-vector routing protocols approach: send all your information to your neighbors each router updates its routing table based on the neighbors’ ones examples: rip Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
5
flat routing a single routing algorithm involving all the organizations
lan send to router 6 lan send to router 9 router 1 router 2 router 5 router 3 it was this way before 1984 problems: slow to converge, difficult to deploy a new routing algorithm, difficult to debug and configure, does not take into account the ownership of the links Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
6
hierarchical routing more than one routing algorithm involved
approach: each organization runs a local routing algorithm by using an interior gateway protocol (igp) external targets are injected into the local routing algorithm Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
7
route injection lan send to router 1 router 2 router 1 the interior routing algorithm spreads into the network the local targets as well as the remote ones injected by border routers border routers are aware of remote targets since they talk a higher level routing protocol with other border routers Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
8
exterior gateway protocol
approach: Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
9
exterior gateway protocol
approach: hide the interior part of all organizations Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
10
represent the internal targets
each border router represents its internal targets as if they were local Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
11
simplify the graph simplify the graph
consider the (external and internal) reachability of the routers the graph is actually managed through tcp connections called peerings Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
12
solve the routing problem
solve the routing problem on the simplified graph based on political considerations Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
13
border gateway protocol
bgp is an exterior gateway protocol: it keeps the routing tables updated and propagates routing information takes into account the willingness of the organizations to cooperate in the routing process (commercial agreements, local preferences, priorities, legal issues, …) Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
14
announcements and traffic flows
bgp allows a router to offer connectivity to another router “offering connectivity” means “promising the delivery to a specific destination” bgp announcement /24 AS100 router 1 router 2 AS200 ip traffic (to be delivered to /24) Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
15
using AS-path to avoid cycles
/24 /24 40 10 /24 10 /24 AS10 /24 AS60 /24 /24 10 AS212 legenda: prefix as-path Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
16
using prepending to implement preferences
AS40 AS31 /24 /24 40 10 /24 10 /24 AS10 /24 AS60 /24 AS212 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
17
how to ensure cooperation?
AS40 AS31 /24 /24 40 10 /24 10 /24 AS10 AS60 /24 10 /24 212 10 AS212 why AS212 should propagate AS10 announcement? Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
18
the scenario not available route peer-peer provider customer peer-peer
AS1 AS2 provider customer peer-peer AS3 AS4 AS5 sibling-sibling AS6 AS7 AS8 AS9 not available route Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
19
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
20
problem history the problem is introduced by Lixin Gao (“On Inferring Autonomous System Relationships in the Internet”, IEEE Trans. Networking, 2001) relationships are classified into three categories: customer-provider, peer-peer, and sibling-sibling BGP routing tables are used as input heuristics are verified with information coming from other sources further studies on the structural properties of the labeled graph (Ge, Figueiredo, Jaiwal, Gao, “On the Hierarchical Structure of the Logical Internet Graph”, Proc. SPIE ITCOM, 2001) Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
21
a simpler problem formulation
due to Subramanian, Agarwal, Rexford, and Katz (“Characterizing the Internet Hierarchy from Multiple Vantage Points” INFOCOM 2002) [SARK 2002] from a provider from a provider from a provider from a provider from a peer from a peer from a peer from a peer from a customer from a customer from a customer from a customer customer-provider relationship peer-peer relationship Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
22
valid and invalid AS-paths
if all ASes respect the advertisement rules, AS-path would be all valid possibly missing possibly missing possibly missing possibly missing type-1 type-2 type-1 valid AS-path: a (possibly missing) uphill path followed by a (possibly missing) downhill path type-2 valid AS-path: a (possibly missing) uphill path followed by a peer-peer edge, followed by a (possibly missing) downhill path Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
23
the ToR (Type of Relationships) problem
ToR problem [SARK 2002] given an undirected graph G and a set of paths P, give an orientation to some of the edges of G to minimize the number of invalid paths in P invalid paths: not “valley free” or involving more than one peering in [SARK 2002] the ToR problem is conjectured to be NP-hard Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
24
a real-life ToR problem instance
six rows extracted from the BGP routing table of Oregon RouteViews (Apr 18, 2001) network next hop path i /23 i i /19 i i i extract AS paths and eliminate prepending Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
25
a real-life ToR problem instance
six rows extracted from the BGP routing table of Oregon RouteViews (Apr 18, 2001) network next hop path i /23 i i /19 i i i extract AS paths and eliminate prepending 14318 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
26
building the corresponding AS graph
This is the graph corresponding to the previous BGP table lines. If you give an arbitrary orientation to some edges of this graph, some paths are valid, some other paths are not. AS11334 AS14318 AS7660 AS13099 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
27
an orientation for the AS graph
This is the graph corresponding to the previous BGP table lines. If you give an arbitrary orientation to some edges of this graph, some paths are valid, some other paths are not. AS11334 AS14318 AS7660 AS13099 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
28
our contributions we show that, although the ToR-problem is NP-hard, a solution without invalid paths (if it exists) can be found in linear time we propose heuristics for the general problem based on a novel paradigm and show their effectiveness against publicly available data sets the experiments put in evidence that our heuristics performs significantly better than state of the art heuristics Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
29
a hot topic independently of our work, Erlebach, Hall, and Schank of the Theory of Communication Networks Group of Zurich discovered analogous results concerning the time complexity of the general problem and the linearity in the case of all valid paths however, while they put more emphasis on the approximability of the problem, we focus more on the engineering and the experimentation of an effective heuristic approach The classification of AS relationships in the Internet is a hot research topic. Its relevance has been confirmed by the interest of other research groups on the same subject Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
30
formulation as a decision problem
the ToR minimization problem corresponds to the following decision problem ToR-D problem given an undirected graph G, a set of paths P, and an integer k, test if it is possible to give an orientation to some of the edges of G so that number of invalid paths in P is at most k Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
31
simplifying the decision problem
suppose to have a solution to the TOR problem with all valid paths and consider an edge labeled as a peer-peer edge peer-peer There may be AS-paths that touch one of the two ASes without using the peer-peer edge, and these are not affected by the label we give to the edge itself. All AS-paths traversing the edge, though, must arrive the two ASes from left and right through uphill paths. It follows that the edge could be arbitrarily directed without producing invalid paths. Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
32
example of orientable AS graph
Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
33
an orientation leaving all valid paths
AS8709 AS8938 AS3561 AS6893 AS4197 AS3967 AS8843 AS7018 AS15493 AS3582 AS1740 AS10311 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
34
a different representation
AS3561 AS7018 AS3967 AS1740 AS8709 AS10311 AS8938 AS3582 AS4197 AS8843 AS6893 AS15493 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
35
example of not orientable AS graph
Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
36
“chestnuts” and contradictions
Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
37
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
38
testing if a solution exists with all valid paths
observation a path p= v1, …, vn is valid if and only if it does not have a vertex vi such that the two edges of p incident on vi are directed away form vi vi based on this observation the problem can be mapped to 2SAT: given a set X of Boolean variables and a formula in conjunctive normal form composed by clauses of two literals, where a literal is a variable or a negated variable, find a truth assignment for the Boolean variables in X such that the formula is satisfied example: (x1 x2) (x2 x3) (x3 x1) Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
39
mapping the problem to 2SAT
associate each edge with a Boolean variable provide each edge with an arbitrary (say random) orientation x1,2 x2,3 x3,4 x4,5 v1 v2 v3 v4 v5 a truth assignment for the Boolean variables corresponds to an orientation for all the edges of the AS-graph (and vice versa) if the variable is true, the associated edge preserves its original direction if the variable is false, the associated edge is reversed Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
40
construction of the 2SAT instance
x1,2 x2,3 x3,4 x4,5 v1 v2 v3 v4 v5 (x1,2 x2,3) (x2,3 x3,4) (x3,4 x4,5) x1,2 x2,3 x3,4 x4,5 v1 v2 v3 v4 v5 x1,2 x2,3 x3,4 x4,5 v1 v2 v3 v4 v5 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
41
solving a huge 2SAT given a 2SAT formula
(x1,2 x2,3) (x2,3 x3,4) (x3,4 x4,5) (x4,5 x2,3) compute the graph of the literals x3,4 x4,5 x1,2 x2,3 x1,2 x2,3 x3,4 x4,5 there is a direct path between a literal and its opposite and vice versa iff a solution without invalid paths does not exist (Aspvall, Plass, Tarjan, IPL ‘79) Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
42
strongly connected components
compute the strongly connected components of the graph of the literals strongly connected component = maximal set of vertices such that for each pair u, v of vertices of the set there exists a directed path from u to v and vice versa Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
43
testing if a solution exists
a solution for the 2SAT problem does not exists if and only if the two literals of the same Boolean variable (edge) fall into the same strongly connected component the test takes O(n+m+q) time where n is the number of ASes, m is the number of edges, and q is the sum of the lengths of the AS-paths x x Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
44
the experimental setting
same setting used by [SARK 2002] ten telnet looking glasses are selected as sources of data all the AS-paths put together are used to test the algorithms four web sources are used to validate the output Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
45
AS graphs from the various sources http://www. cs. berkeley
AS Name Apr 18, 2001 Apr 6, 2002 Paths Vertices Edges 1 Genuity 58,156 10,203 13,001 63,744 12,700 15,946 1740 CERFnet 70,830 10,007 13,416 not available 3549 Globalcrossing 60,409 10,288 13,039 76,572 12,533 16,025 3582 Univ.of Oregon 2,584,230 10,826 22,440 4,600,981 13,055 27,277 3967 Exodus Comm. 254,123 10,387 18,401 399,023 12,616 21,527 4197 Global Online Japan 55,060 13,004 59,745 12,518 15,628 5388 Energis Squared 58,832 10,411 13,259 117,003 12,659 16,822 7018 AT&T 120,283 9,252 12,117 170,325 11,706 15,429 8220 COLT Internet 46,606 8,376 10,932 154,855 12,660 18,421 8709 Exodus, Europe 114,931 10,333 15,006 126,370 12,555 18,175 1755 Ebone 23,469 10,540 13,898 2516 KDDI 126,414 10,790 17,735 2548 MaeWest 80,549 10,583 15,249 6893 CW 70,265 10,523 14,359 telnet sources web sources Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
46
solvable without invalid paths?
AS # AS name Apr 18, 2001 Apr 6, 2002 orientable w/o invalid paths 1 Genuity yes 1740 CERFnet not available 3549 Globalcrossing 3582 Univ.of Oregon no 3967 Exodus Comm. 4197 Global Online Japan 5388 Energis Squared 7018 AT&T 8220 COLT Internet 8709 Exodus, Europe 1755 Ebone 2516 KDDI 2548 MaeWest 6893 CW telnet sources web sources the TOR problem has a solution without invalid paths for several BGP routing tables Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
47
computing a solution without invalid paths
consider the directed acyclic graph of the connected components of the graph of the literals compute a topological sorting of the connected components and assign an integer to each component call f(x) the index of the component to which the literal x belongs a true value is assigned to variable x if f(x) > f(x), false otherwise 1 2 3 4 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
48
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
49
the general problem is NP-hard
MAX2SAT instance MAX2SAT assignment Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
50
example (x1 x2) (x2 x3) (x2 x4) (x1 x4) (x3 x4)
Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
51
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
52
our heuristic approach
size of the problem: 3,423,460 AS-paths 10,916 vertices 23,761 edges very simple approach: find a very large set of AS-paths admitting an orientation try to reinsert the kept out AS-paths Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
53
1) find a very large set of paths admitting an orientation
1.a) rank the edges with respect to the number of paths using them 1.b) construct the graph of the literals 1.c) compute the strongly connected components of it 1.d) find out all the variables whose two literals fall into the same strongly connected component 1.e) consider the corresponding edges and eliminate the one with the highest rank (and all the paths using it, too) x x y y Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
54
2) try to reinsert the left out AS-paths
2.a) set x = 1 2.b) add x paths 2.c) if it is still solvable commit the path addition x = x*2 else if x is 1 discard the path else x = x/2 2.d) repeat 2.b and 2.c until no path is left some figures: out of 3,423,460 paths, we removed 246,835 paths with the first step, ending with had 3,176,625 paths after the first step; we reinserted 222,764 with the second step, ending with 3,399,389 valid paths Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
55
comparison with the SARK paper
two peerings allowed recomputed AS # AS Name SARK Err. % SAT Err. % 1 Genuity 0.65 0.45 1740 CERFnet n.a. 0.36 3549 Globalcrossing 0.13 3582 Univ.of Oregon 0.57 3967 Exodus Comm. 0.42 4197 Global Online Japan 0.46 5388 Energis Squared 7018 AT&T 0.63 0.21 8220 COLT Internet 0.22 8709 Exodus, Europe 1755 Ebone 2.89 1.52 2516 KDDI 8.97 4.95 2548 MaeWest 1.49 0.19 6893 CW 2.92 0.64 SARK Err.% 16.85 6.29 17.28 30.52 29.65 13.67 55.37 23.30 12.62 11.68 6.32 76.36 2.71 23.63 SARK Err.% 0.86 0.96 3.44 19.20 5.95 2.83 53.63 0.73 6.32 3.98 3.33 20.80 0.99 11.84 telnet sources noi abbiamo lavorato sui loro dati, preprocessati (insiemi di path) loro hanno già tolto I duplicati consecutivi web sources Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
56
a deeper comparison SARK algorithm SAT algorithm number of nodes 10923
number of edges 23757 peering edges 1136 percentage of total 5% path covering distribution minimum: 0 average: 50 maximum: 22327 strongly connected components 10302 scc's to edges ratio size distribution: 10096 scc's of size 1 176 scc's of size 2 21 scc's of size 3 4 scc's of size 4 1 scc of size 6 1 scc of size 7 1 scc of size 19 1 scc of size 86 1 scc of size 278 SAT algorithm number of nodes 10897 number of edges 23690 peering edges percentage of total 0% path covering distribution minimum: 1 average: 80 maximum: 19918 strongly connected components 10312 scc's to edges ratio size distribution: 10311 scc's of size 1 1 scc of size 586 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
57
“graph of the differences”
we inserted one undirected edge (and the two end vertices if needed) into the graph of the differences for every oppositely directed edge graph of the differences number of nodes 489 number of edges 1148 path covering distribution minimum: 1 average: 37 maximum: 3420 connected components 19 cc's to edges ratio size distribution: 18 cc's of size 2 1 cc of size 453 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
58
discovering the peer-peer relationships
given an oriented graph, discovering peer-peer relationships is a hard problem if you want to maximize them (MAX-INDEPENDENT-SET can be mapped to it) v1 v2 1 3 2 4 v6 v3 6 5 v5 v4 Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
59
degrees of freedom in determining the peering relationships
AS # AS Name edges candidates peer-peer % peer-peer 1 Genuity 13,001 11,395 8,573 65.94 1740 CERFnet 13,416 10,741 7,931 59.12 3549 Globalcrossing 13,039 10,851 8,250 63.28 3582 Univ.of Oregon 3967 Exodus Comm. 18,401 14,562 11,626 63.18 4197 Global Online Japan 13,004 9,794 7,573 58.24 5388 Energis Squared 13,259 8,969 7,383 55.68 7018 AT&T 12,117 9,664 7,672 63.32 8220 COLT Internet 10,932 7,970 6,616 60.52 8709 Exodus, Europe 15,006 10,079 8,477 56.49 all the ten together 23,761 4,148 3,936 16.56 need for more semantic information for determining peer-peer relationships Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
60
overview interdomain routing basics
the problem of determining the relationships between autonomous systems testing if a solution exists in linear time the complexity of finding a good orientation an heuristic approach to the general problem conclusions Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
61
conclusions we show that the ToR-problem is NP-hard but…
if a solution without invalid paths exists, it can be found in linear time by mapping the problem to 2SAT we propose heuristics for the general problem based on the 2SAT mapping we show the effectiveness of the heuristics against publicly available data sets the experiments put in evidence that our heuristics performs significantly better than state of the art heuristics we show that discovering peer-peer relationships is a hard problem if one wants to maximize them Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
62
issues how to determine peer-peer relationships once the graph is oriented? each AS-path is weighted one, irrespectively of the size of its prefix. To what extent is this correct? could snapshots of the same BGP table taken at different dates help in better understanding the relationships between ASes? what if we knew in advance the orientation of some of the edges? Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
63
links Lixin Gao, “On Inferring Autonomous System Relationships in the Internet” Subramanian, Agarwal, Rexford, and Katz “Characterizing the Internet Hierarchy from Multiple Vantage Points” Erlebach, Hall, and Schank, “Classifying Customer-Provider Relationships in the Internet” website dedicated to the algorithms described in this presentation Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
64
acknowledgements Subramanian, Agarwal, Rexford, and Katz for sharing their data and explanations Thomas Erlebach, Alexander Hall, and Thomas Schank for their insight Debora Donato, Andrea Vitaletti for useful discussions Massimo Rimondini for computing statistics on the graphs Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
65
questions? Seminario Interdipartimentale di Algoritmica – 17 Marzo 2003
66
computing the relationships between autonomous systems
giuseppe di battista maurizio patrignani maurizio pizzonia univ. of rome III
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.