TQUIC在腾讯的全场景优化实践

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. TQUIC在腾讯的全场 景优化实践 腾讯 / 谭奎
2. 个人介绍 现在 腾讯 •腾讯云CDN、EdgeOne •腾讯应用网关、负载均衡CLB •TQUIC(Tencent QUIC)协议
3. 提纲 • • EdgeOne TQUIC背景介绍 业务场景和挑战 关键内容 • 在线广告营收与网络传输关系 • 用户体验与传输指标如何对应 • • QUIC优化实践案例 效果和应用 • 各种业务场景如何优化 • 落地效果:广告营收、视频播放等
4. EdgeOne TQUIC背景介绍
5. QUIC协议发展和主要技术点  Quick Udp Internet Connection • 主宰互联网web传输至少30年的新一代传输协议HTTP3 • 对标TCP+TLS+HTTP2 • 核心特性:全用户态协议栈、队头阻塞优化、用户态拥塞 控制、连接迁移 连接迁移 0-RTT建连 IETF-QUIC草案 • Chrome灰度 2012 QUIC 初始版本 • 谷歌内部版本 2015 HTTP/3草案 • 发表实验版本 2016 gQUIC+iQUIC 共存 • IETF 进行标准化 2018 RFC 9000发布 • QUIC标准 202 1 2022 RFC 9114发布 • HTTP/3标准
6. 腾讯EdgeOne TQUIC介绍  边缘安全加速平台EdgeOne EdgeOne • 提供性能加速、安全防护、计算的边缘一体服务平台 • 极速性能:覆盖全球数千个边缘节点,通过协议加 速、动态链路加速等构建极致低延迟体验  TQUIC协议加速方案 • 极简接入:提供客户端SDK与服务端节 点全覆盖 • 包含主流协议标准:GQUIC、RFC 9000、RFC 9114等 • 加速能力:高比例0-RTT、多路径传 输、动态路径选择、自适应拥塞控制 TQUIC SDK DNS 静态缓存 动态加速 边缘计算 协议加速 DDoS防护 Web防护 BOT防护 EdgeOne接入 QUIC协议 回源节点 北京节点 协议解析 QUIC协议 TQUIC SDK 贵州节点 监听 就近 回源 加速能力 回源节点 QUIC协议 TQUIC SDK 海外节点 回源节点 客户源服 务器
7. 业务场景和挑战 • 在线广告营收与网络传输关系 • 视频起播慢、卡顿影响用户留存 • 用户体验与传输指标如何对应 • 传统优化方案局限性
8. 业务场景概览  业务场景特点 • 登录耗时 腾讯会议 覆盖场景多:通信、办公、视频、游 戏、金融、云客户 平滑切网 弱网抖动 • 应用协议多样:RTC、XMPP、RTMP、 HTTP、私有二进制 腾讯视频 不同业务对应的痛点多样 首帧卡顿 播放卡顿 • 面临问题多样:秒开成功率低、登录耗时 久、弱网抗性低 视频号 秒开成功率 下载竞速 … 腾讯广告
9. 程序化广告:网络传输对广告营收起关键作用  业务特点 •严格限时:几百ms内完成请求 •流程交互复杂:选单、竞价、  网络传输影响  面临问题 • 实时性要求高、依赖资源多、流程 复杂 • 要求网络请求速度快、成功率高 • 竞价成功率低:超30%最优单超时 • 素材下载失败:影响广告转化效果 • 归因上报失败:无法与广告主结算 素材、曝光、上报 APP 广告SDK ①竞价请求 广告后台 ADX 广告填充率 DSP ③曝光、点击 ②素材请求 公网 落地页 购物、下载、 跳转… ④归因上报 曝光失败 CDN 图片 视频 归因失效 APK 游戏 落地页空白 归因平台 点击 曝光 转化 广告请求 广告展示 广告点击 广告转化 营收
10. 视频播放:观影体验不流畅、黑屏,影响用户留存  点播常见问题  直播常见问题 • 视频起播慢,缓冲时间长, • 直播过程卡顿,黑屏,影响 用户主动退出  痛点:卡顿原因多样,造成因素可能 有多个,难以分析 互动和直播效果 卡顿原因 • 播放过程卡顿,用户更容易 滑走、退出 业务层 传输层 帧率差 初始窗口 编解码性能 RTT 关键帧丢失 丢包 … 带宽低于码率 …
11. 其他场景  实时会议  在线游戏重连  Feed流加载慢 • 进出电梯网络切换, • RTT高、网络拥塞、网络切网 • API拉取失败 wifi质量不稳定 • 图片加载失败
12. 挑战一:传输优化方案存在局限  基于TCP的优化方法  链路瓶颈问题无法解决 • 限制多,落地成本极高 • 解决的问题范围有限 DNS • DNS预热、HTTP-DNS等 • 解决问题范围有限 • 高频率连续丢包,难以通过拥塞算 法调优 TCP Fast Open • 特定内核、双端配合 • 2015 至今,Experimental 阶段 X 2 X X 2 2 1 2 X X X 3 2 2  无法解决假WIFI、网络衰退、网络 切换问题 TLS 握手 • TLS 1.3,0-RTT加速 • 无法彻底优化握手延迟 • 要求加客户端支持 拥塞算法调优 • 内核修改成本高
13. 挑战二:体验问题与传输指标无法直接映射  用户体验只能反映 是否变差  业务层数据量化用于比较问题 严重程度  与传输层指标映射 • 无法与拥塞参数对应 • 无法定位到根本问题 广告超时 例1:登录耗时统计 登录耗 时高 素材失败 链路延迟 初始窗口 链路拥塞 最大窗口 起播慢 播放卡顿 会议中断 游戏重连 直播卡顿 API失败 例2:视频卡顿率 广告成 功率低 视频突 发卡顿 ? 丢包 TLP Time 带宽 RTO Time 拥塞算法 Pacing rate 网络切换 …
14. QUIC优化实践案例 • 业务体验与传输指标映射 • 传输策略动态配置 • 耗时敏感场景如何优化 • 跨链路传输优化 • 视频场景如何优化
15. 细粒度数据上报分析,体验与传输指标映射  业务体验与细粒度传输指标上报 • 关键点:QUIC全用户态,可以获取窗口、 丢包、受限时长、srtt等精细指标 业务体验指标 卡顿次数 首帧耗时 下载超时 …… 请求耗时 Buffer大小 状态码 …… 传输特征参数 (50+) 下载速度 发送窗口大小 流控窗口大小 窗口受限时长 最小RTT 平滑RTT 重传次数 TLP次数 …… ……  案例:成功率与传输指标映射 • 业务体验指标:成功率、请求耗时 • 传输层指标:sRTT、重传包量、 发包量
16. 传输策略动态配置:精确到用户粒度进行传输优化  案例:广告选单请求优化 • 业务失败请求-》丢包数 • 分类,针对性下发优化策略  传输策略动态配置 • 端云协同:同一个客户端,其历史拥塞 信息可以用于指导当前请求 • 自适应拥塞:分类提取[表现较好]会话 的拥塞参数,用于指导下一阶段传输 特征参数/ 传输参数/ 历史信息 数据包 EdgeOne 协议 加速 数据包 握手包 端云协同 分析 Cubic+ 参数A 用户C 轻度丢包 调整重传 定时 … 用户A 用户B TLP/RTO 参数 BBR+ 参数B 竞速策略、 初始窗口 … 拥塞画像 自适应拥塞 离线分析 控制 策略决策 下发 丢包数 1~2 3~4 5~6 7~10 >10 分布比例 14.6% 37.6% 34.3% 6.9% 6.4% 归类 轻度 轻度 中度 中度 重度 中度丢包 拥塞算法 更换 调整重传 发包数 … 重度丢包 换接入点 重试 切换传输 路径 …
17. 耗时敏感场景的优化:背景及0-RTT原理  现状:广告场景请求限时,对耗时敏感 • 短连接请求,连接耗时超过了数据传输耗时 • 使用HTTPS,通常需要2~3次握手  QUIC 0-RTT握手 • 首次握手一般需要1个RTT • 需要会话凭证才能完成0-RTT
18. 耗时敏感场景的优化:0-RTT握手比例低的原因  背景:广告业务初次上线,实际0-RTT比例只有33% • 客户端未存储会话凭证 • 随机生成会话凭证 客户端冷启动 命中多进程 命中多机
19. 耗时敏感场景的优化:高比例0-RTT握手实现 0-RTT比例:33% • 未携带会话凭证 • 命中到不同server  客户端固态存储热更新 • 内存+磁盘存储凭证 • 重启后然后保持0-RTT • 多app间share同一份凭证 普通用户 密钥字符串 定期轮转 接入 EdgeOne 凭证一致性生成  多机同步 • 不依赖统一的凭证,安全 性更高 • 需要考虑实时性和稳定性 收到会话凭证 不一致 0-RTT比例:60%  服务端一致性生成 • 会话凭证无需每次生成 • 基于可轮转密钥的一致性 生成 首次请求, 未携带会话凭证 接入Tquic Sdk + EdgeOne 同步 接入点1 接入点2 一致性 算法 0-RTT比例:96% 拉取、下发 Tencent EdgeOne 协议加速 固态存储 热更新 广告源站 A 广告源站 B 多机共 享凭证 广告源站 C 广告源站 D
20. 实时交互场景优化:跨链路传输背景  场景一:链路质量显著影响广告竞 价、直播、在线游戏等 网络阻塞 不稳定链 路 网络切换  现网某业务分析:部分请求链路质量 差,对实时用户体验有显著影响 假WIFI  场景二:使用会议、直播等,进出电 梯、停车场等;信号衰退 曝光失败 不断重试 重传次数 1~2次 分布比例 51.6% 3~4次 40.1% 请求特征 可以通过TLP/LOSS_DETECT恢 复 需要1~2个RTT重传 5次 1.2% 用户可明显感知卡顿 >5次 6.4% 可能导致退出、断连  实验对照:在WIFI与蜂窝都打开的情况下,蜂窝可 能更快
21. 跨链路传输优化:连接迁移实现平滑跨网  连接迁移客户端:切换网卡进行 数据发包  连接迁移触发:通过系统网络事件 • 对系统版本有依赖 • 跨平台不通用 • 仅网卡切换触发,无法感知弱网  迁移的协议栈视角 思考:连接迁移存在局限性,仅用于 解决当前链路不可用场景  启发式连接迁移 • 跨平台通用 • 弱网感知切换,及时止损
22. 跨链路传输优化:多路径传输背景  MPTCP (2011年发布)无法大规模部署 •严格遵循TCP格式,限制多 •中间设备误伤 •必须在原始通道重传数据 •内核升级成本高,至今未大规模应用  QUIC 多路径 • • • • IETF 标准化中 基于 UDP,中间设备无任何感知 全应用态,实现更灵活 无连接层面的序列号,数据重传可以任意选择路径  业界实现:基于最小RTT调度数据包,效果不 佳
23. 跨链路传输优化:多路径传输MPQUIC实现  多路径调度策略  接入层数据汇聚 •路径异构调度 •面向最终完成时动态调度 •多队列重注入调度 •连接ID一致性路由 •跨运营商转发 •集群间内网转发 数据汇聚 中国电信 TQUIC- SDK WIF I 中国移动 5G/LTE 多路径调 度策略 EdgeOne TQUIC接入 连接ID一 致性路由 广告节点 长连接 七层接入 广告节点 广告节点
24. 视频场景优化:非可靠传输背景  背景:并不是所有数据都需要全可靠传输 I帧丢包导致客户端缺失 9个帧内容,卡顿明显 P帧丢包导致客户端缺失 3个帧内容,卡顿轻微 B帧丢包导致客户端缺失 1个帧内容,卡顿无感  • • • 完全可靠传输在弱网场景的问题 不断重传加剧了链路拥塞程度 CWND 窗口满导致无法发新数据 实时数据不能更快抵达
25. 非可靠传输:降低链路拥塞,保证用户体验  优化手段:部分数据使用非可靠传输,降低对链路影响  • • • QUIC非可靠传输 协议扩展能力(IETF 草案阶段) 丢包无需重传 共享加密连接  TQUIC非可靠传输 • 动态可靠性切换 • 实时流重传比例可配
26. 效果与应用
27. 落地效果:提升广告传输质量,营收显著提升  广告闪屏、插屏、贴片、Feed流、联盟广告竞速等多场景接入 • 营收显著提升 • 广告转换效果提升 • 收敛长尾耗时显著:超500ms耗时大幅减少 广告效果 优化幅度 营收提升 超x%个点 最优单比例 50%->70%+ 在线广告占比 68%->92%
28. 落地效果:提升弱网抗抖动,助力网络平滑切换  会议、直播、游戏等场景接入效果 • 网络切换场景,会话不中断,用户无感知 • 业务登录耗时下降 • 弱网下抗丢包率提升 关键指标 原始 优化后 关键指标 原始 优化后 幅度 抗丢包率 70% 80% 登录耗时 1000ms+ 800ms+ 降低30%+
29. 落地效果:加速视频首播,有效播放时长提升  视频点播、直播场景接入 • 海外视频场景落地,视频观看卡顿、成功 率指标等显著提升 • 优化APP正片观看时长、特定页面播放等 指标 QoE指标 优化幅度 视频核心指标 卡顿率 降低30% 人均正片播放次数 提升0.44% 840ms ->680ms 人均有效播放时长 提升0.36% 跳转页人均播放时长 提升1.77% 发现页人均播放时长 提升2.1% 首帧时长 播放成功率 95.7->97% 提升效果
30. 如何接入腾讯TQUIC  腾讯云边缘安全加速平台EdgeOne • 一键启用HTTP3 • 包含TQUIC-SDK,开启双端加速  腾讯云负载均衡(CLB)
31. Q&A Thanks 欢迎合作交流,一起推动QUIC协议的发展

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.138.0. UTC+08:00, 2024-12-22 02:10
浙ICP备14020137号-1 $Map of visitor$