一种流媒体服务器负荷分担方法及其系统的制作方法

文档序号:7664639阅读:68来源:国知局
专利名称:一种流媒体服务器负荷分担方法及其系统的制作方法
技术领域
本发明涉及流媒体通讯方法与系统,尤其涉及一种流媒体系统多流媒体服 务器按流量进行负荷分担的方法及系统。
背景技术
随着网络技术的发展,流媒体技术应运而生。流媒体是指在网络中使用流 式传输技术的连续时基媒体,如音频、视频、音视频或多媒体文件。流媒体技 术可以使用户边下载边收看媒体内容,而不需要把媒体文件全部下载到本地才 能观看。在流媒体系统中, 一台流媒体服务器只能提供有限的实时媒体流连接,当 访问流媒体的用户较多的情况下,就需要增加流媒体服务器的数量,使各个流 媒体服务器共同为用户提供流媒体业务,提高系统处理流媒体业务能力。当一个流媒体系统存在多个流媒体服务器时,如何使系统中各个流媒体服 务器比较均衡的处理流媒体业务,发挥各自的最佳性能是要解决的问题。中国专利申请号为20051008627.8的对比文件,公开了一种流媒体系统负荷分担方 法及其系统,该方法包括门户子系统实时监控各流媒体服务器的运行状态; 终端向门户子系统发起一媒体文件列表请求,门户子系统生成一相关的媒体文 件列表网页并发送至终端;终端根据媒体文件列表网页选择一待播放的媒体文 件,门户子系统在各流媒体服务器中找寻能提供媒体文件服务的流媒体服务 器,并根据能提供媒体文件服务的流媒体服务器的运行状态及负荷情况从中选 择一负荷最轻流媒体服务器,再生成指向负荷最轻流媒体服务器的实时流协议 的访问网址并发送至终端;终端根据访问网址发起向负荷最轻流媒体服务器的 媒体访问,从而完成负荷分担。该对比文件公开的流媒体系统负荷分担方法及 其系统中,门户系统通过判断流服务器的系统CPU资源占用率来实现流媒体 服务器的负荷分担。目前比较常用负载均衡方法是利用四层交换机来实现,其原理是所有的流 媒体播放终端先将流媒体服务器请求发送到四层交换机,由四层交换机将请求 转发到流媒体服务器,流媒体服务器收到请求后再将媒体数据通过四层交换机 转发给流媒体播放器。对于流媒体系统,采用四层交换机作为负载均衡存在以 下问题1) 流媒体系统向用户提供的是音视频流服务,需要的网络带宽很大,由 于采用四层交换机作为负载均衡时所有的消息都需要经过四层交换机转发,容 易在四层交换机处形成瓶颈,制约了系统对外提供服务的能力。2) 由于所有的消息都需要经过四层交换机转发,如果四层交换机出现故 障,将会使整个流媒体系统无法对外提供服务,降低了流媒体系统的稳定性和 健壮性。3) 四层交换机是一个高端产品,价格很昂贵,特别对于网络带宽比较大 的四层交换机,价格相当的昂贵,难以被一般用户接受。发明内容本发明所要解决的技术问题在于,提供一种流媒体服务器负荷分担的方法 及系统,通过按流媒体服务器的流量进行负荷分担,以提高流媒体系统的稳定 性及流媒体系统对外提供业务的能力。为达到上述目的,本发明提供的流媒体服务器负荷分担方法,用于包括门 户服务器、数据库服务器、多个流媒体服务器的流媒体系统,该方法包括初始配置步骤,用于在所述门户服务器中配置所述流媒体服务器的相关信息;流量信息收集及发送步骤,用于定时收集所述各流媒体服务器的网络流量信息,并发送所述网络流量信息到所述门户服务器;负荷分担步骤,用于在有终端用户访问所述门户服务器发起点播媒体业务 请求时,由所述门户服务器选择所述网络流量最小且状态为活动的流媒体服务 器的地址返回给所述终端用户。上述流媒体服务器负荷分担方法,所述初始配置步骤中,包括在所述门户 服务器的内存中创建一 内存表,该内存表用于保存所述流媒体服务器的相关信 息,该流媒体服务器的相关信息包括流媒体服务器的地址、网络流量、流媒 体服务器的状态及流量数据写入所述内存表的时间。
上述流媒体服务器负荷分担的方法,所述门户服务器通过一定时器触发定 时检査所述内存表中各流量服务器的流量数据的写入时间,如果当前时间与所 述写入时间间隔大于等于某一段时间时,在所述内存表中置该流媒体服务器的 状态为非活动状态。上述流媒体服务器负荷分担的方法,在所述流量信息收集及发送步骤中, 是根据网络流量发送的时间间隔定时收集所述流媒体服务器的网络流量信息 发送到所述门户服务器的,该时间间隔是可以设置的。上述流媒体服务器负荷分担的方法,在所述流量信息收集及发送歩骤中, 所述门户服务器接收到所述流媒体服务器发送的网络流量信息后,把该网络流 量信息更新到所述内存表中该流媒体服务器的流量信息字段中,同时记入写入 时间并置该流媒体服务器的状态为活动状态。上述流媒体服务器负荷分担的方法,所述负荷分担步骤进一步包括步骤31,终端用户登录所述门户服务器,浏览门户并发起点播或直播请 求业务;步骤32,所述门户服务器收到所述业务请求后,在所述内存表中査找状 态为活动的所有流媒体服务器,并选出所述网络流量最小的流媒体服务器作为 提供本次服务的流媒体服务器,生成点播地址返回给该终端用户;步骤33,该终端用户根据所述门户服务器返回的点播地址向提供本次服 务的流媒体服务器发起点播请求;步骤34,该终端用户开始接收并播放点播文件,播放完成后,该流媒体 服务器生成点播话单。上述流媒体服务器负荷分担的方法,所述负荷分担步骤中,在所述步骤 33和步骤34之间还包括一对所述终端用户进行鉴权的步骤,用于在该终端用 户鉴权通过后,流媒体服务器才向该用户发送媒体流。进一歩的,本发明还提供了一种应用上述流媒体服务器负荷分担方法的流 媒体系统,包括门户服务器、数据库服务器及多个流媒体服务器,所述门户 服务器中包括一初始配置模块,用于在所述门户服务器中配置所述流媒体服务器的相关信息;该初始配置模块又包括一控制模块,用于根据所述流媒体服务器的网络流量信息,在有终端用户访问所述门户服务器发起点播媒体业务请求时,选择所述网络流量最小且状态 为活动的流媒体服务器的地址返回给所述终端用户。 所述流媒体服务器中包括一流量收集模块,用于定时收集所述各流媒体服务器的网络流量信息,并 发送所述网络流量信息到所述门户服务器。上述流媒体系统,所述数据库服务器用于存储流媒体系统门户信息、用户 信息、文件信息,该数据库服务器供所述门户服务器访问。上述流媒体系统,所述门户服务器的内存中包括一个内存表,用于保存所 述流媒体服务器的相关信息,该流媒体服务器的相关信息包括流媒体服务器 的地址、网络流量、流媒体服务器的状态及流量数据写入所述内存表的时间。上述流媒体系统,所述门户服务器中还包括一定时器,由所述控制模块控 制触发定时检査所述内存表中各流量服务器网络流量的写入时间,如果当前时 间与所述写入时间间隔大于等于某一段时间时,在所述内存表中置该流媒体服 务器的状态为非活动状态。与现有技术相比,本发明提供的流媒体服务器负荷分担方法及系统,解决 了多流媒体服务器进行点播直播业务时存在的瓶颈问题,改进了流媒体服务器 状态监测和流媒体服务器选择的方法,降低了系统出现单点故障的可能性,用 软件方法实现了四层交换机硬件实现的按流量进行负荷分担的功能,大大降低 了成本,提高了流媒体系统对外提供业务的能力,提供了产品的竞争力。


图1是本发明流媒体服务器负荷分担方法流程图;图2是本发明实施例流媒体系统负荷分担方式的系统组网图;图3是本发明实施例流媒体系统负荷分担实现流程图;图4是本发明流媒体系统应用本发明负荷分担方法的具体业务流程图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案实施作进一步的详细描 述,以更进一步了解本发明之目的、方案及功效,但并非作为对本发明所附权 利要求保护范围的限制。图1示出了本发明流媒体服务器负荷分担方法流程,该流媒体服务器负荷 分担的方法,用于包括门户服务器、数据库服务器、多个流媒体服务器的流媒 体系统,如图1所示,该方法包括如下步骤步骤SIO,在门户服务器中配置所有流媒体服务器的相关信息;步骤S20,定时收集各流媒体服务器的网络流量信息,并发送该网络流量 信息到门户服务器;步骤S30,在有终端用户访问门户服务器发起点播媒体业务请求时,由门 户服务器选择所述网络流量最小且状态为活动的流媒体服务器的地址返回给 终端用户。图2本发明实施例流媒体系统负荷分担方式的系统组网图,如图2所示,该实施例的流媒体系统包括门户服务器IO、数据库服务器20、多个流媒体服务器30及媒体文件存储设备40,其中,门户服务器中还包括 一初始配置 模块IOI,用于在门户服务器中配置所有流媒体服务器的相关信息,并形成相 关配置文件;该初始配置模块还包括一控制模块102,用于根据各流媒体服务 器30的网络流量信息,在有终端用户访问门户服务器10发起点播媒体业务请 求时,选择所述网络流量最小且状态为活动的流媒体服务器30的地址返回给 所述终端用户。流媒体服务器中还包括 一流量收集模块301,用于定时收集 所述各流媒体服务器30的网络流量信息,并发送所述网络流量信息到所述门 户服务器IO。其中数据库服务器20可以和门户服务器IO共用一台物理服务器,即将数 据库和门户程序都安装在同一台服务器上,门户服务器IO通过数据库接口函 数访问数据库。由于数据库服务器20主要用来存储流媒体系统门户信息、用 户信息、文件信息等,不实现负荷分担功能,所以在后面的业务流程中不具体 介绍数据库服务器。下面结合图2和图3,对本发明的负荷分担方式进行详细的描述在步骤S10中,包括对门户服务器10初始化步骤S101a和流媒体服务器 30初始化步骤S101b。步骤S101a:门户服务器10初始化包括如下内容al:门户服务器10启动后,门户服务器的控制模块102在内存中创建一 个保存各流媒体服务器的信息的内存表103,然后将从配置文件中读取的各个
流媒体服务器30地址先写入到内存表103中。内存表103保存的流媒体服务器30的信息包括流服务器地址、网络流量、 服务器状态和流量数据的写入时间。a2:门户服务器10的控制模块102启动一个定时器,每30秒检查一次内 存表中各流媒体服务器30的流量数据最后写入时间,如果当前时间和写入时 间相差大于等于30秒,则在内存表103中置该流媒体服务器30的状态为非活 动。这里控制模块102检查修改流媒体服务器状态的时间设置为30秒是因为 一般用户一次请求失败到再次请求的时间大于30秒。当终端用户申请媒体服 务时,如果门户服务器10返回一个在内存表103中状态为活动但实际已经非 活动的流媒体服务器30的地址,用户的请求将会失败,当用户再次重试该请 求时,门户服务器10能够发现该流媒体服务器30已经变为非活动从而重新选 择一个活动的流媒体服务器30给用户,保证用户再次重试能够成功。步骤S101b:流媒体服务器30初始化包括如下内容流媒体服务器启动后,流量收集模块301作为流服务器的一个子模块也被 启动,流量收集模块301读取网络流量发送的时间间隔参数,然后根据该时间 间隔定期收集流媒体服务器30的网络流量信息发送到门户服务器102。网络流量是指发送时间间隔内网络发送和接收的总流量,单位为字节。网络流量收集模块发送网络流量的时间间隔可以设置,建议的设置范围为 1-10秒。在步骤S20中还包括步骤S201流媒体服务器30的流量收集模块301按配置的时间间隔收集流 媒体服务器系统网络的网络流量信息,并将获取的网络流量信息发送到门户服 务器10。网络流量收集模块301收集的网络流量是配置的时间间隔内流媒体 服务器网络发送和接收的流量之和,单位为字节。步骤S202:门户服务器10接收到流媒体服务器30发送的网络流量信息 后,控制模块102把网络流量信息更新到内存表103中该流媒体服务器30的 流量信息字段中,同时记入写入时间并置该流媒体服务器30状态为活动。图4为是本发明流媒体系统应用本发明负荷分担方法的具体业务流程图。 示出了上述步骤S30的具体实现流程。如图4所示本发明流媒体系统应用本 发明负荷分担方法的具体业务流程包括步骤S301:终端用户50登录门户服务器10,浏览门户并发起点播或直播 请求业务。步骤S302:门户服务器10收到点播请求后,控制模块102查找内存表103 中状态为活动的所有流媒体服务器30,选出流量最小的流媒体服务器30作为 提供本次服务的流媒体服务器,生成点播地址返回给点播用户。步骤S303:终端用户50根据门户服务器10返回的点播地址向流媒体服 务器30发起点播请求。步骤S304:流媒体服务器30收到用户的点播请求后进行鉴权,鉴权通过 后,向终端用户50发送媒体流。步骤S305:终端用户50开始接收并播放点播的文件,文件播放完成,流 媒体服务器30生成点播话单,点播流程结束。虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,在不 背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作 出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权 利要求的保护范围。
权利要求
1、 一种流媒体服务器负荷分担方法,用于包括门户服务器、数据库服务 器、多个流媒体服务器的流媒体系统,其特征在于,该方法包括初始配置步骤,用于在所述门户服务器中配置所述流媒体服务器的相关信息;流量信息收集及发送歩骤,用于定时收集所述各流媒体服务器的网络流量 信息,并发送所述网络流量信息到所述门户服务器;负荷分担步骤,用于在有终端用户访问所述门户服务器发起点播媒体业务 请求时,由所述门户服务器选择所述网络流量最小且状态为活动的流媒体服务 器的地址返回给所述终端用户。
2、 根据权利要求1所述的流媒体服务器负荷分担方法,其特征在于,所 述初始配置步骤中,包括在所述门户服务器的内存中创建一内存表,该内存表 用于保存所述流媒体服务器的相关信息,该流媒体服务器的相关信息包括流 媒体服务器的地址、网络流量、流媒体服务器的状态及流量数据写入所述内存 表的时间。
3、 根据权利要求2所述的流媒体服务器负荷分担的方法,其特征在于, 所述门户服务器通过一定时器触发定时检查所述内存表中各流量服务器的流 量数据的写入时间,如果当前时间与所述写入时间间隔大于等于某一段时间 时,在所述内存表中置该流媒体服务器的状态为非活动状态。
4、 根据权利要求2所述的流媒体服务器负荷分担的方法,其特征在于,在所述流量信息收集及发送步骤中,是根据网络流量发送的时间间隔定时收集 所述流媒体服务器的网络流量信息发送到所述门户服务器的,该时间间隔是可 以设置的。
5、 根据权利要求4所述的流媒体服务器负荷分担的方法,其特征在于, 在所述流量信息收集及发送步骤中,所述门户服务器接收到所述流媒体服务器 发送的网络流量信息后,把该网络流量信息更新到所述内存表中该流媒体服务 器的流量信息字段中,同时记入写入时间并置该流媒体服务器的状态为活动状 态。
6、 根据权利要求2所述的流媒体服务器负荷分担的方法,其特征在于,所述负荷分担步骤进一歩包括歩骤31,终端用户登录所述门户服务器,浏览门户并发起点播或直播请 求业务;步骤32,所述门户服务器收到所述业务请求后,在所述内存表中查找状 态为活动的所有流媒体服务器,并选出所述网络流量最小的流媒体服务器作为 提供本次服务的流媒体服务器,生成点播地址返回给该终端用户;步骤33,该终端用户根据所述门户服务器返回的点播地址向提供本次服 务的流媒体服务器发起点播请求;步骤34,该终端用户开始接收并播放点播文件,播放完成后,该流媒体 服务器生成点播话单。
7、 根据权利要求6所述的流媒体服务器负荷分担的方法,其特征在于, 所述负荷分担步骤中,在所述步骤33和步骤34之间还包括一对所述终端用户 进行鉴权的步骤,用于在该终端用户鉴权通过后,流媒体服务器才向该用户发 送媒体流。
8、 一种应用上述权利要求1 7中任一项所述流媒体服务器负荷分担方法 的流媒体系统,包括门户服务器、数据库服务器及多个流媒体服务器,其特 征在于,所述门户服务器中包括一初始配置模块,用于在所述门户服务器中配置所述流媒体服务器的相关信息;该初始配置模块又包括一控制模块,用于根据所述流媒体服务器的网络流量信息,在有终端用户 访问所述门户服务器发起点播媒体业务请求时,选择所述网络流量最小且状态 为活动的流媒体服务器的地址返回给所述终端用户。所述流媒体服务器中包括一流量收集模块,用于定时收集所述各流媒体服务器的网络流量信息,并 发送所述网络流量信息到所述门户服务器。
9、 根据权利要求8所述的流媒体系统,其特征在于,所述数据库服务器 用于存储流媒体系统门户信息、用户信息、文件信息,该数据库服务器供所述 门户服务器访问。
10、 根据权利要求8所述的流媒体系统,其特征在于,所述门户服务器的内存中包括一个内存表,用于保存所述流媒体服务器的相关信息,该流媒体服 务器的相关信息包括流媒体服务器的地址、网络流量、流媒体服务器的状态 及流量数据写入所述内存表的时间。
11、根据权利要求10所述的流媒体系统,其特征在于,所述门户服务器 中还包括一定时器,由所述控制模块控制触发定时检査所述内存表中各流量服 务器网络流量的写入时间,如果当前时间与所述写入时间间隔大于等于某一段 时间时,在所述内存表中置该流媒体服务器的状态为非活动状态。
全文摘要
本发明公开了一种流媒体服务器负荷分担方法,用于包括门户服务器、数据库服务器、多个流媒体服务器的流媒体系统,该方法包括初始配置步骤,用于在所述门户服务器中配置所述流媒体服务器的相关信息;流量信息收集及发送步骤,用于定时收集所述各流媒体服务器的网络流量信息,并发送所述网络流量信息到所述门户服务器;负荷分担步骤,用于在有终端用户访问所述门户服务器发起点播媒体业务请求时,由所述门户服务器选择所述网络流量最小且状态为活动的流媒体服务器的地址返回给所述终端用户。本发明还公开了一种应用上述流媒体服务器负荷分担方法的流媒体系统。本发明的应用解决了多流媒体服务器进行点播直播业务时存在的瓶颈问题。
文档编号H04L29/06GK101146114SQ200710175838
公开日2008年3月19日 申请日期2007年10月12日 优先权日2007年10月12日
发明者朱柳辉, 杨万祥 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1