HTTP/2

HTTP/2

HTTP/2 定义

HTTP/2(超文本传输协议第2版,最初命名为HTTP 2.0),简称为h2(基于TLS/1.2或以上版本的加密连接)或h2c(非加密连接),是HTTP协议的的第二个主要版本,使用于万维网。

与HTTP/1.1相比主要区别

  • 二进制分帧:HTTP/2在应用层和传输层之间增加了一个二进制分帧层,在二进制分帧层中,HTTP/2会将所有传输的信息分割为更小的消息和(frame),并对它们采用二进制格式的编码。
  • 多路复用(Multiplexing):在HTTP/1.1中协议中,浏览器客户端在同一时间,针对同一域名下的请求有一定数量限制。超过限制数目的请求会被阻塞。HTTP/2是完全多路复用的,而非有序并阻塞的——只需一个连接即可实现并行。
  • 首部压缩(Header Compression):HTTP/1.1并不支持首部压缩,HTTP/2使用了专门为首部压缩而设计的Hpack算法。
  • 服务端推送(Server Push):服务端推送是一种在客户端请求之前发送数据的机制。在HTTP/2中,服务器可以将响应主动“推送”到客户端缓存中。