CN101150514B - 支持附加sys-id的is-is路由实现方法及装置 - Google Patents

支持附加sys-id的is-is路由实现方法及装置 Download PDF

Info

Publication number
CN101150514B
CN101150514B CN2007101663806A CN200710166380A CN101150514B CN 101150514 B CN101150514 B CN 101150514B CN 2007101663806 A CN2007101663806 A CN 2007101663806A CN 200710166380 A CN200710166380 A CN 200710166380A CN 101150514 B CN101150514 B CN 101150514B
Authority
CN
China
Prior art keywords
lsp
sys
neighbor
route
subclass
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2007101663806A
Other languages
English (en)
Other versions
CN101150514A (zh
Inventor
钱雪彪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2007101663806A priority Critical patent/CN101150514B/zh
Publication of CN101150514A publication Critical patent/CN101150514A/zh
Application granted granted Critical
Publication of CN101150514B publication Critical patent/CN101150514B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种支持附加SYS-ID的IS-IS路由实现方法和装置。该方法包括:构建LSDB中每一IS基于不同PSN-ID的LSP集合,其中,任一LSP集合包括在某一PSN-ID下,该IS以标准SYS-ID生成的LSP以及以附加SYS-ID生成的LSP;进行路由拓扑计算时,在LSDB中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查;如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应该第一IS的相应LSP集合,则回指检查通过,建立第一IS与第二IS之间的路由拓扑路径。通过本发明公开的方法及装置,简单有效地实现了支持附加SYS-ID的IS-IS路由。

Description

支持附加SYS-ID的IS-IS路由实现方法及装置
技术领域
本发明属于网络通信技术领域,涉及通信网络中的路由技术,尤其涉及一种支持附加SYS-ID的IS-IS路由实现方法以及支持附加SYS-ID的IS-IS路由实现装置。
背景技术
IS-IS(Intermediate System to Intermediate System Intra-Domain Routing Exchange Protocol,中间系统间域内路由交换协议)是一种基于SPF(Shortest Path First,最短路径优先)算法的IGP(Internal Gateway Protocol,内部网关协议),其利用LSP(Link State Protocol,链路状态协议)数据单元(简称LSP)携带相关的路由和拓扑信息,并根据由LSP构成的LSDB(Link State Database,链路状态数据库)进行路由计算。以图1A所示情况为例,假设在R0设备上的LSDB一共包含三个LSP,分别由IS(Intermediate System,中间系统)R0、R1和R2生成。可以看出,R0生成的LSP标识了R0设备上存在邻居R1,R1生成的LSP标识了R1设备上存在邻居R0和R2,R2生成的LSP标识了R2设备上存在邻居R1。显然,路由计算的过程就是对LSP的分析处理过程:通过分析R0产生的LSP,可以知道R0与R1相连;通过分析R1产生的LSP,可以知道R1和R2相连,因此很容易形成如图1B所示的拓扑关系图。同时,为了确保网络拓扑的双向连通,必须进行2WAY(双向)检查,例如通过分析R1生成的LSP发现R2,则必须回指检查R2生成的LSP中是否存在邻居R1,在存在的情况下R1和R2之间的连接才能正式成为可用拓扑路径。
从图1A可以看出,LSP通过“LSP报文头+一组TLV(Type Length Value,类型长度值)数据”的结构实现对LSP和邻居IS的标识,如图2A所示。其中,LSP报文头通过LSP-ID唯一标识该LSP,如图2B所示,该LSP-ID包括6字节的SYS-ID(系统标识符),1字节的PSN-ID(pseudonode ID,伪节点标识符)以及1字节的LSP-Num(LSP分片号);其中,SYS-ID标识生成该LSP的IS;PSN-ID为0时标识该IS全局生成的非伪节点LSP,PSN-ID为01~FF时标识该IS上某些DIS(Designed IS,指定中间系统)接口生成的伪节点LSP。同时,TLV通过携带有Neighbor-ID(邻居标识符)的IS Neighbors(IS邻居信息)字段实现对邻居IS的标识。如图2C所示,该Neighbor-ID包括邻居IS的SYS-ID和PSN-ID。
在大规模路由网络中,上述LSP的数据结构大大限制了IS-IS的应用。这是由于:LSP-ID的格式决定了一个IS仅能生成0~FF共256个能够发布IP可达地址TLV的非伪节点LSP;根据一个LSP的常见缺省大小1500字节来计算,256个LSP一共能存放的IP可达地址TLV大概在4万条以内,即一个IS在一个区域内仅能发布4万条以内的路由信息。
为了克服这一问题,RFC3786(RFC:Request For Comments,请求评议的互联网草案)提供了IS-IS扩展LSP片段的技术方案“Extending the Number of Intermediate System to Intermediate System(IS-IS)Link State PDU(LSP)Fragments Beyond the 256 Limit”:在每一个IS中配置多个SYS-ID,主用SYS-ID称为标准SYS-ID(Normal SYS-ID),其生成的LSP称为原始LSP(Original LSP);其余SYS-ID称为附加SYS-ID(Additional SYS-ID),其生成的LSP称为扩展LSP(Extended LSP)。由于每一个SYS-ID生成的非伪节点LSP为256个,因此,当同一个IS在同一个区域生成的所有扩展LSP和原始LSP存在隶属关系时,IS所能生成的发布路由信息的LSP个数就是256与所配置的SYS-ID个数之积,大大提高了一个IS所能发布的路由条数。其中,为了表示扩展LSP和原始LSP的隶属关系,RFC3786所提供的技术方案在每个附加SYS-ID生成的第0片扩展LSP(即LSP-Num为0)中存放一个IS-Alias-ID TLV(IS别名标识符TLV),在该TLV中记录所隶属的标准SYS-ID和相应的PSN-ID;可以看出,实现LSP片段扩展后,一个IS可以生成更多的LSP并发布,从而使得一个IS支持发布的路由总条数得到大幅度提升。
理论上来说,网络上其他IS收到LSP后通过IS-Alias-ID能够识别各原始LSP和扩展LSP的隶属关系,从而正确计算并建立路由;但是由于这种扩展的LSP难以通过2WAY检查,因此导致该技术方案的实现瓶颈。举例来说,如图3所示,假设IS-A和IS-B建立IS-IS邻居关系,其中IS-A的SYS-ID为R0,IS-B使用了LSP片段扩展方案,其标准SYS-ID为R1,附加SYS-ID为R2:通常情况下,IS-A只与IS-B的标准SYS-ID建立邻居关系,亦即在IS-A产生的LSP中只会存在一个Neighbor-ID为R1的IS Neighbors TLV;假设IS-B由于其标准SYS-ID(R1)生成的原始LSP被其他内容占满,而将Neighbor-ID为R0的IS Neighbors TLV放入由附加SYS-ID(R2)生成的扩展LSP;可以看出,虽然R2产生的LSP存在指向R0的LSP,但检查R0生成的LSP中却只存在邻居R1,因此路由计算无法通过2WAY检查,无法正常计算出相关路由。
为了突破上述瓶颈,实现对附加SYS-ID的支持,现有技术中通常是采用标准SYS-ID发送IIH(IS-IS Hello Packets,IS-IS Hello报文)去发现邻居IS,但当邻居关系UP后向原始LSP添加IS Neighbors TLV发现没有空间,因此转而将该TLV放入扩展LSP后,需要用扩展LSP对应的附加SYS-ID重新发送IIH报文来重建邻居关系,即确保被使用的扩展LSP所对应的附加SYS-ID与相应的IS建立邻居关系,以便在路由计算时通过2WAY检查。
不难看出,这种支持附加SYS-ID的技术方案需要重新进行邻居关系的建立;同时,由于IIH报文是针对接口发送的,因此对于同一个接口建立多个邻居的广播口而言还要考虑对该接口上其他受影响邻居的配合调整。总的来说,其整体实现比较复杂繁琐。
发明内容
本发明的目的是克服现有技术中所存在的缺陷,提供一种简单可行的支持附加SYS-ID的IS-IS路由实现方案。
为实现上述目的,本发明的实施例提供了一种支持附加SYS-ID的IS-IS路由实现方法,包括以下步骤:
S1、构建LSDB中每一IS基于不同PSN-ID的LSP集合,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准SYS-ID生成的LSP以及以附加SYS-ID生成的LSP;
S2、进行路由拓扑计算时,在LSDB中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查;如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过,建立第一IS与第二IS之间的路由拓扑路径。
本发明的实施例还提供了一种支持附加SYS-ID的IS-IS路由实现装置,设置在包括依次连接的LSP收集单元、LSDB和LSP拓扑建立单元的IS中;该IS-IS路由实现装置包括:
LSP集合组织单元,与该LSDB连接,用于构建LSDB中每一IS基于不同PSN-ID的LSP集合并保存,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准SYS-ID生成的LSP以及该IS以附加SYS-ID生成的LSP;
LSP回指检查单元,与LSP集合组织单元连接,用于在LSDB中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查,如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过并触发所述LSP拓扑建立单元建立所述第一IS与第二IS之间的路由拓扑路径,否则回指检查失败并拒绝建立路由拓扑路径。
由上述技术方案可知,本发明的实施例通过扩展2WAY检查对象的范围,具有以下有益效果:
1、有效实现了支持附加SYS-ID的IS-IS路由实现;
2、无需在IS Neighbors TLV放入扩展LSP时重新执行邻居关系的建立,简化了支持附加SYS-ID的IS-IS路由实现过程。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1A为IS-IS路由过程中一LSDB实例的组成示意图;
图1B为基于图1A所示LSDB形成的拓扑关系图;
图2A为LSP的数据结构示意图;
图2B为LSP报文头的数据结构示意图;
图2C为TLV中Neighbor-ID的数据结构示意图;
图3为现有技术中对扩展LSP进行2WAY检查的情况示意图;
图4为本发明所提供的支持附加SYS-ID的IS-IS路由实现方法的一实施例流程图;
图5为本发明所提供的支持附加SYS-ID的IS-IS路由实现方法的另一实施例流程图;
图6为IS-Alias-ID TLV的数据结构示意图;
图7为采用链表形式实现LSP集合的一结构示意图;
图8为图5所示方法中查找该LSP所在的第一IS的LSP集合的流程图;
图9为图5所示方法中查找第一Neighbor-ID指向的第二IS的LSP集合的流程图;
图10为本发明所提供的支持附加SYS-ID的IS-IS路由实现方法的一具体实施例示意图;
图11为本发明所提供的支持附加SYS-ID的IS-IS路由实现装置的一实施例框图;
图12为本发明所提供的支持附加SYS-ID的IS-IS路由实现装置的另一实施例框图。
具体实施方式
为了避免每一次在IS Neighbors TLV放入扩展LSP时重新执行邻居关系的建立,简单有效的实现对具有附加SYS-ID的IS-IS路由的支持,本发明通过扩展2WAY检查对象的范围,提供了一种支持附加SYS-ID的IS-IS路由实现方法和相应的支持附加SYS-ID的IS-IS路由实现装置。
请结合图4及图5,该支持附加SYS-ID的IS-IS路由实现方法包括以下步骤:
S1、构建LSDB中每一IS基于不同PSN-ID的LSP集合,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准SYS-ID生成的LSP以及以附加SYS-ID生成的LSP;
具体来说,在每一个IS的LSDB中,既包括了IS自身生成的LSP,也包括了收集到的其它IS生成的LSP,依据该LSDB,每一个IS能够进行路由拓扑计算。无论对于自身生成的LSP,还是其它IS生成的LSP,在具有附加SYS-ID的情况下,对于任一IS的PSN-ID,生成的LSP都可能包括以标准SYS-ID生成的原始LSP以及以附加SYS-ID生成的扩展LSP,该以附加SYS-ID生成的扩展LSP用于在标准SYS-ID生成的原始LSP全部被占用时提供对更多路由信息的支持。
由于现有技术中进行2WAY检查基于的是包括SYS-ID和PSN-ID在内的Neighbor-ID,这就导致了同一IS下,具有相同PSN-ID的原始LSP和扩展LSP无法统一起来;为了克服这一问题,本步骤采用将原始LSP以及扩展LSP集合起来的技术方案。
在现有技术中,第0片(LSP-Num=0)的原始LSP和扩展LSP都记录有IS-Alias-ID TLV,其数据结构如图6所示,包括:6字节的标准SYS-ID,用于填写扩展LSP所隶属的原始LSP对应的标准SYS-ID,对于原始LSP而言,此处填写的内容为其自身SYS-ID和PSN-ID;1字节的PSN-ID,用于填写扩展LSP所隶属的原始LSP的伪节点标识符,即扩展LSP与原始LSP的PSN-ID是统一的;1字节的Sub-TLVs Length字段,用于填写Sub-TLVs长度;总长度为Sub-TLVs Length指定长度的Sub-TLVs,用于填写一些附属属性,目前暂时作为保留使用。根据上述结构可以看出,增加了IS-Alias-ID TLV后,能够有效标识出同一个IS产生的原始PLS与扩展PLS之间的隶属关系。而本发明所提供的方法也可以基于这一点进行2WAY检查对象的扩展。
具体的,本步骤S1包括:
S11、检查LSDB中所有LSP的LSP-ID,将具有相同SYS-ID和PSN-ID的LSP通过某种数据结构(比如可以通过链表)组织起来,分别构成LSDB的子集;其中,每一个子集中都会包含一个携带IS-Alias-ID TLV的LSP;
S12、对每一子集中记录有IS-Alias-ID TLV的LSP进行检查;
按照现有技术的情况,一般是第0片(即LSP-Num=0)的LSP携带IS-Alias-ID TLV;因此,步骤S12往往是对第0片LSP进行检查。当然,如果定义记录IS-Alias-ID TLV的LSP为其它分片,本发明技术方案同样适用。
S13、将具有相同IS-Alias-ID TLV的子集关联起来,构成对应于相应IS的LSP集合;
本步骤S13的具体操作可以为:通过链表将具有相同IS-Alias-ID TLV的LSP组织起来,从而实现具有相同IS-Alias-ID TLV的子集的关联。
通过上述步骤S1,就可以将原始LSP以及隶属于其的扩展LSP组织成一个大的逻辑LSP,其中包含所有具有相同IS-Alias-ID TLV内容的第0分片LSP以及和这些LSP具有相同SYS-ID和PSN-ID的所有其他LSP。如图7所示,为采用链表形式实现LSP集合的一结构示意图,任何一个LSP集合都包含了一IS在一PSN-ID下全部的LSP。但本领域技术人员可以理解,组织LSP的方法并不局限于链表,也可以采用其他的数据结构加以组织。
在构建了LSP集合之后,就可以将其应用到IS-IS路由计算的2WAY检查中,包括:
S2、进行路由拓扑计算时,在LSDB中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查;如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过,建立第一IS与第二IS之间的路由拓扑路径。
通过本步骤S2可以看出,路由计算进行2WAY检查时,始终以LSP和Neighbor-ID相关的整个LSP集合为准,整个LSP集合中任一LSP满足2WAY检查条件就可以通过2WAY检查。具体可以包括:
S21、查找该LSP所在的第一IS的LSP集合;
由于该LSP携带有该第一Neighbor-ID,因此需要进行回指检查。
按照现有技术中邻居关系建立的原则,一般是与IS的正常SYS-ID建立邻居关系,当然也不排除某些情况下,附加SYS-ID与正常SYS-ID以及附加SYS-ID与附加SYS-ID之间建立邻居关系。因此,为了保证具有附加SYS-ID的IS-IS的2WAY检查成功,其回指检查对象为该LSP所在的一第一IS的LSP集合。
当集合以链表形式组织携带有IS-Alias-ID TLV的LSP时,本步骤S11具体可采取的操作请结合图8,包括:
S211、提取该LSP的SYS-ID和PSN-ID;
S212、查找以该SYS-ID和PSN-ID生成的记录有IS-Alias-ID TLV的LSP,一般为以该SYS-ID和PSN-ID生成的第0分片LSP;
S213、根据该记录有IS-Alias-ID TLV的LSP查找相应的第一IS的LSP集合。
S22、查找该第一Neighbor-ID所对应的第二IS的LSP集合;
为了保证具有附加SYS-ID的IS-IS的2WAY检查成功,回指检查范围为第一Neighbor-ID指向的第二IS的LSP集合。当集合以链表形式组织携带有IS-Alias-ID TLV的LSP时,具体可采取的操作请结合图9,包括:
S221、查找以该第一Neighbor-ID生成并记录有IS-Alias-ID TLV的LSP,亦即,查找与该第一Neighbor-ID一致的SYS-ID和PSN-ID生成的LSP;
具体的查找方法与LSP的存储方式有关,比如,可以以该第一Neighbor-ID为关键字,以哈希表形式查找与所述第一Neighbor-ID内容一致并记录有IS-Alias-ID TLV的LSP;本领域技术人员也可以采用其他的查找方法实现。
同时,根据现有技术,所查找到的LSP一般为第0分片LSP,即该LSP-ID中SYS-ID与PSN-ID内容与该第一Neighbor-ID内容一致并且LSP-Num为0的LSP。
S222、根据该LSP查找相应的第二IS的LSP集合;在本实施例中,可以根据链表直接查找出第二IS的LSP集合。
需要指出的是,基于不同的集合组织与存储方式,步骤S21和步骤S22也可以采用其他的查找方式。
S23、遍历第二IS的LSP集合,一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的LSP集合时,回指检查通过并建立第一IS与第二IS之间的路由拓扑路径,否则回指检查失败并拒绝建立第一IS与第二IS之间的路由拓扑路径;
以及,如果存在第二Neighbor-ID为相应第一IS的LSP集合中标准SYS-ID和PSN-ID或者附加SYS-ID和PSN-ID之一的LSP时,回指检查通过。
由于同样的SYS-ID和PSN-ID所生成的所有LSP分片的LSP-ID都相同,只是LSP-Num不一致而已,因此,本步骤S23中仅对该LSP集合中所有第0分片或者第X分片(X=1、2……)的SYS-ID和PSN-ID进行检查即可,以降低比较的工作量。
通过上述步骤S1~S2,无论IS之间使用正常SYS-ID或者附加SYS-ID建立邻居,也无论IS邻居TLV放到原始LSP或者扩展LSP中,都可以正确的通过2WAY检查并正确计算出路由信息,从而有效支持扩展LSP所携带的邻居信息,提高了扩展LSP的使用意义。同时,本发明所提供的方法相比于RFC3786推荐的方法更为简单,无需进行邻居关系的重新建立,因此易于实现,具有更大的推广价值。
请结合图10,作为本发明所提供的支持附加SYS-ID的IS-IS路由实现方法一具体实施例,能够比较直观的说明本发明的有益效果所在。如图10所示,LSP RA集合中包含其标准SYS-ID(RA)生成的LSP RA.00~RA.ff、附加SYS-ID(RA1)生成的LSP RA1.00~RA1.ff以及附加SYS-ID(RA2)生成的LSP RA2.00~RA2.ff,LSP RB集合中包含其标准SYS-ID(RB)生成的LSP RB.00~RB.ff、附加SYS-ID(RB1)生成的LSP RB1.00~RB1.ff以及附加SYS-ID(RB2)生成的LSP RB2.00~RB2.ff。则,只要LSP RA集合中有任意LSP包含指向RB、RB1和RB2中任意一个的IS Neighbors TLV,同时LSP RB集合中有任意LSP包含指向RA、RA1和RA2中任意一个的ISNeighbors TLV,则2WAY检查就可以通过。
进一步的,为了保证回指检查的正确性,本发明所提供的支持附加SYS-ID的IS-IS路由实现方法还包括:周期性或者实时检查LSP的变化,并相应调整所述LSP集合。
需要说明的是,本发明所提供的支持附加SYS-ID的IS-IS路由实现方法是基于已划分的LSP集合进行的;但此并非局限,本发明所提供的方案还包括:通过在每一次路由计算时根据需要划分LSP集合来取代预先划分LSP集合,并根据实时划分的LSP集合进行回指检查。可以看出,该技术方案同样能够达到支持具有附加SYS-ID的IS-IS路由且无需重建邻居关系的技术效果。但是,这种方案将带来较大的系统开销。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括如下步骤:
S1、构建LSDB中每一IS基于不同PSN-ID的LSP集合,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准SYS-ID生成的LSP以及以附加SYS-ID生成的LSP;
S2、进行路由拓扑计算时,在LSDB中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查;如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过,建立第一IS与第二IS之间的路由拓扑路径。
所述的存储介质包括:ROM/RAM、磁碟或者光盘等。
本发明的实施例还提供了一种支持附加SYS-ID的IS-IS路由实现装置100,其设置在包括依次连接的LSP收集单元201、LSDB 202和LSP拓扑建立单元203的IS 200中;其中,LSDB 202用于存储LSP收集单元201收集到的完整LSP信息。当一IS作为进行路由计算的IS时,LSP拓扑建立单元203根据LSDB 202中的信息进行拓扑计算,同时IS-IS路由实现装置100相应启动。
请结合图11,该IS-IS路由实现装置100包括:
LSP集合组织单元101,与LSDB 202连接,用于构建LSDB202中任一IS基于不同PSN-ID的LSP集合并保存,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准SYS-ID生成的LSP以及该IS以附加SYS-ID生成的LSP;
LSP回指检查单元102,与LSP集合组织单元101连接,用于在LSDB202中第一IS的一LSP携带的第一Neighbor-ID所对应的第二IS的LSP集合中进行回指检查,如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过并触发LSP拓扑建立单元203建立该第一IS 200与第二IS 200之间的路由拓扑路径,否则回指检查失败并拒绝建立路由拓扑路径。
可以看出,通过本发明所提供的支持附加SYS-ID的IS-IS路由实现装置100,在路由计算中进行2WAY检查时,同样是始终以整个LSP集合为准,整个LSP集合中任一LSP满足2WAY检查条件就可以通过2WAY检查。从而,无论IS之间使用正常SYS-ID或者附加SYS-ID建立邻居,也无论IS邻居TLV放到原始LSP或者扩展LSP中,都能够简单有效的实现支持附加SYS-ID的IS-IS路由。
请参考图12,为路由实现装置100一具体实施例的框图,其中:
LSP集合组织单元101可以包括:
LSP子集构建模块1011,用于将LSDB 202中具有相同SYS-ID和PSN-ID的LSP组织为子集;
LSP子集保存模块1012,与LSP子集构建模块1011连接,用于保存子集;具体的,该LSP子集保存模块1012可以为保存具有相同SYS-ID和PSN-ID的LSP的链表;
LSP子集关联模块1013,与LSP子集保存模块1012连接,用于保存具有相同IS-Alias-ID TLV的子集关联信息;具体的,该LSP子集关联模块1013可以为保存具有相同IS-Alias-ID TLV的LSP的链表。
结合图7可以看出,该LSP集合组织单元101构建形成的LSP集合中,包括了每一IS以正常SYS-ID和附加SYS-ID生成的全部LSP。
LSP回指检查单元102可以包括:
回指检查启动模块1021,用于对该LSP所携带的第一Neighbor-ID启动回指检查;
LSP集合查找模块1022,与回指检查指令接收模块1021和LSP集合组织单元101连接,用于查找该LSP所在的第一IS的LSP集合以及第一Neighbor-ID所对应的第二IS的LSP集合;
LSP集合遍历模块1023,与LSP集合查找模块1022和LSP集合组织单元101连接,用于遍历该第二IS的LSP集合,存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的LSP集合时,即存在第二Neighbor-ID为该第一IS的LSP集合中标准SYS-ID和PSN-ID或者附加SYS-ID和PSN-ID之一的LSP时,触发LSP拓扑建立单元203来建立第一IS 200与第二IS 200路由拓扑路径,否则拒绝建立路由拓扑路径。
较佳的,为了保证回指检查的正确性,LSP集合组织单元101还包括:LSP更新模块1014,用于周期性或者实时检查LSP的变化,并相应触发LSP子集构建模块1011。
本领域技术人员可以理解,本发明提供的支持附加SYS-ID的IS-IS路由实现装置100可以采用集中设置的方式,来替代上述描述的设置在IS中的技术方案。具体的,是将该IS-IS路由实现装置作为一个独立的设备,与一个区域内全部的IS连接,并收集这些IS生成的LSP并构建集合。这样,任一IS进行路由拓扑计算的回指检查时,可以向该IS-IS路由实现装置100发出2WAY检查指令,并根据获得的检查结果进行拓扑建立,从而避免在每一个IS中进行LSP集合的构建。
进一步的,对于上述实施例中提供的支持附加SYS-ID的IS-IS路由实现方法和支持附加SYS-ID的IS-IS路由实现装置而言,不仅适用于非伪节点LSP,也适用于伪节点LSP,即PSN-ID为合法的任意值时都适用于本专利,其中伪节点LSP与非伪节点LSP的差别仅在于PSN-ID有所不同。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围。

Claims (13)

1.一种支持附加SYS-ID的IS-IS路由实现方法,其特征在于,包括以下步骤:
S1、构建链路状态数据库LSDB中每一中间系统IS基于不同伪节点标识符PSN-ID的链路状态协议LSP集合,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准系统标识符SYS-ID生成的LSP以及以附加SYS-ID生成的LSP;
S2、进行路由拓扑计算时,在LSDB中第一IS的一LSP携带的第一邻居标识符Neighbor-ID所对应的第二IS的LSP集合中进行回指检查;如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过,建立第一IS与第二IS之间的路由拓扑路径。
2.根据权利要求1所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述步骤S1包括:
S11、将LSDB中具有相同SYS-ID和PSN-ID的LSP组织为子集;
S12、对每一子集中记录有IS别名标识符类型长度值IS-Alias-ID TLV的LSP进行检查;
S13、将具有相同IS-Alias-ID TLV的子集关联起来,构成对应于相应IS的LSP集合。
3.根据权利要求2所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述步骤S11包括:通过链表将具有相同SYS-ID和PSN-ID的LSP组织起来。
4.根据权利要求2所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述记录有IS-Alias-ID TLV的LSP为第0片LSP,所述步骤S12为对每一子集中的第0片LSP进行检查。
5.根据权利要求2所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述步骤S13包括:通过链表将具有相同IS-Alias-ID TLV的LSP组织起来,实现具有相同IS-Alias-ID TLV的子集的关联。
6.根据权利要求1所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,还包括:周期性或者实时检查LSP的变化,并相应调整所述LSP集合。
7.根据权利要求1-6任一所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述步骤S2包括:
S21、查找所述LSP所在的第一IS的LSP集合;
S22、查找所述第一Neighbor-ID所对应的第二IS的LSP集合;
S23、遍历所述第二IS的LSP集合,存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的LSP集合时,回指检查通过并建立第一IS与第二IS之间的路由拓扑路径,否则回指检查失败并拒绝建立第一IS与第二IS之间的路由拓扑路径。
8.根据权利要求7所述的支持附加SYS-ID的IS-IS路由实现方法,其特征在于,所述步骤S22包括:以所述第一Neighbor-ID为关键字,以哈希表形式查找与所述第一Neighbor-ID内容一致并记录有IS-Alias-IDTLV的LSP,并根据所述LSP查找相应的第二IS的LSP集合。
9.一种支持附加SYS-ID的IS-IS路由实现装置,设置在包括依次连接的链路状态协议LSP收集单元、链路状态数据库LSDB和LSP拓扑建立单元的中间系统IS中;其特征在于,该IS-IS路由实现装置包括:
LSP集合组织单元,与所述LSDB连接,用于构建LSDB中每一IS基于不同伪节点标识符PSN-ID的LSP集合并保存,其中,任一LSP集合包括在某一PSN-ID下,一IS以标准系统标识符SYS-ID生成的LSP以及该IS以附加SYS-ID生成的LSP;
LSP回指检查单元,与所述LSP集合组织单元连接,用于在LSDB中第一IS的一LSP携带的第一邻居标识符Neighbor-ID所对应的第二IS的LSP集合中进行回指检查,如果在第二IS的LSP集合中存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的相应LSP集合,则回指检查通过并触发所述LSP拓扑建立单元建立所述第一IS与第二IS之间的路由拓扑路径,否则回指检查失败并拒绝建立路由拓扑路径。
10.根据权利要求9所述的支持附加SYS-ID的IS-IS路由实现装置,其特征在于,所述LSP集合组织单元包括:
LSP子集构建模块,用于将LSDB中具有相同SYS-ID和PSN-ID的LSP组织为子集;
LSP子集保存模块,与所述LSP子集构建模块连接,用于保存子集;
LSP子集关联模块,与所述LSP子集保存模块连接,用于保存具有相同IS别名标识符类型长度值IS-Alias-ID TLV的子集关联信息。
11.根据权利要求10所述的支持附加SYS-ID的IS-IS路由实现装置,其特征在于,所述LSP子集保存模块为保存具有相同SYS-ID和PSN-ID的LSP的链表;所述LSP子集关联模块为保存具有相同IS-Alias-ID TLV的LSP的链表。
12.根据权利要求10所述的支持附加SYS-ID的IS-IS路由实现装置,其特征在于,所述LSP集合组织单元还包括:LSP更新模块,用于周期性或者实时检查LSP的变化,并相应触发所述LSP子集构建模块。
13.根据权利要求9-12任一所述的支持附加SYS-ID的IS-IS路由实现装置,其特征在于,所述LSP回指检查单元包括:
回指检查启动模块,用于对所述LSP所携带的第一Neighbor-ID启动回指检查;
LSP集合查找模块,与所述回指检查启动模块和所述LSP集合组织单元连接,用于查找所述LSP所在的第一IS的LSP集合以及所述第一Neighbor-ID所对应的第二IS的LSP集合;
LSP集合遍历模块,与所述LSP集合查找模块和所述LSP集合组织单元连接,用于遍历所述第二IS的LSP集合,存在一携带有第二Neighbor-ID的LSP,且该第二Neighbor-ID对应所述第一IS的LSP集合时,触发所述LSP拓扑建立单元来建立所述第一IS与第二IS之间的路由拓扑路径,否则拒绝建立路由拓扑路径。
CN2007101663806A 2007-11-08 2007-11-08 支持附加sys-id的is-is路由实现方法及装置 Active CN101150514B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101663806A CN101150514B (zh) 2007-11-08 2007-11-08 支持附加sys-id的is-is路由实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101663806A CN101150514B (zh) 2007-11-08 2007-11-08 支持附加sys-id的is-is路由实现方法及装置

Publications (2)

Publication Number Publication Date
CN101150514A CN101150514A (zh) 2008-03-26
CN101150514B true CN101150514B (zh) 2010-10-06

Family

ID=39250863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101663806A Active CN101150514B (zh) 2007-11-08 2007-11-08 支持附加sys-id的is-is路由实现方法及装置

Country Status (1)

Country Link
CN (1) CN101150514B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105553856B (zh) * 2015-12-15 2018-09-11 瑞斯康达科技发展股份有限公司 一种实现链路状态数据包更新的方法及装置
CN109495386A (zh) * 2017-09-13 2019-03-19 中兴通讯股份有限公司 对同一隧道下主LSP和Hot LSP的识别方法、PCEP协议及存储介质
CN111107002B (zh) * 2019-12-25 2022-02-01 瑞斯康达科技发展股份有限公司 路由信息的获取方法和装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A.Hermelin ,et al..Extending the Number of Intermediate System (IS-IS) LinkState PDU (LSP) fragments Beyond the 256 Limit.RFC 3786.2004,1-14.
A.Hermelin,et al..Extending the Number of Intermediate System (IS-IS) LinkState PDU (LSP) fragments Beyond the 256 Limit.RFC 3786.2004,1-14. *
WO 2007/000733 A2,全文.

Also Published As

Publication number Publication date
CN101150514A (zh) 2008-03-26

Similar Documents

Publication Publication Date Title
US9300575B2 (en) Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network
CN103441936B (zh) 转发邻接链路的发布方法
US7869349B2 (en) Method and system for deducing network routes by querying routers
US9088499B2 (en) Routing generation for implementation of fiber channel over ethernet
CN101252488A (zh) 一种多自治系统路由器级拓扑处理系统和方法
CN102215136A (zh) 流量拓扑生成方法和装置
US10404598B1 (en) Managing next hop groups in routers
CN104243631A (zh) 一种IPv4地址与IPv6地址有状态转换的方法及设备
CN103179038A (zh) 互联网路由方法及网络转发设备
CN101150514B (zh) 支持附加sys-id的is-is路由实现方法及装置
CN105282041A (zh) 基于isis的洪泛方法及装置
CN110072196B (zh) 为命名数据网络提供面向区块链应用的通信方法及系统
CN103152263B (zh) 链路状态协议数据单元分片更新方法及路由器
WO2014029287A1 (zh) 隧道负荷分担方法及装置
CN102780623B (zh) 一种多链接透明互联网络中组播路由表项更新方法和装置
US7688743B2 (en) Tracing routing differences
CN102651712B (zh) 多处理器系统的节点路由方法、控制器及多处理器系统
CN102916891B (zh) 一种通信网络的路由方法和一种路由节点
CN116055446B (zh) 跨网络的报文转发方法、电子设备及机器可读存储介质
CN110166284A (zh) 一种基于分段洪泛法的网络拓扑发现方法
CN105634944A (zh) 路由环路确定方法及设备
JP4638849B2 (ja) 機能分散型通信装置および経路制御方法
CN103209128A (zh) 同时支持数据报和虚电路服务的数据转发方法及路由器
CN112637053A (zh) 路由的备份转发路径的确定方法及装置
CN114143249B (zh) 确定路由信息的方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.

CP03 Change of name, title or address