仅对英特尔可见 — GUID: vxr1565383013155
Ixiasoft
1. 关于本文档
2. 系统要求
3. 硬件安装
4. 安装OPAE软件
5. OPAE工具
6. 样例测试:本地环回(Native Loopback)
7. 安装Intel XL710驱动程序
8. 配置以太网接口
9. 使用Data Plane Development Kit (DPDK)测试网络环回
10. 正常关机
11. 单粒子翻转(Single Event Upset (SEU))
12. Intel Acceleration Stack用户指南: Intel® FPGA PAC N3000的文档修订历史
A. 故障排除
B. 通过BMC的Production版本和 Intel® Arria® 10映像对 Intel® FPGA PAC N3000进行升级
C. 配置4.19 Kernel
D. fpgabist样例输出
仅对英特尔可见 — GUID: vxr1565383013155
Ixiasoft
9.2. 使用数据包生成器进行测试
您可以在2x2x25G和8x10G配置上进行此测试。
- 硬件设置:在两个QSFP端口之间连接环回电缆。
图 21. 测试图
- 将pktgen-3.7.1.zip下载到$RTE_SDK目录。解压缩并构建Pktgen。以root用户运行以下命令:
$ cd $RTE_SDK
$ unzip pktgen-3.7.1.zip
$ cd pktgen-3.7.1
注: 如果使用RHEL OS,那么要按照INSTALL.md file中所述的其他设置说明Setup Prerequisites on Red Hat-based Systems。$ export RTE_SDK=<DPDK Source PATH>
$ export RTE_TARGET=x86_64-native-linuxapp-gcc
$ export C_INCLUDE_PATH=/usr/local/src/lua-5.3.5/src
注: Pktgen取决于上面定义的所有三环境变量(three-environment variable)。$ sudo -E make
- 打开一个新的终端窗口。使用此终端窗口运行DPDK testpmd应用程序。Intel XL710 #2的两个端口分配给testpmd。端口拓扑设置为成对的(paired)。因此,转发在端口对之间进行。例如:(0,1);表示在端口0上接收到的任何内容都会转发到端口1。
注: 将XL710 B:D.F和FPGA B:D.F替换成系统的特定值。
$ cd $RTE_SDK
$ sudo ./x86_64-native-linuxapp-gcc/app/testpmd -l 1,3 -n 4 -w \ 0000:14:00.0,switch_mode=IPN3KE_0@15:00.0_0 -w \ 0000:14:00.1,switch_mode=IPN3KE_0@15:00.0_1 -w \ 0000:15:00.0 --vdev 'ifpga_rawdev_cfg0,ifpga=15:00.0,port=0' \ -- -i --no-numa --port-topology=paired
testpmd> start
现在在pktgen上启动流量(步骤4)。
开始pktgen后(步骤4)运行以下命令:
testpmd> show port stats all
样例输出:You should see 10000 pkts received on port 0 and then transmitted from port 1 of XL7102. The “--port-topology=paired” causes forwarding between pairs of ports (0,1) ie Traffic received on 0000:14:00.0 is forwarded to 0000:14:00.1 and then transmitted. ######## NIC statistics for port 0 ######## RX-packets: 10000 RX-missed: 0 RX-bytes: 10200000 RX-errors: 0 RX-nombuf: 0 TX-packets: 0 TX-errors: 0 TX-bytes: 0 Throughput (since last show) Rx-pps: 496 Tx-pps: 0 ########################################### ########## NIC statistics for port 1 ########### RX-packets: 0 RX-missed: 0 RX-bytes: 0 RX-errors: 0 RX-nombuf: 0 TX-packets: 10000 TX-errors: 0 TX-bytes: 10200000 Throughput (since last show) Rx-pps: 0 Tx-pps: 496 ############################################
- 在终端1上启动pktgen。XL710 1的两个端口分配给pktgen。如要对变量进行了解,请参考EAL Commandline Options。
注: 将XL710 B:D.F替换成系统特定的值。如有错误,请参考DPDK中的故障排除。
$ cd $RTE_SDK/pktgen_3.7.1
$ sudo ./app/x86_64-native-linuxapp-gcc/pktgen -l 0,2,4 -n 4 \ --proc-type primary --log-level 7 --file-prefix pg -w 0000:16:00.0 \ -w 0000:16:00.1 -- -T -P -m 2.0 -m 4.1 -f themes/black-yellow.theme
配置pkt大小和数量:
$ set all size 1024
$ set all count 10000
$ start 0
样例输出:您应该看到从XL7101的端口0发送了10000 pkt,并在端口1上接收。
图 22. 样例输出注: pktgen工具中的链路状态可能显示down,这可以忽略。
变量 | 说明 | 使能的功能 |
---|---|---|
-w <"FPGA BDF"> --vdev 'ifpga_rawdev_cfg0,ifpga=<"FPGA BDF">,port=0’ | AFU名称格式为FPGA BDF|Port。每个FPGA最多可分成四个模块。Port标识UFU比特流属于哪个FPGA模块,但是当前仅支持Port 0 (Ethernet)。 | 这会触发rawdev PMD driver热插拔AFU到IFPGA BUS。 |
-w <XL710 port BDF> | 将Intel XL710 NIC PF加入白名单。 |