(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf_第1页
(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf_第2页
(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf_第3页
(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf_第4页
(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf_第5页
已阅读5页,还剩57页未读 继续免费阅读

(机械电子工程专业论文)基于应用协议解析的分布式网络入侵检测系统研究.pdf.pdf 免费下载

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

文档简介

基于应用协议解析的分布式网络入侵检测系统研究摘要本文简要综述了分布式入侵检测的研究概况。传统的网络入侵检测方法常采用传输层的数据包特征检测入侵事件,因而会造成误报警,低检测效率。在前人研究成果的基础上,本文提出了一种基于多核处理器t i l e r a p r 0 6 4 的分布式入侵检测系统并且深入研究了与本系统实现有关的问题。这些问题主要包括:入侵检测匹配算法的选择、协议解析算法、数据包捕获与负载均衡算法的实现和改进。作者设计了上述系统的并行应用软件,该软件包括:数据采集模块、数据分发模块、应用协议解析模块、特征匹配模块等。最后,采用测试软件t e p r e p l a y 在多核处理器t i l e r a 平台上开展了测试与验证工作,事实上,本系统能有效地检测外部的入侵攻击和内部的未授权行为,提供实时报警和自动响应的功能。实验结果表明本文提出的系统可以对高速以太网进行有效网络入侵检测,并能克服传统入侵检测方法的部分缺陷。关键词:入侵检测;协议解析;负载均衡;数据采集r e s e a r c ho nd i s t r u t e dn e t w o r ki n t r u s i o nd e t e c t l 0 ns y s t e mb a s e do na p p l i c a t i o np r o t o c o la n a l y s i sa b s t r a c tt h eg e n e r a lr e s e a r c hs i t u a t i o no fd i s t r i b u t e di n t r u s i o nd e t e c t i o ni ss u r v e y e db r i e f l y i ti sw e l lk n o w nt h a tt h ec h a r a c t e r i s t i c so ft h et r a n s p o r tl a y e rp a c k e t sa leo f t e nu s e dt od e t e c ti m r u s i o nb yt h et r a d i t i o n a lm e t h o d so fi n t r u s i o nd e t e c t i o n i tr e s u l t si nf a l s e - a l a r ma n dl o wd e t e c t i o ne f f i c i e n c y an e ws y s t e mo fd i s t r i b u t e di n t r u s i o nd e t e c t i o ni sp r o p o s e da n dd e s i g n e di nt e r mo ft h er e s e a r c hr e s u l t sp u b l i s h e di nt h i sa r e a , w h i c hi sb a s e do nt h em u l t i - c o r ep r o c e s s o r st i l e r a p r 0 6 4 s e v e r a ld e s i g np r o b l e m so ft h i ss y s t e mi sa l s od i s c u s s e di nt h i sp a p e r , w h i c hm a i n l yi n c l u d e :t h ec h o i c eo fi n t r u s i o nd e t e c t i o nm a t c h i n ga 垮o d t h m , t h ei m p r o v e m e n ta n di m p l e m e n t a t i o no fp r o t o c o la n a l y s i si nd i f f e r e n tl a y e r s ,a n dt h ed e s i g no fp a c k e tc a p t u r ea n dl o a db a l a n c ea l g o r i t h m s t h ep a r a l l e la p p l i c a t i o np r o g r a mo f t h i ss y s t e mi sd e s i g n e db ya u t h o r , w h i c hi n c l u d e :t h ed a t aa c q u i s i t i o nm o d u l e ,t h ed a t ad i s t r i b u t e dm o d u l c t h ei n t r u s i o nd e t e c t i o nm o d u l e ,t h ef e a t u r em a t c h i n gm o d u l ea n ds oo i lf i n a l l y , t h i ss y s t e mi st e s t e da n dv e r i f i e db ya p p l y i n gt h et e s tp r o g r a mt c p r e p h yo nt h et i l e r ad e v e b p m e mp l a t f o r mi nf a c t ,t h i ss y s t e mc a nd e t e c tt h ee x t e r n a li n t r u s i o na t t a c ka n di n t e r n a lu n a u t h o r i z e db e h a v i o r , a n dp r o v i d er e a l - t i m ea l a r ma n da u t o m a t i cr e s p o n s ef u n c t i o n t h ee x p e r i m e n tr e s u l t ss h o wt h a tt h es y s t e mg i v e ni nt h i sp a p e rc a ne f f e c t i v e l yd e t e c tn e t w o r ki n t r u s i o n si nh i g hs p e e dn e t w o r ke n v i r o n m e n t ,a n dc a no v e r c o m es o m et e c h n i c a lf l a w so ft r a d i t i o n a lm e t h o d s k e yw o r d s :i n t r u s i o nd e t e c t i o n ;p r o t o c o la n a l y t i c a l ;l o a db a l a n c e ;d a t aa c q u i s i t i o n北京服装学院硕士学位论文第1 章绪论1 1 课题的研究背景随着通信技术和计算机技术的不断发展,网络已经成为全球信息基础设施的主要组成部分。但随之j n 来的是不断暴露的网络安全问题,对于目前大多数只使用防火墙这一被动的防御策略的内部网络来说,仍有极大的安全风险存在。这就需要一些主动积极的防御手段,其中最重要的就是网络入侵检测系统。网络入侵检测通过对计算机网络或系统中若干个关键点收集信息并进行分析,从中发现是否有违反主机安全策略的行为或攻击主机系统的情况。网络入侵检测系统作为防火墙等传统网络安全技术的重要补充,它主要表现出以f 三个方面的优点【1 】:( 1 ) 网络入侵检测系统可以实时分析网络上传输的数据,检测出多种网络入侵攻击,并做出及时响应和处理。( 2 ) 入侵检测系统工作模式和防火墙、路由器等网络防护设备不同,它不会成为系统运行的关键路径。网络入侵检测系统发生崩溃故障等问题不会影响正常业务运行。( 3 ) 对特定操作系统的依赖少。综上所述,由于网络入侵检测系统具有上述三个方面优点,所以网络入侵检测系统将成为网络安全领域研究的新热点,越来越受到人们的关注并且已经在不同的网络安全环境中发挥关键作用。1 2 国内外研究现状入侵检测从最初实验室的实验课题到目前的商业产品,一共有2 0 多年的发展历史。安全审计是入侵检测系统最初的原型。安全审计师对系统中发生的事件和运行轨迹进行记录,随后对记录进行分析和处理,这个过程称为安全审计【1 埘。1 9 8 0 年,a n d e r s o n 的一篇名为:“c o m p u t e rs e c u r i t y t h r e a tm 0 1 f i t o r i n ga n ds u r v e i l l a n c e ”的学术报告中提出必须改进安全审计机制【l 3 】,改进后的系统可以为安全管理人员提供更加有效的安伞信息,此篇文章被认为是对入侵检测研究最早的一篇论述。随着入侵检测快速技术的发展和网络应用的高度普及,1 9 9 0 年,h e b e r l e i n 提出了一个全新的关于入侵检测的概念:基于网络的安全监i 视- n s m ( n e 铆o r ks e c u r i t ym o n i t o r ) t 1 ,4 1 。与以前的入侵检测系统相比,它的不同点在于此种入侵检测技术不检查主机系统的审计记录,而是通过主动监视局域网上的信息流来发现是否存在可疑行为。这一概念的提出使得入侵榆测系统的戍用开始面向网络应用。第1 章绪论1 9 9 5 年,g e n es p a f f o r d 和m a r kc r o s b i e 等人在学术报告中提出使用自治代理( a u t o n o m o u sa g e n t ) 机制来提高入侵检测系统的可维护性和可扩展性,自治代理机制可以在较大程度上增强入侵检测系统的扩展性【1 ,5 1 。随着广域网的不断发展和黑客攻击技术的提高,早期集中式的入侵检测系统已不再适用于大型网络,于是就有了用于大型网络的分布式入侵检测系统。例如2 0 0 5 年研华科技推出的4 u 8 路p a c k e t a r i u m t m 网络处理器平台:n c p ( 7 5 6 0 ) ,这是一款基于m i p s 多核处理器的网络入侵检测系统。2 0 0 8 年日本j u m pg e n 公司推出6 m 1 0 0 网络安全处理器,此款安全处理器是应用t f l e r a 6 4 核处理器做为硬件平台。国内计算机安全特别是网络安全已经成为研究热点,但对于入侵检测技术的研究刚刚起步。主要产品包括:紫光网络推出的网络安全入侵检测系统:u n i s i d s ,中科大入侵检测系统以及中软的d i d s y s t e m 分布式入侵检测系统等。绿盟网络科技公司在2 0 11 年3 月宣布与美国t i l e r a 多核芯片公司建立技术合作关系,并将在公司下一代入侵检测主打产品:抗拒绝服务系统( a n t i - d d o s ) 和网络防护检测系统( n i p s n i d s ) q b 采用t i l e r a p r 0 6 4 多核处理器作为处理器平台。综上所述,研究基于多核处理器的分布式网络入侵检测系统有着实际而广泛的意义。1 3 课题的研究目的及意义随着网络规模的不断扩大和网络技术的高速发展,大多数的政府机构、企业和个人将自己的计算机连接到了互联网上,特别是带宽技术的发展,大量用户将个人计算机与互联网长期连接。然而,在人们广泛地利用网络资源的同时,随之而来的问题是针对网络和计算机系统的攻击变得非常普遍,攻击手法也口趋复杂。这些攻击行为变化多端,有的攻击针对服务软件和计算机系统的漏洞,有的则是针对网络系统自身的安全漏洞,无论是哪种类型的攻击都会对主机和计算机网络的资源产生破坏。另一方面,由于检测技术的具有一些局限性,所以各种网络入侵检测系统都会有虚假报警情况存在,并且系统的检测效率低下。由于上述问题都影响了人们对入侵检测系统选择信心,所以解决这些局限性已成为刻不容缓的问题| 6 1 。随着计算机技术和微电子技术的发展,实现分佰式网络入侵检测系统的硬件平台多种多样。如专用的网络多核处理器i n t e lx e o n 多核处理器、i x p 2 0 0 0 、t i l e r a 多核处理器等。这些多核处理器计算性能强、集成度高、性价比高且支持软件编程控制【1 0 , 1 1 】,所以适合做为高速网络环境下入侵检测系统的硬件平台。多核处理器t i l e r a 片上集成6 4 个微处理器,其中这6 4 个微处理器具有相同的全功能2北京服装学院硕士学位论文处理能力,每两个处理器核之问的传输带宽可以达到全双向3 2 位带宽5 0 0 g b p s 的速率。所以该款处理器具有高并发,低时延的特点,适合于搭建分布式网络入侵检测系统。综上所述,本课题研究的目标是设计构建一个针对高速网络环境下的分布式入侵检测系统,此系统应具有高检测率、低误报警率的特点。1 4 论文主要内容概述本文的研究目标主要是针对高速网络环境下如何进行入侵检测分析,提出了一种基于多核处理器t i l e r a 的分布式网络入侵检测系统模型。该模型充分利用了多核处理器t i l e r a处理速度快和片上集成的微处理器个数多的特点,并结合本文提出的一种基于流哈希的负载均衡算法,有效地提高了系统对入侵检测的性能。本文共有六章组成:第一章介绍了课题的研究背景,国内外的研究现状,课题的研究目的及意义以及论文基本组成。第二章简要介绍关于入侵检测系统的基本概念,最后总结得出入侵检测系统面临的主要问题及发展趋势。第三章简要介绍多核处理器t i l e r a 及t i l e r a 处理器平台。此款处理器是一款新兴的处理器平台,基于此款处理器的研究工作处于刚刚起步阶段,并且介绍此款处理器平台的资料文档很少,所以基于此款多核处理器平台的应用开发研究在本课题的研究工作中占一定比例。第四章详细介绍了本文设计的分布式入侵检测系统的整体结构及整个系统的并行算法设计。第五章是论文的核心部分,主要讨论本系统实现的关键技术,包括应用协议解析技术,分布式网络负载均衡算法研究,模式匹配技术。并在最后给出了系统性能的测试数据及结果分析。第六章是文章最后一章,该章节给出了对全文工作的总结和将来工作的展望。第2 章入侵检测概述第2 章入侵检测概述本章的主要内容是系统阐述入侵检测技术相关概念,包括入侵行为的定义及分析,入侵检测系统定义及基本组成等。最后总结给出现阶段入侵检测系统面临的主要问题及发展趋势。2 1 入侵行为的定义及分析1 9 8 0 年,j a m e sp a n d e r s o n 在一篇技术报告中提了对入侵行为的定义。j a m e sp a n d e r s o n 认为应该将入侵企图或威胁做如下定义【6 】:一种无系统授权的行为,这些行为包括:修改被保护主机资源信息,越权访问系统信息,造成系统不可用或不可靠。网络快速扩张的同时伴随着入侵行为的出现。研究资料表明,当今网络中存在多种多样的入侵行为,并且随着攻击主机系统资源的不同或应用系统的不同,黑客可以任意组合各种入侵手段,所以入侵行为无法使用固定具体的行为模式来描述【6 ,7 1 。2 2 入侵检测系统定义根据j a m e sp a n d e r s o n 6 s l j 入侵检测的概念,我们可对入侵检测系统做如下定义:入侵检测系统,i n t r u s i o nd e t e c t i o ns y s t e m ( i d s ) ,就是检测企图破坏计算机资源的完整性、真实性和可用性行的软件。入侵检测系统能实时地监控系统的活动,及时发现攻击行为并采取相应的措施以避免攻击的发生或尽量减少攻击造成的危害。入侵检测系统,应该具备如下功能【6 ,8 】:( 1 ) 监督和分析用户计算机系统的活动;( 2 ) 检测计算机系统配置和服务中存在的漏洞;( 3 ) 检查计算机系统中关键数据及文件的完整性;( 4 ) 校验管理操作系统,判断是否存在破坏系统安全的用户行为。2 3 入侵检测系统基本组成虽然h 前存在诸多的入侵榆测系统,但是一个典型的入侵检测系统一般由数据采集、数据分析和事件响应三个基本部分组成,一个典型的入侵检测系统的基本组成,如图1 所示:数据数事据卜件数据:事件分响析应图1 入侵检测基本组成结构示意图4北京服装学院硕士学位论文入侵检测的第一步是网络数据采集,需要在计算机网络系统中若干关键点( 不同网段和不同主机) 收集信息。由于入侵检测很大程度上依赖于收集信息的正确性和可靠性。所以,我们必须保证数据采集的正确性【9 】。数据分析是入侵检测系统的核心部分。数据分析对采集的数据进行深入地分析,根据攻击特征集检测是否存在攻击,并根据分析结果产生响应事件,触发事件响应。数据分析的方法比较多,如模式匹配与协议解析结合的分析方法、行为分析方法和统计分析方法等即1 。本文选用模式匹配与协议解析结合的分析方法。事件响应在发现入侵后会及时作出响应,包括记录事件和报警等。事件响应模块可以集成在数据分析模块中,此种做法在程序上便于实现。2 4 入侵检测系统面临主要问题及发展趋势现有的入侵检测系统主要是基于网络的集中式的入侵检测技术,该技术在网络发展之初可以较好地应对网络上的各种少量简单攻击,这主要是因为当时网络的规模较小、攻击手段简单。但是随着网络的规模不断扩大、速度不断增加以及黑客的攻击技术日趋复杂化,现存的入侵检测系统所采用的技术越来越难以适应这种环境的变化。下面是对当今入侵检测系统面临的主要问题的总结【6 l o 】:( 1 ) 集中式入侵检测系统无法检测所有网络上传输的网络数据包;( 2 ) 入侵规则特征库更新工作非常繁琐:( 3 ) 检测机制单一;( 4 ) 各类集中式入侵检测系统出现丢包检测和虚假报警的情况非常严重。分布式入侵检测系统可以将模式匹配与协议解析结合的检测方法有机结合,并且兼顾到网络中的各路数据源的入侵检测,从而解决上述问题。入侵检测技术经过几十年的发展,从以前单机的入侵检测到现在的网络入侵检测,从基于丰机的到基于网络的入侵检测,从集中式的入侵检测到分布式的入侵检测,以及各种相关技术的应用,使得入侵检测系统正朝着实时、高效和智能化的方向发展。总结起来,今后的入侵检测系统有如下发展趋势:( 1 ) 体系结构从集中式转向分布式;( 2 ) 分析技术的改进:( 3 ) 入侵检测系统问协同技术的发展。第3 章多核处理器t i l e r a 及t i l e r a 处理器平台简介第3 章多核处理器t i l e r a 及t i l e r a 处理器平台简介当前网络环境朝着两个方向发展【l i 】:一个发展方向是用户自主定制的网络协议,用户定制的协议包括一些较新的服务和安全措施,以及用户自己研制添加的网络管理能力。各大网络安全设备商如果想快速的占领市场,则应该尽快更新自己的网络安全设备并且在各自的安全产品中填加与众不同的功能来提高自己的市场竞争力,这就对网络安全设备采用的硬件架构是否具有灵活性以及可编程性提出了较高要求。另一个发展方向是网络负载容易扩大,传统的单核处理器性能无法满足高带宽大流量环境对入侵检测系统的要求。当今制约网络安全设备的性能瓶颈不再是系统的数据传输能力,而是那些网络上的安全检测节点的处理能力。所以,当前网络环境要求网络安全检测设备具有线性速度处理网络数据包的能力和较强的计算能力。网络安全设备采用的单核处理器c p u 架构都遵守著名的m o o r e 定律,即单个微处理器芯片上集成的晶体管数目每隔三年会翻两倍。按照摩尔定律,可以推出微处理器的速度和单芯片的集成度每隔1 8 个月翻一倍【1 2 1 。同时,随着半导体工业的日益发展,通用微处理器主频也已经高达4 g i - i z ,数据也可以达到6 4 位宽度。晶体管制造工艺研究方面也高速发展,0 1 3 u r n 晶体管工艺研制的微处理器已经问世,4 0 r i m 工艺以下的下一代微处理器也已经试验成功。所以按照这个速度推断,到2 0 1 1 年的时候,单个芯片上集成晶体管的数目将会超过1 0 亿。以此同时,网络带宽技术的发展速度是平均每隔七个月左右,带宽速度就会翻一倍,所以单处理器性能无法与网络带宽发展速度相匹配。因此,计算机体系结构的试验研究遇到新问题:怎么样才能有效地利用数目较多的晶体管来应对高速发展的网络环境? 国际上针对这个问题的研究非常广泛,于是就出现了多核处理器的概念。多核处理器的概念是在单个芯片上集成多个简单功能的处理器核,充分利用晶体管资源并发挥最大能效。单个微处理器核实质是一个非常简单的单线程处理器或者是功能简单的多线程处理器。多个微处理器同时并行执行程序代码使得处理器具有较高的并行度i 1 2 】。从系统的角度看,多核处理器一般发展为两类不同的并行模型,一类是流水线( p i p e l i n e )多核模犁,另一类足对称多处理器( s m p ) 多核模犁。在流水线模型巾( 如图2 所示) ,单个的处理单元( p u ) 组织形式为流水线形式,处理器单元是经过特殊设计的硬件单元,采用可编程的片上微处理器单元。它们的共同特点是只专注予某一类型的任务单元。在此种模型中,用户级的应用程序会按照系统事先设计的流水线级数来划分执行时间,分配到各个处理器单元的处理时间预算必须相等,否则流水线无法j f 常流动,出现某些处理器直处于空闲状态,造成任务分配不均等。多个处理器单6北京服装学院硕士学位论文元的整体性能反而不高。m o t o r o l a 公司的多核c 5 系列就是采用这种模型【13 1 。图2 流水线模型( p u 处理单元,m 存储器,i m 指令存储区)s m p ( s y m m e t r i c a lm u l t i - p r o c e s s i n g ) 处理器模型的优点是编程简单( 如图3 所示) 。它不会改变单机的编程风格,允许程序员同时创造多个线程,并且将线程和处理器核进行一一绑定,多个处理器处于平等地位同时执行各自任务。关于多个处理器核间的通信,i b mp o w 廿 n p 4 g s 和i n t e li x p 系列采用总线网络方式进行数据交互,所以总线带宽是该种处理器的性能瓶颈。t i l c r a 公司推出的各类多核处理器芯片采用改进的s m p 模型,即每个处理器之间建立独立的片上互联网络,不使用总线功能进行通信【1 3 1 。m 咿m pm 咿 b u si 芒s l n a n em e m o r y图3 对称多处理器模型多核处理器t i l e r a 是一种改进的s m p 模型,此款多核处理器片上集成6 4 个微处理器7第3 章多核处理器t i l e m 及t d e r a 处理器平台简介【1 4 】,其中6 4 个微处理器是具有相同全功能的处理器核,并且该款多核处理器简化了并行应用程序在多核间的映射,允许用户在单个核上运行现有的c 或c + + 软件。网络通信方面:该款多核处理器集成了i m e s h 片上网络( 一种低延迟的片上互联) ,支持数据流、存储包、标量值的通信方式,允许扩大架构范围到更多数量的处理器核。软件方面:允许普通c 和c + + 基础的编程模式,允许用户安装现有的软件进行运行,通过低延迟a p i ( 应用程序接口) 流,达到a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t ) 的性能。此款多核处理器还具有多核硬件墙保护机制,避免多个应用软件和多个操作系统间发生无法估计的干扰。在系统层面,t i l e r a 处理器看起来像使用一个常规的处理器芯片。所以该款多核处理器适合搭建分布式网络入侵检测系统。3 1 t i l e m 处理器简介2 0 0 9 年1 1 月,t f l e r a 公司推出全球首款处理器核心数量多达6 4 个微处理器的t i l e r p r 0 6 4 。t i l e r p r 0 6 4 系列采用4 0 r i m 工艺,在一块芯片上集成多个6 4 位通用处理器核和完整的虚拟内存系统。每个处理器核拥有6 4 k b 一级缓存、2 5 6 k b 二级缓存,2 6 m b 共享三级缓存。t i l e r p r 0 6 4 主频为7 5 0 m i - i z ,片上集成4 个d d r 3 内存控制器,功耗为5 5 w 。t f l e m 处理器采用增强的s m p 多核体系架构,融合了6 4 个二维计算单元( 每一个单元称为一个t i l e ) 组成8 x 8 矩阵,6 4 个t i l e 之间通过片上网络相互连接( i m e s h ) ,片上网络分为六路,分别是:( 1 ) u d n :用户级通信方式;( 2 ) i d n :i o 到t i l e 核,i o 到内存的通信方式;( 3 ) m d n :t i l e 核间的数据传输方式和t i l e 核与外部存储器数据的通信方式:( 4 ) s t n :t i l e 核之间传送一定数量操作数的通信方式:( 5 ) t d n :功能类似于m d n 通信方式;( 6 ) c d n :一致性缓存间消息通信方式。每两个t i l e 核之间的传输带宽可以达到全双向3 2 位带宽5 0 0 g b p s 的速率,所以各处理器核间具有极低的通信延迟。独立的高速数据传输网络,并且不依赖总线模式,这也足众多资深网络安伞设备厂家一致选择t i l e r p r 0 6 4 做为网络安伞设备处理器的原因之一,此款多核芯片整体结构示意如图4 所示:北京服装学院硕士学位论文黑= :铡搿。厂。;= = 降”:o 一_ :。 i ? 圈第一r r。,i i 研、一“匕辨毒童”罐唠一;”! 誊五擎田日 曼童:竺,尝i ;兰。薹,曼j 日一匡啦照釜誉攀鬈童连蔓七日l _ - jih r wo f _ 。_ 1 r _ 。一一l l 富;蔫t 缁;落t 翁! 菊1 f 一万捌io 嘈兰e 窖士i r。薏灌蛐一0h 帕图4t i l e r a 处理器芯片结构示意图每个t i l e 核都是伞功能的计算系统,独市运行分夼式操作系统( s m pl i n u x ) 。t i l e r a 片上单独t i l e 核拥有的资源:一个处理器引擎,个高速缓存引擎,一个开关引擎。每个处理器引擎包括6 4 个3 2 b i t 的寄存器,其中5 3 个通用寄存器,1 1 个特殊功能寄存器1 1 5 , 1 6 1 。3 2 t i l e r p r 0 6 4 处理器平台介绍t i l e r p r 0 6 4 中的超长指令字节处理器内部包含了三个指令并行执行管道:p 0 ,p 1 ,p 2 。p 0 用来求和运算,数学逻辑运算,累乘和累加运算。p 1 用来算术逻辑运算,特殊目的类型寄存器读写以及控制代码流指令。p 2 可以执行所有对普通存储器存取操作,例如加载操作,储存操作,置位指令等。这些并行执行管道和d s p 芯j 里的功能单元的功能类似,不同之处在于它们分工明确,各自完成不同的操作【1 5 , 1 7 】此种设计使得t i l e r p r 0 6 4 的处理器具有较强的处理能力,适合作为高负载网络环境下的入侵检测硬件平台。t i l e r p r 0 6 4 开发板硬件组成及外设资源如下图5 所示:图5t i l e x p r e e p r o - 6 4 硬件架构图9盎僦意一麟|第3 章多核处理器 l i l e r a 及t i l e r a 处理器平台简介外设资源总结如下:( 1 ) 1 个6 4 位d d r 2 接1 3 :( 2 ) 2 个1 0 g b p s - 心4 4 - 片接1 3 ;( 3 ) 2 个4径p c i e 捅口;( 4 ) 2 个l g b p s 网1 3 :( 5 ) 1 个1 6 位h p i 接口;( 6 ) 6 4 个i o 口。刖户可以通过这些丰富的外设资源接口,。叮以自由开发和扩展各类应j j 程序及系统。t i l e r p r 0 6 4 开发板实物图,如图6 所示:图6t i l e x p r e e p r o - 6 4 板卡3 3 t i l e r p r 0 6 4 软件开发环境m d e 介绍多核处理器开发环境m d e ( m u l t i c o r ed e v e l o p m e n te n v i r o m e n t ) 是t i l e r a 公司推出的多核开发工具集合软件,此款软件可直接运行于普通l i n u x 操作系统。m d e 内有集成开发环境i d e ( i n t e r a t e dd e v e l o p m e n te n v i r o m e n t ) ,i d e 为用户在t i l e r a 多核硬件和软件仿真平台进行开发各类应用程序,提供了集成环境【1 8 j 。t i l e r p r 0 6 4 处理器的多核开发环境m d e 为用户提供完整的用于程序开发各个阶段需要使用的工具,这些工具包括【1 5 , 1 9 1 :( 1 ) t i l e c c :交叉编译工具;( 2 ) t i l e - a s :汇编器;( 3 ) t i l e l d :链接器;( 4 ) t i l e - g d b :g d b 调试器,可调试运行在t i l e r a 处理器上的多线程代码;( 5 ) t i l e m o n i t o r :集成命令行接口;( 6 ) t i l e s i m :软件仿真模拟器。l n北京服装学院硕士学位论文本文的所有工作是在m d e 集成开发环境下完成,在l i n u x 操作系统中设置相天文什路径,t i l e e c l i p s e 便町运行m d e 。本系统使用的操作系统为f e d o r al i n u x ,内核版本2 6 2 0 1 。多核开发环境m d e 界面如图7 所示【2 1 】:t 。“f 一,p“- 毛谁e 吐峨- 二=4 1“口。h - - _ ,一o - ,l *,l 。一日雹圈囱t q 坤_ h _ d t _ q 扣_ h e 图7 多核m i ) e 开发环境界面第4 章基于应用协议解析的分布式入侵检测系统总体设计第4 章基于应用协议解析的分布式入侵检测系统总体设计4 1 分布式入侵检测技术和传统检测技术对比网络入侵检测系统的核心模块是数据采集模块和分析榆测模块,既通过对主机、网络状态信息的实时采集和综合分析完成入侵检测,判断网络中是否存在攻击行为。以往的检测系统多采用集中式处理机制,检测信息的数据源通过网络上多个关键检测点收集并集中汇总到检测中心进行批量处理,集中式入侵检测系统示意图,如图8 所示【6 2 2 】:图8 集中式入侵检测系统示意图传统的分布式入侵检测系统对上述集中式入侵检测系统进行了功能改进,它的设计思想是在系统中布置多个检测器和多个数据采集器( s e n s o r ) 。多个数据采集器布置在大型网络的各个关键点收集网络数据并传递给上层的检测器分析检测,若检测器对某个网络数据包中的内容无法确定是否有入侵行为存在,就上传到最高层的全局检测器及控制台进行检测。传统的分布式入侵检测系统示意图,如图9 所示:厂厂一! 蜘检0 鬻删台一特征库嫦jr 。一一一一- 一- + 一一特征库文件卜叫_检测器1 一卜_ 卜图9 传统的分布式入侵检测系统示意图1 2特征岸文件ji 埘一r 舞三一北京服装学院硕士学位论文对比上述两幅示意图,可以比较看出集中式入侵检测系统结构较为简单,此种系统通过在网络的多个检测点上部署多个数据采集器( s e n s o r ) 捕获网络数据,并通过初步处理和过滤后将此部分数据通过网络传输到中心检测器。此类系统的缺点是中心检测器完成集中批量处理,如果中心检测器出现崩溃,则整个系统便处于瘫痪状态。并且数据采集器和中心检测器问需要频繁的传输数据,占用大量网络带宽,消耗较多网络资源,影响网络自身运行效率。传统的分布式入侵检测系统虽然可以实现高效并行化检测,并且单个检测器崩溃不会影响整体系统的运行,但是还是存在多个检测器之间数据交互频繁,占用大量带宽,造成网络拥塞的问题。本文设计的分布式入侵检测系统是以上述传统分布式检测系统模型为基础,进行部分功能简化和改进后提出的一种模型。本文设计的分布式入侵检测系统中所有的局部入侵检测节点都是全功能的入侵检测节点,取消全局检测器,多个检测节点间无数据传输。系统控制中心设计在通用计算机上。4 2 分布式入侵检测系统总体结构本文设计的入侵检测系统采用集中管理、并行检测的设计思想。整个系统由数据采集分发节点( 集成特征库) 、入侵检测节点、控制中心三个部分组成。数据采集分发节点由4个t i l e 核按照流水线方式完成网络数据的采集和分发。入侵检测节点的个数由剩下的6 0 个f i l e 核根据实际的网络负载环境灵活配置。1 个控制中心部署在通用计算机上,实现集中管理功能。本文设计的分布式入侵检测系统结构示意图,如图1 0 所示:数据朵雄分垃筘点图l o 基于t i l e r a 多核处理器的分布式入侵检测系统结构示意图4 2 1 数据采集分发节点设计数据采集分发节点负责监听网络数据包,按照设计的负载均衡策略转发数据包到入侵检测节点。系统设定1 个数据采集分发节点,由4 个t i l e 核按照流水线( p i p e l i n e ) 方式完成。1 气第4 章基于应用协议解析的分布式入侵检测系统总体设计数据采集分发节点在程序功能设计上分为数据采集模块及数据分发模块。4 2 2 入侵检测节点设计入侵检测节点的个数可以灵活配置,多个入侵检测节点并行独立运行。并行运行的入侵检测节点分配到数据包后,经过从链路层到应用层的协议分析,将最后确定的数据负载部分送入到规则匹配模块进行模式匹配。若某个网络数据包存在攻击隐患则这个节点和上层的控制中心通信,报告有入侵行为存在。本系统中每个入侵检测节点和多核t i l e r a 平台下的t i l e 核进行绑定,实现了真正意义上的分布式入侵检测系统。入侵检测节点,运行在t i l e r a 多核处理器平台上。t i l e r a p r 0 6 4 有6 0 个t i l e 核可做入侵检测节点( 另外4 个完成数据采集分发节点) ,每个t i l e 核可以设定为单独的硬件线程,所以本文设计的系统可最多可以同时运行6 0 个入侵检测节点。根据实际网络负载流量,合理配置这些入侵检测节点的数量可以极大的提高检测系统性能。入侵检测节点运行模式是一个t i l e 核只运行一个任务,所以不存在多个t i l e 核间互斥问题。入侵检测节点上在程序功能上分为应用协议解析模块和规则匹配模块。4 2 3 控制中心控制中心主要功能是各个入侵检测节点获取信息实现实时报警、日志显示等功能,并对入侵检测节点进行配置,完成规则策略管理、日志管理、系统管理等功能。控制中心是主机和下层入侵检测节点的通信接口。若底层入侵检测节点分析检测数据包最终确定有入侵行则向系统控制中心报告,系统进行记录。控制节点设计的功能还有完成对下层入侵检测节点的停止和启动的控制。4 3 分布式入侵检测软件开发在通用p c 机上开发系统中的数据采集分发节点和入侵检测节点的程序模块,开发完毕后,这部分c 代码必须转换为适合在t i l e p r 0 6 4 多核平台上运行的代码,即需要算法并行化和移植。为了保证移植到t i l e p r 0 6 4 上的算法能正常运行,需要对标准算法做一些修改。此外为了编译链接方便需要为系统工程代码文件编写m a k e f i l e 文件本文为入侵检测系统编写的r n a k e f i l e 文件描述了本系统的编译、链接规则,还包括丁程文件需要编译的库函数及编译文件之问的依赖性。并且需要漫定调用库函数的搜索路径。在确定了上述内容后,需要按照m a k e f i l e 规范的书写格式要求来编写m a k e f i l e 文件。m a k e f i l e 文件除了编译规则的定制外,还需要生成不同类型的目标代码,方便系统的仿真调试和硬件实现。最后编泽生成可执行代码,将代码上载和执行的结果进行文件输出1 4北京服装学院硕士学位论文保存。下面这段摘自本系统中使用的m a k e f i l e 文件片段,功能是将系统中编译完成的协议解析模块执行在仿真模式下并输出一份x m l 格式的程序性能分析数据利2 3 1 。p r o f i l e e n c o d e r :$ ( b i n ) t i l e m o n i t o r |一s i m u l a t o rls i m - a r g s - + o p e n d p i - p r o f i l ee n c o d e _ p r o f i l e x m l 一+ 一一- i m a g e8 x 8 |- 一u p l o a d o p e n d p f s r e e x a m p l e o p e n d p i _ d e m o c 、u p l o a d o p e n d p i s r e e x a m p l e e n e o d e p c a p - - u p l o a d o p e n d p i s r e e x a m p l e e o n f i g t x t 、- - u p l o a d o p e n d p f s r e e x a m p l e o u t t x t |r u n - s i r e- - - q u i t这里的t i l e m o n i t o r 工具是t i l e r a 平台上的集成命令接口,参数s i m u l a t o r 说明选择了软件仿真模式,参数u p l o a d 的功能是将系统文件上载到t i l e r a 平台上,参数r u n 则表示执行可执行文件,并且保存执行结果。在程序移植过程中需要白行添加一些交叉编译条件和修改部分系统调用的函数接口。关于具体的交叉编译过程,由于篇幅问题,就不在此赘述,后面第五章会有一节讨论针对本系统硬件平台特点的高性能算法库的移植工作。4 4 t i l e r a 多核平台下的并行入侵检测实现方案设计本文的并行程序编写借助了t i l e r a 多核并行函数库i l i b 2 引,i l i b 函数库是t i l e r a 公司的软件研发人员专门针对t i l e r a 多核硬件架构设计开发的并行程序设汁函数库。该函数库底层是利用c 语育标准函数库g l i b c 和l i n u x 下多线程库p t h r e a d 实现,应用层根据t i l e r a硬件架构特点进行封装。此函数库对j :共享内存同步机制选择,合理控制和调度多个t i l e核,多个t i l e 核之间使用专用网络进行通信的接l 等问题,都提供了有效的支持。借助i l i b编写的并行程序具有较好并行细粒度。下面介绍本系统中用到的i l m 函数库中的函数接口:( 1 ) i l i b _ i n i t o启动i l i b 函数库,并进行初始化,每一个t i l e 核上面i l i b 函数库都按照下面的基本结构执行:1 5第4 章基于应用协议解析的分布式入侵检测系统总体设计h a t m a i n ( ) i l i b _ i n i t ( ) ;c r e a t ep r o c e s s e s ,d os o m ew o r k , e t c i f ( e r r o r _ o c c u r r e d )i l i b _ d i e ( ”s o m e t h i n gh a p p e n e d ) ;i l i b _ f i n i s h o ;r e t - u r n( 2 ) i n ti l i b _ p r o c g o _ _ p a r a h e l ( u n s i g n e dh a tn u m _ p r o e ,c h a r 幸c o n s ta r g v )该函数用来同时并行启动h u mp r o c 个t i l e 处理器。a r g v 设置为n u l l 即可,如果n u m _ p r o c 个t i l e 处理器同时启动成功,则返回i l i b s u c c e e s = i ,否则为0 。在本系统中若并行启动4 个入侵检测节点,则调用i h b _ p r o c _ g o _ _ p a r a u e l ( 4 ,n u l l ) 。( 3 ) i h b _ _ g r o u p _ s i z e ( i l i b _ g r o u p _ s i b l i n g s )该函数用来将同时启动的t i l e 核进行分组,分组的优点在于处于同一组中的多个t i l e核可以共享各自拥有的数据。( 4 ) mg r o u p 啪l 【( i l i bg r o u pg r o u p )该函数用来打印输出程序中启动的t i l e 核坐标信息和分组信息。( 5 ) i l i bm u t e x _ i n i t ( & s h a r e d _ e o u n t _ _ p t r - m u t e x )这个函数是用来t i l e 核间安全操作共享资源。共享内存使用互斥型锁初始化,互斥锁可以看作是程序中的全局变量。在某个时刻,只允许一个t i l e 核占用这个互斥锁,拥有上锁状态权限的t i l e 核可对共享资源进行读写操作,而其它t i l e 核会被挂起,直到上锁的t i l e核释放锁。( 6 ) i n ti l i bm s gs e n d ( c o n s tv o i d b u f f e r ,s i z e _ ts i z e )此函数用来发送消息到指定t i l e 核,这是属于点对点的消息传递机制。如果发送成功则会返回0 值,如果返回值非0 则说明发送出错。( 7 ) i n ti l i b _ m e m _ f e n c e ( v o i d )此函数用来对共享内存进行一致性操作。当某个时刻,多个t i l e 核问的共享内存被其中的一个t i l e 核进行了写操作,则需要进行内存一致性操作,更新共享内存内容。如果更新成功

温馨提示

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

评论

0/150

提交评论