内容提要
Meta 在 Instagram Live 推流中用基于 QUIC 的开放标准协议 MoQ 替代自研 RUSH,支持低延迟、缓存分发和自适应码率。经数月实验,各项质量与可靠性指标与 RUSH 持平,成为业界最大规模 MoQ 应用之一,未来将扩展至更多直播与实时 AI 场景。
延伸解读
从自研 RUSH 到开放标准 MoQ 的迁移逻辑
Meta 将 Instagram Live 推流从自研 RUSH 迁移到基于 QUIC 的开放标准 MoQ,核心动机是收敛协议栈。RUSH 虽稳定运行近十年,但维护成本高且生态封闭。MoQ 由 IETF 协作推进,Meta、Google、Akamai 等共同参与,转向 MoQ 意味着开发重心从私有协议转向共享标准,可借助多实现者贡献经验、测试互操作性,减少长期维护定制协议的数量与运营模式。
边缘转换层:降低迁移风险的关键设计
替换直播推流协议的最大难点不在协议本身,而在下游系统。Meta 的应对策略是在边缘端点终止 MoQ 连接,由转换层将 MoQ 帧转为后端已理解的 RUSH 格式,使下游保持不变。这层转换器是临时脚手架,待 MoQ 成为唯一推流路径后移除。同时,流 URL 生成根据实验分组路由到 MoQ 端点,使灰度发布不依赖 App 版本采用率,实验规模可快速调整。
运维挑战:规范演进、防火墙与调试
MoQ 作为活跃的 IETF 标准,草案在构建期间持续变化,Meta 锁定特定草案版本并为旧客户端保留兼容垫片。网络层面,部分企业网与运营商仍阻断或限速 UDP/443,Meta 在直播开始时根据 TCP 与 QUIC 哪个握手先成功选择传输方式,并在会话期间沿用。调试方面,QUIC 加密使分帧对中间盒不可见,Meta 在边缘构建 MoQ 感知追踪,无需解密即可观察对象级事件。
指标持平的意义与后续扩展方向
经过数月实验,MoQ 路径在 Instagram Live 推流上的各项流媒体质量与可靠性指标均与 RUSH 持平。达到持平是这一阶段的目标,证明能在不打扰创作者与观众的前提下替换生产传输协议。这为下一阶段奠定基础:将 MoQ 扩展至 Meta 其余 App,利用 subgroup 等原生结构分离音视频与元数据流,并加入标准化 TCP 回退 QMUX,最终为下线 RUSH 打开大门。
Q&A
Meta 在 Instagram Live 推流中用什么协议替代了 RUSH?
Meta 使用基于 QUIC 的开放标准协议 Media over QUIC(MoQ)替代了自研的 RUSH 协议,用于 Instagram Live 的直播视频推流。
MoQ 协议的核心抽象是什么?它是如何工作的?
MoQ 的核心抽象是 Track(轨道),即一条可寻址的媒体对象流。发布者推入对象,订阅者通过一组中继接收。中继会缓存并转发对象,但不解析媒体载荷,只需理解 MoQ 的封装格式与投递元数据。
为什么 Meta 选择 Instagram Live 作为 MoQ 的首个规模化部署场景?
原因有三:Instagram Live 是 Meta 最大规模的试验场,能验证 MoQ 在最严苛推流负载下的表现;RUSH 正在落后于开放生态,转向 MoQ 可将开发重心转移到共享标准制定;指标持平是其他一切的前提,证明 MoQ 能在 Meta 体量下服务最大直播场景且不出现回退。
在 Instagram Live 上部署 MoQ 时,Meta 如何解决后端兼容问题?
Meta 在边缘做转换,而不是重写后端。MoQ 推流连接在专用的边缘端点终止,由转换层把 MoQ 帧转换为既往后端理解的 RUSH 格式,从而在切换客户端传输的同时保持下游不变。这个转换器只是临时脚手架,未来会被移除。
MoQ 部署过程中遇到了哪些运维层面的障碍?
主要障碍包括:规范仍在演进,MoQ 草案持续变化,Meta 锁定版本并保留兼容垫片;防火墙问题,部分网络阻断 UDP/443,Meta 根据 TCP 与 QUIC 握手成功情况选择传输方式;调试困难,QUIC 加密使分帧格式不可见,Meta 在边缘构建了能识别 MoQ 的追踪能力。
MoQ 在 Instagram Live 上的部署结果如何?
经过数月实验,MoQ 在 Instagram iOS 与 Android 上为 Live 推流上线。MoQ 路径在灰度期间所用的各项流媒体质量指标与可靠性指标上,都与 RUSH 持平。这证明了能够在不打扰创作者与观众的前提下替换生产传输协议。
Meta 未来计划将 MoQ 扩展到哪些方向?
Meta 计划将 MoQ 扩展到更多直播与实时 AI 场景,包括:把 MoQ 扩展到 Meta 其余 App,使用 MoQ 原生结构承载音频、视频与元数据,并加入基于标准的 TCP 回退(QMUX);探索实时交互 AI,利用低延迟双向传输满足实时通信需求。