VPP2101 编译步骤和常用命令

2101为例:
环境:
1个处理器2个核,内存8G,硬盘60G;
升级kernel 参考:https://www.cnblogs.com/xzkzzz/p/9627658.html

设备启动后增加一条默认路由 route add default gw 192.168.222.2

1. 编译过程:

$ git clone https://gerrit.fd.io/r/vpp    (如需特性版本可回退到特性版本)
  git reset --hard 3d2d96e5547484290c9368bac0a420afa8c4c068   2101
  
  git reset --hard fce396738f865293f0a023bc7f172086f81da456   20.01
$ cd vpp
  ./extras/vagrant/build.sh  (第一次时执行此命令,预编译代替  make install-dep  和 make install-ext-deps?是否可替代待验证)
   make install-dep   (安装依赖包)
   make install-ext-deps  (安装依赖包)
   make build
$ make pkg-rpm
rpm -ivh *.rpm


2. 安装运行vpp

给虚拟机增加两个网络适配器,一个桥接模式一个主机模式
绑定驱动之前将接口置为down
2.1 ifconfig ens37 down 
2.3 lspci  |grep Intel
或者 执行如下命令查看pci端口号。
[root@localhost scripts]# lshw -class network -businfo
Bus info          Device      Class          Description
========================================================
pci@0000:02:01.0  ens33       network        82545EM Gigabit Ethernet Controller (Copper)
pci@0000:02:05.0  ens37       network        82545EM Gigabit Ethernet Controller (Copper)
pci@0000:02:06.0  ens38       network        82545EM Gigabit Ethernet Controller (Copper)
[root@localhost scripts]# 
2.4 
# 分配巨页1024*2M=2G
echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
# 后面方法也可行sysctl -w vm.nr_hugepages=2048
# 查看大页分配数目
cat /proc/meminfo| grep Huge
原文链接:https://blog.csdn.net/turbock/article/details/106880686


2.5.绑定接口到vfio-pci
   安装vfio驱动
    modprobe vfio
    modprobe vfio-pci
    1.1. 关机开启 Intel® VT-x、VT-d。 和 IOMMU 
    1.2  显示是否支持VT-d或VT-d是否成功打开
      $ dmesg | grep -e DMAR -e IOMMU
      $ cat /proc/cmdline | grep iommu=pt
      $ cat /proc/cmdline | grep intel_iommu=on
    1.3. vim /etc/default/grub
      添加配置信息:添加iommu=pt intel_iommu=on到文件中的GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"行
      GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"//原文件的配置信息
      GRUB_CMDLINE_LINUX_DEFAULT="quiet splash iommu=pt intel_iommu=on"//添加配置信息
    1.4 
       yum install grub2
       grub2-mkconfig -o /boot/grub2/grub.cfg
       reboot
2.6 绑定网卡
2.1.查询网卡物理地址
   lspci |grep Ethernet
   #或采用如下命令
   sudo lshw -class network -businfo
   #回显返回02:05.0 Ethernet controller: Intel Corporation 82545EM Gigabit Ethernet Controller (Copper) (rev 01),其中02.05.0为物理地址。
2.2
   cd /root/vpp/extras/vpp_config/scripts/
   ./dpdk-devbind.py --bind vfio-pci 0000:02:03.0    //将物理网卡绑定驱动
   ./dpdk-devbind.py --bind vfio-pci 0000:02:04.0 
   ./dpdk-devbind.py --status               //查看网卡使用驱动状态

辅助操作:

查看内核版本的命令:
[root@localhost scripts]# uname -srm
Linux 3.10.0-1160.el7.x86_64 x86_64

查看cento7的版本
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost ~]# 
查看大页内存
[root@localhost dpdk-20.11]# cat /proc/meminfo 
MemTotal:        3927244 kB
MemFree:          158372 kB
增加ifconfig命令
yum install net-tools.x86_64

git reset --hard 3d2d96e5547484290c9368bac0a420afa8c4c068   2101

git reset --hard 319a1355156f0587e96463132d8f56906ebb04fe   2005

  build/app/dpdk-testpmd -c7 --vdev=net_pcap0,iface=ens37 --vdev=net_pcap1,iface=ens38 -- -i --nb-cores=2 --nb-ports=2 --total-num-mbufs=2048
  
  

  
  
  磁盘扩充指导:
  https://www.cnblogs.com/maohedashu/p/12082465.html
  
  1.制作VPP的doc文档
具体操作步骤:
$ python3.6 -m pip install --user virtualenv 
$ python3.6 -m virtualenv env
$ source env/bin/activate
$ pip3 install -r docs/etc/requirements.txt
$ cd docs
yum -y install python-sphinx
yum install enchant
make html
编译出的文档路径:vpp/docs/_build/html/index.html
  
  
  编DPDK
  cd /root/vpp/build/external/downloads/dpdk-20.11
  tar xf dpdk.tar.gz
  cd dpdk
  yum install meson
  meson build
  ninja -C build
  设置大页
  mkdir -p /dev/hugepages
  mountpoint -q /dev/hugepages || mount -t hugetlbfs nodev /dev/hugepages
  echo 1024 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值