Skip to main content
Log in

Modeling and analyzing the convergence property of the BGP routing protocol in SPIN

  • Published:
Telecommunication Systems Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

Notes

  1. 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

  1. 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.

    Article  Google Scholar 

  2. Baier, C., & Katoen, J. P. (2008). Principles of model checking. Cambridge, MA: MIT Press.

    Google Scholar 

  3. Ben-Ari, M. (2008). Principles of the SPIN model checker. Berlin: Springer.

    Google Scholar 

  4. 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.

    Article  Google Scholar 

  5. 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.

    Article  Google Scholar 

  6. 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.

  7. Clarke, E. M., Grumberg, O., & Peled, D. A. (2000). Model Checking. Cambridge, MA: MIT Press.

    Google Scholar 

  8. 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.

    Article  Google Scholar 

  9. 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.

  10. 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.

  11. 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.

    Article  Google Scholar 

  12. 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.

  13. 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.

    Article  Google Scholar 

  14. Holzmann, G. J. (1997). The model checker SPIN. IEEE Transactions on Software Engineering, 23(5), 279–295.

    Article  Google Scholar 

  15. Holzmann, G. J. (1998). An analysis of bitstate hashing. Formal Methods in System Design, 13(3), 289–307.

    Article  Google Scholar 

  16. Holzmann, G. J. (2003). The SPIN model checker: Primer and reference manual. Boston, MA: Addison-Wesley.

    Google Scholar 

  17. 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.

  18. Huth, M., & Ryan, M. (2004). Logic in Computer science: Modelling and reasoning about systems (2nd ed.). Cambridge: Cambridge University Press.

    Book  Google Scholar 

  19. 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.

    Article  Google Scholar 

  20. Myers, G. J. (1979). The art of software testing. Hoboken, NJ: Wiley.

    Google Scholar 

  21. Rekhter, Y., & Li, T. (1995). A Border Gateway Protocol 4 (BGP-4), RFC 1771. IETF.

  22. Rekhter, Y., & Li, T. (2006). A Border Gateway Protocol 4 (BGP-4), RFC 4271. IETF.

  23. 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.

    Article  Google Scholar 

  24. 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.

Download references

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

Authors

Corresponding authors

Correspondence to Zhe Chen or Daqiang Zhang.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11235-014-9870-y

Keywords

Navigation