赵刚,周磊
(中国电子科技集团公司第二十研究所,西安 710068)
21世纪是一个以网络为核心的信息时代,以“数字化、网络化、信息化”为重要特征[1]。通信网络是实现信息传输与共享的基础,离开通信网络,一切无从谈起。当今兴起的物联网、云计算、大数据等新兴技术正在日益蓬勃发展,正在不断改善信息世界[2]-[3]。在国防建设中,通信网络的重要性不言而喻,通信网络作为信息化条件下的“神经网络”,将分布在不同空间与平台的传感器、指挥控制和武器系统连接成为一个有机、统一、高效的巨型系统,实现战场态势信息和武器共享。以数据链为代表的军用通信网络正在悄然决定一个国家的国防与作战能力[4]-[5],通过数据链,将所有战场人员信息、作战平台分布信息、武器信息等所有信息实现快速、全面、可靠共享,作战人员可以迅速了解瞬息万变的战场环境、接受指挥人员的实时指令,快速利用战场资源,发挥作战人员的核心优势[6]。
通信网络的核心部件是路由交换设备,众多设备由链路连接组成通信网络。数据包在通信网络可能需要经过多个中间节点的转发才能到达目的节点。然而,网络中的路由设备或者链路经常发生长时间或短暂故障,造成网络状态变化,容易造成网络时延增加、中断、甚至故障传播效应而导致的大规模瘫痪事件。这种由于一个或者少量网络要素(节点或链路)超负载或者故障而导致其他网络或网内节点出现相继超负载或者故障,且造成较大规模的网络遭受影响的现象,被称为“雪崩”或“级联”现象,也称为级联失效[4]-[5]。
级联失效造成的后果非常严重。在其他诸如电力网络、交通网络、社交网络等网络空间中对级联现象均有所深入探究,级联失效在通信网络中的传播机理研究对改进网络鲁棒性具有关键作用,分析通信网络中的级联现象传播的原理,可以为设置应对措施奠定基础。从而减少或避免网络拥塞或失效事件出现的概率,进而在一定程度上降低级联现象带来的经济损失。此外,网络鲁棒性的提高,不仅可以提高用户体验,还可增强网络应对级联风险的能力,进而增强通信网络系统的抗毁性[4]-[5]。
网络是级联效应赖以传播的基础。通常情况下,一个网络由节点和链路组成,网络规模N为网络中的节点数,如图1所示。链路可以是有向的,也可以是无向的,网络中的链路总数量记为m。链路可以有线的,也可以是无线的。
图1 网络级联失效模型
在某个时刻,网络中节点i可能遭受自然灾害、恶意攻击或随机故障而失效,网络中的其他节点也可能因此而受影响发生失效。一般我们可以知道哪个节点在什么时候发生了失效,记为 ti,表示节点i在ti时刻发生了失效。那么在一次观察中,比如一次失效事件,或者在一定的观察周期内,所有失效节点的发生失效的时间可以被记录下来。那么,一个级联c可以被定义为c={t1, t2, t3,…, tN},假设t>0。若t=0,则表示未发生失效。
在通信网络中,最短路径路由是常用的路由机制。每对节点之间均采用路径最短的路径作为传输路径。网络中的链路网络是有向的,因此节点有入度和出度之分,分别用表示节点i的入度与出度,如图2所示,节点i的入度和出度分别为3和2。
通信网络模型中,重点考虑故障发生时,流量或负载的再次平衡问题。当某个路由器发生故障时,一般会采取基于局部的负载平衡方法,即将失效节点的负载交由近邻节点承担。
图2 通信网络级联失效传播模型
为了评估节点在通信网络中的重要性,提出介数,即经过一个节点的最短路径的条数来表示,即节点v的介数定义为式(1)
那么所有节点的容量需要不小于其稳态负载才能保证网络中所有的节点不发生缓存溢出或拥塞。通常假定节点的容量与稳态负载或称为初始负载成比例,表示为
α为节点的可接收来在其他节点负载能力的系数。
在稳态时,所有节点均可正常运转,节点容量可以很及时处理节点上的所有负载。然而,节点经常受到恶意攻击(针对某些特征的节点,比如度最大节点)或随机故障,导致节点发生失效。失效后,邻居节点可以检测到该失效,并为该失效节点分担流量负载以保证网络的正常运行。在通信网络中,数据包是从上游节点发送给下游节点,比如图2中,节点j2可以将数据包转发给i节点,反之则不可。那么j2节点检测到i失效后,则j2节点需要分担由其转发给i节点的负载,而不是分摊给所有的邻居节点。图2中,当节点i失效后,其上游节点j1, j2,j3可以局部地为节点 i分担负载,每个邻居节点可以承担的部分可以用式(4)表示
式中,'N表示幸存节点的数量。也可以用幸存网络中最大组件规模来评估网络鲁棒性,表示为
(1)基于度的选取,选取度最大的一个节点作为初始故障点;
(2)随机选取。
在随机选取方式中,大多采用平均法,即假设网络中的每个节点都作为初始故障点,将得到的结果求平均来表示。即
式中,ig表示节点i作为初始失效节点时得到的网络鲁棒性的值。式(3)中的α值直接影响网络抵御级联故障传播的能力。一般α值越大,网络的鲁棒性越好。随着α值从0开始逐渐增加时,网络存在一个相变过程,当α>αc时出现最大幸存组件或一组节点。
基于以上构建的通信网络级联失效模型,假设某通信网络的网络规模N=1000,参数初始的 m0个节点全连通,m=2,得到的网络的平均度网络的鲁棒性采用级联失效发生后最终网络中幸存的节点的比例来表示。首先评估节点在恶意攻击(即网络中节点的度最大的节点失效)下,网络鲁棒性的变化情况。式(3)中的α值是保证节点可以抵御级联失效的关键参数。但是在实际网络中不可能是无限大,因为网络资源往往是有限而宝贵的。α在从小到大的增长过程中,会出现一个关键值cα使得网络的状态出现一个相变过程,即从网络完全瘫痪到出现幸存节点。当然,cα越小,表示网络的鲁棒性越好。
图3的结果是采用了10幅同等规模的网络模型仿真后计算得到的平均值。可以看出当0.6α>时,网络中出现幸存节点。当然,我们期望α值越大越好,越大可以越好地提高网络的鲁棒性。但事实并非如此,在网络部署的过程中,部署代价是关键因素。但是,在部署中,应该提前充分考虑级联现象出现的几率,提前预留一定的资源来尽量避免级联现象造成严重的后果,从而实现对网络的保护,提高网络的质量。
图4的结果展示了随机故障下网络鲁棒性随α的变化情况。假定每幅网络中每个节点都作为初始失效节点后得到的节点再求平均,共计 10幅网络最终求平均。可以看出,在随机故障中,网络可以较好地抵御随机故障。
图3 网络鲁棒性在蓄意攻击下的变化情况
一般度大的节点在网络中的重要性比较大,不同度的节点作为初始失效节点时得到的结果亦不同,针对不同度的节点作为初始失效节点的结果进行对比仿真,结果如图 5所示。整体上可以看出,网络的鲁棒性与节点的度k与参数α密切相关。同样,当 k值相同时,α值越大,网络鲁棒性越好。α相同时,节点度越小,网络的鲁棒性会略好。
选取网络中度分别为2、10、50的节点进行仿真,从仿真的结果(如图 6)可以看出,初始失效节点的度越大,造成的网络失效后果越严重,cα值随着度增大而增大。在实际通信网络中,度大的节点往往处于网络比较核心的地方,也应该是网络服务商重点保护的节点。节点越重要,受攻击时网络受到的损失往往也是越严重的。
为了进一步验证结果,针对网络鲁棒性随初始失效节点度的变化情况进行了仿真。从仿真结果(如图 7)上看,初始节点的度越大,网络的鲁棒性越小。
图4 随机故障下网络鲁棒性的演进情况
图5 网络鲁棒性随着度k与参数的变化情况
图6 网络鲁棒性在不同度k下随α的变化情况
图7 网络鲁棒性在不同α下随度的变化情况
本文建立了通信网络的级联失效模型,并对网络在蓄意攻击和随机故障下的鲁棒性进行了仿真分析,发现网络在蓄意攻击和随机故障下,随着节点负载能力的增加,网络的鲁棒性均可以变好,但在蓄意攻击下,网络会有一个相变过程,在实际部署通信网络时,应该给网络中的节点负载留有足够的裕量,用以提升网络在遭受蓄意攻击和随机故障情况下的鲁棒性。通过对不同节点负载能力与度对网络鲁棒性影响的仿真分析发现,初始失效节点的度越大,造成网络级联失效的后果越严重,因此,在实际的网络维护中,需要重点保护网络中度较大的节点,以提升网络的鲁棒性。