当前位置:文档之家› 基于中间件的分布式网络异常检测系统

基于中间件的分布式网络异常检测系统

2006年第23卷・增刊微电子学与计算机1引言随着网络的发展,保证网络的安全与稳定也越来越为重要。

网络异常检测是发现网络故障和安全问题进而及时解决问题的有效手段,然而网络规模的不断扩大和网络流量的不断增加使得网络异常检测面临挑战,异常检测的性能随着网络规模的扩大和网上业务的增多呈现下降趋势,如何快速有效的检测网络异常并提高检测的可靠性已成为一个研究热点。

本文引入了分布式计算的方法,设计了一种基于中间件的分布式网络异常检测系统,旨在用分布式计算的方法提高对海量网络数据的处理能力,保证检测的实时性和检测数据的可靠性。

2网络异常检测这里提到的网络异常的范围较大,除了正常行为以外的网络行为都可以称为网络异常。

造成这些异常的原因是多种多样的,包括:网络设备故障,网路超负荷,恶意的拒绝服务攻击,以及网络入侵等影响网络运输服务的行为。

网络异常大体可以分为两类:第一类是关于网络故障和性能问题,例如文件服务器故障,广播风暴,虚假节点和瞬时拥塞等等。

第二类网络异常是安全相关的问题,拒绝服务攻击和网络入侵就是这方面的例子。

这些异常的一个共同点就是会导致巨大的网络通信流量变化。

检测网络异常的主要思路是:先通过一个足够长的训练阶段来定义出网络正常行为,再根据网络行为偏离正常行为的程度来判定异常是否发生。

我们可以通过有规律的网络数据来定义网络正常行为,但这要依赖很多特殊因素,例如网络通信流量的变化,可获得的网络数据的变化,以及网络上运行的软件种类的变动,这些都将影响对网络正常行为的描述[2]。

准确地获得网络性能检测数据对于异常检测是十分重要的一步,检测数据的来源主要有:第一是通过网络探针来获得网络行为测量值;第二是基于流统计的包过滤;第三是通过路由协议获取数据;第四是通过网管协议获取数据。

网络异基于中间件的分布式网络异常检测系统陈宁军倪桂强潘志松姜劲松(解放军理工大学指挥自动化学院,江苏南京210007)摘要:文章介绍了网络异常的概念和思路,然后对中间件技术做了分析比较,重点提出了一种基于中间件的分布式网络异常检测系统。

该系统采用CORBA实现分布式交互,能对网络异常进行分布式检测,与单点异常检测系统相比具有更高的实时性和处理数据的能力,对大型网络效果更好。

本系统通过MIB变量相关联地剧烈突变来检测异常的发生。

CORBA标准定义的比较完善的安全体系结构使本系统自身的安全性得到了保证。

关键词:网络异常检测,分布式,中间件,CORBA,MIB中图分类号:TP393文献标识码:A文章编号:1000-7180(2006)S0-0015-03ADistributedNetworkAnomalyDetectingSystemBasedonCORBACHENNing-jun,NIGui-qiang,PANZhi-song,JIANGJin-song(CollegeofAutomaticCommanding,PLAUniversityofScienceandTechnology,Nanjing210007,China)Abstract:Thispaperintroducetheconceptandthoughtofnetworkanomalydetection,thenanalyzeandcomparethetechniquesofmiddleware,andlayemphasisondesigningofadistributednetworkanomalydetectionsystembasedonmiddleware.ThesystemachievesdistributedcommunicationthroughCORBA,andcandetectnetworkanomaliesthroughdistributedway.Itismorereal-timeandhasbetterabilityondataprocessingcomparedwithsinglepointdetection,es-peciallyforlargenetwork.AnomalycanbedetectedthroughcorrelatedabruptchangesofMIBvariables.Thewellde-finedsecurityframeworkofCORBAhasensuredthisnetworkanomalydetectionsystem'sownsecurity.Keywords:Networkanomalydetection,Distributed,Middleware,CORBA,MIB收稿日期:2006-05-2815微电子学与计算机2006年第23卷・增刊常的检测方法主要包括基于规则的方法,有限状态机,基于模式匹配的方法和基于统计分析的方法。

网络异常检测的计算量是很大的,随着网络规模的日益膨胀,计算量也越来越大,异常检测系统往往来不及处理获得的数据,这可能导致数据丢失和检测结果严重滞后,从而影响检测的实时性,不能及时报警和触发相应异常处理机制,于是就产生了分布式异常检测的思想。

3中间件技术的分析比较中间件是一种独立的系统软件或服务程序,是一种构建分布式应用程序切实可行的软件,它屏蔽底层的异构性,为程序员提供一个简便的编程模型。

当今流行的中间件平台有:JavaRMI,CORBA和COM/DCOM。

CORBA的特点是互操作性和开放性好,平台兼容性和语言兼容性都很强;COM/DCOM是单一厂家提供的分布对象构件模型;JavaRMI是服务器市场的主流还是大型机和UNIX平台。

相比其它中间件,CORBA的优势有:第一,互操作性非常好,它能解决远程对象之间的互操作问题。

第二,它是真正跨平台的。

它可以比较平滑的运行于各个平台之上。

第三,它的IDL语言是一种标准的接口定义语言,目前主流的编程语言都支持IDL语言,这就使CORBA有了其它中间件都不完全具备的跨语言性。

综合考虑,我们选择CORBA来设计这个分布式网络异常检测系统。

4本网络异常检测系统的设计4.1网络数据的采集快速、准确、无遗漏地采集到网络数据是进行正确有效的网络异常检测的基础。

取得网络数据的方法很多,上文一共提到了四种方法,本系统采用通过网管协议获得网络数据的方法。

网管软件只能检测出很有限的网络异常,主要是网络中的硬件故障。

我们的异常检测系统可以通过网管中的MIB的实例变量来获取网络数据。

MIB实例变量提供了被管网络中每个节点的信息,这些信息的实时性较强,完全满足对网络进行实时异常检测的数据要求。

对于没有被网管管理的网络,则采用安置网络探针的方式来采集网络数据。

4.2采用的异常检测方法MIB变量随时间变化的曲线都是有规律的相对平缓的。

研究发现,网络异常可以通过与网络通信流量相关联的MIB变量来描述[2]。

先经过一个足够长的学习阶段,找出各MIB变量随时间变化的曲线的规律,描述网络正常运行时MIB变量值的范围,当异常发生时,与网络通信流量相关联的所有MIB变量的曲线几乎会同时发生剧烈的突变,超过正常值的范围并持续一段时间,我们可以利用这个规律来进行异常检测。

判定规则为:当与网络通信流量相关的多个MIB变量关于时间的曲线同时发生持续一段时间的剧烈突变时就可以判定异常发生,如图1所示。

然而与通信流量相关的MIB变量较多,如果只有部分变量变化时,如何判定异常呢?这里采用投票的方法,当超过半数的这种变量同时产生剧烈突变时,就认为异常发生了。

也可以根据需要调整异常的判定标准。

4.3系统的体系结构我们采用弱中心的方法,将检测分析模块分散部署在网络上,同各个网管代理相结合,分别进行数据采集和检测,并由一些子控制器分片管理各个分析模块,再通过一个中心控制器进行总体管理,同时接收各节点的告警并进行异常处理。

对于没有网管的网络,采用探针来获取网络数据。

该系统的结构如图2所示。

各部分的功能描述如下:(1)中心控制器:负责定义各个分处理器所采用的检测策略和告警阈值,同时接收各个分处理器或者子控制器的异常告警,并且根据告警中提供的异常定位信息制定相应的异常处理措施;(2)子控制器:管理部分异常检测分处理器,根据中心控制器的指令控制分处理器,同时接收告警并上报中心控制器。

具有一定的控制权限,可自行定义管理的分处理器的异常检测策略和告警阈值,并可以决定是否将异常告警上报,也可以根据情况对部分异常实施应急处理;(3)分处理器:负责对采集上来的网络数据进行分析。

从网管代理的MIB实例库中获取网络数据,并用预先定义的检测策略来对该子网段进行异常检测,根据MIB变量来定位异常发生的大16概位置,这样可以大大缩短异常处理的时间,提高网络的可靠性;当网络数据量比较大时,可以启用备用分处理器来实现负载均衡,保证对网络数据进行及时地分析处理;(4)名服务器:以树形结构存放中心控制器、各子控制器、分处理器和备用分处理器所提供的所有服务对象的对象引用和名字的一一对应关系。

保证挂在ORB核心总线上的对象可以通过名字轻松找到并调用所需的服务对象。

整个系统的工作过程:首先获得网络特征数据,对于有网管的网络,可以直接从网管代理的MIB实例库里获得数据,对于没有网管的网络,通过网络探针获取。

然后由分处理器来分析获取的数据,原则上从一点获取的数据由一台分处理器来分析,但当数据量比较大时可以启用备用分处理器来进行负载均衡,提高分析处理数据的效率,它们之间通过ORB核心总线进行通信。

当网络不繁忙时,就可以让备用分处理器转入休眠状态,或者解放出来做其它工作。

当检测到异常时,分处理器通过ORB核心总线将异常上报给所属的子控制器或者中心控制器,并通过显示终端实时显示给管理员。

控制器可以通过触发相应的异常处理机制或者由管理员手动制定异常处理措施来进行异常处理。

整个工作过程中,挂在ORB总线上的各个节点都是通过名服务器来找到其它节点并调用它的服务的。

4.4系统的特点和优势4.4.1利用MIB进行异常检测MIB提供了网络中每个节点的下属设备细到每个端口的信息,这些数据基本是实时更新的,已充分满足网络异常检测的需要,我们用前面提到的检测算法结合统计分析的方法来分析这些数据,不仅能判定异常的发生,还可以大概确定异常的类型和发生的位置。

从MIB获得的数据具有较高的可信度,而且不用再另外配置专用的设备来采集网络数据,这不仅提高了检测结果的可靠性,同时节省了成本。

4.4.2系统较强的安全性分布式系统具有网络化和异构化的特点,因而比传统系统更易出现安全问题[3]。

作为网络异常检测系统,其本身的安全性至关重要,只有自身安全性得到保证,检测结果才是可靠的。

本系统的安全性是有保障的,这得益于CORBA的安全机制。

分布式系统由于是通过一个不完全可靠的网络连接的,所以面临着非法访问、冒充用户、篡改和删除数据包等威胁,这严重影响了计算结果的可信度。

相关主题