HTTP/2相关内容的翻译和整理

HTTP/2

HTTP/2 (originally named HTTP/2.0) is a major revision of the HTTP network protocol used by the World Wide Web. It was developed from the earlier experimental SPDY protocol, originally developed by Google.

HTTP/2是新一代的HTTP协议,是用于万维网(WWW)的HTTP协议的的第二个主要版本,它是基于Google的SPDY协议开发而来的。

目标

工作组成员在HTTP/2种所致力于解决的问题和实现的目标有:

  • 实现一个兼容的运行系统使得客户端和服务端可以使用各个版本的HTTP协议(1.1,2.0)甚至其它非HTTP协议。
  • 维持对HTTP1.1的高度兼容性。
  • 在以下几个方面降低延迟以提高浏览器页面加载速度:
    • 压缩HTTP头部。
    • HTTP/2服务器推送(HTTP/2 Server Push)。
    • 管线化请求(Pipelining of requests)。
    • 修复HTTP1.x中的线头阻塞(head-of-line blocking)问题。
    • 在单个TCP连接中多路复用多个请求。
  • 支持现存常见HTTP用例。

HTTP/2资料与文档

在GitBook上发现了一篇详细讲解HTTP/2的文档,作者同时也是HTTP/2的IETF的一员。 这是另一篇更详尽的文档

补充

在加密方面Wiki上是这样说的

HTTP/2 is defined for both HTTP URIs (i.e. without encryption) and for HTTPS URIs (over TLS, where TLS 1.2 or newer is required).

Although the standard itself does not require usage of encryption, most client implementations (Firefox, Chrome, Safari, Opera, IE, Edge) have stated that they will only support HTTP/2 over TLS, which makes encryption de facto mandatory.

结合上面提到的文档中的描述大致可以总结为HTTP/2是打算支持无加密的HTTP URLs的,但IETF内部也有争议,同时各大浏览器表示将会只支持HTTP/2 over TLS。

Tags:

Updated: