✅HTTP不同版本之间的区别?

✅HTTP不同版本之间的区别?

典型回答

✅为什么需要HTTP/2,他解决了什么问题?

✅什么是HTTP/3的QUIC协议?

前面两篇文章分别介绍了HTTP 1.X、2和3的特性,这一篇是把3个放一起比较一下。

特性/版本 HTTP/0.9 HTTP/1.0 HTTP/1.1 HTTP/2 HTTP/3
发布年份 1991 1996 1997 2015 2022
多路复用
连接复用 ✅(Keep-Alive)
二进制格式
首部压缩 ✅(HPACK) ✅(QPACK)
服务器推送 ⚠️ 被移除(多数实现不支持)
使用协议 TCP TCP TCP TCP QUIC (UDP)
延迟优化 部分支持 很好 最佳(支持 0-RTT)
明文/加密 明文 明文 明文 可加密(常用 TLS) 强制加密(TLS over QUIC)

HTTP/1.1(目前仍广泛使用)

  • 默认启用 Keep-Alive(连接复用)。

HTTP/2

  • 使用 二进制帧格式,更高效。
  • 支持 多路复用(多个请求并发共用一个 TCP 连接,避免队头阻塞)。
  • 支持 头部压缩(HPACK)。
  • 支持 服务端推送(Server Push)。

缺点:仍然基于 TCP,存在队头阻塞(Head-of-Line Blocking)。

✅为什么需要HTTP/2,他解决了什么问题?

HTTP/3(最新)

  • 使用 QUIC 协议(基于 UDP)替代 TCP。
  • 消除了 TCP 层的队头阻塞
  • 支持 0-RTT 建连,极大降低连接延迟。
  • 更安全:强制加密传输
  • 更适应现代网络(如移动网络、弱网)。

缺点:实现复杂性高,对中间设备兼容性要求更高。

✅什么是HTTP/3的QUIC协议?

HTTPS

✅HTTPS和HTTP的区别是什么?