1 设备级别弹性
1.1 在线拔插
可以在线对设备有问题的板卡进行拔插
1.2 单板卡重启
重启单个设备板卡
1.3 高系统可用性(HSA,冷备)
设备包含两个RP(route processor)卡。当一个RP损坏时,另个RP对设备进行重启,整个过程如下:
- 监测到RP损坏
- 备用RP上加载启动镜像
- 备用RP加载新配置
- 线卡重置,重启
- 线卡加载新配置
- 学习路由,发送keep alive报文,转发流量
- 路由收敛
1.4 RPR
相对于HSA方式,RPR为热备,备用RP上的镜像一直在启动过程中,当检测到主用RP失效时,只进行以下步骤:
- 线卡重置,重启
- 线卡加载新配置
- 学习路由,发送keep alive报文,转发流量
- 路由收敛
1.5 PRP+
和PRP相比,PRP+ 不对线卡进行重置,RP切换过程中,流量转发不中断。
1.6 状态化切换(SSO)
相对于PRP+减少了路由学习,发送keep alive报文,转发流量过程。
SSO 允许主用RP 将必要的路由和接口协议的状态信息发送给RP,降低了备用RP学习和收敛时间。
SSO下,主备RP板卡版本必须保持一致。
1.7 不中断转发(NSF)
NSF通常和SSO一起工作,SSO解决了内部的问题(RP失效),NSF解决可能对网络进行损害的外部事件。
当一台网络设备重启时,这台设备的所有邻居都会检测到。这将导致路由翻滚在整个网络中传播,虽然设备仍热在转发流量,路由翻滚会导致路由不稳定,影响这个网络的性能。NSF用于抑制开启SSO功能设备的路由抖动。
NSF简单来说就是本端检测到对端设备进行主备RP切换时,就暂时利用现有的路由信息进行转发,而发生RP切换的设备则利用RP同步的信息进行转发,而不是重新从对端学习路由协议,这个需要对路由协议进行增强才可以支持。
2 保护设备控制层面和数据层面
设备的控制平面是设备的大脑,决定了设备如何运作,主要负责路由协议更新,keepalive等。如果设备控制层面遭受攻击可能会发生以下现象:
- CPU 接近100%利用率,设备无法正常运转
- 路由协议keepalive丢失,引发路由抖动
- 缓存耗尽导致丢包
3.建立弹性策略
建立弹性网络不仅仅是新建冗余链路和打开SSO特性,主要要的是建立一个全局的弹性策略。
3.1 冗余策略
冗余策略包括逻辑冗余和物理冗余。
3.1.1 逻辑冗余
逻辑冗余包括网络路径和功能实体的冗余。路径冗余需要确保在任何情况下都有多条路径到达网络中的重要资源,例如服务器。功能实体路是指路由器提供的逻辑功能,例如网关,RR等。
3.1.2 物理冗余
- 设备层面冗余。电源模块冗余,且电源模块要接入不同的电源,RP冗余等。
- 链路冗余。线路冗余,如果有多条线路,就需要考虑线路连接到不同的设备,甚至不同站点。
- 站点冗余。更高级的站点冗余,用于灾备。
3.2 扩展策略
网络可扩展性在一定程度上也会影响网络弹性。例如设备性能没有足够端口或槽位,需要对设备进行替换,或升级。这个时候就会涉及到网络中断问题。
4 弹性网络设计关键原则
简单,模块化,安全是网络弹性网络设计的关键原则。
简单不仅是指利用最少的硬件和特性实现网络需求,同时也包括一个网络设备承担较少的角色。
模块化通常指根据网络功能进行模块化设计,通常包括以下模块。
- 核心层将网络所有模块相连
- 接入层为为用户提供网络接入功能
- 互联网模块将网络接入互联网
- wan 模块用于连接分支结构
- 数据中心模块用于存放服务器