H04L29/12 H04L29/06 H04L12/18
1.一种组播业务标识号的分配方法,其特征在于,所述方法包括:
接收组播业务标识号申请请求;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
2.根据权利要求1所述的方法,其特征在于,所述接收组播业务标识号申请请求之后还包括:
根据所述组播业务标识号申请请求,在预设映射表中查所述组播业务标识号;
在预设映射表中查到所述组播业务标识号的情况下,确定所述组播业务申请过组播业务标识号;
在预设映射表中没有查到所述组播业务标识号的情况下,确定所述组播业务没有申请过组播业务标识号。
3.根据权利要求1所述的方法,其特征在于,所述接收组播业务标识号申请请求之后还包括:
在所述组播业务是第一次申请组播业务标识号的情况下,将上一次分配的组播业务标识号设置为最小值。
4.根据权利要求1所述的方法,其特征在于,所述从上一次分配的组播业务标识号之后开始分配之后还包括:
在分配的组播业务标识号超过所述配置的组播业务标识号的范围的情况下,确定配置的组播业务标识号全部分配完毕。
5.根据权利要求4所述的方法,其特征在于,根据组播业务类型以及预设配置文件,确定所述配置的组播业务标识号的范围。
6.根据权利要求1所述的方法,其特征在于,所述从预设删除队列中开始分配包括:
在所述预设删除队列为空的情况下,返回所有组播业务标识号全部分配完毕的信息;
在所述预设删除队列不为空的情况下,从所述预设删除队列头开始分配,并在分配完之后将所述预设删除队列中对应的组播业务标识号值删除。
7.一种组播业务标识号的分配装置,其特征在于,所述装置包括接收模块、第一分配模块以及第二分配模块;
所述接收模块,用于接收组播业务标识号申请请求;
所述第一分配模块,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配;
所述第二分配模块,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括设置模块;
所述设置模块,用于在所述组播业务是第一次申请组播业务标识号的情况下,将上一次分配的组播业务标识号设置为最小值。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括确定模块;
所述确定模块,用于在分配的组播业务标识号超过所述配置的组播业务标识号的范围的情况下,确定配置的组播业务标识号全部分配完毕。
10.一种组播业务标识号的分配设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的组播业务标识号的分配程序,所述组播业务标识号的分配程序被所述处理器执行时实现如权利要求1至6中任一项所述的组播业务标识号的分配方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有组播业务标识号的分配程序,所述组播业务标识号的分配程序被处理器执行时实现如权利要求1至6中任一项所述的组播业务标识号的分配方法的步骤。
本发明涉及通信技术领域,尤其涉及一种组播业务标识号的分配方法、组播业务标识号的分配设备及设备、计算机可读存储介质。
组播业务是一种单个数据源发送,多个接收源接收的转发业务。组播业务由于是单点到多点业务,因此其数据传输效率比较高,从而达到节约网络带宽、降低网络负荷的目的。组播业务可以实现视频直播、网络电话、视频会议等等。
对于组播业务而言,每一条业务都需要唯一的标识业务的标识号(ID)。现有的组播业务ID分配方式存在的问题是,查已经申请的组播业务ID的效率很低,时间复杂度为O(N);需预留最大范围的存储空间,空间复杂度为O(1),极大地浪费了存储空间。
有鉴于此,本发明实施例的目的在于提供一种组播业务标识号的分配方法、装置及组播业务标识号的分配设备、计算机可读存储介质,以解决现有组播业务ID分配中,存在的查已经申请的组播业务ID的效率很低,时间复杂度为O(N);需预留最大范围的存储空间,空间复杂度为O(1),极大地浪费了存储空间的问题。
本发明实施例解决上述技术问题所采用的技术方案如下:
根据本发明实施例的一个方面,提供的一种组播业务标识号的分配方法,所述方法包括:
接收组播业务标识号申请请求;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
根据本发明实施例的另一个方面,提供的一种序组播业务标识号的分配装置,所述装置包括接收模块、第一分配模块以及第二分配模块;
所述接收模块,用于接收组播业务标识号申请请求;
所述第一分配模块,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配;
所述第二分配模块,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
根据本发明实施例的另一个方面,提供的一种组播业务标识号的分配设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的组播业务标识号的分配程序,所述组播业务标识号的分配程序被所述处理器执行时实现上述的组播业务标识号的分配方法的步骤。
根据本发明实施例的另一个方面,提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有组播业务标识号的分配程序,所述组播业务标识号的分配程序被处理器执行时实现上述的组播业务标识号的分配方法的步骤。
本发明实施例的组播业务标识号的分配方法、装置及设备、计算机可读存储介质,通过对申请过组播业务标识号、第一次申请组播业务标识号以及全部分配完毕的判断和处理;可以在大量组播业务存在的情况下快速的分配组播ID,时间复杂度由原来的O(n)提升到log2(N),空间复杂度由原来的O(1)变为O(N),节省可存储空间。
图1为本发明第一实施例的组播业务标识号的分配方法流程示意图;
图2为本发明第二实施例的组播业务标识号的分配装置结构示意图;
图3为本发明第二实施例的组播业务标识号的分配装置另一结构示意图;
图4为本发明第三实施例的组播业务标识号的分配设备结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
第一实施例
如图1所示,本发明第一实施例提供一种组播业务标识号的分配方法,所述方法包括:
步骤S11:接收组播业务标识号申请请求。
在本实施例中,组播业务标识号申请请求包括组播业务关键字。
步骤S12:在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配。
在本实施例中,可通过预先设置的标志位来判断所述组播业务是否第一次申请组播业务标识号。例如:若标志位的值为True,则可确定所述组播业务是第一次申请组播业务标识号;若标志位的值为False,则可确定所述组播业务不是第一次申请组播业务标识号。
可以想象得到的,若所述组播业务申请过组播业务标识号,无需再进行组播业务标识号的分配。
在本实施例中,同样的可通过预先设置的标志位来判断配置的组播业务标识号是否全部分配完毕。例如:若标志位的值为True,则可确定配置的组播业务标识号全部分配完毕;若标志位的值为False,则可确定配置的组播业务标识号没有全部分配完毕。
在一种实施方式中,所述接收组播业务标识号申请请求之后还包括:
根据所述组播业务标识号申请请求,在预设映射表中查所述组播业务标识号;
在预设映射表中查到所述组播业务标识号的情况下,确定所述组播业务申请过组播业务标识号;
在预设映射表中没有查到所述组播业务标识号的情况下,确定所述组播业务没有申请过组播业务标识号。
在该实施方式中,预设映射表即为map表,map表用于存储组播业务关键字和对应的组播业务ID。在接收到组播业务标识号申请请求之后,即根据组播业务标识号申请请求中的组播业务关键字,在map表中查组播业务ID。若在map表中查到组播业务ID,则确定组播业务申请过组播业务ID;否则确定组播业务没有申请过组播业务ID。
在一种实施方式中,所述接收组播业务标识号申请请求之后还包括:
在所述组播业务是第一次申请组播业务标识号的情况下,将上一次分配的组播业务标识号设置为最小值。
在该实施方式中,在将上一次分配的组播业务标识号设置为最小值之后,例如:设置为-1,则预先设置的标志位的值也将设为False。
作为示例地,假设上一次分配的组播业务标识号被设置为最小值-1,则此次分配时将从0开始进行分配。
在一种实施方式中,所述从上一次分配的组播业务标识号之后开始分配之后还包括:
在分配的组播业务标识号超过所述配置的组播业务标识号的范围的情况下,确定配置的组播业务标识号全部分配完毕。
在该实施方式中,根据组播业务类型以及预设配置文件,确定所述配置的组播业务标识号的范围。
需要说明的是,预设配置文件的格式不限,可以是TXT格式也可以是XML格式。
作为示例地,假设预设配置文件的关键参数如下表格所示:
字段序号 字段名称 字段意义 1 backplaneType 背板类型 2 FixScgidMax 固定组播ID的最大值 3 OtnScgidMax OTN的组播ID的最大值 4 PtnScgidMax PTN的组播ID的最大值
其中在该表格中配置了OTN(光传送网,Optical Transport Network)的组播ID的最大值、PTN(分组传送网,Packet Transport Network)的组播ID的最大值。设备重启时即可根据该预设配置文件来确定组播ID的范围。
步骤S13:在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
在一种实施方式中,所述从预设删除队列中开始分配包括:
在所述预设删除队列为空的情况下,返回所有组播业务标识号全部分配完毕的信息;
在所述预设删除队列不为空的情况下,从所述预设删除队列头开始分配,并在分配完之后将所述预设删除队列中对应的组播业务标识号值删除。
在该实施方式中,被删除的组播业务ID暂时储存在预设删除队列中,先不加入待分配行列,待配置的组播业务标识号全部分配完毕之后从预设删除队列中开始分配。
本发明实施例的组播业务标识号的分配方法,通过对申请过组播业务标识号、第一次申请组播业务标识号以及全部分配完毕的判断和处理;可以在大量组播业务存在的情况下快速的分配组播ID,时间复杂度由原来的O(n)提升到log2(N),空间复杂度由原来的O(1)变为O(N),节省可存储空间。
第二实施例
如图2所示,本发明第二实施例提供一种组播业务标识号的分配装置,所述装置包括接收模块21、第一分配模块22、第二分配模块23、第三判断模块24以及分配模块25;
所述接收模块21,用于接收组播业务标识号申请请求。
在本实施例中,组播业务标识号申请请求包括组播业务关键字。
所述第一分配模块22,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配。
在本实施例中,可通过预先设置的标志位来判断所述组播业务是否第一次申请组播业务标识号。例如:若标志位的值为True,则可确定所述组播业务是第一次申请组播业务标识号;若标志位的值为False,则可确定所述组播业务不是第一次申请组播业务标识号。
可以想象得到的,若所述组播业务申请过组播业务标识号,无需再进行组播业务标识号的分配。
在本实施例中,同样的可通过预先设置的标志位来判断配置的组播业务标识号是否全部分配完毕。例如:若标志位的值为True,则可确定配置的组播业务标识号全部分配完毕;若标志位的值为False,则可确定配置的组播业务标识号没有全部分配完毕。
在一种实施方式中,可通过以下方式判断所述组播业务是否申请过组播业务标识号包括:
根据所述组播业务标识号申请请求,在预设映射表中查所述组播业务标识号;
在预设映射表中查到所述组播业务标识号的情况下,确定所述组播业务申请过组播业务标识号;
在预设映射表中没有查到所述组播业务标识号的情况下,确定所述组播业务没有申请过组播业务标识号。
在该实施方式中,预设映射表即为map表,map表用于存储组播业务关键字和对应的组播业务ID。在接收到组播业务标识号申请请求之后,即根据组播业务标识号申请请求中的组播业务关键字,在map表中查组播业务ID。若在map表中查到组播业务ID,则确定组播业务申请过组播业务ID;否则确定组播业务没有申请过组播业务ID。
请参考图3所示,在一种实施方式中,所述装置还包括设置模块24;
所述设置模块24,用于在所述组播业务是第一次申请组播业务标识号的情况下,将上一次分配的组播业务标识号设置为最小值。
在该实施方式中,在将上一次分配的组播业务标识号设置为最小值之后,例如:设置为-1,则预先设置的标志位的值也将设为False。
作为示例地,假设上一次分配的组播业务标识号被设置为最小值-1,则此次分配时将从0开始进行分配。
请再参考图3所示,在一种实施方式中,所述装置还包括确定模块25;
所述确定模块25,用于在分配的组播业务标识号超过所述配置的组播业务标识号的范围的情况下,确定配置的组播业务标识号全部分配完毕。
在该实施方式中,根据组播业务类型以及预设配置文件,确定所述配置的组播业务标识号的范围。
需要说明的是,预设配置文件的格式不限,可以是TXT格式也可以是XML格式。
作为示例地,假设预设配置文件的关键参数如下表格所示:
字段序号 字段名称 字段意义 1 backplaneType 背板类型 2 FixScgidMax 固定组播ID的最大值 3 OtnScgidMax OTN的组播ID的最大值 4 PtnScgidMax PTN的组播ID的最大值
其中在该表格中配置了OTN(光传送网,Optical Transport Network)的组播ID的最大值、PTN(分组传送网,Packet Transport Network)的组播ID的最大值。设备重启时即可根据该预设配置文件来确定组播ID的范围。
所述第二分配模块23,用于在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
在一种实施方式中,所述从预设删除队列中开始分配包括:
在所述预设删除队列为空的情况下,返回所有组播业务标识号全部分配完毕的信息;
在所述预设删除队列不为空的情况下,从所述预设删除队列头开始分配,并在分配完之后将所述预设删除队列中对应的组播业务标识号值删除。
在该实施方式中,被删除的组播业务ID暂时储存在预设删除队列中,先不加入待分配行列,待配置的组播业务标识号全部分配完毕之后从预设删除队列中开始分配。
本发明实施例的组播业务标识号的分配装置,通过对申请过组播业务标识号、第一次申请组播业务标识号以及全部分配完毕的判断和处理;可以在大量组播业务存在的情况下快速的分配组播ID,时间复杂度由原来的O(n)提升到log2(N),空间复杂度由原来的O(1)变为O(N),节省可存储空间。
第三实施例
如图4所示,本发明第三实施例提供一种组播业务标识号的分配设备,所述设备包括:存储器31、处理器32及存储在所述存储器31上并可在所述处理器32上运行的组播业务标识号的分配程序,所述组播业务标识号的分配程序被所述处理器32执行时,用于实现以下所述的组播业务标识号的分配方法的步骤:
接收组播业务标识号申请请求;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号没有全部分配完毕的情况下,从上一次分配的组播业务标识号之后开始分配;
在所述组播业务没有申请过组播业务标识号、所述组播业务不是第一次申请组播业务标识号且配置的组播业务标识号全部分配完毕的情况下,从预设删除队列中开始分配。
所述组播业务标识号的分配程序被所述处理器32执行时,还用于实现以下所述的组播业务标识号的分配方法的步骤:
根据所述组播业务标识号申请请求,在预设映射表中查所述组播业务标识号;
在预设映射表中查到所述组播业务标识号的情况下,确定所述组播业务申请过组播业务标识号;
在预设映射表中没有查到所述组播业务标识号的情况下,确定所述组播业务没有申请过组播业务标识号。
所述组播业务标识号的分配程序被所述处理器32执行时,还用于实现以下所述的组播业务标识号的分配方法的步骤:
在所述组播业务是第一次申请组播业务标识号的情况下,将上一次分配的组播业务标识号设置为最小值。
所述组播业务标识号的分配程序被所述处理器32执行时,还用于实现以下所述的组播业务标识号的分配方法的步骤:
在分配的组播业务标识号超过所述配置的组播业务标识号的范围的情况下,确定配置的组播业务标识号全部分配完毕。
所述组播业务标识号的分配程序被所述处理器32执行时,还用于实现以下所述的组播业务标识号的分配方法的步骤:
根据组播业务类型以及预设配置文件,确定所述配置的组播业务标识号的范围。
所述组播业务标识号的分配程序被所述处理器32执行时,还用于实现以下所述的组播业务标识号的分配方法的步骤:
在所述预设删除队列为空的情况下,返回所有组播业务标识号全部分配完毕的信息;
在所述预设删除队列不为空的情况下,从所述预设删除队列头开始分配,并在分配完之后将所述预设删除队列中对应的组播业务标识号值删除。
本发明实施例的组播业务标识号的分配设备,通过对申请过组播业务标识号、第一次申请组播业务标识号以及全部分配完毕的判断和处理;可以在大量组播业务存在的情况下快速的分配组播ID,时间复杂度由原来的O(n)提升到log2(N),空间复杂度由原来的O(1)变为O(N),节省可存储空间。
第四实施例
本发明第四实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有组播业务标识号的分配程序,所述组播业务标识号的分配程序被处理器执行时用于实现第一实施例所述的组播业务标识号的分配方法的步骤。
本发明实施例的计算机可读存储介质,通过对申请过组播业务标识号、第一次申请组播业务标识号以及全部分配完毕的判断和处理;可以在大量组播业务存在的情况下快速的分配组播ID,时间复杂度由原来的O(n)提升到
log2(N),空间复杂度由原来的O(1)变为O(N),节省可存储空间。
需要说明的是,上述装置实施例与方法实施例属于同一构思,其具体实现过程详见方法实施例,且方法实施例中的技术特征在装置实施例中均对应适用,这里不再赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台设备设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。
本文发布于:2023-04-13 13:34:01,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/1/86515.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |