Empower Programmable Pipeline for Advanced Stateful Packet Processing

Authors: 

Yong Feng and Zhikang Chen, Tsinghua University; Haoyu Song, Futurewei Technologies; Yinchao Zhang, Hanyi Zhou, Ruoyu Sun, Wenkuo Dong, Peng Lu, Shuxin Liu, and Chuwen Zhang, Tsinghua University; Yang Xu, Fudan University; Bin Liu, Tsinghua University

Abstract: 

Programmable pipeline offers flexible and high-throughput packet processing capability, but only to some extent. When more advanced dataplane functions beyond basic packet processing and forwarding are desired, the pipeline becomes handicapped. The fundamental reason is that most stateful operations require backward cross-stage data passing and pipeline stalling for state update and consistency, which are anomalous to a standard pipeline. To solve the problem, we augment the pipeline with a low-cost, yet fast side ring to facilitate the backward data passing. We further apply the speculative execution technique to avoid pipeline stalling. The resulting architecture, RAPID, supports native and generic stateful function programming using the enhanced P4 language. We build an FPGA-based prototype to evaluate the system, and a software emulator to assess the cost and performance of an ASIC implementation. We realize several stateful applications enabled by RAPID to show how it extends a programmable dataplane's potential to a new level.

NSDI '24 Open Access Sponsored by
King Abdullah University of Science and Technology (KAUST)

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

BibTeX
@inproceedings {295523,
author = {Yong Feng and Zhikang Chen and Haoyu Song and Yinchao Zhang and Hanyi Zhou and Ruoyu Sun and Wenkuo Dong and Peng Lu and Shuxin Liu and Chuwen Zhang and Yang Xu and Bin Liu},
title = {Empower Programmable Pipeline for Advanced Stateful Packet Processing},
booktitle = {21st USENIX Symposium on Networked Systems Design and Implementation (NSDI 24)},
year = {2024},
isbn = {978-1-939133-39-7},
address = {Santa Clara, CA},
pages = {491--508},
url = {https://www.usenix.org/conference/nsdi24/presentation/feng-yong},
publisher = {USENIX Association},
month = apr
}