合 使用 MTR 和WinMTR工具分析Linux和Windows网络延迟及丢包问题
Tags: 网络整理自网络整理自官网丢包WinMTRmtr网络延迟
概述
本地访问云服务器,或者在云服务器上访问其他网络资源时,发现网络卡顿。使用 ping
命令,发现网络存在丢包或时延较高的情况。
丢包或时延较高可能是骨干链路拥塞、链路节点故障、服务器负载高、系统设置问题等原因引起。
在排除云服务器自身原因后,您可以使用 MTR 进行进一步诊断。
MTR 是一款网络诊断工具,其工具诊断出的报告可以帮助您确认网络问题的症结所在。
当网站访问很慢或无法访问时,若已经排除显著的问题,而使用ping命令检测到有明显丢包时,建议您做链路测试。在Windows环境中,推荐优先使用WinMTR工具,或者tracert命令行进行链路测试以判断问题来源。通常情况下,链路测试步骤如下:
- 利用链路测试工具探测网络状况和服务器状态。
- 根据链路测试结果分析处理。
解决方案
本文档以 Linux 和 Windows 云服务器为例,介绍如何使用 MTR 以及如何对 MTR 的报告结果进行分析。
说明
如果本地或云服务器禁用 Ping,则 MTR 将无结果。
请根据运行 MTR 的主机操作系统的不同,查看 MTR 的介绍和使用方法。
- WinMTR 的介绍和使用(Windows 操作系统)
- MTR 的介绍和使用(Linux 操作系统)
Linux系统
MTR:Linux 平台上诊断网络状态的工具,继承了 Ping、traceroute、nslookup 的功能,默认使用 ICMP 包测试两个节点之间的网络连接情况。
安装 MTR
目前现有的 Linux 发行版本都预装了 MTR,如果您的 Linux 云服务器没有安装 MTR,则可以执行以下命令进行安装:
CentOS 操作系统:
1yum install mtrUbuntu 操作系统:
1sudo apt-get install mtr
MTR 相关参数说明
- -h/--help:显示帮助菜单
- -v/--version:显示 MTR 版本信息
- -r/--report:结果以报告形式输出
- -p/--split:与 --report 相对,分别列出每次跟踪的结果
- -c/--report-cycles:设置每秒发送的数据包数量,默认是10
- -s/--psize:设置数据包的大小
- -n/--no-dns:不对 IP 地址做域名解析
- -a/--address:用户设置发送数据包的 IP 地址,主要用户单一主机多个 IP 地址的场景
- -4:IPv4
- -6:IPv6
使用示例
以本机到 IP 为119.28.98.39的服务器为例。
执行以下命令,以报告形式输出 MTR 的诊断报告。
1 | mtr 119.28.98.39 --report |
返回类似如下信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | [root@VM_103_80_centos ~]# mtr 119.28.98.39 --report Start: Mon Feb 5 11:33:34 2019 HOST:VM_103_80_centos Loss% Snt Last Avg Best Wrst StDev 1.|-- 100.119.162.130 0.0% 10 6.5 8.4 4.6 13.7 2.9 2.|-- 100.119.170.58 0.0% 10 0.8 8.4 0.6 1.1 0.0 3.|-- 10.200.135.213 0.0% 10 0.4 8.4 0.4 2.5 0.6 4.|-- 10.200.16.173 0.0% 10 1.6 8.4 1.4 1.6 0.0 5.|-- 14.18.199.58 0.0% 10 1.0 8.4 1.0 4.1 0.9 6.|-- 14.18.199.25 0.0% 10 4.1 8.4 3.3 10.2 1.9 7.|-- 113.96.7.214 0.0% 10 5.8 8.4 3.1 10.1 2.1 8.|-- 113.96.0.106 0.0% 10 3.9 8.4 3.9 11.0 2.5 9.|-- 202.97.90.206 30.0% 10 2.4 8.4 2.4 2.5 0.0 10.|-- 202.97.94.77 0.0% 10 3.5 4.6 3.5 7.0 1.2 11.|-- 202.97.51.142 0.0% 10 164.7 8.4 161.3 165.3 1.2 12.|-- 202.97.49.106 0.0% 10 162.3 8.4 161.7 167.8 2.0 13.|-- ix-xe-10-2-6-0.tcore2.LVW 10.0% 10 168.4 8.4 161.5 168.9 2.3 14.|-- 180.87.15.25 10.0% 10 348.1 8.4 347.7 350.2 0.7 15.|-- 180.87.96.21 0.0% 10 345.0 8.4 343.4 345.0 0.3 16.|-- 180.87.96.142 0.0% 10 187.4 8.4 187.3 187.6 0.0 17.|-- ??? 100.0% 10 0.0 8.4 0.0 0.0 0.0 18.|-- 100.78.119.231 0.0% 10 187.7 8.4 187.3 194.0 2.5 19.|-- 119.28.98.39 0.0% 10 186.5 8.4 186.4 186.5 0.0 |
主要输出的信息如下:
- HOST:节点的 IP 地址或域名。
- Loss%:丢包率。
- Snt:每秒发送的数量包的数量。
- Last:最近一次的响应时间。
- Avg:平均响应时间。
- Best:最短的响应时间。
- Wrst:最长的响应时间。
- StDev:标准偏差,偏差值越高,说明各个数据包在该节点的响应时间相差越大。
mtr分析链路测试结果
以如下链路测试结果示例图为基础进行阐述。