刘长征, 张荣华
(新疆石河子大学 信息科学与技术学院,新疆 石河子 832003)
无线传感器网络(wireless sensor networks,WSNs)是通过在监测区域内随机部署大量微型传感器节点,然后利用传感器节点协作感知、收集和处理网络覆盖范围内所监测的对象信息,被广泛应用在战场监视、目标跟踪、医疗护理、农业和环境监测等领域,其基本操作是信息数据收集[1]。然而,无线传感器网络中的传感器节点一般分布在危险或者环境恶劣等无人值守的区域,易被物理捕获而遭受恶意攻击,成为网络数据收集的“黑洞”[2]。因而,灵活、安全、高效的数据收集机制成为无线传感器网络一个必须解决的关键问题。无线传感器网络数据收集是指从多个传感器节点系统地收集环境参数的感知数据,最终传输到基站进行处理的过程[3]。目前,无线传感器网络数据收集技术主要有三类:
1)基于网络结构的数据收集方案:根据网络结构不同,分为平坦型网络数据收集[4]、层次型网络数据收集[5]和无结构型网络数据收集[6]。平坦型网络数据收集方式是所有数据流量都流向基站,使得接近基站的节点消耗能量更快,适用于小规模网络;层次型网络数据收集方式是增加少数高能量节点或者选举簇头,把网络自组织成不同层次,可增强扩展性;无结构型网络数据收集方式是在传输过程中自动建立源节点之间的独立集,由独立集中的节点担任聚合节点,可获得高效的数据聚合,且不需显式维护传输结构。
2)基于流量优化的数据收集方案:根据采用技术不同,分为最大生命期数据收集[7]、网络相关数据收集[8]和QoS感知数据收集[9]。最大生命期数据收集方式是通过找到一个最大生命期数据收集调度方法,获取数据聚合路径最优解;网络相关数据收集方式是根据空间邻近和时间邻近节点收集数据的相关性,获得高度约简的收集数据;QoS感知数据收集方式是针对某些特殊服务质量要求,侧重获取某些最优信息。
3)基于移动性的数据收集方案:根据移动对象不同,分为基于移动观测者的数据收集[10]和基于移动代理的数据收集[11]。基于移动观测者的数据收集方式是利用移动观测者(如斑马或者鲸)从基站开始穿越网络,从附近节点收集感知数据,从而大大减少节点能耗;基于移动代理的数据收集方式是利用能耗低、可靠性高的移动代理程序,以减少卷入数据传输的节点和数据包。
无线传感器网络中较为典型简单的网络模型是由包括传感器节点和汇聚节点两类节点组成的网络,每个传感器节点由独立电池供电,具有有限的感知、计算和无线通信能力;汇聚节点则具有高资源的数据收集中心,定期从各传感器节点收集感知数据。
首先,根据该网络模型给出3个假设前提:
1)网络模型中存在的恶意攻击仅指数据包丢弃行为的攻击;
2)网络中恶意节点为达到隐蔽伪装的目的,每次只是选择性丢弃一小部分数据包;
3)一个数据包通过一条路由路径能最终到达汇聚节点,说明该路径相对安全。
下面根据假设前提给出了基于跟踪反馈机制的安全路径构造算法描述,如算法1所示。图1给出了安全路径构造过程模型(图中粗黑色虚线即为安全路径)。
图1 安全路径构造过程模型
算法1:基于跟踪反馈机制的安全路径构造算法
1)源节点Ns采用t(n)门限算法将要传输的数据包P进行拆分,并为每一个拆分后的数据项添pm加一个标识符表H,令初始值为空;
2)当中间节点Nk接收到一个数据项,如果该节点是正常节点,则将自身标识lk添加到H中;
3)当一个数据项pn到达汇聚节点,则汇聚节点从数据项中抽取H={l1,l2,…,ln},并将二元组(Ns,H)存储到本地数据库;
4)汇聚节点将标识符项H添加到一个广播消息中,利用路径H反方向发送给源节点Ns;
5)当中间节点Nk接收到广播消息,如果其自身标识lk包含在H中,则该节点从H中抽取出子路径Hk={lk+1,lk+2,…,ln}存储到本地缓存,并根据H中下一跳节点Nk+1和标识lk+1转发消息;
6)当广播消息到达源节点Ns,则源节点抽取出标识符项H,并存储到本地缓存。
算法1中,数据包从源节点到汇聚节点的过程中都加上了自身的标识符,以跟踪数据包的流向。然后,汇聚节点将标识符表广播,采用反馈机制反向转发给源节点,从而获得安全路径且可以被后续数据收集重用。然而,安全路径本身也可能包含恶意节点,这是因为恶意节点是以一定概率丢弃拦截的数据包,就有可能使恶意节点因没有丢弃数据包而加入安全路径。所以,构造的安全路径是“相对”安全而不是“绝对”安全的。
源节点从汇聚节点接收多条安全路径,然后根据多路径路由算法[12,13]用构造的安全路径来进行安全的数据收集。下面给出基于安全多路径路由的数据收集(data ga-thering based on secure multi-path routing,DGSMP)算法具体描述,如算法2所示。
算法2:DGSMP算法
1)当源节点Ns需要发送数据时,首先查找本地缓存
a.如果缓存中存在安全路径,则随机选择一条安全路径H={l1,l2,…,ln),将数据包发送给下一跳标识为l1的节点N1;
b.如果缓存中不存在安全路径,则随机选择下一跳节点,按算法1构造安全路径。
2)当中间节点Nk接收到一个数据选项,首先查找本地缓存
a.如果缓存中存在安全路径,则随机选择一条安全路径Hk={lk+1,lk+2,…,ln},将数据包发送给下一跳标识为lk+1的节点Nk+1;
b.如果缓存中不存在安全路径,则随机选择下一跳节点,按算法1构造安全路径。
3)当汇聚节点成功接收到数据包,首先查看标识符表H是否为空
a.如果数据包标识符表项为空,则说明所有中间节点的本地缓存中都包含安全路径,汇聚节点直接返回空消息;
b.如果数据包标识符表项不为空,则汇聚节点抽取安全路径,同时更新本地数据库,并返回包含安全路径的消息,所有收到消息的中间节点和源节点,抽取自身安全路径子集,更新本地缓存。
4)当汇聚节点没有成功接收到数据包,则源节点无法在一个定周期内接收到汇聚节点的反馈信息,说明已有安全路径上出现恶意节点,删除当前安全路径,重发数据并构造新的安全路径。
算法2描述的DGSMP算法通过构造相对安全的安全路径实现了无线传感器网络中较为安全的数据收集方案,是“尽最大努力”将恶意节点排除在传输路由之外,以此提高数据收集可靠性的方式,保证了数据收集的相对安全。
本文通过采用OPNET10.0系统进行仿真,比较在恶意节点不同数据包丢弃率下,DGSMP算法与定向随机传播(directed random propagation,DRP)算法[14]的数据包被拦截率。仿真参数设置为:网络覆盖区域为5 km×5 km,节点数目为50,源节点集合基数为10。图2给出了在恶意节点丢弃率分别为0.2和0.5的情况下,DGSMP算法与DRP算法数据包被拦截率比较。
图2 不同丢弃率下DGSMP与DRP数据包被拦截率比较
从图2可以看出:随恶意节点数目增加,二种算法数据包被拦截率都在上升,这是显然符合现实情况的。然而在相同的丢包率的情况下,随着恶意节点数目的增加,DGSMP算法优势较为明显。数据包被拦截率是随着恶意节点丢弃率的增大而增大的。当恶意节点丢弃率从0.2上升到0.5时,DRP算法性能下降较为严重,DGSMP算法性能下降则不明显。而且随着丢弃率增大,DRP算法与DGSMP算法的性能差异将会更大。这是由于DGSMP算法是根据安全路径进行数据收集,从而将大部分恶意节点排除在路由之外,使得恶意节点的高丢弃率对所给算法影响不大。
无线传感器网络本身很容易遭受到恶意攻击,面临着较大的安全威胁,目前已有的数据收集方案没有很好地考虑安全问题。本文给出的一种安全有效的数据收集方案,结合多路径路由机制和跟踪反馈机制,通过构造安全路径来实现数据收集。在存在恶意节点的情况下,有更小的数据被拦截率,提高了数据收集可靠性。构造安全路径的算法复杂性较低,且对整体网络的性能影响较小,可以为后续的数据收集传输提供安全的路由传输路径。性能分析表明:该方案能够很好地适应于无线传感器网络的资源受限环境,具有较好的理论研究价值和推广应用价值。
参考文献:
[1] 孙利民,李建中,陈 渝.无线传感器网络[M].北京:清华大学出版社,2005:4-20.
[2] Akyildiz F,Su W,Sankarasubramaniam Y,et al.A survey on sensor networks[J].IEEE Communications Magazine,2002,40(8):102-114.
[3] 解文斌,鲜 明,包卫东,等.无线传感器网络数据收集研究进展[J].计算机科学,2008,35(8):35-41.
[4] Krishnamachari B,Heidemann J.Application specific modeling of information routing in wireless sensor networks[C]∥Proc IEEE International Performance, Computing and Communications Conference,2004:717-722.
[5] Younis O,Fahmy S.HEED:A hybrid,energy-efficient,distributed clustering approach for Ad Hoc sensor networks[J].IEEE Transactions on Mobile Computing,2004,3(4):366-379.
[6] Fan K W,Liu S,Sinha P.Structrue-free data aggregation in sensor networks[J].IEEE Transactions on Mobile Computing,2007,2(4):349-365.
[7] Hong B,Prasanna V K.Maximum lifetime data sensing and extraction in energy constrained networked sensor systems[J].Journal of Parallel and Distributed Computing,2006,66(4):556-577.
[8] Cristescu R,Beferull-Lozano B,Vetterli M,et al.Network correleated data gathering with explicit communication:NP-completeness and algorithms[J].IEEE/ACM Transactions on Networking,2006,14(1):41-54.
[9] Upadhyula S,Gupta S K.Spanning tree-based algorithms for low latency and energy efficient data aggregation enhanced converge cast (DAC) in wireless sensor networks[J].Ad Hoc Networks,2007,2(5):626-648.
[10] Ma M,Yang Y.SenCar: An energy efficient data gathering mechanism for large scale multi hop sensor networks[C]∥2006 International Conference on Distributed Computing in Sensor Systems(DCOSS’06),2006:2056-2062.
[11] Xu Y Y,Qi H R.Distributed computing paradigms for collaborative signal and information processing in sensor networks[J].Pa-rallel Distrib Computer,2004,64:945-959.
[12] Lou W,Kwon Y.H-spread:A hybrid multipath scheme for secure and reliable data collection in wireless sensor networks[J].IEEE Transactions on Vehicular Technology,2006,55(4):1056-1065.
[13] Lee P C,MIisra V,Rubenstein D.Distributed algorithms for secure multipath routing in attack-resistant networks[J].IEEE/ ACM Transaction on Networking,2007,15(6):1490-1501.
[14] Shu T,Liu S,Krunzsecure M.Secure data collection in wiress sensor networks using randomized dispersive routes[C]∥Proc IEEE INFORM Conference,Brazil,2009:2846-2850.