基于流数据的网络监控系统设计
2016-09-28李玲玲
李玲玲 辛 浩
(淮北职业技术学院计算机系, 安徽 淮北 235000)
基于流数据的网络监控系统设计
李玲玲辛 浩
(淮北职业技术学院计算机系, 安徽 淮北 235000)
针对各种恶意攻击及滥用资源的网络现象,提出一种新的基于流数据的网络安全检测算法。采用可调节大小的滑动窗口,使用收银机模型、十字转门模型与时间序列模型进行流数据处理和挖掘,以检测并预警不安全的网络流。
流数据; 滑动窗口; 安全检测; 桶
随着互联网的普及、网络技术的不断更新以及网络规模的不断扩大,网络业务不断深入到各个领域 。人们的日常生活越来越依赖网络,因此,网络安全尤显重要,反病毒、黑客的网络安全防护技术也应不断提高。病毒及黑客入侵等各种网络攻击行为严重影响到网络安全,用户不断提高的网络防护要求与有限带宽之间的矛盾也趋尖锐[1-2]。原有的网络安全检测方法需要不断更新,以适应实时、快速、海量的流数据处理要求。如何对流数据进行有效的分析检测,预警控制不安全的网络行为,是时下数据挖掘领域的研究热点之一。本次研究中设计了一套基于流数据的网络安全检测新系统,用于网络异常行为分析及预警。
1 流数据技术
流数据[3]是指连续到达的数据项序列(d1,d2,…,di),描述为一个一维函数D[1,2,3,…,N]→R,即按时间先后顺序快速到达的海量数据流集合。流数据到达的速度无法预知和控制,其特点是实时到达、次序独立、规模宏大、不可预知,且数据一经处理后就不能再次取出,或者取出的代价高昂。滑动窗口和流数据模型是流数据技术应用的重要内容。
1.1滑动窗口
滑动窗口是流数据处理的常用方法[4]。滑动窗口技术,是指在数据的实时检测中,用固定的时间窗口以固定的时间间隔滑动来截取无限长的对象序列,从而获得定长的待检测对象序列。
滑动窗口一般分为2类[5-6]:一类是基于元组个数来定义的固定窗口大小的滑动窗口,窗口内始终保持着最近到来的N个元组;另一类是基于时间定义即固定时间的窗口,窗口内始终存储固定时间T内的元组。不管是固定窗口大小的滑动窗口还是固定时间的窗口,都要随着流数据的到来而向后进行滑动。
1.2流数据模型
常用的流数据模型有3种,分别是时间序列模型、收银机模型和十字转门模型[7]。时间序列模型(TimeSeriesModel)是指数据di按照时间先后顺序到来处理数据的模型。十字转门模型(TurnstileModel)是一种“完全动态状态”的模型,模仿的是宾馆转动门工作模式,即在同一时刻,有“入”的数据,也有“出”的数据。收银机模型(CashRegisterModel)模仿的是超市收银机的工作模式,可对数据进行累加,适用于监控或访问Web服务器的主机IP地址,以及流过网络中某个链路的数据包IP地址。
2 基于流数据的网络安全检测系统设计
进行网络安全检测前,首先要学习和建立用户的正常历史行为,将实时数据行为与正常的用户行为进行比较,从中发现异常行为后提出预警,从而达到净化网络环境、提高网络有效利用率的目的。一般情况下,非正常网络用户使用网络流量较大,或是在一段时间内发起的连接请求数目过多、频率过高[8-9],有的连接请求具有一定的间隔规律。
基于流数据的网络安全检测系统设计了三大功能模块(见图1),分别为数据准备模块、使用挖掘算法进行挖掘模块、规则发现及有效性验证模块。
图1 功能模块示意图
2.1网络行为判断特征设定
网络异常行为的表现有多种特征,在此,以区分度最大的特征属性值作为网络行为异常的判定依据。在局域网中,根据网络流的特征值来进行安全预警。网络流中包含了很多重要属性值,如通信协议类型(Protocol)、源IP地址(SrcIP)、目标IP地址(DstIP)、源端口(SrcPort)、目标端口(DstPort)、服务类型(ToS)、路由器的接入口(InInt);如果对网络设备进行相应设置,则网络流数据还可以包括数据个数(Pkts)和(字节数)Bytes。在一定时间内,如果某一源IP地址的连接数据个数及流量总和超出了一定标准,则认定在局域网中此IP地址用户为网络异常行为用户。因此,不需要关注每一个字段,基于流数据的局域网络安全检测算法只需要关注源IP地址(SrcIP)、目标IP地址(DstIP)、ConFlow(网络连接流量)这3个字段即可。
2.2流数据挖掘模型的建立
我们提出了基于网络流数据模型的数据挖掘新算法,然后根据设定的挖掘规则找出异常用户。
流数据通常是实时、顺序、大量到达,因而采用时间序列模型对网络整体流量进行检测处理,采用十字转门模型与时间序列模型相结合的方式对同一源IP地址发出的连接进行检测处理,采用收银机模型对同一时刻各个不同目标IP地址的连接情况进行检测处理。
2.3流数据挖掘算法思路及描述
2.3.1算法思路