摘要:如何保障实时音视频服务体验的实践?我们为什么需要一张媒体网络?我们如何改善实时音视频体验方面的实践?
本文分享自华为云社区《解密华为云原生媒体网络如何保障实时音视频服务质量》,原文作者:音视频大管家。
大家好,我是来自华为云的黄挺,目前负责华为云视频架构设计的相关工作。今天我会给大家分享华为云原生媒体网络是如何保障实时音视频服务体验的实践。
我会从以上几个部分进行分享,首先,解释一下我们为什么需要一张媒体网络;其次,会介绍一下华为云原生媒体网络的整体架构设计,最后,会分享我们在如何改善实时音视频体验方面的实践。
01为什么需要一张媒体网络 1.1 内容表达视频化,各个行业都有视频分发的需求为什么我们需要一张媒体网络呢?我主要总结了三大原因。第一个原因,我们看到内容表达视频化是目前一个很明显的趋势,有很多行业都对视频分发有非常旺盛的需求。举一个我亲身经历的小例子,在今年过年的时候,我的家人想把手上带了多年的戒指取下来,因为戴的时间比较久了,手指变粗了不少,取不下来。最开始我们第一反应是去商场找营业员帮忙取下来,后来我抱着试一试的心态,在抖音上搜索“取戒指”三个字。在搜索结果中找到了一个非常简单的办法,视频时间不长,照着做很快就把戒指取下来了,而且对戒指没有损害,手指也不痛。大家感兴趣可以去搜索看看。这其实就是知识内容表达视频化的一个表现,这个趋势在很多领域都已经出现了,除了短视频,比如现在的电商直播,在线教育,云游戏等行业也都出现了内容表达视频化发展趋势。
1.2 新媒体表达形式出现,对音视频技术要求越来越高第二个原因,我们看到未来会出现很多新的媒体表达形式。比如VR和最近比较火热的自由视角,这些新的表达形式的出现,都会给用户带来更加沉浸式的体验。但它对音视频技术的要求是全方位的提升,主要包括带宽、时延、渲染复杂度等等。可以看到左边这张图,以VR为例,如果带上VR头盔去观看视频,要做到极致的视网膜体验,需要的码率非常大,通过简单的测算大概需要达到2Gbps的码率。而且影响VR体验的因素相较于平面视频也变得更多了:刷新率、视场角、分辨率、MTP低时延、姿态跟踪、眼动跟踪等等。
1.3 互联网对用户没有承诺服务质量我们一般会从需求侧和供给侧两个维度来进行分析一个产品。前面两个算是需求侧的分析,接下来我们看一下供给侧的分析。实时音视频服务一个非常重要的供给侧就是互联网的基础设施。我们都知道互联网对用户的服务质量基本上是没有承诺的。怎么理解呢?首先,建设互联网的成本非常昂贵,比如,需要在海底拉光缆,这个铺设成本是非常昂贵的,这里包括人力的,物力的,另外一部分是无线频谱的成本,比如3G、4G、5G的频谱。所以互联网的建设一定是需要考虑共享,共享就需要使用复用和交换技术。怎么理解交换呢?看下下面这个简单的示意图。假设我们要建4个网络节点A、B、C、D;如果没有交换,两两互联需要6根线。但是如果使用了交换,则只需要4根线就可以了。所以从成本考虑,需要交换的技术;我们知道交换一般有两类技术,一类是Circuit switching ,另一类是Packet switching,Circuit switching的特点是容量预留,但是资源存在浪费,因为一旦预留,就算没有数据传输,带宽资源也是被占用。而Packet switching技术则是链路资源共享的,所以可以做到更低成本的交换。而当时互联网设计考虑到成本的因素,选择了Packet switching这个技术进行演进;因为选择了Packet switching,再加上best effort尽力而为的转发模式,所以带来了一系列丢包、重复报文、时延、乱序等问题。所以我们总结,丢包、重复、时延、乱序是这一代互联网的固有属性。
这里大家可以思考一个问题,为什么互联网在最开始设计的时候,并没有考虑在网络层解决这个问题。或者换一个更大的问题,如果今天重新设计互联网,我们会怎么做?会不会尝试让互联网去解决这些问题。第二个思考的问题就是,在大家的日常应用开发过程中是怎么解决丢包、重复、时延、乱序的问题。
1.4 对我们的启发