一种基于支撑向量机的无线传感网入侵检测方法与流程

文档序号:13551289阅读:266来源:国知局
一种基于支撑向量机的无线传感网入侵检测方法与流程
本发明属于无线传感网信息安全防护技术领域,更具体地,涉及一种基于支撑向量机的无线传感网入侵检测方法。

背景技术:
随着无线传输技术、低功耗处理器和嵌入式计算技术的快速发展,无线传感网络得到了越来越广泛的应用;由于无线传感网的传感器多部署在无人值守的环境,容易遭受恶意的网络攻击。入侵检测系统作为一种能够主动发现攻击并提供警报信息的智能系统,可作为系统的第二道防线。针对无线传感网的入侵检测现有技术,譬如发明专利申请(CN201510606829.0)、《重庆邮电大学学报(自然科学版)》2016年第1期论文《基于信息熵的无线传感网入侵检测遗传算法》,是通过对所有报文的报头信息进行解析,然后提取网络特征并检测攻击;这类方法在网络规模较小的时候可以正常工作,但在大规模、大数据量的无线传感网中会因占用过多的系统资源而无法使用。为了尽量降低传感器的电量消耗,越来越多的无线传感网采用了事件触发的通信模式,传感器平时并不发送数据,只有在检测到特定事件时才向簇头节点传输信息;相比于周期性轮询的工作模式,事件触发会对网络带来更多不确定因素,使得系统内网络流量具有突发性;如何在既有周期轮询又有事件触发的异构环境中检测攻击是一个巨大的挑战。

技术实现要素:
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于支撑向量机的无线传感网入侵检测方法,其目的在于提高在既有周期轮询又有事件触发的异构环境中检测攻击的检测率,降低误报率。为实现上述目的,按照本发明的一个方面,提供了一种基于支撑向量机的无线传感网入侵检测方法,包括如下步骤:(1)建立无线传感网的流量模型,根据所述流量模型从网络数据流量包中提取流量特征参数,并对所述流量特征参数进行归一化处理;其中,流量模型用于描述系统网络的流量模式;(2)通过采用上述流量特征参数训练支撑向量机来学习系统网络的流量模式;(3)采用经过训练的支撑向量机进行在线入侵检测。优选地,上述基于支撑向量机的无线传感网入侵检测方法,其步骤(1)包括如下子步骤:(1.1)采用ON/OFF模型对无线传感网中每一个传感器的流量模式进行描述;其中,ON/OFF模型包含一个ON状态和一个OFF状态,当传感器处于数据传输阶段时,属于ON状态;当传感器上没有数据传输时,处于OFF状态;(1.2)采用以下流量特征参数来详细描述各传感器节点的流量特征:ON状态的平均持续时间;OFF状态的平均持续时间;λON:ON状态下平均的数据传输速率;TIAT:ON状态下两个数据包之间的平均时间间隔;nON:ON状态下平均的数据包传输总量;k:数据传输速率;λb:单位时间内簇头收到的来自于传感器节点的ON状态的个数;传感器节点的数据突发性程度;(1.3)采集网络数据包,根据上述ON/OFF模型从所述网络数据包中提取流量特征参数;根据上述流量特征参数构建特征集并依据网络数据包来自于正常网络或来自处于被攻击状态下的网络,将特征集分为正常集SetN或攻击集SetA;(1.4)获取正常集SetN各向量每个维度的均值μi和方差σi;并对正常集和攻击集中的每个向量采用以下公式进行归一化处理:其中,xi是指向量中的第i个参数。优选地,上述基于支撑向量机的无线传感网入侵检测方法,其步骤(2)包括如下子步骤:(2.1)从攻击集SetA和正常集SetN中各随机挑选N/2个样本,构成样本集{(x1,y1),(x2,y2),...,(xN,yN)};其中,xj是指第j个流量特征样本,yi∈{-1,+1},-1表示该样本为属于正常集,+1表示该样本属于攻击集;N是指每次训练支撑向量机时所需训练集中的样本数量;可在50~100取值;(2.2)采用样本集根据以下函数获取超平面:该函数满足:其中:w是指超平面的法向量,wT是指w的转置向量;C是正数常量,用于控制与之间的相对影响;ξk是指松弛变量;b是指超平面偏移值;k是指训练集中样本的索引值;yk是训练集中的标记;Φ(·)是从输入空间到高维特征空间的映射;(2.3)使用步骤(2.1)中构成的样本集{(x1,y1),(x2,y2),...,(xN,yN)},通过拉格朗日数乘法求代价函数最大值来解支撑向量机的凸二次规划问题,获得支撑向量机分类超平面的法向量w和偏移量b;具体为:该函数满足:其中,K(xm,xn)=<Φ(xm),Φ(xn)>是核函数;xm和xn是指训练集中的样本;ym和yn是指训练集中样本的标记值,为-1表示正常,为+1表示攻击;αm和αn是指拉格朗日数乘系数;(2.4)从攻击集SetA中随机挑选N个样本构成第一攻击集,从正常集SetN中随机挑选N个样本构成第一正常集;(2.5)将第一攻击集和第一正常集中的所有向量分别根据其中每个向量距离当前超平面的距离按照升序排列;即距离超平面最近的向量排在第一,距离最远的排在最后;(2.6)从经过步骤(2.5)升序排列之后的第一攻击集和第一正常集中各挑选N/2个向量构成训练集SetT;挑选规则为:每选择一个向量时,以a%的概率在前d%数据中随机选取一个向量,以d%的概率在后a%数据中随机选取一个向量;(2.7)以训练集SetT作为样本集,重复步骤(2.2)~(2.3)更新超平面;(2.8)重复步骤(2.4)~(2.7),直到达到预设的训练次数,获取超平面法向量wf,偏移量bf;本发明中,步骤(2)采用上述的动态最优子集选取方法处理非均衡数据集情况下的支撑向量机训练问题,通过主动挑选靠近分类超平面的训练样本、支撑向量来训练支撑向量机,可以大大提高支撑向量机的训练速度,并且对其最终的分类性无影响。优选地,上述基于支撑向量机的无线传感网入侵检测方法,其步骤(2.6)中,a取95,d取5。优选地,上述基于支撑向量机的无线传感网入侵检测方法,其步骤(3)包括如下子步骤:(3.1)从运行的无线传感网中捕获网络数据包,从所述网络数据包中提取步骤(1.2)中所定义的流量特征参数构成输入向量x;(3.2)按照步骤(1.4)的方法对x进行归一化预处理;(3.3)判定是否满足wfx+bf≤0;若是,则判定为正常网络流量;若否,则判定为网络攻击。优选地,上述基于支撑向量机的无线传感网入侵检测方法,其步骤(3.1)中,使用滑动时间窗口的方法采集数据包以减少噪声数据的影响。本发明提高的基于支撑向量机的无线传感网入侵检测方法综合考虑了无线传感网的网络拓扑结构、通信模式、训练样本不均衡等各方面因素,能够快速有效地检测系统遭受的网络攻击;总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:(1)本发明提供的基于支撑向量机的无线传感网入侵检测方法,采用机器学习方法进行无线传感网入侵检测,所需攻击样本的数据量小;而现有的模式识别方法是基于样本数量足够多的前提,只有在样本数量趋于无穷大时其性能才有保证;而本发明采用的支撑向量机不需大量的样本就可以获得性能良好的分类器,且支撑向量机的算法复杂度较低,速度快,对在线业务无影响,适用于在线入侵检测;(2)本发明提供的基于支撑向量机的无线传感网入侵检测方法,将轮询命令视作一个发生频率固定的事件,由此将周期轮询和事件触发都统一成事件触发型通信方式,采用ON/OFF模型对无线传感网中每一个传感器的流量模式进行描述;可更准确的描述无线传感网的流量模式;(3)本发明提供的基于支撑向量机的无线传感网入侵检测方法,采用ON/OFF模型对无线传感网的流量模式进行精确描述,并使用该网络流量模型提取无线传感网运行状态参数,无需对网络报文进行深度解析,只需要提取少量的特征参数,即可实现实时的入侵检测;现有技术采用泊松过程来描述无线传感网的流量模式,由于泊松过程不能描述网络中的突发流量且无法提取出足够的特征参数来全面刻画系统运行状态;比较而言,本发明的方法适用于事件触发与周期轮询并存的异构工作环境,通过准确的流量模型来保证高检测率和低误报率;(4)本发明提供的基于支撑向量机的无线传感网入侵检测方法,对现有的支撑向量机的训练方法做了改进,通过动态最优子集选取的方法处理非均衡数据集情况下的支撑向量机训练问题,通过主动挑选靠近分类超平面的训练样本、支撑向量、训练支撑向量机的处理,由于处于超平面附近的样本对于最终的训练结果具有主要贡献,因此采用本发明的方法克服了非均衡的训练集导致训练所得的超平面偏向于正常集的缺陷;且训练后得到的超平面与使用全部训练数据所获得的超平面非常接近;在训练集中攻击样本过少的情况下仍然可以获得较为理想的分类效果,极大提高了支撑向量机的训练速度,进而提高了入侵检测的实时性。附图说明图1是实施例提供的基于支撑向量机的无线传感网入侵检测方法的流程示意图;图2是实施例中建立的ON/OFF流量模型示意图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。本发明提供的基于支撑向量机的无线传感网入侵检测方法,首先对无线传感网建立流量模型以准确描述系统网络流量行为;借助于该流量模型,可以提取出规模较小的特征参数集来有效刻画系统运行状态;然后将该特征参数集作为输入向量集,使用支撑向量机来学习系统的流量模式;使用训练过后的支撑向量机分类超平面进行在线入侵检测。实施例提供的基于支撑向量机的无线传感网入侵检测方法,其流程如图1所示,包括离线学习和在线检测两个阶段;在离线学习阶段,使用ON/OFF模型提取大量的流量特征并训练支撑向量机,获得支撑向量机分类超平面的参数;在线监测阶段则采用在离线学习阶段获得的分类超平面来进行在线的入侵检测,具体如下:步骤1:捕获网络内的数据流量包,根据所提出的流量模型,提取所需的特征参数,然后进行归一化预处理,具体的步骤包括:步骤1.1:利用滑动时间窗口的方法获取网络流量数据,通过计算该时间段内流量特征参数的均值来降低噪声干扰;步骤1.2:采用图2所示的针对事件触发型无线传感网的ON/OFF流量模型来描述系统网络;在该模型中,只要有事件发生,无论是事件触发还是周期轮询型传感器,即产生一个ON状态,传感器在该状态内向簇头节点传输数据,完成数据传输之后进入OFF状态;依据该模型,提取所需流量特征参数,包括:ON状态的平均持续时间;OFF状态的平均持续时间;λON:ON状态下平均的数据传输速率;TIAT:ON状态下两个数据包之间的平均时间间隔;nON:ON状态下平均的数据包传输总量;k:数据传输速率;λb:单位时间内簇头收到的来自于传感器节点的ON状态的个数;传感器节点的数据突发性程度;步骤1.3:根据所提取的8个特征构建入式(1)所示的向量,并依据网络数据包来自于正常网络或来自处于被攻击状态下的网络,将特征集分为正常集SetN或攻击集SetA;步骤1.4:计算SetN中向量每一个维度的均值和方差,表示为μi和σi。然后对SetN和SetA中的每一个向量采用式(2)进行归一化预处理;其中,i表示向量x中特征的索引值;步骤2:使用步骤1中所获取的训练样本集,训练支撑向量机;具体步骤如下:步骤2.1:使用以下式(3)~(6)计算支撑向量机的超平面;上述函数满足:上述函数满足:其中:w是超平面的法向量;wT是指w的转置向量;b是超平面偏移值;yk是训练集中的标记;Φ(·)是从输入空间到高维特征空间的映射;C是一个正数常量,用于控制和之间的相对影响;ξk是松弛变量;K(xm,xn)=<Φ(xm),Φ(xn)>是核函数;xm和xn是指训练集中的样本;ym和yn是指训练集中样本的标记值;实施例中,用-1表示正常,用+1表示攻击;αm和αn是指拉格朗日数乘系数;步骤2.2:从攻击集SetA从随机挑选N个样本构成集合,从正常集SetN中随机挑选N个向量构成集合;步骤2.3:将步骤(2.2)构成的两个集合分别根据其中每一个向量距离当前获得的超平面的距离按照升序排列所有向量;步骤2.4:从步骤(2.3)排序之后的两个集合里各挑选出N/2个向量,构成训练集SetT;实施例里,挑选规则为:每次选择一个向量时,以95%的概率在前5%数据中随机选取一个向量,以5%的概率在后95%数据中随机选取一个向量;步骤2.5:根据上述公式(3)-(6),使用SetT训练支撑向量机,更新超平面;步骤2.6:重复步骤(2.2)~(2.5),直到达到预设的训练次数,获得超平面法向量wf,偏移量bf;实施例里,对于一个基于聚簇的单层无线传感网,预设的迭代次数为5,即重复步骤(2.2)~(2.5)共5次,每次迭代中预设的支撑向量机训练次数为50次;步骤3:将训练获得的支撑向量机用于在线入侵检测;在系统运行过程中,在线入侵检测包括如下子步骤:步骤3.1:从运行的无线传感网中捕获网络数据包,提取步骤1.2中定义的所有流量特征参数,构成输入向量x;在实施例中,使用滑动时间窗口获取数据包以减少噪声数据的影响;步骤3.2:使用式(2)对x进行归一化预处理;步骤3.3:计算wfx+bf;若wfx+bf≤0,则为判定正常网络流量;若wfx+bf>0,则判定为网络攻击。在实施例提供的上述方法中,可通过调整训练支撑向量机的迭代次数和每次迭代中训练集的大小来调整训练速度。本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1