背景技术
网际协议电视(Internet Protocol TeleVision,以下简称:IPTV)是一种利用宽带有线电视网,集互联网、多媒体、通讯等多种技术于一体,向家庭用户提供包括数字电视在内的多种交互式服务的崭新技术。IPTV使用传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol,以下简称:TCP/IP)作为承载协议进行单播、广播或组播视频业务,有效地将电视网、电话网和互联网三个领域结合在一起,是三网融合最具代表性的业务,正受到业界越来越多的关注。
近来,随着IPTV业务或流媒体业务的快速普及,高比特率多媒体流式传输尤其是高比特率音视频流式传输已从处理数千并发用户发展到百万级用户的阶段。传统的基于集中式的媒体服务器在面对大并发服务的挑战时,其在存储访问(如磁盘输入/输出I/O)、播放处理、海量存储及部署成本等方面都受到极大挑战,难以支持IPTV业务的大规模商用。
服务器集群技术因其高度可扩展性和廉价的构建成本,为实现IPTV系统中高性能媒体节点提供了良好的技术基础。引入集群管理模式后,集群内所有媒体单元的存储空间可被视为统一的全局空间,同时集群控制单元可根据一定的内容分发方法完成对媒体文件的分发存储放置,这就为实现集群内多个媒体单元的存储资源共享和播放负载均衡提供了前提。
集群中单个媒体单元的播放能力是相对有限的,如果个别媒体单元上所放置的节目内容的访问热度很高,则很容易由于高并发连接而导致该媒体单元迅速到达服务能力的上限(比如该媒体单元出现磁盘I/O访问频率到达瓶颈或中央处理器CPU处理异常繁忙等现象),而与此同时,集群内访问热度较低的媒体单元负荷却很轻甚至处于空闲状态。这就出现整个集群内部播放资源不能得到充分利用的局面,是对集群内剩余播放能力的极大浪费;而且,如果个别媒体单元中内容访问频率经常处于高负荷状态,会导致其磁盘损坏率变高,降低系统可靠性,增加系统维护成本,影响用户业务体验。
目前,业界许多标准组织都在研究IMS-based-IPTV,就是在IMS的整体架构下提供IPTV业务。其中,欧洲标准委员会电信和互联网融合业务及高级网络协议组(European Telecommunications Standards InstituteTelecommunications & Internet converged Services & Protocols for AdvancedNetworking,以下简称:ETSI TISPAN)基于IMS定义的IPTV架构如图1所示,每一个IPTV业务功能由一对IPTV业务控制功能(Service Control Functions,以下简称:SCF)和IPTV媒体功能(Media Functions,以下简称:MF)组成。
其中,MF为终端用户提供媒体服务控制和具体媒体内容交付。在标准中其进一步被划分为媒体控制功能(Media Control Function,以下简称:MCF)和媒体交付功能(Media Delivery Function,以下简称:MDF),后者在前者的控制下完成媒体内容交付过程。在目前的TISPAN IMS based IPTV功能架构中,MF由一个MCF和该MCF管理的多个MDF所组成。即TISPANIMS-based-IPTV引入了集群管理的方法实现MCF对多个MDF的管理控制,其中MCF充当集群控制单元,集群中的多个MDF皆为媒体单元。
在现有TISPAN标准中,可以由SCF基于用户终端位置、MF负载、所请求的内容标识等选择相应的MF向用户提供内容;也可以基于MCF进行内容路由,由MCF根据MF负载、所请求的内容标识等选择相应的MF提供内容,此时MCF体现为一个重定向服务器,直到把请求路由到相关的MF。
MF被选定之后,其MCF进一步根据其管理的多个MDF的内容分布及状态、负载状态等信息选定一个合适的MDF用于提供内容交付。
综上所述,就现有TISPAN IMS-based-IPTV功能架构而言,标准虽然有提到MCF根据其管理的多个MDF的内容分布及状态、负载状态等信息选定一个合适的MDF用于提供内容交付,但标准却尚未给出媒体文件被分发存储到MF中MDF的方法,致使标准在MF内部文件级分发方面还欠缺可实施性。不可回避地,需要给出一种媒体节点MF中内容文件的分发方法,以此保证MF内各MDF的播放处理负载均衡。
网际协议电视开放论坛Open IPTV Forum引入了集群管理的方法实现集群控制器(Cluster Controller,以下简称:CC)对多个内容交付功能(CDF,Content Delivery Function,以下简称:CDF)的管理控制,如图2所示。对CC选择主要是由内容分发网络控制器(Content Delivery Network Controller,以下简称:CDNC)根据IPTV控制功能(IPTV Control,以下简称:IPTVC)给出的参数进行选择,关键的参数如IPTV终端功能(IPTV Terminal Function,简称:ITF)位置及型号等;CDF选择则是由CC在集群内根据CDF上的可用内容位置、负载等进行选择。
就现有Open IPTV Forum功能架构描述而言,标准中虽然提到CC根据其管理的多个CDF的可用内容位置、负载等信息选定一个合适的CDF用于提供内容交付,但标准同样没有给出媒体文件被分发存储到集群内CDF的方法,致使Open IPTV Forum标准在集群内部文件级分发方面还欠缺可实施性。
具体实施方式
本发明实施例提出了一种媒体分发方法,通过本方法解决了媒体内容文件如何被分发存储到集群中媒体单元的问题,同时,本发明实施例披露了该过程中集群控制实体对关键信息的获取及特定行为,由此增强了在媒体节点内部文件级分发过程中的可实施性。
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述:
如图3所示,为本发明实施例一,一种集群系统的结构示意图,一种集群模式下集群控制实体1对多个集群媒体实体2的管理控制架构,具体为:
集群控制实体1,用于接收针对媒体文件的分发指令和媒体文件的热度信息,并根据接收的热度信息,选择存储媒体文件的集群媒体实体。
集群媒体实体是实际媒体内容的存储点和播放点,用于存储放置媒体文件和向用户侧的媒体终端设备传送媒体内容。作为内容播放点,依据具体业务的不同,其提供的媒体内容可以是文件下载类业务的文件数据内容或视频点播(VoD)类业务的流媒体内容;作为内容存储点,其功能也包括对媒体文件进行存储、删除、冗余备份和恢复等。
集群媒体实体2,用于存储媒体文件。
集群控制实体与集群媒体实体之间的接口是集群管理控制接口,该接口功能主要用于集群控制实体对集群媒体实体进行内容分发控制等。
其中,进一步的,如图4和图5所示,集群控制实体1,包括:
接收模块11,用于接收媒体文件的分发指令和媒体文件的热度信息。
获取模块12,用于获取各集群媒体实体2的剩余播放能力信息,或获取各集群媒体实体2的剩余存储容量信息和媒体文件所占用存储空间信息。
选择模块13,用于根据接收模块11所接收的热度信息,选择存储媒体文件的集群媒体实体2。
进一步的,根据获取模块12获取参数的不同,可以包括以下两种结构:
结构:匹配子模块131,用于将热度信息值高的媒体文件存储至剩余播放能力值高的集群媒体实体2;或,将热度信息值低的媒体文件存储至剩余播放能力值低的集群媒体实体2。
结构二:计算子模块132,用于计算热度信息与媒体文件所占用存储空间的比值,和各集群媒体实体2的剩余播放能力与剩余存储容量的比值。
匹配子模块133,用于将热度信息与占用存储空间的比值高的媒体文件存储到剩余播放能力与剩余存储容量的比值高的集群媒体实体2;或,将热度信息与占用存储空间的比值低的媒体文件存储到剩余播放能力与剩余存储容量的比值低的集群媒体实体2。
基于上述的系统,可以实现媒体文件在媒体节点内部的分发,具体如下:
如图6所示,为本发明实施例二,一种媒体分发方法的流程示意图,包括以下步骤:
步骤S601、集群控制实体接收到针对某个媒体文件的分发命令和热度信息。
热度是用于衡量用户对媒体节目的兴趣程度。热度信息是热度的量化值,用来体现所述媒体节目对应的媒体文件被用以提供媒体服务的次数。这里的媒体服务包括视频点播类业务的流媒体内容提供服务和文件下载类业务的文件数据内容提供服务。
集群控制实体接收到针对某个媒体文件的分发命令和热度信息,其发出分发命令和热度信息的主体可以是:集群外部的内容分发控制实体、媒体内容源管理实体或其他上层管理实体。
步骤S602、集群控制实体获知各集群媒体实体的剩余播放能力信息。
集群控制实体获知各集群媒体实体的剩余播放能力信息的方式可以是:集群媒体实体周期性向集群控制实体上报、集群媒体实体触发性上报或/和集群控制实体主动向集群媒体实体查询。所述周期性上报是指集群媒体实体定期向集群控制实体发送自己的剩余播放能力信息,该信息的发送可以和心跳检测信息合并、也可单独发送。触发性上报是指一旦集群媒体实体状态发生变化(如负载加重、负载释放等)则立即向集群控制实体发送自己当前的剩余播放能力信息。
如果采用根据热度信息和剩余播放能力信息选择集群媒体实体的方法,则转入步骤S603;
如果采用更多参数信息选择集群媒体实体的方法,则转入步骤S604。
步骤S603、集群控制实体根据媒体文件的热度信息和各集群媒体实体的剩余播放能力信息选择存储该媒体文件的集群媒体实体。
集群控制实体根据媒体文件的热度信息和各集群媒体实体的剩余播放能力信息选择存储该媒体文件的集群媒体实体的原则是:
集群控制实体把热度值高的媒体文件选定存储到剩余播放能力值高的集群媒体实体,集群控制实体把热度值低的媒体文件选定存储到剩余播放能力值低的集群媒体实体。
由此确定出集群内部最适合用于存储待分发媒体文件的集群媒体实体,从而可以确保集群内各个集群媒体实体间的播放负载均衡。
步骤S604、集群控制实体获取各集群媒体实体的剩余存储容量信息和媒体文件所占用存储空间信息。
集群控制实体获知各集群媒体实体的剩余存储容量信息的方式可以是:集群媒体实体周期性向集群控制实体上报、集群媒体实体触发性上报或/和集群控制实体主动向集群媒体实体查询。所述周期性上报是指集群媒体实体定期向集群控制实体发送自己的剩余存储容量信息,该信息的发送可以和心跳检测信息合并、也可单独发送。所述触发性上报是指一旦集群媒体实体状态发生变化(如存储容量改变等)则立即向集群控制实体发送自己当前的剩余存储容量信息。
集群控制实体获知媒体文件所占用存储空间信息的方式可以是从集群外部的内容分发控制实体、媒体内容源管理实体或其它上层管理实体获得。
步骤S605、集群控制实体根据多个参数信息选择存储媒体文件的集群媒体实体。
集群控制实体将(热度/所占用存储空间)值和(剩余播放能力/剩余存储容量)值进行匹配以完成对存储媒体文件的集群媒体实体进行选定,其匹配原则是:集群控制实体把(热度/所占用存储空间)值高的媒体文件选定存储到(剩余播放能力/剩余存储容量)值高的集群媒体实体,集群控制实体把(热度/所占用存储空间)值低的媒体文件选定存储到(剩余播放能力/剩余存储容量)值低的集群媒体实体。由此确定出集群内部最适合用于存储待分发媒体文件的集群媒体实体,从而可以在确保集群内各个集群媒体实体间播放负载均衡的同时确保集群内各个集群媒体实体存储资源的最大化利用。
为了进一步对本发明的技术方案进行描述,通过以下实施例,对本发明实施例在TISPAN的IMS-based-IPTV功能架构中的实现过程进行说明。
如图7所示,为本发明实施例三,MCF对MDF进行文件级内容分发的方法流程图,分发的依据为热度和剩余播放能力。
MCF对应本发明实施例一中管理控制架构图中的集群控制实体,MDF对应管理控制架构图中的各个集群媒体实体,MF对应整个集群,包括以下步骤:
步骤S701、MCF接收分发命令。
分发命令来自集群外部内容分发管理控制实体,针对某个媒体文件,下发时还附带了该媒体文件的热度信息。
步骤S702、MCF选定MDF。
选定的原则是根据该媒体文件的热度值高低程度将其选定到具有对应剩余播放能力程度的MDF,就是MCF把热度值高的媒体文件选定存储到剩余播放能力值高的MDF,MCF把热度值低的媒体文件选定存储到剩余播放能力值低的MDF,选出一个最适合用于存储该分发媒体文件的MDF,从而确保集群内各个MDF间的播放负载均衡。
MCF获知各MDF的剩余播放能力信息的方式可以是MDF周期性地向MCF上报、MDF自身状态发生改变时上报或/和MCF在需要时主动向MDF查询。在本发明实施例中,MCF获取各MDF的剩余播放能力信息的时机可以是在步骤S701之前,也可以是在步骤S701之后步骤S702之前,这些变化并不影响本发明实施例的保护范围。
步骤S703、MCF向MDF发送内容分发请求。
MCF向选定的MDF发送的内容分发请求携带分发任务的各项参数,这些参数表明需要分发的内容字符识别码CID、内容源信息、媒体内容特定信息(如格式format、占用空间size等),以供MDF进行存储资源预留等。
步骤S704、MDF作出响应。
MDF件出的响应可选择携带必要的媒体传输位置信息(如文件传输协议ftp地址、端口信息等)、媒体传送验证信息等,MCF作为代理Proxy将MDF发来的相应信息转发给MF外部的媒体内容源。
步骤S705、MDF和MF外部的媒体内容源进行媒体文件传输。
如图8所示,为本发明实施例四,MCF对MDF进行文件级内容分发的方法流程图,分发的依据不仅包括热度和剩余播放能力,还包括更多的参数,如所占用存储空间和剩余储存容量,包括以下步骤:
步骤S801、MCF接收分发命令。
分发命令来自集群外部内容分发管理控制实体,针对某个媒体文件,下发时还附带了该媒体文件的热度信息。
步骤S802、MCF计算参数。
计算的内容包括(热度/所占用存储空间)值和(剩余播放能力/剩余存储容量)值。
步骤S803、MCF根据计算的参数结果选定MDF。
选定的原则是MCF把(热度/所占用存储空间)值高的媒体文件选定存储到(剩余播放能力/剩余存储容量)值高的MDF,从而确保集群内各个MDF间的播放负载均衡和存储资源的最大化利用。
需要进一步指出的是,MCF获取各MDF的剩余播放能力信息和剩余存储容量信息的时机可以是在步骤S801之前,也可以是在步骤S801之后步骤S802之前。其中,获取各集群媒体实体的剩余存储容量信息的具体方式可以是MDF周期性地向MCF上报、MDF自身状态发生改变时上报或/和MCF在需要时主动向MCF查询;获取媒体文件所占用存储空间信息的具体方式为MCF从外部的内容分发控制实体、媒体内容源管理实体或其它上层管理实体中获得。以上所述变化并不影响本发明实施例的保护范围。
步骤S804、MCF向MDF发送内容分发请求。
分发请求携带分发任务的各项参数,这些参数表明需要分发的内容CID、内容源信息、媒体内容特定信息(如格式format、占用空间size等),以供MDF进行存储资源预留等。
步骤S805、MDF作出响应。
MDF作出的响应可选择携带必要的媒体传输位置信息(如ftp地址、端口信息等)、媒体传送验证信息等,MCF作为Proxy将MDF发来的相应信息转发给MF外部的媒体内容源。
步骤S806、MDF和MF外部的媒体内容源进行媒体文件传输。
本发明实施例三和本发明实施例四通过以TISPAN IMS based IPTV功能架构下MF集群内部MCF对MDF的文件级内容分发控制为例对本发明实施例中的技术方案进行了说明,但另一方面,本发明实施例除了适用于TISPAN IMS based IPTV功能架构下MF集群内部MCF对MDF的文件级内容分发控制,同样适用于Open IPTV Forum定义的IPTV功能架构中集群内部CC对CDF的文件级内容分发控制。
需要指出的是,本发明实施例三和实施例四中的MCF和MDF对应本发明实施例二中集群控制实体和集群媒体实体,但这仅为TISPAN的IMS-based-IPTV功能架构中对应关系,在Open IPTV Forum定义的IPTV功能架构中,本发明实施例二中集群控制实体和集群媒体实体则对应CC和CDF,即本实施例所提供的技术方案同样适用于Open IPTV Forum定义的IPTV功能架构,但不仅限于以上所提出的两种网络架构,其他基于本发明实施例所提出的技术方案所做出的变化也同样属于本发明的保护范围。
本发明实施例的技术方案具有以下优点,因为采用了集群控制实体根据热度信息等参数选择集群媒体实体存储媒体文件地方法,从而,达到了根据媒体文件特点选择存储位置,保证集群内各集群媒体实体的播放处理负载均衡,提高网络应用效率的效果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。