问题标签 [http3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
http - 我们如何向我们的 Web 应用程序添加/实现 HTTP/3 协议?
实际上,我们正在处理从 HTTP/1.1 到 HTTP/2 的协议升级。但是听说 HTTP/3 发布了。那么我们如何向我们的 Web 应用程序添加/实现 HTTP/3 协议呢?
http - QUIC 多路复用与 HTTP/2 的多路复用有何不同
QUIC 和 HTTP/3 多路复用(通过 UDP)与 HTTP/2(通过 TCP)带来的多路复用有何不同?
http - WebSocket 是否与 HTTP/3 兼容
即将到来的 HTTP/3 标准不再基于 TCP,而是基于 QUIC 协议。WebSocket 基于 TCP 并作为 HTTP 更新启动。
WebSocket 连接是否基于 QUIC 而不是 TCP 作为 HTTP/3 更新启动?还是无法将 HTTP/3 连接更新为 WebSocket 连接?
quic - HTTP/3 及其影响
最近 Chrome、Firefox、cURL 等宣布支持 HTTP/3(之前称为 HTTP-over-QUIC)。
您如何从以下变化的角度看待其适应影响:
应用程序(基于网络的、移动的、基于纯套接字的等)
托管基础设施(网络/应用服务器、防火墙、负载平衡器、CDN、路由器、交换机等)和 ISP 等。
安全性(新威胁、漏洞、VAPT 工具的前景等)
拥塞控制
nginx - nginx支持quic吗?
nginx 支持 quic 吗?如果是,如何启用它?我尝试了一些在网上找到的解决方案,但这对https://trac.nginx.org/nginx/ticket/1057没有帮助。
http - QUIC 连接迁移实际上是如何工作的?
我知道 QUIC 对每个连接都有一个唯一的 ID,它允许参与者更改他们的 IP 地址(例如,从 WIFI 移动到移动网络时)但仍然相互发送数据包,仍然可以分配给正确的连接。
但是接收者如何知道对方的新 IP 地址来发送数据包呢?
我已经阅读了规范,但我真的不明白它是如何工作的
http - Nginx http3 关闭与大 html 页面的连接
我在使用 curl 测试使用 HTTP/3 的 Quiche 实现修补的 nginx 服务器时遇到问题:当我尝试为一个小 html 页面(~1kb)发送多个连续请求时,nginx 正确响应
如果我尝试对中/大 html 文件发出单个请求,nginx 会再次正确响应,但是当我尝试对中/大 html 页面(> = 30kb)发出多个连续请求时,nginx 在任意数字后停止响应请求数(通常为 2-5 个请求)。这是一个由对https://cloudflare-quic.com html 页面(我在我的服务器上下载)的 10 个请求组成的示例:
它卡在这个屏幕上,重复“Got h3 for stream 0, expects 4”。我还注意到,在较小的页面上进行测试时,最小的文件越大是在停止响应并开始打印错误“Got h3 for stream x, expecting y”之前完成的请求数,其中 y=x +4。access.log 和 error.log 也是干净的,这意味着它可能是服务器配置中缺少的一些参数之王,但我不确定。有谁知道问题可能是什么?
我的配置
nginx版本:
nginx.conf:
卷发版
编辑
我们在 Cloudflare quiche repo 上讨论了这个问题,我们发现它是已知的 curl 问题:GitHub 问题
php - 版本 7.4.2 中的 PHP cURL 扩展是否支持带有 HTTP/3 的 cURL
我可以使用 HTTP/3 而不是 HTTP/2、HTTP/1.1 或 HTTP/1.0 来 curl 支持 HTTP/3 的网站吗?这可能吗?如果是这样,该怎么做?
apache - 有没有办法在 Apache HTTP Server 中实现 HTTP/3 (QUIC)?
有什么方法可以在 Apache 中实现 HTTP/3?
编辑:
QUIC 协议现已成为 RFC,请参阅RFC 9000。等待 HTTP/3...
OpenSSL 在某处表示,他们将在发布 OpenSSL 3.0 后开始研究 QUIC。不确定 OpenSSL 3.0 何时发布。
在那之前,也许我们可以将 BoringSSL 集成到 Apache 中,并开始使用 QUIC 进行测试。
go - 如果浏览器不支持 quic,http3/quic 是否会退回到 tls 1.2?
即使经过大量的谷歌搜索,我对 quic 还是很天真。我正在专门研究 lucasclemente/go-quic。
quic 服务器应该使用 443 吗?如果是这样,它会回退到 http2 和 tls 1.2 吗?我说的一般。不适用于那个特定的 go 包。但是,如果您有该 go 软件包的详细信息,那就太好了。
是的,我意识到 quic 还很年轻,还没有必要。我只是好奇,找不到那个具体的答案。谢谢!