GR技术与NSR技术讲解

news/2024/7/24 5:30:15 标签: 网络, 运维

目录

GR基本概念

GR相关术语

GR的分类

导致设备GR的原因

OSPF GR

ISIS GR

NSR技术讲解


GR基本概念

GR(Graceful Restart )平滑重启,保证协议在重启/设备主备倒换过程中转发层面能够继续指导数据的转发,并保证控制层面的邻居建立和路由计算等不会影响转发层面的功能;被广泛应用于主备切换和系统升级方面,保证管家你业务的不间断转发

GR支持基于MPLS LDP、BGP 、ISIS、OSPF、OSPFv3等IPv6协议

GR相关术语

GR Restarter

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

可以通过配置支持完全GR或部分GR

GR Helper

GR Restarter的邻居

GR协助重启路由器,协助GR Restarter保持路由关系的稳定

可以通过配置支持有计划GR、无计划GR、通过策略有选择支持GR

GR Session

GR会话,在GR Restarter和GR Hepler之间进行协商,建立GR会话

包括协议重启通告于协议重启过程中的信息交互等

GR Time

GR时间,是GR Restarter和GR Hepler协商建立一个会话所用的时间

当Restarter路由器Down时,邻居路由器担任Helper角色,在该时间内保留其发出的拓扑

如果超出此时间,Restarter的设备还没有完成GR的处理流程,则Helper不再担任Helper角色,结束GR,R失败

该时间最大不超过1800s

注意:

1、一台设备可以同时充当GR Restarter和GR Helper

2、在网络中配置一个设备位GR Restarter时,该设备与其GR Helper必须支持GR或具备GR的能力,这样Helper才可以感知到Restarter的重启进程

3、GR Retarter与GR Helper的作用时相互的;即在某些情况下Restarter和Helper的位置和作用可以互换

GR的分类

完全GR(Totally GR)

当GR Restarter有一个邻居不支持GR功能时,整个设备直接退出GR

部分GR(Partly GR)

当GR Restarter有一个邻居不支持GR功能时,只是与此设备相连的接口退出GR

有计划GR(Planned GR)

表示GR Helper支持GR Restarter通过命令进入GR(设备重启或主备倒换)

非计划GR(Unplanned GR)

表示GR Helper支持GR Restarter因为故障进入GR

导致设备GR的原因

Unknown:                                             未知原因导致设备GR操作

Software restart:                                    通过命令行主动触发的GR操作

Software reload/upgrade:                     软件重启或设备升级导致的GR操作

Switch to redundant control processor:  异常主备倒换导致的GR操作


OSPF GR

OSPF通过新增9类LSA(Grace-LSA)来支持GR功能,用于在开始GR和退出GR时向邻居通告GR的周期、原因、接口地址等内容(9类LSA通过TLV的方式携带需要传递的内容)

9类LSA的TLV

TLV 1表示GR Timer时间

TLV 2告知邻居设备自己GR的原因(1:Unkown、2:Software reload、3:Software upgrade、4:主备倒换)

TLV 3告知发送Grace LSA的接口IP地址(唯一标识一台重启设备)

实现OSPF GR的方式

  1. 基于IETF标准,也就是交互9类LSA完成GR交互
  2. 基于非IETF标准,通过交互携带LLS和OOB扩展信息的OSPF报文来完成GR交互

OSPF GR过程(基于IETF标准)

开始主备倒换/重启

对于Planned GR

Restarter会先向每个邻居发送一个9类LSA,通知邻居 GR的周期、GR的原因等;然后Restarter开始主备倒换/重启

对于UnPlanned GR

不发送9类LSA,Restarter直接进行主备倒换/重启(由故障导致);

GR开始

主备倒换/重启完成后,立即发送一个9类LSA,通知邻居自己进入GR,包括GR的周期、原因等;

然后会再向邻居发送多个9类LSA(华为是连续发送5个),此时发送的9类LSA也是告知邻居使其进入GR状态,并刷新GR Time,主要是确保邻居收到该9类LSA,邻居会在GR期间保持与Restarter的邻居关系,让其它路由器感知不到Restarter的主备倒换/重启

GR过程(数据在此过程中正常转发)

GR退出

对于Restarter

Restarter在GR Time超时前重新建立好了邻居关系-GR成功

Restarter在GR Time超时前未建立好了邻居关系-GR失败

对于Helper

收到Restarter发送的Age为3600秒的9类LSA时与Restarter的邻居关系为Full状态-GR成功

在邻居关系超时前没有收到Restarter发送的Grace-LSA-GR失败


ISIS GR

Isis为了支持GR,定义了TLV 211(Restart TLV)和T1、T2、T3三个定时器

211 TLV参数(包含在 Hello报文的扩展部分)

SA:抑制发布邻接关系位

RA:重启应答位

RR:重启请求位

Remaining Time:GR Time

T1、T2、T3定时器

T1:如果Restarter已经发送RR置位的IIH(ISIS Hello)报文,如果T1超时还没有收到对应RA的IIH报文;则会重置T1定时器继续发送RR置位的IIH报文;当重复多次后就取消T1定时器(华为是3次)

T2:Restarter从重启开始到本Level所有设备的LSDB完成同步的最长时间

T3:Restarter完成GR所允许的最大时间;超时表示GR失败(初始位65535s,在收到邻居回应的RA报文中的Reaining time字段后,去最小值位T3定时器)

ISIS GR过程

主备倒换和重启ISIS进程触发的GR(FIB表保持不变)

设备重启触发的GR过程(FIB表会更新)


NSR技术讲解

NSR(Non-Stopping Routing)不间断路由技术,主要应用由主用主控板和备用主控板的设备上,确保当主用主控板发生故障时不影响邻居关系的一种可靠性技术

NSR与NSF的区别

NSF(不间断转发)

通过协议的GR机制来保证系统主备倒换时转发业务不中断

NSR(不间断路由)

通过协议的备份机制来保证系统主备倒换时控制平面和转发平面均不中断

注意事项

NSF和NSR是高可靠性的两个解决方案;即GR和NSR是互斥的

设备部署时只可以部署其中的一种

NSR相关术语

HA(High Availability):           高可用,在NSR中指的是主备控制板板之间的备份通道

AMB(Active Main Board):     主用控制板(承载控制层面)

SMB(Slave Main Board):       备用控制板(承载控制平面)

LPU(Line Interfce Process Unit):   接口板(承载转发平面)

NSR工作过程

1、批量备份

NSR使能后,主控板将路由信息和转发信息都批量备份到备用主控板上(此时无法进行主备倒换)

2、实时备份

当批量备份结束后,系统进入实时备份阶段

任何在控制平面和转发平面的改变都会从主同步到备

该阶段可以随时进行主备倒换

3、主备倒换

当NSR备份已经完成的时候,备用主控板通过硬件状态感知到主用主控板故障后,会成为新的主用主控板,并切换LPU的报文上送通道


http://www.niftyadmin.cn/n/178401.html

相关文章

uevent 学习总结

近期在调试一个usb 设备的插拔事件上报功能发现上层未能收到插拔事件。 核心代码就两行kobject_uevent(&dev->kobj, KOBJ_CHANGE); private static final String USB_STATE_IGNOR “DEVPATH/devices/platform/usb_xhci”; mUEventObserver new UsbUEventObserver(); m…

【数据库原理与应用 - 第二章】关系数据库基础

目录 一、关系的概念 1、域 2、笛卡尔积 3、关系 4、相关术语 (1)候选码与主码 (2)主属性与非主属性 二、关系数据模型 1、关系模型的数据结构 2、关系操作与完整性约束 (1)关系操作语言 &…

【Java】多态

多态多态多态的概念多态实现条件重写重写的规则哪些情况下不能重写重写(override)和重载(overload)的区别重写的设计原则向上转型和向下转型向上转型直接赋值方法传参方法返回优缺点向下转型绑定静态绑定动态绑定再看多态多态的优缺点优点缺陷多态 多态的概念 多态的概念&…

nodejs的后端框架egg,thinkjs,nestjs,nuxtjs,nextjs对比

1. Egg.js:优点:Egg.js是一个基于Koa的Node.js企业级应用开发框架,它提供了完整的开发规范和一套稳定性和安全性较高的架构体系,能够帮助开发者快速构建高可用、高性能的应用程序。同时,Egg.js还提供了很多自定义插件和…

给准备面试网络工程师岗位的应届生一些建议

你听完这个故事,应该会有所收获。最近有一个23届毕业的大学生和我聊天,他现在网络工程专业大四,因为今年6、7月份的时候毕业,所以现在面临找工作的问题。不管是现在找一份实习工作,还是毕业后找一份正式工作&#xff0…

如何去除WPS文档中出现很多圆点和箭头

1.因为文档中调试格式莫名的出现了很多圆点,导致自己的文档在给别人看的时候可能会出现一些误导,类似下图所示 2.下面我们看下WPS中如何快速全文去除 第一步:打开文字偏好设置 第二步:找到视图点击进去 第三步:取…

【Linux】认识协议

🎇Linux: 博客主页:一起去看日落吗分享博主的在Linux中学习到的知识和遇到的问题博主的能力有限,出现错误希望大家不吝赐教分享给大家一句我很喜欢的话: 看似不起波澜的日复一日,一定会在某一天让你看见坚持…

深度学习注意力机制(MHA)的训练(Eigen)

简介 本文使用Eigen3在Transformer模型中实现多头注意力的前向传播和反向传播。具体来说,这个eigenMHA (eigenDNN)【源码:https://github.com/jundaf2/eigenMHA】所对应了大致如下的cuDNN的api的功能: cudnnCreateAttnDescriptor()cudnnSet…