ISIS路由协议、邻居建立、报文详情

在这里插入图片描述

ISIS区域:
1.管理区域:area (基于路由器的管理区域)
2.算法区域:骨干区域和非骨干区域
骨干区域:由连续的L2或者L1/2路由器组成的逻辑区域
非骨干区域:由连续的L1或者L1/2路由器组成的逻辑区域注意:L1L2 L1/2中的L指的leve1(路由器级别)

ISIS在组网的时候,也要求非骨干区域和骨干区域相连,不支持vlink,没有补救措施

在这里插入图片描述
上图省略总结
L1路由器只支持建立L1级别的邻居,并且要求区域ID一致
L2路由器只支持建立L2级别邻居,不要求区域ID一致
L1/2路由器既支持L1邻居又支持L2邻居

路由器级别和链路级别的不同:

[R4-isis-1]is-level level							这个为路由器级别
[R1-GigabitEthernet0/0/0]isis circuit-level			这个为链路级别		默认为level1/2

L1路由器在广播链路上(P2P也一样)发hello包时,链路级别为L1,始终发L1的hello包
链路级别为L2时,也始终发L1的hello包
L2路由器在广播链路上(P2P也一样)发hello包时,链路级别为L1,始终发L2的hello包
链路级别为L2时,也始终发L2的hello包
L1/2路由器在广播链路上(P2P也一样)发hello包时,链路级别为L1,始终发L1的hello包
链路级别为L2时,始终发L2的hello包

每个ISIS 路由器根据路由器级别维护不同级别LSDB,总结如下:
L1级别的路由器只会维护L1的LSDB,L2级别的路由器只会维护L2的LSDB
L1/2级别的路由器既维护L1的LSDB又维护L2的LSDB

PPP HDLC 以太网都是数据链路层协议
不同协议封装的时候数据链路层的技术是不一样
只有在以太网的时候采用MAC地址

广播电路上L1的报文目的组播MAC是01:80:c2:00:00:14
广播电路上L2的报文目的组播MAC是01:80:c2:00:00:15
如果在广播链路上修改为P2P,目的mac是09:00:2b:00:00:05

在这里插入图片描述
在这里插入图片描述
抢占:在ospf中如果一个被选举为DR,除非重置ospf进程,否则不会改变,isis的dis则会改变

isis路由协议邻居建立(重要!)
DOWN:当路由器接口宣告进ISIS后,在没有收到其他路由器发送的hello报文时,处于down状态
INIT:当收到其他路由器发来的第一个HELLO报文,并且这个HELLO报文中不包含自身的neighbor信息,处于init状态
UP:当收到了其他路由器的HELLO报文,并且HELLO报文中包含了自己的接口MAC地址(neighbor信息),处于up状态

ISIS建立邻居直接就是邻接关系(isis没有邻居,只是习惯叫为邻居)
OSPF有两种稳定的邻居状态:2-way和FULL
ISIS的稳定邻居状态为UP(也就是邻接状态)
ISIS和OSPF区别:OSPF在建立到2-way状态,还得考虑是不是需要交互lsa,所以还要通过其他的邻居状态机制,最终到达FULL状态,需要指定状态机来同步数据库
ISIS建立UP状态后,没有指定状态机来同步数据库

DIS选举与邻居建立的关系:
1.邻居关系是前提:

在DIS选举之前,路由器之间必须首先建立邻居关系。这意味着它们能够相互识别并同意交换信息。

2.DIS选举基于邻居信息:

DIS的选举是基于已经建立邻居关系的路由器的属性,如优先级和接口标识。选举过程发生在形成完全的邻居关系之后。

3.DIS作为信息中心:

一旦DIS被选举出来,它将作为网络中所有其他路由器的中心点,负责收集和分发链路状态信息。(优化链路状态信息的传播,减少不必要的复制和流量,因为只有DIS会向网络中的所有其他路由器发送这些信息。)

4.DIS选举不影响邻居关系:

DIS的选举不会改变已经建立的邻居关系,但它会影响链路状态信息的传播方式。

5.DIS故障时的重新选举:

如果DIS发生故障,网络会进行重新选举,以选择一个新的DIS。这个过程可能会影响路由信息的传播,直到新的DIS开始运作。

[R1-isis-1]network-entity 49.0002.0000.0000.0001.00

area id + system id + sel组成
area id:1-13字节,可长可短,代表管理区域
system id:就像OSPF的router id,代表唯一一台ISIS路由器,如果冲突无法建立ISIS邻居
sel:固定为00,代表特殊的NSAP地址

isis报文(9种) 对比ospf种 hello dd lsr lsu lsack(5种)
hello报文(3种)

L1的HELLO报文:用于在广播电路类型建立L1级别的邻居关系
L2的HELLO报文:用于在广播电路类型建立L2级别的邻居关系
P2P的HELLO报文:用于点到点链路上建立ISIS邻居关系

lsp报文(2种)对应OSPF中的LSU报文

ISIS的LSP报文放的是lsp(link state pdu协议数据单元)(如同OSPF的LSU报文,LSU报文放的LSA链路状态通告)
L1级别的lsp报文:是用来描述L1的链路状态信息
L2级别的lsp报文:是用来描述L2的链路状态信息

snp报文–序列号报文(4种)

包含完全序列号报文csnp(就像OSPF的DD报文)
以及部分序列号报文psnp(就像OSPF的LSR和lsack)
L1或L2的csnp 用于描述L1或L2级别LSDB中所有LSP的摘要信息
L1的psnp
L2的psnp
PSNP在广播电路类型下只有请求作用没有确认作用
PSNP在P2P电路类型下既有请求作用又有确认作用

一、LSP(link state pdu)链路状态协议数据单元

1.从报文的角度来看,LSP可以分为L1级别的LSP和L2级别的LSP
2.从用途上区分:
实节点LSP:用来描述路由器自身的链路状态,类比OSPF的1类lsa
伪节点LSP:用来描述广播网络上的链路信息,类比OSPF的2类lsa

二、LSDB数据库

在运行OSPF时,如果没有宣告任何接口,那么LSDB为空,只有宣告了接口才会出现lsa
在运行ISIS时,只要配置了net地址(类比ospf中的router id),即使没有宣告任何接口,数据库也不会为空

在这里插入图片描述
isis中识别一个LSP,靠LSPID来识别,ospf中识别LSA就看 type、LS id、Adv rtr 三要素

三、一条LSPID分为三部分

1.system id系统ID:用产生这条LSP的路由器的system ID来填充
2.伪节点标识符(最后四个00中的前两个):如果取值为00则代表这是一条实节点LSP,如果取值为非00则代表这是一条伪节点lsp
如果想查看一台路由器都直连了哪些路由和邻居就需要查看该路由器的实节点
3.分片标识符(最后四个00中的后两个
代表该LSP是否被分片
0000.0000.0004.00-00
0000.0000.0004.00-01
0000.0000.0004.00-02
0000.0000.0004.00-03

四、判断一条LSP的新旧

1.seq序列号:越大越新,16进制
2.Holdtime剩余寿命:一条LSP出生时是1200s(一般下降为300s就重新更新了),每隔1s减1,直到减为0,这个LSP就会老化
如果一个路由器收到一个LSP中holdtime=0代表删除这个LSP
3.checksum校验和:越大越优,16进制

五、ISIS的更新技术

1.当链路发生变化的时候会触发更新
2.周期更新
isis路由器每隔900s周期向邻居更新自己的lsp

LSP的详细信息(对比ospf中dis ospf lsdb router 1.1.1.1)

在这里插入图片描述
SOURCE 0000.0000.0001.00
源节点系统,描述产生这条lsp路由器的system id+伪节点标识符

NLPID IPV4
描述网络层支持的协议版本

AREA ADDR 49.0001
区域ID:用来描述产生这条LSP的路由器所属的管理区域

INTF ADDR 14.1.1.4 (还有1.1.1.1)
产生这条lsp路由器宜告进ISIS所有接口IP地址

NBR ID 0000.0000.0002.00 COST:10
用于描述自己连接到一个P2P邻居,此时system id为邻居的system id

IP-Internal 14.1.1.0 255.255.255.0 COST:10
用于描述自己直连的路由信息(叶子信息),标记了自己到达该路由的销值

ISIS报文:

报文:is-is路由协议数据封装用的就是802.3,下面是LLC数据帧,下面是路由协议
ospf:路由协议数据封装用的就是e2,下面是用的是ip协议,之后才是ospf的封装。

ISIS报文分为三个部分:isis通用头部、isis专用报文头(hello)、可变长字段(TLV))

1.通用报文头

在这里插入图片描述
Intra Domain Routing Protocol Discriminator :ISIS(0x83)
域内路由协议鉴别符,0x83代表isis协议

PDU Header Length:27 头部长度,包含了通用头部和专用头部两部分
version:1 协议版本,目前isis只有版本1
system ID Length:6 报文长度
PDU Type:L2 HELLO(16) 描述PDU类型:Level 1级别,PDU Type值为15;Level 2:16;P2P Hello:PDU Type值为17。
Reserved:0x0 保留,设置为0 (0x00)。
Max.AREAs:(0==3):3 描述了可以配置的区域ID最大数量

2.专用报文头

在这里插入图片描述

circuit type:Level 2 only,reserved(0x00)
链路级别:用于描述这个路由器发出的报文能建立的邻居级别
system-ID {Sender of PDU}:0000.0000.0003 系统ID,相当于0SPF的Router id
Holding timer :30 邻居保持时间(死亡时间)
PDU length:1497 PDU的总长度

isis的hello报文只有一个Holding timer,没有hello时间(重要!)
Holding timer默认为30秒钟,因为本接口的hello时间默认为10s,Holding timer时间为hello时间的3倍
Holding timer的意义在于告知对方路由器在该时间内如果没有收到我给你的hello报文,就可以把我的邻居老化掉(无了)

ospf中hello报文的hello时间(10s)和dead时间(40s)
10秒:本接口每十秒钟发送一次HELLO时间
40秒:本接口在40中内没有收到对端(你给我)发来的hello报文将判断邻居(你)终端(无了)
ospf中的hello时间必须一致,但是isis中的hello报文时间可以不一致

3.可变长字段(TLV)

在这里插入图片描述

基于TLV编码,来携带各项属性 T代表type,L代表长度,V代表属性值
使用TLV报文来作为编码的路由协议,发送报文是只需要携带需要的属性即可,不需要属性可以不携带
ospfv2不同TLV编码,所有的字段都为固定字段,所以扩展性比较差
基于TLV编码为bgp eigrp
padding字段,补丁,是用来作为填充字段,保证mtu值为1500
MTU隐式确认
在邻居建立初期,会使用填充字段来填充报文,填充到接口默认mtu值。默认为1500,来实现隐式确认
在广播电路上建立完邻居后hello报文还会继续填充
在P2P电路上建立完邻居后hello报文不会继续填充

在这里插入图片描述
isis路由泄露中AR1为下图的AR5
1.骨干区域访问非骨干区域
在L1/2级别的路由器会将L1级别的LSDB中的叶子信息,作为自己L2级别的实节点的叶子信息添加到L2的数据库中
3.非骨干区域访问骨干区域
当L1/2路由器存在不同区域ID的L2级别的邻居,会把自己的L1级别的LSP中的att置位为1
att是骨干区域标识符
用于表示这个L1/2路由器和骨干区域直连,非骨干区域的路由器收到att=1的LSP时,会自动产生一条isis缺省路由,下一跳指向该L1/2路由器
如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值