P4Muse: enabling modular P4 programming via compiler-managed code merging without syntax modifications

Mohsen Rahmati, François-Raymond Boyer, Bill Pontikakis, Jean Pierre David, Yvon Savaria

Article de revue (2025)

Accéder à ce document
Disponible
Libre accès au texte intégral dans PolyPublie et chez l'éditeur officiel
Version officielle de l'éditeur
Texte Texte • 2MB •

Résumé

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.

Mots clés

Organismes subventionnaires:
Intel, Noviflow, Kaloom, Prompt Quebec, NSERC
Adresse URL de PolyPublie:
Titre de la revue :
IEEE Access ( vol. 13 )
Maison d'édition:
IEEE
OAI:
oai:publications.polymtl.ca:66568
ORCID
Date du dépôt:
21 juil. 2025 10:41
Dernière modification:
14 oct. 2026 14:27
Citer en APA 7:
Rahmati, M., Boyer, F.-R., Pontikakis, B., David, J. P., & Savaria, Y. (2025). P4Muse: enabling modular P4 programming via compiler-managed code merging without syntax modifications. IEEE Access, 13, 124138-124157. https://doi.org/10.1109/access.2025.3589353

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Dimensions

Actions réservées au personnel

Afficher document
Afficher document