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 中的队头阻塞问题
  • 优点
    • 更低延迟。
    • 更快连接建立。
  • 缺点
    • 兼容性差,部分中间设备不支持。
    • 部署成本高,尚未大规模普及。

相关推荐
Whisper_Yu22 分钟前
计算机网络(一)基础概念
计算机网络·http·https·信息与通信
小狮子安度因1 小时前
AAC ADTS格式分析
网络·ffmpeg·aac
啟明起鸣2 小时前
【网络编程】从与 TCP 服务器的对比中探讨出 UDP 协议服务器的并发方案(C 语言)
服务器·c语言·开发语言·网络·tcp/ip·udp
九章云极AladdinEdu2 小时前
深度学习优化器进化史:从SGD到AdamW的原理与选择
linux·服务器·开发语言·网络·人工智能·深度学习·gpu算力
哈哈很哈哈2 小时前
构建高性能网络应用
网络
emojiwoo2 小时前
HTTP 状态码背后的逻辑:从请求到响应的完整流程解析(含完整流程图)
网络·网络协议·http
娅娅梨2 小时前
HarmonyOS-ArkUI Web控件基础铺垫7-HTTP SSL认证图解 及 Charles抓包原理 及您为什么配置对了也抓不到数据
http·华为·ssl·harmonyos
番薯大佬3 小时前
Python学习-day9 字典Dictionary
网络·python·学习
渡我白衣3 小时前
Linux网络:应用层协议http
linux·网络·http
pofenx3 小时前
使用nps创建隧道,进行内网穿透
linux·网络·内网穿透·nps