




已阅读5页,还剩82页未读, 继续免费阅读
(计算机应用技术专业论文)基于ixa的ip交换技术的研究与分析.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电子科技大学硕士学位论文:基于i x a 的i p 交换技术的研究与分析 摘要 随着i n t e r n e t 的飞速发展,网络的链路速度在不断提高的同时又出现了大量的 新协议、新服务,这对网络交换设备提出了很高的要求。传统的网络设备一般采 用a s i c 或者纯软件的方案实现,很难同时满足速度与灵活性这两方面的要求。为 此,一种新的可编程的网络处理器应运而生,它既具有a s i c 的执行速度,又具有 软件的灵活性,能够在下一代网络中得到广泛的应用。因此,研究、探索网络处 理器在通信、安全等领域的应用,就是一件十分重要而有意义的工作。 i n t e i 的i x a 技术是以网络处理器为基础的一种网络交换架构,本课题正是针 对这一技术展开研究的。通过分析i x a 的可移植结构以及i x p 2 4 0 0 网络处理器的 硬件体系结构,在i x p 2 4 0 0 上实现了以太网环境下的i p 交换的基本功能,并将传 统的“存储一转发”模式转变为“存储一处理一转发”的模式,这为复杂的q o s 控制 和包的更高层次处理提供了可能。另外在设计中还充分考虑了代码的可重用性问 题,这对网络处理器的应用具有非常重要的意义。 通过理论上的分析和仿真测试,可以说明本设计在i x p 2 4 0 0 上实现的 p 交换 功能,基本能够满足处理速度的要求,因而对于i x p 2 4 0 0 ,这是一种可行的应用 开发模式,有助于其它高级应用( 如q o s 等) 在i x p 2 4 0 0 中的实现。 本论文阐述了i p 交换在i x a 网络处理器中的实现,其内容主要包括三部分: 第一部分:主要介绍了本课题选择i n t e li x a 技术的原因,以及i x a 架构、i x a 的可移植结构、i x p 2 4 0 0 的硬件体系结构等:并结合课题中遇到的问题,分析了其 中的一些关键技术; 第二部分:主要针对系统的功能进行软件结构及模块设计,并阐述了需要解 决的主要问题和整个基本数据通路的实现; 第三部分:采用一种新的分析方法,对所设计的整个程序进行分析,并以仿 真测试结果验证。 【关键词】:网络处理器、i x p 2 4 0 0 、微引擎、i x a 可移植结构、软件流水线 塑至 一一 a b s t r a c t w i t hl h er a p i d d e v e l o p i n g o ft h ei n t e r n e t ,t h el i n kr a t eo ft h en e t w o r k i n c r e a s e sc o n t i n u a l l yw h i l en e wp r o t o c o l sa n ds e r v i c e sa r eb e i n gd e v e l o p e d t h i sg i v e sah i g h e rr e q u i r s to nn e t w o r kd e v i c e s h o w e v e r ,at r a d i t i o n a ln e t w o r k d e v i c e w h i c hi sb a s e do na s i co rs o f t w a r es o l u t i o n ,c o u l d n o tm e e tt h e r e q u i r e m e n t s b o t ho n s p e e d a n d f l e x i b i l i t y , s o a p r o g r a m m a b l e n e t w o r k p r o c e s s o rl s c r e a t e dt oo v e r c o m et h i so b s t a c l e 1 th a st h ec h a r a c t e r i s t i co f h a r d w a r ea n ds o f t w a r es o l u t i o ns i m u l t a n e o u s l ya n dw i l ib ew i d e l yu s e di nt h e n e x tg e n e r a t i o nn e t w o r k i n g t h e r e f o r e ,1 t i tsam o s tl m p o r t a n ta n dm e a n i n g f u lj o b t or e s e a r c ht h ea p p l i c a t i o n so fan e t w o r kp r o c e s s o ri nt h e s ef i e l d ss u c ha s c o m m u n i c a t i o n ,s e c u r i t y , i n t e l sl x ai san e t w o r ke x c h a n g ef r a m e w o r kb a s e do nn e t w o r kp r o c e s s o r s t h i sr e s e a r c ht a s ki se x e c u t e de x a c t l yo ni x a a f t e ra n a l y z i n gt h el x a p o r t a b i l i t y f r a m e w o r ka n dt h ea r c h i t e c t u r eo fi x p 2 4 0 0t h eb a s i cf u n c t i o n so fi pe x c h a n g e i ne t h e r n e ta r e i m p l e m e n t e d o ni x p 2 4 0 0 a n dw h e r et h es t a n d a r d s t o r e - f o r w a r d i n g m o d ei s c h a n g e d i n t o s t o r e p r o c e s s i n g - f o r w a r d i n gp a t t e r n , w h i c hm a k ei t p o s s i b l e t oc e n t r e i c o m p l e xq o sa n dp r o c e s sh i g h e rl a y e r s 、 p a y l o a d i n p a c k e t s o t h e r w i s e ,t h ec o d er e u s a b i l i t yi s a l s oc o n s i d e r e df u l l y w h i c hh a si m p o r t a n ts i g n i f i c a n c ef o rt h eu s eo fn e t w o r kp r o c e s s o r s b ya n a l y z i n gt h es y s t e mi nt h e e r ya n de m u l a t i n gt e s t ,i ts h o w st h a tt h e d e s i g no ft h i sf u n c t i o no ni x p 2 4 0 0c a nr e a c ht h er e q u i r e m e n to fp r o c e s s i n g s p e e di n s u b s t a n c e s ot h i sd e s i g nm e t h o di saf e a s i b l ed e v e l o p i n gm o d ef o r a p p l i c a t i o n so nl x p 2 4 0 0 a n di th e l p st oi m p l e m e n to t h e ra d v a n c ea p p l i c a t i o n s ( s u c ha sq o s ) o nt h i sn e t w o r k p r o c e s s o r t h i st h e m ed e s c r i b e st h er e a l i z a t i o no fi p e x c h a n g e o ni x an e t w o r k p r o c e s s o ei tm a i n l yj n c l u d e st h ef o l l o w i n gt h r e ed a r c s : f i r s t :m a i n l yi n t r o d u c i n gw h yi n t e l s i x ai ss e l e c t e da n dt h e ni st h ei x a f r a m e w o r k ,l x ap o r t a b i l i t yf r a m e w o r k a n dt h ea r c h i t e c t u r eo fi x p 2 4 0 0a i s o s o m e k e yt e c h n o l o g y i sa n a l y z e df o rt h ep r o b l e m sr a i s e di nt h i sr e s e a r c ht a s k s e c o n d :d e s i g n i n gt h es o f t w a r es t r u c t u r ea n dm o d u l e sa c c o r d i n gt ot h e s y s t e m sf u n c t i o n s a n ds p e c i f y i n gt h em a i np r o b l e m sm u s tb er e s o l v e d ,t h e n t h ei m p l e m e n t a t i o no ft h ew h o l ee s s e n t i a id a t ap a t h t h i r d :u s i n g an e wa n a l y t i c a lm e t h o dt o a n a l y z et h ed e r f o r m a n c eo ft h e p r o g r a m s ,a n dv a l i d a t i n gb yt h ee m u l a t i n gt e s tr e s u l t s 【k e yw o r d s :n e t w o r kp r o c e s s o r 、i x p 2 4 0 0 、m i c r o e n g i n e 、i x ap o r t a b i l i t y f r a m e w o r k 、s o f t w a r ep i p e l i n e i i 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示谢意。 关于论文使用授权的说明 年月日 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:童区玉 导师签名: 日期:1 辱年于月,c 7 日 电子科技大学硕士学位论文:基于i x a 的i p 交换技术的研究与分析 第一章采用i n t e li x a 的技术背景 1 1 网络设备的发展 处理速度和可编程性常常是传统网络设备发展过程中的一对矛盾,要同时满 足处理速度和灵活性的要求,是非常困难的。网络处理器的出现,为解决这一矛 盾带来了希望。 1 1 1 简单回顾 早期的网络设备( 如路由器) 主要是要求灵活的可编程性来支持各种经常修改 的新协议,对设备的吞吐率要求,并不是最主要的。因而,这一时期的设备通常 采用共享系统总线的结构。 随着通信线路速度的提高,共享总线结构已完全不能适应这种变化。新的系 统设计开始采用交换结构( s w i t c hf a b r i c ) 替代共享总线。交换结构传输数据的速度 比c p u 快多个数量级,能满足各处理器对数据的需求,因而消除了共享总线的连 接瓶颈问题。但各接口卡上的处理器随即成为新的瓶颈,为此提出了一种新方法: 将查表、作转发决定等工作交给专用的c p u 卡完成,称这种卡为转发引擎。这样, 接口卡上的c p u 仅需要处理包头信息,而包中的数据则直接由一个接口经高速交 换结构传到另一个接口。为表述这种结构中处理数据的两种不同途径,提出了“快 速通道”和“慢速通道”这两个术语。 仅管这种转发引擎结构已非常高效,但通用c p u 本身的处理能力仍不能满足 各种新业务、新应用对速度的需求。为了提高处理速度,需要让快速通道处理尽 可能多的数据,用高速a s i c 芯片代替接口卡上的通用c p u ,就成为一种理想选 择。使用a s i c 芯片后,c p u 不再做转发包的工作,通过系统的绝大多数包可以 完全由快速通道处理,而仅有少数控制信息和异常包需要由慢速通道中的c p u 处 理。但使用a s i c 也引出了新的问题。 11 2a s i c 面临的问题 a s i c 的使用极大改善了网络设备的性能,使设备能提供非常高的包转发速 率,从而能够支持新一代超高速路由和交换。但基于a s i c 的体系结构,因a s i c 本身固有的缺陷,也具有以下缺点:程序一旦写入芯片,要在其中增加新功能或 者新服务,就十分困难。另外,开发一套基于a s i c 的新产品,要花费数月的时间, 第1 页 第一章采用i n t e li x a 的技术背景 而且a s t c 的设计错误可能会进一步延迟产晶上市。因而在产品上市不久甚至上市 前,就因为市场需求的变化而成为过时的产品。同时开发具有类似q o s 、流量控 制等高层功能的设备,用a s i c 芯片难以实现,为实现上述功能而引入软件处理又 将难以满足速度的要求。因此,必须寻求新的解决途径。 1 1 3 新的解决方法 基于a s i c 干n 通用c p u 的传统网络处理方案,已经不能同时满足速度和灵活性 这两方面的要求。为此,一种专门针对此要求而开发的剐络处理器应运而生。 网络处理器( n p ) 是一种可编程的专用处理器,其指令集是为支持包处理而优 化的。与通用c p u 不同之处在于,它是为优化包结构处理而设计的,能够以线速 将包转发到下一节点,而通用c p u n 要处理各种指令,很难满足速度的要求。与 a s i c 相比,网络处理器的代码具有可移植性、可重用性;如果要实现新功能或添 加新标准,可以通过编程来实现,能极大缩短产品开发周期,更适用于高层复杂 功能的实现;并且产品升级方便,能有效延长产品生命周期。 可见,网络处理器兼备a s i c 的执行速度和通用c p u 的可编程性,用以替代 a s i c 开发具有复杂功能的网络设备,便是一种更好的选择, 12 网络处理器 1 2 1 网络处理器的特性 网络处理器的出现将硬件的高性能和软件灵活性有机结合起来,适应了不断 飞速发展的网络需求。n p 通常具有以下特点: 强大的处理能力:网络处理器一般集成了多个经优化的包处理专用单元。每 个单元都可以完成相同的任务,多个处理单元间还可并行操作,具有并行处理分 组的能力。此外,还有专用的协处理器和硬件处理单元,! z i :! c r c 校验、h a s h 单元 等,用以改善系统性能。因而网络处理器具有很高的处理速度,能够满足高速链 路的要求,目前已经达到或超过1 0 g b p s ; 高度的可编程性和可扩展性:可编程的网络处理器适用于多种接口、协议和 产品类型,能为o s l 模型2 7 层的多种应用提供良好的支持。同时,网络处理器 能支持信元、分组、流数据等多种数据类型,因而能够满足边缘设备的需要。网 络处理器的可编程能力支持多协议,便于功能的扩展,可大大缩短产品的开发时 间,延长产品生命周期; 第2 页 电子科技大学硕士学位论文:基于i x a 的 p 交换技术的研究与分析 硬件多线程技术:为了进一步提高处理器资源的利用率,网络处理器通常采 用硬件多线程技术,线程间能实现无等待的现场切换。如i n t e l 的l x p 系列、i b m i 孓i p o w e r n p 等: 简单高效的编程开发:网络处理器通常使用主流的c c + + 或其子集作为开发 语言,因而具有易学、易用性,便于网络处理器的推广应用。同时,也缩短开发 人员熟悉开发环境的时间,从而加速网络设备的开发。另外,这种软件实现方式 又为设备升级提供了简便易行的方法。 1t 2 2 典型的网络处理器 经过几年的快速发展,形成了以i n t e l 、i b m 、m o t o r o l a 等为代表的网络处理 器生产商,并生产出具有各自特点的网络处理器。典型的结构包括:i n t e l 的 i x p l 2 0 0 、i b m 的p o w e r n p 、l u c e n t 的p a y l o a d p l u s 、c i s c o 的p x f 、m o t o r o l a 的c 一5 d c p 、s i t e r a 的p r i s mi q 2 0 0 0 等。 1 2 3 使用网络处理器的原因 目前,出现使用网络处理器的趋势,主要有两个原因。首先,网络处理器提 供了一种开发高速路由设备的方法,能够满足不断增长的速度要求,并且还能够 利用现有的标准硬件。其次,网络处理器具有可编程性,可提供高速路由设备开 发所需的灵活性,并且通过下载新的代码,可非常容易地修改或扩展设备的功能。 代码的开发也非常灵活,可以是设备开发商,也可以是第三方开发者,甚至设备 的使用者。这意味着网络处理器将成为可编程网络或主动网络的基础。 1 。3i n t e l 的i x a 架构 1 3 1 什么是l x a 架构 为促进基于下一代i p 的网络应用的发展,i n t e l g , 建了一种以网络处理器为基础 的包处理结构,称为i x a ( i n t e m e te x c h a n g ea r c h i t e c t u r e ) 。这种架构将i x a 网络 处理器的完全可编程性和强大的包处理性能结合起来,以支持智能网络设备的快 速开发。 i x a 作为一种网络处理架构,是以可编程性的网络处理器为核心,包括3 个主 要组成部分: 微引擎技术:是可编程的多线程r i s c 处理器的一个子系统,能通过i n t e l l 拘 超任务流水线技术,在数据层面实现高性能的包处理。这种多处理技术,是以软 件流水线和低时延的队列管理硬件为特征的; 第3 页 第一章采用i n t e li x a 的技术背景 - x s c a l e 技术:为低功耗、高密度处理的控制层面应用提供业界最高的性能, 功耗比,高达1 0 0 0 m i p s 的性能而仅需1 0 m w 的功耗; i x a 可移植结构:是一种易于使用的模快化编程结构,能够在基于网络处理 器的项目间以及将来的i x a 网络处理器上实现代码的移植和重用,因而具有保护软 件投资和缩短产品开发时间的优点。 下面对这3 个部分分别加以介绍。 1 3 2 微引擎技术 微引擎是处理数据的主要场所。不同i x p 系列网络处理器中微引擎个数是不 相同的,如i x p l 2 0 0 系列有6 个独立的微引擎,i x p 2 4 0 0 有8 个、i x p 2 8 0 0 系列 有1 6 个,并且都从硬件上支持多线程。这些微引擎能够处理以前由高速a s i c 完 成的任务,并具有灵活的可编程性。 微引擎的指令系统是专为高效快速的数据转发而优化设计的,每一条指令都 能在一个指令周期内完成。微引擎的硬件结构则设计成不需要通用c p u 的支持, 就能完成对数据的高速处理。为了保证每个微引擎资源都能被充分利用,每个微 引擎都有数个独立的程序计数器,以支持多线程间的零开销的现场切换和硬件信 号量。每个微引擎中都有许多数据寄存器,构成基本的数据通路。 微引擎技术除了能加快智能网络设备的开发外,还可带来以下优点: 灵活性和可定制性:利用可编程性实现类似a s l c 的专用功能,以后的升级 工作简单易行。新的功能或服务可通过软件添加到设备中,既能满足用户的特定 需求,又有助于消除昂贵的升级方式; 可扩展性:微引擎技术能满足o s i 模型2 7 层应用对速度和功能的众多需 求,目前能提供从o c 3 o c 一19 2 的线速支持; 线速性能:一些智能应用所需的深入监测包内容,能以o c 一1 9 2 甚至更高的 线速执行。 1 33x s c a l e 技术 x s c a l e 处理器是i n t ee 第二代网络处理器中采用的一种高性能的处理结构,用 于处理各种复杂的任务,比如复杂的算法处理、管理更新同各微引擎共享的数据 结构( 如路由表) ,系统级任务的管理,以及对异常包的处理等。 x s c a l e 技术采用了i n t e l 的超流水线技术来实现其高性能的。超流水线技术是 一种多级高效的流水线处理结构,能使信号时延最小,并保证高频工作时钟的低 功耗。x s c a l e 处理器的指令是基于a r m 5 t e 指令集的,具有业界最好的毫瓦 m i p s 性能比,并保证和i n t e l 第一代网络处理器相兼容。 第4 页 屯子科技大学硕士学位论文:基于i x a 的i p 交换技术的研究与分析 x s c a l e 处理嚣有着完善的支持工具,包括编译器、调试器、操作系统、仿真 器、第三_ 方供应商的服务支持以及工具包等。 1 3 4 | x a 可移植结构 按l x a 可移植结构设计的软件具有可移植性,代码可以在网络处理器上重用, 甚至是在将来的网络处理器上,因而可以保证快速有效的代码开发,并保护早期 的软件投资。为延长产品的生命周期和便于产品的维护,1 ) ( a 可移植结构采用模块 化的可移植代码开发模式,并能集成第三方的软件产品,这样就能避免对一些关 键底层软件的开发,而集中实现所需的功能。 i x a 可移植结构的内容包括: 为了将应用程序最佳地分配给微引擎及其线程,该结构采用了模块化的编程 模式,同时又便于集成用户开发的、第三方及i n t e t 提供的基本模块。另外,还便于 在微引擎和线程数目相异的n p 间实现代码重定向,从而筒化代码的重用问题: 优化的微引擎功能库和工具,能提供微引擎指令集和结构变化的连续性,从 两保证多重硬件配置的互操作性; x s c a l e 中的源代码库,能保证以模块化方式开发多操作环境下的核心模块, 并增强可移植性: 基于标准的n p f a p i 库,可用于控制层面中协议栈间的通信。 1 3 5i n t e li x a 网络处理器 为促进下一代网络服务的应用,i n t e l 开发了一系列网络处理器满足各种设计的 需要,包括l x p 4 2 0 门2 0 0 ,2 0 0 0 系列。下面只对后两个系列作简单的介绍。 i x p l 2 0 0 系列是i n t e l 的第一代n p ,包括i x p l 2 0 0 1 2 4 0 1 2 5 0 ,内部都有一 个3 2 位的高性能r i s cs t r o n g a r m 处理器和6 个可编程的多线程微引擎,都具 有多种核心时钟以满足开发和设计的需要。i x p l 2 0 0 能进行包借元的第三层实时 的处理,能以线速转发包,并支持各种网络协议。i x p l 2 4 0 1 1 2 5 0 在此基础上分别 增加了硬件功能单元( 如c r c 单元等) ,以增强数据的完整性,从而扩展了i x p l 2 0 0 的功能,并保持对微代码、开发工具及软件的兼容性。 i x p l 2 0 0 系列能满足多服务交换机、宽带访问平台及w e b 交换机等的设计需 要;在系统设计方面,能实现l 2 3 层转发、协议转换、q o s 、放火墙、v p n 、负 载平衡、远程监控及入侵监测等。 第5 页 第一章采用i n t e li x a 的技术背景 i x p 2 4 0 0 处理器是i n t e l 第二代的高性能产品,有8 个完全可编程的多线程微引 擎和一个x s c a l e 处理器,都能以6 0 0 4 0 0 m h z 的时钟工作。它能以o c 一1 2 o c 一4 8 的线速,执行复杂的算法、深入监测包内容、流量管理及转发包等,因而能广泛 用于各种高性能的设备,如w a n 多服务交换机、路由器、v o l p n p n 网关、3 g 无 线基础系统等。i x p 2 4 0 0 中首次实现了i n t e l 的超任务流水线技术,结合软件流水线 技术,从而具有高达2 5 g b p s 强大处理能力。 i x p 2 8 0 0 系列包括i x p 2 8 0 0 2 8 5 0 ,是i n t e l 第二代的最高性能的产品,具有1 6 个可编程的多线程微引擎和一个x s c a l e 处理器,微引擎可工作在1 4 1 0 g h z ,而 x s c a l e 处理器则工作在7 0 0 5 0 0 m h z 。该系列也采用了i n t e l 的超任务流水线技术, 即使处理s o n e t 中的最小包,也能支持1 0 g b p s 的线速。 i x p 2 8 0 0 是下列高性能应用的最优方案:各种主干核心交换机和路由器,多服 务交换机等。此外,也适用于i p s e c 、v p n 以及无线基础系统设备。 i x p 2 8 5 0 是在i x p 2 8 0 0 的基础上,增加了两个完全一样的硬件加密引擎,以提 高通用j n 解密算法和数据完整性认证算法的执行速度,执行i p s e c l d 解密的速度 可达1 0 g b p s 。可用于基于内容的负载平衡设备( 如w e b 交换机) ,以及需要大量密 码算法的主干交换机、路由器及其它网络设备等等。 1 3 6 开发环境与工具 i x p l 2 0 0 系列和i x p 2 0 0 0 ( 2 4 0 0 2 8 0 0 ) 系列n p 分别具有不同的集成开发环境, 用户能够快速地为不同的n p 开发新的应用程序,并且还能将i x p l 2 0 0 系列处理器 中的应用程序移植至f j l x p 2 0 0 0 系列处理器上。这里只简单介绍i x p 2 0 0 0 系列的开发 环境,它包括s d k 3 0 9 u l x d p 2 0 0 0 系列硬件开发平台。 s d k 3 0 提供了高级开发工具、嵌入式实时o s ( 如v x w o r k s 、l i n u x ) 、i x a 可移 植结构和功能库。硬件开发平台则提供所支持的软件和工具。用户可以在s d k 中 评估、测试程序,而且可以调整n p 的性能以满足特定产品的要求。另外,s d k 具 有微引擎c 编译器,可以用高级语言简化应用开发。 利用s d k 3 0 提供的开发工具、基本功能模块以及i x a 可移植结构等,开发人 员能方便、容易地为i x p 2 0 0 0 系列n p 开发应用程序,并能够在加快产品的上市时 间这点上获得无比的优越性。 1 ,3 7j x a 的优越性 i x a 作为一种新的网络交换架构,除采用最新的技术外,还具有以下优点 丰富的n p 产品系列,能满足如速度、应用场所等各种需求; 第6 页 电子科技大学硕士学位论文:基于i x a 的l p 交换技术的研究与分析 完善的开发环境$ 口i x a 网络处理器的优越性能,能有效保护早期投资,缩短 产品开发时间,降低用户的费用; ( 以上两点,前文也有较详细的叙述) 丰富的第三方服务,产品提供者。目前,有许多公司都在以i x a 网络处理器为 基础开发硬件,软件产品,参与i x a 开发组织的成员还提供辅助芯片设备、o s 、高 效的开发工具、专业服务、设计参考等等。这些有名的公司包括:b r o a d b a n da c c e s s s y s t e m s ,c a b l e t r o n ,c a gt e c h n o l o g i e s 、c i s c o 、h a r r i s & j e f f r i e s ? n e w b r i d g e n e t w o r k s 、t r i | l i u m 、w i n dr i v e r 等。借助于第三方基于标准的网络处理方案,产品, 设备开发商将大大减少工程量,从而加快新产品上市。 1 4 对网络处理器的相关研究 n p 将是推动下一代高性能网络的核心技术,围绕其结构及相关应用展开了大 量的研究,并且已成为当前的热门话题。综合起来主要有以下几方面。 基于n p 的路由体系结构:随着n p 的出现,将其应用于可编程q o s 路由器的 研究得到了迅速发展。其中主要是关于体系结构和相关算法的研究,在体系结构 的研究上已有完整的结论和部分实现。比较成功的有p r i n c e t o n 大学的可扩充路由 器v e r a 以及c o l u m b i a 大学的g e n e s i s 。 综合q o s 控制策略:简单来讲,q o s 控制是指网络能够提供有保证的、可预 测的数据传输服务,以满足不同用户的应用需求。围绕着分组处理q o s 控制已经 展开了很多的研究,如任务模型、任务调度、分组处理器体系结构等。 局部资源调度算法:现在的n p 基本上是一个多r i s c 内核的并行处理系统, 其中存在着大量共享资源,如片外r a m 、内存和协处理器等。根据系统特性对共 享资源的有效调度已成为当前研究的热点。这方面的研究主要包括:一是围绕处 理器所展开的负载平衡和处理器调度算法的研究,一是根据系统特性所展开的分 组调度算法的研究。 网络处理器的性能评价;对n p 的性能评价研究,主要是为了在众多系统方 案中选择一个最适合需要的方案,同时对现有系统方案的缺陷进行改进和提高, 并对将来设计的系统进行性能预测。具体的工作包括:一是对系统应用方案进行 性能评价,一是对n p 自身进行性能评价。前者的目的是在现有系统上评价应用方 案的性能,为方案的设计与改进提供依据。后者则是从n p 自身出发,对其体系结 构作性能分析,为n p 的设计与体系结构的改进提供必要的支持。 网络处理器的应用:目前,n p 的应用研究已得到了广泛的支持。这主要体 第7 页 第一章采用i n t e li x a 的技术背景 现在以下几个方面: ( 1 ) 基于n p 的智能路由交换设备。包括路由器体系结构的研究和功能模块的构 建。如a i c a t e l a s a n t et e c h n o l o g i e s 使用i b m 的p o w e r n p 构建其核心路由及交换 设备,b r o a d b a n da c c e s ss y s t e m s ,m a y a ns y s t e m s ,n o r t h c h u r c h 及c l o u d s h i e l dt e c h n o l o g i e s 使用i n t e t 的1 x p 系列处理器构建路由设备; ( 2 ) 智能安全设备的应用:防火墙、v p n 及入侵检测设备等; ( 3 ) 无线网络的应用:a dh o c 无线网络中的路由设备,3 g 协议栈的实现等; ( 4 ) 系统的监测控制或模拟设备:一些研究机构将n p 作为系统测试和实验的设 备,立l l e m p i r i x 使用m o t o r o l a 的c 一5 作为网络模拟器,用于在线速下获得网络延时、 抖动、丢失率等参数。 网络处理器其他相关研究 ( 1 ) 主动网络和可编程网络:这些研究包括执行代码的动态移植和发布、代码 的安全执行、资源共享调度等。其中的一些成果已被应用至r j n p 中,l l 如c o l u m b i a 大学的g e n e s i s ,将可编程虚拟网络中的概念应用至f n p 中,在i n t e li x p l 2 0 0 的平 台上构建了可在运行时装卸代码的动态数据层面: ( 2 ) 处理器系统的体系结构:这部分研究中与n p 相关的主要是对处理器内部组 件( 如r i s c 内核、协处理器等】以及内存接口、高速数据总线等接口的研究,主要 是为在硬件结构上解决n p 的性能瓶颈; ( 3 ) 第二代n p 的研发:大部分厂商都展开了对下一代n p 的研究,并将产品定位 在核心网络设备。其中以t n t e li x p 2 0 0 0 系列为第二代n p 的代表,这代n p 并没有过 多地增加并行处理内核,而是大幅度提高了处理器的执行效率,同时加强了多处 理器间的通信能力,并增设一些硬件指令执行单元,如乘法硬件指令。这些研究 与改进主要还是面向提高报头处理效率。另外,加密、验证等复杂的数据计算, 也在1 x p 2 8 5 0 中通过增加硬件处理单元实现。 综合来看,对网络处理器的研究主要包括两方面,一方面是针对网络处理器 体系结构本身,另一方面则是基于网络处理器的应用。前者侧重于n p 的硬件系统 设计和性能改善与提高,比如硬件体系结构的研究、n p 的集成设计等;而后者则 是针对n p 的相关应用研究,其核心问题就是要充分发挥n p 的灵活性和高性能的优 点,用n p 构建、实现一定的网络服务及应用,例如,基于n p 的可编程路由器研究、 n p 的性能分析与测试等。另外,还有公司专门为n p 提供开发环境,如s t r a t a n p 3 0 和t e j an p ,就是专为i n t e l 的i x p 2 0 0 0 系列网络处理器开发的工具,可实现完全图 形化的设计与编程。 第8 页 电子科技大学硕士学位论文:基于i x a 的i p 交换技术的研究与分析 1 5 课题背景及意义 由于i n t e r n e t 主干链路的速度飞速增长,以及各种复杂处理任务的出现,剥网 络设备的速度提出了很高的要求。尽管各种交换设备已有很大的发展,但仍难以 满足如今飞速发展的网络需求。目前,路由设备的主要功能仍采用软件( 如低端路 由设备) 或昂贵的a s i c ( 如高端路由设备) 实现。前者难以满足速度要求,而后者除 了很高的成本外,还很难适应各种不断发展变化的新功能、新标准。网络处理器 的出现,为解决这一问题带来了新途径。尽管只经历了短短几年的发展,但n p 的 应用前景十分看好,因此围绕n p 展开的相关研究已得到了许多科研机构和开发商 的重视,并得到了飞速发展。 相对而言,国外对n p 的认【 更深、更广,因而加入n p 应用研究与开发的机构 更多。其研究主要集中上述的两个方面。而国内,参与研究的机构,目前主要集 中在参与i n t e li x a 合作项目的高校和科研机构,研究领域主要是针对n p 的相关应 用研究,比如多服务交换机、路由器、入侵监测、动态防火墙等等。并且国内已 经有公司着手研发以n p 为基础的第五代路由设备。但当前,还少有以n p 开发的网 络设备投入使用。n p 的种类较多,应用程序开发,没有统一的模式,并且缺少统 一的标准,因而对n p 的相关应用研究,还有很长的路要走。 本课题选择目前广泛使用的成熟的i p 交换技术,研究它在n p 中的实现,有助 于分析程序设计的开发模式,并有利于分析测试所实现程序的性能;以此为基础, 可促进其它高级应用直1 3 q o s 、入侵监测、流量平衡、防火墙等在n p 中的实现,从 而促进网络处理器的实际应用。 本课题是在i n t e li x a 架构的基础上进行的研究。以s d k 3 0 作为开发工具,在 i x p 2 4 0 0 上实现f p 交换的基本功能,从而找到一种可行的应用程序开发模式,这是 研究工作的重点和难点。因为即使是i x a 处理器,在各种n p 上实现同目标,其 设计方案都有较大的差异,因而没有同一的设计模式;而且,目前围绕i x a 这种新 的网络交换架构进行的应用研究,还处于起步阶段。 1 6 论文主要内容及结构安排 通过以上的介绍分析,可以看出n p 技术在下一代i n t e r n e t 发展中的重要性。本 论文阐述了i p 交换在l x a 网络处理器中的实现,其内容主要包括以下三部分: 第一部分包括第一章、第二章和第三章:第章主要围绕现有网络交换设备 发展中出现的新问题,阐述了本课题选择i n l e j l x a 技术的原因,并介绍了j x a 架构 第9 页 第一章采用i n t e li x a 的技术背景 的内容等,另外还介绍了当前围绕n p 展开的相关研究;第二章和第三章是从课题 研究中所需要的技术出发,详细介绍i x a 的可移植结构、i x p 2 4 0 0 的硬件体系结构, 并结合课题中遇到的问题,分析了其中的一些关键技术。这部分内容主要是在阅 读i n t e l1 x a 和其他相关的技术文档后,经整理、分析而来。 第二部分包括第四章和第五章( 在课题中承担的主要工作) :第四章主要针对 系统的功能进行软件结构及模块设计,并阐述了需要解决的主要问题;另外,对 包的数据流进行了概述。第五章详细介绍整个基本数据通路的实现,即微引擎中 的功能实现,包括系统资源分配,数据结构与接口定义,各模块的数据处理过程 等。 第三部分包括第六章:采用一种新的分析方法,对所设计的整个程序进行分 析,看看能否达到线速要求,并以仿真测试结果验证。 最后,对全文进行总结,并指出了设计中没有解决的问题,以及今后的研究 方向等。 第1 0 页 电子科技大学硕士学位论文:基于i x a 的i p 交换技术的研究皇梦堑 第二章i x a 的可移植结构 2 1 网络应用程序的结构 通常,一个网络应用程序操作可分为三个逻辑层面:控制层、数据处理层和 管理层。其关系如图2 1 所示。 各逻辑层的功能分别如下; 数据处理层:高速处理并转发数据包。数据处理层是对系统性能影响最大的 部分,因为所有需要处理的包,都必须经过该层的处理。对i x p 2 4 0 0 而言,数据 处理层由快速通道和慢速通道组成。其中,快速通道是处理数据的主要场所,如 各微引擎。而慢速通道,如x s c a l e 处理器,只处理很少的数据包,如异常包、头 部含有选项的l p 包等,因为需要复杂的处理而不能在快速通道中完成; 控制层:主要处理协议信息,负责创建、配置及更新各种类共享数据结构, 以供数据处理层查找数据使用; 管理层:负责系统的配置、收集显示统计信息、终止或启动应用程序,能对 用户的输入或来自其它应用程序的信息做出响应。通常是以g u i 形式执行的,用 来接收显示用户输入的信息。 2 2i ) ( a 应用程序的逻辑组成 i x a 可移植结构主要用于开发数据处理层软件,并实现与控制层中的代码间的 通信接口。在i x a 架构中,网络处理本质上是系列包或信元这类数据流的处理 任务。对i x p 2 4 0 0 这种多线程、多处理器结构的n p ,这些任务被分派到多个微 引擎上并行执行,每个微引擎都可由编程方式指定所要执行的任务。一个微引擎 完成其任务后,将数据传给下一个微引擎,对数据执行下一处理任务。 第1 1 页 第二章i x a 的可移植结构 在i n t e l 的第二代微引擎和x s c a l e 处理器中,i x a 可移植结构都采用分层结构 方式实现,并遵循一般网络应用程序的逻辑分层原则。其结构如图2 2 所示。 利用这种分层结构,既可以在整个应用程序中使用i x a 可移植结构,也可以 在特定的层上使用。例如,可以选择在微引擎上编写微功能块,但在x s c a l e 处理 器上仅使用资源管理程序的a p i 。 下面分别阐述构成微引擎和x s c a l e 处理器应用程序的结构。 2 3 快速通道微引擎部分的结构 在编写微引擎代码时,必须考虑代码的模块化、易于维护、可重用性与性能 之间的平衡等问题。对网络边缘应用,因需要处理较多的事务,因而获得高性能 更为重要。而对于将来需要不断添加新功能的应用,代码的模块化及可维护性则 更需优先考虑。分层的i x a 可移植结构方案,正是为了同时满足用户的这些需要 而提出的。应用程序中可使用i x a 的大部分结构,可以说,应用程序中包含的这 种可移植结构越多,开发人员能得到模块化的可重用代码就越多。 i x a 可移植结构由不同的层构成,在应用程序的设计中,开发人员可任意选择 使用其中的层。这些层包括:支持高级编程语言的工具层、优化的数据处理层功 能库和称为微功能块的编程模式。 第1 2 页 电子科技大学硕士学位论文:基于i x a 的i 巴奎换技术的砸究与! 堑 2 3 1 微引擎c 编译器 i x a 可移植结构的最低层是由各种工具构成。它同时为微引擎提供了汇编程序 和c 编译器。使用高级语言,程序员不必再考虑底层的硬件细节。与微引擎汇编 方式相比,使用c 语言有以下重要的优点: c 语言是大多数嵌入式系统和网络应用程序开发人员所选用的编程语言。这 样就能极大地减少编程人员学习新开发环境的过程: 高级语言在抽象、隐藏微引擎指令系统细节上,对程序员更加有效; 高级语言能够支持各种数据类型、类型检查等,因而编写模块化代码就更容 易、更快速,同时对代码的维护也更简单。 然而,运行在微引擎上的代码位于包处理的关键路径上,因而生成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 销售团队跨部门协作技巧考核试卷
- 初高中数学课程衔接中的教学难点突破策略研究
- 生物炭基微生物菌剂对连作土壤健康调控机制
- 南昌职业大学《企业经营模拟实践》2023-2024学年第一学期期末试卷
- 潇湘职业学院《农业建筑学》2023-2024学年第一学期期末试卷
- 天津城建大学《刑法(分论)》2023-2024学年第一学期期末试卷
- 2025年增味剂项目合作计划书
- 2025年秋部编版二年级假期强化复习计划
- 2025年七年级英语听力专项训练计划
- 2025年幼儿园大班秋季户外探索体验计划
- 法医学考试重点
- 耶鲁布朗强迫标准量表(YBOCS)
- 医院精神科健康教育手册
- 兰石3NB系列泥浆泵说明书
- 武大电气继电保护试验报告(90分)
- 标准工时测量模特法
- 2023年三亚五指山市政务中心综合窗口人员招聘笔试题库及答案解析
- GB/T 20041.21-2017电缆管理用导管系统第21部分:刚性导管系统的特殊要求
- GA/T 1147-2014车辆驾驶人员血液酒精含量检验实验室规范
- FZ/T 73001-2016袜子
- 违约用电和窃电案例分析
评论
0/150
提交评论