掌桥专利:专业的专利平台
掌桥专利
首页

一种路由检测的方法及网络设备

文献发布时间:2023-06-19 11:49:09


一种路由检测的方法及网络设备

技术领域

本申请实施例涉及通信技术领域,特别涉及一种路由检测的方法及网络设备。

背景技术

边界网关协议(Border gateway protocol,BGP)监控协议(BGP MonitoringProtocol,BMP)能够对网络中的设备的BGP运行状态进行实时监控,BGP运行状态包括对等体关系的建立与解除等。但是,在BGP运行状态正常的情况下,并不能对BGP路由的有效性进行检测。

发明内容

本申请实施例提供了一种路由检测的方法。用于解决现有技术中不能对BGP路由的有效性进行检测的技术问题。

第一方面,本申请实施例提供了一种路由检测的方法,该方法包括:

第一网络设备与第二网络设备建立第一BMP会话,第一网络设备与第三网络设备建立第二BMP会话。第一网络设备通过第一BMP会话接收第二网络设备发送的第一BGP路由集合,第一BGP路由集合包括第二网络设备向第三网络设备发送的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居。第一网络设备通过第二BMP会话接收第三网络设备发送的第二BGP路由集合,第二BGP路由集合包括第三网络设备从第二网络设备接收的一条或多条BGP路由。当第一网络设备检测到第二BGP路由集合存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由时,第一网络设备确定第一BGP路由为不可用路由。

上述方案中,第一网络设备通过第一BMP会话接收第二网络设备发送的第一BGP路由集合,通过第二BMP会话接收第三网络设备发送的第二BGP路由集合,第一网络设备通过比较两个BGP路由集合中的BGP路由是否相同,即可判断第二网络设备向第三网络设备发布BGP路由的过程中是否出现异常,能够对BGP路由的有效性进行检测。

在一种可能的实现方式中,第一网络设备确定第一BGP路由为不可用路由之后,所述方法还包括:

第一网络设备标识第一BGP路由为不可用路由,并将标识为不可用路由的第一BGP路由向第三网络设备发送。当第一网络设备判断第一BGP路由不可用时,将第一BGP路由发送给第三网络设备,第三网络设备可以停止使用第一BGP路由进行报文转发,有利于提高网络中报文转发的可靠性。

在一种可能的实现方式中,所述方法还包括:

第一网络设备使用第二BGP路由集合中的可用路由进行转发路径规划,第二BGP路由集合中的可用路由不包括第一BGP路由。当第一网络设备判断第一BGP路由不可用时,第一网络设备不再使用第一BGP路由进行转发路径规划,有利于提高网络中报文转发的可靠性。

在一种可能的实现方式中,第二BGP路由集合中的第二BGP路由包括属性信息,第二BGP路由为第二BGP路由集合中的任意一条BGP路由,属性信息包括以下信息中的一个或多个:

用于标识第二BGP路由的优先级的优先级信息;

用于标识第二BGP路由在第一网络设备中的路由信息库(Routing InformationBase,RIB)中的状态的状态信息;

用于标识第二BGP路由是否下发到转发信息库(Forwarding Information Base,FIB)的指示信息;

用于标识第二BGP路由信息下发到FIB后的状态信息。

第二方面,本申请实施例提供了一种路由检测方法,所述方法包括:

第二网络设备与第一网络设备建立BMP会话。第二网络设备生成BMP消息,BMP消息包括BGP路由集合,BGP路由集合包括第二网络设备已经向第三网络设备发送的第一BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居。第二网络设备通过BMP会话向第一网络设备发送BMP消息,以触发第一网络设备对BMP消息中的BGP路由集合中的BGP路由进行检测。

在一种可能的实现方式中,BGP路由集合还包括第二网络设备接收的第二BGP路由,第二BGP路由包含属性信息,属性信息包括以下信息中的一个或多个:

用于标识第二BGP路由的优先级的优先级信息;

用于标识第二BGP路由在路由信息库RIB中的状态的状态信息;

用于标识第二BGP路由是否已经向第三网络设备发布的发布信息;

用于标识第二BGP路由是否下发到转发信息库FIB的指示信息;

用于标识第二BGP路由下发到FIB后的状态信息。

在一种可能的实现方式中,BMP消息还包括第二网络设备的规格信息,规格信息包括以下信息中的一个多个:

第二网络设备能容纳的BGP路由的数量;

第二网络设备的缺省配置参数;

第二网络设备支持的标准信息;

第二网络设备支持的特性信息。

在一种可能的实现方式中,BMP消息还包括第二网络设备的BGP选路规则,BGP选路规则包括以下一个或多个:

自治域路径(Autonomous Systems,AS)路径(Path)长度短的BGP路由优选的规则;

路由存活时间长的BGP路由优选的规则。

第三方面,本申请实施例提供了一种第一网络设备,第一网络设备包括:

建立单元,用于与第二网络设备建立第一BMP会话,并与第三网络设备建立第二BMP会话。

接收单元,用于通过建立单元建立的第一BMP会话接收第二网络设备发送的第一BGP路由集合,第一BGP路由集合包括第二网络设备向第三网络设备发送的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居。

该接收单元,还用于通过建立单元建立的第二BMP会话接收第三网络设备发送的第二BGP路由集合,第二BGP路由集合包括第三网络设备从第二网络设备接收的一条或多条BGP路由。

检测单元,用于检测第二BGP路由集合中是否存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由。

确定单元,用于当检测单元检测到第二BGP路由集合存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由时,确定第一BGP路由为不可用路由。

在一种可能的实现方式中,第一网络设备还包括:

处理单元,用于当确定单元确定第一BGP路由为不可用路由之后,标识第一BGP路由为不可用路由。

发送单元,用于将处理单元标识为不可用路由的第一BGP路由向第三网络设备发送。

在一种可能的实现方式中,处理单元,还用于使用第二BGP路由集合中的可用路由进行转发路径规划,第二BGP路由集合中的可用路由不包括第一BGP路由。

第四方面,本申请实施例提供了一种第二网络设备,第二网络设备包括:

建立单元,用于与第一网络设备建立BMP会话。

生成单元,用于生成BMP消息,BMP消息包括BGP路由集合,BGP路由集合包括第二网络设备已经向第三网络设备发送的第一BGP路由,第三网络设备与第二网络设备之间已建立了BGP邻居。

发送单元,用于通过BMP会话向第一网络设备发送BMP消息,以触发第一网络设备对BMP消息中的BGP路由集合中的BGP路由进行检测。

第五方面,本申请实施例提供了一种路由检测的方法,所述方法包括:

第二网络设备与第一网络设备建立BMP会话;

第二网络设备生成BMP消息,BMP消息包括BGP路由集合,BGP路由集合包括所述第二网络设备已经向第三网络设备发送的BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居;

所述第二网络设备通过所述BMP会话向所述第一网络设备发送所述BMP消息。

上述方案中,第二网络设备BGP路由向第三网络设备发送,然后再将该路由向第一网络设备,第一网络设备可以针对第二网络设备的向外发布的路径进行检测。

第六方面,本申请实施例提供了一种路由检测的方法,所述方法包括:

第三网络设备与第一网络设备建立BMP会话;

第三网络设备生成BMP消息,BMP消息包括第二BGP路由集合,第二BGP路由集合包括所述第三网络设备从第二网络设备接收的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居;

所述第三网络设备通过所述BMP会话向所述第一网络设备发送所述BMP消息;

所述第二BGP路由集合中的第二BGP路由包括属性信息,所述第二BGP路由为所述第二BGP路由集合中的任意一条BGP路由,所述属性信息包括以下信息中的一个或多个:

用于标识所述第二BGP路由的优先级的优先级信息;

用于标识所述第二BGP路由在所述第三网络设备中的RIB中的状态的状态信息;

用于标识所述第二BGP路由是否下发到转发信息库FIB的指示信息;

用于标识所述第二BGP路由信息下发到FIB后的状态信息。

上述方案中,第三网络设备从第二网络设备接收的BGP路由,然后将这些BGP路由发送给第一网络设备,这些BGP路由中包含有属性信息,第一网络设备根据这些属性信息能够更精确地检测BGP路由的可用性。

第七方面,本申请实施例提供了一种第三网络设备,所述第三网络设备包括:

建立单元,用于与第一网络设备建立BMP会话;

生成单元,用于生成BMP消息,BMP消息包括第二BGP路由集合,第二BGP路由集合包括所述第三网络设备从第二网络设备接收的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居;

发送单元,用于通过所述BMP会话向所述第一网络设备发送所述BMP消息;所述第二BGP路由集合中的第二BGP路由包括属性信息,所述第二BGP路由为所述第二BGP路由集合中的任意一条BGP路由,所述属性信息包括以下信息中的一个或多个:

用于标识所述第二BGP路由的优先级的优先级信息;

用于标识所述第二BGP路由在所述第三网络设备中的RIB中的状态的状态信息;

用于标识所述第二BGP路由是否下发到转发信息库FIB的指示信息;

用于标识所述第二BGP路由信息下发到FIB后的状态信息。

第八方面,本申请实施例提供了一种路由检测系统,所述系统包括:第一网络设备、第二网络设备和第三网络设备,其中,

第二网络设备,用于与第一网络设备建立第一BMP会话,并向第一网络设备发送的第一BGP路由集合,第一BGP路由集合包括第二网络设备向第三网络设备发送的一条或多条BGP路由,第三网络设备与第二网络设备之间已建立了BGP邻居。

第三网络设备,用于与第一网络设备建立第二BMP会话,并向第一网络设备发送第二BGP路由集合,第二BGP路由集合包括第三网络设备从第二网络设备接收的一条或多条BGP路由。

第一网络设备,用于通过第一BMP会话接收第二网络设备发送的第一BGP路由集合;通过第二BMP会话接收第三网络设备发送的第二BGP路由集合;当第一网络设备检测到第二BGP路由集合存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由时,第一网络设备确定第一BGP路由为不可用路由。

第九方面,本申请实施例提供了一种第一网络设备,该第一网络设备包括处理器和存储器,存储器中存储了程序指令和数据,处理器用于调用存储器中的程序指令执行第一方面的方法中相应的功能。

第十方面,本申请实施例提供了一种第二网络设备,该第二网络设备包括处理器和存储器,存储器中存储了程序指令和数据,处理器用于调用存储器中的程序指令执行第二方面的方法中相应的功能。

第十一方面,本申请实施例提供了一种第三网络设备,该第而网络设备包括处理器和存储器,存储器中存储了程序指令和数据,处理器用于调用存储器中的程序指令执行第六方面的方法中相应的功能。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本申请实施例提供的一种路由检测的方法应用场景示意图;

图2为本申请实施例提供的一种路由检测方法的流程示意图;

图3为本申请实施例提供的另一种路由检测方法的流程示意图;

图4为本申请实施例提供的另一种路由检测方法的流程示意图;

图5为本申请实施例提供的一种第一网络设备的结构示意图;

图6为本申请实施例提供的一种第二网络设备的结构示意图;

图7为本申请实施例提供的另一种第一网络设备的结构示意图;

图8为本申请实施例提供的另一种第二网络设备的结构示意图;

图9为本申请实施例提供的一种路由检测系统的示意图;

图10为本申请实施例提供的一种第三网络设备的结构示意图;

图11为本申请实施例提供的另一种第三网络设备的结构示意图。

具体实施方式

下面结合附图,对本发明的实施例进行描述。

参见图1,图1为本申请实施例提供的一种路由检测方法的应用场景示意图。该网络场景包括:第一网络设备101、第二网络设备102、第三网络设备103、网络设备104、网络设备105和网络设备106。上述网络设备分别支持BMP。第一网络设备101与第二网络设备102之间建立第一BMP会话,第一网络设备101与第三网络设备103之间建立第二BMP会话。第二网络设备102与第三网络设备103之间建立有BGP邻居,所述第二网络设备102通过BGP向第三网络设备103发送BGP路由,并将发送过的BGP路由存储在所述第二网络设备邻居发送的RIB(Adjacency-routing information base-output,Adj-RIB-Out)中。第三网络设备103将从第二网络设备接收的BGP路由存储在第三网络设备103的邻居接收到的RIB(Adjacency-routing information base-input,Adj-RIB-In)中。

在网络正常的情况下,第三网络设备103从第二网络设备102接收的BGP路由与第二网络设备102向第三网络设备103发送的BGP路由相同,但当网络出现异常时,例如第二网络设备102与第三网络设备103之间链路不稳定,或网络被黑客攻击,导致BGP路由在第二网络设备102向第三网络设备103发送的过程中被改写,这时,第三网络设备103接收到的BGP路由将不能正常的指导报文转发。此时,从网络设备106经过网络设备103到网络设备102的转发路径将不可用。在这种情况下,就需要第一网络设备101对BGP路由进行检测,并对从网络设备106到网络设备102的转发路径进行优化。

可选地,本申请实施例可以应用到一种控制、转发分离的开放流网络架构。与传统的集中式架构的网络设备相比,控制和转发分离是将对网络设备的转发平面与控制平面分离开来,部署在两个不同的设备上,两者协同工作,完成对网络中数据报文的转发。对应的控制平面的设备,称为控制设备或控制器(Controller),部署在独立于转发平面之外的独立设备之上,对应的转发平面的设备,称为转发设备或转发器。转发器具备与控制器进行通信的能力。转发器能够通过控制通道与控制器通信。图1中的第一网络设备101可以为控制转发分离网络架构中的控制器,第二网络设备102、第三网络设备103、网络设备104、网络设备105和网络设备106可以为控制转发分离网络架构中的转发器。

参见图2,结合图1所示的应用场景,本申请实施例提供了一种路由检测的方法,该方法包括:

201,第一网络设备和第二网络设备之间建立第一BMP会话。

202,所述第一网络设备和第三网络设备之间建立第二BMP会话。

203,所述第一网络设备通过所述第一BMP会话接收所述第二网络设备发送的第一BGP路由集合,所述第一BGP路由集合包括所述第二网络设备向所述第三网络设备发送的一条或多条BGP路由,所述第三网络设备与所述第二网络设备之间已经建立了BGP邻居。

204,第一网络设备通过所述第二BMP会话接收所述第三网络设备发送的第二BGP路由集合,所述第二BGP路由集合包括所述第三网络设备从所述第二网络设备接收的一条或多条BGP路由。

205,当所述第一网络设备检测到所述第二BGP路由集合存在第一BGP路由,并且所述第一BGP路由集合不存在所述第一BGP路由时,所述第一网络设备确定所述第一BGP路由为不可用路由。

上述步骤201和202之间没有严格的顺序关系,上述步骤203和204之间没有严格的顺序关系。当第一网络设备和第二网络设备之间建立第一BMP会话后,第二网络设备即可向第一网络设备发送第一BGP路由集合。当第一网络设备和第三网络设备之间建立第二BMP会话后,第三网络设备即可向第一网络设备发送第二BGP路由集合。

所述第一BGP路由集合中的BGP路由为第二网络设备通过BGP向第三网络设备发送的,第二网络设备在将第一BGP路由集合中的BGP路由向第三网络设备发送之后,将第一BGP路由集合中的BGP路由存储到第二网络设备的Adj-RIB-Out中,然后第二网络设备将Adj-RIB-Out中的BGP路由向第一网络设备发送。第三网络设备通过BGP从第二网络设备接收第二BGP路由集合,并将第二BGP路由集合中的BGP路由存储到第三网络设备的Adj-RIB-In中,然后将Adj-RIB-In中的BGP路由向第一网络设备发送。

可选地,第一网络设备可以是控制转发分离网络架构中的控制器,该控制器支持BMP,具有BMP服务器的功能。第二网络设备和第三网络设备也分别支持BMP。

通过上述技术方案,第二网络设备将向第三网络设备发布的第一BGP路由集合中的路由发送到第一网络设备,第三网络设备将从第二网络设备接收到的第二BGP路由集合中的路由发送到第一网络设备,由第一网络设备对第一BGP路由集合和第二BGP路由集合中的路由进行比较,如果判断第二BGP路由集合存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由,则说明第一BGP路由在第二网络设备向第三网络设备发送过程中被修改,确定所述第一BGP路由为不可用路由,不能用于指导路由转发。该第一BGP路由可以为一条或多条BGP路由。

可选地,所述第一网络设备确定所述第一BGP路由为不可用路由之后,所述方法还包括:

所述第一网络设备标识所述第一BGP路由为不可用路由,并将标识为不可用路由的所述第一BGP路由向所述第三网络设备发送。这样,当第一网络设备判断第一BGP路由不可用时,将第一BGP路由发送给第三网络设备,第三网络设备可以停止使用第一BGP路由进行报文转发,有利于提高网络中报文转发的可靠性。

可选地,所述方法还包括:

所述第一网络设备使用所述第二BGP路由集合中的可用路由进行转发路径规划,所述第二BGP路由集合中的可用路由不包括所述第一BGP路由。

第一网络设备作为网络中的控制器,可以对网络中的转发路径进行规划,当检测到第一BGP路由不可用时,则在进行转发路径规划时,不再使用第一BGP路由,并且,如果第三网络设备上只有该第一BGP路由到达指定目的地,规划的转发路径需要避开第三网络设备。举例来说:参见图1,如果第三网络设备103从第二网络设备102接收了到达第二网络设备的一条BGP路由,但该BGP路由经过第一网络设备103检测为不可用路由,并且第三网络设备103上只有这样的一条BGP路由能到达第二网络设备102,则第一网络设备101在进行从网络设备106到网络设备102的转发路径进行规划时,需要避开第三网络设备103,而选择其他的转发路径,如:经过网络设备106、网络设备105、网络设备104和第二网络设备102的转发路径。

可选地,所述第二BGP路由集合中的第二BGP路由包括属性信息,所述第二BGP路由为所述第二BGP路由集合中的任意一条BGP路由,所述属性信息包括以下信息中的一个或多个:

用于标识所述第二BGP路由的优先级的优先级信息;

用于标识所述第二BGP路由在所述第三网络设备中的RIB中的状态的状态信息;

用于标识所述第二BGP路由是否下发到FIB的指示信息;

用于标识所述第二BGP路由下发到FIB后的状态信息。

第二BGP路由的优先级信息可以标识第二BGP路由在进行路径选择或报文转发时的优先级,这样,第一网络设备可以根据该优先级别信息更加高效的进行转发路径规划。

第二BGP路由在RIB中的状态信息可以标识第二BGP路由在所述第三网络设备中的RIB中的状态,如果第二BGP路由在RIB中状态为非激活状态(inactive),则该第二BGP路由就不能用于路由选择或指导报文转发。

第二BGP路由的指示信息可以标识第二BGP路由是否已经下发到第三网络设备的FIB中,如果该指示信息表示该第二BGP路由没有下发到FIB中,则该第二BGP路由就不能用于路由选择或指导报文转发。

第二BGP路由下发到FIB中的状态信息可以标识第二BGP路由在FIB中的状态,如果第二BGP路由在FIB中状态为不可用状态,则该第二BGP路由就不能用于路由选择或指导报文转发。

参见图3,结合图1所示的应用场景,本申请实施例提供了一种路由检测的方法,该方法包括:

第三网络设备与第一网络设备建立BMP会话;

第三网络设备生成BMP消息,BMP消息包括第二BGP路由集合,第二BGP路由集合包括所述第三网络设备从第二网络设备接收的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居;

所述第三网络设备通过所述BMP会话向所述第一网络设备发送所述BMP消息;

所述第二BGP路由集合中的第二BGP路由包括属性信息,所述第二BGP路由为所述第二BGP路由集合中的任意一条BGP路由,所述属性信息包括以下信息中的一个或多个:

用于标识所述第二BGP路由的优先级的优先级信息;

用于标识所述第二BGP路由在所述第三网络设备中的RIB中的状态的状态信息;

用于标识所述第二BGP路由是否下发到FIB的指示信息;

用于标识所述第二BGP路由下发到FIB后的状态信息。

上述各属性信息的详细描述可以参见图2所示实施例,此处不再赘述。

参见图4,结合图1所示的应用场景,本申请实施例提供了一种路由检测的方法,该方法包括:

401,第二网络设备与第一网络设备建立BMP会话;

402,所述第二网络设备生成BMP消息,所述BMP消息包括BGP路由集合,所述BGP路由集合包括所述第二网络设备已经向第三网络设备发送的第一BGP路由,所述第三网络设备与所述第二网络设备之间已经建立了BGP邻居;

403,所述第二网络设备通过所述BMP会话向所述第一网络设备发送所述BMP消息。所述第一网络设备在接收到该BMP消息后,可以对BMP消息中的所述BGP路由集合中的BGP路由进行检测。

可选地,所述第一网络设备对所述BGP路由集合中的BGP路由进行检测可以参见图2所示实施例的描述,此处不再赘述。

可选地,所述BMP消息还包括所述第二网络设备的规格信息,所述规格信息包括以下信息中的一个多个:

所述第二网络设备能容纳的BGP路由的数量;

所述第二网络设备的缺省配置参数;

所述第二网络设备支持的标准信息;

所述第二网络设备支持的特性信息。

第一网络设备通过获得第二网络设备能容纳的BGP路由的数量,可以控制向第二网络设备发送BGP路由的数量,避免超过第二网络设备的BGP路由规格,导致第二网络设备的内存耗尽,或导致第二网络设备不能正常接收第一网络设备发送的BGP路由,而不能正常的转发报文。

所述缺省配置参数可以为BGP缺省配置参数或系统缺省配置参数,举例来说,所述BGP缺省配置参数可以为BGP支持的邻居数量或支持的BGP负载分担数,第一网络设备获得了这些BGP缺省配置参数后,可以更加有效的对第二网络设备进行监控,例如控制第二网络设备的BGP负载分担数量等。

第一网络设备通过获得第二网络设备的标准信息或特性信息,可以更加灵活的对第二网络设备进行管理,例如:当第二网络设备不支持某特征时,则避免将涉及给特性的配置部署在第二网络设备上。当第二网络设备部支持某标准时,则避免涉及该标准的技术方案部署在第二网络设备上。

可选地,所述BMP消息还包括所述第二网络设备的BGP选路规则,所述BGP选路规则包括以下一个或多个:

AS Path长度短的BGP路由优选的规则;

路由存活时间长的BGP路由优选的规则。

所述第一网络设备通过获得第二网络设备的BGP选路规则可以有效的进行路径规划和选择。

参见图5,结合图1所示的应用场景,本申请实施例提供了一种第一网络设备500,其中图5中的第一网络设备500可以执行图2或图3所示实施例的方法,第一网络设备500可以为图2、图3或图4所述实施例中的第一网络设备。第一网络设备500包括:

建立单元501,用于与第二网络设备建立第一BMP会话,并与第三网络设备建立第二BMP会话;

接收单元502,用于通过所述建立单元501建立的所述第一BMP会话接收所述第二网络设备发送的第一BGP路由集合,所述第一BGP路由集合包括所述第二网络设备向所述第三网络设备发送的一条或多条BGP路由,所述第三网络设备与所述第二网络设备之间已经建立了BGP邻居;

所述接收单元502,还用于通过所述建立单元501建立的所述第二BMP会话接收所述第三网络设备发送的第二BGP路由集合,所述第二BGP路由集合包括所述第三网络设备从所述第二网络设备接收的一条或多条BGP路由;

检测单元503,用于检测到所述第二BGP路由集合存在第一BGP路由,并且所述第一BGP路由集合不存在所述第一BGP路由;

确定单元504,用于当所述检测单元503检测到所述第二BGP路由集合存在第一BGP路由,并且所述第一BGP路由集合不存在所述第一BGP路由时,确定所述第一BGP路由为不可用路由。

可选地,所述第一网络设备500还包括:

处理单元,用于当所述确定单元确定所述第一BGP路由为不可用路由之后,标识所述第一BGP路由为不可用路由;

发送单元,用于将所述处理单元标识为不可用路由的所述第一BGP路由向所述第三网络设备发送。

可选地,所述处理单元,还用于使用所述第二BGP路由集合中的可用路由进行转发路径规划,所述第二BGP路由集合中的可用路由不包括所述第一BGP路由。

参见图6,结合图1所示的应用场景,本申请实施例提供了一种第二网络设备600,其中图6中的第二网络设备600可以执行图2、图3或图4所示实施例中的方法。第二网络设备600可以为图2、图3或图4中的第二网络设备,网络设备600包括:

建立单元601,用于与第一网络设备建立BMP会话;

生成单元602,用于生成BMP消息,所述BMP消息包括BGP路由集合,所述BGP路由集合包括所述第二网络设备已经向第三网络设备发送的第一BGP路由,所述第三网络设备与所述第二网络设备之间已建立了BGP邻居;

发送单元603,用于通过所述BMP会话向所述第一网络设备发送所述BMP消息,以触发所述第一网络设备对所述BMP消息中的所述BGP路由集合中的BGP路由进行检测。

参见图7,本申请实施例提供的一种第一网络设备700,其中图7中的第一网络设备700可以执行图2、图3或图4所示实施例的方法。第一网络设备700可以为图2、图3或图4所述实施例中的第一网络设备。第一网络设备700包括处理器701、网络接口702和存储器703。处理器701包括但不限于CPU,网络处理器(英文:Network Processor,简称:NP),专用集成电路(英文:Application-Specific Integrated Circuit,简称:ASIC)或者可编程逻辑器件(英文:Programmable Logic Device,缩写:PLD)中的一个或多个。上述PLD可以是复杂可编程逻辑器件(英文:Complex Programmable Logic Device,缩写:CPLD),现场可编程逻辑门阵列(英文:Field-Programmable Gate Array,缩写:FPGA),通用阵列逻辑(英文:GenericArray Logic,缩写:GAL)或其任意组合。

存储器703可以是包括但不限于内容寻址存储器(英文:Content-AddressableMemory,简称:CAM),例如三态内容寻址存储器(英文:Ternary CAM,简称:TCAM),随机存取存储器(英文:Random-Access Memory,简称:RAM)。

所述网络接口702可以包含普通物理接口,所述物理接口可以为Ethernet接口或异步传输模式(Asynchronous Transfer Mode,ATM)接口。所述处理器701、网络接口702和存储器703可以集成为一个或多个独立的电路或硬件,如:ASIC。

存储器703可以用于存储该第一网络设备700的程序代码和数据,处理器701用于调用存储器703中的程序指令执行前述实施例所示的方法,具体执行步骤可以参见前述实施例,此处不在赘述。

参见图8,本申请实施例提供的一种第二网络设备800的结构示意图。本实施例提供的第二网络设备800可以应用于图2,图3或图4实施例的方法中,实现第二网路设备的功能。第二网络设备700可以为图2、图3或图4所述实施例中的第二网络设备。第二网络设备800包括处理器801、网络接口802、存储器803和。处理器801包括但不限于CPU、NP、ASIC或者PLD中的一个或多个。上述PLD可以是CPLD、FPGA、GAL或其任意组合。

存储器803可以是包括但不限于CAM,例如TCAM或RAM。

网络接口802可以包含普通物理接口,所述物理接口可以为Ethernet接口或ATM接口。所述处理器801、网络接口802和存储器803可以集成为一个或多个独立的电路或硬件,如:ASIC。

存储器803可以用于存储第二网络设备800的程序代码和数据,处理器801用于调用存储器803中的程序指令执行前述实施例所示的方法,具体执行步骤可以参见前述实施例,此处不在赘述。

参见图9,本申请实施例提供了一种路由检测系统900,所述系统包括:第一网络设备901、第二网络设备902和第三网络设备903,其中,

第二网络设备902,用于与第一网络设备901建立第一BMP会话,并向第一网络设备901发送的第一BGP路由集合,第一BGP路由集合包括第二网络设备902向第三网络设备903发送的一条或多条BGP路由,第三网络设备903与第二网络设备902之间已建立了BGP邻居;

第三网络设备903,用于与第一网络设备903建立第二BMP会话,并向第一网络设备901发送第二BGP路由集合,第二BGP路由集合包括第三网络设备903从第二网络设备902接收的一条或多条BGP路由;

第一网络设备901,用于通过第一BMP会话接收第二网络设备902发送的第一BGP路由集合;通过第二BMP会话接收第三网络设备903发送的第二BGP路由集合;当第一网络设备901检测到第二BGP路由集合存在第一BGP路由,并且第一BGP路由集合不存在第一BGP路由时,第一网络设备901确定第一BGP路由为不可用路由。

可选地,上述第一网络设备901可为图2、图3、图4、图5或图7所示实施例中的第一网络设备,第二网络设备902可为图2、图3、图4、图6或图8所示实施例中的第二网络设备,第三网络设备903可以为图2、图3或图4所示实施例中的第三网络设备。

参见图10,结合图1所示的应用场景,本申请实施例提供了一种第三网络设备1000,其中图10中的第三网络设备1000可以执行图3所示实施例中的方法。第三网络设备1000可以为图2、图3或图4中的第三网络设备,该第三网络设备1000包括:

建立单元1001,用于与第一网络设备建立BMP会话;

生成单元1002,用于生成BMP消息,BMP消息包括第二BGP路由集合,第二BGP路由集合包括所述第三网络设备从第二网络设备接收的一条或多条BGP路由,第三网络设备与第二网络设备之间已经建立了BGP邻居;

发送单元1003,用于通过所述BMP会话向所述第一网络设备发送所述BMP消息;所述第二BGP路由集合中的第二BGP路由包括属性信息,所述第二BGP路由为所述第二BGP路由集合中的任意一条BGP路由,所述属性信息包括以下信息中的一个或多个:

用于标识所述第二BGP路由的优先级的优先级信息;

用于标识所述第二BGP路由在所述第三网络设备中的RIB中的状态的状态信息;

用于标识所述第二BGP路由是否下发到转发信息库FIB的指示信息;

用于标识所述第二BGP路由信息下发到FIB后的状态信息。

参见图11,本申请实施例提供的一种第三网络设备1100的结构示意图。本实施例提供的第三网络设备1100可以应用于图3实施例的方法中,实现第三网络设备的功能。第三网络设备1100可以为图2、图3或图4中的第三网络设备.第三网络设备1100包括处理器1101、网络接口1102、存储器1103和。处理器1101包括但不限于CPU、NP、ASIC或者PLD中的一个或多个。上述PLD可以是CPLD、FPGA、GAL或其任意组合。

存储器1103可以是包括但不限于CAM,例如TCAM或RAM。

网络接口1102可以包含普通物理接口,所述物理接口可以为Ethernet接口或ATM接口。所述处理器1101、网络接口1102和存储器1103可以集成为一个或多个独立的电路或硬件,如:ASIC。

存储器1103可以用于存储第二网络设备1100的程序代码和数据,处理器1101用于调用存储器1103中的程序指令执行前述实施例所示的方法,具体执行步骤可以参见前述实施例,此处不在赘述。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(Read-Only Memory,ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上实施例仅用以示例性说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请及本申请带来的有益效果进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请权利要求的范围。

相关技术
  • 一种路由检测的方法、系统及网络设备
  • 一种路由检测的方法及网络设备
技术分类

06120113063380