ubuntu16安装DPDK

目录

    • 1. 配置过程
    • 2. 报错信息
    • 3. 设置多网卡

1. 配置过程

  1. 下载源码
  2. 配置环境变量
RTE_SDK=/home/username/dpdk/dpdk源码目录
RTE_TARGET=x86_64-native-linuxapp-gcc
  1. 修改动态链接库
vi /etc/ld.so.conf
include /home/username/dpdk/dpdk源码目录/x86_64-native-linuxapp-gcc/lib
include /home/username/dpdk/dpdk源码目录/x86_64-native-linuxapp-gcc/build/lib
  1. 安装pcap和numa
apt install libpcap-dev
apt install libnuma-dev
  1. 编译
方法一: 使用usertools下的dpdk-setup.sh运行脚本,选择选择x86_64-native-linuxapp-gcc一项即可自动编译
方法二:手动编译,在dpdk的源码目录下运行make T=x86_64-native-linuxapp-gcc

  1. 配置依赖
    在编译成功后的文件夹x86_64-naitve-linuxapp-gcc中有kmod文件夹,执行
modprobe uio
insmod igb_uio.ko
insmod rte_kni.ko //向内核插入uio模块
  1. 配置大页内存

仍可以使用usertools下dpdk-setup.sh脚本
选择setup hugepage mappings for non-NUMA(NUMA) systems一项,输入需要的页面数目(推荐512),根据本身是否为numa系统选择non-numa或numa

  1. 绑定网卡
首先down掉相应的网卡
ifconfig ens33 down //关闭ens33
执行dpdk-setup.sh脚本
选择Bind Ethernet/Baseband/Crypto device to IGB UIO module一项进行绑定
也可通过脚本dpdk-devbind.py进行绑定,具体操作可通过dpdk-devbind.py --help查看
注意需要绑定两块网卡
处理器核心数量4核或以上

2. 报错信息

cannot bind to driver igb_uio
这个提示错误折腾了一下午,这也是我写本文的初衷,因为调错时间太久了。
最后改变DPDK源码,原来使用dpdk16.11.11, 后来改为19.11.11一切正常!

3. 设置多网卡

vmware如何合理设置网卡
参考上文,因为默认一张网卡,本实验需要两张,添加虚拟网卡。

tips: 解压tar.xz文件


方法一:
需要用到两步命令,首先利用 xz-utils 的 xz 命令将 linux-3.12.tar.xz 解压为 linux-3.12.tar,其次用 tar 命令将 linux-3.12.tar 完全解压。
 
xz -d linux-3.12.tar.xz
tar -xf linux-3.12.tar
 
 
方法二(推荐)
tar -Jxf linux-3.12.tar.xz

你可能感兴趣的:(日常)