发明内容
本发明实施例提供一种时隙和信道的分配方法及无线传感器网络,能够在集中式时分多信道模式下更优化的分配信道和时隙资源。
为了解决上述技术问题,本发明实施例的技术方案如下:
一种时隙和信道的分配方法,包括:
簇头确定簇内未进行信道和时隙分配的各通信节点所需要的时隙长度及可用时隙;
在所述未进行信道和时隙分配的各通信节点中选取第一通信节点,所述第一通信节点所需要的时隙与可用时隙之间的较小值满足预置条件;
根据可用信道和时隙,为所述第一通信节点与第二通信节点间的通信分配信道和时隙,其中,所述第二通信节点至少为一个;
分配完成后,判断簇内是否还存在未进行信道和时隙分配的通信节点,若是,则重复上述步骤,直至满足分配终止条件。
进一步,所述第一通信节点所需要的时隙与可用时隙之间的较小值满足预置条件,具体为:
在所述未进行信道和时隙分配的各通信节点中,所述第一通信节点所需要的时隙和可用时隙之间的较小值最大。
进一步,所述根据可用信道和时隙,为所述第一通信节点与第二通信节点间的通信分配信道和时隙,包括:
若所述第二通信节点至少为两个,则分别确定各所述第二通信节点与所述第一通信节点之外的通信节点间的通信所需要的时隙长度;
根据确定出的时隙长度,由短到长依次为各所述第二通信节点与所述第一通信节点间的通信分配信道和时隙。
进一步,为各所述第二通信节点与所述第一通信节点间的通信所分配的信道为同一信道,且所分配的时隙相互连续。
进一步,所述根据可用信道和时隙,为所述第一通信节点与第二通信节点间的通信分配信道和时隙,具体为:
将为所述第一通信节点与第二通信节点间的通信所分配的时隙,向由信道数和时隙数组成的信道时隙资源表上映射。
进一步,所述分配终止条件为所述可用信道和时隙已全部分配,或者簇内各通信节点均已分配信道和时隙。
一种无线传感器网络,包括:
时隙确定单元,用于簇头确定簇内未进行信道和时隙分配的各通信节点所需要的时隙长度及可用时隙;
节点选择单元,用于在所述未进行信道和时隙分配的各通信节点中选取第一通信节点,所述第一通信节点所需要的时隙与可用时隙之间的较小值满足预置条件;
资源分配单元,用于根据可用信道和时隙,为所述第一通信节点与第二通信节点间的通信分配信道和时隙,其中,所述第二通信节点至少为一个;
判断单元,用于在所述资源分配单元分配完成后,判断簇内是否还存在未进行信道和时隙分配的通信节点,若是,则由所述时隙确定单元、节点选择单元和资源分配单元进行信道和时隙分配,直至满足分配终止条件。
进一步,所述资源分配单元包括:
确定子单元,用于当所述第二通信节点至少为两个时,分别确定各所述第二通信节点与所述第一通信节点之外的通信节点间的通信所需要的时隙长度;
分配子单元,用于根据确定出的时隙长度,由短到长依次为各所述第二通信节点与所述第一通信节点间的通信分配信道和时隙。
进一步,所述分配子单元为各所述第二通信节点与所述第一通信节点间的通信所分配的信道为同一信道,且所分配的时隙相互连续。
进一步,所述资源分配单元,具体用于将为所述第一通信节点与第二通信节点间的通信所分配的时隙,向由信道数和时隙数组成的信道时隙资源表上映射。
进一步,所述分配终止条件为所述可用信道和时隙已全部分配,或者簇内各通信节点均已分配信道和时隙。
本发明实施例方法实现了多信道单射频模式下集中式簇头决策的信道时隙联合调度和分配,提高了簇内通信吞吐量。该方法可以适用于簇内节点通信请求动态变化情形,且对节点数目没有限制,具有普适性。
具体实施方式
为了使本领域技术人员能进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,附图仅提供参考与说明,并非用来限制本发明。
下面结合附图和实施例,对本发明的技术方案进行描述。
参见图1,为本发明实施例一种时隙和信道的分配方法流程图。
在本实施例中,该无线传感器网络具有多信道单射频半双工特性,即网络内的节点可以在多个信道下工作,但同一时刻只能占用一个信道,且不能同时收发数据。该无线传感器网络的时隙和信道分配方法可以包括:
步骤101,簇头确定簇内未进行信道和时隙分配的各通信节点所需要的时隙长度及可用时隙。
在进行信道和时隙分配之前,首先由该无线传感器网络的簇头对簇内未分配信道和时隙的各通信节点的通信需求进行收集,确定各通信节点需要的时隙长度,及其可用的时隙。
步骤102,在未进行信道和时隙分配的各通信节点中选取第一通信节点。
根据上一步骤中确定的各通信节点所需的时隙长度及可用时隙,在各通信节点中选取第一通信节点,该第一通信节点所需要的时隙与其可用时隙之间的较小值满足一定的预置条件,其中,预置条件可以是:该第一通信节点所需要的时隙和可用时隙之间的较小值与其它未分配信道和时隙的通信节点相比最大,当然还可以针对该较小值设置其它的条件,此处不再赘述。
步骤103,根据可用信道和时隙,为第一通信节点与第二通信节点间的通信分配信道和时隙。
在确定出第一通信节点后,即可为该第一通信节点与簇内其它通信节点之间的通信分配信道和时隙,其中,与该第一通信节点具有通信需求的节点记为第二通信节点,该第二通信节点至少为一个。具体的,可以根据第一通信节点和第二通信节点各自的可用的信道和时隙,为该第一通信节点与第二通信节点之间的通信分配信道和时隙。
若第二通信节点为多个,则在具体分配时可以针对第一通信节点与各第二通信节点之间的通信依次进行分配,也可以根据一定的顺序原则进行分配,例如,分别确定各第二通信节点与第一通信节点之外的通信节点间的通信所需要的时隙长度;根据确定出的时隙长度,由短到长依次为各第二通信节点与第一通信节点间的通信分配信道和时隙。在分配信道和时隙时,可以先分配信道,然后再根据所需求的时隙长度进行时隙分配。
步骤104,分配完成后,判断簇内是否还存在未进行信道和时隙分配的通信节点,若是,则重复上述步骤,直至满足分配终止条件。
在为第一通信节点与簇内其他通信节点之间的通信分配完成,进一步判断簇内是否还存在未分配的通信节点,若否,则资源(信道和时隙)分配结束,若是,则重复执行步骤101~104,直至满足分配终止条件。
本实施例中,该分配终止条件可以是可用信道和时隙已全部分配,或不足够支持余下的通信需求,或者簇内各通信节点均已分配信道和时隙。
本发明实施例方法实现了多信道单射频模式下集中式簇头决策的信道时隙联合调度和分配,提高了簇内通信吞吐量。该方法可以适用于簇内节点通信请求动态变化情形,且对节点数目没有限制,具有普适性。
参见图2,为本发明实施例另一种时隙和信道的分配方法流程图。
在本实施例中,假定簇头网络结构如图3所示,节点A为该网络中的簇头,节点B、C、D、E、F为该网络中的簇内节点,其中,簇头为负责统一为簇内节点分配时隙和信道的节点。该网络结构中各节点的可用信道的个数均为2,分别为channel 1、channel 2,各节点在每个信道的可用时隙为9个,分别为slot 1~slot 9,即上述节点同一时刻可以在channel 1或channel 2中任意一个信道工作,一个调度周期分为9个时隙可供分配。
本实施例中,时隙和信道的分配方法可以包括:
步骤201,在一个调度周期内,簇头A确定簇内各节点的通信需求。
簇头A根据接收到的通信请求确定各节点的通信需求,该通信请求中包含一个节点向另一节点发送数据所请求的时隙长度。
例如,在一个调度周期内簇头A收集到的簇内节点通信请求如下:
节点A请求5个时隙向节点B发送数据,
节点A请求4个时隙向节点C发送数据,
节点C请求4个时隙向节点D发送数据,
节点D请求4个时隙向节点E发送数据。
则可确定具有通信需求的节点的集合为{A、B、C、D、E},各节点所需求的时隙总长依次为{9,5,8,8,4}。
步骤202,选取第一通信节点。
基于步骤201中确定的通信需求,节点A需求9个时隙,其可用时隙也为9个,取所需时隙长度与可用时隙的较小值即min(所需时隙长度,可用时隙长度),可得节点A对应的较小值为9,节点A的较小值相对于其它节点的较小值都大,因此在本步骤中,节点A即为第一通信节点。
在另一实施例中,若节点A所需要的时隙长度为11个,但节点A可用的时隙长度为7,则min(所需时隙长度,可用时隙)=7;同时,节点B所需的时隙长度为8个,但节点B可用的时隙长度为9,则min(所需时隙长度,可用时隙)=8,由于节点A对应的较小值小于节点B对应的较小值,因此,应该首先选择节点B作为第一通信节点。
步骤203,分别确定各第二通信节点与第一通信节点之外的通信节点间的通信所需要的时隙长度。
与第一通信节点具有通信需求的节点即为第二通信节点,在本步骤中,若节点A为第一通信节点,则与该第一通信节点A具有通信需求的节点为节点B、C,节点B、C记为第二通信节点,其中,节点B与节点A之外的其它节点没有通信需求,而节点C与节点A之外的节点D具有通信需求,且请求4个时隙。
步骤204,根据确定出的时隙长度,由短到长依次为各第二通信节点与第一通信节点间的通信分配信道和时隙。
比较而言,首先为第一通信节点A与第二通信节点B之间的通信分配信道和时隙。在本步骤中,第一通信节点A和第二通信节点B当前可用信道均为channel 1、channel 2,可用时隙均为slot 1~slot 9,第一通信节点A与第二通信节点B之间通信所需的时隙长为5个。在本步骤中可以任选一个信道,如channel 1,作为第一通信节点和第二通信节点使用的信道,然后在可用时隙中任意选取5个时隙,如slot 1~slot 5,分配给第一通信节点A和第二通信节点B。
在具体操作过程中,分配信道和时隙的过程即将每个通信任务所需的时隙数向由信道数M和时隙数N组成的信道时隙资源表上映射。其中,TF_Table_Tr_Node为节点信道和时隙发送记录表格,TF_Table_Re_Node为节点信道和时隙接收记录表格,则映射后,两记录表格为:
TF_Table_Tr_Node 1
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel1 |
A |
A |
A |
A |
A |
|
|
|
|
Channel2 |
|
|
|
|
|
|
|
|
|
TF_Table_Re_Node 1
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel 1 |
B |
B |
B |
B |
B |
|
|
|
|
Channel2 |
|
|
|
|
|
|
|
|
|
其次,为第一通信节点A与第二通信节点C之间的通信分配信道和时隙。第一通信节点A当前可用信道为channel 1和channel 2,可用时隙为slot 6~slot9,第二通信节点C当前可用信道为channel 1和channel 2,可用时隙为slot1~slot 9。第一通信节点A与第二通信节点C之间所需时隙为4个,所以可以选取channel 1作为第一通信节点A和第二通信节点C使用的信道,将时隙slot6~slot 9分配给第一通信节点A和第二通信节点C。映射到信道时隙资源表后,两记录表格更新为:
TF_Table_Tr_Node 2
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel 1 |
A |
A |
A |
A |
A |
A |
A |
A |
A |
Channel2 |
|
|
|
|
|
|
|
|
|
TF_Table_Re_Node 2
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel 1 |
B |
B |
B |
B |
B |
C |
C |
C |
C |
Channel2 |
|
|
|
|
|
|
|
|
|
在本步骤的分配过程中,为各第二通信节点与第一通信节点间的通信所分配的信道尽量为同一信道,且所分配的时隙相互连续,也即该信道分配过程优先选择使分配结果(时隙)尽可能连续的信道。
例如,第一通信节点A与第二通信节点B之间通信所需的时隙长为5个。在本步骤中可以任选一个信道,如channel 1,作为第一通信节点和第二通信节点使用的信道,然后在可用时隙中任意选取5个时隙,如slot 1~slot 5,分配给第一通信节点A和第二通信节点B。优先选择一个信道,例如选择channel1,而不是同时选择channel 1和channel 2,优先选择连续时隙,例如选择slot1~slot 5,1至5是连续的,而不是在slot 1~9中选择分散的5个时隙;
而且,时隙分配过程优先不选择第二通信节点中每个节点的可用时隙的交集。例如,假如节点A可用时隙为slot1~4,节点B可用时隙w为slot1~4,节点C可用时隙为slot4~5。节点A请求3个时隙向节点B发送数据,节点B请求1个时隙向节点C发送数据。对于节点A与节点B的通信过程,优先选择时隙slot1~3进行分配,而不选择时隙slot4,因为节点B与节点C的可用时隙的交集为slot4。如果在节点A与节点B的通信过程中选择了slot4,这将导致后续无法为节点B与节点C之间的通信分配时隙。
步骤205,判断簇内是否还存在未进行信道和时隙分配的通信节点。
若否,则本次调度周期内信道和时隙分配完成,若是,则重复执行步骤201~205,直至将信道和时隙分配至所有具有通信需求的节点。
在本实施例中,在第一通信节点A与第二通信节点C之间的信道和时隙分配完成后,与节点A具有通信请求的节点已经全部进行信道和时隙的分配。然后,重新确定各节点的通信请求,也即:
节点C请求4个时隙向节点D发送数据,
节点D请求4个时隙向节点E发送数据。
可重新确定通信节点的集合为{C、D、E},各节点所需求的时隙总量依次为{4,8,4},其中,各节点的可用时隙,可以根据前述确定的记录表格TF_Table_Tr_Node 2和TF_Table_Re_Node 2来确定,由于信道channel 1的时隙slot1~9均已被节点A占用用于发送数据,所以,节点C、D发送数据时,可用的信道均为channel 2,可用时隙均为slot1~9,由于channel 1的时隙slot1~9均已被节点B、C占用用于接收数据,所以,节点E接收数据时,可用的信道为channel 2,可用时隙为slot1~9。
重复选取该通信请求中min(所需时隙长度,可用时隙长度)最大的通信节点作为第一通信节点,则该第一通信节点即为节点D,其所需时隙数量为8。
与节点D具有通信需求的第二通信节点为节点C和E,由于节点C和节点E与除节点D之外的其它节点已无通信需求,也即无其它时隙需求,因此,可以首先为第一通信节点D与第二通信节点C之间的通信分配信道和时隙,也可以先为第一通信节点D与第二通信节点E之间的通信分配信道和时隙。
以节点C为例,根据节点当前可用信道和时隙,及所需时隙数量,分配信道和时隙。当前,节点D接收数据可用信道为channel 2,可用时隙为slot1~slot 9,节点C发送数据可用信道为channel 2,可用时隙为slot 1~slot 9,两节点通信所需时隙数量为4个,因此,可以将选取channel 2作为节点C和节点D使用的信道,将时隙slot 1~slot 4分配给节点C和节点D。映射到信道时隙资源表后,两记录表格更新为:
TF_Table_Tr_Node 3
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel1 |
A |
A |
A |
A |
A |
A |
A |
A |
A |
Channel2 |
C |
C |
C |
C |
|
|
|
|
|
TF_Table_Re_Node 3
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel1 |
B |
B |
B |
B |
B |
C |
C |
C |
C |
Channel2 |
D |
D |
D |
D |
|
|
|
|
|
然后,再针对节点D与节点E之间的通信请求,根据节点当前可用信道和时隙,及所需时隙数量,分配信道和时隙。当前,节点D发送数据可用信道为channel 2,可用时隙为slot 5~slot 9,节点E接收数据可用信道为channel2,可用时隙为slot 5~slot 9,两节点通信所需时隙数量为4个,因此,可以将选取channel 2作为节点D和节点E使用的信道,将时隙slot 5~slot 8分配给节点D和节点E。映射到信道时隙资源表后,两记录表格更新为:
TF_Table_Tr_Node 4
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel1 |
A |
A |
A |
A |
A |
A |
A |
A |
A |
Channel2 |
C |
C |
C |
C |
D |
D |
D |
D |
|
TF_Table_Re_Node 4
|
Slot1 |
Slot2 |
Slot3 |
Slot4 |
Slot5 |
Slot6 |
Slot7 |
Slot8 |
Slot9 |
Channel1 |
B |
B |
B |
B |
B |
C |
C |
C |
C |
Channel2 |
D |
D |
D |
D |
E |
E |
E |
E |
|
在与节点D具有通信需求的节点全部分配完成后,再次根据信道和时隙分配完成的通信节点,重新确定各节点的通信请求,可知,针对原通信节点集合{A、B、C、D、E}内的所有通信请求,均已经分配信道和时隙。至此,该调度周期内针对各通信节点间的通信请求,簇头节点A均已将信道和资源分配完成。
根据上述实施例方法输出的TF_Table_Tr_Node 4和TF_Table_Re_Node4,簇内的每个节点可以查得具体的信道和时隙分配结果,并在约定的时隙和信道上发送数据给目标节点。从分配结果可以看到,本发明实施例方法支持多个并发通信请求,根据一个调度周期内的各个通信请求时隙长度不相同的特点,有效地利用了时隙和信道资源。
本发明实施例方法实现了多信道单射频模式下集中式簇头决策的信道时隙联合调度和分配,提高了簇内通信吞吐量。该方法可以适用于簇内节点通信请求动态变化情形,且对节点数目没有限制,具有普适性。
以上是对本发明方法实施例的描述,下面对实现上述方法的装置实施例进行介绍。
参见图4,为本发明实施例一种无线传感器网络的结构示意图。
该无线传感器网络可以包括:
时隙确定单元401,用于簇头确定簇内未进行信道和时隙分配的各通信节点所需要的时隙长度及可用时隙。
节点选择单元402,用于在未进行信道和时隙分配的各通信节点中选取第一通信节点,其中,第一通信节点所需要的时隙与可用时隙之间的较小值满足预置条件。
资源分配单元403,用于根据可用信道和时隙,为第一通信节点与第二通信节点间的通信分配信道和时隙,其中,第二通信节点至少为一个。
判断单元404,用于在资源分配单元403分配完成后,判断簇内是否还存在未进行信道和时隙分配的通信节点,若是,则由时隙确定单元401、节点选择单元402和资源分配单元403进行信道和时隙分配,直至满足分配终止条件。其中,分配终止条件可以是可用信道和时隙已全部分配,或者簇内各通信节点均已分配信道和时隙。
时隙确定单元401对簇内未分配信道和时隙的各通信节点的通信需求进行收集,确定各通信节点需要的时隙长度及可用的时隙,节点选择单元402根据确定的各通信节点所需的时隙长度及可用的时隙,在各通信节点中选取第一通信节点,该第一通信节点所需要的时隙与可用时隙之间的较小值满足预置条件,该预置条件具体可以是该第一通信节点所需要的时隙和可用时隙之间的较小值与其它未分配信道和时隙的通信节点相比最大,在确定出第一通信节点后,资源分配单元403根据可用的信道和时隙,为该第一通信节点与簇内其他通信节点之间的通信分配信道和时隙,若第二通信节点为多个,则在具体分配时可以针对第一通信节点与各第二通信节点之间的通信依次进行分配,也可以根据一定的顺序原则进行分配,分配完成后,判断单元404进一步判断簇内是否还存在未分配的通信节点,若否,则资源(信道和时隙)分配结束,若是,则继续由时隙确定单元401、节点选择单元402和资源分配单元403进行信道和时隙分配,直至满足分配终止条件。
本发明实施例通过上述单元实现了多信道单射频模式下集中式簇头决策的信道时隙联合调度和分配,提高了簇内通信吞吐量。该方法可以适用于簇内节点通信请求动态变化情形,且对节点数目没有限制,具有普适性。
参见图5,为本发明实施例另一种无线传感器网络的结构示意图。
该无线传感器网络也可以包括时隙确定单元501、节点选择单元502、资源分配单元503和判断单元504。
其中,时隙确定单元501、节点选择单元502与前述实施例中的时隙确定单元401、节点选择单元402类似,此处不再赘述。
资源分配单元503,具体用于将为第一通信节点与第二通信节点间的通信所分配的时隙,向由信道数和时隙数组成的信道时隙资源表上映射。资源分配单元503还可以包括:
确定子单元5031,用于当第二通信节点至少为两个时,分别确定各第二通信节点与第一通信节点之外的通信节点间的通信所需要的时隙长度。
分配子单元5032,用于根据确定出的时隙长度,由短到长依次为各第二通信节点与第一通信节点间的通信分配信道和时隙。分配子单元5032为各第二通信节点与第一通信节点间的通信所分配的信道为同一信道,且所分配的时隙相互连续。
本发明实施例通过上述单元实现了多信道单射频模式下集中式簇头决策的信道时隙联合调度和分配,提高了簇内通信吞吐量。该方法可以适用于簇内节点通信请求动态变化情形,且对节点数目没有限制,具有普适性。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。