Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה.

Slides:



Advertisements
Similar presentations
Distance Vector Routing Protocols
Advertisements

The Impact of Policy and Topology on Internet Routing Convergence NANOG 20 October 23, 2000 Abha Ahuja InterNap *In collaboration with.
Chapter 4 Distributed Bellman-Ford Routing
Delayed Internet Routing Convergence due to Flap Dampening Z. Morley Mao Ramesh Govindan, Randy Katz, George Varghese
Advanced Networks 1. Delayed Internet Routing Convergence 2. The Impact of Internet Policy and Topology on Delayed Routing Convergence.
Delayed Internet Routing Convergence Craig Labovitz, Microsoft Research Abha Ahuja, University of Michigan Farnam Jahanian, University of Michigan Abhit.
Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
Copyright 2008 Kenneth M. Chipps Ph.D. Cisco CCNA Exploration CCNA 2 Routing Protocols and Concepts Chapter 4 Distance Vector Routing Protocols.
IP Routing.
Copyright 2002 Year 2 - Chapter 5/Cisco 3 - Module 5 Routing Protocols: IGRP By Carl Marandola.
Courtesy: Nick McKeown, Stanford
© 2007 Cisco Systems, Inc. All rights reserved.ICND2 v1.0—3-1 Medium-Sized Routed Network Construction Reviewing Routing Operations.
1 LINK STATE PROTOCOLS (contents) Disadvantages of the distance vector protocols Link state protocols Why is a link state protocol better?
Chapter 5 IP Routing Routing Sending packets through network from one device to another What must routers know? – Destination address – Neighboring routers.
1 An Experimental Analysis of BGP Convergence Time Timothy Griffin AT&T Research & Brian Premore Dartmouth College.
Improving BGP Convergence Through Consistency Assertions Dan Pei, Lan Wang, Lixia Zhang UCLA Xiaoliang Zhao, Daniel Massey, Allison Mankin, USC/ISI S.
Delayed Internet Routing Convergence Craig Labovitz, Abha Ahuja, Abhijit Bose, Farham Jahanian Presented By Harpal Singh Bassali.
Dynamics of Hot-Potato Routing in IP Networks Renata Teixeira (UC San Diego) with Aman Shaikh (AT&T), Tim Griffin(Intel),
Network Layer Design Isues Store-and-Forward Packet Switching Services Provided to the Transport Layer The service should be independent of the router.
RD-CSY /09 Distance Vector Routing Protocols.
04/05/20011 ecs298k: Routing in General... lecture #2 Dr. S. Felix Wu Computer Science Department University of California, Davis
CSE 461: Distance Vector Routing. Next Topic  Focus  How do we calculate routes for packets?  Routing is a network layer function  Routing Algorithms.
1 Computer Networks Routing Algorithms. 2 IP Packet Delivery Two Processes are required to accomplish IP packet delivery: –Routing discovering and selecting.
© 2006 Cisco Systems, Inc. All rights reserved. ICND v2.3—3-1 Determining IP Routes Introducing Distance Vector Routing.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Distance Vector Routing Protocols Routing Protocols and Concepts –
Chapter 22 Network Layer: Delivery, Forwarding, and Routing.
Computer Networks Layering and Routing Dina Katabi
Distance Vector Routing Protocols Distance Vector Routing.
Routing Algorithms (Ch5 of Computer Network by A. Tanenbaum)
Routing Concepts Warren Toomey GCIT. Introduction Switches need to know the link address and location of every station. Doesn't scale well, e.g. to several.
1 11-Sep-15 S Ward Abingdon and Witney College Link State CCNA Exploration Semester 2 Chapter 10.
Introduction to Routing and Routing Protocols By Ashar Anwar.
Distance Vector Routing Protocols W.lilakiatsakun.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Dynamic Routing Protocols  Function(s) of Dynamic Routing Protocols: – Dynamically share information between routers (Discover remote networks). – Automatically.
Distance Vector Routing Protocols
1 13-Sep-15 S Ward Abingdon and Witney College Routing loops And other problems CCNA 2 Chapter 4.
M. Menelaou CCNA2 DYNAMIC ROUTING. M. Menelaou DYNAMIC ROUTING Dynamic routing protocols can help simplify the life of a network administrator Routing.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 2 Module 7 Distance Vector Routing Protocols.
Routing/Routed Protocols. Remember: A Routed Protocol – defines logical addressing. Most notable example on the test – IP A Routing Protocol – fills the.
1 Routing Protocols and Configuration Instructor: Te-Lung Liu Program Associate Researcher NCHC, South Region Office.
Count to infinity problem
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
Link-state routing  each node knows network topology and cost of each link  quasi-centralized: each router periodically broadcasts costs of attached.
1 3-Oct-15 Distance Vector Routing CCNA Exploration Semester 2 Chapter 4.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
Static versus Dynamic Routes Static Route Uses a protocol route that a network administrators enters into the router Static Route Uses a protocol route.
More on Internet Routing A large portion of this lecture material comes from BGP tutorial given by Philip Smith from Cisco (ftp://ftp- eng.cisco.com/pfs/seminars/APRICOT2004.
A Measurement Study on the Impact of Routing Events on End-to-End Internet Path Performance Feng Wang 1, Zhuoqing Morley Mao 2 Jia Wang 3, Lixin Gao 1,
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_a Routing Protocols: RIP, OSPF, BGP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 2 v3.1 Module 7 Distance Vector Routing Protocols.
Distance Vector Routing Protocols Dynamic Routing.
1 1-Dec-15 S Ward Abingdon and Witney College Distance Vector Routing CCNA Exploration Semester 2 Chapter 4.
Internet Routing r Routing algorithms m Link state m Distance Vector m Hierarchical routing r Routing protocols m RIP m OSPF m BGP.
The Impact of Internet Policy and Topology on Delayed Routing Convergence.
Distance Vector Routing
Year 2 - Chapter 5/Cisco 3 - Module 5 Routing Protocols: IGRP.
Dynamic Routing Protocols part2
Abha Ahuja InterNap Craig Labovitz Microsoft Research
Routing Loops.
CCNA 2 v3.1 Module 7 Distance Vector Routing Protocols
Routing: Distance Vector Algorithm
Dynamic Routing Protocols part2
CHAPTER 10.
RFC 1058 & RFC 2453 Routing Information Protocol
CCNA2 chap4 routing loops.ppt And other problems CCNA 2 Chapter 4
COS 461: Computer Networks
Distance Vector Routing Protocols
Distance Vector Routing
Computer Networks Protocols
Presentation transcript:

Improved BGP convergence via Ghost Flushing Yehuda Afek Anat Bremler-Barr Shemer Schwarzd המרכז הבינתחומי הרצליה

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

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-Up 30d d E-Up 30 d d  30, d=diameter E-Longer 2 30 l l == path length E-Shorter 30d E-Shorter 30 d Here: E-down = l time units (unit = link delay) E-Longer = 30 d

Agenda BGP overview The BGP convergence problem Ghost buster rule Ghost flushing rule Simulation results

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

Problem: Ghost information One Ghost (old information) makes many, and in the network it continues recursively dst dst: 0 0 t=0 withdraw

Problem: Ghost information dst dst: 2 0 dst: dst: {} t=1 annc:2 0 annc:1 0 One Ghost (old information) makes many, and in the network it continues recursively

Problem: Ghost information dst dst: {} dst: dst: dst: {} t=2 withdraw One Ghost (old information) makes many, and in the network it continues recursively

MinRouteAdver Effect MinRouteAdver – wait 30 sec ’ s before sending an announcement again Applies to announcements only, not on withdrawals Motivation to reduce messages

Problem: Ghost information dst dst: {} dst: dst: 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: annc: 2 1 0

Problem: MinRouteAdver Effect MinRouteAdver – delays the elimination of ghost information dst dst: {} dst: dst: dst: {} t=31 annc: annc: 2 1 0

E_Down convergence MessageTime nE30nBGP In the clique (size 4) example the scenario ends after 62 sec (= 30(n-2) )

Without MinRouteAdver Avalanche of Messages O(n!) Explore all possible paths of length 1, 2 … dst dst: 0 0 dst: {} t=0 1 : : : : : : : : : : : : 4 0 withdrawal

Without MinRouteAdver dst dst: 2 0 dst: dst: {} t=0.1 1 : : : : : : : : : : : : 4 0 annc: 2 0 annc: 1 0 Avalanche of Messages O(n!) Explore all possible paths of length 1, 2 …

Without MinRouteAdver dst dst: 20 0 dst: 3 0 dst: {} t=0.2 1 : : : : : : : : : : : : 4 0 annc: 2 0 annc:3 0 annc:2 0 Avalanche of Messages O(n!) Explore all possible paths of length 1, 2 …

Without MinRouteAdver dst dst: 3 0 dst: 4 0 dst: dst: {} t=0.3 1 : : : : : : : : : : : : 4 0 annc:3 0 annc:4 0 Avalanche of Messages O(n!) Explore all possible paths of length 2, 3 … annc:3 0

Without MinRouteAdver dst dst: 4 0 dst: dst: 4 0 dst: {} t=0.4 1 : : : : : : : : : : : : 4 0 annc:4 0 annc: annc:4 0 Avalanche of Messages O(n!) Explore all possible paths of length 2, 3 … annc:4 0

E_Down convergence MessageTime nE30nBGP with MinRouteAdver n!Ehn h=one link delay BGP without MinRouteAdver

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]

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

Ghost Flushing example dst dst: 0 0 t=0 withdraw

Ghost Flushing example dst dst: 2 0 dst: dst: {} t=1 annc:2 0 annc:1 0

Ghost Flushing example dst dst: {} dst: dst: dst: {} t=2 withdraw 2,3,4 send “ flushing ” withdrawal: since their ASpath is changed and minRouteAdver timer did not elapsed. withdraw

Ghost Flushing example dst dst: {} dst: dst: dst: {} t=2 withdraw Longer ASpath & minRouteAdver timer  Send “ flushing ” withdrawal withdraw

Ghost Flushing example dst dst: {} 0 t=3 withdraw

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

E_Down convergence MessageTime nE30nBGP with MinRouteAdver n!Ehn h=one link delay BGP without MinRouteAdver 2Ehn/30hnGhost flushing

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

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 !)

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

E_Down convergence MessageTime nE30nBGP with MinRouteAdver n!Ehn h=one link delay BGP without MinRouteAdver 2Ehn/30hnGhost flushing 2Ehkd/30(k-1) kdh/k-1  dh d=diameter k=(delta+h)/h Ghost flushing With Ghost buster

The effect on E_longer dst BGP: Convergence time dominated: 1. Time until ghost information vanishes 2. Time until backup path propagates in Ghost flushing: helps the first factor

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.

Simulation: BGP code Shortest path metric Delay on link between 0.2 to 2 sec MinRouteAdver randomly in 0 to 30 sec

Simulation: Clique E-down

Simulation: ISP topology dst

Example: Core Internet (ASes) Ghost Flushing BGPIn-degreeOut-degree

E_longer: Convergence Time dst

E_longer: ISP Topology

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.