F5 术语

HTTP/2

什么是 HTTP/2?

HTTP/2 是超文本传输协议 (HTTP) 的版本之一,用于在客户端(例如,Web 浏览器)和 Web 服务器之间传输 HTML 等内容。 最初,HTTP 版本演变如下: 1991 年发布 HTTP/0.9,1996 年 5 月发布 HTTP/1.0,1997 年 1 月发布 HTTP/1.1,最终于 2015 年 5 月发布 HTTP/2,以解决包括图像和视频在内的网络内容日益多样化的问题。

第一个 HTTP 版本 HTTP/0.9 功能极少——它仅支持 GET 请求,没有响应规范。 HTTP/1.0 通过引入响应标头和附加方法(如 POST、PUT 和 DELETE)改进了功能。 HTTP/1.1 通过支持虚拟主机、“KeepAlive”来维持持久连接以及流水线来允许多个请求而无需等待响应,进一步增强了性能。 这些进步优化了 TCP 资源使用并缩短了响应时间。

2009年,谷歌推出了快速通信协议SPDY,后来成为HTTP/2的基础,其规范由互联网工程任务组(IETF)标准化。 HTTP/2 保留了对早期 HTTP 版本的向后兼容性,同时显著提高了会话层的通信效率。

HTTP/2 的主要功能包括:

  • 允许通过单个 TCP 连接进行多个请求和响应。
  • 服务器端响应推送,无需等待客户端请求。
  • 二进制编码和报头压缩,以减少数据大小并提高传输效率。

与 SPDY 不同,HTTP/2 不需要使用 TLS(HTTPS),尽管到 2015 年底,大多数支持 HTTP/2 的浏览器默认都需要 HTTPS。

HTTP/2 现已得到许多主流网络浏览器的支持,并正在迅速取代 SPDY。 例如,谷歌于 2016 年 2 月 11 日宣布,Chrome 将于 2016 年 5 月 15 日停止对 SPDY 的支持。 虽然 SPDY 已被几个主要平台和网站广泛采用,但 HTTP/2 有望成为未来的标准协议。