- 虽然
HTTP/2
解决了很多之前旧版本的问题,但是它还是存在一个巨大的问题,虽然这个问题并不是它本身造成的,而是底层支撑的TCP
协议的问题。 - 因为
HTTP/2
使用了多路复用,一般来说同一域名下只需要使用一个TCP
连接。当这个连接中出现了丢包的情况,那就会导致HTTP/2
的表现情况反倒不如HTTP/1
了。 - 因为在出现丢包的情况下,整个
TCP
都要开始等待重传,也就导致了后面的所有数据都被阻塞了。但是对于HTTP/1
来说,可以开启多个TCP
连接,出现这种情况反到只会影响其中一个连接,剩余的TCP
连接还可以正常传输数据。 - 那么可能就会有人考虑到去修改
TCP
协议,其实这已经是一件不可能完成的任务了。因为TCP
存在的时间实在太长,已经充斥在各种设备中,并且这个协议是由操作系统实现的,更新起来不大现实。 - 基于这个原因,
Google
就更起炉灶搞了一个基于UDP
协议的QUIC
协议,并且使用在了HTTP/3
上,当然HTTP/3
之前名为HTTP-over-QUIC
,从这个名字中我们也可以发现,HTTP/3
最大的改造就是使用了QUIC
,接下来我们就来学习关于这个协议的内容。
QUIC
<