前端必备HTTP技能HTTP我爱编程

HTTP变化介绍

2018-03-13  本文已影响32人  天未的博客

本文是对 HTTP 变化的介绍,是对以下资料的摘录:

HTTP 概览

HTTP 是 Hypertext Transfer Protocol 的简称,中文是超文本传输协议。它是一个应用层协议,可以支持分布式的、协作的、具有富文本信息的系统。(定义来自维基百科

HTTP 的发展过程如下所示:

RFC 7230, HTTP/1.1: Message Syntax and Routing(消息语法和路由)
RFC 7231, HTTP/1.1: Semantics and Content(语义和内容)
RFC 7232, HTTP/1.1: Conditional Requests(条件请求)
RFC 7233, HTTP/1.1: Range Requests(范围请求)
RFC 7234, HTTP/1.1: Caching(缓存)
RFC 7235, HTTP/1.1: Authentication(认证)

HTTP版本变化

HTTP 基本优化

影响 HTTP 响应速度的因素主要有:带宽延迟。由于带宽是外在环境,并且这些年带宽速度得到了极大提升,所以不再详细介绍。 而影响延迟的因素又包括:

浏览器 HTTP/1.1 HTTP/1.0
IE 6,7 2 4
IE 8 6 6
Firefox 2 2 8
Firefox 3 6 6
Safari 3,4 4 4
Chrome 1,2 6
Chrome 3 4 4
Chrome 4+ 6
iPhone 2 4
iPhone 3 6
iPhone 4 4
Opera 9.63,10.00alpha 4 4
Opera 10.51+ 8

HTTP 1.1

HTTP 1.1 在1999年才开始广泛应用于现在的各大浏览器网络请求中,同时 HTTP 1.1 也是当前使用最为广泛的 HTTP 协议。HTTP 1.0 的新特性有:

HTTP 1.0 和 1.1 的一些问题

HTTPS

为了解决传输的安全问题,Netscape 在1994年创建了 HTTPS ,并应用在浏览器中。最初,HTTPS 是与 SSL 一起使用的,后来 SSL 逐渐演变到 TLS (本质上两个是一个东西)。最新的 HTTPS 在2000年5月公布的RFC 2818正式确定下来。

简单来说,HTTPS 就是安全版的 HTTP,并且由于当今时代对安全性要求更高,Chrome 和 Firefox 都大力支持网站使用 HTTPS,苹果也在 IOS 10系统中强制 App 使用 HTTPS 来传输数据,由此可见 HTTPS 势在必行。

HTTPS 与 HTTP 的一些区别

HTTPS 由于增加了 SSL 的握手过程,会有一定的性能损失。此外,由于有较多的秘钥算法计算,需要关注服务端的 CPU 压力。推荐一个PPT《淘宝HTTPS探索》

SPDY

2012年 Google 提出了 SPDY 的方案,大家才开始从正面看待和解决老版本 HTTP 协议本身的问题,SPDY 综合了 HTTPS 和 HTTP 两者的优点于一体,主要特点如下所示:

SPDY 构成图如下所示:


SPDY构成

HTTP 2.0

HTTP 2.0 可以说是 SPDY 的升级版(其实原本也是基于 SPDY 设计的)。但 HTTP2.0 跟 SPDY 仍有不同的地方,主要是:

HTTP 2.0 与 HTTP 1.0 的速度对比如下(演示网站):

速度对比

HTTP 2.0 的一些新的特性包括:

Http1.1和Http2的对比

更多关于 HTTP 2.0 资料如下:

上一篇 下一篇

猜你喜欢

热点阅读