CN104486228A - 一种路由更新的方法及路由更新装置 - Google Patents
一种路由更新的方法及路由更新装置 Download PDFInfo
- Publication number
- CN104486228A CN104486228A CN201410826627.2A CN201410826627A CN104486228A CN 104486228 A CN104486228 A CN 104486228A CN 201410826627 A CN201410826627 A CN 201410826627A CN 104486228 A CN104486228 A CN 104486228A
- Authority
- CN
- China
- Prior art keywords
- neighbours
- ability
- update message
- routing iinformation
- route agent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了路由更新的方法及路由更新装置,包括以下步骤:确定发送端与接收端之间的至少两对具有路由代理能力的邻居;针对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,UPDATE报文携带的下一跳属性包括:发送端各个具有路由代理能力的邻居的邻居地址信息;通过一个具有路由代理能力的邻居向接收端发送UPDATE报文,以使接收端针对UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同。本申请可大大减少发送端发送的UPDATE报文的数量。有效的提高提升网络性能,且有效减低接收端的缓存空间的占用率。
Description
技术领域
本申请涉及网络中的路由更新技术领域,尤其涉及路由更新的方法及路由更新装置。
背景技术
BGP(Border Gateway Protocol,边界网关协议)是一种既可以用于不同AS(Autonomous System,自治系统)之间,又可以用于同一AS内部的动态路由协议。AS是拥有同一选路策略,属于同一技术管理部门的一组路由器。当前使用的BGP版本是BGP-4。BGP-4作为Internet外部路由协议标准,被ISP(Internet Service Provider,互联网服务提供商)广泛应用。
在BGP设备之间建立邻居连接关系后,邻居之间最开始的路由信息交换包括路由表中的所有的BGP路由条目。初始化交换完成以后,只有当路由条目发生改变或者失效的时候,才会发出增量的触发性的路由更新。所谓增量,就是指并不交换整个BGP表,而只更新发生变化的路由条目;而触发性,则是指只有在路由表发生变化时才更新路由信息,而并不发出周期性的路由更新。比起传统的全路由表的定期更新,这种增量触发的更新大大节省了带宽。路由更新都是由UPDATE报文来完成。UPDATE报文包含了发送端可到达的路由前缀和路径属性。
目前对于两台BGP设备之间可以建立多个邻居关系时,各BGP邻居之间学习路由的方法是,当两台BGP设备之间的BGP邻居建立后,进行路由更新时,发送方BGP设备需要将一条待发送路由信息(该一条待发送路由信息的路径属性唯一,网络中没有与该路径属性相同的路由信息)针对发送方BGP设备和接收方BGP设备之间的每一对邻居分别进行打包生成一个UPDATE报文,将至少两条路径属性相同且路由前缀各不相同的待发送路由信息针对发送方BGP设备和接收方BGP设备之间的每一对邻居分别进行打包生成一个UPDATE报文,然后分别通过UPDATE报文对应的一对邻居将该UPDATE报文发送至接收方BGP设备。
因此,两台BGP设备之间会发送大量的UPDATE报文,将导致网络性能差,并且导致接收端的缓存空间占用率高。
发明内容
本申请提供一种路由更新的方法及路由更新装置,能够提高提升网络性能,且有效减低接收端的缓存空间的占用率。
根据本申请实施例的第一方面,提供一种路由更新的方法,所述方法应用于运行BGP协议的发送端,该方法包括步骤:
确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居;
针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,所述UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;
通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文,以使所述接收端针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
本申请的另一方面提供一种路由更新装置,所述装置位于运行BGP协议的发送端,该装置包括:
路由代理能力确定模块,用于确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居;
组包模块,用于针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,所述UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;
发送模块,用于通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文,以使所述接收端针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
通过上述方案,针对至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,通过至少两对具有路由代理能力的邻居中在发送端的一个邻居向接收端发送该UPDATE报文,可大大减少发送端发送的UPDATE报文的数量。因此有效的提高提升网络性能,且有效减低接收端的缓存空间的占用率。
附图说明
图1为本申请实施例中两设备建立的邻居关系图;
图2是本申请实施例中发送端路由更新的方法的流程图;
图3a是本申请实施例中一种扩展的OPEN报文示例;
图3b是本申请实施例中另一种扩展的OPEN报文示例;
图4是本申请实施例中接收端路由更新的方法的流程图;
图5是本申请应用实例的路由更新方法的流程图;
图6是本申请实施例中路由更新装置的硬件结构图;
图7是本申请实施例中发送端路由更新装置的内部结构逻辑框图;
图8是本申请实施例中接收端路由更新装置的内部结构逻辑框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
本申请具体的组网环境以基于BGP协议创建的邻居关系为例,当然,本领域技术人员应该理解的是,对基于其他协议来创建邻居关系且存在于本申请类似的问题的情况下,显然也能够使用本发明的技术方案。
两台BGP设备之间往往会存在建立多对邻居关系的需求。比如,针对多业务场景下,BGP设备可以为每项业务分配对应的邻居关系,以实现业务之间的独立性;或者,当两台BGP设备之间存在多条路径时,可以针对每条路径建立对应的邻居关系,从而在多条路径之间形成负载分担或者主备关系。然而,本领域技术人员应该理解的是,业务、路径、邻居关系之间并非一一对应的关系。
BGP设备之间可以通过任何IP地址来建立邻居关系,而不限于某个固定的接口IP,使得两台BGP设备之间实际上可以通过多个IP地址来建立多个邻居关系。图1为两个BGP设备之间通过不同的IP地址所建立的三对邻居关系。
实施例1:针对现有技术中发送端的BGP设备需要通过每个邻居都发送一遍同一BGP路由的问题,本申请首先提供了一种路由更新的方法,该方法运行于支持BGP协议的发送端,即作为发送端的BGP设备。图2是该方法的流程图。
步骤101:确定发送端与接收端之间的至少两对具有路由代理能力的邻居。
其中,该至少两对具有路由代理能力的邻居中在发送端的邻居具有相同的路由策略(包括该至少两对具有路由代理能力的邻居中在发送端的邻居均没有配置路由策略的情况)。
由于BGP协议具有良好的扩展性,因此在一个例子中,可以通过OPEN报文获知发送OPEN报文的邻居是否使能路由代理能力。
在一个例子中,本申请OPEN报文扩展的字段包括用于标识某个发送OPEN报文的邻居是否已使能路由代理能力的字段,如图3a所示,用Route_AgentCap来定义协商能力类型;用Route_Agent TR来表示发送该OPEN报文的邻居是否已使能路由代理能力。若OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,且接收该OPEN报文的邻居已使能路由代理能力,则将该对邻居确定为一对具有路由代理能力的邻居。
在另一个例子中,路由代理能力可以包括:路由接收代理功能和路由发布代理功能。则扩展的OPEN报文的结构如图3b所示,图中用Route_AgentCap来定义协商能力类型;用Route_Agent recv来表示发送该OPEN报文的邻居是否已使能路由接收代理能力,用Route_Agent send表示发送该OPEN报文的邻居是否已使能路由发布代理能力。若OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由接收代理能力的字段,且接收该OPEN报文的邻居已使能路由发布代理能力,则将该对邻居确定为一对具有路由代理能力的邻居。
步骤102:针对至少两对具有路由代理能力的邻居,将每个待发送的路由信息组打包成一个UPDATE报文。待发送路由信息组可以是一条待发送路由信息,也可以是至少两条路径属性相同且路由前缀各不相同的待发送路由信息(需要说明的是,如果路径属性相同且路由前缀各不相同的待发送路由信息条数数目较大的时候,可以将具有相同路径属性的待发送路由信息分成多个路由信息组,每个路由信息组打包生成一个UPDATE报文)。
在发送端将每个待发送路由信息组打包生成一个UPDATE报文之前,需要指定由哪个邻居来发送哪些待发送路由信息组,发送端的BGP设备通过平均算法均匀的将各个待发送的路由信息组分配给至少两对具有路由代理能力的邻居中在的发送端邻居,另外还可以通过哈希算法或随机分配等多种方式分配这些待发送的路由信息组。
每个待发送路由信息组打包生成一个UPDATE报文时,在每个UPDATE报文的下一跳属性中不仅填充发送该路由信息组的发送端邻居的邻居地址信息,还填充至少两对具有路由代理能力的邻居中在发送端的其它邻居的邻居地址信息。
在一个例子中,在UPDATE报文的下一跳属性中还可以将发送该路由信息组的邻居的邻居地址信息打上FLAG标记,其它邻居地址信息不打FLAG标识;或者将发送该路由信息组的邻居的邻居地址信息不打FLAG标记,其它邻居地址信息打上FLAG标识。
步骤103,通过至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文。
具体的,若在步骤102中在UPDATE报文的下一跳属性中将发送该路由信息组的邻居的邻居地址信息打FLAG标记,其它邻居地址信息不打FLAG标识,则通过至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文具体为:通过UPDATE报文携带的下一跳属性包括的打有FLAG标记的邻居地址信息对应的邻居向接收端发送该UPDATE报文。若在步骤102中在UPDATE报文的下一跳属性中将发送该路由信息组的邻居的邻居地址信息不打FLAG标记,其它邻居地址信息打FLAG标识,则通过至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文具体为:通过UPDATE报文携带的下一跳属性包括的未打有FLAG标记的邻居地址信息对应的邻居向接收端发送该UPDATE报文。
当接收端的收到该UPDATE报文后,对该UPDATE报文进行解析,针对该UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,N的取值与UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,该N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括该UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且该N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
实施例2:本发明实施例提供了一种路由更新的方法,该方法运行于支持BGP协议的接收端,即作为接收端的BGP设备。图4是该方法的流程图。
步骤201,通过接收端上的邻居接收UPDATE报文。
步骤202,若该UPDATE报文携带的下一跳属性包括至少两个邻居地址信息,则针对该UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息。
另外,由于发送端需要参与发送端确定两台设备之间有多少对具有路由代理能力的邻居的过程,因此接收端在向发送端发送OPEN报文时,需要在OPEN报文中携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段。对于OPEN报文的扩展方式可参照实施例1中步骤1的相关内容描述。
可以看出,一个路由信息组针对至少两对具有路由代理能力的邻居只需要打一次包,生成一个UPDATE报文,通过本申请这种方式发送,可以通过至少两对具有路由代理能力的邻居中的在发送端的一个邻居发送一个UPDATE报文,即可在对端BGP设备上产生数条同一路由前缀的路由信息,每条路由信息与一个路由代理能力的邻居地址相关联,而不需像现有技术那样一个路由信息组需要针对发送端上的每一个邻居打包生成一个UPDATE报文,并通过该邻居发送,对端BGP设备才能产生与每个邻居所关联的路由信息。从而大大减少了传输量,有效的提高提升网络性能,且有效减低接收端的缓存空间的占用率。
为了能够更好的理解本申请,以下以图2所示的组网为例,说明BGP设备A利用本发明实施例提供的方法向BGP设备B发布路由的过程进行详细说明。
如图5所示,是本申请应用实例的路由更新方法的流程图
S501,BGP设备A尝试与BGP设备B建立一个TCP连接。
TCP连接建立成功后,BGP设备A发起与BGP设备B建立邻居关系的流程。图2中BGP设备A和BGP设备B之间存在三条路径,BGP设备A通过三个不同的IP地址与BGP设备B建立邻居关系。具体的,BGP设备A通过A1的地址10.11.1.1/24与BGP设备B的B1的地址10.11.1.2/24建立邻居关系;通过A2的地址10.11.2.1/24与B2的地址10.11.2.2/24建立邻居关系;通过A3的地址10.11.3.1/24与B3的地址10.11.3.2/24建立邻居关系;在建立邻居关系的过程中通过扩展的OPEN报文确定各邻居是否已使能路由代理能力。该过程如步骤S502-S503所述。
S502,A1将携带有扩展字段的OPEN报文发给B1,OPEN报文的扩展字段中Route_Agent recv和Route_Agent send均为1;B1将携带有扩展字段的OPEN报文发给A1;OPEN报文的扩展字段中Route_Agent recv和Route_Agentsend均为1。A2将携带有扩展字段的OPEN报文发给B2,OPEN报文的扩展字段中Route_Agent recv和Route_Agent send均为1;B2将携带有扩展字段的OPEN报文发给A2,OPEN报文的扩展字段中Route_Agent recv和Route_Agent send均为1。A3将携带有扩展字段的OPEN报文发给B3;OPEN报文的扩展字段中Route_Agent recv为1、Route_Agent send均为0;B3将携带有扩展字段的OPEN报文发给A1;OPEN报文的扩展字段中Route_Agentrecv和Route_Agent send均为1。
S503,BGP设备A与BGP设备B建立成功三对邻居关系,即位于BGP设备A的邻居A1、A2、A3和位于BGP设备B的邻居B1、B2、B3。邻居关系如图2所示。同时,经过OPEN报文协商过程,BGP设备A确定邻居对A1-B1和邻居对A2-B2已使能路由代理能力。
S504,BGP设备A查看邻居A1和邻居A2上所配置的策略是否相同,若邻居A1和邻居A2上所配置的策略相同(如邻居A1和邻居A2所配置的策略均为路由前缀过滤策略),则执行S505-S509,否则按现有技术执行。
S505,BGP设备A当前待发送的路由信息组有100个,BGP设备A针对两对具有路由代理能力的邻居,通过平均算法均匀的将各个待发送的路由信息组分配给邻居A1和A2,即A1和A2各分配50个路由信息组。
S506,BGP设备A将每个待发送路由信息组打包生成一个UPDATE报文时,在分配给A1的50个路由信息组所打包生成的每个UPDATE报文的下一跳属性中不仅填充A1的邻居地址信息,还填充A2的邻居地址信息,并将A1的邻居地址信息打上FLAG标记。同样,在分配给A2的50个路由信息组所打包生成的每个UPDATE报文的下一跳属性中不仅填充A2的邻居地址信息,还填充A1的邻居地址信息,并将A2的邻居地址信息打上FLAG标记。
对于不具有路由代理能力的A3,BGP设备A将待发送的100条路由信息组分别打包生成100个UPDATE报文,每个UPDATE报文下一跳属性中中均只携带A3的邻居地址信息。S507,BGP设备A将下一跳属性中包括邻居A1和邻居A2的邻居地址信息且邻居A1的邻居地址信息打有FLAG标记的50条UPDATE报文通过邻居A1发给BGP设备B的邻居B1,将下一跳属性中包括邻居A1和邻居A2的邻居地址信息且邻居A2的邻居地址信息打有FLAG标记的50条UPDATE报文通过邻居A2发给BGP设备B的邻居B2;通过A3将100条带有A3的邻居地址信息的UPDATE报文发给BGP设备B的邻居B3。
S508,BGP设备B通过邻居B1收到UPDATE报文后,针对每一个路由前缀生成一条下一跳属性为A1的邻居地址信息的待过滤路由信息和一条下一跳属性为邻居A2的邻居地址信息的待过滤的路由信息。同样,邻居B2收到UPDATE报文后,针对每一个路由前缀生成一条下一跳属性为邻居A2的邻居地址信息的待过滤路由信息和一条下一跳属性为邻居A1的邻居地址信息的待过滤的路由信息。以UPDATE报文携带路由前缀为1.1.1.1/32和路由前缀1.1.1.2/32为例,针对该UPDATE报文,BGP设备B将生成四条待过滤的路由信息,一条待过滤的路由信息的路由前缀为1.1.1.1/32,下一跳属性中的邻居地址信息为A1的邻居地址信息10.11.1.1;一条待过滤的路由信息的路由前缀为1.1.1.1/32,下一跳属性中的邻居地址信息为A2的邻居地址信息10.11.2.1;一条待过滤的路由信息的路由前缀为1.1.1.2/32,下一跳属性中的邻居地址信息为A1的邻居地址信息10.11.1.1;一条待过滤的路由信息的路由前缀为1.1.1.2/32,下一跳属性中的邻居地址信息为A2的邻居地址信息10.11.2.1;这四条待过滤的路由信息的路径属性相同,均为UPDATE报文携带的路径属性。
而邻居B3在收到邻居A3的UPDATE报文后,针对该UPDATE报文仅生成一条待过滤的路由信息,具体过程与现有技术相同。。
S509,BGP设备B根据各个邻居上配置的路由策略,对生成的待过滤的路由信息进行过滤。具体过程与现有技术相同。
对应于上述的路由更新方法,本发明提出了相应的路由更新装置。作为一个典型应用,该路由更新装置可以借助支持BGP的路由器实现。请参考图6,在硬件层面,该路由更新装置包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成路由更新装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,执行主体也可以是硬件或逻辑器件。
本申请中的路由更新装置通常既可以作为发送端的BGP设备,也可以作为接收端的BGP设备,因此在软件实施方式中,将一个路由更新装置中包含了作为发送端时所需要具有的路由代理能力确定模块、组包模块、发送模块和作为接收端时所需要具有的路由更新模块。当然也不排除在路由更新装置仅仅作为发送端或者接收端的情况,在这种情况下,路由更新装置中可以仅包含作为发送端的各模块或作为接收端的各模块。
对于图7中作为发送端的路由更新装置,可以包括:
路由代理能力确定模块710,用于确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居;
组包模块720,用于针对至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,所述UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;
发送模块730,用于通过至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文,以使所述接收端针对所述UPDATE报文携带的每一个路由前缀生成多条待过滤路由信息,接收端生成多条待过滤的路由信息的方案请参考以下接收端的路由更新设备的实施例。
在一个实施例中,路由代理能力确定模块710确定发送端与接收端之间的至少两对具有路由代理能力的邻居包括:
接收OPEN报文,若所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,且接收该OPEN报文的邻居已使能路由代理能力,则将该对邻居确定为一对具有路由代理能力的邻居;其中,至少两对具有路由代理能力的邻居中在发送端的邻居具有相同的路由策略。
在一个实施例中,组包模块720在针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文之前还用于:确定所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居作为发送待发送路由信息组的邻居;
组包模块720针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文包括:
在所述UPDATE报文携带的下一跳属性填充所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;其中发送所述待发送路由信息组的邻居的邻居地址信息打有FLAG标记,其它邻居地址信息未打有FLAG标识;
发送模块730通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文包括:
通过所述UPDATE报文携带的下一跳属性包括的打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
另外,作为一个例子,也可以参照实施例1中所描述的组包模块720将发送所述待发送路由信息组的邻居的邻居地址信息未打有FLAG标记,其它邻居地址信息打有FLAG标识;发送模块730将未打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
对于图8中位于接收端的路由更新装置,可以包括:
路由更新模块810,用于当接收到发送端发送的UPDATE报文后,若所述UPDATE报文携带的下一跳属性包括至少两个邻居地址信息,则针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息;所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
为了配合发送方的路由代理能力确定模块710的功能,接收端的路由更新装置还包括路由代理能力确定模块820,用于在所述路由更新模块810接收UPDATE报文之前,向所述发送端发送OPEN报文,所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (12)
1.一种路由更新的方法,所述方法应用于运行BGP协议的发送端,其特征在于,该方法包括步骤:
确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居;
针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,所述UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;
通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文,以使所述接收端针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
2.根据权利要求1所述的方法,其特征在于,所述确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居包括:
接收OPEN报文,若所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,且接收该OPEN报文的邻居已使能路由代理能力,则将该对邻居确定为一对具有路由代理能力的邻居;
其中,所述至少两对具有路由代理能力的邻居中在所述发送端的邻居具有相同的路由策略。
3.根据权利要求1所述的方法,其特征在于,在所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文之前,所述方法还包括:
确定所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居作为发送所述待发送路由信息组的邻居;
所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文包括:
在所述UPDATE报文携带的下一跳属性填充所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;其中发送所述待发送路由信息组的邻居的邻居地址信息打有FLAG标记,其它邻居地址信息未打有FLAG标识;
所述通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文包括:
通过所述UPDATE报文携带的下一跳属性包括的打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
4.根据权利要求1所述的方法,其特征在于,在所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文之前,所述方法还包括:
确定所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居作为发送所述待发送路由信息组的邻居;
所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文包括:
在所述UPDATE报文携带的下一跳属性填充所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;其中发送所述待发送路由信息组的邻居的邻居地址信息未打有FLAG标记,其它邻居地址信息打有FLAG标识;
所述通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文包括:
通过所述UPDATE报文携带的下一跳属性包括的未打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
5.一种路由更新的方法,所述方法应用于运行BGP协议的接收端,其特征在于,该方法包括步骤:
当接收到发送端发送的UPDATE报文后,若所述UPDATE报文携带的下一跳属性包括至少两个邻居地址信息,则所述接收端针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息;所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
6.根据权利要求5所述的方法,其特征在于,在接收UPDATE报文之前,所述方法还包括:向所述发送端发送OPEN报文,所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,以使所述发送端在所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段且接收该OPEN报文的邻居已使能路由代理能力时,将该对邻居确定为一对具有路由代理能力的邻居,并针对至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,该生成的UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息,通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送生成的UPDATE报文;
其中,所述至少两对具有路由代理能力的邻居中在所述发送端的邻居具有相同的路由策略。
7.一种路由更新装置,所述装置位于运行BGP协议的发送端,其特征在于,该装置包括:
路由代理能力确定模块,用于确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居;
组包模块,用于针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,所述UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;
发送模块,用于通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文,以使所述接收端针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息,所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
8.根据权利要求7所述的装置,其特征在于,所述路由代理能力确定模块确定所述发送端与接收端之间的至少两对具有路由代理能力的邻居包括:
接收OPEN报文,若所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,且接收该OPEN报文的邻居已使能路由代理能力,则将该对邻居确定为一对具有路由代理能力的邻居;
其中,所述至少两对具有路由代理能力的邻居中在所述发送端的邻居具有相同的路由策略。
9.根据权利要求7所述的装置,其特征在于,
所述组包模块在所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文之前还用于:确定所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居作为发送所述待发送路由信息组的邻居;
所述组包模块针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文包括:
在所述UPDATE报文携带的下一跳属性填充所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;其中发送所述待发送路由信息组的邻居的邻居地址信息打有FLAG标记,其它邻居地址信息未打有FLAG标识;
所述发送模块通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文包括:
通过所述UPDATE报文携带的下一跳属性包括的打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
10.根据权利要求7所述的装置,其特征在于,
所述组包模块在所述针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文之前,还用于:确定所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居作为发送所述待发送路由信息组的邻居;
所述组包模块针对所述至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文包括:
在所述UPDATE报文携带的下一跳属性填充所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息;其中发送所述待发送路由信息组的邻居的邻居地址信息未打有FLAG标记,其它邻居地址信息打有FLAG标识;
所述发送模块通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送所述UPDATE报文包括:
通过所述UPDATE报文携带的下一跳属性包括的未打有FLAG标记的邻居地址信息对应的邻居向所述接收端发送所述UPDATE报文。
11.一种路由更新装置,所述装置应用于运行BGP协议的接收端,其特征在于,包括:
路由更新模块,用于当接收到发送端发送的UPDATE报文后,若所述UPDATE报文携带的下一跳属性包括至少两个邻居地址信息,则针对所述UPDATE报文携带的每一个路由前缀生成N条待过滤路由信息;所述N的取值与所述UPDATE报文携带的下一跳属性包括的邻居地址信息个数相同,所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括所述UPDATE报文携带的下一跳属性包括的一个邻居地址信息,且所述N条待过滤路由信息中的每条待过滤路由信息的下一跳属性包括的邻居地址信息不同。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括路由代理能力确定模块,用于在所述路由更新模块接收UPDATE报文之前,向所述发送端发送OPEN报文,所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段,以使所述发送端在所述OPEN报文携带用于标识发送该OPEN报文的邻居已使能路由代理能力的字段且接收该OPEN报文的邻居已使能路由代理能力且发送该OPEN报文的邻居和接收该OPEN报文的邻居配置的策略相同时,将该对邻居确定为一对具有路由代理能力的邻居,并针对至少两对具有路由代理能力的邻居将每个待发送路由信息组打包生成一个UPDATE报文,所述待发送路由信息组包括:一条待发送路由信息或至少两条路径属性相同且路由前缀各不相同的待发送路由信息,该生成的UPDATE报文携带的下一跳属性包括:所述至少两对具有路由代理能力的邻居中在所述发送端的邻居的邻居地址信息,通过所述至少两对具有路由代理能力的邻居中在所述发送端的一个邻居向所述接收端发送生成的UPDATE报文;
其中,所述至少两对具有路由代理能力的邻居中在所述发送端的邻居具有相同的路由策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410826627.2A CN104486228B (zh) | 2014-12-25 | 2014-12-25 | 一种路由更新的方法及路由更新装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410826627.2A CN104486228B (zh) | 2014-12-25 | 2014-12-25 | 一种路由更新的方法及路由更新装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104486228A true CN104486228A (zh) | 2015-04-01 |
CN104486228B CN104486228B (zh) | 2017-12-08 |
Family
ID=52760734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410826627.2A Active CN104486228B (zh) | 2014-12-25 | 2014-12-25 | 一种路由更新的方法及路由更新装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104486228B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763468A (zh) * | 2016-03-31 | 2016-07-13 | 杭州华三通信技术有限公司 | 一种bgp更新报文的传输方法和装置 |
CN106060014A (zh) * | 2016-05-18 | 2016-10-26 | 中国互联网络信息中心 | 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法 |
CN106059917A (zh) * | 2016-06-17 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种路由信息处理方法和装置 |
CN106878072A (zh) * | 2017-02-10 | 2017-06-20 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107547411A (zh) * | 2017-06-30 | 2018-01-05 | 新华三技术有限公司 | 一种路由处理方法、装置、电子设备及机器可读存储介质 |
CN108390822A (zh) * | 2018-03-13 | 2018-08-10 | 新华三技术有限公司 | 路由发布方法和装置 |
CN108965120A (zh) * | 2018-06-26 | 2018-12-07 | 新华三技术有限公司合肥分公司 | 路由通告方法、装置、通信设备及存储介质 |
CN113271286A (zh) * | 2020-02-14 | 2021-08-17 | 华为技术有限公司 | 一种用于实现bgp异常检测的方法、设备及系统 |
WO2021169278A1 (zh) * | 2020-02-28 | 2021-09-02 | 华为技术有限公司 | 路由属性的更新方法、网络设备及系统 |
WO2022127154A1 (zh) * | 2020-12-15 | 2022-06-23 | 华为技术有限公司 | 一种路由通告的方法及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921432A (zh) * | 2006-09-15 | 2007-02-28 | 华为技术有限公司 | 报文发送方法及其装置 |
CN101076029A (zh) * | 2007-07-12 | 2007-11-21 | 中兴通讯股份有限公司 | 一种边界网关协议递归路由更新的方法 |
CN101141382A (zh) * | 2006-09-07 | 2008-03-12 | 华为技术有限公司 | 路由更新方法和路由器 |
CN102638413A (zh) * | 2012-05-14 | 2012-08-15 | 杭州华三通信技术有限公司 | 路由发布方法和运营商边缘设备 |
WO2014082656A1 (en) * | 2012-11-27 | 2014-06-05 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and routers for connectivity setup between provider edge routers |
CN104038427A (zh) * | 2014-06-30 | 2014-09-10 | 杭州华三通信技术有限公司 | 路由更新方法和路由更新装置 |
-
2014
- 2014-12-25 CN CN201410826627.2A patent/CN104486228B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141382A (zh) * | 2006-09-07 | 2008-03-12 | 华为技术有限公司 | 路由更新方法和路由器 |
CN1921432A (zh) * | 2006-09-15 | 2007-02-28 | 华为技术有限公司 | 报文发送方法及其装置 |
CN101076029A (zh) * | 2007-07-12 | 2007-11-21 | 中兴通讯股份有限公司 | 一种边界网关协议递归路由更新的方法 |
CN102638413A (zh) * | 2012-05-14 | 2012-08-15 | 杭州华三通信技术有限公司 | 路由发布方法和运营商边缘设备 |
WO2014082656A1 (en) * | 2012-11-27 | 2014-06-05 | Telefonaktiebolaget L M Ericsson (Publ) | Methods and routers for connectivity setup between provider edge routers |
CN104038427A (zh) * | 2014-06-30 | 2014-09-10 | 杭州华三通信技术有限公司 | 路由更新方法和路由更新装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763468B (zh) * | 2016-03-31 | 2019-04-09 | 新华三技术有限公司 | 一种bgp更新报文的传输方法和装置 |
CN105763468A (zh) * | 2016-03-31 | 2016-07-13 | 杭州华三通信技术有限公司 | 一种bgp更新报文的传输方法和装置 |
CN106060014A (zh) * | 2016-05-18 | 2016-10-26 | 中国互联网络信息中心 | 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法 |
CN106060014B (zh) * | 2016-05-18 | 2019-04-26 | 中国互联网络信息中心 | 一种同时解决前缀劫持、路径劫持及路由泄露攻击的方法 |
CN106059917A (zh) * | 2016-06-17 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种路由信息处理方法和装置 |
CN106059917B (zh) * | 2016-06-17 | 2020-01-07 | 新华三技术有限公司 | 一种路由信息处理方法和装置 |
CN106878072A (zh) * | 2017-02-10 | 2017-06-20 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107547411A (zh) * | 2017-06-30 | 2018-01-05 | 新华三技术有限公司 | 一种路由处理方法、装置、电子设备及机器可读存储介质 |
CN107547411B (zh) * | 2017-06-30 | 2021-01-08 | 新华三技术有限公司 | 一种路由处理方法、装置、电子设备及机器可读存储介质 |
CN108390822A (zh) * | 2018-03-13 | 2018-08-10 | 新华三技术有限公司 | 路由发布方法和装置 |
CN108965120A (zh) * | 2018-06-26 | 2018-12-07 | 新华三技术有限公司合肥分公司 | 路由通告方法、装置、通信设备及存储介质 |
CN108965120B (zh) * | 2018-06-26 | 2021-03-09 | 新华三技术有限公司合肥分公司 | 路由通告方法、装置、通信设备及存储介质 |
CN113271286A (zh) * | 2020-02-14 | 2021-08-17 | 华为技术有限公司 | 一种用于实现bgp异常检测的方法、设备及系统 |
CN113271286B (zh) * | 2020-02-14 | 2022-07-29 | 华为技术有限公司 | 一种用于实现bgp异常检测的方法、设备及系统 |
WO2021169278A1 (zh) * | 2020-02-28 | 2021-09-02 | 华为技术有限公司 | 路由属性的更新方法、网络设备及系统 |
WO2022127154A1 (zh) * | 2020-12-15 | 2022-06-23 | 华为技术有限公司 | 一种路由通告的方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104486228B (zh) | 2017-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104486228A (zh) | 一种路由更新的方法及路由更新装置 | |
US9515874B2 (en) | Efficient use of dynamic host configuration protocol in low power and lossy networks | |
US7739404B2 (en) | Scalable methods for distributing routing information to border gateway protocol (BGP) devices | |
US9008092B2 (en) | Route prefix aggregation using reachable and non-reachable addresses in a computer network | |
US20130198332A1 (en) | Processing method, proxy processing agent, system and method for filling a routing table of a dht client node, router and dht client node | |
CN102571587B (zh) | 报文转发方法和设备 | |
US10187499B2 (en) | Method for operating a software defined network and a software defined network | |
KR102369529B1 (ko) | 통신 시스템에서 수동적 RTT(Round Trip Time) 지연을 결정하는 방법 | |
Thaler | Evolution of the IP Model | |
JP2017500771A (ja) | データ・ネットワークにおける分散データ送信 | |
WO2016082580A1 (zh) | 负载分担的方法和路由设备 | |
CN105227466A (zh) | 通信处理方法和装置 | |
CN110891022A (zh) | 基于SRv6的虚拟子网标识符发布方法和装置 | |
EP3166263B1 (en) | Routing calculation method and device for trill isis | |
JP2022529459A (ja) | Rplネットワークにおける効率的なメッセージ送信とループ回避 | |
CN102946350B (zh) | 一种基于优先级的数据传输方法和设备 | |
CN102427452B (zh) | 同步报文发送方法、装置和网络设备 | |
US20170346687A1 (en) | Self-Configuring Computer Network Router | |
CN109040323B (zh) | 负载均衡装置 | |
CN107547411B (zh) | 一种路由处理方法、装置、电子设备及机器可读存储介质 | |
CN102299860B (zh) | 一种Pathmtu的获取方法和设备 | |
WO2018149673A1 (en) | A method of distributing a sub-flow associated with a session and a network apparatus | |
CN114157601B (zh) | 一种报文传输方法、装置及存储介质 | |
CN114363255B (zh) | 数据处理方法、装置和介质 | |
CN104518937B (zh) | 虚拟局域网vlan多设备间通信的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant before: Huasan Communication Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |