HTTP协议发展背景(三)

251 阅读4分钟

image.png

蒂姆·伯纳斯·李(Tim Berners-Lee),是万维网的创始人,简单点说,是当代互联网的创始人。

image.png

在 1989 年,他发表了一篇论文,关于信息管理的提案,他希望呢能够内部建立一个这样的网络,用于满足内部信息交换的需求,在当时并没有被重视,好在当时tim经理给他一段时间让他去完善,蒂姆也好在并没有因此而放弃,后来蒂姆就称为万维网之父。在1990年时候蒂姆完成三大互联网基础设计。包括我们的命名方案URI,通讯协议HTTP,用来表达表示信息的语言Html

这篇论文里他确立了三项关键技术:

  • URI:统一资源标识符,作为互联网上资源的唯一标识
  • HTML:超文本标记语言,描述超文本文档
  • HTTP:超文本传输协议,用来传输超文本

这三项技术直接奠定了我们当今 Web 世界的技术,蒂姆把它称为万维网(World Wide Web)。

1990年底第一个网页就可以在互联网上,这个时候还没有所谓的版本。

1991年蒂姆根据之前的一些相关实现写了一片关于http 协议的文章,这篇文章我们后来就被当做Http的0.9版本

这篇文章很难称得上一个标准的协议,并非出自某个标准化组织只是蒂姆个人做品。用来解释他在程序中实现的通信过程,由于他的突出贡献,把他的这版当做http的第一版标准。

0.9版本大体意思:首先这篇文章很简短只有四小结,和后面在有的HTTP文章来说没有办法相提并论。它规定了HTTP使用TCP/IP进行连接,当时只有一个请求方法叫做GET,加上请求的一个URI,HTTP响应直接返回HTML文本。不像现在还有状态码,由于直接返回文本没有办法区分错误消息,和正确消息这是最早的0.9版本。

在这之后万维网经历了一阵快速发展,也比较混乱的时期。由于蒂姆最初版本的http和html并不是太完善,没有办法满足各种业务场景。很多公司在这种情况上做了个种业务扩展,但是这种扩展就是彼此并不能够进行兼容。

1994蒂姆离开了sen公司,成立了一个w3c组织致力于HTML标准化工作,同年有另外一个机构叫做IEFT 他成立了HTTP工作组,研究改进当时HTTP协议。这个HTTP工作组考察了当时世面上对应HTTP协议的各种实现,综合了一些常见的用法。

在1996年5月份的时候产生了一个标准化文档RFC1945这就是我们现在说的HTTP1.0。

HTTP1.0在HTTP0.9的基础上做了大量的改进增加了请求和响应。增加了POST方法,响应对象也不在局限于必须是HTML文本,也支持一些长链接,增加了缓存机制等等。

1997年1月份RFC2068HTTP1.1正式发布

1999年6月RFC2616取代了RFC2068我们可以看出从96年到99年HTTP协议发展速度是特别快的 ,当然在RFC2616发布以后HTTP也进入相对稳定的地步,HTTP1.1也是我们现在使用最多的协议。

到了2015年5月的时候RFC7540也就是我们目前叫做HTTP2.0发布 在2014年10月份的时候 w3c HTML工作组发布了HTML5的正式标准完成了长达8年的html5的标准化工作。

HTTP和HTML这俩大万维网基础技术在经过了从96年到15年10年的一个成绩之后,完成了最大的一次更新,因为这次更新大所以这个版本号并没有和之前版本一样使用1.x这种方式而是直接使用2这样的大版本。

HTTP2他的主要目标最主要就是提高了我们的传输性能实现低延迟,和高吞吐量。

HTTP2其实并没有改动旧的Http版本的语义、方法、状态码、url、头部信息等等。所以我们通常认为HTTP2是HTTP1的扩展。而并不是替代。但是由于种种原因,在http2发布不就主流的浏览器客户端都进行了支持,但是在我们业界的普及率始终不高。根据统计到现在来说使用http2的网站不到30%,但是使用HTML5的网站达到了90%。