Network Protocols: Design and Analysis
Polly Huang
EE NTU
http://cc.ee.ntu.edu.tw/~phuang
Internet Routing III
[Tsuchiya88a] [Labovitz00a]
Landmark Routing [Tsuchiya88a]
Polly Huang, NTU EE 4
Context
• fairly early in the Internet life– before BGP-3– before CIDR
• example of SIGCOMM “wild idea” paper
Polly Huang, NTU EE 5
Key Idea
• Self-configuring hierarchy for routing with many routers
Polly Huang, NTU EE 6
Why Landmark Routing?
• area routing requires knowledge of topology, maybe doesn’t get best aggregration possible
• LM knows about internal structure of nearby nodes, even if in different AS
• dynamic address assignment—easier to manage• reduce size of routing table… because address are automat
ic, and reassigned on-demand, can get better aggregation than area hierarchy
• could be more reliable if congestion because supports multiple (?)
• different approach than area routing
Polly Huang, NTU EE 7
Landmark Routing Disadvantages
• don’t always get shortest path [but true about all routing protocols that have aggregation/policy]
• admin control? (paper hints at approaches, but not fully explored)
• performance not fully explored?– less info further away from destination, therefore more likely to get
poor quality routes to it [but no different from area routing]– performance of LM placement/config algorithms?
• combines routing and address (but so does area routing)• addressing
– address may not be stable– LM uses variable length address
Polly Huang, NTU EE 8
Landmark hierarchy
• Details about things nearby and less information about things far away
• Not defined by arbitrary boundaries– thus, not well suited to the real world that does
have administrative boundaries– (although he says something about adding
admin boundaries)
Polly Huang, NTU EE 9
A Landmark
1
2
3
4
56
7
89
10
11
Router 1 is a landmarkof radius 2
Polly Huang, NTU EE 10
Landmark Overview
• Landmark routers have “height” which determines how far away they can be seen (visibility)
• Routers within Radius n can see a landmark router LM(n)
• See means that those routers have LM(n)’s address and know next hop to reach it. – Router x as an entry for router y if x is within radius of y
• Distance vector style routing with simple metric• Routing table: Landmark (LM2(d)), Level(2), Next hop
Polly Huang, NTU EE 11
LM Hierarchy Definition
• Each LM (Li) associated with level (i) and radius (ri)
• Every node is an L0 landmark
• Recursion: some Li are also Li+1– Every Li is seen by at least one Li+1
• Terminating state when all level j LMs see entire network
Polly Huang, NTU EE 12
LM addresses
• LM(2).LM(1).LM(0) (x.a.b and y.a.b)
• LM level maps to radius (part of configuration), e.g.:– LM level 0: radius 2
– LM level 1: radius 4
– LM level 2: radius 8
• If destination is more than two hops away, will not have complete routing information, refer to LM(1) portion of address, if not then refer to LM(2)..(c would forward based on y in y.a.b)
X
y
ab
c
Polly Huang, NTU EE 13
LM Routing
• LM does not imply hierarchical forwarding
• It is not a source route
• En route to LM(1) may encounter router that is within LM(0) radius of destination address (like longest match)
• Paths may be asymmetric
Polly Huang, NTU EE 14
LM self-configuration
• Bottom-up hierarchy construction algorithm– goal to bound number of children
• Every router is L0 landmark• All routers advertise themselves over a distance• All Li landmarks run election to self-promote
one or more Li+1 landmarks• Dynamic algorithm to adapt to topology
changes--Efficient hierarchy
Polly Huang, NTU EE 15
Landmark Routing: Basic Idea
Source wants to reach LM0[a], whose address is c.b.a:•Source can see LM2[c], so sends packet towards c•Entering LM1[b] area, first router diverts packet to b•Entering LM0[a] area, packet delivered to a
- Not shortest path- Packet does not necessarily follow specified landmarks
Polly Huang, NTU EE 16
Landmark Routing: Example
Polly Huang, NTU EE 17
Routing table for Router gLandmark Level Next hop
LM2[d]
LM0[e]
LM1[i]
LM0[k]
LM0[f]
2
1
0
0
0
f
k
f
k
f
r0 = 2, r1 = 4, r2 = 8 hops
Router g
How to go from d.i.g to d.n.t?How does path length compare to shortest path?
Router t
Polly Huang, NTU EE 18
Evaluation• analytic results
– but bounds not very helpful
• simulation– routing table size (R)
– mean path length
– distance to nearby landmark
– (seems weak)
[Figure 6 from Tsuchiya88a]
r/d =radius/distance
rtg
tabl
e si
zem
ean
path
len
Questions?
BGP Routing Convergence Times [Labovitz00a]
Polly Huang, NTU EE 21
Context
• BGP widely deployed in the Internet
• but poorly understood
Polly Huang, NTU EE 22
Key Idea
• convergence time takes longer we expected
• observes 2-3 minute convergence times (6x longer than expected!)
• bounds on BGP convergence: O(n!) worst case, O((n-3)*30s) [n is number of ASes]
Polly Huang, NTU EE 23
Why is Convergence Important?
• robustness– PSTN (telephone) failover times are in
milliseconds– Internet failover times are in 10s of seconds– open research question: how can Internet
routing do much better?
Polly Huang, NTU EE 24
Methodology
• experiments over Internet: manually injected faults propagate across net
• simulation to study worst case behavior
• theoretical analysis—helps understand worst case bounds
• traces of 2 years of convergence times
Polly Huang, NTU EE 25
Methodology Picture
Internet-scale experimentation.What kinds of complexities arise?Have to be careful with real routes;
([Labovitz00a]Figure 1)
Polly Huang, NTU EE 26
0
10
20
30
40
50
60
70
80
90
100
0 20 40 60 80 100 120 140 160
Seconds Until Convergence
Cu
mu
lati
ve P
erce
nta
ge
of
Eve
nts
Tup
Tshort
Tlong
Tdow n
Shor
t->Lon
g Fa
il-O
ver (
Tlong
)
New
Rou
te,
Lon
g->S
hort
Fai
l-ov
er
(Tup
and
Tsh
ort)
Failu
re(T
dow
n)
Long tailed distribution (up to 15 minutes); more msgs in longer waits; long absolute times
Observed Convergence LatencyLabovitz00aFigure 2a
Polly Huang, NTU EE 27
Other Observations
• No correlation between network distance (latency, router, or AS hops) and convergence times
• Why is long convergence bad?…
Polly Huang, NTU EE 28
Affects on Traffic
([Labovitz00a] figure 4a)
Why does loss go up?There’s always a direct path?some people use oldpaths, routing loops
Polly Huang, NTU EE 29
How To Tell What’s Going On?
• Simulate BGP– model one router per AS– assume full routing mesh– ignore latency– synchronous processing via global queuesimple model that captures key details
Polly Huang, NTU EE 30
What’s going on?
• there are many possible routes (indirect through other ASes) and it takes a long time w/BGP to figure out that none work– BGP can try all paths of length 2, then 3, then 4
=> O(n!) steps– even with min-route-adver it still can take O(n)
steps
31Polly Huang, NTU EE
BGP Convergence ExampleR
AS0 AS1
AS2AS3
*B R via 3 B R via 03 B R via 23
*B R via 3 B R via 03 B R via 13
*B R via 3 B R via 13 B R via 23
AS0 AS1 AS2
** **B R via 203
*B R via 013 B R via 103
Polly Huang, NTU EE 32
What about MinRouteAdver?
• BGP has a minimum advertisement interval timer– designed to limit updates
– and to encourage aggregation
• How does it affect convergence?– by delaying announcements, routers figure out the pain
sooner
– see section 5.2
• result: n-3 rounds rather than n!
Polly Huang, NTU EE 33
Does this explain measurements?
• Tup/Tshort converge quickly because they shorten path length and therefore are quickly accepted
• Tdown/Tlong converge slowly because BGP tries hard to find all alternatives– Tlong actually sometimes goes quicker if it’s “n
ot long enough” and can preempt some of the thrashing
Polly Huang, NTU EE 34
Other Observations
• Could do loop detection at sender side and not just receiver side
• xxx
Questions?