写点什么

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

  • 2022-06-08
  • 本文字数:761 字

    阅读完需:约 2 分钟

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

6 月 6 日,IETF QUIC 和 HTTP 工作组成员 Robin Marx 宣布,经过 5 年的努力,HTTP/3 被标准化为 RFC 9114,这是 HTTP 超文本传输协议的第三个主要版本。同时,HTTP/2 也更新为 RFC 9113标准,HTTP/1.1 和通用 HTTP 语义和缓存概念在 RFC 9110-9112 中也得到了加强。

 

HTTP/3 采用了谷歌多年探索的基于 UDP 的 QUIC 协议,原名叫 HTTP-over-QUIC,在 2018 年被 IETF 批准更名为 HTTP/3。目前,Cloudflare、Google Chrome、Firefox Nightly 均表示支持 HTTP/3。

 

HTTP/1.1 使用空格分隔的文本字段来传递 HTTP 消息。虽然这些交换是人类可读的,但使用空格进行消息格式化会导致解析复杂性和对变体行为的过度容忍。HTTP/1.1 不包含多路复用层,因此经常使用多个 TCP 连接来并行处理请求。然而,这对拥塞控制和网络效率有负面影响。

 

到了HTTP/2,引入了二进制帧和多路复用层,在不修改传输层的情况下改善了延迟。但是,由于 HTTP/2 多路复用的并行特性对 TCP 的丢失恢复机制不可见,因此丢失或重新排序的数据包会导致所有活动事务都经历停顿,无论该事务是否直接受到丢失数据包的影响。

 

为了解决 HTTP/2 中存在的队头阻塞问题,HTTP/3 不再基于 TCP 建立,而是基于 Google 提出基于 UDP 实现的开源协议 QUIC,使用 stream 进一步扩展了 HTTP/2 的多路复用,并在阻塞控制、头部压缩等方面做了提升。

 

QUIC 是一种通用传输协议,与 TCP 非常相似,除了 HTTP 和网页加载之外,它还可以并且将用于更多场景,例如 DNS、SSH、SMB、RTP 等都可以在 QUIC 上运行。

 

那么,QUIC 究竟是如何改进 TCP 的呢?根据 Marx 介绍,主要可归结为四个方面:QUIC 与 TLS 深度集成、QUIC 支持多个独立的字节流、QUIC 使用连接 ID、QUIC 使用帧(frame)。为了更容易部署, QUIC 运行在 UDP 协议之上(大多数网络设备也支持),默认情况下几乎完全加密并使用灵活的帧机制。

 

2022-06-08 18:157364

评论

发布
暂无评论
发现更多内容

flutter如何从TextWidget复制文本【Flutter专题17】

坚果

flutter 28天写作 12月日更

自动驾驶车辆控制 最终项目作业 实现分析 易筋 ARTS 打卡 Week 78

John(易筋)

ARTS 打卡计划

架构训练营 -- 模块一

LJK

架构训练营

大厂算法面试之leetcode精讲20.字符串

全栈潇晨

算法 LeetCode

音视频学习--VLC优化

Fenngton

音视频 RTSP 签约计划第二季

DDD领域驱动设计落地实践系列:工程结构分层

慕枫技术笔记

后端 架构师 签约计划第二季

JVM类加载机制

Ayue、

JVM 技术专题合集

『新华报』秒速飞艇开奖结果官网[手机乐乎]

天马行空

秒速飞艇开奖结果官网

react源码解析14.手写hooks

buchila11

React React Hooks

音视频学习--新codec适配和兼容

Fenngton

音视频 视频编解码 签约计划第二季

Java面向对象精讲【上】

XiaoLin_Java

面向对象 java基础 12月日更

纯css实现117个Loading效果(上)

德育处主任

CSS 大前端 纯CSS 特效

Java应用线上事故排查实战

JavaEdge

内容合集 签约计划第二季

【Dart 专题】Map 集合小结~

阿策小和尚

28天写作 0 基础学习 Flutter Android 小菜鸟 12月日更

react源码解析13.hooks源码

buchila11

React React Hooks

音视频学习--X264码率控制起航

Fenngton

音视频 视频编解码 签约计划第二季

一次redis节点宕机引发的后续操作--部署哨兵集群

为自己带盐

redis redis哨兵模式 28天写作 签约计划第二季 12月日更

「2021年11月复盘」买了个小太阳很暖和

宋天伦

复盘

架构训练营 Week1 学习总结

红莲疾风

「架构实战营」

JVM分代回收机制和垃圾回收算法

Ayue、

JVM 技术专题合集

音视频学习--SRTP优化

Fenngton

音视频 传输协议 签约计划第二季

『新华报』赛车飞艇群[手机乐乎]

天马行空

赛车飞艇群

RocketMQ存储设计到底强在哪?

慕枫技术笔记

架构 后端 28天写作 12月日更

23种设计模式第一种——单例模式

李子捌

28天写作 12月日更

纯css实现117个Loading效果(中)

德育处主任

CSS css3 大前端 纯CSS

聊聊 Kafka: Kafka 的基础架构

老周聊架构

签约计划第二季

日志归一管理的一种解决方案

为自己带盐

redis elasticsearch 28天写作 签约计划第二季 12月日更

音视频学习--日常开发踩坑系列(1)

Fenngton

音视频 传输协议 签约计划第二季

『新华报』不建议强制上岸[手机乐乎]

天马行空

不建议强制上岸

大厂算法面试之leetcode精讲19.数组

全栈潇晨

算法 LeetCode

看动画学算法之:二叉搜索树BST

程序那些事

数据结构 算法 程序那些事 12月日更

基于QUIC协议的HTTP/3正式发布_文化 & 方法_褚杏娟_InfoQ精选文章