西西软件园多重安全检测下载网站、值得信赖的软件下载站!
软件
软件
文章
搜索

首页 → 业内动态 → 业内资讯 → 丢包 3% 还是 0%:MTR 报告里那三个问号才是关键

丢包 3% 还是 0%:MTR 报告里那三个问号才是关键

相关软件相关文章发表评论 来源:本站整理时间:2026/11/5 7:37:15字体大小:A-A+

作者:xiix点击:0次评论:0次标签: MTR traceroute 路由追踪 线路诊断 网络丢包分析

  • 类型:站长工具大小:593KB语言:中文 评分:10.0
  • 标签:
立即下载

网站时好时坏,ping 一下却全是绿的这种最让人抓狂的情况,其实八九不离十出在路径中间。ping 只告诉你「我这台机器到某个地址通不通」,而线路好不好,取决于数据包一路走过的十几个路由器:中间哪一跳在丢、哪一跳只是不回 ICMP、回程走的是不是精品线路,这些都得看路径报告才能说清。给海外服务器做线路诊断,最常用的工具就是 MTR,它是 traceroute 加持续探测的合体,能把整条路径每一跳的丢包率和往返时间都列出来。

如果你正在排查海外线路质量,或者想先挑一台路径干净的机器把环境跑起来,可以先看看这两家的线路说明和技术参数:六六云(CN2 GIA / 9929 精品回程线路)、V.PS(自有 ASN 与对等互连路由),先看清回程走的是哪条骨干网,再谈机器配置。

MTR 路由追踪终端报告界面

一、先分清 MTR 报告里的三个数字

MTR 每一行有四列:Loss%(丢包率)、Snt(发出的探测包数)、Recv(收到的回应数)、Last(最近一次往返时间),最后一列是 Avg / Stv / Jitter,也就是平均延迟、标准差和抖动。看报告别一上来就盯丢包率,先看 Snt 和 Recv 的绝对差:丢了 2 个包和丢了 200 个包都是「5%」,但含义完全相反。样本量太小的时候,5% 很可能只是某个探测包碰巧撞上了路由器忙的那么一瞬间。

第二个要看的,是 Stv(标准差)。一行显示 avg 85ms、stv 3ms,说明这条路径很稳;avg 85ms、stv 40ms,说明延迟在剧烈波动很多用户体感「网站一会儿快一会儿慢」,根源就在这。真正影响业务体验的往往不是那点平均延迟,而是标准差。

MTR 报告逐跳丢包率与延迟波动对照图

二、丢包有三种形态,只有一种值得紧张

第一种是终点跳丢包:前面十几跳 loss 全是 0,只有最后一跳 loss 涨到 3% 或 5%。这说明路径是通的,问题出在目标服务器本身或者它的上游可能是服务器带宽跑满、防火墙限速 ICMP、也可能是目标机器回包能力不足。这种丢包基本无法通过换线路解决。

第二种是中间某一跳丢包,但后面的跳又是 0。这种情况经常被误判成「线路烂」,其实更常见的原因是那一跳的路由器对 ICMP 限速了:它转发数据包没问题,只是对 ping 的回应慢,被顺手丢掉了。判断方法是看丢包点有没有规律性如果是间歇性、时有时无,多半是限速;如果是从某一跳开始,后面每一跳都稳定保持同一个丢包率,那才更接近真实的路径丢包。

第三种是从某跳开始,后面全部 100%。这条不用查了,说明路径断了,不是线路质量问题是彻底不通。此时能做的只有换目标 IP、换端口,或者联系机房。

三、那三个问号(???)才是 MTR 的关键

MTR 报告里最容易被跳过、也最有信息量的,就是某一行末尾的 ???,它的含义是「这一跳在 TTL 超时后没有回送 ICMP 超时报文」。新手往往把问号当成丢包,其实问号和丢包是两回事:丢包是「我不回你」,问号是「我压根不搭理你」。很多骨干路由器和云厂商的网关对 ICMP TTL 超时报文默认不响应,尤其是 IPv4 的第一跳,它只负责把你的包转发出去,并不关心你的 traceroute 探针。

那问号出现时怎么判断后面还通不通?看两点:一是问号之后的跳如果又有回应并且丢包是 0,说明数据包确实穿过了这一跳,问号只是这一跳不说话;二是如果 MC 列(丢包计数)从问号跳开始持续增长,那才是真丢包。MTR 默认发的是 ICMP Echo,很多机房会限速甚至屏蔽它,这时更稳的做法是改用 TCP 探测:mtr --tcp --port 80 -r 目标IP,用真实业务端口去试探,能大幅减少问号和假丢包带来的误判。

MTR 问号与丢包区别示意图

四、回程和去程,必须分开测

很多人拿着 mtr 跑一遍就下结论,这有个致命问题:你从本地到服务器测的是去程,服务器回你才是回程,而国内用户真正卡的是回程。要看回程,得登录到服务器上反过来跑:mtr -r 你本地的公网IP。两边的路径往往完全不一样去程走 CN2,回程被丢到普通的 163 骨干,这就是典型的「商家说三网 CN2,你测却不像」的情况。

读路径时看 ASN 归属最直观:AS4809 是电信 CN2,AS4134 是电信 163 骨干(AS4134 下挂的 9929 是电信精品网),AS4837 是联通骨干,AS58807 和 CMIN2 是移动的新一代骨干,AS9929 则要看它挂在哪一层。一条回程如果在境内段出现 AS4134、AS4837 这类普通骨干,说明它没走精品线路;晚高峰时段这些骨干的拥塞就是丢包和延迟抖动的主要来源。

顺便提一句,如果你想同时盯多台机器的连通情况,用 深蓝群Ping 这类多服务器断线与网络质量检测工具一次排开看,比一台台登录进去跑要省事得多,也更容易看出是「全网都抖」还是「就这一台抖」。

五、晚高峰到底该怎么测才有意义

单次快照没有参考价值。我的做法是:选 20:0023:00 的窗口,用 mtr -rw -c 100 --interval 1 连跑几分钟,重点盯三处第 2 跳(本地接入是否正常)、路径中段出现 100% loss 的那一跳(谁掐了你的包)、以及终点跳的 Avg / Stv。

还有两个细节很容易被忽略。一是去程和回程要分时段各测一次,如果只测白天,看到的往往是一台线路还不错但晚上就崩的机器。二是区分「限速」和「丢包」:限速的表现是延迟曲线平稳但吞吐被卡住,丢包的表现是延迟出现毛刺、RTT 出现跳变,一个用 iperf3 看带宽上限,一个看 RTT 抖动,工具不同,结论也不同。

晚高峰 MTR 采样与线路质量分析流程

六、写在最后

MTR 报告的价值不在于「看到几个问号」,而在于用它把「线路好」这个模糊说法拆成可验证的三件事:哪一跳在丢、丢的是 ICMP 回应还是真实数据包、回程走的是哪条骨干网。这三件事理清了,「这家线路到底行不行」就有了答案,而不是靠销售的一句「CN2 GIA 直连」。

再补一句实操:判断线路前先确认目标端口是通的、确认 ICMP 没被机房屏蔽,然后在晚高峰实测。一台白天跑分漂亮、晚上八点 RTT 抖成筛子的服务器,对做站的人来说没有任何意义。

    相关评论

    阅读本文后您有什么感想? 已有人给出评价!

    • 8 喜欢喜欢
    • 3 顶顶
    • 1 难过难过
    • 5 囧囧
    • 3 围观围观
    • 2 无聊无聊

    发表评论

    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲