很多人在打游戏、开视频会议或者看高清直播时,遇到卡顿第一反应就是:是不是网络延迟太高了?接着又会怀疑,延迟高是不是意味着丢包?其实这两个概念有关系,但不是必然绑定的。
延迟和丢包是两码事
网络延迟,说白了就是数据从你家发到服务器再回来需要的时间。比如你 ping 一下百度,显示 30ms,说明来回一趟用了 30 毫秒。这个数值越低,上网体验越顺滑。
而丢包,是指你发出去的数据包在路上“丢了”,没到达目的地。比如你一口气发了10个包,结果只收到8个,那丢包率就是20%。这种情况会导致视频断续、语音卡顿、游戏掉帧。
高延迟不一定丢包
举个生活中的例子:你给朋友寄一封信,走的是普通邮政,可能三天才到——这就像高延迟,但信最终还是到了,没丢。这就是典型的延迟高但不丢包。
在网络中也一样。比如你连的是国外服务器,物理距离远,光信号传输本来就慢,延迟自然高,但只要链路稳定,数据包一个不少,照样能正常加载网页或下载文件。
什么情况会同时出现高延迟和丢包?
当网络拥堵或者设备性能跟不上时,就容易两者齐发。比如晚上七八点,全小区都在刷视频,路由器处理不过来,就开始排队等发包,延迟飙升;更严重时,缓存满了,后面的包直接被扔掉,这就产生了丢包。
再比如你家路由器老化,Wi-Fi 信号穿墙能力差,手机在卧室连着,信号强度只有两格。这时候虽然还能上网,但每次传数据都得反复重试,既拖慢速度(高延迟),又可能导致部分数据传不成功(丢包)。
怎么判断是延迟问题还是丢包问题?
打开命令提示符(Windows 上按 Win+R,输入 cmd 回车),试试这个命令:
ping -n 20 www.baidu.com
看看返回的结果里有没有“丢失”字样。如果显示“已发送=20,已接收=20,丢失=0”,说明没丢包;但如果显示丢失了几个,那就真丢包了。同时看平均时间,如果超过100ms,就算延迟偏高。
还可以用 tracert 命令查具体哪一跳开始变慢:
tracert www.baidu.com
如果前面几跳都很稳,最后几跳突然延迟猛增,问题可能出在目标服务器或中间骨干网;如果一开始就高延迟,可能是本地网络有问题。
解决思路要分清楚
如果是纯延迟高但不丢包,比如你连海外网站本来就这样,那基本不用折腾。但要是又卡又断,八成是丢包惹的祸,就得动手排查了。
先重启路由器,很多人这一步就能解决问题。再检查是不是有人在后台下大片、占满带宽。用手机测速工具对比 Wi-Fi 和移动数据的速度,如果 Wi-Fi 明显差很多,可能是信道干扰或设备老化。
有条件的话,换成千兆路由器,改用 5GHz 频段,或者拉根网线直连电脑,往往能明显改善。