Gallium: Automated Software Middlebox Offloading to Programmable Switches
Kaiyuan Zhang, Danyang Zhuo, Arvind Krishnamurthy
Abstract
Researchers have shown that offloading software middleboxes (e.g., NAT, firewall, load balancer) to programmable switches can yield orders-of-magnitude performance gains. However, it requires manually selecting the middle-box components to offload and rewriting the offloaded code in P4, a domain-specific language for programmable switches. We design and implement Gallium, a compiler that transforms an input software middlebox into two parts---a P4 program that runs on a programmable switch and an x86 non-offloaded program that runs on a regular middlebox server. Gallium ensures that (1) the combined effect of the P4 program and the non-offloaded program is functionally equivalent to the input middlebox program, (2) the P4 program respects the resource constraints in the programmable switch, and (3) the run-to-completion semantics are met under concurrent execution. Our evaluations show that Gallium saves 21-79% of processing cycles and reduces latency by about 31% across various software middleboxes.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 2a65fd8c-3bc0-4ad5-a34f-cd07af98802fCited by top-tier papers9
- Automated SmartNIC Offloading Insights for Network FunctionsYiming Qiu, Jiarong Xing, Kuo-Feng Hsu, Qiao Kang et al.SOSP 2021 · 37 citations
- Unleashing SmartNIC Packet Processing Performance in P4Jiarong Xing, Yiming Qiu, Kuo-Feng Hsu, Songyuan Sui et al.SIGCOMM 2023 · 29 citations
- DeeP4R: Deep Packet Inspection in P4 using Packet RecirculationSahil Gupta, Devashish Gosain, Minseok Kwon, Hrishikesh B. AcharyaINFOCOM 2023 · 24 citations
- Probabilistic profiling of stateful data planes for adversarial testingQiao Kang, Jiarong Xing, Yiming Qiu, Ang ChenASPLOS 2021 · 21 citations
- Norma: Towards Practical Network Load TestingYanqing Chen, Bingchuan Tian, Chen Tian, Li Dai et al.NSDI 2023 · 9 citations
Builds on1
Related papers
- Lucid: a language for control in the data planeJohn Sonchack, Devon Loehr, Jennifer Rexford, David WalkerSIGCOMM 2021 · 45 citations
- Sequence Abstractions for Flexible, Line-Rate Network MonitoringAndrew Johnson, Ryan Beckett, Xiaoqi Chen, Ratul Mahajan et al.NSDI 2024 · 4 citations
- Gauntlet: Finding Bugs in Compilers for Programmable Packet ProcessingFabian Ruffy, Tao Wang, Anirudh SivaramanOSDI 2020 · 34 citations
- Cetus: Releasing P4 Programmers from the Chore of Trial and Error CompilingYifan Li, Jiaqi Gao, Ennan Zhai, Mengqi Liu et al.NSDI 2022 · 22 citations
- Lyra: A Cross-Platform Language and Compiler for Data Plane Programming on Heterogeneous ASICsJiaqi Gao, Ennan Zhai, Hongqiang Harry Liu, Rui Miao et al.SIGCOMM 2020 · 82 citations
