HTTP、HTTP1.0、HTTP1.1、HTTP2.0、HTTP3.0详解

      最后更新:2022-03-21 03:11:20 手机定位技术交流文章

      目录

      • HTTP协议
        • 基础知识
        • Http版本
          • Http1.0
          • Http1.1
          • Http2.0
          • Http3.0
          • 总结

      HTTP协议

      基础知识

      HTTP协议是超文本传输协议,是将超文本从万维网传输到浏览器的传输协议。

      HTTP 使用 TCP/IP 通讯协议发送数据( HTML 文件、 图片文件、 查询结果等) 。 它不支持包( pack) 传输 。 它主要指定客户端和服务器之间的通讯方法 。默认使用80端口

      • 1、特点:

      (1) 无连接:无连接表示每个连接只执行一个请求,服务器一旦处理客户的请求并收到客户的答复,连接就会中断,从而节省传输时间。

      (2) 无国家:HTTP协议没有跟踪请求与答复之间的通信状况。这两项要求之间没有依赖关系。(每项请求均不同。 )前一项请求和第二项请求都没有密切关联。该协定没有记录以前根据划界案提供的所有请求或资料。)

      • 2、Http报文
        在这里插入图片描述

      在这里插入图片描述

      • 3. 提出HTTP要求的方法

      点击跳跃即可找到Http请求的技巧以及上篇文章的细节。

      4、Http状态码

      1XX - 信息警报,服务器已收到请求,请求人必须继续操作;


      2.XX - 成功、运作得到并正确处理;


      3.XX - 重新定位,这需要额外行动来完成这一请求;


      4XX - 客户错误、有语法问题的请求或未完成的请求;


      5XX - 服务器出错。 服务器在执行请求时遇到问题 。

      常见状态码:
      100: 要求继续和客户回应;
      200:请求成功;
      301: 资源(例如网页)被无限期地重新定位到不同的URL;
      302: 简要调整方向;
      禁止--禁止进入;403:禁止--禁止进入;
      404.:没有找到所要求的资源(网页等)。
      内部服务器误差 500

      Http版本

      Http1.0

      HTTP1.0是标准协议。Connection:cloose,每个浏览器请求都要求将 TCP 连接到服务器,服务器处理后即终止 TCP 连接(没有连接),服务器没有跟踪每个客户端,也没有存储先前的请求(没有状态)。

      Http1.1

      HTTP1.1是标准协议。Connection:keep-alive(长线连接) 省去连接设置和发布的费用; 本数据请求通过 Concent- Length 字段被完全接受。 不允许同时回答两个问题 。

      • 缺陷

      (1) 长时间的延迟会降低页面加载速度。 (如果宽带因堵塞团队而不能发挥最大潜力,网延时是一个问题。 )

      (2) 具有巨大 Http 头部的未具体说明的特性。

      (3) 明确传输,危险。

      (4) 服务器不支持电文传输。

      Http2.0

      SPDY协议:谷歌在2009年公布了SPDY协议,主要是为了解决Http1.1效率低下的问题。
      在这里插入图片描述
      SPDY被视为 HTTP2. 基准,其关键属性(与HTTP协议旧版本的兼容性、对SSL的支持)由HTTP2.0共享。

      根据SPDY,HTTP2.0侧重于业绩,目标是仅使用一个与用户和网站的直接连接。

      • 新建 HTTP2. 0 特性

      (1)二进制传输

      http20 将请求和回应数据分为较小的框架,并使用二进制代码(http1.0以文本格式为基础)。若干框架可以随机发送,并根据框架前半部分的流量进行重建。

      (2) 信头压缩

      Htp2. 一种特别的“HHPACK”技术,大大压缩了页眉信息。

      (3)多路复用

      http2 在0中添加多路再利用技术是解决浏览器限制同一域名下请求数量问题的极好办法。

      有了多常规再利用技术,所有所需的数据都可以通过一个单一的TCP频道传输。

      (4)服务端推送

      其原因之一是标准“请求-答复”操作模式不能改变。服务器在回答询问时不再完全不活动 。要向客户端发送活动信息, 您也可以创建新流 。(例如,当浏览器第一次请求 html 时, 它预示了使用 JS 的可能性 。CSS档案交给了客户。减少等待延迟,它被称为"服务员推"

      服务器也不得将第三方资源转移到服务器上,而服务器必须得到双方的确认。

      • HTTP2.0缺点

      (1) TCP和TCP+TLS的延迟(延迟握手)

      (2) TCP小组的头堵塞尚未完全解决(http2.0, 数项请求在TCP输油管中运行,一旦包裹被丢弃,TCP将等待重新传输(丢失的包裹等待重新传输确认),从而阻断TCP连接中的所有请求。

      由于这些不足, HTTP3 出现。 照片来自Flickr用户pic.

      Http3.0

      当谷歌发布SPDY.A系列查询时,它意识到上述http2。这导致达成了以联合民主党协议为基础的“QUIC”协议。允许 HTTP 使用 QUIC 而不是 TCP 。照片来自Flickr用户pic.它解决了“车队阻挠”的问题。

      • 特点:

      (1) 实现了类似TCP的交通管理和传输可靠性功能。

      (2) 快速握手(QUIC以联合民主党为基础,该党没有连接,不需要摇晃或挥波,比TCP更快)

      (3) 整合 TLS 加密

      (4) 多次重复使用,一劳永逸地解决TCP头到头的堵塞问题(单一“流”有条不紊,可能因袋丢失而堵塞,但其他流不受影响)

      总结

      • HTTP1的缺陷包括安全不足和速度差。

      • HTTP2.0 与 HTTP1.0 向后兼容, 具有“ 安全 HTTP, 更快 HTTPS” 、 头压缩、 多路回用和其他功能。 使用所有可用的带宽并减少延迟

      • HTTP3. 底线支持协议QUC以联合民主党和TCP能力为基础,导致迅速和可靠的协议。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/20559.html

          热门文章

          文章分类