arrow
返回

hXDP: Efficient Software Packet Processing on FPGA NICs

delete2022-07-21
delete6
delete
OA
AI
M
Marco Spaziani Brunella *
G
Giacomo Belocchi
M
Marco Bonola
S
Salvatore Pontarelli
G
Giuseppe Siracusano
G
Giuseppe Bianchi
A
Aniello Cammarano
A
Alessandro Palumbo
L
Luca Petrucci
R
Roberto Bifulco
DOI:10.1145/3543668delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
The network interface cards (NICs) of modern computers are changing to adapt to faster data rates and to help with the scaling issues of general-purpose CPU technologies. Among the ongoing innovations, the inclusion of programmable accelerators on the NIC's data path is particularly interesting, since it provides the opportunity to offload some of the CPU's network packet processing tasks to the accelerator. Given the strict latency constraints of packet processing tasks, accelerators are often implemented leveraging platforms such as Field-Programmable Gate Arrays (FPGAs). FPGAs can be re-programmed after deployment, to adapt to changing application requirements, and can achieve both high throughput and low latency when implementing packet processing tasks. However, they have limited resources that may need to be shared among diverse applications, and programming them is difficult and requires hardware design expertise. We present hXDP, a solution to run on FPGAs software packet processing tasks described with the eBPF technology and targeting the Linux's eXpress Data Path. hXDP uses only a fraction of the available FPGA resources, while matching the performance of high-end CPUs. The iterative execution model of eBPF is not a good fit for FPGA accelerators. Nonetheless, we show that many of the instructions of an eBPF program can be compressed, parallelized, or completely removed, when targeting a purpose-built FPGA design, thereby significantly improving performance. We implement hXDP on an FPGA NIC and evaluate it running real-world unmodified eBPF programs. Our implementation runs at 156.25MHz and uses about 15% of the FPGA resources. Despite these modest requirements, it can run dynamically loaded programs, achieves the packet processing throughput of a high-end CPU core, and provides a 10x lower packet forwarding latency.

期刊

Communications of the ACM 封面图
Communications of the ACM
IF:
12.2
论文数:
1.2W
被引数:
3.7W

机构

N
nec corporation
学者数:
1.0K
论文数: 956
被引数: 0
U
University of Rome Tor Vergata
学者数:
2.5W
论文数: 1.8W
被引数: 2.0W
S
sapienza university rome
学者数:
6.3W
论文数: 4.7W
被引数: 381
学者 查看更多机构
引用论文

引用论文

Dimethyl ether: A fuel for the 21st century
err1997-01-01
err0
PREAI
errT.H. Fleisch; A. Basu; M.J. Gradassi; J.G. Masin
err分享
err收藏
Study of Dewar multishield insulation systems at 4.2–293 K4.2-293 K杜瓦多屏蔽绝缘系统的研究
err1993-12-01
err0
PREAI
errI.A. Davydenkov; S.B. Milman; M.G. Velikanova; L.E. Kotov; A.G. Perestoronin
err分享
err收藏
Neologistic Jargon: A Clinicopathological Study
err1970-12-01
err0
errOAAI
errAndrew Kertesz; D. Frank Benson
err分享
err收藏
A New Golden Age for Computer Architecture
err2019-01-28
err436
PREAI
errHennessy, John L.; Patterson, David A.
err分享
err收藏
A database of metallic materials emissivities and absorptivities for cryogenics
err2019-01-01
err0
PREAI
errJiří Frolec; Tomáš Králík; Věra Musilová; Pavel Hanzelka; Aleš Srnka; Josef Jelínek
err分享
err收藏
学者 查看更多内容