《重识云原生系列》专题索引:
GR(Graceful Restart,平滑重启)是一种在主备切换或协议重启时保证转发业务不中断的机制。其核心在于:设备进行协议重启时,能够通知其周边设备,使到该设备的邻居关系和路由在一定时 间内保持稳定。在协议重启完毕后,周边设备协助其进行信息(包括支持GR的相关协议所维护的 各种拓扑、路由和会话信息)同步,在尽量短的时间内恢复到重启前的状态。在协议重启过程中不 会产生路由振荡,报文转发路径也没有任何改变,整个系统可以实现不间断运行。
OSPF GR可以保证运行OSPF协议的路由器在进行主备切换或 OSPF协议重启时,转发业务正常进行。
一台路由器的OSPF协议重启之后,会发送 Hello报文以发现邻居,而邻居路由器因为之前已经和该路由器建立有邻居关系,因此收到该 Hello 报文之后就会把该路由器从邻居列表中删除,断开与该路由器的邻居关系,并通知其他路由器。当该路由器与邻居路由器重新建立OSPF邻居关系后, 会重新同步所有的路由信息数据,而周边路由器也需要重新进行路由计算,这样就会引起网络的路由振荡以及转发中断,对于一个大型网络,尤其是运营商网络,这些路由振荡和转发中断是不可容忍的。
如何能使协议重启而不引起网络振荡和转发中断呢?由于分布式设备的控制与转发是分开的,主控 板负责整个设备的控制与管理,包括协议运行和路由计算,而接口板则负责数据转发。这样当发生 主备倒换或协议重启时,数据转发仍然可以不中断进行。同时,如果在重启期间周边设备能维持邻居关系不变并保持路由稳定,并且在设备重启后能协助设 备进行路由信息同步,在尽量短的时间内使得本设备的路由信息恢复到重启前的状态,那么就可以 保持网络拓扑稳定,不引起网络路由振荡。
为了实现这个目的,OSPF 路由协议进行了扩展,即OSPF GR。通过 OSPF GR,可以避免网络 的路由振荡及转发中断。
OSPF GR的基本术语:
说明:分布式设备可以充当 GR Restarter和 GR helper;而集中式设备只能充当 GR Helper,协助 GR Restarter完成 GR流程。
目前 H3C有两种方式实现 OSPF GR技术:
一种是基于 IETF标准,Restarter通过向 Helper发送一种称为 Grace LSA(Link state advertisement,链路状态信息公告)的 9类 Opaque LSA来控制 GR的交互过程。
另外一种是非 IETF标准,Restarter与 Helper之间是通过相互发送携带 LLS(Link local signaling,本地链路信令)与 OOB(Out-of-band LSDB Resynchronization,带外的链路状 态信息库重新同步)扩展信息的 OSPF报文来完成 GR的交互过程。
说明:GR Restarter上只能配置 IETF标准与非 IETF标准其中的一种能力,两种方式是互斥的。
对 OSPF协议做了如下扩展:增加一种 9类 Opaque LSA――Grace LSA,用以在 GR Restarter 重启时,通知周边邻居进入** GR Helper**流程。
Grace LSA
Grace LSA格式如图 1所示。
图1 Grace LSA格式
其中,几个主要的 TLV 的含义如下:
如图 2所示,假设 Router A和 Router B原来有稳定的OSPF邻居关系,并且 Router A使能了 GR 能力,此时 Router A重启,将按照以下的流程进行路由信息交互:
图2 IETF标准 OSPF GR运行示意图
与IETF标准的OSPF GR相比,非IETF标准GR主要是通过下面两个能力扩展来支持OSPF GR:
在OSPF的Hello报文和DD报文的尾部增加了LLS Data。同时对Hello报文和 DD报文的Option字段进行扩展,以标识是否携带LLS。扩展后的Option字段如图 3 所示,如果L位置1表示携带了LLS Data。
图3 Option字段
经过扩展后的报文格式如图 4所示。
图4 LLS扩展后的 OSPF 报文格式图
LLS Data的具体的格式如图 5所示。
图5 LLS Data字段
LLS Data中的 TLV 可以用于进行不同的 OSPF扩展。例如为支持 GR,使用了类型为 1的 TLV, 即 Extended Option TLV(EO TLV)。下面我们讲一下 EO TLV 里两个重要字段:
图 6所示。如果当前路由器 具备 OOB能力,则在发送 Hello和 DD报文时将 LR(LSDB Resynchronization)进行置位;否则不对 LR进行置位。
图6 EO TLV LR位说明图
图7 EO TLV RS位说明图
当路由器通过 LLS 完成 OOB 能力协商,确认双方都具备 OOB 能力后,则表示可以在邻居关系和 网络拓扑稳定时进行LSDB同步,即进入OOB流程。这时需要在向邻居发送的DD报文中将Option 字段中的 R进行置位,R在 Option字段中的位置如图 8所示。
图8 DD报文
如图 9所示,假设 Router A和 Router B原来有稳定的 OSPF邻居关系,并且 Router A使能了 GR 能力,此时 Router A重启,将按照以下的流程进行路由信息交互:
图9 非 IETR标准 GR 同步过程
组网图:
图10 OSPF GR配置组网图
组网需求
Router A、Router B、Router C、Router D、Router E、Router F、Router G、Router H、 Router I、Router J、Router K、Router L运行 OSPF协议。
Router A、Router B与骨干网相连,属于骨干节点。
Router G、Router H、Router I、Router J、Router K、Router L是分支节点,通过核心节点 Router C、Router D、Router E与骨干节点相连,通过骨干节点连接到骨干网上。
使用 GR保证网络中的骨干节点和核心节点在出现协议重启时的转发业务不中断,避免出现不 必要的路由振荡。
骨干节点和核心节点作为 GR Restarter(同时缺省也作为 GR Helper),分支节点作为 GR Helper。这样当骨干节点发生主备切换或重启 OSPF进程时,核心节点可以作为 GR Helper 协助其进行 LSDB重同步,并且保持转发不中断;当核心节点发生主备切换或重启 OSPF进 程时,骨干节点和分支节点都可以作为 GR Helper协助其进行 LSDB重同步,并且保持转发不中断。
GR技术介绍-ielab_ie-lab网络实验室ccie认证之家的博客-CSDN博客
GR技术介绍 - 百度文库
GR技术介绍-新华三集团-H3C
oracle tlv,OSPF GR(Graceful Restart,平滑重启)技术_Well Honey的博客-CSDN博客
平滑重启_百度百科