防止流量中断方法和装置的制作方法

文档序号:7889667阅读:110来源:国知局
专利名称:防止流量中断方法和装置的制作方法
技术领域
本发明涉及网络通信技术,特别涉及防止流量中断方法和装置。
背景技术
中间系统到中间系统(IS—IS intermediate System-to-intermediate System)白勺域内各由flf;窗、交换十办议(intra-domain routing information exchange protocol)最初是国际标准化组织(ISO international Organization for Standardization)为无连接网络协议(CLNP =ConnectionLess Network Protocol)设计的一种动态路由协议。而为了提供对IP的路由支持,因特网工程任务组(IETF =InternetEngineering Task Force)在RFC 1195中对IS-IS进行了扩充和修改,使它能够同时应用在TCP/IP和OSI环境中,称为集成化 IS-IS (Integrated IS-IS 或 Dual IS-IS)。IS-IS属于内部网关协议(IGP :Interior Gateway ftOtocol),用于自治系统内部,其使用最短路径优先(SPF=Shortest Path First)算法进行选路。其中,IS-IS选路的基本思路如下在自治系统中,每一台运行IS-IS的中间系统收集各自的接口 /邻接信息(称为链路状态),通过Flooding算法,在整个区域内广播自己的链路状态,使得在整个区域内部维护一个同步的链路状态数据库。根据这一数据库,网络中的路由设备计算出以自己为根,其它网络节点为叶的一根最短的路径树,从而计算出自己到达区域内部各节点的最佳路由。在IS-IS网络中,当更改路由设备上的IS-IS配置时,会导致该路由设备断掉其邻居的连接并触发SPF重新计算,从而引起路由丢失,随之这些路由上的流量会断开。如图1所示,IS-IS网络中有以下4个路由设备Router A、Router B、Router C、Router D,假设这4个路由设备在建立IS-IS邻居连接的时候使用的是默认配置,即上述4台路由设备上IS-IS配置中的开销类型(cost-style)都为narrow,然而,如果由于某种原因(例如要配置IS-IS MTR分拓扑)需要将上述4台路由设备的cost-style改为wide,则,针对每一台路由设备,以Router A为例,其他路由设备原理类似,修改Router A的cost-style 为 wide,这时 Router A 由于其 cost-style 与 Router B、C、D 不一致,会导致与RouterB, C、D的IS-IS邻居断掉,同时会引发Router A重新进行SPF计算,而该SPF计算会丢失Router A至Router B、C、D上面的路由,导致经过这些路由的流量中断。等上述4台路由设备都将cost-style修改为wide后重新建立IS-IS邻居,并在网络收敛完毕后该中断的流量才恢复正常。还有其他的情况,如图2所示,Router A和Router B是IS-IS邻居,接口配置是广播网,这时由于某种原因需要RouterA和Router B的IS-IS邻居改成PTP的,则,首先要在Router A上与Router B相连的接口配置网络类型为PTP,如此,由于Router A与Router B的接口配置不同,则Router A和Router B的IS-IS邻居就会断掉,同时Router A会重新进行SPF计算,这样就会丢掉至Router B上面的路由,随之这些路由上的流量也会断掉,等Router B上也成功配置网络类型是PTP,且Router A和Router B的IS-IS邻居建立起来同时路由收敛完毕后,该中断的流量才恢复正常。如此,在同一个IS-IS网络中网络节点比较多且都需要修改配置的时候,就会造成网络中的网络拓扑稳定下来的时间很长,流量会在很大一段时间内都得不到保证。

发明内容
本发明提供了防止流量中断方法和装置,避免在改变路由设备的IS-IS配置时流量中断。本发明提供的技术方案包括一种防止流量中断的方法,该方法应用于中间系统到中间系统IS-IS网络中的路由设备;所述路由设备执行以下操作A,在本路由设备的IS-IS配置发生改变时,使能本路由设备上的邻居连接不断开功能,启动定时器Tl,在Tl时间内更新本路由设备以及当前邻居的链路状态数据包LSP,并在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量;B,在Tl超时或者在与本路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。一种用于防止流量中断的路由设备,该路由设备应用于中间系统到中间系统IS-IS网络中,包括路由维持单元,用于在所述路由设备的IS-IS配置发生改变时,使能所述路由设备上的邻居连接不断开功能,启动定时器Tl,在Tl时间内更新所述路由设备以及当前邻居的链路状态数据包LSP,并在Tl时间内继续维持所述路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量;路由计算单元,用于在Tl超时或者在与所述路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。由以上技术方案可以看出,本发明中,在路由设备的IS-IS配置发生改变时,在Tl时间内更新本路由设备以及当前邻居的LSP,并在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量,而在取消Tl时,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量,这避免了在改变路由设备的IS-IS配置时流量中断,使用户的流量可以正常的转发,加强了 IS-IS协议的可靠性。


图1为IS-IS网络中路由设备的IS-IS改变时的组网示意图;图2为IS-IS网络中路由设备的IS-IS改变时的另一组网示意图;图3为本发明实施例提供的方法流程图;图4为PDU的通用报头示意图;图5为本发明实施例提供的携带第一标识、第二标识的PDU示意图;图6为本发明实施例提供的示例流程图;图7为本发明实施例提供的装置结构图。
具体实施例方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。由于更改路由设备上的IS-IS配置,会导致该路由设备邻居断掉重新建立,而重新建立的过程中会引起路由丢失,随之引起该路由上的流量断开。而网络发展的方向应该是不应该在改变一些设备配置的情况下,使流量丢失,相反,应该防止流量中断,更好的保证流量不中断。为了防止流量中断,一种解决方案是本端设备在邻居的IS-IS配置发生改变的时候,保持现有邻居不断开,并在邻居的HELLO报文带上改变后的配置信息传过来后,根据HELLO报文所携带的信息自动改变本端设备的相关IS-IS配置,使邻居信息保持一致。但是这样会引出一个问题,就是在某些黑客了解了邻居发送的HELLO报文结构后,会进行一些网络攻击,并通过构造类似的相关HELLO报文,随意改变网络设备的相关配置,这样会给网络带来很大的隐患。因此,本发明又提出了如图3所示的另外一种解决方案。该方案的主要思路是因为导致流量中断的主要因素是路由丢失,而路由丢失又是由于邻居断开引起的,因此,该方案就在路由设备的IS-IS配置发生改变时,保持邻居不断开,比如图1中,在Route A的IS-IS配置发生改变时,保持该RouteA的所有邻居暂时不断开。这样,可以保证在Route A的IS-IS配置发生改变时,Route A与各个邻居如图1中的Route B、C、D之间的邻居连接不断开,从而保证Route A与各个邻居如图1中的Route B、C、D之间的路由不丢失,防止了流量中断。参见图3,图3为本发明实施例提供的方法流程图。该流程应用于IS-IS网络中的路由设备,其中,在本流程执行之前,需要对路由设备作以下配置配置1,在路由设备上配置以下功能在路由设备的IS-IS配置改变时保持该路由设备与邻居的连接不断开。当使能了该功能,该路由设备就不会由于IS-IS配置改变而断开与邻居的连接,同时,路由设备也不会进行SPF计算,从而保持原有网络拓扑结构和路由信息的功能。配置2,在路由设备上配置一个定时器Tl,用于描述路由设备在IS-IS配置改变时,只在该Tl时间内不断开与邻居的连接,也不进行SPF计算,以保持原有网络拓扑结构和路由信息。而当Tl取消时,则恢复现有流程。其中,该Tl时间可根据实际情况设置,例如,根据IS-IS网络中的参数如路由设备数量、路由设备与邻居的交互时间、整个IS-IS网络中的路由信息数量和整个IS-IS网络中各个路由设备改变IS-IS配置需要的时间等设置。优选地,本发明中,可设置Tl为根据上述参数估计出的路由设备在IS-IS配置改变完毕、且与本路由设备相关的链路状态数据包(LSP)全部完成同步的时间。基于上述配置,则如图3所示,该流程可包括以下步骤步骤301,在本路由设备的IS-IS配置发生改变时,使能本路由设备上的邻居连接不断开功能,并启动定时器Tl,在Tl时间内更新本路由设备以及当前邻居的LSP,并在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量。之后执行步骤302。
步骤302,在Tl超时或者在与本路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。其中,步骤301中,在Tl时间内更新本路由设备以及当前邻居的LSP,以及继续维持本路由设备与当前邻居的连接包括步骤301a,清空本路由设备上的链路状态数据库(LSDB),并发送用于保持邻居连接不断开的第一标识至当前邻居,由当前邻居接收到所述第一标识后,继续维持与所述路由设备的邻居连接,并返回用于支持所述路由设备保持邻居连接不断开的第二标识;路由设备上的IS-IS配置发生改变会导致该路由设备上LSDB已记录的所有信息无用,因此,本步骤301a清空该LSDB。步骤301b,在接收到当前邻居返回的用于支持本路由设备保持邻居连接不断开的第二标识时,将依据改变后的IS-IS配置生成的LSP序列号、以及对应的LSP发送给当前邻居;优选地,本步骤301b中,如果在设定时间内接收不到当前邻居返回的第二标识,则进一步断开本路由设备与该当前邻居的连接,执行现有邻居重新建立以及重新计算路由的方法。步骤301c,接收并记录当前邻居发送的LSP序列号以及LSP至所述LSDB,该LSP序列号以及LSP是由当前邻居依据该当前邻居改变后的IS-IS配置生成并发送的,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP。本步骤301c在步骤301a清空LSDB之后,之所以又执行上述的删除操作,目的是避免当前邻居在以下时间段清空LSDB之后、且在该当前邻居的IS-IS配置改变之前,发送的LSP序列号和LSP还记录至LSDB,节省LSDB资源。基于上述步骤301a至步骤301c的描述,则步骤302中,所述与本路由设备相关的所有LSP包括本路由设备的当前各个邻居发送的LSP序列号对应的所有LSP。另外,本发明中,上述的第一标识、第二标识都基于扩展的IS-IS协议报文携带。而IS-IS报文是直接封装在数据链路层的帧结构中的。协议数据单元(PDU Protocol DataUnit)可以分为以下两个部分报文头和变长字段。其中报文头又可分为通用报头和专用报头,对于所有PDU来说,通用报头都是相同的,但专用报头根据PDU类型不同而有所差别。参见图4,图4为PDU的通用报头示意图。其中,通用报头包括以下字段域内路由协议鉴别符 Qntradomain Routing Protocol Discriminator)字段,其优选为0x83。长度标识符(Length Indicator)字段其携带PDU头部的长度(包括通用报头和专用报头),以字节为单位。版本/协议标识扩展(Version/Protocol ID Extension)字段其优选为1(0x01)。标识长度(ID Length)字段,其携带NSAP地址和NET的ID长度。预留字段(R Reserved)其优选为0。PDU类型(PDU Type)其携带PDU类型信息。版本(Version)字段其可设置为1 (0x01)。最大区域地址数(Maximum Area Address)字段其携带支持的最大区域个数。
基于图4所示的PDU通用报头结构,本发明可使用其中两个预留字段,该两个预留字段中的一个用于携带第一标识,称为字段A,另一个用于携带第二标识,称为字段B,具体如图5所示。优选地,本发明中,当A = 1时,表示携带第一标识,当A = 0时,表示未携带第一标识,B = 1时,表示携带第二标识,当B = 0时,表示未携带第二标识。通常,IS-IS协议报文中的HELLO报文周期转发,且比较简单,基于此,下面以将第一标识和第二标识分别携带在HELLO报文中的两个预留字段中,且以第一类配置为例对图3所示流程进行举例描述参见图6,图6为本发明实施例提供的示例流程图。如图6所示,该示例流程以两台路由设备为例,分别记为Route A和Route B。如图6所示,在Router A的IS-IS配置发生改变时,执行以下步骤步骤601,Router A使能本路由设备上的邻居连接不断开功能,启动定时器Tl。步骤602,Router A清空本路由设备上的LSDB,同时发送A为1、B为0的HELLO报文。优选地,本步骤602中,HELLO报文的其他字段都保持不变化,仍旧是2-WAY的HELLO报文,包括邻居的信息。另外,上述步骤601至步骤602并没有固定的时间先后顺序,也可同时进行。步骤603,当Router B收到Router A发出的带有A = 1的HELLO报文后,保持与Router A的连接状态不变,并回复一个带有B = UA = O的HELLO报文,使能本路由设备上的邻居连接不断开功能,并启动自身被配置的定时器Tl。通过步骤603,能够保持RouteB和Router A在Tl时间内保持邻居连接不断开。步骤604,当Router A收到Router B发出的带有B = 1的HELLO报文后,通过A和B都置1的CSNP报文将依据本Router A改变后的IS-IS配置生成的LSP序列号发送至Router B。本步骤604中,当Router A收到Router B发出的带有B = 1的HELLO报文后,就知道Router B是支持本Router A不断开邻居连接的,继续执行本步骤604中的发送LSP序列号流程。优选地,本步骤604中,当Router A在设定的时间比如邻居的Hold Time时间内如果没有收到Router B的HELLO报文,则把与Router B的连接断掉。另外,Router A可在本步骤604之前生成LSP序列号,也可在本步骤604生成LSP序列号,本发明并不具体限定。步骤605,当Router B收到Router A发来的A、B都置1的CSNP报文后,把CSNP报文携带的LSP序列号记录下来。步骤606,Router A通过A和B都置1的LSP报文将依据本Router A改变后的IS-IS配置生成的LSP发送至Router B。步骤607,Router B接收到Router A发来的A和B都置1的LSP报文后,记录该LSP报文携带的LSP,并回应A、B都置1的PSNP报文给Router A进行确认。步骤608,当Router B也改变IS-IS配置后,Router B首先保留RouterA发过来的A、B都置1的LSP,并且从本地删除掉在未改变该RouterA的IS-IS配置之前由该RouterA发送的LSP序列号和LSP (称为旧的LSP序列号和LSP)。步骤609,Router B依据本Router B改变后的IS-IS配置生成LSP序列号,并向Router A发送A、B都置1的CSNP报文以通告自身新生成的LSP序列号。优选地,Router B向Router A发送A、B都置1的CSNP报文,也进一步向RouterA通告本Router B也改变了 IS-IS配置。步骤610,Router B通过A和B都置1的LSP报文将依据本Router B改变后的IS-IS配置生成的LSP发送至Router A。本步骤610和上述步骤609中的操作没有先后顺序,可同时执行。步骤611,Router A接收到Router B发来的A和B都置1的LSP报文后,记录该LSP报文携带的LSP,并回应A、B都置1的PSNP报文给Router A进行确认。步骤612,Router A保留这些A和B都置1的LSP报文携带的LSP,并从本地的LSDB中删除Router B发送的没有AB置位的LSP报文携带的LSP (称为旧的LSP序列号和LSP)。优选地,本步骤612中,Router A可将本地LSDB中网络实体名称(network-entity)为Router B、且该Router B发送的没有AB置位的LSP删除掉。优选地,本步骤612中,还进一步删除Router B发送的没有AB置位的CSNP报文携带的LSP序列号。步骤613,RouterA (Router B类似)在取消Tl之后正式进入IS-IS的正常流程,此时需要在所有接口上启动HELLO定时器,以后就周期性的发送正常的HELLO报文(A字段恢复为预留字段,不再携带第一标识,B字段恢复为预留字段,不再携带第一标识)。本步骤613中,Router A可在Tl超时或者在自己某个Level的LSDB已经同步完全比如接收到当前邻居发送的LSP序列号对应的所有LSP时,取消Tl。优选地,本步骤613中,Router A在取消Tl后,可利用更新后的所有LSP重新计算路由,比如按照SPF方式重新计算路由,将计算出来的路由再统一下发转发表。至此,完成图6所示的流程。从图6所示流程可以看出,Router A在IS-IS配置发生改变时,并非直接断开与邻居连接、以及重新建立邻居连接,而是在一定时间比如Tl内暂时保持邻居连接,这样就避免了邻居断开和邻居重新建立2次修改转发表项导致的用户流量丢失。需要说明的是,上述图6中需要改变的IS-IS配置可为只影响到邻居,不会影响到IS-IS网络中整个区域的第一类配置,比如,依据以下IS-IS命令isiscircuit-type p2p、lsp-fragments-extend mode_l、lsp-fragments-extend mode_2、或 virtual—system 修改的配置。通过图6所示流程,确保了在网络中修改属于第一类配置的IS-IS配置时,可以防止用户流量不中断。优选地,本发明中,若上述需要改变的IS-IS配置为一些既影响到邻居,又影响到IS-IS网络中整个区域的IS-IS配置,称为第二类配置,比如依据以下IS-IS命令C0St-Style wide等修改的配置,则,对于第二类配置,由于整个LEVEL可能有多台设备,并且每台设备不一定都需要修改配置(例如有的设备已经配置了 cost-stylewide-compatible就不用修改了),还有一点就是必须整个LEVEL都支持WIDE模式后,进行SPF的计算才会保证流量的不流失,因此在这种情况下,我们对图6所示流程再多添加一些内容来保证修改属于第二类配置的IS-IS配置时,如何防止流量不断流,具体为按照上面的流程,步骤601至步骤602不变,到步骤603时,在Router B收到了Router A发送的A置位的HELLO报文时,Router B会向自身邻居(除RouterA之外)发送A置位的HELLO报文,以便通知整个LEVEL内的所有设备有设备需要修改IS-IS配置了。这时LEVEL内的每台设备都会记录自身SPF树上节点的network-entity,同时启动自身被配置的定时器以保证不断开邻居连接和不进行SPF计算。其他步骤不变,只不过在步骤613中,取消Tl时可在Tl超时或者根据记录的SPF树上节点的network-entity来判断相对应的节点是否将A、B置位的LSP (比如接收到当前邻居发送的LSP序列号对应的所有LSP)全部同步到了,只有全部同步到了之后才取消Tl,否则继续同步所需要的LSP。如此,即可在修改第二类配置的时候防止流量不断流。优选地,本发明中,若上述需要改变的IS-IS配置为对LEVEL路由设备的划分有影响的IS-IS配置,称为第三类配置,其包括依据以下IS-IS命令is-levellevel-2等修改的配置,由于该第三类配置会影响到LEVEL路由设备的划分,所以本发明可按直接断开邻居重新建立邻居以及进行路由计算的方式执行。至此,完成本发明的方法描述。下面对本发明提供的装置进行描述。参见图7,图7为本发明实施例提供的装置结构图。该装置为用于防止流量中断的路由设备,该路由设备应用于中间系统到中间系统IS-IS网络中;如图7所示,所述路由设备包括路由维持单元,用于在所述路由设备的IS-IS配置发生改变时,使能所述路由设备上的邻居连接不断开功能,并启动定时器Tl,在Tl时间内更新所述路由设备以及当前邻居的包LSP,并在Tl时间内继续维持所述路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量;路由计算单元,用于在Tl超时或者在与所述路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。其中,所述路由维持单元包括标识发送子单元,用于清空所述路由设备上的链路状态数据库LSDB,并发送用于保持邻居连接不断开的第一标识至当前邻居,由当前邻居接收到所述第一标识后,继续维持与所述路由设备的邻居连接,并返回用于支持所述路由设备保持邻居连接不断开的第二标识;LSP发送子单元,用于在接收到所述第二标识时,将依据改变后的IS-IS配置生成的LSP序列号、以及对应的LSP发送给当前邻居;LSP更新子单元,用于接收并记录当前邻居发送的LSP序列号以及LSP至所述LSDB,该LSP序列号以及LSP是由当前邻居依据该当前邻居改变后的IS-IS配置生成并发送的,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP ;基于此,本发明中,所述路由计算单元在Tl超时或者在所述路由设备的当前各个邻居发送的LSP序列号对应的所有LSP被接收时,取消Tl。本发明中,如图7所示,所述路由设备进一步包括接收单元,用于在所述路由设备的IS-IS配置发生改变之前,接收在当前邻居的IS-IS配置改变时由当前邻居发送的用于保持邻居连接不断开的第一标识,维持与当前邻居的邻居连接,并返回用于支持当前邻居保持邻居连接不断开的第二标识,以及使能所述路由设备上的邻居不断开功能,启动定时器Tl,在Tl时间内继续维持所述路由设备与当前邻居的连接,以利用所述路由设备与当前邻居的路由继续转发流量,以及,接收并记录当前邻居发送的依据改变后的IS-IS配置生成的LSP序列号和LSP至所述LSDB ;LSP更新单元,用于在所述路由设备的IS-IS配置发生改变时,依据所述路由设备改变后的IS-IS配置生成LSP序列号和LSP并发送至当前邻居,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP,之后返回路由计算单元执行的操作。其中,所述IS-IS配置为只影响到邻居,不会影响到IS-IS网络中整个区域的第一类配置。优选地,所述IS-IS配置若为既影响到邻居,又影响到IS-IS网络中整个区域的第二类配置,则所述接收单元在接收到第一标识时,进一步向除发送第一标识的设备之外的其他邻居发送用于保持邻居连接不断开的第一标识,并记录本路由设备已计算出的最短路径优先SPF树涉及的所有网络节点的网络实体名称network-entity ;基于此,所述路由计算单元在Tl超时或者在各个network-entity对应的网络节点发送的LSP序列号对应的所有LSP被接收时,取消Tl。本发明中,所述第一标识携带在扩展的HELLO报文中的其中一个预留字段;所述第二标识携带在扩展的HELLO报文中的另一个预留字段;所述LSP序列号携带在包含第一标识和第二标识的CSNP报文中;所述LSP携带在包含第一标识和第二标识的LSP报文中;所述从LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP包括从LSDB中删除当前邻居发送的未包含第一标识和第二标识的LSP报文所携带的LSP序列号和LSP。至此,完成本发明提供的装置描述。由以上技术方案可以看出,本发明中,在路由设备的IS-IS配置发生改变时,在Tl时间内更新本路由设备以及当前邻居的链路状态数据包LSP,并在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量,而在取消Tl时,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量,这避免了在改变路由设备的IS-IS配置时流量中断,使用户的流量可以正常的转发,加强了 IS-IS协议的可靠性。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
权利要求
1.一种防止流量中断的方法,该方法应用于中间系统到中间系统IS-IS网络中的路由设备;其特征在于,所述路由设备执行以下操作A,在本路由设备的IS-IS配置发生改变时,使能本路由设备上的邻居连接不断开功能,启动定时器Tl,在Tl时间内更新本路由设备以及当前邻居的链路状态数据包LSP,并在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量;B,在Tl超时或者在与本路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。
2.根据权利要求1所述的方法,其特征在于,步骤A中,更新本路由设备以及当前邻居的LSP,以及继续维持本路由设备与当前邻居的连接包括Al,清空本路由设备上的链路状态数据库LSDB,发送用于保持邻居连接不断开的第一标识至当前邻居,由当前邻居接收到所述第一标识后,继续维持与所述路由设备的邻居连接,并返回用于支持所述路由设备保持邻居连接不断开的第二标识;A2,在接收到所述第二标识时,将依据改变后的IS-IS配置生成的LSP序列号、以及对应的LSP发送给当前邻居;A3,接收并记录当前邻居发送的LSP序列号以及LSP至所述LSDB,该LSP序列号以及LSP是由当前邻居依据该当前邻居改变后的IS-IS配置生成并发送的,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP。
3.根据权利要求2所述的方法,其特征在于,步骤B中,所述与本路由设备相关的所有LSP包括本路由设备的当前各个邻居发送的LSP序列号对应的所有LSP。
4.根据权利要求2所述的方法,其特征在于,步骤A2中,如果在设定时间内接收不到当前邻居返回的第二标识,则进一步断开本路由设备与该当前邻居的连接,执行现有邻居重新建立以及重新计算路由的方法。
5.根据权利要求2所述的方法,其特征在于,所述路由设备进一步执行以下操作C,在本路由设备的IS-IS配置发生改变之前,接收在当前邻居的IS-IS配置改变时由当前邻居发送的用于保持邻居连接不断开的第一标识,维持与当前邻居的邻居连接,并返回用于支持当前邻居保持邻居连接不断开的第二标识,以及使能本路由设备上的邻居不断开功能,启动定时器Tl,在Tl时间内继续维持本路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量,以及,接收并记录当前邻居发送的依据改变后的IS-IS配置生成的LSP序列号和LSP至所述LSDB ;D,在本路由设备的IS-IS配置发生改变时,依据本路由设备改变后的IS-IS配置生成LSP序列号和LSP并发送至当前邻居,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP,之后返回步骤B。
6.根据权利要求2至5任一所述的方法,其特征在于,所述IS-IS配置为只影响到邻居,不会影响到IS-IS网络中整个区域的第一类配置。
7.根据权利要求5所述的方法,其特征在于,所述IS-IS配置为既影响到邻居,又影响到IS-IS网络中整个区域的第二类配置;步骤C中,所述路由设备在接收到第一标识时,进一步执行以下操作向除发送第一标识的设备之外的其他邻居发送用于保持邻居连接不断开的第一标识,并记录本路由设备已计算出的最短路径优先SPF树涉及的各个网络节点的网络实体名称network-entity ;步骤B中,所述与本路由设备相关的所有LSP包括各个network-entity对应的网络节点所发送的LSP序列号对应的所有LSP。
8.根据权利要求2至5任一、或7所述的方法,其特征在于,所述第一标识携带在扩展的HELLO报文中的其中一个预留字段;所述第二标识携带在扩展的HELLO报文中的另一个预留字段;所述LSP序列号携带在包含第一标识和第二标识的CSNP报文中;所述LSP携带在包含第一标识和第二标识的LSP报文中;所述从LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP包括从LSDB中删除当前邻居发送的未包含第一标识和第二标识的LSP报文所携带的LSP序列号和LSP。
9.一种用于防止流量中断的路由设备,该路由设备应用于中间系统到中间系统IS-IS网络中;其特征在于,所述路由设备包括路由维持单元,用于在所述路由设备的IS-IS配置发生改变时,使能所述路由设备上的邻居连接不断开功能,启动定时器Tl,在Tl时间内更新所述路由设备以及当前邻居的链路状态数据包LSP,并在Tl时间内继续维持所述路由设备与当前邻居的连接,以利用本路由设备与当前邻居的路由继续转发流量;路由计算单元,用于在Tl超时或者在与所述路由设备相关的所有LSP均完成更新时,取消Tl,利用更新后的所有LSP重新计算路由,依据重新计算的路由继续转发流量。
10.根据权利要求9所述的路由设备,其特征在于,所述路由维持单元包括标识发送子单元,用于清空所述路由设备上的链路状态数据库LSDB,并发送用于保持邻居连接不断开的第一标识至当前邻居,由当前邻居接收到所述第一标识后,继续维持与所述路由设备的邻居连接,并返回用于支持所述路由设备保持邻居连接不断开的第二标识;LSP发送子单元,用于在接收到所述第二标识时,将依据改变后的IS-IS配置生成的LSP序列号、以及对应的LSP发送给当前邻居;LSP更新子单元,用于接收并记录当前邻居发送的LSP序列号以及LSP至所述LSDB,该LSP序列号以及LSP是由当前邻居依据该当前邻居改变后的IS-IS配置生成并发送的,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP ;所述路由计算单元在Tl超时或者在所述路由设备的当前各个邻居发送的LSP序列号对应的所有LSP被接收时,取消Tl。
11.根据权利要求10所述的路由设备,其特征在于,所述路由设备进一步包括接收单元,用于在所述路由设备的IS-IS配置发生改变之前,接收在当前邻居的IS-IS配置改变时由当前邻居发送的用于保持邻居连接不断开的第一标识,维持与当前邻居的邻居连接,并返回用于支持当前邻居保持邻居连接不断开的第二标识,以及使能所述路由设备上的邻居不断开功能,启动定时器Tl,在Tl时间内继续维持所述路由设备与当前邻居的连接,以利用所述路由设备与当前邻居的路由继续转发流量,以及,接收并记录当前邻居发送的依据改变后的IS-IS配置生成的LSP序列号和LSP至所述LSDB ;LSP更新单元,用于在所述路由设备的IS-IS配置发生改变时,依据所述路由设备改变后的IS-IS配置生成LSP序列号和LSP并发送至当前邻居,并从所述LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP,之后返回路由计算单元执行的操作。
12.根据权利要求9至11任一所述的路由设备,其特征在于,所述IS-IS配置为只影响到邻居,不会影响到IS-IS网络中整个区域的第一类配置。
13.根据权利要求11所述的路由设备,其特征在于,所述IS-IS配置为既影响到邻居,又影响到IS-IS网络中整个区域的第二类配置;所述接收单元在接收到第一标识时,进一步向除发送第一标识的设备之外的其他邻居发送用于保持邻居连接不断开的第一标识,并记录本路由设备已计算出的最短路径优先SPF树涉及的所有网络节点的网络实体名称network-entity ;所述路由计算单元在Tl超时或者在各个network-entity对应的网络节点发送的LSP序列号对应的所有LSP被接收时,取消Tl。
14.根据权利要求9至11任一、或13所述的路由设备,其特征在于,所述第一标识携带在扩展的HELLO报文中的其中一个预留字段;所述第二标识携带在扩展的HELLO报文中的另一个预留字段;所述LSP序列号携带在包含第一标识和第二标识的CSNP报文中;所述LSP携带在包含第一标识和第二标识的LSP报文中;所述从LSDB中删除在当前邻居的IS-IS配置改变之前由该当前邻居发送的LSP序列号和LSP包括从LSDB中删除当前邻居发送的未包含第一标识和第二标识的LSP报文所携带的LSP序列号和LSP。
全文摘要
本发明提供了防止流量中断的方法和装置。该方法和装置通过在路由设备上配置定时器T1和邻居连接不断开功能,能够保证在路由设备的IS-IS配置发生改变时,在T1时间内继续维持本路由设备与当前邻居的连接以及更新本路由设备以及当前邻居的LSP,以利用本路由设备与当前邻居的路由继续转发流量,防止流量中断。
文档编号H04L12/56GK102571605SQ20121003696
公开日2012年7月11日 申请日期2012年2月17日 优先权日2012年2月17日
发明者王海 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1