2022
我们一起努力

mtr网络分析(mtt分析)

本文目录:

  • 1、如何使用WinMTR对网络进行测试
  • 2、如何用WinMTR分析/排查网络延迟与掉包
  • 3、网络丢包&网络延迟排查

如何使用WinMTR对网络进行测试

验证数据包丢失

在分析WinMTR/MTR输出结果时,您需要查看两件事情:丢包和延迟。首先,我们来讨论丢包。如果您在任何一个节点看到有掉包,这可能表示这个 特定的路由节点有问题。然而,有些服务提供商会限制WINMTR/MTR工具发送的ICMP传输。这会对数据包丢失造成错觉,但事实上并未丢包。要确认您 看到的数据包丢失是否是由于服务提供商限制造成的,您可以查看随后的一跳路由节点。如果该跳显示丢失0%,那么您可以肯定 是ICMP限制,实际未丢包。 看下面的例子:

在这种情况下,从第一跳到第二跳的丢包可能是由于第二跳路由ICMP限制导致的。因为剩余的8个路由节点都没有丢包。这种情况下,采取掉包最少的节点作为它实际的丢包率。

再考虑一个例子:

在这种情况下,你会看到第三跳和第四跳之间有60%的丢包。您可以假设这是由于路由设备限制导致的丢包。然而,您可以看到最后一跳是显示40%的丢包。但产生不同的丢包结果时,始终采用最后一跳的丢包率。

有些丢包可能产生在路由返回的时候。数据包可以正确无误地到达目的地,但未正常返回。这也会计算在丢包率中,但您从WinMTR/MTR结果报告中很难分辨。因此,在任何时候您都需要同时收集两个方向的WinMTR/MTR结果报告。

如何用WinMTR分析/排查网络延迟与掉包

影响网速延迟/掉包的问题错综复杂,不能一概而论。数据包在网络中传递过程中也会经过多个节点到达目的地,其中数据包通过何种协议或选择何种路径去 往目的地都有关系(好比你开车去往目的地有多条路可到达,选择哪条线路,多少红灯,车辆拥堵都会影响到达目的地速度),数据包传递也是如此,整个过程不是 谁或某个机构能完全控制的,即使相同地点在不同时间也会有不同的延时与丢包,今天ping反应情况是120ms,明天可能会340ms,所以数据在特定时 间和环境才有参考价值。还有些其他因素诸如网页代码不优,被病毒攻击造成服务器负担等也会影响客户端访问速度。

WinMTR/MTR

WinMTR/MTR这款工具是非常有用的工具,反应当时主机网络的延迟,跳点,丢包等情况。

我们重点关心的是数据包在我们线路上的情况,如果你一直认为网速慢和我们有关,请使用该工具提取数据报表附于工单提交向我们反应,我们工程师来分析是否在可控范围内作出优化线路等调整。

安装WinMTR/MTR

Windows系统

下载WinMTR/MTR

Debian和Ubuntu系统

确认所需安装包已经安装,随后安装WinMTR/MTR

apt-get update

apt-get upgrade

apt-get install mtr-tiny

CentOS和Fedora系统

确认所需安装包已经安装,随后安装WinMTR/MTR

yum update

yum install mtr

Windows版本使用方法

解压文件

在 host输入: 51hosting.com (请用你要测试的网站的域名或者ip地址替换51hosting.com)

点start后等5分钟

选择Export to TEXT

把导出报告提交工单附件中

WinMTR测试结果名词解释

Copy Text to clipboard - 将结果以文本形式复制到剪贴板

Copy HTML to clipboard - 将结果以HTML形式复制到剪贴板

Export TEXT - 将结果以文本形式导出

Export HTML - 将结果以HTML形式导出

Options - 设置

Hostname:到目的服务器要经过的每个节点主机IP或名称 。

Nr:经过节点的数量;以上图洛杉矶美国机房为例子:一共要经过12个节点,其中第一个是当地宽带商的网关。

Loss%:ping 数据包回复失败的百分比;由此可判断那个节点(线路)出现故障,是服务器所在机房还是国际路由干路。

Sent:已经传送的数据包数量 。

Recv:成功接收的数据包数量 。

Best:回应时间的最小值 。

Avrg:平均回应时间 。

Worst:回应时间的最大值。

Last:最后一个数据包的回应时间。

举例说明

WinMTR的使用方法如下: 双击WinMTR.exe运行,打开后,我们可以看到Host一栏的文本框,在Host文本框内输入您要追踪的IP或者域名,再按 Start ,此时就可以看到如下图所示的 tracert 与 Ping 的结果,图例如下:

测试结束后,我们可以将结果导出:

Hostname:到目的服务器要经过的每个节点主机IP或名称 。

Nr:经过节点的数量;以上图洛杉矶美国KT机房为例子:一共要经过12个节点,其中第一个是当地宽带商的网关。

Loss%:ping 数据包回复失败的百分比;由此可判断那个节点(线路)出现故障,是服务器所在机房还是国际路由干路。 (其中图中倒数第2跳显示100%丢失,那是正常的因为有些节点禁ping后是无法取得数据的。

Sent:已经传送的数据包数量

Recv:成功接收的数据包数量

Best:回应时间的最小值

Avrg:平均回应时间

Worst:回应时间的最大值

Last:最后一个数据包的回应时间

不同的网络情况,MTR都会返回不同的结果。您需要对MTR结果做一个正确的分析。

网络丢包&网络延迟排查

网络问题往往都是比较复杂的,并且通常定位问题后也无能为力,只能推动相关运营商解决;

常见网络丢包的原因:

ICMP是一个网络层的协议,用来测试网络的连通性,因为ICMP非传输层,所以不需要端口号, ping 、 traceroute 、 mtr 都使用的是ICMP协议, 这也是 ping 命令不能指定端口号的原因;ICMP只能搭配IPv4使用,如果是IPv6的情况下, 需要是用ICMPv6;

ICMP协议可以用来:

ICMP协议的实现,是内嵌在IP包里的,IP包头部有固定的20个字节,如果IP包头里面协议字段设置为ICMP,则IP包的包体里是ICMP包体;

ICMP包体可以简单理解为 type 加 content , 有2个字节用于标识是什么类型的ICMP包,剩下的字节存储内容;ICMP的具体使用,举例如下:

ping命令会先发送一个 ICMP Echo Request给对端,对端接收到之后, 会返回一个ICMP Echo Reply,若没有返回,就是超时了,会认为指定的网络地址不存在。

ping能验证网络的连通性,并会统计响应时间和TTL(IP包中的Time To Live,生存周期),也可以用于查看网络丢包率;

traceroute也是基于ICMP协议实现的。可用于打印执行主机到目标主机之前经历多少路由器。

mtr 命令实际是集成了 traceroute 、 ping 的功能;

mtr 底层首先利用 traceroute 计算出所有的路由器节点,然后针对每个路由器节点发送 ping 命令,最后对数据做了汇总和展示;

如何分析MTR报告?

tcpdump本身是排查tcp/ip 网络问题的大杀器;

tcpdump可以单独使用,但结合 wireshark.app 等可视化软件来使用会更加直观;

tcpdump使用本身较为复杂,可以参考相关官方文档;

这里举例说明如何使用tcpdump抓取ICMP包:

ICMP协议

网络丢包分析

网络排查工具mtr使用

mtr网络分析】的内容来源于互联网,如引用不当,请联系我们修改。

赞(0)
文章名称:《mtr网络分析(mtt分析)》
文章链接:https://www.fzvps.com/148321.html
本站文章来源于互联网,如有侵权,请联系管理删除,本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
图片版权归属各自创作者所有,图片水印出于防止被无耻之徒盗取劳动成果的目的。

评论 抢沙发

评论前必须登录!