(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf_第1页
(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf_第2页
(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf_第3页
(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf_第4页
(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(无线电物理专业论文)基于网络处理器的ddos入侵防御控制系统——旧用户排队服务模块系统整合与red算法改进.pdf.pdf 免费下载

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

文档简介

基于网络处理器的d d o s 入侵防御控制系统 旧用户排队服务模块系统整合与r e d 算法改进 专 业: 无线电物理 硕士研究生:李慧 指导老师:余顺争教授 摘要 针对近年来对大型w e b 服务器构成巨大威胁的d d o s ( d i s t r i b u t e dd e n i a lo f s e r v i c e 分布式拒绝服务) 攻击,本实验室旨在用基于i n t e l 网络处理器i x p 2 4 0 0 的开发板e n p 一2 6 l l 开发一个用于服务器i i 端的入侵防御控制系统。该系统主 要包括三个模块:用户分类模块、正常程度计算模块和旧用户排队服务模块。这 三个模块的基本功能已由上届同学独立完成,为了实现整个系统的功能,本人负 责旧用户排队服务模块与其它两个模块的整合。在本文中主要论述了旧用户排队 服务模块与其它两个模块的接口方法,并对整合后整个系统的基本功能进行了仿 真测试,以及针对系统中原有的r e d 拥塞控制算法的不足提出了自己的改进算 法,并对算法改进前后入侵防御控制系统的性能进行了实验比较。 关键诃:d d o s 攻击网络处理器r e d 拥塞控制 a ni n t r u s i o np r e v e n t i o ns y s t e m a g a i n s td d o s a t t a c k sb a s e d o nn e t w o r kp r o c e s s o r “s y s t e mi n t e g r a t i o nf o ro l du s e r s q u e u es e r v i c em o d u l e a n di m p r o v e m e n tf o rr e d a l g o r i t h m m a j o r : n a m e : r a d i o p h y s i c s l ih u i s u p e r v i s o r :p r o f e s s o r s h u n z h e n g y u a b s t r a c t d i s t r i b u t e dd e n i a lo fs e r v i c ea t t a c kh a sb e c o m ea l li m m e n s et h r e a tt ol a r g e - s c a l e w e bs f f f v e ri nt h e s ey e a r s ,a i m i n ga tt h i ss t a t u s , o u rl a bd e c i d e dt or e a l i z ea ni n t r u s i o n p r e v e n t i o ns y s t e ma g a i n s td d o sa t t a c k sb a s e d o nn e t w o r kp r o c e s s o ri x p 2 4 0 0 t h i s s y s t e mi n c l u d e s t h r e em o d u l e s :u s e rc l a s s i f i c a t i o n m o d u l e ,n o r m a l i t yd e g r e e c o m p u t em o d u l ea n do l du s e r s q u e u es e r v i c em o d u l e t h e s et h r e em o d u l e s b a s i c f o n e t i o nh a sb e e nc o m p l e t e di n d e p e n d e n t l yb yu p p e r c l a s s m e n ,t om a k ei ta n i n t e g r a t e ds y s t e m ,it a k ec h a r g eo ft h es y s t e mi n t e g r a t i o nj o bf o ro l du s e r s q u e u e s e n r i c cm o d u l e i nt h i sp a p e r , im a i n l yd i s c u s sh o wt oc o n n e c to l du s e r s q u e u e s e r v i c em o d u l ew i t ht h eo t h e rt w om o d u l e sa n di m p l e m e n te m u l m i o n a le x p e r i m e n tt o t e s tt h ef u n c t i o no ft h ei n t e g r a t e ds y s t e m ,o t h e rm o r e ,t oi m p r o v et h eo r i g i n a lr e d a l g o r i t h mi nt h es y s t e m ,ip r o p o s em yo w ni m p r o v e ds u g g e s t i o na n dc o m p a r et h e p e r f o r m a n c eo f t h ei m p r o v e dr e da l g o r i t h mw i t ht h eo r i g i n a lr e da l g o r i t h m k e yw o r d s :d d o sa t t a c k , r e da l g o r i t h m , n e t w o r kp r o c e s s o r i i 第1 章绪论 1 1 选题背景 第1 章绪论 网络技术的应用和发展特别是w e b 技术的应用大大改变了人们的生活方 式,网上活动已经成为人们同常生活的一部分,但与此同时,w e b 服务器也成 为网络攻击者的重点目标,近年来d d o s 攻击技术因其隐蔽性、高效性成为网 络攻击者最青睐的攻击方式之一,这种方式更是严重地威胁着w e b 服务器的安 全。d d o s 攻击者在2 0 0 0 年2 月大规模袭击全球重要电子商务网站,令雅虎、 亚马逊、电子港湾、c n n 一度陷入瘫痪。时隔一月,n t l ,i t l 6 3 c o l n ,新浪 等网站也未能幸免于难。攻击者给网站造成直接经济损失的同时也给网络用户 带柬极大的不便,如此频繁的d d o s 攻击为互联网安全再一次敲晌警钟,已经 引起学术界和商业界的广泛关注i l j 。 然而由于d d o s 攻击者通常采用伪造的源i p 地址、随机变化的报文内容并 具有分布式特性,使得d d o s 攻击流的特征难以提取、攻击源位置难以确定, 给d d o s 攻击的检测防御和追踪管理带来极大难度。目前提出的方案大致可分 成三个类别:i pt r a c eb a c k ( 攻击源追踪) 、攻击检测与控制、r a t el i m i t i n g ( 速 率限制) 。其中,i pt r a c eb a c k 技术,主要原理是根据攻击分组定位攻击的源 头,从而定位出攻击流的真f 源头,为基于源头的防御和追踪黑客提供支持; 攻击检测与控制方式,主要通过对分组进行分析和识别,与i f 常的或合法的模 式进行对比,识别出可疑的分组并采取相应的措旌进行控制;r a t el i m i t i n g 则 力图通过对识别系统识别出的恶意数据流,根掘一定策略对该数据流进行过滤 从而达到限速的目的l “。而目前商用中比较广泛使用的主要是数据流指纹检测 技术。数据流指纹检测技术实质上就是匹配分析法,通过匹配到达数据流与i d s 中的证常数据流的特征值来判定数据流的合法性,检测出异常流量。 现有的实用型系统中对d d o s 的入侵解决方案往往将藿点放在对d d o s 攻击的检测和追踪上,而在检测和追踪模块之后的控制模块功能一般都很简单。 中山丈学顾:l :论文 在这些系统中,往往只区分出正常流量和异常流量,对异常流量进行简单的丢 弃。这种粗粒度的控制方式,对判决门限有着非常严格的要求,因为一旦判决 门限稍有偏差,就会出现误报而大大影响正常用户。而一旦存在误判,正常用 户的流量将不能得到任何保证,攻击流量就可能造成很大危害。可见,现有的 入侵检测和控制系统不足以有效地抵御大规模的d d o s 攻击。 另一方面,近年来的网络应用的发展对网络设备提出了支持高速分组处理 的优异性能和支持不断变换高层网络服务的高灵活性的要求。按照摩尔定律, 电处理器处理速度每1 8 个月增加一倍;而随着d w d m 等光纤技术在主干网络 的广泛应用,每1 2 个月光纤链路容量就增加一倍。因此以电处理器为核心的路 由器仍然是网络发展瓶颈。而i n t c m c t 的爆炸性增长,网络应用范围不断扩大、 新型业务不断涌现,导致新协议不断出现,对服务质量和安全性能的要求越来 越高。网络的发展要求网络设备能够在网络2 7 层上对高速数据流进行细化分 组分类处理,而不仅是在网络2 3 层上进行数据流的简单存储转发处理。而数 据分组处理涉及层次越多,系统资源负荷开销就越大i j j 。传统的基于 g p p ( g c n c r a lp u r p o s ep r o c e s s o r ) 的网络设备只满足灵活性要求,而基于 a s l 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 ) 的网络设备只满足高性能要求,两者 都不能满足网络高速发展的需求。 1 2 课题简介 本文是国家自然科学基金项目网络时空行为与2 0 0 8 奥运会网络安全关键 技术研究的一个子课题,通过用基于i n t e li x p 2 4 0 0 的网络处理器来实现一个 用于w e b 服务器前端的用户分类和入侵防御控制系统。该系统分为三大模块: ( 1 ) 基于c o o k i e 的用户分类模块:( 2 ) 用户正常程度计算模块;( 3 ) 旧用户 排队服务模块。系统工作原理如下:首先对h t t p 协议中c o o k i e 预留字段的相 关内容进行匹配,然后把匹配的用户数据包的基本信息同时传递给用户正常程 度计算模块和旧用户排队服务模块,由用户币常程度计算模块计算出用户的正 常程度并传递给旧用户排队服务模块,旧用户排队服务模块根据用户数据包的 基本信息和j 下常程度,将数据包加入不同的队列实施相应的捌塞控制、队列调 第1 章绪论 度算法和速率限制,保证正常程度级别不同的用户获得应有的带宽服务。整个 系统将有效地减轻攻击流量对w e b 服务器的影响,为大型w e b 服务器防御 d d o s 攻击提供了实用性方案。 这三个模块的基本功能已由上届同学独立完成,为了实现整个系统的功能, 本人负责旧用户排队服务模块与其它两个模块的整合。在本文中主要论述了旧 用户排队服务模块与其它两个模块的接口方法,并对整合后整个系统的基本功 能进行了仿真测试,以及针对系统中原有的r e d 拥塞控制算法的不足提出了自 己的改进算法,并对算法改进i j i 后入侵防御控制系统的性能进行了实验比较。 1 3 内容安排 本文共分六章。第一章为绪论,介绍了论文的选题背景,意义以及主要工 作进行介绍。第二章介绍了d d o s 攻击的原理及其检测防御方法。第三章介绍 了网络处理器的基本技术。第四章和第五章是本论文的重点,第四章介绍了旧 用户排队服务模块和用户分类模块以及正常程度计算模块的接口方法,并对系 统基本功能进行了仿真验证;第五章介绍了改进后的r e d 算法,并比较改进前 后系统的性能。最后一章是对本文的总结和后续工作介绍。 第2 章d d o s 攻击发舫御对策 第2 章d d o s 攻击及防御对策 2 1d d o s 攻击的概念 d d o s ( d i s t r i b u t e dd e n i a lo f s e r v i c e 分布式拒绝服务) 攻击实际上是d o s ( d e n i a lo f s e r v i c e 拒绝服务) 攻击的进一步演化。d o s 攻击是指攻击者在短时 间内向目标主机发送大量要求回复的信息,迅速消耗网络带宽和系统资源,导 致网络或系统不胜重荷而瘫痪或停止向合法用户提供正常的网络服务。简单的 d o s 攻击是源主机直接向目标主机发送攻击包,而d d o s 攻击则引入了客户 服务器模式,利用i n t c m e t 上现有机器及系统的漏洞,先攻占机器本身,使其成 为攻击者的主控端或代理端。攻击者在客户端可以操纵多个主控端,而每个主 控端又能控制多个代理端,形成分稚式结构。这样,d d o s 攻击者只需控制数 量足够多的主机便可以向性能优越的服务器同时发起攻击来迅速消耗其带宽和 接入容量,使服务器陷入瘫痪或停止提供正常的网络服务。 2 2d d o s 攻击的原理 要实施一次d d o s 攻击,攻击者必须先建立一个d d o s 网络系统,拥有和 控制以下三种主机【4 】【5 1 : ( 1 ) a t t a c k e r :攻击者所在的主机,攻击者通过它采用t c p 或u d p 方式与 ( 2 ) m a s t e r : ( 3 ) d a e m o n : m a s t e r 交互,或者通过t e l n c t 客户端,或者单向地向 m a s t e r 发送实施d d o s 攻击的指令。 m a s t e r 作为守护进程,通常提供一个可登人的r o o ts h e l l ( 具有r o o t 权限的,可交互的命令解释器) ,接受 a t t a c k e r 的指令,并将指令传给d a e m o n 。 真正负责攻击的主机,它们是被攻击者安装了守护程序的 4 中山大学硪i j 学位论文 计算机群,运行并产生d d o s 攻击代码,它们在收到 m a s t e r 的命令后向攻击目标发起攻击。 d d o s 攻击模型如下图所示【6 】: 一般而言, ( 1 ) 扫描主机: ( 2 ) 入侵主机: ( 3 ) 发起攻击: m a s t e r 图2 一ld d o s 攻击模型 d d o s 攻击的运作可分为以下步骤来进行: 扫描系统安全漏洞取得主机的控制权,以便让它们充当 m a s t e r 或者d a e m o n 。 在已获得控制权的主机上植入d d o s 攻击软件( 如t r i n o o 、 t f n 等) ,并清除作案现场,以免被m a s t e r 和d a e m o n 的计算机管理员发现。然后重复步骤( 1 ) 和( 2 ) ,最终形 成具有一定威慑力的d d o s 攻击网络。 发出攻击命令给m a s t e r ,然后由m a s t e r 将命令传达 给d a e m o n ,这样就集中力量向一台或多台目标主机发起 了进攻。 5 第2 章d d o s 攻击及防御对策 2 3d d o s 攻击的主要方法 主要的d d o s 攻击可以归纳为以下两类: ( 一) 泛洪攻击( f l o o da t t a c k ) :其实质是攻击者和攻击目标之问的一场资源 比拼,攻击者通常用大量的请求数据包来淹没网络带宽和消耗服务器的系 统资源。常见的泛洪攻击有t c ps y n 泛洪,u d p 泛洪,i c m p 泛洪等,下面 对这几种泛洪攻击加以简单介绍【7 】f 8 1 。 ( 1 ) t c ps y n 泛洪 t c ps y n 泛洪攻击是通过违反常规执行t c p 三次握手协议束进行的。攻击 者向目标服务器发送大量伪造源i p 地址的s y n 请求包,服务器收到请求 之后会向这些伪造的源i p 地址的主机发送s y n i a c k 包,由于这些主机并 没有真的向服务器发送请求,因此不会相应服务器的s y n l a c k 包,这样第 三次握手无法完成,而服务器却不得不保留越来越多的这种半连接状态, 最终导致服务器的存储资源和计算资源被耗尽,合法用户就无法与服务器 建立连接,从而造成拒绝服务攻击。 ( 2 ) u d p 泛洪 基于u d p 协议的服务器工作原理是将收到的u d p 数据包的目的端i z l 和自 己提供服务的端口进行比较,如果该u d p 数据报的目的端口和自己提供 服务的端口不同,服务器会返回一个d e s t i n a t i o np o r tu n r e a c h a b l e 的 i c m p 包。这一点让攻击者有机可乘,攻击者向服务器发送大量与其提供 服务的端口号不符的u d p 数据报,致使服务器的计算资源被耗尽而瘫痪。 ( 3 ) i c m p 泛洪 i c m p 协议的主要功能是用于主机之间的联络,通过发送“回复请求” ( e c h or e q u e s t ) 信息包请求主机响应来判断与主机之问的连接是否j 下 常。攻击者利用系统的这个漏洞,伪造目标主机的i p 地址向局域网内的 主机发送广播分组,那么局域网内所有没有关闭i c m p “回复请求”应答 功能的主机都会向目标主机发送e c h o 响应信息包,丽目标主机在处理 中山人学颂f :学位论文 i c m p 时将被大量的信息包淹没。 ( 二) 畸形包攻击( l a lf o r m e dp a c k e ta t t a c k ) :征对目标主机在应用和协议 上的漏洞向其发送畸形数据包使目标主机宕机或重启。常见的有p i n g o fd e a t h 、i p 包碎片重组攻击、l a n d 攻击等,下面加以简单介绍【9 】【1o 】: ( 1 ) p i n go fd e a t h 大多数系统将t c p i p 协议簇中的i c m p 包的长度规定为6 4 k b ,并且在 对包的标题头进行读取之后,要根据该标题头晕包含的信息来为有效载 荷生成缓冲区,当产生畸形的,声称自己的尺寸超过i c m p 上限的包也 就是加载的尺寸超过6 4 k 上限时,就会出现内存分配错误,导致 t c p i p 堆栈崩溃,致使接收方宕机。 ( 2 ) i p 包碎片重组攻击 利用i p 数据包头部的偏移字段,发送伪造的含有重叠偏移字段的i p 数 据包,某些t c p i p 在收到含有重叠偏移的分段时将崩溃。典型的攻击 有t e a fd r o p 、j o lt 2 和b u g t r a gi d3 7 6l in u xi pf r a g m e n to v e r l a p v u l n e r a b i1it y ( 3 ) l a n d 攻击 构造源地址和目的地址都指向同一个服务器地址的畸形s y n 包,服务器 接收到这样的畸形包后向它自己的地址发送s y n l a c k ,然后该地址又发 回a c k 消息并创建一个空连接,每个这样的连接都将保留直到超时,同 样服务器c p u 和内存资源将被耗尽。 2 4d d o s 攻击的检测及防御方法 2 4 1d d o s 攻击的检测方法 要对d d o s 攻击进行防御,首先要能迅速、准确地检测到d d o s 攻击。而 我们在检测d d o s 攻击时常犯的一个错误是,搜索特定攻击工具的缺省字符串、 第2 章d d o s 攻击及防御对策 缺省端口。实际上,d d o s 的唯一检测方法是:异常的网络流量。 目自口用得比较多的检测异常网络流量的方法可以分为两类i l i j :一类是基于统计 的检测,如l f e i n s t c i n ,d s c h n a c k e n b e r g 提出的计算熵( 平均信息量) 的方法, 就是预先选定描述数据包特性的参数,然后通过该参数在一段时间内的频率选 择性分布图来计算熵,通过熵值的变化来表征异常:另一类是聚集的方法,如 c j i n ,h w a n g ,k g s h i n 建议根据i p 头部t t l ( t i m e t ol i v e ) 字段推测出的 跳数信息作为茈常地址前缀的分类标准,以此区分异常流量。其实以上两类检 测方法也是根据数据包的伪造深度来分的,伪造程度比较深的数据包就要用到 攻击强度瞬态突变特性、攻击包流频谱分析等基于统计的方法来检测;伪造程 度比较浅的数据包采用包首部检查等聚集的方法就可以了。 2 4 2d d o s 攻击的防御方法 根据d d o s 攻击的网络模型,我们可以在三个位置部署d d o s 防御系统: 攻击主机所在的网络、中问网络和被攻击主机所在的网络。 在攻击主机所在的网络实掩防御措施可以避免攻击流进入核心网络与其它 攻击流汇合导致全面阻塞网络。如m i r k o v i c j ,p r i e r g ,r e i h 既p 提出的d w a r d 系统就是一个典型的位于攻击源端的防御系统,该系统由观测模块和速率限制 模块组成,可以被部署在攻击网络的边界路由器上,也可以作为单独的系统与 边界路由器协同工作。该系统可以同时监测进出网络的流量,并且将观测数据 联合比较来检测是否存在d d o s 攻击,然后根据检测结果对出口流量有选择地 进行速率限制,速率会根据连续观测到的被限速流的行为动念地调节i ”1 。 在攻击源端部署防御系统,固然可以及早过滤攻击流,避免滥用公共的网 络资源,但到目前为止都没有立法来强制网络管理者必须在自己的网络边缘增 加这种专用的网络安全系统,而对于网络管理者来说,这种增加投资而又没有 实质受益的行为是很难普遍实现的。 通常,越靠近被攻击主机所在的网络,攻击分组就越容易被检测出来,但 当检测到攻击时可能已经为时已晚。最理想的情况是,尽可能地靠近攻击源所 8 中山人学颂i :学位论文 在的网络检测到攻击并阻止它蔓延,然而在攻击源端攻击流的特征通常都不明 显,因此检测的难度比较大,虚警和漏警的概率比较高。为了选择一个折中的 办法,提高检测防御的效率和准确率,g u a n g s c nz h a n g ,m a n i s hp a r a s h a r 主张 在中阃网络进行d d o s 攻击防御。他们的核心思想是构造一个大规模的动态防 御系统,该系统由中闻网络中现存的多个独立防御节点组成,各防御节点随机 地选择系统中的一个或多个节点采用g o s s i p 机制进行信息交换目的在于共享 现有防御节点提供的检测信息,对标识出的可疑流量及早地进行速率限制,提 高防御的主动性和准确麒”j 。 h a i n i n gw a n g ,k a n gg s h i n 提出的t r a n s p o r t a w a r ei pr o u t e r 是一种 可以部署在被攻击网络边缘的防御系统,该系统包括一个细粒度的q o s 分类模 块和一个自适应的基于权重的资源管理模块,这两个模块被嵌入在路由器中, 为了减少路由查询的时间,系统采用了双阶段数据包分类机制:第一步,先在 输入端口进行路由查询;第二步,在数据包被交换结构路由之后,再在输出端 口进行细粒度的q o s 查询。这种系统认为t c p 控制流量是i n t e r n e t 上最重要的 流量,应该与t c p 数据流量区别对待,而其它u d p 和i c m p 流量在i n t e r n e t 上 应该受到限制。这种系统通过区别以上几种流量,提供不同o o s 控制,实现对 网络资源的保护,防止流量对网络资源的滥用l i “。 2 4 3 现有d d o s 防御防御系统的不足 现有的d d o s 攻击检测防御系统,大多将重点放在攻击的检测上面,面对检 测出的可疑流量的处理往往过于简单,一般只是对可疑分组进行简单的丢弃。 一些基于速率限制的系统,主要着眼于对网络资源进行管理,防止有流量滥用 带宽,而没有针对d d o s 攻击的特点束分配和管理带宽。另外一些速率限制系统 对每个会话进行跟踪管理,粒度过小,会消耗大量的处理器资源,而且不能对 用户访问行为的j 下常程度进行分析,也不能防御应用层的攻击。部署在中间网 络的动态防御系统虽然能起到良好的控制和追踪作用,但由于施用范围广,投 入大,目觞来说可行性并不高。因而现有的系统都不能有效地保护网络中的大 型服务器。 9 第3 章阿络处理器技术 第3 章网络处理器技术 以网络设备的核心部件更新为标志,网络设备体系结构的发展大概经历了 以下三个阶段: ( 1 ) 以g p p ( g e n e r a lp u r p o s e p r o c e s s o r ) 为核心的网络设备体系结构 在网络发展早期,网络传输速率低,服务少,研究集中在服务框架构建和 网络协议的实现上。设备以g p p 为核心,在通用操作系统基础上,以软件方式 实现各种网络服务。目前许多边缘设备:如防火墙、v p n 设备、v o i p 设备,还 在采用这种通用处理器+ 通用操作系统+ 专用网络服务软件的体系结构。其优点 是灵活性好,缺点是处理性能差。这种结构为支持各种复杂运算,采用通用体 系结构和指令集,其通用性导致网络处理性能较差。 ( 2 ) 以a s i c r i s c 为核心的网络设备体系结构 随着网络带宽的增长速度远大于通用计算机处理的增长速度,基于g p p 的节 点设备成为了网络瓶颈。于是,采用基于a s i c ( a p p l i c a t i o ni n t e g r a t e d s p e c i f i cc i r c u i t ) 和r i s c ( r e d u c e di n s t r u c ts e tc o m p u t e ) 为核心的体系 结构成为主流,尤其是骨干网设备的设计。为获取高性能,通常由r i s c 负责非 实时管理,a s i c 负责高速数掘处理。a s i c 不具备可编程性,一旦将计算逻辑固 化到硬件中就很难修改。一般设计制造复杂的a s i c 需要花1 8 个月到两年的时 问,因此设备制造商必须准确预测未来的市场需求和技术趋势。遨就决定了该 系统结构不仅开发周期长而且缺乏灵活性。 ( 3 ) 以n p ( n e t w o r kp r o c e s s o r ) 为核心的网络设备体系结构 主干网络流量的指数性增长已使主干路由器的处理线速从6 2 2 m b p s 增加到 2 4 g b p s ,并且很快将达到l o g b p s ,特别是大量的多媒体和高清晰度电视应用 的出现,促使这一增长进一步加快。同时,复杂的o o s 控制,例如d i f f s e r v ( d i f f e r e n t e ds e r v i c e s ) ,r e d ( r a n d o me e a r l yd e t e c t i o n ) 以及新的网络协 议和服务的涌现,已使得基于g p p 和a s i c 的网络处理方案不能同时满足处理速 度和灵活性两方面的要求。为此,基于a s i p ( a p p l i c a t i o ns p e c i f i ci n s t r u c t i o n p r o c e s s o r ) 技术的网络处理器应运而生,在网络处理器芯片上不但集成了多个 1 0 中山人学硕i + 学位论文 为网络处理优化过的处理器,同时还集成了一些专用硬件处理单元,如c r c 校 验、h a s h 单元等,并且在处理线速上已经达到或超过l o g b p s 。它的出现为从第 二层到第七层的多种应用提供了良好的支持,兼顾了6 p p 的灵活性和a s i c 的执 行效率【1 卯。 从1 9 9 9 年到现在,已有包括a m c c ,i n t e l ,i b m ,v i t e s s e ,h i f n ,m o t o r o l a 等多家大公司相继推出自己的网络处理器产品。其中i n t e l 公司在网络处理器 的开发方面走在了同行的i i 列。本文的入侵防御控制系统就是基于i n t e l i x p 2 4 0 0 架构实现。 3 1 网络处理器简介 3 1 1 网络处理器的定义 网络处理器是新一代用来执行数据处理和转发的高速可编程处理器,采用 全新的设计理念,具有g p p 的低费用和灵活性,同时也具有a s i c 的速度与可 扩展性。在网络数据处理方面的明显优势,使其成为高速网络设备支持业务管 理、安全与网络监控、q o s 等网络功能必不可少的部件,代表了未来网络设备 设计的发展方向。网络处理器可以广泛地应用于i n t e r n e t 的核心层,分布层和 接入层中。在核心网中,网络处理器可以用于实现核心路由器;在分布层中, 它可以应用于i s p 接入设备和数据中心,提供对新型业务和网络汇接的支持; 在接入层中,则可以用于用户管理和接入控制,实旌安全与网络监控,以及 i n t r a n e t 防火墙等【l 叫。 3 i 2 网络处理器的基本组成 网络处理器的组成可以从硬件和软件两方面来描述。 网络处理器硬件结构如图3 一l 所爿6 1 : 第3 章嘲络处理器技术 图3 1 网络处理器的硬件结构 如上图所示,网络处理器主要包括两个功能模块:网络处理单元和智能协 处理单元。 智能协处理单元是网络处理器的核心,它一般需要嵌入式操作系统的支持, 用于对网络处理单元和其它硬件单元进行控制;主要完成控制面和管理面的数 据包处理,通过运行操作系统之上的路由协议软件包,完成路由信息的接收, 处理和发送,生成并维护路由表等。 网络处理单元( 一般有多个) 通常采用多线程结构,可以完成高速、大容 量的智能数据面处理功能,如数据包的收发、包头处理和路由查询等。 网络处理器的这种硬件结构,大大提高了其处理速度:多个处理器并行工 作的结构可以提高网络处理器的处理能力;处理器内部的硬件多线程结构可以 降低数据处理时访问存储器所需要的平均时间,提高芯片的效率;实时性要求 不同的任务交由不同的处理器来完成,从一定程度上可以减少数据包的处理延 时。从系统灵活性的角度看,智能协处理单元是可编程的,网络处理单元一般 由多个r i s c 芯核组成,而r i s c 芯核也是可编程的。这就充分保证了网络处理 器的灵活性。不难看出,网络处理器的高速处理能力主要是通过一个芯片内集 成多个微处理器以及一个微处理器包含多个硬件线程实现的,当然也采用了其 他的一些硬件加速技术,而网络处理器的灵活性则主要是通过智能协处理单元 与网络处理单元的完全可编程能力实现的。 网络处理器的软件包括:板级支持包( b s p ,b o a r ds u p p o r tp a c k e t ) 、嵌入 式操作系统,路由协议软件包和微代码( 或标准语言代码) 等四部分。其中前 1 2 中山人学硕k 学位论文 三者运行在智能协处理单元上。板级支持包记录着智能协处理单元需要管理的 硬件信息以及它们的主要配置信息;嵌入式操作系统是路由协议或其他应用程 序运行的基础:智能协处理单元通过运行路由协议软件包可以生成并维护路由 表;微代码运行在网络处理单元上,用于对数据进行处理和转发。 为了更好地理解网络处理器的基本结构,我们把网络处理器在网络设备上 的应用可以分成以下三类【1 7 1 : ( 1 ) 数据面( d a t a p l a n e ) 应用。属于这一类应用的网络设备从端口接收输 入的数据包,对数据包进行处理,然后在相应的端口把数据包转发出去。 属于此类的应用包括路由数据包,数据包分类,协议转换等。 ( 2 ) 控制面( c o n t r o lp l a n e ) 应用。此类应用主要处理辅助数据面的各种 控制数据包。路由表更新,建立a t m 虚电路和i p s e c 的密钥交换等属于 此类应用。 ( 3 ) 管理面( m a n a g ep l a n e ) 应用。这一类的应用程序是负责对网络管理数 据包进行处理的。s n m p 进程就是一个非常典型的例子。 以上三类应用中,对网络设备要求最高的就是数据面应用。此类应用需要 对数据包进行线速处理,以防止数据包的丢失。针对这几类应用的不同需求, 网络处理器在硬件架构上提供了快速和慢速两个通道,方便处理不同类型的数 据包。 3 2i n t e li x p 2 4 0 0 网络处理器简介 i n t e l 公司开发的网络器产品有i x p l 2 x x 系列第一代网络处理器,以及以 i x p 2 4 0 0 、i x p 2 8 0 0 、i x p 2 8 5 0 为代表的第二代网络处理器。其中,i x p 2 4 0 0 主 要是面向o c 1 2 到0 c 4 8 2 5 g b i f f s 的网络接入和边缘网的应用。它可以应用于: w a n 多服务交换、d s l a m 、2 5 g b i t s 和3 g b i t s 的基站控制器和网关、4 7 层交换、v o l p 网关、多业务接入平台、高端路由器和v p n 等。下面简单介绍 h a t e li x p 2 4 0 0 阿络处理器 1 6 l 。 第3 章阿络处理器技术 3 2 1i n t e li x p 2 4 0 0 网络处理器硬件结构 i x p 2 4 0 0 硬件结构如下图3 2 所示【16 】: 图3 2i x p 2 4 0 0 硬件结构 ( 1 ) i n t e lx s c a l ec o r e :3 2 位的嵌入式精简指令集处理器,主频为6 0 0 m h z 。 负责处理网络处理器中控制面( c o n t r o lp l a n e ) 处理任务,执行系统 芯片初始化配置、系统控制管理、运行路由协议栈、更新路由表等操 作。还负责对异常数据包进行处理。 ( 2 ) m e :微引擎,i x p 2 4 0 0 的核心部件,也是i x p 2 4 0 0 取得线速处理性能的关 键所在,负责绝大部分的数据包处理任务。m e 能访问i x p 2 4 0 0 中的所以 共享资源:s r a mc o n t r o l l e r ,d r a mc o n t r o l l e r 、m s f 、s h a c 和n n r 。 i x p 2 4 0 0 中有两组共8 个m e ,每组4 个。m e 的工作频率与x s c a l ec o r e 的频率相同,每条指令的执行时间为一个时钟周期,支持软件控制的多 线程操作( 每个旺有8 个线程) ,当其中一个线程在等待耗时时间较长 的存取操作时,另一个线程就可以进行其它操作,这样就掩盖了因存取 操作带来的时延问题,大大提高了m e 的资源利用率。每一个m e 内部都 拥有大量的存储器和寄存器,包括可编程的4 k 指令存储区、2 5 6 个 3 2 b i t s 的通用寄存器,5 1 2 个3 2 b i t s 的传输寄存器( d r a m 和s r a m 各 2 5 6 ) 各1 2 8 个邻居寄存器( n n r ,n e x td e i g h b o rr e g i s t e r s ) 和6 4 0 1 4 中山人学硕i 。学位论文 个3 2 b i t s 的本地寄存器( l m ,l o c a lm e m o r y ) 。l m 对于m e 中的线程来 说,它的速度最快容量最小,只能被娅中的线程访问。其它类型的存 储器贝口可被微引擎和x s c a l ec o r e 共享。在共享存储器中,s c r a t c h p a d 拥有最快速度和最小容量,d r a m 容量最大但速度最慢,它主要用来存放 数据信息。g r a m 容量和速度介于前二者之间,它主要用于存放控制信息。 开发者可根据对时间和空问的不同需求来选择适用的类型,这一特点兼 顾了网络数据处理的灵活性和高性能。 g r a mc o n t r o l l e r :g r a m 控制器,用于接口s r a m 存储设备,控制、管理 i x p 2 4 0 0 中其它功能单元对s r a m 存储设备的访问、操作。i x p 2 4 0 0 中有 两个g r a mc o n t r o l l e r :s r a mc o n t r o l l e r o 和g r a mc o n t r o l l e r l ,相互 独立,可并行工作。另外s r a mc o n t r o l l e r 还可以用于接口符合相应接 口规范的协处理器,执行特定的复杂数据包处理操作。g r a mc o n t r o l l e r 的地址总线为2 4 位,最大地址空问为6 4 m b ,最高频率可达2 0 0 m h z 。 d r a m c o n t r o l l e r :d r a m 控制器,用于接口d r a m 存储设备,控制、管理 i x p 2 4 0 0 中其它功能单元对d r a m 存储设备的访问、操作。d r a m 存储设 备的最大存储空问为2 g b ,用于存储数据包、路由表等大型的数据结构。 m s f :m e d i aa n ds w i t c hf a b r i ci n t e r f a c e ,介质和交换结构接口,它 是i x p 2 4 0 0 与外部物理层设备( p h y ) 、交换结构( s f ) 的接口单元。是 i x p 2 4 0 0 接收、发送数据包的窗口。m s f 通过u t o p i a 、s p i 协议与p h y 接口,通过c s i x 协议与s f 接口。 p c ic o n t r o l l e r :p c i 控制器,用于接口c o n t r o lp l a n ep r o c e s s o r 、 m a n a g e m e n tp r o c e s s o r 、其它i x p 网络处理器、以及p c i 以太网卡等符 合p c i 规范的设备。 s h a c 单元:包括s c r a t c h p a dm e m o r y ( 中问结果存储器) ,容量为1 6 k b , 用于腿之问的通信以及重要数据的内容缓存;h a s hu n i t ( 哈希单元) , 支持4 8 b i t 、6 4 b i t 、1 2 8 b i t 的哈希运算;c a p ( c o n t r o ls t a t u sr e g i s t e r a c c e s sp r o x y ,控制状态寄存器访问代理) ,用于对i x p 2 4 0 0 中的控制、 状态寄存器进行访问、操作,用于设定i x p 2 4 0 0 的工作模式和采集运行 状态。 1 5 ) ) ) ) ) h 订 第3 章网络处理器技术 总体上来看,i x p 2 4 0 0 采取了m u l t i m a s t e r + c h a s s i s + m u l t i - t a r g e t 的硬件体系结构。其中m u l t i m a s t e r 指i x p 2 4 0 0 中的多个主控单元,包 括m e 、x s c a l ec o r e 、p c ic o n w o l l e r 等硬件功能单元,主要是发起和控 制对m u l t i - 1 魂e t 的操作;m u l t i - t a r g e t 是指i x p 2 4 0 0 中的多个从属单元, 执行m u l t i m a s t e r 规定的操作( 主要是读写操作) ;c h a s s i s 由多组数据 总线、命令总线、总线仲裁器组成,提供m u l t i - m a s t e r 与m u l t i - t a r g e t 之间数据传输通道和命令传输通道。具体而言,i x p 2 4 0 0 的硬件体系结 构的主要特征如下【1 6 】: ( 1 ) 采用分立的内部总线结构,将不同存储单元的数据总线、数据读 写总线分开,可以同时对不同存储单元进行读写操作,大大提高了 i x p 2 4 0 0 的并行处理能力。 ( 2 ) 引入命令总线仲裁器对各主控单元发出的命令进行排队判优,保证 了指令的优先级,避免了指令的冲突和拥塞。 ( 3 ) 采用了分布式的硬件结构,即m u l t i m a s t e r + m u l t i - t a r g e t 结构。不 同的硬件功能单元在高速内部总线的支持下各司其职,负责专门的 数据处理操作,大大增强了i x p 2 4 0 0 的并行处理能力。 ( 4 ) 采用多m e 并列的硬件结构,8 个m e 可同时工作,极大增强了 1 x p 2 4 0 0 的并行处理能力。而将8 个m e 分为2 组:c l u s t e r o 、c l u s t e r l , 并使用独立的s r a m 数据总线,有效地缓解了总线冲突,进一步增 强了i x p 2 4 0 0 的并行处理能力。 3 2 2i n t e li x p 2 4 0 0 网络处理器软件结构 按代码运行在x s c a l ec o r e 还是m e 不同硬件之上,网络处理器可分为数据 平面与控制平面【1 8 1 。数据平面主要运行在m e 处理之上,是实现输入端口和 输出端口日j 高速转发数据包的处理功能,具有线速执行特点,并充分利用数据 包的无关性,采取并行处理方式。控制平面一般运行在x s c a l ec o r e 上,处理 路由表更新,管理数据平面任务与状念,完成高层的q o s 控制等。这些操作 1 6 中山大学硕i :学位论文 的性能要求低于数据层面,因此通常采用高性能通用处理器硬件平台。为了有 效支持网络处理功能,控制平面与数据平面之问存在复杂的信息交互与依赖关 系。 i x p 2 4 0 0 的软件开发也分为内核程序和微代码两部分。x s c a l e 内核的开发 通常可以使用基于a r m 平台嵌入式操作系统开发工具链,如w i n d r i v e r 公 司的t o r n a d o 或基于g n u 的l i n u x 工具链等;对微引擎的编程,可使用i n t e

温馨提示

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

最新文档

评论

0/150

提交评论