一种IS-IS协议控制默认路由通告的方法和系统转让专利

申请号 : CN200910008472.0

文献号 : CN101478489B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 金昊

申请人 : 中兴通讯股份有限公司

摘要 :

本发明公开了一种IS-IS协议控制默认路由通告的方法和系统,包括:在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;将默认路由通告和通告控制策略绑定;检查网络运行状态;判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告。该系统包括:配置模块、策略绑定模块、检查模块、判断执行模块。本发明将能够根据网络运行状态及时撤销或下发默认路由通告,具有计算量小,反应迅速的优点,因此能够确保流量不会因为无法继续转发而丢弃,且更加有效地利用网络资源。

权利要求 :

1.一种IS-IS协议控制默认路由通告的方法,其特征在于,包括如下步骤:步骤一、在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;

步骤二、将默认路由通告和通告控制策略绑定;

步骤三、检查网络运行状态;

步骤四、判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告,跳转步骤三。

2.根据权利要求1所述控制默认路由通告的方法,其特征在于,步骤二中所述通告控制策略为边界路由器的接口。

3.根据权利要求2所述控制默认路由通告的方法,其特征在于,所述接口为物理接口、虚接口或捆绑接口。

4.根据权利要求1所述控制默认路由通告的方法,其特征在于,步骤二中所述通告控制策略为具体路由。

5.根据权利要求4所述控制默认路由通告的方法,其特征在于,所述具体路由是邻居路由器接口的IP地址或者邻居路由器的环回地址。

6.根据权利要求1或3或5所述控制默认路由通告的方法,其特征在于,步骤三中所述检查的方式有两种:

1)通过实时监测路由管理模块对路由表的操作;

2)周期性的查询路由表或者转发表。

7.根据权利要求2或3所述控制默认路由通告的方法,其特征在于,步骤四中判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告的过程如下:判断绑定的接口是否有效,如果是,则下发默认路由通告,否则撤销默认路由通告。

8.根据权利要求4或5所述控制默认路由通告的方法,其特征在于,步骤四中判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告的过程如下:判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告。

9.一种IS-IS协议控制默认路由通告的系统,其特征在于,包括:配置模块,用于在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;

策略绑定模块,用于将所述默认路由通告和通告控制策略绑定;

检查模块,用于检查网络运行状态;

判断执行模块,用于判断网络运行状态是否满足通告控制策略中设置的相应条件,据此下发或撤销默认路由通告。

10.根据权利要求9所述控制默认路由通告的系统,其特征在于,所述通告控制策略为边界路由器的接口或者具体路由。

说明书 :

一种IS-IS协议控制默认路由通告的方法和系统

技术领域

[0001] 本发明涉及数据网络通讯领域,尤其涉及一种中间系统到中间系统(Intermediate-system to Intermediate-system,以下简称IS-IS)协议控制默认路由通告的方法和系统。

背景技术

[0002] 默认路由是一种特殊的路由,其网络前缀和子网掩码都是0,因此通常将默认路由称为“0/0”路由。当网络设备对流量进行转发时,如果该网络设备上没有到达流量目的地的具体路由,则按照默认路由进行流量转发。
[0003] 互联网通常是由属于不同网络运营商的独立网络互联组成。这种属于不同网络运营商的独立网络通常都可以再细分成一个或者多个自治系统,自治系统是指:处于一个管理机构控制之下的、有统一的管理策略的网络设备集合,因而可以认为互联网是由不同的自治系统互联组成的。通常在自治系统的边界路由器之间运行的是边界网关协议(Border Gateway Protocol,以下简称BGP),自治系统内部运行的是内部网关协议(Internal Gateway Protocol,以下简称IGP协议),而IS-IS协议是IGP协议中的一种。BGP协议的作用是有选择的将一个自治系统内部的路由通告给另一个自治系统,IS-IS协议的作用是学习自治系统内部包括边界的网络拓扑,并计算出自治系统内部包括边界的路由器之间如何相互到达。
[0004] 对于一个自治系统来说,自治系统边界路由器之间通过BGP协议在自治系统之间相互通告路由,只有边界路由器知道如何到达其他自治系统,而自治系统内的其他路由器只能知道本自治系统内部的网络拓扑信息,无法知道如何到达自治系统外部,所以边界路由器在开始工作时会基于IS-IS协议配置默认路由通告,向本自治系统内的其他路由器通告默认路由,这是网络管理者预先进行的静态配置。此时这个自治系统内的其他路由器如果需要向外转发流量,可以通过默认路由首先将流量转发给本自治系统的边界路由器,通过边界路由器再转发到目的自治系统,到达目的自治系统后,再由目的自治系统的边界路由器将流量转发到该目的自治系统内的目的路由器。
[0005] 一种理想的组网方式,如图1所示,第一自治系统AS7497、第二自治系统AS4808和第三自治系统AS4809互联,第二路由器R2和第四路由器R4是第三自治系统AS4809的边界路由器,第五路由器R5和第八路由器R8分别是第一自治系统AS7497和第二自治系统AS4808的边界路由器,且第五路由器R5和第八路由器R8有直接链路连接。第一自治系统AS7497内部的第一路由器R1通过IS-IS协议将目的网段1.1.1.1/24通告给第二路由器R2,第二路由器R2通过BGP协议将该目的网段通告给第三自治系统AS4809中的第五路由器R5。同时,第二路由器R2通过BGP协议将目的网段1.1.1.1/24通告给第二自治系统AS4808中的第四路由器R4,第四路由器R4将该目的网段通告给第三自治系统AS4809中的第八路由器R8,此时,第三自治系统AS4809的两个边界路由器都通过BGP协议学习到了目的网段1.1.1.1/24,第五路由器R5和第八路由器R8分别通过IS-IS协议向第六路由器R6和第七路由器R7通告默认路由0/0。对于第六路由器R6来说,由于它不知道如何到达目的网段1.1.1.1/24,如果第六路由器R6通过计算得知第五路由器R5通告的默认路由优于第八路由器R8通告的默认路由,那么第六路由器R6会通过优选的默认路由将流量转发到第五路由器R5上,再由第五路由器R5向外转发,因此流量从第六路由器R6开始,经过第五路由器R5、第二路由器R2,最终到达第一路由器R1。当第二路由器R2和第五路由器R5之间的直接链路连接失效时,第五路由器R5将流量转发到第八路由器R8上,由第八路由器R8向外转发,因此流量从第六路由器R6开始,经过第五路由器R5、第八路由器R8、第四路由器R4、第二路由器R2,最终到达第一路由器R1。
[0006] 但是在实际的网络组网中,由于网络设备硬件的限制,比如端口数量有限,或者网络设备之间架设的光纤数量不能满足要求,同一个自治系统内的边界路由器之间可能没有直连链路连接,这种网络组网如图2所示,第五路由器R5和第八路由器R8之间无直连链路连接,这种网络的组网情况就会带来下面的问题:
[0007] 当第一自治系统AS7497和第三自治系统AS4809之间的直接链路失效,即第二路由器R2和第五路由器R5之间的直接链路失效时,因为第五路由器R5不能通过第八路由器R8将流量转发出去,所以第五路由器R5应及时向自治系统内的其他路由器撤销默认路由通告,如图3所示,使流量从第六路由器R6开始,经第七路由器R7、第八路由器R8、第四路由器R4、第二路由器R2到达第一路由器R1。
[0008] 然而,现有技术采用路由图进行默认路由通告控制,这种方法是将路由图中配置一定数量的匹配项组成条件路由,然后遍历整个路由表中的所有路由条目与所述条件路由进行匹配检查,当有路由条目与所述条件路由相同时,边界路由器向自治系统中的其他路由器撤销默认路由通告。如果路由图中配置的匹配项很多,并且路由表中路由条目数量很大,那么匹配检查将会消耗大量的系统资源和时间。比如路由图中匹配项为N,路由表中路由条目数为M,则须匹配检查N×M次。通常接入互联网的自治系统边界路由器上路由表中的路由条目至少为20万条,因此匹配检查的效率非常低。由于第五路由器R5向自治系统内的其他路由器通告了默认路由,如果第五路由器R5没能及时对自治系统内的其他路由器撤销默认路由通告,自治系统内的其他路由器经过计算认为R5通告的默认路由优先,第六路由器R6仍然会选择R5通告的默认路由,于是第六路由器R6将到达目的网段1.1.1.1/24的流量通过默认路由转发到第五路由器R5上。而由于第五路由器R5和第二路由器R2之间直接链路已失效,流量在第五路由器R5上将会由于无法继续转发而丢弃。
[0009] 同样,当第五路由器R5向自治系统内的其他路由器通告默认路由后,流量从第六路由器R6开始,经第七路由器R7、第八路由器R8、第四路由器R4、第二路由器R2到达第一路由器R1,这显然是一条较长的路由转发路径,若此时第五路由器R5和第二路由器R2之间直接链路恢复有效,现有技术仍然需要使用路由图中配置一定数量的匹配项组成的条件路由,遍历第五路由器R5的路由表中所有路由条目进行匹配检查,然后才能下发默认路由通告,这一匹配检查过程的效率依然很低,那么在第六路由器R6收到默认路由通告之前,它仍沿用较长的路由转发路径,使有效的网络资源得不到充分的利用。

发明内容

[0010] 本发明要解决的技术问题是,提供一种IS-IS协议控制默认路由通告的方法和系统,根据网络运行状态及时对默认路由通告进行控制,确保流量不会因为无法继续转发而丢弃,更加有效地利用网络资源。
[0011] 本发明的主要技术方案如下:
[0012] 一种IS-IS协议控制默认路由通告的方法,包括以下步骤:
[0013] 步骤一、在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;
[0014] 步骤二、将默认路由通告和通告控制策略绑定;
[0015] 步骤三、检查网络运行状态;
[0016] 步骤四、判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告,跳转步骤三。
[0017] 进一步地,在本发明中,还具有以下特点:步骤二中所述通告控制策略为边界路由器的接口。
[0018] 进一步地,在本发明中,还具有以下特点:所述接口为物理接口、虚接口或捆绑接口。
[0019] 进一步地,在本发明中,还具有以下特点:步骤二中所述通告控制策略为具体路由。
[0020] 进一步地,在本发明中,还具有以下特点:所述具体路由是邻居路由器接口的IP地址或者邻居路由器的环回地址。
[0021] 进一步地,在本发明中,还具有以下特点:步骤三中所述检查的方式有两种:
[0022] 1)通过实时监测路由管理模块对路由表的操作;
[0023] 2)周期性的查询路由表或者转发表。
[0024] 进一步地,在本发明中,还具有以下特点:步骤四中判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告的过程如下:判断绑定的接口是否有效,如果是,则下发默认路由通告,否则撤销默认路由通告。
[0025] 进一步地,在本发明中,还具有以下特点:步骤四中判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告的过程如下:判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告。
[0026] 本发明还提供了一种IS-IS协议控制默认路由通告的系统,包括:
[0027] 配置模块,用于在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;
[0028] 策略绑定模块,用于将所述默认路由通告和通告控制策略绑定;
[0029] 检查模块,用于检查网络运行状态;
[0030] 判断执行模块,用于判断网络运行状态是否满足通告控制策略中设置的相应条件,据此下发或撤销默认路由通告。
[0031] 采用上述技术方案,本发明至少具有下列优点:
[0032] 本发明所述IS-IS协议控制默认路由通告的方法和系统基于IS-IS协议为自治系统的边界路由器配置默认路由通告,将默认路由通告这一事件不仅和网络管理者预先的静态配置关联,而且和网络运行状态关联,使默认路由通告具有可控性,从而使同一自治系统中没有直接链路相连的边界路由器在向外转发流量的链路失效或生效时,能够及时撤销或下发默认路由通告,与现有技术相比,本发明具有计算量小,反应迅速的优点,因此能够确保流量不会因为无法继续转发而丢弃,更加有效地利用网络资源。

附图说明

[0033] 图1为理想的网络组网中顺利发送流量的示意图;
[0034] 图2为实际的网络组网中发生流量丢弃状况的示意图;
[0035] 图3为实际的网络组网中流量转发路径改变后的示意图;
[0036] 图4为本发明第一实施例中所述控制默认路由通告的方法流程图;
[0037] 图5为本发明第二实施例中所述控制默认路由通告的方法流程图;
[0038] 图6为本发明第三实施例中所述控制默认路由通告的方法流程图。

具体实施方式

[0039] 为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图及较佳实施例,对本发明提出的IS-IS协议控制默认路由通告的方法和系统,详细说明如后。
[0040] 本发明第一实施例中,如图4所示,所述IS-IS协议控制默认路由通告的方法,包括具体步骤如下:
[0041] 步骤一、在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告,具体包括如下操作:
[0042] a1)强制产生一条默认路由并向该自治系统内的其他路由器通告;
[0043] a2)检测路由表中是否有默认路由,如果有默认路由,则将此默认路由通告给该自治系统内的其他路由器。
[0044] 步骤二、将默认路由通告和通告控制策略绑定,该通告控制策略是本台边界路由器的一个或多个接口,接口可以是物理接口、虚接口或捆绑接口,因为链路是通过接口连接产生的,接口失效必然导致链路失效,反过来,链路一旦恢复,接口也随即生效,所以接口的状态直接反应链路的状态。如果分别属于两个自治系统的两台边界路由器之间的直接链路只由一个接口相连接,那么将默认路由通告和这个接口绑定后,这个接口的状态能够完全反应直接链路的状态;如果分别属于两个自治系统的两台边界路由器之间的直接链路通过多个接口相连接,那么将默认路由通告和所述多个接口绑定后,每个接口的状态不能单独反应直接链路失效,必须当所述多个接口均失效时才能反映直接链路失效,反之,只要所述多个接口中还有接口未失效,则所述直接链路仍然有效。除此之外,本发明不排除为了某些特殊需求,将默认路由通告和本台边界路由器中部分接口绑定的情形。路由器中的接口管理模块掌握路由器的接口状态。
[0045] 步骤三、检查网络运行状态,从接口管理模块处获知绑定的接口状态;
[0046] 步骤四、判断绑定的接口状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告,具体过程如下:
[0047] 判断绑定的接口是否有效,如果接口有效,则下发默认路由通告,如果接口失效,则撤销默认路由通告,此时自治系统中的普通路由器就可以及时根据路由选择算法计算出优选的路径进行流量的转发,在步骤四执行完以后,再跳转步骤三。所述接口失效包括:接口不存在或删除、接口物理状态失效、接口管理状态失效等,所述接口有效包括:接口添加、接口物理状态生效、接口管理状态生效等。
[0048] 本发明第二实施例中,如图5所示,所述IS-IS协议控制默认路由通告的方法,包括具体步骤如下:
[0049] 步骤一、在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告,具体包括如下操作:
[0050] a1)强制产生一条默认路由并向该自治系统内的其他路由器通告;
[0051] a2)检测路由表中是否有默认路由,如果有默认路由,则将此默认路由通告给该自治系统内的其他路由器。
[0052] 步骤二、将默认路由通告和通告控制策略绑定,该通告控制策略是某条具体路由,该具体路由可以是邻居路由器接口的IP地址,也可以是邻居路由器的环回地址(Loop back address),与本台边界路由器直接相连的另一自治系统的边界路由器即为本台边界路由器的邻居路由器,如果这两台属于不同自治系统的边界路由器之间的直接链路失效了,那么本台边界路由器的路由管理模块会将邻居路由器的IP地址或者环回地址从路由表中删除;如果这两台属于不同自治系统的边界路由器之间的直接链路恢复了,那么本台边界路由器的路由管理模块将会在路由表中添加邻居路由器的IP地址或者环回地址,除此之外,本发明不排除为了某些特殊需求,将默认路由通告和非邻居路由器的IP地址或者环回地址绑定的情形;
[0053] 步骤三、检查网络运行状态,以获取该绑定的具体路由在路由表中的状态,所述检查的方式有两种:
[0054] 1)通过实时监测路由管理模块对路由表的操作;
[0055] 2)周期性的查询路由表或者转发表。
[0056] 步骤四、判断网络运行状态是否满足通告控制策略中设置的条件,据此下发或撤销默认路由通告,具体过程如下:
[0057] 判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告,此时自治系统中的普通路由器就可以及时根据路由选择算法计算出优选的路径进行流量的转发,在步骤四执行完以后,再跳转步骤三。所述绑定的具体路由可以是静态路由,该静态路由如果和物理接口绑定,则物理接口失效或生效,该静态路由就会失效或生效。
[0058] 本发明第三实施例,如图6所示,本实施例在一台边界路由器中同时提供两种与默认路由通告绑定的通告控制策略,所述IS-IS协议控制默认路由通告的方法,包括具体步骤如下:
[0059] 步骤一、在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告;
[0060] 步骤二、将默认路由通告和通告控制策略绑定,该通告控制策略可以是某条具体路由,也可以是本台边界路由器的一个或多个接口;
[0061] 步骤三、判断绑定的通告控制策略是否是本台边界路由器的接口,如果是,则执行步骤四,否则,执行步骤六;
[0062] 步骤四、检查网络运行状态,从接口管理模块处获知绑定的接口状态;
[0063] 步骤五、判断绑定的接口是否有效,如果是,则下发默认路由通告,否则撤销默认路由通告,此时自治系统中的普通路由器就可以及时根据路由选择算法计算出优选的路径进行流量的转发,在步骤五执行完以后,再跳转步骤四;
[0064] 步骤六、检查检查网络运行状态,以获取绑定的具体路由在路由表中的状态;
[0065] 步骤七、判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告,此时自治系统中的普通路由器就可以及时根据路由选择算法计算出优选的路径进行流量的转发,在步骤七执行完以后,再跳转步骤六。
[0066] 本发明第四实施例,一种IS-IS协议控制默认路由通告的系统,其特征在于包括:
[0067] 配置模块,用于在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告具体包括如下操作:
[0068] a1)强制产生一条默认路由并向该自治系统内的其他路由器通告;
[0069] a2)检测路由表中是否有默认路由,如果有默认路由,则将此默认路由通告给该自治系统内的其他路由器;
[0070] 策略绑定模块,用于将所述默认路由通告和通告控制策略绑定,所述通告控制策略可以是某条具体路由,也可以是本台边界路由器的一个或多个接口,所述具体路由可以是邻居路由器接口的IP地址或者邻居路由器的环回地址,所述接口可以是物理接口、虚接口或捆绑接口;
[0071] 检查模块,用于检查网络运行状态,获取绑定的具体路由在路由表中的状态,或者从接口管理模块处获知绑定的接口状态;
[0072] 判断执行模块,用于判断网络运行状态是否满足通告控制策略中设置的相应条件,据此下发或撤销默认路由通告,具体地,判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告;或者判断绑定的接口是否有效,如果是,则下发默认路由通告,否则撤销默认路由通告。
[0073] 本发明第五实施例,是和第三实施例对应的一种IS-IS协议控制默认路由通告的系统,包括:
[0074] 配置模块,用于在自治系统的边界路由器上配置基于IS-IS协议的默认路由通告,具体包括如下操作:
[0075] a1)强制产生一条默认路由并向该自治系统内的其他路由器通告;
[0076] a2)检测路由表中是否有默认路由,如果有默认路由,则将此默认路由通告给该自治系统内的其他路由器;
[0077] 策略绑定模块,用于将所述默认路由通告和通告控制策略绑定,所述通告控制策略可以是某条具体路由,也可以是本台边界路由器的一个或多个接口,所述具体路由可以是邻居路由器接口的IP地址或者邻居路由器的环回地址,所述接口可以是物理接口、虚接口或捆绑接口;
[0078] 判断模块,用于判断默认路由通告和哪种通告控制策略绑定;
[0079] 检查模块,用于根据不同的通告控制策略检查网络运行状态,获取绑定的具体路由在路由表中的状态,或者从接口管理模块处获知绑定的接口状态;
[0080] 判断执行模块,用于判断网络运行状态是否满足通告控制策略中设置的相应条件,据此下发或撤销默认路由通告,具体地,判断绑定的具体路由是否存在于路由表中,如果是,则下发默认路由通告,否则撤销默认路由通告;或者判断绑定的接口是否有效,如果是,则下发默认路由通告,否则撤销默认路由通告。
[0081] 本发明所述IS-IS协议控制默认路由通告的方法和系统基于IS-IS协议为自治系统的边界路由器配置默认路由通告,将默认路由通告这一事件既和网络管理者预先进行的静态配置相关联,又和网络运行状态关联,使默认路由通告具有可控性,从而使同一自治系统中没有直接链路相连的边界路由器在向外转发流量的链路失效或生效时,能够及时撤销或下发默认路由通告,进而使自治系统中的普通路由器就可以及时根据路由选择算法计算出优选的路径进行流量的转发。与现有技术相比,本发明具有计算量小,反应迅速的优点,因此能够确保流量不会因为无法继续转发而丢弃,更加有效地利用网络资源。
[0082] 通过具体实施方式的说明,当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本发明加以限制。