面向电视直播系统的负载均衡动态组网系统及方法转让专利

申请号 : CN202011482451.5

文献号 : CN112533020B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨灿孙天立韩楚

申请人 : 华南理工大学

摘要 :

本发明公开了一种面向电视直播系统的负载均衡动态组网系统及方法,其中系统包括中心服务器和边缘终端节点;中心服务器由集群搭建而成,部署主控服务系统,主控服务系统包括:频道流内容发布单元,用于负责向边缘终端节点传输包含节点请求频道内容的音视频流;频道流热度统计单元,用于统计当前时隙下边缘终端节点观看频道请求信息,维护频道热度排行表;边缘负载均衡监控单元,包括边缘网络流量监视模块与边缘网络负载均衡控制模块。本发明通过主控服务系统中边缘负载均衡监控单元来协调对各个节点域及其边缘节点对频道流的数据传输,将流量本地化,缓解多频道流下跨域流量骨干网络的拥塞情况,可广泛应用于网络电视领域和通信技术领域。

权利要求 :

1.一种面向电视直播系统的负载均衡动态组网方法,其特征在于,包括以下步骤:S1.1在每个网络节点构造并维护一张节点域状态信息表,该表包括这些属性:节点所在网络域ID、频道状态、当前上行带宽、当前下行带宽、频道码率对应可用上行带宽、可用下行带宽,网络节点包括终端设备;

S1.2每个网络节点向边缘负载均衡监控单元定期报告包含网络域状态信息的节点域状态信息表;

S1.3主控服务系统根据所有节点当前节点域状态信息表的数据内容,发现并通知关联目标域节点,按负载均衡策略与链式均衡法则,对边缘网络进行域间负载均衡动态组网,并基于该动态组建的网络拓扑传输单频道流、多频道流以及单频道流与多频道流混合的音视频流式数据;

基于上述步骤S1.1~S1.3,对单频道流构成的电视直播系统进行网络域间负载均衡;

基于上述步骤S1.1~S1.3,对多频道流组合构成的电视直播系统进行网络域间负载均衡;

基于上述步骤S1.1~S1.3,对单频道流与多频道流混合构成的电视直播系统进行网络域间负载均衡;

对于存在多频道流参与的电视直播系统,多频道流的频道组成随时隙发生更新,由此可实现网络域间负载均衡;

其中,负载均衡策略包括平均分配策略、负载最小优先分配策略和按权均衡分配策略;

平均分配策略是指将目标频道流数据平均分配给可供分享节点所在的域,权重分配系数为λi=1/n,1≤i≤n;

负载最小优先分配策略是指将目标频道流数据优先分配给上行带宽负载最小的域,权重分配系数为λ1=1,λi=0,2≤i≤n;

按权均衡分配策略指将目标频道流数据按各个域的负载比例,分配给可供分享的域,使得分配后各个域的上行带宽趋向于平衡;

如果可供分享域都为0,则采用平均分配策略;如果存在一个域为0,则采用负载最小优先分配策略;否则,权重分配系数为其中,n为可供分享域的个数;

按链式均衡法则进行负载均衡,包括:A1、边缘终端节点离开当前频道,边缘网络负载均衡控制模块获取监视模块信息表中数据分享节点列表,构建为一个链式重分配队列;

A2、边缘网络负载均衡控制模块通知队头节点进行负载均衡重分配,并根据监视模块中最新的网络节点状态,按自定义负载均衡策略构造并发送UPDATE信令,队头节点根据信令进行源节点及对应权重系数调整;

A3、队头节点出队,检查链式重分配队列节点是否为空,若否,执行步骤A1‑A2。

2.一种面向电视直播系统的负载均衡动态组网方法,应用于一种面向电视直播系统的负载均衡动态组网系统,其特征在于,包括以下步骤:S1、边缘终端节点启动,向主控服务系统发送节点初始化消息,以使边缘网络流量监视模块更新监视模块信息,向所述边缘终端节点发送所述监视模块信息;

S2、边缘终端节点向主控服务系统发送频道请求,以使频道流热度统计单元更新频道流热度排行表,判断所述主控服务系统是否达到多频道流机制启动阈值,若达到阈值,主控服务系统开启多频道流机制,以及向所述边缘终端节点返回控制信令;

S3、边缘终端节点接收到边缘负载均衡监控单元的控制信息和节点信息,根据所述控制信息和所述节点信息获取目标频道流数据;

S4、边缘终端节点开始解码所述目标频道流数据并播放目标频道流视频数据;

S5、边缘终端节点定时向主控系统发送心跳包,边缘负载均衡监控单元更新节点信息;

其中所述面向电视直播系统的负载均衡动态组网系统,包括中心服务器和边缘终端节点;

所述中心服务器由集群搭建而成,部署主控服务系统,所述主控服务系统包括:频道流内容发布单元,用于负责向所述边缘终端节点传输包含节点请求频道内容的音视频流;

频道流热度统计单元,用于统计当前时隙下所述边缘终端节点观看频道请求信息,维护频道热度排行表;

边缘负载均衡监控单元,包括边缘网络流量监视模块与边缘网络负载均衡控制模块;

所述边缘网络流量监视模块,用于监视边缘网络流量情况,维护包含节点域状态信息表的监视模块信息;

所述边缘网络负载均衡控制模块,用于感知节点状态变化,根据监视模块信息,发现并通知关联目标域节点,按负载均衡策略与链式均衡法则,对边缘网络进行域间负载均衡动态组网,并基于该动态组建的网络拓扑传输单频道流、多频道流以及单频道流与多频道流混合的音视频流式数据;在多频道流机制下,多频道流的频道组成会随时隙发生更新,因而导致边缘网络域间负载均衡;

所述步骤S3具体包括以下步骤:

S31、主控服务系统未开启多频道流机制,边缘终端节点从中心服务器获取所述目标频道流,进入步骤S4;

S32、主控服务系统已开启多频道流机制,但边缘终端节点未缓存最新多频道流数据,边缘终端节点将根据收到的控制信息与节点信息,从中心服务器、本域其他节点或其他域节点获取多频道流数据,若所述多频道流数据不包含目标频道流数据,则进入步骤S33,否则进入步骤S4;

S33、主控服务系统已开启多频道流机制,但边缘终端节点缓存的多频道流数据不包含所述目标频道流数据,边缘终端节点将根据收到的控制信息与节点信息,从中心服务器、本域其他节点或其他域节点获取目标频道流数据,进入步骤S4。

3.根据权利要求2所述的一种面向电视直播系统的负载均衡动态组网方法,其特征在于,所述负载均衡动态组网方法还包括以下步骤:S6、当多频道流机制开启且达到多频道流更新时隙,主控服务系统检查频道流热度统计单元的信息,若多频道流成分发生变化,主控服务系统则向边缘终端节点发送多频道流变更控制信息,进入步骤S32;

S7、当边缘终端节点发生频道切换时,边缘终端节点向主控服务系统发送停止接收当前频道请求,主控服务系统的边缘网络负载均衡控制模块检查边缘网络流量监视模块中信息,找到与所述边缘终端节点关联的目标域并向目标域节点发送工作带宽分配通知,关联节点从主控服务系统的边缘网络流量监视模块获取最新的网络节点信息,并按负载均衡策略与链式均衡法则生成的控制信息进行负载均衡;边缘终端节点向主控服务系统发送新频道请求,进入步骤S2;

S8、当边缘终端节点关闭时,边缘终端节点向主控服务系统发送停止接收当前频道请求,主控服务系统的边缘网络负载均衡控制模块会检查监视模块中信息,找到所述边缘终端节点关联的目标域并向目标域节点发送工作带宽分配通知;关联节点从主控服务系统监视模块获取最新的网络节点信息,并按负载均衡策略与链式均衡法则生成的从控制模块接收的控制信息进行负载均衡;主控服务系统更新边缘负载均衡监控单元信息,更新频道流热度统计单元信息,当频道流热度统计单元的信息达到多频道流机制关闭阈值时,关闭多频道流机制,所有边缘终端节点向主控服务系统获取频道流数据。

4.根据权利要求2所述的一种面向电视直播系统的负载均衡动态组网方法,其特征在于,所述控制信息包括节点状态信息变更信令,所述节点状态信息变更信令的结构为

5.根据权利要求3所述的一种面向电视直播系统的负载均衡动态组网方法,其特征在于,所述负载均衡策略包括平均分配策略、负载最小优先分配策略和按权均衡分配策略;

平均分配策略是指将目标频道流数据平均分配给可供分享节点所在的域,权重分配系数为λi=1/n,1≤i≤n;

负载最小优先分配策略是指将目标频道流数据优先分配给上行带宽负载最小的域,权重分配系数为λ1=1,λi=0,2≤i≤n;

按权均衡分配策略指将目标频道流数据按各个域的负载比例,分配给可供分享的域,使得分配后各个域的上行带宽趋向于平衡;

如果可供分享域都为0,则采用平均分配策略;如果存在一个域为0,则采用负载最小优先分配策略;否则,权重分配系数为其中,n为可供分享域的个数。

6.根据权利要求3所述的一种面向电视直播系统的负载均衡动态组网方法,其特征在于,按链式均衡法则进行负载均衡,包括:A1、边缘终端节点离开当前频道,边缘网络负载均衡控制模块获取监视模块信息表中数据分享节点列表,构建为一个链式重分配队列;

A2、边缘网络负载均衡控制模块通知队头节点进行负载均衡重分配,并根据监视模块中最新的网络节点状态,按自定义负载均衡策略构造并发送UPDATE信令,队头节点根据信令进行源节点及对应权重系数调整;

A3、队头节点出队,检查链式重分配队列节点是否为空,若否,执行步骤A1‑A2。

说明书 :

面向电视直播系统的负载均衡动态组网系统及方法

技术领域

[0001] 本发明涉及网络电视领域和通信技术领域,尤其涉及一种面向电视直播系统的负载均衡动态组网系统及方法。

背景技术

[0002] 各种智能终端的不断涌现为网络用户观看直播频道提供了更为丰富的平台,常用于IP网络电视直播的边缘用户终端机顶盒(STB,Set‑Top‑Box) ,经过不断的更新换代,在
计算性能与接入带宽方面得到了大幅提升,为改善网络电视用户的观看体验提供了很好的
基础。根据第45次《中国互联网络发展状况统计报告》显示,2019年12月100Mbps及以上宽带
用户占比85.4%,平均固定带宽接入速度为37.69Mbps,接入端宽带网络的提升,使得网络电
视用户的覆盖率不断提升。截止2020年3月,我国网民规模达到9.04亿,其中使用电视上网
方式的网民比例为32%。
[0003] 良好的接入宽带网络条件以及庞大的用户数量基础,使得网络电视频道直播成为对等网络一个很好的应用场景。在对等网络下,频道切换时间主要由节点发现、数据传输、
数据解码三部分组成,节点发现时间是指边缘请求节点向目录服务器获取边缘可供分享节
点列表;数据传输时间是指内容服务器经过骨干网向边缘请求节点,或边缘可供分享节点
向边缘请求节点的频道流数据传输时间;数据解码时间是指当节点设备缓冲区数据达到可
播放阈值时,进行解码操作并在显示设备展现第一帧画面的时间。
[0004] 对于频道数量不多的网络直播场景下,采用多频道流的方案是一个改善用户QoE与降低中心服务器和骨干网负载的解决方案,即在用户后台同时缓冲当前网络中若干个最
热门频道,使得用户切换至热门频道的时间压缩至本地设备数据解码时长。由于对等网络
本质是建立在互联网上的一种分布式覆盖网络,边缘终端节点依据ISP、地理位置等信息划
分为多个节点域进行协同工作和资源共享。随着边缘终端节点数量的增加以及接入宽带网
络利用率的提升,不均衡的跨域流量分配会容易造成少数节点域的域间网络带宽占用过
高,对域间设备进出口宽带的要求提升,以及节点加入离开对等网络的不稳定等问题,边缘
网络负载均衡成为了一大挑战。

发明内容

[0005] 为至少一定程度上解决现有技术中存在的技术问题之一,本发明的目的在于提供一种面向电视直播系统的负载均衡动态组网系统及方法。
[0006] 本发明所采用的技术方案是:
[0007] 一种面向电视直播系统的负载均衡动态组网系统,包括中心服务器和边缘终端节点;
[0008] 所述中心服务器由集群搭建而成,部署主控服务系统,所述主控服务系统包括:
[0009] 频道流内容发布单元,用于负责向所述边缘终端节点传输包含节点请求频道内容的音视频流;
[0010] 频道流热度统计单元,用于统计当前时隙下所述边缘终端节点观看频道请求信息,维护频道热度排行表;
[0011] 边缘负载均衡监控单元,包括边缘网络流量监视模块与边缘网络负载均衡控制模块;
[0012] 所述边缘网络流量监视模块,用于监视边缘网络流量情况,获得监视模块信息;
[0013] 所述边缘网络负载均衡控制模块,用于感知节点状态变化,根据监视模块信息,发现并通知关联目标域节点,使边缘网络按负载均衡策略与链式均衡法则进行负载均衡动态
组网;在多频道流机制下,多频道流的组成会随时隙发生更新,因而导致边缘网络负载均
衡。
[0014] 进一步,所述边缘终端节点具有如下功能:
[0015] 用于向所述主控服务系统发送频道观看请求;
[0016] 用于根据所述主控服务系统的协调,从中心服务器、域内其他节点或域间其他节点下载频道流数据;
[0017] 用于向所述域内其他节点或所述域间其他节点提供对等上传服务;
[0018] 用于对所述频道流数据进行解码,以播放直播视频。
[0019] 进一步,所述音视频流包括一个由若干热门频道流组成的多频道流及其他单一频道组成的单频道流。
[0020] 进一步,所述监视模块信息包括节点基础信息表、节点状态信息表和节点域状态信息表。
[0021] 本发明所采用的另一技术方案是:
[0022] 一种面向电视直播系统的负载均衡动态组网方法,包括以下步骤:
[0023] S1.1 在每个网络节点构造并维护一张节点域状态信息表,该表包括这些属性:节点所在网络域ID、频道状态、当前上行带宽、当前下行带宽、频道码率对应可用上行带宽、可
用下行带宽,网络节点包括但不限于终端设备;
[0024] S1.2 每个网络节点向边缘负载均衡监控单元定期报告包含网络域状态信息的节点域状态信息表;
[0025] S1.3 主控服务系统根据所有节点当前节点域状态信息表的数据内容,发现并通知关联目标域节点,按负载均衡策略与链式均衡法则,对边缘网络进行域间负载均衡动态
组网,并基于该动态组建的网络拓扑传输单频道流、多频道流以及单频道流与多频道流混
合的音视频流式数据;
[0026] 基于上述步骤S1.1~S1.3, 对单频道流构成的电视直播系统进行网络域间负载均衡;基于上述步骤S1.1~S1.3, 对多频道流组合构成的电视直播系统进行网络域间负载
均衡;基于上述步骤S1.1~S1.3, 对单频道流与多频道流混合构成的电视直播系统进行网
络域间负载均衡;
[0027] 对于存在多频道流参与的电视直播系统,多频道流的频道组成随时隙发生更新,由此可实现网络域间负载均衡。
[0028] 本发明所采用的另一技术方案是:
[0029] 一种面向电视直播系统的负载均衡动态组网方法,应用于如上所述的一种面向电视直播系统的负载均衡动态组网系统,包括以下步骤:
[0030] S1、边缘终端节点启动,向主控服务系统发送节点初始化消息,以使边缘网络流量监视模块更新监视模块信息,向所述边缘终端节点发送所述监视模块信息;
[0031] S2、边缘终端节点向主控服务系统发送频道请求,以使频道流热度统计单元更新频道流热度排行表,判断所述主控服务系统是否达到多频道流机制启动阈值,若达到阈值,
主控服务系统开启多频道流机制,以及向所述边缘终端节点返回控制信令;
[0032] S3、边缘终端节点接收到边缘负载均衡监控单元的控制信息和节点信息,根据所述控制信息和所述节点信息获取目标频道流数据;
[0033] S4、边缘终端节点开始解码所述目标频道流数据并播放目标频道流视频数据;
[0034] S5、边缘终端节点定时向主控系统发送心跳包,边缘负载均衡监控单元更新节点信息。
[0035] 进一步,所述步骤S3具体包括以下步骤:
[0036] S31、主控服务系统未开启多频道流机制,边缘终端节点从中心服务器获取所述目标频道流,进入步骤S4;
[0037] S32、主控服务系统已开启多频道流机制,但边缘终端节点未缓存最新多频道流数据,边缘终端节点将根据收到的控制信息与节点信息,从中心服务器、本域其他节点或其他
域节点获取多频道流数据,若所述多频道流数据不包含目标频道流数据,则进入步骤S33,
否则进入步骤S4;
[0038] S33、主控服务系统已开启多频道流机制,但边缘终端节点缓存的多频道流数据不包含所述目标频道流数据,边缘终端节点将根据收到的控制信息与节点信息,从中心服务
器、本域其他节点或其他域节点获取目标频道流数据,进入步骤S4。
[0039] 进一步,所述负载均衡动态组网方法还包括以下步骤:
[0040] S6、当多频道流机制开启且达到多频道流更新时隙,主控服务系统检查频道流热度统计单元的信息,若多频道流成分发生变化,主控服务系统则向边缘终端节点发送多频
道流变更控制信息,进入步骤S32;
[0041] S7、当边缘终端节点发生频道切换时,边缘终端节点向主控服务系统发送停止接收当前频道请求,主控服务系统的边缘网络负载均衡控制模块检查边缘网络流量监视模块
中信息,找到与所述边缘终端节点关联的目标域并向目标域节点发送工作带宽分配通知,
关联节点从主控服务系统的边缘网络流量监视模块获取最新的网络节点信息,并按负载均
衡策略与链式均衡法则生成的控制信息进行负载均衡;边缘终端节点向主控服务系统发送
新频道请求,进入步骤S2;
[0042] S8、当边缘终端节点关闭时,边缘终端节点向主控服务系统发送停止接收当前频道请求,主控服务系统的边缘网络负载均衡控制模块会检查监视模块中信息,找到所述边
缘终端节点关联的目标域并向目标域节点发送工作带宽分配通知;关联节点从主控服务系
统监视模块获取最新的网络节点信息,并按负载均衡策略与链式均衡法则生成的从控制模
块接收的控制信息进行负载均衡;主控服务系统更新边缘负载均衡监控单元信息,更新频
道流热度统计单元信息,当频道流热度统计单元的信息达到多频道流机制关闭阈值时,关
闭多频道流机制,所有边缘终端节点向主控服务系统获取频道流数据。
[0043] 进一步,所述控制信息包括节点状态信息变更信令,所述节点状态信息变更信令的结构为
[0044] 进一步,所述负载均衡策略包括平均分配策略、负载最小优先分配策略和按权均衡分配策略;
[0045] 平均分配策略是指将目标频道流数据平均分配给可供分享节点所在的域,权重分配系数为 ;
[0046] 负载最小优先分配策略是指将目标频道流数据优先分配给上行带宽负载最小的域,权重分配系数为 ;
[0047] 按权均衡分配策略指将目标频道流数据按各个域的负载比例,分配给可供分享的域,使得分配后各个域的上行带宽趋向于平衡;
[0048] 如果可供分享域都为0,则采用平均分配策略;如果存在一个域为0,则采用负载最小优先分配策略;否则,权重分配系数为 ;
[0049] 其中,n为可供分享域的个数。
[0050] 进一步,按链式均衡法则进行负载均衡,包括:
[0051] A1、边缘终端节点离开当前频道,边缘网络负载均衡控制模块获取监视模块信息表中数据分享节点列表,构建为一个链式重分配队列;
[0052] A2、边缘网络负载均衡控制模块通知队头节点进行负载均衡重分配,并根据监视模块中最新的网络节点状态,按自定义负载均衡策略构造并发送UPDATE信令,队头节点根
据信令进行源节点及对应权重系数调整;
[0053] A3、队头节点出队,检查链式重分配队列节点是否为空,若否,执行步骤A1‑A2。
[0054] 本发明的有益效果是:本发明通过主控服务系统中边缘负载均衡监控单元来协调对各个节点域及其边缘节点对频道流的数据传输,将流量本地化,缓解多频道流下跨域流
量骨干网络的拥塞情况,同时保持边缘节点对热门频道的快速切换,提高用户的QoE体验。

附图说明

[0055] 为了更清楚地说明本发明实施例或者现有技术中的技术方案,下面对本发明实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅
仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员而言,在
无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
[0056] 图1是本发明实施例中一种面向电视直播系统的负载均衡动态组网系统的基本架构图;
[0057] 图2是本发明实施例中节点行为以及主控服务系统工作的基本流程图;
[0058] 图3是本发明实施例中边缘节点状态变化与边缘网络负载均衡监控单元针对单频道流的工作结果示意图;
[0059] 图4是本发明实施例中边缘节点状态变化与边缘网络负载均衡监控单元针对多频道流的工作结果示意图;
[0060] 图5是本发明实施例中,记录R9产生后,边缘网络流量监视模块所维护的主要节点与节点域状态信息的示意图;
[0061] 图6是本发明实施例中系统运行时边缘网络负载均衡监控单元工作后的节点域状态变化示意图的前部分;
[0062] 图7是本发明实施例中系统运行时边缘网络负载均衡监控单元工作后的节点域状态变化示意图的后部分。

具体实施方式

[0063] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附
图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。对于以下
实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实
施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
[0064] 在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简
化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和
操作,因此不能理解为对本发明的限制。
[0065] 在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、
第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所
指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0066] 本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体
含义。
[0067] 如图1所示,本实施例提供一种面向多频道流电视直播系统的负载均衡动态组网系统,该负载均衡动态组网系统至少包括中心服务器,边缘终端节点,其中:
[0068] 中心服务器可由集群搭建而成,部署主控服务系统,包括以下单元:
[0069] 频道流内容发布单元,负责向边缘终端节点传输包含节点请求频道内容的音视频流,音视频流可分成一个由若干热门频道流组成的多频道流及其他单一频道组成的单频道
流。当多频道流机制启动时,除了节点请求单频道流,还会根据频道流热度统计单元的统计
信息向节点传输若干个热门频道组成的多频道流。
[0070] 频道流热度统计单元,用于统计当前时隙下边缘终端节点观看频道请求信息,维护频道热度排行表。
[0071] 边缘负载均衡监控单元由边缘网络流量监视模块与边缘网络负载均衡模块组成。监视模块,用于监视边缘网络流量情况,包括节点基础信息,节点状态信息、节点域状态信
息等;控制模块,用于感知包括新节点加入系统、节点请求频道数据、旧节点离开系统等节
点状态变化,根据监视模块信息,发现并通知关联目标域节点,边缘网络按自定义负载均衡
策略与链式均衡法则进行负载均衡动态组网。在多频道流机制下,多频道流的组成会随时
隙发生更新以保证用户对最新热门频道的快速切换,因此导致边缘网络负载均衡,同样由
边缘负载均衡监控单元负责。
[0072] 边缘终端节点具有如下功能:
[0073] B1、用于向主控服务系统发送频道观看请求;
[0074] B2、用于根据主控服务系统的协调,从中心服务器、域内其他节点或域间其他节点接受频道流数据;
[0075] B3、用于向域内其他节点或域间其他节点提供对等下载服务;
[0076] B4、用于频道流数据的解码并播放直播视频。
[0077] 参见图2,基于上述的负载均衡动态组网系统,一个边缘节点(也即边缘终端节点)产生行为以及主控服务系统工作的流程包括以下步骤:
[0078] S1、边缘节点启动,向主控服务系统发送节点初始化消息并加入系统,主控服务系统的边缘网络流量监视模块,更新节点基础信息表、节点状态信息表、节点域状态信息表等
信息,并向节点发送这些信息。
[0079] S2、边缘节点向主控服务系统发送频道请求,频道流热度统计单元更新频道流热度排行表,判断系统是否达到多频道流机制启动阈值,如果达到了多频道流机制启动阈值,
主控服务系统开启多频道流机制。主控服务系统控制模块向边缘节点返回控制信令。
[0080] S3、边缘节点接收到控制模块的控制信息,并根据S1所述监视模块发送过来的信息,进行以下操作:
[0081] S3‑1、系统未开启多频道流机制,边缘节点直接从中心服务器获取目标频道流,进入步骤S4。
[0082] S3‑2、系统已开启多频道流机制但节点未缓存最新多频道流数据,节点将根据收到的控制信息与节点信息,从中心服务器、本域其他节点或其他域节点获取多频道流数据,
若多频道流不包含目标频道流数据,则进入步骤S3‑3,否则进入步骤S4。
[0083] S3‑3、系统已开启多频道流机制但节点缓存的多频道流数据不包含目标频道流数据,节点将根据收到的控制信息与节点信息,从中心服务器、本域其他节点或其他域节点获
取目标频道流数据,进入步骤S4。
[0084] S4、边缘节点开始解码缓冲区的目标频道流数据并播放目标频道流视频数据。
[0085] S5、节点定时向主控系统发送心跳包,主控服务系统中边缘负载均衡监视单元更新节点信息。
[0086] S6、当多频道流机制开启且达到多频道流更新时隙,主控服务系统检查频道流热度统计单元信息,若多频道流成分发生变化,主控服务系统则向边缘节点发送多频道流变
更控制信息,进入步骤3‑2。
[0087] S7、当节点发生频道切换时,节点向主控服务系统发送停止接收当前频道请求,主控服务系统控制模块会检查监视模块中信息,找到与此节点关联的目标域并向目标域节点
发送工作带宽分配通知。关联节点从主控服务系统监视模块获取最新的网络节点信息,并
按自定义负载均衡策略与链式均衡法则生成的从控制模块接收的控制信息进行负载均衡;
边缘节点向主控服务系统发送新频道请求,进入步骤S2。
[0088] S8、当节点关闭时,节点向主控服务系统发送停止接收当前频道请求,主控服务系统控制模块会检查监视模块中信息,找到与此节点关联的目标域并向目标域节点发送工作
带宽分配通知。关联节点从主控服务系统监视模块获取最新的网络节点信息,并按自定义
负载均衡策略与链式均衡法则生成的从控制模块接收的控制信息进行负载均衡;主控服务
系统更新边缘负载均衡监控单元信息,更新频道流热度统计单元信息,当频道流热度统计
单元的信息达到多频道流机制关闭阈值时,关闭多频道流机制,系统内所有节点直接向主
控服务系统获取频道流数据。
[0089] 进一步作为可选的实施方式,本实施例的边缘负载均衡监控单元所维护边缘网络节点信息包括:
[0090] C1、节点基础信息表,包括节点ID、域ID、IP地址、最大上行带宽、最大下行带宽等。
[0091]
[0092] C2、节点状态信息表,包括节点ID、当前上行带宽、当前下行带宽、可用上行带宽、可用下行带宽、频道状态、域ID、数据源节点、数据分享节点等,其中数据源节点是指该节点
的目标频道流数据的来源节点列表,数据分享节点是指从该节点缓冲区获取目标频道流的
节点列表,频道状态使用BitField表示各个频道流的可供分享情况,如001表示该节点已缓
冲且可分享频道1数据。
[0093]
[0094] C3、节点域状态信息表,包括域ID、频道状态、当前上行带宽、当前下行带宽、频道对应可用上行带宽、可用下行带宽等。
[0095]
[0096] 其中,信息表中所记录带宽相关字段是指涉及域间产生的部分,域内节点相互分享产生的本地带宽流量不作体现。
[0097] 进一步作为可选的实施方式,本实施例的边缘负载均衡监控单元控制模块所产生的控制信息主要有三种由五元组产生的节点状态信息变更信令,结构如节点ID,频道流,源节点ID列表,源节点权重系数>,分别代表节点进入新频道、节点离开旧
频道、节点调整频道流来源。
[0098] 进一步作为可选的实施方式,边缘负载均衡监控单元中,控制模块的工作触发时机主要包括节点请求新频道流、节点离开当前频道、节点请求最新多频道流等节点状态变
化,以及系统进入多频道流更新时隙等。
[0099] 进一步作为可选的实施方式,本实施例的面向多频道流电视直播系统的负载均衡动态组网方法中,在多频道流机制下,节点所接收的音视频流包括若干热门频道组成的多
频道流与其他频道组成的单频道流,边缘网络负载均衡控制模块工作时机,包括:
[0100] D1、对于单频道流,节点请求新频道流,且新频道流将由其他节点域提供时,控制模块按自定义负载均衡策略向节点发出负载均衡控制信息;
[0101] D2、对于单频道流,节点离开当前频道,且有其他域的关联节点从该节点缓冲区获取当前频道流数据时,控制模块按自定义负载均衡策略和链式均衡法则向关联节点发出负
载均衡控制信息。
[0102] D3、对于多频道流,节点所需的多频道流数据需要由其他节点域提供时,控制模块按自定义负载均衡策略向节点发出负载均衡控制信息;
[0103] D4、对于多频道流,系统进入多频道流的更新时隙时,可视作所有边缘节点离开当前多频道流,请求最新多频道流,控制模块根据节点的依赖关系,按自定义负载均衡策略和
链式均衡法则向关联节点发出负载均衡控制信息。
[0104] 进一步作为可选的实施方式,本实施例的边缘网络负载均衡控制模块为了使各个节点域达到负载均衡的状态,在感知到节点状态变化时,所采取的负载均衡策略有以下可
选方案:
[0105] a、平均分配策略是指将目标频道流数据平均分配给存在可供分享节点所的域,权重分配系数为 。
[0106] b、负载最小优先分配策略是指将目标频道流数据优先分配给上行带宽负载最小的域,权重分配系数为 ,D1为当前边缘网络上行带宽负载最小的节
点域。
[0107] c、按权均衡分配策略指将目标频道流数据按各个域的负载比例,分配给可供分享的域,使得分配后各个域的上行带宽趋向于平衡。如果可供分享域都为0,则采用平均分配
策略;如果存在一个域为0,则采用负载最小优先分配策略;否则,权重分配系数为

[0108] 其中,可供分享域D1、...、Di、...、Dn的上行带宽负载分别为V1≤...≤Vi≤...≤Vn,为Di的权重分配系数。为了保证节点内容传输的稳定性,可供分享域需要满足一下约
束:
[0109] 1、可供分享域数量n,即目标频道流数据所依赖的供应域的数量,n为可配置因子,n太小会导致目标频道流的供应不稳定,n太大,会导致供应域的供应权重系数更新频繁。
[0110] 2、对于每个可供分享域,可用上行带宽满足 ,ɑ为一个频道流的码率,s为可配置的冗余因子,s≥1,可适当地缓冲冗余数据以保证播放的
稳定。
[0111] 3、当约束1、2任意一个不满足时,可从中心服务器直接获取频道数据流供应。
[0112] 此处,对于某一个可供分享域,域内对外供应带宽可按任意策略分配给域内的可供分享节点,只要这些节点的总供应带宽满足条件,最终分配比例不影响域间的负载均衡
结果。
[0113] 进一步作为可选的实施方式,本实施例的边缘网络负载均衡控制模块在某一节点离开频道时,其关联节点域发生权重系数调整遵循链式均衡法则,流程如下,
[0114] 1、节点离开当前频道,控制模块获取监视模块节点状态信息表中数据分享节点列表,构建为一个链式重分配队列。
[0115] 2、控制模块通知队头节点进行负载均衡重分配,并根据监视模块中最新的网络节点状态,按自定义负载均衡策略构造并发送UPDATE信令,队头节点根据信令进行源节点及
对应权重系数调整。
[0116] 3、队头节点出队,检查链式重分配队列节点是否为空,若否,执行步骤2,3。
[0117] 综上所述,本实施例的系统及方法可以面向大规模用户下多频道流方式传输网络电视直播频道流时的边缘节点负载均衡,相对于现有技术具有如下优点:
[0118] 1、本实施例通过主控服务系统中,边缘负载均衡监控单元来协调对各个节点域及其边缘节点对频道流的数据传输,将流量本地化,缓解多频道流下跨域流量骨干网络的拥
塞情况,同时保持边缘节点对热门频道的快速切换,提高用户的QoE体验。
[0119] 2、本实施例在采用多频道流机制,边缘节点服务能力被限制时,通过边缘负载均衡监控单元的动态分配,使边缘网络达到负载均衡的状态,降低网络中的单域出口带宽峰
值,从而降低对边缘域间传输设备对最大上行带宽的要求,节约设备成本。
[0120] 以下结合具体事例对上述方法进行详细解释。该方法的基本构件如图1所示,且方法中用于说明节点行为以及主控服务系统工作的基本流程图如图2所示,期间的负载均衡
模块工作流程图如图3与图4所示。
[0121] 网络电视用户的部分观看日志记录如表1所示,本实施例以表1所示的节点请求记录为例,来说明系统中节点的行为变化与负载均衡模块的工作配合,其中系统包括U(U=11)
个边缘节点,D(D=4)个域,C(C=3)个频道,多频道流启动条件为系统中节点数量达到N(N=
10),多频道流关闭条件设为系统中节点数低于N‑1(启动条件控制严格于关闭条件能有效
避免多频道流机制与单频道流机制之间的频繁切换),多频道流由M(M=1)个热门频道组成,
多频道流的更新时隙为T(T=40)分钟一次,可供分享域数量阈值,冗余因子s(s=1),一个频
道流的码率为ɑ(ɑ=6Mbps,如1080P的视频码率约6Mbps),边缘节点用于域间数据传输的最
大上下行带宽分别为50Mbps、100Mbps。
[0122] 表1
[0123] 观看记录ID 用户ID 域ID 频道ID 开始时间 结束时间R1 U2 D1 C3 2020‑01‑01 07:52:42 2020‑01‑01 08:12:30
R2 U3 D1 C1 2020‑01‑01 07:52:43 2020‑01‑01 08:59:43
R3 U4 D2 C3 2020‑01‑01 07:52:44 2020‑01‑01 08:29:44
R4 U5 D2 C2 2020‑01‑01 07:53:41 2020‑01‑01 08:59:42
R5 U6 D2 C1 2020‑01‑01 07:53:45 2020‑01‑01 08:35:45
R6 U7 D3 C2 2020‑01‑01 07:54:40 2020‑01‑01 08:12:33
R7 U8 D3 C1 2020‑01‑01 07:55:39 2020‑01‑01 08:59:39
R8 U9 D3 C1 2020‑01‑01 07:56:38 2020‑01‑01 08:59:38
R9 U10 D3 C2 2020‑01‑01 07:57:37 2020‑01‑01 08:59:37
R10 U11 D4 C2 2020‑01‑01 08:00:36 2020‑01‑01 08:18:33
R11 U1 D1 C1 2020‑01‑01 08:01:35 2020‑01‑01 08:09:30
R12 U1 D1 C2 2020‑01‑01 08:09:35 2020‑01‑01 08:59:36
R13 U7 D3 C3 2020‑01‑01 08:12:35 2020‑01‑01 08:59:48
R14 U11 D4 C3 2020‑01‑01 08:18:35 2020‑01‑01 08:59:47
[0124] 在R1 R10记录产生前,系统未开启多频道流机制,节点均直接从中心服务器获取~
频道流数据,R9记录产生后,边缘网络流量监视模块所维护的信息如图5所示,其中节点ID
为U0用于标识中心服务器。
[0125] 本实施例采用按平均分配策略来对边缘网络进行负载均衡动态组网,R10以及其他记录产生时,边缘网络负载均衡监控单元所产生的控制信令以及处理后的节点域状态信
息如附图6和图7所示,系统运行的主要过程描述如下:
[0126] R10、U11启动并向主控服务系统发送初始化请求,监视模块更新节点信息表,新增U11节点信息;U11发起C2频道请求,控制模块返回控制信令IN①,节点从中心服务器获取C2
频道流数据并开始播放;监视模块更新信息,频道热度统计单元信息更新,系统活跃节点数
量达到10,启动多频道流机制,选取1个热门频道C1组成多频道流;除节点域D4外均已缓存
多频道流,故控制模块按平均分配策略生成控制信令IN②,节点U11从节点域D1、D2、D3分别
按1/3、1/3、1/3的权重分配获取多频道流。
[0127] 多频道流开启后,边缘节点均缓存多频道流,成为多频道流的可供分享节点,故附图6中R10对应的节点域状态信息中频道C1的可用上行带宽会相应增加。
[0128] R11、U1启动并向主控服务系统发送初始化请求,监视模块更新节点信息表,新增U1节点信息;多频道流机制已启动,U1接收控制模块返回控制信令IN③,节点从本域内U3节
点获取多频道流,不产生域间流量;U1发起C1频道请求,C1包含于多频道流,故直接切换至
C1频道开始播放。
[0129] R12、U1发起频道切换请求,监控单元检查监视模块,U1的当前频道为属于多频道流,故无需产生OUT信令;U1发起C2频道请求,控制模块根据监视模块信息,返回信令IN④,
节点U1从节点域D2、D3、D4分别按1/3、1/3、1/3的权重分配获取C2频道流数据并开始播放。
[0130] 此处,由于D2、D3、D4节点域向U1供应C2频道流的同时,对于多频道流的可用上行带宽也会相应降低。
[0131] R13、U7发起频道切换请求,监控单元检查监视模块,U7停止从中心服务器接收C2频道数据,控制模块生成OUT⑤,生成UPDATE⑥信令并发送给U1;U7发起C3频道请求,控制根
据监视模块信息,返回信令IN⑦,节点U7从D1、D2分别按1/2、1/2的权重分配获取C3频道流
数据并开始播放。
[0132] R14、U11发起频道切换请求,监控单元检查监视模块,U11停止从中心服务器接收C2频道数据,控制模块生成OUT⑧,生成UPDATE⑨信令并发送给U1;U11发起C3频道请求,控
制根据监视模块信息,返回信令IN⑩,节点U1从D1、D2、D3分别按1/3、1/3、1/3的权重分配获
取C3频道流数据并开始播放。
[0133] R3′、U4节点关闭设备,监控单元更新监视模块,获取U4的数据分享节点构建链式重分配队列{U7,U11},控制模块生成UPDATE⑪与UPDATE⑫分别返回给U7与U11,U7与U11先
后从链式重分配队列中出队;U4停止从中心服务器接收C3频道数据,控制模块生成OUT⑬信
令;U4从系统中退出,监视模块更新节点信息表,系统活跃节点数10>8,维持多频道流机制
开启。
[0134] R5′、U6节点关闭设备,监控单元更新监视模块,D2域内将无活跃节点作为多频道流{C1}的来源,获取U6关于多频道流的数据分享节点构建链式重分配队列{U11},控制模块
生成UPDATE⑭返回给U11,使其从D1与D3获取多频道流;U6停止从中心服务器接收C1频道数
据,控制模块生成OUT⑮信令;为了保证D2域内维持多频道流,任意选取域内活跃节点,从其
他域中获取多频道流数据,此处,控制模块生成IN⑯返回给U5节点,U5开始缓冲多频道流数
据;U6从系统中退出,监视模块更新节点信息表,系统活跃节点数9>8,维持多频道流机制开
启。
[0135] T1、系统到达多频道流更新时隙,根据频道热度统计单元信息,当前实习,请求C3频次最多,故多频道流成分切换成{C3};监视模块检查边缘节点信息,控制模块向D2域节点
发送关于最新多频道流的IN⑰信令,所有域发送接收过期多频道流数据信令OUT⑱,所有边
缘节点比对自身节点状态并停止接收除正在观看的频道流外的多频道流数据,即U11、U5将
不再从其他域获取{C1}频道流数据。
[0136] 在本实施例中,D1、D2、D3、D4单域下行工作带宽峰值分别18Mbps、18Mbps、24Mbps、12Mbps,D1、D2、D3、D4单域上行工作带宽峰值分别14Mbps、10Mbps、11Mbps、2Mbps,按平均分
配策略单域峰值为14Mbps,即此时间段边缘网络域间设备最大上行带宽要求为14Mbps。此
外,在系统的运行,中心负载工作带宽,随着边缘网络的负载均衡与节点数据分享,逐步降
低。
[0137] 在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体
上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和
描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不
限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被
改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0138] 此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块
中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理
解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考
虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的
常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无
需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特
定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及
其等同方案的全部范围来决定。
[0139] 所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说
对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计
算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个
人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存
储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0140] 在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供
指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执
行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设
备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传
输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装
置。
[0141] 计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器
(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存
储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的
介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其
他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0142] 应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件
或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下
列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路
的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场
可编程门阵列(FPGA)等。
[0143] 在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结
构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语
的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或
者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0144] 尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变
型,本发明的范围由权利要求及其等同物限定。
[0145] 以上是对本发明的较佳实施进行了具体说明,但本发明并不限于上述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这
些等同的变形或替换均包含在本申请权利要求所限定的范围内。