基于 QUIC 协议的 HTTP/3 正式发布!

news2024/11/18 14:30:36

近期,超文本传输协议新版本 HTTP/3 RFC 文档,已由互联网工程任务组(IETF)对外发布。HTTP/3 全称为 HTTP-over-QUIC,指在 QUIC(Quick UDP Internet Connections, 快速 UDP 互联网连接)上映射 HTTP 语义的通信过程。

RFC 文档指出,新型传输方式 QUIC 既包含 HTTP/2 功能,还完成了从 TCP(Transmission Control Protocol,传输控制协议)向 UDP(User Datagram Protocol, 用户数据报协议)的连接转型,兼具流式多路复用、分路流控、降低延迟、稳定性能、提高隐私性等特点。面向未来的 HTTP/3 和 QUIC, 既然有这么多优势,下面就来回顾一下它们的前世今生吧。

一、QUIC 源自何处

QUIC 使用 UDP 实现网络连接前,互联网上绝大多数网络连接的底层协议使用的都是 TCP,但它存在一定的局限性——很难完成对 TCP 的更改。即使制造商编写了支持新 TCP 功能的软件,也很难升级所有的旧设备。

为了改善 TCP 的局限与延迟情况,谷歌在2013年首次宣布推出 Google QUIC,并内嵌于谷歌浏览器和其它服务中。而在2016年,Akamai 便部署了 Google QUIC,仅用2年时间便实现了与谷歌相近体量的 QUIC 端点部署,以此传输全球流量。

二、QUIC 全新内涵

Akamai 在应用 QUIC 多年后,QUIC 如今又有了哪些更新呢?自 IETF 2016年成立 QUIC 工作组,打造标准化流程持续更新该协议后,目前已实现十多个开源 IETF QUIC 版本,核心特征表现如下:

三、HTTP 多版本共存

如果您看到上述 RFC 文件集不含 HTTP/3 描述,无需惊讶。这是因为 HTTP/3 规范是在 QUIC 工作组中,共同开发并同步提交的。事实上,核心 HTTP 语义在不同的版本间并不会改变,也没有弃用其他版本,因为每个版本都适用于不同的用例。

推广新版本的同时,也会存在阻止 UDP 的部分网络服务,会造成无法使用 HTTP/3。这种情况下,您仍然可以在这些网络上使用基于 TCP 的 HTTP 版本,即 HTTP/1.1 和 HTTP/2 仍然会受到 IETF 关注,因此它们也将与 HTTP/3 保持共存。

四、“迈”向未来

自 QUIC 标准化设计伊始,IETF 便对依托 Akamai 平台进行未来协议开发而倍感兴奋。回顾 Akamai 科技创新历程,为不断提高应用程序性能、改善用户网络使用体验,我们已开发和部署了多种基于 UDP 的传输协议。

作为第一个部署 Google QUIC 的分布式云计算平台,Akamai 在业务开发过程中,积极沉淀创新经验,为技术规范和开源生态系统持续贡献力量,其中包含兼容 OpenSSL 与 IETF QUIC 的开发工作;同时我们也联动微软将这一成果落地为 quictls,已被应用于微软 MsQuic 堆栈以及 Node.js, cURL。

五、结语

综上所述,HTTP/3 和 QUIC 的焕新升级,为下一代互联网提供了一个全新起点。作为以保障全球网络性能与安全为己任的云服务公司,Akamai 在联动合作伙伴或客户研究、部署、优化传输协议时,将充分应用 HTTP/3 和 QUIC 技术框架,来加强隐私保护、加速数据传输、改善网络延迟。

当下,我们向 HTTP/3 RFC 文档发布表示庆贺。未来,Akamai 也将着眼于实际应用场景,赋能千行百业、驱动数字化转型升级,为全球数十亿用户打造美好的数字化生活体验。

基于 QUIC 协议的 HTTP/3 正式发布!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1462272.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OpenTiny Vue 组件库适配微前端可能遇到的4个问题

本文由体验技术团队 TinyVue 项目成员岑灌铭同学创作。 前言 微前端是一种多个团队通过独立发布功能的方式来共同构建现代化 web 应用的技术手段及方法策略,每个应用可以选择不同的技术栈,独立开发、独立部署。 TinyVue组件库的跨技术栈能力与微前端十…

十三、图像像素值统计

项目功能实现&#xff1a;对一张图像进行统计最大、最小像素值、均差以及方差的值 按照之前的博文结构来&#xff0c;这里就不在赘述了 一、头文件 pixel_statistic.h #pragma once#include<opencv2/opencv.hpp>using namespace cv;class Pixel_Statistic { public:vo…

camunda源代码编译运行(三):验证camunda API接口功能

接上一篇文章&#xff1a;camunda源代码编译运行&#xff08;二&#xff09;&#xff1a;构建并运行camunda源代码工程 4.1、发布流程模型 先通过camunda的流程设计器设计一个流程&#xff0c;命名为&#xff1a;UserTask Flow1&#xff0c;然后发布流程&#xff0c;发布流程…

HUD阳光倒灌实验TFT温升实验太阳光模拟器

随着汽车行业的不断发展&#xff0c;车辆的智能化程度越来越高&#xff0c;而HUD抗干扰太阳光模拟器作为一种新型的解决驾驶员视线问题的方案&#xff0c;引起了人们的广泛关注。它能够有效地解决驾驶员在阳光强烈或者夜间光线不足时的视线问题&#xff0c;提高了驾驶的安全性和…

Java写爱心

突然想用Java写一个爱心&#xff0c;程序运行效果如下&#xff1a; 话不多说&#xff0c;上代码 ! public class LovingHeart {/*** 判断坐标是否在爱心范围内*/private static boolean inHeart(float x,float y){float ax*xy*y-1;return a*a*a-x*x*y*y*y<0.0f;}/*** 爱心…

【Vuforia+Unity】AR05-实物3D模型识别功能实现

对于3D物体的识别&#xff0c;可以是虚拟的也可以是实物的&#xff0c;但是对于虚拟的三维模型意义不大&#xff0c;我们完全可以把三维模型放在屏幕上截一张图&#xff0c;以图片识别的方式召唤数字内容&#xff0c;不过在虚拟现实中或许有用。 因此本文探讨的技术路线主要是…

Gitee教程2(完整流程)

1.配置git git config --global user.name "用户名" git config --global user.email "密码" 如何获取&#xff1f; gitee右上角加号点击新建仓库&#xff0c;仓库名随便起一个就行 找到这条命令&#xff0c;把这两句一个一个复制到vscode终端就行 2.创建g…

【2.3深度学习开发任务实例】(1)神经网络模型的特点【大厂AI课学习笔记】

从本章开始&#xff0c;我把标题的顺序变了一下&#xff0c;大厂AI课笔记&#xff0c;放到后面。因为我发现App上&#xff0c;标题无法显示完全。 从本章开始&#xff0c;要学习深度学习开发任务的全部过程了。 我们将通过小汽车识别赛道上的标志牌&#xff0c;给出检测框&am…

2.21 Qt day2 菜单栏/工具栏/状态栏/浮动窗口、UI界面、信号与槽

思维导图 使用手动连接&#xff0c;将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;…

11、内网安全-横向移动NTLM-Relay重放Responder中继攻击LdapEws

用途&#xff1a;个人学习笔记&#xff0c;有所借鉴&#xff0c;欢迎指正&#xff01; 目录 前提知识&#xff1a; 一、横向移动-NTLM 中继攻击-Relay 重放-SMB 上线 1、CS权限转给MSF: 2、MSF: 3、添加路由&#xff1a; 4、smb_relay重发模块&#xff1a; 5、受控主机输…

良好的 API 安全策略的重要性

根据 Cloudflare 2024 年 API 安全与管理报告&#xff0c;到 2024 年&#xff0c;API 请求占全球动态互联网流量的 57%&#xff0c;这证实 API 是现代软件开发的重要组成部分。但随着多年来它们的采用不断增加&#xff0c;相关的安全挑战也随之增加。 在过去两年中&#xff0c…

备战蓝桥杯---动态规划(应用2(一些十分巧妙的优化dp的手段))

好久不见&#xff0c;甚是想念&#xff0c;最近一直在看过河这道题&#xff08;感觉最近脑子有点宕机QAQ&#xff09;&#xff0c;现在算是有点懂了&#xff0c;打算记录下这道又爱又恨的题。&#xff08;如有错误欢迎大佬帮忙指出&#xff09; 话不多说&#xff0c;直接看题&…

ThreadLocal的一些理解

阅读本篇博客您将了解如下内容&#xff1a; TreadLocal的作用。ThreadLocal的实现原理。ThreadLocal是否会引起内存泄漏&#xff0c;在什么样的条件下引发&#xff0c;如何避免。 1、ThreadLocal的作用 使用线程封闭的指导思想来解决变量共享的并发安全问题&#xff0c;–可以…

跳表是一种什么样的数据结构

跳表是有序集合的底层数据结构&#xff0c;它其实是链表的一种进化体。正常链表是一个接着一个用指针连起来的&#xff0c;但这样查找效率低只有O(n)&#xff0c;为了解决这个问题&#xff0c;提出了跳表&#xff0c;实际上就是增加了高级索引。朴素的跳表指针是单向的并且元素…

FPGA之复选器(2)

8:1 复选器 每个slice具有一个F7AMUX和一个F7BMUX F7AMUX 和 F7BMUX 原语&#xff1a; MUXF7 MUXF7_inst ( .O(O),//Output of MUX to general routing. I0(10), // Input (tie to LUT6 O6 pin) II(II), //Input (tie to LUT6 O6 pin) SS)// Input select to MUX 这两个…

【网站项目】167校园失物招领小程序

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

Linux之用户和用户组的深入了解

目录 一、简介 1.1、用户&#xff1a; 1.2、用户组 1.3、UID和GID 1.3、用户账户分类 查看用户类别 超级用户root(0) 程序用户(1~499) 普通用户(500~65535) 二、用户 2.1、添加新的用户账号&#xff1a;useradd 2.2、删除账号&#xff1a;userdel 有-r与没有-r区别…

人为物累,心为形役

一、人是什么 你是你&#xff0c;他是他&#xff0c;我是我&#xff0c;有什么区别吗&#xff0c;直到自我发现我与你不同时&#xff0c;不同是什么&#xff0c;身体结构&#xff1f;人生经历&#xff1f;所拥有的一切&#xff1f;暂时搁置这些的话&#xff0c;抽离我们的意识…

【关于深度学习的一些资料】

曾梦想执剑走天涯&#xff0c;我是程序猿【AK】 目录 动手学深度学习Awesome Deep LearningTensorFlow Official ModelsPyTorch Image ModelsDeep Reinforcement LearningNeural Style Transfer 动手学深度学习 动手学深度学习 https://zh.d2l.ai/chapter_installation/index.…

4核8G服务器腾讯云和阿里云租用价格对比,2024更新

4核8G云服务器多少钱一年&#xff1f;阿里云ECS服务器u1价格955.58元一年&#xff0c;腾讯云轻量4核8G12M带宽价格是646元15个月&#xff0c;阿腾云atengyun.com整理4核8G云服务器价格表&#xff0c;包括一年费用和1个月收费明细&#xff1a; 云服务器4核8G配置收费价格 阿里…