




已阅读5页,还剩56页未读, 继续免费阅读
(计算机系统结构专业论文)网络处理器包传输结构的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西北工业大学硕士论文摘要 摘要 作为推动今后网络发展的一项核心技术,网络处理器越来越受到集成电 路产业界的关注,国内外的许多公司和研究机构纷纷展开了网络处理器的相 关研发。网络处理器是一种全新的基于网络协议处理的可编程r i s c 处理器, 作为今后网络主干设备如交换机、路由器中的核心部件它结合了通用处理 器的高灵活性和专用包处理器芯片的高性能特征,针对网络协议处理进行专 门的优化设计,达到网络i p 包的线速处理以及越来越复杂的网络应用要求。 包传输( 或包转换) 单元( p a c k e tt r a n s f e ru n i t ,p t e ) 是网络处理器中 负责i p 包协议处理的核心模块,完成i p 包在转发过程中的分析处理。p t e 上行通道( i n g r e s s ) 完成数据包从m a c 层接口向交换架构( s w i t c hf a b r i c ) 的传输;下行通道完成数据包从交换架构向m a c 层接口的传输。在p t e 的 处理流程中包括两个关键的过程:l 、保证相关i p 包的转发顺序;2 、快速的 完成路由查找。 路由查找决定i p 包下一站转发的端口,路由查找过程是网络处理器处理 流程的一个重要组成部分,快速有效的路由查找是网络处理器实现线速转发 的个重要条件。 本文对网络处理器体系结构以及p t e 模块做了研究,主要研究工作主要 包括三个方面: 1 、对网络处理器体系结构做了较全面的研究,讨论了网络处理器的功能 特征和网络处理器体系结构的编程性、并行处理、协处理单元、多线 程以及深层数据处理等方面的特征。 2 、以n p 3 4 0 0 网络处理器为基本参考模型,对p t e 模块进行了详细的设 计和分析,在此基础上,讨论了i p 数据包在并行处理过程中逆序的 问题,在p t e 的设计中加入了避免i p 包逆序的机制,并做了设计模 型的功能仿真和相关分析。 3 、引入基于快速最长前缀匹配的路出查找机制该机制以转发表的面积和 查找速度为目标对路由查找方案进行优化。本文对该路由查找机制的原 理做了深入的研究,在此基础上对该机制做了模型的设计、功能上的仿 真以及性能的分析。 本课题属预研性课题,旨在为将来对网络处理器这个新兴领域的研究积累 经验。面对网络处理器这个新兴的科研领域以及目前研究发展状况善不成熟的 局面,对这个课题的研究存在很大的难度。在没有任何现成研究成果的情况下 本文作者从功能需求分析入手,通过收集和阅读大量的文献资料自行展开了本 课题的研究工作。 关键词:网络处理器i p 包体系结构包传输单元f 序转发i p 路由 西北工业走学硕士论置摘要 a b s t r a c t a sac o r et e c h n o l o g yo np r o m o t i n gt h ef u t u r en e t w o r k ,n e t w o r kp r o c e s s o r ( n p ) i sb e i n gg i v e nm o r ea n dm o r ea t t e n t i o ni ni cf i e l d ,a n dt h e r ea r em a n y c o m p a n i e s a n di n s t i t u t i o n s r e s e a r c h i n g o nn p b a s e do nn e t w o r k p r o t o c o l p r o c e s s i n g ,n pi san e wt y p eo f r i s c p r o c e s s o rw i t hs p e c i a la r c h i t e c t u r a lf e a t u r e s t h a ta r eo p t i m i z e dt op e r f o r mp a c k e t p r o c e s s i n gf u n c t i o n s t h i st y p eo f p r o c e s s o r h a se m e r g e dt o c o p e w i t ht h e e v e r - c h a n g i n gn e t w o r k i n ga p p l i c a t i o n s t h a ta r e b e c o m i n gi n c r e a s i n g l yc o m p l e x ,a n dw i l lb et h ec o r ec o m p o n e n t o fn e wt y p e so f b a c k b o n ed e v i c e ss u c ha sr o u t e r sa n ds w i t c h e s p a c k e tt r a m f e ru n i t ( p t e 】i so n eo f t h em o s ti m p o r t a n tu n i t so f n p w h i c hi s r e s p o n s i b l ef o rp a c k e ta n a l y z i n ga n dp r o c e s s i n g t h e r ea r et w ol a n e si np t e ,o n e i si n g r e s sl a n e i nw h i c hp a c k e t sa r et r a n s m i t t e df r o mm a c t os w i t c hf a b r i c a n d t h eo t h e ri se g r e s sl a n e i nw h i c hp a c k e t sa r et r a n s m i t t e df r o ms w i t c hf a b r i ct o m a c 。l nt h ep r o c e s sf l o wo fp t et w o i m p o r t a n tp o i n t sa r ei n c l u d e d : 1 e n s u r i n gf o r w a r d i n gs e q u e n c eo f p a c k e t s ; 2 f i n i s h i n gr o u t i n gl o o k u p w i t h h i g h r a t e t h e p r i m a r y w o r ko fr e s e a r c ha n dd e s i g ni nt h i sp a p e ri n c l u d e s : 1 g l y i n ga ne n t i r e r e s e a r c ho fn p sa r c h i t e c t u r e ,d i s c u s s i n gs o m ek e y f e a t u r e so f n p i n c l u d i n gp r o g r a m m i n g ,p a r a l l e lp r o c e s s i n g ,c o p r o c e s s o r s , m u l t i t h r e a da n di n t e l l i g e n tp r o c e s s i n g 2 d e s i g n i n gp t e ,w i t ht h ea r c h i t e c t u r e o fa m c cn p 3 4 0 0a sas o u r c e r e f e r e n c e a d d i n gas c h e m et ot h i sd e s i g n w h i c hi s i no r d e rt oe n s r u e f o r w a r d i n gs e q u e n c e o f p a c k e t s d o i n gf u n c t i o ns i m u l a t i o nf o rt h ed e s i g n o f p t e ,w i t he m p h a s i so nt h i ss c h e m e 3 i n t r o d u c i n gaf a s ti pr o u t i n gl o o k u ps c h e m e ,d e s i g n i n gt h em o d l e o ft h i s l o o k u ps c h e m e ,a n da n a l y z i n gp e r f o r m a n c e f o rt h i sd e s i g n t h i st h e s i si sf o rt h ep u r p o s eo fa c c u m u l a t i n ge x p e r i e n c eo nr e s e a r c ho fn p i nt h ec a s eo fh a v i n gl i t t l ea c h i e v e m e n ta th a n d ,t h ea u t h o rh a su n d e r t a k e n r e s e a r c hf r o mf u n c t i o nd e m a n d k e yw o r d s :n e t w o r kp r o c e s s o r ( n p ) ,i pp a c k e t s ,a r c h i t e c t u r e ,f o r w a r d i n g s e c q u e n c e ,p a c k e t t r a n s f e ru n i t ( p t e ) i pr o u t i n gl o o k u p i i 西北工业是擘硕士论交 第一章绪论 第一章绪论 1 1 课题背景及意义 由于有了光纤等高速的网络传输媒介,i n t e r a c t 带宽不断提高,规模不断 扩大,网络结构也越来越复杂。传输媒介的速度已不再是网络发展的瓶颈。 而核心网络设备( 路由器、交换机) 的转发性能则成了计算机网络发展的主 要矛盾,数据包( p a c k e t ) 通过路出器和交换机时,对包处理的最低要求是 确定每一个包的下一个目的地址,在庞大的路由表牛找到它的i p ( i a t e r n e t p r o t o c 0 1 ) 地址,然后转发出去。早先的计算机网络速度比较慢,通用的处理 器完全赶得上数据流的传输速度,因此并不需要专门的网络处理器( n e t w o r k p r o c e s s o r ,n p ) 。后来通用处理器不够快了于是就出现了a s i c 实现转发 的方式,它将转发过程的所有细节全部采用硬件方式来实现。a s i c 在完成规 定的处理性能方面是非常卓越的,但它有两个缺点:一是开发的周期太长, 复杂的a s i c 要1 8 个月到2 年时间。路由器或交换机要增加新的功能,制造 商需要等待的时间太长:第二,a s i c 不是可编程的。要修改就必须经历一个 设计和制造的周期,适应不了当今越来越短的产品开发周期。随着新技术的 出现和标准化的进展以及对高速网络设备的业务功能要求的不断提高,可编 程的、专为l p 包( p a c k e t ,或译为分组) 处理优化设计的网络处理器技术将 应用在网络的关键i p 业务流程处理上。它同通用的处理器的不同之处在于: 网络处理器是为优化包处理而设计的,它将包以其到达的速度( 即线速) 送 到下一个节点,而通用处理器则要处理范围很大的各种指令。另一方面,如 果需要新的功能或新的标准,网络处理器可通过编程来实现,以满足各种各 样的网络应用。由此可见,网络处理器兼具通用c p u 的高度可编程能力与专 甩芯片的赢速数据处理能力,是超大规模集成电路尤其是片上系统s o c ( s y s t e mo nc h i p ) 设计的理想应用场合。从发展方向上来看,网络处理器的 基本发展趋势是软件和硬件结合的架构。i l 土 4 】 网络处理器是一种新兴的网络设备平台,国内有的企业曾希望用它来推 出防火墙产品,而这种定位并不能突出网络处理器的性能优越性。网络处理 器是为优化包处理而设计的,在面对标准的数据包时,通过硬件速度处理网 络负载,这样可以更快速的进行数据处理;网络处理器强大的可编程性,减 少了很多硬件设计的工作,当出现新的功能和标准时,通过编程可不进行硬 件平台的更换,既缩短了产品面世的时问,也延长了产品停留于市场的时间。 网络处理器通过把硬件和软件相互捆绑发挥作用,将路由器、交换枫和防火 墙等复杂的网络设备合为一体来实现,网络处理器面对的不仅是网络安全行 业,而是范围更广的通信、信息等多个领域”l 。因此,网络处理器是高端路 由器、交换机、防火墙等通信产品的核心部件,尽早展开这方面的研究与应 用工作,研制摒 有自主产权和底层核心技术的关键网络通讯设备,对保障国 家信息安全提升国家产业竞争力都有重大的战略意义和现实意义。 西北工业太擘硕士论文第一章绪论 目前我国的处理器设计刚刚起步,大多数采用的方式都是仿制主流处 理器的体系结构,设计水平和对体系结构的研究还比较落后,不能形成产品 化,没有针对性的研发,新产品甚少”l 。西北工业大学航空微屯子中心是我 国最早丌展微处理器设计的单位之一,对处理器体系结构进行了大量的研究, 目前已经成功设计了多款8 位、1 6 位和3 2 位的c i s c 、r i s c 和d s p 处理器, 具备了对微处理器系统结构进一步研究的能力,在此基础上我们展开了网络 处理器体系结构应用设计的研究。 1 2 国内外研究和应用状况 l9 9 8 年,美国c o r n e l ! 大学的s k e s h a v 和r o s e ns h a r m a 在i e e e 通信杂 志上发表了( i s s u e sa n d t r e n d s i n r o u t e r d e s i g n ) ) ,提出骨干网路由器在提高性 能的同时需要解决流识别、简易配置等问题指明了路由器设计的新潮流。 华盛顿大学的t i l m a n w 0 n 进一步研究了高性能路由器的设计,发表论文,从 理论上提出基于网络处理器的路出器的理念。早期的网络处理器的功能较为 简单和单一,通常用在交换机等低端网络设备上。而在高端路由器上采用的 网络处理器要求功能全面、性能强大,远远不是早期的所谓“网络处理器” 所能比的。为了避免混淆。网络处理器协会特意下了一个定义“网络处理器 是用于实现报文处理、协议分析、路由查找、语音数据集成、防火墙和q o s 等通信工作的可编程硬件”1 5 i ,而早先的网络处理器只能算是专用数据包处 理芯片而己。 自从网络处理器理念出现以来,围绕着网络处理器应用展开的相关研究也 得到了飞速的发展,一些企业和学校也给予了足够的重视。比如。i n t e l 公司专 门投资支持全球1 0 0 所大学迸行网络处理器及其相关应用的研究,并每年召开一 次w o r k s h o p 进行交流与总结【i l 。华盛顿州立大学2 0 0 2 年专门召开了以网络处理 器为主题的学术会议,并在网络处理器硬件体系结构和性能评价分析等方面作 了深入的探讨。综合来看,与网络处理器相关的工作主要由两方面构成,一方 面是针对网络处理器硬件本身,另一方面则是面向网络处理器的应用。日口者侧 重于网络处理器的硬件系统设计和性能改善与提升,比如硬件体系结构的研究、 网络处理器的集成设计等:后者则是基于网络处理器的相关应用研究,其核心 问题就是要充分发挥网络处理器灵活性和高性能的特点,构建并实现一定的网 络服务及应用。例如,基于网络处理器的可编程路由器研究、集成q o s 控制、 网络处理器的性能分析与测试等i l l 。 在1 9 9 9 年初网络处理器刚刚兴起时,市场主要被一些新兴的小公司占 领,它们的产品基本都定位在网络处理器或其它专用通信芯片上,1 9 9 9 年9 月i n t e l 和i b m 公司宣布正式进入网络处理器市场标志着网络处理器从此在半 导体设备市场真f 拥有一席之地。目前国内只有少数几家领先的通信设备制 造商自主开展了网络处理器的研制项目。涉足国内信息网络安全行业已多年 的华北工控公司针对网络接入终端市场,在2 0 0 3 年的最后一个季度推出了基 于i n t e li x p 4 x x 系列网络处理器的新产品n o r c o - n p 7 l ,各项测试结果令人 西北工业太学硕士论叉 第一章绪论 满意。同时,网络处理器硬件平台的成功打造需要与网络信息安全企业的软 件相互配套,否则就不可能实现产品化。而可以预见的是在不远的将来,网 络处理器必将成为i c 设计尤其是s o c 设计领域的研究热点。肛 目前,网络处理器产品已有上百种,其中比较典型的产品有i n t e l 公司的 i x p l 2 0 0 、i x p 2 4 0 0 和i x p 2 8 0 0 等。不仅仅是芯片巨人i n t e l 公司,业界的其 他领导厂商也在积极支持网络处理器的产品化和市场化进程。例如,i b m 公 司的产品有n p 4 g s l 和n p 4 g s 3 ,它们支持2 5 g b p s 应用:v i t e s s e 公司的支 持2 5 g b p s 应用的i q 2 0 0 0 和i q 2 2 0 0 ;c p o r t 公司的支持2 5 g b p s 应用的c 5 和c - 5 e ;a m c c 公司的n p 3 4 0 0 等等。这些主流网络处理器产品一般都能达 到o c 一4 8 ( 2 4 g b p s ) 的处理能力,而且将很快升级到o c 1 9 2 ( 1 0 g b p s ) 的 水平:支持在第二、三、四层上的线速数据处理:支持各种q o s 应用如d i f f s e r v 、 r e d 、m p l s 等;基于硬件的队列管理、调度机制:可通过专用汇编语言编 程甚至支持高级语言c + + 语言编程如m o t o r o l ac 5 系列;将交换单元、m a c 单元与网络处理器单元集成到一块芯片提高处理速率也是进一步发展的趋 势,而a m c cn p 3 4 0 0 已经做到了这一点。此外,有的公司已经在设计和开发 用于1 0 ( 3 b s 和全部7 层协议的网络处理器。 可以说,网络处理器的研究方兴未艾,众多的芯片厂商纷纷提出了自己 的设计理念和产品。但在未来的几年内,当技术和市场趋于成熟稳定之后 适者才会生存所以估计会有许多产品被淘汰。到底谁将是赢家,也许只有 到了未来才会知道。在这个即将充满竞争的市场培育过程中,网络处理器技 术自身的发展将大致呈现如下趋势1 2 1 : l 、性能不断提高 业界有一句话叫做“今天的核心就是明天的边缘( t o d a y s e o l t ei s t o m o r r o w se d g e ) ”,也就是说,网络对性能的要求是在不断提高的,因此网络 处理器也必须满足这一需求。随着生产工艺的提高和体系结构的进一步优化 ( 比如高速缓存的使用和片内组件功能的进步专业化) ,网络处理器将会有 更高的处理速度、更小的尺寸和功耗、更高的可扩展性、更方便实用的丌发 工具。 2 、标准化 各个厂家的网络处理器虽然都有大致相同的基本结构和特点,但在具体 的硬件实现和软件开发工具上还是各有不同。为了解决产品互连互通和软件 可移植性等问题,亟待解决标准化问题。网络处理器论坛( n p f ) 肩负着这 一使命。该组织出c s i x 和c p i x 这2 个组织于2 0 0 1 年2 月共同创建,c s i ) ( 主要制订网络处理器与交换机构之间的标准硬件接口,而c p 则制定网络 处理器应用开发的标准软件接口( a p i ) 。c s i x 目前已制订出相关规范 c s i x l 1 。 3 、产品系列化 网络不同位置的应用( 边缘和核心) 对网络处理器的性能和灵活性的要 求各不相同,一般很难找到一种能够全面颐及性能、分组分析能力和低成本 的“通用”网络处理器。因此针对完全融合的i p 网络而言,最现实的解决方 案是具备一系列的网络处理器,其中每一款分别针对不同的应用。 4 、多种技术并存 西北工业走擘硕士论文 第一章绪论 必须看到,网络处理器也不是万能的,更不会完全取代通用c p u 和a s i c 在网络设备中的应用。尤其是在对处理性能需求很高的高端设备中,a s i c 仍 然有着很强的生命力。在未来的设备中,可能形成一种以网络处理器为核心, 协处理器、c p u 和a s i c 为辅助处理单元的格局。 5 、形成庞大的第三方队伍 随着标准化工作的深入,再加上网络处理器本身具有模块化结构的特点, 将出现一支庞大的第三方队伍,分别在硬件组件、软件应用、开发工具和其 他子系统方面推出自己的产品,并形成一种以网络处理器为核心和起点的价 值链。 1 3 论文主要研究内容 本文作者作为西北工业大学航空微电子中心的研究生,在研究生期间对 网络处理器做了研究,主要工作是对网络处理器的包传输( 转发) 单元( p t e ) 进行设计分析。作者的主要研究工作可归纳为: 1 、参考大量的文献资料,在了解多种网络处理器的体系结构特点的基础 上,全面分析网络处理器的体系结构特征,根据功能需求以及作者可 用的设计资料,以a m c cn p 3 4 0 0 为参考模型提出网络处理器的总体 设计方案。 2 、分析和设计网络处理器模型中的包传输单元( p t e ) ,着重于设计和 分析该模块中保证数据包正序转发的机制,并通过功能仿真验证其可 行性。 3 、对输入数据包进行分类查找和路由查找是网络处理器的重要处理过 程,作者引入了一种基于最长前缀匹配的快速路由查找机制,并对这 种机制的工作原理、设计模型和性能做了深入的研究,在此基础上对 路由查找机制进行了探讨。 论文着重对该设计中有关数据包的逆序问题以及包转发中的路由查找机 制进行研究和设计。设计中采用t o p d o w n ( 自顶向下) 的方法。由于在现代 电子设计中,电路的功能越来越复杂,规模越来越大,再要使用原来的门级 的设计方法,不但会导致设计周期的延长,而且要想保证设计的f 确性和 可靠性必须要以大量的人力和物力投入为代价。因此在如今的电子设计中自 顶向下的高层设计方法已经成为主流。 1 4 论文的安排 本论文是按照作者对网络处理器的研究情况来安排的。 论文的第一章为绪论,介绍了本课题研究的背景、意义、研究现状、作 者的研究内容以及论文的结构安排。 第二章讨论网络处理器体系结构的特点对几个典型的网络处理器体系 结构进行了简要的介绍和分析,并以a m c cn p 3 4 0 0 为基本参考模型,提出网 络处理器的总体设计方案。 西北工业走学硕士论文第一章绪论 第三章和第四、五章是论文的重点。 第三章详细讨论了包传输单元( p t e ) 的分析和设计情况,针对数据包 f 序转发的机制对设计进行仿真和分析。 第四章引入了基于快速最长前缀匹配的路由查找机制。 第五章以第四章引入的路由查找机制的原理为基础,对该查找机制进行 模型的设计以及功能上的仿真和性能分析。 最后一章是论文的总结和对本课题未来发展的展望。 西北工业大学硕士论文第二章网络处理器体系结构研究 第二章网络处理器体系结构研究 2 1 网络处理器技术综述 网络处理器是结合了通用c p u 可编程特性和专用芯片高性能的特点而发 展起来的一种新兴的集成电路设计技术,它通过良好的体系结构设计和专门 针对网络处理优化的部件,为上层提供了一个可编程控制的环境,可以很好 地解决硬件加速和软件可扩展的折衷问题。因此可以认为,网络处理器将成 为推动网络发展的一项核心技术。 网络处理器充分利用包数据流的并行性,用多个处理引擎( p r o c e s s e n g i n e ,p e ) 并发完成数据包处理任务,实现并行处理。网络处理器由两类 硬件功能单元组成。n p u ( n e t w o r kp r o c e s s i n gu n i t ) 是网络处理器核心,它 提供高速、大容量智能处理数据包功能,包括数据解析、分类和转发等等, 因此n p u 经常被称为包处理引擎( p a c k e tp r o c e s se n g i n e ,p p e ) ,而不同的 协处理器则实现帧分段、重组、包分类查找、队列缓冲管理、顺序管理、存 储控制和多播支持等功能。 和通用处理器一样,网络处理器一般采用多级流水线结构,保证每个时 钟周期完成一条指令。为简化设计和降低功耗,网络处理器一般采用了r i s c ( 精简指令集) 方案。另一方面,为提供极高的速度和较高级的编程界面, 网络处理器提供了多线程运行环境,在数据包的层次上给予多级流水线支持。 网络处理器要提供两个接口,一个连接网络物理端口,一个连接交换网。 当前的发展趋势是将n p u 和交换芯片以s o c ( s y s t e m o n c h i p ) 的形式集成 到同一块电路上称之为网络处理器,这样设计的好处是减少电路板上连线所 带来的传输延迟,加快数据处理。集成n p 的基本框架可用图2 一l 表示m i 。 p a c k e tb u f f e rm e m o r y _ r 、 n t m l _ 似u 8 8 0 r 卜“鼍is w i t c h f a b r i c n i t l a t a ll 。 p h y s i c a lp o r t 图2 - 1 典型网络处理器基本架构 6 西北工业走擘硕士论文 第二章网络处理器体系结构研究 2 2 功能和特征 网络处理器具有对i p 包提供智能处理的能力,这些处理包括包头解析、 路由查找,基于目的地址、源地址以及其它控制信息和规则的包分类等等。 它的典型的功能包括: 分段和重组:为转发而进行的数据帧分段、处理和重组。 协议识别和分类:根据数据帧内的协议类型、端口号、目的u r l 或 其它应用或专用协议信息来识别每个数据帧。 排队和存取控制:数据帧一经识别就根据一定的策略被放入合适的队 列待作进一步处理( 例如划分优先级或流量整形) 。同时,根据流量 控制和安全存取策略规则检查数据帧,判断转发或丢弃。 流量整形和流量工程:一些协议或应用需要该功能,当有突发数据流 到达出口线或光纤时,要对数据流整形。可以规定不同信道或信息类 型的数据流的优先级来满足不同的服务要求。 服务质量:除了用适当的流量整形和输出调度来保证q o s 外,数据 帧还可以打上标记以被网络中其它设备作快速处理( 例如8 0 2 1 ) 。 网络处理器的主要特征是其可编程特性和a s i c 高速处理性能的结合。 这一特征引发了通信系统设计的革新,它使系统设计者摆脱了原先复杂、零 散的设计,将注意力放在高层服务上,缩短产品推向市场的时间,延长产品 的生命周期,这也是生产商在激烈竞争中得以生存和发展的关键。下面所列 的有关网络处理器的特征口”来源于新的网络对网络处理器编程能力、性能和 开放性的需求: 编程性 网络处理器的本质之一在于其可编程性,从而改变专用芯片灵活性差的 特点。这是通过提供界面友好而功能强大的编程、调试和性能评价等软件环 境柬实现的。 并行体系结构的网络处理器可以提供一种完全运行( r u nt oc o m p l e t i o n , r t c ) 的编程模式,这种模式表面上只对一个线程编写软件却可以把数据 包分散到多个线程。这是一种基于多处理器的体系结构,多个处理引擎可以 共享存储器,并且可以同时处理数据,或者处于空闲状态。i b m 公司的 p o w e r n p 系列网络处理器就是r t c 模式。 流水线体系结构的网络处理器基于一种分布式的编程模式在这种模式 中,应用程序分成多个流水阶段。每个流水线处理引擎都经过优化,以处理 特定的任务和指令。这种模式的不足在于它需要把整个处理任务均匀的分配 到流水线的各个阶段,否则流水线将会被打乱。i n t e l 公司的i x p l 2 0 0 网络处 理器就是这种编程模式。 并行处理 从体系结构以及编程的观点柬讲,网络处理器可以划分为两个基本的模 式:并行模式和流水线模式。 并行模式。i b m 公司p o w e r n p 系列网络处理器就是一个典型并行模式的 例子。在并行模式中,每个处理引擎都是一个基于r i s c 体系结构的核,其中 西北工业大学硕士论文第二章网络处理器体系结构研究 有一些专门针对包处理的位操作指令,这些核结构简单,没有复杂的算法、 浮点运算以及多重寻址方式,通常称这样的核为通用处理引擎。而且,由于 处理引擎较小,因此适合于在一块独立的芯片上集成多个处理引擎。并行模 式中还有一个任务调度模块,负责把数据包分配到某个处理引擎,并保证数 据包的顺序。 流水线模式。在流水线模式中,数据包的处理分成若干个阶段,每个阶 段都有固定的任务,数据包的处理过程就是从一个处理阶段跳到下一个处理 阶段,直到处理完毕。每个流水阶段都包含一个或多个处理引擎。每个面向 任务的处理引擎都是针对特定的网络任务以及它本身的指令集进行优化的。 e z c h i p 公司的n p 1 网络处理器就是流水线体系结构模式。 存储器组织 网络处理器的存储器分为三类:指令存储器、控制存储器以及数据包存 储器。每种类型都有不同的特征和性能要求。指令存储器用于存储指令代码 ( 应用程序) ,这些代码在处理引擎中运行。指令的存储需要高速的、访问周 期短的s r a m 实现。此外,在硬件启动的时候,还需要一个p r o m 来存放初 始化用的代码。出于指令存储器只需存储小量的代码,所以可以内置到网络 处理器当中。 控制存储器用于存放控制信息数据,比如路由表等。因为每个数据包的 协议处理都需要好几次查表才能完成,而且每次查表一般都需要多次访存, 所以,存储器的访问速度对数据包的高速处理来说显得相当关键。因此控制 存储器需要用高速的s r a m 来实现。不同的控制信息表分别用独立的存储器 来存储,这样可以实现多个表并行访问,从而提高处理的性能。 在处理引擎中处理数据包的时候,这些数据包保存在数据包存储器当中。 包存储子系统的设计依赖于以下几个因素:流量( 如突发的大小和数掘包的 大小) ,线速以及包处理的类型( 如底层包处理和高层协议的深层数据处理) 。 由于每个数据包都至少经过一次写入包存储器和读出的过程,因此,为了达 到数据包的高速处理,包存储子系统必须为包的多次访存提供足够的带宽。 可见,过去所用的d r a m 已经无法满足数据包的高速深层次处理,取而代之 的将是快速的存储器,比如r l d r a m 、f c r a m 等。 对于高速的网络处理器尤其是深层包处理来说,存储器是一个主要的瓶 颈。4 7 层的协议处理比2 3 层的协议处理需要更高的存储器性能,因为高层 的包处理需要牵涉到多次的存储器读写因此,控制存储器和包存储器显得 非常的关键。 协处理器 协处理器与处理引擎连接,用于提高一些常规网络功能的处理性能,包 括包分类、表查我以及密码功能等。协处理嚣通常由多个处理引擎所共享, 各个处理引擎通过消息传递、存储器地址匹配或者一些专门的指令等方式来 访问协处理器。 元件的布局是网络处理器体系结构设计的一个重要方面。在流模式 ( s t r e a m i n g m o d e ) 当中。协处理器处于数据通路之中:在旁路模式( l o o k a s i d e m o d e ) ,协处理器独立于数据通路之外。在流模式中,协处理器是数据包所要 经过的路径的一部分:而在旁路模式中协处理器只是协助核心处理器完成 西北工业走荦硕士论文 第二章网络处理嚣体系结构研究 特殊的功能。因此,旁路模式可以使核心处理器和协处理器并行工作,减小 处理延迟,但是这种设计却使系统设计变得复杂。 多线程 在网络处理器处理流程中,有两个主要的大延迟:存储器访问和协处理 器访问,分支指令虽然也会引入延迟,但是这种延迟较小。网络处理器多线 程机制的基本思想是,当当前数据包进行某些操作( 比如访存) 的时候,处 理引擎可以转去处理其它的数据包。多线程机制可以从总体上降低各种操作 的处理延迟,提高处理引擎的利用率和网络处理器的总体性能。 实现多线程切换的一种方法是在线程切换点将当前有效寄存器组的值保 存到存储器中,然后在返回当前线程的时候恢复这些寄存器的值。这种方法 由于有保存和恢复的操作,所以从一个线程切换到另一个线程需要好几个周 期。另- r e 方法是每个处理引擎都有多套寄存器组( 比如一个线程有一个寄 存器组) 。在这种方法中,线程切换只需将寄存器组指针指向另一个寄存器组 即可因此一个单阶段( s i n g l e s t a g e ) 处理引擎可以在一个时钟周期内完成 线程切换:而多阶段的流水线处理引擎需要额外的时钟周期,因为在线程切 换之前,流水线可能要清为初始状态。线程切换可以由硬件自动触发或者通 过代码中的线程切换指令实现软件切换。 流量管理( t r a f f i c m a n a g e m e n t ) 网络处理器对流量的管理可以通过硬件协助软件来完成,也可以完全通 过软件或者外部设备来完成。通过流量管理,可以实现q o s 服务。q o s 服务 有四个基本的属性对应用产生影响a 、使用率( a v a i l a b i l i t y ) :网络在某个用 户应用中使用的时间比可以通过可靠的软件与硬件结合来实现高使用率;b 、 吞吐量( t h r o u g h p u t ) :某个时间段内的平均流量,数据包的丢弃会对吞吐量 产生影响;c 、延迟( d e l a y ) :数据包从网络上行点到下行点所经历的平均时 间,实时交互应用( 如声音和视频) 不允许有大的延迟;d 、延迟跳变( d e l a y v a r i a t i o n ) 同一个流的数据包所经历的延迟差,延迟跳变会引起声音或视频 的跳变,克服延迟跳变的一个办法是缓冲,但是缓冲又会引入额外的延迟。 对于不同的流量,一种完成q o s 服务的方法是应用智能流量管理功能 ( i n t e l l i g e n t t r a f f i c m a n a g e m e n tf u n c t i o n ) ,比如分类( c l a s s i f i e a t i o n ) 、测量 ( m e t e r i n g ) 、标记( m a r k i n g ) 、策略( p o l i c i n g ) 、调度( s c h e d u l i n g ) 以及整 形( s h a p p i n g ) ,网络处理器硬件中包含专门的单元。以支持这些功能。 外部接口( e x t e r n a li n t e r f a c e s ) 网络处理器是大型系统中的一个部分,因此,网络处理器的接口表明它 是怎样和其它部件集成到一块的。 线接口( l i n ei n t e r f a c e ) 的作用是使网络处理器和外部成帧器以及物理层 设备的端口连接,典型的线接口有:快速以太网端1 3s m i i 、吉比特以太网端 口g m i i 和t b i 。 交换接口( s w i t c hi n t e r f a c e ) 用于把网络处理器和外部交换架构( s w i t c h f a b r i c ) 连接。交换接口必须提供足够的带宽以满足所有的线接口流量。 存储器接口用于连接外部包存储器、控制存储器和指令存储器。这些接 1 3 的带宽以及存储器按类型分块的方法对网络处理器的性能有很大的影响。 协处理器接口用于和外部协处理器( 如c a m s 、查找协处理器以及安全 西北工业大幸硕士论文第二章网络地理器体系结构研究 性协处理器) 连接。 控制处理器接口( c o n t r o lp r o c e s s o ri n t e r f a c e ) 用于和外部的控制通道处 理器( 如主c p u ) 通信。 深层数据处理( i n t e l l i g e n tp r o c e s s i n g ) 根据不同的服务要求,可对包( 帧) 进行不同深度的处理。例如路由查 找只需处理第3 层( i p 头部) ,分类需要处理到第四层( t c p u d p 协议) ,而 网络安全则需要处理到应用层( 包携带的有效载荷) 。 模块化设计 网络处理器体系结构的模块化也包含不同的层次:硬件层面和软件层面 的模块化。通过模块化设计,力图在保持高性能的基础上获得很好的可扩展 性和灵活性。 扩展性 网络处理器的可扩展性同样包含硬件可扩展性和服务可扩展性。前者指 网络处理器除了可以用来研制小型设备,还可以通过交换机构的连接研制大 型设备。后者是指可以在对原有软件结构做很小改动的基础上加入新的服务 和功能。 指令集 网络处理器的灵活性体现在可通过软件编程动态加载的能力上,其指令 系统一般都基于r i s c 核架构,并从两个层面同时进行优化设计:第一,选择 使用最频繁的指令,使其寻址方式简单,所有指令的原操作数都是寄存器寻 址或立即数寻址这样指令执行的时序很规整,从而简化了控制逻辑;第二, 选择专门针对网络协议处理而优化设计的指令,加快数据包的处理过程,这 也是与通用i u s cc p u 最大的不同之处。 2 3 典型的网络处理器 2 3 1i b m 公司的p o w e r n p 系列国 i b m 公司的p o w e r n p 系列网络处理器产品有p o w e r n pn p 4 g s 3 、p o w e r n p n p 2 g 以及p o w e r n pn p e 4 0 5 h 和n p e 4 0 5 l 等。 p o w e r n pn p 4 g s 3 在包处理上进行了优化,速度可达o c 4 8 。i b m 为之 提供了一个完整的开发环境,包括丌发工具包、基本软件、高级软件参考平 台等。 p o w e r n p n p 2 g 采用了与n p 4 g s 3 相同的体系结构,可加载相同的软件, 在包处理上,优化后速度可达2 g b p s 。 n p “0 5 h ,n p e 4 0 5 l 是p o w e r n p 系列的最新成员。它们基于嵌入式应用, 使用了p o w e r p c 4 0 5 作嵌入核,在片上集成电源管理及较低能量损耗,从而 为大量外部设备接口问题提供了高性能、低功耗的解决方法。该芯片包含一 个高性能的r i s c 处理器核、s d r a m 控制器、p c i 总线桥接器、以太网媒介 j 口f 参看义献 3 3 1 。 西北工业走学硕士论文第二章网络处理器体系结构研究 访问控制器( e m a c s ) 、h d l c 控制器,还有针对r o m 、f l a s h 和外部设备的 外部总线控制器,以及支持串并转换的d m a 、串行端口、i i c 接口和通用i 0 端口。n p e 4 0 5 h 在2 0 0 m h z 的工作频率下功耗为1 8 w ,在2 6 6 m h z 工作频率 下功耗为2 3 w ;n p e 4 0 5 l 在2 0 0 m h z 的工作频率下功耗为1 4 w ,在2 6 6 m h z 工作频率下功耗为2 0 w 。 2 3 2 i n t e l i x p 系列 i n t e li x p 网络处理器包括i x p l 2 0 0 、i x p 2 8 0 0 、i x p 2 4 0 0 、i x p 2 8 5 0 和 i x p 4 x x 系列等,它们是在i n t e li x p l 2 0 0 基础上发展起来的。从网络用户到 网络核心,i n t e l 为了满足其需求,对产品做了裁减,融合了多处理技术、高 性能、低功耗、i n t e lx s c a l e 技术和简易编程等优点,支持增值网络服务线路 速度达o c 1 9 2 1 0 g b p s ,在提高线路速度和降低成本的同时,增加了网络服 务功能。 i x p l 2 0 0 网络处理器i l l 可以广泛用于局域网和电信领域,具有高性能、 低功耗和适应性广等特点。 i n t e li x p 2 4 0 0 i x p 2 8 0 0 是i n t e l 公司第二代网络处理器系列的成员,它基 于第一代网络处理器的i x p l 2 0 0 ,在一块芯片上集成了高性能的并行处理, 包括复杂的算法处理、深层的包监控、流量管理以及包的线速转发。基本结 构包括: x p 2 4 0 0 和i x p 2 8 0 0 分别集成了8 个和1 6 个独立的3 2 位r i s c 多线程微 引擎( m i r c o e n g i n e ) ,i x p 2 4 0 0 的微引擎按工作频率可分为6 0 0 m h z 和 4 0 0 m h z 两种型号,前者可以支持o c - 4 8 ( 2 5 g b p s ) 的传输速度;i x p 2 8 0 0 的微引擎按工作频率可分为1 4 g h z 和1 ,0 g h z 两种型号前者可以支持 o c 1 9 2 ( 1 0 g b p s ) 的传输速度。 i x p 2 4 0 0 和i x p 2 8 0 0 分别具有可存4 k 和8 k 条指令的微引擎程序存储器。 x s c a l e 核,工作频率分别达6 0 0 m h z 和7 0 0 m h z ,数据通路为3 2 位。可 以完成复杂的算法处理、路由表维护以及系统管理等功能的高性能处理。 6 4 位6 6 m h z 的p c i 接口; i x p 2 4 0 0 集成2 个s r a m 接口和1 个r d r a m 接口:i x p 2 8 0 0 集成4 个 s r a m 接口和3 个r d r a m 接口。 i n t e li x p 2 4 0 0 i x p 2 8 0 0 的后续产
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 聚焦2025:多式联运信息平台功能提升与城市协同发展研究报告
- 2025年gmp训练试题及答案
- 2025年管道保温试卷及答案
- 教师招聘之《幼儿教师招聘》考前冲刺练习题含答案详解(能力提升)
- 2025年教师招聘之《小学教师招聘》练习题库附完整答案详解【考点梳理】
- 2025年教师招聘之《幼儿教师招聘》综合提升测试卷附参考答案详解【培优a卷】
- 2025二手房买卖合同范本及关键注意事项
- 教堂废墟改造工程方案(3篇)
- 2025年汽车常规考试题目及答案
- 2025内蒙古呼伦贝尔农垦集团有限公司社会招聘备考及答案详解(有一套)
- 2025年中国电信招聘考试行政职业能力测试预测题集
- 静脉治疗知识培训课件
- 学风建设科研诚信宣教课件
- 2025繁轩科技发展(天津)有限公司公开招聘工作人员35人备考题库及答案解析
- 2025年度水电项目工程结算与审计服务协议
- 德育副校长在新学期德育工作部署会讲话范文
- (2025年标准)学生玩耍纠纷协议书
- 《机械制图(多学时)》中职全套教学课件
- 2024过敏性休克抢救指南(2024)课件干货分享
- 遥感大数据应用解决方案课件
- (精选word)洪恩识字-生字卡片1-200
评论
0/150
提交评论