ISIS基础知识
作者:Danbo
ISIS属于ISO协议簇
CONS(Connection Network Server)面向连接网络服务
CLNS(Connection Network Server)无连接网络服务
ISIS是ISO定义的OSI协议栈中无连接网络服务CLNS的一部分,用于动态路由数据包
CLNS由以下三个协议构成:
CLNP:类似TCP/IP中的IP协议。IP协议为TCP/IP传输层服务。CLNP为OSI传输层服务。
ISIS:中间系统的路由协议,类似于IP中的OSPF
ES-IS:主机系统与中间系统间的协议,就像IP中的ARP,ICMP等。
我们发现ISIS是封装在二层中的,这点与IP中的协议是不同的。
ES-IS:同一网段或链路的ISO终端系统和路由器之间自动交换信息便于邻接点发现。路由器发送IS报文HELLO包(ISH)
主机发送ES报文HELLO包(ESH)。在直连节点间发送的HELLO报文包含通信节点的网络层地址和数据链路层地址。包
含地址分配,网关选择等功能。
IETF定义了用OSI ISIS实现在TCP/IP和OSI双重环境下的路由选择,也就是集成的ISIS或者双重ISIS。
这样集成的ISIS可以支持纯CLNP网络或者纯IP网络,或者同时运行CLNP和IP的双重网络。
当前的ISIS规范中把网路节点叫做中间系统,其他协议比如OSPF把节点叫做路由器。
关于ISIS的术语
IS:Intermediate System中间系统 (Router路由器)
DIS:Designated Intermediate System (指定中间系统)
ES:End System(Host)
SysID:System ID (RID)
PDU:Protocol Date Unit 协议数据单元(IP Packet)
LSP:Link State Protocol Data Unit (链路状态数据单元)
LSPDB:LSP Database (LSP数据库)
NSAP:Network Service Access Point(CLNP地址+服务端口)
NET:Network Entity Title (网络实体标记)(特殊NSAP,最后一个字节为0,RID+AREA)
ESH:End System Hellos
IIH:Intermediate System to Intermediate System Hello PDU(类似于OSPF的HELLO报文)
PSNP:Partial Sequence Number Protocol Data Unit(部分序列号协议数据单元,类似于OSPF的ACK、Request)
CSNP:Complete Sequence Numbers Protocol Data Unit(全部序列号协议数据单元,类似于DBD报文)
ISIS地址的编码方式:这个地址属于可变长区域空间,还有6字节的SysID,还有1字节的NSEL
我们来将一下NSAP格式:
1.Area Address由AFI,IDI还有DSP的一部分组成,用来标识了组织结构。
2.System ID必须在整个区域和主干(Level2)上保持唯一,用来唯一标识主机或路由器
System ID为6个字节。
3.(NSAP-Selector)NSAP标识,用来指定选定的服务,相当于TCP/IP地址中的端口号,对NET地址来讲,是00
一个中间系统至少有一个NET(最多有254个)且SysID要相同。
通过:max-area-addresses xx来进行更改。
同一中间系统在一个AREA的中间系统必须具有相同的AREA ID
一个domain中的两个Level-2中间系统不能有相同的SysID
Cisco路由器上NSAP至少为8个字节,最多为20个字节。
对于IP应用程序而言,1字节定义AFI(标识二进制DSP语法的地址域),最少2字节定义实际区域信息,6字节定义SysID和1字节的NSEL,故NSAP地址最少为10字节。
ISIS允许将整个路由域分为多个区域,配置不同的区域ID是为了平滑的进行区域合并、分割、转换用。
OSPF不同的是,一个路由器必须整个属于另外一个区域。
节点(Nodes)及层次性(Level)