dpdk编译
ubuntu网卡信息配置
虚拟机中除去最开始的一块网卡,再另外添加两块网卡,如下图所示
修改Ubuntu20_x64.vmx里面的配置信息
将ethernet0.virtualDev = "e1000"里面的e1000更改成vmxnet3,因为e1000只支持网卡单队列,vmxnet3支持网卡对队列,DPDK_18_05_1也支持此网卡,同时添加一行ethernet0.wakeOnPcktRcv = "true"
ethernet1.virtualDev = "vmxnet3" ethernet1.wakeOnPcktRcv = "true" ethernet2.virtualDev = "vmxnet3" ethernet2.wakeOnPcktRcv = "true"
(免费订阅,永久学习)学习地址: Dpdk/网络协议栈/vpp/OvS/DDos/NFV/虚拟化/高性能专家-学习视频教程-腾讯课堂
下载dpdk
http://www.dpdk.org/browse/dpdk/refs/tags?h=releases tar -zxvf dpdk-22.07.tar.gz cd dpdk-22.07/ meson -Dexamples=all build ninja -C build mkdir -p /dev/hugepages mountpoint -q /dev/hugepages || mount -t hugetlbfs nodev /dev/hugepages # 这句需要切换到root用户执行 echo 64 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages
设置hugepage及隔离CPU: 文件:/boot/grub2/grub.cfg 在linux16 /vmlinuz-3.10.0-514.el7.x86_64 root=/dev/mapper/cl-root ro crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet LANG=en_US.UTF-8这一行后添加隔离命令:
物理机: default_hugepages=1G hugepagesz=1G hugepages=20 isolcpus=0-7 虚拟机: default_hugepages=1G hugepagesz=2M hugepages=1024 isolcpus=0-2 具体大小视情况而定。重启虚拟机,使得hugepage和isocpus配置生效。
原文链接:
https://zhuanlan.zhihu.com/p/589262524