vpp+dpdk安装,使用一个路由例子

少年辛苦终身事,莫向光阴惰寸功。这篇文章主要讲述vpp+dpdk安装,使用一个路由例子相关的知识,希望能为你提供帮助。
本人使用时centos7
建议在安装的时候,建立一个空的文件夹,然后里面使用下面这些命令
mkdir vppcode //建立一个文件夹 

解决一些软件依赖问题
sudo yum install epel-release mbedtls python36
安装vpp
sudo yum install vpp
sudo yum install vpp vpp-plugins vpp-devel vpp-debuginfo vpp-ext-deps vpp-api-python vpp-api-lua vpp-api-java
yum list vpp*
sudo systemctl restart vpp
启动是
vppctl


dpdk的安装
去dpdk官网下载一个19稳定版(stable)
cd dpdk-xx // 进入你刚刚下载好的文件夹里面,使用usertools/dpdk-setup.sh启动脚本编译

选择是39号,安装dpdk运行时候的环境,一般会缺少numa等这些,缺少就补啥,成功就行。

从43到49,都按一边,从43开始

46和47的时候,我一般是使用128,也可以更大
48主要是查看网卡信息,49才是绑定,绑定时候
例子,0000:02:08.0这个是我们输入绑定的,Active这个表面当前这个网卡在使用,是无法被绑定的,只能另外开一个终端,使用ifconfig eth5 down(我这里是eth5,你用就改成你自己的),然后才可以绑定,一定要线down,然后再输入0000:02:08.0进行绑定。
?0000:02:08.0? 82545EM Gigabit Ethernet Controller (Copper) 100f if=eth5 drv=e1000 unused=igb_uio,uio_pci_generic ?*Active*?

之后就是修改vpp的启动文件
首先查看一下cpu个数
输入 命令 lscpu
我的cpu个数是1个
进入这个vpp启动的配置文件
sudo vim /etc/vpp/startup.conf
unix
nodaemon
log /var/log/vpp/vpp.log
full-coredump
cli-listen /run/vpp/cli.sock
gid vpp


dpdk
dev default
num-rx-queues 1
num-tx-queues 1
num-rx-desc 512
num-tx-desc 512
vlan-strip-offload on

dev 0000:04:00.0
dev 0000:05:00.0
uio-driver vfio-pci
socket-mem 2048,2048
no-tx-checksum-offload

里面的dev 0000:04:00.0这个就是你之前绑定的网卡号,把你绑定的替换这个就行了。里面的东西都要改动。
查看vpp里面的网卡
【vpp+dpdk安装,使用一个路由例子】
set interface state GigabitEthernet2/2/0up
set interface state GigabitEthernet2/3/0up

set interface ip address GigabitEthernet2/2/0192.168.6.100/24
set interface ip address GigabitEthernet2/3/0192.168.7.100/24

show interface

  • PC1: 设置IP 192.168.6.110/24,网关 192.168.6.100
  • PC2: 设置IP 192.168.7.110/24,网关 192.168.7.100
  • PC1和PC2能互相ping
PC1和PC2可以使用另外两张网卡
ping -S 192.168.6.110 192.168.7.110




    推荐阅读