一种邻居关系的维护方法和装置与流程

文档序号:13426690阅读:244来源:国知局

本申请涉及通信技术领域,尤其涉及一种邻居关系的维护方法和装置。



背景技术:

bgp(bordergatewayprotocol,边界网关协议)是一种既可以用于不同as(autonomoussystem,自治系统)之间,又可以用于同一as内部的动态路由协议。如图1所示,为bgp网络的组网示意图,设备之间可以建立bgp邻居。例如,设备101与设备102建立bgp邻居,设备101与设备103建立bgp邻居,设备104与设备102建立bgp邻居,设备104与设备103建立bgp邻居。

针对设备101与设备104之间传输的报文,若设备101-设备102-设备104为主路径,设备101-设备103-设备104为备路径,当主路径未发生故障时,报文在主路径传输,而不在备路径传输,当主路径发生故障时,报文切换到备路径传输,而不在主路径传输。也就是说,报文只在一条路径传输,而不在主路径和备路径同时传输,以报文在主路径传输为例,则设备101与设备103建立bgp邻居、设备104与设备103建立bgp邻居的操作,浪费了设备101、设备103、设备104的内存资源和cpu(centralprocessingunit,中央处理器)资源。



技术实现要素:

本申请提供一种邻居关系的维护方法,应用于网络设备,本网络设备上配置有邻居策略和/或路由策略,所述方法包括:

当满足所述邻居策略的条件时,与所述邻居策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;其中,所述邻居策略的条件包括:与第二设备的邻居关系建立或者与第二设备的邻居关系断开;

当满足所述路由策略的条件时,与所述路由策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;其中,所述路由策略的条件包括:存在到达第二设备的路由或者不存在到达第二设备的路由。

本申请提供一种邻居关系的维护装置,应用于网络设备,所述装置包括:

配置模块,用于配置邻居策略和/或路由策略;

邻居策略处理模块,用于当满足所述邻居策略的条件时,与所述邻居策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;其中,邻居策略的条件包括:与第二设备的邻居关系建立或者与第二设备的邻居关系断开;

路由策略处理模块,用于当满足所述路由策略的条件时,与所述路由策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;其中,路由策略的条件包括:存在到达第二设备的路由或者不存在到达第二设备的路由。

基于上述技术方案,本申请实施例中,可以根据本网络设备与第二设备的邻居关系建立或者断开情况,来决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。此外,可以根据本网络设备是否存在到达第二设备的路由,来决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。

附图说明

为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。

图1是bgp网络的组网示意图;

图2是本申请一种实施方式中的邻居关系的维护方法的流程图;

图3a和图3b是本申请一种实施方式中的应用场景示意图;

图4a和图4b是本申请一种实施方式中的应用场景示意图;

图5是本申请一种实施方式中的邻居关系的维护装置的结构图;

图6是本申请一种实施方式中的网络设备的硬件结构图。

具体实施方式

在本申请实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本申请实施例中提出一种邻居关系的维护方法,该方法可以应用于网络设备(如路由器等),本网络设备上配置有邻居策略和/或路由策略,基于所述邻居策略,本网络设备可以与该邻居策略指定的第一设备建立邻居关系或者与第一设备断开邻居关系;基于所述路由策略,本网络设备可以与该路由策略指定的第一设备建立邻居关系或者与第一设备断开邻居关系。参见图2所示,为本申请实施例中提出的邻居关系的维护方法的流程图,该方法可以包括以下步骤:

步骤201,当满足邻居策略的条件时,本网络设备与该邻居策略指定的第一设备建立邻居关系或者与第一设备断开邻居关系;其中,该邻居策略的条件包括:本网络设备与第二设备的邻居关系建立或者与第二设备的邻居关系断开。

具体的,针对步骤201,可以包括:当本网络设备与第二设备的邻居关系建立时,断开本网络设备与该邻居策略指定的第一设备的邻居关系;当本网络设备与第二设备的邻居关系断开时,建立本网络设备与该邻居策略指定的第一设备的邻居关系。或者,当本网络设备与第二设备的邻居关系建立时,建立本网络设备与该邻居策略指定的第一设备的邻居关系;当本网络设备与第二设备的邻居关系断开时,断开本网络设备与该邻居策略指定的第一设备的邻居关系。

步骤202,当满足路由策略的条件时,本网络设备与该路由策略指定的第一设备建立邻居关系或者与第一设备断开邻居关系;其中,该路由策略的条件包括:本网络设备存在到达第二设备的路由或者不存在到达第二设备的路由。

具体的,针对步骤202,可以包括:当本网络设备存在到达第二设备的路由时,断开本网络设备与该路由策略指定的第一设备的邻居关系;当本网络设备不存在到达第二设备的路由时,建立本网络设备与该路由策略指定的第一设备的邻居关系。或者,当本网络设备存在到达第二设备的路由时,建立本网络设备与该路由策略指定的第一设备的邻居关系;当本网络设备不存在到达第二设备的路由时,断开本网络设备与该路由策略指定的第一设备的邻居关系。

针对步骤201和步骤202,本网络设备与第一设备建立邻居关系的过程,包括:若本网络设备当前没有与第一设备建立邻居关系,则在本网络设备与第一设备之间建立邻居关系,对此邻居关系建立方式不做限制。若本网络设备当前已经与第一设备建立邻居关系,则保持本网络设备与第一设备之间的邻居关系。

针对步骤201和步骤202,本网络设备与第一设备断开邻居关系的过程,可以包括但不限于:若本网络设备当前没有与第一设备建立邻居关系,则保持本网络设备与第一设备之间的断开状态,即不需要在本网络设备与第一设备之间建立邻居关系。若本网络设备当前已经与第一设备建立邻居关系,则可以断开本网络设备与第一设备之间的邻居关系,对此邻居关系的断开方式不做限制。

在上述实施例中,步骤201和步骤202没有先后顺序关系,步骤201和步骤202可以只执行一个,步骤201和步骤202也可以两个都执行。例如,当满足邻居策略的条件时,则执行步骤201;当满足路由策略的条件时,则执行步骤202;当满足邻居策略的条件和路由策略的条件时,则执行步骤201和步骤202。

在上述实施例中,本网络设备、第一设备、第二设备均可以是支持bgp协议的设备(如bgp路由器等),且上述邻居关系包括但不限于bgp邻居关系。

以下结合几个具体应用场景,对上述邻居关系的维护方法进行说明。当然,这几个应用场景只是几个示例,对邻居关系的维护方法的应用场景不做限制。

应用场景1、在源设备与目标设备之间存在互为备份的第一路径和第二路径。若本网络设备为源设备或者目标设备,则第二设备为第一路径上的中转设备,第一设备为第二路径上的中转设备。若本网络设备为第一路径上的中转设备或者第二路径上的中转设备,则第二设备为源设备,第一设备为目标设备。

本应用场景下,本网络设备配置有路由策略和/或邻居策略。为了方便描述,以本网络设备配置有邻居策略为例进行说明,对于本网络设备配置有路由策略的实现方式,与本网络设备配置有邻居策略的实现方式类似,后续不再赘述。

参见图3a所示,设备301为源设备,设备304为目标设备。其中,设备301-设备302-设备304为第一路径,设备302为第一路径上的中转设备。此外,设备301-设备303-设备304为第二路径,设备303为第二路径上的中转设备。

若本网络设备为设备301,则在一个示例中,基于设备301上配置的邻居策略,当设备301与设备302的邻居关系建立时,则设备301与设备303的邻居关系断开;当设备301与设备302的邻居关系断开时,则设备301与设备303的邻居关系建立。基于此,当设备301与设备302的邻居关系建立,且设备301与设备303的邻居关系断开时,则设备301可以通过设备302向设备304发送报文。或者,当设备301与设备303的邻居关系建立,且设备301与设备302的邻居关系断开时,则设备301可以通过设备303向设备304发送报文。

若本网络设备为设备302,则在一个示例中,基于设备302上配置的邻居策略,当设备302与设备301的邻居关系建立时,设备302与设备304的邻居关系建立;当设备302与设备301的邻居关系断开时,设备302与设备304的邻居关系断开。基于此,当设备302与设备301的邻居关系建立时,设备302可能接收到设备301发送给设备304的报文,因此,设备302与设备304的邻居关系建立,使得设备302可以将报文发送给设备304。当设备302与设备301的邻居关系断开时,设备302不会接收到设备301发送给设备304的报文,设备302不需要向设备304发送报文,因此,设备302与设备304的邻居关系断开。

若本网络设备为设备303,则在一个示例中,基于设备303上配置的邻居策略,当设备303与设备301的邻居关系建立时,设备303与设备304的邻居关系建立;当设备303与设备301的邻居关系断开时,设备303与设备304的邻居关系断开。基于此,当设备303与设备301的邻居关系建立时,设备303可能接收到设备301发送给设备304的报文,因此,设备303与设备304的邻居关系建立,使得设备303可以将报文发送给设备304。当设备303与设备301的邻居关系断开时,设备303不会接收到设备301发送给设备304的报文,设备303不需要向设备304发送报文,因此,设备303与设备304的邻居关系断开。

若本网络设备为设备304,则在一个示例中,基于设备304上配置的邻居策略,当设备304与设备302的邻居关系建立时,则设备304与设备303的邻居关系断开;当设备304与设备302的邻居关系断开时,则设备304与设备303的邻居关系建立。基于此,当设备304与设备302的邻居关系建立,且设备304与设备303的邻居关系断开时,则设备304可以通过设备302接收设备301发送的报文。或者,当设备304与设备303的邻居关系建立,且设备304与设备302的邻居关系断开时,则设备304可以通过设备303接收设备301发送的报文。

应用场景2、在源设备与目标设备之间存在互为备份的第一路径和第二路径,且源设备与第一路径上的中转设备之间无法建立邻居关系。基于此,若本网络设备为源设备,则第二设备为第一路径上的中转设备,第一设备为第二路径上的中转设备;其中,本网络设备配置有路由策略。若本网络设备为第一路径上的中转设备,则第二设备为源设备,第一设备为目标设备;其中,本网络设备配置有路由策略。若本网络设备为第二路径上的中转设备,则第二设备为源设备,第一设备为目标设备;其中,本网络设备配置有路由策略和/或邻居策略。若本网络设备为目标设备,则第二设备为第一路径上的中转设备,第一设备为第二路径上的中转设备;其中,本网络设备配置有路由策略和/或邻居策略。

参见图3b所示,设备301为源设备,设备304为目标设备。其中,设备301-设备302-设备304为第一路径,设备302为第一路径上的中转设备。此外,设备301-设备303-设备304为第二路径,设备303为第二路径上的中转设备。此外,设备301与设备302之间还存在中间设备或网络,二者无法建立邻居关系。

若本网络设备为设备301,则在一个示例中,基于设备301上配置的路由策略,当设备301存在设备302的路由时,则设备301与设备303的邻居关系可以断开;此外,当设备301不存在设备302的路由时,则设备301与设备303的邻居关系可以建立。基于此,当设备301存在设备302的路由,且设备301与设备303的邻居关系断开时,则设备301可以通过设备302向设备304发送报文。或者,当设备301不存在设备302的路由,但是,设备301与设备303的邻居关系建立时,则设备301可以通过设备303向设备304发送报文。

若本网络设备为设备302,则在一个示例中,基于设备302上配置的路由策略,当设备302存在设备301的路由时,则设备302与设备304的邻居关系可以建立;当设备302不存在设备301的路由时,则设备302与设备304的邻居关系可以断开。基于此,当设备302存在设备301的路由时,设备302可能接收到设备301发送给设备304的报文,因此,设备302与设备304的邻居关系建立,使得设备302可以将报文发送给设备304。当设备302不存在设备301的路由时,设备302不会接收到设备301发送给设备304的报文,设备302不需要向设备304发送报文,因此,设备302与设备304的邻居关系可以断开。

若本网络设备为设备303,在一个示例中,基于设备303上配置的邻居策略,当设备303与设备301的邻居关系建立时,设备303与设备304的邻居关系建立;当设备303与设备301的邻居关系断开时,设备303与设备304的邻居关系断开。若本网络设备为设备304,基于设备304上配置的邻居策略,当设备304与设备302的邻居关系建立时,设备304与设备303的邻居关系断开;当设备304与设备302的邻居关系断开时,设备304与设备303的邻居关系建立。

应用场景3、至少一个源设备通过同一个中转设备连接到目标设备。基于此,若本网络设备为中转设备,则第二设备为目标设备,第一设备为源设备。

本应用场景下,本网络设备配置有路由策略和/或邻居策略。为了方便描述,以本网络设备配置有邻居策略为例进行说明,对于本网络设备配置有路由策略的实现方式,与本网络设备配置有邻居策略的实现方式类似,后续不再赘述。

参见图4a所示,设备401为目标设备,设备402为中转设备,设备403和设备404为源设备。其中,下行流量从设备401经过设备402到达设备403和/或设备404;上行流量从设备403和/或设备404经过设备402到达设备401。

若本网络设备为设备402,则在一个示例中,基于设备402上配置的邻居策略,当设备402与设备401的邻居关系建立时,则设备402与设备403/设备404的邻居关系建立;当设备402与设备401的邻居关系断开时,则设备402与设备403/设备404的邻居关系断开。基于此,当设备402与设备401的邻居关系建立时,设备402可能接收到设备401发送给设备403/设备404的报文,因此,设备402与设备403/设备404的邻居关系建立,使得设备402可以将报文发送给设备403/设备404。当设备402与设备401的邻居关系断开时,设备402不会接收到设备401发送给设备403/设备404的报文,因此,设备402与设备403/设备404的邻居关系断开,设备402不会向设备403/设备404发送报文。

应用场景4、至少一个源设备通过同一个中转设备连接到目标设备,中转设备与目标设备之间无法建立邻居关系。基于此,若本网络设备为中转设备,则第二设备为目标设备,第一设备为源设备。其中,本网络设备配置有路由策略。

参见图4b所示,设备401为目标设备,设备402为中转设备,设备403和设备404为源设备。其中,下行流量从设备401经过设备402到达设备403和/或设备404;上行流量从设备403和/或设备404经过设备402到达设备401。此外,设备401与设备402之间还存在中间设备或网络,二者无法建立邻居关系。

若本网络设备为设备402,则在一个示例中,基于设备402上配置的路由策略,当设备402上存在设备401的路由时,则设备402与设备403/设备404的邻居关系可以建立;当设备402上不存在设备401的路由时,则设备402与设备403/设备404的邻居关系可以断开。基于此,当设备402上存在设备401的路由时,设备402可能接收到设备401发送给设备403/设备404的报文,因此,设备402与设备403/设备404的邻居关系建立,使得设备402可以将报文发送给设备403/设备404。当设备402上不存在设备401的路由时,设备402不会接收到设备401发送给设备403/设备404的报文,因此,设备402与设备403/设备404的邻居关系断开,设备402不需要向设备403/设备404发送报文。

在上述应用场景中,设备上存在的路由,可以是基于bgp协议学习到的路由,对此学习过程不做限制,且基于bgp协议学习到的路由存储在路由表中。

基于上述技术方案,本申请实施例中,可以根据本网络设备与第二设备的邻居关系建立或者断开情况,决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。此外,可以根据本网络设备是否存在到达第二设备的路由,决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。而且,当本网络设备与第一设备的邻居关系断开时,可以节约建立邻居关系所使用的资源。

基于与上述方法同样的申请构思,本申请实施例中还提出一种邻居关系的维护装置,应用于网络设备,如图5所示,为所述邻居关系的维护装置的结构图,包括:

配置模块501,用于配置邻居策略和/或路由策略;

邻居策略处理模块502,用于当满足所述邻居策略的条件时,与所述邻居策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;邻居策略的条件包括:与第二设备的邻居关系建立或者与第二设备的邻居关系断开;

路由策略处理模块503,用于当满足所述路由策略的条件时,与所述路由策略指定的第一设备建立邻居关系或者与所述第一设备断开邻居关系;其中,路由策略的条件包括:存在到达第二设备的路由或者不存在到达第二设备的路由。

在一个例子中,在源设备与目标设备之间存在互为备份的第一路径和第二路径;若所述网络设备为所述源设备或者所述目标设备,则所述第二设备为所述第一路径上的中转设备,所述第一设备为所述第二路径上的中转设备;若所述网络设备为所述第一路径上的中转设备或者所述第二路径上的中转设备,则所述第二设备为所述源设备,所述第一设备为所述目标设备。

在一个例子中,在源设备与目标设备之间存在互为备份的第一路径和第二路径,且所述源设备与所述第一路径上的中转设备之间无法建立邻居关系;若所述网络设备为源设备,则第二设备为所述第一路径上的中转设备,第一设备为所述第二路径上的中转设备;其中,所述网络设备配置有路由策略;若所述网络设备为所述第一路径上的中转设备,则所述第二设备为源设备,所述第一设备为目标设备;其中,所述网络设备配置有路由策略;若所述网络设备为所述第二路径上的中转设备,则所述第二设备为源设备,所述第一设备为目标设备;其中,所述网络设备配置有路由策略和/或邻居策略;若所述网络设备为目标设备,则所述第二设备为所述第一路径上的中转设备,所述第一设备为所述第二路径上的中转设备;其中,所述网络设备配置有路由策略和/或邻居策略。

至少一个源设备通过同一个中转设备连接到目标设备;若所述网络设备为所述中转设备,则所述第二设备为所述目标设备,所述第一设备为所述源设备。

在一个例子中,至少一个源设备通过同一个中转设备连接到目标设备,所述中转设备与目标设备之间无法建立邻居关系;

若所述网络设备为所述中转设备,则所述第二设备为所述目标设备,所述第一设备为所述源设备;其中,所述网络设备配置有路由策略。

基于上述技术方案,本申请实施例中,可以根据本网络设备与第二设备的邻居关系建立或者断开情况,决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。此外,可以根据本网络设备是否存在到达第二设备的路由,决定本网络设备是否与第一设备建立邻居关系,从而可以减少本网络设备的内存资源和cpu资源的消耗。而且,当本网络设备与第一设备的邻居关系断开时,可以节约建立邻居关系所使用的资源。

本申请实施例中提供的网络设备,从硬件层面而言,其硬件架构示意图具体可以参见图6所示。包括:机器可读存储介质和处理器,其中:

机器可读存储介质:存储指令代码。

处理器:与机器可读存储介质通信,读取和执行机器可读存储介质中存储的所述指令代码,实现本申请上述示例公开的邻居关系的维护操作。

这里,机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1