带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(4)

简介: 带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(4)

带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(3) https://developer.aliyun.com/article/1242688?groupCode=taobaotech




TLS层设计


image.png


QUIC Transport层,对TLS模块有如下依赖:加密握手协商、数据加解密、密钥更新、session resumption、0-RTT、传输参数、ALPN协商。TLS层,则需要依赖底层SSL库,来支撑上述功能。因此,TLS模块存在数据的多样性,以及依赖的多样性,数据流程和代码结构会比较复杂。TLS层需要对这些数据流进行归类整理,从而来简化上下游的依赖关系,降低代码的复杂度。


XQUIC适配了babassl、boringssl两种底层的ssl库,向上提供统一的接口,从而消除了它们之间接口、流程的差异,并抽象为统一的内部数据流程,仅针对不同ssl库提供轻薄的适配层,减少重复适配的代码逻辑,达到降低代码复杂度、提升可维护性的效果。同时XQUIC也提供了编译选项,方便开发者根据自身应用的情况,选择适合自己的依赖库。


XQUIC开源历史


为什么要做XQUIC


image.png


我们从18年左右,开始探索从TCP转向UDP方向,最早是基于GQUIC,主要应用在手淘的图片和短视频等内容分发的场景。在18年底19年初,当时大家有一个共同的判断是要走标准化道路,一方面整个标准化协议的设计和安全性都有更完备的考量,另一方面是因为从网络加速产品角度,私有协议解决方案更难被用户认可。在决定选择标准化道路之后,当时市面上也没有特别成熟并适用于移动端的IETF QUIC协议栈实现,所以手淘就启动了自研XQUIC项目。经过1年半的研发和打磨,于20年的6月份开始全面上线,并在20年8月在手淘核心导购RPC请求场景进行规模化验证。在21年初与CDN IETF QUIC产品实现对接,并在短视频场景上开始逐步应用IETF QUIC技术。在去年的9月份我们实现了IETF QUIC整套协议栈在短视频场景下的规模化应用。之后,我们经历了2021年双十一的考验,XQUIC的性能和稳定性都有了很好的验证,因此在今年的1月7号,我们完成XQUIC的对外开源,后续也将持续更新迭代开源版本。



带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(5) https://developer.aliyun.com/article/1242683?groupCode=taobaotech

相关文章
|
缓存 算法 网络协议
面向5G的阿里自研标准化协议库XQUIC
XQUIC是阿里巴巴淘系架构团队自研的IETF QUIC标准化协议库实现,在手机淘宝上进行了广泛的应用,并在多个不同类型的业务场景下取得明显的效果提升,为手机淘宝APP的用户带来丝般顺滑的网络体验: 在RPC请求场景,网络耗时降低15% 在直播高峰期场景,卡顿率降低30%、秒开率提升2% 在短视频场景,卡顿率降低20%
4735 1
面向5G的阿里自研标准化协议库XQUIC
EMQ
|
网络协议 安全 物联网
QUIC 协议:特性、应用场景及其对物联网/车联网的影响
了解 QUIC 协议的特性优势与应用场景,以及新一代物联网传输协议 MQTT over QUIC 如何为各类消息传输场景带来提升。
EMQ
1215 22
QUIC 协议:特性、应用场景及其对物联网/车联网的影响
|
监控 Windows
Windows系统中Wireshark抓包工具的安装使用
Windows系统中Wireshark抓包工具的安装使用
925 0
|
安全 大数据 Linux
大数据技术之Clickhouse---入门篇---安装
大数据技术之Clickhouse---入门篇---安装
|
Docker 容器
docker如何在容器外执行容器内命令
有时候我们想执行某个容器的某条命令,但又不想进入容器内。那该怎么办? 所以就有一种办法,我们直接在容器外执行容器内的命令,来进行一些容器内的操作。
2868 0
docker如何在容器外执行容器内命令
|
2月前
|
人工智能 安全 架构师
开放、协同,2025 云栖大会“操作系统开源与 AI 进化分论坛”精彩回顾
唯有通过生态开放与技术共享,才能加速 AI 技术的普惠与产业化落地。
|
2月前
|
算法 网络协议 Ubuntu
启用BBR拥塞控制算法
BBR是谷歌开发的TCP拥塞控制算法,能显著提升高延迟、轻微丢包网络下的传输性能。本文介绍在Linux系统上启用和验证BBR的步骤,包括检查内核版本、修改sysctl配置、应用并验证设置,帮助用户优化网络传输速度。
462 0
|
算法 Linux 网络安全
带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(2)
带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(2)
325 0
|
达摩院 安全 数据安全/隐私保护
带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(1)
带你读《2022技术人的百宝黑皮书》——淘宝自研标准化协议库XQUIC正式开源!(1)
357 0
|
运维 负载均衡 Kubernetes
云原生时代,如何从 0 到 1 构建 K8s 容器平台的 LB(Nginx)负载均衡体系
通过本文可以对 Kubernetes 容器平台的 LB(Nginx)负载均衡了然于心,并且可以快速深入建设 Kubernetes LB(Nginx)负载均衡体系。还可以了解到,一个中大型公司,是如何从 0 到 1 来构建大规模 Kubernetes 容器平台的 LB(Nginx)负载均衡体系的一些非常宝贵的实战经验。
云原生时代,如何从 0 到 1 构建 K8s 容器平台的 LB(Nginx)负载均衡体系