【发布时间】:2015-09-18 13:48:01
【问题描述】:
我使用一个用 SNMP API 编写的 java 文件异步轮询了模拟网络中的 SNMP 设备。在 30 秒的轮询时间内,我发送了大约 350000 个 V1 Get 请求。
我的 SNMP API 侦听器显示所有请求都已发送并获得每个请求的成功响应。但是当我使用wireshark捕获数据包时,并没有显示所有数据包都已发送。当我在wireshark中检查snmp数据包的请求id时,我可以发现最后一个请求的requst id与SNMP API发送的数据包总数相同。但是wireshark中缺少一些其他SNMP数据包的请求ID。
wireshark 是否有任何限制,比如它每秒只能捕获特定数量的数据包?
为什么会出现这种情况?请帮我解决这个问题。
提前致谢。
【问题讨论】:
-
您是否看到任何 SNMP 帧?
-
捕获中丢失了多少数据包? 35k 是相当少的几个包,只能在 30 秒内发送,所以也许 Wireshark 无法处理负载?
-
1秒轮询,wireshark成功抓包。但是当轮询时间增加时,就会发生丢包。对于 30 秒的轮询,35k 个请求,wireshark 错过了大约 3k 个请求。如果我的 API 显示发送了 35k 个请求,wireshark 中的第一个请求 id 是 1,最后一个请求 id 是 35k。但是在 1 到 35k 之间,wireshark 中缺少一些请求。 Wireshark 有最大负载限制吗?