[发明专利]一种基于节点特征推举主节点的方法有效
申请号: | 201810983227.0 | 申请日: | 2018-08-27 |
公开(公告)号: | CN109040290B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 钟嘉杰;范渊;吴永越;郑学新;刘韬 | 申请(专利权)人: | 成都安恒信息技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/24 |
代理公司: | 成都君合集专利代理事务所(普通合伙) 51228 | 代理人: | 张鸣洁 |
地址: | 610000 四川省成都市高新区*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 节点 特征 推举 方法 | ||
1.一种基于节点特征推举主节点的方法,其特征在于:新加入集群的节点广播“更新节点”的报文A,使集群中其他节点更新自身的节点列表;集群中的节点广播“查找主节点”的报文B和“设置主节点”的报文C推举设置本节点的主节点;具体包括以下步骤:
步骤F1:新加入集群的节点随机生成ID,并维护一份本节点的节点列表;
步骤F2:新加入集群的节点在集群中广播“更新节点”的报文A,并将该新节点的ID放置在报文A中;
步骤F3:集群中的节点收到报文A时,检查自身的节点列表的信息;
步骤F4:更新集群中所有节点所维护的节点列表;
步骤F5:集群中某个从节点的节点列表中若不存在主节点或主节点不存活时,该从节点向集群中广播“查找主节点”的报文B,并收集其他节点的节点列表;若存在存活的主节点时,则不进行广播;
步骤F6:该从节点将收集到的节点列表合并,并选出其中的主节点设置为自身的主节点,然后广播“设置主节点”的报文C;
步骤F7:集群中的节点接收到报文C后,将报文C中的主节点设置为自身的主节点;
所述步骤F3具体包括以下步骤:
步骤F31:集群中的节点收到报文A时,检查自身的节点列表中是否已存在发送报文A的节点的ID;
步骤F32:若存在,则不做任何更新或更改;若不存在,则在自身的节点列表中接入发送报文A的节点的ID;
步骤F33:该节点将发送报文A的节点的权重值设置为零;
步骤F34:该节点再将自身的ID传送给发送报文A的节点;
所述步骤F5具体包括以下步骤:
步骤F51:集群中某个从节点通过检查自身的节点列表,查找是否存在角色为主节点的节点;
步骤F52:若存在主节点,但该主节点不存活时,从节点将该不存活的主节点的权重值提高,并清除该主节点的角色,从节点向集群中广播报文B;
若不存在主节点时,从节点向集群中广播报文B;
若存在存活的主节点,则结束工作;
所述步骤F6具体包括以下步骤:
步骤F61:集群中的节点接收到报文B后,首先检查自身的节点列表中是否存在存活的主节点;
步骤F62:若存在存活的主节点,则该节点将自身的节点列表传送给广播报文B的从节点;若存在不存活的主节点,则在自身的节点列表中将该主节点的角色清除,并将自身的节点列表传送给广播报文B的从节点;若不存在主节点,则将自身的节点列表传送给广播报文B的从节点;
步骤F63:广播报文B的从节点接收到其他节点传送的节点列表后,将自身的节点列表和其他节点的节点列表合并,合并后将节点列表中的节点的权重值相加、角色合并;
步骤F64:若合并后的节点列表中不存在角色为主节点的节点,则在权重值较低的节点中随机选出一个节点作为该从节点的主节点;
若合并后的节点列表中仅存在一个角色为主节点的节点,则选取该节点作为该从节点的主节点;
若合并后的节点列表中存在多个角色为主节点的节点,则在这些主节点中随机选出一个权重值较低的节点作为该从节点的主节点;
步骤F65:该从节点设置好主节点后,向集群中广播报文C。
2.根据权利要求1所述的一种基于节点特征推举主节点的方法,其特征在于:所述步骤F7具体包括以下步骤:
步骤F71:集群中的节点接收到报文C时,清空自身节点列表中主节点的角色;
步骤F72:在自身的节点列表中,将步骤F64中的选出的主节点设置为本节点的主节点。
3.根据权利要求1-2任一项所述的一种基于节点特征推举主节点的方法,其特征在于:集群中任意节点通过自身的节点列表来判断自己是否是主节点。
4.根据权利要求3所述的一种基于节点特征推举主节点的方法,其特征在于:任意节点的所述节点列表包括自身节点和集群中其他节点的ID、权重值以及角色。
5.根据权利要求4所述的一种基于节点特征推举主节点的方法,其特征在于:所述权重值用于评估节点的可靠性,权重值越高,则该节点越不可靠。
6.根据权利要求5所述的一种基于节点特征推举主节点的方法,其特征在于:所述角色用于描述该节点在集群中的角色,主节点的角色值为“主节点”,从节点的角色值为“空”。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都安恒信息技术有限公司,未经成都安恒信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810983227.0/1.html,转载请声明来源钻瓜专利网。