一文领略 HTTP 的前世今生(上)

简介: 一文领略 HTTP 的前世今生(上)

每个时代,都不会亏待会学习的人。

大家好,我是 yes。

HTTP 协议在当今的互联网可谓是随处可见,一直默默的在背后支持着网络世界的运行,对于我们程序员来说 HTTP 更是熟悉不过。

平日里我们都说架构是演进的,需求推动着技术的迭代、更新和进步,对于 HTTP 协议来说也是如此。


不知你是否有想过 HTTP 协议是如何诞生的,一开始是怎样的,又是怎么一步一步发展到今天的 HTTP/3 ?


其中经历了哪些不为人知的秘密?


今天我就想和大家一起来看一看 HTTP 的演进之路,来看看它是如何从一个小宝宝成长为现在统治互联网的存在。


不过在此之前,我们先简单的看看互联网的始祖-阿帕网的一段小历史,还是很有趣的。


互联网的始祖-阿帕网


在 1950 年代,通信研究者们认识到不同计算机用户和网络之间的需要通信,这促使了分布式网络、排队论和封包交互的研究。


在1958 年2月7日,美国国防部长尼尔 · 麦克尔罗伊发布了国防部 5105.15 号指令,建立了高级研究计划局(ARPA) 。


image.png


ARPA 的核心机构之一 IPTO(信息处理处)赞助的一项研究导致了阿帕网的开发。

我们来看看这段历史。


在 1962 年,ARPA 的主任聘请约瑟夫·利克莱德担任 IPTO 的第一任主任,他是最早预见到现代交互计算及其在各种应用的人之一。


IPTO 资助了先进的计算机和网络技术的研究,并委托十三个研究小组对人机交互和分布式系统相关技术进行研究。每个小组获得的预算是正常研究补助金的三十至四十倍。

这就是财大气粗啊,研究人员肯定是干劲十足!


在 1963 年利克莱德资助了一个名为 MAC 的研究项目,该项目旨在探索在分时计算机上建立社区的可能性


这个项目对 IPTO 和更广泛的研究界产生了持久的影响,成为广泛联网的原型。

并且利克莱德的全球网络愿景极大地影响了他在 IPTO 的继任者们。


1964 年利克莱德跳槽到了 IBM,第二任主任萨瑟兰上线,他创建了革命性的 Sketchpad 程序,用于存储计算机显示器的内存,在 1965 年他与麻省理工学院的劳伦斯 · 罗伯茨签订了 IPTO 合同,以进一步发展计算机网络技术。


随后,罗伯茨和托马斯 · 梅里尔在麻省理工学院的 TX-2 计算机和加利福尼亚的 Q-32 计算机之间,通过拨号电话连接实现了第一个数据包交换


1966 年第三任主任鲍勃 · 泰勒上任,他深受利克莱德的影响,巧的是泰勒和利克莱德一样也是个心理声学家。


image.png

在泰勒的 IPTO 办公室里有三个不同的终端连接到三个不同的研究站点,他意识到这种架构将严重限制他扩展访问多个站点的能力。


于是他想着把一个终端连接到一个可以访问多个站点的网络上,并且从他在五角大楼的职位来说,他有这个能力去实现这个愿景。


美国国防部高级研究计划局局长查理 · 赫茨菲尔德向泰勒承诺,如果 IPTO 能够组织起来,他将提供 100 万美元用于建立一个分布式通信网络。


泰勒一听舒服了,然后他对罗伯茨的工作印象很深刻,邀请他加入并领导这项工作,然后罗伯茨却不乐意。


泰勒不高兴了,于是要求赫茨菲尔德让林肯实验室的主任向罗伯茨施压,要求他重新考虑,这最终促使罗伯茨缓和了态度,于1966年12月加入 IPTO 担任首席科学家。


image.png


在 1968 年6月3日,罗伯茨向泰勒描述了建立阿帕网的计划,18 天后,也就是 6 月 21 日,泰勒批准了这个计划,14 个月后阿帕网建立


当阿帕网顺利发展时,泰勒于 1969 年9月将 IPTO 的管理权移交给罗伯茨。


随后罗伯茨离开 ARPA 成为 Telenet 的 CEO ,而利克莱德再次回到 IPTO 担任董事,以完成该组织的生命周期。


至此,这段历史暂告一段落,可以看到阿帕网之父罗伯茨还是被施压的才接受这项任务,最终创建了阿帕网,互联网的始祖


也多亏了利克莱德的远见和砸钱促进了技术的发展,ARPA 不仅成为网络诞生地,同样也是电脑图形、平行过程、计算机模拟飞行等重要成果的诞生地。


历史就是这么的巧合和有趣。


互联网的历史


在 1973 年 ARPA 网扩展成互联网,第一批接入的有英国和挪威计算机,逐渐地成为网络连接的骨干。


1974 年 ARPA 的罗伯特·卡恩和斯坦福的文顿·瑟夫提出TCP/IP 协议。


1986 年,美国国家科学基金会(National Science Foundation,NSF)建立了大学之间互联的骨干网络 NSFNET ,这是互联网历史上重要的一步,NSFNET 成为新的骨干,1990 年 ARPANET 退役。


在 1990 年 ,蒂姆·伯纳斯-李(下文我就称李老) 创建了运行万维网所需的所有工具:超文本传输协议(HTTP)、超文本标记语言(HTML)、第一个网页浏览器、第一个网页服务器和第一个网站。


image.png


至此,互联网开启了快速发展之路,HTTP 也开始了它的伟大征途。


还有很多有趣的历史,比如第一次浏览器大战等等,之后有机会再谈,今天我们的主角是 HTTP。


接下来我们就看看 HTTP 各大版本的演进,来看看它是如何成长到今天这个样子的。





相关文章
|
1月前
|
缓存 算法 网络协议
(建议精读)HTTP灵魂之问,巩固你的 HTTP 知识体系
(建议精读)HTTP灵魂之问,巩固你的 HTTP 知识体系
131 0
|
4月前
|
安全 前端开发 搜索推荐
前端知识笔记(六)———HTTP和HTTPS有什么区别?
前端知识笔记(六)———HTTP和HTTPS有什么区别?
63 0
|
网络协议 前端开发 算法
http发展史
http发展史
|
SQL 域名解析 编解码
技术分享|Dnslog与Http外带
技术分享|Dnslog与Http外带
1193 0
|
缓存 JSON 网络协议
【青训营】-💗HTTP实用指南
【青训营】-💗HTTP实用指南
244 2
【青训营】-💗HTTP实用指南
|
前端开发 安全 网络协议
前端面试题目总结(Http)
前端面试题目总结(Http)
88 0
前端面试题目总结(Http)
|
存储 Web App开发 负载均衡
HTTP学习笔记(二) 相识篇
HTTP学习笔记(二) 相识篇
HTTP学习笔记(二) 相识篇
|
Web App开发 存储 编解码
一文领略 HTTP 的前世今生(下)
一文领略 HTTP 的前世今生(下)
一文领略 HTTP 的前世今生(下)
|
域名解析 缓存 安全
一文领略 HTTP 的前世今生(中)
一文领略 HTTP 的前世今生(中)
一文领略 HTTP 的前世今生(中)