掌桥专利:专业的专利平台
掌桥专利
首页

一种直播数据流获取方法、装置、节点及系统

文献发布时间:2023-06-19 11:17:41


一种直播数据流获取方法、装置、节点及系统

技术领域

本发明涉及网络直播技术领域,特别是涉及一种直播数据流获取方法、装置、节点及系统。

背景技术

直播内容分发网络(Content Delivery Network,CDN)系统主要用于为用户提供直播数据流,参见图1,图1为现有的直播CDN系统的结构示意图,该系统由源节点110和边缘服务节点集群120组成,其中,边缘服务节点集群120中包括有部署在不同区域的大量边缘服务节点。

客户端设备集群130中的客户端设备通过与其最近的边缘服务节点将直播数据流上传至源节点110,当有用户想要观看某个目标直播数据流时,先向与该用户所使用的客户端设备最近的边缘服务节点发送直播数据流获取请求,当边缘服务节点中存储有目标直播数据流时,直接将目标直播数据流返回至客户端设备,当边缘服务节点中不存在目标直播数据流时,边缘服务节点会向源节点110发送直播数据流获取请求,以获取目标直播数据流,并在将目标直播数据流返回至客户端设备的同时,在本地对目标直播数据流进行存储。

在上述直播数据流获取过程中,当就近的边缘服务节点中不存在目标直播数据流时,就需要与源节点通信,从源节点中获取目标直播数据流,因此,源节点的带宽资源消耗较大。

发明内容

本发明实施例的目的在于提供一种直播数据流获取方法、装置、节点及系统,以降低源节点的带宽资源消耗。具体技术方案如下:

第一方面,本发明实施例提供了一种直播数据流获取方法,应用于直播内容分发网络CDN系统中的调度节点,所述直播CDN系统,还包括:源节点和多个边缘服务节点,所述方法,包括:

接收第一边缘服务节点发送的调度请求;其中,所述调度请求用于请求获取第一直播数据流;

基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点;

若存在,则将所述目标边缘服务节点的标识信息发送至所述第一边缘服务节点,以使所述第一边缘服务节点根据所述标识信息从所述目标边缘服务节点获取所述第一直播数据流,并将所述第一直播数据流返回至客户端设备。

进一步的,在所述基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点的步骤之前,还包括:

获取预先存储的各直播数据流的热度类别信息,所述热度类别信息是预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;所述热度类别信息包括:热流类别和非热流类别;所述热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

基于所述各直播数据流的热度类别信息,确定所述第一直播数据流的热度类别信息;

当所述第一直播数据流的热度类别信息为热流类别时,向所述第一边缘服务节点发送回源通知,以使所述第一边缘服务节点从所述源节点获取所述第一直播数据流,并将所述第一直播数据流返回至所述客户端设备;

当所述第一直播数据流的热度类别信息为非热流类别时,则执行所述基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点的步骤。

进一步的,所述基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点的步骤,包括:

基于预先从各边缘服务节点获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,且满足与所述非热流类别对应的预设条件的目标边缘服务节点。

进一步的,所述非热流类别包括:冷流类别和温流类别;其中,所述冷流类别的直播数据流为观看账号小于第二预设阈值的直播数据流;所述温流类别的直播数据流为观看账号大于所述第二预设阈值,且小于所述第一预设阈值的直播数据流;

所述基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,且满足与所述非热流类别对应的预设条件的目标边缘服务节点的步骤,包括:

当所述第一直播数据流的热度类别信息为冷流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,且与所述第一边缘服务节点属于同一运营商的目标边缘服务节点;

当所述第一直播数据流的热度类别信息为温流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,与所述第一边缘服务节点位于同一预设地理区域范围且属于同一运营商的目标边缘服务节点。

进一步的,所述方法还包括:

当接收到第二边缘服务节点发送的观看账号上报请求时,根据所述观看账号上报请求中包含的第二直播数据流的观看账号,确定所述第二直播数据流的热度类别信息;

基于确定的所述第二直播数据流的热度类别信息,更新预先存储的所述第二直播数据流的热度类别信息。

进一步的,所述方法,还包括:

当接收到第三边缘服务节点发送的数据流上报请求时,基于所述数据流上报请求,更新预先获得的所述第三边缘服务节点与各直播数据流的存储对应关系;其中,所述数据流上报请求为所述第三边缘服务节点在接收到客户端设备发送的第三直播数据流开播通知之后,向所述调度节点发送的;所述数据流上报请求中包括所述第三边缘服务节点的标识信息、所述第三直播数据流标识信息及所述第三直播数据流在所述源节点中的存储位置信息。

进一步的,所述目标边缘服务节点的标识信息包括所述目标边缘服务节点的网络地址。

进一步的,所述方法,还包括:

若所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点,则向所述第一边缘服务节点发送回源通知,以使所述第一边缘服务节点从所述源节点获取所述第一直播数据流,并将所述第一直播数据流返回至所述客户端设备。

第二方面,本发明实施例提供了一种直播数据流获取方法,应用于直播内容分发网络CDN系统中的边缘服务节点,所述直播CDN系统,还包括:源节点和调度节点,所述方法,包括:

接收客户端设备发送的获取请求,其中,所述获取请求用于请求获取第一直播数据流;

判断本地是否存在所述第一直播数据流;

若否,向所述调度节点发送调度请求,以使所述调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点;若有,则将所述目标边缘服务节点的标识信息发送至所述边缘服务节点;其中,所述调度请求用于请求获取所述第一直播数据流;

根据所述目标边缘服务节点的标识信息,从所述目标边缘服务节点获取所述第一直播数据流;

将所述第一直播数据流返回至所述客户端设备。

进一步的,在所述向所述调度节点发送调度请求的步骤之后,所述方法还包括:

当接收到所述调度节点发送的回源通知时,从所述源节点获取所述第一直播数据流;其中,所述回源通知为所述调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点时发送的;

将所述第一直播数据流返回至所述客户端设备。

进一步的,在所述向所述调度节点发送调度请求的步骤之后,所述方法还包括:

当接收到所述调度节点发送的回源通知时,从所述源节点获取所述第一直播数据流;所述回源通知为所述调度节点获取预先存储的各直播数据流的热度类别信息,并基于所述各直播数据流的热度类别信息,确定出所述第一直播数据流的热度类别信息为热流类别时发送的;或者,所述回源通知为所述调度节点基于所述各直播数据流的热度类别信息,确定出所述第一直播数据流的热度类别信息为非热流类别,并基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点时发送的;其中,所述热度类别信息是所述调度节点预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;所述热度类别信息包括:热流类别和非热流类别;所述热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

将所述第一直播数据流返回至所述客户端设备。

进一步的,所述方法还包括:

向所述调度节点发送观看账号上报请求,以使所述调度节点根据所述观看账号上报请求中包含的第二直播数据流的观看账号,确定所述第二直播数据流的热度类别信息;并基于所述第二直播数据流的热度类别信息,更新预先存储的所述第二直播数据流的热度类别信息。

进一步的,所述方法还包括:

当接受到客户端设备发送的第三直播数据流的开播通知时,向所述调度节点发送数据流上报请求,以使所述调度节点基于所述数据流上报请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,所述数据流上报请求中包括发送所述数据流上报请求的边缘服务节点的标识信息、所述第三直播数据流标识信息及所述第三直播数据流在所述源节点中的存储位置信息。

进一步的,所述方法还包括:

若本地存在所述第一直播数据流,则将所述第一直播数据流返回至所述客户端设备。

第三方面,本发明实施例提供了一种直播数据流获取装置,应用于直播内容分发网络CDN系统中的调度节点,所述直播CDN系统,还包括:源节点和多个边缘服务节点,所述装置,包括:

调度请求接收模块,用于接收第一边缘服务节点发送的调度请求;其中,所述调度请求用于请求获取第一直播数据流;

第一判断模块,用于基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点;

标识信息发送模块,用于若所述多个边缘服务节点中,存在存储有所述第一直播数据流的目标边缘服务节点,则将所述目标边缘服务节点的标识信息发送至所述第一边缘服务节点,以使所述第一边缘服务节点根据所述标识信息从所述目标边缘服务节点获取所述第一直播数据流,并将所述第一直播数据流返回至客户端设备。

进一步的,所述装置还包括:

热度类别信息获取模块,用于在所述基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点之前,获取预先存储的各直播数据流的热度类别信息,所述热度类别信息是预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;所述热度类别信息包括:热流类别和非热流类别;所述热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

第一热度类别信息确定模块,用于基于所述各直播数据流的热度类别信息,确定所述第一直播数据流的热度类别信息;

第一回源通知发送模块,用于当所述第一直播数据流的热度类别信息为热流类别时,向所述第一边缘服务节点发送回源通知,以使所述第一边缘服务节点从所述源节点获取所述第一直播数据流,并将所述第一直播数据流返回至所述客户端设备;

所述第一判断模块,具体用于当所述第一直播数据流的热度类别信息为非热流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点。

进一步的,所述第一判断模块,具体用于基于预先从各边缘服务节点获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,且满足与所述非热流类别对应的预设条件的目标边缘服务节点。

进一步的,所述非热流类别包括:冷流类别和温流类别;其中,所述冷流类别的直播数据流为观看账号小于第二预设阈值的直播数据流;所述温流类别的直播数据流为观看账号大于所述第二预设阈值,且小于所述第一预设阈值的直播数据流;

所述第一判断模块,具体用于:

当所述第一直播数据流的热度类别信息为冷流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,且与所述第一边缘服务节点属于同一运营商的目标边缘服务节点;

当所述第一直播数据流的热度类别信息为温流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流,与所述第一边缘服务节点位于同一预设地理区域范围且属于同一运营商的目标边缘服务节点。

进一步的,所述装置,还包括:

第二热度类别信息确定模块,用于当接收到第二边缘服务节点发送的观看账号上报请求时,根据所述观看账号上报请求中包含的第二直播数据流的观看账号,确定所述第二直播数据流的热度类别信息;

热度类别信息更新模块,用于基于确定的所述第二直播数据流的热度类别信息,更新预先存储的所述第二直播数据流的热度类别信息。

进一步的,所述装置,还包括:

存储对应关系更新模块,用于当接收到第三边缘服务节点发送的数据流上报请求时,基于所述数据流上报请求,更新预先获得的所述第三边缘服务节点与各直播数据流的存储对应关系;其中,所述数据流上报请求为所述第三边缘服务节点在接收到客户端设备发送的第三直播数据流开播通知之后,向所述调度节点发送的;所述数据流上报请求中包括所述第三边缘服务节点的标识信息、所述第三直播数据流标识信息及所述第三直播数据流在所述源节点中的存储位置信息。

进一步的,所述目标边缘服务节点的标识信息包括所述目标边缘服务节点的网络地址。

进一步的,所述装置,还包括:

第二回源通知发送模块,用于若所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点,则向所述第一边缘服务节点发送回源通知,以使所述第一边缘服务节点从所述源节点获取所述第一直播数据流,并将所述第一直播数据流返回至所述客户端设备。

第四方面,本发明实施例提供了一种直播数据流获取装置,应用于直播内容分发网络CDN系统中的边缘服务节点,所述直播CDN系统,还包括:源节点和调度节点,所述装置,包括:

获取请求接收模块,用于接收客户端设备发送的获取请求,其中,所述获取请求用于请求获取第一直播数据流;

第二判断模块,用于判断本地是否存在所述第一直播数据流;

调度请求发送模块,用于若本地不存在所述第一直播数据流,向所述调度节点发送调度请求,以使所述调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点;若存在,则将所述目标边缘服务节点的标识信息发送至所述边缘服务节点;其中,所述调度请求用于请求获取所述第一直播数据流;

第一数据流获取模块,用于根据所述目标边缘服务节点的标识信息,从所述目标边缘服务节点获取所述第一直播数据流;

第一数据流返回模块,用于将所述第一直播数据流返回至所述客户端设备。

进一步的,所述装置还包括:

第二数据流获取模块,用于在所述向所述调度节点发送调度请求之后,当接收到所述调度节点发送的回源通知时,从所述源节点获取所述第一直播数据流,之后,触发第二数据流返回模块;其中,所述回源通知为所述调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点时发送的;

所述第二数据流返回模块,用于将所述第一直播数据流返回至所述客户端设备。

进一步的,所述装置还包括:

第三数据流获取模块,用于在所述向所述调度节点发送调度请求之后,当接收到所述调度节点发送的回源通知时,从所述源节点获取所述第一直播数据流,之后,触发第三数据流返回模块;所述回源通知为所述调度节点获取预先存储的各直播数据流的热度类别信息,并基于所述各直播数据流的热度类别信息,确定出所述第一直播数据流的热度类别信息为热流类别时发送的;或者,所述回源通知为所述调度节点基于所述各直播数据流的热度类别信息,确定出所述第一直播数据流的热度类别信息为非热流类别,并基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出所述多个边缘服务节点中,不存在存储有所述第一直播数据流的目标边缘服务节点时发送的;其中,所述热度类别信息是所述调度节点预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;所述热度类别信息包括:热流类别和非热流类别;所述热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

所述第三数据流返回模块,用于将所述第一直播数据流返回至所述客户端设备。

进一步的,所述装置还包括:

观看账号上报请求发送模块,用于向所述调度节点发送观看账号上报请求,以使所述调度节点根据所述观看账号上报请求中包含的第二直播数据流的观看账号,确定所述第二直播数据流的热度类别信息;并基于所述第二直播数据流的热度类别信息,更新预先存储的所述第二直播数据流的热度类别信息。

进一步的,所述装置还包括:

数据流上报请求发送模块,用于当接受到客户端设备发送的第三直播数据流的开播通知时,向所述调度节点发送数据流上报请求,以使所述调度节点根据所述数据流上报请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,所述数据流上报请求中包括发送所述数据流上报请求的边缘服务节点的标识信息、所述第三直播数据流标识信息及所述第三直播数据流在所述源节点中的存储位置信息。

进一步的,所述装置还包括:

第四数据流返回模块,用于若本地存在所述第一直播数据流,则将所述第一直播数据流返回至所述客户端设备。

第五方面,本发明实施例提供了一种调度节点,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的直播数据流获取方法步骤。

第六方面,本发明实施例提供了一种边缘服务节点,包括:处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述第二方面任一所述的直播数据流获取方法步骤。

第七方面,本发明实施例提供了一种直播内容分发网络系统,包括:源节点、调度节点及边缘服务节点;

所述调度节点,用于实现上述第一方面任一所述的直播数据流获取方法步骤;

所述边缘服务节点,用于实现上述第二方面任一所述的直播数据流获取方法步骤。

第八方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面或第二方面任一所述的直播数据流获取方法步骤。

第九方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面任一所述的直播数据流获取方法步骤。

本发明实施例提供的一种直播数据流获取方法、装置、节点及系统,直播内容分发网络CDN系统中的调度节点接收第一边缘服务节点发送的调度请求;其中,所述调度请求用于请求获取第一直播数据流;基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断所述多个边缘服务节点中,是否存在存储有所述第一直播数据流的目标边缘服务节点;若存在,则将所述目标边缘服务节点的标识信息发送至所述第一边缘服务节点,以使所述第一边缘服务节点根据所述标识信息从所述目标边缘服务节点获取所述第一直播数据流,并将所述第一直播数据流返回至客户端设备。本发明实施例中,当第一边缘服务节点中不存在第一直播数据流时,则向调度节点发送调度请求,以使调度节点确定在其他边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点,若存在,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,此种情况下,第一边缘服务节点则无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗。

当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有的直播CDN系统的结构示意图;

图2为本发明实施例提供的直播CDN系统的结构示意图;

图3为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的调度节点的一种流程示意图;

图4为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的调度节点的另一种流程示意图;

图5为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的边缘服务节点的一种流程示意图;

图6为应用本发明实施例提供的直播数据流获取方法的一个具体实例交互流程图;

图7为本发明实施例提供的一种直播数据流获取装置的结构示意图;

图8为本发明实施例提供的另一种直播数据流获取装置的结构示意图;

图9为本发明实施例提供的一种调度节点的结构示意图;

图10为本发明实施例提供的一种边缘服务节点的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了降低源节点的带宽资源消耗,本发明实施例提供了一种直播数据流获取方法、装置、调度节点、边缘服务节点及直播CDN系统。

参见图2,图2为本发明实施例提供的直播CDN系统的结构示意图,该系统在图1所示直播CDN系统的基础上,增加了调度节点140。

本发明实施例中的节点可以为服务器等电子设备,源节点可以为包括有多台服务器的源节点集群。

参见图3,图3为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的调度节点的一种流程示意图,具体包括如下步骤:

步骤301,接收第一边缘服务节点发送的调度请求,其中,调度请求用于请求获取第一直播数据流。

本步骤中的第一边缘服务节点可以为边缘服务节点集群中的任一边缘服务节点。当使用客户端设备的用户想要观看第一直播数据流时,可以通过客户端设备向第一边缘服务节点发送获取请求,其中,获取请求用于请求获取第一直播数据流,第一边缘服务节点接收到获取请求之后,在确定本地中不存在第一直播数据流的情况下,则向调度节点发送调度请求,该调度请求中包括第一直播数据流的标识信息,例如,第一直播数据流的流名称等。

步骤302,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点。若存在,执行步骤303。

若多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点,则向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

调度节点中存在的各边缘服务节点与各直播数据流的存储对应关系,是预先从各边缘服务节点获得的。在客户端通过边缘服务节点获取到指定直播数据流之后,该边缘服务节点中则会存储有上述指定直播数据流,此时,调度中心节点则可以从该边缘服务节点中获得如下信息:该边缘服务节点中存储有上述指定直播数据流。

因此,若在本次调度请求之前,某个客户端设备通过边缘服务节点获取过第一直播数据流,则该边缘服务节点中存储有上述第一直播数据流,该边缘服务节点即为目标边缘服务节点。进一步的,若存在多个存储有上述第一直播数据流的边缘服务节点时,可以从中选择一个作为目标边缘服务节点,此处,对于目标边缘服务节点的选取方式,不作限定。

若在本次调度请求之前,没有客户端设备通过边缘服务节点获取过第一直播数据流,则所有边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点,此时,向第一边缘服务节点发送回源通知。

步骤303,将目标边缘服务节点的标识信息发送至第一边缘服务节点,以使第一边缘服务节点根据标识信息从目标边缘服务节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

进一步的,目标边缘服务节点的标识信息包括目标边缘服务节点的网络地址。

由上述实施例可见,在本发明实施例中,当第一边缘服务节点中不存在第一直播数据流时,则向调度节点发送调度请求,以使调度节点确定在其他边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点,若存在,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,此种情况下,第一边缘服务节点则无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗。

参见图4,图4为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的调度节点的另一种流程示意图,包括如下步骤:

步骤401,接收第一边缘服务节点发送的调度请求,其中,调度请求用于请求获取第一直播数据流。

其中,调度请求是在第一边缘服务节点接收到与第一边缘服务节点通信连接的客户端设备发送的针对第一直播数据流的获取请求,且确定第一边缘服务节点中不存在第一直播数据流之后发送的。

步骤401的内容与步骤301的内容相同,此处,不再赘述。

步骤402,获取预先存储的各直播数据流的热度类别信息。

其中,热度类别信息是预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的。热度类别信息包括:热流类别和非热流类别;热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;非热流类别包括:冷流类别和温流类别;其中,冷流类别的直播数据流为观看账号小于第二预设阈值的直播数据流;温流类别的直播数据流为观看账号大于第二预设阈值,且小于第一预设阈值的直播数据流。

具体的,观看账号大于第一预设阈值的直播数据流即为观看账号的数量大于第一预设阈值的直播数据流;相应的,冷流类别的直播数据流为观看账号的数量小于第二预设阈值的直播数据流;温流类别的直播数据流为观看账号的数量大于第二预设阈值,且小于第一预设阈值的直播数据流。

进一步的,由于直播数据流的观看账号可能发生变化,因此,各直播数据流的热度类别信息也可能会变化,需要对调度节点中的热度类别信息进行更新,热度类别信息可以通过如下方式进行更新:

当接收到第二边缘服务节点发送的观看账号上报请求时,根据观看账号上报请求中包含的第二直播数据流的观看账号,确定第二直播数据流的热度类别信息;

基于确定的第二直播数据流的热度类别信息,更新预先存储的第二直播数据流的热度类别信息。

上述更新过程中,第二边缘服务节点可以为任一边缘服务节点。

步骤403,基于各直播数据流的热度类别信息,确定第一直播数据流的热度类别信息。当第一直播数据流的热度类别信息为热流类别时,执行步骤404;当第一直播数据流的热度类别信息为冷流类别时,执行步骤405;当第一直播数据流的热度类别信息为温流类别时,执行步骤406。

步骤404,向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

当第一直播数据流的热度类别信息为热流类别时,表明正在观看或者想要观看该直播数据流的账号较多,此时,为了避免因将多个发送了用于请求获取该直播数据流的调度请求的第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题,可以向上述多个第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

步骤405,基于预先从各边缘服务节点获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的目标边缘服务节点;若存在,执行步骤407;若不存在,则返回执行步骤404。

本步骤中,为了提升直播数据流的传输质量,可以将多个边缘服务节点中,存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点确定为目标边缘服务节点。

调度节点中存在的各边缘服务节点与各直播数据流的存储对应关系,是预先从各边缘服务节点获得的。当客户端设备通过边缘服务节点获取到指定直播数据流之后,该边缘服务节点中则会存储有上述指定直播数据流,此时,调度节点则可以从该边缘服务节点中获得如下信息:该边缘服务节点中存储有上述指定直播数据流。

进一步的,由于直播数据流为实时数据,当网络中断或者直播结束时,直播数据流则会被删除,因此,各边缘服务节点中存储的直播数据流也是实时变化的,因此,调度节点也需要对获得的各边缘服务节点与各直播数据流的存储对应关系进行更新。

进一步的,当接收第三边缘服务节点发送的数据流上报请求时,基于数据流上报请求,更新预先获得的第三边缘服务节点与各直播数据流的存储对应关系;其中,数据流上报请求为第三边缘服务节点在接收到客户端设备发送的第三直播数据流开播通知之后,向调度节点发送的;数据流上报请求中包括第三边缘服务节点的标识信息、第三直播数据流标识信息及第三直播数据流在源节点中的存储位置信息。

进一步的,当接收第四边缘服务节点发送的第四直播数据流删除请求时,基于第四直播数据流删除请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,具体的,将第四边缘服务节点与第四直播数据流的存储对应关系删除。

上述更新过程中,第三边缘服务节点和第四边缘服务节点均可以为任一边缘服务节点。

步骤406,基于预先从各边缘服务节点获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流,与第一边缘服务节点位于同一预设地理区域范围且属于同一运营商的目标边缘服务节点;若存在,执行步骤407;若不存在,则返回执行步骤404。

与冷流类别的直播数据流相比,正在观看或者想要观看温流类别的直播数据流的账号较多,为了避免因将多个位于不同预设地理区域的发送了用于请求获取该直播数据流的调度请求的第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题,在确定目标边缘服务节点时,可以在要求目标边缘服务节点为存在第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点的同时,要求目标边缘服务节点与第一边缘服务节点位于同一预设地理区域。

步骤407,将目标边缘服务节点的标识信息发送至第一边缘服务节点,以使第一边缘服务节点根据标识信息从目标边缘服务节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

进一步的,目标边缘服务节点的标识信息包括目标边缘服务节点的网络地址。

在图4所示的实施例中,根据各直播数据流的热度类别信息,确定出第一直播数据流的热度类别信息,当确定出第一直播数据流的热度类别信息为冷流类别或者温流类别,且在其他边缘服务节点中,存在目标边缘服务节点时,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,而无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗;当确定出第一直播数据流的热度类别信息为热流类别时,则向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,避免了因将多个上述第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题。

同时,当确定出第一直播数据流的热度类别信息为冷流类别时,将多个边缘服务节点中,存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点确定为目标边缘服务节点,因此,可以提升直播数据流的传输质量。

并且,当确定出第一直播数据流的热度类别信息为温流类别时,在确定目标边缘服务节点时,在要求目标边缘服务节点为存在第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点的同时,还要求目标边缘服务节点与第一边缘服务节点位于同一预设地理区域,避免了因将多个位于不同预设地理区域的发送了用于请求获取该直播数据流的调度请求的第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题,因此,进一步提升了直播数据流的传输质量。

参见图5,图5为本发明实施例提供的直播数据流获取方法应用于图2所示直播CDN系统中的边缘服务节点的一种流程示意图,具体包括如下步骤:

步骤501,接收客户端设备发送的获取请求,其中,获取请求用于请求获取第一直播数据流。

步骤502,判断本地是否存在第一直播数据流;若不存在,则执行步骤503;若存在,则将本地存在的第一直播数据流返回至客户端设备。

步骤503,向调度节点发送调度请求,以使调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点;若有,则将目标边缘服务节点的标识信息发送至边缘服务节点;其中,调度请求用于请求获取第一直播数据流。

进一步的,当调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点时,会向边缘服务节点发送回源通知,当边缘服务节点接收到回源通知时,则直接从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

进一步的,调度节点可以先获取预先存储的各直播数据流的热度类别信息,并基于各直播数据流的热度类别信息,确定出第一直播数据流的热度类别信息,其中,热度类别信息包括:热流类别和非热流类别;热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流。

当第一直播数据流的热度类别信息为热流类别,或者当第一直播数据流的热度类别信息为非热流类别,且调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点时,会向边缘服务节点发送回源通知,当边缘服务节点接收到回源通知时,则直接从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

步骤504,根据目标边缘服务节点的标识信息,从目标边缘服务节点获取第一直播数据流。

步骤505,将第一直播数据流返回至客户端设备。

进一步的,本发明实施例提供的方法中,还包括:

向调度节点发送观看账号上报请求,以使调度节点根据观看账号上报请求中包含的第二直播数据流的观看账号,确定第二直播数据流的热度类别信息;并基于第二直播数据流的热度类别信息,更新预先存储的第二直播数据流的热度类别信息。

进一步的,本发明实施例提供的方法中,还包括:

当接受到客户端设备发送的第三直播数据流的开播通知时,向调度节点发送的数据流上报请求,以使调度节点基于数据流上报请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,数据流上报请求中包括发送数据流上报请求的边缘服务节点的标识信息、第三直播数据流标识信息及第三直播数据流在源节点中的存储位置信息。

在图5所示的实施例中,当第一边缘服务节点中不存在第一直播数据流时,则向调度节点发送调度请求,以使调度节点确定在其他边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点,若存在,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,此种情况下,第一边缘服务节点则无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗。

参见图6,图6为应用本发明实施例提供的直播数据流获取方法的一个具体实例交互流程图,具体包括如下步骤:

步骤601,客户端设备向第一边缘服务节点发送获取请求。

其中,获取请求用于请求获取第一直播数据流。

步骤602,第一边缘服务节点判断本地是否存在第一直播数据流;若存在,则执行步骤603;若不存在,则执行步骤604;

步骤603,第一边缘服务节点将本地存在的第一直播数据流返回至客户端设备。

步骤604,第一边缘服务节点向调度节点发送调度请求。

其中,调度请求用于请求获取第一直播数据流。

步骤605,调度节点获取预先存储的各直播数据流的热度类别信息,热度类别信息是预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的。

热度类别信息包括:热流类别和非热流类别;热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;非热流类别包括:冷流类别和温流类别;其中,冷流类别的直播数据流为观看账号小于第二预设阈值的直播数据流;温流类别的直播数据流为观看账号大于第二预设阈值,且小于第一预设阈值的直播数据流。

进一步的,由于直播数据流的观看账号可能发生变化,因此,各直播数据流的热度类别信息也可能会变化,需要对调度中心节点中的热度类别信息进行更新,热度类别信息可以通过如下方式进行更新:

当接收到第二边缘服务节点发送的观看账号上报请求时,根据观看账号上报请求中包含的第二直播数据流的观看账号,确定第二直播数据流的热度类别信息;

基于确定的第二直播数据流的热度类别信息,更新预先存储的第二直播数据流的热度类别信息。

上述更新过程中,第二边缘服务节点可以为任一边缘服务节点。具体的,边缘服务节点可以定期向调度节点上报指定直播数据流的观看账号,以使调度节点根据上报的观看账号确定并更新指定直播数据流的热度类别信息。

步骤606,调度节点基于各直播数据流的热度类别信息,确定第一直播数据流的热度类别信息。当第一直播数据流的热度类别信息为冷流类别时,执行步骤607;当第一直播数据流的热度类别信息为温流类别时,执行步骤608;当第一直播数据流的热度类别信息为热流类别时,执行步骤611;

步骤607,调度节点判断多个边缘服务节点中,是否存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的目标边缘服务节点;若存在,执行步骤609;若不存在,则执行步骤611。

具体的,调度节点基于预先从各边缘服务节点获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的目标边缘服务节点。

调度节点中存在的各边缘服务节点与各直播数据流的存储对应关系,是预先从各边缘服务节点获得的。当客户端设备通过边缘服务节点获取到指定直播数据流之后,该边缘服务节点中则会存储有上述指定直播数据流,此时,调度节点则可以从该边缘服务节点中获得如下信息:该边缘服务节点中存储有上述指定直播数据流。

进一步的,由于直播数据流为实时数据,当网络中断或者直播结束时,直播数据流则会被删除,因此,各边缘服务节点中存储的直播数据流也是实时变化的,因此,调度节点也需要对获得的各边缘服务节点与各直播数据流的存储对应关系进行更新。

进一步的,当接收第三边缘服务节点发送的数据流上报请求时,基于数据流上报请求,更新预先获得的第三边缘服务节点与各直播数据流的存储对应关系;其中,数据流上报请求为第三边缘服务节点在接收到客户端设备发送的第三直播数据流开播通知之后,向调度节点发送的;数据流上报请求中包括第三边缘服务节点的标识信息、第三直播数据流标识信息及第三直播数据流在源节点中的存储位置信息。

具体的,边缘服务节点可以在接收到客户端设备发送的开播通知之后,向调度节点发送数据流上报请求。

进一步的,当接收第四边缘服务节点发送的第四直播数据流删除请求时,基于第四直播数据流删除请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,具体的,将第四边缘服务节点与第四直播数据流的存储对应关系删除。

具体的,当检测到网络中断,或者接收到客户端发送的指定直播数据流直播结束通知时,边缘服务节点可以向调度节点发送该指定直播数据流删除请求。

综上,调度节点可能接收到的边缘服务节点发送的请求包括:获取请求、观看账号上报请求、数据流上报请求以及直播数据流删除请求等,因此,当调度节点获取到边缘服务节点发送的请求之后,首先,需要判断该请求为上述哪种类型的请求,然后,再根据具体的请求类别,执行相应的操作。

步骤608,调度节点判断多个边缘服务节点中,是否存在存储有第一直播数据流,与第一边缘服务节点位于同一预设地理区域范围且属于同一运营商的目标边缘服务节点;若存在,执行步骤609;若不存在,则返回执行步骤611。

步骤609,调度节点将目标边缘服务节点的标识信息发送至第一边缘服务节点。

其中,目标边缘服务节点的标识信息包括目标边缘服务节点的网络地址。

步骤610,第一边缘服务节点根据目标边缘服务节点的标识信息从目标边缘服务节点获取第一直播数据流。之后,执行步骤613。

步骤611,调度节点向第一边缘服务节点发送回源通知。

步骤612,第一边缘服务节点从源节点获取第一直播数据流。

第一边缘服务节点获取到第一直播数据流之后,可以向调度节点发送回源成功通知,该通知中可以包括:第一直播数据流标识信息以及第一边缘服务节点的标识信息,以便调度节点更新预先获得的第一边缘服务节点与各直播数据流的存储对应关系。

步骤613,第一边缘服务节点将第一直播数据流返回至客户端设备。

在图6所示的实施例中,根据各直播数据流的热度类别信息,确定出第一直播数据流的热度类别信息,当确定出第一直播数据流的热度类别信息为冷流类别或者温流类别,且在其他边缘服务节点中,存在目标边缘服务节点时,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,而无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗;当确定出第一直播数据流的热度类别信息为热流类别时,则向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,避免了因将多个发送了用于请求获取该直播数据流的调度请求的第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题。

同时,当确定出第一直播数据流的热度类别信息为冷流类别时,将多个边缘服务节点中,存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点确定为目标边缘服务节点,因此,可以提升直播数据流的传输质量。

并且,当确定出第一直播数据流的热度类别信息为温流类别时,在确定目标边缘服务节点时,在要求目标边缘服务节点为存在第一直播数据流,且与第一边缘服务节点属于同一运营商的边缘服务节点的同时,还要求目标边缘服务节点与第一边缘服务节点位于同一预设地理区域,避免了因将多个位于不同预设地理区域的发送了用于请求获取该直播数据流的调度请求的第一边缘服务节点调度至同一目标边缘服务节点,而导致的直播卡顿问题,因此,进一步提升了直播数据流的传输质量。

基于同一发明构思,根据本发明上述实施例提供的直播数据流获取方法,相应地,本发明一个实施例还提供了一种直播数据流获取装置,应用于直播内容分发网络CDN系统中的调度节点,直播CDN系统,还包括:源节点和多个边缘服务节点,该装置的结构示意图如图7所示,包括:

调度请求接收模块701,用于接收第一边缘服务节点发送的调度请求;其中,调度请求用于请求获取第一直播数据流;

第一判断模块702,用于基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点;

标识信息发送模块703,用于若多个边缘服务节点中,存在存储有第一直播数据流的目标边缘服务节点,则将目标边缘服务节点的标识信息发送至第一边缘服务节点,以使第一边缘服务节点根据标识信息从目标边缘服务节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

进一步的,装置还包括:

热度类别信息获取模块,用于在基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点之前,获取预先存储的各直播数据流的热度类别信息,热度类别信息是预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;热度类别信息包括:热流类别和非热流类别;热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

第一热度类别信息确定模块,用于基于各直播数据流的热度类别信息,确定第一直播数据流的热度类别信息;

第一回源通知发送模块,用于当第一直播数据流的热度类别信息为热流类别时,向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备;

第一判断模块,具体用于当第一直播数据流的热度类别信息为非热流类别时,基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点。

进一步的,第一判断模块,具体用于基于预先从各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流,且满足与非热流类别对应的预设条件的目标边缘服务节点。

进一步的,非热流类别包括:冷流类别和温流类别;其中,冷流类别的直播数据流为观看账号小于第二预设阈值的直播数据流;温流类别的直播数据流为观看账号大于第二预设阈值,且小于第一预设阈值的直播数据流;

第一判断模块,具体用于:

当第一直播数据流的热度类别信息为冷流类别时,判断多个边缘服务节点中,是否存在存储有第一直播数据流,且与第一边缘服务节点属于同一运营商的目标边缘服务节点;

当第一直播数据流的热度类别信息为温流类别时,判断多个边缘服务节点中,是否存在存储有第一直播数据流,与第一边缘服务节点位于同一预设地理区域范围且属于同一运营商的目标边缘服务节点。

进一步的,装置,还包括:

第二热度类别信息确定模块,用于当接收到第二边缘服务节点发送的观看账号上报请求时,根据观看账号上报请求中包含的第二直播数据流的观看账号,确定第二直播数据流的热度类别信息;

热度类别信息更新模块,用于基于确定的第二直播数据流的热度类别信息,更新预先存储的第二直播数据流的热度类别信息。

进一步的,装置,还包括:

存储对应关系更新模块,用于当接收第三边缘服务节点发送的数据流上报请求时,基于数据流上报请求,更新预先获得的第三边缘服务节点与各直播数据流的存储对应关系;其中,数据流上报请求为第三边缘服务节点在接收到客户端设备发送的第三直播数据流开播通知之后,向调度节点发送的;数据流上报请求中包括第三边缘服务节点的标识信息、第三直播数据流标识信息及第三直播数据流在源节点中的存储位置信息。

进一步的,目标边缘服务节点的标识信息包括目标边缘服务节点的网络地址。

进一步的,装置,还包括:

第二回源通知发送模块,用于若多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点,则向第一边缘服务节点发送回源通知,以使第一边缘服务节点从源节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

在图7所示实施例中,当第一边缘服务节点中不存在第一直播数据流时,则向调度节点发送调度请求,以使调度节点确定在其他边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点,若存在,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,此种情况下,第一边缘服务节点则无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗。

基于同一发明构思,根据本发明上述实施例提供的直播数据流获取方法,相应地,本发明一个实施例还提供了另一种直播数据流获取装置,应用于直播内容分发网络CDN系统中的边缘服务节点,直播CDN系统,还包括:源节点和调度节点,该装置的结构示意图如图8所示,包括:

获取请求接收模块801,用于接收客户端设备发送的获取请求,其中,获取请求用于请求获取第一直播数据;

第二判断模块802,用于判断本地是否存在第一直播数据流;

调度请求发送模块803,用于若本地不存在第一直播数据流,向调度节点发送针对第一直播数据流的调度请求,以使调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点;若存在,则将目标边缘服务节点的标识信息发送至边缘服务节点;

第一数据流获取模块804,用于根据目标边缘服务节点的标识信息,从目标边缘服务节点获取第一直播数据流;

第一数据流返回模块805,用于将第一直播数据流返回至客户端设备。

进一步的,装置还包括:

第二数据流获取模块,用于在向调度节点发送调度请求之后,当接收到调度节点发送的回源通知时,从源节点获取第一直播数据流,之后,触发第二数据流返回模块;其中,回源通知为调度节点基于预先,判断出多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点时发送的;

第二数据流返回模块,用于将第一直播数据流返回至客户端设备。

进一步的,装置还包括:

第三数据流获取模块,用于在向调度节点发送调度请求之后,当接收到调度节点发送的回源通知时,从源节点获取第一直播数据流,之后,触发第三数据流返回模块;回源通知为调度节点获取预先存储的各直播数据流的热度类别信息,并基于各直播数据流的热度类别信息,确定出第一直播数据流的热度类别信息为热流类别时发送的;或者,回源通知为调度节点基于各直播数据流的热度类别信息,确定出第一直播数据流的热度类别信息为非热流类别,并基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断出多个边缘服务节点中,不存在存储有第一直播数据流的目标边缘服务节点是发送的;其中,热度类别信息是调度节点预先基于从各边缘服务节点获得的各直播数据流的观看账号确定的;热度类别信息包括:热流类别和非热流类别;热流类别的直播数据流为观看账号大于第一预设阈值的直播数据流;

第三数据流返回模块,用于将第一直播数据流返回至客户端设备。

进一步的,装置还包括:

观看账号上报请求发送模块,用于向调度节点发送观看账号上报请求,以使调度节点根据观看账号上报请求中包含的第二直播数据流的观看账号,确定第二直播数据流的热度类别信息;并基于第二直播数据流的热度类别信息,更新预先存储的第二直播数据流的热度类别信息。

进一步的,装置还包括:

数据流上报请求发送模块,用于当接受到客户端设备发送的第三直播数据流的开播通知时,向调度节点发送数据流上报请求,以使调度节点根据数据流上报请求,更新预先获得的各边缘服务节点与各直播数据流的存储对应关系,数据流上报请求中包括发送数据流上报请求的边缘服务节点的标识信息、第三直播数据流标识信息及第三直播数据流在源节点中的存储位置信息。

进一步的,装置还包括:

第四数据流返回模块,用于若本地存在第一直播数据流,则将第一直播数据流返回至客户端设备。

在图8所示实施例中,当第一边缘服务节点中不存在第一直播数据流时,则向调度节点发送调度请求,以使调度节点确定在其他边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点,若存在,则第一边缘服务节点从目标边缘服务节点中获取第一直播数据流,此种情况下,第一边缘服务节点则无需与源节点通信,也无需从源节点中获取第一直播数据流,因此,降低了源节点的带宽资源消耗。

本发明实施例还提供了一种调度节点,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,

存储器903,用于存放计算机程序;

处理器901,用于执行存储器903上所存放的程序时,实现如下步骤:

接收第一边缘服务节点发送的调度请求;其中,调度请求用于请求获取第一直播数据流;

基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点;

若存在,则将目标边缘服务节点的标识信息发送至第一边缘服务节点,以使第一边缘服务节点根据标识信息从目标边缘服务节点获取第一直播数据流,并将第一直播数据流返回至客户端设备。

进一步的,还可以包括本发明实施例提供的上述直播数据流获取方法中的其他处理流程,在此不再进行详细描述。

本发明实施例还提供了一种边缘服务节点,如图10所示,包括处理器1001、通信接口1002、存储器1003和通信总线1004,其中,处理器1001,通信接口1002,存储器1003通过通信总线1004完成相互间的通信,

存储器1003,用于存放计算机程序;

处理器1001,用于执行存储器1003上所存放的程序时,实现如下步骤:

接收客户端设备发送的获取请求,其中,获取请求用于请求获取第一直播数据流;

判断本地是否存在第一直播数据流;

若否,向调度节点发送调度请求,以使调度节点基于预先获得的各边缘服务节点与各直播数据流的存储对应关系,判断多个边缘服务节点中,是否存在存储有第一直播数据流的目标边缘服务节点;若有,则将目标边缘服务节点的标识信息发送至边缘服务节点;其中,调度请求用于请求获取第一直播数据流;

根据目标边缘服务节点的标识信息,从目标边缘服务节点获取第一直播数据流;

将第一直播数据流返回至客户端设备。

进一步的,还可以包括本发明实施例提供的上述直播数据流获取方法中的其他处理流程,在此不再进行详细描述。

上述设备提到的通信总线可以是外设部件互连标准(PeripheralComponentInterconnect,PCI)总线或扩展工业标准结构(Extended IndustryStandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述设备与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的直播数据流获取方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的直播数据流获取方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备及系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种直播数据流获取方法、装置、节点及系统
  • 一种直播流传输方法、装置、节点、系统及存储介质
技术分类

06120112876994