arrow
Return

P4Muse: Enabling Modular P4 Programming via Compiler-Managed Code Merging Without Syntax Modifications

delete2025-01-01
delete0
delete
OA
AI
M
Mohsen Rahmati
F
François-Raymond Boyer
B
Bill Pontikakis
J
Jean‐Pierre David
Y
Yvon Savaria
DOI:10.1109/ACCESS.2025.3589353delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Domain-specific programming languages such as P4 enable flexible and high-performance packet processing for programming network data planes. However, many P4 programs remain monolithic, limiting the development of modular and reusable protocols and libraries. Introducing modularity to P4 has proven challenging, as existing approaches—such as trans-compilers and virtualization—often sidestep direct integration with the P4 language and compiler, constraining backward compatibility and extensibility. This paper introduces P4Muse (P4 Modularity and Unification for Seamless Extensibility), an open-source P4C compiler extension that enhances the modularity of P4 without requiring new syntax or annotations. P4Muse is developed by integrating new compiler passes for automatic code merging, fostering modular design and reuse. We demonstrate its benefits through three classes of use cases that support P4 modularity, enabling code reusability, data plane pipeline composition, and vendor-customer compatibility. using the V1Model architecture and the BMv2 software switch. Our results show that P4Muse effectively supports modular P4 program development without altering existing P4 syntax, providing a robust solution that significantly improves code reusability, flexibility, and extensibility while maintaining backward compatibility.
Keywords:
Programmable data planes
P4
compiler
intermediate representation
modularity
reusability
extensibility
incremental programming
composability
BMv2
vendor-customer framework

Journal

IEEE Access cover
IEEE Access
IF:
3.6
Papers:
9.8W
Citations:
29.4W

Organization

D
Department of Computer and Software Engineering
Scholars:
14
Papers: 8
Citations: 0
D
department of electrical engineering
Scholars:
1.3K
Papers: 671
Citations: 0
Cited Papers

Cited Papers

errShare
errSave
A survey on data plane programming with P4: Fundamentals, advances, and applied research
err2023-03-01
err46
errOAAI
errHauser, Frederik; Haeberle, Marco; Merling, Daniel; Lindner, Steffen; Gurevich, Vladimir; Zeiger, Florian; Frank, Reinhard; Menth, Michael
errShare
errSave
Reconfigurable Intelligent Surfaces for 6G Systems: Principles, Applications, and Research Directions
err2021-06-01
err0
PREAI
errParizotto, Ricardo; Castanheira, Lucas; Bonetti, Fernanda; Santos, Anderson; Schaeffer-Filho, Alberto
errShare
errSave
OpenFlow
err2008-03-31
err0
PREAI
errNick McKeown; Tom Anderson; Hari Balakrishnan; Guru Parulkar; Larry Peterson; Jennifer Rexford; Scott Shenker; Jonathan Turner
errShare
errSave
P4
err2014-07-28
err0
PREAI
errPat Bosshart; Dan Daly; Glen Gibb; Martin Izzard; Nick McKeown; Jennifer Rexford; Cole Schlesinger; Dan Talayco; Amin Vahdat; George Varghese; David Walker
errShare
errSave
P4 Weaver
err2021-11-08
err0
PREAI
errAli Fattaholmanan; Mario Baldi; Antonio Carzaniga; Robert Soulé
errShare
errSave
ClickP4
err2017-08-22
err0
PREAI
errYu Zhou; Jun Bi
errShare
errSave
P4SC: A High Performance and Flexible Framework for Service Function Chain
err2019-01-01
err7
errOAAI
errZhang, Dong; Chen, Xiang; Huang, Qun; Hong, Xiaoyan; Wu, Chunming; Zhou, Haifeng; Yang, Yi; Liu, Hongyan; Chen, Yuxin
errShare
errSave
researcher View more