
技术摘要:
本发明公开了一种基于路由聚合的路由管理方法,第一网络设备确定发送路由聚合信息同步报文的第二网络设备与所述第一网络设备的路由聚合组是否相同;当相同,且所述路由聚合信息同步报文用于完整路由聚合信息同步时,当所述第一明细路由个数大于所述第二明细路由个数, 全部
背景技术:
路由聚合(也称路由汇总)是让路由选择协议能够用一个路由地址通告众多网络, 旨在缩小路由选择表的规模,以节省内存,并缩短对路由选择表进行分析以找出前往远程 网络的路径所需的时间。路由聚合的原理为将若干掩码较长的路由前缀(本文统称为明细 路由),汇总成单条掩码较短的路由前缀(本文统称为汇总路由),其中,较长和较短是相对 而言的,比如掩码长度24相对于掩码长度22,就是较长掩码,可称为明细路由,而掩码长度 22的,可称为汇总路由,汇总路由的覆盖范围大于等于所有明细路由覆盖范围的综合。网络 设备可以通过仅发布汇总路由的方式来减少发布的路由条目数。 随着数据中心网络的不断发展,规模的不断扩大,在当前数据中心场景中,通常使 用多设备对等冗余,并在同类路由较多的情况下使用路由汇总,减少路由的数量,达到更快 的路由收敛。但是在路由汇总的过程中,若出现部分被汇总的明细路由丢失,则可能产生路 由黑洞。 具体如图1所示,SWITCH-1和SWITCH-2互为对等冗余网络设备,为方便表述 SWITCH-1和SWITCH-2可记为SWITCH1-2;正常情况下Server 1-4分别发送各自的/24路由至 SWITCH1-2上,SWITCH1-2上分别执行路由汇总,将192.168.0.0/24~192.168.3.0/24三条 明细路由汇总成汇总路由192.168.0.0/22指向本地Null0,并将汇总路由通告给网关GW,相 关明细路由被保留在本地,不进行路由通告。仅当构成汇总路由192.168.0.0/22的所有明 细路由192 .168 .0 .0/24~192 .168 .3 .0/24均失效,SWITCH1-2才会进行汇总路由 192.168.0.0/22的撤销。 当Server-1至SWITCH-1的链路中断,此时SWITCH-1上的192.168.0.0/24明细路由 被撤销,但是由于形成汇总路由的其余三条路由条目未全部撤销,故汇总路由 192.168.0.0/22仍然被通告给网关GW。 网关GW上仅收到来自SWITCH-1/2的汇总路由,当Server-1至SWITCH-1的链路发生 中断,GW上的路由表仍是汇总路由192.168.0.0/22,并未发生变化,当上游有前往Server-1 的数据报文时,GW会依据等价路由(Equal-Cost Multipath Routing,ECMP)规则将流量分 别转发SWITCH-1/2;由于Server-1至SWITCH-1的链路已经中断,SWITCH-1并无前往Server- 1的路径,此时本来发往Server-1至SWITCH-1的链路的流量会通过默认路由(或者其他掩码 较长的路由)重新转发至GW,而这部分流量将持续在SWITCH-1与GW之间进行转发,直到TCP 报文中的生存时间(Time To Live,TTL)值耗尽而被SWITCH-1或者GW某一个丢弃,进而造成 报文丢包,即为局部路由黑洞。 数据中心基本使用外部边界网关协议(Exterior Border Gateway Protocol, EBGP)分层网络构建基础网络。通过路由协议进行数据中心内部流量三层互联网协议 (Internet Protocol,IP)网络快速切换的数据中心越来越多,边界网关协议(Border 5 CN 111585884 A 说 明 书 2/11 页 Gateway Protocol,BGP)成为数据中心的路由协议的最佳选择。而BGP协议的状态机对局部 路由黑洞进行处理方式为:BGP邻居之间通过互相发送keepalive报文进行邻居的保活。当 出现3次keepalive未被接收的时候,BGP的邻居超时,路由撤销。也可以在keepalive报文限 制TTL值大小,超过TTL跳数的keepalive报文,出现超时情况下,进行切换。但是由于默认超 时180S,这个时间段出现局部路由黑洞,会导致业务中断,这对数据中心高带宽、低延迟业 务是无法容忍的。
技术实现要素:
本发明实施例提供一种基于路由聚合的路由管理方法及装置,用以解决现有技术 中路由聚合存在的局部路由黑洞的问题。 本发明实施例提供一种基于路由聚合的路由管理方法,应用于多设备对等冗余的 数据中心,所述数据中心至少包括一对互为对等冗余的第一网络设备、第二网络设备和与 所述第一网络设备和第二网络设备分别连接的网关,所述方法包括: 第一网络设备接收路由聚合信息同步报文,确定发送所述路由聚合信息同步报文 的第二网络设备与所述第一网络设备的路由聚合组是否相同; 当所述第二网络设备与所述第一网络设备的路由聚合组相同,且所述路由聚合信 息同步报文用于完整路由聚合信息同步时,比较所述第一网络设备的汇总路由下的第一明 细路由个数与所述路由聚合信息同步报文中的第二明细路由个数; 当所述第一明细路由个数大于所述第二明细路由个数,将所述路由聚合信息同步 报文携带的明细路由和所述第一网络设备的明细路由进行比对,得到目标明细路由,所述 目标明细路由是存在于所述第一网络设备、未存在于所述路由聚合信息同步报文中的明细 路由; 通告所述目标明细路由给所述网关以使流量在所述网关存储的汇总路由和明细 路由之间进行分流。 进一步地,所述方法,还包括: 所述第一网络设备启动路由聚合信息同步功能,发送用于完整路由聚合信息同步 的路由聚合信息同步报文以通告自身的完整路由聚合信息; 当所述第一网络设备的汇总路由撤销时,发送用于汇总路由撤销的路由聚合信息 同步报文以通告自身的汇总路由撤销; 当所述第一网络设备的汇总路由下的明细路由对应的链路故障时,发送用于明细 路由撤销的路由聚合信息同步报文以通告所述明细路由撤销; 当所述第一网络设备的汇总路由下的明细路由对应的链路故障恢复时,发送用于 明细路由发布的路由聚合信息同步报文以通告所述明细路由恢复; 所述路由聚合信息同步报文至少包括路由聚合组字段、汇总路由字段以及明细路 由字段。 其中,所述路由聚合信息同步报文还包括处理动作字段,所述处理动作字段对应 的处理动作包括完整路由聚合信息同步、汇总路由撤销、明细路由撤销、明细路由发布的一 种或多种。 进一步地,通告所述目标明细路由给所述网关以使流量在所述网关存储的汇总路 6 CN 111585884 A 说 明 书 3/11 页 由和明细路由之间进行分流之后,所述方法,还包括: 当接收到的所述第二网络设备发送的路由聚合信息同步报文用于明细路由发布、 且携带的明细路由是所述目标明细路由时,通告所述网关撤销自身存储的所述目标明细路 由以使流量在所述网关存储的汇总路由中进行分流。 进一步地,通告所述目标明细路由给所述网关以使流量在所述网关存储的汇总路 由和明细路由之间进行分流之后,所述方法,还包括: 当接收到的所述第二网络设备发送的路由聚合信息同步报文用于明细路由撤销、 且携带的待撤销明细路由不是所述目标明细路由时,通告所述待撤销明细路由给所述网关 以使流量在所述网关存储的汇总路由和明细路由之间进行分流。 进一步地,通告所述目标明细路由给所述网关以使流量在所述网关存储的汇总路 由和明细路由之间进行分流之后,所述方法,还包括: 当接收到的所述第二网络设备发送的路由聚合信息同步报文用于汇总路由撤销 时,通告所述网关撤销自身存储的属于所述汇总路由下的明细路由以使流量在所述网关存 储的汇总路由中进行分流。 本发明实施例还提供一种基于路由聚合的路由管理装置,应用于多设备对等冗余 的数据中心,所述数据中心至少包括一对互为对等冗余的第一网络设备、第二网络设备和 与所述第一网络设备和第二网络设备分别连接的网关,所述装置应用于第一网络设备,包 括:接收模块、第一确定模块、报文解析模块、通告模块;其中, 所述接收模块,用于接收路由聚合信息同步报文; 第一确定模块,用于确定发送所述路由聚合信息同步报文的第二网络设备与所述 第一网络设备的路由聚合组是否相同; 所述报文解析模块,用于当所述第二网络设备与所述第一网络设备的路由聚合组 相同,且所述路由聚合信息同步报文用于完整路由聚合信息同步时,比较所述第一网络设 备的汇总路由下的第一明细路由个数与所述路由聚合信息同步报文中的第二明细路由个 数;当所述第一明细路由个数大于所述第二明细路由个数,将所述路由聚合信息同步报文 携带的明细路由和所述第一网络设备的明细路由进行比对,得到目标明细路由,所述目标 明细路由是存在于所述第一网络设备、未存在于所述路由聚合信息同步报文中的明细路 由; 所述通告模块,用于通告所述目标明细路由给所述网关以使流量在所述网关存储 的汇总路由和明细路由之间进行分流。 进一步地,所述装置,还包括:发送模块,用于当所述第一网络设备启动路由聚合 信息同步功能,发送用于完整路由聚合信息同步的路由聚合信息同步报文以通告自身的完 整路由聚合信息; 当所述第一网络设备的汇总路由撤销时,发送用于汇总路由撤销的路由聚合信息 同步报文以通告自身的汇总路由撤销; 当所述第一网络设备的汇总路由下的明细路由对应的链路故障时,发送用于明细 路由撤销的路由聚合信息同步报文以通告所述明细路由撤销; 当所述第一网络设备的汇总路由下的明细路由对应的链路故障恢复时,发送用于 明细路由发布的路由聚合信息同步报文以通告所述明细路由恢复; 7 CN 111585884 A 说 明 书 4/11 页 所述路由聚合信息同步报文至少包括路由聚合组字段、汇总路由字段以及明细路 由字段。 其中,所述路由聚合信息同步报文还包括处理动作字段,所述处理动作字段对应 的处理动作包括完整路由聚合信息同步、汇总路由撤销、明细路由撤销、明细路由发布的一 种或多种。 进一步地,所述报文解析模块,还用于确定所述第二网络设备发送的路由聚合信 息同步报文用于明细路由发布; 所述通告模块,在通告所述目标明细路由给所述网关以使流量在所述网关存储的 汇总路由和明细路由之间进行分流之后,还用于: 当所述第二网络设备发送的路由聚合信息同步报文用于明细路由发布、且携带的 明细路由是所述目标明细路由时,通告所述网关撤销自身存储的所述目标明细路由以使流 量在所述网关存储的汇总路由中进行分流。 进一步地,所述报文解析模块,还用于确定所述第二网络设备发送的路由聚合信 息同步报文用于明细路由撤销; 所述通告模块,在通告所述目标明细路由给所述网关以使流量在所述网关存储的 汇总路由和明细路由之间进行分流之后,还用于: 当所述第二网络设备发送的路由聚合信息同步报文用于明细路由撤销、且携带的 待撤销明细路由不是所述目标明细路由时,通告所述待撤销明细路由给所述网关以使流量 在所述网关存储的汇总路由和明细路由之间进行分流。 进一步地,所述报文解析模块,还用于确定所述第二网络设备发送的路由聚合信 息同步报文用于汇总路由撤销; 所述通告模块,在通告所述目标明细路由给所述网关以使流量在所述网关存储的 汇总路由和明细路由之间进行分流之后,还用于: 当所述第二网络设备发送的路由聚合信息同步报文用于汇总路由撤销时,通告所 述网关撤销自身存储的属于所述汇总路由下的明细路由以使流量在所述网关存储的汇总 路由中进行分流。 本发明有益效果如下: 本发明实施例提供的基于路由聚合的路由管理方法及装置,通过第一网络设备接 收路由聚合信息同步报文,当发送所述路由聚合信息同步报文的第二网络设备与所述第一 网络设备的路由聚合组相同,且所述路由聚合信息同步报文用于完整路由聚合信息同步 时,比较所述第一网络设备的汇总路由下的第一明细路由个数与所述路由聚合信息同步报 文中的第二明细路由个数;当所述第一明细路由个数大于所述第二明细路由个数,将所述 路由聚合信息同步报文携带的明细路由和所述第一网络设备的明细路由进行比对,得到目 标明细路由,所述目标明细路由是存在于所述第一网络设备、未存在于所述路由聚合信息 同步报文中的明细路由;通告所述目标明细路由给所述网关以使流量在所述网关存储的汇 总路由和明细路由之间进行分流。本发明实施例中网络设备在自身路由发生变化时通过发 送路由聚合信息同步报文及时进行动态路由的同步,快速识别路由聚合出现局部路由黑 洞,并通过将汇总路由中对端出现故障的明细路由通告给网关,以使网关能够将流量在汇 总路由和明细路由之间进行分流,消除了路由黑洞的影响,保证了业务的连续性,很好地满 8 CN 111585884 A 说 明 书 5/11 页 足数据中心的业务要求。 附图说明 图1为基于路由聚合的网络拓扑示意图; 图2为本发明实施例提供的基于路由聚合的路由管理方法的流程示意图; 图3为本发明实施例提供的路由聚合信息同步报文的结构示意图; 图4为本发明实施例提供的基于路由聚合的路由管理方法的实施例的网络拓扑示 意图; 图5为本发明实施例提供的基于路由聚合的路由管理方法的实施例的另一个网络 拓扑示意图; 图6为本发明实施例提供的基于路由聚合的路由管理方法的实施例的再一个网络 拓扑示意图; 图7为本发明实施例中基于路由聚合的路由管理装置的结构示意图。