skip to main content
10.1145/3563766.3564101acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article

Full-stack SDN

Published: 14 November 2022 Publication History

Abstract

The conventional approach for building software-defined network systems requires separately developing the management, control, and data planes. Manually written code connects the management plane's configuration to the control plane, and the control plane generates the data planes' configurations as small program fragments that scatter across the codebase. Scalability and correctness become increasingly challenging as such a system develops and grows.
In contrast, in our approach, called Nerpa, all three planes are programmed in a unified way. In Nerpa a transactional database stores management plane state. The control plane is implemented in a specialized query language which automatically executes in an incremental fashion, improving scalability. Finally, the data plane is programmed in P4. To aid correctness, all three parts are type-checked together, and tools generate code for data movement between planes.
We have published a prototype implementation using an open-source license. We believe that full-stack SDN can build more robust and maintainable networked systems.

References

[1]
Database stream processor. https://github.com/vmware/database-stream-processor. Retrieved September 2022.
[2]
Nerpa: Network programming with relational and procedural abstractions. https://github.com/vmware/nerpa. Retrieved October 2022.
[3]
Barefoot Tofino. https://www.intel.com/content/www/us/en/products/network-io/programmable-ethernet-switch/tofino-series/tofino.html, 2020.
[4]
E. Al-Shaer and S. Al-Haj. FlowChecker: Configuration analysis and verification of federated OpenFlow infrastructures. In Proceedings of the 3rd ACM workshop on Assurable and usable security configuration, pages 37--44, 2010.
[5]
C. J. Anderson, N. Foster, A. Guha, J.-B. Jeannin, D. Kozen, C. Schlesinger, and D. Walker. NetKAT: Semantic foundations for networks. ACM SIGPLAN Notices, 49(1):113--126, 2014.
[6]
Arista. EOS: The next generation extensible operating system. https://www.arista.com/assets/data/pdf/EOSWhitepaper.pdf, 2016.
[7]
H. Ballani and P. Francis. CONMan: A step towards network manageability. In SIGCOMM, August 2007.
[8]
P. Berde, M. Gerola, J. Hart, Y. Higuchi, M. Kobayashi, T. Koide, B. Lantz, B. O'Connor, P. Radoslavov, W. Snow, and G. Parulkar. ONOS: Towards an open, distributed SDN OS. In Workshop on Hot Topics in Software Defined Networking (HotSDN), page 1--6, 2014.
[9]
P. Bosshart, D. Daly, G. Gibb, M. Izzard, N. McKeown, J. Rexford, C. Schlesinger, D. Talayco, A. Vahdat, G. Varghese, and D. Walker. P4: Programming protocol-independent packet processors. SIGCOMM Computer Communication Review (CCR), 44(3):87--95, July 2014.
[10]
Broadcom Corporation. Broadcom SDKLT. https://github.com/Broadcom-Network-Switching-Software/SDKLT, October 2017. Retrieved January 2021.
[11]
M. Budiu, F. McSherry, L. Ryzhyk, and V. Tannen. DBSP: Automatic incremental view maintenance for rich query languages, March 2022.
[12]
M. Casado, M. J. Freedman, J. Pettit, J. Luo, N. McKeown, and S. Shenker. Ethane: Taking control of the enterprise. In SIGCOMM, page 1--12, 2007.
[13]
X. Chen, Y. Mao, Z. M. Mao, and J. Van der Merwe. Declarative configuration management for complex and dynamic networks. In Conference on emerging Networking EXperiments and Technologies (Co-NEXT), 2010.
[14]
X. Chen, Y. Mao, Z. M. Mao, and J. Van der Merwe. DECOR: DEClarative network management and OpeRation. SIGCOMM Computer Communication Review (CCR), 40(1):61--66, Jan. 2010.
[15]
R. Chopra. ONE silicon, ONE experience, MULTIPLE roles. https://blogs.cisco.com/sp/one-silicon-one-experience-multiple-roles, December 2019.
[16]
B. Davie, T. Koponen, J. Pettit, B. Pfaff, M. Casado, N. Gude, A. Padmanabhan, T. Petty, K. Duda, and A. Chanda. A database approach to SDN control plane design. SIGCOMM Computer Communication Review (CCR), 47(1):15--26, Jan. 2017.
[17]
A. Gember-Jacobson, W. Wu, X. Li, A. Akella, and R. Mahajan. Management plane analytics. In ACM Internet Measurement Conference, 2015.
[18]
N. Gude, T. Koponen, J. Pettit, B. Pfaff, M. Casado, N. McKeown, and S. Shenker. NOX: Towards an operating system for networks. SIGCOMM Computer Communication Review (CCR), 38(3):105--110, July 2008.
[19]
A. Gupta, I. S. Mumick, and V. S. Subrahmanian. Maintaining views incrementally. In Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, SIGMOD '93, page 157--166, Washington, D.C., USA, 1993.
[20]
D. Harrington, R. Preshun, and B. Wijnen. RFC 3411: An architecture for describing simple network management protocol (SNMP) management frameworks. https://tools.ietf.org/html/rfc3411, December 2002. IETF.
[21]
T. L. Hinrichs, N. S. Gude, M. Casado, J. C. Mitchell, and S. Shenker. Practical declarative network management. In Workshop on Research on Enterprise Networking (WREN), pages 1--10, 2009.
[22]
A. Horn, A. Kheradmand, and M. Prasad. Delta-Net: Real-time network verification using atoms. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 735--749, 2017.
[23]
V. Inc. VMware NSX network virtualization and security platform. https://www.vmware.com/products/nsx.html. Retrieved 2021.
[24]
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, pages 3--14, 2013.
[25]
K. Jayaraman, N. Bjørner, J. Padhye, A. Agrawal, A. Bhargava, P.-A. C. Bissonnette, S. Foster, A. Helwer, M. Kasten, I. Lee, et al. Validating datacenters at scale. In Proceedings of the ACM Special Interest Group on Data Communication, pages 200--213. 2019.
[26]
M. Kalkunte. Broadcom's new Trident 4 and Jericho 2 switch devices offer programmability at scale. https://www.broadcom.com/blog/trident4-and-jericho2-offer-programmability-at-scale, June 2019.
[27]
N. P. Katta, J. Rexford, and D. Walker. Logic programming for software-defined networks. In Workshop on Cross-Model Design and Validation (XLDI), 2012.
[28]
P. Kazemian, M. Chang, H. Zeng, G. Varghese, N. McKeown, and S. Whyte. Real time network policy checking using header space analysis. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 99--111, Lombard, IL, Apr. 2013.
[29]
P. Kazemian, G. Varghese, and N. McKeown. Header space analysis: Static checking for networks. In 9th USENIX Symposium on Networked Systems Design and Implementation (NSDI 12), pages 113--126, 2012.
[30]
A. Khurshid, X. Zou, W. Zhou, M. Caesar, and P. B. Godfrey. VeriFlow: Verifying network-wide invariants in real time. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 15--27, 2013.
[31]
T. Koponen, K. Amidon, P. Balland, M. Casado, A. Chanda, B. Fulton, I. Ganichev, J. Gross, P. Ingram, E. Jackson, A. Lambeth, R. Lenglet, S.-H. Li, A. Padmanabhan, J. Pettit, B. Pfaff, R. Ramanathan, S. Shenker, A. Shieh, J. Stribling, P. Thakkar, D. Wendlandt, A. Yip, and R. Zhang. Network virtualization in multi-tenant datacenters. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 203--216, Seattle, WA, Apr. 2014.
[32]
T. Koponen, M. Casado, N. Gude, J. Stribling, L. Poutievski, M. Zhu, R. Ramanathan, Y. Iwata, H. Inoue, T. Hama, and S. Shenker. Onix: A distributed control platform for large-scale production networks. In Symposium on Operating System Design and Implementation (OSDI), page 351--364, USA, 2010.
[33]
B. T. Loo, T. Condie, M. Garofalakis, D. E. Gay, J. M. Hellerstein, P. Maniatis, R. Ramakrishnan, T. Roscoe, and I. Stoica. Declarative networking: Language, execution and optimization. In ACM SIGMOD International conference on Management of data (SIGMOD), page 97--108, 2006.
[34]
B. T. Loo, T. Condie, M. Garofalakis, D. E. Gay, J. M. Hellerstein, P. Maniatis, R. Ramakrishnan, T. Roscoe, and I. Stoica. Declarative networking. Communications of the ACM (CACM), 52(11):87--95, Nov. 2009.
[35]
N. P. Lopes, N. Bjørner, P. Godefroid, K. Jayaraman, and G. Varghese. Checking beliefs in dynamic networks. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), page 499--512, 2015.
[36]
H. Mai, A. Khurshid, R. Agarwal, M. Caesar, P. B. Godfrey, and S. T. King. Debugging the data plane with Anteater. SIGCOMM Computer Communication Review (CCR), 41(4):290--301, 2011.
[37]
Y. Mao, B. T. Loo, Z. Ives, and J. M. Smith. MOSAIC: Unified declarative platform for dynamic overlay composition. In Conference on emerging Networking EXperiments and Technologies (Co-NEXT), 2008.
[38]
J. Medved, R. Varga, A. Tkacik, and K. Gray. Opendaylight: Towards a model-driven sdn controller architecture. In Proceeding of IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks 2014, pages 1--6, 2014.
[39]
O. Michel, R. Bifulco, G. Retvari, and S. Schmid. The programmable data plane: abstractions, architectures, algorithms, and applications. ACM Computing Surveys (CSUR), 54(4):1--36, 2021.
[40]
R. Moats. ovn-controller: Back out incremental processing. https://github.com/openvswitch/ovs/commit/926c34fd7c2080543bf3ee63a4830e0dc5c4af12, August 2016.
[41]
R. Moats. [ovs-dev][patch v21 0/8] add incremental processing., July 2016.
[42]
J. C. Mogul, D. Goricanec, M. Pool, A. Shaikh, D. Turk, B. Koley, and X. Zhao. Experiences with modeling network topologies at multiple levels of abstraction. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 403--418, Santa Clara, CA, Feb. 2020. USENIX Association.
[43]
D. G. Murray, F. McSherry, M. Isard, R. Isaacs, P. Barham, and M. Abadi. Incremental, iterative data processing with timely dataflow. Commun. ACM, 59(10):75--83, Sept. 2016.
[44]
T. Nelson, A. D. Ferguson, M. J. G. Scheer, and S. Krishnamurthi. Tierless programming and reasoning for software-defined networks. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 519--531, 2014.
[45]
OVN: Oven virtual network for Open vSwitch. https://github.com/openvswitch/ovs/tree/master/ovn. Retrieved January 2021.
[46]
J. Pettit, B. Pfaff, H. Zhou, and R. Moats. Practical OVN: Architecture, deployment and scale of OpenStack networking. http://openvswitch.org/support/slides/OVN_Austin.pdf, April 28 2016. OpenStack Summit.
[47]
B. Pfaff. Scaling sdn policy distribution. In P4 Workshop, 2022.
[48]
B. Pfaff, J. Pettit, T. Koponen, E. J. Jackson, A. Zhou, J. Rajahalme, J. Gross, A. Wang, J. Stringer, P. Shelar, K. Amidon, and M. Casado. The design and implementation of Open vSwitch. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 117--130, Oakland, CA, May 2015.
[49]
B. Pfaff, D. Sur, L. Ryzhyk, and M. Budiu. P4 in open vswitch with ofp4. In P4 Workshop, 2022.
[50]
C. M. Rogers. ANQL --- an active networks query language. In Active Networks, pages 99--110, Berlin, Heidelberg, 2002. Springer Berlin Heidelberg.
[51]
T. Roscoe, R. Mortier, P. Jardetzky, and S. Hand. InfoSpect: Using a logic language for system health monitoring in distributed systems. In Proceedings of the 10th Workshop on ACM SIGOPS European Workshop, page 31--37, 2002.
[52]
L. Ryzhyk. DDlog tutorial for OVN developers. 2019.
[53]
L. Ryzhyk and M. Budiu. Differential Datalog. In Datalog 2.0, Philadelphia, PA, June 4--5 2019.
[54]
O. Salman, I. H. Elhajj, A. Kayssi, and A. Chehab. Sdn controllers: A comparative study. In 2016 18th mediterranean electrotechnical conference (MELECON), pages 1--6. IEEE, 2016.
[55]
P. Sun, R. Mahajan, J. Rexford, L. Yuan, M. Zhang, and A. Arefin. A network-state management service. In SIGCOMM, pages 563--574, 2014.
[56]
Y.-W. E. Sung, X. Tie, S. H. Wong, and H. Zeng. Robotron: Top-down network management at Facebook scale. In SIGCOMM, SIGCOMM, page 426--439, 2016.
[57]
M. Tirmazi, A. Barker, N. Deng, M. E. Haque, Z. G. Qin, S. Hand, M. Harchol-Balter, and J. Wilkes. Borg: The next generation. In Proceedings of the Fifteenth European Conference on Computer Systems, pages 1--14, 2020.
[58]
A. Wang, X. Mei, J. Croft, M. Caesar, and B. Godfrey. Ravel: A database-defined network. In ACM Symposium on SDN Research (SOSR), 2016. http://ravel-net.org/.
[59]
M. Wawrzoniak, L. Peterson, and T. Roscoe. Sophia: An information plane for networked systems. SIGCOMM Comput. Commun. Rev., 34(1):15--20, Jan. 2004.
[60]
P. Zhang, X. Liu, H. Yang, N. Kang, Z. Gu, and H. Li. APKeep: Realtime verification for real networks. In USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 241--255, 2020.
[61]
H. Zhou. OVN controller incremental processing. In Open vSwitch 2018 Fall Conference, San Jose, California, 2018. http://www.openvswitch.org/support/ovscon2018/.

Cited By

View all
  • (2024)Towards a Software-Defined Industrial IoT-Edge Network for Next-Generation Offshore Wind Farms: State of the Art, Resilience, and Self-X Network and Service ManagementEnergies10.3390/en1712289717:12(2897)Online publication date: 13-Jun-2024
  • (2024)Improved 5G network slicing for enhanced QoS against attack in SDN environment using deep learningIET Communications10.1049/cmu2.12735Online publication date: 17-Jun-2024
  • (2023)Scaling a Declarative Cluster Manager Architecture with Query Optimization TechniquesProceedings of the VLDB Endowment10.14778/3603581.360359916:10(2618-2631)Online publication date: 1-Jun-2023

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
HotNets '22: Proceedings of the 21st ACM Workshop on Hot Topics in Networks
November 2022
252 pages
ISBN:9781450398992
DOI:10.1145/3563766
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 November 2022

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. enterprise networks
  2. network programming
  3. software-defined networking

Qualifiers

  • Research-article

Conference

HotNets '22
Sponsor:

Acceptance Rates

Overall Acceptance Rate 110 of 460 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)41
  • Downloads (Last 6 weeks)2
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Towards a Software-Defined Industrial IoT-Edge Network for Next-Generation Offshore Wind Farms: State of the Art, Resilience, and Self-X Network and Service ManagementEnergies10.3390/en1712289717:12(2897)Online publication date: 13-Jun-2024
  • (2024)Improved 5G network slicing for enhanced QoS against attack in SDN environment using deep learningIET Communications10.1049/cmu2.12735Online publication date: 17-Jun-2024
  • (2023)Scaling a Declarative Cluster Manager Architecture with Query Optimization TechniquesProceedings of the VLDB Endowment10.14778/3603581.360359916:10(2618-2631)Online publication date: 1-Jun-2023

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media