具体实施方式
本发明实施例提供了一种帧信息FI消息的传输方法及装置,用以采用时隙状态表,实现节点的接入,减少节点接入过程中的内存使用量,减少网络中节点在时隙的突发处理,平滑每时隙的处理量。
本发明实施例针对现有技术存在的上述问题,提出了一种节点接入过程中时隙占用状态处理机制,包括以下技术点:
一、每个自组织网络节点(以下简称节点)内部维护一维1*N时隙状态表,其中N表示一帧中包含的时隙的个数:
每一个节点内部维护时隙状态表,在每个时隙收到FI消息后立即对FI中的各时隙对应的时隙信息域,根据时隙映射关系进行时隙状态表中各时隙对应时隙信息单元的时隙状态转换处理,更新时隙状态表中各时隙对应时隙信息单元的信息;当节点发送FI消息的时隙到达时,将节点维护的时隙状态表中各时隙对应时隙信息单元的信息映射成FI消息中各时隙对应的时隙信息域的信息发送;并在FI消息发送后重置(reset)时隙状态表中除了本节点占用时隙以外的所有时隙信息单元信息,即将时隙状态表中的除了本节点占用时隙以外的时隙信息单元中的时隙占用状态子单元的时隙状态置为空闲状态,STI子单元和优先级子单元设置为无效。
1*N时隙状态表中的时隙信息单元包括以下3个子单元信息:
信道占用状态子单元:包括6种状态,分别为空闲状态、本节点占用状态、1跳邻节点占用、2跳邻节点占用状态、3跳邻节点占用状态和碰撞状态。
STI子单元:包含节点临时身份标识(Source Temporary Identifier,STI),8比特的STI。
优先级子单元:分为4级,分别为用于紧急车辆的紧急业务;用于普通车辆的一般性道路安全目的的通信;用于提高交通效率的低优先级业务;用于娱乐目的的通信。
本发明实施例中节点每收到一条FI消息便立刻对该FI消息进行处理,无需等到本节点的维护时隙前统一再处理。因此,在信道维护方面,可立刻通过收到的FI消息判断信道维护是否成功,并可立刻进行相应的处理。对于时隙状态表,节点每收到一条FI消息便更新时隙状态表,所以节点只需维护一维(1*N,N为一帧内的时隙数)的时隙状态表,相比于现有技术中的(N-1)×N的时隙状态表,明显节省存储空间,并且不需要等到要发送FI消息时再处理时隙状态表中的内容,大幅缩短了生成FI消息的时间和减轻节点的处理负荷。
二、基于技术点一,接入过程监听一帧并选择空闲时隙后,对当前时隙状态表进行部分时隙的资源重新设置:
假设MS-ALOHA算法中的节点在接入过程中监听一帧,并选择了空闲slotp用于发送FI消息。那么从新的一帧开始,在slot p到达前,假设需要持续监听q个slot,slot p才会到达,用新的q个slot信息循环覆盖N*N时隙状态缓存表中的旧的slot信息(即接收的FI消息信息窗口中始终保持最近N个slot的信息)。
本发明实施例采用一维1*N时隙状态表,从接入时刻开始在监听一帧过程中,监听一帧中的前q个时隙的信息是无效信息,不应该记入时隙状态表中,只需要把监听一帧中的帧尾N-q时隙,和监听一帧后新的一帧中的前q个slot信息组成完整监听一帧的时隙状态表信息进行处理。所以本发明实施例在监听一帧后,选择空闲时隙slot p后,需要对当前时隙状态表进行部分时隙的资源重新设置,达到清除接入开始时刻起的帧头q个时隙信息的目的,为新接收一帧的q个时隙信息处理做好准备;
三、基于技术点一和二,由于时隙状态表中接入时刻开始q个时隙的时隙占用状态子单元时隙状态为一跳节点占用时,可确定是由接入时刻开始q个时隙,接收FI消息中对应时隙的信息域信息,进行时隙状态表中时隙信息单元的时隙状态转换处理得到的;而碰撞、被两跳节点占用可能是在监听一帧中的各时隙接收FI消息信息中的信息域信息,根据状态转换更新时隙状态表得出,无法区分出是由一帧中前q个时隙中的某些时隙推出,还是由一帧中后N-q个时隙中的某些时隙推出,还是综合一帧中的N个时隙中的某些时隙信息推出。因此需要考虑网络中有2种资源分配的策略,对应有2种重新设置一维1*N时隙状态表时隙信息单元中信息的规则:
第一种:清除碰撞状态和两跳节点占用状态信息;考虑尽快释放不用资源,使用户能更快的接入系统,具体地:
对时隙状态表中需要继续等待的q个时隙对应的时隙信息单元,将q个时隙对应的时隙信息单元中时隙状态信息全部设置为空闲状态;STI子单元和优先级子单元设置为无效;
对时隙状态表中剩余的N-q个时隙对应的时隙信息单元,仅保留N-q个时隙对应的时隙信息单元中占用状态的时隙状态信息,其它时隙状态信息都设置为空闲状态;非占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效;
第二种:保留碰撞状态和两跳节点占用状态信息;不释放网络资源,考虑尽量准确反映网络中时隙占用信息,具体地:
对时隙状态表中需要继续等待的q个时隙对应的时隙信息单元,将q个时隙对应的时隙信息单元中占用状态改为空闲状态,其它时隙状态信息保持不变;占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效;
对时隙状态表中剩余的N-q个时隙对应的时隙信息单元,保持N-q个时隙对应的时隙信息单元中时隙状态信息不变;STI子单元和优先级子单元信息保持不变;
四、基于技术点一、二、三,监听一帧后,节点等待接入时隙slot p到达前的各时隙,都可判断slot p是否仍然空闲,具体地:
节点在监听一帧后,选择空闲时隙slot p,需要等待q个时隙,在等待slotp到达的q个时隙中,节点在每个时隙都可以根据新接收的FI消息中的各时隙对应的时隙信息域,对时隙状态表中的对应时隙的时隙信息单元进行时隙状态转换处理,以便更新时隙状态表,并基于此确定slot p的时隙占用状态。
五、基于技术点一、二、三、四,在等待的q个时隙中,根据在各时隙接收的FI消息更新后的时隙状态表判断,发现slot p不再空闲时,不需要重新监听一帧,而立即根据当前时隙状态表信息选择空闲时隙,开始接入监听过程。因为,节点当前维护的一维1*N时隙状态表已经是节点的最新信息。
综上,参见图3,本发明实施例提供的一种帧信息FI消息的传输方法,包括步骤:
S101、监听FI消息,利用收到的FI消息更新节点维护的时隙状态表;
S102、根据当前节点维护的时隙状态表,选择空闲时隙作为本节点FI消息的发送时隙;
S103、选择FI消息的发送时隙后,对当前时隙状态表部分时隙进行资源重新设置;
S104、根据当前节点维护的时隙状态表生成FI消息,并传输FI消息。
较佳地,参见图4,所述时隙状态表,由多个时隙信息单元构成,每个时隙信息单元中包含时隙占用状态子单元、STI子单元和优先级子单元;
其中,每个时隙信息单元中的时隙占用状态子单元用于指示帧内的一个时隙的状态;
其中,每个时隙信息单元中的时隙占用状态子单元用于指示该时隙的占用状态(节点内部时隙状态中的1种);
每个时隙信息单元中的STI子单元用于指示占用该时隙的节点的临时标识;
每个时隙信息单元中的优先级子单元用于指示占用该时隙的业务优先级。较佳地,所述利用收到的FI消息更新节点维护的时隙状态表,包括:
使用FI消息中每一时隙的时隙信息域,更新时隙状态表中对应时隙的时隙信息单元。
较佳地,当根据该FI消息更新时隙状态表中本节点拟发送FI消息的时隙对应的时隙信息域时,具体包括:
当收到的FI消息中对于本节点拟发送FI消息的时隙对应的时隙信息域中的时隙占用状态子域为空闲状态时,节点继续监听本节点维护的信道,并保持时隙状态表中本节点维护的此时隙对应的时隙信息单元不变;
当收到的FI消息中对于本节点拟发送FI消息的时隙对应的时隙信息域中的时隙占用状态子域不为空闲状态时,节点根据更新完成后的时隙状态表重新选择发送FI消息的时隙;或者,节点将清空时隙状态表中所有时隙对应的信息,重新发起接入过程,选择发送FI消息的时隙;
较佳地,清空时隙状态表中所有时隙对应的信息,采用如下方法:
将时隙状态表中所有时隙对应的时隙信息单元中,时隙占用状态子单元都设置为空闲状态,STI子单元和优先级子单元设置为无效。
较佳地,节点发送FI后,该方法还包括:
节点清空时隙状态表中指定时隙对应的信息。
较佳地,所述指定时隙为:
非本节点占用的时隙;或
除当前FI消息的发送时隙外的其它所有时隙。
较佳地,节点在本节点发送时隙,根据时隙状态表生成FI消息,步骤包括:节点在本节点发送时隙,用时隙状态表中每个时隙的时隙信息单元生成的FI消息中对应时隙的时隙信息域。
较佳地,参见图5,所述生成的FI消息中的每个时隙信息域中包含:
时隙占用状态子域,用于指示时隙的占用状态(FI中时隙状态的1种);
STI子域,用于指示占用该时隙的节点的临时标识;
优先级子域,用于指示占用该时隙的业务优先级。
较佳地,对当前时隙状态表的时隙信息单元进行资源重新设置后,该方法还包括:
在等待FI消息的发送时隙到达之前的时隙中接收到的FI消息的每时隙对应的时隙信息域,与节点保存的当前时隙状态表中的每时隙对应的时隙信息单元进行状态转换处理,得到状态转换更新后的时隙状态表。
较佳地,所述根据当前节点维护的时隙状态表生成FI消息,并传输FI消息,包括:
当所述状态转换更新后的时隙状态表指示所述选择的FI消息的发送时隙仍然空闲时,传输FI消息,其中包括所述状态转换更新后的时隙状态表中的各时隙的占用状态信息。
较佳地,该方法还包括:
当所述状态转换更新后的时隙状态表指示所述选择的FI消息的发送时隙不继续空闲时,根据所述状态转换更新后的时隙状态表,重新选择空闲时隙进行信道接入。
较佳地,所述对时隙状态表部分时隙的资源重新设置,包括(即上述第一种规则):
将时隙状态表中需要等待的时隙对应的时隙信息单元所有时隙占用状态子单元状态设置为空闲状态;STI子单元和优先级子单元设置为无效;
将时隙状态表中需要等待的时隙之外的时隙对应的时隙信息单元所有时隙占用状态子单元中的占用状态保留,其他状态设置为空闲状态;非占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效。
较佳地,所述对时隙状态表部分时隙的资源重新设置,包括(即上述第二种规则):
对时隙状态表中需要等待的时隙对应的时隙信息单元所有时隙占用状态子单元中的占用状态改为空闲状态,其它状态保持不变;占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效;
对时隙状态表中需要等待的时隙之外的时隙对应的时隙信息单元的状态信息保持不变;STI子单元和优先级子单元信息保持不变。
具体的,一条FI消息包括对节点维护时隙的反馈信息和自组网中其它时隙的信息。
当反馈信息为正反馈即发送节点的FI消息中包含该接收节点还可以继续占用该时隙的信息时,例如:接收中的FI消息中指示所述接收节点维护的时隙的状态为空闲,或者所述节点维护的时隙的状态为非碰撞且指示的STI为该接收节点的STI,节点继续监听本节点维护的信道,并保持时隙状态表本节点维护时隙对应的信息不变,依据根据FI消息更新时隙状态表中其它时隙对应的信息。
当反馈信息为负反馈时,节点根据自身状态的变化更新时隙状态表中本节点维护时隙对应的信息,以及根据收到的FI消息更新时隙状态表中其它时隙对应的信息,并依据更新后的时隙状态表中的信息重新选择接入时隙;或者,节点清空时隙状态表,并继续监听信道。如果采用现有技术,在收到FI消息时不做处理,到达自己的维护时隙时才处理FI消息,这时才对负反馈做出反应。可见,本实施例中节点对负反馈的处理效率明显高于现有技术。
本实施例中节点在收到FI消息后便依据该FI消息的内容更新时隙状态表中原有内容,也就是说时隙状态表始终保留一条FI消息的内容,为一维(1*N,N为一帧内的时隙数)的时隙状态表,相比于现有技术中的(N-1)×N的时隙状态表,明显节省存储空间。节点更新时隙状态表具体是更新时隙状态表针对一帧中每个时隙的域(FI消息field)中的时隙状态占用情况,例如有6种占用情况:空闲、本节点占用、1跳邻节点占用、2跳邻节点占用、3跳邻节点占用和碰撞状态。
节点认为其在接收时隙(这里暂时以接收节点来简化指代),可以直接感知(监听)到此时隙上的FI消息的发送节点为本节点的1跳邻节点,进一步,认为所述接收节点对该一跳节点发送的FI消息中的非所述1跳邻节点占用的时隙的其他时隙占用信息的获取,即网络拓扑结构都是经由所述1跳邻节点间转发的。具体来说,对于所述接收节点而言,如果某一时隙被所述1跳邻节点的某一1跳邻节点占用,该时隙就是被自己的2跳邻节点占用;如果某一时隙被所述1跳邻节点的某一二跳临节点占用,该时隙就是被自己的三跳邻节点占用,依此类推。
如果一个时隙的占用情况为:“本节点占用”“1跳邻节点占用”“2跳邻节点占用”时,必须同时记录占用此时隙资源的节点的STI(临时标识),其他情况下可以不记录STI。指示的STI需记录在时隙状态表中。
节点收到FI消息后的具体处理如下:
一是节点根据FI消息中的反馈信息判断当前发送FI消息的节点对所述节点维护时隙的反馈是否为正反馈。如果是正反馈,则继续监听本节点维护的信道,并保持时隙状态表本节点维护时隙对应的信息不变,依据根据FI消息更新时隙状态表中其它时隙对应的信息;否则确定信道维护失败,可以根据自身状态的变化更新时隙状态表中本节点维护时隙对应的信息,以及根据收到的FI消息更新时隙状态表中其它时隙对应的信息,并依据更新后的时隙状态表中的信息重新选择接入时隙,或者,节点清空时隙状态表,并继续监听信道。
二是依据FI消息查看发送FI消息的节点所维护的时隙的状态,即当前时隙对应的状态指示信息:其时隙占用状态指示必然为被发送FI消息的节点自己占用,接收FI消息的节点结合之前维护的此时隙的内部状态,对内部状态进行更新。根据之前维护的内部状态的不同,该时隙的内部状态可能维护或更新为被一跳节点占用,还可能有发生碰撞,同时更新STI内容。
三是依据FI消息查看此FI消息中对于除以上两个节点以外的其他时隙的状态指示:此时其他节点可能指示为空闲、被发送节点的1跳邻节点占用、被发送节点的2跳邻节点占用、此时隙发生碰撞这四种状态中的任何一个,接收FI消息的节点结合之前维护的此时隙的内部状态,更新内部状态。根据之前维护的内部状态的不同(被本节点的一跳节点占用或者被本节点的两跳节点占用或者被本节点的三跳节点占用或者空闲时隙或者发生碰撞五种状态),该时隙的内部状态可能更新为更新前五种状态中的任意一种,同时更新STI内容。
节点在本节点发送时隙,用时隙状态表中每个时隙的信息生成对应的FI消息中的时隙占用信息。不需要如现有技术处理(N-1)×N的时隙状态表,明显提高处理效率,减少节点的运算量。
节点发送FI消息后清空时隙状态表中指定时隙对应的信息。其中,所述指定时隙为:非本节点占用的时隙;或除当前FI消息的发送时隙外的其它所有时隙。
节点在当前时隙未收到FI消息时,不对时隙状态表进行处理。
参见图6所示,为本发明实施例提供的FI消息的传输方法的具体流程,包括:
步骤201:节点接收FI消息。
步骤202:节点根据FI消息中的反馈信息判断当前发送FI消息的节点对自己维护时隙的反馈是正反馈还是负反馈,若是正反馈,则继续步骤203,否则继续步骤204。
步骤203:节点继续维护信道。
步骤204:节点重新开始监听信道或者重新进行时隙的选择。
步骤205:节点根据FI消息中的信息更新时隙状态表中相应的域。
如果节点再次接收FI消息,即重复步骤201,则继续步骤202-步骤205。
步骤206:节点需要发送FI消息时,依据时隙状态表中当前的内容生成FI消息并发送。
步骤207:节点发送FI消息后清空时隙状态表。
其中,步骤205包括:当反馈信息为正反馈时,保持时隙状态表本节点维护时隙对应的信息不变,依据根据FI消息更新时隙状态表中其它时隙对应的信息;当反馈信息为负反馈时,若采用重新选择接入时隙的方案,则根据自身状态的变化更新时隙状态表中本节点维护时隙对应的信息,以及根据收到的FI消息更新时隙状态表中其它时隙对应的信息,并依据更新后的时隙状态表中的信息重新选择接入时隙;或者,若采用继续监听信道的方案,则清空时隙状态表,并继续监听信道。
下面通过两个例子再次对处理FI消息的过程进行介绍。
例如,参见图7所示,每个节点是一辆汽车。节点B和C稳定存在于簇1中,节点A是一个孤立节点,自成一个簇。节点A加速行驶,与节点B和C所在的簇发生簇合并。时隙占用的示意图参见图8所示,节点A和C均占用时隙2,节点B占用时隙3,时隙1空闲。在节点A靠近节点B和C的过程中,节点A和节点C同时在时隙2上发送FI消息,节点B最多只能正确解析一个FI消息,假如节点B正确解析了节点C发送的FI消息。然后节点B在自己维护的时隙3上广播FI消息。假设节点A收到节点B发送的FI消息。节点A立刻对该FI消息进行处理,解析出自己维护的时隙2对应的信息是节点B对节点C的反馈信息,进而确定自身与节点C发生碰撞,则节点A可以重新开始监听信道或者重新进行时隙的选择。如果采用现有技术,节点A收到节点B给节点C的FI消息时不做处理,等到下一帧自己的维护时隙时,才处理该FI消息,此时节点才能发现自身与节点C发生碰撞,明显晚于本实施例提供的方案,影响节点A与节点B和C的有效通信。
又如,参见图9所示的节点间通信关系的示意图,节点C为稳定节点,所维护的时隙为时隙3。节点D为稳定节点,所维护的时隙为时隙4。节点E为稳定节点,所维护的时隙为时隙5。节点X为稳定节点,所维护的时隙为时隙0。节点Y为稳定节点,所维护的时隙为时隙1。节点A和节点B同时选择在时隙1接入,并发送BC(Basic Channel,基本信道)请求。本实施例中只考虑各个节点对于slot 1的处理流程,FI消息信息中也只考虑对slot 1的指示,各节点在时隙0、1、2的状态参见表1所示:
表1
从某一帧时隙0开始考虑,此时节点A和节点B执行的是接入信道的过程,还未进入维护信道的过程,所以不属于本实施例的讨论范围。节点C、D、E中维护的一维时隙状态表中对slot 1的记录分别为空闲、空闲、被二跳节点Y占用;节点X的内部时隙状态表中对slot 1的记录为被一跳节点Y占用;且slot 0是节点X维护的时隙,节点X在此时隙发送FI消息,FI消息中对slot 1的指示为“被1跳邻节点占用”且占用节点的STI为节点Y的STI;slot1是节点Y维护的时隙,即主要节点Y还在维护此时隙,其内部时隙状态表中对slot 1的指示都是“被自己占用”,节点Y是节点X的一跳节点,假定节点Y可以接收到节点X发送的FI消息,节点Y对该FI消息进行处理,首先查看该FI消息中对自己占用的时隙即时隙1的指示,根据上面的假设,节点Y判断此反为反馈,是正反馈,则节点Y继续维护此时隙,同时,节点Y根据此FI消息对内部时隙状态表中的其他时隙做更新。这里不详细说明。
然后到了slot 1,节点A和节点B同时发送FI消息,节点A/B在其FI消息中指示自己需要占用slot 1。
因为节点C是节点A的一跳节点,且假定节点C正确解码了节点A的FI消息,节点C的内部时隙状态表中对slot 1的指示由空闲更新为“被1跳邻节点占用”。
同理节点D是节点B的一跳节点,且假定节点D正确解码了节点B的FI消息,节点D的内部时隙状态表中对slot 1的指示由空闲更新为“被1跳邻节点占用”。
同时,时隙1也是节点Y维护的时隙,节点Y在时隙1发送FI消息,FI消息中指示slot 1被自己占用,当发送完FI消息之后,节点Y将自己维护的内部时隙状态表中除了slot 1外其他所有时隙进行reset,全部设置为空闲。
因为节点X是节点Y的一跳节点,假定节点X正确接收到了节点Y发送的FI消息,节点X自己维护的内部时隙状态表,更新此时隙为节点Y占用
然后到了slot 2,节点A\B\C\D\E\X\Y都没有收到任何FI消息,即内部时隙状态表不做更新。
从以上介绍可以看出,节点A、B、C、D、E、X和Y均维护一维的时隙状态表,并且在未收到FI消息时,可维持时隙状态表中的信息不变。而现有技术的方案是维护多维的时隙状态表,并且在未收到FI消息时,在时隙状态表中相应的位置标记default,不仅多了一项操作,还多占用了存储空间。
以下给出四个具体实施例的详细说明:
实施例一:信道接入过程中一维1*N时隙状态表处理实施例。
网络拓扑如图10所示,节点B接入前,节点E在其它簇和节点C占用时隙相同,在第1帧发生碰撞,假设节点E的FI消息被簇内节点A正确接收。
各时隙的节点发送情况如下面的表2所示:
表2
现有技术与本发明实施例的处理流程分别介绍如下:
现有技术中的MS-ALOHA算法处理流程:
MS-ALOHA算法在接入阶段采用循环覆盖的方式,新一帧中的时隙覆盖N*N时隙状态缓存表内容后,进行最近一帧的内容分析处理。
节点B接入前的N*N时隙状态缓存表状态信息分析如下面的表3所示:
表3
MS-ALOHA算法监听第1帧slot 1~slot 5,如表3中前5行所示,得出节点B待发送的FI消息为:
如果节点B选择第2帧时隙2发送FI消息,则需要等待的时隙数q=1;
节点B发送FI消息前的一个时隙的FI消息如表3中最后一行所示,得出节点B待发送的FI消息更新为:
而采用本发明实施例提供的技术方案,处理流程包括:
本发明实施例中每个时隙都进行一维1*N时隙状态表状态信息的分析,即每次收到FI消息时,都利用新的FI消息与已有的时隙状态表进行对应时隙的时隙状态转换处理,得到更新的时隙状态表。
节点B完成一帧的FI消息监听后,得出的时隙状态表如下:
节点B选择时隙2作为FI消息的发送时隙,则先进行时隙状态表中部分时隙的时隙信息单元资源重新设置,处理q=1的情况:
当采用上述第一种规则时,对时隙状态表进行部分时隙资源重新设置结果为:
然后在新的一帧的slot 1,由于节点D是节点B的2跳邻节点,节点B不能直接接收到节点D发送的FI,节点B在slot 1上未收到任何FI消息,时隙状态表中各信息域不变,则节点B发送FI消息前的时隙状态表为:
可见,本发明实施例提供的该技术方案,能够快速释放时隙1的资源,使得其它节点能尽快接入。
当采用上述第二种规则时,对时隙状态表进行部分时隙资源重新设置结果为:
然后在新的一帧的slot 1,由于节点D是节点B的2跳邻节点,节点B不能直接接收到节点D发送的FI,节点B在slot 1上未收到任何FI消息,时隙状态表中各信息域不变,节点B发送FI消息前的时隙状态表为:
可见,本发明实施例提供的该技术方案,准确的反映了网络中的拓扑和时隙占用信息。
实施例二:信道接入过程中一维1*N时隙状态表处理实施例。
网络拓扑如图10所示,节点B接入前,节点E在其它簇和节点C占用时隙相同,在第1帧发生碰撞,假设节点E的FI消息被簇内节点A正确接收。
各时隙的节点发送情况如上述表2所示。
现有技术与本发明实施例的处理流程分别介绍如下:
现有技术中的MS-ALOHA算法处理流程:
MS-ALOHA算法在接入阶段采用循环覆盖的方式,新一帧中的时隙覆盖N*N时隙状态缓存表内容后,进行最近一帧的内容分析处理。
节点B接入前的N*N时隙状态缓存表状态信息分析如下面的表4所示:
表4
MS-ALOHA算法监听第1帧slot 1~slot 5,如表4中前5行所示,得出节点B待发送的FI消息为:
如果节点B选择时隙4,则需要等待的时隙数q=3;
节点B发送FI消息前的三个时隙如表4中的最后三行所示,得出节点B待发送的FI消息更新为:
而采用本发明实施例提供的技术方案,处理流程包括:
本发明实施例每个时隙都进行一维1*N时隙状态表状态信息分析,即每次收到FI消息时,都利用接收的FI消息的信息域与节点保存的时隙状态表中的时隙信息单元根据时隙映射关系进行时隙状态转换处理,得到更新的时隙状态表。
节点B完成一帧的FI消息监听后,得出的时隙状态表如下:
如果节点B选择时隙4,则先进行时隙状态表中部分时隙的时隙信息单元资源重新设置,处理q=3的情况:
当采用上述第一种规则时,对时隙状态表进行部分时隙资源重新设置后结果为:
然后在新的一帧的slot 1(两跳节点D发送FI消息)、slot 2、slot 3(两跳节点E发送FI消息),节点B不能直接接收到节点D和节点E发送的FI,节点B在slot 1、2、3上未收到任何FI消息,时隙状态表中各时隙信息单元信息不变,则节点B发送FI消息前的时隙状态表为:
可见,本发明实施例提供的该技术方案,快速释放了时隙1的资源,使得其它节点能尽快接入。
当采用上述第二种规则时,对时隙状态表进行部分时隙资源重新设置后结果为:
然后在新的一帧的slot 1(两跳节点D发送FI消息)、slot 2、slot 3(两跳节点E发送FI消息),节点B不能直接接收到节点D和节点E发送的FI,节点B在slot 1、2、3上未收到任何FI消息,时隙状态表中各信息域不变:
可见,本发明实施例提供的该技术方案,准确的反映了网络中的拓扑和时隙占用信息。
实施例三:信道接入过程中时隙状态表处理实施例。
网络拓扑如图11所示,节点B接入前,节点E在其它簇和节点C占用时隙相同,在第1帧发生碰撞,假设节点E的FI消息被簇内节点A正确接收。
节点D在第2帧关机,停止发送FI消息。
各时隙的节点发送情况如下面的表5所示:
表5
现有技术与本发明实施例的处理流程分别介绍如下:
现有技术中的MS-ALOHA算法处理流程:
MS-ALOHA算法在接入阶段采用循环覆盖的方式,新一帧中的时隙覆盖N*N时隙状态缓存表内容后,进行最近一帧的内容分析处理。
节点B接入前的N*N时隙状态缓存表状态信息分析如下面的表6所示:
表6
MS-ALOHA算法监听第1帧slot 1~slot 5,如表6中前5行所示,得出节点B待发送的FI消息为:
如果节点B选择时隙4,则需要等待的时隙数q=3;
节点B发送FI消息前的三个时隙如表6中的最后三行所示,得出节点B待发送的FI消息更新为:
而采用本发明实施例提供的技术方案,处理流程包括:
本发明实施例每个时隙都进行一维1*N时隙状态表状态信息分析,即每次收到FI消息时,都利用接收的FI消息的信息域与节点保存的时隙状态表中的时隙信息单元根据时隙映射关系进行时隙状态转换处理,得到更新的时隙状态表。
节点B完成一帧的FI消息监听后,得出的时隙状态表如下:
如果节点B选择时隙4,则先进行时隙状态表中部分时隙的时隙信息单元资源重新设置,处理q=3的情况:
当采用上述第一种规则时,对时隙状态表进行部分时隙资源重新设置后结果为:
然后在新的slot 1、slot 2、slot 3(两跳节点E发送FI消息)接收到的FI消息进行时隙状态表中各信息域的时隙状态转换处理:
然后在新的一帧的slot 1、slot 2、slot 3(两跳节点E发送FI消息),节点B不能直接接收到2跳邻节点E发送的FI,节点B在slot 1、2、3上未收到任何FI消息,时隙状态表中各时隙信息单元信息不变,则节点B发送FI消息前的时隙状态表为:
可见,本发明实施例提供的该技术方案,快速释放时隙资源,准确反映网络中节点释放资源情况。
当采用上述第二种规则时,对时隙状态表进行部分时隙资源重新设置后结果为:
节点B完成一帧的FI消息监听,得出的时隙状态表信息:
监听一帧选择空闲时隙后,状态回退后的节点B的时隙状态表为:
然后在新的一帧的slot 1、slot 2、slot 3(两跳节点E发送FI消息),节点B不能直接接收到2跳邻节点E发送的FI,节点B在slot 1、2、3上未收到任何FI消息,时隙状态表中各时隙信息单元信息不变,则节点B发送FI消息前的时隙状态表为:
得到更新后的时隙状态表,即节点B发送FI消息前的时隙状态表:
可见,本发明实施例提供的该技术方案,由于2跳节点FI消息发送的信息传递必须经过1跳节点中继传输,这部分传输时延,会导致保留两跳节点占用状态不能准确反映网络中的拓扑和时隙占用信息。
实施例四:信道接入过程中一维1*N时隙状态表处理实施例。
网络拓扑如图11所示,节点B接入前,节点E在其它簇刚接入,没有被中继节点A及时将节点E的信息传输,节点B未及时检测节点E已占用该时隙。在等待空闲时隙时,会发现选择的空闲时隙已被占用。
各时隙的节点发送情况如下面的表7所示:
表7
本发明实施例的处理流程包括:
节点B完成一帧的FI消息监听,得出的时隙状态表如下:
如果节点B选择时隙4,则先进行时隙状态表中部分时隙的时隙信息单元资源重新设置,处理q=3的情况:
然后在新的slot 1(1跳邻A发送的FI消息)接收到的FI消息为:
进行时隙状态表中各信息域的时隙状态转换处理,得到更新后的时隙状态表,即节点B发送FI消息前的时隙状态表:
此时,节点B发现已选择的空闲时隙4已被2跳节点E占用,所以重新选择空闲时隙2,准备重新接入。
可见本方案在时隙1就能发现空闲时隙4已被占用,比MS-ALOHA算法在时隙3才能发现空闲时隙4已被占用提早了2时隙;同时,本方案不需再次监听一帧,就可以直接选择空闲时隙重新接入,减少了接入时延。
参见图12,本发明实施例提供的一种帧信息FI消息的传输装置,包括:
时隙状态表更新单元11,用于监听FI消息,利用收到的FI消息更新节点维护的时隙状态表;
时隙选择单元12,用于根据当前节点维护的时隙状态表,选择空闲时隙作为本节点FI消息的发送时隙;
资源重置单元13,用于在时隙选择单元12选择FI消息的发送时隙后,对当前时隙状态表进行部分时隙的资源重新设置;
传输单元14,用于根据当前节点维护的时隙状态表生成FI消息,并传输FI消息。
较佳地,所述时隙状态表,由多个时隙信息单元构成,每个时隙信息单元中的时隙占用状态子单元用于指示帧内的一个时隙的状态。
较佳地,所述时隙状态表更新单元11,具体用于:
使用FI消息中每一时隙的时隙信息域,更新时隙状态表中对应时隙的时隙信息单元。
较佳地,所述时隙状态表更新单元11当根据该FI消息更新时隙状态表中本节点拟发送FI消息的时隙对应的时隙信息域时,具体用于:
当收到的FI消息中对于本节点拟发送FI消息的时隙对应的时隙信息域中的时隙占用状态子域为空闲状态时,继续监听本节点维护的信道,并保持时隙状态表中本节点维护的此时隙对应的时隙信息单元不变;
当收到的FI消息中对于本节点拟发送FI消息的时隙对应的时隙信息域中的时隙占用状态子域不为空闲状态时,根据更新完成后的时隙状态表重新选择发送FI消息的时隙;或者,将清空时隙状态表中所有时隙对应的信息,重新发起接入过程,选择发送FI消息的时隙。
较佳地,所述时隙状态表更新单元11清空时隙状态表中所有时隙对应的信息时,具体用于:
将时隙状态表中所有时隙对应的时隙信息单元中,时隙占用状态子单元都设置为空闲状态,STI子单元和优先级子单元设置为无效。
较佳地,所述传输单元14发送FI消息后,还用于:
清空时隙状态表中指定时隙对应的信息。
较佳地,所述指定时隙为:
非本节点占用的时隙;或
除当前FI消息的发送时隙外的其它所有时隙。
较佳地,所述传输单元14在本节点发送时隙,根据时隙状态表生成FI消息时,具体用于:
在本节点发送时隙,用时隙状态表中每个时隙的时隙信息单元生成的FI消息中对应时隙的时隙信息单元。
较佳地,所述资源重置单元13对当前时隙状态表进行资源重新设置后,还用于:
在等待FI消息的发送时隙到达之前的时隙中接收到的FI消息的每时隙对应的时隙信息域,与节点保存的当前时隙状态表中的每时隙对应的时隙信息单元进行状态转换处理,得到状态转换更新后的时隙状态表。
较佳地,所述传输单元14,具体用于:
当所述状态转换更新后的时隙状态表指示所述选择的FI消息的发送时隙仍然空闲时,传输FI消息,其中包括所述状态转换更新后的时隙状态表中的各时隙的占用状态信息。
较佳地,所述装置还包括:
重新选择接入单元15,用于当所述合并后的时隙状态表指示所述选择的FI消息的发送时隙不继续空闲时,根据所述合并后的时隙状态表,重新选择空闲时隙进行信道接入。
较佳地,所述资源重置单元13,具体用于:
将时隙状态表中需要等待的时隙对应的时隙信息单元所有时隙占用状态子单元状态设置为空闲状态;STI子单元和优先级子单元设置为无效;
将时隙状态表中需要等待的时隙之外的时隙对应的时隙信息单元所有时隙占用状态子单元中的占用状态保留,其他状态设置为空闲状态;非占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效。
较佳地,所述资源重置单元13,具体用于:
对时隙状态表中需要等待的时隙对应的时隙信息单元所有时隙占用状态子单元中的占用状态改为空闲状态,其它状态保持不变;占用状态的时隙信息单元中的STI子单元和优先级子单元设置为无效;
对时隙状态表中需要等待的时隙之外的时隙对应的时隙信息单元的状态信息保持不变;STI子单元和优先级子单元信息保持不变。
综上所述,本发明实施例提出基于一维1*N时隙状态表处理接收其它节点FI消息和发送本节点FI消息的技术方案,在接入过程中监听一帧,选择空闲时隙后,根据本发明规则进行时隙状态表部分时隙的时隙资源重新设置;在等待选择时隙到达前的q时隙内,每时隙都可以判断选择的接入时隙slot p状态是否仍然空闲;当节点发送slot p时隙不再空闲后,立即重新选择空闲时隙重新接入。因此,本发明实施例在信道接入过程中,与MS-ALOHA算法相比,采用一维1*N时隙状态表处理,有以下优点:
采用一维1*N时隙状态表处理,减少了节点接入过程内存使用量;
接入过程中选择空闲时隙后,可在等待选择的slot p之前的q个时隙的中的任一时隙,根据一维1*N时隙状态表处理slot p占用状态,决定是否重新发起空闲选择和重新接入过程,比MS-ALOHA算法提前发现碰撞;
每时隙仅进行一维1*N时隙状态表处理,处理仅是状态判断,MS-ALOHA算法集中在slot p-1进行N*N时隙状态缓存表处理,处理量大,突发处理可能在一个时隙内不能完成,本方案每时隙处理量平稳,可保证在每个时隙内都能根据处理器性能完成处理。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。