成果分享:边缘智能视频预取和缓存机制

Posted 边缘计算社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了成果分享:边缘智能视频预取和缓存机制相关的知识,希望对你有一定的参考价值。

本文来源于智能互联网研究组,SIG由来自清华大学深圳国际研究生院、鹏城实验室、南方科技大学等高校科研人员组成。团队成员包括:清华大学江勇教授、鹏城实验室李清副研究员等。目前团队有7名在读博士(清华大学)、30名在读硕士(来自清华大学、南方科技大学等)。此外,团队拥有可编程网络领域、视频传输领域工程师10余名,能够有效支撑研究方案的原型开发与功能验证。

摘要

视频流量的显著增加给网络传输带来了极大压力。基于HTTP的动态自适应流(DASH)成为视频传输的重要方法,因为它可以根据动态网络调整传输。然而,码率切换和视频仍会发生,并用户体验(QoE)产生负面影响。此外,流行的视频内容被冗余传输,消耗了大量带宽。

在此背景下,我们提出了一种基于协作的智能边缘服务缓存和预取方案(CoLEAP),以提高自适应视频流的用户体验。CoLEAP使用边缘服务器来缓存高收益的内容,以减少冗余视频传输,并预取部分内容以减少网络传输延迟。考虑到用户和网络状态,CoLEAP采用一种面向用户体验的深度神经网络模型,智能地做出最有利的缓存和预取决策。

为了证明方案的性能,我们实现了方案原型,和四种备选方案进行比较。与现有方案相比,CoLEAP将平均码率提高了181.8%,将视频卡顿减少了70.8%,响应时间减少了28.0%。最终,CoLEAP在缓存命中率和用户体验方面的最低改善率分别为57.4%和29.0%。

Wanxin Shi, Chao Wang, Yong Jiang, Qing Li*, Gengbiao Shen, and Gabriel-Miro Muntean. “CoLEAP: Cooperative Learning-Based Edge Scheme with Caching and Prefetching for DASH Video Delivery.” IEEE Transactions on Multimedia 2020.

Wanxin Shi, Qing Li*, Chao Wang, Gengbiao Shen, Weichao Li, Yu Wu, and Yong Jiang. "LEAP: Learning-Based Smart Edge with Caching and Prefetching for Adaptive Video Streaming", in IEEE/ACM IWQoS, Phoenix, USA, 2019.

Wanxin Shi, shiwx17@mails.tsinghua.edu.cn

Qing Li, liq@pcl.ac.cn/andyliqing@gmail.com

背景

    思科2018的网络流量分析报告显示,大约82%的流量来自于视频传输。由于视频流量急剧增加,网络状态变化迅速,基于HTTP的动态自适应流技术(DASH)因其灵活性和可压缩性而得到广泛的应用,这一传输方式能够提高视频传输的带宽利用率,从而提升用户体验(QoE)。在这样的传输模式下,用户基于视频块序列请求内容并在本地采用码率自适应算法(ABR),根据网络实时状态自适应选择最合适码率,从而满足用户需求。因此,加强面向QoE的视频传输对于提高网络的整体效率具有重要意义。

    然而,即使采用DASH技术,视频传输仍然面临着严峻的挑战,包括网络状态变化导致用户体验不稳定、视频冗余传输导致带宽利用效率低下等问题。其一,目前网络是高度动态的,只能提供无保证服务。对于单个视频用户来说,不可避免的带宽抖动会导致频繁的码率切换,甚至会引起缓冲,由此将严重影响用户体验。其二,视频传输在时间和空间两个维度上都有很强的集中性,即某些特定网络的用户在某个特定的时间内往往会请求一些流行的视频。例如,Facebook排名前0.1%、前1%的视频分别占据其视频传输的62%、83%。用户频繁请求的内容会被多次传输,引起带宽消耗,这就导致本已充足的带宽被大量浪费。

现有视频传输方法

    目前优化视频传输的方法可分为三类。第一种类型是客户端的自适应码率调整和预测机制。每个客户端做各自的码率决策,争夺共享带宽。这一类型的解决方案缺乏全局性和公平性。有的方法如MPC,假定网络吞吐量的精确预测,并利用控制理论方法在客户端选择合适的比特率,以获得最佳的QoE。而Pensieve则通过一个强化学习模型来决定比特率。Bola方案利用Lyapunov技术实现了比特率选择的局部优化。对于Oboe,它会根据不同的网络条件自动调整参数,并根据当前网络动态调整参数。这些客户端方案有助于终端用户适应DASH视频传输,同时考虑缓冲占用和传输速率。但是,由于缺乏全局优化和公平性,每个客户端都会做出自己的比特率决策,争夺共享带宽。

    第二类方法是服务器端的全局优化。然而,对于服务器来说,实时感知整个网络状态是非常困难的,因此支持在线全局优化是一个挑战,因为它离最终用户很遥远。另一方面,虽然基于服务器的方法释放了源服务器的流量负载,并在一定程度上提高了响应速度,但由于计算和存储量很大,它们需要在设备和维护方面进行高投资。因此,基于服务器的方法对于其粗粒度的优化效果和高成本来说还不够理想。

    第三类方法是基于网络侧缓存与预取方案。为了有效地利用网络侧的存储容量,研究者提出了多种缓存方案。一些离线缓存方案设计了复杂的算法来缓存最流行的内容。为了提高实时性,提出了基于马尔可夫模型的流行内容替换算法、基于增强学习方法的缓存方法和非流行内容的实时动态缓存等先进辅助手段的在线缓存方案。为了在缓存替换中引入QoE影响,出现了一些基于QoE的缓存方案。当前基于缓存的方法还需要预取策略,因为第一次请求的缓存丢失、有限的缓存容量或不可避免的设备故障。但是缓存无法加速传输第一次被请求的内容或者非热点内容,由此预取成为一个良好的辅助手段。在传统的HTTP下载中,预取一直持续到视频结束,而不需要考虑码率转换。

针对基于DASH的视频传输加速,一些研究构建了基于效益的预取模型,如iPac,但是该方案不考虑启动阶段的码率切换。随着对QoE的日益重视,综合考虑缓存与预取的方案已成为网络端的主流解决方案。尽管这些方案在网络端的应用迅速增长,但第三方的基础设施还不够实用和智能,包括内容传输网络(CDN)、以信息为中心的网络(ICN)和缓存代理等。ICN作为一种全新的网络架构,其部署难度较大。而CDN的PoP节点因为灵活性低和成本高而难以在网络中高密度地广泛部署。这就意味着,在CDN机制下,用户仍然离内容服务器较远,视频传输质量仍然无法得到保证。至于已被广泛使用的缓存代理,由于其功能单一,智能化较低,故而难以适应高动态的网络。

新方案应具备的特性

   所以,为解决上述问题,一个借助边缘能力、面向提升QoE的方案应该具有以下几个特性:1)它应该针对共享瓶颈带宽的用户进行全局的视频传输优化,而不仅是单个用户在本地做各自的最优决策;2)它可以减少传输冗余,保证动态变化的网络带宽得到有效利用;3)它可以实时对抗网络抖动,保证用户得到流畅的观看体验;4)它能够智能地为不同用户提供区分服务,或者以整个视频或者单一视频块为粒度提供区分服务;5)它能够促进相邻边缘的协作,从而避免不必要的回源流量以减少传输开销;6)它应该具有清晰的商业逻辑,并易于在当前的互联网上部署。

研究思路与方法

  之前的研究方案LEAP不与相邻的边协作,无法缓解繁忙的回源链路或利用其他边缘节点上可用的资源。如果回源链路过于繁忙甚至中断,边缘服务器之间的合作则更有必要,在提供服务基础上,更有利于提高性能。当源服务器发生故障时,相邻的边缘节点则可以作为备份。另外,从相邻边缘获取内容也有助于改善传输延迟。在此背景下,本文提出了一种基于学习实现缓存预取的边缘协作机制(CoLEAP),它通过节点协作来扩展LEAP,以提高视频内容的传输性能。CoLEAP将多个相邻的边缘节点视为一个大型协同边缘结构的一部分,这样可以共享节点存储空间并支持共用它们的计算能力。

与LEAP类似,CoLEAP从客户那里收集有关视频会话的信息,了解视频的流行程度和交付质量。当源服务器有足够的可用带宽时,CoLEAP会预取最流行的视频片段。同时,CoLEAP基于QoE加权的流行度来缓存视频片段。当没有足够的可用带宽时,CoLEAP将从边缘节点预取视频片段,由此客户端的用户体验同样会有所增益。CoLEAP边缘节点相互协作,可最大限度地共享其有限的计算和存储资源,并在动态网络条件下提高用户体验。

A.特征提取模块

    图1的网络模型主要包括源服务器(Origin Server), 智能边缘服务器(Smart Edge Server)和终端用户(End User)。该网络模型中,所有的视频资源存储在源服务器上,而热点内容则存储在边缘服务器中。客户端观看视频过程中,会向源服务器发起视频请求。因为源服务器与边缘服务器之间相互协作,所以如果客户端请求的内容在边缘服务器中,则内容会被直接返回给客户端。否则,请求的内容将由源服务器通过广域网经由边缘服务器,最后被送达至客户端。其实,广域网可以被简化建模为源服务器到边缘服务器的瓶颈链路。借助边缘服务器训练的预测模型,可以预测出缓存相应视频块的QoE增益,最终通过基于效益的缓存与预取机制加速客户端与源服务器之间的内容传输。

图1 视频传输模型示意图

 但是,单个边缘可能无法充分利用网络容量。因为某些边缘可能离原点服务器太远,即使进行预取,源服务器对该边缘的响应也很慢。回源链路可能没有足够的传输容量实现预取,甚至在某些极端情况下,链路可能会发生故障。因此,有必要让相邻边缘进行合作。在该方案中,我们将efirst设置为某个区域用户群的缓存服务器,它能够加速该区域的视频传输。于此同时,我们将esecond设置为efirst的相邻边缘,但不覆盖用户群。如果两个边缘之间的链路具有较大的传输容量,那么efirst和esecond可以进行协同响应。这两个边缘可以缓存不同的内容来响应用户。例如,efirst可以缓存具有更高效益的内容,而esecond则可存储效益相对较低的内容。

B.智能边缘整体架构 

    该智能边缘用于处理基于DASH的视频请求,它能够根据用户信息和网络状态做出有益于QoE的缓存预取决策。图2呈现了该智能边缘的架构,它由四个模块组成,包括请求收集器、缓存管理器、QoE增益预测器和预取管理器。请求收集器用于收集和分析来自用户的请求,并将用户信息提供给其他模块。缓存管理器实现缓存更新、缓存查找和内容应答的功能。QoE增益预测器将利用用户信息和网络状态预测吞吐量和QoE增益。而预取管理器计算预取视频块的效益并基于计算结果来执行预取策略。

这些模块相互协作和交互,为该智能边缘所覆盖的用户提供服务。这样的架构能够提供全局优化的传输服务,而非局限于本地单用户优化,所以更有利于高效利用有限的网络带宽。同时,它可以为不同的用户或视频(甚至视频块级别)实现智能化的差异服务。此外,差异化服务不会导致传输冗余,但能够帮助智能边缘实时对抗网络抖动,最终保证用户得到流畅的观看体验。

图2 智能边缘示意图

C.请求收集器

    在DASH视频传输中,用户采用ABR算法选择下一个视频块的码率。智能边缘收集来自同一区域的所有用户请求并提取特征信息用以后续的训练与预测。针对某个客户端,需要被采集的特征包括上一个视频块的QoE、播放器的buffer进度、当前被请求的视频块码率、视频类型、RTT、视频块链长、吞吐量变化、下载时间、视频块大小以及实际命中情况以及。其中,前五个变量都是都是一维特征,视频类型指的是当前播放的视频基于SSIM分类所属的视频类型,而RTT指的是用户与边缘服务器之间的往返时间。后四个变量都是多维变量,比如可以获取过去五个视频块的下载吞吐量、下载时间、视频块大小以及命中情况用以神经网络训练。基于计算量以及预测精度,这个维度可做适当调整。

D.缓存管理器

    缓存策略与预取策略之间相对独立。缓存管理器执行相应的缓存策略并定期更新本地缓存的内容。我们提出采用结构相似性(SSIM)来定义视频质量,这一指标能够较好地反映出替换不同视频块对QoE提升有着明显的影响。

    我们将缓存更新周期定义为Tc,并假设在第s个周期中,针对视频f的所有请求中包含Hf(sTc )个视频块ID。每个视频块对应一个请求数量。此外,我们维护所有被请求视频的平均QoE增益,然后统计在一个周期内前某个视频块所带来的QoE增益累计值。事实上,该周期被分为两部分,前半周期将统计视频块增益累计值。然后所有对应的累计值将被从大到小排序。继而,与已缓存的视频块进行比较,将增益较大的视频块替换进去,直到缓存空间被填满为止。

E.QoE增益预测器

图3 吞吐量与QoE预测流程图

    缓存命中必然会带来QoE增益,因为缓存边缘服务器离客户端更近,能够加速下载,降低延迟,使得客户端得到更高吞吐的响应。因此,预取QoE增益较高的视频块能够使用户受益更多。然而,客户端难以知晓自己所请求的内容在边缘服务器命中与否,更无法知晓缓存命中所对应的QoE增益。因此,我们利用深度神经网络预测缓存命中与否所得到的QoE。网络吞吐量是QoE增益预测中的一个重要因素,所以我们首先借助线性回归来    预测未来的吞吐量,然后利用该信息进行QoE增益预测。

    QoE增益指的是缓存命中和缓存未命中所对应的QoE之间的差值,这意味着我们需要预测两个QoE值。如图3所示,深度神经网络的输入主要包括从请求收集器获得的信息,其中历史吞吐量、若干视频块的下载时间、历史命中状态以及客户端与服务器之间RTT等信息首先用于线性回归。线性回归得到的所有视频块命中状态下的吞吐量信息将与请求收集器获取的其他特征用于预测下一个视频块命中的用户体验.同理,通过预测缓存未命中的吞吐量,也能够得到下一个视频块未命中的用户体验。因此可求的下一个视频块命中的QoE增益并计算出效益值。

F.预取管理器

    CoLEAP方案是根据预测出的QoE增益执行预取策略。选择产生最大整体效益的视频块进行预取,从而达到最佳优化效果。我们设计了一个周期预取过程,并假定预取周期为Tp。理想的解决方案是选择最佳视频块以最大化周期间内获得的效益总和。然而,这个简单的方法带来了两个问题。其一,在此周期收到的大量请求导致了巨大的维护开销,并且做出最佳的预取选择也变得尤其难移定义。其二,采用固定周期的解决方案不可避免地会延迟一些预取决策,降低整体效益。因此,需要一种更实用、更及时的方法来做出预取决策。通过视频块预取问题的分析,我们利用秘书问题的解决方法来解答如何实现次优预取。我们认为一旦预取管理器收集到足够的统计信息,它就可以直接为后续请求做出预取决策。并且过期的预取请求将被淘汰,当前的决策实时响应未过期的请求。为此,我们设计了一种周期性的两阶段最优预取选择机制(p-Tops)来解决最优选择问题,在第一阶段获得最大效益值,在第二阶段执行效益值大于第一阶段最大值的所有预取,反之则放弃预取。

实验结果

 为验证方案的可行性,我们利用nginx web服务器-Apache Traffic Server-模拟客户端(python),实现源服务器-代理服务器-客户端视频传输模式,并借助相关工具模拟网络抖动、传输延迟的场景。为体现基于QoE和码率变化得到的预取决策具有一定的优越性,我们实现了基于LEAP的方案,包括single LEAP和CoLEAP,并复现以下几个对比方案:无缓存机制、无预取的缓存机制、激进预取的缓存机制、iPac。通过以下CDF图可以看出,基于LEAP的预取和缓存方案能够更好地实现视频传输,并提供良好的用户体验。以下实验图可直观体现,在码率、缓冲、响应速度、边缘命中率以及用户体验这几个指标评价下,基于LEAP的方案都表现较好。而CoLEAP方案基于边缘协作的缓存和预取,更进一步地体现出优越的性能。

总结与分析

本文提出了一种基于学习实现缓存预取的边缘协作机制(CoLEAP),它通过节点协作来扩展LEAP,以提高视频内容的传输性能。CoLEAP将多个相邻的边缘节点视为一个大型协同边缘结构的一部分,这样可以共享节点存储空间并支持共用它们的计算能力。本文的方案将用户体验评价纳入缓存预取策略,改善传统缓存预取的僵化策略,使之更灵活有效。同时利用码率恒定的概率,计算存储相应视频块的效益,使之更符合自适应码率视频传输的请求机制。在实际视频场景中,用户观看的行为模式是有迹可循的,智能预取策略可通过捕捉用户观看视频的历史行为,预测用户即将请求的视频内容,进而有效缓存及预取。借助人工神经网络训练QoE增益的预测模型,在提升用户体验的同时,有效提高视频内容复用。而我们的方案综合QoE增益、码率恒定概率及链路瓶颈信息进行预取,有效提高“first mile”的链路利用率,降低链路传输峰值,避免传输拥塞,由此达到削峰填谷的传输效果。

应用前景

   本文提出的智能边缘中,各个模块相互协作,以交互方式为智能边缘覆盖的用户服务。这种设计在全局范围内优化传输,而不是在本地对每个客户端进行决策,这有利于有限的网络带宽的有效利用。此外,它还可以实现针对不同用户或视频(甚至视频片段)的智能区分服务。此外,差异化服务不会造成传输冗余,但可以帮助智能边缘实时降低网络抖动,最终为用户提供流畅的观看体验。

    在实际应用场景中,为了避免公网的无保证传输,CoLEAP部署的位置是靠近用户的智能边缘服务器上。根据用户的数量,边缘的计算和存储容量会有所不同,智能边缘可以部署在多个潜在位置。校园网或企业网可以选择在连接到网络提供商的出口点部署边缘服务器。通过这种方式,边缘管理员可以为所覆盖的用户提供优化服务。例如,iQIYI Open Cache Program,它是一个提供可定制边缘功能的平台。实际上,智能边缘可以比作反向代理,它在请求到达源服务器之前拦截请求。

这可以通过为源服务器设置适当的DNS条目来实现。在公有云、互联网服务提供商(ISP)的虚拟化边缘数据中心或者特定的超级客户端的帮助下,内容提供商可以将智能边缘以容器、虚拟机(VM)或应用程序的形式进行部署。内容提供商,如字节跳动和优酷,利用互联网数据中心(IDC)的硬件为终端用户服务。它们依赖于IDC的存储容量和流量,定制边缘功能。综上,内容提供者本身需要优化缓存和预取,这样既可以提高用户体验,又可以减少公网带宽带宽以降低成本。

欢迎业界合作

清华大学智能网络研究组(Smart Internet Group,SIG),目前在智能视频传输与分析领域,积极展开研究与探索,在本领域,团队目前已积累10余篇高水平论文与15项发明专利(包括PCT 3项)。

欢迎业界合作!

联系人:彭俊坤

联系邮箱:pengjunkun@gmail.com

  • 基于视频超分的高清低码视频上传与分发技术研究:主要研究超分技术在视频传输中的应用,已经完成基于边缘计算的视频超分方案原型,目前主要探索面向手机端的轻量化视频超分方案,目标是推动低算力场景下的方案落地;

  • MEC场景下的智能视频协同缓存技术研究:目前已经设计完成基于强化学习的视频缓存决策机制,正在探索基于自动化聚类的视频协同缓存机制,方案能够在各种视频分布的场景下,通过无监督的自动化调优,将缓存命中率平均提升30%以上(本论文是单点缓存优化,未来的工作面向协作式的缓存优化);

  • 边云协同的智能高效视频分析技术研究:主要探索“边缘算力+网络带宽”受限的场景下,如何通过模型分割、GPU批处理、背景分离等技术,提升视频分析的资源调度效率、任务执行效果,主要应用领域包括交通状况监控、行人数量识别、人脸识别、视频安保解决方案等;

  • 360度全景视频传输优化技术研究:探索360度全景视频传输的智能化解决方案,在带宽受限的情况下,基于视口预测、分块超分、内容敏感编码等技术,保障视频传输质量,推进360全景视频应用的落地。

感谢阅读,欢迎扩散传播!感谢!

边缘计算社区:促进边缘计算领域知识传播,中立,客观,如果您关注边缘计算、5G、物联网、云原生等领域请关注我们。

以上是关于成果分享:边缘智能视频预取和缓存机制的主要内容,如果未能解决你的问题,请参考以下文章

预取和缓存动态创建的 jquery Mobile+PhoneGap 页面

论文导读|基于机器学习的高速缓存预取

AndroidVideoCache—网络视频缓存机制

http缓存机制及varnish

浏览器缓存机制的研究分享

干货分享|精讲 MyBatis 缓存机制(下)