【技术实现步骤摘要】
一种软件定义网络环境下基于深度学习的入侵检测方法
[0001]本专利技术属于软件定义网络入侵检测领域,特别涉及一种软件定义网络环境下基于深度学习的入侵检测方法。
技术介绍
[0002]面对网络安全威胁,传统网络的攻击方式对SDN仍然有效,且SDN架构集中式的特点引入了新的故障点和攻击平面,更加容易成为攻击者的目标。面对这些挑战,高效、稳定的入侵检测与防御机制的研究具有很重要的价值和意义。目前,SDN控制器轮询机制是采用固定时间间隔获取网络信息,以便对整个网络进行全局监控和监控。然而轮询频率固定,控制器不能及时获取网络的实时信息。如果太频繁,会造成控制器和通信链路的负载过重;针对这种情况设计了一种能够自适应轮询的机制获取网络实时流量信息的方法。
[0003]另一方面,当前的入侵检测方案大体分为三类:1.基于统计的检测方案,主要通过统计流量中的一些信息来判断是否异常,例如信息熵,但是这种方式误判率较高。不能够对异常流量进行有效识别。2.基于机器学习的检测方案,该方案主要存在的问题是特征选择以及检测的准确率。3.通过基于深度学习的检测方法,需要大量的训练样本,并且训练时间较长,并且存在网络入侵模型数据集的可用性,所考虑的样本不足以涵盖应用程序行为。基于上述问题,本文设计了一种SDN环境下基于深度学习的入侵检测方法。
技术实现思路
[0004]本专利技术旨在解决以上现有技术的问题。提出了一种软件定义网络环境下基于深度学习的入侵检测方法。本专利技术的技术方案如下:
[0005]一种软件定义网络环 ...
【技术保护点】
【技术特征摘要】
1.一种软件定义网络环境下基于深度学习的入侵检测方法,其特征在于,包括以下步骤:步骤a,控制器以间隔时间t通过发送ofpt_multipart_request(openflow报文类型_多部分请求)报文轮询OpenFlow交换机,OpenFlow交换机将流表中设计好的统计信息通过ofpt_multipart_reply(openflow报文类型_多部分响应)报文返回给控制器的流量信息采集模块进行采集处理;步骤b,通过控制器流量信息采集模块收集的数据,统计源IP地址数量并计算单位时间内的Renyi entropy雷尼熵,当熵值超过阈值时,减少轮询间隔时间t,加速提取流表特征;否则增加轮询间隔t值;步骤c,构建SEA
‑
GRU稀疏自编码
‑
循环门单元神经网络模型,该模型通过稀疏自编码器对重新提取数据特征,降维数据维度。降低维度后的数据通过GRU循环门单元深度神经网络进行分类检测判断是否是入侵流量;将带有标注的数据输入到该模型进行训练,训练后获得最佳模型,将模型导入到控制器之中来实现对网络流量异常的实时监控,实时发现是否存在网络攻击;步骤d,控制器检测模块加载训练后得到的最佳模型权重,对实时的网络流量判断是否是异常攻击流量;控制器针对异常数据报文信息下发流表,使交换机丢弃该数据,对于正常流量数据报文正常放行。2.根据权利要求1所述的一种软件定义网络环境下基于深度学习的入侵检测方法,其特征在于,所述步骤a中,控制器中的流量信息采集模块通过报文获取包括流表平均包数、单条流的速率、源IP速率在内的信息,其中,流表平均包数:式中,S
packet_num
表示周期T内的总包数,S
flow_num
表示周期T内的流总数;单条流的速率计算公式:式中,b
n
为第n次轮询时Flow_Stats_Reply流表统计回复消息消息中byte_count字段的值,代表到目前为止,该条流表已经处理过的字节数,t
n
代表当前流表已经存在的时间,V
n
为两次轮询间隔内的单条流的速率;源IP速度计算公式:式中,c
n
为第n次轮询时源ip值的个数,代表到目前为止,该条流表已经处理过的源ip个数,t
n
代表当前流表已经存在的时间。3.根据权利要求1所述的一种软件定义网络环境下基于深度学习的入侵检测方法,其特征在于,所述步骤b中计算窗口内的源IP地址的α阶Renyi熵公式为:
式中,n表示的是有n种取值,x是其中一个具有可能结果的离散随机变量,p
i
是随机变量x的概率,满足p
i
≥0,当网络renyi熵数值一定时间类未超过阈值,则逐步恢复扩大控制器轮询间隔,减慢特征提取速度;t
n
=max(t
n
‑1n
,1)#(5)式中,n表示阈值的倍数,t
n
表示上一轮的轮询时间。4.根据权利要求1所述的一种软...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。