linux系统安装dpdk

预安装编译dpdk所需软件

dpdk20.11与之前版本相比,使用了meson和ninjia的编译方式

# apt install python3.8 python3-pyelftools

由于meson依赖python3.7及以上版本,这里选择安装python3.8

如果选择pip安装meson和ninja

# pip3 install meson ninja --user

(pip3安装meson默认安装在/home/tp/.local/bin下,需要将其添加到环境变量中,之后才可使用:

# export PATH=PATH : PATH:PATH:HOME/.local/bin)

如果选择apt/rpm方式安装meson和ninja

# apt install meson ninja-build

建议选择apt方式安装,官方选定匹配版本,而且不用编译,安装相对速度快。另外相当于全局,其他用户也可以用。

1. 下载dpdk库

方式1:从github下载

# git clone git@github.com:DPDK/dpdk.git

# git checkout v22.11-rc3

方式2:从官网ftp下载

DPDK官网下载列表

20.11版本将igb_uio代码移除,有需要的从git://dpdk.org/dpdk-kmods下载编译安装

#meson build

#cd build

#ninja

#ninja install

检查是否安装成功:

#pkg-config --modversion libdpdk

v22.11-rc3

安装网卡驱动
#git clone http://dpdk.org/git/dpdk-kmods

#cd dpdk-kmods/linux/igb_uio

#make

#modprobe uio

#insmod igb_uio.ko intr_mode=legacy(注意:加载驱动时要带着参数intr_mode= legacy,如果不加参数,将会有问题!)

#lsmod | grep uio
#rmmod igb_uio

绑定网卡之前需要关闭linux下的网卡

#Ifconfig eth0 down

进入目录usertools

#./dpdk-devbind.py –b=igb_uio 0000:01:08.1(eth0对应的bus-info)

#./dpdk-devbind.py –s

减绑用-u

#./dpdk-devbind.py –u 0000:01:08.1

将网卡绑定为原始驱动

#./dpdk-devbind.py –b igb 0000:01:08.1

配置大内存页面

配置Huge Pages:DPDK需要使用Huge Pages来提供更高的内存性能

#usertools/dpdk-hugepages.py --setup 1G

具体配置多大,参考官网说明。这个1G代表一个页面大小,多个就是n*1G。

DPDK技术介绍

详解DPDK技术知识点

高性能网络框架-DPDK你不得不知道的点

DPDK的源码编译安装

DPDK 22.07安装-ubuntu 22.04

dpdk-20.11 学习篇 编译和安装

posted @ 2024-01-17 17:29  hugingface  阅读(834)  评论(0)    收藏  举报