DPDK 19.08.2 环境配置以及编译错误解决

DPDK(Data Plane Development Kit)是一个开源的数据平面开发工具包,主要用于高性能数据包处理。它提供了一组优化的用户空间库和驱动程序,以帮助开发者构建高性能、低延迟的数据平面应用程序。DPDK广泛应用于网络功能虚拟化、云计算、边缘计算、高性能计算等领域,以满足对网络数据处理速度和效率的高要求。

以下为DPDK部署在VMware上ubuntu虚拟机的方法:

一、虚拟机配置

以下Linux虚拟机为ubuntu16.04版本

1. 在存放虚拟机的文件夹中找到.vmx文件,更改其中两处设置,使虚拟机支持多队列网卡。

ethernet0.virtualDev = "vmxnet3"
ethernet0.wakeOnPcktRcv = "TRUE"

2. 将虚拟机的配置调整为8核8G内存。

二、源码下载

DPDK官网选择dpdk版本,下载源码压缩包

下载到Windows之后,一定要将压缩包转移到Linux系统下进行解压(不能在Windows系统下解压然后复制到Linux系统,复制的过程会报错)

使用tar命令解压压缩包到你想保存的位置

tar -xvf dpdk-19.02.8.tar -C /path/to/extract

三、基本环境配置

1. 进入dpdk-stable-19.02.8文件夹内。

cd /home/user/share/dpdk/dpdk-stable-19.08.2/

2. 执行指令进入dpdk设置界面,根据提示输入39,执行编译命令。

./usertools/dpdk-setup.sh

3. 遇到编译错误:缺少numa.h头文件,这是由于DPDK需要NUMA(非统一内存访问)支持。

CC eal_memory.o /home/user/share/dpdk/dpdk-stable-19.08.2/lib/librte_eal/linux/eal/eal_memory.c:32:18: fatal error: numa.h: No such file or directory compilation terminated. /home/user/share/dpdk/dpdk-stable-19.08.2/mk/internal/rte.compile-pre.mk:114: recipe for target 'eal_memory.o' failed make[7]: *** [eal_memory.o] Error 1

解决方法:执行命令获取numa.h头文件

sudo apt-get update
sudo apt-get install -y libnuma-dev

下载完后,重新进行第2步再次编译

4. 等待片刻后,编译成功

5. 编译成功之后,输入60退出setup.sh。进入root权限,配置环境变量(重启需重新配置,路径自定义)。

sudo su
export RTE_SDK=/home/user/share/dpdk/dpdk-stable-19.08.2/
export RTE_TARGET=x86_64-native-linux-gcc

6. 选择一张网卡将其关闭,用于绑定dpdk(示例关闭ens160网卡)。

ifconfig -a
ifconfig ens160 down

7. 再次执行./usertools/dpdk-setup.sh进入配置界面,依次执行43~47、49号命令。

46.47号巨页大小设置为512,49号命令绑定网口选择上一步关闭的网口,输入其编号(图例为已经绑定好的界面)

至此,dpdk基础环境配置完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值