IS-IS起源
IS-IS最初是国际标准化组织ISO为它的无连接网络协议CLNP设计的一种动态路
由协议。
为了提供对IP的路由支持,IETF在RFC1195中对IS-IS进行了扩充和修改,使它能够同时应
用在TCP/IP和OSI环境中,称为集成化IS-IS
IS-IS属于内部网关协议,用于自治系统内部。IS-IS是一种链路状态协议,使用最短路径优
先算法进行路由计算
地址结构
NSAP地址:
IDP相当于IP地址中的主网络号。它是由ISO规定,并由AFI与IDI两部分组成。AFI表示地址
分配机构和地址格式,IDI用来标识域。
DSP相当于IP地址中的子网号和主机地址。它由High Order DSP、System ID和SEL三个部分组成
High Order DSP用来分割区域,System ID用来区分主机,SEL用来指示服务
类型
Area Address(Area ID)由IDP和DSP中的High Order DSP组成,既能够标识路由域,
也能够标识路由域中的区域
它们一起被称为区域地址,相当于OSPF中的区域编号
System ID用来在区域内唯一标识主机或路由器。在设备的实现中,它的长度固定为48bit
(6字节)
SEL的作用类似IP中的“协议标识符”,不同的传输协议对应不同的SEL。在IP上SEL均为
00。
NET的长度与NSAP的相同,最多为20个字节,最少为8个字节
NET最多也只能配3个。在配置多个NET时,必须保证它们的SystemID都相同。
路由器的分类
- Level-1路由器(只能建立Level-1的LSDB)
- Level-2路由器(只能建立Level-2的LSDB)
- Level-1-2路由器(既可以建立Level-1的LSDB,也可以建立Level-2的LSDB,路由器的默认类型)
邻居建立
IS-IS建立邻居关系和OSPF一样,通过hello报文的交互来完成。但是会根据场景分为
三种类型的hello报文
Broadcast中的Level-1 IS-IS使用Level-1 LAN IIH(Level-1 LAN IS-IS Hello),目的
组播MAC为:0180-c200-0014
Broadcast中的Level-2 IS-IS使用Level-2 LAN IIH(Level-2 LAN IS-IS Hello),目的
组播MAC为:0180-c200-0015
P2P网络中则使用P2P IIH(point to point IS-IS Hello)
IS-IS支持的网络类型
点对点网络类型(P2P)
广播多路访问网络类型(Broadcast Multiple Access)
在P2P链路上,分为两次握手机制和三次握手机制
两次握手只要路由器收到对端发来的Hello报文,就单方面宣布邻居为up状态,建立
邻居关系,不过容易存在单通风险
通过三次发送P2P的IS-IS Hello PDU最终建立起邻居关系,与广播链路邻居关系的
建立情况相同
在广播链路上,使用LAN IIH报文执行三次握手建立邻居关系
当收到邻居发送的Hello PDU报文里面没有自己的system ID的时候,状态机进入
initialized
只有收到邻居发来的Hello PDU中有自己的systemID才会UP,排除单通风险
broadcast网络中邻居UP 后会选择DIS (虚节点)DI的功能类似于ospf的DR(指定路由器)
DIS
DIS与伪节点:
DIS是指指定中间系统
伪节点是指在广播网络中由DIS创建的虚拟路由器
DIS与DR的类比:
DIS和DR的作用
进行SPF计算时,都把它当成虚节点,简化MA网络的逻辑拓扑(相同点)
都是为了减少LSP/LSA的泛洪(相同点)
在ISIS中还可以由DIS发送CSNP来同步链路的LSDB(ISIS扩展作用)