李 立,李晓东,任 刚
(1.郑州成功财经学院 信息工程系,郑州 451200; 2.中国科学院软件研究所,北京 100190)
车辆自组网(Vehicle Ad Hoc Network,VANET)是一种以车辆作为通信节点的移动自组网,设计思想是为每一台车辆装备无线通信设施,处于一定通信范围内的各台车辆之间可以通过无线设备交互各自的位置、车辆速度等传感器感知的相关数据,通过自组网进行多跳数据通信。这样,司机可以获取更多其他车辆的状况信息以及实时路况信息,为安全驾驶和舒适驾驶服务。因此,车辆自组网在智能交通领域应用广泛[1-3]。
与其他移动自组网类似,车辆自组网中的所有节点都可以自由进出网络,而且由于车辆行驶速度更快,因此节点的进出更加频繁,网络的拓扑结构变化更快。所以,网络通信的安全性非常值得关注,如何基于车辆收到的信息来辨别信息的真假是当前车辆自组网的研究热点之一[4-6]。目前,常用数字签名和公共秘钥体系等策略来对信息进行校验。如文献[7]提出一种信任分类与动态管理方法,使用贝塔分布来描述节点的信任情况,基于贝叶斯理论构建信任模型,实现车辆自组网各节点的信任量化管理,提高网络安全性。文献[8]采用数字签名技术对公共消息进行鉴别,并利用hash链对通信跳数信息进行保护,提高数据通信的安全性。文献[9]采用公共秘钥体系对节点地址进行加密和鉴别,防止恶意节点攻击。文献[10]提出一种基于序列号的诱饵检测机制,通过诱饵检测可以在路由发现阶段孤立恶意节点,对抵御灰洞攻击非常有效。事实上,网络所遭受的攻击或破坏主要是由网络中的异常节点(包括恶意节点和故障节点)引起,因此,有效检测网络中的异常节点是提高车辆自组网网络安全的前提。
为此,本文提出了一种面向车辆自组网的异常节点检测机制。基于Greenshield模型对车辆自组网进行建模,计算车辆的速度、车辆密度和车流量参数。依据车辆自身计算的车流量与接收到的其他车辆计算的车流量的差异来定位异常节点,并采用假设检验方法对异常节点进行最终的判断,以有效检测网络中的异常节点。
本文提出的基于Greenshield模型的异常节点检测机制主要包括2个部分:1)针对车辆自组网的应用需求,构造Greenshield模型,计算车辆速度、车辆密度和车流量参数;2)采用假设检验方法设计异常节点检测机制,检测车辆自组网中的异常节点。
Greenshield模型[11]是交通工程领域公认的精确度较高的车流统计模型,可以用于对不间断的交通(如没有交通信号灯的交通)状况进行建模。该模型使用的交通参数主要有2个:
1)车流量:即道路上每小时平均通过的车辆数量;
2)车流密度:即道路上每公里平均存在的车辆数量。
从该模型可以看出,车辆速度和车流密度是负相关的,随着车流密度的提高,车辆的速度会降低。车辆速度v与车流密度k的关系可以表示为:
(1)
(2)
于是有:
(3)
在车辆自组网中,每台车辆在与其他车辆进行信息交互时,可以获取其他车辆的唯一身份标识(ID)信息。这样,该车辆可以计算道路上处于该车辆通信范围内的车流密度。此外,每台车辆还可以依据从其他车辆获取的车辆速度信息以及自身的速度信息,计算道路上处于该车辆通信范围内的车辆平均速度。针对车辆自组网应用,本文依据车辆自身计算的车辆平均速度和平均车流密度来计算处于该车辆通信范围内的车流量值:
(4)
在本文的异常节点检测机制中,要求每台车辆不仅将其位置和速度传送给邻居车辆,同时还要传输其计算的车流密度值和车流量值。相应地,本文异常节点检测机制中的握手消息格式是在传统的消息格式的基础上增加了3个字段:车辆自身速度,车辆自身计算的车流密度值和平均车流量。消息数据m通过哈希变换得到H(m),然后采用车辆自身的密钥进行签名[14-15]。如何生成这些签名以及验证签名本文不再赘述。需要指出的是在紧急情况下(如发生交通事故或前方车辆紧急制动),本文的异常节点检测机制要求每台车辆生成一个紧急消息,消息格式是在传统的消息格式的基础上增加了4个字段:紧急消息类型,车辆自身速度,车辆自身计算的车流密度值和平均车流量。其中,紧急消息类型字段可以是紧急制动、交通事故等。这些紧急消息由于对时效性要求很高,因此不采用加密方式传输,接收紧急消息的车辆应当迅速对消息做出反应。
结合上述讨论,车辆自组网中的每台车辆可以基于Greenshield模型,利用其他车辆计算的车流密度和平均速度信息来计算交通流参数。车流量参数可以看作是一个全局参数,由每台车辆自行计算。在交通条件相同的情况下,相邻车辆计算的车流量参数应当十分接近。如果满足这一条件,本文认为计算结果是正确的,否则认为计算结果是错误的。本文将基于这一思想来设计异常节点检测机制。
该机制的设计思路是,在紧急情况下(突发事故或突然刹车),后面的所有车辆都将制动刹车,因此其计算的车流量以及自身车辆速度都应当下降。通过将这些降低的车流量值传输给后面的车辆,会导致后面车辆计算的车流量也下降。譬如,前方道路上发生了交通事故,距离交通事故很近的车辆接收到紧急消息后会紧急刹车,稍远区域的车辆接收到了前方发生事故的消息后会准备采取刹车等行动,再远区域的车辆获取到了前方道路的堵塞信息之后,还不需要采取紧急刹车等行动,可能会采取绕路等行动。在本文的异常节点检测机制中,不需要将堵塞警告消息采用洪泛方式广播,而是逐步传播此类消息。这样,在紧急情况发生时,所有相关车辆都会降低其车流量和速度值并传播给其他车辆。而对于伪造的紧急情况,只有个别车辆传输较低的车流量值或者速度值,那么这些异常车辆很容易被检测出来。
每台车辆可以按照式(4)计算一个车流量值qo,并将其传输给其他车辆。同时,每台车辆都可以接收相邻车辆所计算的车流量值,将其作为该车辆接收到的车流量值:
(5)
其中,n表示处于该车辆通信范围内的车辆数量,i表示车辆的序号。
车辆自组网可能遭受的攻击类型主要包括以下2类:
1)虚假信息攻击:异常节点可能出于恶意目的或者设备故障的原因,将虚假数据插入到网络中,这可能对网络造成严重损害。在极端情况下,可能导致网络瘫痪。异常节点可以伪造自身的速度值以及其计算的车流量和车流密度值,随时将虚假数据插入到握手消息或者紧急消息中。譬如,在虚假的紧急消息中,异常节点将开始发送较低的车流量或突然降低其自身的速度,以告知其他车辆发生了交通事故。
2)女巫攻击:异常节点可以启动的另一类攻击是女巫攻击。当一个异常节点传送多条消息时,每条信息都使用不同的ID,用于指示消息来自很多车辆而不是一台车辆,从而可以通过造成堵塞来降低车流量。这些车辆ID可以通过欺骗或者窃取方法获得。
针对上述2种类型的攻击,本文提出一种基于Greenshield模型的VANET异常节点检测机制,主动检测车辆自组网中的异常节点,然后及时采取纠正措施以避免其对网络的破坏。
为了训练本文所述的异常节点检测机制,需要给定一个正常情况下的网络模型,这样可以检测偏离正常行为的异常行为,同时给出报警信息,告知其他车辆发生了异常行为。在前述的面向车辆自组网的Greenshield模型中已指出,每台车辆都会计算平均车流量和车流密度,并将这些值以及自身的速度和位置发送给其他车辆。此外,每台车辆按照自身的速度和前方交通状况计算其自身所处区域的平均车流量信息。通过对比自身计算信息与接收信息的差异来检测异常节点。基于这一思路,本文的异常节点检测主要包括2个部分:合作数据的收集和数据正确性的校验。详细描述如下:
1)合作数据收集
本文所述的异常节点检测机制要求每台车辆从其他相互通信的车辆消息中收集相关数据,包括其他车辆的速度、位置以及其他车辆计算的车流密度值和平均车流量,然后基于Greenshield模型对其周围的交通状况进行建模。车辆之间相互合作,共享Greenshield模型的参数值。当一台车辆从其他处于通信范围内的所有车辆接收到参数值之后,每台车辆就获取了该区域内所有车辆的信息。因此,每台车辆都可以计算一个车流量均值,记为μq。统计发现,处于通信范围之内的所有车辆计算得到的车流量均值μq相互之间比较接近,而且处于均值的2个标准偏差之内。这意味着,在通信范围内的所有车辆计算的平均车流量值非常相似,因为它们都处于类似的交通环境。显然,在所有情况下,所有车辆都要依赖于其他车辆来计算它们的参数值。当收集到足够的数据之后,基于中心极限定理,这些数据近似服从正态分布(具体在仿真部分讨论)。这意味着,本文可以采用假设检验方法来进行异常节点检测。
2)数据正确性校验
假设检验是工程应用中常用的一种技术,用于检验原假设和备择假设哪一个是真的。假设检验方法可以给出一个置信度范围,使得可以在一定置信度条件下来接受一个论断。假设检验的基本思想是小概率反证法思想。小概率思想是指在一次实验中,概率小的事件基本上不会发生。反证法思想是指,首先提出一种假设,然后用统计方法判断该假设成立的概率值,如果概率值偏小,则认为假设不成立。该方式非常适合本文的异常节点检测机制。在本文中,每一个节点都有2种可能,要么是信任节点要么是异常节点。当其为信任节点时,则接收其发出的数据,否则拒绝其发出的数据。
考虑到处于通信范围之内的所有车辆计算得到的车流量均值相互之间比较接近,经过统计之后假定其方差是已知的,在这样的情况下,本文采用u检验方法检测异常节点发出的错误数据。u检验的检验统计量可以表示为:
(6)
示车辆自身计算的车流量的均值,σx表示接收到的车流量的标准偏差,由实验统计结果得到,对于假设检验而言是已知的。
本文使用假设检验来决定是否接受接收到的车流量值。如果接收的车流量值在99%的置信区间,即在接受域内,那么接收这些车流量值。如果接收到的车流量值处于拒绝域内,那么拒绝这些车流量值。
假设通常有2个:原假设H0和备择假设H1。如果原假设被拒绝,则接受备择假设H1。如果没有足够的证据拒绝原假设,那么就接受它。本文原假设H0和备择假设H1声明如下:
H0:接收到的数据是正确的;
H1:接收到的数据是错误的。
在本文所述的异常节点检测机制中,每一台车辆都计算一个显著性水平P,P越小,拒绝H0的概率越大。假设检验的错误类型有2种,如表1所示。在本文中,类型2的错误的危害性远小于类型1。因此,本文使用宽泛的置信区间。水平值α设为0.05,这意味着检验统计量落在接受域的概率为1-α=95%。本文采用双侧检验,接受域的上限和下限分别为uα/2和-uα/2,即如果u0>uα/2或者u0<-uα/2,则拒绝H0。
表1 检验结论及错误类型
在本文中,对于选择的任一节点,只要该节点为信任节点,其接收的车流量值都处于95%以内的置信区间。一旦发生异常行为,其值就会下降,同时会影响该节点所在区域的所有车辆,导致其所处区域的平均车流量值下降。但随着标准偏差的增加,其值仍然会处于接受域内。只有2种情况会导致其值不在接受域、当检测统计量u0小于-uα/2时,表示该节点没有拒绝错误的阻塞或者事故的论断;当检测统计量u0大于uα/2时,表示该节点错误地接受了没有阻塞或者事故的论断。因此,本文所述的异常节点检测机制可以依据检测统计量的值来判断错误信息属于哪一类。
综上所述,本文提出的异常节点检测算法可以用以下的伪代码表示。
While(接收到来自节点i的一条消息) do
计算自身车流量qo;
If(|qr-q0| 接受接收到的数据; 更新车流量值; Else 监视节点A,统计Greenshield模型参数; 计算检验统计量u0; If(u0>uα/2或者u0<-uα/2)then 拒绝来自节点i的数据; 标记节点i为异常节点; 发送消息给其他节点,告知节点i异常; End if End if End while 简要步骤描述如下: 1)当前车辆通过与处于其通信范围内的其他车辆进行信息交互,收集合作数据。 2)当前车辆自身计算处于该车辆通信范围内的其他车辆的平均速度和车流密度,再按照式(4)计算处于该车辆通信范围内的车流量值。 3)判断车辆自身计算的车流量值与接收到的车流量值之间的差异,如果两者的差异小于设定阈值Tq,则接受接收到的数据,并更新车流量值;否则,对发送该数据的节点进行监视,采用假设检验方法进行数据统计。如果检验统计量处于拒绝域,则认为相应节点为异常节点,拒绝从该节点接收到的数据,并发送消息通知其他节点,告知它们异常节点的ID。 为了评价本文所述的异常节点检测机制的性能,本文采用开源的多协议网络仿真软件OMNET++进行仿真,将本文的节点检测机制与文献[9-10]所述方法进行性能对比。 首先介绍本文仿真所涉及的实验参数,见表2。 表2 本文仿真实验参数 然后介绍本文的性能评价指标。本文采用真正率(True Positive Rate,TPR)和假正率(False Positive Rate,FPR)2个定量评价指标,分别定义为: (7) (8) 图1给出了随机选取的节点13在仿真时间100 s~200 s期间统计的车流量直方图。由图1可见,车流量基本服从正态分布,这说明,本文所述的异常节点检测机制采用u检测来判断检测统计量是合理的。 图1 车流量直方图 图2、图3分别展示了异常节点比例为10%和20%时3种方法的异常节点检测结果。 图2 异常节点比例为10%时的仿真结果 图3 异常节点比例为20%时的仿真结果 结合图2、图3可以看出,在异常节点比例相同的情况下,本文所述的异常节点检测机制的真正率指标明显高于其他2种方法,同时,假正率指标也低于其他2种方法。这说明,本文方法对异常节点的检出率高,发生类型1错误(即将异常节点判断为信任节点)的概率低,这样可以有效降低异常节点对网络的攻击和破坏。对比图2和图3还可以发现,异常节点比例越高,本文方法的真正率指标优势越明显。这说明,本文所述的异常节点检测机制能有效应对恶劣的交通环境。 为抵御异常节点对车辆自组网的数据通信进行的攻击,本文提出一种基于Greenshield模型的VANET异常节点检测机制。该机制以车流量作为异常节点检测的主要指标,依据相同交通环境下相邻车辆计算得到的车流量应当基本相等的先验知识,借鉴假设检验的思想,采用u检验方法对接收到的数据进行检验,判断节点是否异常。本文所述的异常节点检测机制的核心是面向车辆自组网的Greenshield模型构造以及结合u检测的异常节点检测方法。仿真结果表明,采用本文所述的异常节点检测机制可以有效检测车辆自组网通信中的异常节点。 [1] QU F,WU Z,WANG F Y,et al.A Security and Privacy Review of VANET[J].IEEE Transactions on Intelligent Transportation Systems,2015,16(6):1-12. [2] LI J,LU H,GUIZANI M.ACPN:A Novel Authentication Framework with Conditional Privacy-preservation and Non-repudiation for VANET[J].IEEE Transactions on Parallel & Distributed Systems,2015,26(4):938-948. [3] SHAO C,LENG S,ZHANG Y,et al.Performance Analysis of Connectivity Probability and Connectivity-Aware MAC Protocol Design for Platoon-based VANET[J].IEEE Transactions on Vehicular Technology,2015,64(12):1-11. [4] EIZA M H,NI Q.An Evolving Graph-based Reliable Routing Scheme for VANET[J].IEEE Transactions on Vehicular Technology,2013,62(4):1493-1504. [5] 罗 涛,李俊涛,刘瑞娜,等.VANET中安全信息的快速可靠广播路由算法[J].计算机学报,2015,38(3):663-672. [6] 杨 涛,孔令波,胡建斌,等.车辆自组网隐私保护研究综述[J].计算机研究与发展,2012(S2):178-185. [7] 吴启武,刘青子.基于贝叶斯理论的VANET安全路由信任模型[J].四川大学学报(工程科学版),2015,47(2):129-135. [8] MULERT J V,WELCH I,SEAH W K G.Review:Security Threats and Solutions in MANET:A Case Study Using AODV and SAODV [J].Journal of Network & Computer Applications,2012,35(4):1249-1259. [9] JANGRA A,SHALINI,GOEL N.e-ARAN:Enhanced Authenticated Routing for Ad Hoc Networks to Handle Selfish Nodes[C]//Proceedings of International Conference on Advances in Engineering,Science and Management.Washington D.C.,USA:IEEE Press,2012:144-149. [10] JHAVERI R H,PATEL N M.A Sequence Number Based Bait Detection Scheme to Thwart Grayhole Attack in Mobile Ad Hoc Networks [J].Wireless Networks,2015,21(8):1-18. [11] XUE Y,REN H L.Greenshields Model Based Congestion Pricing in Bottleneck Road Section[J].Shandong Science,2013,26(5):84-90. [12] PARAMESWARY S,ROSLI H M,CHE P O,et al.Influence of Darkness Dry and Darkness Rainfall on Malaysian Expressway for Traffic Characteristics Using Greenshield’s Model[J].Journal of Basic and Applied Scientific Research,2015,5(11):34-42. [13] DUA A,KUMAR N,BAWA S.A Systematic Review on Routing Protocols for Vehicular Ad Hoc Networks[J].Vehicular Communications,2014,1(1):33-52. [14] VERMA K,HAASBULLAH H,KUMAR A.An Efficient Defense Method Against UDP Spoofed Flooding Traffic of Denial of Service(DoS) Attacks in VANET[C]//Proceedings of IACC’13.Washington D.C.,USA:IEEE Press,2013:550-555. [15] 王海龙,杨岳湘.基于信息熵的大规模网络流量异常检测[J].计算机工程,2007,33(18):130-133.2 仿真实验与结果分析
3 结束语