一种抑制路由震荡的方法以及装置的制作方法

文档序号:7663121阅读:149来源:国知局
专利名称:一种抑制路由震荡的方法以及装置的制作方法
技术领域
本发明涉及通讯领域,尤其涉及一种抑制路由震荡的方法以及装置。
背景技术
在边缘网关协议(BGP, Border Gateway Protocol)方案中,路由器的路 由信息数据库包含3个部分Adj-RIBs-In,用于存储未经处理的路由信息; Loc-RIB,用于存储路由器使用自身的本地路由策略选择的最佳路由; Adj-RIBs-Out,用于存储路由器向BGP节点通告的路由。
BGP的选路过程具体为对Adj-RIBs-In中的路由使用本地路由策略,同 时将选定的或修改过的最佳路由放到Loc-RIB和Adj-RIBs-Out中。
所以BGP路由器只为每一个目的地保存一个最佳路由放在Loc-RIB,只 有当最佳路由发生变化时,才将此变化的路由放到Adj-RIBs-Out,向BGP peers 通告,而在Adj-RIBs-In中到达每个目的节点的路由可能不止一条,这些路由 的每一次变化,并不一定会向BGP peers通告此路由,但会触发BGP选f各过 程,重新选择最佳路由,这样选择的最佳路由和之前的最佳若相同就不通告 此路由,若不同则需要通告此路由。
在实际的应用中常常会出现路由震荡的情况,所谓路由震荡,主要是指 一条路由间断性地出现或消失。 一般来说,网络链路故障、网络维护以及网 络误配置均会导致某些路由发生震荡。当有新的路由出现时,路由器会向邻 居发送update消息;当有新的路由消失时,路由器会向邻居发送withdraw消 息;路由震荡会导致路由器在互联网内周期性地传播大量的更新或撤销消息。 这些更新或撤销消息会占用链路的带宽以及增加路由器负荷。
现有技术中 一种抑制路由震荡的方法具体为
给每条路由设置一个惩罚值(Penalty),当某条路由发生震荡时,将其惩 罚值增加一个量(例如1000 )。当惩罚值penalty达到规定的抑制门限 (Suppress-limit)时,对该路由抑制(即不向邻居路由器通告这条路由)。经过一段规定的时间half-time后,如果该路由没有再次发生震荡,则将其惩罚 值减少一半(即以指数速率减少惩罚值的值)。当惩罚值下降到规定的再使用 门限reuse-limit时,解除对该路由的抑制,重新向其它路由器通告该路由。如 果该路由被抑制后,再次波动,相应的惩罚值会继续累加。现有技术的方案 中,只对最佳路由的震荡进行抑制,即只有当存储在Loc-RIB中的最佳路由 发生震荡时,才启用路由震荡抑制策略。
但是实际上,无论是最佳路由震荡还是非最佳路由震荡都会触发BGP的 选路过程,选择最佳路由,若新选择所得的最佳路由与之前的最佳路由不一 致,则需要向BGP peers通告最新的最佳路由。所以现有技术的方案可能会导 致以下一些问题
首先、由于不对Adj-RIBs-In中的路由进行震荡抑制,所以其中存储的路 由发生震荡时都会触发BGP选路过程,选择最佳路由,向BGP peers通告最 佳路由,若在一段时间内路由频繁震荡,则路由器会频繁触发选路流程,从 而增加了路由器负荷;
其次、若Loc-RIB中的最佳路由失效,则需要根据本地路由策略从 Adj-RIBs-In中选择一个路由作为最佳路由,现有技术中只对Loc-RIB中的路 由震荡进行抑制,所以可能会从Adj-RIBs-In中选择一条正在震荡的不稳定路 由作为最佳;洛由,从而影响了路由选取效率。

发明内容
本发明实施例要解决的技术问题是提供一种抑制路由震荡的方法以及装 置,用于降低路由器负荷,且提高路由选取效率。
本发明实施例提供的抑制路由震荡的方法,包括获取备用路由的第一 路由信息;根据所述第一路由信息判断所述备用路由是否满足第一抑制条件, 若满足,则对所述备用路由进行抑制。
本发明实施例提供的抑制路由震荡的装置,包括路由信息获取单元, 用于获取备用路由的第一路由信息;抑制判断单元,用于根据获取的第一路 由信息判断所述备用路由是否满足抑制条件;路由抑制单元,用于当所述备 用路由满足抑制条件时,对对应的备用路由进行抑制。从以上技术方案可以看出,本发明实施例具有以下优点
本发明实施例中,由于根据获取到的备用路由的第 一路由信息判断所述 备用路由是否满足第一抑制条件,对满足抑制条件的备用路由进行抑制,所
以被抑制的备用路由发生震荡时不会触发BGP选路过程,从而使得路由器不 会频繁触发选路流程,因此降低了路由器的负荷;
其次,由于被抑制的备用路由发生震荡时不会参与BGP选路过程,所以 当主用路由失效,需要重新选取主用路由时,被抑制的备用路由不会参与主 用路由的选取,所以避免了将不稳定的备用路由选为主用路由的可能,从而 提高了路由选取的效率。


图1为本发明实施例中抑制路由震荡的方法第一实施例示意图; 图2为本发明实施例中抑制路由震荡的方法第二实施例示意图; 图3为本发明实施例中抑制路由震荡的方法第三实施例示意图; 图4为本发明实施例中抑制路由震荡的装置实施例示意图。
具体实施例方式
本发明实施例提供了 一种抑制路由震荡的方法以及装置,用于降低路由 器负荷,且提高路由选取效率。
本发明实施例中,由于根据获取到的备用路由的第一路由信息判断所述 备用路由是否满足第一抑制条件,对满足抑制条件的备用路由进行抑制,所 以被抑制的备用路由发生震荡时不会触发BGP选路过程,从而使得路由器不 会频繁触发选路流程,因此降低了路由器的负荷;
其次,由于被抑制的备用路由发生震荡时不会参与BGP选路过程,所以 当主用路由失效,需要重新选取主用路由时,被抑制的备用路由不会参与主 用路由的选取,所以避免了将不稳定的备用路由选为主用路由的可能,从而 提高了路由选取的效率。
需要说明的是,在下面的各个实施例中,主用路由为存储在Loc-RIB中 的最佳路由,备用路由为存储在Adj-RIBs-In中的非最佳路由。首先说明 一下关于对路由进行分类存储的流程
1、 确定路由首选等级;
本实施例中,当有新的路由产生,或有路由发生改变,或有路由撤销时, 则对这些路由进行计算,获得可用路由作为备用路由,将这些备用路由存储 于Adj-RIBs-In中;
2、 选取最佳路由;
在Adj-RIBs-In中存储的备用路由中,按照预置的选路算法选取主用路由, 将选取出的主用路由存储于Loc-RIB中,具体的选路算法为现有技术,此处 不作限定,例如可以为最短路径优先算法。
3、 通告路由变化。
当Loc-RIB中的主用路由发生改变时,将该路由存储于Adj-RIBs-Out中, 并向BGP节点通告该变化。
在下面各个实施例中,第一路由信息是指备用路由的路由信息,第二路 由信息是指主用路由的路由信息。
下面对本发明实施例中的抑制路由震荡的方法实施例进行详细描述,首 先介绍关于备用^各由的震荡抑制的情况
请参阅图1,本发明实施例中抑制路由震荡的方法第一实施例包括
101、获取备用路由的第一路由信息;
本实施例中,路由器获取备用路由的第一路由信息,可以为路由器定期 的获取所有Adj-RIBs-In中的备用路由的第一路由信息进行分析,也可以是当 路由器接收到邻居发送的路由更新请求,从该路由更新请求中获取对应的备 用路由的第一路由信息。
本实施例中,路由器获取备用路由的第 一路由信息的情况可以为根据预 置的安全规则每隔一段时间就对本地的备用路由进行一次震荡检测,同样可 以为在接收到路由更新请求后再对该路由更新请求对应的备用路由进行震荡 检测。上述第一路由信息中存储有该路由的相关信息,例如包括应用服务器
(AS, Application Server)路径长度,路由接口,路由标识以及该路由所经过 的AS域等信息。
102、 对该第一路由信息进行分析;
路由器获取到备用路由的第 一路由信息之后,对获取到第 一路由信息进 行分析,本实施例中具体的分析过程可以为将获取到的第一路由信息中的 选定的信息与前一 次接收到的该备用路由的第 一路由信息中对应的信息进行 比较,可以理解的是,可以选取获取到的第 一路由信息中的所有的项目信息 进行比较,也可以选取部分项目信息进行比较,具体的比较方式可以根据实 际情况进行确定,例如可以只选取第 一路由信息中的路由接口以及路由标识 与前一次接收到的该备用路由备份的第 一路由信息中对应的信息进行比较, 也可以选取获取到的第一路由信息中的所有项目信息进行比较。
103、 判断第一路由信息是否改变,若改变,则执行步骤104,若未改变, 则执行步骤105;
本实施例中,将获取到的第一路由信息中的选定的信息与之前对该备用 路由备份的第一路由信息中的对应信息进行比较,判断选定的信息中,是否 有任何一项信息发生变化,若是,则执行步骤104,若否,则执行步骤105。
104、 对该备用路由进行抑制,并跳转到步骤106;
当第 一路由信息发生改变后,对该第 一路由信息对应的备用路由进行抑 制,本实施例中具体的抑制方式可以为将该备用路由的选路标识设置为不 可用。
需要说明的是,每一个备用路由均有一个选路标识,该标识用于指示该 备用路由是否有资格被选取为主用路由,若该标识被设置为不可用,则当选 取主用路由时,即进行BGP选路过程时,该备用路由没有资格参与选取,即
当主用路由失效时,路由器需要选取新的主用路由,在选取时会先获取 所有备用路由的选路标识;
先篩选出选路标识为可用的备用路由,在这些备用路由中,再根据预置的选路算法选取主用路由。
105、 结束本流禾呈;
若第一路由信息未发生改变,则结束本流程。后续还可以执行其他的流 程,例如可以为继续监控备用路由的第一路由信息的状态,或者是其他的处 理流程,本实施例不作限定。
106、 执行完毕步骤104,即在对备用路由进行抑制后,判断是否满足解 除抑制条件,若满足,则执行步骤107,若不满足,则执行步骤104;
本实施例中,若备用路由的数目不多,或者是经过突发的网络故障后, 网络恢复正常的情况下,可以考虑在满足解除抑制条件后,将原先被抑制的 备用路由解除抑制,使之能重新参与主用路由的选取,可以理解的是,在对 震荡抑制要求严格的网络中,或者是备用路由数目众多的情况下,同样可以 不执行本步骤,即不对被抑制的备用路由解除抑制。
判断的依据可以为
1、 若备用路由数目不多,则对某备用路由抑制后不对其解除抑制,则可 能使得可用备用路由不足,造成网络不稳定;
2、 若是网络突发故障后恢复,则应该将由此次网络突发故障导致震荡的 路由在抑制后解除抑制,因为网络突发故障的概率比较低,而且网络突发故 障可能会导致大量的备用路由发生震荡;
在满足上述两个条件的前提下,本实施例中可以考虑对已经被抑制的备 用路由解除抑制,具体考虑的依据为在备用恢复周期内是否再次震荡,若没 有再次震荡,则解除抑制对该备用路由的抑制。
本实施例中,判断是否满足解除抑制条件具体可以为设置一段备用恢 复周期,在这段周期内,对被抑制的备用路由的第一路由信息进行分析,判 断该备用路由的第一路由信息是否不再发生变化,若是,则认为满足解除抑 制条件,可以执行步骤107,若否,则认为不满足解除抑制条件,执行步骤 104,保持该备用路由的被抑制状态。本实施例中,具体的判断备用路由的第一路由信息是否再次发生变化的
步骤可以为若再次接收到路由器发送的路由更新请求,且该请求中的该备
用路由的第 一路由信息与前一次接收到的第 一路由信息相比发生变化,则确 定备用路由的第 一路由信息再次发生变化。
可以理解的是,具体的备用恢复周期的长度可以根据实际情况进行确定, 在故障率要求比较严格的网络中可以设置该备用恢复周期的时间较长。
上述采用的是设置备用恢复周期的方式判断是否满足解除抑制条件,可
以理解的是,同样可以采用其他的判断方式,例如在上面提到了两种情况 备用路由数目不多的情况和网络突发故障的情况。以上三种判断方式在实际 应用中可以单独使用也可以组合使用,但一般来说,由于网络突发故障的概 率较低,所以一旦网络从突发故障中恢复,则可以直接将由于网络故障而被 抑制的备用路由解除抑制,此时不需要其他的判断条件。此外,举一个组合 判断的例子当某条备用路由被抑制后,首先判断当前备用路由的数目是否 小于门限值,若小于门限值,则设置一个备用恢复周期,判断在该段周期内 被抑制的备用路由的第一路由信息是否再次发生变化,若没有变化,则对该 备用路由解除抑制。
107、对该备用路由解除抑制。
当备用路由满足了解除抑制条件后,可以对该备用路由解除抑制,即将 该备用路由的选路标识修改为可用,使之可以重新参与主用路由的选取。
上述实施例中由于可以对备用路由的震荡进行抑制,所以被抑制的备用 路由发生震荡时不会触发BGP选路过程,从而使得路由器不会频繁触发选路 流程,因此降低了路由器的负荷;
其次,由于被抑制的备用路由发生震荡时不会参与BGP选路过程,所以 当主用路由失效,需要重新选取主用路由时,被抑制的备用路由不会参与主 用路由的选取,所以避免了将不稳定的备用路由选为主用路由的可能,从而 提高了路由选取的效率。
上述实施例中的抑制条件比较严格,即一旦判断某备用路由的第一路由 信息发生变化,则对该备用路由进行抑制,可以理解的是,在实际应用中,抑制备用路由的条件也可以稍微放宽一些,具体请参阅图2,本发明实施例中
抑制路由震荡的方法第二实施例包括
201、 获取备用路由的第一路由信息;
本实施例中,路由器获取备用路由的第一路由信息,可以为路由器定期 的获取所有Adj-RIBs-In中的备用路由的第一路由信息进行分析,也可以是当 路由器接收到邻居发送的路由更新请求,从该路由更新请求中获取对应的备 用路由的第一路由信息。
202、 对该第一路由信息进行分析;
第一路由信息中存储有该路由的相关信息,例如包括AS路径长度,路由 接口等,路由器获取到备用路由的第一路由信息之后,对获取到第一路由信 息进行分析,本实施例中具体的分析过程可以为将获取到的第一路由信息 中的各项信息与之前对该备用路由备份的第 一路由信息进行比较。203、 判断第一路由信息是否改变,若改变,则执行步骤204,若未改变, 则执行步骤206;
本实施例中,将获取到的第 一路由信息中的各项信息与之前对该备用路 由备份的第一路由信息进行比较,判断各项信息中,是否有任何一项信息发 生变化,若是,则执行步骤204,若否,则执行步骤206。
204 、在预置的备用检测周期内计算第 一路由信息的改变次数;
本实施例中,当检测到某备用路由的第一路由信息发生变化时,则以检 测到此次变化的时刻作为起点,启动一段预置长度的备用检测周期,在该备 用检测周期内检测该备用路由的第一路由信息是否再次发生变化, 一共发生 了多少次变化。
可以理解的是,在对故障率要求比较严格的网络中,可以设置备用检测 周期为 一段比较长的时间,还可以同时设置门限次数为比较少的次数。
205 、判断在预置的备用检测周期内该备用路由的第 一路由信息发生变化 的次数是否达到预置的门限,若是,则执行步骤207,若否,则执行步骤206;
206、扭^亍其他处理流程;若第 一路由信息未发生改变,或者是在备用检测周期内该备用路由的第 一路由信息变化的次数没有达到门限次数,则执行其他的流程,例如可以为 继续监控备用路由的第一路由信息的状态,还可以是其他的处理流程,本实 施例不作限定。
207、 对该备用路由进行抑制;
当在备用检测周期内该备用路由的第 一路由信息变化的次数达到门限次 数后,对该第一路由信息对应的备用路由进行抑制,本实施例中具体的抑制 方式可以为将该备用路由的选路标识设置为不可用。
需要说明的是,每一个备用路由均有一个选路标识,该标识用于指示该 备用路由是否有资格被选取为主用路由,若该标识被设置为不可用,则当选 取主用路由时,该备用路由没有资格参与选取,即
当主用路由失效时,路由器需要选取新的主用路由,在选取时会先获取 所有备用路由的选路标识;
先篩选出选路标识为可用的备用路由,在这些备用路由中,再根据预置 的选路算法选取主用路由。
208、 在对备用路由进行抑制后,判断是否满足解除抑制条件,若满足, 则执行步骤209,若不满足,则执行步骤207;
本实施例中,若备用路由的数目不多,或者是经过突发的网络故障后, 网络恢复正常的情况下,可以考虑在满足解除抑制条件后,将原先被抑制的 备用路由解除抑制,使之能重新参与主用路由的选取,可以理解的是,在对 震荡抑制要求严格的网络中,或者是备用路由数目众多的情况下,同样可以 不执行本步骤,即不对被抑制的备用路由解除抑制。
本实施例中,判断是否满足解除抑制条件具体可以为设置一段备用恢 复周期,在这段周期内,对被抑制的备用路由的第一路由信息进行分析,判 断该备用路由的第一路由信息是否不再发生变化,若是,则认为满足解除抑 制条件,可以执行步骤209,若否,则认为不满足解除抑制条件,执行步骤 207,保持该备用路由的被抑制状态。可以理解的是,具体的备用恢复周期的长度可以根据实际情况进行确定, 在故障率要求比较严格的网络中可以设置该备用恢复周期的时间较长。
209、对该备用路由解除抑制。
当备用路由满足了解除抑制条件后,可以对该备用路由解除抑制,即是 将该备用路由的选路标识修改为可用,使之可以重新参与主用路由的选取。
上述实施例中由于可以对备用路由的震荡进行抑制,所以被抑制的备用
路由发生震荡时不会触发BGP选路过程,从而使得路由器不会频繁触发选路 流程,因此降低了路由器的负荷;
其次,由于被抑制的备用路由发生震荡时不会参与BGP选路过程,所以 当主用路由失效,需要重新选取主用路由时,被抑制的备用路由不会参与主 用路由的选取,所以避免了将不稳定的备用路由选为主用路由的可能,从而 提高了路由选取的效率。
上述抑制路由震荡的方法第一实施例以及抑制路由震荡的方法第二实施 例中介绍了关于备用路由的震荡抑制的过程,可以理解的是,在对备用路由 进行震荡抑制的基础上可以采用各种方式对主用路由的震荡进行抑制,本发 明实施例中不作限定,下面举例进行介绍
请参阅图3,本发明实施例中抑制路由震荡的方法第三实施例包括
301、 获取主用路由的第二路由信息;
本实施例中,路由器获取主用路由的第二路由信息,可以为路由器定期 的获取所有Loc-RIB中的主用路由的第二路由信息进行分析,也可以是当路 由器接收到邻居发送的路由更新请求,从该路由更新请求中获取对应的主用 路由的第二路由信息。
上述第二路由信息中存储有该路由的相关信息,例如包括AS路径长度, 路由接口 ,路由标识以及该路由所经过的AS域等信息。
302、 对该第二路由信息进行分析;
路由器获取到主用路由的第二路由信息之后,对获取到第二路由信息进 行分析,本实施例中具体的分析过程可以为将获取到的第二路由信息中的AS路径长度与之前对该主用路由备份的第二路由信息中的AS路径长度进行比较。
303、 判断第二路由信息中的AS路径长度是否改变,若改变,则执行步 骤304,若未改变,则执行步骤305;
本实施例中,将获取到的第二路由信息中的AS路径长度与之前对该主用 路由备份的第二路由信息中的AS路径长度进行比较,判断AS路径长度是否 发生变化,若是,则执行步骤304,若否,则执行步骤305。
304、 对该主用^各由进行抑制,并跳转到步骤306;
当第二路由信息中的AS路径长度发生改变后,对该第二路由信息对应的 主用路由进行抑制,本实施例中具体的抑制方式可以为将该主用路由的通 告标识设置为不可用。
需要说明的是,主用路由有一个通告标识,该标识用于指示该主用路由 发生变化时(这里的变化是指除了 AS路径长度以外的其他路由信息的变化) 是否需要通告BGP节点,若该标识被设置为不可用,则该主用路由发生变化 时不通告BGP节点,即
当主用路由发生变化时,路由器需要通告该变化,则会先获取主用路由 的通告标识;
若通告标识为可用,则向BGP节点通告此次变化,若通告标识为不可用, 则不向BGP节点通告此次标识。
此外,本实施例中,需要设置一个长度为T的时间窗口,在该时间段内 对该主用路由进行抑制,同时记录改变后的AS路径长度(假设改变后的长度 为L ),将L作为当前AS路径长度(CAL, Current AS path length)参数的数 值,并将此次变化通告BGP节点。
可以理解的是,若在T时间内,路由器检测到该主用路由的第二路由信 息中的AS路径长度再次发生变化,且再次发生变化后的长度大于CAL,则 重新设置一个长度为T的时间窗口,在该段时间内对该主用路由进行抑制。
上述具体的T的大小可以根据实际情况进行确定,例如在对故障率要求严格的网络中,T的数值可以设置比较大。
305、 结束本流禾呈;
若第二路由信息未发生改变,则结束本流程。后续还继续执行其他的流 程,例如可以为继续监控主用路由的第二路由信息的状态,还可以是其他的 处理流程,本实施例不作限定。
306、 在对主用路由进行抑制后,判断是否满足解除抑制条件,若满足, 则执行步骤307,若不满足,则执行步骤304以保持抑制状态;
本实施例中,关于被抑制的主用路由是否满足解除抑制条件的判断可以 具体包括以下几种情况
一、 在T时间内,该主用路由的第二路由信息没有再发生变化,则认为 满足解除抑制条件,在T时间结束时,将CAL的数值赋予最佳AS路径长度
(OAL , Optimal AS path length );
二、 在T时间内设置一个计数器change index,具体可以为一个整型计数 器,可以初始化为O,若在T时间内,路由器检测到该主用路由的第二路由信 息中的AS路径长度再次发生变化,且再次发生变化后的长度L小于或等于 CAL,则使得change index的数值加1,并且设置CAL的值为L,若在T时 间内,change index的数值达到门限数值,则认为该主用路由满足解除抑制条 件,在change index的数值达到门限数值时,将CAL的数值赋予OAL,可以 理解的是,该门限数值可以根据实际情况进行确定;
三、 在T时间内,存在一个OAL,用于记录最佳的AS路径长度,该数 值为一可变数值,当出现的AS路径长度小于当前OAL时,则认为满足解除 抑制条件,同时将当前的AS路径长度赋予OAL。
为便于理解上述解除抑制条件,下面以一具体实例进行说明
4£设T时间为20秒,主用路由原先的AS路径长度为10,第一次改变时, AS路径长度为9,默认的CAL为10, OAL为5,计数器默认为0,门限数值 为3,则对应上述条件
一、当主用路由的AS路径长度由10变为9时,该主用^各由被抑制,但—200710165163.5
说明书第13/16页
若在20秒内该主用路由的AS路径长度不再发生变化,则解除对该主用路由
的抑制;
二、 若在20秒内,该主用路由的AS路径长度持续发生变化,则在第一 次发生变化之后,CAL为9,假设第二次发生变化时,AS路径长度为8,则 change index为1,且CAL为8,假设第三次发生变化时,AS路径长度为7, 则change index为2,且CAL为7,假设第三次发生变化时,AS路径长度为 6,则change index为3,且CAL为6,此时change index达到门限数值3,则 无论此时是否达到20秒,都解除对该主用路由的抑制;
三、 若在20秒内,该主用路由的AS路径长度再次发生变化,假设第二 次发生变化时,AS路径长度为4,则小于OAL,则解除对该主用路由的抑制, 且将OAL的数值修改为4。
307、对该主用路由解除抑制。
当主用路由满足了解除抑制条件后,可以对该主用路由解除抑制,即是 将该主用路由的通告标识修改为可用,则当该主用路由的第二路由信息发生 变化时向BGP节点通告该变化。
可以理解的是,上述第三实施例中另外还包含对备用路由进行震荡抑制 的过程,具体过程可以为方法第 一实施例以及方法第二实施例中描述的两种 情况,故在第三实施例中不再赘述。
上述介绍了本发明实施例中的抑制路由震荡的方法实施例,下面介绍本 发明实施例中的抑制路由震荡的装置实施例,请参阅图4,本发明实施例中抑 制路由震荡的装置实施例包括
路由信息获取单元401,用于获取备用路由的第一路由信息;
抑制判断单元402,用于根据获取的第一路由信息判断备用路由是否满足 抑制条件;
路由抑制单元403,用于当备用路由满足抑制条件时,对对应的备用路由 进行抑制。
本实施例中,抑制路由震荡的装置还包括抑制解除单元404,用于当主用路由或备用路由被抑制后,根据接收到的 对应的第二路由信息或对应的第一路由信息判断是否满足预置的解除抑制条 件,若满足,则对所述主用路由或备用路由解除抑制。
本实施例中,
路由信息获取单元401还包括
主用路由信息获取单元405,用于获取主用路由的第二路由信息; 抑制判断单元402还包括
主用抑制判断单元406,用于根据获取的第二路由信息判断主用路由是否 满足抑制条件;
路由抑制单元403还包括
主用路由抑制单元407,用于当主用路由满足抑制条件时,对对应的主用 路由进行抑制。
下面结合上述装置实施例对本发明实施例中的路由震荡的抑制过程进行 简要描述
一、备用路由震荡的抑制
路由信息获取单元401获取备用路由的第一路由信息,具体可以由路由 信息获取单元401定期获取所有Adj-RIBs-In中的备用路由的第一路由信息进 行分析,也可以是在接收到邻居发送的路由更新请求时,从该路由更新请求 中获取对应的备用路由的第 一路由信息。
抑制判断单元402根据路由信息获取单元401获取到的备用路由的第一 路由信息判断该备用路由是否满足预置的抑制条件,具体的抑制条件可以是 接收到的第 一路由信息相比于前一次接收到的该备用路由备份的第 一路由信 息发生变化,还可以是在前述第一路由信息发生变化后,设置一个计时器, 且在预置的周期内,新获取的第 一路由信息与前一次获取的第 一路由信息相 比再次发生变化,在满足抑制条件后,则通知路由抑制单元403对该备用路 由进行抑制;
路由抑制单元403在接收到抑制判断单元402发送的通知后,对该备用路由进行抑制,具体的抑制手段可以是将该备用路由的选路标识设置为不
可用,则该备用路由不可再参与主用路由的选取,即BGP选路;
当路由抑制单元403对备用路由进行抑制后,抑制解除单元404判断被 抑制的备用路由是否满足预置的解除抑制条件,具体的判断依据可以是抑 制解除单元404设置一段备用恢复周期,判断在这段备用恢复周期内,该备 用路由的第一路由信息是否再次发生变化,若未发生变化,则解除对该备用 路由的抑制,具体可以为将该备用路由的选路标识设置为可用,则该备用 3各由可以参与主用3各由的选取。
二、主用路由震荡的抑制
主用路由信息获取单元405获取主用路由的第二路由信息,具体可以由 主用路由信息获取单元405在接收到邻居发送的路由更新请求时,从该路由 更新请求中获取对应的主用路由的第二路由信息。
主用抑制判断单元406根据主用路由信息获取单元405获取到的主用路 由的第二路由信息判断该主用路由是否满足预置的抑制条件,具体的抑制条
件可以是接收到的第二路由信息中的AS长度信息相比于前一次接收到的该 主用路由备份的第二路由信息中的AS长度信息发生变化,在满足抑制条件 后,则通知主用路由抑制单元407对该主用路由进行抑制;
主用路由抑制单元407在接收到主用抑制判断单元406发送的通知后, 对该主用路由进行抑制,具体的抑制手段可以是将该主用路由的通告标识 设置为不可用,则该主用路由的第二路由信息中的除AS长度信息之外的信息 发生变化时,不向BGP节点通告;
当主用路由抑制单元407对主用路由进行抑制后,抑制解除单元404判 断被抑制的主用路由是否满足预置的解除抑制条件,具体的判断依据可以是 抑制解除单元404若判断新获取到的第二路由信息中的AS长度信息相对减 少,即路由状况不断好转,则解除对该主用路由的抑制,具体可以为将该 主用路由的通告标识设置为可用,则该主用路由的第二路由信息中的除AS长 度信息之外的信息发生变化时,向BGP节点通告。
上述描述的路由状况不断好转,即新获取到的第二路由信息中的AS长度信息相对减少的判断过程在本发明实施例中抑制路由震荡的方法第三实施例 中的步骤306中有详细介绍,此处不再赘述。
可以理解的是,本发明实施例中的抑制路由震荡的装置可以用于路由器 中,或独立实现,具体的获取路由信息,根据路由信息判断是否满足抑制条 件,以及对路由进行抑制的过程均与前面的抑制路由震荡的方法实施例中描 述的流程一致,此处不再赘述。
观戮貫迅仪个八贝口J kA-王肝炎现工KL失犯"'J刀〉3 是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机
可读存储介质中,该程序在执行时,包括如下步骤 获取备用路由的第一路由信息;
根据所述第一路由信息判断所述备用路由是否满足第一抑制条件,若满 足,则对所述备用路由进行抑制。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种抑制路由震荡的方法以及装置进行了详细
绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方 式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本 发明的限制。
权利要求
1、一种抑制路由震荡的方法,其特征在于,包括获取备用路由的第一路由信息;根据所述第一路由信息判断所述备用路由是否满足第一抑制条件,若满足,则对所述备用路由进行抑制。
2、 根据权利要求1所述的方法,其特征在于,所述方法还包括 获取主用路由的第二路由信息;根据所述第二路由信息判断所述主用路由是否满足第二抑制条件,若满 足,则对所述主用路由进行抑制。
3、 根据权利要求1所述的方法,其特征在于,所述根据所述第一路由信 息判断所述备用路由是否满足第 一抑制条件的步骤包括判断所述备用路由的第一路由信息是否改变,若改变,则确定所述备用 路由满足第一抑制条件。
4、 根据权利要求1所述的方法,其特征在于,所述根据所述第一路由信 息判断所述备用路由是否满足第 一抑制条件的步骤包括判断所述备用路由的第一路由信息是否改变,若改变,则以检测到此次 改变的时刻为起点,在预置的备用检测周期内判断所述备用路由的第一路由 信息的改变次数是否达到预置的门限次数,若达到,则确定所述备用路由满 足第一抑制条件。
5、 根据权利要求3或4所述的方法,其特征在于,所述对所述备用路由 进行抑制的步骤包括将所述备用路由的选路标识修改为不可用。
6、 根据权利要求3或4所述的方法,其特征在于,所述对所述备用路由 进行抑制的步骤之后包括以所述备用路由被抑制的时刻为起点,在预置的备用恢复周期内判断新 接收到的所述备用路由的第 一路由信息与前一次接收到的所述备用路由的第 一路由信息相比是否改变,若未改变,则对所述备用路由解除抑制。
7、 根据权利要求2所述的方法,其特征在于,所述根据所述第二路由信息判断所述主用路由是否满足第二抑制条件的步骤包括判断所述主用路由的第二路由信息中的应用服务器路径长度是否改变, 若改变,则确定所述主用路由满足第二抑制条件。
8、 根据权利要求7所述的方法,其特征在于,所述对所述主用路由进行 抑制的步骤包括将所述主用路由的通告标识修改为不可用,在预置的抑制周期内保持所 述通告标识为不可用。
9、 根据权利要求7所述的方法,其特征在于,所述主用路由的第二路由 信息中的应用服务器路径长度改变时,将改变后的应用服务器路径长度作为 第一长度信息;所述对所述主用路由进行抑制的步骤之后包括在所述抑制周期内设置一个计数器,判断所述主用路由的第二路由信息中的应用服务器路径长度是否改变, 若改变,则将当前改变后的应用服务器路径长度作为第二长度信息;若所述第二长度信息小于所述第一长度信息,则将所述计数器的数值递 增,重复上述步骤,当所述计数器的数值达到预置的门限值时,则对所述主 用路由解除抑制。
10、 根据权利要求7所述的方法,其特征在于,所述主用路由的第二路 由信息中的应用服务器路径长度改变时,将改变后的应用服务器路径长度作 为第一长度信息;所述对所述主用路由进行抑制的步骤之后包括在所述抑制周期内判断所述主用路由的第二路由信息中的应用服务器路 径长度是否改变,若改变,则将当前改变后的应用服务器路径长度作为第二 长度信息;判断所述第二长度信息是否小于预置的最佳长度,若是,则对所述主用 路由解除抑制,并将所述第二长度信息作为最佳长度。
11、 一种抑制路由震荡的装置,其特征在于,包括路由信息获取单元,用于获取备用路由的第 一路由信息;抑制判断单元,用于根据获取的第一路由信息判断所述备用路由是否满 足抑制条件;路由抑制单元,用于当所述备用路由满足抑制条件时,对对应的备用路 由进行抑制。
12、 根据权利要求11所述的抑制路由震荡的装置,其特征在于,所述路 由信息获取单元还包括主用路由信息获取单元,用于获取主用路由的第二路由信息;所述抑制判断单元还包括主用抑制判断单元,用于根据获取的第二路由信息判断所述主用路由是 否满足抑制条件;所述路由抑制单元还包括主用路由抑制单元,用于当所述主用路由满足抑制条件时,对对应的主 用路由进行抑制。
13、 根据权利要求11或12所述的抑制路由震荡的装置,其特征在于, 所述抑制路由震荡的装置还包括抑制解除单元,用于当主用路由或备用路由被抑制后,根据接收到的对 应的第二路由信息或对应的第一路由信息判断是否满足预置的解除抑制条件,若满足,则对所述主用路由或备用路由解除抑制。
全文摘要
本发明公开了一种抑制路由震荡的方法以及装置,用于降低路由器负荷,且提高路由选取效率。本发明方法包括获取备用路由的第一路由信息;根据所述第一路由信息判断所述备用路由是否满足第一抑制条件,若满足,则对所述备用路由进行抑制。本发明装置包括路由信息获取单元,用于获取主用路由以及备用路由的路由信息;抑制判断单元,用于根据获取的路由信息判断所述主用路由或备用路由是否满足抑制条件;路由抑制单元,用于当所述主用路由或备用路由满足抑制条件时,对对应的主用路由或备用路由进行抑制。本发明可以有效地降低路由器负荷,且提高路由选取效率。
文档编号H04L12/24GK101431427SQ20071016516
公开日2009年5月13日 申请日期2007年11月5日 优先权日2007年11月5日
发明者王雪伟, 陈国义 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1