一种基于改进GA的无线传感器网络分簇安全路由方法与流程

文档序号:23587274发布日期:2021-01-08 14:20阅读:73来源:国知局
一种基于改进GA的无线传感器网络分簇安全路由方法与流程

本发明涉及一种无线传感器网络安全路由方法,特别是一种基于改进ga的无线传感器网络分簇安全路由方法scrga(atrust-awaresecureclusteringroutingprotocolforwirelesssensornetworksusinganenhancedgeneticalgorithm)。该方法将簇头选举和路由搜索用同一个染色体编码,并基于簇头综合信任值最大、全网能量消耗最小以及负载均衡为目的构建适应度函数,遗传操作时定义约束条件避免非合理个体产生,提高收敛速度,提高能量效率和负载均衡性,在保障网路安全的基础上有效延长了生命周期。



背景技术:

随着物联网和智能制造地快速发展,无线传感器网络被广泛应用于军事、环境监测、太空探索等领域。为了有效延长无线传感器网络生命周期,通过分簇路由来组织节点并传输数据至基站,已经被大量研究证明是一种十分有效的方法。然而,由于无线传感器网络的大规模和动态特性,路由容易遭受来自网外和网内恶意节点的攻击。因此,安全分簇路由协议设计成为无线传感器网络的研究热点。

加密和身份认证是一种有效提高分簇路由安全性的方法,但此类算法计算复杂、能耗高且通常只能抵御外部攻击。而基于信任感知的安全分簇路由能够识别恶意节点,抵抗内部攻击,提高网络安全性。不同于非分簇安全路由算法中所有的节点都参与路由计算,分簇安全路由仅选取网络中信任度高的节点参与最优路径搜索,保证安全的同时提高了网络能量效率。但现有路由安全算法都通过本地决策选择簇头和选择簇头下一跳,无法找到最优簇头和路径。此外,现有算法在信任值计算、簇头选举和路由时通常不考虑节点负载,导致网络负载不均衡,从而降低网络生命周期。而遗传算法具有良好的全局搜索能力,常用来寻找最优簇头或路由。但基本遗传算法存在收敛速度较慢,容易陷入局部最优等缺点。



技术实现要素:

针对现有信任感知无线传感器网络安全路由协议局部决策导致整体安全性不足以及能耗和负载不均衡问题,提出了一种基于改进遗传算法的无线传感器网络信任感知安全路由协议scrga。本发明共分为两个部分,即信任评估和改进遗传算法寻路。信任评估是根据各个节点的邻居节点的行为来评价邻居的安全性。节点根据直接信任值、间接信任值、挥发因子和剩余能量计算得到新的综合信任值。以综合信任值评价节点的安全性,综合信任值越高就代表节点越安全。改进遗传算法寻路是为了保证节点能够寻找到安全可靠的路由,同时路由的能量消耗低。以综合信任值最大、网络能耗最小以及负载均衡为目标,构建了相应的适应度函数,并将簇头选择和路由搜索用单个染色体编码,通过改进的遗传操作形成优化的下一代,从而找到最优的簇头集和每个簇头的最佳路由路径。

所述的信任评估包括计算直接信任值、计算间接信任值和计算综合信任值。与传统的安全路由算法一样,节点的综合信任值是参与簇头选举和路径搜索的基础,综合信任值大的节点安全性更高,其更有可能被选为簇头和中继节点。节点根据邻居节点的接收和发送数据包个数,计算其对每个邻居节点的直接信任值,同时为了保证直接信任值的准确性,还定义了挥发因子,目的是快速降低从具有高信任度值的普通节点被捕获成为恶意节点的信任值。节点i对节点j的间接信任值是由它们的公共可信邻居节点提供的直接信任值综合计算而来,以避免某个节点的恶意评价。节点的综合信任值则根据计算的直接信任值和间接信任值整合得到,作为最终节点的安全评价标准。

所述的改进遗传算法寻路和传统的遗传算法不同,而是同时进行簇头选举和路径搜索,为了提高收敛速度,从染色体编码,选择、交叉和变异操作以及终止条件方面进行了改进,特别是构造了基于综合信任值、能量消耗和负载的适应度函数,使选出来的簇头和路径综合信任度高、能量消耗最小且负载均衡,从而有效延长网络生命周期。

附图说明

图1为本发明的簇头选择和路由搜索染色体示意图;

图2为本发明的染色体两点交叉示意图;

图3为本发明的改进遗传算法流程示意图

图4为本发明的不同恶意节点情况下网络丢包率示意图;

图5为本发明的网络剩余能量示意图。

具体实施方式

下面结合附图对本发明作进一步的详细说明,本发明一种基于改进ga的无线传感器网络信任分簇的安全路由方法scrga共分为两个部分,即信任评估和改进遗传算法寻路。信任评估是根据各个节点的邻居节点的行为来评价邻居的安全性。节点根据直接信任值、间接信任值、挥发因子和剩余能量计算得到新的综合信任值。以综合信任值评价节点的安全性,综合信任值越高就代表节点越安全。改进遗传算法寻路是为了保证节点能够寻找安全可靠的路由,同时路由的能量消耗低。以综合信任值最大、网络能耗最小以及负载均衡为目标,构建了相应的适应度函数,并将簇头选择和路由搜索用单个染色体编码,通过改进的遗传操作形成优化的下一代,从而找到最优的簇头集和每个簇头的最佳路由路径。

所述的信任评估包括计算直接信任值、计算间接信任值和计算综合信任值。计算直接信任值是根据邻居节点的接收和发送数据包个数为基础,节点i对邻居节点j的直接信任值可表示如下:

其中前者代表历史信任值,后者代表当前信任值。γ和1-γ(0<γ<1)分别是历史信任值和当前信任值的权重,其值的大小根据具体wsn而定的,本文为了公平起见,令γ=0.5。rt和st分别是发送和接收的数据包数量占总数据包数量的比例,可以表示为:

此外,还定义了挥发因子,目的是快速降低从具有高信任度值的普通节点被捕获成为恶意节点信任值。挥发因子表示如下:

其中t是网络的当前时间,τ是时间阈值。c1和c2都是用来调整信任值变化速度的常数;此外,引入mod(t,τ)以保证历史信任值不会太小,并使挥发因子在一定范围内周期性衰减。

计算间接信任值是由它们的公共邻居节点提供的直接信任值计算而来。公共邻居节点集合可以用bh=[b1,b2,...,bm]表示,m是公共节点个数。节点i对节点j的间接信任值表示为:

其中是节点i对节点u的直接信任值,是节点u对节点j的直接信任值,节点u是节点i和节点j的可信公共邻居节点。此外,将一组可信公共邻居定义为nth=[nt1,nt2,...,ntq],q≤m,如果节点i对节点u的信任值小于阈值thnow,则将节点u从公共邻居节点中删除。文中thnow的值设置为0.35。

计算综合信任值是由式(1)和(6)整合而来:

其中p为节点i的邻居节点个数。

所述的改进遗传算法寻路具体包括构造适应度函数和遗传操作。构造适应度函数是为了对个体质量进行评价,先定义了如下变量:

·n:网络节点数,

·h={h1,h2,...,hk}:簇头集合,m={m1,m2,...,mq}:成员集合。则有k+q=n,且为了计算方便,基站表示为hk+1。

·dij:节点i和j之间的距离,且dmax表示其最大值。

·成员mi的候选簇头集,且为mi的簇头。

·簇头hi的下一跳候选簇头集,且为hi的下一跳簇头。此外,表示簇头hi作为中继的次数。

·ld:节点的负载

·einitial:节点的初始能量,表示节点i的剩余能量。

节点i发送l位数据到节点j,其消耗的能量为:

其中eelec表示发送或接收1位数据消耗的能量,εfs和εmp分别表示自由空间和多径衰减模型下的放大器系数,dij为节点i和j之间的距离,此外,接收l位数据消耗的能量为:

erij=l*eelec(9)

融合l位数据消耗的能量为:

eda=l*epdb(10)

其中epdb是融合1位数据的能耗。由式(8),(9),(10),可以计算得到每个簇头节点和成员节点消耗的能量分别为:

于是,可以求出整个网络的能量消耗为:

scrga的目标之一是最小化etotal,从式(13)可以看出其同时能均匀分布簇,因为它既考虑了簇间也考虑了簇内能量最小。分簇网络中成员节点的负载都相同,因此网络负载均衡仅考虑簇头,表示为:

其中分别表示簇头hi的负载和所有簇头的平均负载。网络的另一目标是最小化lbchs来均衡网络负载。

此外,为了加速算法收敛,考虑只有当节点自身剩余能量和综合信任值大于网络平均剩余能量和网络平均综合信任值时才参与簇头选举。也就是说,对于任意的hi满足:

此外为了找到可信度高的路由路径,考虑整个簇头的平均综合信任值,表示为:

网络的第三个目标是保障簇头和路由的安全,因此,构建如下的适应度函数:

通过该函数来找到安全可靠、能量效率高和负载均衡的最优簇头和最佳路径。

遗传操作采用实数编码来表示染色体,且簇头选择和路由搜索用用一个染色体表示,不增加染色体长度的同时提高算法效率,即染色体的前部分表示路由搜索,后部分表示簇头选择,如图1所示。从图中可见,从100个节点中根据式(15)任意选出k个(k=6)簇头9,23,48,69,81,95,于是依变量定义可以得到每个成员节点的候选簇头集和每个簇头的下一跳候选簇头集。根据下式计算染色体中各个基因:

分别得到每个成员节点的簇头,成员1的簇头为9,成员2的簇头为48,…,成员100的簇头为48等。同理,可分别得到每个簇头到基站的路由路径,{98123bs},{23bs},{4895bs},{694895101},{8123bs},{95bs}。由于对染色体的基因进行了约束,既保证了染色体的合理性又提高了算法收敛性。依此可以得到初始种群。

然后对初始种群中的每个染色体根据式(17)分别计算其适应度值,并按从小到大排列。采用精英选择策略选取15%的精英个体直接遗传到下一代种群,其它的执行交叉操作。由于染色体由两部分构成,所以采用两点交叉来生成子染色体,即在父染色体的路由搜索和簇头选举部分各随机确定一个交叉点,对交叉点之间的基因进行交换,具体如图2所示。由图中可见生成的子染色体同样为合理染色体,接下来对生成的两个子染色体根据式(17)分别计算其适应度值,并和相应的父染色体适应度值进行比较,适应度小的用于变异操作。然后采用位变异对各染色体进行变异操作,即随机选取某个位置基因修改为新基因,新基因采用式(18)生成,以保证新染色体的合理性。生成的新染色体采用式(17)计算其适应度值并和父染色体进行比较,值小的遗传至下一代。于是,所有变异操作后保留的染色体结合精英染色体形成新一代种群。如果迭代次数达到预设的值或满足以下条件,算法终止。

其中ω是种群大小,ε为一个任意较小的正数,用于表明种群个体差异,取10-5。一旦算法终止,种群中适应度值最小的个体即为最优解,并将该最优解加入下一轮初始种群中加快算法收敛。流程如图3所示。

为了验证scrga的性能,在matlab环境下对其进行仿真测试,并与tc-sra和srbnt进行比较分析。网络中100个节点随机分布在100m×100m的目标区域,基站位于中心(50m,50m),同时将10个恶意节点分布在网络中,具体仿真参数设置如表1所示。

表1仿真参数

图4为3种方法在不同恶意节点数目下的丢包率。随着恶意节点数量的增加,3种方法的丢包率都呈现上升的趋势。从图4可以看出,scrga的丢包率低于tc-sra,平均减少了15.98%,主要是因为scrga考虑了历史信任值的影响,且引入挥发因子降低历史信任值对节点的综合信任值作用,提高了检测恶意节点的速度。和srbnt相比,scrga的丢包率平均降低了19.44%,因为srbnt的时间因子是预先设定的定值,随着网络的运行,时间因子可能不再适用网络的信任评价功能。因此,scrga的安全性能优于tc-sra和srbnt。

对于资源受限的无线传感器网络,网络的剩余能量是评价网络的性能优良的重要指标之一。图5显示了3种算法的网络能量对比情况。随着网络的运行,网络的剩余能量逐渐下降。srbnt和tc-sra的曲线斜率要更加陡峭,说明网络的能量消耗较快。而scrga网络的剩余能量多于srbnt和tc-sra,是因为scrga设计遗传算法的适应度函数时,除了考虑节点的综合信任值还考虑了ch承担的负载和网络能量消耗两个指标,合理的规划每个ch所应该承担的负载大小,从而提高了网络的能量效率。

本发明一种基于改进ga的无线传感器网络信任分簇的安全路由方法scrga,以最大化平均综合信任值、最小化网络能耗以及均衡网络负载为目标,采用遗传算法搜索全局最优解,得到全网最优簇头集和最佳路由路径。仿真结果表明,无论是在能耗,丢包率还是网络延迟方面,scrga均优于tc-sra和srbnt,而且对黑洞攻击、选择性转发攻击、hello洪泛攻击和槽洞攻击有着良好的防御作用。

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