基于中心节点控制的快速组网方法转让专利

申请号 : CN201710278454.9

文献号 : CN107070764B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张冰罗佳韵张奭罗盛张昊于欣

申请人 : 西安电子科技大学

摘要 :

本发明公开了一种基于中心节点控制的快速组网方法,主要解决在特定场景下采用现有组网方法碰撞概率较大的问题。其实现方案是:1)中心节点用待入网节点组成待入网节点集合H;2)中心节点将信道划分为信标周期,并在信标周期开始时刻发送包含节点标识的信标帧;3)待入网节点匹配信标帧中的节点标识后发送入网请求;4)中心节点接收入网请求后更新待入网节点集合H;5)在待入网集合H中没有节点时结束快速组网。本发明可在特定场景下避免待入网节点的碰撞概率,提高组网效率,可应用于各种采用CSMA机制进行组网并属于星型拓扑的局域网和接入网。

权利要求 :

1.一种基于中心节点控制的快速组网方法,包括:

(1)中心节点将N个待入网节点所对应的未响应次数置为0,并用N个待入网节点组成待入网节点集合H,即H中的待入网节点数X=N;

(2)中心节点将信道划分为连续不重叠的信标周期,每个信标周期包括三个时段:信标时段,用于中心节点发送信标帧;

接入时段,由若干接入时隙组成,用于中心节点和待入网节点发送入网报文;

数据时段,用于其他用途的数据传输;

(3)中心节点在信标周期开始时刻从H中选择M个节点组成入网节点集合G,并指定G中M个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数分别为:P1,P2,…,Pi,…,PM,其中i=1,2,…,M,P1≠P2≠…≠Pi≠…≠PM,P1,P2,…,Pi,…,PM≥0,0<M≤X;

(4)中心节点在信标时段以广播的形式将信标帧发送给H中的待入网节点,其中信标帧包含了G中M个待入网节点的节点标识及其对应的需等待的接入时隙数;

(5)待入网节点收到信标帧后,将自身节点标识与信标帧中指定的M个节点标识进行匹配:若有相同的节点标识,则将该节点的退避计数器设置为中心节点在信标帧中为该节点指定的需等待的接入时隙数,执行步骤(6);

若没有相同的节点标识,则放弃在本信标周期内发送报文,并等待下一个信标帧;

(6)待入网节点判断退避计数器的大小:

如果退避计数器为0,则在接入时段中第一个接入时隙的开始时刻向中心节点发送入网请求报文;

如果退避计数器不为0,则在接入时段中每个接入时隙的开始时刻侦听信道状态:若信道状态为忙,则停止退避,放弃在本信标周期内发送报文,并等待下一个信标帧;

若信道状态为空闲,则将退避计数器减1,当退避计数器减为0时,在下一个接入时隙的开始时刻向中心节点发送入网请求报文;

(7)中心节点在接入时段等待G中待入网节点的入网请求报文:若在接入时段收到入网请求报文,则将对应待入网节点标记为入网;

若在接入时段没有收到入网请求报文,则更新G中待入网节点的未响应次数,并等待信标周期结束;

(8)中心节点在信标周期结束时刻,将G中未响应次数超过最大值的节点及被标记为入网的节点从H中移除,同时更新待入网节点集合H中的待入网节点数X;

(9)中心节点判断H中是否还有待入网节点:若有,则重复步骤(3)到步骤(8);若没有,则结束快速组网。

2.根据权利要求1所述的方法,其中步骤(7)中更新G中每个节点的未响应次数,是指中心节点在接入时段没有收到入网请求报文时,将G中每个节点的未响应次数加1。

说明书 :

基于中心节点控制的快速组网方法

技术领域

[0001] 本发明属于通信技术领域,涉及一种快速组网方法,可应用于各种采用CSMA机制进行组网并属于星型拓扑的局域网和接入网领域。

背景技术

[0002] 在星型网络中,由一个中心节点和多个从属节点构成一个网络。在中心节点的控制下,多个从属节点要求入网,中心节点通常指定一个包含若干时隙的接入时段,供从属节点随机竞争接入并发送入网请求报文。在已有的组网方案中,从属节点通常采用二进制指数退避的方式竞争入网。
[0003] 在二进制指数退避方式中,从属节点每次参与竞争时,从退避窗口[0,CW-1]中随机选择一个值作为退避时隙数,当退避完成时向中心节点发送入网请求报文。其中CW根据已发生碰撞的次数K、最小退避指数Kmin和最大退避指数Kmax取值,当K≤Kmin时,当Kmin<K<Kmax时,CW=2K;当K≥Kmax时, 当K大于最大冲突分解次数NA时,该节点放弃竞争入网,NA>Kmax。其中Kmin、Kmax和NA采用固定值,与当前参与竞争接入的节点数无关。
[0004] 在上述二进制指数退避方式中,由于Kmin取值固定且通常情况下Kmin取值较小,在从属节点数目较多的情况下,尤其是当多个从属节点同时上电或发生断电等故障后重新上电时,大量从属节点首次参与竞争时在退避窗口[0,CWmin-1]中随机选择一个值作为退避时隙数,此时会由于CWmin取值较小而导致多个节点的退避时隙数相同,从而引发大量冲突和重传,直到CW开始增大,才能减小发生冲突的概率,此时大量的冲突和重传可能导致整个网络的组网效率很低,甚至组网失败。

发明内容

[0005] 本发明的目的在于针对上述现有技术的不足,提出一种基于中心节点控制的快速组网方法,以避免从属节点在入网过程中产生冲突,从而提高整个网络的组网效率。
[0006] 为实现上述目的,本发明的技术方案包括如下步骤:
[0007] (1)中心节点将N个待入网节点所对应的未响应次数置为0,并用N个待入网节点组成待入网节点集合H,即H中的待入网节点数X=N;
[0008] (2)中心节点将信道划分为连续不重叠的信标周期,每个信标周期包括三个时段:
[0009] 信标时段,用于中心节点发送信标帧;
[0010] 接入时段,由若干接入时隙组成,用于中心节点和待入网节点发送入网报文;
[0011] 数据时段,用于其他用途的数据传输;
[0012] (3)中心节点在信标周期开始时刻从H中选择M个节点组成入网节点集合G,并指定G中M个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数分别为:P1,P2,…,Pi,…,PM,其中i=1,2,…,M,P1≠P2≠…≠Pi≠…≠PM,P1,P2,…,Pi,…,PM≥0,0<M≤X;
[0013] (4)中心节点在信标时段以广播的形式将信标帧发送给H中的待入网节点,其中信标帧包含了G中M个待入网节点的节点标识及其对应的需等待的接入时隙数;
[0014] (5)待入网节点收到信标帧后,将自身节点标识与信标帧中指定的M个节点标识进行匹配:
[0015] 若有相同的节点标识,则将该节点的退避计数器设置为中心节点在信标帧中为该节点指定的需等待的接入时隙数,执行步骤(6);
[0016] 若没有相同的节点标识,则放弃在本信标周期内发送报文,并等待下一个信标帧;
[0017] (6)待入网节点判断退避计数器的大小:
[0018] 如果退避计数器为0,则在接入时段中第一个接入时隙的开始时刻向中心节点发送入网请求报文;
[0019] 如果退避计数器不为0,则在接入时段中每个接入时隙的开始时刻侦听信道状态:
[0020] 若信道状态为忙,则停止退避,放弃在本信标周期内发送报文,并等待下一个信标帧;
[0021] 若信道状态为空闲,则将退避计数器减1,当退避计数器减为0时,在下一个接入时隙的开始时刻向中心节点发送入网请求报文;
[0022] (7)中心节点在接入时段等待G中待入网节点的入网请求报文:
[0023] 若在接入时段收到入网请求报文,则将对应待入网节点标记为入网;
[0024] 若在接入时段没有收到入网请求报文,则更新G中待入网节点的未响应次数,并等待信标周期结束;
[0025] (8)中心节点在信标周期结束时刻,将G中未响应次数超过最大值的节点及被标记为入网的节点从H中移除,同时更新待入网节点集合H中的待入网节点数X;
[0026] (9)中心节点判断H中是否还有待入网节点:若有,则重复步骤(3)到步骤(8);若没有,则结束快速组网。
[0027] 本发明与现有技术相比有如下优点:
[0028] 1、本发明充分利用中心节点所掌握的组网节点规模、组网名单等参数,由中心节点指定待入网节点接入信道的时机和顺序,避免了组网过程中发生冲突,从而提高组网效率。
[0029] 2、本发明依据网络中的待入网节点数动态调整待入网节点需等待的接入时隙数,使组网过程更加灵活可控。

附图说明

[0030] 图1是本发明的实现流程图;
[0031] 图2是本发明中节点入网的第一实施例示意图;
[0032] 图3时本发明中节点入网的第二实施例示意图。

具体实施方式

[0033] 本发明利用中心节点所掌握的组网节点规模、组网节点名单等参数,由中心节点在组网时发布组网方案和组网参数,控制或指定各从属节点接入信道的时机和顺序,引导其有序接入。实际上,在进行网络规划时,中心节点可以掌握组网节点规模、组网节点名单等参数,在断电重启后,中心节点也通常保存着断电前的组网信息如节点数、节点硬件地址或节点逻辑标识等信息,这些信息可以在组网或重新组网时使用,从而可大大提高组网效率。
[0034] 实施例一,
[0035] 参照图1,本实例的实现步骤如下:
[0036] 步骤1,中心节点组成待入网节点集合H。
[0037] 中心节点将10个待入网节点所对应的未响应次数置为0,并用10个待入网节点组成待入网节点集合H,即H中的待入网节点数X=10。
[0038] 步骤2,中心节点规划信道。
[0039] 中心节点将信道划分为连续不重叠的信标周期,每个信标周期包括信标、接入和数据三个时段,其中:
[0040] 信标时段,用于中心节点发送信标帧;
[0041] 接入时段,由若干接入时隙组成,用于中心节点和待入网节点发送入网报文;
[0042] 数据时段,用于其他用途的数据传输。
[0043] 步骤3,中心节点根据待入网节点集合H中的待入网节点数X组成入网节点集合G。
[0044] 中心节点在信标周期开始时刻判断H中的待入网节点数X:
[0045] 若X≥4,则从H中选择4个节点组成入网节点集合G,并指定G中4个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数分别为:0,1,2,3;
[0046] 若X=3,则将H中的3个节点组成入网节点集合G,并指定G中3个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数分别为:0,1,2;
[0047] 若X=2,则将H中的2个节点组成入网节点集合G,并指定G中2个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数分别为:0,1;
[0048] 若X=1,则将H中的1个节点组成入网节点集合G,并指定G中1个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数为0。
[0049] 步骤4,中心节点在信标时段发送信标帧。
[0050] 中心节点在信标时段以广播的形式将信标帧发送给H中的待入网节点,其中信标帧包含了G中待入网节点的节点标识及其对应的需等待的接入时隙数。
[0051] 步骤5,待入网节点匹配节点标识。
[0052] 待入网节点收到信标帧后,将自身节点标识与信标帧中指定的节点标识进行匹配:
[0053] 若有相同的节点标识,则将该节点的退避计数器设置为中心节点在信标帧中为该节点指定的需等待的接入时隙数,执行步骤6;
[0054] 若没有相同的节点标识,则放弃在本信标周期内发送报文,并等待下一个信标帧。
[0055] 步骤6,待入网节点根据退避计数器是否为0发送入网请求报文。
[0056] 参照图2,本步骤的具体实现如下:
[0057] 待入网节点判断退避计数器的大小:
[0058] 如果退避计数器为0,则在接入时段中第一个接入时隙的开始时刻向中心节点发送入网请求报文;
[0059] 如果退避计数器不为0,则在接入时段中每个接入时隙的开始时刻侦听信道状态:
[0060] 若信道状态为忙,则停止退避,放弃在本信标周期内发送报文,并等待下一个信标帧;
[0061] 若信道状态为空闲,则将退避计数器减1,当退避计数器减为0时,在下一个接入时隙的开始时刻向中心节点发送入网请求报文。
[0062] 步骤7,中心节点根据是否收到入网请求报文发送入网请求响应报文。
[0063] 中心节点在接入时段等待入网节点集合G中待入网节点的入网请求报文的收到:
[0064] 若在接入时段收到入网请求报文,则将对应待入网节点标记为入网;
[0065] 若在接入时段没有收到入网请求报文,则将G中每个节点的未响应次数加1,并等待信标周期结束。
[0066] 步骤8,中心节点更新待入网节点集合H。
[0067] 中心节点在信标周期结束时刻,将G中未响应次数超过最大值的节点及被标记为入网的节点从H中移除,同时更新待入网节点集合H中的待入网节点数X。
[0068] 步骤9,中心节点做出是否结束快速组网的判断。
[0069] 中心节点判断待入网节点集合H中的待入网节点数X是否为0:若不为0,则重复步骤3到步骤8;若为0,则结束快速组网。
[0070] 实施例二
[0071] 参照图1,本实例的实现步骤如下:
[0072] 步骤一,中心节点组成待入网节点集合H。
[0073] 中心节点将8个待入网节点所对应的未响应次数置为0,并用8个待入网节点组成待入网节点集合H,即H中的待入网节点数X=8。
[0074] 步骤二,中心节点规划信道。
[0075] 中心节点将信道划分为连续不重叠的信标周期,每个信标周期包括信标、接入和数据三个时段,其中:
[0076] 信标时段,用于中心节点发送信标帧;
[0077] 接入时段,由若干接入时隙组成,用于中心节点和待入网节点发送入网报文;
[0078] 数据时段,用于其他用途的数据传输。
[0079] 步骤三,中心节点组成入网节点集合G。
[0080] 中心节点在信标周期从H中选择1个节点组成入网节点集合G,并指定G中1个待入网节点在接入时段内发送入网请求报文前需等待的接入时隙数为0。
[0081] 步骤四,中心节点在信标时段发送信标帧。
[0082] 中心节点在信标时段以广播的形式将信标帧发送给H中的待入网节点,其中信标帧包含了G中待入网节点的节点标识及其对应的需等待的接入时隙数。
[0083] 步骤五,待入网节点匹配节点标识。
[0084] 参照图3,本步骤的具体实现如下:
[0085] 待入网节点收到信标帧后,将自身节点标识与信标帧中指定的节点标识进行匹配:
[0086] 若节点标识相同,则将该节点的退避计数器设置为中心节点在信标帧中为该节点指定的需等待的接入时隙数,即设置退避计数器为0,并在接入时段中第一个接入时隙的开始时刻向中心节点发送入网请求报文;
[0087] 若节点标识不相同,则放弃在本信标周期内发送报文,并等待下一个信标帧。
[0088] 步骤六,中心节点根据是否收到入网请求报文发送入网请求响应报文。
[0089] 中心节点在接入时段等待入网节点集合G中待入网节点的入网请求报文的收到:
[0090] 若在接入时段收到入网请求报文,则将对应待入网节点标记为入网;
[0091] 若在接入时段没有收到入网请求报文,则将G中待入网节点的未响应次数加1,并等待信标周期结束。
[0092] 步骤七,中心节点更新待入网节点集合H。
[0093] 中心节点在信标周期结束时刻,将G中未响应次数超过最大值的节点及被标记为入网的节点从H中移除,同时更新待入网节点集合H中的待入网节点数X。
[0094] 步骤八,中心节点做出是否结束快速组网的判断。
[0095] 中心节点判断待入网节点集合H中的待入网节点数X是否为0:若不为0,则重复步骤三到步骤七;若为0,则结束快速组网。