一种资源分配的方法以及终端设备与流程

文档序号:13623223阅读:168来源:国知局
一种资源分配的方法以及终端设备与流程

本发明涉及通信技术领域,尤其涉及一种资源分配的方法以及终端设备。



背景技术:

组播传输是指在发送者和每一接收者之间实现点对多点网络连接。如果一台发送者同时给多个接收者传输相同的数据,也只需要复制一份相同的数据包。通过组播传输,可以提高数据传送效率。

但是当组播网络中的中心控制节点消失或故障时,组播网络中的各个终端设备将无法得知自己该何时发送数据、何时接收数据,导致各个终端设备将很难或者无法进行组播传输通信。



技术实现要素:

本发明实施例提供一种资源分配的方法以及终端设备,可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

本发明第一方面提供了一种资源分配的方法,包括:

根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

侦听并接收用于标识网络内其他组播组的组声明消息;

根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。

在第一种可能的实现方式中,所述根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息,包括:

将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

发送用于标识本端所在的组播组的组声明消息。

结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的,包括:

将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

根据所述竞争规则和所述随机终端序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据。

结合第一方面或第一方面的第一种可能的实现方式,在第三种可能的实现方式中,在所述根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的之前,还包括:

在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序。

结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的,包括:

根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

根据所述竞争规则和所述随机短序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

结合第一方面的第三种可能的实现方式,在第五种可能的实现方式中,所述根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的,包括:

根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备作为发送终端,重复本步骤,直至网络内的每个终端设备均发送过数据。

结合第一方面的第三种可能的实现方式,或第一方面的第四种可能的实现方式,或第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序,包括:

根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

当判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置。

本发明第二方面提供了一种终端设备,包括:

声明竞争模块,用于根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

声明生成模块,用于侦听并接收用于标识网络内其他组播组的组声明消息;

资源使用模块,用于根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。

在第一种可能的实现方式中,所述声明竞争模块包括:

检测位判断单元,用于将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

确定单元,用于在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

标识发送单元,用于发送用于标识本端所在的组播组的组声明消息。

结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述资源使用模块包括:

随机组合单元,用于将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

第一资源竞争单元,用于根据所述竞争规则和所述随机终端序列号进行资源竞争;

第一数据发送单元,用于若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据。

结合第二方面或第二方面的第一种可能的实现方式,在第三种可能的实现方式中,还包括:

排序模块,用于在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序。

结合第二方面的第三种可能的实现方式,在第四种可能的实现中,所述资源使用模块包括:

短序生成单元,用于根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

短序随机组合单元,用于将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

第二资源竞争单元,用于根据所述竞争规则和所述随机短序列号进行资源竞争;

第二数据发送单元,用于若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

结合第二方面的第三种可能的实现方式,在第五种可能的实现方式中,所述资源使用模块,具体用于根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备作为发送终端,重复本步骤,直至网络内的每个终端设备均发送过数据。

结合第二方面的第三种可能的实现方式,或第二方面的第四种可能的实现方式,或第二面的第五种可能的实现方式,在第六种可能的实现方式中,所述排序模块包括:

判断排序单元,用于根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

记录排序单元,用于当所述判断排序单元判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置。

本发明第三方面提供了一种计算机存储介质,

所述计算机存储介质可存储有程序,该程序执行时包括第一方面提供的一种资源分配的方法的部分或全部步骤。

本发明第四方面提供了一种终端设备,包括:处理器、通信接口和存储器,其中,

所述通信接口,用于与网络内各组播组中的终端设备进行通信;

所述存储器用于存储程序;

所述处理器用于执行所述程序,以实现

根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

侦听并接收用于标识网络内其他组播组的组声明消息;

根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。

在第一种可能的实现方式中,所述处理器具体用于:

将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

发送用于标识本端所在的组播组的组声明消息。

结合第四方面或第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器具体用于:

将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

根据所述竞争规则和所述随机终端序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据。

结合第四方面或第四方面的第一种可能的实现方式,在第三种可能的实现方式中,所述处理器还用于:

在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序。

结合第四方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理器具体用于:

根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

根据所述竞争规则和所述随机短序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

结合第四方面的第三种可能的实现方式,在第五种可能的实现方式中,所述处理器具体用于:

根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备作为发送终端,重复本步骤,直至网络内的每个终端设备均发送过数据。

结合第四方面的第三种可能的实现方式,或第四方面的第四种可能的实现方式,或第四方面的第五种可能的实现方式,在第六种可能的实现方式中,所述处理器具体用于:

根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

当判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙使用分配的网络资源以发送数据,使得网络内组播组中的终端设备可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种资源分配的方法的流程示意图;

图2为本发明实施例提供的另一种资源分配的方法的流程示意图;

图3为本发明实施例提供的又一种资源分配的方法的流程示意图;

图4为本发明实施例提供的又一种资源分配的方法的流程示意图;

图5为本发明实施例提供的一种声明资格竞争的方法的流程示意图;

图6为本发明实施例提供的一种序列号排序的方法的流程示意图;

图7为本发明实施例提供的一种终端设备的结构示意图;

图8为本发明实施例提供的一种声明竞争模块的结构示意图;

图9为本发明实施例提供的一种资源使用模块的结构示意图;

图10为本发明实施例提供的另一种终端设备的结构示意图;

图11为本发明实施例提供的另一种资源使用模块的结构示意图;

图12为本发明实施例提供的一种排序模块的结构示意图;

图13为本发明实施例提供的又一种终端设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参见图1,为本发明实施例提供的一种资源分配的方法的流程示意图,所述方法包括:

S101,根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

具体的,终端设备可以根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,向网络内所有终端设备发送用于标识本端所在的组播组的组声明消息,使得所有终端设备均知道所述组播组的组名标识。其中,所述竞争规则是指对各个终端设备对应的终端序列号的数值大小的竞争规则,当对所述终端序列号的数值大小竞争胜出时,即可确定所述终端序列号的声明资格竞争胜出。由于终端设备在发送检测信号时,无法侦听到其他终端设备发送的检测信号,所以所述声明资格竞争的具体过程可以为:将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格。当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

S102,侦听并接收用于标识网络内其他组播组的组声明消息;

具体的,终端设备将实时侦听并接收来自其他终端设备发送的用于标识网络内其他组播组的组声明消息,每一个组声明消息均包括对应的组播组组名,且每一个组播组之间以一定顺序进行排序,例如将最先接收到的组声明消息所对应的组播组组名设置为组1,之后接收到的组声明消息所对应的组播组组名设置为组2,重复本步骤,直至将最后一个组播组组名设置为组n,因此,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为:组1,组2,组3,……,组n,使得每一个组播组中的终端设备在发送数据时可以按照组声明帧中各组播组的排列顺序进行先后发送数据。

例如,某个网络内有5个组播组,每个组播组中有若干个终端设备,该网络内的所有终端设备根据所述竞争规则对各自的终端序列号的数值大小进行竞争,当某个终端设备的终端序列号的数值大小竞争胜出时,即该终端序列号为最大数值的终端序列号时,该终端设备具有该组的声明资格。声明资格竞争的过程可以为:5个组播组中的所有终端设备根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组1,该终端设备还将包含组1的组声明消息发送到其他终端设备,以使其他终端设备均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。各个终端设备在进行声明资格竞争时可以侦听并接收用于标识网络内其他组播组的组声明消息,由网络内每一个组播组的组声明消息组成的组声明帧包括组1、组2、……、组5这5个子帧,这5个子帧按照一定顺序排列,使得各组播组中的终端设备在发送数据时,可以让组1的终端设备先发数据,再让组2的终端设备发送数据,最后让组5的终端设备发送数据;组声明帧中还可以包括一个0子帧,该0子帧用于全0终端序列号对应的终端设备声明一个组,若组1到组5这5个子帧上未发现其他终端设备声明了全0终端序列号对应的终端设备所声明的组,则全0终端序列号对应的终端设备可以在0子帧上声明一个组;组声明帧中还可以包括一个空子帧,用于让所有终端设备知道除了全0终端序列号对应的终端设备所声明的组外,其他组播组的组声明已经结束。

S103,根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的;

具体的,终端设备可以根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。例如,网络内的各个组播组中的终端设备均在各自组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的终端序列号,并由所述组内最大数值的终端序列号对应的终端设备使用分配的网络资源以发送数据,各个组播组中资源竞争胜出的终端设备可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备在组1内发送数据,再由组2中资源竞争胜出的终端设备在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备的资源竞争是同时进行的。其中,为了保证各个组播组中的每个终端设备在资源竞争时,竞争胜出的概率相同,可以将随机数组合到终端序列号中,使得各组播组中的每个终端序列号均有机会成为最大数值的终端序列号,从而保证各个组播组中的每个终端设备在资源竞争时的公平性。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙使用分配的网络资源以发送数据,使得网络内组播组中的终端设备可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

再请参见图2,为本发明实施例提供的另一种资源分配的方法的流程示意图,所述方法包括:

S201,根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

具体的,终端设备可以根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,向网络内所有终端设备发送用于标识本端所在的组播组的组声明消息,使得所有终端设备均知道所述组播组的组名标识。其中,所述竞争规则是指对各个终端设备对应的终端序列号的数值大小的竞争规则,当对所述终端序列号的数值大小竞争胜出时,即可确定所述终端序列号的声明资格竞争胜出。由于终端设备在发送检测信号时,无法侦听到其他终端设备发送的检测信号,所以所述声明资格竞争的具体过程可以为:将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格。当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

S202,侦听并接收用于标识网络内其他组播组的组声明消息;

具体的,终端设备将实时侦听并接收来自其他终端设备发送的用于标识网络内其他组播组的组声明消息,每一个组声明消息均包括对应的组播组组名,且每一个组播组之间以一定顺序进行排序,例如将最先接收到的组声明消息所对应的组播组组名设置为组1,之后接收到的组声明消息所对应的组播组组名设置为组2,重复本步骤,直至将最后一个组播组组名设置为组n,因此,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为:组1,组2,组3,……,组n,使得每一个组播组中的终端设备在发送数据时可以按照组声明帧中各组播组的排列顺序进行先后发送数据。

例如,某个网络内有5个组播组,每个组播组中有若干个终端设备,该网络内的所有终端设备根据所述竞争规则对各自的终端序列号的数值大小进行竞争,当某个终端设备的终端序列号的数值大小竞争胜出时,即该终端序列号为最大数值的终端序列号时,该终端设备具有该组的声明资格。声明资格竞争的过程可以为:5个组播组中的所有终端设备根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组1,该终端设备还将包含组1的组声明消息发送到其他终端设备,以使其他终端设备均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。各个终端设备在进行声明资格竞争时可以侦听并接收用于标识网络内其他组播组的组声明消息,由网络内每一个组播组的组声明消息组成的组声明帧包括组1、组2、……、组5这5个子帧,这5个子帧按照一定顺序排列,使得各组播组中的终端设备在发送数据时,可以让组1的终端设备先发数据,再让组2的终端设备发送数据,最后让组5的终端设备发送数据;组声明帧中还可以包括一个0子帧,该0子帧用于全0终端序列号对应的终端设备声明一个组,若组1到组5这5个子帧上未发现其他终端设备声明了全0终端序列号对应的终端设备所声明的组,则全0终端序列号对应的终端设备可以在0子帧上声明一个组;组声明帧中还可以包括一个空子帧,用于让所有终端设备知道除了全0终端序列号对应的终端设备所声明的组外,其他组播组的组声明已经结束。

S203,将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

所述随机数可以由终端设备随机生成,并将所述随机数组合到本端的所述终端序列号中,以得到随机终端序列号。

S204,根据所述竞争规则和所述随机终端序列号进行资源竞争;

S205,若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

具体的,所述组声明帧是由网络内每一个组播组的组声明消息组成的,网络内的各个组播组中的终端设备均在各自组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的随机终端序列号,并由所述组内最大数值的随机终端序列号对应的终端设备使用分配的网络资源以发送数据,即通过资源竞争的方式竞争获取到分配的网络资源。各个组播组中资源竞争胜出的终端设备可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备在组1内发送数据,再由组2中资源竞争胜出的终端设备在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备的资源竞争是同时进行的。其中,由于是基于随机终端序列号的资源竞争,所以每个随机终端序列号竞争胜出的概率相等,使得各组播组中的每个随机终端序列号均有机会成为最大数值的随机终端序列号,从而保证各个组播组中的每个终端设备在资源竞争时的公平性。

由于各组播组中资源竞争胜出的终端设备是在不同时域上发送数据,所以当某个终端设备加入了两个以上组播组时,该终端设备在其中一个组播组中发送数据时,该终端设备还可以在所加入的其他组播组中侦听并接收组内数据。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙使用分配的网络资源以发送数据,使得网络内组播组中的终端设备可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

再请参见图3,为本发明实施例提供的又一种资源分配的方法的流程示意图,所述方法包括:

S301,根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

具体的,终端设备可以根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,向网络内所有终端设备发送用于标识本端所在的组播组的组声明消息,使得所有终端设备均知道所述组播组的组名标识。其中,所述竞争规则是指对各个终端设备对应的终端序列号的数值大小的竞争规则,当对所述终端序列号的数值大小竞争胜出时,即可确定所述终端序列号的声明资格竞争胜出。由于终端设备在发送检测信号时,无法侦听到其他终端设备发送的检测信号,所以所述声明资格竞争的具体过程可以为:将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格。当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

S302,侦听并接收用于标识网络内其他组播组的组声明消息;

具体的,终端设备将实时侦听并接收来自其他终端设备发送的用于标识网络内其他组播组的组声明消息,每一个组声明消息均包括对应的组播组组名,且每一个组播组之间以一定顺序进行排序,例如将最先接收到的组声明消息所对应的组播组组名设置为组1,之后接收到的组声明消息所对应的组播组组名设置为组2,重复本步骤,直至将最后一个组播组组名设置为组n,因此,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为:组1,组2,组3,……,组n,使得每一个组播组中的终端设备在发送数据时可以按照组声明帧中各组播组的排列顺序进行先后发送数据。

例如,某个网络内有5个组播组,每个组播组中有若干个终端设备,该网络内的所有终端设备根据所述竞争规则对各自的终端序列号的数值大小进行竞争,当某个终端设备的终端序列号的数值大小竞争胜出时,即该终端序列号为最大数值的终端序列号时,该终端设备具有该组的声明资格。声明资格竞争的过程可以为:5个组播组中的所有终端设备根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组1,该终端设备还将包含组1的组声明消息发送到其他终端设备,以使其他终端设备均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。各个终端设备在进行声明资格竞争时可以侦听并接收用于标识网络内其他组播组的组声明消息,由网络内每一个组播组的组声明消息组成的组声明帧包括组1、组2、……、组5这5个子帧,这5个子帧按照一定顺序排列,使得各组播组中的终端设备在发送数据时,可以让组1的终端设备先发数据,再让组2的终端设备发送数据,最后让组5的终端设备发送数据;组声明帧中还可以包括一个0子帧,该0子帧用于全0终端序列号对应的终端设备声明一个组,若组1到组5这5个子帧上未发现其他终端设备声明了全0终端序列号对应的终端设备所声明的组,则全0终端序列号对应的终端设备可以在0子帧上声明一个组;组声明帧中还可以包括一个空子帧,用于让所有终端设备知道除了全0终端序列号对应的终端设备所声明的组外,其他组播组的组声明已经结束。

S303,在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序;

具体的,在本端所在的组播组中,终端设备可以根据递减排序规则对所述终端序列号进行排序,以获知所述终端序列号在本端所在组播组中的排序位置。

其中,所述递减排序规则具体为:在组播组中的各个终端设备根据所述竞争规则从各个终端序列号中选出最大数值的终端序列号,此时组播组中的各个终端设备均可以获知具有最大数值的终端序列号的终端设备在组播组中的排序位置为第一位;除了具有最大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第二大数值的终端序列号,同时具有最大数值的终端序列号的终端设备只负责侦听所述第二大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第二大数值的终端序列号的终端设备在组播组中的排序位置为第二位;除了具有最大数值的终端序列号的终端设备和第二大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第三大数值的终端序列号,同时具有最大数值的终端序列号的终端设备和具有第二大数值的终端序列号的终端设备只负责侦听所述第三大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第三大数值的终端序列号的终端设备在组播组中的排序位置为第三位,重复执行本步骤,直至所述终端组中的各个终端设备均可以获知对方在组播组中的排序位置。

S304,根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

具体的,终端设备可以根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号。例如,某个组播组中的终端设备有7个,排序位置为第一位的终端设备的反序短序列号则为001,排序位置为第二位的终端设备的反序短序列号则为010,……,排序位置为第七位的终端设备的反序短序列号则为111。其中,若每个组播组中的终端设备个数均不大于n,则反序短序列号的位数为ceil(log2n)。其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

S305,将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

所述随机数可以由终端设备随机生成,并将所述随机数组合到本端的所述反序短序列号中,以得到随机短序列号。

S306,根据所述竞争规则和所述随机短序列号进行资源竞争;

S307,若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

具体的,所述组声明帧是由网络内每一个组播组的组声明消息组成,网络内的各个组播组中的终端设备均在各自组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的随机短序列号,并由所述组内最大数值的随机短序列号对应的终端设备使用分配的网络资源以发送数据,即通过资源竞争的方式竞争获取到分配的网络资源。各个组播组中资源竞争胜出的终端设备可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备在组1内发送数据,再由组2中资源竞争胜出的终端设备在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备的资源竞争是同时进行的。其中,由于是基于随机短序列号的资源竞争,所以每个随机短序列号竞争胜出的概率相等,使得各组播组中的每个随机短序列号均有机会成为最大数值的随机短序列号,从而保证各个组播组中的每个终端设备在资源竞争时的公平性。

由于是基于随机短序列号进行资源竞争,所以竞争过程可以缩短许多时间。

由于各组播组中资源竞争胜出的终端设备是在不同时域上发送数据,所以当某个终端设备加入了两个以上组播组时,该终端设备在其中一个组播组中发送数据时,该终端设备还可以在所加入的其他组播组中侦听并接收组内数据。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙使用分配的网络资源以发送数据,使得网络内组播组中的终端设备可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

再请参见图4,为本发明实施例提供的又一种资源分配的方法的流程示意图,所述方法包括:

S401,根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

具体的,终端设备可以根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,向网络内所有终端设备发送用于标识本端所在的组播组的组声明消息,使得所有终端设备均知道所述组播组的组名标识。其中,所述竞争规则是指对各个终端设备对应的终端序列号的数值大小的竞争规则,当对所述终端序列号的数值大小竞争胜出时,即可确定所述终端序列号的声明资格竞争胜出。由于终端设备在发送检测信号时,无法侦听到其他终端设备发送的检测信号,所以所述声明资格竞争的具体过程可以为:将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格。当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

S402,侦听并接收用于标识网络内其他组播组的组声明消息;

具体的,终端设备将实时侦听并接收来自其他终端设备发送的用于标识网络内其他组播组的组声明消息,每一个组声明消息均包括对应的组播组组名,且每一个组播组之间以一定顺序进行排序,例如将最先接收到的组声明消息所对应的组播组组名设置为组1,之后接收到的组声明消息所对应的组播组组名设置为组2,重复本步骤,直至将最后一个组播组组名设置为组n,因此,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为:组1,组2,组3,……,组n,使得每一个组播组中的终端设备在发送数据时可以按照组声明帧中各组播组的排列顺序进行先后发送数据。

例如,某个网络内有5个组播组,每个组播组中有若干个终端设备,该网络内的所有终端设备根据所述竞争规则对各自的终端序列号的数值大小进行竞争,当某个终端设备的终端序列号的数值大小竞争胜出时,即该终端序列号为最大数值的终端序列号时,该终端设备具有该组的声明资格。声明资格竞争的过程可以为:5个组播组中的所有终端设备根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组1,该终端设备还将包含组1的组声明消息发送到其他终端设备,以使其他终端设备均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。各个终端设备在进行声明资格竞争时可以侦听并接收用于标识网络内其他组播组的组声明消息,由网络内每一个组播组的组声明消息组成的组声明帧包括组1、组2、……、组5这5个子帧,这5个子帧按照一定顺序排列,使得各组播组中的终端设备在发送数据时,可以让组1的终端设备先发数据,再让组2的终端设备发送数据,最后让组5的终端设备发送数据;组声明帧中还可以包括一个0子帧,该0子帧用于全0终端序列号对应的终端设备声明一个组,若组1到组5这5个子帧上未发现其他终端设备声明了全0终端序列号对应的终端设备所声明的组,则全0终端序列号对应的终端设备可以在0子帧上声明一个组;组声明帧中还可以包括一个空子帧,用于让所有终端设备知道除了全0终端序列号对应的终端设备所声明的组外,其他组播组的组声明已经结束。

S403,在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序;

具体的,在本端所在的组播组中,终端设备可以根据递减排序规则对所述终端序列号进行排序,以获知所述终端序列号在本端所在组播组中的排序位置。

其中,所述递减排序规则具体为:在组播组中的各个终端设备根据所述竞争规则从各个终端序列号中选出最大数值的终端序列号,此时组播组中的各个终端设备均可以获知具有最大数值的终端序列号的终端设备在组播组中的排序位置为第一位;除了具有最大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第二大数值的终端序列号,同时具有最大数值的终端序列号的终端设备只负责侦听所述第二大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第二大数值的终端序列号的终端设备在组播组中的排序位置为第二位;除了具有最大数值的终端序列号的终端设备和第二大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第三大数值的终端序列号,同时具有最大数值的终端序列号的终端设备和具有第二大数值的终端序列号的终端设备只负责侦听所述第三大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第三大数值的终端序列号的终端设备在组播组中的排序位置为第三位,重复执行本步骤,直至所述终端组中的各个终端设备均可以获知对方在组播组中的排序位置。

S404,根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备作为发送终端,重复本步骤,直至网络内的每个终端设备均发送过数据。所述组声明帧是由网络内每一个组播组的组声明消息组成的,此处所述组声明帧所指示的时隙为:各个组播组中对应的终端设备在相同时域、不同频域上发送数据。

例如,某个网络内的各个组播组均在组内完成对终端序列号的排序之后,将有若干个“按pattern发送”子帧在不同时域上执行,第一个“按pattern发送”子帧的执行过程可以为:各个组播组中排序第一位的终端设备通过频分多址的方式使用分配的网络资源以发送数据,即各个排序第一位的终端设备在相同时域且不同频域上发送数据,经过一个时隙后,所述网络内每一个组播组中排序第二位的终端设备通过频分多址的方式使用分配的网络资源以发送数据,重复本步骤,直至各组播组中排序最后一位的终端设备也发送数据,即网络内的每个终端设备均发送过数据。相邻两个“按pattern发送”子帧之间需要进行跳频处理hopping,所以第二个“按pattern发送”子帧的执行过程可以为:组1的组播组中排序第一位的终端设备、组2的组播组中排序第二位的终端设备、组3的组播组中排序第三位的终端设备、……、组n的组播组中排序第n位的终端设备通过频分多址的方式使用分配的网络资源以发送数据,经过一个时隙后,组1的组播组中排序第二位的终端设备、组2的组播组中排序第三位的终端设备、组3的组播组中排序第四位的终端设备、……、组n的组播组中排序第1位的终端设备通过频分多址的方式使用分配的网络资源以发送数据,按照以上发送顺序重复本步骤,直至网络内的每个终端设备均发送过数据。后面的“按pattern发送”子帧在执行过程中均按照排序位置错位的方式发送数据,使得不同组播组中的任意两个终端设备在发送数据时都有机会在时域上重合,因此,当某个终端设备加入了两个不同的组播组,且不想错过侦听所加入的两个组播组中的所有消息时,该终端设备可以仅在自己所在的两个组播组被排到相同的时域位置时才发送数据。

由上可见,本发明实施例通过建立组声明帧,以根据所所述组声明帧所指示的时隙以及发送规则使用分配的网络资源以发送数据,使得网络内组播组中的终端设备可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备之间仍可以正常进行通信。

进一步的,再请参见图5,为本发明实施例提供的一种声明资格竞争的方法的流程示意图,本发明实施例的所述方法可以可对应于上述图1对应实施例中的S101,或者图2对应实施例中的S201,或者图3对应实施例中的S301,或者图4对应实施例中的S401。本发明实施例的所述方法具体包括:

S501,将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

具体的,当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

S502,在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

S503,发送用于标识本端所在的组播组的组声明消息。

具体的,在某个终端设备声明资格竞争胜出时,该终端设备可以为所在组播组声明对应的组名,即对所述组播组进行标识以得到组声明消息,该终端设备再向所有终端设备发送用于标识本端所在的组播组的组声明消息,使得其他终端设备可以根据所述组声明消息获知该组播组的组名。

例如,某个网络内有5个组播组,每个组播组中有若干个终端设备,该网络内的所有终端设备根据所述竞争规则对各自的终端序列号的数值大小进行竞争,当某个终端设备的终端序列号的数值大小竞争胜出时,即该终端序列号为最大数值的终端序列号时,该终端设备具有该组的声明资格。声明资格竞争的过程可以为:5个组播组中的所有终端设备根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组1,该终端设备还将包含组1的组声明消息发送到其他终端设备,以使其他终端设备均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备,并由该终端设备声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。

本发明实施例通过竞争规则可以找到最大数值的终端序列号,再由最大数值的终端序列号声明所在组播组的组名,使得各个终端设备可以获知所有组播组的组名以及对应编号。

进一步的,再请参见图6,为本发明实施例提供的一种序列号排序的方法的流程示意图。本发明实施例的所述方法可以可对应于上述图3对应实施例中的S303或上述图4对应实施例中的S403。本发明实施例的所述方法具体包括:

S601,根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

S602,当判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置;

具体的,在组播组中的各个终端设备根据所述竞争规则从各个终端序列号中选出最大数值的终端序列号,此时组播组中的各个终端设备均可以获知具有最大数值的终端序列号的终端设备在组播组中的排序位置为第一位;除了具有最大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第二大数值的终端序列号,即其他终端设备在删除所述组播组中当前最大数值的终端序列号之后再进行竞争,同时具有最大数值的终端序列号的终端设备只负责侦听所述第二大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第二大数值的终端序列号的终端设备在组播组中的排序位置为第二位;除了具有最大数值的终端序列号的终端设备和第二大数值的终端序列号的终端设备之外的其他终端设备继续根据所述竞争规则选出所述组播组中的第三大数值的终端序列号,同时具有最大数值的终端序列号的终端设备和具有第二大数值的终端序列号的终端设备只负责侦听所述第三大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备均可以获知具有第三大数值的终端序列号的终端设备在组播组中的排序位置为第三位,重复执行本步骤,直至所述终端组中的各个终端设备均可以获知对方在组播组中的排序位置。

其中,当某个终端设备判断到自己的终端序列号为最大数值的终端序列号时,可以记录所述终端序列号在所在组播组中的当前排序位置。

本发明实施例通过递减排序规则可以将组播组中的终端设备的终端序列号按照从大到小的顺序进行排列,以便于后续可以生成反序短序列号或者可以使终端设备根据发送规则发送数据。

本发明实施例还提供了另一种序列号排序的方法,所述方法可以包括:

将各组播组中终端设备的终端序列号的前至少一位作为检测位,各终端设备根据所述检测位等于分组特性数进行二次分组,其中,每一组中的终端序列号的检测位均等于对应的分组特性数,所述分组特性数可以为多个分组特性数;例如,若根据终端序列号中的前3位等于分组特性数进行二次分组,则所述分组特性数可以包括111,110,101,100,011,010,001,000。

各组播组在二次分组后,每个组播组中将包含多个二次终端组,在一个组播组中的每个二次终端组根据递减排序规则对组中的各个终端序列号进行递减排序以得到每个二次终端组中排序最后的终端序列号;

在一个组播组中,每个二次终端组中排序最后的终端序列号对应的终端设备再组成一个新的组,所述新的组中的各个终端设备在所述检测位中的其中一位数值为1时发送数量信息,所述数量信息包含终端设备所在的二次终端组的终端设备数量信息,所述终端设备数量信息可以与所述终端设备在所述二次终端组中的排序位置相关联,所述新的组中的各个终端设备可以根据数量信息计算出自己在组播组中的终端序列号的排序位置,其他的终端设备可以根据新的组中的终端设备在组播组中的排序位置以及自己所在二次终端组中的排序位置计算出自己在组播组中的排序位置,从而完成了对终端序列号的排序。

本发明实施例还提供了另一种序列号排序的方法,所述方法可以包括:

各组播组中的终端设备根据终端序列号中的前至少一位等于分组特性数进行二次分组,其中,每一组中的终端序列号的前至少一位均等于对应的分组特性数,所述分组特性数可以为多个分组特性数;例如,若根据终端序列号中的前3位等于分组特性数进行二次分组,则所述分组特性数可以包括111,110,101,100,011,010,001,000。

各组播组在二次分组后,每个组播组中将包含多个二次终端组,在一个组播组中的每个二次终端组根据递减排序规则对组中的各个终端序列号进行递减排序。

设置第一互听组和第二互听组,所述第一互听组和所述第二互听组均包括组播组中的各个终端序列号;

在所述第一互听组中,各个二次终端组中排序最前的终端序列号对应的终端设备通过频分多址的方式发送包含各自终端序列号的信息,再通过时分多址的方式对各个二次终端组中排序第二位的终端序列号对应的终端设备通过频分多址的方式发送包含各自终端序列号的信息,重复执行本步骤,直至各个组中排序最后的终端序列号对应的终端发送信息;

在所述第二互听组中,各个二次终端组中排序互不相同的终端序列号对应的终端设备通过频分多址的方式发送包含各自终端序列号的信息,再通过时分多址的方式对各个二次终端组中排序为相邻位的终端序列号对应的终端设备通过频分多址的方式发送包含各自终端序列号的信息,重复执行本步骤,直至各个终端均发送过信息;

根据在二次终端组中的排序位置以及在对应的频域和时域上所接收到的信息计算出在所述终端序列号在组播组中的排序位置,从而完成了对终端序列号的排序。

请参见图7,为本发明实施例提供的一种终端设备1的结构示意图,所述终端设备1可以包括:声明竞争模块10、声明生成模块20、资源使用模块30;

所述声明竞争模块10,用于根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

具体的,所述声明竞争模块10可以根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,向网络内所有终端设备1发送用于标识本端所在的组播组的组声明消息,使得所有终端设备1均知道所述组播组的组名标识。其中,所述竞争规则是指对各个终端设备1对应的终端序列号的数值大小的竞争规则,当对所述终端序列号的数值大小竞争胜出时,即可确定所述终端序列号的声明资格竞争胜出。由于终端设备1在发送检测信号时,无法侦听到其他终端设备1发送的检测信号,所以所述声明资格竞争的具体过程可以为:所述声明竞争模块10将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;所述声明竞争模块10在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格。当所述终端序列号为二进制数时,所述信号发送条件可以为所述信号检测位为1,且在此之前未侦听到来自于其他终端设备1发送的检测信号。其中,所述检测信号可以为易检测信号,如ZC序列。

所述声明生成模块20,用于侦听并接收用于标识网络内其他组播组的组声明消息;

具体的,所述声明生成模块20可以实时侦听并接收来自其他终端设备1发送的用于标识网络内其他组播组的组声明消息,每一个组声明消息均包括对应的组播组组名,且每一个组播组之间以一定顺序进行排序,例如所述声明生成模块20将最先接收到的组声明消息所对应的组播组组名设置为组1,之后接收到的组声明消息所对应的组播组组名设置为组2,重复本步骤,直至将最后一个组播组组名设置为组n,因此,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为:组1,组2,组3,……,组n,使得每一个组播组中的终端设备1在发送数据时可以按照组声明帧中各组播组的排列顺序进行先后发送数据。

例如,有5个组播组,各终端设备1中的声明生成模块20可以根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备1,并由所述声明生成模块20声明该终端设备1所在组播组的组名为组1,所述声明生成模块20还将包含组1的组声明消息发送到其他终端设备1,以使其他终端设备1均可以知道该组播组的组名为组1;之后,网络内所有不参加组1或不仅仅参加组1的终端设备1的声明生成模块20再根据所述竞争规则竞争出最大数值的终端序列号所对应的终端设备1,并由该终端设备1的声明生成模块20声明所在组播组的组名为组2,直至对网络内的5个组播组均声明有对应的组名,此时,网络中的所有终端设备1均知道网络内组播组的个数、各组播组的组名以及组名对应的编号。

所述资源使用模块30,用于根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的;

具体的,所述资源使用模块30可以根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。例如,网络内的各个组播组中的终端设备1的资源使用模块30均在各自组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的终端序列号,并由所述组内最大数值的终端序列号对应的终端设备1使用分配的网络资源以发送数据,各个组播组中资源竞争胜出的终端设备1可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备1在组1内发送数据,再由组2中资源竞争胜出的终端设备1在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备1要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备1分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备1的资源竞争是同时进行的。其中,为了保证各个组播组中的每个终端设备1在资源竞争时,竞争胜出的概率相同,可以将随机数组合到终端序列号中,使得各组播组中的每个终端序列号均有机会成为最大数值的终端序列号,从而保证各个组播组中的每个终端设备1在资源竞争时的公平性。

进一步的,请参见图8,为本发明实施例提供的一种声明竞争模块10的结构示意图,所述声明竞争模块10可以包括:

检测位判断单元101,用于将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

确定单元102,用于在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

标识发送单元103,用于发送用于标识本端所在的组播组的组声明消息;

具体的,在某个终端设备1声明资格竞争胜出时,该终端设备1可以为所在组播组声明对应的组名,即对所述组播组进行标识以得到组声明消息,该终端设备1的所述标识发送单元103再向所有终端设备1发送用于标识本端所在的组播组的组声明消息,使得其他终端设备1可以根据所述组声明消息获知该组播组的组名。

进一步的,再请参见图9,为本发明实施例提供的一种资源使用模块30的结构示意图,所述资源使用模块30可以包括:随机组合单元301、第一资源竞争单元302、第一数据发送单元303;

所述随机组合单元301,用于将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

所述随机组合单元301可以生成所述随机数,并将所述随机数组合到本端的所述终端序列号中,以得到随机终端序列号。

所述第一资源竞争单元302,用于根据所述竞争规则和所述随机终端序列号进行资源竞争;

所述第一数据发送单元303,用于若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

具体的,由网络内每一个组播组的组声明消息组成的组声明帧中各组播组的排列顺序为,网络内的各个组播组中的终端设备1的第一资源竞争单元302均在各自组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的随机终端序列号,并由所述组内最大数值的随机终端序列号对应的终端设备1的第一数据发送单元303使用分配的网络资源以发送数据,即所述第一数据发送单元303通过资源竞争的方式竞争获取到分配的网络资源。各个组播组中资源竞争胜出的终端设备1的第一数据发送单元303可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备1在组1内发送数据,再由组2中资源竞争胜出的终端设备1在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备1要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备1分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备1的资源竞争是同时进行的。其中,由于是基于随机终端序列号的资源竞争,所以每个随机终端序列号竞争胜出的概率相等,使得各组播组中的每个随机终端序列号均有机会成为最大数值的随机终端序列号,从而保证各个组播组中的每个终端设备1在资源竞争时的公平性。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙使用分配的网络资源以发送数据,使得网络内组播组中的终端设备1可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备1之间仍可以正常进行通信。

再请参见图10,为本发明实施例提供的另一种终端设备1的结构示意图,所述终端设备1可以包括上述图9对应实施例中的声明竞争模块10、声明生成模块20、资源使用模块30,进一步的,所述终端设备1还可以包括:排序模块40;

所述排序模块40,用于在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序。

具体的,所述排序模块40可以根据递减排序规则对所述终端序列号进行排序,以获知所述终端序列号在本端所在组播组中的排序位置。

其中,所述递减排序规则具体为:在组播组中的各个终端设备1根据所述竞争规则从各个终端序列号中选出最大数值的终端序列号,此时组播组中的各个终端设备1均可以获知具有最大数值的终端序列号的终端设备1在组播组中的排序位置为第一位;除了具有最大数值的终端序列号的终端设备1之外的其他终端设备1继续根据所述竞争规则选出所述组播组中的第二大数值的终端序列号,同时具有最大数值的终端序列号的终端设备1只负责侦听所述第二大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备1均可以获知具有第二大数值的终端序列号的终端设备1在组播组中的排序位置为第二位;除了具有最大数值的终端序列号的终端设备1和第二大数值的终端序列号的终端设备1之外的其他终端设备1继续根据所述竞争规则选出所述组播组中的第三大数值的终端序列号,同时具有最大数值的终端序列号的终端设备1和具有第二大数值的终端序列号的终端设备1只负责侦听所述第三大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备1均可以获知具有第三大数值的终端序列号的终端设备1在组播组中的排序位置为第三位,重复执行本步骤,直至所述终端组中的各个终端设备1均可以获知对方在组播组中的排序位置。

进一步的,再请参见图11,为本发明实施例提供的另一种资源使用模块30的结构示意图,所述资源使用模块30可以包括:

短序生成单元304,用于根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

具体的,所述短序生成单元304可以根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号。例如,某个组播组中的终端设备1有7个,排序位置为第一位的终端设备1的反序短序列号则为001,排序位置为第二位的终端设备1的反序短序列号则为010,……,排序位置为第七位的终端设备1的反序短序列号则为111。其中,若每个组播组中的终端设备1个数均不大于n,则反序短序列号的位数为ceil(log2n)。其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

短序随机组合单元305,用于将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

所述短序随机组合单元305可以生成所述随机数,并将所述随机数组合到本端的所述反序短序列号中,以得到随机短序列号。

第二资源竞争单元306,用于根据所述竞争规则和所述随机短序列号进行资源竞争;

第二数据发送单元307,用于若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

具体的,所述组声明帧是由网络内每一个组播组的组声明消息组成的,所述第二资源竞争单元306可以根据所述竞争规则和所述随机短序列号在所在组播组中进行资源竞争,资源竞争的方法可以是根据所述竞争规则竞争出组内最大数值的随机短序列号,并由所述组内最大数值的随机短序列号对应的终端设备1的第二数据发送单元307使用分配的网络资源以发送数据,即通过资源竞争的方式竞争获取到分配的网络资源。各个组播组中资源竞争胜出的终端设备1可以根据所述组声明帧所指示的时隙先后发送数据,若组声明帧中的子帧是按照组1、组2、组3、……、组n的顺序排列,则先由组1中资源竞争胜出的终端设备1在组1内发送数据,再由组2中资源竞争胜出的终端设备1在组2内发送数据,以此类推,排在最后一组的组播组中资源竞争胜出的终端设备1要在最后一位向组内发送数据,即各组播组中资源竞争胜出的终端设备1分别在不同时域上发送数据。其中,各个组播组在资源竞争时,在同一时域且不同频域上进行资源竞争,即在组1、组2、组3、……、组n中,各组内的终端设备1的资源竞争是同时进行的。其中,由于是基于随机短序列号的资源竞争,所以每个随机短序列号竞争胜出的概率相等,使得各组播组中的每个随机短序列号均有机会成为最大数值的随机短序列号,从而保证各个组播组中的每个终端设备1在资源竞争时的公平性。

本发明实施例提供的资源使用模块30还可以具体用于根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备1通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备1作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备1作为发送终端,重复本步骤,直至网络内的每个终端设备1均发送过数据。所述组声明帧是由网络内每一个组播组的组声明消息组成的,此处所述组声明帧所指示的时隙为:各个组播组中对应的终端设备1在相同时域、不同频域上发送数据。

进一步的,再请参见图12,为本发明实施例提供的一种排序模块40的结构示意图,所述排序模块40可以包括:

判断排序单元401,用于根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

记录排序单元402,用于当所述判断排序单元401判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置;

具体的,在组播组中的各个终端设备1根据所述竞争规则从各个终端序列号中选出最大数值的终端序列号,此时组播组中的各个终端设备1均可以获知具有最大数值的终端序列号的终端设备1在组播组中的排序位置为第一位;除了具有最大数值的终端序列号的终端设备1之外的其他终端设备1继续根据所述竞争规则选出所述组播组中的第二大数值的终端序列号,即其他终端设备1在删除所述组播组中当前最大数值的终端序列号之后再进行竞争,同时具有最大数值的终端序列号的终端设备1只负责侦听所述第二大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备1均可以获知具有第二大数值的终端序列号的终端设备1在组播组中的排序位置为第二位;除了具有最大数值的终端序列号的终端设备1和第二大数值的终端序列号的终端设备1之外的其他终端设备1继续根据所述竞争规则选出所述组播组中的第三大数值的终端序列号,同时具有最大数值的终端序列号的终端设备1和具有第二大数值的终端序列号的终端设备1只负责侦听所述第三大数值的终端序列号信息并且不参与竞争,此时组播组中的各个终端设备1均可以获知具有第三大数值的终端序列号的终端设备1在组播组中的排序位置为第三位,重复执行本步骤,直至所述终端组中的各个终端设备1均可以获知对方在组播组中的排序位置。

其中,当某个终端设备1的判断排序单元401判断到自己的终端序列号为最大数值的终端序列号时,所述记录排序单元402可以记录所述终端序列号在所在组播组中的当前排序位置。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙以及发送规则使用分配的网络资源以发送数据,使得网络内组播组中的终端设备1可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备1之间仍可以正常进行通信。

本发明实施例还提供了一种计算机存储介质,其中,所述计算机存储介质可存储有程序,该程序执行时包括上述图1至图6的方法实施例中记载的资源分配的方法的部分或全部步骤。

请参见图13,为本发明实施例提供的又一种终端设备1的结构示意图,所述终端设备1可以包括处理器1001、通信接口1002和存储器1003(终端设备1中的处理器1001的数量可以为一个或多个,图13中以一个处理器1001为例)。本发明的一些实施例中,处理器1001、通信接口1002和存储器1003可通过通信总线或其他方式连接,其中,图13以通过通信总线连接为例。

其中,所述通信接口1002,用于与网络内各组播组中的终端设备1进行通信;

所述存储器1003用于存储程序;

所述处理器1001用于执行所述程序,以实现

根据竞争规则在至少一个组播组中基于终端序列号进行组内的声明资格竞争,并在竞争结果为具有声明资格时,发送用于标识本端所在的组播组的组声明消息;

侦听并接收用于标识网络内其他组播组的组声明消息;

根据组声明帧所指示的时隙使用分配的网络资源以发送数据,所述组声明帧是由网络内每一个组播组的组声明消息组成的。

其中,所述处理器1001具体用于:

将所述终端设备的终端序列号中的第一位数值作为信号检测位,并根据该信号检测位的值以及所述终端设备的侦听状态判断所述终端设备是否满足信号发送条件,并将所述终端序列号中的下一位数值作为信号检测位,重复本步骤,直至将所述终端序列号中的最后一位数值作为信号检测位,其中,若所述终端设备满足信号发送条件,则广播本端检测信号,否则,侦听检测信号;

在重复结束后,若没有侦听到检测信号,则确定所述终端序列号为最大数值的终端序列号,并确定竞争结果为具有声明资格;

发送用于标识本端所在的组播组的组声明消息。

其中,所述处理器1001具体用于:

将生成的随机数组合到所述终端序列号中,得到随机终端序列号;

根据所述竞争规则和所述随机终端序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据。

其中,所述处理器1001还用于:

在本端所在的组播组中,根据递减排序规则对所述终端序列号进行排序。

其中,所述处理器1001具体用于:

根据所述终端序列号的排序位置生成与所述终端序列号对应的反序短序列号;

将生成的随机数组合到所述反序短序列号中,得到随机短序列号;

根据所述竞争规则和所述随机短序列号进行资源竞争;

若竞争获取到分配的网络资源,则根据所述组声明帧所指示的时隙使用所分配到的网络资源以发送数据;

其中,最大数值的反序短序列号为所述组播组中终端的个数,且最大数值的反序短序列号与所述组播组中最大数值的终端序列号或与所述组播组中最小数值的终端序列号对应。

其中,所述处理器1001具体用于:

根据所述组声明帧所指示的时隙、发送规则以及本端的终端序列号所在组播组中的排序位置,与网络内其他组播组中的相应排序位置的终端设备1通过频分多址的方式使用分配的网络资源以发送数据;

其中,所述发送规则是指将网络内每一个组播组中相应排序位置的终端设备1作为发送终端,各发送终端通过频分多址的方式使用分配的网络资源以发送数据,在一段时隙后,再将所述网络内每一个组播组中其他的相应排序位置的终端设备1作为发送终端,重复本步骤,直至网络内的每个终端设备1均发送过数据。

其中,所述处理器1001具体用于:

根据所述竞争规则判断所述本端的终端序列号是否为本端所在组播组中最大数值的终端序列号,若判断为否,则在不包括已判断为最大数值的终端序列号所对应的终端设备的所述组播组中,根据所述竞争规则判断所述本端的终端序列号是否为最大数值的终端序列号,重复本步骤,直至判断所述本端的终端序列号为最大数值的终端序列号;

当判断所述终端序列号为最大数值的终端序列号时,记录所述终端序列号的当前排序位置。

由上可见,本发明实施例通过建立组声明帧,以根据所述组声明帧所指示的时隙以及发送规则使用分配的网络资源以发送数据,使得网络内组播组中的终端设备1可以有序的发送数据或接收数据,从而可以在组播网络中的中心控制节点消失或故障时,各个终端设备1之间仍可以正常进行通信。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1