[发明专利]一种基于簇的网络数据通信方法有效
申请号: | 201710196605.6 | 申请日: | 2017-03-29 |
公开(公告)号: | CN106993321B | 公开(公告)日: | 2020-03-24 |
发明(设计)人: | 王晓喃 | 申请(专利权)人: | 常熟理工学院 |
主分类号: | H04W40/10 | 分类号: | H04W40/10;H04W40/12;H04W40/20;H04W40/22;H04W40/24;H04W84/18 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 胡建华 |
地址: | 215500 江苏省苏州市常熟市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种基于簇的网络数据通信方法,所述网络中包含三类节点:孤立节点、簇首节点及簇内节点;所述孤立节点为既没有标记为簇首节点也没有标记为簇内节点的节点;所述簇内节点包括共享节点与普通簇内节点,所述共享节点是两个以上簇的簇内节点,位于两个以上簇首节点的通信范围内,能够同时接收两个以上簇首节点的信标帧,并与两个以上簇首节点实现通信,具有路由转发功能;普通簇内节点只位于一个簇首节点的通信范围内,不执行路由转发操作;所述簇首节点用于实现路由转发功能。 | ||
搜索关键词: | 一种 基于 网络 数据通信 方法 | ||
【主权项】:
一种基于簇的网络数据通信方法,其特征在于,所述网络中包含三类节点:孤立节点、簇首节点及簇内节点;所述孤立节点为既没有标记为簇首节点也没有标记为簇内节点的节点;所述簇内节点包括共享节点与普通簇内节点,所述共享节点是两个以上簇的簇内节点,位于两个以上簇首节点的通信范围内,能够同时接收两个以上簇首节点的信标帧,并与两个以上簇首节点实现通信,具有路由转发功能;普通簇内节点只位于一个簇首节点的通信范围内,不执行路由转发操作;所述簇首节点用于实现路由转发功能;一个簇包括一个簇首节点和一个以上的簇内节点,簇内节点在簇首节点的一跳范围内,所述网络由一个以上的簇组成;簇由簇ID唯一标识,簇ID的值为该簇簇首节点所在的地理坐标;孤立节点、簇首节点及簇内节点具有一个节点ID,该节点ID具有网络唯一性,在生命周期中保持不变;初始状态下,所有节点均设为孤立节点且具有唯一性的节点ID,每个节点保存一个邻居表,邻居表项包括三个域:节点ID,节点的能量以及生命周期;网络中的节点由单播地址唯一标识,节点的单播地址包括三个部分:地理坐标域、节点类型域和节点ID域;节点类型域值如下所示:节点类型节点类型域值孤立节点0簇首节点1簇内节点2网络中的节点在一跳范围内定期广播信标消息,消息源地址为节点的单播地址,消息负载为当前的能量;共享节点广播的信标消息还包括它所属簇的簇ID;节点通过接收邻居节点的信标消息来建立邻居表;孤立节点收到任意一个邻居节点N发送的信标消息后,如果孤立节点的邻居表中没有节点ID值为节点N的节点ID值的表项,那么孤立节点创建一个邻居表项,该邻居表项的节点ID为节点N的节点ID,节点的能量值为信标负载中的能量值,生命周期设置为最大值;否则,孤立节点用接收到的信标消息中的能量值更新该表项中的能量域值,同时将生命周期设置为最大值;如果一个邻居表项的生命周期衰减为0,那么从邻居表中删除该邻居表项;网络中的消息结构由四部分构成:目的地址、源地址、消息类型值和负载;消息类型值如下所示:消息类型消息类型值数据产生消息1数据产生响应消息2注册消息3数据请求消息4数据响应消息5请求数据产生消息6请求数据产生响应消息7加入簇请求消息8加入簇响应消息9加入簇确认消息10簇ID消息11孤立节点建立邻居表后,如果它的邻居节点包含簇首节点,则将节点ID值最小的邻居簇首节点作为自己的簇首节点,同时记录该簇的簇ID以及该簇首节点的节点ID;如果孤立节点满足条件1或者条件2时,则通过下述过程建立簇;条件1:孤立节点的当前能量值大于其他邻居孤立节点的当前能量值;条件2:孤立节点的当前能量值不小于其他邻居孤立节点的当前能量值,同时孤立节点的节点ID小于与孤立节点具有相同能量值的邻居节点的节点ID;步骤101:开始;步骤102:孤立节点在一跳范围内广播加入簇请求消息,簇请求消息源地址为孤立节点自己的单播地址,目的地址为广播地址,即地址的所有比特值均为1,消息类型为8,消息负载为孤立节点自己的能量值;步骤103:在规定时间内,判断邻居孤立节点是否收到两个以上孤立节点发送的加入簇请求消息,如果是,进行步骤104,否则进行步骤105;步骤104:对于每个接收到的加入簇请求消息,邻居孤立节点判断自己的能量值是否为不大于消息负载中的能量值,如果是,则返回一个加入簇响应消息,加入簇响应消息的目的地址为接收到的加入簇请求消息的源地址,源地址为邻居孤立节点自己的单播地址,消息类型为9,消息负载为空,否则,丢弃接收到的加入簇请求消息,进行步骤106;步骤105:邻居孤立节点判断自己的能量值是否为不大于接收到的加入簇请求消息负载中的能量值,如果是,则返回一个加入簇响应消息,加入簇响应消息的目的地址为接收到的加入簇请求消息的源地址,源地址为邻居孤立节点自己的单播地址,消息类型为9,消息负载为空,否则,丢弃接收到的加入簇请求消息;步骤106:在规定时间内,孤立节点判断收到的加入簇响应消息的数量是否等于或者大于其邻居表中邻居孤立节点的总数量,如果是,进行步骤107,否则进行步骤111;步骤107:孤立节点向所有返回加入簇响应消息的邻居孤立节点发送一个加入簇确认消息,该加入簇确认消息的目的地址为邻居孤立节点的单播地址,源地址为孤立节点的单播地址,消息类型为10,负载为簇ID,即孤立节点的地理坐标,同时将自己标识为簇首节点;步骤108:在规定时间内,如果邻居孤立节点收到加入簇确认消息,则执行步骤109,否则执行步骤111;步骤109:邻居孤立节点将自己标识为簇内节点,同时记录加入簇确认消息中的簇ID以及簇首节点的节点ID;步骤110:孤立节点成功建立簇并转变为簇首节点;步骤111:结束;重复执行步骤101~111,直到没有孤立节点为止;然后,簇首节点在网络内广播簇ID消息,该簇ID消息的负载为簇首节点所在簇的簇ID;簇首节点和簇内节点收到簇ID消息后,保存簇ID消息中的簇ID值,网络中所有簇的簇ID值保持不变;如果一个簇首节点的能量值低于预先设定的阈值,或者离开簇ID所标识的位置,那么符合条件3和条件4的簇内节点转换为簇首节点,原来的簇首节点则变成簇内节点;条件3:该簇内节点位于簇ID所标识的位置;条件4:在所有簇ID所标识的位置中的簇内节点中,该簇内节点的当前能量值最大且大于簇首节点;步骤103,106和108中,规定时间值设置为α·d·t;其中,α为调节系数,α≥1,d为网络的直径,t为两个邻居节点之间传输一条消息的延迟。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于常熟理工学院,未经常熟理工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710196605.6/,转载请声明来源钻瓜专利网。
- 上一篇:一种锂氧电池
- 下一篇:超宽频低频电调腔体移相器及基站天线