国家 / 地区

IS-IS GR技术白皮书-6W100

手册下载

IS-IS GR技术白皮书

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Copyright © 2019 新华三技术有限公司 版权所有,保留一切权利。

非经本公司书面许可,任何单位和个人不得擅自摘抄、复制本文档内容的部分或全部,并不得以任何形式传播。

除新华三技术有限公司的商标外,本手册中出现的其它公司的商标、产品标识及商品名称,由各自权利人拥有。

本文中的内容为通用性技术信息,某些信息可能不适用于您所购买的产品。



概述

GRGraceful Restart,平滑重启)是一种在主备切换或协议重启时保证转发业务不中断的机制。其核心在于:设备进行协议重启时,能够通知其周边设备,使到该设备的邻居关系和路由在一定时间内保持稳定。在协议重启完毕后,周边设备协助其进行信息(包括支持GR的相关协议所维护的各种拓扑、路由和会话信息)同步,在尽量短的时间内恢复到重启前的状态。在协议重启过程中不会产生路由震荡,报文转发路径也没有任何改变,整个系统可以实现不间断运行。

IS-IS GR可以保证运行IS-IS协议的路由器在进行主备切换或IS-IS协议重启时,转发业务正常进行。

1.1  产生背景

一台路由器的IS-IS协议重启之后,会发送Hello报文以发现邻居,而邻居路由器因为之前已经和该路由器建立了邻居关系,因此收到该Hello报文之后就会把该路由器从邻居列表中删除,断开与该路由器的邻居关系,并通知其他路由器。当该路由器与邻居路由器重新建立IS-IS邻居关系后,会重新同步所有的路由信息数据,而周边路由器也需要重新进行路由计算,这样就会引起网络的路由震荡以及转发中断,这对于一个可靠性要求较高的网络来说是不可接受的。

如何能使协议重启而不引起网络震荡和转发中断呢?由于分布式设备的控制与转发是分开的,主控板负责整个设备的控制与管理,包括协议运行和路由计算,而接口板则负责数据转发。这样当发生主备倒换或协议重启时,数据转发仍然可以不中断进行。

同时,如果在重启期间周边设备能维持邻居关系不变并保持路由稳定,并且在设备重启后能协助设备进行路由信息同步,在尽量短的时间内使得本设备的路由信息恢复到重启前的状态,那么就可以保持网络拓扑稳定,不引起网络路由震荡。

为了实现这个目的,IETF针对IS-IS路由协议提出了增强协议,即IS-IS GR。通过此协议,可以避免网络的路由震荡及转发中断。

1.2  技术优点

·     保证协议重启或主备切换过程中转发业务不中断

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

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

IS-IS GR技术详细介绍

2.1  相关术语

IS-IS GR的基本术语:

·     GR Restarter:发生协议重启事件且具有GR能力的设备。

·     GR Helper:和GR Restarter具有邻居关系,协助完成GR流程的设备。

·     GR SessionIS-IS邻居建立时进行关于GR能力的协商,一般把GR能力协商过程称为GR Session。协商的内容包括双方是否都具备GR能力等。一旦GR能力协商通过,当协议重启时就可以进入GR流程。

说明: 说明

分布式设备可以充当GR RestarterGR Helper;而集中式设备只能充当GR Helper,协助GR Restarter完成GR流程。

 

2.2  Restart TLV

为了能够在GR Restarter重启时顺利通知GR HelperIS-IS GR增加了一个Type211Restart TLVLength根据TLV填写的具体情况而定,但必须在13ID Length的范围内,Value的具体内容如1所示。

图1 Restart TLV结构图

 

1. Flags

Flags记录了一些必要的状态标志位,长度为1字节,具体格式如2所示。

图2 Restart TLVFlags字段结构图

 

目前只使用了最后三位作为相应标志位,具体含义如下:

·     RR/RA

¡     RRRestart请求标志位,当RR位为1时表示该路由器刚刚发生了重启。

¡     RARestart确认标志位,当RA位为1时表示是对重启路由器的应答。

GR Restarter重启后,在每个接口上发的第一个Hello报文中将RR标志位置1,通知GR Helper本设备正在重启;当GR Helper收到GR Restarter发来带有RR标志位的Hello报文时,立即回复一个将RA标志位置1Hello报文作为对对方请求的确认。

·     SA

SA表示抑制邻接标志位,是一个可选项,其主要目的是为了避免出现路由黑洞。例如,在GR Restarter重启时,如果GR Helper将报文发送到GR Restarter来进行转发,将产生黑洞,造成严重的丢包现象。在这种情况下,GR Restarter发送的Hello报文中必须将SA位置1,而GR Helper接收到这种SA位被置1Hello报文后就不会将发送该Hello报文的GR Restarter放入LSP扩散出去,即GR Restarter将在网络上被屏蔽一段时间,所有设备都不会将报文送到GR Restarter上来进行转发,这样就可以有效地避免路由黑洞问题。

2. Remaining Time

Remaining Time表示邻居老化的剩余时间,即邻居设备进入GR Helper处理流程的最长保持时间。如果超出这个时间,则GR RestarterGR Helper的邻居关系结束。当GR Helper收到GR Restarter发送的带有RR标志位的Hello报文后,会立即回复一个将RA标志位置1Hello报文作为确认,在这个确认报文中,需要将对应邻居(GR Restarter)距离老化时间的剩余秒数填入Remaining Time字段。

3. Restarting Neighbor ID

Restarting Neighbor ID的内容是GR RestarterSystem ID。当GR Helper收到带有RR标志位的Hello报文时,将报文中的System ID字段值填入Hello确认报文的Restarting Neighbor ID字段中,并发送此确认报文。这样就严格指定了该Hello确认报文的目的设备。当多个GR Restarter同时收到该Hello确认报文时,比较该报文中的Restarting Neighbor ID与本设备的System ID,只有Restarting Neighbor ID与本设备的System ID相同时,GR Restarter才会处理收到的Hello确认报文。

2.3  定时器

IS-IS GR定义了T1T2T3三种定时器:

·     T1定时器类似于IS-IS协议中的IIH定时器,每个接口都有一个,它定义了发送带RR标志位的Hello报文的重传时间。当设备重启时在每一个接口上都会创建T1定时器,并周期性地发送带RR标志位的Hello报文,直到在对应接口上收到带RA标志位的Hello确认报文以及全部CSNP报文后,该接口上的T1定时器才会被取消。当接口上没有邻居或者没有支持GR特性的邻居时,该接口就一直无法收到带RA标志位的Hello确认报文,因此T1定时器就会永远得不到撤销。为了避免这种情况发生,IS-IS GR限制了T1定时器的最大超时次数,当T1定时器超时次数超过这个最大值时就自动撤销该T1定时器。

·     T2定时器定义了设备重启后LSDB同步的最大等待时间。每个LSDB数据库都有一个定时器,例如对于Level-1-2路由器来说,就需要有两个T2定时器,一个为Level-1 LSDB同步的最大等待时间,另外一个为Level-2 LSDB同步的最大等待时间。当某个LevelLSDB同步完成之后,相应LevelT2定时器就会被取消。如果T2定时器超时后LSDB还没有同步完成,则撤销T2定时器,GR失败。

·     T3定时器定义了设备重启过程的最大持续时间。整个IS-IS路由器只有一个T3定时器。T3定时器初始化为65535秒,但是在各个接口上收到带RA标志位的Hello确认报文后会根据这些报文中的Remaining Time的最小值来重新设定T3定时器的超时时间。如果T3定时器超时后LSDB同步还没有结束,T3定时器被撤销,GR失败。

2.4  IS-IS GR运行过程

下面以一个简单的组网模型来介绍IS-IS GR的运行过程。如3所示,Device ADevice B通过接口Interface AInterface B相连,两台路由器在接口Interface AInterface B都使能了IS-IS并正常运行。

图3 IS-IS组网图

 

假设Device ADevice B原来有稳定的IS-IS邻居关系,并且Device A使能了GR能力。Device A重启后,Device ADevice B将按照如4所示的流程进行路由信息交互。

图4 IS-IS GR协议流程图

 

具体工作流程如下:

(1)     Device AIS-IS协议被重新全局使能时启动T2T3定时器。当Device A的接口Interface A重新使能协议时,在接口Interface A上启动T1定时器,并且将接口Interface A上发出的Hello报文Restart TLVFlags字段的RR标志位置为1

(2)     Device B收到Device A发出的带有RR标志位的Hello报文后,保持Device A邻居状态不变,立即回复一个带有RA标志位的Hello报文。之后,Device B发送CSNP报文和LSP报文给Device A以协助其进行LSDB同步。

(3)     Device A在接口Interface A上收到了带有RA标志位的Hello报文接收到全部CSNP报文后就可以取消T1定时器。否则,Device A周期性发送带有RR标志位的Hello报文,直到收到带有RA标志位的Hello报文和全部CSNP报文或者T1定时器达到最大超时次数才取消该接口的T1定时器。

(4)     LSDB同步完成之后,Device A取消T2定时器。

(5)     当所有T2定时器都取消之后就可以取消T3定时器,GR流程结束,进入IS-IS的正常流程。此时需要在所有接口上启动IIH定时器,以后就周期性发送正常的Hello报文(Restart TLV中所有字段为0Hello报文)。

(6)     Device A在恢复所有路由信息后重新进行路由计算,重新刷新FIB表。

典型组网应用

5所示,Device ADevice K均运行IS-IS协议,分支节点Device FDevice K通过核心节点Device CDevice DDevice E与骨干节点Device ADevice B相连,通过骨干节点连接到骨干网上。骨干节点和核心节点作为GR Restarter(同时缺省也作为GR Helper),分支节点作为GR Helper。当骨干节点发生主备切换或重启IS-IS进程时,核心节点可以作为GR Helper协助其进行LSDB重同步,并且保持转发不中断;当核心节点发生主备切换或重启IS-IS进程时,骨干节点和分支节点都可以作为GR Helper协助其进行LSDB重同步,并且保持转发不中断。

图5 IS-IS GR典型应用组网图

 

参考文献

·     ISO 10589ISO IS-IS Routing Protocol

·     RFC 1195Use of OSI IS-IS for Routing in TCP/IP and Dual Environments

·     RFC 3847Restart Signaling for Intermediate System to Intermediate System (IS-IS)

联系我们 联系我们
联系我们
回到顶部 回到顶部