为什么 IPv6 延迟通常比 IPv4 高
同一个目标,IPv4 平均 20 毫秒,IPv6 平均 45 毫秒。这算不算有问题?
多数情况下不算。
两条不同的路
IPv6 不是 IPv4 换了层包装,它有自己的地址体系、路由体系和互联关系。
同一个目的地址,两种协议可能从不同出口出去,走不同国家的线路,经过不同的路由器。路径都不一样,延迟自然不一样。
绕行更常见
国内 IPv6 的互联质量还在完善。某些运营商之间的 IPv6 直连链路少,流量需要绕到别的节点中转。
跨境更明显。国际出口的 IPv6 peerings 覆盖不如 IPv4 广,去同一个海外机房,IPv6 可能多绕一两个国家。
这种绕行是网络现状,不是配置错误。
什么时候该担心
看稳定性,不看差值。
IPv6 比 IPv4 慢 20 到 30 毫秒,但每次测都在这个区间,正常。
IPv6 有时 45 毫秒有时 300 毫秒,方差很大,这才是问题。这时候该查路由和拥塞,而不是纠结平均值。
还有一种情况要警惕:IPv6 延迟高,同时丢包也高。延迟高但稳定,是绕行;延迟高且丢包,是链路质量差,两个问题的处理方式不同。
会不会影响用户
大多数用户感知不到这几十毫秒。
主流系统有 Happy Eyeballs 机制,同时尝试 IPv6 和 IPv4,哪条先通走哪条。IPv6 慢一点,但只要能在超时前建立连接,用户基本无感。
真正影响体验的是 IPv6 完全不通时的回落耗时,以及部分环境下回落失败导致的打不开。延迟差异反而是次要的。
怎么确认是不是正常
用 IPv6 Ping 测速 连测三次,看分布。
三次结果集中在一个区间,说明是稳定的协议差异;三次差异很大,说明链路本身有问题。
再和 IPv4 对照一次。两边都稳定、只是数值不同,接受它;只有 IPv6 波动,去查 IPv6 的路由。