以下内容摘自笔者即将上市的新书——《路由器配置与管理完全手册——Cisco篇》中。目前与H3C篇图书一起正接受限量内部最优惠的7折预订(两本同时预订还可赠送为纪念著书十周年而特别定做的2011年台历一本,联系QQ:93220994)。
11.1.3 IS-IS路由器类型和邻接关系
IS- IS所完成的路由功能就是Level-1和Level-2路由选择,也就是说IS-IS用来在同一个路由域内进行区域内和区域间的路由选择。IS-IS采用Level-1和Level-2两级路由选择结构,以便有效地管理网络路由。
IS-IS区域中的Level-1路由选择负责路由到区域内的终端系统(ES)和IS。在同一个路由选择区域中,所有设备的区域地址都相同。区域内的路由选择是通过查看地址中的系统ID后,然后选择最短的路径来完成的。
Level-2路由选择是在IS-IS区域之间进行的。路由器通 过L2路由选择获悉Level-1路由选择区域的位置信息,并建立一个到达其他区域的路由表。当路由器收到数据包后,通过查看数据包的目标区域地址(非本区域的区域 地址),选择一条最短的路径来路由数据包。
【说明】IS-IS网络的路由选择功能只是整个OSI路由选择功能的一部分,因为在OSI的路由选择中包括了四个级别:Level-0、Level-1、Level-2和Level-3。
Level-0 路由选择是发生在ES与IS之间的,它通过使用ES-IS进行路由信息的交换。正如之前介绍ES-IS那样,ES通过侦听IS发送的IIH报文来获知IS 的存在。当ES要向其他ES发送信息是,它将把数据包发送到IS。同样,IS也侦听ES发送的ESH报文以获知ES的存在,当有数据包要发送个某个ES 时,它便根据通过ESH获取到的信息发送个特定的ES。这个过程就称为Level-0路由选择。
Level-1路由选择发生在同一区域内的IS之间。所谓区域是指在CLNP地址中拥有相同区域前缀的一组 ES和IS。同一个区域中的IS之间通过交换路由信息后,便得知了本区域内的所有路径。当IS收到一个到目标地址是本区域内地址的数据包后,通过查看数据包的目的地址以将数据包发往正确的链路或目的地。所以Level-1路由也就是区域内的路由选择。
Level-2路由选择是在IS收到一个目的地址不是本区域的数据包时,数据包将被转发到其他区域的IS,其他区域的IS再将其转发到正确的目的地或者将数据包中继到其他区域,以便由其他区域的IS转发到正确的目的地。所以Level-2路由选择是发生在区域之间的,所以也称作区域间路由。
Level-3路由选择就是域间的路由。Level-3路由选择类似与IP路由中的 BGP(Border Gateway Protocol,边界网关协议),它的目的是在不同的路由域或自治系统(AS,Autonomous System)间交换路由信息,并将去往其他自治系统的数据包转发到正确的自治系统以便到达最终目的地。这些自治系统之间可能拥有不同的路由拓扑,所以不能直接进行路由信息的交换。通常Level-3路由选择都是由IRDP(Inter-Domain Routing Protocol,域间路由选择协议)来完成的,IRDP的功能类似于IP路由中的BGP路由协议。
1. IS-IS网络路由器类型
由于IS-IS负责L1和L2等级的路由,IS-IS路由器类型可以分为三种:L1路由器(Level-1)、L2路由器(Level-2)和L1/2(Level-1-2)路由器。
任一IS可以工作在Level-1,或者Level-2,或者Level-1-2。工作在Level-1中的IS只能与在相同区域中的Level-1或Level-1-2 IS交换路由信息。工作在Level-2中的IS只能与在其他Level-2 IS或者Level-1-2 IS交换路由信息,而不管对方是否与自己处于同一个Level-1区域。所有Level-2(包括Level-1-2) IS必须连续,形成骨干区域。Level-2路由器集和从Level-2子域中连接这些路由器的链路必须不要分割,以确保路由能正常工作。IS-IS不论是Level-1,Level-2,还是Level-1-2路由器,都采用相同的SPF算法,分别生成最短路径树(Shortest Path Tree,SPT)。下面对三类路由器进行具体的说明。
Level-1路由器
Level-1路由器负责区域内的路由,类似于OSPF网络中的区域内部路由器(IR)。它只与属于同一区域的Level-1和Level-1-2路由器形成邻居关系,维护和管理本区域内部的一个Level-1 LSDB,该LSDB包含本区域的路由信息,到区域外的报文转发给最近的Level-1-2路由器。在转发业务数据包时,Level-1 IS只能转发区域内的数据包,或者将到达其他区域的数据包转发到距离它最近,且在同一区域的Level-1-2 IS。
Level-2路由器
Level-2路由器负责区域间的路由,类似于OSPF网络中的BR(骨干路由器)。所有的Level-2(包括Level-1-2) IS组成一个骨干网。它可以与同一区域或者其它区域的Level-2和Level-1-2路由器形成邻居关系,维护一个Level-2的LSDB,该LSDB包含区域间的路由信息。所有Level-2路由器和Level-1-2路由器组成路由域的骨干网,负责在不同区域间通信,骨干网必须是物理连续的。IS-IS的骨干网(Backbone)指的不是一个特定的区域。在转发业务包时,Level-2 IS可以转发区域内的数据包,也可以转发区域间的数据包。
Level-1-2路由器
同时属于Level-1和Level-2的路由器称为Level-1-2路由器,类似于OSPF网络中的ABR(区域边界路由器)。它可以与同一区域的Level-1和Level-1-2路由器形成Level-1邻居关系,也可以与同一区域或者其他区域的Level-2和Level-1-2路由器形成Level-2的邻居关系。Level-1路由器必须通过Level-1-2路由器才能连接至其他区域。Level-1-2路由器维护两个LSDB,Level-1的LSDB用于区域内路由,Level-2的LSDB用于区域间路由。
图11-2为一个运行IS-IS协议的典型网络结构。在这种拓扑结构中,Area 1是骨干区域(并不是非要Area 1是骨干区域,其他区域也可以),该区域中的所有路由器均是Level-2路由器。另外4个区域为非骨干区域,它们都通过Level-1-2路由器与骨干路由器相连。
图11-2 IS-IS网络典型拓扑结构
图11-3是IS-IS网络的另外一种拓扑结构图。其中Level-1-2路由器不仅仅用来连接Level-1和Level-2路由器,而且还与其它Level-2路由器一起构成了IS-IS的骨干网。在这个拓扑中,并没有规定哪个区域是骨干区域。所有Level-2路由器和Level-1-2路由器构成了IS-IS的骨干网,他们可以属于不同的区域,但必须是物理连续的。
图11-3 IS-IS网络的一种非典型拓扑结构
2. IS-IS网络中的路由器邻接
两台运行IS-IS的路由器在交互协议报文实现路由功能之前必须首先建立邻接关系。在IS-IS路由协议中,只有同一层次的相邻路由器才可能成为邻接体。建立邻接关系的原则如下:
同一区域的Level-1路由器和Level-1-2路由器可以建立Level-1邻接;
同一区域的Level-1路由器和Level-2路由器不能建立任何邻接;
同一区域的Level-1-2路由器可以与Level-1-2路由器建立Level-1邻接和Level-2邻接;
同一区域的Level-2路由器可以与Level-1-2路由器建立Level-2邻接;
相邻区域的Level-1-2路由器与Level-1-2路由器只能建立Level-2邻接;
相邻区域的Level-2路由器与Level-1-2路由器只能建立Level-2邻接。
图11-4是一个IS-IS网络中各级路由器这间建立的邻接关系示例,注意不带箭头的连线是的物理连接,带双箭头的才是形成的邻接关系。从图中可以看出,只有区域1中的Level-1-2路由器与相同区域1中的Lervel-1-2路由器之间建立了Level-1邻接和Level-2两种邻接,其他路由器之间都只建立了一种邻接关系。建立的原则就是以上所介绍的。
图11-4 IS-IS路由器邻接关系示例
另外,要注意的是IS-IS协议与IOSPF协议在路由邻居关系方面有些不同:OSPF 协议使用接口来划分区域,一台路由器可能同时属于多个区域,并可以与多个区域的路由器形成邻居关系;而IS-IS协议规定路由器整体属于某个特定的区域,Level-1 路由器只能建立Level-1的邻居关系,Level-2路由器只能建立Level-2 的邻居关系。
IS-IS 路由协议中在点到点链路上,没有两次握手机制,即一方收到对方的hello,经过合法性检查后,邻居就直接up 了。OSPF协议中需要两次握手才能建立邻居关系,可靠性更好。IS-IS 路由协议中广播链路上需要进行两次握手验证,邻居才可以UP。因此可靠性更好一些。在这一点上和OSPF协议的广播类型一致。
本文出自 “王达博客” 博客,转载请与作者联系!