Title: Interdomain Routing
1Interdomain Routing
- Gordon Wilfong
- Distinguished Member of Technical Staff
- Algorithms Research Department
- Mathematical and Algorithmic Sciences Center
- Bell Laboratories
February, 2006
2Current Internet Routing
- Autonomous Systems (ASes)
- Subnetwork under single administrative control
- Each AS has its own economic incentives to
- cooperate so as to achieve connectivity and to
abide by economic contracts (SLAs) - to hide information about its internal network
- Routing between ASes achieved by protocol where
- AS selectively announces to neighbors its chosen
route to destinations - AS selects highest ranked route announced to it
3Border Gateway Protocol (BGP)
The route I use to d goes through AS0
AS1
AS2
Data packets
The route I use to d goes through AS1 then AS0
I route directly to d
AS3
AS0
d
4Routing Protocol Requirements
- Protocol must scale
- Routing table entries (destinations) 150,000
and increasing - Autonomous Systems 20,000 and increasing
- Administrators require expressiveness for routing
policies - Local AS policy (based on SLAs, traffic
engineering etc) determines - route selection (effects where AS sends packets)
- route announcements (effects how/if packets from
other ASes traverse it)
5E-BGP
External BGP (E-BGP) is the mode of BGP that
propagates routes between autonomous systems.
6Stable Paths Problem
3 2 0 3 1 0 3 2 1 0
310
3
1 0
210
1 0 1 2 0
2 1 0 2 0
1
2
0
0
7Independent policies can lead to nonconvergence
1 2 0 1 0
1
Each AS chooses favorite available route.
Bad Gadget
0
0
2 3 0 2 0
3 1 0 3 0
3
2
8May Be Multiple Solutions
1 2 0 1 0
1 2 0 1 0
1 2 0 1 0
1
1
1
0
0
0
2
2
2
2 1 0 2 0
2 1 0 2 0
2 1 0 2 0
First solution
Second solution
DISAGREE
9What can be done?
- Modify protocol
- Design a protocol that has provably good
properties. e.g., Griffin, W. - Constrain topology and/or policy
- Prove good protocol behavior assuming constrained
configurations. e.g., Gao, Rexford - These constraints give rise to interesting
valley-free routing problems (from customer to
local provider to regional provider to national
provider and then down chain again to another
customer). e.g. Erlebach et al
10Possible Research Directions
- Complexity issues
- What is the complexity of deciding if a
configuration is safe (i.e., will it always
converge)? - NP-complete to determine if there is a solution
it can converge to Griffin, W. - Extending model
- Model assumes destinations can be considered
independently - Aggregation has not been taken into consideration
- Trade-offs between protocol expressivity and
safety - Formal model to study such trade-offs
11I-BGP
Internal BGP (I-BGP) is the protocol used to
propagate external routes within an autonomous
system.
12Fully Meshed
A router only announces its own routes
RR
RR
RR
RR
RR
RR
13Route Reflectors
Route Reflectors must be fully meshed
Route Reflectors pass along updates to client
routers
14Route Selection Summary
15What Are MEDs?
AS1
CP
MED2
MED0
MED1
AS3
AS2
Hot Potato Routing vs. Cold
Potato Routing
Client
16Persistent Route Oscillations
1
B
A
120
50
40
r1
r3
MED1
MED1
r2
MED2
135.104.54.4
17Oscillations in I-BGP
1
RR3
AS0
RR1
RR2
1
1
5
5
5
C2
C3
C1
Physical link
P2
P3
P1
I-BGP connection
135.104.54.4
18Deflections
Packets can be diverted out of a network
unexpectedly.
P
AS0
RR
3
1
A
B
1
Q
19Routing Loops
Badly configured networks can also experience
routing loops
5
1
RR2
RR1
AS0
1
1
C1
C2
20A Real-world MED Oscillation Example
- A functioning network breaks into a state
- of persistent route oscillations when a BGP
- session goes down
- First thought to be a hardware problem
- Analysis shows that route oscillations caused by
- the use of the MED attribute
- The example was actually predicted by the
- theoretical analysis Griffin, W.
21Initial State
Only AS 2 sends MEDs to AS 4
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
22Initial Routing
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
(1)
(2)
(2)
MEDs
AS 2
AS 3
I-BGP
D prefers AS 2 path due to router ID tie breaking
AS 1
E-BGP
23B Changes Its Route
The AS 4 ?? AS 3 BGP Session is dropped
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
24A Changes Its Route
The MED 1 route from B beats the MED 2
routes that A sees from its clients.
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
CALL THIS STATE ZERO
AS 1
E-BGP
25C D Change Routes
The MED 1 route from A knocks both MED 2
routes out of the picture for C D
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
26A Changes Route Again
A now sees the route from D through AS 3, and it
is closer IGP-wise than the route from B
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
27CD Return to Initial Routes
C D no longer see MED 1 route from A, so they
return to the eBGP routes with MED 2
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
28Back to State Zero!
A switches back to MED 1 route through B.
AS 4
reflector
reflector
A
B
70000
IGP
1
2
1
2
E
F
C
D
session down!
(1)
(2)
(2)
MEDs
AS 3
AS 2
I-BGP
AS 1
E-BGP
29What Can Be Done?
- Possible Approaches
- Use only configurations that guarantee no
problems - No modification to BGP required
- Previous example shows this might be difficult
- Prevent problems for any configuration
- Modification to BGP required, e.g. Basu et al
- Minimize overhead (number of messages, memory
requirements, )
30Conclusions
- BGP is extremely flexible, allowing
operators to easily make obscure errors that
are difficult to find and correct. - Policy based routing is difficult to get right.
- Defining a formal model of path vector protocols
helps to understand what features can cause
problems and what can be done to avoid errors.
31What about the future?
- BGP is the routing protocol in todays internet
- What about the future?
- new Internet architectures
- new architectures within an AS
- (e.g., Routing Control Platform J. Rexford, et
al) - In any case, a formal theoretical approach is
essential to getting it right.
32Extras
33Persistent Route Oscillations
1
B
A
120
50
40
r1
r3
MED1
MED1
r2
MED2
135.104.54.4