用于Cisco Catalyst 6500系列的Cisco IOS软件模块化

网络技术是从1990年代中期发展起来的新技术 , 它把互联网上分散的资源融为有机整体 , 实现资源的全面共享和有机协作 , 使人们能够透明地使用资源的整体能力并按需获取信息 。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等 。当前的互联网只限于信息共享 , 网络则被认为是互联网发展的第三阶段 。简介
当今的网络设备必须提供最长的正常运行时间 , 以便服务于语音、视频和数据应用等关键任务流量 。尽管高可靠性一般是通过冗余系统在核心和分发层中提供的 , 但是鉴于单一网络设备通常是所连接的终端设备的单故障点 , 使它们更具永续性已成为对配线间、数据中心接入和企业网络的WAN边缘来说最重要的任务 。城域以太网接入网络为满足与客户签订的服务水平协议(SLA)的严格要求 , 也有着类似的需求 。此外 , 因为企业依赖于网络应用 , 因此网络操作员和管理员非常需要可靠性 。
采用Cisco IOS软件模块化的Cisco Catalyst 6500系列通过演进式的软件基础设施增强 , 最大限度地缩短了停机时间 , 提高了运营效率 。通过让模块化的Cisco IOS子系统作为独立的进程运行 , 这个创新凭借可自行恢复的进程最大限度地缩短了计划外停机时间 , 它还利用子系统运行中软件升级(ISSU)简化了软件改动 , 并经由集成嵌入式事件管理器(EEM)实现了进程级的自动策略控制 。
用于Cisco Catalyst 6500系列的Cisco IOS软件模块化
Cisco IOS的设计可满足发展中网络最为严格的IP服务和控制平面可扩展性要求 。Cisco IOS软件由数百个子系统组成 , 每个都定义了某项技术的某个组件 , 它们运行于共享内存空间 , 以实现最高的软件转发性能 。
Catalyst 6500系列通过PFC或DFC上的ASIC , 提供了基于硬件的转发功能 。Catalyst 6500系列的控制平面功能在MSFC网络的专用CPU上运行 。

  • 控制平面→管理路由协议更新和管理流量等控制流量 。
  • 数据平面→负责通过ASIC进行的实际分组转发 。
图1. Cisco IOS软件模块化的架构 , 显示了Cisco Catalyst 6500系列控制和数据平面的分离 , 以及独立的进程
用于Cisco Catalyst 6500系列的Cisco IOS软件模块化

文章插图
完全独立的数据平面可确保 , 即使控制平面运行中断 , 只要软件的智能特性足以对硬件编程 , 使之不间断运营 , 就可持续转发流量 。凭借Cisco Catalyst 6500系列交换管理引擎的冗余性 , 在主交换管理引擎发生硬件故障时 , Catalyst 6500系列的不间断转发(NSF)和状态化切换(SSO)特性仍能提供持续运行的数据转发平面 。对故障隔离和分离控制及数据平面的要求 , 导致了OS级关注焦点的改变 。特别需注意的是 , 控制平面软件中的改动或问题不应影响数据平面上的转发 。
Cisco IOS软件模块化将子系统组合为独立的进程 , 增强了Cisco IOS软件的内存架构 , 可提供进程级的故障隔离和子系统ISSU功能 。这些改进在用于Catalyst 6500系列Supervisor Engine 720和 Supervisor Engine 32的Cisco IOS软件中提供 , 同时保留了网络操作员已经熟悉的丰富功能和操作环境 。Cisco IOS软件模块化将首先在Cisco IOS 12.2(18)SXF的一个版本中提供 。操作员将可从大量带或不带软件模块化的镜像中进行选择 。在带Cisco IOS软件模块化的镜像与当前用于Catalyst 6500系列的Cisco IOS软件版本的功能完全相同前 , 思科将保留不带IOS软件模块化的并行镜像 。
运营一致性
虽然软件模块化为Catalyst 6500系列上的Cisco IOS软件带来了很多改进 , 但从运营角度无需作任何改变 。命令行界面(CLI)以及SNMP或系统日志等管理界面仍与以前一样 。为支持新功能 , 添加了执行和配置模式的新命令以及show命令 。软件发布和重建也与以前相同 , 只是添加了对于子系统补丁的支持 。
受保护内存
在软件模块化支持的内存架构中 , 进程使用受保护地址空间 。每个进程及其相关的子系统都“运行”于独立的内存空间中 。同一进程的子系统能直接地相互通信 , 而进程间只可使用进程间通信(IPC)来传输信息 。利用这种模式 , 就不会发生内存破坏波及多个进程的现象 。同一进程中子系统的通信能直接进行 , 从而提供了一致的控制平面性能 。
故障抑制
受保护内存空间的优势在于 , 因为一个进程中的问题不会影响到系统的其他部分 , 所以提高了可靠性 。例如 , 如果一个关键程度不高的系统进程发生故障或未按预期运行 , 并不会影响持续转发分组所需的关键功能 。具体来说 , 如果UDP进程发生故障 , 那么只有需使用UDP的特性会受到影响 。
进程可重启性
模块化进程建立在受保护内存空间和故障抑制的基础上 , 现在可单独重启 。为进行测试或处理无响应进程 , 可使用一条CLI命令来手动重启进程 。这样 , 无需中断分组转发 , 即可快速从暂时错误中恢复 。
手动重启进程很重要 , 而持续检查进程的状态也是至关重要的 。一个集成的高可靠性子系统可持续检查进程状态 , 跟踪在规定时间间隔内一个进程的重启次数 , 从而完成这一任务 。这种高可靠性子系统可通过重启进程 , 尽快从各种故障中恢复 。如果进程重启仍无法恢复系统 , 那么高可靠性子系统会采取更高层次的行动 , 如进行交换管理引擎切换或重启系统 。
因为每个进程有自己的受保护环境 , 可按需提供状态检查点信息 。检查点架构能在进程重启或故障切换过程中保留此信息 。高可靠性子系统在进程重启时会利用这一信息 , 实现状态化恢复 。当一个进程重启时 , 它会利用检查点信息(例如中间系统-中间系统[IS-IS]路由协议信息的状态)来尽快进行恢复 。检查点信息仅在特定时间段内进程第一次重启期间提供 , 以确保检查点状态信息本身不会导致错误 。
【用于Cisco Catalyst 6500系列的Cisco IOS软件模块化】

    推荐阅读