P4Bricks: Enabling multiprocessing using Linker-based network data plane architecture

Abstract : Packet-level programming languages such as P4 usually require to describe all packet processing functionalities for a given programmable network device within a single program. However, this approach monopolizes the device by a single large network application program, which prevents possible addition of new functionalities by other independently written network applications. We propose P4Bricks, a system which aims to deploy and execute multiple independently developed and compiled P4 programs on the same reconfigurable hardware device. P4Bricks is based on a Linker component that merges the pro-grammable parsers/deparsers and restructures the logical pipeline of P4 programs by refactoring, decomposing and scheduling the pipelines' tables. It merges P4 programs according to packet processing semantics (parallel or sequential) specified by the network operator and runs the programs on the stages of the same hardware pipeline, thereby enabling multiprocessing. This paper presents the initial design of our system with an ongoing implementation and studies P4 language's fundamental constructs facilitating merging of independently written programs.
Document type :
Preprints, Working Papers, ...
Complete list of metadatas

Cited literature [8 references]  Display  Hide  Download

https://hal.inria.fr/hal-01632431
Contributor : Thierry Turletti <>
Submitted on : Monday, February 19, 2018 - 1:58:15 PM
Last modification on : Friday, April 19, 2019 - 4:54:57 PM
Long-term archiving on : Monday, May 7, 2018 - 12:08:31 PM

File

p4bricks-inria-tech.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01632431, version 2

Collections

Citation

Hardik Soni, Thierry Turletti, Walid Dabbous. P4Bricks: Enabling multiprocessing using Linker-based network data plane architecture. 2018. ⟨hal-01632431v2⟩

Share

Metrics

Record views

274

Files downloads

570