Abstract
The Border Gateway Protocol (BGP) is an interdomain routing protocol such that each autonomous system can independently formulate its routing policies. However, BGP does not always converge, because its routing policies may conflict and cause BGP to diverge, and result in persistent route oscillations. In this paper, we present an automated tool for verifying the convergence property of BGP by using the SPIN model checker. We have developed a SPIN library specifying a path vector protocol with a set of unspecified routing policies, and methods to instantiate the library to a specific BGP instance. The user only needs to provide models of network topology and customized routing policies, then SPIN can simulate the executions of the BGP instance, as well as automatically verify the protocol by exhaustively exploring all possible executions to detect possible divergences. The effectiveness of our library is demonstrated by experiments and verification results.
Similar content being viewed by others
Notes
A state space is a directed graph where each possible state of a dynamical system is represented by a vertex, and there is a directed edge if and only if there is a state transition from one state to another. In words, the state space consists of all the states generated in verification. The state space explosion problem is the fact that the state space grows exponentially in the number of processes, resulting in an intractable size.
References
Abbas, C. J. B., González, R., Cardenas, N., & García-Villalba, L. J. (2008). A proposal of a wireless sensor network routing protocol. Telecommunication Systems, 38(1–2), 61–68.
Baier, C., & Katoen, J. P. (2008). Principles of model checking. Cambridge, MA: MIT Press.
Ben-Ari, M. (2008). Principles of the SPIN model checker. Berlin: Springer.
Chen, Y. S., Liao, Y. J., Lin, Y. W., & Chiu, G. M. (2009). Hve-mobicast: A hierarchical-variant-egg-based mobicast routing protocol for wireless sensornets. Telecommunication Systems, 41(2), 121–140.
Chen, Y. S., Lin, Y. W., & Pan, C. Y. (2011). Dir: Diagonal-intersection-based routing protocol for vehicular ad hoc networks. Telecommunication Systems, 46(4), 299–316.
Chen, Z., Motet, G. (2010). Nevertrace claims for model checking. In Proceedings of the 17th International SPIN Workshop on Model Checking of Software (SPIN 2010), Lecture Notes in Computer Science, (vol. 6349, pp. 162–179). Berlin: Springer.
Clarke, E. M., Grumberg, O., & Peled, D. A. (2000). Model Checking. Cambridge, MA: MIT Press.
Courcoubetis, C., Vardi, M. Y., Wolper, P., & Yannakakis, M. (1992). Memory-efficient algorithms for the verification of temporal properties. Formal Methods in System Design, 1(2/3), 275–288.
Gastin, P., Oddoux, D. (2001). Fast LTL to Büchi automata translation. In Proceedings of the 13th International Conference on Computer Aided Verification (CAV’01), Lecture Notes in Computer Science, (vol. 2102, pp. 53–65). Berlin: Springer.
Gerth, R., Peled, D., Vardi, M. Y., & Wolper, P. (1995). Simple on-the-fly automatic verification of linear temporal logic. In P. Dembinski & M. Sredniawa (Eds.), Proceedings of the 15th IFIP WG6.1 International Symposium on Protocol Specification, Testing and Verification (pp. 3–18). London: Chapman & Hall.
Griffin, T., Shepherd, F. B., & Wilfong, G. T. (2002). The stable paths problem and interdomain routing. IEEE/ACM Transactions on Networking (TON), 10(2), 232–243.
Griffin, T., & Wilfong, G.T. (1999). An analysis of bgp convergence properties. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM 1999), pp. 277–288.
Herrmann, P., Krumm, H., Drögehorn, O., & Geisselhardt, W. (2002). Framework and tool support for formal verification of highspeed transfer protocol designs. Telecommunication Systems, 20(3–4), 291–310.
Holzmann, G. J. (1997). The model checker SPIN. IEEE Transactions on Software Engineering, 23(5), 279–295.
Holzmann, G. J. (1998). An analysis of bitstate hashing. Formal Methods in System Design, 13(3), 289–307.
Holzmann, G. J. (2003). The SPIN model checker: Primer and reference manual. Boston, MA: Addison-Wesley.
Huadmai, C. (2011). Verification of routing policies by using model checking technique. In Proceedings of the IEEE 6th International Conference on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications (IDAACS 2011), (vol. 2, pp. 711–716). IEEE.
Huth, M., & Ryan, M. (2004). Logic in Computer science: Modelling and reasoning about systems (2nd ed.). Cambridge: Cambridge University Press.
Kettaf, N., Abouaissa, A., Duong, T. V., & Lorenz, P. (2006). An efficient QoS routing algorithm for solving MCP in ad hoc networks. Telecommunication Systems, 33(1–3), 255–267.
Myers, G. J. (1979). The art of software testing. Hoboken, NJ: Wiley.
Rekhter, Y., & Li, T. (1995). A Border Gateway Protocol 4 (BGP-4), RFC 1771. IETF.
Rekhter, Y., & Li, T. (2006). A Border Gateway Protocol 4 (BGP-4), RFC 4271. IETF.
Secci, S., Rougier, J. L., Pattavina, A., Patrone, F., & Maier, G. (2011). Multi-exit discriminator game for BGP routing coordination. Telecommunication Systems, 48(1–2), 77–92.
Wang, A., Talcott, C. L., Jia, L., Loo, B. T., & Scedrov, A. (2011). Analyzing bgp instances in maude. In R. Bruni & J. Dingel (Eds.), Proceedings of the 31st IFIP WG 6.1 International Conference on Formal Techniques for Distributed Systems (FMOODS/FORTE 2011), Lecture Notes in Computer Science (vol. 6722, pp. 334–348). Berlin: Springer.
Acknowledgments
This work was supported by the National Natural Science Foundation of China (Grants 61100034, 61170043, 61103185), the China Postdoctoral Science Foundation (20110491411, 2012T50498), the Jiangsu Planned Projects for Postdoctoral Research Funds (1101092C), the Scientific Research Foundation for the Returned Overseas Chinese Scholars of State Education Ministry (2013), the Fundamental Research Funds for the Central Universities (NZ2013306), the Start-up Foundation of Nanjing Normal University (2011119XGQ0072), the Natural Science Foundation of the Higher Education Institutions of Jiangsu Province (11KJB520009), and the Major Program of Natural Science Foundation of Jiangsu Province (BK211005).
Author information
Authors and Affiliations
Corresponding authors
Rights and permissions
About this article
Cite this article
Chen, Z., Zhang, D. & Ma, Y. Modeling and analyzing the convergence property of the BGP routing protocol in SPIN. Telecommun Syst 58, 205–217 (2015). https://doi.org/10.1007/s11235-014-9870-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11235-014-9870-y