架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2351|回复: 3

基于 QUIC 协议 HTTP/3 正式发布

[复制链接]
发表于 2022-6-12 14:07:25 | 显示全部楼层 |阅读模式
经过了多年的努力,在 2022 年 6 月 6 号,IETF (互联网工程任务小组) 正式发布了 HTTP/3 的 RFC, 这是超文本传输协议(HTTP)的第三个主要版本,完整的 RFC 超过了 20000 字,非常详细的解释了 HTTP/3。

微信截图_20220612135806.jpg

同时,互联网工程任务组 (IETF)也对 HTTP/1.1、HTTP/2 协议进行了更新,参考如下:

HTTP/3 - RFC 9114 协议:https://www.rfc-editor.org/rfc/rfc9114.html
HTTP/2 - RFC 9113 协议:https://www.rfc-editor.org/rfc/rfc9113.html
HTTP/1.1 - RFC 9112 协议:https://www.rfc-editor.org/rfc/rfc9112.html

QUIC

QUIC(Quick UDP Internet Connection)是谷歌制定的一种基于UDP的低时延的互联网传输层协议。在2016年11月国际互联网工程任务组(IETF)召开了第一次QUIC工作组会议,受到了业界的广泛关注。这也意味着QUIC开始了它的标准化过程,成为新一代传输层协议。

HTTP/3

HTTP/3是用于在万维网上交换信息的超文本传输​​协议的第三个主要版本,与HTTP/1.1和HTTP/2并列。HTTP/3 总是在QUIC(不是TCP /IP 的 TCP,QUIC 替代它)上运行,它已完成(并且是 HTTP/3 的核心)。

HTTP/3的实现方式有很多,例如:Cloudflare的quiche 、Caddy的实验分支、Nginx官方的QUIC分支。
c13b3c2513e7b9edc98c28f5232ccb88.gif

由于Openssl官方尚未支持QUIC协议,给出的理由是他们仍然忙于开发Openssl-3.0 并且 QUIC 更新太快,所以我们需要使用Google开发的一个分支Boringssl

BoringSSL 是谷歌创建的 OpenSSL 分支,但使用 BoringSSL 的代码不能保证 API 或 ABI 的稳定性,所以谷歌会继续向 OpenSSL 递交 bug 修正,继续资助 Core Infrastructure Initiative 和 OpenBSD 基金会。

背景:谷歌使用了超过 70 个 OpenSSL 补丁,部分被接受合并到了 OpenSSL 主库,但大部分没有。随着 Android、Chrome 和其它项目开始需要这些补丁的子集,事情日益变得复杂,要保证所有补丁在不同代码库正常工作需要太多精力。所以他们决定创建 OpenSSL 分支。

nginx 官网 quic 分支站点:https://hg.nginx.org/nginx-quic/
nginx-quic 的演示站点:https://quic.nginx.org/


微信截图_20220612140315.jpg

HTTP/3 有多快?

美国纽约:以下是从纽约数据中心请求三个不同站点时 HTTP/2 与 HTTP/3 的响应时间:

微信截图_20220612141200.png

HTTP/3 在:

小型站点快了 200 毫秒
内容站点快了 325 毫秒
单页面应用快了 300 毫秒

明尼苏达州距离纽约 1000 英里(约等于 160 公里);这长度对于网络连接来说不算什么。然而重要的是,即使在相对较短的距离内,HTTP/3 也能够将性能提高这么多。


测试支持 QUIC-HTTP/3

目前,有两个网站可以用来测试我们的网站是否支持QUIC-HTTP/3,如下:

https://geekflare.com/tools/http3-test
https://http3check.net/


微信截图_20220612140632.png

(完)






上一篇:附件批量上传(COS JavaScript SDK)
下一篇:【转】Excel 查看 VBA 代码快捷键
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-6-12 14:08:31 | 显示全部楼层
【实战】Nginx 添加启用 HTTP/2 协议
https://www.itsvse.com/thread-10307-1-1.html
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-7-5 22:33:20 | 显示全部楼层
QQ截图20220705223240.jpg QQ截图20220705223248.jpg QQ截图20220705223509.jpg QQ截图20220705223440.jpg QQ截图20220705223753.jpg QQ截图20220705223837.jpg
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2023-11-29 20:20:35 | 显示全部楼层
Nginx官方已经支持HTTP/3,可以直接下载使用。https://hg.nginx.org/nginx-quic/
Cloudflare公司的Quiche项目,Quiche 是一个基于 Rust 语言编写的 HTTP/3 实现,Cloudflare 将其集成到了 Nginx 中。https://github.com/cloudflare/quiche/tree/master/nginx
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-6-2 04:14

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表