AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

HTTP/3 为什么正迅速吞噬世界?

作者 | Robin Marx 

  • 2023-11-12
    北京
  • 本文字数:2263 字

    阅读完需:约 7 分钟

大小:1.18M时长:06:54
HTTP/3为什么正迅速吞噬世界?

超文本传输协议(HTTP)作为互联网的基石,一直在网页加载、视频流传输、应用获取数据等方方面面发挥重要作用。

 

去年,负责定义互联网技术的互联网工程任务组(IETF)将该协议的最新版本 HTTP/3 定为标准。在此之后,HTTP.3 及相关 QUIC 协议在公共网络上迅速普及。尽管不同来源和测量方法给出的结果略有差别,但目前普遍认为全球 19%到 50%的 Web 服务器和网络均已支持 HTTP/3。

 

由于这些新协议得到谷歌和 Meta 等大公司的广泛应用,我们认为,当前互联网流量中已经有很大一部分在使用 HTTP/3。

 

在本篇文章中,我将介绍一些背景信息,介绍 HTTP/3 解决了哪些问题、它是如何执行的、为什么能够得到迅速普及,以及 HTTP/3 仍然面临哪些有待克服的障碍。

 

我们为什么需要 HTTP/3?

 

网络协议所描述的,是数据如何在网络上的两个实体之间(通常是用户设备和 Web 服务器)进行通信。因为市场上有多家公司在为网络开发软件,因此通信协议必须确保标准化,以便所有软件之间都可以“互操作”。换句话说,各软件能够在遵循相同规则的基础之上相互理解。

 

在实践当中,我们往往不会使用单一某种协议,而是同时使用多种协议的组合。其中各项协议都有自己的作用和规则(详见图一)。这样的设计是为了保障灵活性和可复用性——无论大家使用的是 Wi-Fi、固网还是 4G/5G,都能使用完全相同的 HTTP 逻辑。



图 1 HTTP/2 与 HTTP/3 的协议栈,如何将多项协议组合起来以提供完整的互联网功能

 

不少初期互联网协议早在上世纪 80、90 年代就已经被定为标准,这意味着它们在设计上考虑的是几十年前的需求和限制。虽然其中一些协议经受住了时间的考验,但也有不少已经明显有些过时了。大多数问题倒是可以通过变通和一些小技巧进行解决,可也有一些到了不得不变的时候。其中最典型的就是传输控制协议(TCP),它的作用是确保数据能够可靠地在互联网上往来传输。

 

为什么说 TCP 已经不适合如今的 Web

 

HTTP/1.1 和 HTTP/2 正常运作的前提,就是以 TCP 为基础。具体来讲,在客户端和服务器间交换 HTTP 请求/响应之前,必须先建立起 TCP 连接。

 

随着时间推移,人们做出了不少努力来更新 TCP,并解决其中一些影响效率的问题——例如,TCP 会将网页视为单个文件,而非由数百个独立文件构成的集合。虽然部分更新已经取得成功,但多数影响较大的更新(例如 TCP 多路径和 TCP Fast Open)花了近十年时间才在公共互联网上实际落地。

 

革新 TCP 的主要挑战,在于互联网上成千上万的设备各有各的 TCP 协议实现。除了大家第一时间能想到的手机、笔记本电脑和服务器,还有路由器、防火墙、负载均衡器等其他类型的“中间装置”。也就是说,如果我们想要更新 TCP,就必须等待这些设备中的大部分都对自己的协议实现做更新,而这明显是个需要耗时数年的艰辛过程。

 

QUIC 解决方案

 

面对这个几乎无解的问题,最靠谱的办法反而是直接出台一种全新方案、直接替换掉 TCP。这套替代方案就是 QUIC 协议,但也有不少人半开玩笑地将其称为 TCP 2.0。这个昵称其实并无不妥,因为 QUIC 中确实包含许多与 TCP 相同的高级功能,只是做了一系列关键性调整。

 

其中最大的变化就是 QUIC 与传输层安全(TLS)协议的深度集成。TLS 负责加密网络上的敏感数据,也就是 HTTPS 中的 S(安全)。在 TCP 协议下,TLS 仅加密实际 HTTP 数据(参见图二);对于 QUIC,TLS 还会对 QUIC 协议本身的大部分内容进行加密。也就是说,TCP 当中对所有中间件均可见(且可更改)的元数据(例如数据包编号、连接关闭信号等),在现在的 QUIC 中将仅供客户端和服务器使用。

 


图 2 TCP+TLS 与 QUIC 之间的加密差异。可以看到,QUIC 中被加密的不仅仅是 HTTP 数据

 

此外,由于 QUIC 的加密程度更高,所以对它的变更或新功能添加要比 TCP 简单得多——即只需要更新客户端和服务器,因为中间件无论如何也无法解密元数据。这就让 QUIC 成为一种面向未来的协议,能帮助我们快速解决种种新兴挑战。

 

当然,这种额外的加密机制也有助于增强新协议的总体安全性和隐私性。虽然 TCP+TLS 非常适合保护信用卡或电子邮件内容等个人敏感数据,但却仍容易受到复杂(隐私)攻击的影响。而且随着 AI 技术的快速发展,这些攻击的实施门槛也越来越低。通过进一步加密此类元数据,QUIC 协议无疑能够更好地应对精心策划的恶意攻击。

 

QUIC 还包含诸多其他与安全相关的功能,包括防御分布式拒绝服务(DDoS)攻击、以及防放大和 RETRY 数据包等功能。

 

最后,与 TCP 相比,QUIC 还带来了大量效率和性能改进,包括更快的连接握手(参见图三)、消除“队头阻塞”问题、更好的数据包丢失检测/恢复,以及处理用户切换网络的方法(我们将在后续文章中具体介绍)。



图 3 QUIC 在设置上拥有更快的连接速度,因为它能将“传输”三向握手与 TLS 加密会话相结合,性能优于 TCP+TLS 中的两个独立过程

 

我们真正需要的并不是 HTTP/3,而是 QUIC

 

最初,我们也曾尝试保留 HTTP/2 并进行增量式调整,希望能在底层用上 QUIC(毕竟当初保留这么多协作元素和可复用协议,意义也就在于此)。但很明显,QUIC 与 TCP 之间存在着巨大差异,HTTP/2 根本无法全部兼容。因此,互联网工程任务组才决定专门为 QUIC 制作新的 HTTP 版本,这就是现在的 HTTP/3。

 

HTTP/3 与 HTTP/2 几乎相同,二者的主要区别就体现在 QUIC/TCP 之上各项功能的技术实现。但由于 HTTP/3 能够使用 QUIC 的全部新功能,因此在加载网页和流媒体视频时将带来更好的性能表现。也正是这个优势,让 HTTP/3 得到了市场的广泛认可和快速接纳。

 

原文链接:


https://blog.apnic.net/2023/09/25/why-http-3-is-eating-the-world/


相关阅读:


HTTP/3 发布了,我们来谈谈 HTTP/3

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

从 HTTP 到 HTTP/3 的发展简史

HTTP/3 与 HTTP/2 的性能对比

2023-11-12 08:007674

评论 1 条评论

发布
用户头像
真正推进很难吧,毕竟大量的基建(路由器之类的)都是支持tcp类型的,QUIC道阻且长
2023-11-23 10:44 · 北京
回复
没有更多了
发现更多内容

YashanDB RegExp语法

YashanDB

数据库 yashandb

迈向云原生:理想汽车 OLAP 引擎变革之路

镜舟科技

大数据 云原生 OLAP 镜舟数据库 理想汽车

RAG 调优指南:Spring AI Alibaba 模块化 RAG 原理与使用

阿里巴巴云原生

阿里云 云原生 云原生微服务

1688商品列表数据接口(1688.item_search)

tbapi

1688商品列表接口 1688API 1688商品数据采集 1688数据采集

百观科技基于阿里云 EMR 的数据湖实践分享

阿里云大数据AI技术

数据库 大数据 OSS OLAP EMR

音乐NFT软件项目的性能优化

北京木奇移动技术有限公司

软件外包公司 音乐NFT 体育NFT

感受一下『迅雷』的面试强度

王中阳Go

Go 面试 后端 迅雷

如何快速搭建自己的个人网站?Hexo、VuePress 和 WordPress 大比拼!

程序员晚枫

后勤采购管理系统(源码+文档+讲解+演示)

深圳亥时科技

新疆中泰携手用友开启智慧司库建设新征程

用友BIP

智能体 数智化 用友BIP 智慧司库建设

深入理解 StarRocks Bitmap 索引和 Bitmap 去重

镜舟科技

StarRocks Bitmap 索引 Bitmap 去重 高基数列 精确去重

百度推出端到端语音大模型,支持方言、可打断、电话语音成本砍半;雷神 AI 眼镜发布:语音助理+摄像头,1799 元起丨日报

声网

a16z合伙人:语音交互将成为AI应用公司最强大的突破口之一,巨头们在B2C市场已落后太多丨Voice Agent 学习笔记

声网

全流程覆盖,闭环管理:中烟创新案卷评审评查系统实现精细化管理

中烟创新

1688API系列:1688图片搜索拍立淘接口指南

tbapi

1688图片搜索接口 1688拍立淘接口 1688图片识别接口 1688图片搜索API

西电整体替换SAP!用友BIP支撑装备制造业务运营和成本精细化管控升级!

用友BIP

智能体 数智化 用友BIP 一体化

原生APP开发的性能优势

北京木奇移动技术有限公司

软件外包公司 原生APP开发 APP外包公司

人工智能中的RAG技术在测试领域的探索

测试人

人工智能

macOS Sonoma 14.7.5 (23H527) Boot ISO 原版可引导镜像下载

sysin

macos

电商新趋势,从“真人一键克隆”数字人进军直播间开始

脑极体

AI

新疆中泰携手用友开启智慧司库建设新征程

用友智能财务

财务 会计

Cursor搭配专业编程显示器:点燃你的代码激情

默语

从“新农人”到“买菜团长”,拼多多激发电商就业生态二次繁荣

Alter

SLS 重磅升级:超大规模数据实现完全精确分析

阿里巴巴云原生

阿里云 云原生 日志服务

事务处理对持久统计信息自动收集的影响

GreatSQL

新晋 IoTDB Committer 经验谈:开源代码为用户创造价值

Apache IoTDB

后 Web时代:AI 代理驱动的互联网

PowerVerse

智能合约 去中心化 web3 AI‘’

Apache SeaTunnel MCP Server:让AI成为你的ETL助手

Apache SeaTunnel

macOS Sequoia 15.4 (24E248) Boot ISO 原版可引导镜像下载

sysin

macos

「DeepSeek-V3 技术解析」:无辅助损失函数的负载均衡

Baihai IDP

AI LLMs Baihai IDP MoE 混合专家模型

音乐 NFT 项目的上线流程

北京木奇移动技术有限公司

区块链技术 软件外包公司 音乐NFT

HTTP/3为什么正迅速吞噬世界?_架构/框架_InfoQ精选文章