网络处理器发展及其应用研究报告

上传人:yulij****0329 文档编号:139297500 上传时间:2020-07-21 格式:PPT 页数:31 大小:559.50KB
返回 下载 相关 举报
网络处理器发展及其应用研究报告_第1页
第1页 / 共31页
网络处理器发展及其应用研究报告_第2页
第2页 / 共31页
网络处理器发展及其应用研究报告_第3页
第3页 / 共31页
网络处理器发展及其应用研究报告_第4页
第4页 / 共31页
网络处理器发展及其应用研究报告_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《网络处理器发展及其应用研究报告》由会员分享,可在线阅读,更多相关《网络处理器发展及其应用研究报告(31页珍藏版)》请在金锄头文库上搜索。

1、网络处理器发展及其应用,Intel IXP系列网络处理器,张道庆 RD, CNIC,2,报告提纲,网络处理器发展历程 Intel IXP系列网络处理器 基于Intel IXP2400网络系统设计 网络处理器的应用领域,3,报告提纲,网络处理器发展历程 Intel IXP系列网络处理器 基于Intel IXP2400网络系统设计 网络处理器的应用领域,4,路由器的发展历程,路由器技术体系的发展,大致可以划分为五代: 第一代路由器:集中转发,总线交换 计算机插上多块网络接口卡的方式来实现。 接口卡与CPU之间通过内部总线相连,CPU负责所有的事务处理,包括路由收集、转发处理、设备管理等。 第二代路

2、由器:集中+分布转发,接口模块化,总线交换 在网络接口卡上进行一些智能化处理。 大多数报文直接通过业务板Cache的路由表进行转发,减少对总线和CPU的请求。 第三代路由器:分布转发,总线交换 全分布式结构,路由与转发分离,由主控板负责整个设备的管理和路由的收集、计算功能,并将计算出的转发表下发到各业务板,各业务板则根据保存的路由转发表独立地进行路由转发。 总线技术也得到了较大的发展,通过总线,业务板之间的数据转发完全独立于主控板,实现了并行高速处理,使路由器的处理性能成倍提高。,6,网络处理器的出现,7,什么是网络处理器(NP),网络处理器是面向网络应用领域的应用特定指令处理器,是面向数据分

3、组处理的、具有体系结构特征和/或特定电路的、软件可编程器件。通过灵活的软件体系提供硬件级的处理性能是NP的关键特性。 在以GPP和ASIC/RSIC为核心的设备体系结构阶段,对23层数据处理采用“存储转发”数据分组处理模式。 随着网络发展,需要对27层的数据分组采用“存储处理转发”数据分组处理模式才能实现复杂的QOS、安全控制、负载均衡等功能模块。NP的出现,标志着设备对数据分组的处理能力从低层处理过渡到高层细化处理。 NP技术为下一代网络的核心技术,其特点是: NP针对数据分组处理,采用优化体系结构、专用指令集、硬件单元,满足高速数据分组线速处理要求; 具有软件编程能力,能够迅速实现新的标准

4、、服务、应用,满足网络业务复杂多样化需求,灵活性好; 设备具有软件升级能力,满足用户设备硬件投资保护需求。,8,网络处理器产品,Applied MicroCircuitsCorp(AMCC) 仍然是该市场的领先者,AMCC的网络处理器产品用于思科和其他的顶级OEM厂商。 IBM PowerNP网络处理器 CISCO PXF网络处理器 Motorola C-Port C-5 Chip网络处理器 Intel IXP网络处理器 Agere(杰尔系统) Vitesse,9,各大厂商的市场占有率,10,报告提纲,网络处理器发展历程 Intel IXP系列网络处理器 基于Intel IXP2400网络系统

5、设计 网络处理器的应用领域,11,Intel IXP网络处理器产品线,Intel IXP4XX Product Line of Network Processors 面向家庭、小到中型企业。 嵌入式网络设备。 Intel IXP12XX Product Line of Network Processors OC-3 至 OC-12 线速处理应用。 Intel IXP2XXX Product Line of Network Processors 灵活、高性能、可扩展的网络处理器。 最高可满足OC-192 的线速处理。,12,IXP2400网络处理器,1个Intel XScale Core 8个M

6、icroEngine Version 2(MEv2) 1个DDR SDRAM控制器 2个独立的QDR SRAM控制器 MSF(Media and Switch Fabric)接口 PCI控制器 16K字节Scratchpad存储器 Hash单元 CAP片内控制和状态寄存器 XPIIntel XScale core 外设接口,13,IXP2400特点,采用多内核并行处理器结构: 片内处理器按任务分为控制平面处理器和数据层面处理器。控制平面处理器通常负责非实时的管理任务;数据平面处理器进行实时、线速数据分组处理。 处理器XScal工作在控制平面提供总的控制,处理高层协议,八个并行微引擎工作在数据平

7、面。 微引擎是精简的可编程处理器,在入口和出口处线速处理数据分组。 支持硬件多线程: 为了提高网络处理器的资源利用率,每个微引擎还支持四个或八个硬件线程。每个线程都有一套专门的硬件来存放上下文(Context),以获得线程切换的零开销。 优化指令集,设计专用硬件加速处理单元。 采用RISC 技术,结合多级流水线技术,大部分指令在一个时钟周期完成。针对网络协议处理特点,设置专用硬件加速处理单元,提供专用指令如乘法指令、CRC校验指令、哈希计算指令、字节对齐指令、硬件队列与环操作指令、CAM(Content Addressing Memory)查找指令、MSF与DRAM间快速通道指令、状态判断与数

8、据读写指令等。,14,IXP2400特点(续),优化的分级存储组织和分布式存取。 网络数据处理需要进行大量的数据分组的接收、存储、复制、转发,存储操作成为系统开销的一大瓶颈。在微引擎内部有大量的不同类别的寄存器、本地存储器、CAM,在微引擎外部有片内存储器Scratchpad。在网络处理器外部可以扩展大容量的片外存储器SRAM和SDRAM,SRAM 用于存放需要快速查找的各种表结构,SDRAM 用于存放数据分组信息。模块可并行访问多种数据存储单元,不同数据存储单元的存取时间周期差异很大。 硬件支持的环与队列操作。 网络数据处理涉及很多队列或环的数据结构操作,而入队或出队操作需要多次访问内存,极

9、大地影响数据处理分组处理的周期。IXP2400中的SRAM控制器提供了基于SRAM的先入先出队列,通过硬件实现了环与队列操作。,15,IXP2400外部特性,16,IXP2400外部特性(续),媒体与交换接口(MSFMedia and Switch Fabric interface) 连接物理层设备。 连接交换矩阵。 支持UTOPIA 1/2/3, POS-2,SPI-3 (POS-PL3), 和CSIX接口标准。 存储器接口 2 个QDR SRAM 接口(Quad Data Rate SRAM)。 1 个DDR DRAM接口(Double Data Rate DRAM)。 慢速端口(Slow

10、 Ports) 连接Flash ROM和外部芯片的控制接口。 PCI 接口 64bit/66MHz PCI总线,与主 CPU 接口。 流控制总线(Flow Control Bus) 使用两片IXP2400时,在两个NPU间用专用信道传递流量控制信息。,17,IXP2400体系结构,18,MEv2特性,MEv2 MicroEngine Version 2 8个微引擎分为两组,每组有专用的命令和数据总线。 ME Cluster0和ME Cluster1。 硬件多线程 每个微引擎有4/8个硬件线程,线程间实现零开销切换。 非抢占多线程( non-preemptive) 由微码指令控制线程间的切换。

11、分布式数据存储 可并行访问多种数据存储单元。 微引擎内部寄存器,Local Memory,CAM。 微引擎外部SRAM,SDRAM,Scratchpad。 大量的寄存器 256 GPRs, 512 Transfer, 128 Next Neighbor。 指令和数据分离 获取微码指令没有延迟。,19,MEv2,20,报告提纲,网络处理器发展历程 Intel IXP系列网络处理器 基于Intel IXP2400网络系统设计 网络处理器的应用领域,21,基于NP的典型网络系统,22,基于IXP2400 实现的OC-48系统,23,基于Intel IXP网络处理器的软件设计,网络设备软件的三个层面

12、数据层面。 控制层面。 管理层面。,24,网络设备软件的三个层面,数据层面 包括慢速数据通道和快速数据通道。 快速数据通道是由微引擎负责处理的数据转发通道,大部分数据包通过此通道完成处理与转发。 慢速数据通道:由通用RISC核负责处理一些例外复杂的数据包,如数据包分段、带扩展头部的数据包处理等。 控制层面 处理各种通信协议。 转发表和状态信息维护。 管理层面 安装配置接口。 策略管理接口。 系统管理、统计、计费等。,25,Microengine Pipeline,IXA软件框架,26,多微引擎、多线程的并行设计,基于网络处理器成功构建一个网络系统的关键在于网络处理器软件系统的设计与开发,其核心

13、问题就是要软件系统充分发挥网络处理器灵活性和高性能的特点。 网络处理器软件系统实现的一个挑战在于软件设计与网络处理器的硬件结构关系非常紧密,必须面向网络处理器的硬件体系结构编程,通过合理分配和使用网络处理器为优化数据包处理的各种硬件资源,如多处理引擎、专用硬件处理单元、各类寄存器、片上内存和其它硬件单元,才能得到一个高性能的系统。 通常情况下,在微引擎上运行的应用软件包含多个线程,多个线程运行在多个微引擎上。需要考虑并行程序设计问题。 如何实现线速处理? 如何保持数据包的顺序? 如何在多个线程间传递数据包的状态? 如何实现数据互斥? 如何隐藏存储器访问时延? 如何对数据包进行排队?,27,IX

14、P2400处理过程举例,28,IXP2400处理过程举例,1. SDH设备接收到一个packet 2. MSF将packet拆分为多个mpacket,将mpacket写入RBUF Element 3. MSF通知Receive_Free_list中等待数据的线程 4. 接收线程根据RSW将mpacket直接从RBUF Element读到DRAM,并将mpacket重组为packet 5. 接收线程将packet放到Scratchpad Ring排队 6. 处理线程从Scratchpad Ring取出packet 7. 从DRAM中读出packet中需要处理的内容 8. 对数据作处理 9. 处理

15、完的数据放到SRAM Queue中排队 10. 发送线程从SRAM Queue取出数据 11. 将发送packet分为多个mpacket,从DRAM直接写入TBUF Element 12. 写TBUF发送控制字,MSF开始发送数据 13. SDH设备向线路上发送packet,29,报告提纲,网络处理器发展历程 Intel IXP系列网络处理器 基于Intel IXP2400网络系统设计 网络处理器的应用领域,30,网络处理器的应用领域,根据不同需求,可以采用NP灵活构造不同规模的处理平台,如单个NP构成的小型单板设备;多个NP构成的中型单板设备;多个线卡通过交换组织构成多板大型设备。 已有的基

16、于NP的应用范例: 高速路由交换设备:Cloudshield公司使用八个Intel的IXP1200构建的OC-48光速27层包服务器。ALCATEL使用IBM的POWERNP构建核心路由设备。Cisco公司基于Cisco PXF网络处理器的边缘路由器。 高速安全设备:清华紫光UF10000是基于两个Intel的IXP1200网络处理器阵列千兆防火墙。作为第三方软件开发商,Deceng公司推出基于Intel的IXP2400的Snort千兆网络入侵检测系统软件解决方案。IXP2850更是以面向10-Gbit/s的IPSEC VPN设备市场而引起安全设备生产厂商的高度注意。 骨干测试设备:骨干网络从2.5Gbps到10Gbps,甚至是40Gbps的高速发展,给网络性能测试同样带来挑战。基于NP的下一代协议分析仪和性能测试仪成为趋势。EMPIRIX公司使用MOTOROLA的C-5DCP,开发网络参数模拟设备。 家庭网络设备:家庭网关是家庭网络的核心设备,需要根据具体家庭用户,快速、综合实现各种服务:如安全访问控制、VPN、视频流QOS保障、网络存储、计费管理等。低端NP正好完全满足家庭网

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号