抵御相继故障的无线网络路由增强算法研究
2021-11-17郭艳光鲁晓波
郭艳光,何 婷,鲁晓波
(内蒙古农业大学计算机技术与信息管理系,内蒙古 包头 014109)
1 引言
无线网络中节点之间均存在耦合关系[1],因此当某节点发生故障时,会导致其它节点或者边随之发生故障,产生连锁反应,最后形成相继故障[2-4]。为了有效抵御相继故障的发生,减少相继故障带来的危害,提升网络的可靠性,提出一种抵御相继故障的无线网络路由增强算法显得尤为重要和迫切[5]。
蒋占军[6]等人提出基于改进蚁群算法的无线网络路由增强算法,该算法首先将限制搜索角、距离带以及距离因子进行融合,同时利用激励机制对“热”节点中所包含的路径较长、能量较低的节点进行剔除处理。其次通过跳数少且能力足的节点对“热”节点传输进行均衡处理。最后利用伪随机比例规则对概率转移函数进行优化处理,实现对无线路由的增强。实验结果表明,该算法能够有效对节点进行均衡处理,但是该算法没有将耦合印象格子模型的网络拓扑结构影响充分体现至链路传输效率中,节点负载具有较高的异质性,传输能力偏弱,导致该算法的平均传输效率较低,且在故障检测中消耗的时间较长。刘宁[7]等人提出基于贝叶斯联合博弈的无线网络路由增强算法,该算法首先通过节点信念更新参数获取网络中所有的不良节点,利用所获取的不良节点对网络环境进行预估。其次归一化处理所预估的网络环境联合信念概率,通过各节点安全效益数值的计算结果获取相对合约,并利用先验中期拒绝贝斯稳态合约。最后根据安全容量计算权值对网络中不良节点进行处理,实现无线网络路由增强算法的研究。实验结果表明,该算法没有充分研究分析负荷-容量模型,导致所分析的相继故障产生原因较为片面,因此,该算法的故障检测准确率较低。除此之外,还有学者提出了基于改进支持向量机的无线网络路由增强算法,该算法虽然能够完成对无线网络路由的增强,但是该算法没有对二值影响模型进行研究,对不同节点状态及时间下故障节点产生条件进行分析,导致该算法在故障检测中消耗时间的较长[8,9]。
为了解决上述方法中存在的问题,对抵御相继故障的无线网络路由增强算法进行研究。
2 相继故障模型
在以往的网络模型研究中,只有节点的动态行为会被纳入到考虑范围内。但是随着网络问题不断地发生,边的动态行为以及边和节点的综合动态行为也被纳入到了考虑范围内。因此,依据负荷-容量原理,通过构建多个模型可以对相继故障发生的原因做出相对直观与全面的分析。
2.1 负荷-容量原理
在负荷-容量模型中,所有节点都会被定义成一个负荷量或一个容量。容量代表安全阈值[10],即模型中每一个节点能够负荷的最大值。当其中一个节点因为某种特殊原因超出所能承受的最大负荷时,该节点就会产生故障问题并脱离网络,那么该节点所属的负荷就会被分配给其它相关的节点,在其它节点接收到额外负荷后,也有可能产生同样的问题。以此类推,重复发生类似情况,节点的负荷被一次又一次地向下分配,故障问题不断发生,导致网络中失效的节点数量也不断增加,越来越多的节点从网络中脱离,因此产生了相继故障。
因为在负荷-容量模型中,对负荷、容量两定义的设定以及产生故障时节点负荷的分配条件都不是唯一的。因此,负荷-容量原理对于相继故障研究而言有着极为重要的意义。
2.2 二值影响模型
根据无线网络负荷-容量原理,构建一个随机网络具有N个节点,Pk代表节点分布,同时在该网络中,任意节点都必须包含故障及正常两种状态,分别用1和0进行表示。在某一时刻,网络中节点故障的发生与否完全取决于与其相邻的节点。设定初始时间并保证在当下时间内网络中的所有节点都是正常状态,即t=0,并且令该网络中含有极少的故障节点。因此,在即将发生的时间内,网络中是否会产生新的故障节点取决于下述条件:
1)如果网络中某节点的邻节点数量为n个,故障节点数量与n之比大于转换阈值φ,密度函数如下式
f(φ)=δ(φ-φ*)n
(1)
式中,δ代表符号函数。
2)假设节点的度是k,则故障发生的概率用Pk进行表示,并对最有可能发生故障的节点的度函数进行定义,如下式
(2)
式中
(3)
(4)
式中,该节点是值为1的故障节点,且不会随着网络状态的改变而产生变化。若在该网络中节点的转换阈值与度分布符合某种条件,那么极小部分的故障节点会引发相继故障。
2.3 耦合印象格子模型
常规状态下,耦合印象格子模型为拓扑结构,且具有一定的规则可循[11]。对数量为N的节点的耦合印象格子模型进行定义,具体如下:
xi(t+1)
(5)
式中,i=1,2,3,…N;k(i)代表节点i的参数度代表与其邻接的节点数量;ε代表耦合度,且ε∈(0,1)。时刻为t时节点i的状态量通过xi(t)进行表示。节点间的连接关系通过邻接矩阵进行表达,如下式
A=(aij)N×N
(6)
若i、j两节点之间存在边连接,则aij=1,反之,aij=0。
网络中所有节点都没有自环[12],同时每对节点中间有且仅有一条边。利用Logistic进行混沌映射的同时,通过f对节点的自身动态行为进行定义
1)如果0 2)相反,如果0 (7) 式中,m时间下c节点产生故障,若t>m,则xc(t)=0;当时间为m+1,c节点的相邻接点将被xc(m)所干扰,同时在很大程度上其状态值将大于1。因此,有可能产生新的故障节点并引发相继故障。 为了更好地解决相继故障问题,以二值影响模型和耦合印象格子模型为基础,对无线网络路由算法进行研究,将最短路径路由算法进行改进,从而有效提高相继故障的抵御能力。 首先构建一个网络,通过G进行表示,同时利用A代表在该网络中所有相邻节点的邻接矩阵,具体如下式 (8) 式中,aij表示邻接矩阵A中所包含的某一元素;i、j两节点的连接通过eij进行表示。 假设在上述建立的网络中有n个节点,且该网络中包含实际耗费因子向量,则 (9) 通过该向量可以获取到网络中由于节点与其邻边传输所产生的实际耗费影响。同时边传输产生的实际耗费也可通过节点实际耗费因子获得,具体如下式 (10) 节点之间度数的分布存在着异质性的特点,因此需要充分利用节点度数修改实际耗费因子并获取到其虚拟耗费因子,避免度数较大节点负担过重等情况的发生。对i节点的虚拟耗费因子进行设定,具体如下式 (11) 对上式进行计算,可获得节点的虚拟耗费因子向量,具体如下 (12) 同时,通过式(12)可以获得参数eij的虚拟耗费值,具体如下式 (13) 节点的度数以及实际耗费因子对节点虚拟耗费因子的确定起着决定性的作用,因此需要对节点度数进行计算,并做出如下假设: 1)单位时间内,可通过整个网络完成对节点虚拟负载的处理操作; 2)若网络中所有节点均包含虚拟负载,那么i节点的虚拟负载可通过下式进行表达 (14) 式中,ki表示i节点的度数值。 3)单位时间内,节点度数与其可成功处理的负载成正比,但是节点虚拟负载与所求出的数值成反比。 (15) 式中,βi代表一定时间段中节点所解决的虚拟负载;βj代表虚拟负载的总和。被传递给节点自身和邻节点的负载分别通过1以及βi×ki进行表示。若参数kj的值为0,那么与其相对应的参数βj值也等于0。 通过对式(15)的计算,可获得如下公式 (16) 通过对上述公式的计算分析可获得节点的虚拟耗费因子,具体如下式 (17) 式中,h表示可调参数,且该参数对节点有着极大影响,h参数数值越大,对关键节点产生的削弱作用越大。 利用上述算法可有效控制节点度数较大时由于负载所产生的相关问题,该算法不仅有效地提升了网络中节点之间的负载平衡性,同时也提升了抵御相继故障发生的能力。 为了验证所提方法的整体有效性,需要对所提方法进行测试。通过MATLAB实验环境,分别采用抵御相继故障的无线网络路由增强算法研究(所提算法)、基于改进蚁群算法的无线网络路由增强算法(算法1)和基于贝叶斯联合博弈的无线网络路由增强算法(算法2)进行测试。 1)平均传输效率对比 图1代表平均传输效率测试结果如图1所示。 图1 不同算法的平均传输效率 平均传输效率越高代表算法的传输能力越强,网络状态越好。由图1可知,在初始故障节点不断增加的状态下,三种算法的网络平均传输效率均呈现出先快速提升后减缓的趋势。但是所提算法相对于其它两种算法,平均传输效率较高,说明运用所提算法对无线网络路由进行增强后,网络状态更好。 2)故障检测消耗时间对比 图2代表故障节点不断增长的状态下,不同算法在故障检测中所消耗的时间。 图2 不同算法故障检测消耗时间 通过图2可以看出在故障节点数量不断增长的过程中,不同算法的消耗时间整体上呈上涨趋势,但所提算法所消耗的时间始终低于其它两种算法。因为所提通过修改节点传输过程中产生的实际耗费获得了节点的虚拟耗费,有效降低了大度数节点的数量,从而减少了大度数节点路径计算所消耗的时间。 3)故障检测准确率对比 图3代表不同故障节点数量下,不同算法的故障检测结果准确率。 图3 不同算法的故障检测准确率 由图3可知,所提算法的故障节点检测准确率高于其它两种算法,其检测准确率最高值达到了90%以上,因为该算法通过对负荷-容量原理进行分析,准确直观地分析了相继故障的产生原因,因此大大增强了网络故障节点检测准确率。 网络技术的不断发展给当今社会生活带来了极大的便利,但是网络的相继故障问题也给网络化社会带来了巨大的挑战。目前无线网络路由增强算法存在平均传输效率较低、故障检测所消耗时间较长以及故障检测准确率较低等问题,因此提出抵御相继故障的无线网络路由增强算法研究,首先在构建相继故障模型的基础上对最短路径路由算法进行改进,其次将获取到的大度数节点进行重要性降低处理,最后利用该节点均衡节点负载分布。在有效提升了负载均衡性的同时减小了关键节点对网络产生的影响,进而提升了相继故障的抵御能力。3 无线网络路由增强算法研究
4 实验结果与分析
5 结论