stable path problem presented by: sangeetha a. j. based on the stable path problem and interdomain...
TRANSCRIPT
STABLE PATH PROBLEM
Presented by:Sangeetha A. J.
Based on The Stable Path Problem and Interdomain Routing Timothy G. Griffin, Bruce Shepherd, Gordon Wilfong
2
OverviewBGP basics
Simple Path Vector Protocol
Stable Path Problem
Dispute Wheels
3
Border Gateway ProtocolThe only interdomain routing protocol used in
the internet today.
Not based on shortest path.
Path vector protocol.
4
How is BGP different from shortest path algorithms?Policy based metrics
Independent routing policies at each AS
These policies could be conflicting
BGP can be considered a distributed algorithm to solve the Stable Path Problem.
5
BGP route selection
Order of preference
1. Highest local preference
2. Shortest AS path
3. Lowest IP address for next hop
6
Peering transformationComposition of three transformations
1. Export policies
r1 = export (u w, r)
2. Path vector transformation r2 = PVT (u w, r1)
3. Import policies
r3 = import (u w, r2)
7
Peering transformationpt (u w, r) =
import (u w, PVT(u w, export(u w, r)))
Suppose u0 is originating AS
P = uk uk-1 …..u1 u0
Route record received is
pt( uk uk-1, pt( uk-1
uk-2, ……..pt ( u1 u0 )))..))
Ranking function λ uk (P)
8
Simple Path Vector Protocolprocess spvp(u)
{
receive P from w
{
rib-in(uw) := P
if rib(u) != best(u)
{
rib(u) := best(u)
for each v in peers(u)
{
send rib(u) to v
}
}
}
}
9
Stable path problemMathematical formulation that captures the
semantics of any path vector protocol.
Does every node have a stable route to one destination node?
Node 0 is assumed to be origin or destination of all routes.
10
SHORTEST - 1
1
3
4
2
0
10130
20210
430420
30
11
SHORTEST 1- Path assignment
NodeTime
1 2 3 4
1 10 20 30 -
2 10 20 30 430
12
SHORTEST 1
1
3
4
2
0
10130
20210
430420
30
13
Stable path problemUndirected graph G = (V, E) V- set of nodes , E - set of edges
Path is either empty path or a sequence of nodes
(vk vk -1…..v1 v0 )
Pv - set of permitted paths from v to origin
If P1 , P2 ϵ Pv and λ v (P1) < λ v (P2)
then P2 is preferred over P1.
14
Stable path problemAn instance of stable path problem, S = (G,P,Λ) Graph together with permitted paths and ranking function for each
node.
Some propertiesP0 = {(0)} for all v ϵ V – {0}
◦ ϵ ϵ Pv (null path is always present in the set)
◦ λ v (ϵ) =0 , λ v (P) > 0 for P ≠ ϵ (null path has lowest preference)
◦ P ϵ Pv then P is a simple path (no repeated nodes).
15
Stable path problemA path assignment is a function π function that maps a
node to a permitted path.
π(u) ϵ Pu
All possible permitted paths at u , choices (π, u) =
{ (u v) π(v) | {u,v} ϵ E } ∩ Pu (u ≠ 0)
{ (0)} otherwise
16
Stable path problemW is subset of Pu such that each path in W has a distinct
next hop.
Best path in W, best(W, u)
{P ϵ W with maximal λ u (P) W ≠ Φ
ϵ otherwise }
Path assignment π is stable at node u if
π(u) = best (choices (π, u) ,u)
17
Stable path problemπ is stable, if it is stable at each node u
Path assignment vector (P1 , P2 ,….., Pn ) where π(u)=Pu
If π is stable and π(u)= (u w) P, then π(w)= P.
Thus stable path implies tree rooted at the origin.
The stable path problem, S = (G,P,Λ) is solvable if there is a stable path assignment for S.
18
SHORTEST 2
1
3
4
2
0
10130
20210
420430
30
19
SHORTEST 2
1
3
4
2
0
10130
20210
420430
30
20
Good Gadget
1
3
4
2
0
13010
21020
430420
30
21
Good Gadget
NodeTime
1 2 3 4
1 10 20 30 -
2 130 210 30 430
3 130 20 30 430
22
Good Gadget
1
3
4
2
0
13010
21020
430420
30
23
Bad Gadget
1
3
4
2
0
13010
21020
420430
342030
24
Bad Gadget NodeTime
1 2 3 4
1 10 20 30 -
2 130 210 30 420
3 130 20 3420 430
4 10 20 30 420
5 130 210 30 420
25
Naughty Gadget
1
3
4
2
0
13010
21020
430420
342030
26
Naughty Gadget NodeTime
1 2 3 4
1 10 20 30 -
2 130 210 30 420
3 130 20 3420 430
4 10 20 30 420
5 130 210 3420 430
6 10 20 30 -
27
Multiple solutions possible
1
1 2
2
0
12010
21020
00
1 2
28
Observations about SPPA stable path problem is safe if SPVP always converges.
SPP solvability does not imply safety.◦ Naughty gadget has single solution but SPVP may diverge.
Oscillations are possible.
It always diverges if there is no solution.
Multiple stable solutions are possible for a SPP.
29
Dispute WheelsA sequence of nodes , ui
.
A sequence of non-empty paths, Qi and Ri.
u i+1
u1
u2
u i
u k-1
u0
v
Qi
R1
R i
R k-1
Q0
Q1
Q2
R0
Qi+1
Qk-1
30
Dispute Wheels A circular set of dependencies between routing policies that
cannot be simultaneously satisfied.
Ri is a path from ui to ui+1
Qi ϵ Pui
Ri Qi+1 ϵ Pui
λ ui (Qi) < λ ui (Ri Qi+1 )
Preferred path for every node goes around the wheel instead of following the spoke.
31
Dispute Wheel of Bad Gadget
1
3
4
2
0
13010
21020
420430
342030
R0
R1
R2
Q0 Q2
Q1
u0u2
u1
32
Dispute Wheel of Naughty Gadget
3 420
4304203420
30
R0
R1
Q0
Q1
u0u1
33
Properties of dispute wheel
No dispute wheel implies
Solvability
Unique solution
Safety
Robustness
34
Dispute wheel Construct a sequence of subsets of V, V0 , V1…
Corresponding path assignments π0, π1….
Direct path P = (u1 u2) P2 P2= π(u2)
Add nodes to the set, if its highest rank consistent with πi is direct path.
If you are unable to find nodes whose paths are consistent with existing path assignments, you get a dispute wheel.
35
Good Gadget
1
3
4
2
0
13010
21020
430420
30
36
Good Gadget
NodeTime
0 1 2 3 4
1 (0) - - - -
2 (0) - - 30 -
3 (0) 130 - 30 430
4 (0) 130 210 30 430
37
Bad Gadget
1
3
4
2
0
13010
21020
420430
342030
38
Bad Gadget
NodeTime
0 1 2 3 4
1 (0) - - - -
39
Solvability
Q0
R0
v1
u0u1
R1
u2
40
Unique solution
u0
R0
u1
R1
u2u3R2
R3
41
Robustness If stable path problem, S, has no dispute wheel then S is
robust.
S is fragile if S is solvable but there exist some E’ (subset of E) such that S/E’ is not solvable.
42
Bad Backup- Fragile
1
3
4
2
0
13010
21020
40420430
342030
43
ConclusionA network with unique solution can have a dispute
wheel, if transient oscillations are present. This is a rigid condition.
Even in networks with multiple stable states, we get dispute wheels.
44
Complementary approachesOperational guidelines
Static analysis of routing policies
Dynamic detection
45
THANK YOU