CN109962846A - 路由协议报文的处理方法及装置 - Google Patents
路由协议报文的处理方法及装置 Download PDFInfo
- Publication number
- CN109962846A CN109962846A CN201711425078.8A CN201711425078A CN109962846A CN 109962846 A CN109962846 A CN 109962846A CN 201711425078 A CN201711425078 A CN 201711425078A CN 109962846 A CN109962846 A CN 109962846A
- Authority
- CN
- China
- Prior art keywords
- network
- edge device
- routing protocol
- protocol packet
- network edge
- 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
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000012545 processing Methods 0.000 title claims abstract description 62
- 238000003672 processing method Methods 0.000 claims abstract description 22
- 208000033748 Device issues Diseases 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 23
- 238000004590 computer program Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 229920003266 Leaf® Polymers 0.000 description 5
- 238000005538 encapsulation Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 102100029203 F-box only protein 8 Human genes 0.000 description 3
- 101100334493 Homo sapiens FBXO8 gene Proteins 0.000 description 3
- 101100537375 Homo sapiens TMEM107 gene Proteins 0.000 description 3
- 102100036728 Transmembrane protein 107 Human genes 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- 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/18—Loop-free operations
-
- 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]
-
- 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/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/23—Bit dropping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请实施例公开了一种路由协议报文的处理方法及装置。所述方法应用于第一数据中心DC的第一网络边缘设备中。所述第一网络边缘设备向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到所述路由协议报文中,所述路由协议报文用于使所述第二网络边缘设备学习到所述第一路由协议报文后,根据所述路由协议报文的第一连接属性标识序列确定所述路由协议报文的路由是否存在环路可能。本申请实施例中,边界网络边缘设备能够基于接收到的路由协议报文所所携带的网络连接属性标识自动确定该路由协议报文的路由是否存在环路可能,避免了形成路由协议报文的环路,进而避免数据报文环路。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种路由协议报文的处理方法及装置。
背景技术
随着云计算以及大数据等技术的快速发展,以云计算、虚拟化等技术为基础的各种规模化运营的数据中心(data center,DC)陆续出现,数据中心网络(data centernetwork,DCN)用于连接数据中心内的各种资源。为满足跨地域运营、异地灾备等场景,越来越多的企业通常在多地域部署多个DC,不同DC之间要协同运转,就需要相互之间交互信息。数据中心互联(Data Center Interconnect,DCI)网络是实现不同DC内的主机(服务器)之间互相通信的一种解决方案。
DC多是基于虚拟局域网(virtual local area network,VLAN)技术发展起来的,如虚拟扩展局域网(Virtual eXtensible Local Area Network,VXLAN)、灵活虚拟局域网络(Stacked VLAN,QinQ)、虚拟专用局域网业务(Virtual Private LAN Service,VPLS)网络等。
目前,不同DCN中用作三层网关的网络边缘设备之间通过建立网际协议(InternetProtocol,IP)隧道,将二层数据报文封装在三层报文中,跨越中间的三层网络,实现两个DCN间二层数据的互通。这种隧道就像一个虚拟的桥,将多个DC的二层网络贯穿在一起。例如对于VXLAN,DC之间可以采用三段式VXLAN方案实现,该方案通过在两个DC的边界VXLAN隧道端点(VXLAN Tunnel End Point,VTEP)之间建立VXLAN隧道(VXLAN-DCI隧道)实现DC之间的通信,同一DC内主机之间的通信可以通过建立DC内的VTEP之间的VXLAN隧道(VXLAN-DCN隧道)来实现通信。其中,VTEP用于为报文添加VXLAN隧道头,得到VXLAN报文,或者从VXLAN报文头中删除VXLAN隧道头,终结VXLAN隧道。
传统的IP隧道在传输报文时,为了避免路由环路和丢包,网络边缘设备需要支持水平分割特性,即网络边缘设备从一个隧道(VXLAN-DCI隧道或VXLAN-DCN隧道)接收到报文后,不会再将该报文发送至相同类型的另一个隧道。但为了实现DC内部服务器之间以及不同DC之间的数据转发,就需要关闭网络边缘设备上的水平分割特性,但这样就可能导致从一个DC发出的报文又回到该DC中,会导致在多个DC互联时存在环路的风险,。
发明内容
本申请提供了一种路由协议报文的处理方法及装置,能够使网络边缘设备在接收到路由协议报文时,确定出协议报文的路由是否存在环路可能。
第一方面,本申请提供了一种路由协议报文的处理方法,所述方法应用于第一数据中心DC的第一网络边缘设备中,所述第一网络边缘设备为边界网络边缘设备或非边界网络边缘设备。所述第一网络边缘设备向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到所述路由协议报文中,所述路由协议报文用于使所述第二网络边缘设备学习到所述路由协议报文后,根据所述路由协议报文的第一连接属性标识序列确定所述路由协议报文的路由是否存在环路可能。其中,所述第二网络边缘设备为边界网络边缘设备,所述第一网络连接属性标识为第一标识或第二标识,所述第一标识用于标识所述第一网络边缘设备和所述第二网络边缘设备属于同一DC,所述第二标识用于标识所述第一网络边缘设备和所述第二网络边缘设备不属于同一DC,所述第一连接属性标识序列为所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识所形成的序列,所述第一连接属性标识序列包括所述第一网络连接属性标识。
本申请中,DC的网络边缘设备通过在发送路由协议报文之前,将用于标识本网络边缘设备与对端的边界网络边缘设备之间网络连接属性标识添加至路由协议报文中,从而使对端的边界网络边缘设备在接收到该路由协议报文时,能够自动根据该路由协议报文中携带的所有网络连接属性标识确定出该路由协议报文是否存在环路的风险。通过本申请,从网络控制平面上避免了数据报文转发出现环路的可能。
结合第一方面,在一种可能的实施方式中,若所述第一网络边缘设备为边界网络边缘设备,所述第一网络边缘设备向第二网络边缘设备发布第一路由协议报文之前,所述第一网络边缘设备接收所述路由协议报文,其中,所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识。所述第一网络边缘设备根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到第二连接属性标识序列,所述第二连接属性标识序列不包括所述第一网络连接属性标识。所述第一网络边缘设备根据所述第二连接属性标识序列确定所述路由协议报文的路由是否存在环路可能;若所述第一网络边缘设备确定所述路由协议报文的路由不存在环路可能,则所述第一网络边缘设备将所述第一网络连接属性标识添加到所述路由协议报文中。
结合第一方面,在一种可能的实施方式中,若所述第一网络边缘设备确定所述路由协议报文的路由存在环路可能,所述第一网络边缘设备丢弃所述路由协议报文。
结合第一方面,在一种可能的实施方式中,若所述第二连接属性标识序列同时满足以下第一条件和第二条件,则所述第一网络边缘设备确定所述路由协议报文的路由存在环路可能,若所述第二连接属性标识序列不同时满足所述第一条件和第二条件,则确定所述路由协议报文的路由不存在环路可能;所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
结合第一方面,在一种可能的实施方式中,所述第一网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
结合第一方面,在一种可能的实施方式中,所述将第一网络连接属性标识添加到所述路由协议报文中之前,所述第一网络边缘设备根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识。所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述网络连接关系属性表为基于所述第一网络边缘设备的邻居关系配置的数据表,所述邻居网络边缘设备包括所述第二网络边缘设备。。
本申请中,通过网络边缘设备中的用于存储第一网络边缘设备与其第一邻居网络边缘设备的网络连接属性标识的数据表,使第一网络边缘设备在向其邻居网络边缘设备发送路由协议报文时,能够根据该数据表快速确定出对应的网络连接属性标识,并添加到路由协议报文中,提高了路由协议报文的处理效率。
结合第一方面,在一种可能的实施方式中,所述网络连接关系属性表的每个表项中存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个邻居网络边缘设备的IP地址的对应关系;所述第一网络边缘设备在所述网络连接关系属性表中查找与所述第二网络边缘设备的IP地址相匹配的第一网络连接属性标识。
结合第一方面,在一种可能的实施方式中,所述虚拟局域网为以下网络中的任一网络:VXLAN、QinQ、VPLS网络。
第二方面,本申请提供了一种路由协议报文的处理方法,所述方法应用于第一数据中心DC的第一网络边缘设备上,所述第一网络边缘设备为边界网络边缘设备。
所述第一网络边缘设备接收第二网络边缘设备发布的路由协议报文,其中,所述第二网络边缘设备为第二DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备。所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识,所述网络连接属性标识为第一标识或第二标识,所述第一标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备属于同一DC,所述第二标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备不属于同一DC;所述第一网络边缘设备根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到连接属性标识序列;所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由是否存在环路可能。
结合第二方面,在一种可能的实施方式中,若所述连接属性标识序列同时满足以下第一条件和第二条件,则所述第一网络边缘设备确定所述路由协议报文的路由存在环路可能,若所述连接属性标识序列不同时满足所述第一条件和所述第二条件,则所述第一网络边缘设备确定所述路由协议报文的路由不存在环路可能。所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个。所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
结合第二方面,在一种可能的实施方式中,若所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由不存在环路可能,所述第一网络边缘设备将第一网络连接属性标识添加到所述路由协议报文中的所述依次添加的网络连接属性标识之后;所述第一网络边缘设备将添加后的所述路由协议报文发布至第三网络边缘设备。其中,所述第一网络连接属性标识为所述第一网络边缘设备与所述第三网络边缘设备之间的网络连接属性标识,所述第三网络边缘设备为第三DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备。
结合第二方面,在一种可能的实施方式中,所述第一网络边缘设备将第一网络连接属性标识添加到所述路由协议报文之前,所述第一网络边缘设备根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识;其中,所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述网络连接关系属性表为基于所述第一网络边缘设备的邻居关系配置的数据表,所述邻居网络边缘设备包括所述第三网络边缘设备。
结合第二方面,在一种可能的实施方式中,所述网络连接关系属性表的每个表项存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个邻居网络边缘设备的IP地址的对应关系。所述第一网络边缘设备在所述网络连接关系属性表中查找与所述第三网络边缘设备的IP地址相对应的第一网络连接属性标识。
结合第二方面,在一种可能的实施方式中,若所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由存在环路可能,所述第一网络边缘设备丢弃所述路由协议报文。
结合第二方面,在一种可能的实施方式中,所述每个网络边缘设备依次添加的网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
第三方面,本申请提供了一种路由协议报文的处理装置,所述处理装置包括用于实现所述第一方面及其各实现方式中的方法的功能模块。
第四方面,本申请提供了一种路由协议报文的处理装置,所述装置包括用于实现所述第二方面及其各实现方式中的方法的功能模块。
第五方面,本申请提供了一种网络边缘设备,所述网络边缘设备包括处理器和存储器;所述存储器用于存储可执行的计算机程序代码;所述处理器用于读取所述计算机程序代码来运行与所述计算机程序代码对应的计算机程序,以用于执行如本申请第一方面的任一种可能的实施方式中的路由协议报文的处理方法。
第六方面,本申请提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如本申请第一方面的任一种可能的实施方式中的路由协议报文的处理方法。
第七方面,本申请提供了一种网络边缘设备,所述网络边缘设备包括处理器和存储器;所述存储器所述存储器用于存储可执行的计算机程序代码;所述处理器用于读取所述计算机程序代码来运行与所述计算机程序代码对应的计算机程序,以用于执行如本申请第二方面的任一种可能的实施方式中的路由协议报文的处理方法。
第八方面,本申请提供了一种计算机可读存储介质,所述可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如本申请第二方面的任一种可能的实施方式中的路由协议报文的处理方法。
附图说明
图1示出了两个数据中心通过DCI转发报文的过程示意图;
图2示出了多个数据中心互联出现报文转发环路的示意图;
图3示出了本申请实施例提供的一种网络架构的示意图;
图4示出了本申请实施例提供的一种网络边缘设备的结构示意图;
图5示出了根据本申请实施例的一种路由协议报文的处理方法的流程示意图;
图6示出了根据本申请实施例的扩展一次类型长度值(Type Length Value,TLV)字段的BGP EVPN协议报文的结构示意图;
图7示出了根据本申请实施例的TLV字段的结构示意图;
图8示出了根据本申请实施例的扩展两次TLV字段的BGP EVPN协议报文的结构示意图;
图9示出了根据本申请实施例的一种路由协议报文的处理方法的流程示意图;
图10示出了根据本申请一实施例的一种路由协议报文的处理装置的框示意性框图;
图11示出了根据本申请另一实施例的一种路由协议报文的处理装置的示意性框图;
图12示出了根据本申请再一实施例的一种路由协议报文的处理装置的示意性框图;
图13示出了根据本申请一实施例的一种路由协议报文的处理装置的示意性框图;
图14示出了根据本申请再一实施例的一种路由协议报文的处理装置的示意性框图;
图15示出了根据本申请又一实施例的一种路由协议报文的处理装置的示意性框图;
图16示出了根据本申请实施例提供的一种网络边缘设备的示意性框图。
具体实施方式
本申请实施例提供了一种路由协议报文处理方法、装置、设备和存储介质,可以用于DC的网络边缘设备中,该DC可以采用VXLAN、QinQ、VPLS网络等多种网络架构。同一DC内的网络边缘设备之间通过DCN隧道通信。不同DC的网络边缘设备之间通过DCI隧道通信。本申请实施例的方法及装置,能够在DC互联时,及时识别出网络配置错误,避免网络环路的发生。
网络边缘设备可以是DC中作为接入设备的网络边缘设备,也可以是DC中用于连接DC的网络边缘设备。本申请中,将作为接入设备的网络边缘设备被称为非边界网络边缘设备,将用于连接其他DC的网络边缘设备称为边界网络边缘设备。
可以理解的是,对于不同的虚拟局域网类型,网络边缘设备的类型和/或名称也可能不同。例如,在VXLAN中,网络边缘设备指是指DC中的VTEP,则DC中的网络边缘设备可以包括边界VTEP和非边界VTEP。对于QinQ网络、VPLS网络或多链接透明互联(TransparentInterconnection of Lots of Links,TRILL)网络,网络边缘设备为运营商网络边缘设备,如VPLS网络中的运营商边缘设备(provider edge,PE)、TRILL网络中的边缘路由桥(routing bridge,RB)设备等。相应地,VPLS中的网络边缘设备可以包括边界PE和非边界PE,TRILL网络中的网络边缘设备可以包括边界RB和非边缘RB。
本申请图1示出了VXLAN中两个DC之间通过DCI转发报文的过程示意图。如图1所示,A1、B1、C1、D1和E1为DC1中的VTEP,A2、B2、C2、D2和E2为DC2中的VTEP。其中,A1和B1为DC1中作为DC1连接DC2的边界VTEP,C1、D1和E1为DC1中作为接入设备的非边界VTEP,A2和B2为DC2中作为DC2连接DC1的边界VTEP,C2、D2和E2为DC2中作为接入设备的非边界VTEP。在VXLAN中,两个VTEP之间通过建立VXLAN隧道通信。其中,在VXLAN中,作为DC间连接设备的VTEP可以称为骨节点(Spine),作为接入设备的VTEP可以称为叶节点(Leaf)。
图1所示的网络架构中,DC1和DC2之间可以采用三段式方式互通。如图1所示,当DC1中的与D1连接的主机1需要向DC2中与D2连接的主机2发送报文时,报文的转发路径可以如图1中箭头所示,D1为主机1发送来的第一报文添加包括B1的信息的第一VXLAN隧道头得到第一VXLAN报文,通过D1与B1之间的VXLAN-DCN隧道将该第一VXLAN报文发送至B1,B1删除该第一VXLAN报文的第一VXLAN隧道头得到该第一报文、再重新对该第一报文添加包括B2的信息的第二VXLAN隧道头得到第二VXLAN报文,将该第二VXLAN报文通过B1和B2之间的VXLAN-DCI隧道发送至DC2内的B2上,B2删除该第二VXLAN报文的第二VXLAN隧道头得到该第一报文、再重新为该第一报文添加包括D2的信息的第三VXLAN隧道头得到第三VXLAN报文,将该第三VXLAN报文通过B2与D2之间的VXLAN-DCN隧道发送至D2,最终由D2删除该第三VXLAN报文的第三VXLAN隧道头得到该第一报文,并将该第一报文发送到DC2内的主机2。
若VTEP支持水平分割特性,则在报文转发过程中,B1在通过VXLAN-DCN隧道接收到D1发送的第一VXLAN报文之后,不会再通过DC1内的VXLAN-DCN隧道将该第一VXLAN报文发送至C1或E1,同样,B2在通过VXLAN-DCI隧道接收到B1发送的第二VXLAN报文后,也不会再通过VXLAN-DCI隧道将该第二VXLAN报文发送至其它DC。因此,支持水平分割特性的VTEP无法实现多DC之间的互联。
为了实现DC内部之间的转发以及多个DC之间的互联,就需要取消VTEP上的水平分割特性。但取消水平分割特性,就可能会导致多个DC之间互联时出现数据转发环路的风险。如图2所示,四个数据中心DC1、DC2、DC3、DC4互联时,1、2、3、4分别表示DC1、DC2、DC3、DC4的Spine。如果某个Spine的配置信息出现错误,就会出现如图2中箭头方向所示的由DC1发送的报文又被转发回至DC1,出现网络环路。本申请实施例提供的路由协议报文的处理方法从网络控制平面有效避免了数据平面报文转发出现环路的可能。
图3示出了本申请实施例适用的一种VXLAN架构的示意图。如图3中所示,该VXLAN架构包括多个数据中心,每个数据中心包括至少一个边界VTEP和至少一个非边界VTEP。作为示例,图3中示出了三个DC:DC10、DC20和DC30。其中,A10、A20和A30为边界VTEP,且分别为DC10、DC20和DC30的Spine,B10、B20和B30为非边界VTEP,且分别为DC10、DC20和DC30的Leaf,分别用于网段10、主机20和主机30的网络接入。A10、A20、A30、B10、B20和B30的IP地址分别为IP1、IP2、IP3、IP4、IP5和IP6,网段10的网段IP地址为1.1.1.0/24。可以理解的是,B10连接网段10是指B10与网段10中的多个主机连接,实现该网段10中所有主机的网络接入。
A10、A20、A30、B10、B20和B30上均运行路由协议,该路由协议可以是边界网关协议(Border Gateway Protocol,BGP)以太网专用虚拟网络(Ethernet Virtual PrivateNetwork,EVPN)协议,中间系统到中间系统(Intermediate System to IntermediateSystem,IS-IS)协议,开放最短路径优先(Open Shortest Path First,OSPF)协议等。在对VTEP进行网络配置时,基于每个VTEP的邻居关系配置该VTEP与其邻居VTEP之间的网络连接属性,该网络连接属性用于标识一个VTEP与其邻居VTEP是否属于同一DC,即表示本VTEP去往邻居VTEP的路由是DCN)还是DCI。
为描述方便,本申请实施例中,若一个VTEP与其邻居VTEP位于同一DC,则这两个VTEP之间的网络连接属性为DCN,若一个VTEP与其邻居VTEP不位于同一DC,则这两个VTEP之间的网络连接属性为DCI。其中,若网络连接属性为DCN,对应的网络连接属性标识可以直接用DCN表示,若网络连接属性为DCI,对应的网络连接属性标识也可以直接用DCI表示。当然,也可以通过设置其它不同的标识来表示两种网络连接属性,只要两种标识不同即可。例如,可以用于1表示网络连接属性为DCN,以0表示网络连接属性为DCI。
基于图3所示的网络架构,A10、A20、A30、B10、B20和B30的BGP邻居关系为:B10、A20和A30为A10的邻居VTEP,B20、A10和A30为A20的邻居VTEP,B30、A10和A20为A30的邻居VTEP,A10为B10的邻居VTEP,A20为B20的邻居VTEP,A30为B30的邻居VTEP。每个VTEP与其邻居VTEP之间的网络连接属性标识如图3所示,如设备A10和B10之间的网络连接属性标识为DCN,设备A10和A20之间的网络连接属性标识为DCI。
需要说明的是,同一DC中的Leaf之间无直连物理链路,同一DC中的Leaf之间需要通过本DC中的Spine通信,同一DC内的Spine之间一般也不直接通信。
在VXLAN控制平面,为了实现多个DC之间的互通,DC中的Leaf需要发布其下属主机或网段的IP路由,否则Spine和其它Leaf就无法学习到对方的路由,从而无法进行数据平面的数据转发。下文中以B10发布网段10的网段路由为例进行路由协议报文转发过程的说明。
B10通过往A10发布网段10的网络路由信息的路由协议报文时,B10发布的路由协议报文中除包括B10的IP地址IP4(封装后的VXLAN报文中的外层源IP地址)、A10的IP地址IP1(封装后的VXLAN报文中的外层目的IP地址)、网段10的IP地址1.1.1.0/24(封装后的VXLAN报文中的内层源IP地址)等基本协议报文参数外,还携带有B10去往A10的网络连接属性标识即B10与A10之间的网络连接属性标识DCN。
A10学习到B10发布的路由协议报文时,首先由该路由协议报文中携带的DCN可知该协议报文是位于同一DC内的Leaf发送来的,A10学习该路由协议报文中的路由信息即网段10的IP地址以及网段10对应的传输路径等信息,并将A10与A20之间的网络连接属性标识DCI添加到该路由协议报文中的DCN之后将该路由协议报文继续发布至A20,A10将A10与A30之间的网络连接属性标识DCI添加到该路由协议报文中的DCN与DCI之后继续将该路由协议报文发布至A30。其中,A20与A30学习到设备A10发布的路由协议报文后的报文处理原则相同,下文中以A20为例进行说明。
A20学习到设备A10发布的该路由协议报文时,A20根据该路由协议报文中的内层IP地址1.1.1.0/24可知该协议报文不是A20所在的DC20中的设备发送的报文,A20根据该路由协议报文中的网络连接属性标识序列为DCN-DCI,可以得知协议报文的路由信息是从与设备A20不在同一DC的Spine发布的,不存在环路可能,设备A20学习其接收到的路由协议报文的路由信息后,根据A20的端口数复制该路由协议报文(当端口数为N时,共需要N-1个路由协议报文以便发往除接收端口之外的其他端口,在图3中,A20复制得到两个路由协议报文),将设备A20去往设备A30的网络连接属性标识DCI添加到一个路由协议报文中的标识DCN、DCI之后,将该路由协议报文发布至A30,将设备A20去往设备B20的网络连接属性标识DCN添加到另一个路由协议报文中的标识DCN、DCI之后,将该另一个路由协议报文继续发布至B20。
B20学习到A20发布的路由协议报文时,由于B20为非边界VTEP,B20接收到的路由协议报文肯定是其所在DC的边界VTEP发送的,因此,无需确定是否存在DC互联环路可能。当配置了正确的路由策略时,B20学习该路由协议报文的路由信息后,丢弃该BCP EVPN协议报文。当出现网络配置错误等异常情况时,B20还可能将B20去往A20的网络连接属性DCN添加到该路由协议报中的网络连接属性标识DCN、DCI、DCN之后,再将该路由协议报文发布至A20。
A30学习到A20发布的协议报文时,A30根据该路由协议报文中的内层IP地址1.1.1.0/24可知该路由协议报文不是A30所在的DC30中的设备发送的报文,根据该路由协议报文中的网络连接属性标识序列为DCN-DCI-DCI,可以确定出该路由协议报文为由一个DC的Spine转发的另一个DC中的设备发送的报文,因此,不存在环路可能,A30则将A30与下一跳设备,如B30,之间的网络连接属性标识添加到DCN-DCI-DCI之后将该路由协议报文发送给B30。
A20学习到B20发布的路由协议报文时,该路由协议报文中的连接属性标识序列为DCN-DCI-DCN-DCN,根据该序列可以确定出此时接收到的路由协议报文是从其它DC接收到的路由协议报文经A20所在的DCN内部转发后再次转发出来的,如果将该路由协议报文再次发布出去,则有可能会导致该路由协议报文再次进入到初始发布该路由报文的DC中,导致路由协议报文的路由(转发路径)出现环路。因此,A20直接丢弃该路由协议报文,从而避免出现环路的可能。
可见,根据本申请实施例,DC的边界VTEP能够在接收到路由协议报文时,检查出接收的路由协议报文是否存在环路的风险,防止错误路由配置导致网络故障。本申请实施例从网络控制平面避免了报文转发出现环路的可能,因此从源头上保证了DC之间数据平面报文的无环路转发。
图4示出了本申请实施例提供的一种网络边缘设备的结构示意图,该网络边缘设备具体可以实现为图3所示的网络架构中的任一VTEP。如图4所示,中央处理器(centralprocessing unit,CPU)为网络边缘设备的控制单元,设备中运行的程序和静态配置的参数保存在闪存(flash)中,程序运行时执行的代码和数据可以放置在与CPU相连的随机存取存储器(random access memory,RAM)中。CPU控制以太网交换(LAN switch,LSW)芯片执行初始化、业务表项下发、协议报文收发、各类中断等操作。LSW芯片可选用外置RAM用于存放转发的报文,可以解决LSW芯片内部缓存不足的某些场景。LSW芯片下挂的物理层(PHY)接口完成设备之间的光口或电口的以太网接口对接。本方法实施例的路由协议报文的处理方法具体可以由图4所示的网络边缘设备的CPU执行,由CPU控制LSW芯片对设备接收到的单播(Unicast)、广播、未知单播和多播(broadcast&unknown-unicast&multicast,BUM)路由协议报文的转发行为,从控制平面避免了路由转发出现环路的可能。
图5示出了本申请实施例提供的一种路由协议报文处理方法的流程示意图,该路由协议报文处理方法适用于DC的网络边缘设备。该网络边缘设备可以为图1-图4所示的任一网络边缘设备。以下用第一DC的第一网络边缘设备指代该任一网络边缘设备如图5所示,该协议报文处理方法主要可以包括:
步骤S10:第一网络边缘设备向第二网络边缘设备发布第一路由协议报文之前,将第一网络连接属性标识添加到该第一路由协议报文中。
本申请实施例中,第一网络边缘设备可以是边界网络边缘设备,也可以是非边界网络边缘设备,第二网络边缘设备为边界网络边缘设备。其中,若第一网络边缘设备为非边界网络边缘设备时,则第二网络边缘设备为第一DC的边界网络边缘设备,若第一网络边缘设备为边界网络边缘设备,则第二网络边缘设备为第二DC的边界网络边缘设备。
为了实现不同DC之间以及同一DC内的不同主机之间的互联通信,DC的网络边缘设备上运行路由协议,网络边缘设备通过向其邻居网络边缘设备发布路由协议报文,以使接收到路由协议报文的邻居网络边缘设备能够学习到路由协议报文中的相关路由信息,建立起两个网络边缘设备之间的隧道,基于建立的隧道实现两个网络边缘设备之间的通信。
本申请实施例中,为了避免多DC互联时,出现报文转发环路(即从一个DC发出去的协议报文又转发回至该DC)的可能,第一网络边缘设备在向第二网络边缘设备发布路由协议报文之前,通过将第一网络连接属性标识添加到该路由协议报文中,该路由协议报文用于使第二网络边缘设备学习到该路由协议报文后,能够基于该路由协议报文中的内层IP地址(主机IP地址或网段IP地址)和第一连接属性标识序列确定出该路由协议报文的路由是否存在环路可能。其中,路由协议报文的路由指的是第一路由协议报文的转发路径,路由协议报文中的路由信息指的是该路由协议报文中携带的路由信息,如主机IP地址或网段的IP地址等。
本申请实施例中,第一网络连接属性标识用于标识第一网络边缘设备和第二网络边缘设备是否属于同一DC,第一网络连接属性标识为第一标识或第二标识,第一标识用于标识第一网络边缘设备和第二网络边缘设备属于同一DC,第二标识用于标识第一网络边缘设备和第二网络边缘设备不属于同一DC。
可以理解的是,上述第一标识和第二标识的具体形式可以根据需要设定。例如,第一标识可以为DCN,第二标识可以为DCI。再例如,第一标识可以为1,第二标识可以为0。
其中,第一连接属性标识序列为路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识所形成的序列,第一连接属性标识序列包括第一网络连接属性标识。
也就是说,在路由协议报文的整个转发的过程中,每一个发送该路由协议报文的网络边缘设备在发送之前,都需要将本网络边缘设备与本网络边缘设备所要发送到的网络边缘设备之间的网络连接属性标识添加到该路由协议报文中,且在添加之前,如果该路由协议报文中已经存在至少一个网络连接属性标识时,本网络边缘设备所要添加的网络连接属性标识需要在已经存在的网络连接属性标识之后,即路由协议报文中的网络连接属性标识的先后顺序即代表了报文所经过的转发路径的信息。因此,第二网络边缘设备在接收到该路由协议报文时,能够根据路由协议报文中携带的连接属性标识序列确定出该路由协议报文的路由即转发路径是否存在环路可能。
本申请实施例中,若第一网络边缘设备为边界网络边缘设备,第一网络边缘设备向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到该路由协议报文中,具体包括:
第一网络边缘设备接收路由协议报文,其中,路由协议报文中携带有该路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识;
第一网络边缘设备根据路由协议报文中携带的依次添加的网络连接属性标识得到第二连接属性标识序列;
第一网络边缘设备根据第二连接属性标识序列确定该路由协议报文的路由是否存在环路可能;
若第一网络边缘设备确定该路由协议报文的路由不存在环路可能,则第一网络边缘设备将第一网络连接属性标识添加到该路由协议报文中。
本申请实施例中,若第一网络边缘设备确定路由协议报文的路由存在环路可能,该处理方法还包括:
第一网络边缘设备丢弃该路由协议报文。
本申请实施例中,若第一网络边缘设备为边界网络边缘设备,则第一网络边缘设备在接收到该路由协议报文之后,也需要确定接收到的路由协议报文进行是否存在环路可能,在确定不存在环路可能后,再将第一网络连接属性标识添加到路由协议报文中,向第二网络边缘设备发送,如果确定存在环路可能,则直接丢弃该协议报文,不再继续进行转发。具体的,第一网络边缘设备可以根据接收到的路由协议报文携带的所有网络连接属性标识得到该协议报文对应的第二连接属性标识序列,基于该序列确定出接收到的路由协议报文的路由是否存在环路可能,只有在确定该路由协议报文不存在环路可能时,再对该路由协议报文进行进一步的处理。
本申请实施例中,第一网络边缘设备根据第二连接属性标识序列确定路由协议报文的路由是否存在环路可能,包括:
若第二连接属性标识序列同时满足以下第一条件和第二条件,则确定路由协议报文的路由存在环路可能,若第二连接属性标识序列不同时满足第一条件和第二条件,则确定路由协议报文的路由不存在环路可能。
其中,第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在第一标识,或者,路由协议报文中所携带路由的主机IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
如图3所示的网络架构中,A10若接收到B10所发布的路由协议报文,则该路由协议报文中的内层IP地址为网段10的IP地址1.1.1.0/24,携带的网络连接属性标识只有一个即DCN。由于网络连接属性标识只有一个,不满足第一条件,因此,A10确定所接收到的B10发布的路由协议报文不存在环路可能。A20若接收到B20发布的内层IP地址为1.1.1.0/24、连接属性标识序列为DCN-DCI-DCN-DCN的路由协议报文,序列中的标识个数为四个,满足条件1,序列中除序列头的标识DCN和序列尾的标识DCN之外的标识中存在第一标识即DCN,满足条件2,则A20确定所接收到的B20发布的路由协议报文存在环路可能,A20丢弃所接收到的该路由协议报文。
本申请实施例中,第一网络连接属性标识被携带在路由协议报文的扩展的类型长度值TLV字段的值字段中。
本申请实施例中,可以根据路由协议报文所基于的路由协议的具体报文格式,在路由协议报文中通过扩展TLV字段来携带网络连接属性标识,每个转发路由协议报文的网络边缘设备在转发路由协议报文之前,将本设备与路由协议报文所要发送的网络边缘设备的网络连接属性标识添加到一个扩展的TLV字段的值字段中。
例如,该路由协议报文为BCP EVPN报文。对于BGP EVPN协议,EVPN中定义了一种新的网络层可达信息((Network Layer Reachability Information,NLRI)即EVPN NLRI,EVPN NLRI定义了新的BGP EVPN路由类型,网络边缘设备可以通过携带发布以及学习BGPEVPN路由的BGP EVPN协议报文,实现同一DC和/或不同DC的网络边缘设备之间的IP地址学习和发布,以建立起两个网络边缘设备之间的隧道。
图6示出了本申请实施例中BGP EVPN协议报文中的NLRI字段格式的部分内容示意图。如图6所示,该NLRI格式中除包括了路由区分符(Route Distinguisher,RD)、以太网网段标识(Ethernet Segment Identifier,ESI)、以太网标签标识(Ethernet Tag ID)等固定格式字段信息外,还包括新扩展的TLV字段,即图6中所示的DCN Type字段,通过该TLV字段携带本网络边缘设备(发送协议报文的网络边缘设备)与其邻居网络边缘设备之间内的网络连接属性标识。
图7示出了一个TLV字段的具体结构示意图。如图7所示,T字段(DCN类型)用于携带网络连接属性标识的类型,L字段(长度)用于表示V字段的总长度,V字段(DCN值)中携带具体的网络连接属性标识。例如,若第一网络边缘设备与第二网络边缘设备属于同一DC,则V字段的值可以为1,若第一网络边缘设备与第二网络边缘设备不属于同一DC,则V字段的值可以为0。
BGP EVPN协议报文每被发送一次,发送BGP EVPN协议报文的网络边缘设备则将其与接收该BGP EVPN协议报文的网络边缘设备之间的网络连接属性添加到新的扩展的TLV字段的V字段中。如图8所示,为一BGP EVPN协议报文被发送两次后,BGP EVPN协议报文的NLRI字段的示意图。
本申请实施例中,将第一网络连接属性标识添加到路由协议报文之前,还包括:
根据第一网络边缘设备中的网络连接关系属性表,确定第一网络连接属性标识;
其中,网络连接关系属性表用于记录第一网络边缘设备与第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,网络连接关系属性表为基于第一网络边缘设备的邻居关系配置的数据表,第一网络边缘设备的邻居网络边缘设备包括第二网络边缘设备。
可以理解的是,上述网络连接关系属性表可以是预配置在第一网络边缘设备中的,也可以是由第一网络边缘设备自动生成的,例如,可以是第一网络边缘设备在接收到其他网络边缘设备发送的路由协议报文后,根据路由协议报文中携带的其他网络边缘设备的IP地址,自动建立的第一网络边缘设备与其他网络边缘设备的网络连接关系属性表,该其他网络边缘设备即为第一网络边缘设备的邻居边缘设备。
本申请实施例中,通过第一网络边缘设备中用于记录第一网络边缘设备与其邻居网络边缘设备的网络连接属性标识的数据表,使第一网络边缘设备在向其邻居网络边缘设备发送路由协议报文时,能够根据该数据表快速确定出对应的网络连接属性标识,并添加到路由协议报文中,从而提高了路由协议报文的处理效率。
本申请实施例中,网络连接关系属性表的每个表项中存储第一网络边缘设备和其一个邻居网络边缘设备的网络连接属性标识,与该一个邻居网络边缘设备的IP地址的对应关系。
本申请实施例中,根据第一网络边缘设备中的网络连接关系属性表,确定第一网络连接属性标识,包括:
根据第二网络边缘设备的IP地址,在网络连接关系属性表中查找与第二网络边缘设备的IP地址相匹配的第一网络连接属性标识。
本申请实施例中,可以直接以第一网络边缘设备的邻居网络边缘设备的IP地址作为索引,将邻居网络边缘设备的IP地址与该IP地址所对应的邻居网络边缘设备与第一网络边缘设备的网络连接属性关联存储在网络连接关系属性表。通过该方式,即可基于邻居网络边缘设备的IP地址快速查找到第一网络边缘设备与该邻居网络边缘设备的网络连接属性标识。
作为一个具体示例,表1示出了图3所示的网络架构中,设备A10上所配置的网络连接关系属性表的示意性结构。如表1中所示,A10的邻居网络边缘设备为B10、A20和A30,B10与A10属于同一DC,两者间的网络连接属性标识为1,A20和A10属于不同的DC,两者间的网络连接属性标识为0,A30和A10属于不同的DC,两者间的网络连接属性标识为0。B10的IP地址为IP4,A20的IP地址为IP2,A30的IP地址为IP3。A10向A20发送路由协议报文时,即可基于A20的IP地址,在表1中快速查找到对应的网络连接属性标识0。
表1
IP2 | 0 |
IP3 | 0 |
IP4 | 1 |
图9示出了本申请实施例提供的一种路由协议报文处理方法的流程示意图,该协议报文处理方法适用于DC的网络边缘设备,如适用于图1-图4中所示的任一网络边缘设备。以下用第一DC的第一网络边缘设备指代任一网络边缘设备。如图9所示,该路由协议报文处理方法主要可以包括:
步骤S21:第一网络边缘设备接收第二网络边缘设备发布的路由协议报文。
其中,第一网络边缘设备为边界网络边缘设备,第二网络边缘设备为第二DC的边界网络边缘设备或第一DC的非边界网络边缘设备。
路由协议报文中携带有路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识,网络连接属性标识为第一标识或第二标识,第一标识用于标识发布路由协议报文的网络边缘设备和接收路由协议报文的网络边缘设备属于同一DC,第二标识用于标识发布路由协议报文的网络边缘设备和接收路由协议报文的网络边缘设备不属于同一DC。
可以理解的是,第一标识和第二标识的具体形式可以根据实际需要进行设定,只要两个标识不同,基于两种标识能够区分出两个网络边缘设备是否属于同一DC即可。
步骤S22:第一网络边缘设备根据路由协议报文中携带的依次添加的网络连接属性标识得到连接属性标识序列。
步骤S23:第一网络边缘设备根据得到的连接属性标识序列确定路由协议报文的路由是否存在环路可能。
本申请实施例中,每一个网络边缘设备(包括边界网络边缘设备和非边界网络边缘设备)在发送路由协议报文之前,都需要将本网络边缘设备与路由协议报文所要发送至对端网络边缘设备之间的网络连接关系属性标识添加到该路由协议报文中,以使后续接收到该路由协议报文的边界网络边缘设备能够基于路由协议报文的内层源IP地址和该路由协议报文中携带的所有网络连接属性标识对应的连接属性标识序列,确定出该路由协议报文是否存在环路的可能。
其中,上述每个网络边缘设备依次添加的网络连接属性标识被携带在路由协议报文的扩展的类型长度值TLV字段的值字段中。
本申请实施例中,若第一网络边缘设备根据得到的连接属性标识序列确定路由协议报文的路由不存在环路可能,该处理方法还可以包括:
第一网络边缘设备将第一网络连接属性标识添加到路由协议报文中的上述依次添加的网络连接属性标识之后;
第一网络边缘设备将添加后的路由协议报文发布至第三网络边缘设备。
其中,第一网络连接属性标识为第一网络边缘设备与第三网络边缘设备之间的网络连接属性标识,第三网络边缘设备为第三DC的边界网络边缘设备或第一DC的非边界网络边缘设备即第三网络边缘设备可以是与第一网络边缘设备属于同一DC的非边界网络边缘设备,也可以是与第一网络边缘设备属于不同DC的边界网络边缘设备。
本申请实施例中,若第一网络边缘设备根据得到的连接属性标识序列确定路由协议报文的路由存在环路可能,该处理方法还可以包括:
第一网络边缘设备丢弃该路由协议报文。
本申请实施例中,如果第一网络边缘设备确定出路由协议报文存在环路可能时,则第一网络边缘设备将直接丢弃该路由协议报文,即不学习该协议报文中携带的路由信息并也不再继续转发该协议报文,以避免该协议报文的继续转发造成网络环路的出现。如果确定出不存在环路可能,则将相应的网络连接属性标识添加到报文中已存在的网络连接属性标识之后,继续转发该协议报文到其邻居网络边缘设备,继续网络中设备之间路由的发布与学习的过程,为数据层面的数据转发提供基础。
本申请实施例中,第一网络边缘设备根据连接属性标识序列确定第二路由协议报文的路由是否存在环路可能,具体包括:
若连接属性标识序列同时满足以下第一条件和第二条件,则确定路由协议报文的路由存在环路可能,若连接属性标识序列不同时满足第一条件和第二条件,则确定路由协议报文的路由不存在环路可能,确定条件包括:
第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;
第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在第一标识,或者,路由协议报文中所携带路由的主机IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
本申请实施例中,第一网络边缘设备根据第一条件和第二条件确定第二条件确定路由协议报文的路由是否存在环路可能的详细描述,具体可以参见前文中图5所对应的处理方法中,在第一网络边缘设备为边界网络边缘设备时,第一网络边缘设备根据第二连接属性标识序列确定路由协议报文的路由是否存在环路可能部分的描述,为了简单,在此不再赘述。
本申请实施例中,第一网络边缘设备将第一网络连接属性标识添加到路由协议报文之前,还包括:
第一网络边缘设备根据第一网络边缘设备中的网络连接关系属性表,确定第一网络连接属性标识。
本申请实施例中,网络连接关系属性表用于记录第一网络边缘设备与第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,网络连接关系属性表为基于第一网络边缘设备的邻居关系配置的数据表,第一网络边缘设备的邻居网络边缘设备包括第三网络边缘设备。
本申请实施例中,网络连接关系属性表中存储第一网络边缘设备和第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与该一个邻居网络边缘设备的IP地址的对应关系。
相对应的,此时,第一网络边缘设备根据第一网络边缘设备中网络连接关系属性表,确定第一网络连接属性标识,具体可以包括:
根据所述第三网络边缘设备的IP地址,在网络连接关系属性表中查找与第三网络边缘设备的IP地址相匹配的第一网络连接属性标识。
其中,第一网络边缘设备根据网络连接关系属性表确定第一网络连接属性标识的详细描述,具体可以参见前文中图5所对应的处理方法中的第一网络边缘设备根据网络连接关系属性表查找第一网络连接属性标识的相关部分的内容,为了简洁,在此不再赘述。
需要说明的是,网络边缘设备在接收到路由协议报文时,都需要首先进行报文的封装头的解封装即删除接收到的路由协议报文中的封装头,如果根据解封装后的原始报文内容确定出报文的路由不存在环路可能,则学习原始报文中携带的路由信息后,需要将原始报文重新进行封装后再转发,由于每个网络边缘设备所添加的封装头的信息是不同的,因此,本申请实施例中,对于上述同一路由协议报文,不同网络边缘设备所发送出的该协议报文中的并不是完全相同的,之所以将不同网络边缘设备接收和/或转发该协议报文统称为同一路由协议报文,是因为该协议报文中的原始报文的内容(不包括扩展的TLV字段)是相同的即转发的是同一原始报文。例如,对于上述路由协议报文,第一网络边缘设备将该报文发送至第二网络边缘设备时,封装头中的外层即封装头中的源IP地址即为第一网络边缘设备的IP地址,外层目的IP地址为第二网络边缘设备的IP地址,而第一网络边缘设备接收到该协议报文时,报文的外层目的地址为第一网络边缘设备的IP地址,源IP地址则是将该协议报文发送至第一网络边缘设备的其它网络边缘设备的IP地址。
对应于图5中所示的一种路由协议报文的处理方法,图10示出了本申请实施例提供的一种路由协议报文的处理装置100的框架结构示意图,该处理装置可应用于图1-图4所示的任一网络边缘设备。下文中以第一DC的第一网络边缘设备指代任一网络边缘设备,第一网络边缘设备为边界网络边缘设备或非边界网络边缘设备。处理装置100可以包括连接属性标识添加模块130。
连接属性标识添加模块130,用于在向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到该路由协议报文中,该路由协议报文用于使第二网络边缘设备学习到路由协议报文时,能够根据路由协议报文的第一连接属性标识序列确定该路由协议报文的路由是否存在环路可能;
其中,第二网络边缘设备为边界网络边缘设备,第一网络连接属性标识为第一标识或第二标识,第一标识用于标识第一网络边缘设备和第二网络边缘设备属于同一DC,第二标识用于标识第一网络边缘设备和第二网络边缘设备不属于同一DC,第一连接属性标识序列为第一路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识所形成的序列,第一连接属性标识序列包括第一网络连接属性标识。
可以理解的是,根据本申请实施例的处理装置100,可对应于图5中所示的根据本申请实施例的路由协议报文的处理方法中的执行主体,处理装置100的连接属性标识添加模块130是为了实现图5所对应的本申请实施例的处理方法中的相应流程,连接属性标识添加模块130操作和/或功能的详细实现方式可参见图5所对应的本申请实施例的处理方法部分中的描述,为了简洁,在此不再赘述。
本申请一可选实施例中,若第一网络边缘设备为边界网络边缘设备,处理装置100还包括协议报文接收模块110和环路确定模块120,如图11所示。
协议报文接收模块110,用于接收路由协议报文,其中,路由协议报文中携带有路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识。
环路确定模块120,用于根据路由协议报文中携带的依次添加的网络连接属性标识得到第二连接属性标识序列,根据第二连接属性标识序列确定第一路由协议报文的路由是否存在环路可能。
连接属性标识添加模块130,具体用于在环路确定模块确定路由协议报文的路由不存在环路可能时,则将第一网络连接属性标识添加到该路由协议报文中。
本申请一可选实施例中,处理装置100还可以包括报文丢弃模块140,如图12所示。
报文丢弃模块140,用于在环路确定模块确定路由协议报文的路由存在环路可能时,丢弃该路由协议报文。
本申请一可选实施例中,环路确定模块120具体用于:
在第二连接属性标识序列同时满足以下第一条件和第二条件,则确定该协议报文的路由存在环路可能,在第二连接属性标识序列不同时满足第一条件和第二条件时,则确定该协议报文的路由不存在环路可能。
其中,第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个,第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在第一标识,或者,路由协议报文中所携带路由的主机IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
本申请一可选实施例中,第一网络连接属性标识被携带在路由协议报文的扩展的TLV字段的值字段中。
本申请一可选实施例中,连接属性标识添加模块130,还用于在将第一网络连接属性标识添加到路由协议报文之前,根据第一网络边缘设备中的网络连接关系属性表,确定第一网络连接属性标识。
其中,网络连接关系属性表用于记录第一网络边缘设备与第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,网络连接关系属性表为基于第一网络边缘设备的邻居关系配置的数据表,第一网络边缘设备的邻居网络边缘设备包括第二网络边缘设备。
本申请一可选实施例中,网络连接关系属性表中存储第一网络边缘设备和第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与该一个邻居网络边缘设备的IP地址的对应关系。
对应的,连接属性标识添加模块130在根据网络连接关系属性表,确定第一网络连接属性标识时,具体用于:
根据第二网络边缘设备的IP地址,在第网络连接关系属性表中查找与第二网络边缘设备的IP地址相匹配的第一网络连接属性标识。
可以理解的是,本申请实施例的处理装置100,可对应于图5或基于图5所示的根据本申请实施例的路由协议报文的处理方法中的执行主体,处理装置100的各模块的操作和/或功能是为了实现图5或基于图5所对应的本申请实施例的处理方法中的相应流程,处理装置100的各模块的操作和/或功能的详细实现方式可参见前文中对应的处理方法部分中的描述,为了简洁,在此不再赘述。
对应于图9中所示的一种路由协议报文的处理方法,图13示出了本申请实施例的一种路由协议报文的处理装置200的框架结构示意图,该处理装置200可应用于图1-图4所示的任一网络边缘设备。下文中以处理装置以第一DC的第一网络边缘设备指代任一网络边缘设备,第一网络边缘设备为边界网络边缘设备。处理装置200包括协议报文接收模块210和环路确定模块220。
协议报文接收模块210,用于接收第二网络边缘设备发布的路由协议报文。
其中,第二网络边缘设备为边界网络边缘设备或非边界网络边缘设备,路由协议报文中携带有路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识,网络连接属性标识为第一标识或第二标识,第一标识用于标识发布路由协议报文的网络边缘设备和接收路由协议报文的网络边缘设备属于同一DC,第二标识用于标识发布路由协议报文的网络边缘设备和接收路由协议报文的网络边缘设备不属于同一DC。
环路确定模块220,用于根据路由协议报文中携带的依次添加的网络连接属性标识得到连接属性标识序列,根据连接属性标识序列确定路由协议报文的路由是否存在环路可能。
可以理解的是,根据本申请实施例的处理装置200,可对应于图9中所示的根据本申请实施例的路由协议报文的处理方法中的执行主体,处理装置200的协议报文接收模块210和环路确定模块220是为了实现图9所对应的本申请实施例的处理方法中的相应流程,协议报文接收模块210和环路确定模块220的操作和/或功能的详细实现方式可参见图9所对应的本申请实施例的处理方法部分中的描述,为了简洁,在此不再赘述。
本申请一可选实施例中,环路确定模块220具体用于:在连接属性标识序列同时满足以下第一条件和第二条件时,则确定路由协议报文的路由存在环路可能,在第二连接属性标识序列不同时满足第一条件和第二条件,则确定路由协议报文的路由不存在环路可能。
第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个。
第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在第一标识,或者,路由协议报文中所携带路由的主机IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
本申请一可选实施例中,处理装置200还包括连接属性标识添加模块230和协议报文发送模块240,如图14所示。
连接属性标识添加模块230,用于在根据连接属性标识序列确定路由协议报文的路由不存在环路可能时,将第一网络连接属性标识添加到路由协议报文中的依次添加的网络连接属性标识之后。
协议报文发送模块240,用于将添加后的路由协议报文发布至第三网络边缘设备。
其中,第一网络连接属性标识为第一网络边缘设备与第三网络边缘设备之间的网络连接属性标识,第三网络边缘设备为边界网络边缘设备或非边界网络边缘设备。
本申请一可选实施例中,连接属性标识添加模块230,还用于在将第一网络连接属性标识添加到路由协议报文之前,根据第一网络边界设备中的网络连接关系属性表,确定第一网络连接属性标识。
其中,网络连接关系属性表用于记录第一网络边缘设备与第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,网络连接关系属性表为基于第一网络边缘设备的邻居关系配置的数据表,第一网络边缘设备的邻居网络边缘设备包括第三网络边缘设备。
本申请一可选实施例中,网络连接关系属性表中存储第一网络边缘设备和第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与该一个邻居网络边缘设备的IP地址的对应关系。
对应的,连接属性标识添加模块230,具体用于根据第三网络边缘设备的IP地址,在网络连接关系属性表中查找与第三网络边缘设备的IP地址相匹配的第一网络连接属性标识。
本申请一可选实施例中,处理装置200还包括报文丢弃模块250,如图15所示。
报文丢弃模块250,用于在根据连接属性标识序列确定路由协议报文的路由存在环路可能时,丢弃该路由协议报文。
本申请一可选实施例中,每个网络边缘设备依次添加的网络连接属性标识被携带在路由协议报文的扩展的TLV字段的值字段中。
可以理解的是,本申请实施例的处理装置200,可对应于图9或基于图9所示的根据本申请实施例的路由协议报文的处理方法中的执行主体,处理装置200的各模块的操作和/或功能是为了实现图9或基于图9所对应的本申请实施例的处理方法中的相应流程,处理装置200的各模块的操作和/或功能的详细实现方式可参见前文中对应的处理方法部分中的描述,为了简洁,在此不再赘述。
图16是根据本申请一实施例的网络边缘设备300的示意性框图。如图16所示,网络边缘设备300包括处理器301、存储器302和通信接口303,存储器302用于存储可执行的计算机程序代码,处理器301通过读取存储器302中存储的的计算机程序代码来运行与计算机程序代码对应的计算机程序,以用于执行本申请任一实施例的路由协议报文的处理方法。通信接口303用于与外部设备通信,网络边缘设备300还可以包括总线304,总线304用于连接处理器301、存储器302和通信接口303,使处理器301、存储器302和通信接口303通过总线304进行相互通信。
根据本申请实施例的网络边缘设备300,可对应于根据本申请实施例的路由协议报文的处理方法的执行主体,并且网络边缘设备300中的各个模块的操作和/或功能分别为了实现本申请各实施例中的处理方法的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,该可读存储介质中存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行本申请任一实施例的路由协议报文的处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质,例如固态硬盘(Solid StateDisk(SSD)等。
Claims (28)
1.一种路由协议报文的处理方法,其特征在于,所述方法应用于第一数据中心DC的第一网络边缘设备中,所述第一网络边缘设备为边界网络边缘设备或非边界网络边缘设备,所述方法包括:
所述第一网络边缘设备向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到所述路由协议报文中,所述路由协议报文用于使所述第二网络边缘设备学习到所述路由协议报文后,根据所述路由协议报文的第一连接属性标识序列确定所述路由协议报文的路由是否存在环路可能;
其中,所述第二网络边缘设备为边界网络边缘设备,所述第一网络连接属性标识为第一标识或第二标识,所述第一标识用于标识所述第一网络边缘设备和所述第二网络边缘设备属于同一DC,所述第二标识用于标识所述第一网络边缘设备和所述第二网络边缘设备不属于同一DC,所述第一连接属性标识序列为所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识所形成的序列,所述第一连接属性标识序列包括所述第一网络连接属性标识。
2.根据权利要求1所述的方法,其特征在于,若所述第一网络边缘设备为边界网络边缘设备,所述第一网络边缘设备向第二网络边缘设备发布第一路由协议报文之前,将第一网络连接属性标识添加到所述路由协议报文中,包括:
所述第一网络边缘设备接收所述路由协议报文,其中,所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识;
所述第一网络边缘设备根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到第二连接属性标识序列;所述第二连接属性标识序列不包括所述第一网络连接属性标识;
所述第一网络边缘设备根据所述第二连接属性标识序列确定所述路由协议报文的路由是否存在环路可能;
若所述第一网络边缘设备确定所述路由协议报文的路由不存在环路可能,则所述第一网络边缘设备将所述第一网络连接属性标识添加到所述路由协议报文中。
3.根据权利要求2所述方法,其特征在于,若所述第一网络边缘设备确定所述路由协议报文的路由存在环路可能,所述方法还包括:
所述第一网络边缘设备丢弃所述路由协议报文。
4.根据权利要求2或3所述的方法,其特征在于,所述第一网络边缘设备根据所述第二连接属性标识序列确定所述路由协议报文的路由是否存在环路可能,包括:
若所述第二连接属性标识序列同时满足以下第一条件和第二条件,则确定所述路由协议报文的路由存在环路可能,若所述第二连接属性标识序列不同时满足所述第一条件和第二条件,则确定所述路由协议报文的路由不存在环路可能;
所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;
所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
5.根据权利要求1-4中任意一项所述的方法,其特征在于:所述第一网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
6.根据权利要求1-5中任意一项所述的方法,其特征在于,所述将第一网络连接属性标识添加到所述路由协议报文中之前,还包括:
根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识;
其中,所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述邻居网络边缘设备包括所述第二网络边缘设备。
7.根据权利要求6所述的方法,其特征在于,所述网络连接关系属性表的每个表项中存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个邻居网络边缘设备的IP地址的对应关系;
所述根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识,包括:
在所述网络连接关系属性表中查找与所述第二网络边缘设备的IP地址相匹配的第一网络连接属性标识。
8.一种路由协议报文的处理方法,其特征在于,所述方法应用于第一数据中心DC的第一网络边缘设备上,所述第一网络边缘设备为边界网络边缘设备,所述方法包括:
所述第一网络边缘设备接收第二网络边缘设备发布的路由协议报文,其中,所述第二网络边缘设备为第二DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备;
其中,所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识,所述网络连接属性标识为第一标识或第二标识,所述第一标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备属于同一DC,所述第二标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备不属于同一DC;
所述第一网络边缘设备根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到连接属性标识序列;
所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由是否存在环路可能。
9.根据权利要求8所述的方法,其特征在于,所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由是否存在环路可能,包括:
若所述连接属性标识序列同时满足以下第一条件和第二条件,则确定所述路由协议报文的路由存在环路可能,若所述连接属性标识序列不同时满足所述第一条件和所述第二条件,则确定所述路由协议报文的路由不存在环路可能:
所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;
所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
10.根据权利要求8或9所述的方法,其特征在于,若所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由不存在环路可能,所述方法还包括:
所述第一网络边缘设备将第一网络连接属性标识添加到所述路由协议报文中的所述依次添加的网络连接属性标识之后;
所述第一网络边缘设备将添加后的所述路由协议报文发布至第三网络边缘设备;
其中,所述第一网络连接属性标识为所述第一网络边缘设备与所述第三网络边缘设备之间的网络连接属性标识,所述第三网络边缘设备为第三DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备。
11.根据权利要求10所述的方法,其特征在于,所述第一网络边缘设备将第一网络连接属性标识添加到所述路由协议报文之前,还包括:
所述第一网络边缘设备根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识;
其中,所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述邻居网络边缘设备包括所述第三网络边缘设备。
12.根据权利要求11所述的方法,其特征在于,所述网络连接关系属性表的每个表项存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个邻居网络边缘设备的IP地址的对应关系;
所述第一网络边缘设备根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识,包括:
所述第一网络边缘设备在所述网络连接关系属性表中查找与所述第三网络边缘设备的IP地址相对应的第一网络连接属性标识。
13.根据权利要求8-12中任意一项所述的方法,其特征在于,若所述第一网络边缘设备根据所述连接属性标识序列确定所述路由协议报文的路由存在环路可能,所述方法还包括:
所述第一网络边缘设备丢弃所述路由协议报文。
14.根据权利要求8-13中任意一项所述的方法,其特征在于,所述每个网络边缘设备依次添加的网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
15.一种路由协议报文的处理装置,其特征在于,所述处理装置应用于第一数据中心DC的第一网络边缘设备中,所述第一网络边缘设备为边界网络边缘设备或非边界网络边缘设备,所述处理装置包括:
连接属性标识添加模块,用于在向第二网络边缘设备发布路由协议报文之前,将第一网络连接属性标识添加到所述路由协议报文中,所述路由协议报文用于使所述第二网络边缘设备学习到所述路由协议报文后,根据所述路由协议报文的第一连接属性标识序列确定所述路由协议报文的路由是否存在环路可能;
其中,所述第二网络边缘设备为边界网络边缘设备,所述第一网络连接属性标识为第一标识或第二标识,所述第一标识用于标识所述第一网络边缘设备和所述第二网络边缘设备属于同一DC,所述第二标识用于标识所述第一网络边缘设备和所述第二网络边缘设备不属于同一DC,所述第一连接属性标识序列为所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识所形成的序列,所述第一连接属性标识序列包括所述第一网络连接属性标识。
16.根据权利要求15所述的装置,其特征在于,若所述第一网络边缘设备为边界网络边缘设备,所述装置还包括:
协议报文接收模块,用于接收所述路由协议报文,其中,所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识;
环路确定模块,用于根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到第二连接属性标识序列,根据所述第二连接属性标识序列确定所述路由协议报文的路由是否存在环路可能;
所述连接属性标识添加模块,具体用于在所述环路确定模块确定所述路由协议报文的路由不存在环路可能时,将所述第一网络连接属性标识添加到所述路由协议报文中。
17.根据权利要求16所述装置,其特征在于,所述装置还包括:
报文丢弃模块,用于在所述环路确定模块确定所述路由协议报文的路由存在环路可能时,丢弃所述路由协议报文。
18.根据权利要求16或17所述的装置,其特征在于,所述环路确定模块具体用于:
在所述第二连接属性标识序列同时满足以下第一条件和第二条件时,则确定所述路由协议报文的路由存在环路可能,在所述第二连接属性标识序列不同时满足所述第一条件和第二条件时,则确定所述路由协议报文的路由不存在环路可能;
所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;
所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
19.根据权利要求15至18中任意一项所述的装置,其特征在于:所述第一网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
20.根据权利要求15至19中任意一项所述的装置,其特征在于,
所述连接属性标识添加模块,还用于在将第一网络连接属性标识添加到所述路由协议报文之前,根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识;
其中,所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述邻居网络边缘设备包括所述第二网络边缘设备。
21.根据权利要求20所述的装置,其特征在于,所述网络连接关系属性表的每个表项中存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个邻居网络边缘设备的IP地址的对应关系;
所述连接属性标识添加模块在根据网络连接关系属性表,确定所述第一网络连接属性标识时,具体用于:
在所述网络连接关系属性表中查找与所述第二网络边缘设备的IP地址相匹配的第一网络连接属性标识。
22.一种路由协议报文的处理装置,其特征在于,所述装置应用于第一数据中心DC的第一网络边缘设备上,所述第一网络边缘设备为边界网络边缘设备,所述装置包括:
协议报文接收模块,用于接收第二网络边缘设备发布的路由协议报文;
其中,所述第二网络边缘设备为第二DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备,所述路由协议报文中携带有所述路由协议报文在转发过程中所经过的每个网络边缘设备依次添加的网络连接属性标识,所述网络连接属性标识为第一标识或第二标识,所述第一标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备属于同一DC,所述第二标识用于标识发布所述路由协议报文的网络边缘设备和接收所述路由协议报文的网络边缘设备不属于同一DC;
环路确定模块,用于根据所述路由协议报文中携带的所述依次添加的网络连接属性标识得到连接属性标识序列,根据所述连接属性标识序列确定所述路由协议报文的路由是否存在环路可能。
23.根据权利要求22所述的装置,其特征在于,所述环路确定模块具体用于:
在所述连接属性标识序列同时满足以下第一条件和第二条件时,则确定所述路由协议报文的路由存在环路可能,在所述第二连接属性标识序列不同时满足所述第一条件和所述第二条件,则确定所述路由协议报文的路由不存在环路可能;
所述第一条件为连接属性标识序列中的网络连接属性标识的个数大于等于三个;
所述第二条件为连接属性标识序列中除第一个网络连接属性标识和最后一个网络连接属性标识之外的网络连接属性标识中存在所述第一标识,或者,路由协议报文中所携带路由的主机网络协议IP地址或者网段IP地址为本网络边缘设备所在DC中的非边界网络边缘设备所连接的IP地址。
24.根据权利要求22或23所述的装置,其特征在于,所述装置还包括:
连接属性标识添加模块,用于在根据所述连接属性标识序列确定所述路由协议报文的路由不存在环路可能时,将第一网络连接属性标识添加到所述路由协议报文中的所述依次添加的网络连接属性标识之后;
协议报文发送模块,用于将添加后的所述路由协议报文发布至第三网络边缘设备;
其中,所述第一网络连接属性标识为所述第一网络边缘设备与所述第三网络边缘设备之间的网络连接属性标识,所述第三网络边缘设备为第三DC的边界网络边缘设备或所述第一DC的非边界网络边缘设备。
25.根据权利要求24所述的装置,其特征在于,
所述连接属性标识添加模块,还用于在将第一网络连接属性标识添加到所述路由协议报文之前,根据所述第一网络边缘设备中的网络连接关系属性表,确定所述第一网络连接属性标识;
其中,所述网络连接关系属性表用于记录所述第一网络边缘设备与所述第一网络边缘设备的邻居网络边缘设备之间的网络连接属性标识,所述邻居网络边缘设备包括所述第三网络边缘设备。
26.根据权利要求25所述的装置,其特征在于,所述网络连接关系属性表中的每个表项存储所述第一网络边缘设备和所述第一网络边缘设备的一个邻居网络边缘设备的网络连接属性标识,与所述一个网络边缘设备的IP地址的对应关系;
所述连接属性标识添加模块,具体用于在所述网络连接关系属性表中查找与所述第三网络边缘设备的IP地址相匹配的第一网络连接属性标识。
27.根据权利要求22至26中任意一项所述的装置,其特征在于,所述装置还包括:
报文丢弃模块,用于在根据所述连接属性标识序列确定所述路由协议报文的路由存在环路可能时,丢弃所述路由协议报文。
28.根据权利要求22至27中任意一项所述的装置,其特征在于,所述每个网络边缘设备依次添加的网络连接属性标识被携带在所述路由协议报文的扩展的类型长度值TLV字段的值字段中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711425078.8A CN109962846B (zh) | 2017-12-25 | 2017-12-25 | 路由协议报文的处理方法及装置 |
PCT/CN2018/118276 WO2019128612A1 (zh) | 2017-12-25 | 2018-11-29 | 路由协议报文的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711425078.8A CN109962846B (zh) | 2017-12-25 | 2017-12-25 | 路由协议报文的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109962846A true CN109962846A (zh) | 2019-07-02 |
CN109962846B CN109962846B (zh) | 2020-09-25 |
Family
ID=67021424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711425078.8A Active CN109962846B (zh) | 2017-12-25 | 2017-12-25 | 路由协议报文的处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109962846B (zh) |
WO (1) | WO2019128612A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112311645A (zh) * | 2019-07-31 | 2021-02-02 | 中兴通讯股份有限公司 | 一种实现dci三层通信的方法、系统及第一gw |
CN112953822A (zh) * | 2019-12-10 | 2021-06-11 | 华为技术有限公司 | 一种减少路由环路的方法、装置及系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11477233B2 (en) * | 2019-10-18 | 2022-10-18 | Juniper Networks, Inc. | Deploying secure neighbor discovery in EVPN |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090022069A1 (en) * | 2007-07-20 | 2009-01-22 | Cisco Tecnology, Inc. | Preventing loops in networks operating different protocols to provide loop-free topology |
CN102647324A (zh) * | 2011-02-21 | 2012-08-22 | 中兴通讯股份有限公司 | 一种trill网络互连的方法和系统 |
CN102684985A (zh) * | 2011-03-17 | 2012-09-19 | 中兴通讯股份有限公司 | 一种多链接互连网络分域互连的方法和系统 |
CN102752190A (zh) * | 2011-04-22 | 2012-10-24 | 中兴通讯股份有限公司 | 防止环路形成的方法及装置 |
CN103200100A (zh) * | 2013-03-12 | 2013-07-10 | 杭州华三通信技术有限公司 | 一种报文转发方法和设备 |
CN104869063A (zh) * | 2014-02-21 | 2015-08-26 | 华为技术有限公司 | 虚拟子网中的主机路由处理方法及相关设备和通信系统 |
CN105591692A (zh) * | 2015-11-04 | 2016-05-18 | 杭州华三通信技术有限公司 | 以太网无源光网络epon中的环路消除方法和设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7792021B1 (en) * | 2005-08-22 | 2010-09-07 | Sprint Communications Company L.P. | Solutions for preventing routing loops and load balancing when connected to a multihomed autonomous system |
CN100428730C (zh) * | 2005-11-02 | 2008-10-22 | 华为技术有限公司 | 一种防止消息环路的方法 |
US9143444B2 (en) * | 2013-03-12 | 2015-09-22 | International Business Machines Corporation | Virtual link aggregation extension (VLAG+) enabled in a TRILL-based fabric network |
CN105591916B (zh) * | 2014-10-22 | 2018-10-30 | 华为技术有限公司 | 一种报文传输方法及装置 |
-
2017
- 2017-12-25 CN CN201711425078.8A patent/CN109962846B/zh active Active
-
2018
- 2018-11-29 WO PCT/CN2018/118276 patent/WO2019128612A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090022069A1 (en) * | 2007-07-20 | 2009-01-22 | Cisco Tecnology, Inc. | Preventing loops in networks operating different protocols to provide loop-free topology |
CN102647324A (zh) * | 2011-02-21 | 2012-08-22 | 中兴通讯股份有限公司 | 一种trill网络互连的方法和系统 |
CN102684985A (zh) * | 2011-03-17 | 2012-09-19 | 中兴通讯股份有限公司 | 一种多链接互连网络分域互连的方法和系统 |
CN102752190A (zh) * | 2011-04-22 | 2012-10-24 | 中兴通讯股份有限公司 | 防止环路形成的方法及装置 |
CN103200100A (zh) * | 2013-03-12 | 2013-07-10 | 杭州华三通信技术有限公司 | 一种报文转发方法和设备 |
CN104869063A (zh) * | 2014-02-21 | 2015-08-26 | 华为技术有限公司 | 虚拟子网中的主机路由处理方法及相关设备和通信系统 |
CN105591692A (zh) * | 2015-11-04 | 2016-05-18 | 杭州华三通信技术有限公司 | 以太网无源光网络epon中的环路消除方法和设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112311645A (zh) * | 2019-07-31 | 2021-02-02 | 中兴通讯股份有限公司 | 一种实现dci三层通信的方法、系统及第一gw |
WO2021017590A1 (zh) * | 2019-07-31 | 2021-02-04 | 中兴通讯股份有限公司 | 一种实现dci三层通信的方法、系统及第一gw |
CN112953822A (zh) * | 2019-12-10 | 2021-06-11 | 华为技术有限公司 | 一种减少路由环路的方法、装置及系统 |
WO2021114838A1 (zh) * | 2019-12-10 | 2021-06-17 | 华为技术有限公司 | 一种减少路由环路的方法、装置及系统 |
CN113261246A (zh) * | 2019-12-10 | 2021-08-13 | 华为技术有限公司 | 一种减少路由环路的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109962846B (zh) | 2020-09-25 |
WO2019128612A1 (zh) | 2019-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11463279B2 (en) | Method and apparatus for implementing a flexible virtual local area network | |
CN109218178B (zh) | 一种报文处理方法及网络设备 | |
US10122614B2 (en) | Failure protection for traffic-engineered bit indexed explicit replication | |
CN101268658B (zh) | 产生对称生成树的系统和方法 | |
US10033539B1 (en) | Replicating multicast state information between multi-homed EVPN routing devices | |
WO2019105066A1 (zh) | 处理路由的方法和装置、以及数据传输的方法和装置 | |
CN107113241B (zh) | 路由确定方法、网络配置方法以及相关装置 | |
CN113055295B (zh) | 通信方法、通信设备和通信系统 | |
CN110224935B (zh) | 一种处理组播数据报文的方法及装置 | |
CN105939257A (zh) | Evpn单活动拓扑中的mac路由的更新 | |
US11159341B2 (en) | Forwarding packet | |
CN105191215A (zh) | 双向服务链的数据平面学习 | |
CN112491701B (zh) | 转发报文方法和装置 | |
CN112868214B (zh) | 分组内的协调负载转移oam记录 | |
CN108243103A (zh) | 克洛斯织物网络中分配路由协议信息的装置、系统和方法 | |
CN108259304B (zh) | 一种转发表项同步方法及装置 | |
CN110401599A (zh) | 数据包的处理方法及装置、存储介质、电子装置 | |
CN109962846B (zh) | 路由协议报文的处理方法及装置 | |
WO2016124049A1 (zh) | 用于获取端口路径的方法及装置 | |
CN110430116A (zh) | 数据转发方法及装置、边缘设备及可读存储介质 | |
CN113328949A (zh) | 路由属性的更新方法、网络设备及系统 | |
CN106936680A (zh) | 云计算平台异构网络之间互通的系统及方法 | |
US10855572B2 (en) | Area abstraction extensions to routing protocols | |
WO2024016869A1 (zh) | 一种组播配置方法及装置 | |
CN115865844B (zh) | 基于sdn与ndn的虚实结合动态流量调度方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |