新闻中心

互联网技术漫谈(六):谁在改变互联网?

发布时间:2020-05-06 15:14:34

您当前的位置:首页 > 新闻中心 > 产业资讯

  互联网技术漫谈系列文章

  作者:李丹

  1、再谈“互联网”与“网络”的区别。

  2、什么是“改变互联网”?

  3、标准化组织能改变互联网吗?

  4、学术界能改变互联网吗?

  5、设备厂商能改变互联网吗?

  6、到底谁能改变互联网?
 

  这篇文章我们讨论:谁在改变互联网?
 

       1、再谈“互联网”与“网络”的区别。
 

  要讨论“改变互联网”这个话题,有必要再次澄清“互联网”与“网络”二者之间的区别。尽管我们在前几篇文章中已经有所讨论,但似乎还是没有说得很清楚。而这二者之间的概念区别,是导致今天对互联网技术和网络技术的许多争议的重要根源之一。
 

  “互联网”与“网络”之间的区别原本非常简单,直接看名字即可。“网络”的英文单词是network,而“互联网”的英文单词是Internet。Internet,顾名思义,就是“网络之间”;前面说过,这个单词的来源,是因为互联网是“网际互联(internetworking)”这一想法的产物。因此,“互联网”这个词语,从中文角度说,其实更准确的含义是“网互联”。由于“互联网”这个词汇早已融入我们每天的生活,所以今天很多使用互联网、讨论互联网的人,可能并不会去仔细思考这个词语原本的意思。其实,如果Internet这个单词沿用了早期的另外一个中文翻译,即“网际网”,可能今天的许多技术争议都不存在了。但从汉语美学的角度看,“网际网”确实没有“互联网”听起来更“高大上”。
 

  对于技术设计而言,“网络”和“互联网(网络之间)”的根本区别到底在哪里呢?这个问题的答案其实也很简单。任意一个“网络”,都会有一个“管理主体”。比如中国联通这个“电信网”的管理主体,是中国联通公司;“教育网”这个“计算机网络”的管理主体,是赛尔公司;“阿里巴巴数据中心网络”这个“计算机网络”的管理主体,是阿里巴巴公司;我家的“WiFi网络”这个“家庭网络”的管理主体,是我自己;某个“智能楼宇网络”这个“传感器网络”的管理主体,是这个楼宇的运营者;某个“卫星网络”的管理主体,是其主管部门或运营公司;某个“工业控制网络”的管理主体,是这个工厂或者其所属的公司;如此等等。但这个世界上没有“互联网”的“管理主体”,因为互联网采用的是完全分布式的架构。
 

  既然没有“管理主体”,那“互联网”这个物理实体到底在哪里呢?它就在每一个加入了“互联网”的“网络”内部。我家安装了WiFi路由器,我家的WiFi路由器就是“互联网”的一部分;中国联通的“城域网”、“骨干网”、“IP核心网”,也是“互联网”的一部分;阿里巴巴的数据中心网络,也是“互联网”的一部分;教育网的“校园网”、“骨干网”,也是“互联网”的一部分;“卫星网络”如果加了互联网,也是“互联网”的一部分;传感器网络、工业控制网络也是一样。“互联网”的这些“组成部分”之间,是完全独立的,相互之间没有“隶属关系”;尽管从商业关系上来说,有“Provider-Customer”关系、“Peer”关系等,但这只是“商业关系”,不是管理上的“隶属关系”。所以,互联网技术要研究的,就是如何把这些原本“孤立”的网络,采用一种方式“互联”起来,并且让它们之间可以“开放”地“互通”。这是“互联网”存在的唯一意义。
 

  换句话说,这个世界上并没有真正意义上的“互联网运营商”,每个加入“互联网”的“网络”,都是自己的“运营商”。我们常说的ISP(互联网服务提供商),其实是为不具备网络部署能力的机构或个人提供“互联网接入”服务的公司,但一旦网络部署完成,ISP并不是这些网络的“管理者”或“运营者”(当然ISP可以协助运维)。任何一个“网络”要加入“互联网”,从理论上讲,只要申请到了IP地址、AS号等基本互联网资源,并且有底层物理传输资源就可以了。比如今天许多互联网公司的数据中心网络,都有完全独立的AS号、IP地址段等。
 

  “互联网”的这种性质,决定了“互联网”只能是一个全世界“唯一”的“网际网”。我尝试着想用一种其他的信息系统与“互联网”进行类比,但怎么想也想不出来。仍然拿最接近的“电信网”做一个对比:“电信网”是有明确管理主体的,全世界有很多个“电信网”(中国联通、中国电信、中国移动);如果什么时候可以实现同一个手机在不同“电信网”之间的“漫游”,那这种互联互通技术才和“互联网”有些许接近,但仍然差别很大,因为“互联网”对所连接的“网络”的内部通信技术不作限制,只要能运行IP协议就行。
 

  于是我想到了一个不太恰当的类比:“网络”与“互联网”之间的关系,就好像“人”与“人类”之间的关系。每个人都是不同的意识主体(类比“网络”的管理主体)。“网络技术”可以改变的,是在这个人的“意识主体”控制范围内可以去改变的东西,比如学习一门新的技巧、新的知识;而“互联网技术”要研究的,是“人”与“人”之间的沟通法则,比如语言、文字、交往礼仪、社交技巧等等;这些“沟通法则”,是发生在不同的“意识主体”之间的,是没有一个第三方的“主体”能去控制或者干涉的。
 

  改变一个“网络”和改变“互联网”之间的区别,也许就像改变一个人的认知和改变人与人之间的沟通方式的区别。要改变一个人的知识结构,只要本人认可,并不是那么困难。而要改变人与人之间的沟通法则,比如把大家都已经认可的语言和文字推倒重来,要让所有人接受“摇头”表示“同意”、“点头”表示“反对”,这实现起来的代价就非常大了。当然,人与人之间的沟通方式从来不是僵化不变的,比如语言和文字都在不断地演进,但这是在所有人都有共识的前提下,渐进发展的。
 

  我们这篇文章想讨论的是“改变互联网”的问题,是每个“网络”加入“互联网”并且与“互联网”的其他“网络”进行互联互通的那部分基础设施。至于每个网络内部的通信协议,是可以自行设计的,这与“互联网”无关。举例来说:3G/4G/5G解决的是电信网内部的通信问题,每一代技术都可以推翻重来,没问题,因为这是同一个网络管理主体可以控制的;数据中心网络内部的高速通信协议,可以采用RoCE(RDMA over Internet),这个也没问题,因为这是数据中心管理者就可以控制的。但这都不是这些“网络”加入“互联网”的那部分网络基础设施,因此不在我们讨论的范围之内。
 

       2、什么是“改变互联网”?
 

  互联网基础设施包含硬件和软件两部分。互联网硬件基础设施,指的是底层光纤和光交换设备、路由交换设备这些保证互联互通的基本“硬件”;互联网软件基础设施,指的就是围绕IP协议的协议家族(TCP/IP协议栈),运行在路由器和网络终端设备上。互联网的互联互通性能,其实是硬件和软件两部分共同作用的结果。互联网体系结构技术(简称互联网技术),指的是这部分“软件基础设施”的技术,是我们这个系列文章关注的重点。
 

  这里需要再次澄清一些基本概念。因为互联网技术关注的是“互联”,因此对互联网上运行的应用以及各个“网络”采用的内部通信技术,都没有任何限制。所以,我们不能把互联网上运行的应用的改变以及互联网所连接的“网络”的内部通信技术的改变,认为是“改变互联网”。我们也不能把互联网规模的自然增长,认为是“改变互联网”;比如经常都有新的互联网公司的数据中心网络加入互联网,也会有IP地址的增加,更多的用户接入互联网,这种事情每天都在发生,我们不认为是“改变互联网”。本文所指的“改变互联网”,指的是改变互联网(体系结构)技术,因为这才是互联网连接不同“网络”的根本技术。
 

  最近关于“互联网”的新名词、新概念非常多,举几个例子。首先看看“卫星互联网”。前几天看到一篇文章,说 “卫星互联网是继有线互联、无线互联之后的第三代互联网基础设施”。这种说法就是似是而非。什么叫“卫星互联网”?指的是通过卫星通信,让“卫星网络”加入“互联网”,使得互联网的疆域可以覆盖那些计算机网络和电信网都无法覆盖的地区,进一步扩大互联网的“互联”范围。“卫星互联网”对于“互联网”而言,可能有两点变化:一是“卫星网络”加入了“互联网”,扩大了“互联网”的规模,但前面说了,这种事情每天都在发生,不算“改变互联网”;二是采用了新的底层通信技术,但互联网技术本来就不对底层网络的具体通信技术做任何限制,这只不过是互联网技术在“互联”方面的优势所带来的又一个“互联”成果而已,我们从来没有说过“铜线互联网”、“光纤互联网”、“以太互联网”、“5G互联网”、“WiFi互联网”、“蓝牙互联网”、“ZigBee互联网”、“NB-IoT互联网”、“LoRa互联网”。因此我理解,“卫星互联网”这个词只是一种约定俗成的通俗叫法,准确地说应该是“采用新的底层通信技术的卫星网络加入了互联网”,不能因此就称为“第三代互联网”。因为“卫星互联网”没有改变任何的互联网技术。不能把互联网所连接的网络的底层通信技术,与“互联网”本身相互混淆。
 

  再来看看“工业互联网”、“产业互联网”。这些“互联网”的概念,与“卫星互联网”有异曲同工之妙。因为“互联网”既不限制底层通信技术,也不限制上层的应用。而“工业互联网”、“产业互联网”描述的,都是互联网上的应用。所以按照我的理解,“工业互联网”、“产业互联网”也只是一种约定俗成的通俗说法,其实指的是互联网的互联范围向工业控制网络延伸,从而会诞生新的互联网应用。比如百度百科对“工业互联网”的解释是:“是全球工业系统与高级计算、分析、感应技术以及互联网连接融合的结果”。
 

  此外,现在有一种非常流行的说法,“互联网的上半场是消费互联网,而互联网的下半场是产业互联网”。这又是站在互联网应用的角度来描述互联网,我想最早的提出者想表达的意思,其实是“互联网应用的上半场是支持个人消费为主,而互联网应用的下半场是支持生产制造为主”。就算是描述“互联网应用”,这种说法本身也值得商榷:比如互联网最早的应用是支持科学计算、远程登录,好像既不是 “消费”,也不是“产业”;现在疫情期间很多人通过互联网办公,这好像也不算“消费”或者“产业”;而且“下半场”这个词过于绝对,“产业”之后就不会有新的互联网应用了吗?总而言之,“互联网应用”的改变,也是互联网上每天都在发生的事情,这本来就是因为“互联网”不对应用做假设带来的自然而然的结果,也不适合把“互联网应用”的改变,认为是“改变互联网”。就像我们从来没说过“科学计算互联网”、“办公互联网”。
 

  当前“互联网”这个词因为已经被用得太多太广。“互联网”这个词汇,到底是指“互联的每个网络的底层通信”更合适,是指“互联网应用”更合适,还是指“互联网体系结构”更合适呢?我想我们还是应该尊重这个词汇最早诞生时的本意。“互联网”是通过 “网际互联”技术形成的这张网,因此说到互联网,指的应该就是互联网基础设施;说到“互联网技术”,应该指“网际互联”技术,也就是“互联网体系结构技术”。“工业互联网”应该叫 “互联网上的工业控制应用”(如果指网络的话,应该叫“工业控制网络”),“产业互联网”应该叫 “互联网上的生产制造应用”,“卫星互联网”应该叫“互联网支持的卫星网络通信技术”。也许某些专家认为互联网的“网际互联”技术已经不再重要(我们不讨论这种观点正确与否),为了强调“互联网应用”或“互联网通信技术”而刻意省去“应用”和“通信技术”这些词汇。但事实上,“互联网应用”和“互联网通信技术”这些词语一点都不会影响这些技术的重要性,但至少可以减少业界的许多误会,避免因为“误会”而导致的无意义的技术争议。
 

  此外,所谓的“改变互联网”,指的是对互联网的技术进行更新。大的改变是改变,小的改变也是改变。其实对于互联网这样的通用基础设施而言,哪怕是一点小的改变,最终的受益者也是数量众多的。只不过因为它是“基础设施”,就像空气一样,我们因为习惯而感受不到它的重要性而已。最近有些媒体,总喜欢用“重构互联网”这样的词汇来描述互联网技术的改变。比如说谷歌推出的QUIC协议是“重构互联网”,就显得“耸人听闻”了,因为这只是支撑某些应用的传送层协议的改变而已。严格地讲,只有彻底改变了IP协议,才能算是“重构互联网”。
 

  在说清楚了什么是“改变互联网”之后,我们下面就来分别讨论那些“可能”改变“互联网”的社区或组织。
 

       3、标准化组织能改变互联网吗?
 

  由于互联网是完全分布式运行的,各个“网络”之间必须有一套被广泛接受的“互操作”标准,才能成为真正的互联网技术,这也是标准化组织之所以在互联网领域这么重要的原因。
 

  当前互联网技术的最权威的标准化组织,是IETF。IETF技术标准的一个重要特点,是在尊重既有的互联网这个事实的基础上,在IP协议框架的范围内,逐步完善互联网技术标准。IETF的每个标准都有编号(RFC ***),如果某个标准不完善,被后面的标准所更新,就会在旧标准号和新标准号的文档里特别说明。因此,只要按照RFC的编号顺序来阅读,就能非常清晰地了解互联网技术标准的形成历史。但值得注意的是,IETF标准叫RFC,全称是Request for Comment(请求评论)。也就是说,IETF标准其实只是“建议”,并非强制标准。这也是互联网技术的一大特点,那就是:最终是否采用某项技术,其实是每个“网络”自己决定的,没有人强制要求。今天这些加入互联网的“网络”之所以采用TCP/IP协议栈标准,并形成互联网,是每个“网络”自己选择的结果,是在各种综合复杂的情况下,各方博弈的结果。
 

  因此,尽管曾经有标准化组织认真讨论过完美的“开放系统互联”模型,即ISO的OSI(Open System Interconnect)标准,但最终并没有对今天的互联网所采用。说到最根本的原因上,其实还是因为“互联网”是一个完全分布式的架构,没有任何人可以强制要求某个“网络”采用什么技术。一个“网络”是否选择加入互联网,选择什么样的技术加入互联网,是在互联网带来的收益、技术先进性、成本等诸多因素之间,综合平衡的结果。
 

  如果某项互联网技术标准需要对今天已经形成的互联网做较大程度的改动,部署起来就会比较困难。在IETF标准中,改动最大的,莫过于IPv6协议了。这也是为什么IPv6从提出到现在已经过去20多年了,但今天全世界的IPv6流量也只占到所有互联网流量的30%左右。我们都知道,IPv6扩大了地址空间,扩大了互联网的互联范围,是互联网能够继续保持规模扩张的基本技术引擎,因此IPv6的大规模部署是迟早的事情。所有的互联网参与方,都希望在“改动成本最小”的前提下,最后一个去部署IPv6这样的需要深度修改网络协议栈的技术;除非遇到了经济上的拐点,即如果不部署IPv6,就无法接入互联网,或者无法为互联网用户提供服务,或者互联网服务的性能变得很差。如果要等到这个“拐点”的自然到来,许多机会可能就已经失去了。这也是我们国家为什么2017年发文,明确要求各家单位/公司/机构对IPv6的规模部署制定时间表。
 

  在基础设施建设方面,政府肯定是要走在前面的。举个例子,修高铁这样的基础设施,一定是政府主导的,不可能指望有出行需求的人主动提出来、觉得没有高铁就已经影响到工作效率了的时候才去修高铁。但互联网的特殊性在于,这个基础设施是完全分布式的,不像高铁这样可以集中修建,因此尽管政府极力推动,最终的IPv6部署也只有依靠各个“网络”自己来完成。
 

       4、学术界能改变互联网吗?
 

  互联网学术界,在我心中是最“悲催”的学术界。学术界都以发表学术论文为主要成果。既然是“学术论文”,往往都要有“学术思想”才行,否则就会被人认为是太“工程”,缺乏“学术价值”。可是我们的研究对象“互联网”早已是一个庞然大物。如果我们要研究如何重新设计互联网,不但一般人下不了手,而且几乎新的思想不可能有“实验田”;如果我们要研究已有的互联网上的那些改进技术,不但很难做实验进行验证,而且这些技术本身也很难真正被互联网所采纳。我们可以拿其他领域做一个对比,研究人工智能算法,只要这些算法在某些场景下能取得好的性能,能被实际使用,那这项研究就算成功;研究计算机系统技术,只要我们能根据某些技术构造一个新的系统并被人使用,也算成功。唯有“互联网”,全世界只有一个,还是由多个管理主体“分布式”地构成的,这实在是给学术界出了大难题。
 

  因此我们看看今天 “网络”领域的学术界,其实大部分都在做“计算机网络技术”或“互联网应用”研究,而非 “互联网技术”研究。比如数据中心网络、无线局域网技术、传感器网络技术等,都是某个“网络”内部的技术;比如P2P网络、流媒体传输等,都是“互联网应用”。当然也有一些对互联网技术真正有贡献的研究,尤其是各类的传送协议(今天Linux内核有20多个拥塞控制协议,其中很多都是学术界提出来的),还有很多域间路由协议的改进研究,还有一些互联网安全的研究等。但总体而言,学术界在互联网技术方面的研究成果最后能真正改变互联网的,与其他领域比起来还是少得太多。而且就算提出了一些很好的原创性想法,一般也需要IETF形成技术标准之后,才会成为真正的互联网技术。当然学术界的很多论文,对互联网做了很多测量、分析方面的工作,对于更好地理解互联网,有非常重要的作用。
 

  过去十多年,世界各国启动了不少“未来互联网”的研究项目,希望设计一个“Clean-slate”的未来互联网架构,克服当前互联网的各种不足。这里要注意的是,这里说的是“未来互联网”,比如美国的FIA项目(Future Internet Architecture),各种以“未来网络”为名的项目,不属于此列(因为这些项目研究的,压根就不是“互联网”)。但在我们所熟知的所有“未来互联网”项目中,目前看来最好的成果,可能就是ICN/NDN提案了,但离实际落地还非常遥远。在上一篇文章中已经做了介绍,不再赘述。
 

  这里值得一提的是软件定义网络(SDN)技术。SDN确实在一定程度上取得了成功(虽然今天的SDN早已不是最早提出来的SDN)。但是, SDN首先不是互联网体系结构技术,而是互联网体系结构的实现技术。因为SDN并未改变TCP/IP协议栈,只是在一个“网络”内部的控制方式(由各个路由器分布式控制还是集中起来控制)以及设备的转发表方面(通过P4对转发表灵活编程)做了创新,并没有改变互联网的基本技术。其次,SDN主要应用被互联网“互联”的各个“网络”内部,而各个“网络”之间仍然是分布式的。也正是这个原因,SDN并未入选美国的FIA项目,因为大家都不认为SDN是一种新的互联网体系架构。
 

  总之,各类以推翻IP为目标的“未来互联网”的研究项目,离“改变互联网”似乎已经越来越遥远,基本上看不到任何希望。这件事情如果能发生,那么它应该早就发生了。至于原因,现在看来也很容易想明白。连IPv6这样并未改变已有的IP协议基因的互联网技术,部署起来都如此困难,更别说这些其他的技术了。当然也有一个很显然的原因,如果它们真的解决了什么IP协议没有解决的问题,参与互联网的这些“网络”,早就“用脚投票”了,不会等到今天。
 

       5、设备厂商能改变互联网吗?
 

  互联网技术最终是体现在路由器这些设备上的,因此就会自然而然地问:设备厂商能改变互联网吗?答案是:不能。原因很简单:设备厂商并不真正运营管理“网络”,他们只是各个“网络”的“乙方”,“乙方”必须服从“甲方”的利益。因此,尽管设备厂商往往都很懂互联网,懂技术,但他们的观点、想法只能通过IETF这样的标准化组织来体现。此外,就算设备厂商在路由器上实现了很多互联网技术,但最终是否“启用”,还是互联网的各个“网络”管理者说了算。在路由器上做了实现,而网络管理者并不“启用”的例子,数不胜数。
 

       6、到底谁能改变互联网?
 

  讨论到这里,其实答案已经很清楚了,只有加入“互联网”的各个“网络”的管理者,才是能真正改变互联网的。但由于互联网的所连接的“网络”太多,相互之间没有任何隶属关系,因此在最终的技术选择上有几个特点:1)技术一定是演进式发展的。没有任何的网络管理者有动力去主动部署一个全新的互联网体系架构,因为不但投资巨大,而且看不到直接的收益,反而不能与其他的“网络”互联互通,失去了加入“互联网”的目的。2)技术的选择一定是“理性”的。如果一个技术,经过了所有受众的考验、甚至质疑之后,大家还是选择了它,本身就说明了这项技术的生命力。它不一定在所有人眼里都是完美的,但在没有任何外力干预的前提下,人民群众“用脚投票”的结果,一定在相当程度上是经得住考验的。
 

  因此,改变互联网的,既不是专家学者,也不是设备厂商。而在互联网的标准化组织中,只有IETF这种“演进式”的技术迭代方法,才刚好符合互联网的这种技术走向特点。在20世纪70年代互联网刚刚诞生的时候,曾经有各种技术选择,当初的设计者们选择了IP;也许如果当时碰到了更聪明的人,会有更好的设计,但毕竟已经过去了。在本世纪初,当互联网规模高速扩张的时候,人们对IP协议有过质疑,因此提出了各种“未来互联网”研究项目,当时也有过机会,但已经过去了快20年,事实证明这些项目的研究并未取得成功。随着时间的推移,随着互联网的规模越来越大,随着“卫星互联网”、“工业互联网”这些概念的出现,要再改变IP的机会,已经越来越小了,这是一个不容否认的事实。相反,如何在已有的IP(v6)架构上,研究更大规模互联网上的路由控制技术、网络管理技术、网络安全技术,研究如何让物物互联、空天互联、人物互联更好地适应IP(v6),更需要无数专家学者的投入、需要无数产业人士的投入、需要无数聪明人的贡献。
 

总结
 

  结合上一篇文章,对这两篇文章做一个总结。
 

  1)IP协议并不完美,但它完美实现了互联网的“互联”使命,今天互联网产业的繁荣说明了一切。
 

  2)以IP协议为核心的互联网技术,是所有参与“互联网”的“网络”管理者自发作出的理性选择,是在技术先进性、性价比、加入互联网的收益等许多方面进行复杂综合平衡之后的选择,是没有“外力”干预下的选择,要相信绝大多数人的自然选择。也许当初IP协议的设计者并没有想到那么多理由,但它既然能成功,一定有深层次的原因。我们在上一篇文章中,已经在技术层面对IP协议做了分析,当然这里面有些是早期的互联网设计者们深思熟虑的,有些是“事后诸葛亮”。
 

  3)要再设计一个全新的“互联网架构”取代IP,目前看起来已经非常困难了,时间越流逝,互联网的规模越大,这种“新技术”的诞生就越难。
 

  4)互联网还在向物物互联、空天互联、人物互联发展,规模还在不断扩大,面临很多技术挑战,需要更多的研究和技术投入,我们当前做得还很不够。
 

  5)任何一个被互联网“互联”的“网络”的内部通信技术,如果要为其业务服务,其技术选择是自由的,可以用IP,也可以不用IP,但这与“互联网”无关;这些网络内部的技术升级,不会形成“互联网”技术标准(即不能以IP之名进行标准化)。未来,“互联网”技术的发展,和各个“网络”内部通信技术的发展,可能是两条并行的路;但站在互联网的角度,如果这些“网络”选择标准互联网技术加入“互联网”,避免“网络孤岛”,可能是对所有参与方最优的选择(根据梅特卡夫定律)。这件事情是否会发生,现在谁也不知道,最后还得由各个“网络”的管理者,“用脚投票”。
 

  (本文转载自“亚太网络研究APNet”公众号)

上一篇 下一篇