一种流媒体服务的负载调度方法及系统的制作方法

文档序号:10597237
一种流媒体服务的负载调度方法及系统的制作方法
【专利摘要】本发明公开了一种流媒体服务的负载调度方法,包括:负载调度服务器根据接收的网络节点服务器发送的流媒体服务请求,确定对应的能够提供请求的流媒体服务的网络节点服务器,从该网络节点服务器的多个设备中选取可用处理资源最多的设备作为处理流媒体服务请求的服务处理设备,并生成流媒体服务请求响应发送至发送流媒体服务请求权的网络节点服务器。本发明还公开了一种流媒体服务的负载调度系统。采用本发明,有效地解决流媒体服务瞬时大量并发时冲击设备崩溃的问题,提升流媒体服务质量。
【专利说明】
一种流媒体服务的负载调度方法及系统
技术领域
[0001 ]本发明涉及流媒体服务处理领域,更具体地,涉及一种流媒体服务的负载调度方法及系统。
【背景技术】
[0002]流媒体服务是时下主流的一种网络服务,通过互联网及流媒体技术为用户提供服务,常见的流媒体服务形式如流媒体直播服务,直播的流媒体通常以视频形式表现,融合了图像、文字、声音等丰富元素,声形并茂,通过真实、生动的传播,营造出强烈的现场感,吸引眼球,达成印象深刻、记忆持久的传播效果。
[0003]流媒体服务多是基于⑶N(Content Delivery Network,即内容分发网络),因为CDN可以依靠部署在各地的CDN节点服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率,进而能保证流媒体服务的稳定流程。因而负载均衡是整个CDN的核心技术,负载均衡的准确性和效率直接决定了整个CDN的效率和性能。现有的CDN中通常的负载均衡由GLSB(GlobalService Load Balance,全局负载均衡)进行。GLSB的主要目的是在整个网络范围内将用户的请求定向到最近的节点,这通常依据CDN节点服务器的就近性、健康性、CDN节点服务器当前的负载情况、支持的媒体格式等运行状态进行决策。
[0004]但是,现有技术中⑶N网络的GLSB通常只根据⑶N节点整体的负载情况,通过预置的负载均衡策略选取为用户提供流媒体服务的CDN节点服务器,但实际应用中,CDN节点服务器中通常包含多台设备,实际提供流媒体服务的通常是GLSB中的某台设备,而GLSB采用的负载均衡策略中以非常简单的策略指定CDN节点服务器中提供流媒体服务的具体设备(例如采用哈希算法指定与该类流媒体服务唯一对应的设备、对所有设备进行简单顺序轮询),尽可能保证CDN服务器内包含的所有设备在长时间内等概率地提供流媒体服务,但是这在流媒体服务瞬时大量并发的情况下(例如提供流媒体直播服务时,大量用户请求直播热点视频),流媒体服务请求会在很短的时间内爆增,采用这样简单的策略,这些爆增的请求会在短时间内大量冲击某个CDN节点服务器下的某个设备,导致该设备崩溃,所有请求的流媒体服务中断,十分影响流媒体服务质量。
[0005]发明人发现,虽然现有技术中,为解决这个问题,GLSB为⑶N节点服务器包含的设备设置了保护时间,即监测某台设备提供流媒体服务的时间超过保护时间则调度转换提供流媒体服务的设备,但是由于不同的应用场景下都有可能出现流媒体服务瞬时大量并发的情况(例如并发的流媒体服务类型不同、被冲击的设备型号、性能不同等),设备被冲击崩溃的临界时间在不同的场景下并不相同,设置的保护时间却是根据工程经验估测设置,始终不能有效地自适应适配各种应用场景的临界时间(保护时间设置过短会带来频繁调度消耗资源,保护时间设置过长超过设备的临界时间会无法达到设置目的),因此并不能有效地解决流媒体服务瞬时大量并发的情况下,设备被短时间内暴增的媒体服务请求冲击崩溃的问题。
[0006]因此,发明人认为,有必要针对上述现有技术中的技术问题进行改进。

【发明内容】

[0007]本发明的一个目的是提供一种用于流媒体服务负载调度的新技术方案。
[0008]根据本发明的第一方面,提供了一种流媒体服务的负载调度方法,通过与多个网络节点服务器连接的负载调度服务器实施,,所述方法包括:
[0009]接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器;
[0010]从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备;
[0011]生成流媒体服务请求响应并发送至所述发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。
[0012]进一步地,所述从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备的步骤,包括:
[0013]向所述提供流媒体服务的网络节点服务器请求与其对应的可用处理资源指示,所述可用处理资源指示包含所述提供流媒体服务的服务器包括的每个设备的可用处理资源指示;
[0014]根据请求获取的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0015]进一步地,所述从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备的步骤,还包括:
[0016]接收多个所述网络节点服务器根据预置的上报周期分别上报的其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示;
[0017]根据所述提供流媒体服务的网络节点服务器最新上报的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0018]进一步地,所述接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器的步骤,还包括:根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的网络节点服务器。
[0019]本发明的第二方面,提供一种流媒体服务的负载调度方法,通过与所述负载调度服务器连接的包含多个设备的网络节点服务器实施,其特征在于,所述方法包括:
[0020]将接收的用户终端的流媒体服务请求,发送至所述负载调度服务器;
[0021]接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务,所述服务处理设备是由负载调度服务器从确定的提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备。
[0022]进一步地,所述方法还包括:根据所述负载调度服务器的请求生成对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0023]进一步地,所述方法还包括:根据预置的上报周期,生成自身的可用处理资源指示并向所述负载调度服务器上报,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0024]根据本发明的第三方面,提供了一种负载调度服务器,包括:
[0025]请求处理模块,用于接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器;
[0026]调度模块,用于从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备;
[0027]响应生成模块,用于生成流媒体服务请求响应并发送至所述发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。
[0028]进一步地,所述调度模块包括:
[0029]可用资源指示请求子模块,用于向所述提供流媒体服务的网络节点服务器请求与其对应的可用处理资源指示,所述可用处理资源指示包含第二网络节点服务器包括的每个设备的可用处理资源指示;
[0030]调度子模块,用于根据请求获取的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0031]或者进一步地,所述调度模块包括:
[0032]上报接收子模块,用于接收多个所述网络节点服务器根据预置的上报周期分别上报的其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示;
[0033]调度子模块,用于根据所述提供流媒体服务的网络节点服务器最新上报的可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0034]进一步地,所述请求处理模块,还用于根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的第二网络节点服务器。
[0035]根据本发明的第四方面,提供了一种网络节点服务器,其特征在于,包括:
[0036]请求处理模块,用于接收的用户终端的流媒体服务请求,发送至所述负载调度服务器,以获取处理流媒体服务请求的服务处理设备的地址信息;
[0037]响应处理模块,用于接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务,所述服务处理设备是由负载调度服务器从确定的提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备。
[0038]进一步地,所述网络节点服务器还包括,可用资源指示生成模块,用于根据所述负载调度服务器的请求生成对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0039]或者进一步地,所述网络节点服务器还包括,可用资源指示上报模块,用于根据预置的上报周期,生成自身的可用处理资源指示并向所述负载调度服务器上报,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0040]根据本发明的第五方面,提供一种流媒体服务的负载调度系统,包括多个网络节点服务器以及负载调度服务器,所述每个网络节点服务器包含多个设备,所述负载调度服务器与多个网络节点服务器相连;
[0041]所述负载调度服务器为本发明的第三方面提供的负载调度服务器,用于接收流媒体服务请求,并根据接收的所述流媒体服务请求,确定对应的能够提供请求的流媒体服务的网络节点服务器,并从所述提供请求的流媒体的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备,以及生成流媒体服务请求响应发送至发送流媒体服务器请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。
[0042]所述网络节点服务器为本发明的第四方面提供的网络节点服务器,用于将接收的用户终端的流媒体服务请求发送至所述负载调度服务器以获取处理流媒体服务请求的服务处理设备的地址信息,以及用于接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务。
[0043]本发明的发明人发现,在现有技术中,尚未提出一种流媒体服务的负载调度方法及系统,能有效解决流媒体服务瞬时大量并发的情况下,设备被短时间内暴增的媒体服务请求冲击崩溃的问题。因此,本发明所要实现的技术任务或者所要解决的技术问题是本领域技术人员从未想到的或者没有预期到的,故本发明是一种新的技术方案。
[0044]通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
【附图说明】
[0045]被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
[0046]图1示出了本发明实施例的负载调度方法的一个流程图。
[0047]图2示出了本发明实施例的负载调度方法的一个流程图。
[0048]图3示出了本发明实施例的负载调度服务器的示意性框图。
[0049]图4示出了本发明实施例的负载调度服务器的调度模块的示意性框图。
[0050]图5示出了本发明实施例的负载调度服务器的调度模块的示意性框图。
[0051 ]图6示出了本发明实施例的网络节点服务器的示意性框图。
[0052]图7示出了本发明实施例的负载调度系统的示意图。
【具体实施方式】
[0053]现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
[0054]以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
[0055]对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
[0056]在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
[0057]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
[0058]〈实施例〉
[0059]本发明的一个实施例,提供一种流媒体服务的负载调度方法,如图1所示,通过网络节点服务器以及负载调度服务器实现,所述负载调度服务器与多个网络节点服务器相连。
[0060]注意:在本实施例中,所述“第一”、“第二”的限定只是为了使得本文的理解便利,例如,本实施例中“第一网络节点服务器”、“第二网络节点服务器”并不意味着限制其所限定的网络节点服务器为具有不同功能的网络节点服务器或者必须为不同的网络节点服务器,即第一网络节点服务器与第二网络节点服务器在本发明实施例中具有相同的功能,在一些例子中,第一网络节点服务器可以同时是第二网络节点服务器。
[0061]本实施例提供的一种流媒体服务的负载调度方法方法包括如下步骤:
[0062]步骤S1100,第一网络节点服务器接收用户终端的流媒体服务请求,并发送至所述负载调度服务器;
[0063]所述流媒体服务请求可以是流媒体直播请求,例如用户终端请求进行流媒体直播,或者用户终端请求下载直播流媒体进行播放,可以是流媒体点播请求,例如用户终端请求点播指定内容的流媒体,还可以是互动直播请求,例如多个互相通信的用户终端实时请求下载对方的直播视频进行播放,又向对方发起直播请求上传自己的直播视频。
[0064]第一网络节点服务器在接收用户终端的流媒体请求后可以直接将流媒体服务请求发送至所述负载调度服务器,也可以重新生成包含获取处理流媒体服务的服务设备地址信息的指示的流媒体服务请求,发送至所述负载调度服务器。
[0065]在步骤SllOO之后,进入步骤S1200,所述负载调度服务器根据接收的所述流媒体服务请求,确定对应的能够提供请求的流媒体服务的第二网络节点服务器;
[0066]所述流媒体服务请求中通常包含请求的流媒体服务的信息,例如流媒体服务所基于的流媒体协议(例如RTMP、MMS、RTSP)、流媒体服务的类型(例如直播、点播、互动直播等),负载调度服务器根据请求的流媒体服务的信息,确定能够提供请求的流媒体服务的第二网络节点服务器,例如,用户终端请求下载直播流媒体进行播放,需要下载的直播流媒体存储在某个网络节点服务器,因此确定该网络节点服务器为能够提供请求的直播流媒体下载的第二网络节点服务器,又例如,负载调度服务器根据请求的流媒体服务的信息以及常用的负载均衡策略,将距离最近负载最轻的网络节点服务器确定为第二网络节点服务器。在一个例子中,接收用户终端申请的第一网络节点服务器存储用户终端申请下载的直播流媒体,负载调度服务器将第一网络节点服务器确定为第二网络节点服务器。
[0067]而在一些应用场景中,提供流媒体的网络运营商很多,也许会分别提供同一个流媒体服务中的不同环节,例如用户终端基于运营商A提供的网络连接向第一网络节点服务器请求流媒体直播服务,所请求的流媒体直播的流媒体内容却由运营商B提供网络节点服务器存储,如果根据运营商A提供的网络连接确定运营商A网络中提供网络节点服务器提供服务,只能以距离运营商B网络中存储流媒体的网络节点服务器最近的运营商A网络中的网络节点服务器为第二网络节点服务器,此时要提供流媒体直播服务,最终还是导向最终存储流媒体的网络节点服务器,因此需要在两个不同的运营商网络中切换通信,会存在网络延迟、通信路径堵塞等问题,造成流媒体直播过程的卡顿。
[0068]因此,在一个例子中,步骤S1200包括,所述负载调度服务器根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的第二网络节点服务器。
[0069]其中,重定向可以是302重定向,302重定向是现有技术,又称之为302代表暂时性转移(Temporarily Moved),英文名称为302redirect,也被认为是暂时重定向(temporaryredirect),是一种服务器端的重定向,能够被搜索引擎蜘蛛正确地处理。采用302重定向,在不同网络运营商提供同一个流媒体服务的不同环节时,负载调度服务器接收来自运营商A的第一网络节点服务器发送的流媒体服务请求,将能真正提供流媒体服务的运营商B的网络节点服务器确定为第二网络节点服务器。
[0070]在步骤S1200之后,进入步骤S1300,所述负载调度服务器从所述第二网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0071]设备的可用处理资源可以采用设备当前处理的流媒体服务请求的连接数进行衡量,流媒体服务请求的连接数越多,可用处理资源越少。负载调度服务器每次收到流媒体服务请求,元从第二网络节点服务器中选取可用处理资源最多的设备(可以是流媒体服务请求的连接数最小的设备)作为处理设备,可以使得有效利用第二网络节点服务器中包含设备的可用处理资源,不会出现短时间到达的大量流媒体服务请求都冲击第二网络节点服务器某一个设备,导致该设备可用处理资源快速耗尽而崩溃。
[0072]在一个例子中,步骤S1300可以如图2所示,包括如下步骤:
[0073]步骤S1310,所述负载调度服务器向所述第二网络节点服务器请求所述第二网络节点服务器的可用处理资源指示,所述可用处理资源指示包含所述第二网络节点服务器包括的每个设备的可用处理资源指示;
[0074]步骤S1320,所述负载调度服务器根据请求获取的所述第二网络节点服务器的可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0075]在这个例子中,负载调度服务器在收到流媒体服务请求确定对应的提供流媒体服务的第二网络节点服务器之后,实时向第二网络节点服务器请求第二网络节点服务器的可用处理资源指示,进而可以获知第二网络节点服务器中每个设备最实时的可用处理资源,提升选取服务处理设备的准确度。
[0076]但在一些请求的流媒体服务要求时延较小的场景下,负载调度服务器实时请求第二网络节点服务器的可用处理资源指示,可能会带来额外的交互时延,导致提供流媒体服务过程中增加时延影响用户体验,例如在提供流媒体直播服务时,时延的增加可能会导致直播画面的卡顿。
[0077]因此,在一个例子中,与所述负载调度服务器相连的多个所述网络节点服务器,根据预置的上报周期,分别向所述负载调度服务器上报与其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0078]由网络节点服务器根据预置的上报周期向负载调度服务器主动上报与其对应的可用处理资源指示,可以使得负载调度服务器可以在接收流媒体服务请求时,获知最近上报周期内与其连接多个网络节点服务器的可用处理资源状态。因此,对应地,在上述例子中,负载调度服务器通过步骤S1200在确定第二网络节点服务器之后,在步骤S1300中,负载调度服务器根据所述第二网络节点服务器最新上报的可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。如此负载调度服务器可以无需再向第二网络节点服务器实时请求与其对应的可用处理资源指示,降低提供请求的流媒体服务的时延。
[0079]进一步地,在上述例子中,还可以通过所述负载调度服务器配置所述上报周期。配置的上报周期可以根据工程经验值或者应用需求设置,例如在一些应用场景中,流媒体服务请求存在不定时突然暴增的情况,可以将上报周期配置较短(即上报频率较大),例如5秒,以便负载调度服务器能及时应对流媒体服务请求瞬时暴增时带来处理设备急速消耗的情形,但若一些应用场景中,流媒体服务请求较为平稳,可以将上报周期配置较长(即上报频率较小),例如30分钟,以降低上报带来的通信资源消耗。
[0080]在步骤S1300之后,进入步骤S1400,所述负载调度服务器生成流媒体服务请求响应并发送至所述第一网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。
[0081]步骤S1500,所述第一网络节点服务器将接收的所述流媒体服务响应发送至所述用户终端,以便所述用户终端能够通过服务处理设备获取请求的流媒体服务。
[0082]所述第一网络节点服务器,可以直接将已经包含服务处理设备的地址信息的流媒体服务响应发送至用户终端,也可以从流媒体服务响应中的服务处理设备的地址信息提取后包含在新生成的刘么提服务响应中发送给用户终端。在一个例子中,上述方法可以通过Q)N(Content Delivery Network,即内容分发网络)实现,则所述负载调度服务器为GSLB且所述网络节点服务器为⑶N节点服务器。其中,GSLB(Global Service Load Balance,全局负载均衡)为CDN网络中实现负载均衡的单元。
[0083]图3示出了本发明实施例的负载调度服务器3000的框图。负载调度服务器3000可以用来实现图1或图2所示的方法,故在此不再赘述。
[0084]负载调度服务器3000包括请求处理模块3100、调度模块3200以及响应生成模块3300,进一步地,还包括上报周期配置模块3400。
[0085]请求处理模块3100,用于接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器。
[0086]进一步地,所述请求处理模块3100,还用于根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的网络节点服务器。
[0087]调度模块3200,用于从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0088]进一步地,如图4所示,调度模块3200包括:
[0089]可用资源指示请求子模块3201,用于向所述提供流媒体服务的网络节点服务器请求与其对应的可用处理资源指示,所述可用处理资源指示包含第二网络节点服务器包括的每个设备的可用处理资源指示;
[0090]调度子模块3202,用于根据请求获取的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0091 ] 或者进一步地,如图5所示,调度模块3200包括:
[0092]上报接收子模块3210,用于接收多个所述网络节点服务器根据预置的上报周期分别上报的其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示;
[0093]调度子模块3220,用于根据所述提供流媒体服务的网络节点服务器最新上报的可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。
[0094]响应生成模块3300,用于生成流媒体服务请求响应并发送至所述发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息
[0095]进一步地,所述负载调度服务器还包括上报周期配置模块3400,用于配置所述上报周期。
[0096]图6示出了本发明实施例的网络节点服务器4000的框图。网络节点服务器4000可以用来实现图1或图2所示的方法,故在此不再赘述。
[0097]网络节点服务器4000包括请求处理模块4100和响应处理模块4200,进一步地,还包括可用资源指示生成模块4300或者可用资源指示上报模块4400。
[0098]请求处理模块4100,将接收的用户终端的流媒体服务请求,发送至所述负载调度服务器;
[0099]响应处理模块4200,用于接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务,所述服务处理设备是由负载调度服务器从确定的提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备。
[0100]进一步地,所述网络节点服务器还包括可用资源指示生成模块4300,用于根据所述负载调度服务器的请求生成对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0101]或者进一步地,所述网络节点服务器还包括可用资源指示上报模块4400,用于根据预置的上报周期,生成自身的可用处理资源指示并向所述负载调度服务器上报,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。
[0102]根据本发明的另一个实施例,还提供了一种流媒体服务的负载调度系统5000,如图5所示,包括多个网络节点服务器51以及负载调度服务器61,每个所述网络节点服务器51包含多个设备,所述负载调度服务器61与多个网络节点服务器51相连。
[0103]负载调度服务器61,为本发明的实施例提供的负载调度服务器3000,用于接收第一网络节点服务器发送的流媒体服务请求,并根据接收的所述流媒体服务请求,确定对应的能够提供请求的流媒体服务的第二网络节点服务器,并从所述第二网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备,以及生成流媒体服务请求响应并发送至所述第一网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。
[0104]其中所述第一网络节点服务器与所述第二网络节点服务器均为本发明实施例中的网络节点服务器51,所述“第一”、“第二”的限定只是为了使得本文的理解便利,并不意味着限制其所限定的网络节点服务器为具有不同功能的网络节点服务器或不同的网络节点服务器,即第一网络节点服务器与第二网络节点服务器在本发明实施例中具有相同的功能,并且,第一网络节点服务器可以同时是第二网络节点服务器。
[0105]网络节点服务器51,为本发明的实施例提供的网络节点服务器4000,用于将接收用户终端的流媒体服务请求发送至所述负载调度服务器,以及用于接收所述负载调度服务器发送的流媒体服务响应,并发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务。
[0106]本领域技术人员应当明白,可以通过各种方式来实现本实施例提供的上传装置和播放装置。例如,可以通过指令配置处理器来实现上传装置和播放装置。例如,可以将指令存储在ROM中,并且当启动设备时,将指令从ROM读取到可编程器件中来实现上传装置和播放装置。例如,可以将上上传装置和播放装置固化到专用器件(例如ASIC)中。可以将上传装置上传装置和播放装置分成相互独立的单元,或者可以将它们合并在一起实现。上传装置和播放装置可以通过上述各种实现方式中的一种来实现,或者可以通过上述各种实现方式中的两种或更多种方式的组合来实现。
[0107]注意,在本文中,所述“第一”、“第二”等单词仅用于简单限定其后的名词以便于阅读,但并不意味着限定对应的被限定的名词的先后时序、顺序、个数等,例如“第一网络节点服务器”和“第二网络节点服务器”有可能是同一个网络节点服务器,也可能是不同的网络节点服务器。
[0108]本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0109]计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是一一但不限于一一电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0110]这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0111]用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言一诸如Smalltalk、C++等,以及常规的过程式编程语言一诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
[0112]这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0113]这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0114]也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0115]附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
[0116]以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
【主权项】
1.一种流媒体服务的负载调度方法,通过与多个网络节点服务器连接的负载调度服务器实施,其特征在于,所述方法包括: 接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器; 从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备; 生成流媒体服务请求响应发送至所述发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。2.根据权利要求1所述的方法,其特征在于,所述从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备的步骤,包括: 向所述提供流媒体服务的网络节点服务器请求与其对应的可用处理资源指示,所述可用处理资源指示包含所述提供流媒体服务的服务器包括的每个设备的可用处理资源指示; 根据请求获取的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。3.根据权利要求1所述的方法,其特征在于,所述从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备的步骤,还包括: 接收多个所述网络节点服务器根据预置的上报周期分别上报的其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示; 根据所述提供流媒体服务的网络节点服务器最新上报的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。4.根据权利要求1所述的方法,其特征在于,所述接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器的步骤,还包括:根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的网络节点服务器。5.—种流媒体服务的负载调度方法,通过与所述负载调度服务器连接的包含多个设备的网络节点服务器实施,其特征在于,所述方法包括: 将接收的用户终端的流媒体服务请求,发送至所述负载调度服务器; 接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务,所述服务处理设备是由负载调度服务器从确定的提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备。6.根据权利要求5所述的方法,其特征在于,还包括:根据所述负载调度服务器的请求生成对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。7.根据权利要求5所述的方法,其特征在于,还包括:根据预置的上报周期,生成自身的可用处理资源指示并向所述负载调度服务器上报,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。8.一种负载调度服务器,其特征在于,包括: 请求处理模块,用于接收流媒体服务请求,根据所述流媒体服务请求确定提供流媒体服务的网络节点服务器; 调度模块,用于从所述提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备; 响应生成模块,用于生成流媒体服务请求响应并发送至所述发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。9.根据权利要求8所述的负载调度服务器,其特征在于,所述调度模块包括: 可用资源指示请求子模块,用于向所述提供流媒体服务的网络节点服务器请求与其对应的可用处理资源指示,所述可用处理资源指示包含第二网络节点服务器包括的每个设备的可用处理资源指示; 调度子模块,用于根据请求获取的所述可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。10.根据权利要求8所述的负载调度服务器,其特征在于,所述调度模块包括: 上报接收子模块,用于接收多个所述网络节点服务器根据预置的上报周期分别上报的其对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示; 调度子模块,用于根据所述提供流媒体服务的网络节点服务器最新上报的可用处理资源指示,选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备。11.根据权利要求8所述的负载调度服务器,其特征在于,所述请求处理模块,还用于根据接收的所述流媒体服务请求,通过重定向,确定对应的能够提供请求的流媒体服务的网络节点服务器。12.一种网络节点服务器,其特征在于,包括: 请求处理模块,用于将接收的用户终端的流媒体服务请求,发送至所述负载调度服务器; 响应处理模块,用于接收所述负载调度服务器发送的流媒体服务响应,将所述流媒体响应中包含的处理所述流媒体服务请求的服务处理设备的地址信息,发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务,所述服务处理设备是由负载调度服务器从确定的提供流媒体服务的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备。13.根据权利要求12所述的网络节点服务器,其特征在于,还包括,可用资源指示生成模块,用于根据所述负载调度服务器的请求生成对应的可用处理资源指示,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。14.根据权利要求12所述的网络节点服务器,其特征在于,还包括,可用资源指示上报模块,用于根据预置的上报周期,生成自身的可用处理资源指示并向所述负载调度服务器上报,所述可用处理资源指示包含对应的网络节点服务器包括的每个设备的可用处理资源指示。15.—种流媒体服务的负载调度系统,其特征在于,包括多个网络节点服务器以及负载调度服务器,所述每个网络节点服务器包含多个设备,所述负载调度服务器与多个网络节点服务器相连; 所述负载调度服务器为权利要求8-11任意一项所述的负载调度服务器,用于接收流媒体服务请求,并根据接收的所述流媒体服务请求,确定对应的能够提供请求的流媒体服务的网络节点服务器,并从所述提供请求的流媒体的网络节点服务器所包含的多个设备中选取可用处理资源最多的设备作为处理所述流媒体服务请求的服务处理设备,以及生成流媒体服务请求响应发送至发送流媒体服务请求的网络节点服务器,所述流媒体服务请求响应包含所述服务处理设备的地址信息。 所述网络节点服务器为权利要求12-14任意一项所述的网络节点服务器,用于将接收的用户终端的流媒体服务请求发送至所述负载调度服务器,以及用于接收所述负载调度服务器发送的流媒体服务响应,并发送至用户终端,以便用户终端能够通过服务处理设备获取请求的流媒体服务。
【文档编号】H04L29/08GK105959354SQ201610261852
【公开日】2016年9月21日
【申请日】2016年4月25日
【发明人】魏立志
【申请人】乐视控股(北京)有限公司, 乐视云计算有限公司
再多了解一些
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1