From Theory to Practice: Efficiently Checking BGP Configurations for Guaranteed Convergence

Internet Service Providers can enforce a fine-grained control of Interdomain Routing by cleverly configuring the Border Gateway Protocol. However, the price to pay for the flexibility of BGP is the lack of convergence guarantees. The literature on network protocol design introduced several sufficient conditions that routing policies should satisfy to guarantee convergence. However, a methodology to systematically check BGP policies for convergence is still missing. This paper presents two fundamental contributions. First, we describe a heuristic algorithm that statically checks BGP configurations for guaranteed routing convergence. Our algorithm has several highly desirable properties: i) it exceeds state-of-the-art algorithms by correctly reporting more configurations as stable, ii) it can be implemented efficiently enough to analyze Internet-scale configurations, iii) it is free from false positives, namely never reports a potentially oscillating configuration as stable, and iv) it can help spot troublesome points in a detected oscillation. Second, we propose an architecture for a modular tool that exploits our algorithm to process native router configurations and report the presence of potential oscillations. Such a tool can effectively integrate syntactic checkers and assist operators in verifying configurations. We validate our approach using a prototype implementation and show that it scales well enough to enable Internet-scale convergence checks.

[1]  Sanjai Narain,et al.  Using service grammar to diagnose BGP configuration errors , 2003, Sci. Comput. Program..

[2]  Gordon T. Wilfong,et al.  The stable paths problem and interdomain routing , 2002, TNET.

[3]  Lixin Gao,et al.  A measurement study on the impact of routing events on end-to-end internet path performance , 2006, SIGCOMM 2006.

[4]  Nick Feamster,et al.  Some Foundational Problems in Interdomain Routing , 2004 .

[5]  Yakov Rekhter,et al.  A Border Gateway Protocol 4 (BGP-4) , 1994, RFC.

[6]  Michalis Faloutsos,et al.  Analyzing BGP policies: methodology and tool , 2004, IEEE INFOCOM 2004.

[7]  Gordon T. Wilfong,et al.  A safe path vector protocol , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[8]  It Informatics,et al.  Border Gateway Protocol , 2013 .

[9]  Giuseppe Di Battista,et al.  Doing don'ts: Modifying BGP attributes within an autonomous system , 2010, 2010 IEEE Network Operations and Management Symposium - NOMS 2010.

[10]  Nick Feamster,et al.  Detecting BGP configuration faults with static analysis , 2005 .

[11]  Scott Shenker,et al.  Resolving inter-domain policy disputes , 2007, SIGCOMM '07.

[12]  Giuseppe Di Battista,et al.  Visualizing Interdomain Routing with BGPlay , 2005, J. Graph Algorithms Appl..

[13]  Lixin Gao,et al.  Stable Internet routing without global coordination , 2000, SIGMETRICS '00.

[14]  Malin Carlzon,et al.  BGP oscillations when peering with loopback addresses , 2006, 20th International Conference on Advanced Information Networking and Applications - Volume 1 (AINA'06).

[15]  Giuseppe Di Battista,et al.  On the feasibility of static analysis for BGP convergence , 2009, 2009 IFIP/IEEE International Symposium on Integrated Network Management.

[16]  Lixin Gao,et al.  On inferring and characterizing Internet routing policies , 2003, Journal of Communications and Networks.

[17]  Martin Suchara,et al.  BGP safety with spurious updates , 2011, 2011 Proceedings IEEE INFOCOM.

[18]  Srikanth Kandula,et al.  Can you hear me now?!: it must be BGP , 2007, CCRV.

[19]  Olivier Bonaventure,et al.  On BGP communities , 2008, CCRV.

[20]  Matthew Roughan,et al.  Where’s Waldo? practical searches for stability in iBGP , 2008, 2008 IEEE International Conference on Network Protocols.

[21]  Marco Chiesa,et al.  Local transit policies and the complexity of BGP Stability Testing , 2011, 2011 Proceedings IEEE INFOCOM.

[22]  Gordon T. Wilfong,et al.  Policy disputes in path-vector protocols , 1999, Proceedings. Seventh International Conference on Network Protocols.

[23]  Dmitri V. Krioukov,et al.  AS relationships: inference and validation , 2006, CCRV.

[24]  Jennifer Rexford,et al.  Inherently safe backup routing with BGP , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[25]  Timothy G. Griffin,et al.  On the correctness of IBGP configuration , 2002, SIGCOMM.

[26]  Giuseppe Di Battista,et al.  Computing the types of the relationships between autonomous systems , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[27]  Gordon T. Wilfong,et al.  An analysis of BGP convergence properties , 1999, SIGCOMM '99.

[28]  Steve Uhlig,et al.  Modeling the routing of an autonomous system with C-BGP , 2005, IEEE Network.

[29]  Gordon T. Wilfong,et al.  Analysis of the MED oscillation problem in BGP , 2002, 10th IEEE International Conference on Network Protocols, 2002. Proceedings..

[30]  Giuseppe Di Battista,et al.  How to extract BGP peering information from the internet routing registry , 2006, MineNet '06.

[31]  Cengiz Alaettinoglu,et al.  Routing Policy Specification Language (RPSL) , 1998, RFC.

[32]  GaoLixin,et al.  A measurement study on the impact of routing events on end-to-end internet path performance , 2006 .

[33]  Lixin Gao On inferring autonomous system relationships in the internet , 2001, TNET.

[34]  Gordon T. Wilfong,et al.  On the correctness of IBGP configuration , 2002, SIGCOMM.