数据平面开发套件(DPDK)安装测试

虚拟机配置
系统CentOS7
内核:3.10.0-957.10.1.el7.x86_64
双核双线程CPU
4G内存

安装依赖

yum makecache  #建立缓存
#安装
yum install -y gcc gcc-c++  kernel-devel kernel-headers kernel net-tools
yum install -y numactl-devel numactl-libs
yum install -y libpcap libpcap-devel
yum install -y pciutils

安装DPDK

xz -d dpdk-19.02.tar.xz
tar -xvf dpdk-19.02.tar
cd dpdk-19.02/
make config T=x86_64-native-linuxapp-gcc
sed -ri 's,(PMD_PCAP=).*,\1y,' build/.config
#建立软连接
ln -sv /usr/src/kernels/3.10.0-1062.1.1.el7.x86_64/ /lib/modules/3.10.0-862.el7.x86_64/builb
make
make install T=x86_64-native-linuxapp-gcc

如果make失败,可以使用rpm2cpio kernel-devel-3.10.0-862.el7.x86_64.rpm | cpio -div 命令安装,然后重新建立软连接 ln -sv /usr/src/kernels/3.10.0-957.10.1.el7.x86_64/ /lib/modules/3.10.0-862.el7.x86_64/build

安装时若报错:Build complete [x86_64-native-linuxapp-gcc]
Installation cannot run with T defined and DESTDIR undefined
则:make config T=x86_64-native-linuxapp-gcc
make
make install [DESTDIR=] [prefix=]

 

设置大页内存

mkdir -p /mnt/huge
mount -t hugetlbfs nodev /mnt/huge
echo 1024 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages

载入模块

modprobe uio_pci_generic
modprobe uio
modprobe vfio-pci
insmod x86_64-native-linuxapp-gcc/kmod/igb_uio.ko

运行DPDK

make -C examples RTE_SDK=$(pwd) RTE_TARGET=build O=$(pwd)/build/examples #编译测试用例
./build/examples/helloworld/build/helloworld -c f -n 2 #运行测试用例

数据平面开发套件(DPDK)安装测试_第1张图片

testpmd

lspci #查网卡
./usertools/dpdk-devbind.py --status  #查看网卡是否支持
./usertools/dpdk-devbind.py --bind=igb_uio  02:01.0  绑定网卡
./x86_64-native-linuxapp-gcc/app/testpmd -l 0-1 -n 1  -- -i #运行testpmd

数据平面开发套件(DPDK)安装测试_第2张图片

 

你可能感兴趣的:(网络,流量分析,Linux)