←新闻详情

Meta Engineering Blog更新于 10月14日 12:28

Meta 在 Instagram Live 直播推流中部署 Media over QUIC(MoQ)

Shipping Media Over QUIC at Meta Scale for Instagram Live Ingest - Engineering at Meta

AI 导读

Meta 已在 Instagram iOS 和 Android 端的直播推流中启用 IETF 开放标准传输协议 Media over QUIC(MoQ),替代内部协议 RUSH。经过数月实验,MoQ 路径在各项流媒体质量与可靠性指标上与 RUSH 持平。MoQ 面向低延迟与弱网场景设计,未来有望统一推流、分发与播放的协议栈。

正文

当前显示原文,中文全文译文尚未就绪。

Meta has begun deploying Media over QUIC (MoQ), an emerging open protocol for real-time video streaming at scale; MoQ will help simplify our protocol stack for live streaming video and enhance overall user experience for live video; We’re sharing how we shipped MoQ on Instagram Live ingest, and what the future looks like from here; This work was also presented at DEMOQED 2026

Instagram Live now uses the open standard transport protocol Media over QUIC (MoQ) for live video ingest on iOS and Android. As a transport designed for both ingest and playback, MoQ gives us the foundation to build toward an architecture that is lower-latency, more resilient on unreliable networks, and more responsive for creators and viewers. It also gives teams across Meta a common foundation for bringing those improvements to future live and interactive experiences without rebuilding them on separate protocol stacks.

The internet has accumulated a rich set of media protocols, each shaped by the problem in front of it. RTMP for ingestion. HLS and DASH for playback. WebRTC for real-time calls. RUSH for the cases that did not fit neatly into any of those. Each was a strong answer for its moment, and together they’ve carried the industry a long way. At Meta, someone who starts a live stream and then makes a voice call on the same app touches three different protocol stacks, each with its own serving infrastructure, monitoring, and operational expertise.

That separation made sense when these experiences were distinct. But as live video, real-time AI, and generative AI creation tools increasingly share the same product surface, the lines between these use cases are starting to blur. A common protocol across ingest, delivery, and playback can reduce the number of custom transports and operating models that engineering teams need to maintain and improve over time.

How MoQ Works

MoQ is an emerging IETF standard that enables low-latency, scalable media delivery (live streaming, real-time communication) over the QUIC transport layer. It’s being developed collaboratively at the IETF, with active participation from Meta, Google, Akamai, Cisco, Cloudflare, and academia.

For nearly a decade, Meta’s live streaming video has run on Reliable Ultra-low-latency Streaming over HTTP (RUSH), an in-house QUIC-based protocol built to move past RTMP. RUSH proved that QUIC could carry live media at scale and was a predecessor to MoQ. The lessons learned from running RUSH in production are part of what shaped our bet on MoQ.

A few properties matter for using MoQ as a single transport across the full latency spectrum:

Of all the surfaces MoQ can serve at Meta, we chose to ship live video ingest first for three reasons:

Instagram Live is our largest-scale test: Instagram Live serves users at Meta scale. Proving MoQ at this scale clears the bar for the most demanding ingest workloads, and is complementary to the low-latency properties that matter for real-time use cases.

RUSH was falling behind the open ecosystem: Live ingest had been running on RUSH, Meta’s pragmatic QUIC-based answer to RTMP. RUSH was stable and performant at scale for nearly a decade, but the move to MoQ shifts development from a protocol operated primarily by Meta to a shared standards effort. Multiple implementers can contribute experience, test interoperability, and improve the specification instead of Meta evolving the transport largely on its own.

Metric parity is a prerequisite for everything else: Proving MoQ can operate at Meta scale for its largest live surface without regression gives us a clean baseline from which to explore, including live playback among others.

Rolling out MoQ on Instagram Live

Replacing the live ingest protocol on Instagram Live meant changing the foundation under every broadcast on the service. We had to do it without regressions visible to creators or viewers, and without coupling the wire-format change to a rewrite of every downstream system.

Replacing a transport protocol in a live production system is hard for reasons that have little to do with the protocol itself — broadcaster apps need to learn it, the backend pipeline expects the old framing, the rollout has to be reversible in seconds, and a non-trivial slice of networks can’t carry the new transport at all.

We tackled these as three constrained problems:

Translation at the edge instead of rewriting the backend. MoQ ingest connections terminate on dedicated edge endpoints, where a translation layer converts MoQ frames to the RUSH format the existing backend already understands. Nothing downstream changes while we swap the client transport. The translator is temporary scaffolding; once MoQ is the only ingest path, the backend will consume MoQ natively and the shim goes away.

Server-side routing for fast ramps. Stream URL generation routes experiment-eligible broadcasts to MoQ-capable endpoints based on experiment-group membership, so phased rollout doesn’t depend on app-version adoption and the experiment can be resized in minutes.

Operational Hurdles

Evolving Specifications: As an active IETF standard, the MoQ draft continued to evolve while we built. We pinned to specific draft versions, kept compatibility shims around for older clients, and contributed improvements back to the IETF working group; Firewalls: UDP/443 is still blocked or rate-limited on a non-trivial slice of enterprise and carrier networks. We pick the transport (TCP or QUIC) at the start of the live stream based on which handshake wins, and go with that for the session; Debugging: QUIC’s encryption hides framing from middleboxes, and from our own packet captures. We built MoQ-aware tracing into the edge so we could see object-level events without decrypting the wire

The Outcome

After months of experimentation on Instagram iOS and Android, we launched MoQ for Instagram Live ingest. The MoQ path matched RUSH across the streaming-quality indicators and reliability measures used for the rollout.

Achieving parity was the target for this phase, and it showed that we could replace a production transport without disrupting creators or viewers. It also gives the next phase a production-tested transport, rollout controls, and observability.

This now becomes the foundation to extend MoQ to an end-to-end architecture for live video delivery and playback. In that target architecture, media can be pushed as it is produced, and partial reliability can let the player skip stale video after loss instead of allowing delay to accumulate. Adaptive bitrate work can trade resolution for continuity as bandwidth changes. We believe these capabilities will form the basis of the next-generation live video architecture for richer, more responsive experiences for creators and viewers.

Instagram Live is the first MoQ workload at Meta. Reaching parity at Instagram Live scale gives us a clean baseline to ask where else a single QUIC-based transport could collapse a set of special-case stacks into one. The directions below are areas we’re exploring:

Finishing the Live Ingest Story: The next logical steps build on top of what we’ve done — extending MoQ across the rest of Meta’s apps using MoQ-native constructs like subgroups to carry audio, video, and metadata on independent streams for better resilience under loss, and adding a standards-based TCP fallback (QMUX). Today, we lean on RUSH’s existing TCP fallback as an expediency for QUIC-blocked networks; standardizing on QMUX removes that dependency so a blocked network no longer forces a second protocol, eventually opening the door to retire RUSH.

Real-time Interactive AI: Conversational and real-time AI surfaces move architectures toward continuous human-to-server communication. A single low-latency, bidirectional transport that carries signaling and media together is a natural fit. Meeting the latency, loss-recovery, and media quality requirements that real-time communication demands is an area we are actively exploring.

Shipping MoQ for Instagram Live makes this one of the largest application usages of MoQ we are aware of in the industry, both by the number of ingest streams and total volume. An open IETF-standard transport is now carrying media at Meta’s scale, and the future it unlocks is exciting.

Interested in learning more? Check out the MoQ Transport IETF draft and our moxygen open-source library.

Share on Facebook (Opens in new window) Facebook; Share on Threads (Opens in new window) Threads; Share on WhatsApp (Opens in new window) WhatsApp; Share on LinkedIn (Opens in new window) LinkedIn; Share on Reddit (Opens in new window) Reddit; Share on X (Opens in new window) X; Share on Bluesky (Opens in new window) Bluesky; Share on Mastodon (Opens in new window) Mastodon; Share on Hacker News (Opens in new window) Hacker News; Email a link to a friend (Opens in new window) Email

来源

Meta Engineering Blog