作者屡次强调,在网络上传输文件,串行往往比多路复用更快。
而且,即使多路复用号称可以预防 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