网络延迟与光速

 

在这篇短文中,我要向你介绍一个事实,那就是目前互联网的延迟状况基本不会再有很大改善了。...



在这篇短文中,我要向你介绍一个事实,那就是目前互联网的延迟状况基本不会再有很大改善了。因为在现有已知的物理理论中,目前的网速已经非常接近于极限值了 --- 如果要让网络延迟下降到一半 --- 恐怕需要等待一些惊人的理论突破,并投入大量资金构建新的基础设施才可能做到。而这些,短期来看是不太可能了。

这番言论我已经在不同的场合、跟不同的人阐述过很多次了。去年我以这个主题写了一封邮件,现在我要改善下我当时写的内容,并把最终结果整理到这里,以便下次再有人让我讲这个话题的时候,我就直接丢给他这个链接就好了。

我2017年10月写那封邮件的时候,我以ping csail.mit.edu开始我的行文。csail.mit.edu这个域名对应的服务器据我所知是在麻省理工大学内,也就是在马萨诸塞州。而我当时在西雅图,坐在我的Windows工作机前。运行这个命令我得到这样的结果:



ping返回的时间是一个来回的时间:包括数据包从我的机器发送到麻省理工服务器的时间,服务器处理这个请求并准备好返回内容的时间,将响应从麻省理工发回给我的机器的时间,以及我的机器把这个响应分配给请求的进程的时间。对于单程耗时的估算,我们可以简单地把往返时间除2。所以我预估一个数据包从西雅图发送到波士顿大概要35ms。

Google地图告诉我从我的办公室到麻省理工大概是4000km(约2500英里)。目前我们传输信号的介质基本上都是光纤或者铜质电缆。我们在大学里就学到过,这两种介质传播信号的速度基本上都是真空中光速的2/3。这个2/3叫速率因素:这里有一些具体的数字,Cat-6A双绞线的速率因素是0.65(一般10G带宽用的介质),Cat-5e的速率因素是0.64(一般1G带宽用的介质),光纤是0.67。这些介质在速率因素上的差别很小,基本上都约等于2/3,所以下面文章中我也不会再区分介质进行介绍了。

用2500英里的距离除以2/3的光速,我们得到结果是20ms。这是从西雅图到马萨诸塞直线信号传输的最小延迟。我忽略了高度因素,并且认为地球是个完美的球形,所以结果会略有误差。值得注意的是,这个20ms的结果已经高于实际情况35ms的一半了。所以前面我提到网络延迟下降到一半,似乎更加不可能实现了。

如果你想要构建一个网络(不仅仅是点对点的一根线),那么你一定不会在每个两点之间都拉一条直线。我们以公路为例,在Google地图上,从西雅图到马萨诸塞的行车路线为4800km(约3000英里)。相比于直线距离,这要多出20%的路程。对于互联网来说,同样的估算也是基本合理的。所以,在一个更加真实的网络环境中,信号传输的最小延迟也相应地会有所增加,在我们的例子中,大概在24ms。

这意味着我们实测目前两地的信号延迟是35ms,而理论上的最小值是24ms。剩下的11ms花在数据包在各个路由器中排队,以及网络堆栈对数据包的处理上。这11ms是目前技术上可以优化的部分,但即便这11ms优化到0,也无法带来1.5倍的提速。这就是为什么我认为主干网的网速已经没有很大提升空间的原因。

如果你愿意出钱构建一条网络专线,效果会怎么样呢?但是你用的技术和主干网技术并没有什么不同,这只是减少了花在路由器排队上的时间和绕路的时间,你的RTT可以提速到45ms~50ms的程度,不过也没法再提高了。

建立专线,我们还是假设了你使用双绞线或者铜线作为介质,并且线路是铺设在地球表面的。如果我们假设你有钱任性到“有钱能使鬼推磨”的程度,我们以某种介质使得信号速度真的以光速传递,我们在两地之间打一个真正的直线隧道,隧道内保证为真空,这样建立一条“高能微波连接”。由于光存在一个发散角,所以这个设备的长度恐怕要几里长。即便条件如此苛刻,这个设备还是会有人感兴趣的,比如这个设备对于对延迟高度敏感的场景,如高频交易,还是有用的。不过据我所知(我可能说的不准确),这种专线一般每一段都只有几里长,而不是几十里,更别说几百里了。更长的链接往往是把多个专线串联在一起,每一个连接点都会增加一点点延迟。所以实际传输速度一定是低于光速的,虽然我没有具体的数据。当然了,这样的系统需要光线毫无遮挡,这基本意味着它的容量不会很大,或者天气及能见度会影响系统的性能。

无论如果,如果你真的能构建出这样的系统,你的单程延迟应该可以降到12ms,往返延迟可以达到24ms。这比现有系统快了3倍,几乎是理论上的极限了。而且这样的系统太过昂贵,而且不稳定,还有很多未知的问题。

所以,总结一下:

1、如果你的网络连接质量很不错,你的RTT应该差不多是理论最佳值的三倍。除非你能突破相对论,否则数据传输的速度不会快于直线光速。

2、如果你有钱任性到可以做任何事情,你有能力将你的延迟缩减到两倍光速的程度,这样相比于现有的主干网,就可以获得1.5倍的性能提升。

英文原文:https://www.ltechnologygroup.com/2018/01/20/network-latencies-and-speed-of-light/

译者:诗书塞外


    关注 Python程序员


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册