基于节点交易密度的WSN信任计算方法仿真

2022-03-01 01:13
计算机仿真 2022年1期
关键词:数据包次数基站

张 欢

(中国民用航空飞行学院计算机学院,四川 广汉 618307)

1 引言

在传统的有线计算机网络中,通常采用认证和访问控制等主要方法为网络提供安全性和可靠性。认证机制用来识别用户的数字标识并对发送方和接收方传递的信息进行核实,访问控制则是根据访问控制列表内容决定访问主体是否有权限对访问的客体进行访问。这些方法虽然较适用于传统的有线网络,然而对于采取分布式和自组织管理的无线传感器网络环境而言,这些传统的安全策略并不适用[1]。部分原因是由于无线传感器网络缺少中心控制且网络拓扑结构较为灵活、不固定,网络节点数目也会经常变动。此外,传统的信息安全技术如保密性、完整性、可用性等虽然能较为有效地应用在传统的无线网络中,但对于无线传感器网络,由于网络遭受到的攻击更多的是来自于网络内部行为异常的节点或者恶意节点,这些安全技术也并不都适用于无线传感器网络[2]。

为了解决上述问题,作为一种软安全方法,信任方法的出现引起了学者们广泛的关注。文献[3]第一次提出了软安全机制,其目的是在像Ad-hoc网络这样需要内部成员相互协同的网络环境中激励成员的良好行为以及提高成员的诚实度。这种软安全机制能够识别并且对行为有悖行为准则的内部成员进行处罚和制裁,此外还能够采用一定的措施方法来奖励遵守规范的成员。在大多信任系统中,系统内部成员互相监督其他成员的行为,并通过信任系统的管理机制和评估机制来决定各个成员的信任值[4]。在信任机制的作用下,信任度好或高的节点,例如在路由信息请求,数据传递请求等方面往往会成为其它节点的首选。

在众多信任计算方法中,基于统计学的方法如贝塔分布、泊松分布以及高斯分布都受到了学者们的广泛关注,其中采用贝叶斯理论和二项分布进行信任构建在方法上先对简单,理论上具备较强的统计学基础,尤其是该方法通常仅需要两个参数,在实际运用中可以分别代表节点正评价和负评价的数目,使其非常适用于构建无线传感器网络的信任模型,诸多文献如[4-10]等都采用了该信任模型方法,其中经典文献[4,10]等对贝叶斯理论和二项分布在信任系统当中的应用进行了较为深入的理论研究和探讨。此外,信任计算方法也可以同无线传感器网络的其它功能应用相互结合,如基于信任的安全路由算法[11],基于信任的可靠数据融合模型[12],基于信任的节点安全定位法[13]以及基于信任的网络攻击检测方法[14]等。

本文根据无线传感器网络的主要特点以及信任计算所采用的主要方法,结合当前针对无线传感器网络信任研究中普遍存在的过多强调算法整体的可行性和低计算复杂度,而较少考虑节点个体本身的交易次数所占比这一问题,提出一种基于节点交易密度的无线传感器网络信任计算方法。本文所提方法将无线传感器网络节点自身的交易所占比同信任计算进行结合,使得网络系统在根据节点信任值进行节点选取时,不再仅仅查看节点以往/当前的信任值,还要综合考虑节点过去的交易所占比,即交易密度低但信任高的节点并不一定可信,而只有交易密度高且信任值高的节点才是潜在的候选节点。本文所提方法既符合现实社交网络信任计算方法,又可以对诸如选择转发攻击的常见的无线传感器网络攻击起到一定的抵制作用,增加了网络系统的健壮性和可靠性。

2 系统模型

在本文中所使用的信任计算方法由网络节点簇生成算法,信任计算方法,交易密度计算方法以及间接信任计算方法等四个部分构成,具体各部分内容如下。

2.1 簇生成算法

为了减少传感器节点将数据发送给远程基站点的能量损耗,防止传感器节点过早的能量耗尽,Heinzelman等提出LEACH算法[16],LEACH算法是簇形结构数据融合算法的典型代表之一。其主要思想是减少直接将数据发送给基站点的传感器节点数目。在LEACH算法中,网络通过自组织的方式生成一系列的簇,每个簇由若干节点构成,簇头节点搜集簇内节点数据,将这些数据进行融合,并负责将融合后的数据发送给基站点。

在该算法中假设所有的无线传感器网络节点是同质的且基站节点是固定的。为了平衡网络节点能量负荷,防止某些节点由于能量过度利用而导致能量过快耗尽,LEACH算法在每一轮数据融合过程中,节点按照一定的规则依次充当簇头节点,簇头节点再将融合好的数据发送给基站节点。在簇头建立阶段,簇内每个节点选取[0,1]之间的随机值,当该值小于指定的阀值T(n)时,则相关的节点就被选为簇头节点,T(n)的计算方法如下

(1)

其中p是簇头节点所占的百分比,r代表当前的轮次,G表示在过去的1/p轮次中没有当选过簇头的节点集合。

2.2 信任值计算

在无线传感器网络中,某邻域内含有n个节N={N1,N2,…Nn}点。在部署好节点后,任意节点对(Ni,Nj)⊆N可以进行直接通讯以完成指定合作任务。假设节点间进行交易(如数据传递、路由信息请求和应答等)后,经过一定的检测监督机制,交易结果只存在两种状态:成功或者失败、合作或者不合作。

现节点N1欲向其邻居节点N2,N3,…,Nn发出路由信息请求,假定当前这些邻居节点能完成路由应答的概率分别为p2,p3,…,pn。在实际应用中,N1通常是无法事先确定p2,p3,…,pn具体的取值,但pi可以看作二项分布中的随机试验成功的概率,即在M次贝努利试验(例如路由信息应答和不应答)中,节点Ni完成k次路由信息应答的概率。此外根据Casella[15],对于任何分布,一般都存在某一称作共轭族的自然先验分布族,在贝叶斯理论中,贝塔分布可以看作二项分布的先验分布,即pi的数学期望值可以根据下式获得

(2)

因此在实际的应用当中,N1只要记录下Ni在以往路由信息应答中的应答次数αi和不应答次数βi就可以估算出pi。在式2中,E(pi)通常可以看作节点Ni在某些活动如路由信息应答中的信任值,而αi和βi可以分别看作Ni在这些活动中合作(正评价)的次数和不合作(负评价)的次数。

当节点N1选取完节点Ni进行合作后,下一步要对节点Ni进行信任的更新。由于在贝叶斯统计推断中,二项分布的后验分布亦是贝塔分布。根据文献[10],采用下述方法进行信任的更新:考虑节点N1当前记录下的关于Ni在以往路由信息应答中的应答次数αi和不应答次数βi,则节点Ni在下一次接收到路由信息请求时能够应答的数学期望值为

(3)

在无线传感器网络的信任计算中,式(2)或式(3)的数学期望值可以看作节点的在完成某一次交易前后的信任值,而其中的α和β可以看作是节点的信任参数。

2.3 交易密度计算

通过上述无线传感器网络的信任计算过程,可以将节点交易定义为网络中的两个节点共同参与并完成某一项需要双方相互协同才能完成的任务,如数据分组交换传递。在每次任务完成后,节点双方会根据任务完成的情况以及一定的判断规则,给另外一方做出评价,评价结果可以分为为合作或非合作。但从整个信任的计算过程中可以看出,某些节点只需要进行有限的几次交易后就可以获得适当的信任值,例如节点A分别向节点B、C进行数据分组交换请求,节点B在同节点A的10次交易中,应答5次,拒绝5次,而节点C在同节点A的50次交易中,应答25次,拒绝25次。因此对于节点A而言,节点B和节点C拥有相同的信任值(0.5),但后两者同节点A的交易次数相差40次。可见在信任计算过程中,不考虑交易次数,单纯考虑节点的信任值,会使得某些恶意节点用来在短时间内获取一定的信任并开始发到诸如选择转发攻击等破坏网络的攻击行为。为了应对该问题,本文提出一种基于节点交易密度的信任方法,节点交易密度Td定义如下

(4)

式中,ni可以看作是在某一任务中,某一节点同特定节点的交易次数,∑ni可以看作是在同一任务中,该特定节点同其它所有节点的交易次数总和,ω可以看作是位于区间(0,1)上的一个取值可调的常量。结合式(2),基于节点交易密度的节点i的信任Ti可以表示为

(5)

在一般情况下,当某一节点同特定节点交易次数较多时,其交易密度Td值较大,如果此时该节点的信任值也较好(例如>0.7),则可以适当增加ω的取值来增加该节点的信任值,以对良好节点进行激励。

2.4 间接信任计算

一般而言,节点的信任值越高,则该节点被其它节点选为交易合作方的可能性就越高。现假定节点A的信任值是0.75,节点B的信任值是0.751,如果按照一般的原则选取节点信任最大的,则节点B当选。然而,一方面节点A和节点B的信任值只差0.001,在一定程度上都可以忽略两者的信任差异,另一方面因为节点A和节点B的信任差异如此之小,不论选择谁对合作完成的结果可能差异不大,那么不选择节点A显得有些不公平。因此在信任计算中,除了需要计算直接信任信息外,来自第三方的间接信任信息也很重要。

(6)

将上式映射到式(2)中的两个信任参数得到下列关系式

(7)

现假设网络中有三个节点N1,N2和N3。在某项交易中,N1持有的关于N2和N3的信任参数分别为(α1,2,β1,2)和(α1,3,β1,3),同时在该项交易中N2持有的关于N3的信任参数为(α2,3,β2,3),将式(6)代入到式(7)后经过整理,得到经过间接信任计算后的两个信任参数为

(8)

3 仿真测试

3.1 环境设置

假设100个无线传感器网络节点均匀的部署在一个正方形区域,其中包含30个非法节点,基站节点位于该区域的中心并能够和所有的网络节点实现单向通信,基站节点事先知道所有节点的ID信息,并在一段固定的时间内向网络中发送一定数量的数据请求,网络中的所有节点都可以接收到来自基站节点的数据请求,每个簇内节点将数据发送给簇头节点后,由簇头节点将数据直接发送给基站节点。

网络节点成簇方法采用LEACH算法,节点形成簇后由信任值最高的节点充当簇头节点并与基站直接通信,当簇中有一个以上节点具有相同最高信任值时,则随机选取其中一个担任簇头节点,并在每100次基站数据请求后,每个簇重新生成新的簇头节点。此外,簇的结构还基于以下设置:

1)簇内每个结点具备双向通讯功能且通过中间节点传递信息方式同簇头节点进行通信;

2)在一个簇内,所有的节点由于在物理上的接近性使得每个簇内节点可以侦听到簇内所有其它节点间的交易通信信息;

3)每个节点根据其侦听到的交易信息对其它节点进行信任计算,根据计算结果逐渐建立起节点的直接信任值并在簇内进行广播,其它节点接收到该直接信任信息后,把该信息当作间接信任信息进行计算处理;

4)每个节点都有唯一的ID且初始信任值都为0.5,每当接收到基站节点的数据请求时,节点将其ID置于数据包中并通过中间节点传递给簇头节点。

此外还假设当非法节点作为普通簇内节点时以20%的概率丢弃来自上一跳的转发数据,当作为簇头节点以40%的概率丢弃簇内所有数据。当节点信任值低于0.45时不在担任中间节点或者簇头节点,选取文献[5]中使用贝叶斯理论和二项分布进行信任构建的经典方法同本文所提基于交易密度的信任方法(TT),ω取中间值0.5,基站在固定的时间内向网络中发送一定数据请求次数分别设置为1000次和1500次。

3.2 测试一

在该部分测试中,对所提方法TT和对比方法[5]中的网络合法节点和非法节点的平均信任值进行了测试和分析,测试结果如图1和图2所示。

图2 网络节点平均信任(1500次查询)

在图1中,随着基站询问次数不断增加,两种方法中的合法节点平均信任值也随之不断增加,但本文所提方法TT由于在信任计算中考虑了节点的交易密度,使得合法节点的平均信任值在整个基站的查询过程中的要高于对比方法,例如在第600次查询时两种方法的合法节点平均信任值分别约为0.78和0.75,在第1000次查询时,分别约为0.9和0.88。

图1 网络节点平均信任(1000次查询)

在图1中,对于非法节点平均信任,虽然两种方法中的非法节点的都设置成作为普通簇内节点时以20%的概率丢弃来自上一跳的转发数据,当作为簇头节点以40%的概率丢弃簇内所有数据,但由于所提方法TT采用了节点交易密度机制,使得非法节点很难在短时间内获取一定的信任,因此所提方法中的非法节点平均信任要降低得更快一些,例如在第800次查询时的平均信任值分别为0.45和0.47,在第1000次查询时的均信任值分别为0.44和0.46。

在图2中,基站节点的查询次数增至1500次,测试结果同图1类似,即所提方法中的合法节点平均信任要高于对比方法,同时非法节点的平均信任要低于对比方法。从图2中也可以看出,当基站的查询次数增多时,同图1相比,合法节点的平均信任值增长得要更高一些,同时非法节点的平均信任下降得也越低,例如在1500次查询时,所提方法和对比方法的合法节点的信任值以及非法节点的信任值分别为0.93、0.9以及0.43、0.45。这主要是由于随着基站查询次数的增多,节点间交易的次数也不断增加,交易密度机制也能更好的发挥作用,从而抑制非法节点的恶意行为,更有利于系统在短时间内识别非法节点。

3.2 测试二

在该部分测试中,对网络中的作用节点(acting node)数量进行了测试。作用节点在本文中是指信任高于指定值0.45的网络节点,作用节点也可以指网络中能够正常工作的节点,测试结果如图3和图4所示。

图3 作用节点数量(1000次查询)

图4 作用节点数量(1500次查询)

从图3和图4中可以看出,随着基站节点查询次数的不断增加,由于网络中存在一定数量的非法节点,使得所提方法和对比方法中的作用节点数量都呈现出不断下降的趋势。相比之下,本文所提方法中的作用节点数量减少得会更快一些,例如在图3中的第1000次查询时,所提方法和对比方法中的作用节点数量分别约为75和86,在图4中的第1500次查询时,分别为72和80。这也说明由于本文中采用了交易密度机制,使得网络中的非法节点的信任值下降得更快,更早的变为非作用节点,同时与测试1的结果相类似,跟多的查询次数也有利用交易密度机制的运用,可以更快的应对非法节点。

3.3 测试三

在该部分中,对基站节点询问后所接收到的数据包数量进行了测试,由于网络中非法节点无论充当普通节点或簇头节点时都会丢弃一部分的数据包,因此基站节点不能完全接收到来自网站中的所有数据包。数据包接收率在本文中定义为基站实际接收到的数据包同应接收到的数据包之比,测试结果如图5和图6所示。

图5 数据包接收率(1000次查询)

图6 数据包接收率(1500次查询)

随着基站查询次数的不断增加,两种方法中的数据包接收率都不断增加,从图5和图6中可以看出,由于本文所提方法采用交易密度机制,使得网络可以更快地识别和应对非法节点丢弃数据包这一行为,因此随着查询次数的不断增加,在所提方法中的数据包的接收率也不断增加,例如在第1000次查询时约为94%,而对比方法约为90%。此外,适当地增加查询次数也可以提高数据包接收率,例如在第1500查询时本文方法约为96%,对比方法约为92%。因此对于选择转发这类较为常见的网络攻击而言,本文所提方法能够起到一定的抑制和缓解作用。

4 结语

对无线传感器网络而言,尽管信任机制无法精确地预测节点未来的行为,但是信任反应了节点过去的行为模式,如果某节点过去完成某一任务的比较出色,则可以假定该节点将来也会出色地完成该项任务。本文根据无线传感器网络信任计算的特点,提出一种基于节点交易密度的信任计算方法,该方法考虑了网络节点个体交易次数所占比,能够更好的应对和处理网络中的非法节点,但如何进一步提高网络数据包接收率这一问题仍需进一步的研究。

猜你喜欢
数据包次数基站
基于时隙ALOHA与NOMA的通信系统性能分析
基于NETMAX的基站网络优化
最后才吃梨
俄罗斯是全球阅兵次数最多的国家吗?
5G基站辐射对人体有害?
5G基站辐射对人体有害?
5G辐射比4G小
C#串口高效可靠的接收方案设计
网络数据包的抓取与识别
如何在IMS网络中计算呼叫接通率