CN114640617A - 一种路由通告的方法及设备 - Google Patents
一种路由通告的方法及设备 Download PDFInfo
- Publication number
- CN114640617A CN114640617A CN202110218459.9A CN202110218459A CN114640617A CN 114640617 A CN114640617 A CN 114640617A CN 202110218459 A CN202110218459 A CN 202110218459A CN 114640617 A CN114640617 A CN 114640617A
- Authority
- CN
- China
- Prior art keywords
- network device
- routing
- route
- message
- network
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000005540 biological transmission Effects 0.000 claims description 66
- 238000012545 processing Methods 0.000 claims description 44
- 238000013461 design Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
- H04L45/586—Association of routers of virtual routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种路由通告的方法及设备,提高路由通告消息的生成效率。其中,所述方法应用于包括第一网络设备和第二网络设备的网络,所述第一网络设备与第二网络设备建立有基于用户数据包协议UDP的边界网关协议BGP连接,所述方法包括:所述第一网络设备获得一个或多个路由发送组,每个所述路由发送组包括一个或多个路由信息;所述第一网络设备根据每个路由发送组分别生成至少一个路由通告消息,所述路由通告消息分别包含与所述路由通告消息对应的路由发送组中的一条或多条路由信息;所述第一网络设备通过所述BGP连接向所述第二网络设备发送所述路由通告消息。
Description
本申请要求于2020年12月15日提交国家知识产权局、申请号为202011482071.1、发明名称为“一种路由发送的方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,尤其涉及一种路由通告的方法及设备。
背景技术
边界网关协议(Border Gateway Protocol,BGP)是去中心化自治路由协议,用于在 自治系统(Autonomous system,AS)内部的对等体(peer)(具有邻居关系的网络设备之间互称对等体)或跨AS的对等体之间传递消息。
传统技术中,对等体之间建立基于传输控制协议(Transmission ControlProtocol, TCP)的BGP连接,并基于该连接传输路由通告消息以发布路由信息或者撤销路由信息。 目前,对等体生成路由通告消息的效率较低,影响路由信息的更新速度。
发明内容
本申请实施例提供了一种路由通告的方法及设备,提高路由通告消息的生成效率。
第一方面,提供了一种路由通告的方法,所述方法应用于包括第一网络设备和第二网 络设备的网络,所述第一网络设备与第二网络设备建立有基于用户数据包协议(UserDatagram Protocol,UDP)的BGP连接。所述方法包括:所述第一网络设备第一网络设备 获取多个路由信息,并将多个路由信息按照预设规则划分为一个或多个路由发送组。预设 规则所涉及的特征例如可以包括地址族(address family)标识、虚拟路由转发(VirtualRouting Forwarding,VRF)标识、前缀等其中的一个或多个。所述第一网络设备根据每 个路由发送组分别生成至少一个路由通告消息,所述路由通告消息分别包含与所述路由通告消息对应的路由发送组中的一条或多条路由信息。该路由通告消息例如可以为BGP更新(update)消息。所述第一网络设备通过所述BGP连接向所述第二网络设备发送所述路由 通告消息。相对于传统技术将多个路由信息按序生成对应的路由通告消息的技术方案,本 申请实施例将多个路由信息划分为一个或多个路由发送组,每个路由发送组独立生成对应的路由通告消息,提高路由通告消息的生成效率。此外,相对于传统技术基于TCP的BGP 连接,基于UDP的BGP连接能够更加快速的建立第一网络设备和第二网络设备之间的邻居 关系,从而提高发送路由通告消息的效率。
在一种可能的设计中,所述一个或多个路由发送组中的每个路由发送组分别对应一个 发送流。相应的,所述第一网络设备通过所述BGP连接以并行发送的方式向所述第二网络 设备发送每个发送流对应的路由通告消息。所谓并行发送是指同时向第二网络设备发送每 条发送流对应的路由通告消息。相对于传统技术按序发送路由通告消息的技术方案,本申 请实施例通过并行发送的方式提高路由通告消息的发送效率。
在一种可能的设计中,所述路由通告消息包括消息序列号,所述消息序列号用于指示 所述路由通告消息在对应的发送流中的排序,以便第二网络设备能够按照正确的顺序接收 该发送流对应的路由发送组的路由通告消息,以及用于第二网络设备判断是否丢包。
在一种可能的设计中,所述路由通告消息还包括所述对应的发送流的标识,该情况尤 其适用于第一网络设备向第二网络设备发送多个路由发送组的路由通告消息,以便第二网 络设备根据发送流的标识确认按照正确的顺序接收对应的路由发送组的路由通告消息以 及判断是否出现丢包。
在一种可能的设计中,所述发送流的标识和所述消息序列号携带在所述路由通告消息 的通用头(common head)中。
在一种可能的设计中,所述发送流的标识携带在所述通用头的流标识(streamID) 字段中。
在一种可能的设计中,所述消息序列号携带在所述通用头的补偿(offset)字段中。
当然,上述介绍的发送流的标识和所述消息序列号在路由通告消息中携带的字段不对 本申请实施例构成限定,本领域技术人员还可以根据实际情况自行设计。
在一种可能的设计中,所述第一网络设备可以通过如下方式获得一个或多个路由发送 组:
实现方式一:所述第一网络设备将一个或多个地址族标识对应的路由信息划分为一个 路由发送组;
实现方式二:所述第一网络设备将一个或多个虚拟路由转发实例对应的路由信息划分 为一个路由发送组;
实现方式三:所述第一网络设备将一种或多种前缀对应的路由信息划分为一个路由发 送组;
实现方式四:所述第一网络设备将属于一个或多个地址族标识的路由信息中的一种或 多种前缀对应的路由信息划分为一个路由发送组;
实现方式五:所述第一网络设备将属于一个或多个虚拟路由转发实例的路由信息中的 一种或多种前缀对应的路由信息划分为一个路由发送组。
其中,在实现方式三中,又有两种可能的实现方式:所述第一网络设备将具有相同前 N比特位(bit)的前缀的路由信息划分为一个路由发送组;或,所述第一网络设备将前N比特位在预设范围内的前缀的路由信息划分为一个路由发送组,所述N为大于或等于1的整数。
上述五种可能的实现方式并不构成对本申请技术方案的限定,本领域技术人员可以根 据实际情况自行设计。
在一种可能的设计中,所述基于UDP的BGP连接包括:基于快速UDP互联网连接(Quick UDP Internet Connection,QUIC)的BGP连接。
第二方面,提供了一种路由通告的方法,所述方法应用于包括第一网络设备和第二网 络设备的网络,所述第一网络设备与第二网络设备建立有基于UDP的BGP连接,所述方法 包括:第二网络设备接收来自所述第一网络设备的多个路由通告消息,所述多个路由通告 消息中的每个路由通告消息包括发送流的标识和消息序列号,所述消息序列号用于指示所 述路由通告消息在对应的发送流中的排序。发送流的标识和消息序列号在路由通告消息中 所携带的位置请参见上文,此处不再赘述。所述第二网络设备根据所述发送流的标识和消 息序列号按序处理所述多个路由通告消息,以保证网络的可靠性。
在一种可能的设计中,所述方法还包括:所述第二网络设备根据所述发送流的标识和 消息序列号判断所述多个路由通告消息是否发生丢包,提高传输可靠性。为了减少丢包现 象的出现,第二网络设备每接收到一个BGP update消息就可以向网络设备发送一个确认 (ACK)消息,若第二网络设备在预设时间段内没有接收到某个或某些BGP update消息对 应的ACK消息,就重新发送。
第三方面,提供了一种网络设备,所述网络设备应用于包括第一网络设备和第二网络 设备的网络系统,所述第一网络设备与第二网络设备建立有基于用户数据包协议UDP的边 界网关协议BGP连接,所述网络设备为所述第一网络设备,所述网络设备包括:处理单元, 用于获得一个或多个路由发送组,每个所述路由发送组包括一个或多个路由信息;所述处 理单元,还用于根据每个路由发送组分别生成至少一个路由通告消息,所述路由通告消息 分别包含与所述路由通告消息对应的路由发送组中的一条或多条路由信息;发送单元,用 于通过所述BGP连接向所述第二网络设备发送所述路由通告消息。
在一种可能的设计中,所述一个或多个路由发送组中的每个路由发送组分别对应一个 发送流;所述发送单元,用于通过所述BGP连接以并行发送的方式向所述第二网络设备发 送每个发送流对应的路由通告消息。
在一种可能的设计中,所述路由通告消息包括消息序列号,所述消息序列号用于指示 所述路由通告消息在对应的发送流中的排序。
在一种可能的设计中,所述路由通告消息还包括所述对应的发送流的标识。
在一种可能的设计中,所述发送流的标识和所述消息序列号携带在所述路由通告消息 的通用头中。
在一种可能的设计中,所述发送流的标识携带在所述通用头的流标识stream ID字段 中。
在一种可能的设计中,所述消息序列号携带在所述通用头的补偿offset字段中
在一种可能的设计中,所述处理单元获得一个或多个路由发送组包括:所述处理单元 将一个或多个地址族标识对应的路由信息划分为一个路由发送组;或,所述处理单元将一 个或多个虚拟路由转发实例对应的路由信息划分为一个路由发送组;或,所述处理单元将 一种或多种前缀对应的路由信息划分为一个路由发送组;或,所述处理单元将属于一个或 多个地址族标识的路由信息中的一种或多种前缀对应的路由信息划分为一个路由发送组; 或,所述处理单元将属于一个或多个虚拟路由转发实例的路由信息中的一种或多种前缀对 应的路由信息划分为一个路由发送组。
在一种可能的设计中,所述处理单元将一种或多种前缀对应的路由信息划分为一个路 由发送组包括:所述处理单元将具有相同前N比特位的前缀的路由信息划分为一个路由发 送组;或,所述处理单元将前N比特位在预设范围内的前缀的路由信息划分为一个路由发 送组,所述N为大于或等于1的整数。
在一种可能的设计中,所述路由通告消息为BGP更新消息。
第四方面,提供了一种网络设备,所述网络设备应用于包括第一网络设备和第二网络 设备的网络系统,所述第一网络设备与第二网络设备建立有基于UDP的BGP连接,所述网 络设备为所述第二网络设备,所述网络设备包括:接收单元,用于接收来自所述第一网络 设备的多个路由通告消息,所述多个路由通告消息中的每个路由通告消息包括发送流的标 识和消息序列号,所述消息序列号用于指示所述路由通告消息在对应的发送流中的排序; 处理单元,用于根据所述发送流的标识和消息序列号按序处理所述多个路由通告消息。
在一种可能的设计中,所述处理单元,用于根据所述发送流的标识和消息序列号判断 所述多个路由通告消息是否发生丢包。
第五方面,提供了一种网络设备,应用于包括多个网络设备的网络系统,多个网络设 备包括第一网络设备和第二网络设备,该网络设备为第一网络设备,该第一网络设备包括: 处理器和网络接口。网络接口用于报文的接收和发送。处理器用于执行前述第一方面或第 一方面的任意一种可能的设计中的方法。
在一种可能的设计中,该第一网络设备还包括存储器,存储器可以用于存储指令或程 序代码。处理器用于调用存储器中的指令或程序代码执行前述第一方面或第一方面的任意 一种可能的设计中的方法。
第六方面,提供了一种网络设备,应用于包括多个网络设备的网络系统,多个网络设 备包括第一网络设备和第二网络设备,该网络设备为第二网络设备,该第二网络设备包括: 处理器和网络接口。网络接口用于报文的接收和发送。处理器用于执行前述第二方面或第 二方面的任意一种可能的设计中的方法。
在一种可能的设计中,该第二网络设备还包括存储器,存储器可以用于存储指令或程 序代码。处理器用于调用存储器中的指令或程序代码执行前述第二方面或第二方面的任意 一种可能的设计中的方法。
第七方面,提供了一种网络系统,所述网络系统包括如第三方面所述的第一网络设备 和如第四方面所述的第二网络设备,或,包括如第五方面所述的第一网络设备或如第六方 面所述的第二网络设备。
第八方面,提供了一种计算机可读存储介质,包括指令、程序或代码,当其在计算机 上执行时,使得所述计算机执行如前述第一方面或第二方面任意一种可能的实现方式之一 所述的方法。
第九方面,提供了一种包括计算机指令的计算机程序产品,当该计算机程序产品在网 络设备上运行时,使得网络设备执行第一方面或第二方面的任意一种可能的实现方式之一 提供的方法。
第十方面,提供了一种芯片,包括存储器和处理器。存储器用于存储指令或程序代码。 处理器用于从存储器中调用并运行该指令或程序代码,以执行上述第一方面或第一方面的 任意一种可能的设计中的方法;或,处理器执行第二方面或第二方面任意一种可能的设计 中的方法。
第十一方面,提供了一种芯片,上述芯片包括处理器,但不包括存储器,处理器用于 读取并执行所述芯片外的存储器中存储的指令或程序代码,当指令或程序代码被执行时, 处理器执行第一方面或第一方面的任意一种可能的设计中的方法;或,处理器执行第二方 面或第二方面任意一种可能的设计中的方法。
附图说明
图1为本申请实施例提供的BGP网络架构示意图;
图2为本申请实施例提供的路由通告的方法的流程图;
图3a为本申请实施例提供的路由信息序列加入队列的示意图;
图3b为本申请实施例提供的BGP update消息的common head的格式示意图;
图4为本申请实施例提供的一种第一网络设备的结构示意图;
图5为本申请实施例提供的一种第二网络设备的结构示意图;
图6为本申请实施例提供的一种网络系统的结构示意图;
图7为本申请实施例提供的一种设备的结构示意图;
图8为本申请实施例提供的一种设备的结构示意图。
具体实施方式
传统技术中网络设备之间基于TCP建立BGP连接,基于该连接将路由信息排序生成对 应的路由通告消息。具体的,网络设备将多条路由信息加入一条队列中,并根据路由信息 在该队列中的排序生成对应的路由通告消息并发送。这种生成和发送路由通告消息的方法 效率较低,影响路由信息的更新速度。
例如,参见图1,该图为本申请实施例提供的BGP网络架构示意图。该网络架构包括网络设备101和网络设备102,网络设备101和网络设备102之间互为对等体。
按照传统技术方式,网络设备101和网络设备102先建立基于TCP连接的BGP会话,在完成上述步骤之后,网络设备101将向网络设备102发送的路由信息1、路由信息2和 路由信息3先后加入一条队列中。其中,路由信息1的前缀为1.1.1.1/24,路由信息2的 前缀为2.2.2.2/24,路由信息3的前缀为1.1.1.1/24。其中,路由信息1和路由信息2 为待发布的路由信息,路由信息3为待撤销的路由信息。网络设备101根据上述路由信息 在队列中的排序依次生成路由通告消息1、路由通告消息2和路由通告消息3。其中,路 由通告消息1包括路由信息1,用于发布前缀为1.1.1.1/24的路由信息;路由通告消息2 包括路由信息2,用于发布前缀为2.2.2.2/24的路由信息;路由通告消息3包括路由信息 3,用于撤销前缀为1.1.1.1/24的路由信息。然后,网络设备101先后向网络设备102发 送该路由通告消息1、路由通告消息2和路由通告消息3。
网络设备102在接收到路由通告消息1之后,生成或更新对应于前缀为1.1.1.1/24的转发表项;在接收到路由通告消息2之后,生成或更新对应于前缀为2.2.2.2/24的转 发表项;在接收到路由通告消息3之后,撤销对应于前缀为1.1.1.1/24的转发表项。
由于网络设备101依次生成上述三个路由通告消息,并发送给网络设备102,这种路 由通告消息的生成效率较为低下,影响转发表项的更新效率。
为了克服上述技术问题,本申请实施例提供了一种路由通告的方法及设备,用于提高 路由通告消息的生成效率。
本申请实施例提供的路由通告的方法可以应用于图1所示的网络架构。该网络架构中 的网络设备101和网络设备102可以是路由器(router)、交换机(switch)、具备路由功能的服务器等实体设备,也可以是具备路由或交换机功能的虚拟装置。网络设备101与网络设备102之间建立有基于用户数据包协议(User Datagram Protocol,UDP)的BGP连 接。作为建立UDP的BGP连接的一种可能的实现,网络设备101与网络设备102之间可以 建立基于QUIC的BGP连接。
参见图2,该图为本申请实施例提供的路由通告的方法的流程图。
该路由通告的方法包括如下步骤:
S201:第一网络设备获得一个或多个路由发送组。
在图2所示的实施例中,第一网络设备可以为图1所示实施例中的网络设备101。第一网络设备获取多个路由信息,并将多个路由信息按照预设规则划分为一个或多个路由发送组,每个路由发送组包括一个或多个路由信息。例如,该预设规则所涉及的特征例如可以包括地址族(address family)标识、虚拟路由转发(Virtual Routing Forwarding,VRF)标识、前缀等其中的一个或多个。
其中,地址族标识用于唯一标识地址族,例如互联网协议第四版(InternetProtocol version 4,IPv4)地址族、互联网协议第六版(Internet Protocol version 6,IPv6) 地址族、虚拟专用网络第四版(virtual private network version 4,VPNv4)地址族等。
VRF标识用于唯一标识虚拟专用网络(virtual private network,VPN)中的VRF实例。
例如VRF标识1用于唯一标识VRF实例1,VRF标识2用于唯一标识VRF实例2,VRF标识3用于唯一标识VRF实例3等。
前缀包括地址和掩码,例如前缀1.1.1.1/24包括地址1.1.1.1和掩码24。
上述列举的几种预设规则所涉及的特征并不构成对本申请技术方案的限定,本领域技 术人员还可以根据实际情况自行设计。
下面结合上文提到的三种特征介绍几种划分路由发送组的可能的实现方式:
实现方式一:仅根据地址族标识划分,同一个路由发送组对应一个或多个地址族标识, 即同一个路由发送组的路由信息属于一个或多个地址族。
例如属于IPv4地址族的路由信息属于路由发送组1,属于IPv6地址族的路由信息属 于路由发送组2,属于VPNv4地址族的路由信息属于路由发送组3。
再例如,属于IPv4地址族的路由信息和属于IPv6地址族的路由信息属于路由发送组 1,属于VPNv4地址族的路由信息属于路由发送组2。
实现方式二:仅根据VRF标识划分,同一个路由发送组对应一种或多种VRF标识。
例如,对应VRF标识1的路由信息属于路由发送组1,对应VRF标识2的路由信息属于路由发送组2,对应VRF标识3的路由信息属于路由发送组3。
再例如,对应VRF标识1的路由信息和对应VRF标识2的路由信息属于路由发送组1,对应VRF标识3的路由信息属于路由发送组2。
实现方式三:仅根据前缀划分,同一个路由发送组对应一种或多种前缀。
具体的,第一网络设备可以根据前缀的前N个比特位分别确定所述每个路由信息所属 的路由发送组,所述N为大于或等于1的整数,且小于或等于前缀的总长度。其中,前缀的总长度为128位,即N小于或等于128。
作为其中一种可能的实现方式,第一网络设备将前缀的前N个比特位内容相同的路由 信息划分为一个路由发送组。
例如,假设N为8,第一网络设备可以将前缀的前8个比特位为10的路由信息划分为一个路由发送组,将前缀的前8个比特位为11的路由信息划分为一个路由发送组,将前 缀的前8个比特位为20的路由信息划分为一个路由发送组。
作为另外一种可能的实现方式,第一网络设备将前缀的前N个比特位所属的比特位范 围确定所述每个路由信息所属的路由发送组。
例如,假设N为8,网络设备可以将前缀的前8个比特位属于比特位范围10-30的路由信息划分为一个路由发送组,将前缀的前8个比特位属于比特位范围40-60的路由信息划分为一个路由发送组,将前缀的前8个比特位属于比特位范围70-90的路由信息划分为一个路由发送组。
实现方式四:根据地址族标识和前缀划分,同一个路由发送组的路由信息属于一种或 多种地址族标识的一种或多种前缀。
本实现方式可以是上述实现方式一和实现方式三的组合,相关介绍请参见上文,此处 不再赘述。
例如,对应IPv4标识和前缀为1.1.1.1/24的路由信息划分为一个路由发送组,对应 IPv6标识和前缀为1.1.1.1/24的路由信息划分为一个路由发送组,对应VPNv4标识和前缀为1.1.1.0/24的路由信息划分为一个路由发送组。
实现方式五:根据VRF标识和前缀划分,同一个路由发送组的路由信息属于一种或多 种VRF标识的一种或多种前缀。
本实现方式可以是上述实现方式二和实现方式三的组合,相关介绍请参见上文,此处 不再赘述。
例如,对应VRF标识1和前缀的前8比特位在比特位范围10-30的路由信息划分为一个路由发送组,对应VRF标识1和前缀的前8比特位在比特位范围40-60的路由信息划分 为一个路由发送组,对应VRF标识3和前缀的前8比特位在比特位范围10-30的路由信息 划分为一个路由发送组。
上述五种可能的实现方式并不构成对本申请技术方案的限定,本领域技术人员可以根 据实际情况自行设计。
需要说明的是,对路由信息进行分类的基本原则是保证将同一条路由的路由信息分到 一个路由发送组中,这是因为如果将属于同一条路由的路由信息分到不同的路由发送组 中,后续在并行发送时无法保证属于同一条路由的路由信息会按照正确的顺序被对等体接 收,进而影响网络的可靠性。
S202:第一网络设备根据每个路由发送组分别生成至少一个路由通告消息。
在本申请实施例中,第一网络设备为每个路由发送组分别生成至少一个路由通告消 息。该路由通告消息可以是BGP更新(update)消息。其中,每个路由通告消息中可以包括与该路由通告消息对应的路由发送组中的一条或多条路由信息。若一个路由通告消息中包括多条路由信息,那么该多条路由信息可以均为待发布的路由信息,或者可以均为待撤销的路由信息。
例如,路由发送组1包括前缀为1.1.1.1/16的路由信息1、前缀为10.1.1.0/16的路由信息2以及前缀为1.1.1.0/16的路由信息3。其中,前缀为1.1.1.1/16的路由信息1 和前缀为10.1.1.0/16的路由信息2均为待发布的路由信息,前缀为1.1.1.1/16的路由 信息1为第一网络设备自身的路由信息,前缀为10.1.1.0/16的路由信息2为第一网络设 备学习到的路由信息,前缀为1.1.1.0/16的路由信息3为待撤销的路由信息。那么网络 设备可以将该前缀为1.1.1.1/16路由信息1和前缀为10.1.1.0/16的路由信息2打包为 BGP update消息1,将前缀为1.1.1.0/16的路由信息3打包为BGP update消息2。
可选的,第一网络设备可以将每个路由发送组的路由信息分别加入对应的队列,即每 个路由发送组对应一个队列,该队列内的路由信息按序排列,并且可以按照路由信息的排 序生成至少一个路由通告消息,从而保证发布路由信息或撤销路由信息的顺序是正确的。 保证发布路由信息或撤销路由信息的顺序正确,也就保证转发表项的信息正确,从而保证 报文的正常转发。
例如,在S201中第一网络设备先后获取的多个路由信息包括路由信息1、路由信息2、 路由信息3、路由信息4和路由信息5,其中,路由信息1、路由信息3和路由信息5属于 一条路由,即路由A;路由信息2和路由信息4属于另一条路由,即路由B。也就是说, 该多个路由信息包括两个路由信息序列,即路由信息序列1和路由信息序列2。其中,路 由信息序列1包括路由信息1、路由信息3和路由信息5,路由信息序列2包括路由信息2 和路由信息4。路由信息序列包括的路由信息需要按照顺序发送。
参见图3a,若第一网络设备将路由信息序列1和路由信息序列2划分为不同的路由发 送组,那么这两条路由信息序列将会进入两个不同的队列。第一网络设备在将路由信息序 列1中的路由信息加入队列1时,先将路由信息1加入队列1,再将路由信息3加入队列 1,最后将路由信息5加入队列1。第一网络设备在将路由信息序列2中的路由信息加入队 列2时,先将路由信息2加入队列2,再将路由信息4加入队列2。
若第一网络设备将路由信息序列1和路由信息序列2划分为相同的路由发送组,那么 这两条路由信息序列将会进入同一个队列,即队列3。第一网络设备可以先将路由信息序 列1中的路由信息依序加入该队列3,后将路由信息序列2中的路由信息依序加入该队列3。或者,第一网络设备可以将路由信息序列1的路由信息和路由信息序列2的路由信息 穿插加入队列3,但需要保证同一条路由信息序列中路由信息的先后顺序是不变的,例如 按照路由信息1、路由信息2、路由信息3、路由信息4和路由信息5的顺序将这些路由信 息先后加入队列3。
S203:第一网络设备通过所述BGP连接向所述第二网络设备发送所述路由通告消息。
在本申请实施例中,每个路由发送组可以对应一个发送流,由于第一网络设备和第二 网络设备是基于UDP协议建立的BGP连接,所以可选的,第一网络设备可以以并行发送的 方式向所述第二网络设备发送每个发送流对应的路由通告消息,也就是说,第一网络设备 可以同时向第二网络设备发送多个路由通告消息,提高路由通告消息的发送效率。
其中,发送流可以用队列的方式实现,每个发送流对应一个队列。即,第一网络设备 可以通过多个队列向第二网络设备同时发送路由通告消息。当有新的路由通告消息产生, 则加入该路由通告消息所属的发送流对应的队列,以便等待第一网络设备发送。
在本申请实施例中,为了保证第二网络设备能够正确的顺序接收路由通告消息,路由 通告消息中可以包括消息序列号,该消息序列号用于指示所述路由通告消息在对应的发送 流中的排序,以便第二网络设备能够按照正确的顺序接收该发送流对应的路由发送组的路 由通告消息。
消息序列号还可以用于第二网络设备判断是否丢包。为了减少丢包现象的出现,第二 网络设备每接收到一个BGP update消息就可以向网络设备发送一个确认(ACK)消息,若 第二网络设备在预设时间段内没有接收到某个或某些BGP update消息对应的ACK消息,就重新发送。
例如,网络设备101向网络设备102先后发送路由发送组1的BGP update消息1(消息序列号为1)、BGP update消息2(消息序列号为2)和BGP update消息3(消息序列号 为3),但网络设备102仅接收到BGP update消息1和BGP update消息3,没有接收到BGP update消息2,那么网络设备102确认BGP update消息2丢失。为了能够让网络设备102 重新发送BGPupdate消息2,网络设备102可以在接收到BGP update消息1和BGP update 消息3之后的预设时间段内向网络设备101发送ACK消息,该ACK消息携带有消息序列号 1和消息序列号3,以表示BGP update消息1和BGP update消息3已接收。网络设备101 在预设时间段内未接收到与BGP update消息2对应的ACK消息,则重新发送BGP update 消息2中的路由信息。
需要说明的是,重新发送的BGP update消息,其消息序列号可以和未成功发送的BGP update消息的消息序列号相同,也可以不同。
可选的,除了消息序列号以外,路由通告消息中还可以包括发送流的标识,该情况尤 其适用于第一网络设备向第二网络设备发送多个路由发送组的路由通告消息,以便第二网 络设备根据发送流的标识确认按照正确的顺序接收对应的路由发送组的路由通告消息以 及判断是否出现丢包。
例如,网络设备101向网络设备102先后发送路由发送组1(对应发送流标识1)的BGP update消息1(消息序列号为1)、BGP update消息2(消息序列号为2)和BGP update 消息3(消息序列号为3),以及先后发送路由发送组2(对应发送流标识2)的BGP update 消息1(消息序列号为1)、BGP update消息2(消息序列号为2)。但网络设备102仅接收 到路由发送组1的BGP update消息1和BGP update消息3以及路由发送组2的BGP update 消息2,没有接收到路由发送组1的BGP update消息2和路由发送组2的BGP update消 息1,那么网络设备102确认路由发送组1的BGP update消息2和路由发送组2的BGP update消息1丢失。为了能够让网络设备102重新发送未接收到的上述两个BGP update 消息,网络设备102可以在接收到路由发送组1的BGP update消息1、路由发送组1的 BGP update消息3以及路由发送组2的BGP update消息2之后的预设时间段内向网络设 备101发送ACK消息1和ACK消息2,其中,ACK消息1携带有发送流标识1以及消息序 列号1和消息序列号3,表示路由发送组1的BGPupdate消息1和BGP update消息3已 接收;ACK消息2携带有发送流标识2和消息序列号2,表示路由发送组2的BGP update 消息2已接收。网络设备101在预设时间段内未接收到与包括发送流标识1和消息序列号 2的ACK消息以及包括发送流标识2和消息序列号1的ACK消息,则重新发送对应的BGP update消息的路由信息。
在本申请实施例中,路由通告消息可以包括通用头(common head)。可选的,发送流 标识和所述消息序列号携带在所述BGP update消息的common head中。
参见图3b,该图为BGP update消息的common head的格式示意图。在该图中,BGPupdate 消息的common head包括流帧(stream frame)字段,该字段包括类型(type)字段、流 标识(stream identifier,steam ID)、补偿(offset)字段、长度(length)字段和流 数据(stream data)字段。其中,发送流标识可以携带在stream ID字段中,消息序列 号可以携带在offset字段中。
相对于传统技术网络设备将路由信息加入到一条队列排队生成路由通告消息,并通过 一条发送流发送的方案,本申请实施例将多个路由信息划分为一个或多个路由发送组,每 个路由发送组独立生成对应的路由通告消息,提高路由通告消息的生成效率。并且,多个 路由发送组的路由通告消息可以通过一个BGP会话的多条发送流并行发送,多个路由发送 组之间没有时序上的依赖关系,提高路由通告消息的发送效率。此外,多条发送流的路由 通告消息可以通过第一网络设备和第二网络设备之间的一条路径或多条路径传输,进一步 实现负载分担。此外,相对于传统技术基于TCP的BGP连接,基于UDP的BGP连接能够更 加快速的建立第一网络设备和第二网络设备之间的邻居关系,从而提高发送路由通告消息 的效率。
图4示出了上述实施例中所涉及的第一网络设备的一种可能的结构示意图,该设备400 可以实现图2所示实例中第一网络设备的功能。参阅图4,该网络设备400包括:处理单 元401和发送单元402。这些单元可以执行上述方法示例中第一网络设备的相应功能。处理单元401,用于支持设备400执行图2中S201和S202;发送单元402,用于支持网络设 备400执行图2中的S203。举例来说,处理单元401,用于获得一个或多个路由发送组, 每个所述路由发送组包括一个或多个路由信息;根据每个路由发送组分别生成至少一个路 由通告消息,所述路由通告消息分别包含与所述路由通告消息对应的路由发送组中的一条 或多条路由信息;发送单元402,用于通过所述BGP连接向所述第二网络设备发送所述路 由通告消息。具体执行过程请参考上述图2所示实施例中相应步骤的详细描述,这里不再 一一赘述。
图5示出了上述实施例中所涉及的第二网络设备的一种可能的结构示意图,该设备500 可以实现图2所示实例中第二网络设备的功能。参阅图5,该网络设备500包括:接收单 元501和处理单元502。这些单元可以执行上述方法示例中第二网络设备的相应功能。举例来说,接收单元501,用于接收来自所述第一网络设备的多个路由通告消息,所述多个 路由通告消息中的每个路由通告消息包括发送流的标识和消息序列号,所述消息序列号用于指示所述路由通告消息在对应的发送流中的排序;处理单元502,用于根据所述发送流的标识和消息序列号按序处理所述多个路由通告消息。具体执行过程请参考上述图2所示实施例中相应步骤的详细描述,这里不再一一赘述。
需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式。本申请实施例中的各功能单元可以集成在一个处理单 元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。 例如,上述实施例中,获取单元和处理单元可以是同一个单元,也不同的单元。上述集成 的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
参阅图6所示,发明实施例提供了一种网络系统600,该系统600用于实现前述方法实施例中的路由通告的方法。该系统600包括网络设备601和网络设备602。网络设备601 可以实现图2所示的实施例中的第一网络设备的功能,网络设备602可以实现图2所示的 实施例中第二网络设备的功能。具体执行过程请参考上述图2所示实施例中相应步骤的详 细描述,这里不再一一赘述。
图7是本申请实施例提供的一种设备700的结构示意图。图4中的网络设备400、图5中的网络设备500可以通过图7所示的设备来实现。参见图7,该设备700包括至少一 个处理器701,通信总线702以及至少一个网络接口704,可选地,该设备700还可以包 括存储器703。
处理器701可以是一个通用中央处理器(central processing unit,CPU)、特定应用集成电路(application-specific integrated circuit,ASIC)或一个或多个用于控 制本申请方案程序执行的集成电路(integrated circuit,IC)。处理器可以用于对报文 进行处理,以实现本申请实施例中提供的路由通告的方法。比如,当图2中的第一网络设 备通过图7所示的设备来实现时,该处理器可以用于获得一个或多个路由发送组,每个所 述路由发送组包括一个或多个路由信息;根据每个路由发送组分别生成至少一个路由通告 消息。又比如,当图2中的第二网络设备通过图7所示的设备来实现时,该处理器可以用 于根据所述发送流的标识和消息序列号按序处理所述多个路由通告消息。具体功能实现可 参考方法实施例中第二网络设备的处理部分。
通信总线702用于在处理器701、网络接口704和存储器703之间传送信息。
存储器703可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,存储器703还可以是随机存取存储器(random accessmemory, RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是只读光盘(compact disc read-only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、 数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或 存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但 不限于此。存储器703可以是独立存在,通过通信总线702与处理器701相连接。存储器 703也可以和处理器701集成在一起。
可选地,存储器703用于存储执行本申请方案的程序代码或指令,并由处理器701来 控制执行。处理器701用于执行存储器703中存储的程序代码或指令。程序代码中可以包括一个或多个软件模块。可选地,处理器701也可以存储执行本申请方案的程序代码或指令,在这种情况下处理器701不需要到存储器703中读取程序代码或指令。
网络接口704可以为收发器一类的装置,用于与其它设备或通信网络通信,通信网络 可以为以太网、无线接入网(RAN)或无线局域网(wireless local area networks,WLAN) 等。在本申请实施例中,网络接口704可以用于接收分段路由网络中的其他节点发送的报 文,也可以向分段路由网络中的其他节点发送报文。网络接口704可以为以太接口(ethernet)接口、快速以太(fast ethernet,FE)接口或千兆以太(gigabit ethernet, GE)接口等。
在具体实现中,作为一种实施例,设备700可以包括多个处理器,例如图7中所示的处理器701和处理器705。这些处理器中的每一个可以是一个单核(single-CPU)处理器, 也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、 和/或用于处理数据(例如计算机程序指令)的处理核。
图8是本申请实施例提供的一种设备800的结构示意图。图2中的第一网络设备和第 二网络设备可以通过图8所示的设备来实现。参见图8所示的设备结构示意图,设备800包括主控板和一个或多个接口板。主控板与接口板通信连接。主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板包括CPU 和存储器,主控板负责对设备800中各个组件的控制和管理,包括路由计算、设备管理和 维护功能。接口板也称为线处理单元(line processing unit,LPU)或线卡(line card), 用于接收和发送报文。在一些实施例中,主控板与接口板之间或接口板与接口板之间通过 总线通信。在一些实施例中,接口板之间通过交换网板通信,在这种情况下设备800也包 括交换网板,交换网板与主控板、接口板通信连接,交换网板用于转发接口板之间的数据, 交换网板也可以称为交换网板单元(switch fabric unit,SFU)。接口板包括CPU、存储 器、转发引擎和接口卡(interface card,IC),其中接口卡可以包括一个或多个网络接 口。网络接口可以为Ethernet接口、FE接口或GE接口等。CPU与存储器、转发引擎和接 口卡分别通信连接。存储器用于存储转发表。转发引擎用于基于存储器中保存的转发表转 发接收到的报文,如果接收到的报文的目的地址为设备800的IP地址,则将该报文发送 给主控板或接口板的CPU进行处理;如果接收到的报文的目的地址不是设备800的IP地 址,则根据该目的地查转发表,如果从转发表中查找到该目的地址对应的下一跳和出接口, 将该报文转发到该目的地址对应的出接口。转发引擎可以是网络处理器(network processor,NP)。接口卡也称为子卡,可安装在接口板上,负责将光电信号转换为数据帧, 并对数据帧进行合法性检查后转发给转发引擎处理或接口板CPU。在一些实施例中,CPU 也可执行转发引擎的功能,比如基于通用CPU实现软转发,从而接口板中不需要转发引擎。 在一些实施例中,转发引擎可以通过ASIC或现场可编程门阵列(field programmable gate array,FPGA)实现。在一些实施例中,存储转发表的存储器也可以集成到转发引擎中, 作为转发引擎的一部分。
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述 存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实 现上述图2所示实施例中第一网络设备或第二网络设备的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可 以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软 件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在 一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处 理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是FPGA,可以是ASIC,还可以是系统芯片(system onchip, SoC),还可以是CPU,还可以是NP,还可以是数字信号处理电路(digital signalprocessor, DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器 (programmable logic device,PLD)或其他集成芯片。
应理解,上述方法实施例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软 件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行 完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时, 使得计算机执行前述实施例中的方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、 “第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这 样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描 述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在 于覆盖不排他的包括,例如,包括了一系列步骤或单元的过程、方法、系统、产品或设备 不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、 方法、产品或设备固有的其它步骤或单元。
本申请中“至少一项(个)”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c, b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。本申请中认为“A和/或B” 包括单独A,单独B,和A+B。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装 置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通 过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑模块划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显 示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的 部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要获取其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各模块单元可以集成在一个处理单元中,也可以是各 个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既 可以采用硬件的形式实现,也可以采用软件模块单元的形式实现。
所述集成的单元如果以软件模块单元的形式实现并作为独立的产品销售或使用时,可 以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者 说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现 出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部 或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、 随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码 的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可 以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存 储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计 算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一 个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可 用介质。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细 说明,所应理解的是,以上所述仅为本发明的具体实施方式而已。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述 实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述 各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修 改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (33)
1.一种路由通告的方法,其特征在于,所述方法应用于包括第一网络设备和第二网络设备的网络,所述第一网络设备与第二网络设备建立有基于用户数据包协议UDP的边界网关协议BGP连接,所述方法包括:
所述第一网络设备获得一个或多个路由发送组,每个所述路由发送组包括一个或多个路由信息;
所述第一网络设备根据每个路由发送组分别生成至少一个路由通告消息,所述路由通告消息分别包含与所述路由通告消息对应的路由发送组中的一条或多条路由信息;
所述第一网络设备通过所述BGP连接向所述第二网络设备发送所述路由通告消息。
2.根据权利要求1所述的方法,其特征在于,所述第一网络设备获得一个或多个路由发送组包括:
所述第一网络设备将一个或多个地址族标识对应的路由信息划分为一个路由发送组。
3.根据权利要求1所述的方法,其特征在于,所述第一网络设备获得一个或多个路由发送组包括:
所述第一网络设备将一个或多个虚拟路由转发实例对应的路由信息划分为一个路由发送组。
4.根据权利要求1所述的方法,其特征在于,所述第一网络设备获得一个或多个路由发送组包括:
所述第一网络设备将一种或多种前缀对应的路由信息划分为一个路由发送组。
5.根据权利要求4所述的方法,其特征在于,所述第一网络设备将一种或多种前缀对应的路由信息划分为一个路由发送组包括:
所述第一网络设备将具有相同前N比特位的前缀的路由信息划分为一个路由发送组;或,
所述第一网络设备将前N比特位在预设范围内的前缀的路由信息划分为一个路由发送组,所述N为大于或等于1的整数。
6.根据权利要求1所述的方法,其特征在于,所述第一网络设备获得一个或多个路由发送组包括:
所述第一网络设备将属于一个或多个地址族标识的路由信息中的一种或多种前缀对应的路由信息划分为一个路由发送组。
7.根据权利要求1所述的方法,其特征在于,所述第一网络设备获得一个或多个路由发送组包括:
所述第一网络设备将属于一个或多个虚拟路由转发实例的路由信息中的一种或多种前缀对应的路由信息划分为一个路由发送组。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述一个或多个路由发送组中的每个路由发送组分别对应一个发送流;
所述第一网络设备通过所述BGP连接向所述第二网络设备发送所述路由通告消息包括:
所述第一网络设备通过所述BGP连接以并行发送的方式向所述第二网络设备发送每个发送流对应的路由通告消息。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述路由通告消息包括消息序列号,所述消息序列号用于指示所述路由通告消息在对应的发送流中的排序。
10.根据权利要求9所述的方法,其特征在于,所述路由通告消息还包括所述对应的发送流的标识。
11.根据权利要求10所述的方法,其特征在于,所述发送流的标识和所述消息序列号携带在所述路由通告消息的通用头中。
12.根据权利要求11所述的方法,其特征在于,所述发送流的标识携带在所述通用头的流标识stream ID字段中。
13.根据权利要求11所述的方法,其特征在于,所述消息序列号携带在所述通用头的补偿offset字段中。
14.根据权利要求1-13任一项所述的方法,其特征在于,所述第一网络设备与第二网络设备建立有基于UDP的BGP连接包括:
所述第一网络设备与第二网络设备建立有基于快速UDP互联网连接QUIC的BGP连接。
15.根据权利要求1-14任一项所述的方法,其特征在于,所述路由通告消息为BGP更新消息。
16.一种网络设备,其特征在于,所述网络设备应用于包括第一网络设备和第二网络设备的网络系统,所述第一网络设备与第二网络设备建立有基于用户数据包协议UDP的边界网关协议BGP连接,所述网络设备为所述第一网络设备,所述网络设备包括:
处理单元,用于获得一个或多个路由发送组,每个所述路由发送组包括一个或多个路由信息;
所述处理单元,还用于根据每个路由发送组分别生成至少一个路由通告消息,所述路由通告消息分别包含与所述路由通告消息对应的路由发送组中的一条或多条路由信息;
发送单元,用于通过所述BGP连接向所述第二网络设备发送所述路由通告消息。
17.根据权利要求16所述的网络设备,其特征在于,所述处理单元获得一个或多个路由发送组包括:
所述处理单元将一个或多个地址族标识对应的路由信息划分为一个路由发送组。
18.根据权利要求16所述的网络设备,其特征在于,所述处理单元获得一个或多个路由发送组包括:
所述处理单元将一个或多个虚拟路由转发实例对应的路由信息划分为一个路由发送组。
19.根据权利要求16所述的网络设备,其特征在于,所述处理单元获得一个或多个路由发送组包括:
所述处理单元将一种或多种前缀对应的路由信息划分为一个路由发送组。
20.根据权利要求19所述的网络设备,其特征在于,所述处理单元将一种或多种前缀对应的路由信息划分为一个路由发送组包括:
所述处理单元将具有相同前N比特位的前缀的路由信息划分为一个路由发送组;或,
所述处理单元将前N比特位在预设范围内的前缀的路由信息划分为一个路由发送组,所述N为大于或等于1的整数。
21.根据权利要求16所述的网络设备,其特征在于,所述处理单元获得一个或多个路由发送组包括:
所述处理单元将属于一个或多个地址族标识的路由信息中的一种或多种前缀对应的路由信息划分为一个路由发送组。
22.根据权利要求16所述的网络设备,其特征在于,所述处理单元获得一个或多个路由发送组包括:
所述处理单元将属于一个或多个虚拟路由转发实例的路由信息中的一种或多种前缀对应的路由信息划分为一个路由发送组。
23.根据权利要求16-22任一项所述的网络设备,其特征在于,所述一个或多个路由发送组中的每个路由发送组分别对应一个发送流;
所述发送单元,用于通过所述BGP连接以并行发送的方式向所述第二网络设备发送每个发送流对应的路由通告消息。
24.根据权利要求16-23任一项所述的网络设备,其特征在于,所述路由通告消息包括消息序列号,所述消息序列号用于指示所述路由通告消息在对应的发送流中的排序。
25.根据权利要求24所述的网络设备,其特征在于,所述路由通告消息还包括所述对应的发送流的标识。
26.根据权利要求25所述的网络设备,其特征在于,所述发送流的标识和所述消息序列号携带在所述路由通告消息的通用头中。
27.根据权利要求26所述的网络设备,其特征在于,所述发送流的标识携带在所述通用头的流标识stream ID字段中。
28.根据权利要求26所述的网络设备,其特征在于,所述消息序列号携带在所述通用头的补偿offset字段中。
29.根据权利要求16-28任一项所述的方法,其特征在于,所述第一网络设备与第二网络设备建立有基于UDP的BGP连接包括:
所述第一网络设备与第二网络设备建立有基于快速UDP互联网连接QUIC的BGP连接。
30.根据权利要求16-29任一项所述的网络设备,其特征在于,所述路由通告消息为BGP更新消息。
31.一种网络系统,其特征在于,所述网络系统包括如权利要求16至30任一项所述的第一网络设备和第二网络设备。
32.一种计算机可读存储介质,其特征在于,包括指令、程序或代码,当其在计算机上执行时,使得所述计算机执行如权利要求1至16任一权利要求所述的方法。
33.一种芯片,其特征在于,包括存储器和处理器,存储器用于存储指令或程序代码,处理器用于从存储器中调用并运行该指令或程序代码,以执行如权利要求1至16任一权利要求所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21905087.9A EP4246915A4 (en) | 2020-12-15 | 2021-08-16 | ROUTING ADVERTISING METHOD AND APPARATUS |
PCT/CN2021/112698 WO2022127154A1 (zh) | 2020-12-15 | 2021-08-16 | 一种路由通告的方法及设备 |
US18/334,444 US20230344745A1 (en) | 2020-12-15 | 2023-06-14 | Route advertisement method and device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011482071 | 2020-12-15 | ||
CN2020114820711 | 2020-12-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114640617A true CN114640617A (zh) | 2022-06-17 |
Family
ID=81946433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110218459.9A Pending CN114640617A (zh) | 2020-12-15 | 2021-02-26 | 一种路由通告的方法及设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230344745A1 (zh) |
EP (1) | EP4246915A4 (zh) |
CN (1) | CN114640617A (zh) |
WO (1) | WO2022127154A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8634316B2 (en) * | 2010-10-19 | 2014-01-21 | At&T Intellectual Property I, L.P. | Methods and apparatus to utilize route aggregation for exchanging routes in a communication network |
CN104486228B (zh) * | 2014-12-25 | 2017-12-08 | 新华三技术有限公司 | 一种路由更新的方法及路由更新装置 |
US10594592B1 (en) * | 2017-09-29 | 2020-03-17 | Juniper Networks, Inc. | Controlling advertisements, such as Border Gateway Protocol (“BGP”) updates, of multiple paths for a given address prefix |
CN108390822B (zh) * | 2018-03-13 | 2021-01-26 | 新华三技术有限公司 | 路由发布方法和装置 |
-
2021
- 2021-02-26 CN CN202110218459.9A patent/CN114640617A/zh active Pending
- 2021-08-16 EP EP21905087.9A patent/EP4246915A4/en active Pending
- 2021-08-16 WO PCT/CN2021/112698 patent/WO2022127154A1/zh unknown
-
2023
- 2023-06-14 US US18/334,444 patent/US20230344745A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022127154A1 (zh) | 2022-06-23 |
EP4246915A4 (en) | 2024-01-10 |
EP4246915A1 (en) | 2023-09-20 |
US20230344745A1 (en) | 2023-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3197107A1 (en) | Message transmission method and apparatus | |
JP7403635B2 (ja) | Srネットワークでパケットを転送するための方法、装置、及びシステム | |
JP2017050774A (ja) | ゲートウェイ装置、および演算装置 | |
CN108471390B (zh) | 业务报文跨板处理系统及业务报文的重定向方法 | |
CN114465946A (zh) | 获取转发表项的方法、装置以及系统 | |
CN112787922A (zh) | 一种报文处理的方法、网络节点和系统 | |
EP2337275B1 (en) | Method of automatically discovering an adjacent network node | |
EP4283938A1 (en) | Packet forwarding method, packet processing method, and device | |
CN112822097A (zh) | 报文转发的方法、第一网络设备以及第一设备组 | |
WO2019157476A1 (en) | Binding osi layer 3 ip connections to osi layer 2 for mesh networks | |
CN114640617A (zh) | 一种路由通告的方法及设备 | |
CN113285878B (zh) | 负载分担的方法、第一网络设备 | |
CN114640615B (zh) | 一种路由通告方法、路由生成方法及设备 | |
CN114124833A (zh) | 一种控制报文发送的方法、网路设备和系统 | |
CN114124753B (zh) | 一种报文发送方法及设备 | |
CN107276774B (zh) | 一种组播报文传输方法以及转发设备 | |
WO2023246541A1 (zh) | 复用目的节点标识的方法、装置以及第一设备 | |
CN108965126B (zh) | 一种报文转发方法及装置 | |
CN114338768A (zh) | 一种建立会话的方法及网络设备 | |
WO2023169364A1 (zh) | 路由生成方法、数据报文的转发方法及装置 | |
US9537750B2 (en) | Multicast router topology discovery | |
WO2022228293A1 (zh) | 一种发送报文的方法、处理报文的方法及设备 | |
WO2022160666A1 (zh) | 一种信息泛洪方法及设备 | |
CN116800662A (zh) | 报文处理方法、装置、设备及存储介质 | |
CN116132364A (zh) | 报文传输方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |