前言
本文章主要介绍juniper MX系列路由器设备的NSR(nonstop routing)/NSB(nonstop bridging)高可用性(High Availability)特性。
一、Juniper MX系列路由器NSR/NSB特性介绍
NSR
NSR是实现无中断RE切换的优选方法。NSR是一个完全依赖于设备自身的HA特性,因此他不需要协议层面的扩展,也不需要依赖于邻居节点来实现。当使用NSR时,在设备PFE和外部邻居设备看起来并没有协议层面的重置,会让设备和切换之前一样运行;不会发生PFE重新上线和导致协议冲新收敛。
与GR不同,NSR不需要依赖于协议的扩展。从某些程度上说,NSR和GR是完全相对的两种HA特性。也就意味着同一台设备不能同时开启GR和NSR。GR的机制类似于当控制平面产生重置是需要邻居帮助恢复;而NSR则是隐藏了自己控制平面发生的改变
NSB
NSB主要是用于实现在设备发生切换时layer 2功能的无中断;如:生成树状态发生改变,lldp邻居状态发生改变和mac地址的学习。NSB不仅可以在MX设备上使用,也可以在EX设备上使用。
二、Juniper MX系列路由器NSR/NSB特性原理和配置
1.NSR特性
1)NSR原理初识
与GR的特性不同,NSR是一个依赖于设备自身的特性。
NSR最核心是协议复制。是将真实的协议消息在主备RE之间进行复制,包括BGP协议中的TCP连接状态。需要备RE运行rpd进程。
2)NSR运行机制
收到BGP邻居请求消息时NSR的运行过程
(1)路由器收到了BGP发送来的像BGP端口(179)的TCP连接请求。
(2)主RE内核准备对收到的连接请求进行确认,但并不会立即回复邻居请求,需要等待备引擎进行确认收到了请求。同时,使用内核套接字复制功能将SYN段传递给备份RE上的内核,这样就可以建立匹配状态。
(3)备RE内核将ack的消息发送回主RE内核。
(4)当主RE收到了备RE的ACK消息。主RE再向邻居进行确认。完成连接建立。
收到BGP更新消息时NSR的运行过程
(1)当一个RIB更新导致主路由进程创建一个BGP更新消息时,可能是为了撤回一条已经不可达的路由,或者可能是由于策略变化而更新路由的属性,表明现在应该附加一个团体。
(2)bgp更新消息进入到了cocket复制层,会产生一个只读的套接字复制传输到备RE。
(3)从RPD进程窥探传输的BGP消息,因此它可以通过对其内部BGP数据结构或其RIB/FIB副本进行任何更新来与主进程保持同步。例如,它可能会更新BGP rib-out,以表明一个新的团体被附加到相关对等体的相应NLRI上。因此,操作员可以期望在主re和备份res的show route advertising-protocol bgp <peer>命令的输出中看到相同的结果。这是至关重要的,因为备份可能会发现自己在任何给定的时间都处于活动状态,并且它必须具有两者的相同副本。BGP-IN和BGP-out保证了主的改变可以被检测。
(4)socket复制层在主备RE之间使用TCP传输套接字。
(5)主RE等待传输socket确认;一旦收到确认消息,主RE会发送实际的BGP更新到远端邻居。
2.NSB
1)NSB原理初识
NSB的运行机制与NSR类型,区别点在于NSR用于layer 3的高可用性,而NSB用于layer 2的高可用性。
2)NSB运行机制
当启用NSB时,第2层控制协议守护进程(l2cpd)同时在主和备 REs上运行,就像NSR的路由守护进程(rpd)一样。l2cpd进程实现了各种形式的生成树协议(STP),使其成为Junos的“第二层桥接模块”;这个守护进程还在MX路由器上提供LLDP服务。
在NSB模式下,l2cpd在备用RE上启动,运行后会与主RE上的l2cpd进程建立套接字连接,同步xSTP协议状态。对于STP和RSTP,此状态包括根桥ID、根路径开销以及每个L2控制实例(main或virtual-bridge)中每个IFD/IFL的STP状态。对于MSTP, CIST根标识符、CIST内部根路径开销、MSTI区域根、MSTI内部根路径开销、MSTI剩余跳数和每个MSTI的STP状态都是镜像的。当这些信息与其他状态(例如通过GRES在内核中镜像的接口信息)结合在一起时,就足以使第二层控制进程在切换后立即以与前主服务器相同的状态开始转发。
3. NSR/NSB配置
由于NSR和NSB依赖于GRES而运行,因此在配置NSR/NSB前需要先开启GRES。配置GRES的方式可以参考“juniper MX 路由器高可用性介绍GRES篇“。
(1)配置NSR
Juniper-MX@RE0#set routing-options nonstop-?
Possible completions:
nonstop-routing Enable nonstop routing
> nonstop-routing-options Nonstop routing options
(2)配置NSB
Juniper-MX@RE0#set protocols layer2-control nonstop-bridging
参考文献
本文章参考书目:
Juniper MX Series, 2nd Edition
by Douglas Richard Hanks, Harry Reynolds, David Roy
Released September 2016
Publisher(s): O'Reilly Media, Inc.
ISBN: 9781491932728