主题中讨论的其他器件:SK-AM62-LP
工具/软件:
我们正在实施 UDP 协议、但 我们对所观察到的大量数据包丢失感到惊讶。 因此、我们尝试运行 enet_lwip_cpsw 示例、因为它包含 iperf 支持。
从 docs ( https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/latest/exports/docs/api_guide_am62x/EXAMPLES_ENET_LWIP_CPSW.html )运行建议的命令
iperf -c 192.168.1.100 -i 5 -t 20 -d
尽管吞吐量可能略低于预期。 但是、 UDP 测试开箱即用、例如:
iperf -c 10.14.15.60 -i 1 -t 5 -b 10m -u
据我 所知、udp_iperf.c 希望 iperf 从数据报_id 0开始、但在我的两种设置(一个 Mac 和一个 Linux、一个带有 SK-AM62-LP、一个带有我们自己的电路板)中、它从1开始(或者、网络始终丢弃第一个数据包、但这似乎很奇怪)。
将行205更改为
[1] 0.0- 5.1秒 11.9 MB 19.6 MB/秒 7536/16009 (47%)
[1] 0.0-5.1秒 7506个数据报收到的顺序错误
约50%的数据包丢失是相当一致的(并且非常高)。 增加(例如-b 40m)或减少带宽不会产生太大差异、直到我们降至150k (ish)以下。 然后(有时)提高一点(40%)。 在-b 10k 17%时。
大量的数据报失灵,我发现更令人惊讶。 我的 第一个想法是在传入队列(?)中出现了问题。 我测试了开关和直接连接到 PC 的设备。
你看到了同样的 行为在你的最后? 您是否知道导致此行为的原因以及是否有解决方法?