3 ms·
I half-wished I'd get Cunningham's law-ed here. I read a bit more and there seems to be some support for tcp and udp offload, https://netdevconf.info/0x17/sessi
by touisteur 2mo ago
I half-wished I'd get Cunningham's law-ed here. I read a bit more and there seems to be some support for tcp and udp offload, https://netdevconf.info/0x17/sessions/talk/tcp-offload-via-af_xdp-sockets-not-your-grandmothers-tcp-offload.html https://netdevconf.info/0x17/sessions/talk/tcp-offload-via-a... but I haven't checked how easy it is to use.
A lot of the socket featureset of io_uring seems available in AF_XDP https://docs.kernel.org/networking/af_xdp.html https://docs.kernel.org/networking/af_xdp.html which shows lots of progress since I looked last.
To get an idea of what DPDK gives low-level access to there is the overview
https://doc.dpdk.org/guides/nics/features.html https://doc.dpdk.org/guides/nics/features.html and my "favorite annual terabit read" https://doc.dpdk.org/guides/nics/mlx5.html#mlx5-net-features https://doc.dpdk.org/guides/nics/mlx5.html#mlx5-net-features for NVIDIA NICs. Broadcom has some fun stuff too. The first time you hit top RX speed (2x400G my latest) with only one busy core (yay DMA engines) is always a thrill.
- tptacek 2mo agoI'm definitely familiar with DPDK, but when I think about it I mostly just think "polling mode driver" and not "offloading".