文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

HTTP 1.0 1.1 2.0 3.0有什么区别?

2024-11-30 05:08

关注

HTTP协议到目前为止,所有的版本可以分为HTTP 0.9、1.0、1.1、2.0、和3.0,其中普遍应用的是HTTP 1.1版本,正在推进是HTTP 2.0版本,以及未来的HTTP 3.0版本。

HTTP1.0规定浏览器和服务器保持短连接,浏览器每次请求都需要与服务器建立一个TCP连接。HTTP1.0还规定下一个请求必须在前一个请求响应到达之前才能发送,如果前一个请求的响应一直不到达,那么下一个请求就不发送,后面的请求就都阻塞了,所以HTTP1.0存在请求的队头阻塞。HTTP1.0还不支持断点续传,每次都会传送全部的页面和数据, 在只需要部分数据的情况下就会浪费多余带宽。

HTTP 1.1解决了1.0版本存在的问题,它可以保持长连接,避免每次请求都要重复建立TCP连接,提高了网络的利用率。HTTP 1.1 可以使用管道传输,支持多个请求同时发送,但服务器还是按照顺序先回应前面的请求,再回应后面的请求,如果前面的回应特别慢,后面就会有许多请求排队等着处理。所以,HTTP 1.1 还是存在响应的队头阻塞问题。另外,HTTP 1.1已经可以断点续传。

HTTP  2.0是HTTP协议的第一个主要修订版,它与前面的版本用于传递数据的方法有很大的差异。

HTTP2.0会压缩头部,如果同时有多个请求其头部一样或相似,那么协议会消除重复部分。

HTTP 2.0 将请求和响应消息编码为二进制,而不再使用之前的纯文本消息,增加了数据传输的效率。

HTTP 2.0可以在一个TCP连接中并发多个请求或回应,而不用按照顺序一一对应,从而彻底解决了HTTP层面队头阻塞的问题,大幅度提高了连接的利用率。

HTTP 2.0还在一定程度上改善了传统的请求应答工作模式,服务端不再是被动地响应,而是可以主动向客户端发送消息、推送额外的资源。

HTTP 2.0虽然通过多个请求复用一个TCP连接解决了HTTP的队头阻塞 ,但是一旦发生丢包,就会阻塞住所有的HTTP请求,这就属于TCP层队头阻塞。为了解决这个问题,HTTP 3.0直接放弃使用TCP,将传输层协议改成UDP,但是因为UDP是不可靠传输,所以这就需要QUIC实现可靠机制。

QUIC全称 “快速 UDP 互联网连接”,是由Google提出的使用UDP进行多路并发传输的协议。

QUIC 有自己的一套机制可以保证传输的可靠性的。当某一对请求响应发生丢包时,只会阻塞当前的请求响应,其他请求响应不会受到影响,因此完全不存在队头阻塞问题。

HTTP 3 .0使用了UDP作为传输层协议,能够减少三次握手的时间延迟,从而达到快速建立连接的效果。此外,QUIC协议可以使用连接ID来标记通信的两个端点,即使移动设备的网络发送变化,导致IP地址变化了,只要还有连接ID和TLS密钥等上下文信息,就可以复用原连接,从而实现连接迁移。

来源:编程十万问内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯