我需要测试FTP应用程序的丢包.我使用了Wireshark数据包嗅探器,我得到了TCP Stream.
如何使用Wireshark找到丢包?
通过查看Wireshark中的转储,根据您想要查看的层,数据丢失和其他相关指标(如误码率(BER))很难或根本无法通过经验看出.而且很多都高度依赖于您正在使用的协议以及实现它的软件/固件.
例如,我对Wi-Fi路由器有过这方面的经验.我需要凭经验测试给定Wi-Fi链路的BER.但事实证明,802.11具有类似TCP的基于CRC的重传系统,所有这些都发生在链路层.
因此,例如,您可以从Wi-Fi设备A向Wi-Fi设备B发送UDP数据包.在传输过程中,几个比特被翻转,设备B看到CRC错误并发送重传请求.数据包再次被发送,并再次被破坏.然而,在第三次尝试中,数据包完成得很好.
从这个,您希望看到某种丢包指标吗?好吧,不幸的是没有.整个交换发生在Wireshark下面.它看到的只是UDP数据包成功发送,但需要三倍于正常情况才能到达那里.(当发生链路层CRC错误时,我不得不进行内核修改以发出通知.这太乱了!)