IS-IS高级特性

本文详细介绍了IS-IS协议的高级特性,包括快速收敛的I-SPF和LSP快速扩散机制,如何进行路由控制如等价路由和缺省路由的配置,以及IS-IS的多实例和多进程特性。此外,还深入探讨了LSP分片的概念和配置,以及IS-IS的Graceful Restart(GR)功能,确保网络在故障或重启时的数据不间断转发。
摘要由CSDN通过智能技术生成

1. 快速收敛

(1)概述:

    扩展特性:I-SPF、PRC、智能定时器、LSP快速扩散
    故障恢复:FRR、与BFD联动

(2)I-SPF

    工作原理:当网络拓扑改变的时候,只对受影响的节点进行路由计算,而不是对全部节点重新进行路由计算,从而加快了路由的计算。
    使用SPF算法进行路由计算:
          当网络拓扑中有一个节点发生变化时,SPF算法需要重新计算网络中的所有节点,计算时间长,占用过多的CPU资源,影响整个网络的收敛速度。
    I-SPF改进了SPF算法,除了第一次SPF计算时需要计算全部节点外,之后每次都通过I-SPF计算受到影响的节点,而最后生成的最短路径树与原来的算法所计算的结果相同,大大降低了CPU的占用率,提高了网络收敛速度。
    在IS-IS网络中,I-SPF和PRC结合使用。
          如果I-SPF计算后的最短路径树改变,PRC会只处理那个变化的节点上的所有叶子(路由)。
          如果经过I-SPF计算后的最短路径树并没有变化,则PRC只处理变化的叶子信息。比如一个节点使能一个IS-IS接口,则整个网络拓扑的最短路径树是不变的,这时PRC只更新这个节点的接口路由,从而节省CPU占用率。

(3)LSP快速扩散

    当设备收到一个或多个较新的LSP时,在路由计算之前,先将小于指定数目的LSP扩散出去,加快LSDB的同步过程。
    配置LSP快速扩散
          [Huawei-isis-1] flash-flood [ lsp-count | max-timer-interval interval | [ level-1 | level-2 ] ]

2. 路由控制

(1)路由控制包括:

    调整IS-IS的优先级
    调整IS-IS的接口开销
    设置等价路由
    IS-IS路由渗透
    通告缺省路由
    引入外部路由
    Filter-Policy

(2)等价路由

    两种方式:
          配置负载分担。流量会被均匀的分配到每条链路上。
          配置等价路由优先级。针对等价路由中的每一条路由,明确指定其优先级,优先级高的路由将被优选,优先级低的路由可以作为备用链路。
    配置命令:
          命令:[Huawei-isis-1] maximum load-balancing number
              number:指定在负载分担方式下等价路由的最大数量。不同设备型号取值不同。
          命令:[Huawei-isis-1] nexthop ip-address weight value
              ip-address:指定下一跳的IP地址。点分十进制格式。
              weight value:指定下一跳权重。value越小则优先级越高。value是整数形式,取值范围是1~254。
    配置举例:(ISIS_ECMP_Base)

(3)缺省路由

    3种方式控制缺省路由的生成和发布。
          在Level-1-2设备上,控制其产生的Level-1 LSP中ATT位的置位情况。
          在Level-1设备上,通过配置使其即使收到ATT位置位的Level-1 LSP也不会自动产生缺省路由。
          在IS-IS中发布缺省路由。
    通过设置ATT位控制缺省路由生成
       设置IS-IS LSP报文的ATT比特位置位规则(Level-1-2设备)
          [Huawei-isis-1] attached-bit advertise { always | never }
       控制Level-1设备不因为ATT位下发缺省路由到路由表(Level-1设备)
          [Huawei-isis-1] attached-bit avoid-learning
    IS-IS发布缺省路由
       在具有外部路由的边界设备上配置IS-IS发布缺省路由可以使该设备在IS-IS路由域内发布一条0.0.0.0/0的缺省路由。在执行此配置后,IS-IS域内的其他设备在转发流量时,将所有去往外部路由域的流量通过该设备去往外部路由域。
    两种方式:
       在边界设备上配置IS-IS设备向IS-IS域发布缺省路由。该方式较为简单,不需要学习外部路由。
       在边界设备上将其他路由域的路由引入到IS-IS中。
    配置运行IS-IS的设备生成缺省路由
       [Huawei-isis-1] default-route-advertise [ always | match default | route-policy route-policy-name ] [ cost cost | tag tag | [ level-1 | level-1-2 | level-2 ] ] [ avoid-learning ]
    缺省路由配置举例(OSPF_ISIS_Default)

3. 其它特性

(1)多实例和多进程

    IS-IS多实例是指在同一台路由器上,可以配置多个VPN实例与多个IS-IS进程相关联。
    IS-IS多进程指在同一个VPN下(或者同在公网下)可以创建多个IS-IS进程,每个进程之间互不影响,彼此独立。不同进程之间的路由交互相当于不同路由协议之间的路由交互。
    IS-IS多实例和多进程的典型应用是在VPN场景。

(2)LSP分片

1)分片

当IS-IS要发布的PDU中信息量太大时,IS-IS路由器将会生成多个LSP分片

2)LSP分片扩展基本概念:

  初始系统(Originating System):初始系统是实际运行IS-IS的路由器。
  系统ID(Normal System-ID):初始系统的系统ID。
  虚拟系统(Virtual System):由附加系统ID标识的系统,生成扩展LSP分片。
  附加系统ID(Additional System-ID):虚拟系统的系统ID,由网络管理器统一分配。每个附加系统ID都允许生成256个扩展的LSP分片。
  24号TLV(IS Alias ID TLV):LSP分片携带该TLV信息,用来表示初始系统与虚拟系统的关系。
    使能分片扩展功能之后,如果存在由于报文装满而丢失的信息,系统会提醒重启IS-IS。

3)工作原理:

       Mode-1工作原理:
           虚拟系统参与路由SPF计算,初始系统发布的LSP中携带了到每个虚拟系统的链路信息。
           类似地,虚拟系统发布的LSP也包含到初始系统的链路信息。
           这样,在网络中虚拟系统看起来与初始系统相连的真实路由器是一样的。
           这种方式是为了兼容不支持分片扩展的老版本所做的一个过渡模式。在老版本中,IS-IS无法识别24号TLV,所以虚拟系统的LSP必须表现的像一个普通IS-IS发出的报文。
       注意事项:
           虚拟系统的LSP中包含和原LSP中相同的区域地址和过载标志位。如果还有其它特性的TLV,也必须保持一致。
           虚拟系统的邻居信息指向初始系统,metric为最大值减1;初始系统的邻居信息指向虚拟系统,metric必须为0。这样就保证了其它路由器在进行路由计算的时候,虚拟系统一定会成为初始系统的下游节点。
       Mode-2工作原理:
           虚拟系统不参与路由SPF计算,网络中所有路由器都知道虚拟系统生成的LSP实际属于初始系统。
           在该模式下工作的IS-IS,可以识别24号TLV的内容,并作为计算树和路由的依据。
       注意:无论在哪种方式下,初始系统和虚拟系统的LSP零分片中,都必须包含IS Alias ID TLV来表示初始系统是谁。

4)基本配置命令:

       使能IS-IS进程的LSP分片扩展
           命令:[Huawei-isis-1] lsp-fragments-extend [ [ level-1 | level-2 | level-1-2 ] | [ mode-1 | mode-2 ] ] 
               level-1:指定在Level-1级别使能分片扩展。
               level-2:指定在Level-2级别使能分片扩展。
               level-1-2:指定在Level-1-2级别使能分片扩展。
               mode-1:该模式可以兼容以前老版本不支持LSP分片扩展特性的情况。
               mode-2:该模式要求所有路由器都支持LSP分片扩展特性。
       配置一个虚拟系统
           命令:[Huawei-isis-1] virtual-system virtual-system-id 
               virtual-system-id:指定IS-IS进程的虚拟系统ID。长度是6字节(48比特),格式是XXXX.XXXX.XXXX。

(3)IS-IS GR

1)概念

IS-IS GR是一种支持GR能力的高可靠性技术,可以实现数据的不间断转发。

2)为了实现GR,IS-IS引入211号TLV(Restart TLV)和T1、T2、T3三个定时器。

211号TLV:
   Type:1 Byte,TLV的类型。值为211表示是Restart TLV。
   Length:1 Byte,TLV值的长度。
   SA:1 bit,抑制发布邻接关系位。用于发生Starting的设备请求邻居抑制与自己相关的邻居关系的广播,以避免路由黑洞。
   RA:1 bit,重启应答位。设备发送的RA置位的Hello报文用于通告邻居确认收到了RR置位的报文。
   RR:1 bit,重启请求位。设备发送的RR置位的Hello报文用于通告邻居自己发生Restarting/Starting,
   		请求邻居保留当前的IS-IS邻接关系并返回CSNP报文。
   Remaining Time:2 Byte,邻居保持邻接关系不重置的时间,单位是秒。当RA置位时,这个值是必需的。
定时器
   T1定时器:如果GR Restarter已发送RR置位的IIH报文,但直到T1定时器超时还没有收到GR Helper的包含Restart TLV且RA置位的IIH报文的确认消息时,
  		  会重置T1定时器并继续发送包含Restart TLV的IIH报文。当收到确认报文或者T1定时器已超时3次时,取消T1定时器。
  		  T1定时器缺省设置为3秒。(Level-1-2,每个接口维护一个)
   T2定时器:GR Restarter从重启开始到本Level所有设备LSDB完成同步的时间。
		   T2定时器是系统等待各层LSDB同步的最长时间,一般情况下为60秒。(Level-1和Level-2各维护一个)
   T3定时器:GR Restarter成功完成GR所允许的最大时间。
  		   T3定时器的初始值为65535秒。T3定时器超时表示GR失败。(整个系统维护一个T3)

3)IS-IS GR的过程——Restarting

主备倒换和重启IS-IS进程触发的GR过程称为Restarting,FIB表保持不变。
GR Restarter进行协议重启后,GR Restarter进行如下操作:
  启动T1、T2和T3定时器。
  从所有接口发送包含Restart TLV的IIH报文,其中RR置位,RA和SA位清除。
  GR Helper收到IIH报文以后,进行如下操作:
  GR Helper维持邻居关系,刷新当前的Holdtime。
  回送一个包含Restart TLV的IIH报文(RR清除,RA置位,Remaining time是从现在到Holdtime超时的时间间隔)。
  发送CSNP报文和所有LSP报文给GR Restarter。
  GR Restarter接收到邻居的IIH回应报文(RR=0、RA=1),做如下处理:
     把T3的当前值和报文中Remaining time比较,取其中较小者作为T3的值。
     在接口收到确认报文和CSNP报文之后,取消该接口的T1定时器。
     如果该接口没有收到确认报文和CSNP报文,T1会不停地重置,重发含Restart TLV的IIH报文。
     如果T1超时次数超过阈值,GR Restarter强制取消T1定时器,启动正常的IS-IS处理流程。
     当GR Restarter所有接口上的T1定时器都取消,CSNP列表清空并且收集全所有的LSP报文后,
     可以认为和所有的邻居都完成了同步,取消T2定时器。
     T2定时器被取消,表示本Level的LSDB已经同步。
          如果是单Level系统,则直接触发SPF计算。
          如果是Level-1-2系统,此时判断另一个Level的T2定时器是否也取消。
          如果两个Level的T2定时器都被取消,那么触发SPF计算,否则等待另一个Level的T2定时器超时。
          各层的T2定时器都取消后,GR Restarter取消T3定时器,更新FIB表。
      GR Restarter可以重新生成各层的LSP并泛洪,在同步过程中收到的自己重启前生成的LSP此时也可以被删除。
      至此,GR Restarter的IS-IS Restarting过程结束。

4)IS-IS GR的过程——Starting

 设备重启触发的GR过程称为Starting,进行FIB表更新。
 GR Restarter Starting后,进行如下操作:
      为每层LSDB的同步启动T2定时器。
      从各个接口发送携带Restart TLV的IIH报文,其中RR位清除,SA位置位。
  邻居收到携带Restart TLV的IIH报文,根据设备是否支持GR,进行如下处理:
      支持GR:重新初始化邻接关系。
      不支持GR:邻居忽略Restart TLV,重置和GR Restarter之间的邻接关系。
  邻接关系重新初始化之后,在每个接口上GR Restarter都和邻居重建邻接关系。当有一个邻接关系到达Up状态后,GR Restarter为该接口启动T1定时器。
  在T1定时器超时之后,GR Restarter发送RR置位、SA置位的IIH报文。
  邻居收到RR置位和SA置位的IIH报文后,发送一个RR清除、RA置位的IIH报文作为确认报文,并发送CSNP报文。
  GR Restarter收到邻居的IIH确认报文和CSNP报文以后,取消T1定时器。
  如果没有收到IIH报文或者CSNP报文,就不停重置T1定时器,重发RR置位、SA置位的IIH报文。
  如果T1超时次数超过阈值,GR Restarter强制取消T1定时器,进入正常的IS-IS处理流程完成LSDB同步。
  GR Restarter收到Helper端的CSNP以后,开始同步LSDB。
  本Level的LSDB同步完成后,GR Restarter取消T2定时器。
  所有的T2定时器都取消以后,启动SPF计算,重新生成LSP,并泛洪。
  至此,GR Restarter的IS-IS Starting过程完成。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值