VPP環境搭建及配置


git下載源碼:https://github.com/vpp-dev/dpdk

  • VPP編譯:

1.cd vpp; compiler /bin/bash
2.cd vpp; make install-dep 下載依賴包
3.cd vpp/build-root; make distclean; ./boostrap.sh
4.cd vpp;make; make build(debug版);make build-release(release版);

 

  • 配置文件:startup.config

/*****************************************************************************/
unix {
  Interactive //將CLI命令加入到輸入輸出,提供調試
  log /tmp/vpp.log //日志
  full-coredump //請求Linux內核轉儲所有內存映射地址區域
  cli-listen 127.0.0.1:5002 //綁定CLI監聽TCP端口5002
}

api-trace {
  on //程序崩潰時可以追蹤
}

cpu {
  //works <n> //創建n個線程
  //skip_cores <n> //對於worker線程來說跳過前n個核
  main-core 0 //將主線程分配給第0個核
  corelist-workers 1-3 //將worker線程放到核1 2 3上
}

dpdk {
    dev default {
           num-rx-desc 4096
           num-tx-desc 4096
         }
  dev 0000:04:00.0 {num-rx-queues 1} //將網卡與網卡驅動綁定
  dev 0000:04:00.1 {num-rx-queues 1}
  dev 0000:05:00.0
  dev 0000:05:00.1
  num-mbufs 128000 //IO緩沖區數量
  socket-mem 2048 //vpp感知NUMA,在NUMA0上分配2G內存
}

plugins{
    path /sf/data/vpp-multi/vpp-rxq/build-root/install-vpp-native/vpp/lib64/vpp_plugins
    //插件路徑
}
/*****************************************************************************/

  • 運行腳本:run.sh

#!/bin/bash
export LD_LIBRARY_PATH=/sf/data/vpp-1710/vpp/build-root/install-vpp-native/vpp/lib64
/sf/data/vpp-1710/vpp/build-root/install-vpp-native/vpp/bin/vpp 
-c /sf/data/vpp-1710/vpp/startup.conf

 

  • dpkd綁定網卡相關操作

查看dpdk綁定的網卡
cd /sf/dpdk/sbin
dpdk綁定網卡:
./dpdk-devbind --bind=igb_uio 0000:01:00.0
dpdk解綁網卡:
./dpdk-devbind -u 0000:01:00.0
將dpdk管理的網卡換成內核管理
echo “0000:01:00.0” >/sys/bus/pci/driver/igb_uio/unbind
echo “8086 100e” >/sys/bus/pci/drivers/網卡類型/new_id

 

  • vpp命令行:

show int 查看基本信息
show hardware-interfaces 查看收發隊列的個數
show interface rx-placement 查看收發隊列分配
show run 查看vpp運行信息
show threads 查看線程信息
開啟二層轉發:
set interface state TenGigabitEthernet4/0/0 up 
set interface state TenGigabitEthernet4/0/1 up
set interface l2 bridge TenGigabitEthernet4/0/0 200
set interface l2 bridge TenGigabitEthernet4/0/1 200

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM