skip to main content
research-article
Public Access

Genesis: synthesizing forwarding tables in multi-tenant networks

Published:01 January 2017Publication History
Skip Abstract Section

Abstract

Operators in multi-tenant cloud datacenters require support for diverse and complex end-to-end policies, such as, reachability, middlebox traversals, isolation, traffic engineering, and network resource management. We present Genesis, a datacenter network management system which allows policies to be specified in a declarative manner without explicitly programming the network data plane. Genesis tackles the problem of enforcing policies by synthesizing switch forwarding tables. It uses the formal foundations of constraint solving in combination with fast off-the-shelf SMT solvers. To improve synthesis performance, Genesis incorporates a novel search strategy that uses regular expressions to specify properties that leverage the structure of datacenter networks, and a divide-and-conquer synthesis procedure which exploits the structure of policy relationships. We have prototyped Genesis, and conducted experiments with a variety of workloads on real-world topologies to demonstrate its performance.

References

  1. Floodlight sdn controller. http://www.projectfloodlight. org/floodlight/.Google ScholarGoogle Scholar
  2. Intent: Don’t tell me what to do! (tell me what you want). https: //www.sdxcentral.com/articles/contributed/ network-intent-summit-perspective-david-lenrow/ 2015/02/.Google ScholarGoogle Scholar
  3. Python lex-yacc. http://www.dabeaz.com/ply/.Google ScholarGoogle Scholar
  4. M. Al-Fares, A. Loukissas, and A. Vahdat. A scalable, commodity data center network architecture. In Proceedings of the ACM SIGCOMM 2008 Conference on Data Communication, SIGCOMM ’08, pages 63–74, New York, NY, USA, 2008. ACM. ISBN 978-1-60558-175-0. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. C. J. Anderson, N. Foster, A. Guha, J.-B. Jeannin, D. Kozen, C. Schlesinger, and D. Walker. Netkat: Semantic foundations for networks. In Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’14, pages 113–126, New York, NY, USA, 2014. ACM. ISBN 978-1-4503-2544-8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. T. Benson, A. Akella, and D. Maltz. Unraveling the complexity of network management. In Proceedings of the 6th USENIX Symposium on Networked Systems Design and Implementation, NSDI’09, pages 335– 348, Berkeley, CA, USA, 2009. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. N. Bjorner and A.-D. Phan. νz - maximal satisfaction with z3. In T. Kutsia and A. Voronkov, editors, SCSS 2014. 6th International Symposium on Symbolic Computation in Software Science, volume 30 of EPiC Series in Computer Science, pages 1–9. EasyChair, 2014.Google ScholarGoogle Scholar
  8. M. Chiesa, A. Gurtov, A. Madry, S. Mitrovic, I. Nikolaevskiy, M. Shapira, and S. Shenker. On the Resiliency of Randomized Routing Against Multiple Edge Failures. In 43rd International Colloquium on Automata, Languages, and Programming (ICALP 2016), volume 55 of Leibniz International Proceedings in Informatics (LIPIcs), pages 134:1–134:15, Dagstuhl, Germany, 2016. Schloss Dagstuhl– Leibniz-Zentrum fuer Informatik. ISBN 978-3-95977-013-2.Google ScholarGoogle Scholar
  9. A. Cimatti, A. Griggio, and R. Sebastiani. Computing small unsatisfiable cores in satisfiability modulo theories. J. Artif. Int. Res., 40 (1):701–728, Jan. 2011. ISSN 1076-9757. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. R. Clarkson and F. B. Schneider. Hyperproperties. Journal of Computer Security, 18(6):1157–1210, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. L. De Moura and N. Bjørner. Z3: An efficient smt solver. In Proceedings of the Theory and Practice of Software, 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS’08/ETAPS’08, pages 337–340, Berlin, Heidelberg, 2008. Springer-Verlag. ISBN 3-540-78799-2, 978-3-540-78799- 0. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 1792766.Google ScholarGoogle Scholar
  13. V. Diekert and P. Gastin. First-order definable languages. In Logic and Automata: History and Perspectives, Texts in Logic and Games, pages 261–306. Amsterdam University Press, 2008.Google ScholarGoogle Scholar
  14. N. Foster, R. Harrison, M. J. Freedman, C. Monsanto, J. Rexford, A. Story, and D. Walker. Frenetic: A network programming language. In Proceedings of the 16th ACM SIGPLAN International Conference on Functional Programming, ICFP ’11, pages 279–291, New York, NY, USA, 2011. ACM. ISBN 978-1-4503-0865-6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 2034812.Google ScholarGoogle Scholar
  16. 2034812.Google ScholarGoogle Scholar
  17. A. Gember-Jacobson, W. Wu, X. Li, A. Akella, and R. Mahajan. Management plane analytics. In Proceedings of the 2015 ACM Conference on Internet Measurement Conference, IMC ’15, pages 395–408, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3848-6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. P. Gill, N. Jain, and N. Nagappan. Understanding network failures in data centers: Measurement, analysis, and implications. In Proceedings of the ACM SIGCOMM 2011 Conference, SIGCOMM ’11, pages 350– 361, New York, NY, USA, 2011. ACM. ISBN 978-1-4503-0797-0. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. A. Greenberg, J. R. Hamilton, N. Jain, S. Kandula, C. Kim, P. Lahiri, D. A. Maltz, P. Patel, and S. Sengupta. Vl2: A scalable and flexible data center network. In Proceedings of the ACM SIGCOMM 2009 Conference on Data Communication, SIGCOMM ’09, pages 51– 62, New York, NY, USA, 2009. ACM. ISBN 978-1-60558-594-9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. K. He, J. Khalid, A. Gember-Jacobson, S. Das, C. Prakash, A. Akella, L. E. Li, and M. Thottan. Measuring control plane latency in sdnenabled switches. In Proceedings of the 1st ACM SIGCOMM Symposium on Software Defined Networking Research, SOSR ’15, pages 25:1–25:6, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3451- 8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. V. Heorhiadi, M. K. Reiter, and V. Sekar. Simplifying software-defined network optimization using sol. In 13th USENIX Symposium on Networked Systems Design and Implementation (NSDI 16), pages 223– 237, 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. X. Jin, H. H. Liu, R. Gandhi, S. Kandula, R. Mahajan, M. Zhang, J. Rexford, and R. Wattenhofer. Dynamic scheduling of network updates. In Proceedings of the 2014 ACM Conference on SIGCOMM, SIGCOMM ’14, pages 539–550, New York, NY, USA, 2014. ACM. ISBN 978-1-4503-2836-4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. N. Kang, Z. Liu, J. Rexford, and D. Walker. Optimizing the "one big switch" abstraction in software-defined networks. In Proceedings of the Ninth ACM Conference on Emerging Networking Experiments and Technologies, CoNEXT ’13, pages 13–24, New York, NY, USA, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. ACM. ISBN 978-1-4503-2101-3.Google ScholarGoogle Scholar
  25. G. Karypis and V. Kumar. A fast and high quality multilevel scheme for partitioning irregular graphs. SIAM J. Sci. Comput., 20(1):359–392, Dec. 1998. ISSN 1064-8275. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. J. McClurg, H. Hojjat, P. ˇ Cerný, and N. Foster. Efficient synthesis of network updates. In Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2015, pages 196–207, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3468-6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. C. Monsanto, J. Reich, N. Foster, J. Rexford, and D. Walker. Composing software-defined networks. In Proceedings of the 10th USENIX Conference on Networked Systems Design and Implementation, nsdi’13, pages 1–14, Berkeley, CA, USA, 2013. USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. O. Padon, N. Immerman, A. Karbyshev, O. Lahav, M. Sagiv, and S. Shoham. Decentralizing sdn policies. In Proceedings of the 42Nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’15, pages 663–676, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3300-9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 2676990.Google ScholarGoogle Scholar
  30. 2676990.Google ScholarGoogle Scholar
  31. G. D. Plotkin, N. Bjørner, N. P. Lopes, A. Rybalchenko, and G. Varghese. Scaling network verification using symmetry and surgery. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2016, pages 69– 83, New York, NY, USA, 2016. ACM. ISBN 978-1-4503-3549-2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. C. Prakash, J. Lee, Y. Turner, J.-M. Kang, A. Akella, S. Banerjee, C. Clark, Y. Ma, P. Sharma, and Y. Zhang. Pga: Using graphs to express and automatically reconcile network policies. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, SIGCOMM ’15, pages 29–42, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3542-3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. 2787506.Google ScholarGoogle Scholar
  34. 2787506.Google ScholarGoogle Scholar
  35. Z. A. Qazi, C.-C. Tu, L. Chiang, R. Miao, V. Sekar, and M. Yu. Simplefying middlebox policy enforcement using sdn. In Proceedings of the ACM SIGCOMM 2013 Conference on SIGCOMM, SIGCOMM ’13, pages 27–38, New York, NY, USA, 2013. ACM. ISBN 978-1-4503- 2056-6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. M. Reitblatt, M. Canini, A. Guha, and N. Foster. Fattire: Declarative fault tolerance for software-defined networks. In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking, pages 109–114. ACM, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. S. Saha, S. Prabhu, and P. Madhusudan. Netgen: Synthesizing dataplane configurations for network policies. In Proceedings of the 1st ACM SIGCOMM Symposium on Software Defined Networking Research, SOSR ’15, pages 17:1–17:6, New York, NY, USA, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. ACM. ISBN 978-1-4503-3451-8.Google ScholarGoogle Scholar
  39. A. Singh, J. Ong, A. Agarwal, G. Anderson, A. Armistead, R. Bannon, S. Boving, G. Desai, B. Felderman, P. Germano, A. Kanagala, J. Provost, J. Simmons, E. Tanda, J. Wanderer, U. Hölzle, S. Stuart, and A. Vahdat. Jupiter rising: A decade of clos topologies and centralized control in google’s datacenter network. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, SIGCOMM ’15, pages 183–197, New York, NY, USA, 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. ACM. ISBN 978-1-4503-3542-3.Google ScholarGoogle Scholar
  41. S. Smolka, S. Eliopoulos, N. Foster, and A. Guha. A fast compiler for netkat. In Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming, ICFP 2015, pages 328– 341, New York, NY, USA, 2015. ACM. ISBN 978-1-4503-3669-7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. R. Soulé, S. Basu, P. J. Marandi, F. Pedone, R. Kleinberg, E. G. Sirer, and N. Foster. Merlin: A language for provisioning network resources. In Proceedings of the 10th ACM International on Conference on Emerging Networking Experiments and Technologies, CoNEXT ’14, pages 213–226, New York, NY, USA, 2014. ACM. ISBN 978-1-4503- 3279-8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. B. Stephens, A. L. Cox, and S. Rixner. Plinko: Building provably resilient forwarding tables. In Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks, HotNets-XII, pages 26:1– 26:7, New York, NY, USA, 2013. ACM. ISBN 978-1-4503-2596-7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Y. Yuan, R. Alur, and B. T. Loo. Netegg: Programming network policies by examples. In Proceedings of the 13th ACM Workshop on Hot Topics in Networks, HotNets-XIII, pages 20:1–20:7, New York, NY, USA, 2014. ACM. ISBN 978-1-4503-3256-9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. 2673879.Google ScholarGoogle Scholar
  46. 2673879.Google ScholarGoogle Scholar
  47. S. Zhang, F. Ivancic, C. Lumezanu, Y. Yuan, A. Gupta, and S. Malik. An adaptable rule placement for software-defined networks. In Dependable Systems and Networks (DSN), 2014 44th Annual IEEE/IFIP International Conference on, pages 88–99, June 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. W. Zhou, D. Jin, J. Croft, M. Caesar, and P. B. Godfrey. Enforcing customizable consistency properties in software-defined networks. In Proceedings of the 12th USENIX Conference on Networked Systems Design and Implementation, NSDI’15, pages 73–85, Berkeley, CA, USA, 2015. USENIX Association. ISBN 978-1-931971-218. Google ScholarGoogle Scholar

Index Terms

  1. Genesis: synthesizing forwarding tables in multi-tenant networks

              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 52, Issue 1
                POPL '17
                January 2017
                901 pages
                ISSN:0362-1340
                EISSN:1558-1160
                DOI:10.1145/3093333
                Issue’s Table of Contents
                • cover image ACM Conferences
                  POPL '17: Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages
                  January 2017
                  901 pages
                  ISBN:9781450346603
                  DOI:10.1145/3009837

                Copyright © 2017 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 1 January 2017

                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!