(计算机科学与技术专业论文)网络异常流量检测模型设计与实现.pdf_第1页
(计算机科学与技术专业论文)网络异常流量检测模型设计与实现.pdf_第2页
(计算机科学与技术专业论文)网络异常流量检测模型设计与实现.pdf_第3页
(计算机科学与技术专业论文)网络异常流量检测模型设计与实现.pdf_第4页
(计算机科学与技术专业论文)网络异常流量检测模型设计与实现.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 网络异常流量检测功能是i t 运维管理系统的重要功能之一。在 i t 系统的管理过程中,网络的可用性和可靠性是一项非常重要的指 标,通过对网络流量的检测可以对网络运行状况进行预判,从而可以 采取针对性的解决措施来保证网络正常的运行。针对企业内部i t 网 络,如何设计实现合理有效的网络流量异常检测方法已成为i t 管理 中重要的课题。 本文在介绍了现有常用的网络流量异常检测算法的基础上,然后 结合企业内部i t 网络自身的特点,提出了用时间窗比较进行网络异 常流量检测的新算法;然后将所提出的新算法同已有的静态、动态检 测算法相结合,提出了网络异常流量综合检测模型,通过不同方法和 不同角度比较来发现网络中是否存在异常流量。 在介绍i t 运维管理系统及其功能的基础上,设计并实现了网络异 常流量检测子系统,此子系统实现所提出的网络异常流量综合检测模 型。论文给出了子系统的详细设计,数据库设计,检测流程及其实现 步骤、实现主要类的说明和测试情况。最后对论文加以总结并提出需 要进一步研究或改进的工作。 关键词网络异常异常检测网络管理 d e s i g na n di m p l e m e n t a t i o no ft h en e t w o r k t r a f f i ca n o m a l y d e t e c t i o nm o d e l n e t w o r kt r a f f i ca n o m a l yd e t e c t i o ni sa ni m p o r t a n tc o m p o n e n to f i tm a n a g e m e n t w i t hi nt h eo p e r a t i n go ft h ei ts y s t e m ,t h er e l i a b i l i t y a n dt h eu s a b i l i t ya r et h ek e yp e r f o r m a n c ei n d i c a t o r s t oa n a l y z et h e c o m p o n e n t so ft h en e t w o r kw o r kt r a f f i c ,w ec a nj u d g et h eo p e r a t i n g s t a t u so ft h en e t w o r ka n dm a k et h ef i g h td e c i s i o nt om a k es u r et h es t a b l e s t a t u so ft h en e t w o r k h o wt od e s i g na ne f f e c t i v em o d e lo fa n o m a l y d e t e c t i o nt oc h e c kt h ei n n e rn e t w o r ko fac o r p e r a t i o ni sa ni m p o r t a n t t a s ki nt h ei tm a n a g e m e n t f i r s t l y , t h eb a s i ck n o w l e d g eo fn e t w o r kt r a 墒ca n o m a l yd e t e c t i o ni s i n t r o d u c e da n dt h er e s e a r c hb a c k g r o u n da n ds i g n i f i c a n c eo ft h i si s s u ei s a l s od e s c r i b e d s e c o n d l y , i nt e r m so ft h ec h a r a c t e r so ft h ei n n e rn e t w o r k i no n ec o m p a n y , t h ed e s i g nc o n c e p t sa n df u n c t i o nr e q u i r e m e n t so ft h e n e t w o r kt r a f f i ca n o m a l yd e c t e c t i o na r ei n t r o d u c e d c h e c kt h en e t w o r k t r a f f i c a n o m a l yb v d i f 诧r e n t w a y sa n df r o md i f f e r e n tv i e w s b y i n t r o d u c i n gi to p e r a t i o nm a n a g e m e n ts y s t e ms t r u c t u r ea n df u n c t i o n r e q u i r e m e n t s ,t h es o f t w a r ea r c h i t e c t u r e so fn e t w o r kt r a f f i ca n o m a l y d e t e c t i o na r e p u tf o r w a r d ,a n dt h em o d u l ed e s i g n ,p r i m a r yd a t a b a s e s t r u c t u r e s ,w o r k f l o wo fd e c t e c t i o n ,m a i na l g o r i t h m sa n dt h em a i n i m p l e m e n tc l a s s e sa r ea l s os t a t e d a tl a s t t h ec o n c l u s i o no ft h i sp a p e r a n ds o m ef u t u r ew o r ka r eb r i e f l yi n t r o d u c e d k e yw o r d sn e t w o r kt r a f f i c a n o m a l ya n o m a l y d e t e c t i o n n e t w o r km a n a g e m e n t 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: 施怖 j 日期:勘宫伞i 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名: 日期:枷譬咩j 导师签名乖弘 日期- 溯- | 北京邮电大学硕上研究生毕业论文 网络流量异常检测模型设计与实现 1 1 研究背景 第一章前言 随着i t 系统建设的完成和规模的扩大,对i t 系统的管理变得越来越复杂, 需要建立与之对应的1 1 r 运维管理系统来管理庞大的i t 系统,使i t 系统在出现 故障的情况下,能在最短时间内得到处理,将损失降到最低。r r 运维管理系统 已成为目前企业信息化建设的重点,在对企业内部建立的r r 网络管理中,网络 监测是其中的基础部分,是网络管理人员的主要工作【l 】【2 1 。网络监测的目的是 提高服务质量,提高资源利用率,在用户报告问题之前开始诊断或解决问题, 提高网络的可靠性和可用性。网络流量异常检测是r r 网络监测的重要组成部 分,对于一个企业内部网络,流量管理主要保证和提高网络可靠性和可用性。 通过异常流量的探测和分析,用户可以及时发现网络中出现的异常流量,对病 毒、网络攻击以及网络非法应用产生的网络流量进行监控。当异常检测出来后, 用户可以根据异常流量分析得出网络遭受哪种攻击,从而采取较有针对性的解 决措施,也可以定位出产生故障的问题主机,隔断该主机与网络的连接来保证 网络运行的质量。 有效的流量管理一般分为两个步骤,第一步是系统发现网络性能问题或故 障,第二步是提出性能问题和故障的解决办法。目前网络流量管理中对流量异 常的告警多是采用基于阈值的方法,即由有经验的网络管理员人为的设定某条 链路的流量阈值,当系统发现当前流量超过阈值时产生告警。这样的系统有一 个缺点:网络流量存在突发性和随机性的特点,在实际网络运行中难以设定这 个阈值,如果设定的阈值太低,则系统可能出现告警风暴,其中误报的可能性 很大;如果设定的阈值太高,则不易发现网络中存在的细微流量突变,这个时 候可能就是某种攻击或病毒的出现,从而导致不能及时进行有效的网络管理。 因此提出更加有效和更有针对性的网络流量异常检测模型对于i t 管理系统的 开发和建设具有重要的理论意义和应用价值。 1 2 本文要解决的问题与创新点 对1 1 r 网络流量异常的检测是论文试图解决的问题,具体来说,论文主要解 北京邮电人学硕- i :研究生毕业论文网络流量异常检测模型设计与实现 决以下问题: 一 如何对企业内部网络建立一套更加有效和有针对性的网络流量异常检 测算法和模型; 一 如何设计和实现r i 运维管理系统中的网络流量异常检测子系统。 概括起来,本文的创新点是: 一 提出了基于时间窗比较进行网络异常流量检测的新算法:时间窗内网 络流量采样曲线比较算法; 一 提出了网络异常流量检测模型,此模型将时间窗内网络流量采样曲线 比较算法同现有静态、动态检测算法相结合,并对各种检测算法的结 果进行综合分析,此模型能够更加有效地检测企业内部网络的异常情 况。 1 3 研究生期间的工作 研究生期间,笔者参与多个大型1 1 r 运维管理系统的研究与开发工作,对 i t 运维管理系统结构有较深的认识,掌握了i t 运维管理系统所需的关键技术, 包括基于模型驱动架构( m d a ) 技术,故障根原因分析技术,流量异常检测技 术和流量流向分析技术等,并对网络流量管理进行了较为深入的研究。攻读研 究生期间的研究工作主要如下: 一 1 1 r 基础设施与应用管理子系统的研究与开发。i t 基础设施与应用管理 子系统是i t i l 服务管理系统中的基础部分,负责管理企业异构网络环 境下各种1 1 r 基础资源( 网络设备、服务器、数据库、中间等) 。主要 负责系统的u i ( 用户界面) 设计和u i 集成,并参与完成性能采集和性 能分析模块的实现。 一 某集团公司综合网络监视管理系统的研究与开发。负责完成基于 n e t f l o w 的网络流量流向分析模块,此模块对企业内部网络的利用率和 网络带宽和负载调整有重要的作用。 一 全国无线电管理信息系统网络管理系统的研究与开发。在研究和开发的 工作中提出了基于企业内部网络的网络流量异常检测算法,并且根据 i t 运维管理系统结构,将网络流量异常检测作为其中一个关键子系统 实现,此子系统能够根据网络出现的异常及时告警,使得网络的可靠性 和可用性得到保证。 2 北京邮电大学硕士研究生毕业论文网络流量异常检测模型设计与实现 1 4 本文结构 本文共五章,其内容如下: 第一章前言。前言描述问题的研究背景和研究意义以及本文要解决的问题。 第二章网络异常流量检测方法概述。全面综述各种网络流量的异常检测方 法,并且给出具体的描述和分析。 第三章网络流量异常检测新算法与综合检测模型。提出了基于时间窗比较 进行网络异常流量检测的新算法,在此基础上,提出了网络异常流量综合检测 模型。 第四章流量异常检测子系统设计与实现。在简单介绍i t 运维管理系统结构 和系统功能后,说明网络异常流量检测在实现1 1 r 运维管理系统中起到的重要作 用,设计并实现了网络流量异常检测子系统。此子系统实现本文提出的网络流 量异常综合检测模型。 第五章结束语。总结全文并提出论文中可进一步改进的地方。 最后为参考文献和致谢部分。 北京邮电人学硕: :研究生毕业论文网络流量异常检测模型没计与实现 第二章网络流量异常检测方法概述 本章对现有的网络异常检测技术进行较为详细地描述和分析。首先根据网 络流量出现异常的原因对网络异常流量进行了分类,然后根据不同的角度将检 测方法分为两个大类进行描述,其中静态检测方法包括固定阈值方法和自适应 阈值调整方法【3 】;动态检测方法包括基于指数平滑技术的检测方法 4 1 、g l r 检 测方法【5 1 、a m yw a r d 等人提出的检测方法【6 】等。 2 1 网络异常分类 网络流量异常的产生有多种原因造成,总结起来产生网络流量异常的主要 原因有:( 1 ) 网络设备自身发生故障,例如在网络中由于路由器或是交换机的 故障导致网络拓扑结构的变化或是网络的中断都会发生网络流量的变化,导致 某些链路的流量异常增加,某些链路流量异常减小。在企业内部构建的i t 支撑 系统包括多种支撑服务,如数据库服务器,邮件服务器,w e b 服务器等等,当 这些服务器出现故障的时候也会导致网络流量出现异常的变化。( 2 ) 当网络中 存在恶意攻击的时候,网络也会出现异常流量,例如当r r 系统中某台主机感染 了蠕虫病毒,导致该主机疯狂的进行主机探测,这时候网络中会出现具有蠕虫 病毒特征的i c m pp i n g 包和t c ps y n ,f i n ,r s t 及a c k 包。当企业内部网络 中的部分主机感染了这种病毒的时候,网络就会大量充斥着这种包,导致其他 业务数据丢失,网络流量过载,或是网络拥塞。 根据网络异常流量引起的不同原因可以把网络异常分为三类【7 l :网络故障 引起的异常、瞬间大量访问异常和网络攻击异常。 网络故障异常是指由于网络设备的故障或是链接到网络上的承载一些关键 业务的服务器的故障,从而引起的网络流量异常。例如在企业内部构建的i t 支撑系统中,由于某个运行一项支撑服务( 例如:邮件服务) 的服务器发生故 障,导致这项服务的暂停,可以很清楚的看到企业网络由于邮件服务的停止会 使网络流量大幅下降,导致流量的异常减小。再例如企业内部网络由两个核心 路由器组成和外界信息交互的消息转发,当某一个路由器发生故障的时候,另 一个路由器上的端口会比平时接到更多的数据发送和接收的请求,有可能导致 网络过载和拥塞,从而使得网络服务质量变差,关键业务数据丢失等等。这种 情况会导致观测路由器端口转发的数据流量会突然大幅增加,导致流量异常变 大。 瞬间大量访问异常是指由于在短时间内对网络中某个服务器请求的大量发 起导致服务器过载,业务不能处理,响应不及时等情况导致的异常。这种异常 4 北京邮电大学硕士研究生毕业论文网络流量异常检测模型设计与实现 跟网络故障异常引起的网络流量异常增大有相似的地方,但是它们属于不同的 分类。网络故障导致的网络流量异常增大是由于硬件设备的故障使得网络拓扑 结构的改变从而引起的异常,而瞬间大量访问则是由于用户行为的变化导致了 网络流量异常,例如,过年期间的短消息发送量较平时会有几倍甚至几十倍, 几百倍的增长,这种可以预期的用户行为导致网络异常和硬件故障引起的异常 需要不同的区分和解决。 网络攻击异常是指网络中出现恶意的对网络中某个目标进行攻击。例如 d o s 攻击和蠕虫病毒端口扫描攻击。这种网络异常情况的出现是由于企业内部 网络感染病毒造成。当部分主机感染了这个病毒以后,会导致这些主机大量不 断向内网中其他主机发送端口扫描的数据包,由于网络的承载设备不能区分网 络中的业务组成所以会将病毒包和正常的业务数据包做相同的处理,即在网络 设备负载过重的情况下会丢弃大量的数据包。当这种情况出现以后,业务质量 将会大幅下降,网络会由于大量存在于网络中的病毒数据包而拥塞和过载,严 重的损坏了企业网络和业务的运行。 2 2 静态检测方法 静态检测方法是指由网络管理人员根据自己在管理网络过程中的经验来设 定阈值检测网络是否出现异常。静态检测方法包括固定阈值和自适应阈值设定 两种。静态检测方法完全依赖于网络管理人员对整个网络流量的熟悉程度和他 自己对这个网络流量行为的认识和理解。网络管理员根据自己管理网络的经验 来设定阈值,使得网络异常流量检测阈值不能随着网络流量时刻的变化来及时 的调整,产生很多的误报事件和漏报事件。改变阈值由人工设定固定的值到网 络根据流量随时调整到自适应的阈值设定是网络流量异常检测的一种进步,这 样使得人工维护阈值的成本降低,依赖于系统的自适应。但是自适应的阈值设 定检测方法同样是基于静态检测的方法,对于网络存在那种流量突变的情况同 样存在漏报的情况。 2 2 1 固定阈值的检测方法 固定阈值的检测方法,是目前网络监测中最常见的方法。该方法简单易行, 实时性强,但是需要网络维护和监测人员需要有丰富的网络管理经验,阈值的 选择必须合适当前网络情况。当选择阈值过高时,如果网络这个时候发生异常, 而异常的变化在阈值以下,则可能检测不出这种流量异常。如果设置的阈值过 低,由于网络的不稳定性则会造成过的虚假告警,产生告警风暴,从而掩盖真 北京邮电人学硕十研究生毕业论文网络流量异常检测模型设计与实现 实的有用的告警,使得网络管理人员很难维护。 固定阈值的检测方法对某个网络参数给出确定的阈值,如果在某个采样时 刻发现采集的该参数值超过预定的阈值,则发出流量异常告警。 u 名s 8 8 8 i - s t a t , l ct r a f f l cl 旧脯b n 翻吨l i m _ 0 州陟 ,。 l v i 谚 队- f 1 k , b 1 “m瑚2 图2 1 固定阈值检测方法示意图 如图2 1 所示,起伏的线表示采集一段时间采集到的网络流量数据,水平 线表示预先设定的阈值。采样点为每五分钟一次,如果预先设定的阈值为一个 常数,则由上图我们可以看到当采集到的流量大于阈值( 本例中我们假设为 5 0 0 0 ) 的时候,系统就会自动产生一个流量异常告警。这种方法简便易行,但 是需要丰富的网络管理经验,阈值的选择必须适当。这种方法存在三个问题: 一,如何设定一个合适的阈值是一个难点;二,难以发现一些在可以接受阈值 内,流量细微变化的异常行为:三,由于网络中流量在不同的时间呈现出不同 的流量趋势,对不同时自j 采用同一个阈值显然不太利用异常的发现,导致发生 较高的误报率或是较高的漏报率。 2 2 2 自适应阈值的检测方法 自适应的阈值设定检测方法是对固定阈值检测方法的一种改进。由于上面 所说的情况,对于不同时间段的网络流量采用同样一个阈值来判断网络是否出 现异常是不合理的。企业内部的i t 系统网络呈现出一个周期性和突发性明显的 6 北京邮电火学硕士研究生毕业论文网络流量异常检测模型设计与实现 特征,例如在工作时间的流量占总流量的绝大部分,而工作时间外,除了网络 本身维护自身需要的流量外,人为参与导致流量变动的情况很少,这些自身又 组成一个相似的网络流量曲线。工作日的流量则又呈现出一个工作时间和非工 作时间流量突变的一种情况。 自适应的阈值检测方法,对于某个流量参数,不再采用同一不变的阈值来 检测,而是根据网络实际流量在不同时间段内的流量趋势,在不同的采集时刻 点设置不同的阈值来判断流量是否异常。这样的检测方法比固定阈值的检测方 法更能符合网络监测的实际需求。自适应的阈值检测方法可以分为两个步骤: 第一,模型化正常行为( 称作基线建立) ;第二,根据基线建立一个网络行为容 许的变化范围边界,这个边界就是用来区分网络正常行为与异常行为的界线。 a m a x i o n 3 】等人应用自适应的阈值检测方法,通过检测卡内基梅隆大学 校园网中计算机系子网的利用率、以太网中的数据包碰撞数、数据包大小分布、 广播数据包以及对大流量用户流量排名统计,检测广播风暴、人为故障插入( 产 生大量的短数据包,持续发送数分钟) 、以及硬件故障( 协议实现的问题) 等等。 在同样的子网中,f f e a t h e r l 4 1 等人应用类似的方法,通过检测网络负载、进出 入子网的数据包数、网络中发生的碰撞数、短数据包、长数据包、广播包等参 数观测值中的异常,检测到广播风暴、网桥宕机、硬件故障等异常。观测值的 采样时间间隔为5 分钟。 在这种检测方法中,主要对观测值的历史数据建立数学模型、模型的更新、 以及确定容许范围。以网络的利用率为例,从实际以太网中采集的网络利用率, 在不同时刻的观测值差异很大。这个检测方法需要做的首先是消除数据中的显 著差异性而保持原始形状和趋势,再用数学模型来近似地拟合这些散乱的数据。 因为数学模型是时间的函数,即得到一条曲线,将这条曲线作为这些数据总的 趋势的一种表示,反映数据中的总体上升、下降和周期性行为和顺序。这里采 用一系列数据分析中采用的技术来平滑原始数据,得到数学模型如下: z f = 0 2 5 y f 1 + o 5 y f + 0 2 5 y ,+ l ( 2 - 1 ) 这条曲线还不是一条平滑曲线,需要进一步平滑,再经过中值过滤、取得 中值过滤后的信号的导数,然后进行阈值处理、合成信号,调整总体幅度的一 系列处理过程,才能得到一条光滑的拟合曲线p ( t ) ,它用来表示观测值的正 常行为,是一个t 的函数。 上述过程仅仅是一天时间的正常行为,它不可能表示捡来每天的正常行为。 由于网络的动态性,网络行为会因为网络不断变化环境的影响而发生逐渐漂移, 随着时间的发展会越来越远离当前的正常行为。因此需要一种方法根据最近以 来的观测值逐渐刷新每天的网络正常行为模型。这种刷新机制可以通过把当天 7 北京邮电大学硕上研究生毕业论文 网络流量异常检测模型设计与实现 的和前一天的网络行为混合起来,使得历史数据的影响起着主导作用。这种混 合是经过下面的关系式来实现的: p ( t ) = 口 d ( f ) 一p ( t 1 ) + p ( t 1 )( 2 2 ) 其中p ( t ) 是以太网利用率在时间t 的预测值,即时刻t 的正常模型,d ( t ) 是时刻t 的观测值,q 是加权常数,它控制新数据在模型中所占的比重,所以它可以控 制模型适应局部行为的快慢程度。 上面所做的工作是整个自适应阈值的检测方法的第一步,即模型化正常行 为( 也包括了正常模型的刷新) 。如果当前观测值完全符合这个正常行为模型, 那么这个观测值显然应该认为是正常的。但是这种判断准则过于苛刻,因为期 望一天的网络行为与前一天的行为完全匹配是不可能的。那么就需要一个容许 范围,一个新的观测值如果在这个边界以内就被看作是正常的,如果位于该边 界范围之外,那么就被认为是异常的。如何得到这个容许范围呢? 这就是第二 步需要解决的问题,也就是建立正常行为的边界,或是说是容许范围。 获取容许范围的需要以建立正常行为模型相同的方法计算得到。不同之处 在于模型化正常行为的数据直接来自网络环境,即观测值本身,而容许范围的 数据则是由这些观测值的标准差得到。也就是说,在每天的同一时刻,都有一 个观测值,那么在过去一周( 或1 0 天,一个月) 的每个时刻就有7 个( 1 0 个, 3 0 个) 观测值,由这些观测值可以算出它们的标准差。当这个标准差,即容许 范围得到以后,把它加到正常行为模型( 曲线) 上,得到正常行为的上边界, 再由正常行为模型减去容许范围,就得到正常行为的下边界。 2 3 动态检测方法 2 3 1 基于指数平滑技术的检测方法 在网络检测软件r r d t o o l 8 】中常使用一种利用指数平滑技术检测网络异常 的方法。这种检测方法实际上是利用预测技术得到下一个预测值,然后以这个 预测值作为参照,考虑下一个实际观测值与该预测值的偏离大小。如果偏离超 出一定范围就认为是异常。这个实时监测软件能够收集、存储、以及可视化网 络各参数的观测值序列,并集成了数学模型对观测值序列进行自动地异常检测, 是一种灵活、有效的自动化检测工具,可以大大减轻网络管理人员的负担。监 测的参数有经过路由器或交换机端i :1 上的比特数、c p u 负荷、链路上的负荷等。 通常观测值采样的时问间隔为5 分钟。 指数平滑是基于时间序列的一个简单统计模型进行预测的,指数平滑只需 北京邮电大学硕上研究生毕业论文网络流量异常检测模型设计与实现 要序列自身的信息进行预测,而不需要其他序列的信息,是根据自身预测自身 的一种预测方法;指数平滑技术检测方法中最简单的是简单指数平滑方法,适 用于序列值围绕自身均值( 常数) 上下作随即波动的序列,这类序列既无趋势 变动也无季节变动。在软件r r d t o o l 中,应用的指数平滑技术有单指数平滑和 h o l t w i n t e r s 指数平滑。 简单指数平滑预测过程是依据平滑常数q 进行递推计算的过程: y f + l = 明+ ( 1 一a ) y , ( 2 - 3 ) 平滑常数q 是大于0 小于1 之间的一个小数,例如0 0 5 ,它使预测值与实 际值相适应,对整个序列进行平滑以后得到的平滑值就是下一期的预测值。 h o l t w i n t e r s 法是指数平滑中的一种方法,它适用于对具体有季节性影响的 线性增长趋势的序列进行预测。这种方法计算常数项,趋势系数( 即斜率) 和 季节影响的各个递推值,如果序列中不存在季节变动,可采用最简单的 h o l t w i n t e r s 模型法【1 3 1 ,就是不必考虑季节性影响。 这种方法把异常检测整个检测过程划分为三个步骤:第一步,预测时间序 列中下一个值的算法;第二步,度量预测值和实际观测值之间的偏差;第三步, 判断观测值是否异常的机制( 即判定它是否远离预测值) 。 第一步,预测算法。假定y l ,y 2 , o9y t - i ,y t ,m l ,表示等时间间隔 的观测值时间序列,m 表示每天的观测值个数,指数平滑就是给定当前值和当 前的预测值时,预测时间序列中下一个值的简单算法。若y 。表示时间t 的预测 值( 亦称平滑值) ,y 川表示时间什l 的预测值( 平滑值) ,y t 表示时间t 的实际 值,那么 y f + l = a y ,+ ( 1 一a ) y , ( 2 4 ) 其中a 是模型参数( 或平滑常数) ,且0 q l ,它决定了预测值对过去值 的指数衰减的快慢,这就是指数平滑。h o l t w i n e r s 预测算法是以指数平滑算法 为基础的算法,它假定观测值时间序列可以分解为三个部分,即:基线 ( b a s e l i n e ) ,线性趋势( 1 i n e a rt r e n d ) 和季节性影响( s e a s o n a le f f e c t ) 。h o l t w i n e r s 预测值就是: y 州= a ,+ 6 ,+ c f + l - 臃 ( 2 5 ) 其中a t ,b t ,e t 分别称为基线、线性趋势、和季节性趋势。分别等于: a ,= c t ( y , 一c t - m ) + ( 1 一口) ( 口f i + 6 ,一1 ) ( 2 - 6 ) 包= f l ( a ,一a t 1 ) + ( 1 一) 岛一l( 2 - 7 ) c ,= 厂( 只一a t ) + ( 1 7 ) 2 j i 一。 ( 2 - 8 ) 其中q ,d ,y 是算法的自适应参数,且0 a ,i s ,y h 时,就认为在r ( t ) 和s ( t ) 之间发生异常变化,否 北京邮电大学硕十研究生毕业论文网络流量异常榆测模型设计与实现 则当- l r g h 时,就认为r ( t ) 和s ( t ) 之间没有发生异常。 g l r 检测方法是一种比较常用的方法,应用比较广泛。但是该检测方法计 算过程过于繁杂,计算量大,对于在线检测方法来说,检测过程的复杂性和计 算时间都是必须考虑的重点,较长的时间延迟也是其一个缺点。 2 3 3 a m yw a r d 等人提出的检测方法 a m y w a r d 6 】等人提出了一种统计检测方法检测网络性能问题。把这种方法 简单称为a m yw a r d 方法。这种检测方法的主要思想是建立网络参数在正常运 行情况下的一种模式特征,当参数偏离正常行为时不符合这种模式,从而可以 被检测出来。 该方法是建立在下面三个假设的基础上: 1 ) 在一定时间内,所选择的参数过程是平稳的。x ,表示第i 个工作日的 某个网络参数观测值组成的向量,即如果观测值的时间间隔是5 分钟, 则每天2 4 个小时共有2 8 8 个观测值,那么x ,就是2 8 8 维的向量。假 定以( n o ) 与x m ( k 1 ) 具有相同的分布。 2 ) 满足大数定律。每天的同一个时间的观测值收敛于一个期望值,即如 果彤表示序列中第i 个工作日的第j 个观测值,那么对大的n 有 e l x 川三:x ? 同时对周末也作相同的假设。 3 ) 与正常过程行为的偏差能反应网络问题。当网络出现问题时,过程可 能表现出奇怪的行为。也就是说,过程行为必须表现得很奇怪,使得 某些相关的参数表现出的行为与正常行为之间存在一定的偏差。 当收集到的各个参数足够的观测值时,可以进行异常检测。整个检测过程 可以分为下列4 步t 1 ) 丢弃已经收集到的观测值序列中发生问题时的数据; 2 ) 假定是当时间t 充分大时,各参数过程服从正态分布,并且已经证明 这种假设是成立的: 一一 3 ) 确定各参数过程在各个时间的均值ar 和标准偏差口,; 4 ) 调整识别偏离观测值的界限。在这里先对观测值进行下式转换: z f = 譬 ( 2 - 2 6 ) 磊 那么对充分大的时间t ,z t 可以近似地看作一个标准正态分布变量。该方法 给出了建议的经验值,确定观测值是否异常的界限是:z t 3 0 。 例如,当t c p ps y n _ s e n t 状态的连接数与t c p i ps y n _ r c v d 状态的连接 北京邮电大学硕士研究生毕业论文网络流量异常检测模型设计与实现 数之比出现一个向上跳跃( 突变) ,而代理网关的吞吐量却在下降时,那么就是 外部网络出现问题。这是由于:( 1 ) 在t c pi ps y ns e n t 状态消耗时间的长短 反映了外部网络的健康状况,这个时间长如果出现迅速增长说明外部网可能存 在问题;( 2 ) 在t c pi ps y nr e v d 状态消耗时间的长短则反映了内部网络的健 康状况,这个时候如果出现迅速增长说明内部网可能存在问题;( 3 ) 这时代理 网关的吞吐量也下降就表明网关代理处理外部链接请求和缓慢。 在实际使用中要逐渐调整该界限,使得即能尽量地检测到发生的故障,误 报率又尽可能小。 这种检测方法的假定比较严格。要求在建立模式特征和检测期间,流量参 数( 或性能参数) 过程是平稳的,这个条件过于苛刻。满足大数定律要求1 1 充 分大,即要求每天的同一个时间的观测值收敛于一个期望值,对实际网络来说, 由于网络自身的动态性,会收到一定程度的制约。 1 4 北京邮电大学硕上研究生毕业论文网络流量异常检测模型设计与实现 第三章网络流量异常检测新算法与综合检测模型 3 1 基于时间窗的比较检测算法 3 1 1 企业内部i t 网络流量特点分析 企业内部n 网络流量呈现出一个周期性和突发性很明显的特征【8 】,例如在 工作日流量占企业内部网络中总流量的绝大部分,节假日的内部网络流量则可 以忽略。工作日的流量则又呈现出休息时间和工作时间之间存在流量突变的情 况,如:早上上班时间和中午休息时间,下午上班到下午休息时间可将工作日 的流量分为三个阶段。第一个阶段流量变化趋势从无到有存在一个剧烈的变化; 第二个阶段为中午休息时间,这个阶段存在流量的两个突变,一个时中午下班 的突然减少和中午上班时间的突然增大;第三阶段为下班以后,流量在下降后 呈现一个平稳的态势。工作日流量示意如图3 1 所示,非工作日流量示意如图 3 2 所示: 岂 奎 t r a f f i cm d e lo f - d r k i n 2d a y 图3 1 工作日流量采样值示意图 1 5 北京邮电大学硕卜研究生毕业论文网络流量异常检测模型没计与实现 o - 一 专瑚。 - _ 绷0 0 t r a r t i cn o d e lo fan o n - - u o r k 蛔d e s l l ;心l 一酾肌积f 一 t _ 叫 b 1 8 81 5 82 0 02 5 8 t l n e 图3 - 2 非工作日流量采样值不慈图 从图3 1 和图3 2 可以看到工作日和非工作日流量之间的差别。工作日的流 量明显大于非工作日流量。工作日的流量呈现出较大的变化趋势,而非工作日 的流量则趋于平稳一些。 从图3 1 可以看到对于工作日一天企业内部流量采样,流量较为明显地集 中在两个工作时段,非工作时间流量占总流量很小的一部分。工作日则周期性 的出现这样一种流量情况。通过这样分析内部网络流量特征,我们可以看出如 果仅仅是对流量进行单一的动态或者静态检测则可能会出现很大的误报率。动 态检测出的流量突变异常有可能是网络本身的特征,如上班的流量高峰。静态 检测的阈值如果定义在一个很大的范围内,则可能将出现异常的情况漏报。所 以需要采用两种检测算法结合的模型来检测网络流量异常。但是仅仅采用这两 种异常检测方法还是有不能检测到的异常:当每个采样值处于异常的临界状态, 这时流量累积的增幅已经有了较大的变化,通常可能是异常发现的前期,运用 以上的两种办法都无法检测到这样的情况。 3 1 2 基于时间窗的比较检测算法 为了解决以上问题,我们提出用时间窗内的流量累积比较来判断网络是否 出现异常。 1 6 北京邮电大学硕:f :研究生毕业论文网络流量异常榆测模型设计与实现 已知的异常检测方法只能根据历史流量的统计值来对当前流量采样值进行 判断,有可能出现漏报的情况,即网络流量趋势和当前值始终在可以接受的范 围而没有产生异常,但是流量在一段时间的累积有可能已经超出了一个可以接 受的范围,即有可能1 1 r 系统中某项业务由于网络或者服务器自身的原因,在处 理接收业务的能力下降,导致一段时间内累积网络流量偏小,如果通过时间窗 的比较可以发现流量出现上述特征,则可以发送告警给网络管理人员,检查网 络或系统中是否有导致异常出现的情况。 基于时间窗比较分为纵向比较和横向的比较。纵向比较是当前网络采样流 量时间窗口内的流量累积以及流量趋势同上一周采集到的相同工作日的相同时 间段窗口流量累积值和流量趋势的比较。流量在同时间段有相似性和周期性, 纵向比较这两个时间窗口内的流量,可以得到i t 系统网络是否在两个相同的工 作日有着比较相似的利用,当这个时间窗口的流量出现和上一个时间窗口流量 呈现明显的不同的时候,则认为网络的服务出现了故障或者是由于网络收到某 种攻击造成。横向比较是当前网络采集流量时间窗口内的流量累积以及流量趋 势同上一个工作日相同时间段内的流量累积和流量趋势的比较。做出对这个两 个历史时间窗的比较对比,能从两个方面反映网络的流量趋势以及网络利用情 况。一是反映当前网络同上一个时间窗比较得到网络短期变化的特征,二是纵 向时间窗比较反映网络的长期变化特征。当比较网络长期变化特征出现异常情 况时,我们还需要观测网络短期是否出现异常。例如当网络承载一个新业务的 时候,网络流量相比上一周相同工作日的流量总体趋势上涨,有可能已经超出 正常可以接受的范围,这时候比较短期流量变化特征变得很有意义。因为上一 个周期时间窗口内的流量由与网络管理人员了解网络情况的变化而将上一个异 常接受,这时候如果网络短期的特征变化不明显,则纵向比较出来的异常亦可 以作为接受的异常不进行处理。综合两种时间窗口的比较,能够对异常检测模 块的自适应性得到增强,减少网络管理人员的维护。 基于时间窗比较检测算法实现步骤如下: 步骤一:获取当前时间窗内和对应上一个工作日时间窗内所有采样值; 步骤二:进行时间窗纵向比较检测; 步骤二:获取上一个周期时间窗内和对应上一个工作日时间窗内所有采样值; 步骤三:进行时间窗横向比较检测; 步骤四:得到两个检测结果; 步骤五:综合判断是否异常,进行告警。 1 7 北京邮电大学硕十研究生毕业论文网络流量异常柃测模型设计与实现 3 1 2 1基于时间窗口的纵向比较算法 将网络流量在一个时间窗内进行比较,可以比较出一段时间来网络流量行 为的累积变化趋势。 仅仅通过单一时间点的检测我们认为还不能发现网络存在的所有异常,当 流量值均在检测的可接受的范围内,但每个检测点的流量值均较过去相同周期 的值大或小,即网络在这个时间窗内的流量总和可能已经偏离了正常范围。这 个时候仅做已知算法的检测可能已经不能满足要求,于是我们提出了对网络流 量进行时间窗的比较,即比较一段时间内的流量差异。这样更多的结合历史数 据,学习过去网络的行为,有助于我们发现网络中出现的异常。 对比纵向的时间窗数据的意思是,抽取当前检测点时间过去的半小时数据, 即六个采样点( 系统设计每5 分钟对流量进行采样一次) 作为一个时间窗,同 时从历史数据中抽取过去一天的相同时间段内的六个采样点的数据作为比较依 据。由于网络流量的周期相似性,这两个时间窗内的数据点形成的曲线应该相 似,通过对这两条曲线进行相似度的比较我们可以认为网络在这段时间内是否 出现异常。 记当前时间窗内的流量数据为葺( 1 t 6 ) ,记上一个时间窗的流量数据为 ) ,( 1 t 6 ) ,进行计算: 兄:兰! :兰! 1 6 2 ( 3 - 1 ) 如果当前时间窗和上一个时间窗的曲线相似,则旯的值则应趋进于0 ,如果 五的值超出某个设定的值,则认为两个曲线差异度较大,即不相似。如果旯在 某个可以接受的范围( 这个范围由网络管理人员来根据网络运行的情况进行调 整) 内则认为网络属于正常运行状态。 3 1 2 2基于时间窗口的横向比较算法 系统通过对比纵向的时问窗得到网络流量异常,有可能是一种误报,这种 情况出现在,当网络流量曲线相似,但是当前网络的流量较纵向时间窗口流量 有一个整体的上升或者下降,即可能内部网络承载了新的业务。由于业务新的 出现开始必然会导致流量的异常,但是网络管理员认为这种流量属于正常范围 ( 即人可控范围内) ,那么系统对于网络出现的这种业务或是拓扑结构改变带来 的流量变动需要有自适应的过程,需要学习这种网络流量的变化到达降低系统 误报率的目的。 北京邮电大学硕十研究生毕业论文网络流量异常检测模型设计与实现 我们获取当前时间窗的数据记为五,( 1 f 6 ) ,当前时间窗上一时间窗数据 为x 2 ,( 1 f 6 ) ,上一工作日当前时问窗的数据为y l ,( 1 f 6 ) ,该时间窗的是 一个时间窗的数据为y 2 ,( 1 t 6 ) 。这样我们获得了四个时间窗的共2 4 个数据, 对这2 4 个数据做如下比较: 五。= ( x 。,一y 。,) 2 五:= g :,一y :,) 2 见:且 旯2 ( 3 2 ) ( 3 - 3 ) ( 3 - 4 ) 丑的值反映当前时间窗和上一个工日的当前时间窗流量的增幅情况,而五反映 的是上一周期两个时间窗的流量增幅情况。通过对比 和如的比值我们得到一 个数字允,五反映了一段时间来网络流量是否出现如上讨论的那种情况,即上 个周期由网络运维人员确认的流量变化在这个周期并不将其报告为异常。 3 2 网络流量异常综合检测模型 为了进一步降低异常告警的误报率和漏报率,我们提出将现有的网络流量 异常检测算法同我们提出的基于时间窗口比较的检测算法相结合,通过综合分 析出各个检测算法的检测结果,最后给出网络是否存在异常。所提出的异常综 合检测模型由五个部分组成,分别是:数据的采集,数据的存储,数据的多算 法检测,算法结果的综合分析以及分析结果响应,如图3 3 。检测模型中的每 个算法都根据网络实时采样到的每个时刻的网络流量值大小这一参数进行异常 检测。 图3 3 异常检测模型 1 9 北京邮电大学硕上研究生毕业论文网络流量异常榆测模型设计与实现 3 2 1 模型检测策略 在该模型的构建中,我们先将流量采样值先通过动态和静态的异常检测, 当在这两种检测同时发现网络中存在异常则停止对异常的分析,直接可以向i t 运维管理系统进行告警。当两种异常检测算法未发现网络中存在异常,则需要 将通过时间窗的比较检测来判断网络中是否存在累积的异常。 通过多种检测方法,能够从不同的方面发现网络是否存在流量异常。单是 采用静态和动态检测结合的方法能检测出网络中的大多数异常,但是对于网络 中可能存在流量累积增幅过大的情况未作出判断,采用时间窗检测弥补了这样 一种误判。但是只采用时间窗的办法不能对于网络异常进行全面的检测,由于 时间窗是基于一段时间流量累积结果的综合分析,对于网络中存在细微突变的 检测能力在对于各个采样点进行平均计算的时候消失掉了。所以时间窗的检测 是对现有静态和动态算法结合检测的一种有效补充,能有效的降低网络异常流 量的漏报率。 3 2 2 模型的工作流程 模型首先需要完成数据的采集工作,通过对网络某个参数值的采集获取需 要检测的数据来源。第二步,将采集到的网络参数抽样值进行存储,以供数据 分析处理过程的进行。第三步,通过采用异常流量检测算法来判断网络中是否 存在异常得出一个判断结果。第四步,根据第三步算法计算出来的检测结果, 看由动态检测和静态检测是否有异常存在,当没有发现异常的时候,则需要进 行时间窗比较的检测,然后通过综合分析部分对各个算法的检测结果做一个综 合比较分析,最后得出一个网络流量是否异常的结论。第五步根据分析得出的 判断结果,网络管理系统可以作出一些响应,例如发出异常告警,或是阻断某 些问题主机的链接等等。分析和响应步骤同时要影响采样数据的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论