六、IS-IS工作过程
1、第一步:建立邻居关系
IS-IS网络中所有路由器之间实现通信,主要通过以下几个步骤:
邻居关系建立主要是通过HELLO包交互并协商各种参数,包括链路类型(level-1/level-2),Hold time,网络类型,支持协议,区域号,系统ID,PDU长度,接口IP等。
与OSPF不同,ISIS交互链路状态的基本载体是LSP(link state PDU),不是LSA。交互的过程没有像OSPF协议经历了多个阶段,主要是通过CSNP和PSNP两种协议报文来同步,请求以及确认链路状态信息(承载的是链路状态信息摘要),而链路状态信息的详细拓扑和路由信息是由LSP报文传递。
SPF计算和OSPF基本一样的,但ISIS算法分离了拓扑结构和IP网段,加快了网络收敛速度。
邻居关系,IS-IS目前只支持点对点(P2P)和广播多路访问网络(BMA)。其他的网络中需要进行额外的配置才能支持,如:在帧中继等特殊环境下,可以通过创建子接口支持P2P的网络类型。
邻居关系的建立主要是通过HELL O包交互并协商各种参数,包括电路类型(level-1/2),hold time,网络类型,支持协议,区域号,系统ID,PDU长度,接口IP等。
ISIS建立邻居关系的必要条件:区域ID号、认证、最多区域地址(max-area-address,Level-2不协商该参数)
OSPF建立邻居关系的必要条件:Hello时间、Hold Time、区域ID号、认证(在广播网络中还需要协商:掩码)
1)ISIS建立邻居关系原则
1)只有同一层次的相邻路由器才有可能成为邻居。
2)对于Level-1的路由器来说,Area ID区域号必须一致。
3)链路两端的ISIS接口的网络类型必须一致。
4)相同的MTU值。
5)只有同一网段的相邻路由器才有可能成为邻居。
6)相同认证。
7)在P2P网络中,system-id长度要一致,最大区域地址数要相同。
(2)IS-IS邻居状态
与OSPF协议不同,IS-IS协议一共定义了三种邻居状态,如下所示:
1、Down:邻接关系的初始状态。没有收到邻居Hello包时处于Down状态。
2、Initiated:收到邻居Hello包(IIH),但是在Hello包中没有发现自己的信息(报文中的邻接列表未包含路由器自身的SystemID),也称为one-way状态。
3、Up:收到邻居Hello包(IIH),并发现自己的信息(邻接列表中包含路由器自身的System ID)。
可以看出,IS-IS仅仅根据Hello包的交互情况来定义自己的状态,并没有链路状态信息的相关状态。
(3)IS-IS邻居建立过程
1)广播型链路邻居关系建立
在默认情况下是三次握手,但是可以修改为两次握手方式。在广播型链路上,IS-IS协议的目的组播地址:
L1级别的为0180-C200-0014
L2级别的为0180-C200-0015
在广播型链路上,IS-IS邻居的建立采用三次握手机制,流程如下: