ndndpdk测试流程
首先要检查机器硬件是否符合要求,在测试中使用的是40G的双口无线网卡。可以通过lspci | grep Ethernet
指令查看所有网卡的PCI号及描述信息。
然后根据PCI号为每个机器进行dpdk的配置,主要包括绑定网卡和分配大页两部分。其中绑定网卡时必须将无线连接中对应的网卡连接关闭,分配大页应该根据机器的实际内存性能进行划分,具体的配置脚本如下:
1 | !/bin/bash |
在为每个机器对应的网卡进行dpdk的绑定后,先进行forwarder的配置,首先执行dpdksvc.sh启动dpdk服务。
1 | gnome-terminal --tab -- bash -c "echo "123"|sudo -S ndndpdk-svc;exec bash" |
然后执行run.sh启动forwarder转发模块
1 | "eal": 这部分配置了EAL(Environment Abstraction Layer)相关的参数,其中包括要使用的CPU核心列表。在这个例子中,使用了编号为26到35、41到45、81到87的CPU核心。 |
fw-args.json
配置文件如下:,这些都是dpdk的参数
1 | { |
有两个课题,高性能路由部分使用的是ndndpdk实现了40G的高速数据转发,具体测试方式如下:
执行producer.sh
脚本
1 | !/bin/bash |
其中执行了producer_setup.sh
脚本
1 | sudo ndndpdk-ctrl activate-trafficgen < gen-arg.json |
gen-arg.json
配置了使用的CPU核,内存池等参数,这些都是dpdk的参数。
1 | { |
gen-producer.json
,producer相关参数,包括face,前缀,数据包的有效负载长度等
1 | { |
执行consumer.sh
脚本
1 | !/bin/bash |
其中执行了consumer_setup.sh
脚本
1 | activate-trafficgen对应流量发生器 |
gen-arg.json
配置了使用的CPU核,内存池等参数,这些都是dpdk的参数。
1 | { |
gen-consumer.json配置了consumer相关参数,包括face,名称前缀等。
1 | { |