目前,HTTP/3 协议的应用日益广泛。Cloudflare 已经开始支持 HTTP/3,同时,它也成为了 Chrome Canary 的一部分,并且不久后将加入 Firefox Nightly 的测试版本。 这项新标准有望显著提升网页浏览的速度和安全性。
HTTP/3 和 QUIC 的重要性
简而言之:Web 浏览器、Web 服务器及其他关键网络基础设施正在逐步支持一种名为 HTTP/3 的全新标准,该标准基于 QUIC 协议。 它是 HTTP 的一个更为现代的版本,主要用于 Web 浏览器与 Web 服务器之间的数据通信。
HTTP/3 经过了重构,旨在更快地传输数据并提升抗错误能力。 它还内置了加密功能,这意味着更高的速度和更强的安全性。 其优势不仅体现在数据传输速度上,HTTP/3 还能有效减少延迟,这意味着用户在点击链接后,网站能够更快地开始加载。
通常情况下,普通用户无需深入了解 HTTP/3 和 QUIC 的具体细节。 网站运营者和网络软件开发者需要做一些适配工作,但对于普通用户来说,整个过程是透明的。 未来,您的浏览器和所访问的网站将开始使用 HTTP/3 进行通信。 随着越来越多的网站选择采用 HTTP/3,互联网的使用体验将得到显著提升。
从 HTTP/1 到 HTTP/2 的演变
最初版本的 HTTP 协议采用传输控制协议 (TCP)。TCP 最早于 1974 年被提出,但其设计并未考虑到当今 Web 对速度和响应能力的需求。 为了解决 TCP 存在的诸多问题,谷歌推出了名为 SPDY 的新协议,该协议为后来的 HTTP/2 奠定了基础。
HTTP/2 于 2015 年底开始在主流浏览器中普及,它引入了数据压缩以及通过单一 TCP 连接并行处理多个请求等功能,从而显著提升了速度。
据 W3Techs 估计,截至 2019 年 9 月,约有 41% 的网站正在使用 HTTP/2。
HTTP/3 和 QUIC 的概念
HTTP/3 实际上是对 HTTP 协议的重写。HTTP/3 不再使用 TCP,而是采用了谷歌的 QUIC 协议。HTTP/3 最初被称为 HTTP-over-QUIC。此外,HTTP/3 还集成了 TLS 1.3 加密,因此不再需要像过去那样将安全性附加在协议之上的单独 HTTPS。
QUIC 最初的含义是“快速 UDP 互联网连接”。该协议的设计目标是比 TCP 更快、延迟更低。QUIC 在建立连接时减少了开销,并且能够更快地传输数据。 与 TCP 不同,QUIC 在数据传输过程中即使出现错误,也不会导致连接中断并等待问题解决。相反,QUIC 会继续传输其他数据,同时解决出现的问题。
实际上,QUIC 早在 2013 年就被添加到谷歌浏览器中。Chrome 在与谷歌服务和 Facebook 等一些网站进行通信时已经开始使用它,并且它还支持 Android 应用程序。 然而,QUIC 并非一个集成在其他 Web 浏览器中的标准。随着 HTTP/3 的推出,这项技术也以标准化的方式进入了其他浏览器。
总而言之,HTTP/3 是一种更新、更优、更快的协议。它是一个更现代的解决方案,有望为互联网提供更高的安全性和速度。
HTTP/3 在浏览器中的应用
HTTP/3 于 2019 年 9 月被添加到 Google Chrome 的前沿 金丝雀版中,可以通过 命令行标志来启用。使用命令行参数 –enable-quic –quic-version=h3-23 启动 Chrome Canary 即可启用 HTTP/3。
Mozilla 也宣布正在努力将 HTTP/3 添加到 Firefox Nightly 的实验版本中,预计在今年秋季推出。 基于 Chromium 的新版 Microsoft Edge 将会继承 Google 在 Chrome 中所做的 HTTP/3 工作,其他基于 Chromium 的浏览器(如 Opera)也将如此。 预计 Apple 也将在未来的某个时间点在其 Safari 浏览器中支持 HTTP/3。
Cloudflare 甚至 宣布,它正在简化在其内容交付网络上使用 HTTP/3 的站点。Cloudflare 的客户将能够通过简单的开关操作来为其网站启用 “HTTP/3(使用 QUIC)”。 一旦浏览器稳定地支持 HTTP/3 并为所有用户启用,这将有助于推动 HTTP/3 的普及,并使网站更容易采用这一新技术。
HTTP/3 也将应用于其他软件,例如,Nginx Web 服务器正在努力在 Nginx 1.17 版本中实现 HTTP/3 的支持。
我们目前正处于实施的早期阶段。Cloudflare 表示,它将“继续与包括 Google 和 Mozilla 在内的其他组织合作,以最终确定 QUIC 和 HTTP/3 标准并鼓励广泛采用”。换句话说,不仅软件尚未最终确定,标准本身也可能发生一些变化。 在现代浏览器默认启用并自动使用之前,还有很多工作要做。
更多技术细节
想了解更多信息? 请查阅 Cloudflare 关于 HTTP/3 的深入分析或深入研究 HTTP/3 标准草案,了解真正的技术规范。