计算机网络的起源与发展历程

文章目录

    • 前言
    • 时代背景
    • [ARPANET 的诞生](#ARPANET 的诞生)
    • [TCP/IP 协议簇与 Internet 的诞生](#TCP/IP 协议簇与 Internet 的诞生)
    • [HTTP 协议与 Web 世界](#HTTP 协议与 Web 世界)
    • 结语

前言

在当今数字化时代,计算机网络已经成为我们生活中不可或缺的一部分。无论是在家庭、学校、还是工作场所,我们都能感受到网络的巨大影响。随着互联网的普及和技术的进步,我们享受到了前所未有的便利生活,可以与世界各地的人们交流互动,获取信息、分享经验,甚至是开展全球性的合作与交易。网络已经将整个世界连接在了一起,为我们的工作、学习、娱乐等方面带来了前所未有的便利。让我们一起感受这个数字时代带给我们的无限可能性,探索计算机网络的发展历史。

时代背景

在第二次世界大战落下帷幕之后,世界格局迅速演变,美国和苏联崛起成为两个超级大国。为了避免新一轮全球范围冲突的发生,并且尽可能在相对和平的状态下争夺全球的话语权,两国及其同盟国开始了长达数十年的角逐,对抗的方式通过科技军备竞赛、太空竞赛、外交竞争以及局部代理战争的 "冷" 方式进行,因此也被称为美苏冷战。

1957 年 10 月 4 日,苏联于拜科努尔航天中心毫无先兆的发射了人类历史上第一颗人造地球卫星---斯普特尼克1号(Sputnik 1),这也就意味着他们已经拥有了两个优势

1. 拥有了将卫星送入轨道的能力
2. 洲际弹道导弹的技术已被成功验证,长距离打击已经成熟

在日趋严峻的冷战对抗形势下,这无疑直接对美国国家安全造成严重威胁,为了不落后于苏联,国会授权国防部(DOD)成立了高级研究计划局(ARPA,Advanced Research Project Agency),主要任务是将科学技术应用于军事领域,确保美国的军事科技处于全球领先地位,防止遭受潜在敌人的尖端科技突破 。

1961 年 10 月,苏联 R-16 洲际导弹成功完成飞行试验,这意味着美国本土已面临着远程核导弹打击的威胁。为了保证能在苏联的第一轮核打击下具备一定的生存和反击能力,美国国防部授权 APRA 研究一种 "分布式" 的指挥系统,整个系统由无数的节点组成,即使其中的某些节点被摧毁,其它节点之间仍能相互通信。

ARPANET 的诞生

1962年,MIT的约瑟夫·利克莱德(J. C. R. Licklider)加入ARPA,将办公室名称从命令控制研究(Command and Control Research)改为信息处理技术办公室(IPTO,Information Processing Techniques Office),并担任IPTO的第一任主管,工作的重点主要是研究可抵御敌军打击的军用通讯系统,其它任务还包括电脑图形、网络通讯、超级计算机等课题,于是乎,研究"分布式" 指挥系统的任务就落在了IPTO的头上。利克莱德写了一份备忘录,里面描述了他所设想的一套全球互联计算机的"银河网络"概念,通过这些互联的计算机,每个人都能够从任何站点快速的访问数据和程序。

1965年,威尔士计算机科学家唐纳德·戴维斯(Donald Davies)提出了分组交换的概念,意思是将计算机传输的消息进行分组,他在咨询了一位语言学家后选择使用"packets" 数据包 这个词来描述这些消息分组,这些数据包能在网络上独立的从源地址传输到目的地址,这些线路的选择便称为路由,当然每组之间能自由的选择不同的路由,并最终在目的地重新组装成原来的样子。

1966年,美国航空航天局(NASA)的鲍勃·泰勒(Bob·Taylor)接任信息处理技术办公室的第三任主管。在他的领导下,一项具有历史意义的计算机网络概念逐渐成形。泰勒对计算机通信的前景有着远见,意识到不同系统之间互通的重要性。他在考查了一个由三台电传打字机和三台计算机组成的小型通信网络后,坚信不被兼容的计算机通信毫无意义。为此,他倡导建立一个兼容的协议,使所有终端能够无障碍地互相通信。很快,泰勒的新型通信网络项目完成了内部立项,ARPA 将其命名为阿帕网(ARPANET),这也将人类通信的未来引领了新的方向。

为了推动ARPANET项目的实现,泰勒开始积极招募人才。其中,麻省理工学院(MIT)林肯实验室的拉里·罗伯茨(Lawrence Gilman Roberts)受邀加入,并担任了ARPANET的项目经理和首席架构师。同时,他还邀请了美国加州大学洛杉矶分校(UCLA)的分组交换理论专家伦纳德·克兰罗克(L.Kleinrock),以及兰德公司科学家保罗·巴兰(Paul Baran)加入团队。值得一提的是,巴兰提出的"分布式通信理论"提供了两个重要思想:

bash 复制代码
1. 网络的控制权应该完全分散。
2. 网络应该采用分组交换(Packet Switching)替代电路交换(Circuit Switching)。

这些理论的提出使每个节点在数据路由时都具备了同等地位,奠定了未来互联网的最基本特征。

罗伯茨设计的阿帕网(ARPANET)是第一个具有分布式控制的广域分组交换网络。在这个设计中,主机不再负责处理数据路由的任务,而是由一个小型、廉价的计算机来承担,这个计算机被称为IMP(Interface Message Processor,接口信号处理机)。IMP的作用是连接、调度和管理网络。主机将数据包发送给IMP,IMP会查看目标地址,然后将数据包传递到本地连接的主机,或者传递给另一个IMP。有了IMP,大型主机不再需要直接参与联网,从根本上解决了计算机系统不兼容的问题。IMP也可以看作是现今路由器的雏形。

为了防止数据包丢失,发送方的IMP会暂存数据包,直到接收方的IMP发送确认信息(ACK)。如果没有收到确认信息,发送方的IMP会重新发送数据包。在那个时候,确认信息的重传机制是由中间路由节点来完成的,直到后来逐步演进为由主机的TCP/IP协议栈来完成。这一设计为当今互联网的核心基础设施奠定了基础,并且影响着网络通信技术的发展方向。

1968年,罗伯茨提交了一份名为《资源共享的计算机网络》的研究报告,重点阐述了在ARPA内部建立计算机互联的重要性,以实现大家研究成果的共享。基于这份报告,国防部开始组建"高级研究计划网",即著名的"阿帕网"。拉里·罗伯茨因此成为了"阿帕网之父"。同年夏天,美国国防部正式启动了阿帕网(ARPANET)项目的商业招标,开启了这一里程碑式计划的实施阶段。

1969年,ARPA建立了IMP的研发测试中心,由马萨诸塞州坎布里奇市中标的 BBN(Bolt Beranek and Newman Inc.)公司进行制造,基础硬件选用了配备12KB 内存的 Honeywell DDP-516 小型计算机。与此同时,泰勒被派往越南,随后辞去了职务,罗伯茨则接任了IPTO的主任。项目开始的第一阶段,罗伯茨计划在美国西南部建立一个四节点网络,第一个节点在加州大学洛杉矶分校(UCLA),第二个节点在斯坦福大学研究学院(SRI),第三个节点在加州大学圣巴巴拉分校(UCSB),第四个节点在犹他州大学(UTAH),每个节点使用一台大型计算机,采用分组交换技术,通过专门的 IMP 设备以及由 AT&T 公司提供的速率为 50kbps 的通信线路进行连接。

在这个阶段,BBN公司的罗伯特·卡恩,Robert Elliot Kahn)也加入了阿帕网(ARPANET)项目,并前往加州大学洛杉矶分校参与工作。与此同时,罗伯茨曾经的麻省理工学院同事伦纳德·克莱因罗克(Leonard Kleinrock)教授带着 40 多名技术人员和研究生进行安装和调试。根据事先的约定,在加州大学这一端只需要输入"LOG"这3个字母,然后斯坦福大学那一端的主机就会自动产生"IN"这两个字母,从而组成"LOGIN",用以验证两个节点之间的通信是否成功。

至此,第一个阿帕网(ARPANET)就在 1969 年诞生了,将加利福尼亚州大学洛杉矶分校、加州大学圣巴巴拉分校、斯坦福大学、犹他州大学四所大学的 4 台大型计算机进行了互联,第一个四节点的网络诞生,社会开始迈入 "网络时代"。

尽管按照现代标准来看,这个最早的网络显得非常原始,传输速度也很慢,难以令人满意。然而,阿帕网的四个节点及其连接,已经具备了网络的基本形态和功能。因此,阿帕网的诞生被普遍认为是网络传播的"创世纪"。

TCP/IP 协议簇与 Internet 的诞生

在阿帕网(ARPANET)开始正式运行后,人们发现各个节点的IMP在进行连接时需要一种能够同时被4台IMP统一识别的信号,用以开启和关闭通信管道。否则,这些IMP无法准确判断何时应该接收信号,何时应该停止接收。

为了解决这一问题,加利福尼亚大学洛杉矶分校的斯蒂芬·大卫·克罗克(Stephen David Crocker)在ARPANET 项目设计初期创建了一个名为NWG(Network Working Group)的网络工作研究小组。他们致力于通过编写一种中间层软件通信协议,使主机之间的通信得以实现,同时他也记录了阿帕网相关的开发文档,最终演变为用来记录互联网规范、协议、过程等的标准文件---请求意见稿(英语:R equest f or C omments,缩写:RFC)。

1970年12月,这个小组成功实现了阿帕网(ARPANET)第一版的通信协议,命名为网络控制协议 NCP(Network Control Protocol)。

1971年,BBN公司的雷.汤姆林森(Ray Tomlinson)对已有的传输程序 SNDMSG(Send Message) 进行修改,使用两台由数字设备公司制造的DEC-10计算机,通过阿帕网(ARPANET)进行了通信。为了区分用户与计算机名,他决定采用@符号进行分隔,@前面加用户名,后面加计算机名,于是我们所熟知的电子邮件 E-mail 诞生了,电子邮件从根本上改变了人们的交流方式,可以说算的上是互联网最长寿的产品了。

1972 年,罗伯特·卡恩在国际计算机通信大会(ICCC)上演示了阿帕网,这也是阿帕网(ARPANET)的首次公开亮相。经过几年的发展,阿帕网已经拥有了 40 个节点,其中E-mail、FTP 和 Telnet 成为当时最主要的网络应用。尤其是 E-mail,占据了整体流量的75%。与此同时,在阿帕网的成功推动下,计算机网络领域涌现出了一些其他的网络类型,比如:夏威夷的分组无线电网络(ALOHA NET),太空卫星的卫星网络(SAT NET)等等。于是,如何将阿帕网(ARPANET)与其它网络进行连接成为新的挑战。

随着 ARPANET 的发展和用户对网络需求的不断提升,人们开始发现 NCP 协议存在着很多缺陷,协议在设计时对网络中机器设备的标准化要求过高。

1. NCP 支持的主机数量有限
2. NCP 只能在相同计算机操作系统架构的环境中运行

对于一个分布广泛的网络而言,这些缺陷就必然成为发展路上最大障碍,针对 NCP 协议存在的问题,卡恩意识到只有深入理解各种操作系统细节,才能建立一种各种操作系统都兼容的协议。于是他提出了 "开放网络架构" 的思想,即各个网络可以单独进行设计与开发,网络接口可以向外提供,并且能够通过一种通用的连接方法进行互联。

1973年,来自斯坦福大学的文顿·瑟夫(Vinton G. Cerf)加入了 ARPA,他设想出了新的计算机网络交流协议,开始负责领导基于 NWG 改建的 INWG 工作小组。于是,卡恩邀请瑟夫一起研究新传输协议的各个细节,并在不久后共同提出了 TCP 传输协议(Transmission Control Protocol)。为了验证 TCP 协议的可用性,INWG 开始试验基于 TCP 协议的客户端 (Client) 软件将一个数据发送到距离 10 万公里外的服务端 (Server)软件。结果观察数据在传输过程中没有任何丢失,TCP 协议的可行性得到了验证。于是阿帕网(ARPANET)通过卫星通信的方式采用TCP协议实现了与夏威夷、英国伦敦大学和挪威皇家雷达机构的联网。ARPANET 从美国本地互联网络逐渐进化成为了一张国际性的互联网络。同年,施乐帕洛阿尔托研究中心的鲍勃·梅特卡夫 (Bob Metcalfe) 开发了以太网技术,它定义了三个网络类别(A、B 和 C)以适应网络范围。

A类代表大型全国性网络(网络数量少,主机数量多)
B类代表区域规模网络
C类代表局域网(主机数量相对较少的大量网络)

1975年,阿帕网(ARPANET)被转交到美国国防部通信处(Defense Department Communicationg Agence)。此后阿帕网不再是实验性和独一无二的了。大量新的网络在1970年代开始出现,包括计算机科学研究网络(CSNET,Computer Science Research Network),加拿大网络(CDNET,Canadian Network),因时网(BITNET,Because It's Time Network)和美国国家自然科学基金网络(NSFNET,National Science Foundation Network)。

1977 年,此时APRA 改建为 DARPA(美国国防部高级研究计划署),DARPA 与 BBN 公司、斯坦福大学和伦敦大学学院签订商业合同,正式开始在不同的硬件平台上开发 TCP 协议的验证版本:TCPv1 和 TCPv2。随后卡恩和瑟夫利用 TCPv2 完成了一个具有里程碑意义的实验,数据包从一辆载有无线传输器的箱式货车发出,进入阿帕网,然后通过专用卫星链路到达伦敦,再通过卫星传输网络,到达阿帕网, 最后传回南加州大学信息科学研究所,行程 9.4 万英里,没有丢失一个比特的数据信息。

1978 年,随着数据包传输到应用程序时出现损坏或重新排序的问题出现,单纯的由TCP协议进行纠正就显得相对复杂了,应用程序也能够基于数据进行处理了。于是文顿·瑟夫(Vinton G. Cerf)罗伯特·卡恩,Robert Elliot Kahn)丹尼·科恩(Danny Cohen)约翰·普斯特尔(Jon Postel)合力将 TCP 协议从分层思想的角度划分为 2 个协议

1. 传输层的 TCP 协议,用来检测网络传输中差错,涉及流量控制和丢失数据包恢复等服务功能,负责可靠传输。
2. 网络层的 IP 协议,负责在不同的网络之间进行互联,提供单个数据包的寻址和转发。

它们合称 TCP/IPv3,并在不久的将来演进为稳定版本 TCP/IPv4,传送控制协议/互联网协议(TCP/IP)这个现代网络的根基正式投入使用。对于那些不需要 TCP 服务的应用程序,也添加了一种称为用户数据报协议 (UDP,User Datagram Protocol) 的替代方案,以便提供对 IP 服务的直接访问。

1980 年,DARPA 开始研究如何将不同的网络类型连接起来,并启动了 互联网项目(Internetting project),研究成果被称为 Internet,因特网。这个项目让刚刚崭露头角的 TCP/IPv4 协议获得了施展空间。至此,基于 TCP/IP 协议标准的 Internet 诞生了,鲍伯·卡恩和文顿·瑟夫也因此被誉为 "互联网之父"。

1981 年,DARPA 资助 BBN 公司和加州大学伯克利分校,把 TCP/IP 协议实现到 UNIX 操作系统。值得一提的是,当时还在上研究生的天才程序员比尔·乔伊(Bill Joy)对 TCP/IP 协议深感兴趣,但却对 BBN 提供的代码深恶痛绝。于是他另起炉灶,只用了几天时间就在 BSD UNIX 发行版中实现了一个高性能的 TCP/IP 协议栈。当然那时的 TCP/IP 协议很很简单,但 BSD Socket 直到今天还在发挥着余热。

1982 年,阿帕网(ARPANET) 开始采用 TCP/IP 协议替代 NCP 协议,NCP 协议成为历史。

1983 年,TCP/IP开始成为通用协议。美国国防部开始将阿帕网(ARPANET)划分为两部分,一部分用于军事和国防部门的军事网(MILNET),一部分用于民间的阿帕网(ARPANET )版本。由于互联网规模的扩大,为了方便人们使用网络,计算机主机也被分配了名称,这样就不必去记住数字形式的IP地址。最初主机数量相当有限,因此维护所有主机名及其关联地址的单表是可行的。但随着大量独立管理的网络的加入,单个表维护已经不能满足需求,于是南加利福尼亚大学的 保罗·莫卡派乔斯(Paul Mockapetris)发明了域名系统 (DNS,D omain N ame S ystem),允许使用可扩展的分布式机制将主机名(例如 www.example.org)解析为 Internet 地址,称为域名,再将域名与IP地址进行相互映射,成为一个新的数据库。

1984 年, TCP/IP 协议得到美国国防部的认可,成为计算机领域共同遵守的一个主流标准。实际上,TCP/IP 协议的发展也并非一帆风顺,其中最大的竞争对手就是国际标准化组织(ISO)。ISO 在制定国际化标准上经验十足,很快就提出了 OSI 七层模型,并大力推广。面对挑战,那时文顿.瑟夫努力劝说让 IBM、DEC、HP 等主机大厂支持 TCP/IP 协议,但都遭到了拒绝。因为在他们看来 TCP/IP 只是一届研究项目,无力与在商业社会中获得过巨大成功的 ISO 抗衡。而美国国防部的应对策略则是将 TCP/IP 协议与 UNIX 系统、C 语言捆绑在一起,并由 AT&T 向美国各个大学发放非商业许可证。这样才迫使这些跟 UNIX 系统有紧密联系的企业转向 TCP/IP 的怀抱。这为 UNIX 系统、C 语言、TCP/IP 协议的发展拉开了序幕,它们分别在操作系统、编程语言、网络协议这 3 个关键领域影响至今。

1985 年,TCP/IP 协议栈已成为 UNIX 操作系统密不可分的组成部分。随着微型计算机的出现以及UNIX 的广泛传播也极大助力了 TCP/IP 的发展。最终将它放进了Sun公司的微系统工作站。后来,几乎所有的操作系统都开始支持 TCP/IP 协议,经典的 TCP/IP 五层模型已成气候。

1986年,美国国家科学基金会(NSF)为了促进学术研究,自己出资,基于 TCP/IP 协议,建立完全属于自己的 NSFNET,它的发展非常迅速,很快将全美各地的大学、政府和私人科研机构连接起来。同时,NSFNET的网络传输速度也很快,比当时民用的 ARPANET 要快 25 倍以上。渐渐地,NSFNET 开始取代 ARPANET,成为 Internet 的主干网。当 NSFNET 成为互联网中枢后,ARPANET 的重要性被大大减弱了。

1989年,世界上第一家商业互联网服务提供商 The World https://theworld.com 开始提供商业互联网接入服务,开启了互联网商业运营的篇章。在此之前,无论是阿帕网还是美国国家科学基金会网络,它们的目的都是非商业用途,主要用于军事与学术研究,商业性质的计算机是无法接入的,于是也就诞生出了互联网服务提供商ISP(Internet Service Provider)这个名词。

1990年 6 月 1 日,阿帕网(ARPANET)正式退出历史舞台。这位出生在冷战时期的网络先驱,将自身化为点点星光后隐匿于历史长河之中。

1990 年 9 月,由 Merit、IBM 和 MCI 公司联合建立了一个非营利的组织 ANS(Advanced Network&Science Inc.,先进网络科学公司)。ANS 的目的是建立一个全美范围的 T3 级主干网,能以 45Mbps 的速率传送数据。

1991 年底,NSFNET 主干网与 ANS T3 级主干网进行互联互通,并宣布开始对全社会进行商业运营,网络连接数量开始指数级增长。Internet 真正变成了全球互联网,开始走进人们的生活。

HTTP 协议与 Web 世界

时间回到 1989 年,这时的商业互联网已经兴起,当时在瑞士日内瓦核子研究中心 (CERN)工作的 蒂姆·伯纳斯·李(Tim Berners-Lee)想要借助商业互联网的风口,让更多的普通人参与到互联网中来,于是他提出了一种可以在 Internet 上构建超链接文档的技术,即 HTTP/Web 技术,并提出了 3 点基本要素:

1. URI(Uniform Resource Identifier,统一资源标识符):Internel 中的统一资源标识符,用于唯一标识一个 Internet 上的资源。
2. HTML(Hyper Text Markup Language,超文本标记语言):使用 HTML 标签来构建超文本文档,HTML 标签将文字,图形、动画、声音、表格、链接等内容格式进行了统一。
3. HTTP(Hyper Text Transfer Protocol,超文本传输协议):最初设计来用于传输 HTML 的协议,处于 TCP/IP 应用层,传输的数据主体称为 Message(消息),基于 TCP 传输协议。

他所定义的资源,指的是 Internet 上的一个实体,它可以是一段文本、一张图片、一首歌曲、一种服务等。URI 就是在 Internet 中标识一个资源的唯一编号,包含了 URL 和 URN 这 2 种形式,由于 URL 更具有空间层次设计,如今已经成为了主流。

URL(Uniform Resource Loader,统一资源定位符):侧重于 "定位",类似一个地址,XX省XX市XX区XX单元XX室。
URN(Uniform Resource Name,统一资源名称):侧重于 "命名",类似身份证号。

1990 年 12 月 25 日,蒂姆·伯纳斯·李和罗伯特·卡里奥(Robert Cailliau)一起实现了基于 HTTP 协议的 Web 服务,并通过 Internet 成功完成了 HTTP 客户端和 Web服务端的第一次通信。

1991 年 8 月 6 日,蒂姆·伯纳斯·李基于 HTTP 和 HTML 设计并开发了世界上第一个网页浏览器,当时这个浏览器只能显示文字,并发布了第一个 Web 网站,它运行在 CERN 的服务器上,旨在帮助研究人员共享信息和文献。基于 HTML,该网站可以提供一些链接,让用户通过单击超链接跳转到其他页面或文档,这种超链接的设计 Web 技术最重要的创新之一。同年,蒂姆·伯纳斯·李正式提出了万维网 WWW(World Wide Web)的概念,世界迎来了网页时代。他也成为了万维网之父。

1992 年,几个因特网组织合并成立统一的因特网协会 (ISOC),此时的因特网已经注册了超过 100 万台主机,并持续指数级疯狂增长,Internet,真正变成了全球互联网,开始走进人们的生活。

1993年,马克·安德森(Marc Andreessen)开发了Mosaic(马赛克)浏览器,相比于蒂姆·伯纳斯·李的浏览器加了图片显示的功能,后来他发现了其中蕴含的商业价值,成立了大名鼎鼎的网景公司,又由此改进出网景浏览器(Netscape Browser)。

1994 年 10 月 1 日,蒂姆·伯纳斯·李创建了非营利性的 W3C(World Wide Web Consortium,万维网联盟),邀集 Microsoft、 Netscape、 Sun、Apple、IBM 等共 155 家互联网上的著名公司。由蒂姆·伯纳斯·李担任 W3C 的主席,致力于 WWW 协议的标准化,并进一步推动 Web 技术的发展。

在当时的浏览器热潮下,蒂姆·伯纳斯·李曾经考虑过成立一家叫做 WebSoft 的公司做网页浏览器。但很快他就放弃了,他担心这么做会导致激烈的市场竞争,开发出技术上互不兼容的浏览器、最终把 WWW 割裂成一个个利益集团。

最初,由于那时候网络资源匮乏,HTTP/0.9 版本相对简单,采用纯文本格式,且设置为只读,所以当时整个 HTTP Request Message 只有一行,比如:GET [http://www.example.com]。只能使用 GET 的方式从 Web 服务器获得 HTML 文档,响应以后则关闭。响应中也只包含了文档本身,无响应头,无错误码,无状态码。

1995 年 10 月 24 日,联邦网络委员会(FNC) 一致通过了一项决议,定义了"互联网"一词。该定义是与互联网和知识产权界成员协商制定的。

(部分)原文如下:RESOLUTION: The Federal Networking Council (FNC) agrees that the following language reflects our definition of the term "Internet". "Internet" refers to the global information system that --

 (i) is logically linked together by a globally unique address space based on the Internet Protocol (IP) or its subsequent extensions/follow-ons;  
 (i) 通过基于互联网协议(IP)或其后续扩展/后续协议的全球唯一地址空间在逻辑上链接在一起;

 (ii) is able to support communications using the Transmission Control Protocol/Internet Protocol (TCP/IP) suite or its subsequent extensions/follow-ons, and/or other IP- compatible protocols; 
 (ii) 能够支持使用传输控制协议/互联网协议 (TCP/IP) 套件或其后续扩展/后续协议和/或其他 IP 兼容协议的通信;

(iii) provides, uses or makes accessible, either publicly or privately, high level services layered on the communications and related infrastructure described herein.  
(iii) 公开或私下提供、使用或提供基于本文所述的通信和相关基础设施的高级服务。

同年,由布莱恩·贝伦多夫(Brian Behlendorf)发布了基于 HTTP/0.9 的 Apache HTTP Server 开源项目。同年,网景和微软开启浏览器大战,但好在蒂姆·伯纳斯·李担心的 "撕裂" 并未发生,HTTP 协议已经逐成气候。随着 Apache HTTP Server 的诞生,以及同时期其他的多媒体等技术发展迅速,都进一步促使 HTTP 协议的演进。紧跟着 1996 年,HTTP/1.0 发布,更好的支持采用图文网页形式。

- 增加 HTTP Header 格式。
- 增加协议版本号。
- 增加 POST 方法。
- 增加 HEAD 方法。
- 增加文件处理类型。
- 增加响应状态码。
- 提供国际化支持。

经过几年的发展,1999 年,HTTP/1.1 发布并成为标准,写入 RFC。至此,HTTP 协议已然成为了 Web 世界的奠基石。

- 增加 PUT 等方法。
- 增加缓存处理机制:在 Header 增加了如:Entity tag,If-Unmodified-Since,If-Match,If-None-Match 等可供选择的 Request Body 来控制缓存策略。
- 增加带宽优化机制:在 Header 增加了 Range 字段,它允许只请求资源的某个部分,而不是一揽子返回,得以更充分地利用带宽和网络连接。
- 增加错误通知的管理:新增了 24 个错误状态响应码。
- 增加 Host 虚拟主机:支持 HTTP Server 虚拟主机技术。可以在一台物理服务器上存在多个虚拟主机(Multi-homed Web Servers),并且它们共享一个 IP 地址,通过不同 Hostname 区分。
- 增加长连接机制:默认使用长连接,应对日益复杂的网页(网页内的图片、脚本越来越多了)。

随着 HTTP/1.1 被纳入 RFC 标准,同在 1992 年,由 HTTP/1.0 和 1.1 的主要设计者 罗伊·托马斯·菲尔丁 (Roy Thomas Fielding) 宣布成立了 Apache 软件基金会,并作为 Apache 基金会的第一任主席,从此,Apache Web Server 和 HTTP 协议携手共生共荣。除了 HTTP 协议,Apache 软件基金会旨在促进各种开源软件项目的开发和使用,其中 Apache HTTP Server 作为首个核心项目。这为 Apache HTTP Server 的长期发展奠定了良好的基础,同时也缔造了繁荣的开源生态系统,孵化了包括:Tomcat、Hadoop、Lucene、OpenOffice 等开源项目。至今而至,Apache 软件基金会已成为了全球最大的开源组织之一。

1998 年,美国成立非营利性民间组织 ICANN(Internet Corporation for Assigned Names and Numbers,互联网名称与数字地址分配机构),它由商务部的国家电信和信息管理局监督,负责全球互联网域名系统、根服务器系统、IP 地址资源的协调、管理和分配。由 ICANN 的下属机构 IANA(Internet Assigned Numbers Authority,互联网号码分配机构)负责管理全球互联网域名的根服务器。

2014 年,ICANN决定将监管权移交给一个由多方利益相关者管理的独立机构。

2016 年 10 月 1 日,ICANN 表示,正式将互联网的控制权移交给一个非盈利的全球互联网多方利益相关者组织。这标志着美国结束对这一互联网核心资源近 20 年的单边垄断,对于每一个网民来说都是一大喜事。

结语

现如今,互联网如同一座无形的桥梁,将人类连接在了一起。它不仅是技术的进步,更是社会的演进。我们应当怀着感激之情,向那些开创者致敬,正是他们的智慧和勇气,让我们拥有了今日的便利与可能。然而,它的发展绝非孤立于时代洪流之外。它源于对军事通信的需求,蕴含着人类对于信息传递的渴望。正是在这样的历史背景下,互联网才得以蓬勃发展,成为了如今连接全球的巨大网络。在互联网的浪潮中,我们见证了信息的自由传播,思想的碰撞与交流。然而,也要警惕信息泛滥与隐私泄露等问题。唯有在共同努力下,我们才能在数字化的未来中创造出更美好的明天。

让我们怀揣着对过去的感恩,对未来的期许,书写属于我们这个时代的互联网诗篇。

相关推荐
njnu@liyong3 小时前
图解HTTP-HTTP报文
网络协议·计算机网络·http
GISer_Jing4 小时前
2025前端面试热门题目——计算机网络篇
前端·计算机网络·面试
ZachOn1y4 小时前
计算机网络:应用层 —— 应用层概述
计算机网络·http·https·应用层·dns
冰镇屎壳郎7 小时前
计算机网络 八股青春版
计算机网络
网络安全King8 小时前
计算机网络基础(2):网络安全/ 网络通信介质
计算机网络·安全·web安全
敲代码娶不了六花14 小时前
对计算机网络中“层”的理解
网络·网络协议·tcp/ip·计算机网络
njnu@liyong1 天前
图解HTTP-HTTP状态码
网络协议·计算机网络·http
斐夷所非1 天前
计算机网络基础图解
计算机网络
ZachOn1y2 天前
计算机网络:运输层 —— TCP 的选择确认(SACK)
网络·tcp/ip·计算机网络·可靠传输·sack·选择确认
kikyo哎哟喂2 天前
计算机网络基础--WebSocket
websocket·网络协议·计算机网络