On Inferring AS Relationships in the Internet Dongkee LEE ([email protected]) Lixin Gao Overview.  Motivation     AS Relationships Valley-free property Routing Table Entry patterns Algorithms for Inferring AS relationships  Results Dongkee.

Download Report

Transcript On Inferring AS Relationships in the Internet Dongkee LEE ([email protected]) Lixin Gao Overview.  Motivation     AS Relationships Valley-free property Routing Table Entry patterns Algorithms for Inferring AS relationships  Results Dongkee.

On Inferring AS Relationships
in the Internet
Dongkee LEE ([email protected])
Lixin Gao
1
Overview.
 Motivation




AS Relationships
Valley-free property
Routing Table Entry patterns
Algorithms for Inferring AS relationships
 Results
Dongkee LEE ([email protected])
2
Motivation
 BGP – policy based routing protocol.
∴ Connectivity does not imply reachability.
 Connectivity does alone cannot fully characterize the
structural properties of the internet.
 Commercial contractual relationships are
important.
Dongkee LEE ([email protected])
3
Motivation
 ISP A cannot reach
B via C.
National
ISP A
National
ISP B
 End-to-End
performance
between A and B ?
Regional
ISP C
Customer pays $ its provider for connectivity to the Internet.
Provider does transit traffic for its customers.
Dongkee LEE ([email protected])
4
Motivation
There is no publicly available information about
inter-AS relationships.
Data from
ARIN, Internet Routing Registries (IRR)
… Out of date.
Dongkee LEE ([email protected])
5
Background – Routing Table
 The routing table entry in AS u is determined by …
 Routing_Table(u, d) =
if u originates prefix d :
e(u, d) – empty AS path
Else :
U(u, v)⊆E Import(v, u)[Export(u, v)[B(v, d)] ]
Dongkee LEE ([email protected])
6
Background - AS relationships
 Commercial agreement between pairs of
Autonomous Systems.
1. CP: Customer-to-provider relationship.
2. PC: Provider-to-Customer relationship.
AS u is a provider of AS v iff u transits traffic for v,
and v does not transit traffic for u.
3. PP: Peer-to-peer relationship.
AS u and v have a peering relationship iff neither u transits
traffic for v nor v transits traffic for u.
4. SS: Sibling-to-sibling relationship.
Dongkee LEE ([email protected])
7
Background - AS relationships
 Exporting information.
Own
Routes
Customer’s
routes
Sibling’s
routes
To a Provider
V
V
V
To a Customer
V
V
V
To a Peer
V
V
V
To a Sibling
V
V
V
Provider’s
routes
Peer’s
routes
V
V
V
V
 Selective Export Rule.
 For r which is a provider or peer route of u.
 If v ⊆ provider(u) or peer(u) then export(v, u)[{r }] is {}
 If v ⊆ customer(u) or sibling(u) then export(v, u)[{r }] is not {}
Dongkee LEE ([email protected])
8
Valley-free property
 After traversing a provider-to-customer or peer-topeer edge, the AS path can not traverse a customerto-provider or peer-to-peer edge.
X.Y/16
 AS path in any BGP routing table entry is valley-free.
P1
 Downhill path
sequence of edges that are either
provider-to-customer or sibling-to-sibling
P2
x
C1
C2
 Uphill path
Dongkee LEE ([email protected])
9
Routing Table Entry patterns.
 Uphill path (1, 2), (4, 5)
 Downhill path (2, 3), (4, 5)
 Uphill + downhill path
 Uphill + peer-to-peer path
(1, 2, 6)
 Peer-to-peer edge + downhill path
(2, 6, 5)
 Uphill + a peer-to-peer edge + Downhill.
(1, 2, 6, 5)
Dongkee LEE ([email protected])
10
Heuristic Algorithms
 Valley-free property.
 Provider typically has a larger size than its
Customer.
size of an AS is related to degree in the AS graph
 Top provider of an AS path is the AS with highest
degree among all ASes in the path.
Dongkee LEE ([email protected])
11
Infer P-C and S-S relationships
Input: BGP routing table RT
Output: Annotated AS graph G
 Phase 1.
Compute the degree for each AS.
transit[ui, ui+1] = 1 means
ui+1 transit traffic for ui
 Phase 2.
Parse AS path to initialize consecutive AS pair relationship.
for as_path {u1, u2, … un} in RT :
find the smallest j
s.t. degree[uj] = max{degree[ui], for i in [1, n] }
for i in 1 … j-1 :
transit[ui, ui+1] = 1
for i in j … n-1 :
transit[ui+1, ui] = 1
Dongkee LEE ([email protected])
12
Infer P-C and S-S relationships
 Phase 3.
Assign relationship to AS pairs.
transit[ui, ui+1] = 1 means
ui+1 transit traffic for ui
Provider provides transition service for its customers.
For each AS path (u1, u2, … un),
for i in 1 … n-1 :
if transit[ui, ui+1] and transit[ui+1, ui] :
edge[ui, ui+1] = sibling-to-sibling
elif transit[ui+1, ui]
edge[ui, ui+1] = provider-to-customer
elif transit[ui, ui+1]
edge[ui, ui+1] = customer-to-provider
Dongkee LEE ([email protected])
13
Infer P-P relationships
Input: BGP routing table RT
Output: Annotated AS graph G
 Phase 1.
Infer P-C and S-S relationships.
 Phase 2.
Identify AS pairs that can not have a P-P relationship.
 Phase 3.
Assign P-P relationship from rest of the connected AS pairs as long as
the pair degree do not differ by more than R times.
Dongkee LEE ([email protected])
14
Results

Verification of Inferred Relationships by AT&T

WHOIS lookup Service
 101 of the 186 inferred sibling-to-sibling relationships were confirmed.
Dongkee LEE ([email protected])
15
Applications
 Can help …





Construction of distance map.
Placement of the proxy or mirror site.
Load balancing and congestion avoidance.
Plan for future contractual agreements.
Reduce the effect of the misconfiguration and to
debug router configuration files.
Dongkee LEE ([email protected])
16
 The END
Dongkee LEE ([email protected])
17