ISIS的高级特性:快速收敛 ,路由控制 ,其他特性。

一,IS-IS 快速收敛

1,IS-IS 快速收敛概述:IS-IS 快速收敛是为了提高路由的收敛速度而做的扩展特性,包括: I-SPF IncrementalSPF 增量最短路径优算法)、 PRC 、智能定时器、 LSP 快速扩同时, IS-IS 支持故障恢复快速收敛,例如通过 IS-IS Auto FRR 实现备份链路的快速切换,也可以与 BFD 联动实现对故障的快速感知。

2,I-SPF

!------I-SPF 的工作原理:当网络拓扑改变的时候,只对受影响的节点进行路由计算,而不是对全部节点重新进行路由计算,从而加快了路由的计算。

@----场景简绍:某网络运行 IS-IS ,网络收敛后,左图是以 R1 为根的最短路径树。此时 R1 访问节点 R5 时,通过 R1 下行链路的出接口, R3 上行链路接口的 IP 地址 到达该目的地。当R5下游新增设备 R6 , R6 开启 IS-IS ,即 IS-IS 网络内有新增网络节点。

#-----I-SPF 计算:R5 和 R6 全网泛洪 LSP ,包含新增邻居关系;R1 收到该 LSP 后会对变化的节点 R5 和 R6 进行 I-SPF 计算,生成新的最短路径树节点,而其他节点不变;因此 R1 访问节点 R5 和 R6 时,通过[R1 下行链路的出接口, R3 上行链路接口的 IP 地址]到达该目的地。

¥----I-SPF和PRC的区别和联系:当网络中新增了一个节点之后,设备首先会通过i-spf计算增的节点,然后通过PRC计算路由信息

2,LSP 快速扩散

!-----正常情况下,当 IS-IS 路由器收到其路由器发来的 LSP 时,如 LSP 本地 LSDB 应的 LSP 新,更新 LSDB 中的 LSP 用一个定时器定 LSDB 更新的 LSP

@----LSP 快速扩散特性改进了这种方式,使能了此特性的设备收到一个或多个较新的 LSP 时,在路由计算之前,先将小于指定数目的 LSP 扩散出去,加快 LSDB 的同步过程。这种方式在很大程度上可以提高整个网络的收敛速度。

#-----配置命令:

[Huawei-isis-1]flash-flood ?(默认是针对L1/2开启的)
  INTEGER<1-15>       //指定每个接口一次扩散LSP的最大数量。(整数形式,取值范围是1~15。缺省值是5。)
  level-1            //针对 Level-1
  level-2             //针对Level-2
  max-timer-interval  Set the maximum timer for flood the LSP (Milliseconds)  //指定LSP扩散的最大间隔时间。(整数形式,取值范围是10~50000,单位是毫秒。缺省值是10毫秒)

注意:用户可以指定每次扩散的 LSP 数量,这个数量是针对所有 IS-IS 接口的。如果需要发送的 LSP 的数量大于这个数,
则就发送 lsp-count 个 LSP 。如果配置了定时器,在路由计算之前如果这个定时器未超时,则立即扩散;否则在该定时
器超时后发送。

[Huawei-isis-1]flash-flood  10 level-2 max-timer-interval  100   //针对L2的LSP开启快速扩散特性,当收到LSP之后可以先扩散10条,其他的lsp等到计时器超时后进行扩散。

二,IS-IS 路由控制概述

1,等价路由:(当 IS-IS 网络中有多条冗余链路时,可能会出现多条等价路由,此时可以一下方式解决)

!-----【Huawei-isis-1】maximum load-balancing 3//配置 IS-IS 路由负载分担,配置在负载分担方式下的等价路由的最大数量。当组网中存在的等价路由数量大于 maximum load-balancing 命令配置的等价路由数量时,按照下面原则选取有效路由进行负载分担:

第一(下一跳权重小的),路由优先级:选取优先级小(优先级高)的路由进行负载分担。
第二(系统ID小的),下一跳设备的 System ID :如果路由的优先级相同,则比较下一跳设备的 System ID ,选取 System ID 小的路由进行负载分担。
第三(接口索引小的),本地设备出接口索引:如果路由优先级和下一跳设备的 System ID 都相同,则比较出接口的接口索引,选取接口索引较小的路由进行负载分担。

@----[Huawei-isis-1] nexthop ip-address weight 2000 //配置下一跳的权重值,其值越小表示优先级越高,可以等价理解为局部的cost值修改。但是权重是建立在等价路由之上的(在等价路由上来进行weight 的修改,该命令才会生效的),只有存在等价路由时,修改权重才会对路由产生影响。在非等价路由的情况下,使用weight无效。

¥------[Huawei-Ethernet0/0/1]isis  cost 23//修改出接口链路cost值,但是不建议改链路的cost值,因为会影响整条链路路由的cost值情况,杀伤力过大,不建议这样粗略的配置。

(如果:cost和权重值同时存在,则权重值的优先级大于cost的优先级,cost不一样,设置权重值是没有意义的

 2,缺省路由

(      复习:isis的域间访问

一,骨干区域如何访问非骨干区域

L1/2的路由器会把L1里的所有叶子信息,放到自身L2的LSP中,在由L1/2泛洪到远端。实际上就是L1 to L2的渗透泄露,这是默认会执行的

二,非骨干区域如何访问骨干区域

默认是通过缺省路由提供对骨干区域的访问:L1/2的路由器会产生ATT=1的L1的 LSP,然后L1的路由器收到ATT=1的L1 的LSP,将会产生缺省路由,下一跳为SPF树上去往该LSP产生者的最短路径。

三,所遇问题:次优路径

1、下一跳权重(当是等价路由时)
2、修改接口CosT(当不是等价路由时)
3、路由泄露 L2 TO L1(实验路由渗透的方式,可以实现远端的感知,因为渗透时cost值感知携带的)

      )

!-----通过设置 ATT 控制缺省路由生成(ATT bit的控制方式)

IS-IS 规定,如果 IS-IS Level-1-2 设备根据 LSDB 判断通过 Level-2 区域比 Level-1 区域能够到达更多的区域,该设备会在所发布的 Level-1 LSP 内将 ATT 位置位。对于收到 ATT 位置位的LSP 报文的 Level-1 设备,会生成一条目的地为发送该 LSP 的 Level-1-2 设备地址的缺省路由。以上是协议的默认原则,在实际应用中,可以根据需要对 ATT 比特位进行手动配置以更好地为网络服务。

路由泄露的方式:

  import-route isis level-1 into level-2(为默认以配置的命令,dis th没有回显的)
  import-route isis level-2 into level-1(默认渗透所有L2里的路由)

  import-route isis level-1 into level-2  filter-policy(针对L2区域里的特定路由进行渗透到L1里面去)

ATT bit的控制方式

  attached-bit advertise always //配置L1/2路由器总是产生ATT=1的LSP(也可以当不满足ATT置为为1的条件时,该命令也可以强制将其ATT置为为1)

  attached-bit advertise never//配置L1/2路由器不产生ATT=1的LSP(也可以实现满足ATT置为为1的条件,使其不让其置为为1)
  attached-bit avoid-learning //配置L1路由器不进行ATT bit的计算 

 @-----default-route-advertise ?的相关命令 

[Huawei-isis-1]default-route-advertise ?        //isis产生缺省路由时,自带always缺省路由属性
always     //总是强制去产生一条缺省路由(isis产生缺省路由时,自带缺省路由)
avoid-learning    //产生缺省的同时,不计算该进程下其他设备产生的缺省路由。多在isis多出口的环境里使用(就是ospf下的permit-calculate-other//产生缺省路由时,并且可以计算该进程下其他设备产生的缺省路由。)
cost //引入缺省路由时,修改其cost值。
level-1   //针对L1区域产生缺省路由
level-1-2  //针对L1/2区域产生缺省路由
level-2    //针对L2区域产生缺省路由
match  default   //当本地存在缺省的时候才可以产生缺省路由
route-policy // 引入缺省路由时,使用route-policy对缺省路由进行apply的属性的修改。

tag    //引入缺省路由时,修改tag(注意:在 isis当中wide度量才可以携带tag属性的,所以还需要配置,[ar2-isis-1]cost-style wide)

#----avoid-learning 命令的单独演示

[ar2-isis-1]default-route-advertise    //

[ar2-isis-1]cost-style wide//

[ar4-isis-1]default-route-advertise  //

[ar4-isis-1]cost-style wide//

[ar2]tracert 6.6.6.6//追踪ping 0.0.0.0 0区间的6.6.6.6

1 24.1.1.2 50 ms  40 ms  50 ms 

 2 24.1.1.1 30 ms  50 ms  40 ms 

 3 24.1.1.2 70 ms  60 ms  60 ms 

 4 24.1.1.1 30 ms  30 ms  40 ms 

结果:一直在ar2和ar4间出环

解决方法:

[ar2-isis-1]default-route-advertise avoid-learning //产生缺省路由的时候,ar2不计算其他设备产生的缺省,但是对方ar4仍会计算ar2产生的缺省路由。

 

 

 

 

 

 

 

3,LSP 分片

!----什么是LSP的 分片:当IS-IS 要发布的 PDU 中信息量太大时,IS-IS 路由器将会生成多个 LSP分片IS-IS 信息,用来携带更多的isis信息。I-S-IS LSP 分片由LSP ID 中的分片号 (LSP Number ) 字段进行标识,这个字段的长度是1Byte 。因此,一个ISIS 进程最多可产生 256个LSP 分片,携带的信息量有限。所以isis的LSP 分片id时用来表示不同的路由器产生的lsp的

@----LSP 分片的具体展示

0000.0000.0002.00-00

0000.0000.0002.00-01
0000.0000.0002.00-02
0000.0000.0002.00-03
0000.0000.0002.00-04

伪节点,伪节点标识符,分片ID---------------- 2的8次方*2  8bit 256取值 范围0-255,所以一共可以产生256个lsp分片.

$----LSP 分片扩展基本概念和专业术语:IS-IS 可以配置虚拟系统 ID 生成虚拟 IS-IS LSP 报文携带路由等信息。

1     初始系统 Originating System ):初始系统是实运行IS-IS的路由器允许一个单独 IS-IS 进程多个虚拟由器一发布 LSP ,而 Originating System” 的是“真 IS-IS 进程。
2     系统 ID Normal System-ID ):初始系统系统ID
3     虚拟系统 Virtual System ):系统ID系统,生成扩展 LSP 分片。这分片在其 LSP ID 携带系统 ID

4     附加系统ID(AdditionalSystem-D):虚拟系统的系统ID,由网络管理器统一分配。每个附加系统ID都允许生成256个扩展的LSP分片。

5     24 TLV IS Alias ID TLV ): LSP 分片携带 TLV 信息,用来表示初始系统虚拟系统之间的关系的

6    就是等价于:让ar1路由器初始系统)虚拟出多个ar1撇路由器(虚拟系统)。ar1路由器的系统id为初始系统系统ID,在给ar1撇路由器上也配置对应的系统id(虚拟系统的系统ID),这样每个路由器都可以产生255个lsp分片了,当ar1顶不住时,ar1撇来承担lsp的转发。

总结:使能分片扩展功能之后,如果存在由于报文装满而丢失的信息,系统会提醒重启 IS-IS 。重启之后,初始系统会尽最大能力装载路由信息装不下的信息将放入虚拟系统的 LSP 中发送出去并通过 24 号 TLV 来告知其他路由器此虚拟系统和自己的关系

%----LSP 分片扩展工作原理

!----在 IS-IS 中,每个系统 ID 都标识一个系统,每个系统都最多可生成 256 个 LSP 分片。通过增加附加系统 ID ,可以最多配置 50 个虚拟系统,从而使得 IS-IS 进程最多可生成 13056 个 LSP 分片

@----IS-IS路由器可以在两种模式下运行LSP分片扩展特性

1    Mode-1:用于网络中的部分路由器不支持 LSP 分片扩展特性的情况

由于ar2不支持分片扩展功能,使用tlv24去描述用来表示初始系统虚拟系统之间的关系是描述不了的,所以ar2没有办法去识别TLV24的。

如图:  R1 将一部分路由信息放入 R1-1 和 R1-2 的 LSP 报文中向外发送。R2 收到 R1、 R1-1 和 R1-2 的报文时(收到三个设备发的lsp),认为对端有三台独立的路由器,并进行正常的路由计算。同时 设置R1 到R1-1 和 R1-2 的开销都是 0,所以 R2 到 R1 的路由开销值与R2 到 R1-1 和 R1-2 的路由开销值都相等的。

 

2    Mode-2:用于网终中所有路由器都支持 LSP 分片扩展特性的情况。

如图: R1 将一部分路由信息放入 R1-1 和 R1-2 的 LSP 报文中向外发送。当 R2 收到 R1-1 和 R1-2的LSP 时,通过 24 号TLV 知道它们的(R1-1 和 R1-2)初始系统是 R1(在TLV24里面会有初始系统和虚拟系统的id),则把 R1-1 和 R1-2 所发布的信息都视为 R1 的信息。

 

%----lsp分片的配置命令 (但是对该所扩展lsp抓包分析只有TLV24字段,没有详细的解析了.)

[ar1-isis-1]lsp-fragments-extend ? //配置lsp的分片扩展
  level-1        //对L1来进行lsp的分片扩展
  level-1-2    //对L1-2来进行 lsp的分片扩展
  level-2        //对L2来进行 lsp的分片扩展
  mode-1      //在默认级别的情况下配置mode-1   
  mode-2     //在默认级别的情况下配置mode-2 

1    [ar1-isis-1]lsp-fragments-extend  level-1 mode-2 //针对L1配置lsp的分片扩展功能模式 mode-2

缺省情况下,设备使能 IS-IS 进程的 LSP 分片扩展能。配置 LSP 分片扩展时,如 mode level 则默认 mode-1 level-1-2

2    [ar1-isis-1]virtual-system 0000.0000.1111 //配置一个虚拟系统的system id(可以配置多个,分别对应的是多个虚拟系统

缺省情况下,设备没有配置虚拟系统。为了使设备生成扩展 LSP 分片,应至少配置一个虚拟系统的系统 ID 。这个虚拟系统的系统 ID 在整个路由域中必须唯一。一个 IS-IS 进程最多可配置 50 个虚拟系统的 System ID 

3    注意:以上两条命令是配合使用的,只有使能了 LSP 分片扩展,并用 reset isis all 命令重启了 IS-IS 进程后,配置的虚拟系统 ID 才会生效。

 

 

 


       

 

posted @ 2023-10-17 21:30  iaaaa  阅读(33)  评论(0编辑  收藏  举报