2021年6月9日,亚太内容分发大会暨CDN峰会在北京举行,阿里云智能边缘云技术专家李松林受邀参加互动直播论坛,分享基于阿里云边缘云节点打造的全球实时传输网络GRTN的设计思路、技术原理、特质与应用实践,以及面向直播应用客户提供稳定可靠的业务体验。
当前,主流的直播技术应用架构主要有两种:直推和回源拉流 ,产生这两种架构的原因也比较简单:一是业务场景需要连麦,需要低延迟云合流;二是基于UDP的私有协议推流。为保障主播在弱网情况下能有较好的推流效果,而最重要的原因是目前主流云厂商还没有通用成熟的低延迟互动场景大规模应用的服务,这就导致了他们需要自建源站。只使用云厂商通用的分发能力。支持 HTTPFLV 、RTMP 、HLS 大规模分发。
视频直播服务自建面临的挑战
随着直播场景和内容越来越丰富和专业,互动的需求也越来越多,交互的延迟要求也越来越高。原有的这套架构就很难满足需求了。由于无法满足自己的业务需求,许多企业客户纷纷开始尝试自建源站,做协议优化, 但是由于直播技术门槛相对较高,不仅需要投入资源,还需要专业的研发能力,同时后续还要长期持续运维和管理。
阿里云GRTN的定位
为了能够降低直播的端到端延时,阿里云从直播、短延时直播、RTC等应用场景出发,构建了GRTN(Global Realtime Transport Network)全球实时传输网。李松林介绍,阿里云GRTN的定位是基于公共云中心Region和边缘云节点,构建超低延时、全分布式下沉的通信级流媒体传输网络。GRTN目前融合了互联网直播和RTC等多种业务场景的音视频流传输和交换。基于GRTN的短延时直播RTS可以支持标准H5 WebRTC推播,在千万级并发情况下延时可以控制在1s以内;RTC端到端延时可以控制在250ms左右。GRTN可提供三大原子能力:流的发布、订阅、切换,用户可以基于这些能力构建通话场景、直播场景、连麦场景等等。
阿里云GRTN的架构
阿里云GRTN 的整体架构是由原来的直播体系进化而来。该架构具有控制和数据分离、混合组网、多路径传输、自学习Qos等技术特点,对外可以支持多种接入协议(rtc /rtmp / hls/ httpflv/ srt/ quic)。GRTN带来的核心价值有:
降成本,GRTN是一个多业务融合的网络,可以支持直播、RTC和视频上云等多种场景,业务复用率高,另外GRTN内部链路更短,节点内的成本也更低。
提质量,GRTN内部组网支持采用动态选路的方式来构建的网状结构,内部链路延时可以做到20ms左右,并且内部链路采用了私有协议来进行高效传输。另外客户端的推流和分发都是基于WebRTC来构建的,QoS拥塞控制是专门针对流媒体特性来进行设计的,并且还在基于线上数据建设进行持续迭代和打磨。
易扩展,GRTN支持了WebRTC协议,可以在单个连接通道上进行全双工的通信,从而可以很自由的进行发布和订阅媒体流,在业务的扩展性上带来了更大的想象空间。
GRTN关键技术-分布式异构部署
在谈到GRTN部署时,李松林指出,GRTN 的数据面可以在不同的资源上部署,实现一份代码,多种资源部署, 满足了低延迟全球覆盖的需求。不仅拥有了CDN原有的节点覆盖资源 ,而且还支持中心Region和 MEC 等资源,让业务体验更优。
GRTN 的关键技术-对等组网和动态路径规划
针对丰富的资源实现高效利用是核心。传统的路径规划主要关注质量 ,对节点的属性和水位等情况考虑较少,同时由于流媒体的复用性,当一个流已经出现在某一个节点的时候,整个路径选择就面临新的调整。目前的策略是通过探测选路寻找优质的节点和路径集合。建立节点路径状态表。对每条路径的不同维度进行量化打分。综合权重和策略得到一个新的最优解。
GRTN采用了混合组网方式,即层级结构和对等图形方式相结合的组网的方式。选路中心会周期性收集内部链路探测的结果,为了配合动态组网,流媒体大脑模块需要对流信息进行管理,同时还需要支持路径切换、容量规划以及在成本和质量之间做综合的调度。
GRTN的关键技术-双向实时消息网
有了控制面的路径规划和策略控制,如何快速准确的下发到数据面的每一个节点,每一个机器也是挑战。在RTC场景下有一个比较常用的功能是客户端网络的Mobility,比如用户在开会的过程中回家或是离开家的时候手机网络需要在4G和wifi之间切换,另外考虑客户端接入的CDN节点出现异常的时候,这两种情况都会造成客户端在和GRTN通信过程中切换接入节点,GRTN构建的双向的实时信令网能够做到切网消息的毫秒级传递,当有一个发布端的媒体流发生网络切换后,订阅的客户端对GRTN内部发生的切换行为是完全无感知的。
GRTN的关键技术-流媒体孪生
李松林介绍:GRTN借鉴数字孪生的思想设计了一个流媒体孪生(Streamimg Media Digital Twin)系统,用于容量评估、算法训练、事件复盘和模拟压测等。通过将系统分成现实和虚拟两个环境。现实环境复杂收集真实的场景和数据,虚拟环境负责做容量评估和算法训练。当修改了新的策略之后可以通过现实的历史数据输入到虚拟环境中应用新的算法。通过数据处理,生成数据报表对比之前这些数据在真实环境中的情况。这样就可以指导新的算法调优,也可以评估新算法是否有效。
GRTN的关键技术-可编程
媒体技术的上层业务场景非常丰富,比如电商直播、视频会议、在线教育、企业直播、新零售等,因此有很多定制化开发的需求。可编程化改造是GRTN在提升系统稳定性上的一次尝试,目前GRTN的中心流媒体大脑,节点侧的业务模块,媒体数据发送模块、媒体信令处理模块等都已经进行了可编程化改造,大部分情况下都可以避免二进制的发布。
GRTN的关键技术-全链路可视化监测
李松林认为,可观测性是评估一个系统是否可以对外服务的基础。当线上出现问题可以及时快速的定位和处理,避免影响扩大。同时也可以通过观测系统收集数据,不断优化系统。
基于GRTN打造超低延时直播RTS
为了更加方便客户和行业拥抱GRTN,阿里云基于GRTN打造了超低延时直播服务RTS,其有四个技术特性:
秒级延时和卓越的抗弱网能力,在相同卡顿率下延时可以降低80%,相比于传统的RTMP和FLV的5-10s延时,RTS的延时可以达到1s以内,并且还在基于线上的大数据,在自我学习和持续迭代中。
成熟稳定,RTS历经2年多时间的潜心研发,并经历了淘宝直播618大促的线上考验,目前已经在淘宝直播上线。
开放标准,为了能够方便自研播放器的客户使用我们的RTS服务,阿里云的WebRTC接入的信令协议的完全开放的、透明的。
广覆盖和高并发,RTS服务是构建在阿里云2800+边缘节点之上,可以支持千万级并发播放。
李松林还分享了具体案例:淘宝直播在2020年双11首次大规模使用全球实时传输网络GRTN的技术,交互体验得到了极大的改善,成交转化率得到提高,直播带货GMV提升了5%。
面向未来,越来越多的直播应用到人们的生活中,阿里云将持续加码直播领域技术创新,打通直播的最后一公里,依托遍布全球2800+边缘云节点,提供稳定、可靠、安全的直播服务,面向用户打造更接近真实场景的直播体验。