一种低成本的边缘集群大规模视频流高并发传输方法

文档序号:34746803发布日期:2023-07-12 23:58阅读:94来源:国知局
一种低成本的边缘集群大规模视频流高并发传输方法

本发明涉及智慧教育新,尤其涉及一种低成本的边缘集群大规模视频流高并发传输方法。


背景技术:

1、近年随着国内外视频直播录播点播业务的迅猛发展,在互联网总流量中视频流占比越来越高,根据思科公司的预测,到2023年视频流将占互联网总流量的80%。据idc报告2021年下半年,中国视频云市场规模达到50.4亿美元,预计到2025年视频云市场规模将达到314亿美元。随着短视频平台、互动娱乐直播平台的蓬勃发展,在相关领域也出现了很多重要应用。智慧教育是互联网和人工智能在教育领域的新领域,在智慧教育中的校园云录播直播系统,已经成为一种全新的现代化教学解决方案。校园云录播直播系统以物联网技术作为基础,采用高速传输和边缘网络存储技术实现视频的采集、处理及使用。

2、边缘计算是适应视频业务需求的重要解决方案,通过优质的边缘节点、全域分布式的网络带宽以及多种异构算力资源,提供更低时延的网络接入能力、更优化的网络带宽成本、丰富的异构算力资源和智能调度,满足视频业务极致高清、实时交互、沉浸式体验的需求。在视频直播录播点播场景中,大规模、高并发、持续的音频和视频数据需要在边缘摄像头、边缘服务器、网络交换机以及存储设备之间快速、频繁的传输。由于大幅度增加边缘节点的业务数据规模,边缘计算中单机节点难以完成计算工作,所以需要将边缘节点扩展成边缘集群。随着边缘集群内通信的数据量骤增,需要大量的网络流量带宽来接收、转发视频流,这对边缘集群内的通信带宽提出了更高的要求。

3、在边缘计算集群中大规模高并发视频流接入转发的性能优化成为一个重要挑战。视频业务拥有大规模的接入设备,接收高并发的视频流后转发到广大用户设备中。当高并发视频流传输性能出现瓶颈时将导致服务集群计算负载过大,导致应用层平台负担变重,进而引发视频流的延迟、卡顿或丢帧,甚至无法打开视频等现象,严重影响用户体验。直播录播系统网络出口、中间设备、内部网络的传输性能严重影响用户的观看体验。

4、现有的并发接入技术方案存在接入设备成本高、视频传输丢包率高等问题。在传统技术中通常用更高速率的设备来增加边缘集群的带宽,但需要付出高额的设备费用,而且施工周期长,系统扩展性较差。链路聚合技术是解决该问题的一种技术方案,在原有硬件基础上把多个物理接口捆绑成一整个逻辑接口,达到增加链路带宽的目的,然而操作系统对该种技术的支持不够友好,导致实现开发难度较大。


技术实现思路

1、本发明针对现有技术的不足,研制一种低成本的边缘集群大规模视频流高并发传输方法,该发明可以很好地解决以下难题:现有的并发接入技术方案存在接入设备成本高、视频传输丢包率高等问题。在传统技术中通常用更高速率的设备来增加边缘集群的带宽,但需要付出高额的设备费用,而且施工周期长,系统扩展性较差。

2、本发明解决技术问题的技术方案为:本发明提供了一种低成本的边缘集群大规模视频流高并发传输方法,其包括:

3、s1.用边缘采集设备采集视频和音频数据;

4、s2.通过摄像机设备对音视频流进行转码变换和存储;

5、s3.将音频和视频流经过dpdk接入转发集群、视频处理存储集群、负载均衡集群进行处理,再传输给直播用户和点播用户;

6、其中s3中dpdk接入转发集群把视频流分成直播小流和录播点播的大流,并采用多网口的q-learning算法对cpu核心和队列进行分配,以解决数据流接收转发的调度问题,将并发转接需求合理地分配到服务器的处理单元上,尽可能地达到负载均衡,使各网口利用率变得相对比较平均,各网口之间相互分担负载,避免了过载丢包的发生,提高了服务器的吞吐效率。

7、优选的,视频流si={s1,s2,…sn}为到达边缘计算集群的并发视频流,其中直播视频流为点播视频流为分流数据流接收速率为vr,在△t时间内到的视频流大小为:接收系统数据流的接收速率vr为:

8、b为网络有效带宽,则:当系统接收速率无限接近vr时,则网络丢包率趋近于零。

9、优选的,q-learning算法是用于均衡分配负载cpu和多网卡多端口以及受约的缓冲区多队列的方法,利用下面公式:

10、

11、

12、un表示转接处理单元集合;

13、unitij表示第i个网卡第j个接口对应的转接cpu处理线程核心;

14、data表示需要转接处理的数据块集合;

15、datak表示第k个数据块的负载额度需求;

16、表示调度开始前,unitij的原有负载;

17、表示调度进行到一定程度时,unitij的已有负载;

18、表示unitij总的负载能力;

19、avg_loadcur表示当前回合中所有单元的平均负载利用率;

20、表示0-1变量,若将datak分配给unitij处理则设置为1;否则设置为0

21、ω表示在当前回合中,unitij的负载利用率相对于所有转接处理单元平均负载利用率的偏离值;

22、

23、ω最小值约束如下:θ是设置的上限,将datak分配给转接处理单元unitij后,该处理单元的负载利用率不能高于指定的上限θ;且需要为每个数据块分配至少一个可用的处理单元,q-learning是一种无模型的学习方法,根据奖励值大小分配负载,对每一个数据块的转接需求,通过q-learning学习出q值矩阵。根据q值矩阵选择一个可用处理单元,记入处理单元选择集中,当所有转接需求处理完毕,即可得到负载分配方案。

24、优选的,处理单元unitij的rij函数如下:

25、

26、

27、其中,α表示奖励值的比例系数,β表示折扣系数,θ表示处理单元允许使用的最大利用率,0<θ<1。由上可知,处理单元被分为三个等级:

28、(1)当承载此转接需求后处理单元的利用率超过利用率上限θ的限制时,设置该处理单元的奖励值为0,即此处理单元无法满足当前的转接需求;

29、(2)当处理单元剩余可用的负载能力大于转接需求的负载且承载此转接需求后处理单元的利用率不大于所有处理单元的平均利用率,则该处理单元是最优的选择。这样做的意义是均衡负载;

30、(3)当处理单元剩余可用的负载能力大于转接需求的负载且承载此转接需求后处理单元的利用率大于所有处理单元的平均利用率但不超过利用率上限θ的限制,则该处理单元是次优的选择。

31、综上,此奖励值函数倾向于满足转接需求的同时尽量均衡处理单元的负载。

32、优选的,根据直播和点播人数切换时间片,及时更新处理单元数量和负载情况,为寻找最优解设置多轮迭代,在每一轮迭代中,基于q-learning的负载分配算法执行如下:

33、step1:初始化负载分配数组load_dist,读入转接每个数据块的负载需求loadk∈load;

34、step2:初始化q值表old_q中所有元素为0;

35、step3:初始化q值表更新公式中的折扣因子γ和奖励值矩阵r,其中0<γ<0.5,奖励值矩阵r中的元素取值是通过网卡i的端口j分配处理单元得到的奖励值,网卡的端口与接收队列形成映射关系;

36、step4:若尚未为当前负载需求分配处理单元;

37、step4.1:初始化一个随机数rand,若rand<ε,则从当前状态随机选择一个可用处理单元达到下一个状态,否则根据r矩阵从中选择r值最大的那个负载单元;

38、step4.2:q(s,a)=r(s,a)+γ*max[q(s′,all_actions)],q(s,a)是s状态下选择a动作对应的q值,r(s,a)是选个某个处理单元后,获得的奖励值r,max[]是在s′状态下选择奖励值最大的处理单元后得到的期望值;

39、step4.3:选择下一个负载需求,将下一个状态作为当前状态,回到step4;

40、step5:若q值表未收敛,则迭代次数加1,重新初始化当前状态为起点,置old_q为当前q值表,回到step4继续学习;

41、若q值表收敛,则根据q值表得到负载分配方案,将分配方案中的处理单元选择集加入到负载分配数组load_dist;

42、step6:退出循环,返回load_dist数组,更新处理单元状态。

43、优选的,一种低成本的边缘集群大规模视频流高并发传输系统,包括边缘采集设备、摄像机设备、dpdk接入转发集群、视频处理存储集群、负载均衡集群和全局时间同步服务集群;其中视频处理存储集群包括推流服务集群、直播服务集群、分布式存储集群、redis缓存集群、多媒体服务集群、视频处理服务集群、数据分析服务集群、数据库服务集群、分布式分析搜索服务集群、点播服务集群、web服务集群、弹性搜索服务集群和视频转码服务集群;边缘采集设备产生原始的视频图像和音频、传输给摄像机设备转码成直播流和录播流,通过dpdk接入转发集群接入直播流和录播流,分类传输:把直播流传输到推流服务集群,经过直播服务集群转发到redis缓存集群,再经过dpdk接入转发集群转发到负载均衡集群,最后再传输给直播用户观看;把录播流传输给数据分析服务集群、web服务集群、弹性搜索服务集群和视频处理服务集群,经过数据库服务集群,再转发到分布式存储集群存储,经过多媒体服务集群到点播服务集群,再经过dpdk接入转发集群,最后经过负载均衡集群传输给点播用户观看。该系统中存在大量的视频流的小包传输,dpdk技术加速了网络小包报文的处理,同时相关技术亦可以应用到存储系统中,以提高存储系统中网络的效率,继而提升整个系统的性能。

44、优选的,dpdk接入转发集群模型包括q-learning调度器、dpdk多网卡多端口传输模块、内存池和接收转发的多循环队列;q-learning调度器,用于实现cpu核心的分配和绑定以及动态调整功能;dpdk多网卡多端口传输模块管理整个系统的配置信息;内存池和接收转发的多循环队列负责系统中内存池的管理,接收侧和转发侧循环多队列的管理,缓冲区数量、转发核心与缓冲区关系表,以及对于数据流溢出情况的控制。

45、优选的,一种低成本的边缘集群大规模视频流高并发传输装置,包括多网卡多端口、存储器、多核处理器以及存储在所述服务器中并可在所述处理器上运行的高速传输计算机程序,所述服务器执行所述计算机程序时实现以上所述的方法。

46、优选的,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现以上所述的方法。

47、
技术实现要素:
中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案具有如下优点或有益效果:

48、利用dpdk分类技术把视频流分成直播小流和录播点播的大流,通过cpu的均衡负载度来量化系统的均衡负载能力,通过采用q-learning算法对循环多队列和cpu的多核心进行分配来解决数据流接收调度问题,将并发转接需求合理地分配到服务器的处理单元上,尽可能地达到负载均衡,使各网口利用率变得相对比较平均,各网口之间相互分担负载,避免了过载丢包的发生,提高了服务器的吞吐效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1