2018.08.08

海银金融科技2019-03-13 11:01:27

互联网变革又十年:2008-2018

十年前,我写了一篇文章,回顾了1998年至2008年期间互联网的发展。又过了十年,这是一个很好的时机,再花点时间思考一下哪些是活跃的,哪些是过时的,哪些是在互联网变革的另一个十年中将被遗忘的。

任何一个技术的进化往往会出现意想不到的迂回转折。在某些转折点简单抽象会由复杂修饰所替代,而其他时候戏剧性的突破会暴露技术的核心概念,同时去除多余的东西。互联网的发展看起来也不例外,它有着与这些意想不到的迂回转折相同的形式。关于互联网技术这过去的十年,改变了什么,又保留了什么,这似乎是一个复杂的历程。

现在的互联网看起来大致与十年前的互联网类似


很多互联网的基础设施顽强地阻止了变革的发生。我们仍然处于互联网转换为IPv6的进程之中,同十年前一样。我们仍然尽力提升互联网的适应性来对抗各类进攻,同十年前一样。我们仍然努力提供明确的网络中服务质量,同十年前一样。

1990年代到2000初技术变革的快速步伐似乎已经失去了动力,过去十年互联网的主导活动似乎是整合,而不是持续的技术演变。或许这种对变革阻力的提升是因为随着网络大小的增长,它的惯性质量也增加了。

我们常常互相引用Metcalf定律,定律说的是:网络增长量与用户数量的平方成正比。相关观察发现一个网络对变革的固有阻力,或者惯性质量,也是与用户数量的平方直接相关。或许作为一个大体观察,所有大型松散耦合分布式系统都有强烈地抗变革能力。这些系统最多对市场压力的各类形式做出了反应,但是由于互联网整体系统如此庞大且多样化,这些市场压力在网络的不同部分以不同的形式表现出来。

个体行为人在没有集中组织的指示或者约束下进行操作。产生变革,是因为一些足够多的个体行为人看到了变革中的机遇,或是察觉到了若不变革会带来的无法接受的风险。从互联网的结果看来,一些变革非常具有挑战性,而其他看起来则是自然且不可避免的进步。

但故事的另一面与绘画可能截然相反


在过去十年中,我们看到了互联网的另一场深刻革命,因为它以前所未有的速度采用了基于无线的基础设施和丰富的服务组合。

我们看到内容和内容提供方面的革命不仅改变了互联网,而且作为附带损害,互联网似乎正在摧毁传统的报纸和广播电视领域,社交媒体几乎取代了电话的社会角色和写信的做法。

我们已经看到了以“云”为伪装的旧式中央大型机服务器的复兴和兴起,以及互联网设备再利用,常见的云托管服务在许多方面模仿了过去显示终端的功能。所有这些都是互联网的基础变革,所有这些都发生在过去十年。

故事所涉及范围比较广,所以我把故事设定为一个更大的主题,然后逐步构建故事,而不是提供一堆杂乱无章的观点,讲述过去10年中互联网发生的各种变化和发展。我会用一个标准的协议堆栈模型作为指导模板,我们从底层的传输媒介层(物理层)开始,然后到传输层(IP协议层),后面是应用层和服务层,最后以互联网商业对过去10年开发的促进作用作为结尾。

在IP层之下,网络媒介发生了什么变化?


光传输系统在过去10年经历了持续的改变。在10年多一点之前产品级光传输系统使用简单的开-关(on-off)键控来编码信号到光传输通道中。这个速度在这一代的光传输系统上的增长依赖于可控硅系统的发展以及激光驱动芯片。

关于波长时分复用的介绍在1990年代让光传输电缆基础设施的搬运者(传播介质)极大的增加了搬运能力。最近10年光传输系统的演化在偏振和相位调制领域有效的提升了每波特信号的位数。通常可以支持的100Gbps的光传输通道,并且我们正寻找进一步改进使其可以超过200Gbps。我们预期系统会在不久的未来可以达到400Gbps,使用各种更快的基波速率和更高的相位幅度调制组合,现在可以设想不久后的光传输服务能达到1Tbps。

无线系统在总体上也是一个类似的演化。在信号处理的基本实现里,类似于光传输系统的变化,使用相位调制提升无线承载的数据速率。MIMO(多输入多输出) 技术的使用,外加更高的传输频率的使用使得在未来的5G技术部署中的移动系统速度达到1Gbps。

在最初的基本原理和那明亮的黄色同轴电缆一起消失之后,光传输速率持续增长,在传输系统中,以太网包的帧结构仍然存在。奇怪的是,以太网定义的最小和最大包大小为64和1500字节仍然存在。在过去的十年中,由于传输速度的提高,出现了不可避免的结果,每秒的数据包数量增加了100倍,这是由于传输速度从2.5Gbps增加到400Gbps。

因此,从硅基开关中要求更高的包处理速率。但在过去的十年中,一个非常重要的因子并没有改变,即处理器的时钟速度和内存的周期时间,这一点根本没有改变。到目前为止,人们的应对策略是越来越多地依赖于高速数字交换应用程序的并行性,而现在,多核处理器和高度并行的内存系统被用来实现在单线程处理模型中不可能实现的性能。

在2018年,我们似乎接近于实现1Tbps的光传输系统,在无线传输系统中达到20Gbps。这些传输模型能够传输多远和多快来支持更高的通道速度,仍是一个悬而未决的问题。

IP层


在过去的十年中,网络最引人注目的一个方面在于它顽固地抵制各种形式的压力,包括一些严峻的现实,即我们仍然在运行一个本质上是IPv4的互联网。

在过去的十年中,我们已经耗尽了剩余的IPv4地址,而在世界的大部分地区,IPv4互联网正在面临某种形式的IP短缺。我们从未怀疑过,互联网将会面临一个最基本的支柱——标记互联设备唯一性的地址——的耗尽,显然是耸耸肩,继续愉快地继续下去。但是,出乎意料的是,这正是所发生的事情。

今天,我们估计大约有34亿人是互联网的常客,而且有大约200亿的设备连接在互联网上。我们已经使用了大约30亿个唯一的IPv4地址来实现这一点。没有人认为我们可以实现这一惊人的壮举,但它确实是在悄悄的发生。

早在1900年代,我们就认为IP地址耗尽的前景将推动互联网使用IPv6。这是后续IP协议,IP地址的位宽增加了四倍。通过将IP地址池增加到一些非常大量的唯一地址(340个十亿地址,或3.4x1038),我们再也不必面对网络地址耗尽。

但这不是一个简单的过渡。此协议转换中没有向后兼容性,因此必须更改所有内容。每个设备、每个路由器甚至每个应用程序都需要更改以支持IPv6。我们不是在互联网上执行全面的协议变更,而是改变基础设施的每个部分以支持IPv6来改变了互联网的基本架构。奇怪的是,看起来这是更便宜的选择。

通过在网络边缘几乎无处不在的网络地址转换器(NAT)部署,我们已经将网络从对等网络转变为客户端/服务器网络。在今天的客户端/服务器中,Internet客户端可以与服务器通信,服务器可以与这些连接的客户端进行通信,但就是这样。客户端无法直接与其他客户端通信,服务器需要等待客户端发起对话才能与客户端通信。客户端在与服务器通信时“借用”端点地址,并释放此地址以供其他客户端闲置时使用。毕竟,端点地址仅对客户端有用,以便与服务器通信。

结果是,我们已经设法将大约200亿台设备塞进一个只部署了30亿个公共地址槽的互联网中。我们已经实现了这一目标,并囊括了可以描述为IP地址分时的内容。

不错,但是IPv6呢?我们还需要它吗?如果是这样,那么接下来我们要度过这漫长的过渡期吗?

十年过去了,这些问题的答案仍不明确。

往好了想想,IPv6现在比十年前多得多了。与2008年相比,现今服务提供商部署了更多的IPv6。我们看到当IPv6被服务提供商部署到网路中具备IPv6的设备能立即使用。在2018年似乎五分之一的互联网用户(现在估计是地球上一半的人)能够使用优先于IPv6的互联网,其中的大部分发生于近十年。

然而,坏处是必须提出这样一个问题:关于IPv6,另外五分之四的上网的人怎么了?据悉一些互联网服务提供商更愿意将有限的运营预算投在提升用户体验方面上,就像增加网络容量、取消数据上限和获取更多的网上内容。上述网络服务提供商仍旧将部署IPv6看做为可延缓的举措。

貌似现在我们还能看到关于IPv6的混杂局面。一些服务提供商只是看出他们自己IPv4地址稀缺的问题,这些服务提供商将IPv6当做进一步扩大网络的一项必要决策,其他服务提供商更愿意推迟到未来某一天。

路由


虽然我们正在研究过去十年里基本没有改变的事物,但我们需要说说路由系统。尽管10年前就有对边界网关协议(BGP)缩减死亡的可怕预测,但BGP依然坚定地继续为整个互联网提供路由支持。是的,BGP与以往一样处在不安全地位,是的,持续不断的“胖手指”之流以及不太常见但引发更多关注的恶意路由劫持,将继续困扰我们的路由系统,2008年使用的路由技术与我们在当今的互联网中所使用的技术是一样的。

IPv4路由表的规模在过去十年中增长了两倍,从2008年的25万条增加到今天的超过75万条。IPv6路由的故事更加引人注目,从1,100个条目增加到5.2万个条目。然而,BGP依然悄悄地继续有效并高效地工作。谁会想到,一个最初设计用于应付几百个网络宣称有几千条路由的协议仍然可以在跨越一百万个路由条目和十万个网络的路由空间中有效运行。

同样,我们对内部路由协议的运作没有做出任何重大改动。较大型的网络仍然使用OPSF或ISIS,具体取决于它们的实际境况,而较小的网络可能选择一些诸如RIPv2或甚至EIGRP等的距离矢量协议。

IETF关于最新路由协议LISP和BABEL的工作似乎对整个互联网缺乏有效牵引力,虽然它们在路由管理方面都具有有趣的特性,但它们都没有足够的已知优势来克服常规的网络设计和运维中出现的可观的惯性。同样,这看起来像惯性物质正在施加影响以抵抗网络变化的另一个示例。

网络运维


说起网络运维,我们看到一些激动人心的改变正在发生,不过这是一个相对保守的区域,新的网络管理工具和实践的使用需要花更多的时间。

四分之一个世纪之前,Internet主要使用简单网络管理协议(SNMP),尽管它面临很多问题,比如安全缺陷、低效、使用不友好的ASN.1协议,以及容易遭受DDOS攻击等,可是它仍旧是被广泛使用的协议。不过随着人们用SNMP进行运维的尝试表明,SNMP仅仅是一个网络监控协议,而不是一个网络配置协议。

最近,Netconf和YANG正在努力尝试推动交换机的配置管理进入一个更实用的阶段,以替换目前以expect脚本作为命令行接口的情况。与此同时,我们也看到一些编排工具也进入了网络运维领域,比如 Ansible、Chef、NAPALM和SALT等,它们可以对成千上万的独立模块进行管理任务的编排工作。这些网络运维管理工具正在朝着自动化网络管理的方向发展,但仍旧还有很多路要走。

在我们似乎已推进了自动控制系统的状态以实现无人驾驶的自动驾驶的同一时期,全自动网络管理的任务似乎还远远达不到预期的终点。当然,为自适应自动控制系统提供网络基础设施和可用资源是必要的,并允许控制系统监控网络以及修改网络组件的运行参数,以不断满足网络的服务水平目标。驾驶网络的无人驾驶汽车在哪里呢?也许接下来的十年可能会让我们见到它。

移动互联网


我们在Internet协议模型中移动一个层并查看端到端传输层的演化之前,我们可能需要讨论连接到Internet设备的发展。

多年来,互联网一直是台式个人电脑的领域,笔记本电脑设备满足了人们对更便携设备的需求。当时,手机还只是一部电话,他们在数据世界的早期尝试并不令人印象深刻。

苹果公司2007年发布的iPhone是一款革命性的设备。它拥有一个充满活力的彩色触摸屏,只有四个键,一个功能齐全的操作系统,有WiFi和蜂窝无线网络接口,有一个强大的处理器和内存,它进入消费者市场可能是这十年的最重要事件。

苹果早期的领先地位很快被Windows和诺基亚以自己的产品赶超。谷歌的地位更像是一个活跃的破坏者,它使用Android平台及其相关应用生态系统的开放许可框架,授权给一批手机组装商。


十年前,我写了一篇文章,回顾了1998年至2008年期间互联网的发展。又过了十年,这是一个很好的时机,再花点时间思考一下哪些是活跃的,哪些是过时的,哪些是在互联网变革的另一个十年中将被遗忘的。

任何一个技术的进化往往会出现意想不到的迂回转折。在某些转折点简单抽象会由复杂修饰所替代,而其他时候戏剧性的突破会暴露技术的核心概念,同时去除多余的东西。互联网的发展看起来也不例外,它有着与这些意想不到的迂回转折相同的形式。关于互联网技术这过去的十年,改变了什么,又保留了什么,这似乎是一个复杂的历程。

现在的互联网看起来大致与十年前的互联网类似


很多互联网的基础设施顽强地阻止了变革的发生。我们仍然处于互联网转换为IPv6的进程之中,同十年前一样。我们仍然尽力提升互联网的适应性来对抗各类进攻,同十年前一样。我们仍然努力提供明确的网络中服务质量,同十年前一样。

1990年代到2000初技术变革的快速步伐似乎已经失去了动力,过去十年互联网的主导活动似乎是整合,而不是持续的技术演变。或许这种对变革阻力的提升是因为随着网络大小的增长,它的惯性质量也增加了。

我们常常互相引用Metcalf定律,定律说的是:网络增长量与用户数量的平方成正比。相关观察发现一个网络对变革的固有阻力,或者惯性质量,也是与用户数量的平方直接相关。或许作为一个大体观察,所有大型松散耦合分布式系统都有强烈地抗变革能力。这些系统最多对市场压力的各类形式做出了反应,但是由于互联网整体系统如此庞大且多样化,这些市场压力在网络的不同部分以不同的形式表现出来。

个体行为人在没有集中组织的指示或者约束下进行操作。产生变革,是因为一些足够多的个体行为人看到了变革中的机遇,或是察觉到了若不变革会带来的无法接受的风险。从互联网的结果看来,一些变革非常具有挑战性,而其他看起来则是自然且不可避免的进步。

但故事的另一面与绘画可能截然相反


在过去十年中,我们看到了互联网的另一场深刻革命,因为它以前所未有的速度采用了基于无线的基础设施和丰富的服务组合。

我们看到内容和内容提供方面的革命不仅改变了互联网,而且作为附带损害,互联网似乎正在摧毁传统的报纸和广播电视领域,社交媒体几乎取代了电话的社会角色和写信的做法。

我们已经看到了以“云”为伪装的旧式中央大型机服务器的复兴和兴起,以及互联网设备再利用,常见的云托管服务在许多方面模仿了过去显示终端的功能。所有这些都是互联网的基础变革,所有这些都发生在过去十年。

故事所涉及范围比较广,所以我把故事设定为一个更大的主题,然后逐步构建故事,而不是提供一堆杂乱无章的观点,讲述过去10年中互联网发生的各种变化和发展。我会用一个标准的协议堆栈模型作为指导模板,我们从底层的传输媒介层(物理层)开始,然后到传输层(IP协议层),后面是应用层和服务层,最后以互联网商业对过去10年开发的促进作用作为结尾。

在IP层之下,网络媒介发生了什么变化?


光传输系统在过去10年经历了持续的改变。在10年多一点之前产品级光传输系统使用简单的开-关(on-off)键控来编码信号到光传输通道中。这个速度在这一代的光传输系统上的增长依赖于可控硅系统的发展以及激光驱动芯片。

关于波长时分复用的介绍在1990年代让光传输电缆基础设施的搬运者(传播介质)极大的增加了搬运能力。最近10年光传输系统的演化在偏振和相位调制领域有效的提升了每波特信号的位数。通常可以支持的100Gbps的光传输通道,并且我们正寻找进一步改进使其可以超过200Gbps。我们预期系统会在不久的未来可以达到400Gbps,使用各种更快的基波速率和更高的相位幅度调制组合,现在可以设想不久后的光传输服务能达到1Tbps。

无线系统在总体上也是一个类似的演化。在信号处理的基本实现里,类似于光传输系统的变化,使用相位调制提升无线承载的数据速率。MIMO(多输入多输出) 技术的使用,外加更高的传输频率的使用使得在未来的5G技术部署中的移动系统速度达到1Gbps。

在最初的基本原理和那明亮的黄色同轴电缆一起消失之后,光传输速率持续增长,在传输系统中,以太网包的帧结构仍然存在。奇怪的是,以太网定义的最小和最大包大小为64和1500字节仍然存在。在过去的十年中,由于传输速度的提高,出现了不可避免的结果,每秒的数据包数量增加了100倍,这是由于传输速度从2.5Gbps增加到400Gbps。

因此,从硅基开关中要求更高的包处理速率。但在过去的十年中,一个非常重要的因子并没有改变,即处理器的时钟速度和内存的周期时间,这一点根本没有改变。到目前为止,人们的应对策略是越来越多地依赖于高速数字交换应用程序的并行性,而现在,多核处理器和高度并行的内存系统被用来实现在单线程处理模型中不可能实现的性能。

在2018年,我们似乎接近于实现1Tbps的光传输系统,在无线传输系统中达到20Gbps。这些传输模型能够传输多远和多快来支持更高的通道速度,仍是一个悬而未决的问题。

IP层


在过去的十年中,网络最引人注目的一个方面在于它顽固地抵制各种形式的压力,包括一些严峻的现实,即我们仍然在运行一个本质上是IPv4的互联网。

在过去的十年中,我们已经耗尽了剩余的IPv4地址,而在世界的大部分地区,IPv4互联网正在面临某种形式的IP短缺。我们从未怀疑过,互联网将会面临一个最基本的支柱——标记互联设备唯一性的地址——的耗尽,显然是耸耸肩,继续愉快地继续下去。但是,出乎意料的是,这正是所发生的事情。

今天,我们估计大约有34亿人是互联网的常客,而且有大约200亿的设备连接在互联网上。我们已经使用了大约30亿个唯一的IPv4地址来实现这一点。没有人认为我们可以实现这一惊人的壮举,但它确实是在悄悄的发生。

早在1900年代,我们就认为IP地址耗尽的前景将推动互联网使用IPv6。这是后续IP协议,IP地址的位宽增加了四倍。通过将IP地址池增加到一些非常大量的唯一地址(340个十亿地址,或3.4x1038),我们再也不必面对网络地址耗尽。

但这不是一个简单的过渡。此协议转换中没有向后兼容性,因此必须更改所有内容。每个设备、每个路由器甚至每个应用程序都需要更改以支持IPv6。我们不是在互联网上执行全面的协议变更,而是改变基础设施的每个部分以支持IPv6来改变了互联网的基本架构。奇怪的是,看起来这是更便宜的选择。

通过在网络边缘几乎无处不在的网络地址转换器(NAT)部署,我们已经将网络从对等网络转变为客户端/服务器网络。在今天的客户端/服务器中,Internet客户端可以与服务器通信,服务器可以与这些连接的客户端进行通信,但就是这样。客户端无法直接与其他客户端通信,服务器需要等待客户端发起对话才能与客户端通信。客户端在与服务器通信时“借用”端点地址,并释放此地址以供其他客户端闲置时使用。毕竟,端点地址仅对客户端有用,以便与服务器通信。

结果是,我们已经设法将大约200亿台设备塞进一个只部署了30亿个公共地址槽的互联网中。我们已经实现了这一目标,并囊括了可以描述为IP地址分时的内容。

不错,但是IPv6呢?我们还需要它吗?如果是这样,那么接下来我们要度过这漫长的过渡期吗?

十年过去了,这些问题的答案仍不明确。

往好了想想,IPv6现在比十年前多得多了。与2008年相比,现今服务提供商部署了更多的IPv6。我们看到当IPv6被服务提供商部署到网路中具备IPv6的设备能立即使用。在2018年似乎五分之一的互联网用户(现在估计是地球上一半的人)能够使用优先于IPv6的互联网,其中的大部分发生于近十年。

然而,坏处是必须提出这样一个问题:关于IPv6,另外五分之四的上网的人怎么了?据悉一些互联网服务提供商更愿意将有限的运营预算投在提升用户体验方面上,就像增加网络容量、取消数据上限和获取更多的网上内容。上述网络服务提供商仍旧将部署IPv6看做为可延缓的举措。

貌似现在我们还能看到关于IPv6的混杂局面。一些服务提供商只是看出他们自己IPv4地址稀缺的问题,这些服务提供商将IPv6当做进一步扩大网络的一项必要决策,其他服务提供商更愿意推迟到未来某一天。

路由


虽然我们正在研究过去十年里基本没有改变的事物,但我们需要说说路由系统。尽管10年前就有对边界网关协议(BGP)缩减死亡的可怕预测,但BGP依然坚定地继续为整个互联网提供路由支持。是的,BGP与以往一样处在不安全地位,是的,持续不断的“胖手指”之流以及不太常见但引发更多关注的恶意路由劫持,将继续困扰我们的路由系统,2008年使用的路由技术与我们在当今的互联网中所使用的技术是一样的。

IPv4路由表的规模在过去十年中增长了两倍,从2008年的25万条增加到今天的超过75万条。IPv6路由的故事更加引人注目,从1,100个条目增加到5.2万个条目。然而,BGP依然悄悄地继续有效并高效地工作。谁会想到,一个最初设计用于应付几百个网络宣称有几千条路由的协议仍然可以在跨越一百万个路由条目和十万个网络的路由空间中有效运行。

同样,我们对内部路由协议的运作没有做出任何重大改动。较大型的网络仍然使用OPSF或ISIS,具体取决于它们的实际境况,而较小的网络可能选择一些诸如RIPv2或甚至EIGRP等的距离矢量协议。

IETF关于最新路由协议LISP和BABEL的工作似乎对整个互联网缺乏有效牵引力,虽然它们在路由管理方面都具有有趣的特性,但它们都没有足够的已知优势来克服常规的网络设计和运维中出现的可观的惯性。同样,这看起来像惯性物质正在施加影响以抵抗网络变化的另一个示例。

网络运维


说起网络运维,我们看到一些激动人心的改变正在发生,不过这是一个相对保守的区域,新的网络管理工具和实践的使用需要花更多的时间。

四分之一个世纪之前,Internet主要使用简单网络管理协议(SNMP),尽管它面临很多问题,比如安全缺陷、低效、使用不友好的ASN.1协议,以及容易遭受DDOS攻击等,可是它仍旧是被广泛使用的协议。不过随着人们用SNMP进行运维的尝试表明,SNMP仅仅是一个网络监控协议,而不是一个网络配置协议。

最近,Netconf和YANG正在努力尝试推动交换机的配置管理进入一个更实用的阶段,以替换目前以expect脚本作为命令行接口的情况。与此同时,我们也看到一些编排工具也进入了网络运维领域,比如 Ansible、Chef、NAPALM和SALT等,它们可以对成千上万的独立模块进行管理任务的编排工作。这些网络运维管理工具正在朝着自动化网络管理的方向发展,但仍旧还有很多路要走。

在我们似乎已推进了自动控制系统的状态以实现无人驾驶的自动驾驶的同一时期,全自动网络管理的任务似乎还远远达不到预期的终点。当然,为自适应自动控制系统提供网络基础设施和可用资源是必要的,并允许控制系统监控网络以及修改网络组件的运行参数,以不断满足网络的服务水平目标。驾驶网络的无人驾驶汽车在哪里呢?也许接下来的十年可能会让我们见到它。

移动互联网


我们在Internet协议模型中移动一个层并查看端到端传输层的演化之前,我们可能需要讨论连接到Internet设备的发展。

多年来,互联网一直是台式个人电脑的领域,笔记本电脑设备满足了人们对更便携设备的需求。当时,手机还只是一部电话,他们在数据世界的早期尝试并不令人印象深刻。

苹果公司2007年发布的iPhone是一款革命性的设备。它拥有一个充满活力的彩色触摸屏,只有四个键,一个功能齐全的操作系统,有WiFi和蜂窝无线网络接口,有一个强大的处理器和内存,它进入消费者市场可能是这十年的最重要事件。

苹果早期的领先地位很快被Windows和诺基亚以自己的产品赶超。谷歌的地位更像是一个活跃的破坏者,它使用Android平台及其相关应用生态系统的开放许可框架,授权给一批手机组装商。


Copyright © 丰城计算器学习组@2017