第九章-路由器硬件设计与实现PPT课件_第1页
第九章-路由器硬件设计与实现PPT课件_第2页
第九章-路由器硬件设计与实现PPT课件_第3页
第九章-路由器硬件设计与实现PPT课件_第4页
第九章-路由器硬件设计与实现PPT课件_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1 第九章路由器硬件设计与实现 教师 许红星 2 内容提要 路由器发展历程网络处理器介绍IntelIXP系列网络处理器介绍路由器硬件设计 3 路由器的发展历程 第一代路由器 集中转发 总线交换计算机插上多块网络接口卡的方式来实现 接口卡与CPU之间通过内部总线相连 CPU负责所有的事务处理 包括路由收集 转发处理 设备管理等 CPU RAM 物理接口 物理接口 物理接口 BUS 4 路由器的发展历程 续 第二代路由器 集中 分布转发 接口模块化 总线交换在网络接口卡上进行一些智能化处理 大多数报文直接通过业务板Cache的路由表进行转发 减少对总线和CPU的请求 CPU RAM 物理接口 物理接口 物理接口 BUS CPU 5 路由器的发展历程 续 第三代路由器 分布转发 总线交换全分布式结构 路由与转发分离 由主控板负责整个设备的管理和路由的收集 计算功能 并将计算出的转发表下发到各业务板 各业务板则根据保存的路由转发表独立地进行路由转发 总线技术也得到了较大的发展 通过总线 业务板之间的数据转发完全独立于主控板 实现了并行高速处理 使路由器的处理性能成倍提高 6 第三代路由器体系结构 控制CPU BUS RAM 7 路由器的发展历程 续 第四代路由器 多总线 多CPU结构这类路由器至少包括3类以上总线和3类以上的CPU 8 第四代路由器体系结构 控制CPU CxBUS 交换CPU dBUS SxBUS 9 路由器的发展历程 续 第五代路由器 ASIC分布转发 网络交换传统的基于软件的IP路由器无法再满足网络的发展需要 引入ASIC实现方式 将转发过程的所有细节全部通过硬件的方式来实现 在交换网上采用了CrossBar或共享内存的方式 解决内部交换的问题 使路由器的性能达到千兆比特 即早期的千兆交换式路由器GSR GigabitSwitchRouter 10 第五代路由器体系结构 BUS 主控CPU 11 路由器的发展历程 续 第六代路由器技术 网络处理器分布转发 全光空分交换互联网泡沫时代 出现网络无法管理无法运营的问题 IP地址缺乏问题 IP业务服务质量问题以及IP安全等问题 这些问题都严重地阻碍着网络的进一步发展 业务才是网络的真正价值所在 一切技术都必须围绕着业务 网络管理 用户管理 业务管理 MPLS VPN 可控组播 IP QoS和流量工程等各种新技术纷纷出现 IP标准也逐步修改成熟 新技术的出现和标准化的进展对高速路由器的业务功能提出了越来越高的要求 前五代路由器的发展焦点集中在路由器的转发性能上 其最大进步均在速度的提升方面 基于这些问题 第五代路由器ASIC技术的不灵活性 业务提供周期长等缺陷也不可避免地显现出来 第六代路由器在硬件体系结构上继承了第五代路由器的成果 在关键的IP业务流程处理上则采用了可编程的 专为IP网络设计的网络处理器技术 12 第六代路由器体系结构 交换结构 中央CPU 13 网络处理器的出现 14 什么是网络处理器 NP 网络处理器是面向网络应用领域的应用特定指令处理器 是面向数据分组处理的 具有体系结构特征和 或特定电路的 软件可编程器件 通过灵活的软件体系提供硬件级的处理性能是NP的关键特性 在以GPP和ASIC RSIC为核心的设备体系结构阶段 对2 3层数据处理采用 存储 转发 数据分组处理模式 随着网络发展 需要对2 7层的数据分组采用 存储 处理 转发 数据分组处理模式才能实现复杂的QOS 安全控制 负载均衡等功能模块 NP的出现 标志着设备对数据分组的处理能力从低层处理过渡到高层细化处理 NP技术为下一代网络的核心技术 其特点是 NP针对数据分组处理 采用优化体系结构 专用指令集 硬件单元 满足高速数据分组线速处理要求 具有软件编程能力 能够迅速实现新的标准 服务 应用 满足网络业务复杂多样化需求 灵活性好 设备具有软件升级能力 满足用户设备硬件投资保护需求 15 网络处理器产品 AppliedMicroCircuitsCorp AMCC 仍然是该市场的领先者 AMCC的网络处理器产品用于思科和其他的顶级OEM厂商 IBMPowerNP网络处理器CISCOPXF网络处理器MotorolaC PortC 5Chip网络处理器IntelIXP网络处理器Agere 杰尔系统 Vitesse 16 各大厂商的市场占有率 17 Intel IXP网络处理器产品线 Intel IXP4XXProductLineofNetworkProcessors面向家庭 小到中型企业 嵌入式网络设备 Intel IXP12XXProductLineofNetworkProcessorsOC 3至OC 12线速处理应用 Intel IXP2XXXProductLineofNetworkProcessors灵活 高性能 可扩展的网络处理器 最高可满足OC 192的线速处理 18 新一代处理器要求 灵活性高性能可扩展性可移植性 19 IntelIXA模型示意图 提供高性能 可编程的网络数据包处理 20 IXA组成部分 微引擎XscaleCoreIXA可移植性框架 21 MicroenginePipeline IXA可移植性框架 22 IXP2400网络处理器 1个Intel XScale Core8个MicroEngineVersion2 MEv2 1个DDRSDRAM控制器2个独立的QDRSRAM控制器MSF MediaandSwitchFabric 接口PCI控制器16K字节Scratchpad存储器Hash单元CAP 片内控制和状态寄存器XPI Intel XScale core外设接口 23 IXP2400特点 采用多内核并行处理器结构 片内处理器按任务分为控制平面处理器和数据层面处理器 控制平面处理器通常负责非实时的管理任务 数据平面处理器进行实时 线速数据分组处理 处理器XScal工作在控制平面提供总的控制 处理高层协议 八个并行微引擎工作在数据平面 微引擎是精简的可编程处理器 在入口和出口处线速处理数据分组 支持硬件多线程 为了提高网络处理器的资源利用率 每个微引擎还支持四个或八个硬件线程 每个线程都有一套专门的硬件来存放上下文 Context 以获得线程切换的零开销 优化指令集 设计专用硬件加速处理单元 采用RISC技术 结合多级流水线技术 大部分指令在一个时钟周期完成 针对网络协议处理特点 设置专用硬件加速处理单元 提供专用指令如乘法指令 CRC校验指令 哈希计算指令 字节对齐指令 硬件队列与环操作指令 CAM ContentAddressingMemory 查找指令 MSF与DRAM间快速通道指令 状态判断与数据读写指令等 24 IXP2400特点 续 优化的分级存储组织和分布式存取 网络数据处理需要进行大量的数据分组的接收 存储 复制 转发 存储操作成为系统开销的一大瓶颈 在微引擎内部有大量的不同类别的寄存器 本地存储器 CAM 在微引擎外部有片内存储器Scratchpad 在网络处理器外部可以扩展大容量的片外存储器SRAM和SDRAM SRAM用于存放需要快速查找的各种表结构 SDRAM用于存放数据分组信息 模块可并行访问多种数据存储单元 不同数据存储单元的存取时间周期差异很大 硬件支持的环与队列操作 网络数据处理涉及很多队列或环的数据结构操作 而入队或出队操作需要多次访问内存 极大地影响数据处理分组处理的周期 IXP2400中的SRAM控制器提供了基于SRAM的先入先出队列 通过硬件实现了环与队列操作 25 IXP2400外部特性 26 IXP2400外部特性 续 媒体与交换接口 MSF MediaandSwitchFabricinterface 连接物理层设备 连接交换矩阵 支持UTOPIA1 2 3 POS 2 SPI 3 POS PL3 和CSIX接口标准存储器接口2个QDRSRAM接口 QuadDataRateSRAM 1个DDRDRAM接口 DoubleDataRateDRAM 慢速端口 SlowPorts 连接FlashROM和外部芯片的控制接口 PCI接口64bit 66MHzPCI总线 与主CPU接口 流控制总线 FlowControlBus 使用两片IXP2400时 在两个NPU间用专用信道传递流量控制信息 27 IXP2400体系结构 28 MEv2特性 MEv2 MicroEngineVersion28个微引擎分为两组 每组有专用的命令和数据总线 MECluster0和MECluster1 硬件多线程每个微引擎有4 8个硬件线程 线程间实现零开销切换 非抢占多线程 non preemptive 由微码指令控制线程间的切换 29 MEv2特性 分布式数据存储可并行访问多种数据存储单元 微引擎内部 寄存器 LocalMemory CAM 微引擎外部 SRAM SDRAM Scratchpad 大量的寄存器256GPRs 512Transfer 128NextNeighbor 指令和数据分离获取微码指令没有延迟 30 MEv2 31 基于IXP2400的典型系统结构 32 基于IntelIXP网络处理器的软件设计 网络设备软件的三个层面数据层面 控制层面 管理层面 33 网络设备软件的三个层面 数据层面包括慢速数据通道和快速数据通道 快速数据通道是由微引擎负责处理的数据转发通道 大部分数据包通过此通道完成处理与转发 慢速数据通道 由通用RISC核负责处理一些例外复杂的数据包 如数据包分段 带扩展头部的数据包处理等 控制层面处理各种通信协议 转发表和状态信息维护 管理层面安装配置接口 策略管理接口 系统管理 统计 计费等 34 多微引擎 多线程的并行设计 基于网络处理器成功构建一个网络系统的关键在于网络处理器软件系统的设计与开发 其核心问题就是要软件系统充分发挥网络处理器灵活性和高性能的特点 网络处理器软件系统实现的一个挑战在于软件设计与网络处理器的硬件结构关系非常紧密 必须面向网络处理器的硬件体系结构编程 通过合理分配和使用网络处理器为优化数据包处理的各种硬件资源 如多处理引擎 专用硬件处理单元 各类寄存器 片上内存和其它硬件单元 才能得到一个高性能的系统 通常情况下 在微引擎上运行的应用软件包含多个线程 多个线程运行在多个微引擎上 需要考虑并行程序设计问题 如何实现线速处理 如何保持数据包的顺序 如何在多个线程间传递数据包的状态 如何实现数据互斥 如何隐藏存储器访问时延 如何对数据包进行排队 35 IXP2400处理过程举例 36 IXP2400处理过程举例 1 SDH设备接收到一个packet2 MSF将packet拆分为多个mpacket 将mpacket写入RBUFElement3 MSF通知Receive Free list中等待数据的线程4 接收线程根据RSW将mpacket直接从RBUFElement读到DRAM 并将mpacket重组为packet5 接收线程将packet放到ScratchpadRing排队6 处理线程从ScratchpadRing取出packet 3

温馨提示

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

评论

0/150

提交评论