[转载]ISIS(1)_亮仔_新浪博客

原文地址:ISIS(1) 作者:王卡卡

ISIS

 

OSI参考模型中的网络服务规范定义了网络设备之间使用无连接通信的功能CLNSConnectionless Network Service,无连接网络服务)。使用CLNS,无需在发送数据之间建立端到端的路径。CLNS包括协议组件有:

 

·CLNPConnectionless Network Protocol,无连接网络协议):定义了CLNS所使用的协议。

·IS-IS:定义了在使用CLNP的网络中,中间系统与中间系统间进行路由信息的交换方式。

·ES-ISEnd System—Intermediate System,终端系统中间系统):定义在使用CLNP的网络中,终端系统与中间系统间进行路由信息交换的方式。

 

CLNP是一个OSI网络层协议。它相当于我们所熟悉的IP协议,而IP定义为用来为TCP/IP协议栈提供网络层服务。与IP一样,CLNP也是一个无连接的协议,不提供可靠的数据连接,而且也独立于下层(数据链路层)协议。我们都知道,IPTCP/IP协议栈中唯一的网络层协议,高层的协议和数据全都封装在IP数据包中进行传输。这不同于CLNS网络环境,CLNS中,CLNPIS-ISES-IS 是独立的网络层协议,它们都直接被封装到数据链路层的帧中进行传输

 

基本术语

缩略语

OSI中的概念

IP中对应的概念

IS

Intermediate System 中间系统

Router 路由器

ES

End System 端系统

Host主机

DIS

Designated Intermediate System 指派中间系统

Designated Router(DR) OSPF中的选举路由器

SysID

System ID 系统ID

OSPF中的Router ID

PDU

Packet Data Unit 报文数据单元

IP报文

LSP

Link state Protocol Data Unit      链路状态协议数据单元

OSPF中的LSA             用来描述链路状态

NSAP

Network Service Access Point

网络服务访问点(网络层地址)

IP地址

NET

Network Entity Title 网络实体标记(一种特殊的NSAP

--------

IIH

IS to IS Hello PDU ISISHello

OSPF中的Hello报文

PSNP

部分序列号数据包

OSPFACK报文或LSR报文

CSNP

完全序列号数据包

OSPFDD报文

网络分层

一、两个ISIS级别:L1普通区域(Areas)L2骨干区(Backbone)

·L1负责ESIS之间的通信;

·L2负责ISIS之间的通信;

·骨干区Backbone是连续的Level2路由器的集合,由所有的L2(L1/L2)路由器组成,注意必须是连续(连通)的。

*************************************************************

区域(Areas

l      IS-IS允许将整个路由域分为多个区域;

l      区域之间通过L2(L1/L2)路由器相连接;

l      一个路由器目前最多有3Area Id属于3个区域 (IOSVRP的实现)

l      一个路由器必须整个属于某个区域,而不能象OSPF那样是同一台路由器上不同的接口可以属于不同的区域

l      对于Level-1路由器来说,只有属于同一区域才可以建立邻居,对于Level-2路由器则没有此同一区域限制

*************************************************************

 

二、三种类型的ISIS路由器:L1L2L1/L2

 

l L1路由器通过LSP获悉其所属区域的区域内路径,L1只能与L1L1/L2建立邻居关系,只参与本区域内的路由,只保留本区域的数据库信息,利用本区域最近的L1/2路由器作为区域外网络出口(缺省路由)

lL2路由器通过LSP获悉区域间的路径,L2只能与L2L1/L2建立邻居关系,保存L2的链路状态数据库,含所有域间路由信息;保存整个骨干区的路由信息

lL1/L2路由器获悉区域内与区域间的路径,L1/L2有点像OSPFABR可以和本区域的任何级别路由器形成邻居关系;可以和其它区域相邻的L2L1/L2路由器形成L2邻居关系有两个级别的链路状态数据库L1用来作为区域内路由;L2用来作为区域间路由完成它所在的区域和骨干之间的路由信息的交换,将L1 LSDB中的路由信息转换到L2 LSDB中,以在骨干中传播,既承担L1的职责也承担L2的职责通常位于区域边界上

 

Level-1Level-2分别运行SPF算法,生成各自的LSDB

 

ISIS寻址(NSAP)

 

CLNP地址与我们熟悉的IP地址有着很大的区别。首先,CLNP地址是一种基于节点的编址方案,也就是说一个节点(路由器)只需要一个CLNP地址,而IP地址是一种基于链路或者说是基于接口的编址方案。

   

    IS-ISCLNP地址称作网络服务访问点(NSAPNetwork Service Access Point),也就是常用的CLNP地址。类似于IP地址。

ISO术语中,数据链路层地址(例如LAN MAC地址、Frame-Relay DLCI等)常被称为子网连接点(SNPASubnetwork Point of Attachments)。由于一个网络设备可能连接多个链路,所以需要有多个SNPA地址,但是只需要一个CLNP地址。ES-IS的主要功能之一就是为节点提供NSAP地址到SNPA地址的映射,相当于IP协议中的ARP

一个NSAP由三个部分组成:可变长度的区域地址1-13字节),System ID1-8字节,目前使用定长9字节)和n-selector1字节)。一个NSAP地址长度为8-20字节。

NET地址

IS-IS路由选择过程中,没有使用NSAP地址中的NSEL,所以NSEL始终保持为00。当NSEL00时,我们就称这个NSAP地址为 NETNetwork Entity Titile,网络实体名)地址,NET地址用来唯一地表示IS-IS路由选择域中的OSI主机。路由器使用NET地址来标识自己。

路由器在发送的链路状态数据包(LSP)中用NET来标识自己,这类似于OSPF发送的LSA中的路由器IDRouter ID)。

NET地址中,还有三个与其相关的术语:SNPA、电路IDCircuit ID)和链路。SNPA相当于MAC地址、Circuit ID相当于接口(由于NET用来标识整台设备,所以Circuit ID用来表示不同的接口)、链路相当于路径。

 

SysID

目前实现的IS-IS中,都遵循GOSIP2.0标准采用了定长的6字节表示SysID6 字节的长度也与LAN MAC地址的长度一致。所以在配置路由器的NET地址时,可以使用路由器上某个LAN接口的MAC地址作为SysID,也就是在三层的NSAP地址中嵌入一个二层的MAC地址。但SysID也可以不为MAC地址,也可以取其他的任意值,但要满足6个字节的长度。

 

·IS-IS路由域中的每个节点的SysID必须唯一。

·IS-IS路由域的所有节点的SysID长度必须一致,通常都为6个字节。

 

*************************************************************

确定system id推荐对应方法):

[     如何在支持IPIS上确定SystemID(便于管理的推荐):

[     使用Loopback接口IP地址: 192.168.3.25

[     建立IP地址到System ID的对应关系:

192.168.3.25>192.168.003.025>1921.6800.3025System ID

1921.6800.3025就作为NET地址中的SysID字段,再加上区域地址和NSEL00)后便形成了NET地址。

 

假设区域地址为49.0001,那么使用IP地址转换为SysID的完整NET地址就为:

49.0001.1921.6800.3025.00

 

由于同一区域内的所有路由器的区域地址是相同的,NSEL00也是相同的,所以SysID成为区别路由器间不同NET地址的关键,也就是必须要保证SysID唯一。

 

*************************************************************

 

NSEL

NSEL 定义了网络层服务的用户,路由层是特殊的网络层服务用户,它的NSEL值为0。之前多次提到,在IS-IS路由器上配置的NSAP地址采用00作为 NSEL,这时NSAP地址被称为NETNSEL的值与IP报头中的协议类型或TCP/UDP报头中的TCPUDP端口号类似NSEL帮助网络层把数据发送到适当的应用程序或服务。在OSI分层模型中,网络层服务的是传输层。目标不是路由进程的CLNP数据包具有非0NSEL值的NSAP地址,表示节点需要将数据发送到传输层。我们在使用IS-IS进行IP路由选择中,只要记住始终保持NSEL00即可

 

集成ISIS

IS-IS,它仅支持CLNS网络环境,而不支持IP网络环境中的路由信息交换。后来,IETFRFC 1195中对IS-IS进行了修改和扩展,称之为集成IS-ISIntegrated IS-IS)或双重IS-ISDual IS-IS)。集成IS-IS的制定是为了使其能够同时应用在TCP/IP网络和OSI网络中,使其能够为IP网络提供动态的路由信息交换。

集成IS-IS是一个能够同时处理多个网络层协议(例如IPCLNP)的路由选择协议。相反,OSPF只支持IP一种网络层协议,即OSPF仅支持IP路由。而集成IS-IS可以支持纯CLNP网络或纯IP网络,或者同时支持CLNPIP两种网络环境,并为其提供路由功能。集成IS-IS协议经过多年的发展,已经成为一个可扩展的、功能强大的、易用的IGP路由选择协议,并且在运营商网络中得到了更多的应用和部署,主要用来实现域内的IP路由选择。

路由选择

OSI路由选择级别:

1、同一子网中,ESIS之间的路由选择叫L0路由选择;

2、区域内ISIS的路由选择叫做L1路由选择;

3、区域间ISIS的路由选择叫做L2路由选择;

4、不同域之间的路由选择叫做L3路由选择。

 

 

 

 

ISIS试用的网络类型

IS-IS路由协议支持点到点的网络类型广播的网络类型两种。理论上不支持NBMA和点到多点网络类型,如果需要在NBMA和点到多点的网络上部署IS-IS路由协议,通过划分子接口的方式,把NBMA和点到多点转化为多个点到点的网络类型。

OSPF路由协议支持点到点、广播、NBMA、点到多点和虚连接网络类型。所以IS-ISOSPF相比支持的网络类型较少

*************************************************************

NBMA (non-broadcast multiple access,非广播多路访问网络)是OSPF(通信协议中四种网络的一种。NBMA用于精确模型X.25帧中继环境,这些模型不具备内部广播和多点传送能力网络类型就这么几种,有点对点,点对多点,广播多点等等。所谓NBMA就是一个多路访问链路,上面又不能发广播。最典型的多路访问链路就是常见的以太网,多个访问节点都可以访问同一个网段。在以太网上是可以发广播的。所以叫BMA。而帧中继就是典型的(也许是唯一现存的)NBMA了。因为它是多路访问链路,但是又由于有带宽的限制不能发广播包。

 *************************************************************

 

ISIS协议报文

IS-IS路由协议中,协议报文总共有9种,所有的协议报文都是根据层次划分为Level-1Level-2的报文。

 

IS-ISHello报文可以具体细分为:L1 IIHL2 IIHP-2-P IIHL1 IIH的组播地址为:0180-C200-0014L2 IIH的组播地址为:0180-C200-0015P-2-P IIH采用单播地址进行通信。Hello报文的作用为发现、建立和维系邻居关系,功能上类似于OSPF协议中的Hello报文。

 

LSP 分为两种:Level 1 Link State PDULevel 2 Link State PDULevel 2 Link State PDU包含IS-IS路由区域中所有可到达前缀的信息;Level 1 Link State PDU只用于本地区域。LSP报文描述了本路由器中所有的链路状态信息。功能上类似于OSPF协议中的LSA

 

CSNP分为两种:Level 1 CSNPLevel 2 CSNP。用于数据库同步,以范围来描述数据库LSDB中的所有的LSPs。包含地址范围,各LSP的简要信息:LSPidSequeceNumber, checksum, remainning lifetime等重要信息。在广播网络上,CSNP报文由DIS定期发送(缺省10秒的周期),在点到点串行线路上,只在第一次形成邻接时发送CSNP。如果路由器的LSDB非常大,将分成多个CSNP发出。功能上类似于OSPF协议中的DD报文。

 

PSNP分为两种:Level 1 PSNPLevel 2 PSNPPSNP报文用于数据库同步,主要有以下功能:在点到点(p2p)链路上路由器用来相互交换作为Ack应答以确认收到某个LSP在广播网络中用来请求发送最新的LSP,当路由器从近邻接收到CSNP时,注意到某些LSP本地数据库中没有的(或自己的比较旧),路由器发送PSNP请求新的LSPPSNP在头中利用LSPidSequenceNumberRemainning lifetime, LSP checksum来描述LSPs,仅仅包含有LSP报文的头部。在点到点(p2p)网络类型中功能上类似于OSPF协议中的LS Ack报文;在广播网络中功能上类似于OSPF协议中的LS Request报文。

 

*************************************************************

比较:OSPF报文类型

 

HELLO报文(Hello Packet):最常用的一种报文,周期性的发送给本路由器的邻居。内容包括一些定时器的数值,DRBDR,以及自己已知的邻居。

 

DD报文(Database Description Packet):两台路由器进行数据库同步时,用DD报文来描述自己的LSDB,内容包括LSDB中每一条LSA的摘要(摘要是指LSAHEAD,通过该HEAD可以唯一标识一条LSA)。这样做是为了减少路由器之间传递信息的量,因为LSAHEAD只占一条LSA的整个数据量的一小部分,根据HEAD,对端路由器就可以判断出是否已经有了这条LSA

 

LSR报文(Link State Request Packet):两台路由器互相交换过DD报文之后,知道对端的路由器有哪些LSA是本地的LSDB所缺少的或是对端更新的LSA,这时需要发送LSR报文向对方请求所需的LSA。内容包括所需要的LSA的摘要。

 

LSU报文(Link State Update Packet):用来向对端路由器发送所需要的LSA,内容是多条LSA(全部内容)的集合。

 

LSAck 报文(Link State Acknowledgment Packet):用来对接收到的LSU报文进行确认。内容是需要确认的LSAHEAD(一个报文可对多个LSA进行确认)。

*************************************************************

 

ISIS协议工作机制

 

ISIS邻接关系

IS-IS路由协议中只有同一层次的相邻路由器才可能成为邻接体。IS-IS路由协议通过IIH报文建立邻居关系时需要遵循的基本原则:

   (1) 只有同一层次的相邻路由器才有可能成为邻接体

   (2) 对于Level-1路由器来说要求区域号一致

   (3)  同一网段检查,此项为华为特性。由于IS-IS直接承载在数据链路层之上,理论上是不需要进行同一网段的检查。华为 VRP提供了这一新功能,进行同一网段检查,保证邻居关系的正确建立。(最近,VRP新做了一条命令,ignore-ppp-ip-check, 通过配置该命令可以取消ppp链路上的同一网段检查。该命令只对链路层为ppp协议的链路生效,缺省情况下该命令不生效。)

   (4) OSPF协议的不同之处。OSPF协议使用接口来划分区域,一台路由器可能同时属于多个区域,和多个区域的路由器形成邻居关系;而IS-IS协议规定路由器整体属于某个特定的区域,L1路由器只能建立Level-1的邻居关系,L2路由器只能建立Level-2的邻居关系。

 

IS-IS路由协议中在点到点链路上,没有三次握手机制。OSPF协议中需要三次握手才能建立邻居关系,可靠性更好。而在广播链路上均需要进行三次握手验证。

广播链路上的DISDesignated IS指定中间系统

DIS相当于OSPFDR。其功能是创建和更新伪节点(pseudonode

 

IS-IS路由协议中的DISOSPF路由协议中的DR的区别:

 

OSPF路由协议中,我们需要选举DRBDRDR一旦当选,具有终生制,如果DR发生故障,BDR接替原有的DR,同时重新选举BDR。而在IS-IS路由协议中,我们只需要选举DIS路由器,没有备份的DIS路由器的概念,DIS路由器不具有终生制,一旦网络中新增加的路由器DIS的优先级高于当前的DIS的优先级,网络中将重新选举新的DIS网络的稳定性较差

   

 OSPF路由协议中普通路由器DR Other只需和DRBDR建立邻接关系,DR Other路由器间只需建立邻居关系,相互间握手即可。而IS-IS路由协议中由DIS生成一个伪节点(pseudonode,由伪节点周期性的发送CSNP报文和其他节点进行数据库的同步。伪节点和本网络中的所有路由器建立联系,并且不允许它们之间直接联系。

 

IS-IS 协议中,广播子网和NBMA网络在外部被看成一个伪节点。同一网络中的IS 之间会根据各自优先权选出一个DISDesignated IS)。网络中的非DIS 会向DIS 报告自己的链路状态信息,而DIS 则代表整个网络中所有的IS 报告链路状态信息。选举DIS 的原因与OSPF 中选举DR 的原因一样,其目的是为了减少不必要的邻接关系和路由信息的交换

 

伪节点不是一个真实的路由器,但它要占用一个额外的LSP 项。伪节点LSP是由DIS 创建的。

 

DIS的选举过程:

IS-IS 协议中,DIS 的选举是自动进行的。选举的依据是同一网络中各接口的优先权,如果最高的优先权的接口不止一个则从这些优先权相同的接口中找MAC 地址最大的。DIS 的选举是在IS 自身进行的,网络中的各个IS 根据所在网络的接口上的邻居信息来进行选举。由于整个网络中的邻居信息是一致的,所以各自进行的选举结果是相同的。

 

注意:

1)只有在广播和NBMA类型的网络接口上才会选举DIS,在Point-to-Point类型的接口上不需要DIS 的选举;

 

2DIS 是针对IS 的接口而言的。某台IS 在这个接口上可能是DIS ,而在另一个接口却可能不是;

 

3)不同层次有不同层次的DIS,即L1级的广播网选举L1级的DISL2级的广播网选举L2级的DIS

 

4IS-IS中不存在备份DIS,当一个DIS不能工作时,直接选举另一个;DIS发送的Hello报文的时间间隔为普通路由器的1/3,这样便于其他路由器快速检测到DIS的失效,同时快速选举新的DIS接替。

5DIS由整个广播网络上优先级最高的IS担当,优先级相同时由MAC最大的担当。如果MAC一样,则由SysID大的担当。

 

6OSPF不同,它的选举是抢占式,可预见的。

 

如果没有伪节点,在LSPDB中必须包括LAN中的所有路由器的链路状态信息。伪节点LSPDIS创建。DIS在伪节点LSP中通告所有的LAN邻居(包括DIS),metric0。所有的LAN路由器,包括DIS,在它们的LSP中通告到伪节点的连接性,这一点类似于OSPF中的network LSA

 

伪节点的作用

·减小路由器LSP的大小

·使路由器LSP更稳定

·使SPF计算更快

 

 

 

(以上均来自互联网,欢迎转载交流。20120309FZ)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值