收藏 分销(赏)

路由原理与设计之四--IS-IS路由协议.doc

上传人:仙人****88 文档编号:9355554 上传时间:2025-03-23 格式:DOC 页数:38 大小:3.35MB
下载 相关 举报
路由原理与设计之四--IS-IS路由协议.doc_第1页
第1页 / 共38页
路由原理与设计之四--IS-IS路由协议.doc_第2页
第2页 / 共38页
点击查看更多>>
资源描述
第一章 IS-IS协议基本原理 1.1 IS-IS协议的发展 CLNP是国际标准化组织ISO提出的OSI协议栈中的第三层协议,其地位类似于IP协议在TCP/IP协议中的地位,IS-IS最早由ISO设计,是用于实现基于CLNP寻址的路由协议。     ISO定义了两类网络层服务:CLNS (Connectionless Network Service) 和CONS (Connection-oriented Network Service)。面向CLNS服务的网络层协议为CLNP(Connectionless Network Protocol),类似于TCP/IP中的IP协议;面向CMNS服务的网络层协议为CONP(Connection-oriented Network Protocol)。     后来随着TCP/IP协议的流行,IS-IS在RFC1195中也加入了对于IP协议的支持,实现了IP路由能力。因此IS-IS也被称为集成化IS-IS(Integrated IS-IS)。 1.2 IS-IS协议的基本特点     IS-IS起源于ISO协议族,作为面向无连接网络服务CLNS (Connectionless Network Service)的一部分。     无连接网络服务CLNS (Connectionless Network Service)包括三个协议:         CLNP(Connectionless Network Protocol)是面向无连接的一种网络协议,类似于TCP/IP中的IP协议。         IS-IS是中间系统间的路由协议,类似于TCP/IP中路由器间的路由协议。         ES-IS是主机系统和中间系统间的路由协议,类似于IP中的Discover协议,如:ARP、ICMP、IRDP等。     CLNP、IS-IS、ES-IS三种协议都属于OSI模型中的网络层协议,直接承载在数据链路层之上。     IS-IS路由协议和其他路由协议不同,它直接承载在数据链路层之上。Peer间通过传递协议数据包(PDU)来传递链路信息,完成链路数据库的同步。     PDU (Protocol Data Unit)的格式分为三大部分:         数据链路层头:OSI Family 固定为0XFEFE。         IS-IS固定报文头:第一字节为0X83。如果采用ES-IS协议,其固定报文头的第一个字节为0x82,采用CLNP协议,其固定报文头的第一个字节为0x81。         IS-IS TLVs:具体描述IS的链路状态。     IS-IS和OSPF协议都属于链路状态算法的IGP路由协议,都是基于SPF算法。是目前流行最为广泛的两种IGP协议。IS-IS与OSPF协议相比,具有更好的扩展性和区域可以容纳更多的路由器等特点。     由于IS-IS起源于OSI协议,在Integrated IS-IS RFC1195中,逐步把IS-IS引入到TCP/IP协议族中,这样IS-IS既支持OSI,又支持IP,所以我们称Integrated IS-IS为Dual IS-IS。     IS-IS直接承载在数据链路层上,采用PDU(Protocol Data Unit)的封装,其核心部分为TLV的编址方式。由于TLV的编址方式扩展性很好,有时我们只需增加一种或几种新的TLV就可以对协议进行扩展,支持新的功能(如MPLS TE、IPV6等)。     IS-IS采用SPF算法,一旦链路状态发生变化,就会进行增量更新,SPF算法重新计算路由信息,收敛速度快。同时在IS-IS泛洪的LSP中包含有LSP的保持时间(Remaining Lifetime)、序列号(Sequence Number)等参数周期性的对LSP进行更新。     由于IS-IS良好的扩展性,适合大规模的网络结构,越来越被大型ISP选为构建骨干网的IGP路由协议。 1.3 IS-IS协议基本概念     1.3.1 协议相关术语     IS(Intermediate System)中间系统:具有数据包转发能力的网络节点,类似于IP中的路由器。     ES(End System)端系统:没有路由能力或数据包转发能力的网络节点,类似于IP中的主机。     DIS(Designated Intermediate System)指定中间系统:在IS-IS广播网络类型中,需要选举一个指定的中间系统,周期性的向其他路由器进行LSDB数据库的泛洪。功能类似于OSPF中的DR(Designated Router)。但是在OSPF中还有备份BDR(Backup Designated Router)的概念,IS-IS中没有备份的DIS概念。     Sys ID(System ID)系统ID:在IS-IS路由协议中使用System ID唯一标识一台中间系统,我们必须保证在整个IS-IS路由域中System ID的唯一性。功能上类似于OSPF的Router ID。     PDU(Packet Data Unit)报文数据单元:链路数据层传递的数据报文格式。IS-IS路由协议中又可分为Hello PDU、LS PDU、CSN PDU、PSN PDU。和OSPF协议对比,OSPF协议承载在IP协议之上, 所以PDU功能上有点类似于IP报文。     LSP(Link State PDU)链路状态协议数据单元:在IS-IS路由协议中使用LSP来描述本路由器的链路状态信息。通过LSP的泛洪,最终使整个区域内的所有中间系统拥有相同的链路状态数据库(LSDB)。功能上类似于OSPF中的LSA,但是LSA并不是一种单独的报文,是封装在OSPF的协议的报文中的。     NSAP(Network Service Access Point)网络服务访问点:OSI协议中网络层的编址方式。整个NSAP地址由两大部分组成:IDP(Inter-Domain Portion)域间部分和DSP(Domain Service Portion)域内服务部分。IDP类似于TCP/IP地址中的主网络号;DSP类似于TCP/IP地址中子网络号、主机号和端口号。     NET(Network Entity Title)网络试题标记:特殊的NSAP地址。其中的N-Selector部分为全0,专门为IS-IS设计。目前Huawei VRP和Cisco IOS都支持一台路由器上最多配置3个NET,方便进行网络的迁移。     IIH (IS to IS Hello PDU)IS到IS间的Hello PDU。在IS-IS路由协议中使用IIH报文进行邻居的发现、建立和维护。IS-IS协议规定的Hello有三种,分别为:ESH ( ES to IS Hello), ISH ( IS to ES Hello), IIH (IS to IS Hello)。但是纯IP的环境中只使用IIH一种Hello PDU。功能上类似于OSPF中的Hello报文。     PSNP(Partial Sequence Number PDU)部分序列号数据包:在IS-IS路由协议中用于确认和请求链路数据信息。在点到点的网络类型中用于确认链路数据信息,类似于OSPF协议中的LS Ack报文;在广播网络类型中用于请求和确认链路数据信息,类似于OSPF协议中的LS Request报文和LS Ack报文。     CSNP(Complete Sequence Number PDU)完全序列号数据包:在IS-IS路由协议中用于发布完整的链路数据信息。在广播网络类型中DIS路由器生成的伪节点周期性的发送CSNP报文给其他路由器进行数据库的同步,功能上类似于OSPF协议中的DD报文。 1.3.2 OSI 网络层地址编码格式     CLNP是OSI协议栈的第三层网络层协议。它编址方式NSAP地址具备变长的独特的编址格式。     整个NSAP地址由两大部分组成:IDP(Inter-Domain Portion)域间部分和DSP(Domain Service Portion)域内服务部分。IDP类似于TCP/IP地址中的主网络号;DSP类似于TCP/IP地址中子网络号、主机号和端口号。     IDP(Inter-Domain Portion)域间部分又分为AFI (Authority and Format ID)机构和格式ID和IDI(Inter-Domain ID)域间ID两部分。AFI用来标识地址格式和地址分配机构;IDI用来标识域。     DSP(Domain Service Portion)域内服务部分又分为HODSP(High Order DSP)DSP高位、System ID和NSEL三部分。HODSP用于分割区域,类似于TCP/IP地址中的子网号;System ID用于区分主机,类似于TCP/IP地址中的主机号;NSEL用于指示选定的服务相当于TCP/IP地址中的端口号。     我们通常把IDP和DSP中的HODSP统称为区域地址,区域地址部分为可变长度,范围:1-13个字节。     SYSTEM ID:是IS或ES在区域内的唯一标识,务必保证全局的唯一性,总共为6个字节,可以使用MAC地址或由IP地址转化得来。 1.3.3 网络标识实体:NET     关于NET的其他说明:         一个中间系统至少有一个NET(实际实现中VRP和IOS最多可以配置3个);         同一AREA的中间系统必须有相同的Area ID;         区域地址相当于OSPF中的区域号;         每个中间系统在一个AREA中必须有一个唯一的System ID;         SystemID相当于OSPF中的router id,保证全局唯一性;         一个路由域中的两个Level-2中间系统不能有相同的System ID;         一个路由域中的System ID必须有相同的长度;         一个中间系统的所有NET 必须有相同的System ID;         NET至少为8个字节,最多为20个字节。 1.3.4 分层     IS-IS路由协议和OSPF路由协议一样采用分层的体系结构。IS-IS路由协议采用两层结构:Level-1的普通区域和Level-2的骨干区域。     Level-1的普通区域中所有的路由器必须有相同的区域地址,相互间形成Level-1的邻居关系,整个区域中只有Level-1层次上的链路数据库LSDB,没有Level-2骨干区域的路由信息。类似于OSPF中的Total Subby区域。     Level-2的骨干区域由所有的Level-2路由器和L1/L2路由器组成。该区域中路由器间形成Level-2的邻居关系,拥有Level-2层次上的链路数据库LSDB和Level-1层次上的路由信息(由L1/L2路由器在区域边界转化)。主要注意的是务必保证骨干区域的连续性,在进行网络设计是尽量避免单点故障和单链路故障。     L1/L2路由器可以同时和L1层次的路由器形成Level-1的邻居关系,与L2层次的路由器形成Level-2的邻居关系。所以L1/L2路由器拥有Level-1的链路状态数据库LSDB和Level-2的链路状态数据库LSDB,在区域的边界完成把Level-1路由信息通告到Level-2骨干区域中。 1.3.5 IS-IS的分层路由域图示     以上图为例:         所有的L2路由器和L1/L2路由器组成了Backbone骨干区域,骨干区域的路由器间形成Level-2的邻居关系,拥有Level-2的链路数据库LSDB。同时保证骨干区域的连续性。         以普通区域49.0003为例,两台L1路由器和一台L1/L2路由器相互间形成Level-1的邻居关系,维护Level-1的链路数据库,没有骨干区域的路由信息,通过L1/L2路由器下发的默认路由出区域。注意本区域所有的路由器必须有相同的区域地址,否则无法建立邻居关系。 1.3.6 Level-1路由器     L1路由器仅同自己所处区域中的L1路由器和主机相邻,并拥有关于本区域的信息。     L1路由器对应的LSDB(Link State Database ,链路状态数据库)是1级LSDB,保存本区域内各系统(路由器和主机)的拓扑结构。     由于L1路由器没有外部路由信息,无法访问自治系统外部或区域外部的网络,这就需要处于L1和L2区域边界的L1/L2路由器来访问外部网络。具体做法:L1/L2路由器传递的LSP中包含有ATT bit参数,本区域中的L1路由器根据ATT bit来选择离本路由器最近的L1/L2路由器作为出区域的边界路由器,同时接受该边界路由器的一条默认路由。需要注意在通过ATT bit参数选择出区域的路径时采用的最近路径,但是最近的路径并不一定是最优路径,所以可能会导致次优路由的存在。 1.3.7 Level-2路由器     L2路由器和其他区域中的L2路由器构成邻居,组成IS-IS系统中的骨干网。L2拥有骨干网(第2级)的拓扑信息,并拥有关于可以到达L1的目的地址及如何通过L2拓扑到达的信息。     L2路由器对应的LSDB是2级LSDB,保存各个L2路由器之间相连的拓扑结构。     Level-2骨干区域由所有的L2路由器和L1/L2路由器组成,其中L1/L2路由器同时与L1路由器和L2路由器形成两种邻居关系。     所有的L2路由器和L1/L2路由器必须保证连续性,在进行IS-IS网络设计时避免单点故障和单链路故障。 1.3.8 Level-1-2路由器     原则上L1路由器只能和L1路由器相邻,L2路由器只能和L2路由器相邻,所以处于区域边缘上的路由器为了完成它所在的区域和骨干之间的路由信息的交换,应该既承担L1的职责也承担L2的职责,我们把这样的路由器称为L1/L2路由器,它处在两个层次中。同理在L1/L2路由器中既有1级LSDB也有2级LSDB。     L1/L2路由器网络位置处于区域的边界,完成将L1 LSDB的路由信息转换到L2 LSDB中,以便在骨干区域中传播。     L1/L2路由器同时还承担着指导本区域中的L1路由器如何访问外部网络。区域边界L1/L2路由器通过下发ATT bit,指导本区域的L1路由器选择离它最近的L1/L2路由器作为访问外部网络的出口,同时下发一条默认路由。 1.3.9 骨干区的连续性     骨干区域必须由所有的L2路由器和L1/L2路由器构建而成,同时必须保证骨干区域的连续性。上图中,骨干区域间有一台L1路由器,这样相当于骨干区域被分割了,这样Area 49.0001、Area 49.0003和Area 49.0002区域间无法通信。在OSPF路由协议中有虚链接的概念,可以通过虚连接把分割的骨干区域连接起来,但是在IS-IS路由协议没有这种概念。 1.3.10 区域     IS-IS将整个路由域分为若干个区域(Area),我们使用NET(Network Entity Title)中的Area ID部分来标识区域号。本区域的所有L1路由器必须有相同的Area ID,L2路由器则没有此限制。     Level-1的普通区域和Level-2的骨干区域间通过L1/L2路由器相连,L1/L2路由器完成把L1 LSDB的链路数据库信息转化为L2 LSDB的链路数据库信息传递到骨干区域中;同时通过ATT bit 指导L1路由器如何转发流量到外部网络。     IS-IS路由协议与OSPF路由协议不同,一台路由器必须整体属于某个区域,而不像OSPF路由协议那样一台路由器的不同接口可以分别属于不同的区域。可以说IS-IS是以路由器来划分区域的,而OSPF以接口来划分区域的。     IS-IS路由协议采用分层的网络结构,只有同一层次的路由器才能建立邻居关系,L1路由器只有和本区域的L1路由建立邻居关系,L2路由器可以和其他区域的L2路由器形成邻居关系,L1/L2路由器既可以和本区域的L1路由器形成邻居关系,又可以和其他区域的L2路由器形成邻居关系。 1.3.11 IS-IS协议适用的网络类型     IS-IS路由协议支持点到点的网络类型和广播的网络类型两种。理论上不支持NBMA和点到多点网络类型,如果需要在NBMA和点到多点的网络上部署IS-IS路由协议,通过划分子接口的方式,把NBMA和点到多点转化为多个点到点的网络类型。     OSPF路由协议支持点到点、广播、NBMA、点到多点和虚连接网络类型。所以IS-IS和OSPF相比支持的网络类型较少。 1.3.12 IS-IS协议的报文类型     在IS-IS路由协议中,协议报文总共有9种,所有的协议报文都是根据层次划分为Level-1和Level-2的报文。     IS-IS的Hello报文可以具体细分为:L1 IIH、L2 IIH和P-2-P IIH。L1 IIH的组播地址为:0180-C200-0014;L2 IIH的组播地址为:0180-C200-0015;P-2-P IIH采用单播地址进行通信。Hello报文的作用为发现、建立和维系邻居关系,功能上类似于OSPF协议中的Hello报文。     LSP 分为两种:Level 1 Link State PDU和Level 2 Link State PDU。Level 2 Link State PDU包含IS-IS路由区域中所有可到达前缀的信息;Level 1 Link State PDU只用于本地区域。LSP报文描述了本路由器中所有的链路状态信息。功能上类似于OSPF协议中的LSA。     CSNP分为两种:Level 1 CSNP和Level 2 CSNP。用于数据库同步,以范围来描述数据库LSDB中的所有的LSPs。包含地址范围,各LSP的简要信息:LSPid,SequeceNumber, checksum, remainning lifetime等重要信息。在广播网络上,CSNP报文由DIS定期发送(缺省10秒的周期),在点到点串行线路上,只在第一次形成邻接时发送CSNP。如果路由器的LSDB非常大,将分成多个CSNP发出。功能上类似于OSPF协议中的DD报文。     PSNP分为两种:Level 1 PSNP和Level 2 PSNP。PSNP报文用于数据库同步,主要有以下功能:在点到点(p2p)链路上路由器用来相互交换作为Ack应答以确认收到某个LSP;在广播网络中用来请求发送最新的LSP,当路由器从近邻接收到CSNP时,注意到某些LSP本地数据库中没有的(或自己的比较旧),路由器发送PSNP请求新的LSP。PSNP在头中利用LSPid,SequenceNumber,Remainning lifetime, LSP checksum来描述LSPs,仅仅包含有LSP报文的头部。在点到点(p2p)网络类型中功能上类似于OSPF协议中的LS Ack报文;在广播网络中功能上类似于OSPF协议中的LS Request报文。 第二章 IS-IS的工作原理 2.1 IS-IS邻接关系建立     2.1.1 IS-IS邻接关系建立 IS-IS路由协议中只有同一层次的相邻路由器才可能成为邻接体。在不同类型的网络上,IS-IS的邻接建立的方式并不相同,详细参见教材后面部分。     IS-IS路由协议通过IIH报文建立邻居关系时需要遵循的基本原则:         (1) 只有同一层次的相邻路由器才有可能成为邻接体         (2) 对于Level-1路由器来说要求区域号一致         (3) 同一网段检查,此项为华为特性。由于IS-IS直接承载在数据链路层之上,理论上是不需要进行同一网段的检查,VRP提供了这一新功能,保证邻居关系的正确建立。Cisco IOS无此功能。         (4) 与OSPF协议的不同之处。OSPF协议使用接口来划分区域,一台路由器可能同时属于多个区域,和多个区域的路由器形成邻居关系;而IS-IS协议规定路由器整体属于某个特定的区域,L1路由器只能建立Level-1的邻居关系,L2路由器只能建立Level-2的邻居关系。 2.1.2 点到点邻接关系     IS-IS路由协议中在点到点链路上,没有两次握手机制,即一方收到对方的hello,经过合法性检查后,邻居就直接up了。OSPF协议中需要两次握手才能建立邻居关系,可靠性更好。     在点到点链路上,缺省将进行ip地址在同一网段上的检查,ip地址不在同一网段将导致链路两端邻居建立失败。最近,VRP新做了一条命令,ignore-ppp-ip-check, 通过配置该命令可以取消ppp链路上的同一网段检查。该命令只对链路层为ppp协议的链路生效,缺省情况下该命令不生效。 2.1.3 广播网邻接关系     IS-IS路由协议中广播链路上需要进行两次握手验证,邻居才可以UP。因此可靠性更好一些。在这一点上和OSPF协议的广播类型一致。 2.1.4 指定路由器:DIS     在一个广播类型子网上,如果每个路由器都独立的和其他路由器(包括这个LAN 以外的路由器)进行LSP报文的交换以同步各自的链接状态数据库(LSDB),将导致一个巨大的流量增长。为了防止流量因为网络的增大而迅猛增加以及使得路由器保存的状态最少,IS-IS在广播类型子网上选出一个指定路由器(DIS,Designated IS),并由此DIS产生一个伪节点(pseudonode)来和其他路由器进行交互。伪节点不是一个真实的路由器,但它要占用一个额外的LSP 项。伪节点LSP是由DIS 创建的。     不同层次有不同层次的DIS,即L1级的广播网选举L1级的DIS,L2级的广播网选举L2级的DIS。IS-IS中不存在备份DIS,当一个DIS不能工作时,直接选举另一个。     IS-IS路由协议中的DIS和OSPF路由协议中的DR的区别:         在OSPF路由协议中,我们需要选举DR和BDR。DR一旦当选,具有终生制,如果DR发生故障,BDR接替原有的DR,同时重新选举BDR。而在IS-IS路由协议中,我们只需要选举DIS路由器,没有备份的DIS路由器的概念,DIS路由器不具有终生制,一旦网络中新增加的路由器DIS的优先级高于当前的DIS的优先级,网络中将重新选举新的DIS,网络的稳定性较差。         在OSPF路由协议中普通路由器DR Other只需和DR、BDR建立邻接关系,DR Other路由器间只需建立邻居关系,相互间握手即可。而IS-IS路由协议中由DIS生成一个伪节点(pseudonode),由伪节点周期性的发送CSNP报文和其他节点进行数据库的同步。     IS-IS 协议中,DIS 的选举是自动进行的。选举的依据是同一网络中各接口的优先权,如果最高的优先权的接口不止一个则从这些优先权相同的接口中找MAC 地址最大的。DIS 的选举是在IS 自身进行的,网络中的各个IS 根据所在网络的接口上的邻居信息来进行选举。由于整个网络中的邻居信息是一致的,所以各自进行的选举结果是相同的。     只有在广播网络类型上才会选举DIS,在Point-to-Point的网络类型不需要DIS 的选举。     不同层次有不同层次的DIS,即L1级的广播网选举L1级的DIS,L2级的广播网选举L2级的DIS。     IS-IS中不存在备份DIS,当一个DIS不能工作时,直接选举另一个。DIS由整个广播网络上优先级最高的IS担当,优先级相同时由MAC最大的担当。     DIS发送的Hello报文的时间间隔为普通路由器的1/3,这样便于其他路由器快速检测到DIS的失效,同时快速选举新的DIS接替。     在OSPF路由协议中,我们需要选举DR和BDR。DR一旦当选,具有终生制,如果DR发生故障,BDR接替原有的DR,同时重新选举BDR。而在IS-IS路由协议中,我们只需要选举DIS路由器,没有备份的DIS路由器的概念,DIS路由器不具有终生制,一旦网络中新增加的路由器DIS的优先级高于当前的DIS的优先级或当前的DIS发生故障,网络中将重新选举新的DIS,网络的稳定性较差。 2.2 链路状态数据库     2.2.1 TLV编码     TLV编址方式由三大部分组成:T--Type 、L--Length 、V-Value。该编址方式是一种高效率、扩展性较好的报文编址方式,通常也称为CLV编码。     由于TLV编址方式良好的扩展性,我们只需增加一种或几种新的TLV类型就可以扩展一些新特性,如MPLS TE、IPV6等。 2.2.2 链路状态数据单元LSP     在IS-IS路由协议中,LSP链路状态协议数据单元可以使用LSP ID来唯一标识,LSP ID 由Source ID、Pseudonode ID、LSP number三个标志组成。         Source ID:产生这个LSP的路由器的系统ID(System ID);         Pseudonode ID:如果产生这个LSP的系统是一个伪节点,侧它所由DIS分配的ID,对普通LSP为0;对Pseudonode LSP非0,这是区分一个LSP是否是伪结点产生的标志;         LSP Number:当一个LSP UDP需要分片时的,当前这个子LSP的序号; 2.2.3 LSP序列号     每个LSP报文中都包含后一个LSP Sequence Number参数,来标识该LSP报文的序列号。当第一次产生该LSP报文时,序列号值为1,当发生变化重新生成LSP时,序列号会逐次增加,LSP序列号的范围:0-65535。     当路由器接受到邻居发送过来的LSP时,会比较该LSP报文的序列号,如果序列号比本地数据库中的序列号更大,则表明该LSP报文更新,需要接收到本地的链路状态数据库中。 2.2.4 LSP生存时间     IS-IS路由协议的LSP生存时间从1200秒(20分钟)倒计时到 0,我们也可以设置最大为65535秒的生存时间;而OSPF路由协议的生存时间从0秒正计时到3600(60分钟)。         收到较新版本的LSP时,将重置生存时间;         IS-IS路由协议产生LSP的路由器会在15分钟时主动发起泛洪,进行LSP的更新,OSPF路由协议产生LSA的路由器会在30分钟时主动发起泛洪,更新LSA。 2.2.5 完全时序协议数据单元CSNP     CSNP内容包含: 地址范围,各LSP的简要信息:         LSP id,Sequence Number, checksum, remaining lifetime等重要信息;         在广播网络上,由DIS定期发送(缺省10秒的周期);         在点到点串行链路上,只在第一次形成邻接时发送CSNP来同步LSDB;     如果路由器的LSDB非常大,将分成多个CSNP发出。 2.2.6 部分时序协议数据单元 PSNP     PSNP分为两种:Level 1 PSNP和Level 2 PSNP。内容和CSNP一样,利用LSPid,Sequence Number,Remaining Lifetime,LSP Checksum来描述。     在点到点(P2P)链路上路由器用来作为Ack应答以确认收到某个LSP。     在广播网络中用作LS Request报文请求需要的LSP。     IS-IS路由域内的所有路由器都会产生LSP,由以下事件触发一个新的LSP:         (1) 相邻路由器发生状态变化(up/down)         (2) 本路由器的接口发生状态变化(up/down)         (3) 接口被分配一个新的度量(metric)         (4) 足以引起路由信息变化的配置改变         (5) 老的LSP的超时时间到(定期刷新)     当路由器收到一个LSP报文时,会与自己LSDB中对应(对应产生此LSP的路由器)的已有LSP进行比较:         (1) 如果收到的LSP比已有的序列号更大,则将这个新的LSP存入自己的LSDB中,再通过一个PSNP报文来确认此LSP,最后将这个新LSP再接着“泛洪”到所有其他邻居。         (2) 如果收到的LSP和已有的具有相同的序列号,则直接通过一个PSNP报文确认此LSP。         (3) 如果收到的LSP比已有的序列号更小,则通过一个PSNP报文确认此LSP,再发送给对方我们版本的LSP,然后等待对方给我一个PSNP报文作为回答。 2.2.7 广播网络数据库交换原理     DIS以组播地址周期性的发送CSNP报文给区域内的所有邻居,中间系统接收到CSNP报文,在数据库中搜索对应的记录,如果本地不存在、有更新的报文,则向DIS发送PSNP报文进行请求。然后DIS根据请求发送相应的LSP给请求的中间系统,同时等待接受PSNP报文进行确认。 2.2.8 广播网络数据库交换图解     以上图为例:         DIS(RTB)产生的伪节点周期性的发送CSNP报文给本区域中的其他路由器,普通路由器接受到CSNP报文后,和本地链路状态数据库LSDB进行比较:         如果本地数据库中没有的或者有更新的LSP信息,则向DIS路由器发送PSNP报文请求需要的LSP。DIS路由器收到请求报文PSNP,根据要求发送LSP给相应的请求路由器。         如果收到的CSNP报文中的LSP信息比本地数据库中的要陈旧,则发送本地的LSP给DIS进行更新。         如果收到的CSNP报文中的LSP信息和本地数据库中信息一致,则不做任何操作。 2.2.9 点到点链路数据库交换原理     P to P网络类型中,一旦邻居关系建立后,邻居间相互发送LSP报文进行LSDB的同步。     如果收到的LSP本地没有或更新,则接受到本地的数据库中,再通过一个PSNP报文来确认收到此LSP;     如果收到的LSP和已有的具有相同的序列号,则直接通过一个PSNP报文确认收到此LSP;     如果收到的LSP比已有的序列号更小,则通过一个PSNP报文确认此LSP,再发送给对方我们版本的LSP,然后等待对方给我一个PSNP报文作为回答。 2.2.10 点到点链路数据库交换图解     以上图为例:         RTA与RTB一旦邻居关系建立起来后,RTA发送本地链路数据库中的LSP给邻居RTB,RTB接收到LSP后,发送PSNP报文进行确认。同理,RTB的处理过程和RTA相同。 2.2.11 ATT位的功能     ATT bit由L1/L2路由器产生,包含在LSP中,随着泛洪过程传递给区域内的L1路由器。     当某个区域的L1/L2 路由器和其它区域有连接关系的时候,它将在它产生的L1 LSP中设置ATT bit,来告诉本区域中的L1路由器,它有一个区域出口点;     本区域的L1路由器利用L1 LSPDB中的ATT bit来作为可能的区域出口点;     如果有多个,选择一个离自己最近的设置了ATT bit的L1/L2路由器作为区域的缺省出口点,对于IP路由来说,具体表现就是L1路由安装一条指向该L1/L2路由的缺省路由0.0.0.0/0在路由表中。     由于是离自己最近的边界路由器,并不一定是最优路径,所以可能存在次优路由,我们可以通过路由渗透的方法,强制把骨干区域的路由注入到Level-1区域内,保证路径选择的可靠性和最优性。 第三章 IS-IS的路由计算 3.1 路由计算     3.1.1 SPF算法简介 链路状态路由协议都是基于近邻关系的,每个路由器公开其链路的开销和状态。所以区域里每个路由器知道区域内所有活动的链路,并知道有关这些活动链路所标识路由器发起的信息,然后把该状态信息传播到其他路由器。传播信息使所有路由器保持同一数据库。每个路由器用唯一的地址来标识,从而避免了循环。     链路状态的路由协议都是基于SPF算法,计算时,每台路由器都是以自己为根节点,其他路由器为叶子节点,根据网络拓朴信息生成一棵最短路径树(SPT),然后计算出根节点到各个目的地的最短路径。     由于IS-IS路由协议采用分层的网络结构,SPF算法根据Level-1和Level-2两个数据库分别独立计算各自的SPT树。 3.1.2 SPF算法举例    以上图RTA为例,介绍路由计算过程:         RTA路由器根据本地链路数据库信息,以自己为根路由器,其他路由器为叶子节点,使用SPF算法产生了右图所示的SPT最短路径树。然后根据最短路径树上的附带的花费值计算出根节点到各个目的网段的路由。         由于产生的SPT树为单向且不可逆转的路径树,可以从算法上保证区域内无路由环路的发生。 3.1.3 IS-IS路由计算原理     IS-IS路由协议中区域中所有的路由器拥有相同的链路状态数据库LSDB,但是每台路由器都是以自己为根节点,其他路由器为叶子节点,生成了一棵单向的、不可逆转的最短路径树SPT。然后根据SPT树以及链路相应的花费值计算出各自的路由表。 第四章 IS-IS的增强特性 4.1 IS-IS增强特性     4.1.1 路由渗透     Attatch bit:RFC1195中规定,当某个区域的L1/L2 路由器和其它区域有连接关系的时候,它将在它的L1 LSP中设置ATT bit,来告诉本区域中的L1路由器,它有一个出口点;本区域的L1路由器选择一个最近的设置了ATT bit的L2路由器作为区域的缺省出口点,并以此产生一条缺省路由。     由于L1路由器选择最近的L1/L2路由器作为本区域的出口,但是最近的路径并非是最优的路径,很可能会导致次优路径的产生。     在RFC2966中定义了路由渗透的概念,为了避免次优路由的出现,人为的把骨干区域的路由信息注入到普通的Level-1区域,保证普通区域也拥有整个IS-IS路由域的路由信息。     一旦把L2的路由注入到L1中后,可能会导致路由的环路,可以通过Up/Down位来预防环路的发生。 上图Area 49.0001中RTA缺省情况下,根据选择最近的L1/L2路由器的原则,会选择RTA-RTC-RTE这条路径出本区域,但是RTA- RTC-RTE路径的优先级为10+30=40,而RTA-RTB-RTD-RTE路径的总花费10+10+10=30,所以RTA-RTC-RTE路径虽然是最近的路径,但不是最佳的路径。缺省情况下选择RTA- RTC-RTE路径会导致次优路由的存在。     我们通过路由渗透的方法,把骨干区域的路由信息注入到普通区域,这样普通区域可以知道整个路由域的路由信息,这时RTA会选择RTA-RTB-RTD-RTE路径转发相应的流量,避免了次优路由的出现。 4.1.2 宽度量模式 wide-metric     在wide-metric模式下,接口metric为0~16777215。总路径长度可达到4261412864     注意:VRP和IOS缺省都是使用传统的narrow metr
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服