skip to main content
10.1145/3672199.3673892acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Open access

P4CGO: Control Plane Guided P4 Program Optimization

Published: 04 August 2024 Publication History

Abstract

Software-defined networking (SDN) in conjunction with programmable switches revolutionizes network management, yet crafting optimal switch configurations remains complex. Traditional P4 optimizations rely on data plane level tuning. In this paper, we argue an essential piece for such optimizations is the control plane itself. We present P4CGO, a P4 compilation framework which focuses on realizing specifications based on control policies. P4CGO leverages user-defined objective functions and control plane policies to guide P4 program optimization through table merging and splitting. We have prototyped P4CGO and applied it solving real-world policy optimization problems.

References

[1]
Anubhavnidhi Abhashkumar, Jeongkeun Lee, Jean Tourrilhes, Sujata Banerjee, Wenfei Wu, Joon-Myung Kang, and Aditya Akella. 2017. P5: Policy-driven optimization of P4 pipeline. In Proceedings of the Symposium on SDN Research (Santa Clara, CA, USA) (SOSR '17). Association for Computing Machinery, New York, NY, USA, 136--142. https://doi.org/10.1145/3050220.3050235
[2]
Pat Bosshart, Dan Daly, Glen Gibb, Martin Izzard, Nick McKeown, Jennifer Rexford, Cole Schlesinger, Dan Talayco, Amin Vahdat, George Varghese, and David Walker. 2014. P4: programming protocol-independent packet processors. SIGCOMM Comput. Commun. Rev. 44, 3 (July 2014), 87--95. https://doi.org/10.1145/2656877.2656890
[3]
Yuzhu Cheng, Weiping Wang, Jianxin Wang, and Haodong Wang. 2019. FPC: A new approach to firewall policies compression. Tsinghua Science and Technology 24 (02 2019), 65--76. https://doi.org/10.26599/TST.2018.9010003
[4]
Leonardo De Moura and Nikolaj Bjørner. 2008. 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 (Budapest, Hungary) (TACAS'08/ETAPS'08). Springer-Verlag, Berlin, Heidelberg, 337--340.
[5]
Nate Foster, Rob Harrison, Michael J. Freedman, Christopher Monsanto, Jennifer Rexford, Alec Story, and David Walker. 2011. Frenetic: a network programming language. SIGPLAN Not. 46, 9 (sep 2011), 279--291. https://doi.org/10.1145/2034574.2034812
[6]
Jiaqi Gao, Ennan Zhai, Hongqiang Harry Liu, Rui Miao, Yu Zhou, Bingchuan Tian, Chen Sun, Dennis Cai, Ming Zhang, and Minlan Yu. 2020. Lyra: A Cross-Platform Language and Compiler for Data Plane Programming on Heterogeneous ASICs. In Proceedings of the Annual Conference of the ACM Special Interest Group on Data Communication on the Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM '20). Association for Computing Machinery, New York, NY, USA, 435--450. https://doi.org/10.1145/3387514.3405879
[7]
Mohammad Hajjat, Xin Sun, Yu-Wei Eric Sung, David Maltz, Sanjay Rao, Kunwadee Sripanidkulchai, and Mohit Tawarmalani. 2010. Cloudward bound: planning for beneficial migration of enterprise applications to the cloud. SIGCOMM Comput. Commun. Rev. 40, 4 (aug 2010), 243--254. https://doi.org/10.1145/1851275.1851212
[8]
Mary Hogan, Shir Landau-Feibish, Mina Tahmasbi Arashloo, Jennifer Rexford, and David Walker. 2022. Modular Switch Programming Under Resource Constraints. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22). USENIX Association, Renton, WA, 193--207. https://www.usenix.org/conference/nsdi22/presentation/hogan
[9]
Yifan Li, Jiaqi Gao, Ennan Zhai, Mengqi Liu, Kun Liu, and Hongqiang Harry Liu. 2022. Cetus: Releasing P4 Programmers from the Chore of Trial and Error Compiling. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI 22). USENIX Association, Renton, WA, 371--385. https://www.usenix.org/conference/nsdi22/presentation/li-yifan
[10]
Edward J. McCluskey. 1956. Minimization of Boolean Functions. The Bell System Technical Journal 35, 5 (1956), 1417--1444. https://doi.org/10.1002/j.1538-7305.1956.tb03835.x
[11]
Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, and Jonathan Turner. 2008. OpenFlow: enabling innovation in campus networks. SIGCOMM Comput. Commun. Rev. 38, 2 (March 2008), 69--74. https://doi.org/10.1145/1355734.1355746
[12]
Chad R. Meiners, Alex X. Liu, Eric Torng, and Jignesh Patel. 2011. Split: Optimizing Space, Power, and Throughput for TCAM-Based Classification (ANCS '11). IEEE Computer Society, USA, 200--210. https://doi.org/10.1109/ANCS.2011.36
[13]
Chad R. Meiners, Jignesh Patel, Eric Norige, Eric Torng, and Alex X. Liu. 2010. Fast regular expression matching using small TCAMs for network intrusion detection and prevention systems. In Proceedings of the 19th USENIX Conference on Security (Washington, DC) (USENIX Security'10). USENIX Association, USA, 8.
[14]
Willard V. Quine. 1952. The Problem of Simplifying Truth Functions. Amer. Math. Monthly 59, 8 (1952), 521--531. https://doi.org/10.2307/2308214
[15]
John Sonchack, Devon Loehr, Jennifer Rexford, and David Walker. 2021. Lucid: a language for control in the data plane. In Proceedings of the 2021 ACM SIGCOMM 2021 Conference (Virtual Event, USA) (SIGCOMM '21). Association for Computing Machinery, New York, NY, USA, 731--747. https://doi.org/10.1145/3452296.3472903
[16]
Hardik Soni, Myriana Rifai, Praveen Kumar, Ryan Doenges, and Nate Foster. 2020. Composing Dataplane Programs with μP4 (SIGCOMM '20). Association for Computing Machinery, New York, NY, USA, 329--343. https://doi.org/10.1145/3387514.3405872
[17]
Nik Sultana, John Sonchack, Hans Giesen, Isaac Pedisich, Zhaoyang Han, Nishanth Shyamkumar, Shivani Burad, André DeHon, and Boon Thau Loo. 2021. Flightplan: Dataplane Disaggregation and Placement for P4 Programs. In 18th USENIX Symposium on Networked Systems Design and Implementation (NSDI 21). USENIX Association, 571--592. https://www.usenix.org/conference/nsdi21/presentation/sultana
[18]
Yu-Wei Eric Sung, Sanjay G. Rao, Geoffrey G. Xie, and David A. Maltz. 2008. Towards systematic design of enterprise networks. In Proceedings of the 2008 ACM CoNEXT Conference (Madrid, Spain) (CoNEXT '08). Association for Computing Machinery, New York, NY, USA, Article 22, 12 pages. https://doi.org/10.1145/1544012.1544034
[19]
Patrick Wintermeyer, Maria Apostolaki, Alexander Dietmüller, and Laurent Vanbever. 2020. P2GO: P4 Profile-Guided Optimizations. In Proceedings of the 19th ACM Workshop on Hot Topics in Networks (Virtual Event, USA) (HotNets '20). Association for Computing Machinery, New York, NY, USA, 146--152. https://doi.org/10.1145/3422604.3425941
[20]
Jiarong Xing, Yiming Qiu, Kuo-Feng Hsu, Songyuan Sui, Khalid Manaa, Omer Shabtai, Yonatan Piasetzky, Matty Kadosh, Arvind Krishnamurthy, T. S. Eugene Ng, and Ang Chen. 2023. Unleashing SmartNIC Packet Processing Performance in P4. In Proceedings of the ACM SIGCOMM 2023 Conference (, New York, NY, USA,) (ACM SIGCOMM '23). Association for Computing Machinery, New York, NY, USA, 1028--1042. https://doi.org/10.1145/3603269.3604882

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
FMANO '24: Proceedings of the 2024 SIGCOMM Workshop on Formal Methods Aided Network Operation
August 2024
62 pages
ISBN:9798400707148
DOI:10.1145/3672199
This work is licensed under a Creative Commons Attribution International 4.0 License.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 August 2024
Accepted: 07 June 2024
Received: 24 May 2024

Check for updates

Author Tags

  1. Control Plane
  2. Formal Methods
  3. Optimization
  4. Programmable Switch

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Funding Sources

Conference

ACM SIGCOMM '24
Sponsor:
ACM SIGCOMM '24: ACM SIGCOMM 2024 Conference
August 4 - 8, 2024
NSW, Sydney, Australia

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 407
    Total Downloads
  • Downloads (Last 12 months)407
  • Downloads (Last 6 weeks)66
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media