Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז...
-
Upload
marilyn-foster -
Category
Documents
-
view
221 -
download
5
Transcript of Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז...
![Page 1: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/1.jpg)
Improved BGP convergence via Ghost Flushing
Yehuda Afek
Anat Bremler-Barr Shemer Schwarzd
המרכז הבינתחומי הרצליה
![Page 2: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/2.jpg)
Problem: BGP Convergence
[Labovitz,Ahuja,Bose,Jahanian] BGP may take up to 15 minutes to converge.
Here: Reduce the worst case from minutes to seconds, in a practical way
![Page 3: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/3.jpg)
Problem: BGP Convergence
[Labovitz,Ahuja,Bose,Jahanian] Events Time (sec’s, minRouteAdver=30)
E-Down 30•n n 10,000, up to 15 minutes
E-UpE-Up 30 30•d d d d 30, d=diameter
E-Longer 2•30•l l == path length
E-ShorterE-Shorter 30 30•d d
Here: E-down = l time units (unit = link delay)
E-Longer = 30•d
![Page 4: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/4.jpg)
Agenda
BGP overview The BGP convergence problem Ghost buster rule Ghost flushing rule Simulation results
![Page 5: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/5.jpg)
BGP protocol
Distance (Path) vector protocol
Receive AS-path from the neighbors
Chooses the best one (shortest)
Eliminates Routing loops using the AS-path
Two kinds of messages: Announcements and Withdrawal
![Page 6: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/6.jpg)
Problem: Ghost information
One Ghost (old information) makes many, and in the network it continues recursively
dst
2
1 3
4
dst: 0 dst: 0
dst: 0
0
dst: 0
dst: 0t=0
withdraw
![Page 7: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/7.jpg)
Problem: Ghost information
dst
2
1 3
4
dst: 2 0 dst: 1 0
dst: 1 0
0
dst: 1 0
dst:}{ t=1
annc:2 0
annc:1 0 annc:1 0
annc:1 0
One Ghost (old information) makes many, and in the network it continues recursively
![Page 8: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/8.jpg)
Problem: Ghost information
dst
2
1 3
4
dst:}{ dst: 1 2 0
dst: 1 2 0
0
dst: 3 1 0
dst:}{ t=2
withdraw
One Ghost (old information) makes many, and in the network it continues recursively
![Page 9: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/9.jpg)
Problem: Ghost information
dst
2
1 3
4
dst:}{ dst: 2 1 0
dst: 2 1 0
0
dst: 3 1 0
dst:}{ t=3t=4t=5t=6
One Ghost (old information) makes many, and in the network it continues recursively
minRouteAdver: Wait 30 sec’s before sending the next announcement (BGP)
t=28t=27t=24t=22t=20t=17t=16t=14t=11t=10t=8t=7t=31
annc: 3 1 0 annc: 2 1 0
annc: 2 1 0
![Page 10: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/10.jpg)
E_Down convergence
Time Message
BGP30nnE
In the clique (size 4) example the scenario ends after 62 sec
(= 30(n-2) )
![Page 11: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/11.jpg)
Without MinRouteAdver
Avalanche of Messages O(n!)
Explore all possible paths of length 1, 2
…
dst
2
1 3
4
dst: 0 dst: 0
dst: 0
0
dst: 0
dst:}{
t=0
1 : 1 03 : 3 0 4 : 4 0
1 : 1 02 : 2 0 3 : 3 0 1 : 1 02 : 2 0 4 : 4 0
2 : 2 03 : 3 0 4 : 4 0 withdraw
al
![Page 12: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/12.jpg)
Without MinRouteAdver
dst
2
1 3
4
dst: 2 0 dst: 1 0
dst: 1 0
0
dst: 1 0
dst:}{
t=0.1
1 : 1 03 : 3 0 4 : 4 0
1 : 1 03 : 3 0 4 : 4 0 1 : 1 03 : 3 0 4 : 4 0
2 : 2 03 : 3 0 4 : 4 0
annc: 2 0
annc: 1 0
annc:1 0
annc: 1 0
Avalanche of Messages O(n!)
Explore all possible paths of length 1, 2
…
![Page 13: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/13.jpg)
Without MinRouteAdver
dst
2
1 3
4
dst: 20 dst: 2 0
dst: 2 0
0
dst: 3 0
dst:}{
t=0.2
1 : 1 2 03 : 3 0 4 : 4 0
1 : 1 2 02 : 2 0 3 : 3 0
1 : 1 2 02 : 2 0 4 : 4 0
2 : 2 03 : 3 04 : 4 0
annc: 2 0
annc:3 0
annc:2 0
annc:2 0
Avalanche of Messages O(n!)
Explore all possible paths of length 1, 2
…
![Page 14: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/14.jpg)
Without MinRouteAdver
dst
2
1 3
4
dst: 3 0 dst: 4 0
dst: 3 0
0
dst: 3 0
dst:}{
t=0.3
1 : 1 2 03 : 3 0 4 : 4 0
1 : 1 2 02 : 2 1 0
3 : 3 0
1 : 1 2 02 : 2 1 0
4 : 4 0
2 : 2 3 03 : 3 04 : 4 0
annc:3 0
annc:3 0
annc:4 0
Avalanche of Messages O(n!)
Explore all possible paths of length 2, 3
…
annc:3 0
![Page 15: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/15.jpg)
Without MinRouteAdver
dst
2
1 3
4
dst: 4 0 dst: 4 0
dst: 1 2 0
0
dst: 4 0
dst:}{
t=0.4
1 : 1 2 03 : 3 1 0
4 : 4 0
1 : 1 2 02 : 2 1 0 3 : 3 1 0
1 : 1 2 02 : 2 1 0
4 : 4 0
2 : 2 3 03 : 3 1 0
4 : 4 0
annc:4 0
annc: 1 2 0
annc:4 0
Avalanche of Messages O(n!)
Explore all possible paths of length 2, 3
…
annc:4 0
![Page 16: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/16.jpg)
E_Down convergence
Time Message
BGP with MinRouteAdver
30nnE
BGP without MinRouteAdver
hnh=one link delay
n!E
![Page 17: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/17.jpg)
Related Work
Introducing the problem [Labovitz,Ahuja,Bose,Jahanian], [Labovitz,Wattenhofer,Venkatachary,Ahuja] real life evidence theoretical analysis
Experimental analysis [Griffin,Premore] Solution
Works in Counting to Infinity: Adding states [Garcia-Luna-Aceves] – EIGRP like… Route Poisoning with Hold-down [Cisco:Rutgers]–
IGRP like... Routes consistency [Pei,Zhao,Wang,Massey,Mankin,Wu,Zhang]
![Page 18: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/18.jpg)
Ghost flushing rule
If ASpath to dst is longer and cannot send annoucement (due to minRouteAdver rule ) then send withdrawal
Motivation: Flush the ghost information ASAP
![Page 19: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/19.jpg)
Ghost Flushing example
dst
2
1 3
4
dst: 0 dst: 0
dst: 0
0
dst: 0
dst: 0t=0
withdraw
![Page 20: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/20.jpg)
Ghost Flushing example
dst
2
1 3
4
dst: 2 0 dst: 1 0
dst: 1 0
0
dst: 1 0
dst:}{ t=1
annc:2 0
annc:1 0 annc:1 0
annc:1 0
![Page 21: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/21.jpg)
Ghost Flushing example
dst
2
1 3
4
dst:}{ dst: 1 2 0
dst: 1 2 0
0
dst: 3 1 0
dst:}{ t=2
withdraw
Longer ASpath &minRouteAdver timer Send “flushing” withdrawal
withdraw
withdraw
withdraw
![Page 22: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/22.jpg)
Ghost Flushing example
dst
2
1 3
4
dst:}{ dst:}{
dst:}{
0
dst:}{
dst:}{ t=3
withdraw
withdraw
withdraw
![Page 23: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/23.jpg)
Analysis: Time convergence of ghost flushing rule, E_down
In each time unit (=h, maximum link delay), ghost information is erased to a distance greater by one
After k time units, ghost information ASpath with length < k has disappeared.
Longest Ghost ASpath = n (in theory). Hence (worst case) time convergence: nh
![Page 24: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/24.jpg)
E_Down convergence
Time Message
BGP with MinRouteAdver
30nnE
BGP without MinRouteAdver
hnh=one link delay
n!E
Ghost flushing hn2Ehn/30
![Page 25: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/25.jpg)
Ghost Buster Rule
The convergence time is better than expected !!!!
Explanation: The minRouteAdver blocks the
propagation of ghost information, while the flushing withdrawal “eats” the ghost information.
Bad (wrong) news propagate slowly
![Page 26: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/26.jpg)
Analysis: Ghost buster rule
Add to the ghost flushing rule:
Router sends announcement, only after delta time
MinRouteAdver similar to delta:
Common implementation: MinRouteAdver per peer And, timer almost always on (lots of BGP announcements !)
![Page 27: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/27.jpg)
Analysis: Time convergence of ghost buster rule
The ghost information disappears at time t: d+t/(delta+h) = t/h Every delta+h time the length of the maximum ghost
ASpath is increased by one. Every h time, the length of the minimum ghost ASpath
is increased by one. After the failure the length of the maximum ghost
ASpath is d (diameter). Hence: t = kdh/(k-1) d, where k = (delta+h)/h is the rate of the algorithm
![Page 28: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/28.jpg)
E_Down convergence
TimeMessage
BGP with MinRouteAdver
30nnE
BGP without MinRouteAdver
hnh=one link delay
n!E
Ghost flushing hn2Ehn/30
Ghost flushingWith Ghost buster
kdh/k-1 dhd=diameterk=(delta+h)/h
2Ehkd/30(k-1)
![Page 29: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/29.jpg)
The effect on E_longer
dst
2
1 3
4
0 5
6
7
BGP: Convergence time dominated:
1. Time until ghost information vanishes
2. Time until backup path propagates in
Ghost flushing: helps the first factor
![Page 30: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/30.jpg)
The effect on E_longer
Original BGP may err:
MinRouteAdver peer stores wrong ASPath
BGP may err and send the packet in the wrong direction
Ghost flushing: send withdrawal to a peer. Perhaps by a chance there may be an alternative path there.
![Page 31: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/31.jpg)
Simulation: BGP code
Shortest path metric
Delay on link between 0.2 to 2 sec
MinRouteAdver randomly in 0 to 30 sec
![Page 32: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/32.jpg)
Simulation: Clique E-down
0
100
200
300
400
500
600
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18Number of Nodes
Tim
e
( se
c
)
Original BGP
Modified BGP
![Page 33: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/33.jpg)
Simulation: ISP topology
1
3
7
5
8
4
9
dst
0
20
40
60
80
100
10 20 30 40 50 60 70 80 90 100 110 120
Convergence Time
Pe
rce
nta
ge
0102030405060708090
100
10 20 30 40 50 60 70 80 90 100 110 120
Convergence Time
Pe
rce
nta
ge
![Page 34: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/34.jpg)
Example: Core Internet (ASes)
5.14981106298111111954111121882.5261733920242063610341161550101727112436103143351898175222296310451
Ghost Flushing
BGPIn-degree
Out-degree
![Page 35: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/35.jpg)
E_longer: Convergence Time
dst
2
1 3
4
0 5
6
7
0
100
200
300
400
500
600
10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44
Number Of Nodes
Tim
e
Original BGPModified BGP
![Page 36: Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.](https://reader038.fdocuments.net/reader038/viewer/2022110322/56649d0f5503460f949e5693/html5/thumbnails/36.jpg)
Conclusion
Reduced convergence time from minutes to sec’s.
Does not hurt in other cases
Ghost flushing - no change at BGP messages
Ghost buster solution – a new counting to infinity solution
BGP very sensitive to minor modifications.