互联网从诞生起经过五十多年的发展,如今已成为一个全球性网络,是有史以来最成功的人类基础设施之一。总结互联网发展的历程,带给我们很多关于互联网未来之路的启示。
从通信网的发展讲起
我们首先从通信网的发展历程开始讲起。
传统的固定电话网络一直在不断演进。最早的电话网络是点对点式,拿起听筒就能通话,无需拨号。然而,这种系统存在着N平方问题,即当用户数量增加到一定程度时,需要建立大量的线路,这显然不切实际。因此,必须引入交换技术,这是发展的第一步。
第二步,追求自动化。传统的电话机需要手动拨号,使用拨盘。拨盘背后的工作原理是什么呢?当你拨出一个数字,不会立刻得到回应。相反,它会在回程时发送相应数量的脉冲信号。例如,拨“1”时,会返回一个脉冲,而拨“9”时,将返回九个脉冲。这种机制涉及到一种被称为“步进制交换机”的机械设备。随着技术的发展,“纵横制交换机”应运而生,它采用了矩阵结构,极大提高了信道建立的速度。
第三步是数字化,即逐渐将模拟信号转化为数字形式。随着技术逐渐成熟,我们着手进行数字化改革,从而迎来了新的发展。
20世纪70年代,面对不断增长的通信服务需求,通信领域的专家们提出了一项新的通信技术标准,即“综合业务数字网”(ISDN,Integrated Services Digital Network),旨在提供多种不同类型的通信服务,包括语音、数据和图像传输等。
ISDN的发展分为两个阶段,首先是“窄带ISDN”,其基本配置是“两路电话与一路数据”,通常称为“2B+D”,即两条B通道(Bearer Channel)和一条D通道(Data Channel)。
“两路电话”表示有两条电话通道,每个通话都使用一条独立通道,每条通道带宽为64 Kbps,用于传输电话通话的音频信号。另一方面,“一路数据”意味着有一条数据通道,通常用于传输数字数据,如计算机通信或互联网接入,其带宽通常为16 Kbps。
因此,“两路电话加一路数据”表示ISDN连接可以同时支持两条独立的电话通话通道和一条数据通道。这种配置使 ISDN 适用于多种通信需求,如同时进行两个电话通话以及数据传输。这种多功能性是 ISDN 的重要特点,允许用户在同一连接上进行不同类型的通信。
随着技术的发展,ISDN逐渐迈入了“宽带ISDN”阶段,这一阶段的特点在于拥有更高的数据传输速度和更广泛的应用范围。宽带ISDN引入了更快速的数字传输通道,允许多种多媒体数据传输,包括高清视频和互联网接入等,满足了不断扩展的通信需求。
在美国国防部高级研究计划局网络(ARPA网,ARPANET)出现后,分组交换的理念逐渐展现出强大的生命力。因此,通信领域的专家们在ISDN之外引入了X.25标准。最初的X.25标准采用了逐跳验证的虚电路连接方式,随后出现了更为简化的技术,即帧中继(Frame Relay)。
“帧中继”(Frame Relay)是一种基于帧的数据传输协议,将数据分成小的数据帧并逐步传输。可以将帧中继视为对X.25标准的简化,它提高了数据传输速率。随着时间的推移,帧中继进一步演化,发展成了异步转移模式(ATM)。20世纪90年代晚期,ATM曾被认为可能主导通信领域。由此可见,通信网络涵盖了多种线路,包括IC(继电路)、ATM和X.25等,但IP技术的崛起使以上所有技术边缘化。
计算机网络:从“ARPANET”到“IP协议”
ARPANET,即Advanced Research Projects Agency Network,美国国防部高级研究计划局网络,是互联网的前身。ARPANET是第一个分组交换网络,于20世纪60年代末开发,最初由美国国防部高级研究计划局(ARPA,即现在的DARPA,美国国防部高级研究计划局)资助和管理,旨在满足军事和科研机构之间的通信需求。
1972年,在国际计算机通信大会(ICCC)上,当时负责ARPANET项目的互联网之父罗伯特·卡恩(Robert E. Kahn)组织了一次极为成功的演示,首次向公众展示了ARPANET网络技术的功能和潜力。
此次展示引起广泛共鸣,于是,以美国ARPANET,英国NPL和法国Cyclades项目成员为主的国际网络工作组(INWG)成立,某种意义上,可以说该工作组是国际互联网工程任务组(IETF)的先驱样板。
1973年,另一位互联网之父温顿·瑟夫(Vint Cerf)加入了国际网络工作组(INWG),并担任主席一职。1974年,INWG希望计算机网络能够提供更广泛的服务,提出了两个重要提案,一个是以美国ARPANET为主的INWG39,另一个是以欧洲Cyclades和NPL为主的INWG61。这两个提案都基于分组交换技术。
1975年,国际网络工作组(INWG)融合了美国和欧洲的提案,形成了名为INWG96的统一提案,并正式提交给当时的国际电报电话咨询委员会(CCITT,后与国际无线电咨询委员会中从事标准化工作的部分合并成为国际电报联盟ITU,简称国际电联)。然而,这一提案遭到了CCITT的拒绝。CCITT认为分组交换是可以接受的,但必须采用虚电路(Virtual Circuit)技术或电路连接技术。这一决定引发了温顿·瑟夫的不满,最终导致他辞去主席一职。
随后,罗伯特·卡恩宣布不再与欧洲合作,而继续推进当时尚未完全成熟的INWG39方案。这实际上标志着双方的决裂。
在ARPANET取得成功后,国际电联未能形成全球性的统一方案,导致美国和欧洲分道扬镳,发展各自的计算机网络标准。因此,计算机网络领域出现了不同的发展方向,堪比春秋战国时期的列国争霸。在此过程中,ARPANET作为主要线路逐渐演化成了互联网的基础,采用TCP/IP协议,同时涌现出各种支线,各厂商独立发展自己的计算机网络,最终这些网络都融入到IP协议之下。
IP经历的三次重大技术挑战
IP经历了计算机网络发展历史上的三次重要技术挑战。第一次挑战是IP与其他协议的竞争,最终整合为IP协议。第二次挑战是IP与开放系统互联协议(OSI)的竞争。当时互联网不太规范,摸着石头过河,国际标准化组织(ISO)便引入了开放系统互联协议(OSI),定义了计算机和通信系统之间的通信协议和体系结构,旨在确保不同厂商的设备和软件能够互相兼容和交互操作。OSI模型将通信过程分为7个不同层次,每一层都有特定功能,以便更好地管理和理解通信。因为美国不再与欧洲合作,导致原本计划与美国共同发展IP的欧洲团队基本上都加入了OSI的7层模型阵营,试图与美国竞争,但最终未能获胜。第三次挑战则是IP与异步转移模式(ATM)技术的竞争。
这些技术挑战对中国互联网的发展有什么影响呢?
一个重要的事件是1989年11月,中关村地区教育与科研示范网络NCFC的启动。这是我国第一个示范网络,由世界银行提供贷款,清华大学、北京大学和中国科学院合作建设,为中国的高等教育和科研机构提供了互联网接入,推动中国计算机网络和信息技术领域的发展。该网络最初考虑使用数字设备公司计算机网络协议(DECNET),因为这一技术路线与OSI相似。幸运的是最终决定采用IP协议。
另一个重要事件是1994年中国教育和科研计算机网CERNET项目的立项。为了当时的“政治正确”,在项目可行性报告中提出目前要使用TCP/IP协议,未来过渡到OSI协议。幸运的是,实践中从来就没有推进向OSI过渡。
那么,TCP/IP是如何逆袭OSI的?
TCP/IP与OSI
要深入探讨TCP/IP和OSI,不得不提到经典的教科书《计算机网络》,其作者为安德鲁·塔能鲍姆(Andrew S. Tanenbaum)。该书在前三版之前都表示,TCP未来要过渡到OSI。但从第三版之后则开始反对OSI,说有四个因素导致其最终没有走向成功。
《计算机网络》第六版封面
第一个理由是糟糕的时机(too early and too late),他认为OSI的问题在于其标准制定得过早又过晚,过早是指很多问题还没有被充分解决就开始制定标准,过晚是指此时TCP/IP已发展起来了,OSI无法与其对抗。
第二个理由是糟糕的技术(bad technology),也就是指OSI技术本身相对复杂且不够清晰,因为它试图涵盖太多内容,相较而言,IP 技术更为简单,其核心思想是“大道至简”。
第三个理由为糟糕的实现(bad implementation),由于OSI过于复杂,导致实现起来极为困难,难以达到完备状态。
第四个原因是糟糕的政治因素(bad politics)。因为OSI是由政府组织管理,与IETF(互联网工程任务组)不同,后者由个人参与且更为灵活,没有过多因素干扰。因此,OSI最终没能生存下来。
当然,值得一提的是OSI并非完全销声匿迹,仍在某些场景中得到应用。如“中间系统到中间系统”(IS-IS)路由协议,该协议基于OSI标准,而非TCP/IP,但在大型互联网服务提供商中仍能得到广泛使用。而开放最短路径优先协议(OSPF)则在校园网络和企业网络中较为流行。此外,https协议使用的X.500标准实际上是OSI的标准之一。以往的X.400标准用于OSI的电子邮件,X.500标准则用于目录服务。如今证书系统广泛使用X.500标准,表明OSI仍存在并在某种程度上被继承。
TCP/IP与ATM
随着帧中继的出现,IP协议在某些方面表现出不足,如无法保障服务质量和安全性。此外,IP数据包长度可变,无法确定传输延时。这促使人们开始思考改进分组交换技术,试图固定IP的数据包长度,从而保证传输延时。
为实现这一目标,人们将可变长度的IP数据包转化为固定长度的数据单元,即“cell”。但是固定长度要多长才合适呢?这引发了争议。美国倾向于使用64个字节的cell,而欧洲更倾向于使用32个字节的cell。美国认为长的cell效率更高,而欧洲认为短的cell更灵活且易调整。随后出现一个折中方案,即48个字节的cell,加上一些头部信息,总共53个字节,这就是异步传输模式(ATM)的基本结构。
ATM采用了固定长度的cell,这种长度可以被严格控制,但其地址为相对地址,每经过一个ATM交换机,地址都会发生变化,这与IP不同。IP地址在整个传输过程中不变(此处不讨论NAT技术)。而X.25、帧中继和ATM经过交换机后都会更换地址。
ATM的问题在于理论上什么都能够做,但实际上什么也做不好。1994年开始建设中国教育和科研计算机网CERNET时,很多人都认为应该选ATM,但我们最终还是选择了TCP/IP。这是由于ATM是虚电路交换,在校园网里使用时,如要去查一个DNS,以太网是无连接的,直接发包得到对方回复仅需2-3毫秒,而ATM必须要建一条虚线路,这需要耗时40-50毫秒。因此,ATM引入了新的问题。
清华大学的一个校友有一句比喻,认为可以将ATM理解成一只鸭子,它既会飞,又会游泳,还会走路,但在每个方面都表现平平。这足以说明ATM的特点,即其功能多样,能够传输和处理各种类型的数据,如电子邮件、视频、语音、远程登录和文件传输,但都不出色,并非最优选择,具有局限性。
ATM主要分为两个路径。
一条路径是,ATM被应用于构建全套系统,包括ATM电子邮件、ATM视频传输、ATM语音通信、ATM远程登录以及ATM文件传输等应用。
另一条路径是,将 IP数据包封装到ATM的单元中,通过ATM 网络进行传输,即IP over ATM。
第二条路径有两个分支。其一是Classic IP over ATM,即经典的IP over ATM,将ATM视为一种电路交换网络。例如,美国国家科学基金会(NSF)于1985年创建了美国国家科学基金会网络(NSFNET),旨在为美国的研究和教育机构提供高速数据通信服务。其中,作为NSFNET的一部分,超高速骨干网服务(vBNS)就使用了Classic IP over ATM,因为当时传统专线网络的最高传输速度仅为45Mbps,而ATM一开始就提供了155Mbps的传输速度,相当于高速专线,特别适用于大规模研究,加速了科研机构之间的数据共享和协作。在NSFNET退役后,副总统阿尔·戈尔(Al Gore)提出了“信息高速公路”计划,旨在推动信息技术和互联网的发展,将高速宽带互联网普及到美国的每个角落。
另一个分支为局域网仿真 (LANE,LAN Emulation),旨在模拟局域网(LAN)的特性,以便在ATM网络中实现对LAN协议的支持。LANE协议允许ATM网络上的设备(如计算机、路由器和交换机)之间通过仿真出的LAN连接进行通信。许多校园网都采用了ATM技术,实际应用的技术是局域网仿真。但ATM网络需要建立虚电路,耗时长且十分复杂。于是清华大学等高校另寻他路,建立了中国首个光纤分布式数据接口(FDDI,Fiber Distributed Data Interface)网络,使用光纤作为传输介质,提供了高带宽和可靠性,使学校网络能够提供高速数据传输并连接各个校园区域。清华随后转向使用3Com(现为惠普企业)设备,建立了交换式FDDI网络,以实现更卓越的网络性能,同时兼备可靠性和灵活性,从而提供更优质的网络连接和通信服务。随着时间的流逝,ATM在校园网络中逐渐失去了主导地位。
值得一提的是,当时从事IP技术的专家不太喜欢ATM。ATM的正式英文名称是Asynchronous Transfer Mode,却被人调侃成“Another Technical Mistake”,即“另一个技术错误”。
软件定义网络(SDN,Software-Defined Networking)是近来备受关注的网络技术,实际上可以视为ATM技术的一种“演进”。SDN使用IP数据报文格式,摒弃了ATM中的53字节单元头,引入了中心控制等新特性,以更好地适应现代网络需求。但与ATM相似,其仍存在不可扩展性和复杂性过高等问题。这进一步印证了网络技术的“十二条军规”(RFC1925),即旧技术常会换新名字复现。
IPv6是历史的必然选择
IPv6实际上最早称为IPng(Internet Protocol Next Generation),而IPng起源于SIPP。20世纪90年代初,IETF意识到两个问题:一是32位地址不够用;二是当时地址分为A类、B类和C类,可聚类B类已分配完毕,而对于一定规模的网络,需要分配数个C类地址,而C类地址不聚类,这无疑将导致路由表爆炸式增长。
就当时而言,短期解决方案一是使用NAT解决IPv4地址的短缺,二是发明了“无类别域间路由”技术(CIDR)和BGP4;长期解决方案是IPng(下一代IP协议)。1992年,互联网体系结构委员会(IAB)提议IPng的网络层采用OSI长期推进的CLNP,即部分IETF草稿中的第七版本IP(IPv7)。提出以OSI的CLNP为网络层协议,传输层保留TCP和UDP。
然而,该提议遭到了IETF的抗议。虽然当时是IAB委员会成员,但温顿·瑟夫却坚定地支持IP。平常都穿三套件西服的他,在一次ISOC的问答会上,脱下西服,解开衬衫,展示出写着“IP On Everything”的T恤。
温顿·瑟夫
在经历大范围的抗议之后,IAB不再坚持OSI。最后大家表态,OSI不再作为唯一选择。实际上,IPv6基于SIPP(Simple Internet Protocol Plus);官方认定的IPv7(和上述草案中的IPv7不同)基于CATNIP;IPv8基于Pip;IPv9基于TUBA,其中仅有TUBA是基于OSI的。由于最后SIPP胜出,现在全球推进规模部署的是IPv6。
此外,还有一个“IPv9”出现于RFC1606。RFC一般只表明年月,只有一种RFC会表明年月日,那就是4月1日发布的愚人节RFC,虽然愚人节RFC未必没有道理,但多数是以玩笑的形式提出的。引用时一定要分辨清楚,不能稀里糊涂地参考。
综合来看,互联网技术的演进是一段令人振奋的历史,塑造了我们的现实,也为未来提供了无限可能性。
互联网设计原则:以不变应万变
互联网的本质是无中心的分布式系统,可以说,这是互联网“以不变应万变”的设计原则。
首先要分层。1964年,美国的保罗·巴兰(Paul Baran)提出分组交换概念,其核心就是分布式无中心的拓扑结构。人的理解能力是有限的,一定要把复杂问题简单化,将其解耦,不能混在一起,需要让它中间有明显界限,一个个解决后变成一个整体,不能所有事情眉毛胡子一把抓。分层不是互联网唯一的,其他网络也都进行了分层。
其次是互联网特有的沙漏模型的细腰。1978年,温顿·瑟夫(Vint Cerf)等互联网先驱将原始的互联网传输控制协议的功能分为两个协议:TCP和IP,最终形成了著名的TCP/IP的沙漏模型。
TCP/IP沙漏模型
最后是端对端。1972年,法国的路易·普赞(Louis Pouzin)提出Cyclades网络结构。他认为:“主机不需要信任网络,所以网络不需要完美,而且网络也不可能做到完美”。由此产生了互联网的主要设计原理:“尽力而为”和“端到端”。
具体来看,互联网设计原则可以总结如下:网络协议必须适应异种机之间的互联;依靠标准选择某一个方法;具有很好的扩展性;找到性能、成本和所能实现的功能的平衡点;保持简单性;模块化;不要等待找到完美的解决方案;尽量避免选项和参数;在发送时应严格,在接收时应宽容;小心处理自己没有请求而收到的分组;避免循环依赖性;对象应该能够自我描述,必须使用由IANA授权所使用的编码;任何协议都应使用统一术语、注释、比特和字节顺序;只有当实现了几个能够运行的程序后,Internet的协议才能成为标准。
在互联网的发展中,有诸多不完美情况存在。因此,总有人提议对互联网进行根本性的变革。但也有很多互联网专家更倾向于互联网应该在不完美中渐进发展。一个网络的价值等于该网络内的节点数的平方,而且该网络的价值与联网的用户数的平方成正比,这就是著名的梅特卡夫定律。
以太网的发明者罗伯特·梅特卡夫(Robert Metcalfe)在20世纪80年代提出,网络的价值随着网络中节点数量的增加而成平方地增加。简而言之,网络的价值(V)等于用户数量(N)的平方,这意味着网络的发展通常需要渐进演进,而非革命性的创新。如果尝试进行大规模创新,可能会导致用户数量急剧下降,从而减少网络的价值。
若将IPv4用户表示为“a”,那么它的网络价值就是a的平方。将IPv6用户表示为“b”,其网络价值为b的平方。如果IPv4和IPv6不能互联互通,则价值为max(a2,b2)。当通过翻译过渡技术实现IPv4和IPv6互联互通后,网络的总价值将成为(a+b)2。
人工智能与互联网发展
前几年人工智能领域的悲观学家认为,未来不能让机器人联网,否则机器人会太强大,影响人类的生存。最近一年的事实证明:没有互联网就没有ChatGPT。
对于人工智能领域来说,ChatGPT是一个崭新的起点。虽然它给出的内容对错参半,但是它可以帮助我们拓宽思路,给予我们新的灵感。ChatGPT给互联网带来了两个挑战:第一,个别网络巨头垄断了类似ChatGPT这样的人工智能服务,这实际上是对互联网分布式特性提出的巨大挑战。第二,ChatGPT本身产生的内容很可能是没有事实依据的编造,如果坏人假装机器人进行有意造谣,如何甄别?因此,大规模人工智能的采用对于网络实体的可信性也提出巨大的挑战。
互联网的诞生让全世界的人都可以进行交流,ChatGPT的出现,要求我们从过去的会解答问题,转变成会提出问题。同时还要判断机器人给出的答案是不是正确,你需要具备判断能力,要有质疑精神。
要想推动互联网技术的创新突破,就要格外注意培养年轻人的批判性思维和逻辑思维,并且允许年轻人畅所欲言、自由思想,再给予他们充分的试错空间。要允许多样性,鼓励百花齐放。
本文根据清华大学李星教授观点整理,整理:李佳
责编:陈茜