ISIS的基本概念
ISIS的特点
纯的isis:iso为osi协议栈开发的路由协议,为CLNP服务的一种动态路由协议
集成的isis:即为osi协议栈服务,又为TCP/IP协议栈服务,可以传递CLNP和IP路由.因为ISIS是基于TLV(type length value)开发的
OSPF
相同点:SPF LINK-STATE IGP
不同点:OSPF为TCP/IP服务,传递ipv4、6的路由,而ISIS为osi服务,传递CLNP路由 IETF将ISIS进行了改造。
为什么ISP运行ISIS比较多,而园区网运行ospf比较多?:
- 1.isis比较ospf更为成熟。isis可支持更多的路由协议:clnp、ip、ipx等协议,而ospf只支持ip协议;
- isis支持的网络规模更大于ospf。isis支持的最大跳数路由器默认为1024个路由器,而ospf只有200个;
- isis扩展性更好,支持TLV。isis的层次结构与ospf不同,ospf是单一的骨干域,其他区域必需围绕area0,而isis有多个level2area,可以使骨干区域扩展更加容易。
- isis占用的网络资源较小,路由收敛和恢复的时间更快。
- 运营商设备异构性较小,设备之间性能差距不大,可以全level2的路由组成一个大的骨干区域;而园区设备异构性较大,而ospf支持更加灵活的特殊区域以满足设备性能不好的设备运行。
ISIS的封装
直接封装在数据链路层(stp类似)
NSAP地址:network service access point(总长度8-20byte,可变长)
IDP initial domain part (初始化域的部分)+DSP domain specific part(域指定部分)
IPD又包含:
- AFI(Authority and format identifier):表示分配机构,常用49表示私有地址
- IDI (Initial domain indetifier):表示域,可变长
DSP又包含:
- DSP高比特位(high order DSP):在一个域中进一步进行域划分
- 系统ID(system Identification):一个区域内唯一标识一台设备,固定长度6byte,用16进制,MAC地址也正好是6byte(固定6个字节)
- NSEL(NSAP-selector):长度1byte,表示上层类型或服务类型(固定1个字节)
systemid固定6个字节,selector固定1个字节,前面的AFI+IDI+DSP高位是可变长的1-13个字节,所以地址总长度为可变长的8-20个字节。
NET地址:network entity titel (网络实体名称)
在网络层表示一台设备,可以看做nsel为0x00的nsap地址,因此不标识上层应用,只标识设备本身。在isis中,系统ID相当于是ospf的routerid(区域iD+系统id+00)
ISIS的简单配置
isis 1
network-entity 49.0001.0192.0168.0001.00
ISIS的报文
- hello:用于建立邻居
- CSNP:(LSPID sequence remaining lifetime checksum) complete sequence number完全的序列号 PDU—类似于DD报文(link-stateid lstype adv sequence checksum)----发送的csnp包含这个设备lsdb中的所有lsp的摘要(头部)。csnp主要用于同步lsdb。lsp的摘要主要包含:lsp的lspID(设备系统ID、伪节点ID、分片编号,dis Isis lsdb的lspid),序列号(区分新旧),剩余生存时间,校验和。
- PSNP : part sequence number PDU 部分的序列号–类似LSR,是0代表请求
- LSP: link-state packet 链路状态数据包—类似LSU
- PSNP:如果csnp中的sequence是非0就是确认报文(只对P2P有确认,对broadcast没有)
分成三大类:
hello报文:LAN的level1的 hello;Lan的level2的hello;P2p的hello
SNP:CSNP的level1 level2 PSNP的level1 level2
LSP:LSP的level1 level2
ISIS的路由器的分类
ISIS的邻居的级别和路由器的级别的关系
level1的路由器:
类似于ospf的IR,区域内部路由器。它可以和同区域的level1的路由器形成level1的邻居关系。维护的就是level1的lsdb,能够计算的也是区域内部的路由。level1的路由器必需通过level2的路由器访问区域间的路由。level1的区域类似ospf的totally的NSSA区域。
- 如果是level1/2的路由器:接口下配置了circuit-level level1那么接口和isis进程下的level做交集
- 如果是level2的路由器:接口下就算配置了circuit-level level1也是无效的,按照进程下配置的level2的方式发送isis报文
- 如果是level1的路由器:接口下就算配置了circuit-level level2也是无效的,按照进程下配置的level1的方式发送isis报文
总结:只要isis路由节点是level1/2的,circuit level才会有意义,取交集。
level2的路由器:
类似于ospf的BR,整个isisi的domain的路由,它可以和同区域、不同区域,level2的路由器形成level2的邻居关系,维护的是level2的邻居关系,能够计算整个isis域的路由。level2的路由器在网络中必需连续
level1-2路由器:
类似ospf的ABR,同时属于level1和llevel2的路由器称为level1-2路由器,既要维护level1的数据库又要维护level2的数据库,和同一个区域的level1的路由器形成level1的邻居关系,与同一个区域或者不同区域的level2的路由器形成level2的邻居关系