1. IETF成立MoQ工作组:2022年,IETF成立了一个针对QUIC上媒体传输(MoQ)的工作组,这是一个可能改变直播、实时协作、游戏等媒体传输方式的解决方案。
  2. MoQ定义:MoQ旨在创建一种新协议,允许流媒体服务的低延迟和实时媒体会议的高扩展性。
  3. MoQ工作原理:MoQ使用安装在数据分发链中的媒体中继作为缓存机制,支持多种媒体格式和低延迟的端到端加密传输。
  4. MoQ的优势:MoQ可以减少数据包丢失导致的重缓冲问题,通过中继快速恢复错误,提高用户体验。
  5. MoQ的潜在应用:MoQ不仅可以改善媒体传输,还可以用于物联网、推送通知、5G网络和文本消息协议等多种场景。
  6. MoQ对行业的益处:MoQ将为实时协作应用和直播行业带来好处,解决低延迟、高质量和广泛覆盖的问题。
  7. MoQ的现状与未来:MoQ的核心规范正在逐步成熟,工作组正在专注于构建在其之上的媒体流格式。

在2022年,互联网工程任务组(IETF)为基于QUIC的媒体传输(MoQ)成立了一个工作组——这是一种媒体传输解决方案,有可能彻底改变直播、实时协作、游戏等场景下媒体的发送和接收方式。

对于那些不熟悉IETF这项工作的人,这里有一个入门指南,从MoQ是什么,到它的工作原理,以及它如何彻底改变媒体传输的游戏规则。

MoQ是什么? 如今互联网上有许多媒体流服务,比如Netflix和YouTube。我们还有像Webex和Zoom这样的服务,它们允许低延迟视频快速流向一群用户。

然而,允许媒体扩展到数百万观众的服务具有高延迟,思科的CTO/Fellow以及MoQ工作组成员Cullen Jennings解释说。

MoQ工作组将在布里斯班的IETF 119会议上会面,查看议程以获取更多信息。

“与此同时,具有低延迟的视频会议服务无法以成本效益的方式扩展,”他补充说。

“MoQ试图做的是构建一种新协议,允许流媒体服务的低延迟和实时媒体会议的更高扩展性。我们希望将这两者的优势结合起来,创造一套技术,取代这两种现有技术的孤立。MoQ可以将用户产生的媒体内容流式传输到云端,然后从云端获取该媒体并分发给许多观众。”

根据MoQ工作组章程,MoQ是一种“用于媒体摄取和分发的简单低延迟媒体传输解决方案”。它包括一个单一协议,用于发送和接收高质量媒体(包括音频、视频和定时元数据,如闭路字幕和提示点),以提供超低延迟给最终用户。

该发布/订阅协议支持多种媒体格式,指示正在发送的媒体和媒体格式的互操作性,基于变化的编解码速率或选择的媒体编码/质量的速率适应策略,以及对缓存友好的机制。

为了实现低延迟和高质量,该协议与数据分发链中安装的媒体中继一起工作。这些中继作为缓存机制,存储媒体副本,然后根据需要分发。

正如其名称所示,MoQ建立在QUIC机制(QUIC流和/或QUIC数据报)之上,并且可以在原始QUIC或WebTransport上使用。使用该协议发送和接收的所有媒体也可以使用标准QUIC在传输层进行加密,甚至可以进行端到端加密。

“MoQ受到许多现有设计模式的启发,”Jennings说。

“它使用了许多关于实时媒体的知识,从RTP中学习,它从HLS/DASH和HTTP CDN中获取了扩展思想,在某些方面,它可以被视为应用层多播覆盖以及应用层命名数据网络。它通过订阅命名数据、缓存和实时向寻找命名数据的订阅者发布,使其成为一个非常灵活的架构,适用于互联网上许多用途,不仅仅是媒体。”

它如何工作? 要理解MoQ如何彻底改变媒体传输,重要的是看看没有它时媒体的传输方式。例如,当一个直播者通过YouTube Live发送内容时,它从发布者到单个观众的旅程看起来像图1。

图1 - 内容旅程概述。 图1 - 内容旅程概述。 在互联网上直播的视频可以从发布者传输到基于云的视频服务,到内容分发网络(CDN),然后通过ISP到达用户的家用Wi-Fi,最后到达用户的设备应用。

数据包在传输过程中不可避免地会丢失,这导致视频和音频重缓冲和断断续续。为了缓解这个问题,用户的视频流应用程序会向视频流服务发送另一个请求以获取丢失的数据包。

请求必须从用户传输到CDN,然后丢失的数据包再次传输回用户。

我们知道这可能是数千英里的旅程,这就是导致延迟问题的原因。而且,用户的家用连接可能质量不佳,延迟可能会加剧。

这就是安装中继的地方。MoQ允许媒体通过多个中继流动,这可以帮助将数据“扇出”到许多下游用户。它们还形成了重新请求丢失数据的点。

中继可以放置在数据传输路线的任何位置,包括CDN级别、5G网络内,甚至在用户的本地Wi-Fi上(这不是一个新想法;HTTP长期以来已经实现了同样的事情,但MoQ将这个想法引入到了低延迟媒体中)。

随着媒体的传输,数据的副本存储在这些中继中。当数据包丢失时,用户不必发送必须行驶数千英里的请求,它可能只需要行驶几百英里到当地的5G网络,或者更好的是,只需几英尺到用户的本地Wi-Fi路由器。这意味着MoQ可以如此快速地启用错误恢复,以至于我们不必等待数据的播放。这意味着我们经历的延迟更少,从而带来更好的用户体验。

中继还有助于数据有效扩展,因为它们被设计为需要最少的数据处理。如果许多下游客户端正在接收相同的媒体,中继只需要接收一份媒体,然后将其发送给下游的许多客户端。在某些情况下,这也有助于减少带宽和互联网的总体功耗。

MoQ还能实现什么其他酷炫的事情?

  1. 如上部分所述,MoQ可以启用扇出,意味着一份媒体可以分发数百次,甚至数千次,而不是许多副本通过网络传输。

例如,想象一下在像思科这样的大公司的一个分支机构,同一建筑物中的100人可能在同一个电话会议上。按照现在的情况,该电话会议的内容必须传输100次,到达每个用户的设备。

有了MoQ,安装在那个当地分支机构的媒体中继将启用扇出,意味着电话会议的内容只传输一次。副本存储在本地中继中,然后在分支机构内根据需要分发多次。

  1. 有了MoQ,媒体内容可以进行端到端加密。但即使在这种情况下,媒体中继仍然可以访问像用于缓存的优先级字段这样的信息,这可以揭示有助于媒体做出转发决策的有用信息。

所以如果网络拥塞,媒体中继可以决定是否需要丢弃或延迟某些媒体。

  1. MoQ还创造了另一个问题的解决方案。不同的应用程序有不同的延迟需求,MoQ将启用“可调延迟”,Akamai Technologies的MoQ工作组成员和云技术集团首席架构师Will Law解释说。

“Akamai Technologies的WebRTC堆栈仅针对实时播放进行优化,对于近实时和点播播放来说,使用它很困难,”他说。

“分段格式(HLS、DASH、HESP)可以在一到几秒的延迟范围内进行大规模操作,但不适合实时。

“MoQ正在建设中,以便它可以在所有三种延迟范围内使用——实时、交互式和点播。作为点播播放(你可以将其概念化为无限延迟)消费的视频量远远超过实时播放。然而,高峰流量是由实时消费驱动的。因此,一个可以将延迟调整到应用程序需求的格式特别有用。”

为什么是MoQ?为什么现在? 在过去的22年里,Law一直参与流媒体,“一个我们看到互联网传输媒体的兴起和HTTP传输以及自适应比特率流媒体的出现期,”他说。

过去十年,我们看到使用的方法和协议有所改进,例如HTTP/3,“但在提高QoE、减少重缓冲和降低延迟方面进展是渐进的。”

Law是万维网联盟WebTransport工作组的联合主席,他指出WebTransport,“提供了客户端和服务器之间的高效连接,但它需要应用程序赋予它实用性。”

“在那个项目早期,我很快就意识到主要的候选应用程序是视频传输,特别是实时视频传输。各种公司正在独立地尝试利用QUIC通过不同于HTTP的传输进行媒体传输。”

这就是为什么他在2022年加入了MoQ的Birds of a Feather讨论,并从那时起一直参与其中。

拼图中一个强大的部分是可以使用单一协议的事实,他补充说。

“今天,媒体传输是贡献、实时分发和非实时以及点播的不同协议和格式的混合体,”他说。

每种协议都有自己的界限、复杂性和延迟,他指出。

“在整个分发链的元素(贡献、处理、分发)中拥有单一的格式和协议可以提高效率,减少错误和转换成本,并提高整体性能。”

Luke Curley是Discord的软件工程师,也是MoQ工作组成员。当他在Twitch担任工程师时,他发现了一个比当前协议允许的更好的用户体验的需求。

“我们遇到了HLS的延迟界限,WebRTC实际上是浏览器中唯一可用的选项,”他回忆说。“然而,用户体验对我们的用例来说还不够好,所以我不得不寻找其他的东西。”

他开始调查QUIC和QuicTransport起源试验,这表明“浏览器支持是一个真正的可能性,”他说。

“我们对此下注,它运作得很好,不久之后,我们就在生产中运行了Warp。我们意识到,我们必须倡导这些新标准(WebTransport、WebCodecs),否则它们可能永远不会实现。”

Curley说,MoQ超越了迄今为止其他协议所能提供的东西。

“WebRTC是一个拥有整个管道的庞然大物——捕获、编码、传输、接收、解码和渲染。如果你想克隆一个Google Meets,那么WebRTC做得非常出色。然而,如果你想进行哪怕是最微小的修改,那么WebRTC就太脆弱了。它是一个非常狭窄定义的黑匣子,不允许任何实验或不同的用例。

“MoQ是一种退化,依赖于单独的网络技术。QUIC通过WebTransport提供网络,WebCodecs提供编码/解码,应用程序可以自由选择如何捕获/渲染。你的应用程序实际上负责用户体验,这当然涉及更多的工作,但创造了巨大的机会。

“而且关键的是,有一个明确的中继层,以MoQTransport的形式存在。它是一个为CDN和大规模扇出设计的通用实时发布/订阅框架。构建一个WebRTC CDN因为其与会议用例的耦合而相当痛苦,而MoQ旨在提供一种更通用的体验,更像是HTTP(但实时)。”

不同行业将如何从MoQ中受益? 两个行业将从MoQ中大大受益——像Webex、Zoom、Microsoft Teams等实时协作应用程序,以及直播,Jennings解释说。

“我们有两个汇聚的问题,”他说。

“实时协作应用程序想要低延迟、高质量和更广泛的覆盖。直播行业希望降低延迟以允许实时交互。如果他们继续进行渐进式改进(换句话说,从1000个参与者扩展到2000个),他们可能都无法取得显著进展。”

MoQ是一种颠覆性的解决方案,将“将实时语音和视频会议的响应性和大规模流媒体的规模和覆盖范围结合起来——为两个行业解决难题,”他补充说。

“如果正确使用,基于QUIC的媒体传输有潜力在广泛的范围内提供令人难以置信的实时体验,无论您的互联网连接如何。它还为高度可扩展和低延迟的发布/订阅网络奠定了基础,这些网络可以被许多类型的应用程序使用,”Jennings说。

CDN也有可能以很大的方式从MoQ中受益,Law解释说。

“今天,CDN必须部署单独的网络来交付实时媒体、点播电影和现场体育赛事,由于交付这些内容类型所涉及的不同协议和格式,”他解释说。

“一个网络中的空闲机器不能在另一个网络上提供流量,必须仔细管理跨网络的容量。”

“MoQ的魅力在于一个单一的交付网络、协议和格式可以同时解决多个市场细分问题。这提供了更低的网络OPEX和更好的容量管理,同时最大限度地扩大了可服务市场。”

Jennings说,尽管MoQ旨在改善媒体传输,但它将实现更多并使其他市场受益。

“MoQ实际上是一个非常好的通用机制,它允许我们做的不仅仅是传递媒体,”他解释说。“MoQ允许我们在互联网上构建一个发布/订阅网络,该网络在低延迟、高扇出和高可扩展性方面工作,这可以用于许多应用程序。”

其他用例包括:

物联网:“物联网设备向其本地边缘网络报告大量信息,不同的监控系统尝试订阅并监控该信息的一部分,他说。这将使系统订阅该媒体的过程更简单。

推送通知:“许多应用程序的问题是,当事件发生时,必须通知许多客户端,而且没有简单的方法来做这件事,”Jennings解释说。“MoQ可以提供一种更简单、更容易完成此操作的方法。”

5G网络:现代5G网络为使用非常低延迟的服务器向客户端提供服务开辟了机会。“然而,如何利用这一点还没有一个好的编程模型,”Jennings说。“同样,CDN为应用程序提供了一种简单的方式,让它们使用遍布全球的数据中心,部署MoQ中继节点在5G边缘将为应用程序提供一种简单的方式,利用5G网络的低延迟能力。”

文本消息协议:“MoQ允许像WhatsApp这样的最常用的消息应用程序创建一种方式,以可扩展的方式向数百万人设法传递文本消息。”

MoQ的最终用户将体验到什么? 在Jennings最近撰写的一篇博客文章中,他引用了用户体验设计师Vanessa Costa-Massimo关于延迟及其如何阻碍混合工作的心理影响的观点:

“当我们在实时视频会议应用程序中经历延迟时,我们的第一反应是责怪不是网络连接故障,而是我们正在交谈的人,”她说。“我们假设如果某人需要几秒钟才能回应,他们没有注意,或者他们懒惰、粗鲁或有其他负面品质,然后我们才意识到这实际上是一个延迟问题。”

这表明协作肯定受到延迟的影响,Jennings说。

“MoQ在这方面是一个强大的解决方案。如果我们能够消除这种对有意义的协作和相互信任的阻碍,我们可以使最终用户共同完成他们最好的工作。”

实际上,大多数最终用户甚至不会意识到他们正在使用MoQ,除了他们会对从直播到游戏再到视频会议通话的体验更加满意,Law说。

“老生常谈的关于你在你的邻居的OTA广播中听到你的体育赛事比你的OTT广播更早的事情将会发生逆转——OTT将变得比任何有线、卫星或基于空中的分发渠道都要快得多。”

MoQ现在在哪里?下一步是什么? 正如Law在布拉格的IETF 118上所说,“MoQ Transport的核心规范正在慢慢成熟,六种早期实现之间首次实现了一定程度的互操作性。”

现在,该小组可以将重点转移到将建立在其之上的媒体流格式上,他说。

该小组在2024年2月6日至8日在美国举行了一次临时会议。邮件列表也是开放和活跃的,以及GitHub问题。任何对互联网传输媒体未来感兴趣的人都被鼓励审查MoQ工作组目前正在考虑的互联网草案,并参与其中。