gpt4 book ai didi

http - HTTP2 如何解决线头阻塞 (HOL) 问题

转载 作者:可可西里 更新时间:2023-11-01 02:30:17 38 4
gpt4 key购买 nike

HTTP2 如何解决线头阻塞 (HOL) 问题?

这个问题在http1.1中很常见,不过听说HTTP2已经修复了这个问题。有人可以解释 HTTP2 究竟是如何解决这个问题的吗?

最佳答案

HTTP 线头阻塞

HTTP 术语中的线头阻塞通常指的是这样一个事实,即每个浏览器/客户端与服务器的连接数量有限,并且通过其中一个连接执行新请求必须等待这些连接完成才能完成可以将其关闭。

行头请求阻止后续请求。

HTTP/2 通过引入多路复用解决了这个问题,这样您就可以通过同一连接发出新的请求,而不必等待之前的请求完成。

理论上,HTTP/1.1 的流水线也提供了一种绕过 HOL 的方法,但在实践中实现起来非常棘手且非常容易出错。这使得它直到今天都没有在网络上广泛启用。

TCP 线头阻塞

然而,HTTP/2 仍然受到另一种 HOL 的影响,即在 TCP 级别。 TCP 流中丢失一个数据包会使所有 流等待,直到该数据包被重新传输和接收。此 HOL 正在使用 QUIC 协议(protocol)处理...

QUIC 是一种在 UDP 上实现的“类 TCP”协议(protocol),其中每个流都是独立的,因此丢失的数据包只会停止丢失数据包所属的特定流,而其他流可以继续。

HTTP/3 是通过 QUIC 而不是 TCP 和 TLS 完成的。

关于http - HTTP2 如何解决线头阻塞 (HOL) 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45583861/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com