Repo for the performance test from the slide
Disclaimer: scripts may not work with your environment, since this test is performed in specific environment
- bpftool (run
./install-bpftool.sh
) - iproute2 (TC command)
- clang, llvm (BPF compile)
- Kernel upper than 4.14 (XDP_REDIRECT)
(depend on the driver XDP support, required version may vary. find here) - NIC support with XDP, XDP_REDIRECT
(if not, you can still try GENERIC XDP)
Host to test - Run scripts under each directory drop/
, forward/
Host to generate packet - Run script under pktgen/
(Regarding with pktgen, follow the instruction from '-h' option)
ex)
Host A: # ./pktgen/pktgen.sh -i enp1s0f0 -d 10.1.0.2 -m 90:e2:ba:c5:05:89 -t 4
Host B: # ./drop/xdp-drop.sh 10.1.0.2 1234 eth0
Environment:
XDP - Mellanox ConnectX-4 (mlx5)
XDP OFFLOAD - Netronome Agilio (nfp)
- Userspace - UDP socket
- Netfilter - iptables DROP
- TC - ingress qdisc filter DROP
- XDP - XDP_DROP
- XDP OFFLOAD - XDP_DROP
Environment:
XDP - Mellanox ConnectX-4 (mlx5)
- Userspace - NGINX stream
- Netfilter - iptables DNAT
- TC - ingress qdisc filter mirred redirect
- XDP - XDP_REDIRECT