VPP平台是一个可扩展的框架,提供开箱即用的可供生产环境使用的交换机/路由器功能。 它是一种可在x86 cpu上运行的高性能数据包处理堆栈。VPP采用模块化设计, 该框架允许任何人“插入”新的功能节点而无需更改核心/内核代码。
一
VPP编译(开发版本)
系统:ubuntu18.04.1 TLS
vpp版本:19.01-rc0
建议使用具有root权限的用户,并将源补全,初始源可能不完整。
$ cd /
$ git clone http://gerrit.fd.io/r/vpp
命令行下可以通过make,输入编译时的argument values,默认可用。
VPP的使用
修改vpp startup.conf
(如果没有请自行加上)
/etc/vpp/startup.conf如下:
unix {
nodaemon
02
加载DPDK网卡驱动
加载vfio-pci或者uio_pci_generic等dpdk网卡驱动,将要进行绑定的网卡关闭。
03
启动VPP
# /vpp/build-root/install-vpp_debug-native/vpp/bin/vpp -c /etc/vpp/startup.conf
DBGvpp# show int
Name Idx State MTU(L3/IP4/IP6/MPLS) Counter Count
04
配置网卡
(X.X.X.X是该网卡down掉之前的 ip,192.168.1.2 是与X.X.X.X在一个子网的ip)
DBGvpp# set int ipaddress GigabitEthernet2/2/0 X.X.X.X/24
DBGvpp# set int state GigabitEthernet2/2/0 up
DBGvpp# ip probe 192.168.1.2 GigabitEthernet2/2/0
DBGvpp# sh ip arpTime FIB IP4 Stat Ethernet Interface
DBGvpp# sh ip fibTable0, fib_index 0, flow hash: src dst sport dport proto
05
开启DPDK节点包追踪
DBGvpp# trace add dpdk-input 10
06
测试包转发
从192.168.1.2 pingX.X.X.X, ping 成功,表示配置成功
显示追踪信息:
DBGvpp# show trace
-------------------Start of thread 0 vpp_main -------------------
如果看到上面这样的包, vpp 成功转发。
VPP官方网站:
https://wiki.fd.io/view/VPP
https://fd.io/resources/
送!京东电子卡
活动规则:带文字将本文转发至朋友圈,并将截图发至公众号后台,小编将随机抽取四位幸运读者:
一等奖1名,送50元京东电子卡
二等奖1名,送30元京东电子卡
三等奖2名,送10元京东电子卡
领取方式:后台发送卡号及卡密。