当前位置:文档之家› 第三章 ISIS 路由协议

第三章 ISIS 路由协议

第三章 IS-IS 路由协议

3.1 概述

在随着互联网的演化而出现的所有IP 路由协议中,只有3 种路由协议经受住了考验,这就是BGP、OSPF、IS-IS。

什么是IS-IS协议呢?

IS-IS就是Intermediate System-Intermediate System 就是中间系统-中间系统,当前的IS-IS规范中把网络节点叫做中间系统,其他协议比如OSPF把节点叫做路由器。在IS-IS中,路由器被描述为是一个中间系统(Intermediate System,IS),主机被描述为端系统(End

System,ES)。因此提供主机和路由器之间的通信的协议即为ES-IS;而路由器之间的通信即为IS-IS。

国际标准化组织,也就是现在ITU 指定了OSI 七层模型,最初网络服务只定义了面向连接的通信服务(CONS),随后做了修订,定义了无连接通信的功能,叫CLNS;和面向连接服务CONS不同的是在转发数据包的网络设备间无需预先定义端到端的路径。

CLNS由CLNP、IS-IS、ES-IS等ISO 协议支持。

CLNS、ES-IS、IS-IS 等都是独立的网络层协议,与之形成对比的是TCP/IP 协议,共存于OSI的第三层。编码格式:

 CLNP:0x81

 ES-IS:0x82

 IS-IS:0x83

CLNP类似于IP协议,CLNP定义为独立于数据链路层。

IP 是TCP/IP 协议族唯一的网络层协议,包括路由协议和用户数据都封装在IP 包内;而CLNP、ES-IS、IS-IS 协议都是网络层协议,分别被封装在数据链路层的帧内,这也是ISIS比IP安全的一个重要原因。

看看数据包的格式图例:

其实简单的可以理解为:

 IP协议相当于CLNS 都是无连接的;

 IP包相当于CLNP包;

 OSPF为IP包进行路由、而ISIS则是为CLNP包提供路由服务。

什么是ES-IS? ES-IS是终端系统-中间系统路由交换协议,使用同一网段或链路的ISO 终端系统和路由器之间自动交换信息,在后面的试验中将展示形成ES-IS邻接的过程。路由器发送IS报文hello(ISH)主机发送ES报文hello(ESH)。

ES 主机(ES 是没有路由能力的))靠侦听IS 发的ISH 报文来发现最近的IS 路由器,当ES 要发送数据到其他的ES 的时候,它发送包到直连的IS(如果多个IS 的话,则随机选择一个IS),IS路由器查找目的地址然后转发数据。

ES和IS的通信可以叫做Level-0;

Level-1 是在多个IS路由器在相同区域中实现路由;

Level-2 是在多个IS路由器在不同区域中实现路由。

IS-IS也定义了2层区域的概念,和OSPF不同的是,OSPF的区域是以路由器为边界;而IS-IS中是以链路为边界,如下图:

连接不同区域的IS为Level 2(L2)路由器,或者是同时具有Level 1和Level 2的L1/L2路由器,L1/L2路由器要同时分别维持L1和L2的LSDB。在IS-IS中,也有类似于RID的System

ID。由于IS-IS中Domain区域是以路由器为边界,因此,1个路由器的每个接口上的区域ID都是一样的。在IS-IS中,1个路由器最多可以具有3个区域ID,这样对区域中的过渡是很有用的。

什么是Area 和Domain?

Area:这是在路由协议中的一个概念,为了划分层次,减少路由信息,减轻路由器的负担,降低路由震荡等等。

Domain:好像只在IS-IS中才有,在一个AS域中可以划分出好多Domain,每个Domain可以应用不同的路由协议,Level-3 级路由就是可以在不同的Domain 中进行路由的相互引入。

IS-IS协议最初是为了用来路由CLNP数据包,但随着IP的流行,IETF修改IS-IS来进行IP 包路由,所以说IS-IS 是双重的(也叫集成IS-IS),既可以路由CLNP 又可以路由IP

包,OSPF只能路由IP数据包。

3.2 IS-IS 寻址

每个节点都需要定义地址,在ISIS包中的地址为CLNP的NSAP格式。

3.2.1 NSAP格式

整个NSAP地址由两大部分组成:

 IDP(Inter-Domain Portion)域间部分,相当于TCP/IP地址中的主网络号。

 DSP(Domain Service Portion)域内服务标识部分,相当于TCP/IP地址中的子网号,主机号外加端口号。

IDP由两部分组成:

 AFI(Authority and Format ID)机构与格式ID 用来表示地址格式或地址分配机构。

 IDI(Inter-Domain ID)域间ID 用来标识域。

DSP由三部分组成:

 HODSP(High Order DSP)DSP高位,用来分割区域,相当于TCP/IP地址中的子网部分。

 SID(System ID)系统ID,用来区分主机,相当于TCP/IP地址中的主机部分。

 NSEL(NSAP-Selector)NSAP标识,用来指示选定的服务,相当于TCP/IP地址中的端口号。

ISO-IGRP 路由采用三层体系:域(IDP,第三级),区域(HODSP,第二级)和系统ID(SystemID,第一级)。

ISIS 采用二层体系:区域ID(IDP+HODSP)+系统ID

现在我们来看一下NSAP地址中各部分的长度。

对于Cisco IS-IS 路由协议,NSEL 固定为一个字节,系统ID 固定为6 个字节,区域地址长度可由1-13字节构成,所以整个NSAP地址总长度为8-20字节。

对于Cisco ISO-IGRP路由协议,Area ID被分为Domain ID 和Area ID 两部分,Area ID

为2 个字节,Domain ID 最少一个字节,所以NSAP地址总长度为10-20字节

AFI=39表示ISO数据国家代码。

AFI=47表示ISO国际代码指定

NET 地址必须以00结尾,且必须为整字节(偶数个十六进制数),中间以dot 分隔。

System ID 通常由MAC地址构成或由IP地址转换而来。

Domain ID 和Area ID 则通常在全网内统一指定。

例如:

3.2.2 NET(Network Entity Title)网络实体标识

NSEL 值定义了网络层服务的用户,路由层是特殊的网络层服务用户,它的SEL 值是0,也就是说我们在交换路由信息时将NSEL 固定为00,这样的NSAP 表示设备自身,我们称之为NET。NSEL 帮助网络层数据发送到适当的应用程序或服务用户,根据OSI 方案,网络层服务上面是传输层,也就是说网络层是00,那么传输层就不是00了,如果要将数据提交到传输层的话就是0x21,表示DECNet Phase IV传输层,0x22表示传输层TP 4。

AFI=49 的地址为OSI 协议的私有地址,像TCP/IP 中的10.0.0.0,172.16.0.0-172.31.0.0

和192.168.0.0,后面的实验中通常使用这样的地址。如果你只想通过IS-IS 实现IP路由,

用这个前缀就可以了。

System ID 定义:

Sysid长度在1-8字节之间,cisco遵从GOSIP2.0 标准,长度为6字节,与MAC地址一致,所以可以用路由器上一个LAN的MAC地址作为system id,不过用的最多的是将loopback地址作为system id,如:

Loopback 192.168.1.24

Net 49.0001.1921.6800.1024.00

3.2.3几条定址规则

1、 位于同一区域内的路由器Area ID 必须相同。

2、 同一区域内的Level-1 IS为了彼此区分必须有惟一的System ID。(建议整个域内所有IS都有惟一的System ID)

3、 整个域内所有Level-2 IS 为了彼此区分必须有惟一的System ID。

4、 包交换网络中,虚电路号或DLCI号码经常加在System ID 的后面构成LAN ID,这主要是为了防止同时属于多个Area的IS 在不同的Area中有相同的System ID。

5、 如果系统检测到System ID 重复,将会报告以下错误: IS-IS: possible duplicate system ID detected

为单个ISIS进程配置多个NET

通常一个ISIS进程只需要一个NET,但可以通过定义多个区域ID 的NET可以将合并多个区域,如:

Net 49.0001.1921.6800.1024.00

Net 49.0002.1921.6800.1024.00

可以将49.0001层1中的lsp传递到49.0002中,从而可以合并2个层1区域。

一般配置多个NET 用于:

 区域合并

 区域分离

 重编址

NSAP到主机名的映射

NSAP地址很长为了便于使用,借鉴IP中域名的好处,可将NSAP映射到域名。

ISIS 支持动态主机名映射,也就是说可将主机名到nsap 的映射信息在isis 协议内传输,比手工配置方便多了。实现此功能的tlv是137 类型,承载于参与动态映射的路由器的lsp中。

3.2.4 集成IS-IS 路由协议

集成ISIS路由就是说同时支持IP和CLNP路由。

根据ISO10589 标准,ISIS协议支持2 层分层体系。

ISIS即使在IP环境中也要用CLNP节点地址标识路由器,CLNP地址也就是NSAP(NetworkService Access Points,网络服务访问点)。

一共有三部分组成:

 区域标识符

 系统标识符

 N选择符:这个是表示网络服务用户,可以是传输层,可以是路由层,和TCP Port差不多,一般N 选择符都为0,表示将数据提交到网络层,也就是路由器本身。这个N 选择符为0 的NSAP地址可以简单的叫做NET地址

区域标识符:如果这个标识符号一样就表示路由器在同一个域中。

实际上一台路由器可以同时属于多个区域,也就是说区域符不一样,但系统标识符必须相同。

属于同一区域并且为层1 的路由器叫层1 路由器,属于不同区域的路由器通过层2 邻接来交换路由信息。层2 路由器也叫主干路由器,和OSPF的Area 0 路由器差不多。

路由器可以是层1,也可以是层2,也可以同时为层1-2 路由器,cisco 路由器默认为层1-2。

层1-2 路由器相当于OSPF 中的Abr 路由器,可以为层1 域的路由器提供区域连接,把层1 的路由信息发往主干。Cisco 也支持把层2 的路由引入到层1 中,以次来消除isis 次优路径选择的问题。

次优路径选择:

相关主题