1、基于 OLSR 路由协议的 HIDA 算法概要 14736卷 第 9期ol.36 No.9 2010年 5月Ma 基于 OLSR 路由协议的 HIDA 算法姚 胜,冷甦鹏(电子科技大学通信抗干扰技术国家级重点实验室,成都 610054摘 要:针对 Ad Hoc网络中的虫洞攻击,根据最优链路状态路由 (OLSR协议的运行特点,提出检测伪邻居的 HELLO 间隔分布式算法 (HIDA。仿真结果表明,在网络平均节点数大于 4、节点随机最大移动速率大于 2 m/s时, HIDA 算法能达到 80%以上的虫洞攻击检测率。 关键词:无线自组织网络;邻居探测;虫洞攻击;最优链路状态路由协议; HELLO 间
2、隔分布式算法HIDA Algorithm Based on OLSR Routing ProtocolYAO Sheng, LENG Su-peng(National Key Lab of Communication Anti-interference Technology, University of Electronic Science and Technology of China, Chengdu 610054 【 Abstract 】 Aiming at the wormhole attack in Ad Hoc network, according to Optimized Lin
3、k State Routing(OLSR protocol, this paper presents a HELLO Interval Distributed Algorithm(HIDA to detect fake neighbor. Simulation results show that HIDA has wormhole attack detection rate above 80% when network average node number is greater than 4, node random maximal migration rate is greater tha
4、n 2 m/s.【 Key words】 Wireless Ad Hoc Network(WANET; neighbor probing; wormhole attack; Optimized Link State Routing(OLSR protocol; HELLO Interval Distributed Algorithm(HIDA计 算 机 工 程 Computer Engineering第 V y 2010术文章编号:1000 3428(201009 0147 03文献标识码:A中图分类号:TP393安全技 1 概述移动 Ad Hoc网络是一种自适应的自组织网络,由于它性能优越,
5、因此在越来越多场合得到应用。目前关于 Ad Hoc自组网的研究大多集中在基于可信任环境下的通信和路由有 效性。由于 Ad Hoc自组网无线信道的开放性,因此极易遭 到攻击。攻击方通过攻击无线网络协议,窃取传输信息使网 络无法正常工作。因此,无线网络的安全问题引起了很多关 注。路由协议是节点通信的基础,协议运行环境为移动多跳 传输,这使 Ad Hoc网络路由协议的可靠性必须依赖所有节 点协调工作。如果网络中存在节点异常工作或被攻击节点入 侵等情况, 则会导致路由协议崩溃, 整个网络不能正常工作。 因此,必须提升 Ad Hoc网络的安全性能。在移动 Ad Hoc网络中的虫洞攻击是一种很特殊的恶意
6、攻击形式。 它通过控制路由入侵网络, 破坏性大且很难探测。 一般的安全策略如加密认证很难抵御虫洞攻击,因此,本文 以最优链路状态路由 (Optimized Link State Routing, OLSR协 议为模型进行针对性的改进。虫洞攻击一般由 2个能直接通信的攻击节点协同发动, 它们之间的链路称为“隧道” (其长度大于普通节点的信号覆 盖半径,在路由上体现为 1跳距离 是发动攻击的基础 1。虫 洞攻击示意图如图 1所示,其中, A 和 B 是距离较远的 2个 节点,不在信号覆盖范围内; X 和 Y 是协同攻击节点,在它 们之间建立一条私密的链路形成“隧道”。在这个网络中, 通过彼此接收到
7、对方的 HELLO 报文来确定邻居探测。当 A 向周围邻居发送 HELLO 报文时, X 收到该报文后通过隧道 传给 Y , 由 Y 原封不动地重放到网络中, B 接收到 A 的 HELLO 报文,判定 A 为 1跳邻居。同理, A 认为 B 是自己的邻居。 因此, A, B以及所有位于 X, Y传播范围内正常节点的邻居 表中均会存在伪邻居。若路由协议是以最短路径优先原则建立路由表项, A 到 B 的最短距离为 (2n +2 跳, 则 A 的 n 跳内 的邻居会通过“隧道”建立路由表项到达 B 。所有节点的通 信都暴露在攻击节点下,通过路由信息的扩散传播会使网络 极大范围内的节点通信受控于攻击
8、节点,攻击者对通过其路 径的信息进行窜改或丢弃等恶意操作使网络中部分节点无法 通信,甚至使整个网络瘫痪。 图 1 虫洞攻击示意图2 相关研究由于移动 Ad Hoc网络极易受到各种攻击,因此已提出 很多安全协议。虽然安全路由协议有很多,但没有一种能应 对所有恶意攻击,尤其是能绕过网络加密认证系统的虫洞攻 击,加密认证系统对虫洞攻击没有任何作用。因此,要对路 由协议单独进行针对性改进,使网络能抵御虫洞攻击。Packet Leashes2是经典的抵御虫洞攻击的方法。其原理基金项目:国家自然科学基金资助项目 (60802024; 教育部博士点新 教师基金资助项目 (200806141014; 通信抗干
9、扰技术国家级重点实验 室基金资助项目作者简介:姚 胜 (1983- , 男, 硕士研究生, 主研方向:数据通信, 无线自组织网络,网络安全;冷甦鹏,副教授、博士 收稿日期:2009-11-28 E-mail :linmin17125是在数据报文中附加限制报文最大传输距离的信息。 这种信息可以分为 2种:位置限制和时间限制。该方法 需要网络提供一个强大的密钥管理和时钟同步系统,对网络 带宽有很高的要求。另一种检测虫洞攻击的方法是计算节点 每跳传输时延或位置信息,它通过包含虫洞链路的 2个节点 之间的传输时延远大于真实 1跳邻居传输时延进行判断。 TTM 3是针对 AODV 协议计算路由发现过程中
10、的每跳传输时 延来检测是否有不正常链路存在。这种时延机制能有效抵御 虫洞攻击,但加重了路由协议的开销,使其效率下降。然而, 一些虫洞攻击可通过 at the bit level或 at the physical layer发 起很难被时延分析检测到。文献 4提出一种针对按需的路由协议,利用路由统计信 息检测虫洞攻击,通过在源节点和目的节点之间建立多跳路 由路径来判断统计信息中是否存在嫌疑链路。这种多路径方 法很可能由于统计信息不足导致误判,效率较低。另外,一 些方法大多依赖精确时钟同步的假设或需要特殊设备,很难 应用到实际网络中。综上所述,这些安全路由协议都存在局限性,它们一般 都对网络进行严
11、格的假设, 建立的理论模型与实际相差较大, 并且一些提出方法需要特殊硬件设备等。由于这些机制的引 入很难在路由协议的性能表现和抵御虫洞攻击的有效性方面 取得平衡,因此需要进一步对提升它们的安全性能,降低路 由协议复杂度和网络开销。3 基于 OLSR 路由协议的 HIDA 算法3.1 OLSR路由协议移动 Ad Hoc网络中的路由协议分为表驱动路由协议和 按需路由协议。 OLSR 路由协议属于表驱动链路状态路由协 议,适合应用于大型密集网络。该协议通过节点周期性地交 换各种控制信息来建立分布式计算和更新网络拓扑,节点根 据最短路径优先原则来计算路由表。OLSR 协议运行的基础是 2种主要的控制报
12、文:HELLO 报文和 TC(Topology Control报文。 HELLO 报文在 1跳的范 围内被周期性广播,不被转发,它用于建立节点的邻居表 (包 括邻居节点地址以及本节点到邻居节点的延迟 和计算节点 的多点中继集 (Multipoint Relay, MPR。 TC 报文包含节点 MPR 邻居的信息被广播到全网,只有属于 MPR 的邻居节点 能转发 TC 控制报文。 这种机制有效地控制了 TC 报文在网络 中广播的规模,减少了网络负荷,避免形成广播风暴。节点 根据收到的 TC 报文中节点的邻居关系独立计算网络的拓扑 图,依据最短路径优先原则计算路由表。 OLSR 路由协议包 括 4
13、个主要过程:邻居探测, MPR 选择, TC 报文扩散和路 由表计算,其中,通过发送 1跳内 HELLO 报文进行邻居侦 听是该协议运行的基础。由图 1可以看出,虫洞攻击发动时会使 2个攻击节点的 传输范围内所有正常节点相互收到 HELLO 报文,使它们成 为伪邻居。 由于节点依据这种错误的拓扑关系进行路由计算, 因此破坏了 OLSR 路由协议的正常运行。伪邻居的产生是虫 洞攻击发动的基础,避免伪邻居的产生有效抵御虫洞攻击。 3.2 算法实现本文基于虫洞攻击提出一种检测伪邻居的安全路由算 法 HELLO 间隔分布式算法 (HELLO Interval Distributed Algorithm
14、, HIDA,并对 OLSR 协议进行相应改进。本文模 型是一个大型密集的 Ad Hoc网络,节点不频繁的随机移动, 移动速率不高。 改进思想是依据 OLSR 路由协议运行的特点, 通过比较正常邻居和伪邻居的产生是否导致非法拓扑结构来 判断是否存在虫洞攻击。伪邻居的判断示意图如图 2所示,假设互为邻居的正常 节点 A, B, C都位于攻击节点 X 的覆盖范围内,并假设 Y 覆 盖范围内正常节点中存在 2跳邻居 M 和 N 。 当发生虫洞攻击 时,在某个 HELLO 2 s间隔内, A, B, C节点均会收到 M 和 N 的 HELLO 报文并更新各自邻居表。这时就能进行判断:新出现的 M 和
15、N 可不可能是 A 的正常邻居节点。 若 M 和 N 均 为 A 的正常邻居节点,那么说明它们在 HELLO 间隔内均从 A 的覆盖范围之外移动到 A 覆盖范围之内。因此, A 应处于 M 和 N 的移动范围重合处,即图中阴影处。同样, B 和 C 节点也是如此。 因为在 HELLO 间隔这段时 间内,低速节点运动距离很小,这样 A, B, C 3个节点几乎同 时位于以 M 和 N 移动距离为长和宽的矩形区域内,而这个面 积相对于节点的通信覆盖范围太小,本文认为网络中不存在 这样不合理的拓扑机构,即认为 M 和 N 均是 A 的伪邻居, 网络中存在虫洞攻击。 (a判断过程 (b判断结果图 2
16、伪邻居的判断示意图依据上述分析可知, HIDA 算法的主要思想是:某节点 A 若在 HELLO 间隔这段时间内第 1次收到 2个节点 M 和 N 的 HELLO 报文, 并且这 2个节点不互为邻居, 同时检测到它们 不在 A 的 1跳和 2跳邻居表内。在 HELLO 间隔中, A 通过 接收到已存在的邻居节点的 HELLO 报文可以计算这个短时 间内收到 M 和 N 的 HELLO 报文的正常邻居节点个数, 若该 邻居节点个数大于或等于 2个,则 A 就可判定 M 和 N 为伪 邻居, 忽略它们的 HELLO 报文以及 M 和 N 邻居表中节点的 HELLO 报文,该算法从收到一个未知的新 H
17、ELLO 报文开始 启动,并在 2倍 HELLO 间隔时间内周期地进行计算。 4 仿真分析文献 5提出另一种基于 OLSR 路由协议的防御虫洞攻击 算法:异常拓扑分布式算法 (Abnormal Topology Distributed Algorithm, ATDA,它利用拓扑分析的方法,依据网络中发 生虫洞攻击时引入的不正常节点密集度进行检测,本文对 HIDA 和 ATDA 2种算法进性仿真分析并比较性能。本文仿真通过 NS2软件平台实现。在仿真时,对 NS2 148中 OLSR 协议模块进行相应改动,添加 HIDA 算法,完成该 协议的安全改进并建立仿真模型。本文共进行 3次仿真,其 中,
18、前 2次仿真对 ATDA 和 HIDA 2种算法进行性能比较; 第 3次仿真是对 HIDA 算法的有效性进行分析。 3次仿真的 场景参数各不相同,但都是节点随机均匀分布在 800 m800 m的矩形区域中,节点的通信距离是 100 m。在不同节点数 (节点数分别是 20, 40, 60, 80, 100, 120, 140, 160, 180, 200下,随机生成拓扑 100次,每次均进行一次虫 洞攻击,所有节点随机移动,最大移动速度是 2 m/s,仿真时 间为 20 s,不同节点数下 2种算法攻击检测率的比较结果如 图 3所示。 0.00.20.40.60.81.0节点数攻 击 检 测 率图
19、 3 不同节点数下 2种算法的攻击检测率比较在不同的移动速率下,节点数为 100,所有节点随机移 动,速率大小服从均匀分布,最大速率分别为 0 m/s, 1 m/s, 2 m/s, 4 m/s, 6 m/s, 8 m/s, 10 m/s,随机生成拓扑 200次并进 行 100次攻击,仿真时间为 20 s。 2种算法的攻击误判率、 漏判率比较如图 4 、图 5所示。2468100.000.050.100.150.20节点最大移动速率 /(ms-1攻 击 误 判 率图 4 2种算法的攻击误判率比较 节点最大移动速率 /(ms-1攻 击 漏 判 率02468100.20.40.6图 5 2种算法的攻
20、击漏判率比较在不同节点数、不同移动速率下,节点数分别为 60, 80, 120,节点随机移动最大速率为 0, 1 m/s, 2 m/s, 4 m/s, 6 m/s, 8 m/s, 10 m/s,仿真时间为 70 s,分析 HIDA 算法在成功检测 虫洞攻击的情况下, HIDA 算法伪邻居的误判率和漏判率结 果如图 6、图 7所示。节点最大移动速率 /(ms-1伪 邻 居 误 判 率图 6 HIDA算法的伪邻居误判率比较0.00.20.40.60.81.0节点最大移动速率 /(ms-1伪 邻 居 漏 判 率图 7 HIDA算法的伪邻居漏判率比较5 结束语通过仿真比较可知,本文 HIDA 算法相对
21、于 ATDA 算法 在网络节点分布不是很密集时性能表现更加优越,能取得更 高的检测率。在不同节点移动速率下, HIDA 算法的攻击漏 判率更低,但攻击误判率在节点高速移动下表现却稍差。在 成功检测到虫洞攻击的情况下, HIDA 算法对伪邻居的判断 在节点低速移动下也具有较高性能,但在高速移动情形下协 议还需进一步研究。综上所述, HIDA 算法在低速密集的无线自组织网络中 对虫洞攻击的防御表现出优越性能,同时该协议的运行不会 对网络产生多余流量,保证了协议的高效性。参考文献1 Hu Yih-Chun, Perrig A, Johnson D B. Wormhole Attacks in Wir
22、elessNetworksJ. IEEE Journal on Selected Areas in Communications, 2006, 24(2: 370-380.2 Hu Yih-Chun, Perrig A, Johnson D B. Packet Leashes: A DefenseAgainst Wormhole Attacks in Wireless Ad Hoc Net- worksC/Proc. of the 22nd Annual Joint Conference of IEEE Computer and Communications Societies. Pittsb
23、urgh, USA: IEEE Press, 2003.3 Tran Phuong-Van, Hung Le-Xuan, Lee Young-Koo, et al. TTM: AnEfficient Mechanism to Detect Wormhole Attacks in Wireless Ad Hoc NetworksC/Proc. of CCNC07. Las Vegas, USA: IEEE Press, 2007.4 Qian Lijun, Song Ning, Li Xiangfang. Detecting and LocatingWormhole Attacks in Wir
24、eless Ad Hoc Networks Through Statistical Analysis of Multi-pathC/Proc. of 2005 IEEE Wireless Communications and Networking Conference. S. l.: IEEE Press, 2005.5 Maheshwari R, Gao Jie, Samir R D. Detecting Wormhole Attacks inWireless Networks Using Connectivity InformationC/Proc. of INFOCOM07. S. l.: IEEE Press, 2007.编辑 陆燕菲 149
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1