HTTP/3 实战:从 QUIC 到 H3 的完整请求链路
QUIC 解决了传输层的问题,但 HTTP 怎么跑在上面?HTTP/3 不是简单地把 HTTP/2 搬到 QUIC 上——帧格式变了,头部压缩换了,流控删了。这篇从 QPACK 压缩到完整请求链路,把 HTTP/3 拆干净。
发布来自土法炼钢兴趣小组的知识、笔记、进展和应用。主题包括数据结构和算法、编程语言、网络安全、密码学等。
共 3 篇文章 · 返回首页
QUIC 解决了传输层的问题,但 HTTP 怎么跑在上面?HTTP/3 不是简单地把 HTTP/2 搬到 QUIC 上——帧格式变了,头部压缩换了,流控删了。这篇从 QPACK 压缩到完整请求链路,把 HTTP/3 拆干净。
上篇讲哲学,这篇写代码。用 C + ngtcp2 从 UDP socket 开始,手撕 Initial → Handshake → 1-RTT,逐帧拆解 QUIC 握手到底在干什么。
打开一个网页要握手几次?TCP 三次 + TLS 一次 = 至少 2 RTT。QUIC 说:我一次搞定,重连甚至 0 次。不是 TCP 不够好,是它的基因决定了它改不动。