Next (from 25Jan RM call):
- How applications adopt to AF_XDP?
- How could it work in virtualized environments?
- How could it work on the same node with another app using DPDK/SR-IOV?
Text WIP before creating PR:
Chapter 3 (before Energy Efficiency)
Address Family For XDP (AF_XDP) is optimized for high performance packet processing and introduced in Linux kernel v4.18. This new socket type leverages the eXpress Data Path (XDP) in-kernel fast-path to transfer traffic frames from the NIC driver directly to userspace without the need for full network stack. XDP is an Extended Berkley Packet Filter (eBPF) software program.
By using the XDP_REDIRECT action from that XDP program, ingress frames can be redirected to other XDP-enabled network devices. The fastest working mode of operation is Zero-Copy mode in enabled XDP drivers.
Figure X: AF_XDP architecture
Cloud Infrastructure Capability
Indicates if Cloud Infrastructure supports AF_XDP
Table 4-2: Exposed Performance Optimisation Capabilities of Cloud Infrastructure
These Capabilities require workload support for AF_XDP socket type.
Chapter 10 (last)
Linux-native AF_XDP promises high enough packet processing performance and simplification compared to what SR-IOV and DPDK require for initial installation and later lifecycle management. Still, it will take time till AF_XDP-based solutions are financially invested and matured enough in both Virtualization Infrastructure and Network Functions.