IPv6 是否比 IPv4 更快?

IPv6 是否比 IPv4 更快?

使用 IPv6 是否有任何实际的速度/延迟增益,还是只是为了为更多 IP 腾出空间?

答案1

实际影响?不大。影响很小。您可能会遇到这种情况的地方是高延迟链路(比如卫星),其中 MTU(最大传输单元)较小,这会放大 IPv6 所需的较大开销的影响。这是一个极端情况。您会看到影响的另一个领域是当您在网络路径中进行 6 到 4 的转换时,因为这总是需要一些时间。但是,如果您有一条通往其他 v6 主机的纯 v6 路径,那么这种延迟就不是问题了。

如今,TCP 卸载引擎被内置到越来越多的网络堆栈中,这种影响甚至不太可能被注意到。如果有的话。事实上,在这些情况下,它甚至可能更快。


为什么更大的报头并不像您想象的那么重要?这是因为 v6 的设计者吸取了 v4 的一些教训并进行了改进。最重要的是,对于跨互联网通信,路由器中地址字段的处理效率比 v4 高得多,与 v4 相比,这提高了 v6 数据包通过路由器的速度。

当涉及无需考虑路由器表的同一子网通信时,每个数据包所需的原始计算量会更少。需要验证的校验和会少一个(以太网校验和,v6 没有 IP 校验和,但仍需要 TCP/UDP 校验和),这可以节省少量时间。而在特殊网络上,能够处理非常大的数据包可以进一步节省处理时间。

答案2

如果您与目的地之间有一台速度较慢的路由器,该路由器会沿着该路径对 IPv4 数据包进行分段,那么您可能会看到 IPv6 的性能提升。使用 IPv6,路由器将不再为您对数据包进行分段。(该责任已委托给终端节点。)

当然,这只是一种极端情况。没有理由相信 IPv6 在一般情况下会比 IPv4 表现更好。

此外,路由器供应商可能也对其 IPv4 数据路径进行了比 IPv6 数据路径更多的优化。因此,在 IPv6 路由器进行同等优化之前,IPv6 可能会更慢。(例如,某些路由器可能在硬件中进行 IPv4 路由,但在软件中进行 IPv6 路由。必须进行高速性能测试才能确定这一点。)

因此,您必须权衡您和您的目的地之间存在未针对 IPv6 进行优化的路由器的可能性与您和您的目的地之间存在路由器对 IPv4 数据包进行分段的可能性。;-)

答案3

我已经运行双栈 IPv6/IPv4 有一段时间了,我是它的忠实粉丝。

我可以告诉你,大多数时候性能和延迟都差不多。但有时,IPv6 会让你大吃一惊。

考虑一下我到 Google 的 ping 时间:

在 IPv4 上:

rtt min/avg/max/mdev = 35.557/38.225/43.909/3.146 ms

在 IPv6 上:

rtt min/avg/max/mdev = 39.202/40.923/43.105/1.501 ms

几乎一模一样。我大多数时候看到的都是这样。但偶尔也会这样,比如当我访问我自己的服务器时,它也使用 IPv6...

在 IPv4 上:

rtt min/avg/max/mdev = 123.510/124.249/125.997/0.909 ms

在 IPv6 上:

rtt min/avg/max/mdev = 87.140/88.600/90.727/1.255 ms

当然,这里最大的不同在于我的 ISP 的 IPv4 路由不太理想,而 IPv6 路由好得多。(IPv4 路径是波士顿-芝加哥-丹佛-西雅图-洛杉矶-菲尼克斯。WTF?IPv6 路径是波士顿-华盛顿特区-亚特兰大-达拉斯-菲尼克斯。)我怀疑在野外还有更多这样的情况。

答案4

不,虽然路由表确实变得更简单了,但速度并没有什么提高。

说 IPv6 “仅仅” 为网络腾出了更多空间,就好比说银河系 “仅仅” 为尘埃颗粒腾出了更多空间。IPv6 本质上使得 IP 地址用尽几乎是不可能的。即使我们用 CPU 覆盖整个地球表面,每个 CPU 都有自己的 IP 地址,我们也远不会耗尽 IP 地址。v6 中的 IP 地址数量完全令人难以置信。

相关内容