2. 你可以说一下 http 版本的发展过程吗

你可以说一下 http 版本的发展过程吗

总结:0.9:只能发送 get,无状态。1.0:新增 post,请求头,状态码,cookie。1.1:新增 put/delete/options/patch,keep-alive,pipeline。2.0:二进制协议,多路复用,头部压缩。3.QUIC 协议,彻底解决TCP队头阻塞问题。


总体演进概述

版本 主要特性
HTTP/0.9 最基础版本,仅支持 GET 请求,无状态。
HTTP/1.0 引入 POST、请求头、状态码、Cookie 等,功能初步完善。
HTTP/1.1 支持更多方法(PUT/DELETE/PATCH 等),引入长连接和管道机制。
HTTP/2.0 基于二进制协议,支持多路复用、头部压缩,性能大幅提升。
HTTP/3.0 使用 QUIC 协议(基于 UDP),彻底解决 TCP 队头阻塞问题。

各版本详细说明

HTTP/0.9

  • 特点
    • 只允许客户端发送 GET 请求。
    • 没有请求头(Headers)和状态码。
    • 返回的内容只有 HTML 文档,没有元数据。
  • 缺点:功能极其有限,现已淘汰。

HTTP/1.0

  • 新增特性
    • 支持 POST 方法。
    • 引入请求头(如 User-AgentContent-Type)。
    • 增加状态码(如 200 OK, 404 Not Found)。
    • 支持 Cookie,实现简单会话跟踪。
  • 缺点:每次请求都需要建立新的 TCP 连接,效率较低。

HTTP/1.1

  • 改进点
    • 新增请求方法:PUT, DELETE, OPTIONS, PATCH 等。
    • 引入 keep-alive 实现持久连接,减少连接开销。
    • 支持请求管道化(pipelining),多个请求可一次性发出。
  • 现状:目前仍广泛使用,兼容性好。

HTTP/2.0

  • 核心技术
    • 使用二进制协议替代文本协议,解析更高效。
    • 支持多路复用,多个请求共用一个 TCP 连接。
    • 头部压缩(HPACK)减少传输体积。
  • 优势:显著提升加载速度和资源传输效率。
  • 常见实现:基于 TLS 的 ALPN 扩展。

HTTP/3.0

  • 核心变化
    • 底层协议由 TCP 改为 UDP,使用 Google 提出的 QUIC 协议
    • 彻底解决 TCP 中的队头阻塞问题
  • 优点
    • 更低延迟。
    • 更快连接建立。
  • 缺点
    • 兼容性差,部分中间设备不支持。
    • 部署成本高,尚未大规模普及。

相关推荐
.Shu.5 小时前
计算机网络 TLS握手中三个随机数详解
网络·计算机网络·安全
于冬恋13 小时前
RabbitMQ高级
服务器·网络·rabbitmq
tan77º14 小时前
【Linux网络编程】分布式Json-RPC框架 - 项目设计
linux·服务器·网络·分布式·网络协议·rpc·json
.Shu.14 小时前
计算机网络 各版本TLS握手的详细过程
网络·计算机网络
半路_出家ren15 小时前
路由综合实验RIP,OSPF,BGP
网络·网络协议·rip·ospf·ebgp·ibgp
张太行_16 小时前
网络SSL/TLS协议详解
网络·web安全·ssl
重启的码农17 小时前
NAT穿透技术:原理、实现与应用全景解析
网络协议
zhysunny17 小时前
Day22: Python涡轮增压计划:用C扩展榨干最后一丝性能!
c语言·网络·python
hhzz17 小时前
重温 K8s 基础概念知识系列八( K8S 高级网络)
网络·容器·kubernetes
VVVVWeiYee19 小时前
TCP/UDP详解(一)
运维·网络·tcp/ip·udp·信息与通信