在Mesh网络内去除孤立节点的方法转让专利

申请号 : CN201810078048.2

文献号 : CN108391299B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 齐曰霞姜江建

申请人 : 乐鑫信息科技(上海)股份有限公司

摘要 :

本发明涉及一种在Mesh网络内去除孤立节点的方法,包含:S1、所有尚未接入的子节点设备分别将其周围节点的数量通过连接请求的管理帧中的信息元素进行发送;S2、收到连接请求的父节点设备根据提出请求的子节点设备的周围节点的数量信息,确定其为孤立节点;S3、收到连接请求的父节点设备与当前连接的具有最多周围节点数量的子节点设备断开;S4、收到连接请求的父节点设备接受提出请求的子节点设备的连接请求。本发明可去除Mesh网络内的孤立节点,使得原先存在的孤立节点找到对应的父节点连接而加入Mesh网络。

权利要求 :

1.一种在Mesh网络内去除孤立节点的方法,其特征在于,包含以下步骤:S1、在Mesh网络内,所有尚未接入的子节点设备分别将其周围节点的数量通过连接请求的管理帧中的信息元素进行发送;

S2、收到连接请求的父节点设备根据提出请求的子节点设备的周围节点的数量信息,确定其为孤立节点;

S3、收到连接请求的父节点设备与当前连接的具有最多周围节点数量的子节点设备断开;

S4、收到连接请求的父节点设备接受提出请求的子节点设备的连接请求;

所述的S3中,具体包含以下步骤:

S31、收到连接请求的父节点设备向当前连接的所有子节点设备发送询问请求,获取每个子节点设备的周围节点的数量信息;

S32、收到连接请求的父节点设备主动与其中具有最多周围节点数量的子节点设备断开,并向该子节点设备发送断开连接的通知。

2.如权利要求1所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S1中,具体包含以下步骤:S11、所有尚未接入Mesh网络的子节点设备通过扫描分别得到其周围节点的数量信息,并将该数量信息添加至管理帧中的信息元素中;

S12、所有尚未接入Mesh网络的子节点设备发送连接请求,使得连接请求的管理帧中的信息元素所包含的周围节点的数量信息被一并发送。

3.如权利要求2所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S2中,具体包含以下步骤:S21、收到连接请求的父节点设备从提出请求的子节点设备的连接请求的管理帧中的信息元素中提取其周围节点的数量信息;

S22、如该子节点设备的周围节点的数量为1,则确定该子节点设备为孤立节点,继续S3;如该子节点设备的周围节点的数量大于1,则继续S23;

S23、收到连接请求的父节点设备向提出请求的子节点设备发送拒绝连接的回复。

4.如权利要求3所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S2中,在S21之前还包含:S20、收到连接请求的父节点设备检测其自身是否已经达到最大连接数量;如是,继续S21;如否,接受该子节点设备的连接请求后退出。

5.如权利要求4所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S23中,拒绝连接的回复中包含一个reason code,且该reason code被定义为连接已满。

6.如权利要求4所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S32中,断开连接的通知中包含一个reason code,且该reason code被定义为消除孤立节点。

7.如权利要求6所述的在Mesh网络内去除孤立节点的方法,其特征在于,所述的S3中,在S32之后还包含:S33、被断开连接的子节点设备重新选择其他的父节点设备并请求连接。

说明书 :

在Mesh网络内去除孤立节点的方法

技术领域

[0001] 本发明涉及无线通讯网络技术,具体是指在Mesh网络内去除孤立节点的方法。

背景技术

[0002] 当Mesh网络(无线网格网络)内的设备完成初步连接之后,有且仅有一个根节点作为出口设备,用于通过连接路由器访问因特网;该设备作为根节点与其他所有设备连接形成树状结构,即每个设备通过寻找并连接至其父节点而最终连接至根节点,从而构成Mesh网络。
[0003] 其中,由于每个设备所支持的能够连接其他设备的最大连接数量是有限的,因此很有可能导致某些设备因没有可连接的父节点而无法加入Mesh网络,从而成为孤立节点。
[0004] 如图1所示,节点A为整个Mesh网络的根节点,节点B和C找到A节点作为其父节点而加入Mesh网络。叶子节点D、E、F进一步找到节点B作为其父节点而加入Mesh网络,且节点B的最大连接数量为3,当前已满。节点G进一步找到节点C作为其父节点而加入Mesh网络。其中,叶子节点不具有网络扩展能力,即叶子节点不允许被其他节点连接,不能作为其他节点的父节点。所以,对于节点H而言,其仅能找到节点B作为其父节点进行连接,但是由于节点B连接数量已满,从而导致节点H没有可连接的父节点设备而无法加入Mesh网络,从而成为孤立节点设备。
[0005] 因此,如何使得所有设备都能够连接加入Mesh网络,从而去除孤立节点,是目前亟需解决的问题。基于上述,本发明提出一种在Mesh网络内去除孤立节点的方法,从而有效解决现有技术中存在的缺点和限制。

发明内容

[0006] 本发明的目的是提供一种在Mesh网络内去除孤立节点的方法,使得原先存在的孤立节点找到对应的父节点连接而加入Mesh网络。
[0007] 为了实现上述目的,本发明提供一种在Mesh网络内去除孤立节点的方法,包含以下步骤:
[0008] S1、在Mesh网络内,所有尚未接入的子节点设备分别将其周围节点的数量通过连接请求的管理帧中的信息元素进行发送;
[0009] S2、收到连接请求的父节点设备根据提出请求的子节点设备的周围节点的数量信息,确定其为孤立节点;
[0010] S3、收到连接请求的父节点设备与当前连接的具有最多周围节点数量的子节点设备断开;
[0011] S4、收到连接请求的父节点设备接受提出请求的子节点设备的连接请求。
[0012] 所述的S1中,具体包含以下步骤:
[0013] S11、所有尚未接入Mesh网络的子节点设备通过扫描分别得到其周围节点的数量信息,并将该数量信息添加至管理帧中的信息元素中;
[0014] S12、所有尚未接入Mesh网络的子节点设备发送连接请求,使得连接请求的管理帧中的信息元素所包含的周围节点的数量信息被一并发送。
[0015] 所述的S2中,具体包含以下步骤:
[0016] S21、收到连接请求的父节点设备从提出请求的子节点设备的连接请求的管理帧中的信息元素中提取其周围节点的数量信息;
[0017] S22、如该子节点设备的周围节点的数量为1,则确定该子节点设备为孤立节点,继续S3;如该子节点设备的周围节点的数量大于1,则继续S23;
[0018] S23、收到连接请求的父节点设备向提出请求的子节点设备发送拒绝连接的回复。
[0019] 所述的S2中,在S21之前还包含:S20、收到连接请求的父节点设备检测其自身是否已经达到最大连接数量;如是,继续S21;如否,接受该子节点设备的连接请求后退出。
[0020] 所述的S23中,拒绝连接的回复中包含一个reason code,且该reason code被定义为连接已满。
[0021] 所述的S3中,具体包含以下步骤:
[0022] S31、收到连接请求的父节点设备向当前连接的所有子节点设备发送询问请求,获取每个子节点设备的周围节点的数量信息;
[0023] S32、收到连接请求的父节点设备主动与其中具有最多周围节点数量的子节点设备断开,并向该子节点设备发送断开连接的通知。
[0024] 所述的S32中,断开连接的通知中包含一个reason code,且该reason code被定义为消除孤立节点。
[0025] 所述的S3中,在S32之后还包含:S33、被断开连接的子节点设备重新选择其他的父节点设备并请求连接。
[0026] 综上所述,本发明所提供的在Mesh网络内去除孤立节点的方法,可使得原先存在的孤立节点找到对应的父节点连接而加入Mesh网络。

附图说明

[0027] 图1为现有技术中的Mesh网络中存在孤立节点的结构示意图;
[0028] 图2为本发明中的在Mesh网络内去除孤立节点的方法的流程图;
[0029] 图3为本发明中的在Mesh网络内去除孤立节点的方法的一个具体实施例的示意图。

具体实施方式

[0030] 以下结合图2~图3,通过优选实施例对本发明的技术内容、构造特征、所达成目的及功效予以详细说明。
[0031] 如图2所示,为本发明所提供的在Mesh网络内去除孤立节点的方法,包含以下步骤:
[0032] S1、在Mesh网络内,所有尚未接入的子节点设备分别将其周围节点的数量通过连接请求(Associate Request)的管理帧中的信息元素进行发送;
[0033] S2、收到连接请求的父节点设备根据提出请求的子节点设备的周围节点的数量信息,确定其为孤立节点;
[0034] S3、收到连接请求的父节点设备与当前连接的具有最多周围节点数量的子节点设备断开;
[0035] S4、收到连接请求的父节点设备接受提出请求的子节点设备的连接请求。
[0036] 所述的S1中,具体包含以下步骤:
[0037] S11、所有尚未接入Mesh网络的子节点设备通过扫描分别得到其周围节点的数量信息,并将该数量信息添加至管理帧中的信息元素(IE)中;
[0038] S12、所有尚未接入Mesh网络的子节点设备发送连接请求,使得连接请求的管理帧中的信息元素所包含的周围节点的数量信息被一并发送。
[0039] 所述的S2中,具体包含以下步骤:
[0040] S21、收到连接请求的父节点设备从提出请求的子节点设备的连接请求的管理帧中的信息元素中提取其周围节点的数量信息;
[0041] S22、如该子节点设备的周围节点的数量为1,则确定该子节点设备周围没有其他父节点设备可以选择,为孤立节点,继续S3;如该子节点设备的周围节点的数量大于1,则确定该子节点设备周围还存在其他可连接的父节点设备,继续S23;
[0042] S23、收到连接请求的父节点设备向提出请求的子节点设备发送拒绝连接的回复。
[0043] 所述的S2中,在S21之前还包含:S20、收到连接请求的父节点设备检测其自身是否已经达到最大连接数量;如是,继续S21;如否,接受该子节点设备的连接请求后退出。
[0044] 所述的S23中,拒绝连接的回复中包含一个reason code(理由代码),且该reason code被定义为连接已满。
[0045] 所述的S3中,具体包含以下步骤:
[0046] S31、收到连接请求的父节点设备向当前连接的所有子节点设备发送询问请求,获取每个子节点设备的周围节点的数量信息;
[0047] S32、收到连接请求的父节点设备主动与其中具有最多周围节点数量的子节点设备断开,并向该子节点设备发送断开连接的通知。
[0048] 所述的S32中,断开连接的通知中包含一个reason code(理由代码),且该reason code被定义为消除孤立节点。
[0049] 所述的S3中,在S32之后还包含:S33、被断开连接的子节点设备重新选择其他的父节点设备并请求连接。
[0050] 如图1和图3所示,为本发明中的在Mesh网络内去除孤立节点的方法的一个具体实施例,通过运用本发明方法可消除图1中无法加入Mesh网络的孤立节点H。
[0051] 具体为:节点H通过扫描得到其周围节点的数量信息为1,并将该数量信息添加至管理帧中的信息元素中,最终通过请求连接发送。节点B收到节点H的连接请求后发现,节点H除了自己之外,并没有其他可选择的父节点,因此为孤立节点。于是节点B向已经连接的节点D、E、F发出询问请求,要求回复各自的周围节点的数量,其中,节点F回复有2个,而节点D和E均回复有1个,基于此,节点B与节点F断开连接,并接受节点H的连接请求。而节点F重新找到另外与一个可选择的父节点C并请求与其连接。
[0052] 综上所述,本发明所提供的在Mesh网络内去除孤立节点的方法,可使得原先存在的孤立节点找到对应的父节点连接而加入Mesh网络。
[0053] 尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。