CN108200443A - 一种直播流的分发方法和装置 - Google Patents

一种直播流的分发方法和装置 Download PDF

Info

Publication number
CN108200443A
CN108200443A CN201711487191.9A CN201711487191A CN108200443A CN 108200443 A CN108200443 A CN 108200443A CN 201711487191 A CN201711487191 A CN 201711487191A CN 108200443 A CN108200443 A CN 108200443A
Authority
CN
China
Prior art keywords
live
node
stream
popularity
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711487191.9A
Other languages
English (en)
Inventor
邓茜
刘东东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201711487191.9A priority Critical patent/CN108200443A/zh
Publication of CN108200443A publication Critical patent/CN108200443A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level

Abstract

本发明实施例提供了一种直播流的分发方法和装置,该方法包括:在内容分发网络CDN中接收客户端发送的直播流;对所述直播流计算流行度;在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;在所述内容分发网络CDN中将所述直播流分发至所述目标节点。一方面,方便用户获取一些流行度较高的直播流,另一方面,可以减少一些流行度较低的直播流过度分发,减少资源浪费,降低节点的负载压力,从而大大提高了直播分发的效率。

Description

一种直播流的分发方法和装置
技术领域
本发明涉及计算机处理的技术领域,特别是涉及一种直播流的分发方法和一种直播流的分发装置。
背景技术
随着网络科技的发展以及智能设备的普及,人们喜欢将自己或者自己身边的事情,以视频的形式实时在网络平台上开设直播间进行公开直播,其他用户可以进入该直播间进行观看、互动。
直播的数据可以采用流式传输的方式在网络上进行传输,大型网站镜像依赖CDN(Content Delivery Network,内容分发网络)进行传输。
CDN是通过在现有的网络增加一层新的网络结构,部署有传输节点,就近给用户提供服务,用户可以将直播流传输到就近的节点或从就近的节点获取直播流。
目前,在CDN中会将直播的数据流都推送到较为重要的节点,方便用户及时获取直播的数据流,但是,这样会加大该节点的负载压力。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种直播流的分发方法和相应的一种直播流的分发装置。
依据本发明的一个方面,提供了一种直播流的分发方法,包括:
在内容分发网络CDN中接收客户端发送的直播流;
对所述直播流计算流行度;
在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
可选地,所述对所述直播流计算流行度,包括:
查询所述直播流对应的主播参数和/或直播参数;
按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
可选地,所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
可选地,所述在所述内容分发网络CDN中根据所述流行度确定分发的目标节点,包括:
查询所述流行度所属的流行范围;
将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
可选地,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
可选地,所述将所述流行范围对应的节点作为分发的目标节点,包括:
当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
可选地,所述在所述内容分发网络CDN中将所述直播流分发至所述目标节点,包括:
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
在某个父层节点中将所述直播流分发至外部分发节点;
或者,
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
在接收所述直播流的边缘节点中,保持所述直播流。
根据本发明的另一方面,提供了一种直播流的分发装置,包括:
直播流接收模块,用于在内容分发网络CDN中接收客户端发送的直播流;
流行度计算模块,用于对所述直播流计算流行度;
目标节点确定模块,用于在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
目标节点分发模块,用于在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
可选地,所述流行度计算模块包括:
参数查询子模块,用于查询所述直播流对应的主播参数和/或直播参数;
参数计算子模块,用于按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
可选地,所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
可选地,所述目标节点确定模块包括:
流行范围查询子模块,用于查询所述流行度所属的流行范围;
节点对应子模块,用于将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
可选地,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
可选地,所述节点对应子模块包括:
第一确定单元,用于当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
第二确定单元,用于当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
第三确定单元,用于当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
可选地,所述目标节点分发模块包括:
第一分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第二分发子模块,用于在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
第三分发子模块,用于在某个父层节点中将所述直播流分发至外部分发节点;
或者,
第四分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第五分发子模块,用于在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
保持子模块,用于在接收所述直播流的边缘节点中,保持所述直播流。
本发明实施例在内容分发网络CDN中接收客户端发送的直播流,对直播流计算流行度,在内容分发网络CDN中根据流行度确定分发的目标节点,在内容分发网络CDN中将直播流分发至目标节点,通过流行度合理地分发直播流,一方面,方便用户获取一些流行度较高的直播流,另一方面,可以减少一些流行度较低的直播流过度分发,减少资源浪费,降低节点的负载压力,从而大大提高了直播分发的效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种直播流的分发方法实施例的步骤流程示意图;
图2示出了根据本发明一个实施例的内容分发网络CDN的结构示意图;以及
图3示出了根据本发明一个实施例的一种直播流的分发装置实施例的结构示意框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明一个实施例的一种直播流的分发方法实施例的步骤流程示意图,具体可以包括如下步骤:
步骤101,在内容分发网络CDN中接收客户端发送的直播流。
在具体实现中,本发明实施例可以应用在是视频直播、远程摄像头等服务中,在视频直播应用、远程摄像头应用等客户端中,实时采集视频数据,形成直播流。
所谓直播流,可以指采用流式传输的方式在网络上传输的数据。
在内容分发网络CDN中,通常具有多个用于传输数据流(如直播流)的节点,在某个节点接收到客户端的数据流(如直播流)之后,可以推送至其他节点,在用户访问数据流(如直播流)的时候,通过调度将用户的请求路由或者引导到离用户接入网络最近或者访问效果最佳的节点上,由该节点为用户提供数据流(如直播流);相对于直接访问源网站,这种方式缩短了用户和数据流(如直播流)之间的网络距离,从而达到加速的效果。
需要说明的是,在不同的内容分发网络CDN中,拓扑结构可能有所不同。
在具体实现中,内容分发网络CDN的多个节点包括中心节点、父层节点、边缘节点。
其中,中心节点为资源的超汇聚节点,可以与源网站进行通信,汇聚了大量源网站的资源,这些资源一般为变化较少的资源,例如,视频、图片等等。
需要说明的是,在某些内容分发网络CDN中可以部署中心节点,即该部分内容分发网络CDN为中心节点-父层节点-边缘节点的三层结构,在某些内容分发网络CDN中可以不部署中心节点,即该部分内容分发网络CDN为父层节点-边缘节点的二层结构,本发明实施例对此不加以限制。
父层节点为资源的次汇聚节点,一方面,由于在CDN内部,各节点之间一般使用双向光纤等专有的通信线缆进行通信,中心节点与父层节点之间的通信质量有较高的保障,在获取变化较少的资源、外部源网站通信质量较差等情况下,可以与中心节点进行通信,从中心节点获取资源,另一方面,在获取新的资源、进行数据操作(如支付)等情况下,可以与源网站进行通信,从源网站获取资源。
再者,父层节点之间可以相互通信,从而组成父层节点与边缘节点之间的传输路径,即一个节点到另一个节点所经过的中间传输的节点及通信线缆所组成的路径。
具体而言,选取传输路径的方式可以有多种,可以根据实际需求选择如下至少一种方式:
1、选取传输性能符合设定的要求的传输路径。
传输性能是指传输流数据的传输路径的传输能力,可以根据节点间的距离、传输速度、数据丢失率、阻塞状况等确定传输路径的传输性能,通过定期更新每两个节点间的传输性能,根据节点之间的各传输路径的传输性能,选取其中传输性能符合要求或传输性能最好的传输路径。
2、选取经过的节点数量最少的传输路径。
在多条传输路径中选取节点数量最少的传输路径,这样,就可以占用最少的传输资源完成数据从一个节点到另一个节点的传输。
3、选取在一段时间内没有选择过的传输路径。
如果历史上有流数据从一个节点传输至另一个节点,那么,当有新的数据要从这两个之间进行传输,可以在一段时间内没有选择过的各传输路径中选取一条,以避免一直选取同一条传输路径导致该传输路径上的节点负载过重。
当然,上述传输路径的选取方式只是作为示例,在实施本发明实施例时,可以根据实际情况设置其他传输路径的选取方式,本发明实施例对此不加以限制。另外,除了上述传输路径的选取方式外,本领域技术人员还可以根据实际需要采用其它传输路径的选取方式,本发明实施例对此也不加以限制
此外,父层节点一般部署有多个运营商的机房,机房之间通过双线光线等专有的通信线缆进行连接,边缘节点一般是部署在某个运营商的网络中,同运营商之间的父层节点的机房可以与边缘节点进行通信。
边缘节点之间具有相互通信的能力,但是,一般情况下,不会直接进行通信。
边缘节点可以接入客户端,例如,手机、平板电脑、电视等等,用于与客户端进行通信,如获取其采集的直播流,或者,将直播流推送至该客户端。
为使本领域技术人员更好地理解本发明实施例,以下通过具体的示例来说明本发明实施例中的内容分发网络CDN。
如图2所示,父层节点为A1、A2、A3、A4,可以按照地理位置进行部署,例如,A1部署在北京、A2部署在上海、A3部署在广州,A4部署在郑州,A1可以与A2进行通信,A2可以与A3进行通信,A3可以与A4进行通信,A4可以与A1进行通信,父层节点之间的循环通信,可以组成环状的父层结构。
此外,每个父层节点可以连接一个或多个边缘节点,边缘节点也可以按照地理位置、运营商等因素进行部署,边缘节点之间一般不直接进行通信,而是经过父层节点进行中转,父层节点A1连接边缘节点A11、A12,父层节点A2连接缘节点A21、A22,父层节点A3连接缘节点A31、A32、A33,父层节点A4连接缘节点A41、A42、A43。
边缘节点接入客户端,如边缘节点A32接入客户端B1,用于接收客户端的数据(如直播流),或者,将数据(如直播流)发送至该客户端B1。
步骤102,对所述直播流计算流行度。
流行度,可以指直播流在网络中的流行程度,该流行度可以在一定程度上表征用户(客户端)收看该直播流的期望值。
流行度越大,用户(客户端)收看该直播流的期望值越高,通过内容分发网络CDN分发该直播流的概率越大,反之,流行度越小,用户(客户端)收看该直播流的期望值越低,通过内容分发网络CDN分发该直播流的概率越小。
在本发明的一个实施例中,步骤102可以包括如下子步骤:
子步骤S11,查询所述直播流对应的主播参数和/或直播参数。
在具体实现中,在发送直播流的客户端中主持直播的用户,可以称之为主播。
该主播的信息可以预先登记在直播网站或中心节点等位置,通过查询直播流的ID,查询到该主播的主播参数。
在一个示例中,主播参数包括如下的至少一项:
主播知名度、主播平均观看人数。
其中,主播知名度可以由直播网站的运营人员根据主播的实际情况(如社会知名度、观众赠送的礼品等)进行设置,与流行度正相关,即主播知名度越高,流行度越高,反之,主播知名度越低,流行度越低。
主播平均观看人数可以由该主播主持的多场直播的人数进行统计,与流行度正相关,即主播平均观看人数可越多,流行度越高,反之,主播平均观看人数可越少,流行度越低。
在具体实现中,直播的信息可以预先登记在直播网站或中心节点等位置,通过查询直播流的ID,查询到该直播的直播参数。
在一个示例中,直播参数可以包括直播预热程度。
直播预热程度可以指直播在开始之前进行预测的热度,可以由直播网站的运营人员根据直播的实际情况(如直播的内容、主播、渠道推广程度等)进行设置,与流行度正相关,即直播预热程度越高,流行度越高,反之,直播预热程度越低,流行度越低。
子步骤S12,按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
对于主播参数与直播参数,可以按照预设的计算方式(如加权平均等)计算出直播流的流行度。
步骤103,在所述内容分发网络CDN中根据所述流行度确定分发的目标节点。
在具体实现中,可以基于流行度在内容分发网络CDN中选择某些节点作为目标节点,将该直播流推送至这些目标节点,从而提高在用户(客户端)获取该直播流时的响应速度。
在本发明的一个实施例中,步骤103可以包括如下子步骤:
子步骤S21,查询所述流行度所属的流行范围。
子步骤S22,将所述流行范围对应的节点作为分发的目标节点。
在本发明实施例中,可以预先划分出多个流行范围,每个流行范围对应有节点。
其中,流行范围中流行度与对应的节点的数量正相关,即流行范围中的流行度越大,对应的节点的数量越多,此时,概率上与用户(客户端)的距离越近,反之,流行范围中的流行度越小,对应的节点的数量越少,此时,概率上与用户(客户端)的距离越远。
对于当前的直播流,在计算出其流行度之后,则可以在多个流行范围查询其所属的流行范围,将该流行范围对应的节点设置为待分发该直播流的目标节点。
在本发明实施例的一个示例中,若内容分发网络CDN至少具有分层节点、边缘节点,则可以划分出三个流行范围,即第一范围、第二范围、第三范围。
其中,第一范围中的流行度大于第二范围中的流行度,第二范围中的流行度大于第三范围中的流行度。
当流行范围为第一范围时,确定父层节点以及与内容分发网络CDN连接的外部分发节点(如外部的内容分发网络CDN中的节点)作为分发的目标节点。
当流行范围为第二范围时,确定父层节点作为分发的目标节点。
当流行范围为第三范围时,确定接收直播流的边缘节点作为分发的目标节点。
步骤104,在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
在确定了目标节点之后,则可以组织从接收该直播流的节点与目标节点之间的传输路径,按照该传输路径将直播流从接收的节点分发至该目标节点。
在本发明实施例的一个示例中,若内容分发网络CDN至少具有分层节点、边缘节点。
在一种情况中,在接收直播流的边缘节点中,将直播流分发至与边缘节点相连的父层节点。
在边缘节点相连的父层节点中将直播流分发至其他父层节点。
在某个父层节点(即与外部分发节点连接的父层节点)中将直播流分发至外部分发节点。
在此种情况中,对于流行度最高的直播流,可以分发至内容分发网络CDN中的父层节点于外部分发节点,可以快速响应用户(客户端)在当前内容分发网络CDN中或内容分发网络CDN之外获取该直播流的请求。
在另一种情况中,在接收直播流的边缘节点中,将直播流分发至与边缘节点相连的父层节点。
在边缘节点相连的父层节点中将直播流分发至其他父层节点。
在此种情况中,对于流行度较高的直播流,可以分发至内容分发网络CDN中的父层节点可以快速响应用户(客户端)在当前内容分发网络CDN中获取该直播流的请求,也可以较快地响应内容分发网络CDN之外获取该直播流的请求。
在另一种情况中,在接收直播流的边缘节点中,保持直播流。
在此种情况中,对于流行度较高的直播流,除了接收直播流的边缘节点外,不主动分发至其他节点,等待用户(客户端)获取该直播流的请求。
本发明实施例在内容分发网络CDN中接收客户端发送的直播流,对直播流计算流行度,在内容分发网络CDN中根据流行度确定分发的目标节点,在内容分发网络CDN中将直播流分发至目标节点,通过流行度合理地分发直播流,一方面,方便用户获取一些流行度较高的直播流,另一方面,可以减少一些流行度较低的直播流过度分发,减少资源浪费,降低节点的负载压力,从而大大提高了直播分发的效率。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图3,示出了根据本发明一个实施例的一种直播流的分发装置实施例的结构示意框图,具体可以包括如下模块:
直播流接收模块301,用于在内容分发网络CDN中接收客户端发送的直播流;
流行度计算模块302,用于对所述直播流计算流行度;
目标节点确定模块303,用于在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
目标节点分发模块304,用于在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
在本发明的一个实施例中,所述流行度计算模块包括:
参数查询子模块,用于查询所述直播流对应的主播参数和/或直播参数;
参数计算子模块,用于按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
在具体实现中,所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
在本发明的一个实施例中,所述目标节点确定模块303包括:
流行范围查询子模块,用于查询所述流行度所属的流行范围;
节点对应子模块,用于将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
在本发明的一个实施例中,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
在本发明的一个实施例中,所述节点对应子模块包括:
第一确定单元,用于当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
第二确定单元,用于当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
第三确定单元,用于当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
在本发明的一个实施例中,所述目标节点分发模块304包括:
第一分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第二分发子模块,用于在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
第三分发子模块,用于在某个父层节点中将所述直播流分发至外部分发节点;
或者,
第四分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第五分发子模块,用于在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
保持子模块,用于在接收所述直播流的边缘节点中,保持所述直播流。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的直播流的分发设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明实施例公开了A1、一种直播流的分发方法,包括:
在内容分发网络CDN中接收客户端发送的直播流;
对所述直播流计算流行度;
在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
A2、如A1所述的方法,所述对所述直播流计算流行度,包括:
查询所述直播流对应的主播参数和/或直播参数;
按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
A3、如A2所述的方法,
所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
A4、如A1或A2或A3所述的方法,所述在所述内容分发网络CDN中根据所述流行度确定分发的目标节点,包括:
查询所述流行度所属的流行范围;
将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
A5、如A4所述的方法,其特征在,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
A6、如A5所述的方法,所述将所述流行范围对应的节点作为分发的目标节点,包括:
当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
A7、如A6所述的方法,所述在所述内容分发网络CDN中将所述直播流分发至所述目标节点,包括:
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
在某个父层节点中将所述直播流分发至外部分发节点;
或者,
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
在接收所述直播流的边缘节点中,保持所述直播流。
本发明实施例公开了B8、一种直播流的分发装置,包括:
直播流接收模块,用于在内容分发网络CDN中接收客户端发送的直播流;
流行度计算模块,用于对所述直播流计算流行度;
目标节点确定模块,用于在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
目标节点分发模块,用于在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
B9、如B8所述的装置,所述流行度计算模块包括:
参数查询子模块,用于查询所述直播流对应的主播参数和/或直播参数;
参数计算子模块,用于按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
B10、如B9所述的装置,
所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
B11、如B8或B9或B10所述的装置,所述目标节点确定模块包括:
流行范围查询子模块,用于查询所述流行度所属的流行范围;
节点对应子模块,用于将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
B12、如B11所述的装置,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
B13、如B12所述的装置,所述节点对应子模块包括:
第一确定单元,用于当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
第二确定单元,用于当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
第三确定单元,用于当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
B14、如B13所述的装置,所述目标节点分发模块包括:
第一分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第二分发子模块,用于在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
第三分发子模块,用于在某个父层节点中将所述直播流分发至外部分发节点;
或者,
第四分发子模块,用于在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
第五分发子模块,用于在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
保持子模块,用于在接收所述直播流的边缘节点中,保持所述直播流。

Claims (10)

1.一种直播流的分发方法,包括:
在内容分发网络CDN中接收客户端发送的直播流;
对所述直播流计算流行度;
在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
2.如权利要求1所述的方法,其特征在于,所述对所述直播流计算流行度,包括:
查询所述直播流对应的主播参数和/或直播参数;
按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
3.如权利要求2所述的方法,其特征在于,
所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
4.如权利要求1或2或3所述的方法,其特征在于,所述在所述内容分发网络CDN中根据所述流行度确定分发的目标节点,包括:
查询所述流行度所属的流行范围;
将所述流行范围对应的节点作为分发的目标节点;
其中,所述流行范围中的流行度与对应的节点的数量正相关。
5.如权利要求4所述的方法,其特征在,所述内容分发网络CDN的多个节点包括父层节点、边缘节点;
所述父层节点之间相互通信,以及,与所述边缘节点进行通信;
所述边缘节点用于与客户端进行通信。
6.如权利要求5所述的方法,其特征在于,所述将所述流行范围对应的节点作为分发的目标节点,包括:
当所述流行范围为第一范围时,确定所述父层节点以及与所述内容分发网络CDN连接的外部分发节点作为分发的目标节点;
或者,
当所述流行范围为第二范围时,确定所述父层节点作为分发的目标节点;
或者,
当所述流行范围为第三范围时,确定接收所述直播流的边缘节点作为分发的目标节点;
其中,所述第一范围中的流行度大于所述第二范围中的流行度,所述第二范围中的流行度大于所述第三范围中的流行度。
7.如权利要求6所述的方法,其特征在于,所述在所述内容分发网络CDN中将所述直播流分发至所述目标节点,包括:
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的父层节点中将所述直播流分发至其他父层节点;
在某个父层节点中将所述直播流分发至外部分发节点;
或者,
在接收所述直播流的边缘节点中,将所述直播流分发至与所述边缘节点相连的父层节点;
在所述边缘节点相连的中心节点中将所述直播流分发至其他父层节点;
或者,
在接收所述直播流的边缘节点中,保持所述直播流。
8.一种直播流的分发装置,包括:
直播流接收模块,用于在内容分发网络CDN中接收客户端发送的直播流;
流行度计算模块,用于对所述直播流计算流行度;
目标节点确定模块,用于在所述内容分发网络CDN中根据所述流行度确定分发的目标节点;
目标节点分发模块,用于在所述内容分发网络CDN中将所述直播流分发至所述目标节点。
9.如权利要求8所述的装置,其特征在于,所述流行度计算模块包括:
参数查询子模块,用于查询所述直播流对应的主播参数和/或直播参数;
参数计算子模块,用于按照所述主播参数和/或所述直播参数对所述直播流计算流行度。
10.如权利要求9所述的装置,其特征在于,
所述主播参数包括如下的至少一项:
主播知名度、主播平均观看人数;
所述直播参数包括直播预热程度;
其中,所述主播知名度、所述主播平均观看人数、所述直播预热程度与所述流行度正相关。
CN201711487191.9A 2017-12-29 2017-12-29 一种直播流的分发方法和装置 Pending CN108200443A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711487191.9A CN108200443A (zh) 2017-12-29 2017-12-29 一种直播流的分发方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711487191.9A CN108200443A (zh) 2017-12-29 2017-12-29 一种直播流的分发方法和装置

Publications (1)

Publication Number Publication Date
CN108200443A true CN108200443A (zh) 2018-06-22

Family

ID=62587145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711487191.9A Pending CN108200443A (zh) 2017-12-29 2017-12-29 一种直播流的分发方法和装置

Country Status (1)

Country Link
CN (1) CN108200443A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109951716A (zh) * 2019-03-26 2019-06-28 北京达佳互联信息技术有限公司 一种主播调度方法、装置、电子设备及可读存储介质
CN110809178A (zh) * 2018-08-06 2020-02-18 阿里巴巴集团控股有限公司 一种推流系统及方法
CN111526376A (zh) * 2019-02-01 2020-08-11 广州虎牙信息科技有限公司 拉流调度的方法、拉流的方法及装置
CN112019890A (zh) * 2020-10-28 2020-12-01 北京达佳互联信息技术有限公司 直播分发方法、装置、服务器及介质
CN113055692A (zh) * 2021-04-20 2021-06-29 上海哔哩哔哩科技有限公司 数据处理方法及装置
CN113923470A (zh) * 2021-11-24 2022-01-11 上海哔哩哔哩科技有限公司 直播流处理方法及装置
CN114760482A (zh) * 2022-03-30 2022-07-15 上海哔哩哔哩科技有限公司 直播回源方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101137042A (zh) * 2006-09-29 2008-03-05 中兴通讯股份有限公司 一种集群式流媒体系统中静态节目的分发和服务方法
US20100228874A1 (en) * 2009-03-06 2010-09-09 Microsoft Corporation Scalable dynamic content delivery and feedback system
CN102792291A (zh) * 2009-08-17 2012-11-21 阿卡麦科技公司 基于http的流分发的方法和系统
CN104284201A (zh) * 2014-09-26 2015-01-14 北京奇艺世纪科技有限公司 一种视频内容的处理方法和装置
US20150149655A1 (en) * 2008-04-04 2015-05-28 Quickplay Media Inc. Progressive download playback

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101137042A (zh) * 2006-09-29 2008-03-05 中兴通讯股份有限公司 一种集群式流媒体系统中静态节目的分发和服务方法
US20150149655A1 (en) * 2008-04-04 2015-05-28 Quickplay Media Inc. Progressive download playback
US20100228874A1 (en) * 2009-03-06 2010-09-09 Microsoft Corporation Scalable dynamic content delivery and feedback system
CN102792291A (zh) * 2009-08-17 2012-11-21 阿卡麦科技公司 基于http的流分发的方法和系统
CN104284201A (zh) * 2014-09-26 2015-01-14 北京奇艺世纪科技有限公司 一种视频内容的处理方法和装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110809178A (zh) * 2018-08-06 2020-02-18 阿里巴巴集团控股有限公司 一种推流系统及方法
CN110809178B (zh) * 2018-08-06 2021-11-30 阿里巴巴集团控股有限公司 一种推流系统及方法
CN111526376A (zh) * 2019-02-01 2020-08-11 广州虎牙信息科技有限公司 拉流调度的方法、拉流的方法及装置
CN109951716A (zh) * 2019-03-26 2019-06-28 北京达佳互联信息技术有限公司 一种主播调度方法、装置、电子设备及可读存储介质
CN112019890A (zh) * 2020-10-28 2020-12-01 北京达佳互联信息技术有限公司 直播分发方法、装置、服务器及介质
CN112019890B (zh) * 2020-10-28 2021-02-09 北京达佳互联信息技术有限公司 直播分发方法、装置、服务器及介质
CN113055692A (zh) * 2021-04-20 2021-06-29 上海哔哩哔哩科技有限公司 数据处理方法及装置
CN113923470A (zh) * 2021-11-24 2022-01-11 上海哔哩哔哩科技有限公司 直播流处理方法及装置
CN113923470B (zh) * 2021-11-24 2023-07-25 上海哔哩哔哩科技有限公司 直播流处理方法及装置
CN114760482A (zh) * 2022-03-30 2022-07-15 上海哔哩哔哩科技有限公司 直播回源方法及装置
CN114760482B (zh) * 2022-03-30 2024-02-27 上海哔哩哔哩科技有限公司 直播回源方法及装置

Similar Documents

Publication Publication Date Title
CN108200443A (zh) 一种直播流的分发方法和装置
US11792276B2 (en) Content distribution network supporting popularity-based caching
US10911327B2 (en) Apparatus and methods for managing service delivery telemetry
CN108173953A (zh) 一种基于内容分发网络cdn的文件分发方法和装置
CN108234207A (zh) 一种基于内容分发网络cdn的故障定位方法和装置
US20170078153A1 (en) Software defined topology (sdt) for user plane
CN108234639A (zh) 一种基于内容分发网络cdn的数据访问方法和装置
CN104935625B (zh) 在面向服务的架构(soa)网络中发现服务的方法及系统
US9514229B2 (en) System and method for quality of experience aware media search and recommendation with unified portal
CN108234319A (zh) 一种数据的传输方法和装置
CN108234242A (zh) 一种基于流的压力测试方法和装置
CN108173952A (zh) 一种内容分发网络cdn的数据访问方法和装置
CN105491078B (zh) Soa系统中的数据处理方法及装置、soa系统
EP3942738A1 (en) Third party network and network slice management
CN106713138A (zh) 一种流数据的跨域传输方法和装置
CN108234638A (zh) 一种基于内容分发网络cdn的数据处理方法和装置
CN106534220A (zh) 一种流数据的双向传输方法和装置
CN106686101A (zh) 一种流数据的传输集群的调度方法和装置
CN108234210A (zh) 一种内容分发网络的日志处理方法和装置
CN108111623A (zh) 一种基于内容分发网络cdn的通信方法和装置
CN108234632A (zh) 一种内容分发网络cdn的数据分发方法和装置
CN103179191B (zh) P2p网络管控装置及p2p网络管控系统
CN110851275B (zh) 路由节点的负载转移方法及装置
CN109510717A (zh) 节点设备的信息的获取方法、装置、设备及存储介质
CN106790197A (zh) 一种流数据的跨域传输方法、装置和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180622