skip to main content
research-article

Efficient synthesis of network updates

Published:03 June 2015Publication History
Skip Abstract Section

Abstract

Software-defined networking (SDN) is revolutionizing the networking industry, but current SDN programming platforms do not provide automated mechanisms for updating global configurations on the fly. Implementing updates by hand is challenging for SDN programmers because networks are distributed systems with hundreds or thousands of interacting nodes. Even if initial and final configurations are correct, naively updating individual nodes can lead to incorrect transient behaviors, including loops, black holes, and access control violations. This paper presents an approach for automatically synthesizing updates that are guaranteed to preserve specified properties. We formalize network updates as a distributed programming problem and develop a synthesis algorithm based on counterexample-guided search and incremental model checking. We describe a prototype implementation, and present results from experiments on real-world topologies and properties demonstrating that our tool scales to updates involving over one-thousand nodes.

References

  1. M. Al-Fares, A. Loukissas, and A. Vahdat. A Scalable, Commodity Data Center Network Architecture. In SIGCOMM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. E. Al-Shaer and S. Al-Haj. FlowChecker: Configuration Analysis and Verification of Federated OpenFlow Infrastructures. In SafeConfig, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Alizadeh, A. Greenberg, D. Maltz, J. Padhye, P. Patel, B. Prabhakar, S. Sengupta, and M. Sridharan. Data Center TCP (DCTCP). In SIGCOMM, pages 63–74, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. G. Berry and G. Boudol. The Chemical Abstract Machine. In POPL, pages 81–94, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. Bradley. SAT-Based Model Checking without Unrolling. In VMCAI, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. Casado, N. Foster, and A. Guha. Abstractions for Software-Defined Networks. CACM, 57(10):86–95, Oct. 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. Chockler, A. Ivrii, A. Matsliah, S. Moran, and Z. Nevo. Incremental Formal Verification of Hardware. In FMCAD, pages 135–143, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. N. Foster, R. Harrison, M. Freedman, C. Monsanto, J. Rexford, A. Story, and D. Walker. Frenetic: A Network Programming Language. In ICFP, pages 279–291, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. P. Francois and O. Bonaventure. Avoiding Transient Loops during the Convergence of Link-state Routing Protocols. IEEE/ACM Transactions on Networking, 15(6):1280–1292, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. P. Francois, O. Bonaventure, B. Decraene, and P.-A. Coste. Avoiding Disruptions during Maintenance Operations on BGP Sessions. IEEE Transactions on Network and Service Management, 4(3):1–11, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. A. Guha, M. Reitblatt, and N. Foster. Machine-Verified Network Controllers. In PLDI, June 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Hawkins, A. Aiken, K. Fisher, M. Rinard, and M. Sagiv. Concurrent Data Representation Synthesis. In PLDI, pages 417–428, June 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. C.-Y. Hong, S. Kandula, R. Mahajan, M. Zhang, V. Gill, M. Nanduri, and R. Wattenhofer. Achieving High Utilization with Software-Driven WAN. In SIGCOMM, pages 15–26, Aug. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. S. Jain, A. Kumar, S. Mandal, J. Ong, L. Poutievski, A. Singh, S. Venkata, J. Wanderer, J. Zhou, M. Zhu, J. Zolla, U. Hölzle, S. Stuart, and A. Vahdat. B4: Experience with a Globally-deployed Software Defined WAN. In SIGCOMM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. X. Jin, H. Liu, R. Gandhi, S. Kandula, R. Mahajan, M. Zhang, J. Rexford, and R. Wattenhofer. Dynamic Scheduling of Network Updates. In SIGCOMM, pages 539–550, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. J. P. John, E. Katz-Bassett, A. Krishnamurthy, T. Anderson, and A. Venkataramani. Consensus Routing: The Internet as a Distributed System. In NSDI, pages 351–364, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. N. P. Katta, J. Rexford, and D. Walker. Incremental Consistent Updates. In HotSDN, pages 49–54. ACM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. P. Kazemian, G. Varghese, and N. McKeown. Header Space Analysis: Static Checking for Networks. In NSDI, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. P. Kazemian, M. Chang, H. Zeng, G. Varghese, N. McKeown, and S. Whyte. Real Time Network Policy Checking Using Header Space Analysis. NSDI, pages 99–112, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. A. Khurshid, W. Zhou, M. Caesar, and P. Godfrey. VeriFlow: Verifying Network-wide Invariants in Real Time. ACM SIGCOMM CCR, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. S. Knight, H. Nguyen, N. Falkner, R. Bowden, and M. Roughan. The Internet Topology Zoo. IEEE Journal on Selected Areas in Communications, 29(9):1765–1775, Oct. 2011.Google ScholarGoogle ScholarCross RefCross Ref
  22. A. Lazaris, D. Tahara, X. Huang, L. Li, A. Voellmy, Y. Yang, and M. Yu. Tango: Simplifying SDN Programming with Automatic Switch Behavior Inference, Abstraction, and Optimization. 2014.Google ScholarGoogle Scholar
  23. H. H. Liu, X. Wu, M. Zhang, L. Yuan, R. Wattenhofer, and D. Maltz. zUpdate: Updating Data Center Networks with Zero Loss. In SIGCOMM, pages 411–422. ACM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. A. Ludwig, M. Rost, D. Foucard, and S. Schmid. Good Network Updates for Bad Packets: Waypoint Enforcement Beyond Destination-Based Routing Policies. In HotNets, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. R. Mahajan and R. Wattenhofer. On Consistent Updates in Software Defined Networks. In SIGCOMM, Nov. 2013.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. H. Mai, A. Khurshid, R. Agarwal, M. Caesar, P. Godfrey, and S. T. King. Debugging the Data Plane with Anteater. In SIGCOMM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. R. Majumdar, S. Tetali, and Z. Wang. Kuai: A Model Checker for Software-defined Networks. In FMCAD, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner. OpenFlow: Enabling Innovation in Campus Networks. ACM SIGCOMM CCR, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. M. E. Newman, S. H. Strogatz, and D. J. Watts. Random Graphs with Arbitrary Degree Distributions and their Applications. 2001.Google ScholarGoogle ScholarCross RefCross Ref
  30. A. Noyes, T. Warszawski, and N. Foster. Toward Synthesis of Network Updates. In SYNT, July 2013.Google ScholarGoogle Scholar
  31. Open Networking Foundation. OpenFlow 1.4 Specification, 2013.Google ScholarGoogle Scholar
  32. S. Raza, Y. Zhu, and C.-N. Chuah. Graceful Network State Migrations. IEEE/ACM Transactions on Networking, 19(4):1097–1110, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. M. Reitblatt, N. Foster, J. Rexford, C. Schlesinger, and D. Walker. Abstractions for Network Update. In SIGCOMM, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. O. Sokolsky and S. Smolka. Incremental Model Checking in the Modal Mu-Calculus. In CAV, pages 351–363, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. A. Solar-Lezama, C. G. Jones, and R. Bodik. Sketching Concurrent Data Structures. In PLDI, pages 136–148, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. L. Vanbever, S. Vissicchio, C. Pelsser, P. Francois, and O. Bonaventure. Seamless Network-wide IGP Migrations. In SIGCOMM, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. M. Y. Vardi and P. Wolper. An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report). In LICS, 1986.Google ScholarGoogle Scholar
  38. M. Vechev, E. Yahav, and G. Yorsh. Abstraction-guided Synthesis of Synchronization. In POPL, pages 327–338, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. P. Wolper, M. Y. Vardi, and A. P. Sistla. Reasoning about Infinite Computation Paths (Extended Abstract). In FOCS, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. W. Zhou, D. Jin, J. Croft, M. Caesar, and B. Godfrey. Enforcing Generalized Consistency Properties in Software-Defined Networks. In NSDI, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Efficient synthesis of network updates

                  Recommendations

                  Comments

                  Login options

                  Check if you have access through your login credentials or your institution to get full access on this article.

                  Sign in

                  Full Access

                  • Published in

                    cover image ACM SIGPLAN Notices
                    ACM SIGPLAN Notices  Volume 50, Issue 6
                    PLDI '15
                    June 2015
                    630 pages
                    ISSN:0362-1340
                    EISSN:1558-1160
                    DOI:10.1145/2813885
                    • Editor:
                    • Andy Gill
                    Issue’s Table of Contents
                    • cover image ACM Conferences
                      PLDI '15: Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation
                      June 2015
                      630 pages
                      ISBN:9781450334686
                      DOI:10.1145/2737924

                    Copyright © 2015 ACM

                    Publisher

                    Association for Computing Machinery

                    New York, NY, United States

                    Publication History

                    • Published: 3 June 2015

                    Check for updates

                    Qualifiers

                    • research-article

                  PDF Format

                  View or Download as a PDF file.

                  PDF

                  eReader

                  View online with eReader.

                  eReader
                  About Cookies On This Site

                  We use cookies to ensure that we give you the best experience on our website.

                  Learn more

                  Got it!