IS-IS邻接关系
一、握手报文
Route的接口一旦启动IS-IS进程,就会发出Hello报文,用以发现邻居并形成邻接关系。
在LAN(广播网络)和 P2P(点对点网络)中形成邻接关系的过程稍有不同,使用的Hello报文也有些区别,下面是三种IIH:
- 点到点IIH:用于点到点网络;
- L1 LAN IIH:用于广播网络Level-1邻接;
- L2 LAN IIH:用于广播网络Level-2邻接。
LAN Hello 报文
字段解释:
- Circuit Type(接口类型):标识发送端接口的层次。
- System-ID(系统ID):标识发送端路由器的系统ID。
- Holding Timer(保持计时器):表示发送端路由器宣告邻接关系失效的超时时间,默认是发送Hello间隔时间的3倍。
- PDU Length(报文长度):表示整个IS-IS报文的长度。
- Priotity(优先级):表示发送端接口的优先级,用来在LAN中选举DIS,默认值=64。
- System-ID {DIS}:标识了发送端接口对应的链路上的DIS的系统ID。
- Area Address(区域地址):标识了发送端路由器的区域,使用类型1的TLV。
- IS Neighbor(邻居列表):标识了发送端路由器的邻居,使用类型6的TLV。
- IP Interface Address (es)(接口IP地址):标识了发送端路由器所有已经启动了IS-IS 进程的接口IP地址,使用类型为132的 TLV。
- Protocols Supported(支持的协议):表示发送端路由器所支持的网络层协议,使用类型129的 TLV。
- Restart Signaling(重启信令):表示发送端路由器是否支持GR。
- Multi Topology(多拓扑):表示发送端路由器是否支持多拓扑。
- Padding(填充):填充字段,用于将Hello包填充至MTU大小,使用类型8的TLV。
二、领接关系的建立
1、从路由器层次和区域ID上考虑,要建立邻接关系必须满足以下条件:
- 两台L1路由器必须在同一区域才能建立邻接关系。
- 两台L2路由器建立L2邻接关系不要求在同一区域。
- 一台L1路由器和一台L1/2路由器在相同区域时才能形成L1邻接关系。
- 一台L2路由器和一台L1/2路由器不管是同区域还是不同区域,都能形成L2邻接关系。
- 两台L1/2路由器,同区域内可形成L1和L2邻接关系,不同区域只能形成L2邻接关系。
2、从其他因素考虑,有以下条件需要满足:
- 链路两端的IS-IS接口的网络类型必须一样。
- 华为还要求链路两端的P地址位于同一个子网。
- IS-IS要求整个域内路由器使用的System-Id长度必须一致。
- 两台路由器使用的最大区域地址数要相同,华为默认支持最大区域地址数是3。
- 如果配置了认证,要求两台路由器的认证信息要一致(认证类型和密钥信息)。
- 要求链路两端的接口MTU值要一致。
广播网络的邻接关系建立
L1的LAN IIH发送到组播地地址:01-80-c2-00-00-14
L2的LAN IIH发送到组播地址:01-80-c2-00-00-15
Step 1:R1的接口启动IS-IS进程后,发出 L2 LAN IIH,报文中携带了自己的System-ID,IS Neighbor列表中没有任何邻居标识。
Step 2:R2接收到Hello报文后,将自己和R1的邻接状态设置为初始化状态,然后向R1回复自己的 Hello 报文,报文中携带了自己的System-ID,同时在IS Neighbor列表中携带了R1。
Step 3 :R1接收到R2的Hello报文后,因为在这份Hello报文的邻居列表中看到了自己的System-ID,R1将R2的邻接关系状态设置为UP。然后在向R2发送的Hello报文中,也会将R2的System-ID放到IS Neighbor邻居列表中。
Step 4:和R1反应一样,R2接收到Hello报文后,也将自己与R1的邻接关系状态设置为UP。至此,两台路由器的邻接关系建立完成。
PS:在广播网络中,需要选举DIS。在邻接关系建立后,路由器再等待2个Hello报文的时间,才开始选举DIS。
DIS
IS-IS协议将整个多路访问网络本身看作一台路由器或一个伪节点。IS-IS协议在多路访问网络中需要DIS(指定IS),由 DIS来抽象出并发挥伪节点的作用。有了DIS后,多路访问网络中的邻居间泛洪LSP后,通过DIS的SNP(序列号报文)来确保LSP泛洪的可靠。
作用:在广播网络中,LSP的泛洪是不可靠的。因此,需要DIS周期性地发送CSNP来保证广播网络中链路状态数据库的同步。
选举DIS
1、选举基于接口优先级,优先级最高的当选 DIS。
2、若所有接口的优先级一样,具有最大的 Subnetwork Point of Attachment(SNPA)的路由器将当选 DIS。
①.在LAN中,SNPA指的是MAC地址;
②.在帧中继网络中,SNPA是 Local Data Link Connection Identifier (DLCI)。
3、若SNPA是一样的,具有最大的System-ID的路由器将当选为DIS。
PS:DIS具有抢占性,且与OSPF不同,IS-IS接口优先级为0也可以参选DIS。
IS-IS L1和L2的 DIS功能总结:
- 模拟出伪节点,生成伪节点的 LSP,用来描述这个网络上有哪些路由器。
- 确保网络中LSP泛洪的可靠性。
- 完成L1和L2的LSP扩散和路由计算。