pkt-gen dpdk 不发送任何数据包问题
pkt-gen dpdk not sending any packets issue
我正在尝试使用 pktgen-dpdk 从 dpdk 机器向 DUT 发送 udp 数据包。但我看不到统计数据中发送的任何内容,也看不到 DUT 上收到的任何内容。
这是我正在使用的配置:
dpdk verion: DPDK 20.11.0
pkt-gen version: 20.11.3
ena driver version: 2.4.0
os :amazon linux 2 aws ec2 instance
pkt-gen pkt文件如下:
stop 0
set 0 dst mac 02:EC:BC:CD:C7:D6 # i try both dst mac address for the gateway and for the DUT
set 0 src ip 192.168.2.187/24
set 0 dst ip 192.168.2.197
set 0 sport 22
set 0 dport 22
set 0 type ipv4
set 0 proto tcp
set 0 size 64
start 0
我还尝试了多种不同的协议,甚至通过为端口启用 icmp 并使用 ping4 尝试了一个简单的 icmp,但没有发送任何内容。端口状态如下:
port o status
此外,当我尝试使用 testpmd 发送流量时
我明白了:
---------------------- Forward statistics for port 0 ----------------------
RX-packets: 11 RX-dropped: 0 RX-total: 11
TX-packets: 231819494 TX-dropped: 2029505748 TX-total: 2261325242
----------------------------------------------------------------------------
+++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++
RX-packets: 11 RX-dropped: 0 RX-total: 11
TX-packets: 231819494 TX-dropped: 2029505748 TX-total: 2261325242
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
似乎所有传输都被立即丢弃
问题在于 pkt-gen 无法识别 DPDK NIC ENA
,因为它是在共享库模式下构建的。解决问题
- 用
find / -name "librte_*.so" | grep ena
确定ENA
PMD所在的文件夹
- 设置环境路径
export LD_LIBRARY_PATH=[path to pmd folder]
- 确保 运行 pktgen 带有参数
-d librte_net_ena.so -l 1-3 -- -P -m "2.0, 3.1"
注意:问题也通过实时调试解决了。
我正在尝试使用 pktgen-dpdk 从 dpdk 机器向 DUT 发送 udp 数据包。但我看不到统计数据中发送的任何内容,也看不到 DUT 上收到的任何内容。 这是我正在使用的配置:
dpdk verion: DPDK 20.11.0
pkt-gen version: 20.11.3
ena driver version: 2.4.0
os :amazon linux 2 aws ec2 instance
pkt-gen pkt文件如下:
stop 0
set 0 dst mac 02:EC:BC:CD:C7:D6 # i try both dst mac address for the gateway and for the DUT
set 0 src ip 192.168.2.187/24
set 0 dst ip 192.168.2.197
set 0 sport 22
set 0 dport 22
set 0 type ipv4
set 0 proto tcp
set 0 size 64
start 0
我还尝试了多种不同的协议,甚至通过为端口启用 icmp 并使用 ping4 尝试了一个简单的 icmp,但没有发送任何内容。端口状态如下: port o status
此外,当我尝试使用 testpmd 发送流量时 我明白了:
---------------------- Forward statistics for port 0 ----------------------
RX-packets: 11 RX-dropped: 0 RX-total: 11
TX-packets: 231819494 TX-dropped: 2029505748 TX-total: 2261325242
----------------------------------------------------------------------------
+++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++
RX-packets: 11 RX-dropped: 0 RX-total: 11
TX-packets: 231819494 TX-dropped: 2029505748 TX-total: 2261325242
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
似乎所有传输都被立即丢弃
问题在于 pkt-gen 无法识别 DPDK NIC ENA
,因为它是在共享库模式下构建的。解决问题
- 用
find / -name "librte_*.so" | grep ena
确定 - 设置环境路径
export LD_LIBRARY_PATH=[path to pmd folder]
- 确保 运行 pktgen 带有参数
-d librte_net_ena.so -l 1-3 -- -P -m "2.0, 3.1"
ENA
PMD所在的文件夹
注意:问题也通过实时调试解决了。