问题标签 [quic]

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.

0 投票
1 回答
329 浏览

google-chrome - 如何从 Chrome 访问 github.com/lucas-clemente/quic-go 服务器?

当我使用命令运行 quic-go-0.18.1(https://github.com/lucas-clemente/quic-go)时: go run main.go -bind=127.0.0.1:443 -qlog -tcp in dir /例子。

  1. 我使用客户端访问https://127.0.0.1/demo/tile,我可以得到响应:(Proto:“HTTP/3”),
  2. 当我使用 chrome 和 chrome beta 访问https://127.0.0.1/demo/tile时,我发现 chrome 只使用 http/1.1 访问我的服务器。

我的问题是:如何使用 chrome通过 HTTP/3访问https://127.0.0.1/demo/tile ?

我的环境:Ubuntu 20.04 LTS

Chrome 开启 enable-quic。

GO版本:15

0 投票
0 回答
52 浏览

quic - 为什么 QUIC 没有标准的 API?

TCP 有一个称为“TCP 套接字”的标准 API,在我们的环境中,我们不需要担心哪个库实现了 TCP。

然而,HTTP/3 解释说 QUIC 没有标准的 API。因此,任何基于 QUIC 的程序都依赖于实现 QUIC 的库。将这些程序移植到其他环境也可能是一项艰巨的工作。

为什么QUIC工作组做出这个决定?

0 投票
1 回答
444 浏览

security - QUIC 协议是否以明文形式发送 ClientHello?

总的来说,我第一次听到它时,我很高兴 Clienthello Tls 消息将在 QUIC 协议内部完全加密,因为这是隐私方面的一大飞跃。说不用ESNI,但是昨天在Chronium项目上看到这篇文章(标题:Parsing QUIC Client Hellos),写的是解析ClientHellos,或者是我理解错了,或者说是已经在服务端解密ClientHellos,不是中间的人。有一个关于加密标准的参考草案,但据我所知,它仍然取决于 DNS。你能纠正我吗?谢谢。

0 投票
1 回答
852 浏览

javascript - 调试 http3 设置

我正在尝试为 http3 设置一个测试环境,只是为了学习。

到目前为止我做了什么:

  • 使用 dns-01 创建了一个真正的让我们加密证书
  • 使用实验性 CUIC 标志编译 node.js
  • 支持 http3 的编译 curl

我创建了一个包含示例内容的脚本:

只是为了未来的读者,这些功能getTLSKeySomehow()可以getTLSCertSomehow()替换为:

network.http.http3.enabled然后我尝试通过在 Firefox 中启用http3 并在about:config. 有了地址https://my.dev.domain.name:1234/,但这不起作用。

使用 curl 不起作用,可能值得注意的是我在 Windows 10 上使用 WSL。每次在 curl 上访问相同的 url 都会超时。只是为了检查我的设置是否正常:我可以验证 Firefox 和 curl 可以通过 http3 完美访问www.google.com 。

当我使用相同的密钥实现第二个 http2 端点时,它可以正常工作,没有任何证书警告。

如何调试我做错了什么?

0 投票
1 回答
95 浏览

ssl - 是否有任何 Web 服务器支持 RFC8879 TLS 证书压缩?

我正在尝试验证 RFC8879 的实现。是否有任何实现了这个 RFC 的网络服务器或 TLS 库?我做了一些研究,结果表明流行的 webservers/tls 库还没有实现这个 RFC。

我知道 Chrome 浏览器在其 ClientHello (brotli) 中支持证书压缩,是否有任何服务器在其 ServerHello 中支持此功能?谷歌的服务器似乎没有响应 CompressedCertificate 消息。

0 投票
1 回答
1737 浏览

configuration - 如何在 HAProxy 中启用 HTTP/3 (QUIC)?

我发现 HAProxy 2.3 更高版本通过此链接支持 HTTP/3 (QUIC) 。

我想知道如何在 HAProxy 中启用 HTTP/3 (QUIC)。
我在任何地方都找不到与此相关的任何数据。

我已经下载了最新的 HAProxy 源 (v2.4-dev5) 并使用 USE_QUIC=1 构建它。

任何建议都会很棒!
谢谢。

0 投票
0 回答
14 浏览

flags - Catchpoint 中的 QUIC - 我们可以添加 Chromium 标志以在 catchpoint 中启用 QUIC 吗?

我正在尝试运行一些性能测试,以可视化 QUIC 在 catchpoint 上的优势。关于如何在 catchpoint 上测试 QUIC 有什么想法吗?我知道 curl 允许 Chromium 标志。有没有办法在脚本或 CP UI 中添加标志?

0 投票
1 回答
799 浏览

wireshark - Wireshark/QUIC - 无法解密 QUIC

我正在尝试查看 QUIC 数据包的有效负载,但没有运气。我可以使用浏览器生成的 SSLLOGFILE 文件解密精细的 TLS 数据包并将其加载到 Wireshark,我可以看到 HTTPS 和 DoH,并且几乎所有 TLS 加密数据包都被正确解密。

对于 QUIC,情况并非如此,我可以浏览这篇文章:https ://bugs.chromium.org/p/chromium/issues/detail?id=1101691

他们在那里说 SSLKEYLOGFILE 导出 quic 的密钥的问题已经在 chrome 89 中得到修复,所以我下载了 chrome 90(chrome dev 版本),但仍然没有运气。

任何想法我做错了什么?

我可以看到 QUIC 数据包,可以看到客户端 hello,并且所有未加密的 QUIC 数据包都在 Wireshark 中正确解析,但仍然没有解密。

0 投票
1 回答
82 浏览

http - 当 QUIC、HTTP/3 是预期的主要/所有流量时,HTTP 客户端连接池是否仍然有效?

作为现代系统,特别是对于微服务,HTTP 客户端的连接池经常被部署。但是对于 QUIC + TLS1.3,在我看来连接池将毫无用处,因为 QUIC 中支持 0-RTT。

是否有任何 QUIC 专家可以分享有关此主题的更多信息?

0 投票
1 回答
80 浏览

tcp - QUIC/HTTP3 在网络切换时是否受益于 udp?

我们通常知道 QUIC 使用 UDP 作为其传输层。与 TCP 相比,UDP 具有无连接属性。
. 那么我是否可以得出结论,我们可以在wifi和4G手机之间自由切换网络连接?
如果是这样,则切换的成本低于 TCP。TCP 需要 3 次握手来建立连接,而 UDP 不需要它。