一种基于通信节点的WSN自主聚类分簇路由方法与流程

文档序号:18453550发布日期:2019-08-17 01:25阅读:820来源:国知局
一种基于通信节点的WSN自主聚类分簇路由方法与流程

本发明涉及一种网络通信方法,特别是涉及一种基于通信节点的wsn自主聚类分簇路由方法。



背景技术:

由于传感器能耗问题亟待解决,所以提出一种最大化网络生存期的节能路由协议是许多人关注的焦点。在减少能耗方面,聚类是一种非常有效的方法,可以增加网络节点的生存时间和增强网络扩展性。但现有的聚类过程中,簇头节点的位置和邻居节点的数目没有被仔细考虑。



技术实现要素:

本发明的目的在于提供一种基于通信节点的wsn自主聚类分簇路由方法,本发明通过结合节点的剩余能量、簇头和基站之间的距离以及邻居节点的数目等因素来优化路由节点的选择,采用通信节点进行中继,实现多跳数据传输,设计出mfacr路由方法,优化了多跳传输的局部最优路径构造方法,减少了簇首的负担。

本发明的目的是通过以下技术方案实现的:

一种基于通信节点的wsn自主聚类分簇路由方法,所述方法包括以下制备过程:

首先选择出网络中通信节点,然后利用通信节点来选择簇头,对网络进行合理的分簇,并根据簇头间接触概率再次进行聚类,以减轻簇头不必要的负载,然后以通信节点为链首簇头节点为链节点形成链状路由,最后对传输路径进行加权优化,采用多跳传输方式进行数据传输;

包括以下步骤:

mfacr路由方法过程,无线传感器网络首先执行初始化过程,然后将监测区域划分为单跳和多跳传输区域,接着再按轮次进行工作;

协议初始化,在初始化期间,节点利用rssi计算与基站距离,初始化过程结束后,开始进入轮的操作;

通信节点选取,首先按规则进行通信节点的选取,然后由通信节点选择簇首,进而形成链状路由,通信节点作为多跳传输的中继节点,同时负责选择簇首;

通信节点轮换,设置动态能量阈值e来避免频繁地更换簇首造成的能量消耗;

成簇过程,簇间路由建立,在二次聚类阶段完成后,在外部区域会以通信节点为基准进行小范围进行成链操作,并形成区域网络结构,通信节点即为链首。内部区域中的节点不进行成链操作。

所述的一种基于通信节点的wsn自主聚类分簇路由方法,所述成簇过程包括:

1)成簇阶段,簇首将由通信节点在聚类阶段选择;

2)二次聚类,在两个簇重叠区域的节点中,选取剩余能量大且节点与两个簇之间的距离之和较小的节点作为两个簇的内部网关节点,此网关节点会在两个簇之间建立一个桥梁,控制簇内的数据传输,并且规定进行自主聚类的簇数目最大为三,当自主聚类完成之后就会形成一个新的簇。

本发明的优点与效果是:

本发明基于通信节点自主聚类的路由方法mfacr,根据传输方式不同将监测区域分为不同区域,引入通信节点作为多跳传输的中继节点,负责该区域簇首的选择。在簇首选择时考虑剩余能量、传输距离等多个关键因素,使选举过程更加合理高效。在成簇完成后,对于重叠度较高的簇会根据位置重新进行聚类,最终形成局部最优路径,此方法减少了多跳路径传输过程中节点的能量消耗,稳定传输阶段能量消耗得到了优化。

附图说明

图1为本发明二次聚类结构图;

图2为本发明簇间路由示意图。

具体实施方式

下面结合实施例对本发明进行详细说明。

本发明首先选择出网络中通信节点,然后利用通信节点来选择簇头,对网络进行合理的分簇,并根据簇头间接触概率再次进行聚类,以减轻簇头不必要的负载,然后以通信节点为链首簇头节点为链节点形成链状路由,最后对传输路径进行加权优化,采用多跳传输方式进行数据传输。

mfacr路由方法过程

无线传感器网络首先执行初始化过程,然后将监测区域划分为单跳和多跳传输区域,接着再按轮次进行工作。每一轮mfacr分为两个阶段:聚类和稳定传输。聚类阶段包括选举通信节点和簇头节点;稳定传输阶段处理簇间多跳路由和数据传输。

协议初始化

在初始化期间,节点利用rssi计算与基站距离。首先,基站在网络中发送广播消息,然后节点根据接收到广播消息的信号强度来计算与基站的距离。根据距离选择所处区域。如果节点与基站之间的距离小于阈值,则节点属于内部区域,否则节点位于外部区域。

在内部区域簇首与基站交互采用单跳传输,在外部区域采用多跳传输。在内部区域中,数据将通过簇首单跳传输直接发送到基站,而外部区域中建立以通信节点为链首的链状路由结构,通过多跳传输将数据发送到基站。当簇首与基站距离小于预设阀值,多跳传输的能量消耗大于单跳传输的能量消耗。本章将无线传感器网络中能耗模型的阈值距离作为划分区域的阈值。当到基站的距离小于阈值时,簇头的能量使用通过单跳传输将数据传输到基站比多跳传输更有效。初始化过程结束后,方法开始进入轮的操作。

通信节点选取

首先按规则进行通信节点的选取,然后由通信节点选择簇首,进而形成链状路由,通信节点作为多跳传输的中继节点,同时负责选择簇首。当wsn进行成簇时,必须为当前轮选择通信节点。

通信节点的选取采用集中控制的方式进行选取。首先网络中的所有传感器节点将自己的能量和位置信息发送给基站。在初始阶段网络中传感器节点的能量相同,所以基站随机选取通信节点即可。基站随机选择通信节点时将通信节点之间距离考虑在内,让通信节点之间距离保持最合适距离,且通信节点个数由监测区域面积跟传感器节点数决定。

通信节点轮换

设置动态能量阈值e来避免频繁地更换簇首造成的能量消耗。动态阈值e的值会随着簇内节点剩余能量的变化而变化,簇首节点根据簇成员节点发送过来的能量信息计算簇内剩余节点的平均值。

其中,符号ei为节点i的剩余能量,n为簇内存活节点的总数,本文将能量阈值设置为簇内节点剩余能量平均值的一半:

(2)

当通信能量小于此阈值时进行通信节点轮换,选择通信节点控制的簇内能量第二多的簇首节点成为通信节点,如此循环往复,直至通信节点剩余能量均小于阈值。

成簇过程

1)成簇阶段

簇首将由通信节点在聚类阶段选择。我们改进了选择簇首的方法,并引入了三个参数,包括剩余能量、相邻节点的数目以及节点和基站之间的距离。在选择簇首的过程中,每个通信节点向一定距离内的节点发送广播消息,并从接收广播消息的节点接收响应消息。一旦非通信节点在本回合中接收广播消息,它们将向通信节点发送它们的响应。响应消息如下所示:

i表示第i个节点的id,表示节点i的当前剩余能量,代表节点与基站的距离,是节点i的邻居节点数。

通信节点分别计算出向其发送响应消息的节点的阈值,然后选择具有最大阈值的节点作为簇首。阈值计算公式如下:

上式中,为节点剩余能量,与基站的距离,邻居节点的数量三个因子的权重值;其中表示节点在第r轮中成为簇首的能量阈值,表示所有节点与基站的平均距离,表示节点的邻居节点平均数目。剩余能量大的节点距离基站近,邻居节点数量多则当选簇首概率大。

在选择簇头之后,每个簇头向网络中发布广播信息。在接收到消息之后,节点根据接受到广播消息的强度选择加入簇。同时,每个非簇头节点需要向自身选择的簇头发送连接请求消息。一旦形成簇,簇头开始创建tdma调度周期,它指定分配给簇的每个成员节点的时隙。将此计划广播回群集中的成员节点。

2)二次聚类

如图1所示,首先在两个簇重叠区域的节点中,选取剩余能量大且节点与两个簇之间的距离之和较小的节点作为两个簇的内部网关节点,此网关节点会在两个簇之间建立一个桥梁,控制簇内的数据传输,并且规定进行自主聚类的簇数目最大为三,当自主聚类完成之后就会形成一个新的簇。

由于簇头都是由通信节点选择出,所以选出距离通信节点最近的节点与通信节点作为新簇头节点进行数据传输。这样很大程度减少簇头因频繁传输数据而造成的能量耗,增加了网络的生存时间。

簇间路由建立

在二次聚类阶段完成后,在外部区域会以通信节点为基准进行小范围进行成链操作,并形成区域网络结构,通信节点即为链首。内部区域中的节点不进行成链操作。

在改进的簇间路由方法中设置链长阀值m,要求链长阀值大于等于链首节点通信范围内的链状路由节点数n,即限制链的长度,避免形成长链。首先,链首会向通信范围内的节点发送广播消息,广播消息中包含节点节点id和位置等信息。簇首节点收到广播消息后会返回确认消息。链首节点收到确认消息后首先判断是否已经成链,如果簇首节点已经加入链则将此节点抛弃。然后根据符合条件确认消息的信号强度与计算节点之间的距离,最后将距离进行排序。

链首节点根据排序向距离最近的节点发送路由请求消息,并将链长阀值m发送,节点收到请求信息后,确认自身满足条件,并且将链状路由节点数加一,然后向链首节点发送确认信息,则节点就成为链首节点的下一跳链节点,同时节点标记标记变为true,即已成链,此时为链尾节点,至此两个节点间形成了连接,链尾节点重复以上步骤,此时随着n不断增大,大于m时,链尾节点会停止发送路由请求消息。至此形成1到n的链状结构。直至所有簇首节点成链结束。然后外部链首节点采用多跳传输的方式进行连接,形成链首多跳传输,外部区域的链首节点通过多跳连接到内部区域的节点,内部区域节点最终将数据单跳传输至基站。

簇间路由如图2所示,数据传输过程为:节点将收集的数据通过网关节点发送至簇首节点,簇首节点进行汇聚,然后通过建立的链状路由结构将数据传输至链首,链首节点再将数据通过多跳传输方式传输至内部区域节点,然后由内部区域节点传送至基站,完成数据的传输。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1