Http 1.0 1.1 2.0 3.0 版本差别

这篇具有很好参考价值的文章主要介绍了Http 1.0 1.1 2.0 3.0 版本差别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Http 1.0

发布年份:1996 非官方标准

  • 短链接:每一次请求都对应一次TCP的连接与释放

    • 开销大:每次请求都要TCP的连接与释放
    • 队头阻塞:每次请求都必须等上一次请求获得响应之后,才可以发送;效率低下
  • 缓存:在HTTP1.0中主要使用header里的协商缓存 last-modified(上次修改时间),if-modified-since(是否修改),强缓存 Expires(缓存过期时间);减少了不必要的网络传输

Http 1.1

发布年份:1997 官方标准,并长期使用

  • 长连接:HTTP1.1增加Connection字段,通过设置Keep-Alive保持HTTP连接不断开。避免每次客户端与服务器请求都要重复建立释放建立TCP连接。提高了网络的利用率。

如果客户端想关闭HTTP连接,可以在请求头中携带Connection:false来告知服务器关闭请求。

  • 管道化(pipelining):HTTP1.1支持请求管道化(pipelining)。TCP连接之后,Http可以像流水线一样,连续发送多次请求,而不必等待上一次请求响应之后再发送

需要注意的是:服务器必须按照客户端请求的先后顺序依次回送相应的结果,以保证客户端能够区分出每次请求的响应内容。也就是说,HTTP管道化可以让我们把先进先出队列从客户端(请求队列)迁移到服务端(响应队列)。
可见,HTTP1.1还是无法解决队头阻塞的问题。同时“管道化”技术存在各种各样的问题,所以很多浏览器要么根本不支持它,要么直接默认关闭,并且开启的条件很苛刻……而且好像实际也没有什么用处。

由此可见,管线化并不是真正的并行的传输,现阶段的浏览器厂商采取了另外一种做法,它允许我们打开多个TCP的会话。eg.Chrome一般是6个

  • 缓存:加入了一些新的字段如cache-control,支持断点传输
  • Host 标头:使得一个服务器能够用来创建多个Web站点

Http 2.0

发布年份:2015 官方标准,逐渐普及中

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

利用HPAK算法:在客户端和服务器同时维护一张头信息表,所有字段都会存入这个表,生成一个索引号,就不用重复发送同样字段了,只发送索引号,减少数据量提高速度

  • 二进制格式: HTTP/1.0和HTTP/1.1中,报文都是纯文本的格式简单易读;而在2.0中采用了二进制的格式,不再可读;数据以数据流(stream)的形式以字节单位发送,数据包可以不按顺序发送

  • 多路复用协议: 真正的并行的请求能在同一个链接中处理,移除了 HTTP/1.x 中顺序和阻塞的约束。
    Http 1.0 1.1 2.0 3.0 版本差别,计算机网络,TCP,HTTP,计算机网络

在HTTP2.0中,对头阻塞是发生在TCP层面

  • 服务端推送: 服务端不再是被动地响应,可以主动向客户端发送消息、推送额外的资源。

在实际中应用的也比较少

Http 3.0

发布年份:2022 官方文档 逐渐普及中

  • QUIC协议: 而QUIC是基于 UDP 协议,不需要三次连接进行握手,而且也会缩短 TLS 建立连接的时间。解决了队头阻塞问题。

Http 1.0 1.1 2.0 3.0 版本差别,计算机网络,TCP,HTTP,计算机网络文章来源地址https://www.toymoban.com/news/detail-685731.html

参考资料

  • https://blog.csdn.net/weixin_45910068/article/details/126290248
  • https://xiaolincoding.com/network/2_http/http_interview.html#http-1-1%E3%80%81http-2%E3%80%81http-3-%E6%BC%94%E5%8F%98
  • https://zhuanlan.zhihu.com/p/266578819
  • https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP

到了这里,关于Http 1.0 1.1 2.0 3.0 版本差别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 了解HTTP/1.1、HTTP/1.0 和 HTTP/2.0

    HTTP/1.1、HTTP/1.0 和 HTTP/2.0 是超文本传输协议(HTTP)的三个主要版本 先解释一下什么是超文本协议 超文本传输协议(HyperText Transfer Protocol,简称 HTTP)是互联网上应用最广泛的一种网络协议。设计 HTTP 的初衷是为了允许浏览器从服务器获取(或向服务器提交)网页数据,从而

    2024年01月25日
    浏览(36)
  • Http1.0 、1.1、2.0、3.0的区别

    巨人的肩膀 3.1 HTTP 常见面试题 | 小林coding HTTP1.0与HTTP1.1 HTTP1.1在HTTP1.0上的改进: 使用长连接的方式改善了HTTP1.0中短连接造成的性能开销 支持管道网络传输,不必等到上一个的响应,就可以接着发送第二个请求,减少整体响应时间 HTTP1.1的缺点: HTTP报文中的头部信息未经压

    2024年02月01日
    浏览(42)
  • 关于HTTP1.0、1.1、1.x、2.0、3.0与HTTPS之间的理解

    HTTP的由来 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果。 HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传

    2024年04月12日
    浏览(42)
  • 云计算1.0、云原生2.0、AI云计算3.0,是解除IT互联网人才35岁的危机之道?

    互联网员工的“35岁”危机,算不上一个新鲜的话题。年轻人不断涌入大厂的同时,老员工的受挫与焦虑也在同步发生。 “员工35岁被裁”“高龄员工劝退”,论坛、新闻里一些案例,更是放大了互联网人的35岁危机感。处在上有老、下有小的阶段,35岁员工担心竞争力下滑、

    2024年02月04日
    浏览(44)
  • 详解HTTP1.0、1.1、2.0版本区别/优化

    1、HTTP 1.0 是一种无状态,无连接的应用层协议 规定浏览器和服务器保持短暂的链接。 浏览器每次请求都需要与服务器建立一个TCP连接,服务器处理完成以后立即断开TCP连接(短连接),服务器不跟踪也每个客户单,也不记录过去的请求(无状态)。 这种无状态性可以 借助

    2023年04月08日
    浏览(70)
  • HTTP/1.1 特性(计算机网络)

    HTTP/1.1 的优点有哪些? 「简单、灵活和易于扩展、应用广泛和跨平台」 1. 简单 HTTP 基本的报文格式就是  header + body ,头部信息也是  key-value  简单文本的形式, 易于理解 。 2. 灵活和易于扩展 HTTP 协议里的各类请求方法、URI/URL、状态码、头字段等每个组成要求都没有被固

    2024年04月28日
    浏览(36)
  • 互联网的前世今生:Web 1.0、2.0、3.0

    101链视界 :区块链、隐私计算与金融科技领域的专业知识分享者。 ▲ 点击上方第二个“101链视界”关注公众号 2021年,元宇宙成为一个爆火的概念,而Web 3.0也悄悄在海外科技界和资本圈激起浪花。 有人说互联网的尽头是元宇宙,但它的发展还将是一个漫长的过程,集 5G、

    2023年04月09日
    浏览(63)
  • Web 1.0、Web 2.0 和 Web 3.0 之间的比较

    💂 个人网站:【海拥】【摸鱼小游戏】【神级源码资源网站】 🤟 风趣幽默的前端学习课程:👉28个案例趣学前端 💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 💬 免费且实用的 Python 刷题(面经大全)网站:👉点击跳转到网站 本文首发于海拥资

    2024年01月17日
    浏览(57)
  • HTTP 1.0 和 HTTP 1.1 的主要区别

    HTTP 1.0和HTTP 1.1是两个不同版本的HTTP协议,它们之间有以下区别: 1. 持久连接:HTTP 1.0默认使用短连接,即每个请求/响应后都会关闭连接,而HTTP 1.1默认使用持久连接,在同一个连接上可以发送多个请求和响应。 2. 请求管道化:HTTP 1.1支持请求管道化,即在一个持久连接上可

    2024年02月03日
    浏览(35)
  • Hadoop 1.0 到 Hadoop 3.0版本功能概述

    2003-2004年,Google公布了部分GFS和MapReduce思想的细节,受此启发的Doug Cutting等人用2年的业余时间实现了DFS和MapReduce机制,使Nutch性能飙升。然后Yahoo招安Doug Gutting及其项目。 2005年,Hadoop作为Lucene的子项目Nutch的一部分正式引入Apache基金会。 2006年2月被分离出来,成为一套完整独

    2023年04月23日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包