03、OSPFv3 GR
OSPFv3 GR
平滑重启GR(Graceful Restart)是一种用于保证当路由协议重启时数据正常转发并且不影响关键业务的技术。
GR技术属于高可靠性(HA,High Availability)技术的一种。HA是一整套综合技术,主要包括冗余容错、链路保证、节点故障修复及流量工程。GR是一种冗余容错技术,目前已经被广泛的使用在主备切换和系统升级方面,以保证关键业务的不间断转发。
在没有使用GR时,由于各种原因触发的主备切换,都会造成短时间的转发中断,并且在全网造成路由振荡。对于一个大型网络,尤其是运营商网络,这些路由振荡和业务中断是不可接受的。
GR技术保证了在重启过程中转发层面能够继续指导数据的转发,同时控制层面邻居关系的重建以及路由计算等动作不会影响转发层面的功能,从而避免了路由震荡引发的业务中断,提高了整网的可靠性。
基本概念
-
Grace-LSA
-
OSPFv3通过在链路上泛洪一种Grace-LSA来支持GR功能。
-
Grace-LSA用于在开始和退出GR时向邻居通告GR的时间、原因、接口实例ID等内容。
-
-
路由器在GR中的角色
-
Restarter:重启路由器;
-
Helper:协助重启路由器。
-
-
GR的实现方式
-
Planned-GR:指通过执行reset ospfv3 graceful-restart命令进行的协议平滑重启。这种方式在重启前,会给邻居先发送Grace-LSA。
-
Unplanned-GR:通过命令引起的主备倒换,或路由器故障(非命令)引起的掉电、死循环或异常复位都被认为是Unplanned GR。
与Planned-GR的区别在于,Unplanned-GR在主备倒换前不事先发送Grace-LSA,而是直接开始主备倒换,并在备板正常Up后发送Grace-LSA并进入GR过程。以后的步骤同Planned-GR。
-
GR过程
-
Restarter端:
-
对于Planned-GR,Restarter会首先向每个邻居发送一个Grace-LSA通知邻居GR的开始以及GR的周期、原因等。
对于Unplanned-GR,当备板正常Up后,马上发送一个Grace-LSA,通知邻居自己进入GR,包括GR的周期,原因等。
-
Restarter与邻居重新开始协商建立邻接关系。
-
Restarter与所有GR前邻居的邻接关系都达到Full状态后,
-
正常退出GR并重新计算路由;
-
更新主控板路由表和接口板FIB表,并删除失效的路由表项;
-
向Helper发送LSA年龄为3600秒的Grace-LSA通知Helper退出GR。
此时GR为成功执行。
-
-
如果在GR过程中出错,或GR定时器超时还有邻居没有达到Full状态,则GR失败退出,进行非GR的重启。这种情况下会导致报文丢失。
-
Helper端:
-
路由器收到Grace-LSA后,如果配置了允许支持邻居执行GR,则进入Helper模式。
-
Helper与Restarter继续保持邻接关系,状态不发生改变。
-
Helper如果继续收到包含不同GR周期的Grace-LSA,则只更新平滑重启的周期。
-
收到Restarter发送的Age为3600秒的表示GR成功的Grace-LSA后,正常退出GR。
-
如果GR过程出错,则退出Helper状态,重新进行路由计算,删除失效的路由。
有无GR技术的比较
无GR技术的主备倒换 |
有GR技术的主备倒换 |
---|---|
|
|