dpdk网卡绑定

  1. ${RTE_SDK}/usertools/dpdk-setup.py

  2. 保证网卡安装在Socket 0 上

lspci |grep Ethernet

cat /sys/bus/pci/devices/0000\:3b\:00.0/numa_node

cat /sys/bus/pci/devices/0000\:18\:00.3/numa_node

加载模块

cd xxxxxx/dpdk/

加载环境变量,后文中的${RTE_SDK}即为dpdk的主路径

source dpdk.rc

加载模块

modprobe uio

insmod ${RTE_SDK}/x86_64-native-linuxapp-gcc/kmod/igb_uio.ko

查看网卡绑定信息

${RTE_SDK}/usertools/dpdk-devbind.py --status

绑定网卡(设备号根据要绑定的网卡随机应变,一次指令绑一个)

${RTE_SDK}/usertools/dpdk-devbind.py -b igb_uio 0000:02:05.0_or_eth1

  1. 备用

如果需要重新绑定网卡或恢复,重启即可,或者使用命令解绑

${RTE_SDK}/usertools/dpdk-devbind.py --status

${RTE_SDK}/usertools/dpdk-devbind.py -b igb_or_i40e 0000:02:05.0_or_eth1

reboot

重新启动网卡:service network restart

此时ifconfig |grep flag无法看到被绑定的网卡,因其已被dpdk接管

绑定之前,保证网卡处于非活跃状态:ifconfig eth1 down