ISIS知识点总结

更新时间:2024-01-28 16:23:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

ISIS术语表:

IS ---Router路由器 ES ---Host主机

DIS ---Designated Router (DR) 功能:在广播网络中创建和更新伪结点

DIS由LAN IIH报文选举,具备最高优先级的路由器会被当选。如果所有路由器优先级相同,则最高MAC地址者当选 SysID---类似OSPF中的Router ID PDU ---IP报文

LSP ---类似OSPF中的LSA用来描述链路状态 NSAP

---IP地址

NET ---Network Entity Title 网络实体标记,带有区域标志。 IIH ---OSPF中的Hello报文 PSNP CSNP

---OSPF的ACK报文或LSR报文 ---OSPF的DD报文

ISIS网络地址编码(重点):

NSAP由三个部分组成:区域地址,System ID和n-selector

1,区域地址 该部分长度是可变的。区域地址标识区域的路由域长度,并在路由域里固定。 2,System ID 长度为6个八位字节,在一个自治系统中值是唯一的。

3,N选择器 长度总是1个八位字节,用来指定上层协议。当N选择器设置成0时,用于IP网络。 NET---Network Entity Titles,是一个特殊的NSAP地址,其中n-selector部分为0 NET是OSI协议栈中网络设备本身的标识

IS-IS NET地址至少需要八个字节:一个字节的区域地址,六个字节的系统标识和一个字节的N 选择器,最多为20个字节。 举例:49.0001.aaaa.bbbb.cccc.00

三种地位的路由器:

Level-1路由器:

? 只与本区域的路由器形成邻居---与直连网段的路由器协商邻居时会查看:(1)区域是否一致、(2)level级别是否一致。

? 只参与本区域内的路由,只保留本区域的数据库信息---只保留本区域的level-1的lsdb,且该lsdb中只宣告使能了level-1级别的网段

? 通过与自己相连的L1/2路由器的ATT bit寻找与自己最近的L1/2路由器 ? 通过发布指向离自己最近的L1/2路由器的缺省路由,访问其他区域 Level-2路由器:

? 可以与其他区域的L2路由器形成邻居---与直连网段的路由器协商邻居时只查看是否level级别一致。 ? 参与骨干区的路由 ---level-2级别的lsdb除了宣告level-2层的网段,还宣告自己知晓的level-1层的网段。 ? 保存整个骨干区的路由信息 ? L1/2路由器同时可以参与L1路由

附:同一台路由器上,如果开启了ISIS多进程,那么也只能有一个进程被配置为level-2,第二个进程使能level-2时会

提示失败。 Level-1-2路由器:

? 可以和本区域的任何级别路由器形成邻居关系;可以和其它区域相邻的L2或L1/L2路由器形成邻居关系。如果是两个level-1-2则形成level-1-2邻居。 ? 可能有两个级别的链路状态数据库

? L1用来作为区域内路由;L2用来作为区域间路由

? 完成它所在的区域和骨干之间的路由信息的交换,将L1 LSDB中的路由信息转换到L2 LSDB中,以在骨干中传播,既承担L1的职责也承担L2的职责 ? 通常位于区域边界上

? 区域边界L1/L2路由器通过下发ATT bit,指导本区域的L1路由器选择离它最近的L1/L2路由器作为访问外部网络的出口,同时下发

一条默认路由。

? 一个路由器必须整个属于某个区域,如果是level-1-2路由器,则配置的NET中指示的区域就是level-1的区域;level-2级别的路由器则无所谓属于哪个区域了。

ISIS九种报文类型:

IS-IS Hello Packets (IIH) 定期发送,用来确定相邻的其它系统是否在运行IS-IS,以建立邻接关系,交换LSP,达到LSDB

同步

1,Level 1 LAN IS-IS Hello 2,Level 2 LAN IS-IS Hello 3,Point-to-point Hello

hello报文发送到组播MAC层地址:L1 IIH的组播地址为:0180-C200-0014;L2 IIH的组播地址为:0180-C200-0015 Link State Packets (LSP) 每个LSP( 含LSP分片) 都有一个自己的序列号;越大的表明越新。 Level 1 LSP:只用于本地区域,LSP报文描述了本路由器中所有的链路状态信息。 Level 2 LSP:包含IS-IS路由区域中所有可到达前缀的信息。

Complete Sequence Number packets (CSNP) CSNP用于在泛洪LSPDB时数据库同步,以范围来描述数据库LSDB中的所有

的LSPs

包括Level 1 CSNP 和 Level 2 CSNP ---在广播网络上,由DIS定期发送(缺省10秒的周期);在点到点串行链路上,只

在第一次形成邻接时发送CSNP来同步LSDB。 主要功能:

用于数据库同步,以范围来描述数据库LSDB中的所有的LSPs。包含地址范围,各LSP的简要信息:LSPid,SequeceNumber, checksum, remainning lifetime等重要信息。如果路由器的LSDB非常大,将分成多个CSNP发出。功能上类似于OSPF协议中的DD报文。

Partial Sequence Number Packets (PSNP) 包括Level 1 PSNP 和 Level 2 PSNP 主要功能:

在点到点链路上路由器用来相互交换作为Ack应答以确认收到某个LSP,功能上类似于OSPF协议中的LS Ack报文; 在广播网络中用来请求发送最新的LSP,当路由器从近邻接收到CSNP时,注意到某些LSP本地数据库中没有的(或自己的比较旧),路由器发送PSNP请求新的LSP。PSNP在头中利用LSPid,SequenceNumber,Remainning lifetime, LSP checksum来描述LSPs,仅仅包含有LSP报文的头部。功能上类似于OSPF协议中的LS Request报文。

DIS的选举规则:

DIS的选举原则:

? DIS由LAN IIH报文选举,具备最高优先级的路由器会被当选。如果所有路由器优先级相同,则最高MAC地址者当选 ? Level-1和Level-2的DIS是分别选举的,选举结果可能不是同一个IS

? DIS发送Hello数据包的时间间隔是普通路由器的1/3,这样可以保证DIS失效可以被快速检测到

? 与OSPF不同,它的选举是抢占式,可预见的;IS-IS中不存在备份DIS,当一个DIS不能工作时,直接选举另一个 建立DIS的目的:

在广播类型子网上,如果每个路由器都独立的和其他路由器(包括这个LAN以外的路由器)进行LSP报文的交换以同步各自的链接状态数据库(LSDB),将导致一个巨大的流量增长。为防止流量因为网络的增大而迅猛增加以及使得路由器保存的状态最少,IS-IS在广播类型子网上选出一个指定路由器(DIS),并由其产生一个伪节点(pseudonode)来和其他路由器进行交互。伪节点不是一个真实的路由器,但它要占用一个额外的LSP 项。伪节点LSP是由DIS创建的。 不同层次有不同层次的DIS,即L1级的广播网选举L1级的DIS,L2级的广播网选举L2级的DIS。 OSPF和IS-IS的区别:

1,在OSPF中,我们要选举DR和BDR。DR一旦当选,具有终生制,如果DR发生故障,BDR接替原有DR,同时重新选举BDR。而在IS-IS路由协议中,我们只需要选举DIS路由器,没有备份DIS的概念,DIS路由器不具终生制,一旦网络中新增加的路由器DIS的优先级高于当前的DIS的优先级,网络中将重新选举新的DIS,网络的稳定性较差。

2,在OSPF路由协议中普通路由器DR Other只需和DR、BDR建立邻接关系,DR Other路由器间只需建立邻居关系,相互间握手即可。而IS-IS路由协议中由DIS生成一个伪节点(pseudonode),由伪节点周期性的发送CSNP报文和其他节点进行数据库的同步。

DIS负责生成伪节点的LSP,伪节点和本网络中的所有路由器建立联系,并且不允许它们之间直接联系。

总结:IS-IS协议中,广播子网和NBMA网络在外部被看成一个伪节点。同一网络中的IS之间会根据各自优先权选出一个DIS。网络中的非DIS会向DIS报告自己的链路状态信息,而DIS 则代表整个网络中所有的IS报告链路状态信息。 DIS的作用:

1,在广播子网中创建并向所有路由器通告伪节点LSP 2,在LAN中通过每10秒周期性地发送CSNP来泛洪LSP 伪节点的作用:

1,伪节点是在广播多路访问网络中的一台虚拟路由器 2,伪节点由DIS创建

3,DIS在伪节点LSP中通告LAN中的所有邻居

4,LAN中的所有路由器在它们的LSP中通告自己与伪节点的连接性

ISIS区域的定义:

IS-IS将整个路由域分为若干个区域(Area),我们使用NET(Network Entity Title)中的Area ID部分来标识区域号。本区域的所有L1路由器必须有相同的Area ID,L2路由器则没有此限制。

Level-1的普通区域和Level-2的骨干区域间通过L1/L2路由器相连,L1/L2路由器完成把L1 LSDB的链路数据库信息转化为L2 LSDB的链路数据库信息传递到骨干区域中;同时通过ATT bit指导L1路由器如何转发流量到外部网络。

IS-IS路由协议与OSPF路由协议不同,一台路由器必须整体属于某个区域,而不像OSPF路由协议那样一台路由器的不同接口可以分别属于不同的区域。可以说IS-IS是以路由器来划分区域的,而OSPF以接口来划分区域的。

IS-IS路由协议采用分层的网络结构,只有同一层次的路由器才能建立邻居关系,L1路由器只有和本区域的L1路由建立邻居关系,L2路由器可以和其他区域的L2路由器形成邻居关系,L1/L2路由器既可以和本区域的L1路由器形成邻居关系,又可以和其他区域的L2路由器形成邻居关系。

ISIS邻居关系的建立:

IS-IS路由协议中只有同一层次的相邻路由器才可能成为邻接体。在不同类型的网络上,IS-IS的邻接建立的方式并不相同。 定义:通过互相发送hello报文的方式,告知对方自己的源地址,保持时间以及支持的网络层协议(比如IP) IS-IS路由协议通过IIH报文建立邻居关系时需要遵循的基本原则: (1) 只有同一层次的相邻路由器才有可能成为邻接体 (2) 对于Level-1路由器来说要求区域号一致

(3) 同一网段检查,此项为华为特性。由于IS-IS直接承载在数据链路层之上,理论上是不需要进行同一网段的检查。华为VRP提供了这一新功能,进行同一网段检查,保证邻居关系的正确建立。

(4) 与OSPF协议的不同之处:OSPF协议使用接口来划分区域,一台路由器可能同时属于多个区域,和多个区域的路由器形成邻居关系;而IS-IS协议规定路由器整体属于某个特定的区域,L1路由器只能建立Level-1的邻居关系,L2路由器只能建立Level-2的邻居关系。 针对点到点网络:

1,IS-IS路由协议中在点到点链路上,没有三次握手机制,即一方收到对方的hello,经合法性检查后,邻居就直接up了。OSPF需要三次握手才能建立邻居关系,可靠性更好。

2,在点到点链路上,缺省将进行ip地址在同一网段上的检查,ip地址不在同一网段将导致链路两端邻居建立失败。最近,VRP新做了一条命令,ignore-ppp-ip-check, 通过配置该命令可以取消ppp链路上的同一网段检查。该命令只对链路层为ppp协议的链路生效,缺省情况下该命令不生效。

针对广播型网络:(1)先通报自己,邻居为null;(2)收到对方的通报,邻居也为空;(3)发送通过,邻居为对方,然后邻居关系就建立了。

1,IS-IS的广播网网络类型采用组播地址发送HELLO报文。邻居双方都收到了HELLO报文,邻居关系就建立了。 2,IS-IS路由协议中广播链路上需要进行三次握手验证,邻居才可以UP。因此可靠性更好一些。在这一点上和OSPF协议

的广播类型一致。

ISIS协议数据报文PDU:

IS-IS路由协议和其他路由协议不同,它直接承载在数据链路层之上。Peer间通过传递协议数据包(PDU)来传递链路信息,完成链路数据库的同步。

PDU (Protocol Data Unit)的格式分为三大部分: 1,数据链路层头:OSI Family 固定为0XFEFE。

2,IS-IS固定报文头:第一字节为0X83;如果采用ES-IS协议,其固定报文头的第一个字节为0x82,采用CLNP协议,其固定报文头的第一个字节为0x81。

3,IS-IS TLVs:具体描述IS的链路状态。

ISIS链路状态协议单元LSP:

以下三个标志组合起来用来唯一标识一个LSP: 1,SourceID(产生该LSP的结点或伪结点的SysID);

2,Pseudonode ID:对普通LSP为0;对Pseudonode LSP为非0,这是区分一个LSP是否是伪结点产生的标志; 3,LSP number:分片号(产生的LSP大于LSP MTU将分片)

LSP id 例子:00c0.0040.1234.01--00, 其中: SourceID :00c0.0040.1234;Pseudonode ID :01( 表明为伪结点产生的);

分片号:0

如何区别一个LSP较新: LSP序列号:

1)每个LSP报文中都包含后一个LSP Sequence Number参数,来标识该LSP报文的序列号。当第一次产生该LSP报文时,序列号值为1,当发生变化重新生成LSP时,序列号会逐次增加,LSP序列号的范围:0-2^32。

2)当路由器接受到邻居发送过来的LSP时,会比较该LSP报文的序列号,如果序列号比本地数据库中的序列号更大,则表明该LSP报文更新,需要接收到本地的链路状态数据库中,LSP Sequence Number越大,LSP越新。 LSP生存时间:

IS-IS路由协议的LSP生存时间从1200秒(20分钟)倒计时到0,我们也可以设置最大为65535秒的生存时间;而OSPF路由

协议的生存时间从0秒正计时到3600(60分钟)。

收到较新版本的LSP时,将重置生存时间;当生存时间超时,该LSP将从网络中被清除。

IS-IS路由协议产生LSP的路由器会在15分钟时主动发起泛洪,进行LSP的更新,OSPF路由协议产生LSA的路由器会在30分钟时主动发起泛洪,更新LSA。 产生新的LSP的时机:

1,邻接关系建立起来或者down掉; 2,IS-IS相关接口up/down; 3,引入的IP路由发生变化; 4,区域间的IP路由发生变化; 5,接口被赋予了新的matric值; 6,周期性更新。

链路状态报文,含有一个路由器的所有信息,包括邻接、所连接的IP前缀、OSI终端系统、区域地址等

ISIS数据库交换过程:

进行数据库交换(flooding)的原因:可靠的flooding是IS-IS SPF路由计算算法的重要基础,而这两者是IS-IS作为链路状态路

由协议最重要的两个组成部分

1,所有的路由器都产生一个LSP(可能分片),放在自己的数据库中;

2,所有的LSP都要复制并发送到网络中的所有其他路由器,如果数据库不同步的话,路由计算就可能错误,可能引起路

由环路

收到邻居新的LSP的处理过程:

1,将新的LSP安装到自己的LSPDB数据库中标记为flooding 2,发送新的LSP到所有邻居 3,邻居再扩散到其它邻居

点到点链路数据库交换:一旦邻居关系建立后,邻居间相互发送LSP报文进行LSDB的同步

当路由器收到一个LSP报文时,会与自己LSDB中对应(对应产生此LSP的路由器)的已有LSP进行比较:

(1)如果收到的LSP比已有的序列号更大,则将这个新的LSP存入自己的LSDB中,再通过一个PSNP报文来确认此LSP,最后将这个新LSP再接着“泛洪”到所有其他邻居。

(2)如果收到的LSP和已有的具有相同的序列号,则直接通过一个PSNP报文确认此LSP。

(3)如果收到的LSP比已有的序列号更小,则通过一个PSNP报文确认此LSP,再发送给对方我们版本的LSP,然后等待对方给我一个PSNP报文作为回答。

广播网络数据库交换:由DIS周期性的发送CSNP

1,DIS产生的伪节点周期性的发送CSNP报文给本区域中的其他路由器,普通路由器接受到CSNP报文后,和本地链路状态数据库LSDB进行比较:

2,如果本地数据库中没有的或者有更新的LSP信息,则向DIS路由器发送PSNP报文请求需要的LSP。DIS路由器收到请求报文PSNP,根据要求发送LSP给相应的请求路由器。

3,如果收到的CSNP报文中的LSP信息比本地数据库中的要陈旧,则发送本地的LSP给DIS进行更新。 4,如果收到的CSNP报文中的LSP信息和本地数据库中信息一致,则不做任何操作。

ISIS进行路由引入,即把引入的路由信息加入到lsp的分片中发给邻居,然后邻居根据这些lsp进行引入路由的计算,并加入总路由表。特别注意,level-1级别的路由器缺省无法进行路由的引入。(因为缺省引入level-2级别)

ATT位的功能(重点):

ATT位的作用:当某个区域的L1/L2路由器和其它区域有连接关系的时候,它将在它产生的L1 LSP中设置ATT bit,来告诉本区域中的L1路由器,它有一个区域出口点;

本区域的L1路由器利用L1 LSPDB中的ATT bit来作为可能的区域出口点;如果有多个,选择一个离自己最近的设置了ATT bit的L1/L2路由器作为区域的缺省出口点,对于IP路由来说,具体表现就是L1路由安装一条指向该L1/L2路由的缺省路由0.0.0.0/0在路由表中。

注:即level-1路由器会找到置位的level-1-2路由器,并选择出到这些路由器cost最小的,然后生成一条默认路由指向该level-1-2路由器。

由于是离自己最近的边界路由器,并不一定是最优路径,所以可能存在次优路由,我们可以通过路由渗透的方法,强制把骨干区域的路由注入到Level-1区域内,保证路径选择的可靠性和最优性。即在level-1-2路由器上,指定将某些level-2的路由发布给level-1路由器。这样在level-1路由器就有此具体路由,可以在level-1内部进行选路。通过ATT bit实现。 ATT置位的条件:当level-2路由表中存在level-1路由表不存在的路由项时,会在相应的level-1-lsp中置位。 level-1-2路由器向level-1区域传递缺省路由的条件是:level-1-2路由器上至少存在一个和所连level-1区域号不一致的区域。如果所有路由器的net的区域部分配置都一样,那么就算路由器被配置为level-1-2路由器,也不会在ATT上置位。 涉及两种跨级别引入方式:

import-route isis level-1 into level-2 route-policy用来控制Level-1路由向Level-2区域的渗透,有利于路由管理。该命令需配置在与外部区域相连的Level-1-2路由器上。

缺省情况下,Level-1的路由信息(除了缺省路由的信息)都将渗透到Level-2区域中。增加route-policy等过滤条件,实现对部分不想引入level-2的路由的过滤。

import-route isis level-2 into level-1 route-policy命令用来控制IS-IS从Level-2向Level-1进行路由渗透,该命令需配置在与外部区域相连的Level-1-2路由器上。

缺省情况下,Level-2区域的路由信息不渗透到Level-1区域渗透。

LSP的解析(重点):

LSPID Seq Num Checksum Holdtime Length ATT/P/OL ------------------------------------------------------------------------------- 0110.0100.1001.00-00* 0x00000019 0x985f 527 137 0/0/0 SOURCE 0110.0100.1001.00 NLPID IPV4 AREA ADDR 49.0001 INTF ADDR 100.0.1.2 //该路由器上使能了isis的接口,不管是那个级别的 INTF ADDR 100.0.13.1 INTF ADDR 100.0.12.1 NBR ID 0010.0100.1010.00 COST: 10 //该路由器在该级别的邻居 NBR ID 0110.0100.1002.00 COST: 10

IP-Internal 100.0.1.0 255.255.255.252 COST: 10 //该路由器所了解的网段信息(自身的),对于level-1则只有使能了level-1的接口网段

IP-Internal 100.0.13.0 255.255.255.252 COST: 10 IP-Internal 100.0.24.0 255.255.255.252 COST: 20 IP-Internal 100.0.34.0 255.255.255.252 COST: 20 IP-Internal 100.0.12.0 255.255.255.252 COST: 10

注释:标红部分表示该LSDB描述的IP网段信息,附带开销信息,其中“IP-Internal”表示为narrow开销模式,“+IP-Extended”表示为wide开销模式,两种模式无法兼容(除非isis下开销模式配置为兼容模式)会导致对应的路由在本地无法生成。 如果引入了路由,则会产生一个lsp分片,把引入的路由信息或者缺省路由信息显示在里面。 level-2路由的计算过程:

1、首先isis路由器根据lsp指示的system-id计算出路由器的生成树,且每个路由器的lsp上都存在ip前缀。

2、isis路由器根据level-2级别的lsp所指示的level-2接口网段,先计算出可靠的level-2路由网段,可以看到下一跳;

3、然后根据邻居的lsp指示的ip前缀,计算出level-1路由网段,后面没有下一跳。(由于lsp中邻居的ip前缀是无法区分这是一个level-1还是level-2的,但是自己的lsp是可以区分出的,所以添加level-1的路由网段时是根据邻居的lsp生成的,相应的cost值需要进行累加)

ISIS快收敛(重点):

ISIS实现快收敛的四个主要途径: 1)i-SPF(增量SPF计算) 2)PRC(部分路由重计算) 3)LSP快速扩散

4)智能定时器(包括SPF智能定时器和LSP产生的智能定时器)

此外还可以通过BFD for ISIS来实现故障快速检测,优化ISIS网络类型来实现快速收敛的目的。 配置参考: isis 1

is-level level-2 cost-style wide

timer lsp-generation 1 50 50 level-2 // LSP产生智能定时器配置(两次产生同一LSP时使用该定时器) flash-flood 15 level-2 // 快速泛洪LSP(每接口每33ms)

bfd all-interfaces enable // 如果所有运行了ISIS的接口都需要BFD,则配置该命令使能BFD for ISIS network-entity 22.0000.0000.0001.00

timer spf 1 50 50 // SPF计算智能定时器(SPF计算延时智能定时器) traffic-eng level-2 // 全网要启用TE,故需要配置ISIS扩展 interface GigabitEthernet1/0/0 undo shutdown

ip address 22.1.3.1 255.255.255.0 isis enable 1

isis bfd enable //也可以接口单独启用BFD for ISIS interface GigabitEthernet1/0/1 undo shutdown

ip address 22.1.2.1 255.255.255.0

1、filter-policy export命令用来配置IS-IS对import引入的路由在向外发布时进行过滤。

2、filter-policy import命令用来设置IS-IS对接收的路由是否加入IP路由表进行过滤。该命令不影响LSA。

3、set-overload命令用来设置非伪节点LSP的过载标志位。虽然设置了过载标志位的LSP会在网络中扩散,但是在计算通过超载路由器的路由时不会被采用。即,对ME设备设置过载位后,其它ME设备在进行SPF计算时不会考虑这台ME设备。但该ME设备的直连路由不会被忽略。

ISIS的COST设置:

cost-style { narrow | wide | wide-compatible }

cost-style { compatible | narrow-compatible } [ relax-spf-limit ]

命令用来设置IS-IS路由器接收和发送路由的开销类型,缺省情况下,路由的开销类型为narrow。 relax-spf-limit 表示允许接收开销值大于1023的路由。否则做丢弃处理。 compatible 可以接收或发送开销类型为narrow和wide的路由。 narrow和wide的兼容原则是:

1、narrow和narrow-compatible类型缺省可以发送和接收narrow类型,而只有narrow-compatible可以接收wide类型; 2、wide和wide-compatible类型缺省可以发送和接收wide类型,而只有wide-compatible可以接收narrow类型; 结合以上两点,来计算这四者之间的兼容性。

缺省不使能接口自动cost,然后所有接口的cost值都是10。

本文来源:https://www.bwwdw.com/article/m3lw.html

Top