众所周知,要获得很高的网络永续性,需要使用具有热故障恢复功能和连接不同网络路径的主路由器和备用路由器。但是仅仅这样并不够。路由器本身——尤其是那些位于不安全的 WAN 边缘的路由器——应当配有内部冗余硬件组件,例如交换矩阵、线路卡、电源和路由处理器( RP )。高可用性路由器还必须支持快速软件恢复技术。
利用可以隔离控制和转发面板,并使用平稳的重启机制——也被称为思科不间断转发( NSF )——的路由器,可以大幅度地延长网络和应用的正常运行时间。这种软件恢复技术可以在 RP 流程发生中断时,保持分组的正常传输,从而控制中断对网络的影响。
双 RP 和连续分组转发
RP 包含了路由器的“大脑”。它负责存储最佳路径路由信息的数据库,保存与对等路由器的邻接关系,以及处理特定的管理职能。冗余硬件可以提高网络组件在发生故障时的可用性。思科的双 RP 设备包括 12000 、 10000 和 7600 系列高端路由器,以及 Cisco 7500 和 7300 系列路由器。
两个 RP 的状态信息的同步程度在一定程度上将取决于路由器能够以多快的速度从进程重启或者从故障中恢复。这需要在两个极端的备份形式之间进行平衡。一种极端形式是 RP 的“冷”备份,即不包含任何关于第二层连接、邻接关系和最佳路径路由表的状态信息。在这种情况下,所有这些信息都需要重新构建,因而可能会导致极长的恢复时间。另外一种极端形式是在两个 RP 之间不间断地同步所有的信息,这可能会占用过多的处理资源,影响到网络的可扩展性和性能。
通常采用的方式是在这两种极端的 RP 同步方式之间保持适当的平衡,即将大部分(但并非全部)恢复信息加载到备用 RP 中。这种同步可以在切换 RP 和集中路由表的过程中,继续进行第三层分组转发。
安装在上述路由器平台上的 Cisco IOS?软件 12.0(22)S 版本或者更高版本可以支持思科 NSF 。它能在主 RP 进行预定维护或者 RP 发生意外故障时缩短路由器的停机时间。在大多数情况下,要实现思科 NSF ,重启路由器和它的对等路由器必须保存针对所有可以通过重启路由器到达的网络的转发信息。在重启路由器上,在从主 RP 向备用 RP 切换的过程中,控制面板和转发面板必须互相隔离,以便让转发面板能继续转发数据流量。
路由协议扩展
为了实现 NSF ,部分思科路由器可以采用常用路由协议——包括边界网关协议( BGP )、 IS-IS 和开放最短路径优先( OSPF )的新型平稳重启扩展。这些扩展可以在判断主 RP 能否迅速恢复的同时,暂时继续转发分组和保持网络连接的稳定性。
要让大部分思科 NSF/ 平稳重启部署可以发挥作用,重启路由器的对等路由器也必须支持这些扩展。这主要是由于下面两点原因。首先, RP 切换并不代表拓扑变化,仅仅表示 RP 恢复。对等路由器可以利用平稳重启扩展区别这两种情况,从而避免对外广播停用和启用重启路由器的信息。这可以防止不必要的广播信息和路由变化。其次,它让对等路由器能在恢复期间继续向重启路由器转发分组,从而提供 NSF 。它还必须知道应当交换哪些消息和信息,以帮助主路由器迅速恢复。
图 1: 支持思科 NSF 的对等路由器可以帮助彼此从突发故障中迅速恢复,从而最大限度地缩短停机时间、继续转发分组和保持整个网络的稳定性。
图 2: 无论采用任何协议,用户数据分组都将在整个恢复步骤中不断地在对等路由器之间传输。