CN102387415B - 一种ipqam资源分配的方法、装置和系统 - Google Patents
一种ipqam资源分配的方法、装置和系统 Download PDFInfo
- Publication number
- CN102387415B CN102387415B CN 201110325906 CN201110325906A CN102387415B CN 102387415 B CN102387415 B CN 102387415B CN 201110325906 CN201110325906 CN 201110325906 CN 201110325906 A CN201110325906 A CN 201110325906A CN 102387415 B CN102387415 B CN 102387415B
- Authority
- CN
- China
- Prior art keywords
- array
- ipqam
- available
- bandwidth
- chained list
- 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.)
- Active
Links
Images
Abstract
本发明实施例提供一种IPQAM资源分配的方法、装置和系统,涉及数字电视技术领域,可以快速确定与需要带宽相匹配的频点资源,提高系统的点播并发能力。包括:根据区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除;根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。本发明实施例主要应用于IPQAM资源的管理中。
Description
技术领域
本发明涉及数字电视技术领域,尤其涉及一种IPQAM资源分配的方法、装置和系统。
背景技术
在HFC(Hybrid Fiber Coax,光纤-同轴电缆混合体)的视频点播系统中,机顶盒向流媒体服务器发出视频播放请求,流媒体服务器向IPQAM(InternetProtocol Quadrature Amplitude Modulation,互联网协议正交幅度调制)资源管理器申请IPQAM资源,得到一个可用的IPQAM资源,并且流媒体服务器将码流发送至获得的IPQAM资源,同时回复机顶盒对应的IPQAM资源信息,然后机顶盒就能够根据流媒体服务器返回的IPQAM资源信息解调出对应的码流了。
由于在HFC网络中进行视频点播时,必须要根据机顶盒的服务区域标识Region ID来选择对应的IPQAM资源来完成点播请求,又由于在HFC网络中,通常较多用户共享同一组频点资源,频点资源十分珍贵,因此需要合理分配频点资源。现有技术在进行频点资源分配时,可以采用以下两种方式:
方式一:通过资源管理设备接收VOD子系统的选择请求,在选择请求中携带指定区域,然后在资源数据库中选择出与指定区域对应的IPQAM设备,再从选择的IPQAM设备中可用的频点中选择一个频点,其中,可以采用随机方式或者加权策略进行选择,加权策略为:通过加权值一剩余带宽×加权优先级分别计算得到各个可用频点的加权值,将加权值大的频点作为选择出的频点,所述剩余带宽为选择出的IPQAM设备剩余的可用带宽,所述加权优先级为相应频点的优先级数。然后从设备管理单元中获取选择的IPQAM设备的相关信息,将IPQAM设备的相关信息和选择出的频点发送给VOD子系统。
方式二:通过资源管理设备接收VOD子系统的选择请求,在选择请求中携带指定区域,然后在资源数据库中选择出与指定区域对应的IPQAM设备,判断选择的IPQAM设备中是否有可用的频点资源,如果有可用的频点资源,则从选择的IPQAM设备中可用的频点中选择一个频点,其中,可以采用随机方式或者加权策略进行选择,从设备管理单元中获取选择的IPQAM设备的相关信息,将IPQAM设备的相关信息和选择出的频点发送给VOD子系统;如果没有可用的频点资源,则向上一级父区域请求频点资源进行资源分配。需要说明的是,在资源数据库中根据区域名称,采用树形结构存储各个IPQAM设备的频点资源信息,其中,树形结构分为两级,与指定区域对应的IPQAM设备为第二级,全网内所有IPQAM设备为第一级,即第一级为第二级的父区域,一般情况下,在第二级区域即可实现资源选择,这里采用树形结构进行资源选择是为了满足进一步的需求。
然而,采用现有技术进行频点资源分配时,无法确定与需要的带宽相匹配的频点,容易产生带宽碎片,从而导致系统的点播并发能力较低。
发明内容
本发明的实施例提供一种IPQAM资源分配的方法、装置和系统,可以快速确定与需要的带宽相匹配的频点资源,并防止产生带宽碎片,提高系统的点播并发能力。
为达到上述目的,本发明的实施例采用如下技术方案:
一种互联网协议正交幅度调制IPQAM资源分配的方法,包括:
根据区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表;
根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。
一种IPQAM资源分配的装置,包括:
第一获取单元,用于根据Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
确定带宽单元,用于根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和pmt pid链表;
确定端口单元,用于根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。
一种IPQAM资源分配的系统,包括:机顶盒,流媒体服务器,IPQAM资源管理器,IPQAM设备;
所述机顶盒,用于根据所在的Region ID和所请求的视频点播的码率,向所述流媒体服务器发送点播请求消息;
所述流媒体服务器,用于根据接收到的所述点播请求消息,向所述IPQAM资源管理器发送点播IPQAM资源申请消息;
所述IPQAM资源管理器,用于根据所述IPQAM资源分配的方法进行频点资源分配,并向所述流媒体服务器发送点播IPQAM资源回复消息,所述点播IPQAM资源回复消息中包括IPQAM IP、可用端口和pmt pid;
所述流媒体服务器还用于,根据接收到的所述点播IPQAM资源回复消息,向所述机顶盒发送点播回复消息;
所述机顶盒还用于,根据接收到的所述点播回复消息,向所述流媒体服务器发送开始播放的请求消息,并开始播放所述请求的视频点播;
所述流媒体服务器还用于,根据接收到的所述开始播放的请求消息,将待播放的码流发送给所述请求的视频点播对应的IPQAM IP的IPQAM设备的可用端口号上,并向所述机顶盒发送开始播放的回复消息;
所述IPQAM设备,用于将收到的所述待播放的码流调制到对应的频点上,将所述待播放的码流的pmt pid设置为所述可用端口对应的pmt pid,并将调制后的码流发送到HFC网络;
所述机顶盒还用于,通过所述HFC网络解调所述对应的频点,根据所述pmtpid来播放视频数据。
采用上述技术方案实现的本发明实施例中,通过区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素,并根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,其中,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表,之后,根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid。所述确定出的可用端口和pmt pid满足所述点播IPQAM资源所需带宽的需求,与现有技术中无法确定与需要的带宽相匹配的频点,容易产生带宽碎片,导致系统的点播并发能力较低相比,本发明实施例可以快速定位出满足所述点播IPQAM资源所需带宽的需求的可用端口和pmtpid,并且不容易产生带宽碎片,提高系统的点播并发能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的一种IPQAM资源分配的方法的流程图;
图2为本发明实施例1提供的另一种IPQAM资源分配的方法的流程图;
图3为图1和图2所示的步骤101的子步骤实现流程图;
图4为图2所示的步骤106的子步骤实现流程图;
图5为本发明实施例1提供的又一种IPQAM资源分配的方法的流程图;
图6为本发明实施例2提供的一种IPQAM资源分配的装置的结构图;
图7为本发明实施例2提供的另一种IPQAM资源分配的装置的结构图;
图8为本发明实施例2提供的又一种IPQAM资源分配的装置的结构图;
图9为本发明实施例2提供的还一种IPQAM资源分配的装置的结构图;
图10为本发明实施例3提供的一种IPQAM资源分配的系统的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
如图1所示,本发明实施例提供一种IPQAM资源分配的方法,该方法由IPQAM资源管理器执行,包括:
101、根据区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
102、根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表;
103、根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。
本发明实施例中,通过区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素,并根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,其中,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表,之后,根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid。所述确定出的可用端口和pmt pid满足所述点播IPQAM资源所需带宽的需求,与现有技术中无法确定与需要的带宽相匹配的频点,容易产生带宽碎片,导致系统的点播并发能力较低相比,本发明实施例可以快速定位出满足所述点播IPQAM资源所需带宽的需求的可用端口和pmt pid,并且不容易产生带宽碎片,提高系统的点播并发能力。
进一步地,如图2所示,在上述步骤101之前还包括:
100、IPQAM资源管理器接收流媒体服务器发送的点播IPQAM资源的申请消息,所述申请消息包括Region ID和点播IPQAM资源所需带宽。
所述Region ID为机顶盒所在的服务区域标识,当机顶盒请求进行视频点播时,向所述流媒体服务器发送所述Region ID和点播IPQAM资源所需带宽,之后由所述流媒体服务器向IPQAM资源管理器发送所述点播IPQAM资源的申请消息,所述申请消息包括Region ID和点播IPQAM资源所需带宽。
进一步地,上述步骤101中所述根据Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素,如图3所示,具体可以采用如下子步骤实现:
101-1、根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
101-2、将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素。
具体地,首先,通过将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,在{d[x],d[x+1],...d[z-1]}的频点链表中,确定不是空频点链表的第一个d[i],其中,频点链表中的每个元素为所述第一全局数组中数组元素的数组下标,x表示将所述所需带宽转换成的分配单元个数,z表示最大的可用分配单元个数,d[x]、d[x+1]、d[z-1]、d[i]表示分配单元个数分别为x、x+1、z-1、i的所述可用带宽数组中的数组元素;
之后,根据所述d[i],获取所述d[i]中的频点链表中的任一第一元素。
进一步地,上述步骤103在所述根据所述第一全局数组中的数组元素,确定所述数组元素中的一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid之后,如图2所示,还包括:
104、将删除的所述可用端口和pmt pid、所述第一全局数组中数组元素的数组下标发送给所述流媒体服务器;
105、根据所述所需带宽和所述第一全局数组中数组元素的可用带宽,确定所述数组元素中的当前可用带宽;
106、根据删除的所述可用端口,确定当前可用端口链表,并将所述第一全局数组中数组元素的数组下标插入到相应的所述可用带宽数组中的数组元素。
具体地,如图4所示,本步骤在实现时采用如下子步骤:
106-1、根据删除的所述可用端口,确定并判断当前可用端口链表是否为空链表;
106-2、当所述当前可用端口链表为空链表时,将所述第一全局数组中数组元素的数组下标插入到d[0]的频点链表中,其中,d[0]表示分配单元个数为0或者当前可用端口数为0的所述可用带宽数组中的数组元素;
106-3、当所述当前可用端口链表不是空链表时,将所述第一全局数组中数组元素的可用带宽转换为分配单元个数,并将所述第一全局数组中数组元素的数组下标插入到d[s]的频点链表中,其中,s表示转换成的所述分配单元个数,d[s]表示分配单元个数为s的所述可用带宽数组中的数组元素。
实际应用的过程中,可以对实施例中所使用到的数据结构进行如下定义:
1)第一全局数组,定义为a,用于存储所有的频点信息,其中,数组a中的每一个数组元素存储一个结构体b,所述结构体b用于表示一个频点,所述结构体b包括所属数组元素的数组下标k,区域标识Region ID,qam ip(正交幅度调制设备的ip),频点号,正交幅度调制模式qam mode,符号率symbol rate,可用带宽w,可用端口和节目映射表标识符pmt pid链表。
2)可用带宽数组,定义为d,用于存储频点链表,其中,所述数组d的每一个数组元素的数组下标表示可用分配单元个数。,例如,数组元素d[0]表示可用带宽大于等于0个分配单元同时小于1个分配单元,数组元素d[1]表示可用带宽大于等于1个分配单元同时小于2个分配单元,数组元素d[n]表示可用带宽大于等于n个分配单元同时小于n+1个分配单元。所述数组d包含有z个元素,所述z的取值参见下面的说明。
数组d中的每一个数组元素存储一个频点链表,所述频点链表用于存储可用带宽相同的频点,所述频点链表中的每个元素用于表示一个频点,所述频点链表中的每个元素的值为所述元素所表示的频点在所述数组a中对应的数组元素的数组下标k。本文中将可用带宽相同的频点采用链表的形式进行存储,可以实现快速的找到可用带宽的频点。
需要说明的是,所述可用带宽数组在进行构建时,可以采用如下实现方式:选择所有QAM设备中的所有频点的最大带宽,将最大带宽分为y个分配单元,该分配单元为一个带宽值,例如,可以为1K、1M或其倍数或其他带宽值,根据y创建一个含有z个元素的可用带宽数组d,其中,z的取值为大于y的任意整数,如y+1,所述数组d的数组下标对应可用分配单元个数。比如,数组元素d[0]表示可用带宽大于等于0个分配单元同时小于1个分配单元,数组元素d[1]表示可用带宽大于等于1个分配单元同时小于2个分配单元,数组元素d[n]表示可用带宽大于等于n个分配单元同时小于n+1个分配单元。可以看出,本发明实施例中的所有的频点都可以根据可用带宽映射到对应的数组上,从而可以实现快速准确的带宽分配,同时也可以在频率分配的过程中避免碎片的产生。
3)第二全局数组,定义为f,用于存储所有的Region id,其中,所述数组f中的每一个数组元素存储一个结构体g,所述结构体g包括Region id和一个可用带宽数组d。所述可用带宽数组d即为2)中描述的含有z个元素的数组。
在第二全局数组f中,为了快速的通过Region id找到对应的数组元素,具体应用时,可以采用哈希算法,通过Region id计算出对应的哈希值,散列第二全局数组f。
为了更清楚的理解本发明实施例的实现过程,在上述定义的数据结构的基础上,假设流媒体服务器请求的点播IPQAM资源所需带宽为q,下面清楚完整地介绍一种IPQAM资源管理器快速分配IPQAM资源的实现流程,具体如下:
第一步,通过Region id进行哈希运算,计算出哈希值,在第二全局数组f中查找到与所述Region id对应的结构体g。
第二步,将点播IPQAM资源所需带宽q转换为分配单元个数x,查找结构体g中的可用带宽数组d,并把分配单元个数x作为可用带宽数组d的数组下标,查找d[x]中的频点链表e。
第三步,从d[x]开始,一直到d[z-1],寻找到第一个数组元素d[i],d[i]中的频点链表e不是空链表。如果一直寻找到d[z-1]中的频点链表e全都是空链表,则分配失败。否则进行第四步。
第四步,从找到的数组元素d[i]中的频点链表e中删除一个元素,取出删除的元素中的数组下标k,这个数组下标k即在第一全局数组a中对应的数组元素的数组下标。
第五步,在第一全局数组a中查找数组元素a[k],获取出a[k]中的qam ip,频点号,qam mode,symbol rate,可用带宽w,可用端口和pmt pid链表c。
第六步,在a[k]中,从可用端口和pmt pid链表c中删除一个端口p和pmtpid,将该端口p、pmt pid、qam ip、频点号、qam mode、symbol rate以及数组下标k一起发送给流媒体服务器。
第七步,在a[k]中,修改可用带宽w的值为w-q。
第八步,判断可用端口链表c是否是空链表,如果是空链表,则将该数组下标k插入到d[0]的频点链表e中。如果不是空链表,将可用带宽w转换为分配单元个数s,则将该数组下标k插入到d[s]的频点链表e中。
上述图1-图4描述了IPQAM资源管理器快速分配IPQAM资源的实现过程,下面将详细阐述IPQAM资源管理器对IPQAM资源快速进行释放的实现过程,如图5所示,包括如下步骤:
201、接收所述流媒体服务器发送的释放IPQAM资源的释放消息,所述释放消息中包括所述第一元素、所述所需带宽、删除的所述可用端口和pmt pid;
202、根据所述第一元素,确定所述第一全局数组中的数组元素中的所述Region ID、所述当前可用带宽;
203、在所述数组元素中的所述当前可用带宽修改为w+q,并在所述数组元素的可用端口和pmt pid链表中添加删除的所述可用端口和pmt pid,其中,所述w为所述当前可用带宽,q为所述所需带宽;
204、根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
205、查找所述结构体中的可用带宽数组,将所述w+q转换为p,并将所述第一元素插入到d[p]的频点链表中,其中,p表示将所述w+q转换成的分配单元个数,d[p]表示分配单元个数为p的所述可用带宽数组中的数组元素。
实施例2:
本发明实施例提供一种IPQAM资源分配的装置,具体为IPQAM资源管理器,如图6所示,包括:第一获取单元11,确定带宽单元12和确定端口单元13。
其中,第一获取单元11,用于根据Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
确定带宽单元12,用于根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和pmt pid链表;
确定端口单元13,用于根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。
本发明实施例中,IPQAM资源管理器通过区域标识Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素,并根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,其中,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表,之后,根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid。所述确定出的可用端口和pmt pid满足所述点播IPQAM资源所需带宽的需求,与现有技术中无法确定与需要的带宽相匹配的频点,容易产生带宽碎片,导致系统的点播并发能力较低相比,本发明实施例可以快速定位出满足所述点播IPQAM资源所需带宽的需求的可用端口和pmt pid,并且不容易产生带宽碎片,提高系统的点播并发能力。
进一步地,如图7所示,所述装置还包括:第一接收单元10,用于接收流媒体服务器发送的点播IPQAM资源的申请消息,所述申请消息包括Region ID和点播IPQAM资源所需带宽。
具体地,上述所述第一获取单元11包括:
第一获取模块,用于根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
第二获取模块,用于将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素。
其中,所述第二获取模块又可以进行功能细分,具体包括:
确定子模块,用于将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,在{d[x],d[x+1],...d[z-1]}的频点链表中,确定不是空频点链表的第一个d[i],其中,频点链表中的每个元素为所述第一全局数组中数组元素的数组下标,x表示将所述所需带宽转换成的分配单元个数,z表示最大的可用分配单元个数,d[x]、d[x+1]、d[z-1]、d[i]表示分配单元个数分别为x、x+1、z-1、i的所述可用带宽数组中的数组元素;
获取子模块,用于根据所述d[i],获取所述d[i]中的频点链表中的任一第一元素。
进一步地,如图8所示,所述装置还包括:
发送单元14,用于将删除的所述可用端口和pmt pid、所述第一全局数组中数组元素的数组下标发送给所述流媒体服务器;
第一确定单元15,用于根据所述所需带宽和所述第一全局数组中数组元素的可用带宽,确定所述数组元素中的当前可用带宽;
第二确定单元16,用于根据删除的所述可用端口,确定当前可用端口链表,并将所述第一全局数组中数组元素的数组下标插入到相应的所述可用带宽数组中。
其中,所述第二确定单元16又可以进行功能细分,具体包括:
判断模块,用于根据删除的所述可用端口,确定并判断当前可用端口链表是否为空链表;第一插入模块,用于当所述当前可用端口链表为空链表时,将所述第一全局数组中数组元素的数组下标插入到d[0]的频点链表中,其中,d[0]表示分配单元个数为0或者当前可用端口数为0的所述可用带宽数组中的数组元素;第二插入模块,用于当所述当前可用端口链表不是空链表时,将所述第一全局数组中数组元素的可用带宽转换为分配单元个数,并将所述第一全局数组中数组元素的数组下标插入到d[s]的频点链表中,其中,s表示转换成的所述分配单元个数,d[s]表示分配单元个数为s的所述可用带宽数组中的数组元素。
进一步地,为了实现IPQAM资源的快速释放,如图9所示,所述装置还包括:
第二接收单元21,用于接收所述流媒体服务器发送的释放IPQAM资源的释放消息,所述释放消息中包括所述第一元素、所述所需带宽、删除的所述可用端口和pmt pid;
第三确定单元22,用于根据所述第一元素,确定所述第一全局数组中的数组元素中的所述Region ID、所述当前可用带宽;
执行单元23,用于在所述数组元素中的所述当前可用带宽修改为w+q,并在所述数组元素的可用端口和pmt pid链表中添加删除的所述可用端口和pmtpid,其中,所述w为所述当前可用带宽,q为所述所需带宽;
第二获取单元24,用于根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
第三插入单元25,用于查找所述结构体中的可用带宽数组,将所述w+q转换为p,并将所述第一元素插入到d[p]的频点链表中,其中,p表示将所述w+q转换成的分配单元个数,d[p]表示分配单元个数为p的所述可用带宽数组中的数组元素。
实施例3:
本发明实施例提供一种IPQAM资源分配的系统,如图10所示,包括:机顶盒31,流媒体服务器32,IPQAM资源管理器33,IPQAM设备34;
所述机顶盒31,用于根据所在的Region ID和所请求的视频点播的码率,向所述流媒体服务器发送点播请求消息;
所述流媒体服务器32,用于根据接收到的所述点播请求消息,向所述IPQAM资源管理器发送点播IPQAM资源申请消息;
所述IPQAM资源管理器33,用于根据所述IPQAM资源分配的方法进行频点资源分配,并向所述流媒体服务器发送点播IPQAM资源回复消息,所述点播IPQAM资源回复消息中包括IPQAM IP、可用端口和pmt pid;
所述流媒体服务器32还用于,根据接收到的所述点播IPQAM资源回复消息,向所述机顶盒发送点播回复消息;
所述机顶盒31还用于,根据接收到的所述点播回复消息,向所述流媒体服务器发送开始播放的请求消息,并开始播放所述请求的视频点播;
所述流媒体服务器32还用于,根据接收到的所述开始播放的请求消息,将待播放的码流发送给所述请求的视频点播对应的IPQAM IP的IPQAM设备的可用端口号上,并向所述机顶盒发送开始播放的回复消息;
所述IPQAM设备34,用于将收到的所述待播放的码流调制到对应的频点上,将所述待播放的码流的pmt pid设置为所述可用端口对应的pmt pid,并将调制后的码流发送到HFC网络;
所述机顶盒31还用于,通过所述HFC网络解调所述对应的频点,根据所述pmt pid来播放视频数据。
本发明实施例提供的系统中,所述IPQAM资源管理器通过根据图1-图4所描述的所述IPQAM资源分配的方法进行频点资源分配,并向所述流媒体服务器发送点播IPQAM资源回复消息,所述点播IPQAM资源回复消息中包括IPQAM IP、可用端口和pmt pid,之后所述流媒体服务器根据接收到的所述开始播放的请求消息,将待播放的码流发送给所述请求的视频点播对应的IPQAM IP的IPQAM设备的可用端口号上,以实现视频的快速点播,与现有技术中无法确定与需要的带宽相匹配的频点,容易产生带宽碎片,导致系统的点播并发能力较低相比,本发明实施例可以快速定位出满足所述点播IPQAM资源所需带宽的需求的可用端口和pmt pid,并且不容易产生带宽碎片,提高系统的点播并发能力。
采用上述图10所示的系统进行视频点播时,在请求开始播放视频的处理过程中,可以实现IPQAM资源的快速分配,进一步地,在请求停止播放视频的处理过程中,所述系统还可以实现IPQAM资源的快速释放,具体实现流程如下:
所述机顶盒31向所述流媒体服务器发送停止播放请求的消息;
所述流媒体服务器32接收到所述机顶盒发送的停止播放请求的消息,停止向所述可用端口发送所述待播放码流,并向所述IPQAM资源管理器发送释放IPQAM资源的释放消息;
所述IPQAM资源管理器33接收所述流媒体服务器发送的所述释放IPQAM资源的释放消息,释放IPQAM资源,并向所述流媒体服务器发送释放回复消息;
所述流媒体服务器32根据接收到的所述释放回复消息,向所述机顶盒发送停止播放回复的消息;
所述机顶盒31接收所述流媒体服务器发送的所述停止播放回复的消息,结束本次点播。
本发明实施例主要应用于IPQAM资源的管理过程中,可以实现IPQAM资源的快速分配和释放,并且减少碎片的产生。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种互联网协议正交幅度调制IPQAM资源分配的方法,其特征在于,包括:
根据区域标识Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和节目映射表标识符pmt pid链表;
根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pi d,并删除确定的所述可用端口和pmt pid。
2.根据权利要求1所述的IPQAM资源分配的方法,其特征在于,在所述根据Region ID和点播IPQAM资源所需带宽,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素之前,还包括:
接收流媒体服务器发送的点播IPQAM资源的申请消息,所述申请消息包括Region ID和点播IPQAM资源所需带宽。
3.根据权利要求2所述的IPQAM资源分配的方法,其特征在于,所述将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素包括:
将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,在{d[x],d[x+1],...d[z-1]}的频点链表中,确定不是空频点链表的第一个d[i],其中,频点链表中的每个元素为所述第一全局数组中数组元素的数组下标,x表示将所述所需带宽转换成的分配单元个数,z表示最大的可用分配单元个数,d[x]、d[x+1]、d[z-1]、d[i]表示分配单元个数分别为x、x+1、z-1、i的所述可用带宽数组中的数组元素;
根据所述d[i],获取所述d[i]中的频点链表中的任一第一元素。
4.根据权利要求1-3中任一项所述的IPQAM资源分配的方法,其特征在于,在所述根据所述第一全局数组中的数组元素,确定所述数组元素中的一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid之后,还包括:
将删除的所述可用端口和pmt pid、所述第一全局数组中数组元素的数组下标发送给所述流媒体服务器;
根据所述所需带宽和所述第一全局数组中数组元素的可用带宽,确定所述数组元素中的当前可用带宽;
根据删除的所述可用端口,确定当前可用端口链表,并将所述第一全局数组中数组元素的数组下标插入到相应的所述可用带宽数组中的数组元素。
5.根据权利要求4所述的IPQAM资源分配的方法,其特征在于,所述根据删除的所述可用端口,确定当前可用端口链表,并将所述第一全局数组中数组元素的数组下标插入到相应的所述可用带宽数组中的数组元素包括:
根据删除的所述可用端口,确定并判断当前可用端口链表是否为空链表;
当所述当前可用端口链表为空链表时,将所述第一全局数组中数组元素的数组下标插入到d[0]的频点链表中,其中,d[0]表示分配单元个数为0或者当前可用端口数为0的所述可用带宽数组中的数组元素;
当所述当前可用端口链表不是空链表时,将所述第一全局数组中数组元素的可用带宽转换为分配单元个数,并将所述第一全局数组中数组元素的数组下标插入到d[s]的频点链表中,其中,s表示转换成的所述分配单元个数,d[s]表示分配单元个数为s的所述可用带宽数组中的数组元素。
6.根据权利要求1所述的IPQAM资源分配的方法,其特征在于,所述方法还包括:
接收所述流媒体服务器发送的释放IPQAM资源的释放消息,所述释放消息中包括所述第一元素、所述所需带宽、删除的所述可用端口和pmt pid;
根据所述第一元素,确定所述第一全局数组中的数组元素中的所述RegionID、所述当前可用带宽;
在所述数组元素中的所述当前可用带宽修改为w+q,并在所述数组元素的可用端口和pmt pid链表中添加删除的所述可用端口和pmt pid,其中,所述w为所述当前可用带宽,q为所述所需带宽;
根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
查找所述结构体中的可用带宽数组,将所述w+q转换为p,并将所述第一元素插入到d[p]的频点链表中,其中,p表示将所述w+q转换成的分配单元个数,d[p]表示分配单元个数为p的所述可用带宽数组中的数组元素。
7.一种IPQAM资源分配的装置,其特征在于,包括:
第一获取单元,包括第一获取模块和第二获取模块,其中,所述第一获取模块,用于根据区域标识Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;所述第二获取模块,用于将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,获取可用带宽数组中数组元素存储的频点链表中的任一第一元素;
确定带宽单元,用于根据所述第一元素,确定所述第一元素对应的第一全局数组中的数组元素,并将所述第一元素移除,所述数组元素包括可用带宽、可用端口和pmt pid链表;
确定端口单元,用于根据所述第一全局数组中的数组元素,确定所述数组元素中的任一个可用端口和pmt pid,并删除确定的所述可用端口和pmt pid。
8.根据权利要求7所述的IPQAM资源分配的装置,其特征在于,所述装置还包括:
第一接收单元,用于接收流媒体服务器发送的点播IPQAM资源的申请消息,所述申请消息包括Region ID和点播IPQAM资源所需带宽。
9.根据权利要求8所述的IPQAM资源分配的装置,其特征在于,所述第二获取模块包括:
确定子模块,用于将所述所需带宽转换为分配单元个数,并根据所述结构体中的所述可用带宽数组,在{d[x],d[x+1],...d[z-1]}的频点链表中,确定不是空频点链表的第一个d[i],其中,频点链表中的每个元素为所述第一全局数组中数组元素的数组下标,x表示将所述所需带宽转换成的分配单元个数,z表示最大的可用分配单元个数,d[x]、d[x+1]、d[z-1]、d[i]表示分配单元个数分别为x、x+1、z-1、i的所述可用带宽数组中的数组元素;
获取子模块,用于根据所述d[i],获取所述d[i]中的频点链表中的任一第一元素。
10.根据权利要求7-9中任一项所述的IPQAM资源分配的装置,其特征在于,所述装置还包括:
发送单元,用于将删除的所述可用端口和pmt pid、所述第一全局数组中数组元素的数组下标发送给所述流媒体服务器;
第一确定单元,用于根据所述所需带宽和所述第一全局数组中数组元素的可用带宽,确定所述数组元素中的当前可用带宽;
第二确定单元,用于根据删除的所述可用端口,确定当前可用端口链表,并将所述第一全局数组中数组元素的数组下标插入到相应的所述可用带宽数组中。
11.根据权利要求10所述的IPQAM资源分配的装置,其特征在于,所述第二确定单元包括:
判断模块,用于根据删除的所述可用端口,确定并判断当前可用端口链表是否为空链表;
第一插入模块,用于当所述当前可用端口链表为空链表时,将所述第一全局数组中数组元素的数组下标插入到d[0]的频点链表中,其中,d[0]表示分配单元个数为0或者当前可用端口数为0的所述可用带宽数组中的数组元素;
第二插入模块,用于当所述当前可用端口链表不是空链表时,将所述第一全局数组中数组元素的可用带宽转换为分配单元个数,并将所述第一全局数组中数组元素的数组下标插入到d[s]的频点链表中,其中,s表示转换成的所述分配单元个数,d[s]表示分配单元个数为s的所述可用带宽数组中的数组元素。
12.根据权利要求7所述的IPQAM资源分配的装置,其特征在于,所述装置还包括:
第二接收单元,用于接收所述流媒体服务器发送的释放IPQAM资源的释放消息,所述释放消息中包括所述第一元素、所述所需带宽、删除的所述可用端口和pmt pid;
第三确定单元,用于根据所述第一元素,确定所述第一全局数组中的数组元素中的所述Region ID、所述当前可用带宽;
执行单元,用于在所述数组元素中的所述当前可用带宽修改为w+q,并在所述数组元素的可用端口和pmt pid链表中添加删除的所述可用端口和pmt pid,其中,所述w为所述当前可用带宽,q为所述所需带宽;
第二获取单元,用于根据所述Region ID,获取所述Region ID对应的第二全局数组中的结构体,所述结构体包括所述Region ID和一个可用带宽数组;
第三插入单元,用于查找所述结构体中的可用带宽数组,将所述w+q转换为p,并将所述第一元素插入到d[p]的频点链表中,其中,p表示将所述w+q转换成的分配单元个数,d[p]表示分配单元个数为p的所述可用带宽数组中的数组元素。
13.一种IPQAM资源分配的系统,其特征在于,包括:机顶盒,流媒体服务器,IPQAM资源管理器,IPQAM设备;
所述机顶盒,用于根据所在的Region ID和所请求的视频点播的码率,向所述流媒体服务器发送点播请求消息;
所述流媒体服务器,用于根据接收到的所述点播请求消息,向所述IPQAM资源管理器发送点播IPQAM资源申请消息;
所述IPQAM资源管理器,用于根据所述IPQAM资源分配的方法进行频点资源分配,并向所述流媒体服务器发送点播IPQAM资源回复消息,所述点播IPQAM资源回复消息中包括IPQAM IP、可用端口和pmt pid;
所述流媒体服务器还用于,根据接收到的所述点播IPQAM资源回复消息,向所述机顶盒发送点播回复消息;
所述机顶盒还用于,根据接收到的所述点播回复消息,向所述流媒体服务器发送开始播放的请求消息,并开始播放所述请求的视频点播;
所述流媒体服务器还用于,根据接收到的所述开始播放的请求消息,将待播放的码流发送给所述请求的视频点播对应的IPQAM IP的IPQAM设备的可用端口号上,并向所述机顶盒发送开始播放的回复消息;
所述IPQAM设备,用于将收到的所述待播放的码流调制到对应的频点上,将所述待播放的码流的pmt pid设置为所述可用端口对应的pmt pid,并将调制后的码流发送到HFC网络;
所述机顶盒还用于,通过所述HFC网络解调所述对应的频点,根据所述pmtpid来播放视频数据。
14.根据权利要求13所述的IPQAM资源分配的系统,其特征在于,还包括:
所述机顶盒还用于,向所述流媒体服务器发送停止播放请求的消息;
所述流媒体服务器还用于,接收到所述机顶盒发送的停止播放请求的消息,停止向所述可用端口发送所述待播放码流,并向所述IPQAM资源管理器发送释放IPQAM资源的释放消息;
所述IPQAM资源管理器还用于,接收所述流媒体服务器发送的所述释放IPQAM资源的释放消息,释放IPQAM资源,并向所述流媒体服务器发送释放回复消息;
所述流媒体服务器还用于,根据接收到的所述释放回复消息,向所述机顶盒发送停止播放回复的消息;
所述机顶盒还用于,接收所述流媒体服务器发送的所述停止播放回复的消息,结束本次点播。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110325906 CN102387415B (zh) | 2011-10-24 | 2011-10-24 | 一种ipqam资源分配的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110325906 CN102387415B (zh) | 2011-10-24 | 2011-10-24 | 一种ipqam资源分配的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102387415A CN102387415A (zh) | 2012-03-21 |
CN102387415B true CN102387415B (zh) | 2013-06-19 |
Family
ID=45826283
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110325906 Active CN102387415B (zh) | 2011-10-24 | 2011-10-24 | 一种ipqam资源分配的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102387415B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102916927B (zh) * | 2012-09-21 | 2016-10-05 | 青岛海信传媒网络技术有限公司 | 资源分配方法和系统以及边缘资源管理器和会话管理器 |
CN103347204B (zh) * | 2013-06-19 | 2017-03-22 | 江苏有线技术研究院有限公司 | 有线电视网络统一边缘ipqam资源分配管理系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101202901A (zh) * | 2007-10-17 | 2008-06-18 | 深圳市同洲电子股份有限公司 | 一种节目传送包的包标识符的处理方法、装置及系统 |
WO2008079686A2 (en) * | 2006-12-21 | 2008-07-03 | Cisco Technology, Inc. | Improved traceroute using address request messages |
CN102026035A (zh) * | 2009-09-10 | 2011-04-20 | 华为技术有限公司 | 视频点播业务中信号路由资源的分配方法、终端和服务器 |
-
2011
- 2011-10-24 CN CN 201110325906 patent/CN102387415B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008079686A2 (en) * | 2006-12-21 | 2008-07-03 | Cisco Technology, Inc. | Improved traceroute using address request messages |
CN101202901A (zh) * | 2007-10-17 | 2008-06-18 | 深圳市同洲电子股份有限公司 | 一种节目传送包的包标识符的处理方法、装置及系统 |
CN102026035A (zh) * | 2009-09-10 | 2011-04-20 | 华为技术有限公司 | 视频点播业务中信号路由资源的分配方法、终端和服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN102387415A (zh) | 2012-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102088620B (zh) | 一种内容分发网络中媒体文件下载方法及客户端 | |
US9100714B2 (en) | Audience-measuring method | |
CN101677325B (zh) | 发布媒体描述信息和获取媒体的方法、装置、系统 | |
US20120102535A1 (en) | Content storage and delivery system and associated method and device | |
CN102685561B (zh) | 节目轮播的方法、系统、终端设备和节目点播装置 | |
CN106303588A (zh) | 视频推荐方法、客户端以及服务器 | |
CN102196314A (zh) | 一种用p2p机顶盒实现的流媒体传输系统及其方法 | |
CN104581374A (zh) | 一种获取切片文件和生成子m3u8文件的方法、节点及服务器 | |
US20190327499A1 (en) | Legacy video network configuration in a distributed access architecture | |
CN105100835A (zh) | 频道的分类方法及装置 | |
CN106850720A (zh) | 软件升级方法、装置及系统 | |
KR20110062508A (ko) | 홈 네트워크에서 디지털 방송의 채널 맵 공유 방법 및 이를 위한 시스템 | |
CN102387415B (zh) | 一种ipqam资源分配的方法、装置和系统 | |
CN104935949B (zh) | 一种直播视频数据下载方法、装置及系统 | |
CN101753603A (zh) | 一种p2p系统中提供媒体内容的方法、服务器及系统 | |
US8788647B1 (en) | Load balancing for network devices | |
US20120151532A1 (en) | Sdv quick tune algorithm | |
CN103269442B (zh) | 一种内容点播方法、系统和设备 | |
US20110321113A1 (en) | Location-based service group discovery for switched digital video | |
CN102783100A (zh) | 一种带宽资源的分配方法及装置 | |
US9094698B2 (en) | Efficient bandwidth utilization | |
CN108271039A (zh) | 一种文件发送方法及装置 | |
CN109831467B (zh) | 数据传输方法、设备及系统 | |
KR101975621B1 (ko) | 컨텐트 분배 시스템용 사용자 인터페이스 | |
CN101707694B (zh) | 一种实现有线电视数据点播的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170124 Address after: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 399 Patentee after: Poly Polytron Technologies Inc Address before: 266071 Qingdao, Shandong, Laoshan District, Hongkong East Road, room 248, No. 131, room Patentee before: Qingdao Hisense Media Networks Co., Ltd. |