Composing Dataplane Programs with μP4
Composing Dataplane Programs with μP4
复制标题
DOI:
10.1145/3387514.3405872
复制
发表时间:
2020-07
期刊:
影响因子:
--
通讯作者:
Hardik Soni;M. Rifai;Praveen Kumar;Ryan Doenges;Nate Foster
中科院分区:
文献类型:
--
作者:
Hardik Soni;M. Rifai;Praveen Kumar;Ryan Doenges;Nate Foster
Dataplane languages like P4 enable flexible and efficient packet-processing using domain-specific primitives such as programmable parsers and match-action tables. Unfortunately, P4 programs tend to be monolithic and tightly coupled to the hardware architecture, which makes it hard to write programs in a portable and modular way---e.g., by composing reusable libraries of standard protocols. To address this challenge, we present the design and implementation of a novel framework (μP4) comprising a lightweight logical architecture that abstracts away from the structure of the underlying hardware pipelines and naturally supports powerful forms of program composition. Using examples, we show how enables modular programming. We present a prototype of the compiler that generates code for multiple lower-level architectures, including Barefoot's Tofino Native Architecture. We evaluate the overheads induced by our compiler on realistic examples.