HTTP 2.0 和 3.0 有什么区别?

HTTP2.0 vs HTTP3.0(面试Markdown)

HTTP/2 基于 TCP ;HTTP/3 基于 QUIC协议(UDP),这是最本质区别。

HTTP/2 回顾

  • 传输层:TCP
  • 应用层:二进制帧 + 多路复用
  • 解决了应用层队头阻塞 ,但是 TCP层队头阻塞依旧存在

TCP的问题:一条连接里,某个数据包丢包,TCP会停止所有数据传输,等待丢包重传,同一连接下所有请求全部卡住。

  • 依赖TLS做加密(HTTPS),握手需要:TCP三次握手 + TLS握手,握手RTT开销大。

HTTP/3(QUIC)核心特点

HTTP/3并没有完全抛弃HTTP2的语义,请求响应模型、头部压缩思想保留,底层传输换成QUIC(UDP之上实现)。

1. 彻底解决队头阻塞

  • HTTP2:应用层多路复用,但TCP丢包,整个连接全部阻塞等待重传。
  • HTTP3‑QUIC:基于UDP,每个流独立。某一个流丢包,只影响当前流,其他流正常收发数据,真正消除队头阻塞。

2. 握手更快(0‑RTT / 1‑RTT握手)

  • HTTP2:TCP 3次握手 + TLS握手,至少2‑3个RTT。
  • QUIC:可以做到1‑RTT完成首次连接 ;历史连接复用支持 0‑RTT,直接发送业务数据,减少握手延迟。

3. 连接迁移

QUIC连接不绑定IP+端口,依靠连接ID标识连接 。

手机网络切换:Wi‑Fi切4G,IP变了,TCP连接直接断开;QUIC可以继续复用原来连接,不需要重新握手。移动端收益巨大。

4. 内置加密

QUIC把TLS加密内置到协议内部,强制加密,不像HTTP2是TCP+TLS两层拼装。

5. 依然保留HTTP2优秀特性

  • 二进制帧、多路复用、头部压缩(QPACK,HPACK改进版)、流优先级全部保留。

对比表格

对比项 HTTP/2 HTTP/3(QUIC)
底层传输协议 TCP UDP(QUIC)
队头阻塞 解决应用层,TCP层仍然存在 完全消除队头阻塞
握手开销 TCP+TLS,2‑3RTT 首次1‑RTT,复用0‑RTT
连接迁移 不支持,IP变化连接断开 支持,依靠Connection‑ID
加密 TCP之上叠加TLS 协议内置TLS加密
头部压缩 HPACK QPACK
适用场景 PC、Web服务 移动端、弱网、网络频繁切换场景

缺点(面试加分)

  1. UDP经过部分防火墙、运营商设备会被限制,部署普及率不如HTTP2。
  2. UDP没有原生可靠传输,QUIC自己实现重传、拥塞控制,内核没有优化,早期CPU开销较高。

面试口述简短版

HTTP2底层是TCP,虽然通过多路复用解决了应用层的队头阻塞,但是TCP本身丢包会造成整个连接阻塞,握手需要TCP加TLS,RTT开销高,网络切换时连接直接断掉。

HTTP3底层使用QUIC协议跑在UDP之上。它保留HTTP2大部分语义,最大优势是彻底解决队头阻塞,单个流丢包不会影响其他流;握手可以做到0‑RTT加速;支持连接迁移,手机Wi‑Fi切流量不用重连。

缺点是基于UDP,部分网络环境会拦截,目前普及度还不如HTTP2。

相关推荐
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
wuyk5553 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
XUEYUAN52123 天前
ASN 自治系统号风控:平台如何通过 IP 所属自治域批量识别代理流量
python·网络协议·http·网络安全·socks5
QYRdata3 天前
年均增速24.2%!机器人数据湖未来六年增长动能强劲
网络·机器人·服务发现
CHENKONG_CK3 天前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
chshang19923 天前
工业路由器是什么?浅谈5G工业网络中的IR602
网络·物联网·5g·智能路由器
萧瑟余晖3 天前
Netty 核心组件与 Reactor 模型详解
网络·架构
ITxiaobing20233 天前
IP 定位服务选型指南:从准确率到工程落地的技术考察
linux·服务器·网络
wuyk5553 天前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
z落落3 天前
C#UDP+串口服务端+UDP 客户端(含 CRC16 校验)
网络·网络协议·udp