GR是Graceful Restart(平滑重启)的简称,是一种在协议重启时保证转发业务不中断的机制。

GR机制的核心在于:当某设备进行协议重启时,能够通知其周边设备在一定时间内将到该设备的邻居关系和路由保持稳定。在协议重启完毕后,周边设备协助其进行信息(包括支持GR的路由/MPLS相关协议所维护的各种拓扑、路由和会话信息)同步,在尽量短的时间内使该设备恢复到重启前的状态。在整个协议重启过程中不会产生路由振荡,报文转发路径也没有任何改变,整个系统可以不间断地转发数据。这个过程即称为平滑重启。

GR基本概念
配置了GR功能的设备称为“具备GR能力”的设备。具备GR能力的设备在协议重启时,能实现平滑重启,保证转发业务不中断;而不具备GR能力的设备在协议重启时,则只能遵循普通的重启过程。GR中涉及到的基本概念如下:

  1. GR Restarter
    GR重启路由器,指由管理员或故障触发而协议重启的设备,它必须具备GR能力。

  2. GR Helper
    即GR Restarter的邻居,能协助重启的GR Restarter保持路由关系的稳定,它也必须具备GR能力。

  3. GR Session
    GR会话,是GR Restarter和GR Helper之间的协商过程。包括协议重启通告,协议重启过程中的信息交互等。通过该会话,GR Restarter和GR Helper可以掌握彼此的GR能力。

  4. GR Time
    GR时间,是GR Restarter和GR Helper协商建立一个会话所用的时间。当某GR路由器发现邻居路由器处于down状态时,将在该时间内仍保留其发出的拓扑或路由信息。

GR通讯过程
在网络中配置一个设备为GR Restarter,该设备与其GR Helper必须支持GR或具备GR能力。这样当GR Restarter重启时,其GR Helper就可以感知它的重启进程。GR Restarter与GR Helper的作用是相互的。在某些情况下,GR Restarter与GR Helper的位置和作用可以互换。

OSPF GR技术:
一台路由器的OSPF协议重启之后,会发送Hello报文以发现邻居,而邻居路由器因为之前已经和该路由器建立有邻居关系,因此收到该Hello报文之后就会把该路由器从邻居列表中删除,断开与该路由器的邻居关系,并通知其他路由器。当该路由器与邻居路由器重新建立OSPF邻居关系后,会重新同步所有的路由信息数据,而周边路由器也需要重新进行路由计算,这样就会引起网络的路由振荡以及转发中断,对于一个大型网络,尤其是运营商网络,这些路由振荡和转发中断是不可容忍的。
如何能使协议重启而不引起网络振荡和转发中断呢?由于分布式设备的控制与转发是分开的,主控板负责整个设备的控制与管理,包括协议运行和路由计算,而接口板则负责数据转发。这样当发生主备倒换或协议重启时,数据转发仍然可以不中断进行。

同时,如果在重启期间周边设备能维持邻居关系不变并保持路由稳定,并且在设备重启后能协助设备进行路由信息同步,在尽量短的时间内使得本设备的路由信息恢复到重启前的状态,那么就可以保持网络拓扑稳定,不引起网络路由振荡。
为了实现这个目的,OSPF路由协议进行了扩展,即OSPF GR。通过OSPF GR,可以避免网络的路由振荡及转发中断。

技术优点:
保证协议重启或主备切换过程中转发业务不中断

减少协议重启或主备切换时路由振荡对全网的影响

减少单点故障,提高整个网络的可靠性

IETF标准OSPF GR实现机制
对OSPF协议做了如下扩展:增加一种9类Opaque LSA――Grace LSA,用以在GR Restarter重启时,通知周边邻居进入GR Helper流程。
LSA格式:

Grace Period TLV:Type取值为1,长度为4字节,表示邻居设备进入GR Helper处理流程的最长保持时间。如果超过这段时间GR Restarter还没有完成GR处理流程,则周边邻居不再担任GR Helper角色。该TLV是Grace LSA必须携带的。

Graceful Restart Reason TLV:Type取值为2,长度为1字节,告知邻居设备GR Restarter的重启原因。Value取值为0表示原因未知,取值为1表示软件重启,取值为2表示软件重新加载(升级),取值为3表示GR Restarter进行主备倒换。Grace LSA中必须携带该TLV。

IP Interface Address TLV:Type取值为3,长度为4字节,用来告知发送Grace LSA的接口的IP地址,在网络上需要用该IP地址来唯一标识一台重启设备。

假设Router A和Router B原来有稳定的OSPF邻居关系,并且Router A使能了GR能力,此时Router A重启,将按照以下的流程进行路由信息交互。

(1)Router A重启之后向Router B发送Grace LSA。

(2)Router B收到Router A发出的Grace LSA后,会维持与Router A的邻居关系不变。

(3)Router A 与Router B进行Hello报文与DD报文交互和LSDB同步。由于GR过程中不能生成LSA,所以在LSDB同步过程中,如果Router A从Router B收到自己产生的LSA,直接存储下来并置上Stale标志。

(4)完成LSDB的同步之后,Router A发送Grace LSA(Grace Period TLV的Type值为0)通知Router B结束GR流程。Router A进入正常OSPF流程,然后Router A重新生成LSA,并删除那些置了Stale标志而又没有被重新生成的LSA。

(5)Router A在恢复所有路由信息后重新进行路由计算,重新刷新FIB表。
非IETF标准OSPF GR实现机制
与IETF标准的OSPF GR相比,非IETF标准GR主要是通过下面两个能力扩展来支持OSPF GR:
Link-Local Signaling(LLS):OSPF本地链路通告扩展,用来标识当前路由器和其他路由器进行一些可选信息的通信。
Out-of-band LSDB Resynchronization(OOB):带外的LSDB重新同步,完成无邻接关系变化的LSDB重新同步。

GR技术介绍-ielab相关推荐

  1. RPR技术介绍-ielab

    RPR技术又称弹性分组环是一种新型的MAC(Media Access Control,媒体访问控制)协议,可运行于SONET(Synchronous Optical Network,光同步网络)/SD ...

  2. MPLS TE技术介绍

    MPLS TE技术介绍 本文转自:http://www.h3c.com/cn/d_200805/606208_30003_0.htm 如有侵权,请联系删除. 注:转载目的只是为了方便保存,为日后查找方 ...

  3. Tensorrt一些优化技术介绍

    Tensorrt一些优化技术介绍 Figure 1. A quantizable AveragePool layer (in blue) is fused with a DQ layer and a ...

  4. 线上分享会预告之三维模型检索技术介绍

    大家好.本周公众号将迎来第一位线上直播分享会,此次分享是一次接力,我们希望更多的加入我们一起分享.这里先预告一下,线上直播的时间在本周三晚上19::00,大家多多关注. 本周线上分享会预告 主讲题目: ...

  5. WMI技术介绍和应用——总结(完)

    断断续续的,历经三年将WMI这个主题给写完了.记得最开始时接触该技术,是因为传统获取CPU序列号的方法总是出错.于是接触了这种已经很老的技术.本着打破砂锅问到底的想法,我决定稍微研究一下,结果越来越深 ...

  6. WMI技术介绍和应用——Event Consumer Provider

    在<WMI技术介绍和应用--Event Provider>和<WMI技术介绍和应用--接收事件>中,我们展现了如何处理和事件相关的WMI知识.而<WMI技术介绍和应用-- ...

  7. WMI技术介绍和应用——Event Provider

    在<WMI技术介绍和应用--Instance/Method Provider>一文中,我们介绍了Instance和Method Provider的编写方法.本文我们将介绍更有意思的&quo ...

  8. WMI技术介绍和应用——Instance/Method Provider

    在<WMI技术介绍和应用--事件通知>一文中,我们提到了提供者(Provider)这个概念.我们还是要引入WMI的结构图(转载请指明出于breaksoftware的csdn博客) 我们在1 ...

  9. WMI技术介绍和应用——事件通知

    在<WMI技术介绍和应用--WMI概述>中,我们使用了下图介绍WMI构架(转载请指明出于breaksoftware的csdn博客) 我们之前介绍的使用WMI查询系统.硬件等信息的功能,是通 ...

最新文章

  1. 聊聊这两年学习slam啃过的书!
  2. oracle查询表的索引
  3. sulin Python3.6爬虫+Djiago2.0+Mysql --实例demo
  4. 数据结构之最小生成树
  5. bzoj3129 [Sdoi2013]方程 容斥+扩展lucas
  6. android IPC及原理简介
  7. java mime上传_JavaWeb中实现文件上传的方式有哪些?
  8. maven更换阿里云源
  9. Win7X64位Seleniume+Eclipse+Pydev环境搭建
  10. hyperledger fabric first network 只关闭停掉节点 不删除证书
  11. 华硕服务器 bios 内存 1333 显示 800,华硕服务器bios设置
  12. 免费思维导图软件分享
  13. (2)arduino读取电压相对值(模拟读取传感器数值)
  14. XP硬盘读写速度很慢的解决方法
  15. 店宝宝:电商拼购赛道正在路上
  16. 大整数乘法(分治法)
  17. python实验大纲_Python程序设计实验-教学大纲-段震
  18. Javascript 实现城市选择控件
  19. 西安华为OD面试经验(德科)
  20. FPGA 的基本结构(RAM/FPGA/SOC)

热门文章

  1. uniapp 获取当前时间(几点几分)
  2. 广州的房价是我遥不可及的梦,今天就用Python来做一个房价预测小工具。
  3. 电视剧《猎毒人》观后感
  4. 比尔·盖茨:现在比任何时候都需要新的救命工具,向CEPI再捐1.5亿美元加速疫苗研发...
  5. 多智能体深度强化学习综述与批判——Matthew E. Taylor
  6. VUE 项目中引入外部js文件(CND引入)
  7. 知识扫盲_常用电平标准(TTL、CMOS、LVTTL、LVCMOS、ECL、PECL、LVPECL、RS232)
  8. 微信红包后台系统可用性设计实践
  9. android 相机 app,android – Emulator的相机内置app buggy在Froyo / 2.2?
  10. 智慧社区网格化管理php,智慧社区建设:创建社区网格化管理