Telegram Channel
Laisky's Notes
https://laisky.notion.site/Head-of-Line-Blocking-in-QUIC-and-HTTP-3-The-Details-2039eb7574b649f785d9c8c70e3ec433 终于看完了这篇万字长文,可以称其为“关于队首阻塞的一切”。 作者细致探讨了队首阻塞(HOL Blocking)的相关话题,详述了 TCP、TLS、HTTP/1、HTTP/2、HTTP/3 HOL 的差异和权衡。 HTTP/2 和 HTTP/3 不一定更快,多路复用不一定好。一切的目…
这张图我忍不住想单独拎出来分享下。

作者屡次强调,在网络上传输文件,串行往往比多路复用更快。

而且,即使多路复用号称可以预防 HOL,但是因为常见的丢包模式是低频而且集中的,所以其实多路复用反而可能受丢包的影响更为严重。

因为一个短暂时间的丢包,在多路复用的连接上,可能会干扰更多的 stream,
并导致这些 stream 全部面临队首阻塞。而预防 HOL 最核心的思想,就是尽可能地让丢包影响的数据(stream)越少越好。

顺带一提,HTTP/3 并没有完全避免队首阻塞,而是化解了 stream 间的队首阻塞。stream 内部仍然需要分包,仍然有队首阻塞。和 HTTP/2 的一个重要区别就是,HTTP/2 的 stream 是应用层,而 HTTP/3 的 stream 是传输层。

prev: https://t.me/laiskynotes/33
next: https://t.me/laiskynotes/40
 
 
Telegram Channel