http的发展历程

HTTP 的发展历程可以追溯到1989年,当时在 CERN 工作的 Tim Berners-Lee 博士提出了一个通过网络传输超文本系统的构想,这个系统后来被称为万维网(World Wide Web)。以下是 HTTP 发展的关键阶段:

HTTP/0.9(1991年)

  • 起源:这是最早的 HTTP 版本,被称为"单行协议"。
  • 特点
    • 只支持 GET 请求,用于获取 HTML 页面。
    • 请求和响应都非常简单,没有请求头和响应头。
    • 服务器返回的只有 HTML 格式的内容,以 ASCII 字符流传输。

HTTP/1.0(1996年)

  • 背景:随着万维网的发展,需要传输更多类型的文件,如图片、音频、视频等。
  • 改进
    • 引入了 POSTHEAD 等请求方法。
    • 增加了 请求头和响应头,以 Key-Value 形式提供更多信息,如文件类型、压缩方法等。
    • 支持传输多种类型的数据,不再局限于 HTML。

HTTP/1.1(1997年)

  • 现状:目前使用最广泛的版本。
  • 主要特性
    • 长连接(Keep-Alive):支持多个请求复用同一个连接,减少连接建立和关闭的开销。
    • 请求管道化:允许客户端在收到响应前发送多个请求。
    • 缓存机制:引入了更完善的缓存控制。
    • 支持更多的 HTTP 方法:如 PUT、DELETE 等。

HTTP/2(2015年)

  • 目标:解决 HTTP/1.1 的性能瓶颈。
  • 关键改进
    • 二进制分帧:将请求和响应拆分为更小的帧,提高传输效率。
    • 多路复用:在同一连接上同时传输多个请求和响应,避免队头阻塞。
    • 头部压缩(HPACK):减少头部信息的传输量。
    • 服务器推送:服务器可以主动推送资源到客户端。

HTTP/3(2022年)

  • 最新版本:基于 QUIC 协议,使用 UDP 而非 TCP。
  • 优势
    • 减少连接建立延迟:QUIC 整合了传输层和加密层,握手更快。
    • 解决队头阻塞:在传输层实现多路复用,即使一个数据包丢失也不会影响其他流。
    • 更好的移动性支持:适应网络切换,如从 Wi-Fi 切换到移动数据。

总结

HTTP 从最初的简单协议,逐步演进为支持丰富功能和高效传输的协议。每个版本的更新都旨在满足互联网发展的新需求,提升用户体验和性能。


相关推荐
hugerat1 小时前
在AI的帮助下,用C++构造微型http server
linux·c++·人工智能·http·嵌入式·嵌入式linux
三两肉1 小时前
HTTPS ECDHE 握手全解析
网络协议·https·github·rsa·echde
小宇的天下1 小时前
HBM(高带宽内存)深度解析:先进封装视角的技术指南
网络·人工智能
txinyu的博客1 小时前
HTTP服务实现用户级窗口限流
开发语言·c++·分布式·网络协议·http
ha20428941942 小时前
Linux操作系统学习记录之----自定义协议(网络计算器)
linux·网络·学习
糖~醋排骨2 小时前
DHCP服务的搭建
linux·服务器·网络
huohaiyu2 小时前
网络中的一些基本概念
运维·服务器·网络
llddycidy2 小时前
峰值需求预测中的机器学习:基础、趋势和见解(最新文献)
网络·人工智能·深度学习
小林一直冲2 小时前
华为设备配置与命令
网络
西京刀客2 小时前
golang路由与框架选型(对比原生net/http、httprouter、Gin)
http·golang·gin