http历史版本

1,HTTP0.9

最早的http版本,后来才被定义为0.9版本。

这时候通信采用的是纯文本格式;

只支持get请求,且在服务器响应之后就关闭连接;

没有请求头的概念,功能比较简单。

2,HTTP1.0

这个版本增加了请求头、响应头的概念;

引入了HTTP协议版本号和一些元信息(例如状态码、权限、缓存、内容编码);

增加了post、header等方法;

传输格式增加了图片、音频、视频、二进制等。

3,HTTP1.1

HTTP1.1推出主要是完善1.0版本。

增加了put、delete等方法,restful的应用;

增加了Connection字段,可以支持keep-alive保持链接不断开;

增加了cache-control字段,缓存管理和控制;

允许响应数据分块,即断点传输,方便大文件的传输;

强制要求HOST头

4,HTTP2

HTTP2主要在性能上有很大的改善。但目前主流的浏览器只支持基于TSL部署的HTTP2,所以想要将网站升级到HTTP2,首先要升级为HTTPS,并申请证书。所以HTTP2目前的应用并不广泛。

头部压缩:HTTP2维护了一个头部信息字典,通过一系列算法减少重复传输的信息占用资源。

二进制分帧 :HTTP1.x是基于文本解析,而HTTP2将传输的信息分割成更小的消息和帧,并采用了二进制的编码,提升传输效率。

多路复用: 基于二进制分帧传输的基础,在共享一个TCP连接的请求和响应时,将多个同域名下的请求使用同一个链路进行发送(也就是一个连接处理多个往返通信,实现链路复用),http将消息分解成独立的帧数据打乱顺序发送,服务器接受后根据标识和首部数据重新组装起来。

服务器推送:服务器可以主动向客户端推送请求,无需客户端同意。

强化安全:底层使用了TSL1.25

5,HTTP3

HTTP3是基于UDP的QUIC协议,他解决了HTTP2多路复用丢包的问题。基于ID识别一个连接,不是TCP基于IP和端口。

QUIC协议是用来替代TCP SSL/TLS传输层的协议。他完善了丢包率高的网络恢复速度,减少重传量。

相关推荐
创小匠2 小时前
创客匠人:创始人 IP 变现,从 “单点尝试” 到 “生态赋能” 的跨越
网络·网络协议·tcp/ip
Fireworkitte4 小时前
gRPC和http长轮询
网络·网络协议·http
LuLaLuLaLeLLLLLL5 小时前
RPC 框架学习笔记
网络·网络协议·rpc
冰橙子id5 小时前
linux-远程访问管理(sshd,scp,sftp)
linux·网络·ssh
liulilittle10 小时前
.NET ExpandoObject 技术原理解析
开发语言·网络·windows·c#·.net·net·动态编程
委婉待续10 小时前
计算机网络通信的相关知识总结
开发语言·网络
不超限10 小时前
IIS错误:Service Unavailable HTTP Error 503. The service is unavailable.
网络·网络协议·http
.YYY12 小时前
网络--静态路由综合实验
网络·计算机网络
CZZDg12 小时前
Redis Sentinel哨兵集群
java·网络·数据库
tan77º13 小时前
【Linux网络编程】应用层自定义协议与序列化
linux·运维·服务器·网络·c++·tcp/ip