我正在寻找一个监控工具来测试抖动、ICMP、Traceroute 和其他网络问题。它可以是我从纽约和伦敦的公司网络运行的应用程序,也可以是可以为我提供此项服务的 SAAS 服务。
我的数据中心有一个问题,我想修复它。它发生在一天中的不同时间。我想运行监视器几天并保存结果,以便我们进行分析。
答案1
抖动测量
为了获得精确的抖动统计数据,您应该使用专用协议,例如思科的 IP SLA,另见NIL 的维基了解使用信息。IOS 有一个 UDP 响应器,可用作延迟探测器。
我不建议使用依赖于ping
测量抖动的解决方案,因为 ping 依赖于终端主机的操作系统调度程序,而它本身就是抖动的来源。
思科和其他有针对性的解决方案尽力确保您的统计数据尽可能准确。
跟踪路由/ICMP 日志记录
mtr --report -c 5 4.2.2.2
使用 MTR,它有一种模式可以迭代地将跟踪路由的结果记录到文件中。MTR 使用 ICMP,因此您可以一次删除两个项目。运行到今天当地时间 11:30 的Linux 单行 CLI 将是
python -c $'import subprocess as sub;from datetime import datetime as dt;dest='4.2.2.2';finish=dt(2012,6,27,11,30);\nwhile (dt.now()<finish): sub.call(["mtr --report -c 5 %s" % dest])' > mtr_logfile.txt
如果您更喜欢独立脚本...
import subprocess as sub
from datetime import datetime as dt
dest='4.2.2.2'
finish=dt(2012,6,27,11,30)
while (dt.now()<finish):
sub.call(["mtr --report -c 5 %s" % dest])
答案2
如果你正在使用或可以访问 Linux 机器,那么你可能需要看看地铁
mtr 将 traceroute 和 ping 程序的功能结合在一个网络诊断工具中。
答案3
Wireshark 完美地实现了您所描述的功能,并且还测量了 RTP 流的抖动。Opmanager 可以很好地监控 ping,因此您也可以看到抖动。
答案4
有很多选择。如前所述,wireshark 可以做到这一点,但只能按需执行,而不是持续执行。为了捕获所有内容,您可能需要查看网络管理和分析实用程序,如 Snort/Solarwinds/Empirix/Agilant,它将利用以太网分接头来吸收通过线路的所有内容(不确定前两个是否允许您这样做,后两个适用于 RTP 流和 SIP 流量)。