ISIS用于自治系统内部,是一种链路状态协议,使用最短路径优先SPF算法进行路由计算,与OSPF协议有很多相似之处。
发展
是由OSI组织设计,用于实现寻址路由协议,IEEE组织发展TCP/IP协议的流行,IS-IS也加入了对IP协议的支持,实现IP路由能力,称为 dual IS-IS 双栈IS-IS。(早年OSI的路由器称IS TCP/IP称router, OSI中ES对应TCP/IP的PC)就目前而言ISIS多用于运营商,OSPF多用于企业。
特点
1 IS-IS运行在二层链路层上,在链路层直接封装数据,单区域使用,运行效率高。(OSPF运行在三层网络层,多区域使用)
2 IS-IS扩展性强,采用TLV格式(type、length、vlue)报文,同时支持IPV6和IPV4。(OSPF非TLV格式,OSPF2支持IPV4,OSPF3支持IPV6)
工作原理(和OSPF相同)
1 创建邻居关系 hello
通过数据链路层三次握手保证邻居建立可靠性
相同物理区域内,满足五种情况(L1属于非骨干区域,L2属于骨干区域)
L1-L1 、L2-L2 、L12-L12、L1-L12、L2-L12
不同物理区域间,满足三种情况 L2-L2、L2-L12、L12-L12
网络类型:
P2P:不选举指定路由器DIS,不区分邻居和邻接关系
广播:选举指定路由器DIS(效率高,不用选举备份路由器),不区分邻居和邻接关系(OSPF广播区分)
2 邻居间交互LSP,生成LSDB
P2P:发送LSP,同步LSDB,
防错机制,需要PSNP回复确认,如果没有回复,超时重传
PSNP充当确认报文
广播:向每台路由器发送LSP报文并同步LSDB
CSNP纠错功能同时也充当确认报文
DIS周期发送CSNP报文,描述自己的LSP
3 根据LSDB画出全网拓扑图,计算SPT
4 根据SPT换算路由信息,算出路由表
第一步和第二步手动计算,第三步和第四步路由器自动计算。
报文
HELLO(对应OSPF hello)建立和维持邻居关系
LSP (对应OSPF LSU)交换链路状态信息
CSNP(对应OSPF DD)LSDB中所有LSP的摘要信息分L1 CSNP和L2 CSNP, 用于广播确认
PSNP(对应OSPF LSR)数据库同步,某些LSP摘要信息分L1 PSNP和L2 PSNP,用于P2P确认
没有ACK确认报文
与OSPF区别
ISIS: network-entity 包括 rarea ID + system ID(等同于routerID 48位) + 00 三部分组成
OSPF:router-ID 32位(从位数也能看出三层和二层的区别)
OSPF和ISIS最大的区别是区域
物理区域:
ISIS:只属于一个区域,无边界路由器
OSPF:可属于多个区域,有边界路由器
逻辑区域:
ISIS:骨干和非骨干区域,通过链路类型判断。L1属于非骨干区域,L2属于骨干区域。有逻辑边界路由器,L12属于逻辑边界路由器。
OSPF:骨干和非骨干区域,通过area ID判断。area 0为骨干区域。
特殊区域:
非骨干区域默认 total stub区域 缺少3、4、5类外部路由和其他区域路由信息。如果非骨干区域访问外部网络通过缺省路由访问(有几个逻辑边界路由器就会有几条缺省路由)。