返回顶部
首页 > 资讯 > 精选 >HTTP3的示例分析
  • 219
分享到

HTTP3的示例分析

2023-06-27 13:06:07 219人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关Http3的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。HTTP3是HTTP协议的最新版本。从诞生之初,HTTP就是交换超文本文档的首选应用层协议。多年来,为了跟上互联网的发展

这篇文章给大家分享的是有关Http3的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

HTTP3是HTTP协议的最新版本。从诞生之初,HTTP就是交换超文本文档的首选应用层协议。多年来,为了跟上互联网的发展,以及WWW上交换的内容种类增加,HTTP进行了几次重大升级,而HTTP/3就是目前的最新版本。

HTTP3的示例分析

HTTP 2问题

前篇已整体介绍HTTP 2,就此,此篇只说下HTTP/2的问题

  1. 在底层使用了tcp的情况下,TCP的慢启动;拥塞窗口尺寸设置不合理导致的性能急剧下降的问题没有得到解决。基因在此,无法改变
  2. HTTP 2多路复用只是减少了连接数,队头阻塞的问题并没有得到完全解决。如果TCP丢包率超过2%,HTTP/2表现将不如HTTP1.1。因为HTTP1 是分开使用的TCP连接,具体对比如下示意图所示:
HTTP3的示例分析

HTTP 3

HTTP 3是在QUIC基础上发展出来的。底层使用UDP进行数据传输,但上层仍然使用HTTP/2。HTTP2与UDP之前存在一个QUIC层,TLS加密过程在此层处理。QUICK存在两个版本,早期Google打头阵的QUIC称之为gQUIC,IETF标准化后称之为IQUIC。与HTTP对比,HTTP/3整体如下:

HTTP3的示例分析

整个HTTP家族对比如下:

HTTP3的示例分析

HTTP3特点:

  • 使用UDP作为传输层进行通信
  • 从协议本身保证了安全性,QUIC在建立连接的握手过程中就完成了TLS加密握手
  • 建立连接快,正常只需要1RTT即可建立连接。如果有缓存之前的secret信息,则直接验证和建立连接,此过程0RTT。建立连接时,也可以带有少量业务数据。
HTTP3的示例分析
  • 不和具体底层连接绑定,QUIC为每个连接的两端分别分配了一个唯一ID,上层连接只认这对逻辑ID。网络切换或者断连时,只需要继续发送数据包即可完成连接的建立
  • 使用QPACK进行头部压缩,因为HPACK要求传输过程有序,这会导致队头阻塞。而QPACK不存在这个问题
  • HTTP/3在header中定义了一个新header:Alt-Svc: h4=":20003":表示服务器在20003端口开了一个20003端口用于HTTP/3服务

补充

  • 使用以下代码可以判断是否有使用HTTP/2

    (function(){ // 保证这个方法只在支持loadTimes的chrome浏览器下执行 if(window.chrome && typeof chrome.loadTimes === 'function') {     var loadTimes = window.chrome.loadTimes();     var spdy = loadTimes.wasFetchedViaSpdy;     var info = loadTimes.npnNegotiatedProtocol || loadTimes.connectionInfo;     // 就以 「h3」作为判断标识     if(spdy && /^h3/i.test(info)) {         return console.info('本站点使用了HTTP/2');     } } console.warn('本站点没有使用HTTP/2');})();

感谢各位的阅读!关于“HTTP3的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: HTTP3的示例分析

本文链接: https://lsjlt.com/news/310783.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • HTTP3的示例分析
    这篇文章给大家分享的是有关HTTP3的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。HTTP3是HTTP协议的最新版本。从诞生之初,HTTP就是交换超文本文档的首选应用层协议。多年来,为了跟上互联网的发展...
    99+
    2023-06-27
  • MYSQL_GTID的示例分析
    这篇文章给大家分享的是有关MYSQL_GTID的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 一、GTID概述  GTID是MYS...
    99+
    2024-04-02
  • RBAC的示例分析
    这篇文章主要为大家展示了“RBAC的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“RBAC的示例分析”这篇文章吧。什么是权限管理基本上涉及到用户参与的系...
    99+
    2024-04-02
  • vuex的示例分析
    这篇文章主要介绍了vuex的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。如果你在使用 vue.js , 那么我想你可能会对 vue...
    99+
    2024-04-02
  • HappyPack的示例分析
    这篇文章主要介绍HappyPack的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!由于运行在 Node.js 之上的 Webpack 是单线程模型的,所以Webpack 需要...
    99+
    2024-04-02
  • jquery.cookie.js的示例分析
    这篇文章主要为大家展示了“jquery.cookie.js的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jquery.cookie.js的示例分析”这...
    99+
    2024-04-02
  • DOM的示例分析
    这篇文章将为大家详细讲解有关DOM的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。DOM(Document Object Modle) 操作文档的编程接口DOM定...
    99+
    2024-04-02
  • FastClick的示例分析
    小编给大家分享一下FastClick的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!用 iOS 在手Q阅读书友交流区发表...
    99+
    2024-04-02
  • webpack4的示例分析
    小编给大家分享一下webpack4的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!新建一个demo文件夹,然后再将命令行...
    99+
    2024-04-02
  • JSON的示例分析
    这篇文章给大家分享的是有关JSON的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。json[{"id":394,"qy_json"...
    99+
    2024-04-02
  • ajax的示例分析
    这篇文章主要介绍了ajax的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。AJAX不是JavaScript的规范,它只是一个哥们“发...
    99+
    2024-04-02
  • Immutable.js的示例分析
    这篇文章将为大家详细讲解有关Immutable.js的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript 中的对象一般是可变的(Mutable),...
    99+
    2024-04-02
  • bootstrap的示例分析
    这篇文章给大家分享的是有关bootstrap的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。bootstrap提供了三种类型的下载:1、用于生产环境的 Boot...
    99+
    2024-04-02
  • Final的示例分析
    小编给大家分享一下Final的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!事务的划分首先不可能无限细化,因此肯定是不需要无限的出现子类的。一旦无限出现子...
    99+
    2023-06-06
  • HTTPS的示例分析
    这篇文章主要介绍了HTTPS的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。HTTPS优势HTTPS是基于tls和ssl加密的http协议,网络传输是加密的,因此它的...
    99+
    2023-06-12
  • WebSocket的示例分析
    这篇文章主要介绍WebSocket的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、Socket简介Socket又称"套接字",应用程序通常通过"套接字"向网络发出请...
    99+
    2023-06-22
  • Java的示例分析
    这篇文章将为大家详细讲解有关Java的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、try with catch还记得这样的代码吗?我们需要手动的关闭资源的流,不然会造成资源泄漏,因为虚拟机无...
    99+
    2023-06-15
  • SpringBoot的示例分析
    这篇文章主要介绍了SpringBoot的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、图示spring再简化:SpringBoot-jar:内嵌tomacat;微...
    99+
    2023-06-15
  • HAProxy的示例分析
    这篇文章主要介绍了HAProxy的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。HAProxy 是一款提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层...
    99+
    2023-06-27
  • MQTT的示例分析
    这篇文章主要介绍了MQTT的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。MQTT(Message Queuing Telemetry Transport,消息队列遥...
    99+
    2023-06-27
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作