当前位置: 首页> 房产> 家装 > HTTP 各版本差异

HTTP 各版本差异

时间:2025/7/14 7:42:50来源:https://blog.csdn.net/XiugongHao/article/details/139193785 浏览次数:0次

http1.0

它的特点是每次请球和响应完毕后都会销毁TCP 连接。同时规走前一个响应完成后才发送下一个请求。这样做有两个问题:

  1. 无法复用连接了。

    每次请求都要创建新的TCP连接,完成三次握手和四次挥手。网络利用率低

  2. 队头阻塞

    如果前一个请求被某种原因阻塞,导致后续请求无法连接。

http1.1

http1.1 是 http1.0 的改进版.它做出了以下改进

  1. 长连接

    http1.1允许在请求时增加请求头connection:keep-al1ve, 这样便允许后缓的客户端确求在一段时周内复用之前的TCP 连接。

  2. 管道化

    基于长连接的基础,管道化可以不等第一个请求响应继续发送后面的请求,但响应的顺序还是按照请求的顺序返回

  3. 缓存处理

    新增响应头 cache~control, 用于实现客户端缓存。

  4. 断点传输

    在上传/下截资源时,如果资源过大,将其分割为多个部分,分别上传/下载,如果遇到网绍故障,可以从已经上传/下载好的地方继续请求,不用从头开始,提高效率。

http2.0

http2.0优化了传输效率,它主要有以下改进:

  1. 二进制分帧

    将传输的消息分为更小的二进制帧,每帧有自己的标识序号,即便被随意打乱也能在另一端正确组装

  2. 多路复用

    基于二进制分帧,在同一域名下所有访问都是从同一个tcp连接中走,并且不再有队头阻塞问题,也无须遵守响应顺序

  3. 头部压缩

    http2.0通过字典的形式,将头部中的常见信息替换为更少的字符,极大的减少了头部的数据量,从而实现更小的传输量

  4. 服务器推

http2.0 允许服务器直接推送消息给客户端,无须客户端明确的请求

http3.0

http3.0 目前还在草案阶段,它完全抛弃了TCP协议,转而使用UDP协议,是为了进一步提升性能。

虽然http2.0 进行了大量的优化,但它无法摆脱TCP协议本身的问题,比如建立连接时间长、对头阻塞问题等等。

为了保证传输的可靠性,http3.0 使用了 QUIC 协议。

关键字:HTTP 各版本差异

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: