Intel® Ethernet Controller E810 Application Device Queues (ADQ)
Configuration Guide
Testing ADQ with AF_XDP
XDP (eXpress Data Path) is a framework that uses eBPF, an extended version of the Berkley Packet Filter (BPF), to perform high-speed packet processing within the Linux kernel. XDP applications can be attached directly to a network interface, to create efficient packet processing directly from the network device, allowing the XDP application to bypass the network stack in the kernel. AF_XDP is an extension to the existing XDP support in the Linux kernel for XDP enabled network devices.
AF_XDP is an address family optimized for high performance, low latency, packet processing with XDP. AF_XDP was introduced in the 4.18 kernel and is a new socket type that permits raw packet data from the network adapter to be delivered straight to user space from XDP without any copying, and at significantly higher speeds. AF_XDP does not completely bypass the kernel but utilizes its functionality to create something similar to DPDK or the AF_Packet. AF_Packet is a socket in the Linux kernel, which allows applications to send and receive raw packets through the kernel.
AF_XDP uses Linux kernel drivers, it does not use any user-space drivers. This support is available for customer experimentation and testing but has not been fully tested with all possible AF_XDP workloads. For convenience, instructions for testing with kernel sample application XDPSOCK are included in this section.
There are two options to configure ADQ in AF_XDP server.
Both configuration methods require the completion of the System Setup first.