CN113542112B - 一种报文转发方法及网络设备 - Google Patents

一种报文转发方法及网络设备 Download PDF

Info

Publication number
CN113542112B
CN113542112B CN202010314701.8A CN202010314701A CN113542112B CN 113542112 B CN113542112 B CN 113542112B CN 202010314701 A CN202010314701 A CN 202010314701A CN 113542112 B CN113542112 B CN 113542112B
Authority
CN
China
Prior art keywords
route
message
tunnel
network device
local
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.)
Active
Application number
CN202010314701.8A
Other languages
English (en)
Other versions
CN113542112A (zh
Inventor
杨杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010314701.8A priority Critical patent/CN113542112B/zh
Priority to US17/234,192 priority patent/US11611508B2/en
Priority to EP21169069.8A priority patent/EP3902211A1/en
Publication of CN113542112A publication Critical patent/CN113542112A/zh
Application granted granted Critical
Publication of CN113542112B publication Critical patent/CN113542112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering

Abstract

一种报文转发方法及网络设备,该方法应用于网络设备,该方法具体包括:网络设备获取第一报文的第一隧道标识;根据所述第一隧道标识为第一值,所述网络设备根据虚拟路由转发VRF表中的第一路由组转发所述第一报文,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由。网络设备基于VRF表中只包括有本地路由的本地路由组转发该报文,可以使得该报文被转发至本地的虚拟机进行处理,而不会被转发至其他的隧道端点设备,避免了转发报文时出现路由环路。

Description

一种报文转发方法及网络设备
技术领域
本申请涉及通信技术领域,尤其涉及一种报文转发方法及网络设备。
背景技术
随着云计算的快速发展,数据中心的虚拟化程度越来越高。为了满足日益增加的用户需求,数据中心通常采用可扩展虚拟局域网络(Virtual extensible Local AreaNetwork,VXLAN)技术来扩展网络虚拟化,以得到足够数量的虚拟网络,从而满足用户的使用需求。
数据中心的VXLAN中通常包括核心设备、对等的多个VXLAN隧道端点(VXLANTunnel End Point,VTEP)设备以及分别与VTEP设备连接的虚拟机(virtual machine,VM)。一般地,VM可以部署于与VTEP设备连接的服务器上。虚拟网络功能(virtual networkfunction,VNF)网元可以分布于多个VM上,该多个VM能够实现相同的网络功能,且共享同一个业务互联网(Internet Protocol,IP)地址。
目前,在VXLAN网络中,在同一VNF网元下的多个VM接入了不同的VXLAN隧道端点设备的情况下,VXLAN隧道端点设备在接收到网络侧的报文,并对该进行报文转发的时候容易出现路由环路的现象,导致报文无法被正确发送至VM处。
发明内容
本申请实施例提供了一种报文转发方法及网络设备,网络设备根据路由的地址类型对虚拟路由转发(Virtual Routing Forwarding,VRF)中的路由进行了分组,使得VRF表中的路由被分成了本地路由组以及远端路由组,网络设备在获取到报文的隧道标识时,可以确定该报文来自于隧道端点设备,网络设备基于VRF表中只包括有本地路由的本地路由组转发该报文,从而避免了该报文再次被转发至其他的隧道端点设备,即避免了路由环路现象的出现,保证了报文的正常转发。
本申请第一方面提供了一种报文转发方法,包括:在网络设备接收到第一报文之后,网络设备可以获取第一报文的第一隧道标识,该第一隧道标识可以用于表示所述第一报文是否是来自于传输隧道的;根据所述第一隧道标识为第一值,所述网络设备根据VRF表中的第一路由组转发所述第一报文,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由,即所述第一路由组可以称为本地路由组,第二路由组可以称为远端路由组。所述第一隧道标识为第一值具体是表示所述第一报文是来自于传输隧道的。也就是说,所述网络设备根据所述第一隧道标识为第一值,可以确定所述第一报文是由网络侧的对端隧道端点设备通过传输隧道转发给所述网络设备的。因此,所述网络设备可以根据VRF表中的本地路由组转发所述第一报文,从而保证网络设备所选择到的路由为本地路由,而不会出现选择到远端路由的情况。
本方案中,网络设备在获取到报文的隧道标识,并且根据报文的值确定该报文来自于作为隧道源端的隧道端点设备时,网络设备基于VRF表中只包括有本地路由的本地路由组转发该报文,从而避免了该报文再次被转发至其他的隧道端点设备,即避免了路由环路现象的出现,保证了报文的正常转发。
可选地,在一种可能的实现方式中,所述根据所述第一报文中的第一隧道标识为第一值,所述网络设备根据VRF表中的第一路由组转发所述第一报文,包括:所述网络设备根据所述第一报文中的第一隧道标识为第一值,在所述VRF表中查找第一路由标记信息,以确定对应于所述第一路由标记信息的所述第一路由组;所述网络设备再根据确定的所述第一路由组转发所述第一报文,例如所述网络设备在所述第一路由组中选择一个路由来转发所述第一报文。其中,所述第一路由标记信息具体可以用于标记VRF表中的本地路由,所述VRF表中的本地路由均对应有第一路由标记信息,所述第一路由标记信息例如可以位于VRF表中的某一字段。因此,网络设备通过确定VRF表中的路由是否对应有第一路由标记信息,即可确定该路由是否是属于第一路由组的路由,从而确定VRF表中的第一路由组。
本方案中,网络设备通过第一路由组可以实现第一报文的无环路转发,且通过查找VRF表中的路由标记信息来确定VRF表中的第一路由组,从而实现基于第一路由组转发来自于传输隧道的第一报文,提高了方案实现的灵活性。
可选地,在一种可能的实现方式中,所述网络设备具备负载均衡能力,所述方法包括:所述网络设备还获取第二报文的第二隧道标识,所述第一报文和所述第二报文属于同一业务流量,即所述第一报文的目的地址和所述第二报文的目的地址是相同的;所述网络设备根据VRF表中的第一路由组转发所述第一报文,包括:所述网络设备在所述第一路由组中确定第一路由,并根据所述第一路由转发所述第一报文;所述网络设备根据所述第二隧道标识为所述第一值,在所述第一路由组中确定第二路由,并根据所述第二路由转发所述第二报文。其中,网络设备可以是根据第一报文以及第二报文的目的地址在第一路由组中确定可以用于转发第一报文和第二报文的多个路由,然后基于负载均衡策略在所述多个路由中分别选择用于转发所述第一报文的第一路由,以及用于转发所述第二报文的第二路由,从而将第一报文和第二报文转发至不同的VM上进行处理,以实现VM之间的负载均衡,避免出现一些VM过载而另外一些VM空闲的现象。
可选地,在一种可能的实现方式中,所述方法包括:所述网络设备获取第三报文的第三隧道标识;根据所述第三隧道标识为第二值,所述网络设备根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。所述第三隧道标识为第二值具体是表示所述第三报文不是来自于传输隧道的,所述网络设备根据所述第三隧道标识为第二值,可以确定所述第三报文是来自于本地的。因此,所述网络设备可以根据VRF表中的第一路由组和第二路由组转发所述第三报文,即所述网络设备根据VRF表中的本地路由组和远端路由组转发所述第三报文。在该情形下,由于第三报文来自于用户侧网络,如由VM等用户设备发出,不会出现环路的情况,因而可以基于第一路由组和第二路由组来选择路由,以实现流量同时在本地VM和远端VM的负载分担。
可选地,在一种可能的实现方式中,所述VRF表中的所述第二路由组不具有标记信息或者对应于第二路由标记信息,该第二路由标记信息可以是区别于第一路由标记信息的任意标记信息或者任意值。示例性地,在VRF表中可以通过某一字段来表示所述第二路由标记信息,该字段即在VRF表中与远端路由对应的特定字段,用于表示远端路由对应的第二路由标记信息。该字段可以与第一路由标记信息位于同一字段,对应于第二路由标记信息的该字段的值,与该对应于第一路由标记信息的值不相同;或者,该字段可以与对应于第一路由标记信息的相应字段属于不同字段;或者,在VRF表中只有第一路由组对应有标记信息,而第二路由组则不具有标记信息。
可选地,在一种可能的实现方式中,所述网络设备获取第一报文的第一隧道标识之前,所述方法还包括:所述网络设备接收所述第一报文;所述网络设备根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识;所述网络设备获取第一报文的第一隧道标识,包括:所述网络设备获取所述更新后的第一报文的第一隧道标识。也就是说,在网络设备所接收到的第一报文中本身是携带有隧道属性信息的,网络设备在确定第一报文中携带有隧道属性信息之后,可以对第一报文进行更新,以使得更新后的第一报文中包括有与第一报文本身所携带的隧道属性信息对应的第一隧道标识,从而便于网络设备在转发第一报文时能够基于第一隧道标识选择对应的第一路由组。其中,第一隧道标识可以与隧道属性信息相同,或与隧道属性信息中的某一指示字段的值相同;或者,第一隧道标识可以与隧道属性信息不同,但二者之间具有某种对应关系等。
可选地,在一种可能的实现方式中,所述隧道属性信息为VXLAN隧道属性信息,或者MPLS隧道属性信息,或者SR隧道属性信息。
可选地,在一种可能的实现方式中,所述网络设备为数据中心网络中连接多个虚拟机的设备。
本申请第二方面提供一种网络设备,包括:获取单元,用于获取第一报文的第一隧道标识;处理单元,用于根据所述第一隧道标识为第一值,根据VRF表中的第一路由组转发所述第一报文,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由。
可选地,在一种可能的实现方式中,所述处理单元还用于:根据所述第一报文中的第一隧道标识为第一值,在所述VRF表中查找第一路由标记信息,以确定对应于所述第一路由标记信息的所述第一路由组;根据确定的所述第一路由组转发所述第一报文。
可选地,在一种可能的实现方式中,所述网络设备具备负载均衡能力;所述获取单元,还用于获取第二报文的第二隧道标识,所述第一报文和所述第二报文属于同一业务流量;所述处理单元,还用于:在所述第一路由组中确定第一路由,并根据所述第一路由转发所述第一报文;根据所述第二隧道标识为所述第一值,在所述第一路由组中确定第二路由,并根据所述第二路由转发所述第二报文。
可选地,在一种可能的实现方式中,所述获取单元,还用于获取第三报文的第三隧道标识;所述处理单元,还用于根据所述第三隧道标识为第二值,根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。
可选地,在一种可能的实现方式中,所述VRF表中的所述第二路由组不具有标记信息或者对应于第二路由标记信息。
可选地,在一种可能的实现方式中,所述获取单元,还用于接收所述第一报文;所述处理单元,还用于根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识。
可选地,在一种可能的实现方式中,所述隧道属性信息为VXLAN隧道属性信息,或者MPLS隧道属性信息,或者SR隧道属性信息。
可选地,在一种可能的实现方式中,所述网络设备为数据中心网络中连接多个虚拟机的设备。
本申请第三方面提供一种网络设备,该网络设备包括:处理器、存储器;存储器用于存储指令;处理器用于执行存储器中的指令,使得网络设备执行如前述第一方面中任一项的方法。
本申请第四方面提供一种网络设备,该网络设备包括:处理器;所述处理器与存储器耦合,所述处理器用于执行存储器中的指令,使得网络设备执行如前述第一方面中任一项的方法。
本申请第五方面提供一种计算机存储介质,该计算机存储介质可以是非易失性的;该计算机存储介质中存储有计算机可读指令,当该计算机可读指令被处理器执行时实现第一方面中任一设计中的方法。
本申请第六方面提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如第一方面中任一设计中的方法。
本申请第七方面提供一种芯片系统,该芯片系统包括处理器,用于支持网络设备实现上述方面中所涉及的功能,例如,发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,芯片系统还包括存储器,存储器,用于保存网络设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供了一种报文转发方法及网络设备,网络设备根据路由的地址类型对VRF中的路由进行了分组,使得VRF表中的路由被分成了本地路由组以及远端路由组。网络设备在获取到报文的隧道标识时,根据隧道标识的值确定该报文是否来自于隧道端点设备。在报文来自于隧道端点设备时,网络设备基于VRF表中只包括有本地路由的本地路由组转发该报文,从而避免了该报文再次被转发至其他的隧道端点设备,即避免了路由环路现象的出现,保证了报文的正常转发。
附图说明
图1为本申请实施例提供的数据中心组网示意图;
图2a为本申请实施例提供的南北流量的示意图;
图2b为本申请实施例提供的东西流量的示意图;
图3为本申请实施例提供的一种业务场景示意图;
图4为本申请实施例提供的另一种场景示意图;
图5为本申请实施例提供的一种报文转发方法500的流程示意图;
图6为本申请实施例提供的一种报文转发方法600的流程示意图;
图7为本申请实施例提供的一种VXLAN隧道报文的封装示意图;
图8为本申请实施例提供的另一种业务场景示意图;
图9为本申请实施例提供的一种网络设备的结构示意图;
图10为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,下面结合附图,对本申请的实施例进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。本领域普通技术人员可知,随着新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。本申请中所出现的单元的划分,是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个单元可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元之间的间接耦合或通信连接可以是电性或其他类似的形式,本申请中均不作限定。并且,作为分离部件说明的单元或子单元可以是也可以不是物理上的分离,可以是也可以不是物理单元,或者可以分布到多个电路单元中,可以根据实际的需要选择其中的部分或全部单元来实现本申请方案的目的。
在传统的移动通信网络中,例如第二代(2generation,2G)通信网络、第三代(3generation,3G)通信网络以及第四代(4generation,4G)通信网络,大多数的电信设备都是采用专有平台结构,即不同电信设备之间的软件和硬件彼此独立。比如,在4G网络系统中,移动管理单元(mobility management entity,MME)、业务网关(serving gateway,S-GW)以及分组报文网关(packet data network gateway,P-GW)等分别由独立的框式或盒式设备承载,这些设备在软件层面以及硬件层面都没有交集。也就是说,如果在一个机房内,MME负荷低,MME的单板也不能拔出来插到即将过载的S-GW网元上。
随着数据中心集成和规模化,以及第五代(5generation,5G)通信技术、网络功能虚拟化(network functions virtualization,NFV)技术、云技术的不断成熟,电信网元逐渐从专用的硬件平台,迁移到数据中心中通用的硬件平台,并且以VNF网元的形态部署在数据中心服务器的VM上,形成了电信云数据中心网络。
目前,在数据中心内部,具有交换数据集中、东西流量增多等特征,对数据中心网络的要求进一步提高。因此,为了适应以上变化,数据中心网络从传统的虚拟局域网络(virtual local area network,VLAN)网络,向VXLAN网络与软件定义网络(networkdefined software,SDN)转型,实现网络与业务的适配与联动,提高资源使用效率与业务发放效率。其中,VXLAN是一种网络虚拟化技术,通过将原主机发出的数据包封装在用户数据报协议(User Datagram Protocol,UDP)中,并使用物理网络的IP、MAC作为外层头进行封装,然后在网络上传输,到达目的地后由隧道终结点解封装并将数据发送给目标主机。通过VXLAN技术可以实现在已有三层网络上构建虚拟二层网络,实现VM之间的二层互通。
具体地,可以参阅图1,图1为本申请实施例提供的数据中心组网示意图。在数据中心中,典型的VXLAN组网可以包括:数据中心网络网关(data center gateway,DCGW)、脊(spine)交换机、叶(leaf)交换机以及VM;DCGW可以与一个或多个spine交换机连接,spine交换机可以与一个或多个leaf交换机连接,leaf交换机可以连接有一个或多个VM。其中,DCGW与leaf交换机之间可以建立VXLAN隧道,leaf交换机与leaf交换机之间也可以建立VXLAN隧道。
为了便于理解,以下将对VXLAN网络中所涉及的专业术语进行解释。
VTEP设备,VTEP设备是能够对VXLAN报文进行封装和解封装的网络设备。VXLAN报文中源IP地址为源端VTEP设备的IP地址,目的IP地址为目的端VTEP设备的IP地址。一对VTEP地址就对应着一条VXLAN隧道。源端VTEP设备对报文进行封装后,通过隧道向目的端VTEP设备发送封装后的报文,再由目的端VTEP设备对接收到的封装报文进行解封装。图1中的leaf交换机设备可以具有对VXLAN报文进行封装和解封装的能力,即为VTEP设备。
网络虚拟边缘(Network Virtualization Edge,NVE)设备,NVE设备是实现网络虚拟化功能的网络实体。报文在经过NVE设备封装转换后,NVE设备之间就可基于三层基础网络建立二层虚拟化网络,图1中的leaf交换机设备即为NVE设备。VTEP设备即为NVE设备的一种类型。
二层网关(Level-2 GateWay,L2GW),L2GW类似于传统网络的二层接入设备,在VXLAN网络中通过L2GW可以解决租户接入VXLAN虚拟网络,也可用于同一VXLAN网络的子网通信。
三层网关(Level-3 GateWay,L3GW)。为了使VXLAN网络之间,以及VXLAN网络和非VXLAN网络之间能够进行通信,引入了L3GW的概念。L3GW可以用于VXLAN网络的跨子网通信以及外部网络的访问。其中,图1中的leaf交换机可以作为L2GW或者L3GW,又或者同时作为L2GW以及L3GW,即leaf交换机可以为L2GW/L3GW。
通常,数据中心网络的流量可划分为南北流量和东西流量。南北流量,指的是从外部网络进入数据中心网络的流量以及从数据中心网络流出外部网络的流量。在数据中心内部传输南北流量时,VXLAN隧道的一个端点在DCGW,另一个端点在leaf交换机,即流量是从DCGW到leaf交换机,或者是leaf交换机到DCGW。东西流量,指的是数据中心内部VM之间的流量。在数据中心内部传输东西流量时,VXLAN隧道的两个端点都在leaf交换机上,即流量通常是由一个leaf交换机到另一个leaf交换机。当流量从DCGW流入本leaf交换机,或者由另一leaf交换机流入本leaf交换机时,该流量属于从网络侧流入的流量。当该流量从用户侧设备或用户网络流入本leaf交换机,如从本leaf交换机挂载的VM流入本leaf交换机时,该流量属于从用户侧流入的流量。
具体地,可以参阅图2a,图2a为本申请实施例提供的南北流量的示意图。如图2a所示,从外部网络进入数据中心的报文由DCGW通过spine交换机1转发给leaf交换机1,最后由leaf交换机1转发给leaf交换机1所连接的VM1;同样,VM1将其所产生的报文发送给leaf 1,由leaf交换机1通过spine交换机1转发给DCGW,最后由DCGW发送给外部网络。其中,从DCGW到VM1的流量以及从VM1到DCGW的流量均可以称为南北流量。
可以参阅图2b,图2b为本申请实施例提供的东西流量的示意图。如图2a所示,VM1将其所产生的报文发送给leaf交换机1,由leaf交换机1通过spine交换机1转发给leaf交换机2,最后由leaf交换机2发送给VM3。其中,从VM1到VM3的流量可以称为东西流量。
一般地,在VXLAN网络中部署有SDN时,对于跨子网的两个VM之间的东西流量,leaf交换机可以实现就近转发,通过spine交换机将流量就近转发到另一个VM上,从而避免了跨子网的流量绕行到DCGW而形成流量瓶颈。
在数据中心网络中,VM是可以任意部署的;在一定的条件下,VM甚至是可以动态迁移的。这样,在VNF网元分布在多个VM上的情况下,多个VM共享同一个IP地址,且该多个VM可能是部署在不同的机架上的,即多个VM接入了不同的leaf交换机。如图3所示,图3为本申请实施例提供的一种业务场景示意图,VNF网元分布在VM1至VM4上,VM1至VM4可以共享同一个IP地址(IP地址例如可以为1.1.1.1)。其中,VM1和VM2接入leaf交换机1,VM3和VM4接入leaf交换机2。这样一来,在leaf交换机1或者leaf交换机1转发IP地址为1.1.1.1的报文时,对应的下一跳有可能是本地VM,下一跳也可能是远端VM。这里将下一跳为leaf交换机1的本地VM的路由称为本地路由,将下一跳为远端VM的路由称为远端路由。远端VM例如是不同于leaf交换机1的其他leaf交换机下挂载的VM。
具体地,对于图3中所示的leaf交换机1,leaf交换机1的VRF表具体可以为:
prefix:1.1.1.1nexthop:VM1(local)
(--前缀:1.1.1.1下一跳:VM1(本地))
prefix:1.1.1.1nexthop:VM2(local)
(--前缀:1.1.1.1下一跳:VM2(本地))
prefix:1.1.1.1nexthop:VM3(remote)
(--前缀:1.1.1.1下一跳:VM3(远端))
prefix:1.1.1.1nexthop:VM4(remote)
(--前缀:1.1.1.1下一跳:VM4(远端))
也就是说,在前缀(即目的地址)为1.1.1.1的情况下,leaf交换机1对应的下一跳路由包括有两个本地路由(下一跳为VM1和VM2)以及两个远端路由(下一跳为VM3和VM4)。
对于图3中所示的leaf交换机2,leaf交换机2的VRF表具体可以为:
prefix:1.1.1.1nexthop:VM1(remote)
(--前缀:1.1.1.1下一跳:VM1(远端))
prefix:1.1.1.1nexthop:VM2(remote)
(--前缀:1.1.1.1下一跳:VM2(远端))
prefix:1.1.1.1nexthop:VM3(local)
(--前缀:1.1.1.1下一跳:VM3(本地))
prefix:1.1.1.1nexthop:VM4(local)
(--前缀:1.1.1.1下一跳:VM4(本地))
同理,在前缀(即目的地址)为1.1.1.1的情况下,leaf交换机2对应的下一跳路由包括有两个远端路由(下一跳为VM1和VM2)以及两个本地路由(下一跳为VM3和VM4)。
一般地,为了实现VNF网元基于VM的负载均衡,即由多个VM均衡地分担VNF网元的业务,在leaf交换机上会实现本地路由和远端路由等价。也就是说,在leaf交换机转发某一个IP地址下的报文时,leaf交换机可以在该IP地址对应的多个本地路由和/或远端路由中等价选择其中一个路由,并基于所选择的路由转发该报文。
这样一来,在共享同一个IP地址的多个VM接入了不同的leaf交换机时,容易存在路由环路的问题。具体地,在leaf交换机1接收到目的地址为1.1.1.1的报文时,leaf交换机1在VM1至VM4中选择了VM3或VM4作为路由下一跳,由于VM3和VM4接入leaf交换机2,因此leaf交换机1将报文通过spine交换机1转发至leaf交换机2;leaf交换机2在接收到spine交换机1所转发的报文时,leaf交换机2可能选择VM1或VM2作为路由下一跳,因此leaf交换机2通过spine交换机2将该报文转发至leaf交换机1上。也就是说,该报文会一直在leaf交换机1和leaf交换机之间转发,并不能够到达目的地址,产生了路由环路的问题。
此外,如果leaf交换机在转发报文时,优先选择本地路由,虽然可以解决环路问题,但报文转发压力会全部集中在本地VM上,难以实现整网的负载均衡。如图4所示,图4为本申请实施例提供的另一种场景示意图。其中,VNF网元1分布在VM1和VM2上,VM1和VM2共享IP地址1.1.1.1;VNF网元2分布在VM3和VM4上,VM3和VM4共享IP地址2.2.2.2,且VM1至VM3接入leaf交换机1,VM4接入leaf交换机2。
此时,对于图4中所示的leaf交换机1,leaf交换机1的VRF表具体可以为:
prefix:1.1.1.1nexthop:VM1(local)
(--前缀:1.1.1.1下一跳:VM1(本地))
prefix:1.1.1.1nexthop:VM2(local)
(--前缀:1.1.1.1下一跳:VM2(本地))
prefix:2.2.2.2nexthop:VM3(local)
(--前缀:2.2.2.2下一跳:VM3(本地))
prefix:2.2.2.2nexthop:VM4(remote)
(--前缀:2.2.2.2下一跳:VM4(远端))
对于图4中所示的leaf交换机2,leaf交换机2的VRF表具体可以为:
prefix:1.1.1.1nexthop:VM1(remote)
(--前缀:1.1.1.1下一跳:VM1(远端))
prefix:1.1.1.1nexthop:VM2(remote)
(--前缀:1.1.1.1下一跳:VM2(远端))
prefix:2.2.2.2nexthop:VM3(remote)
(--前缀:2.2.2.2下一跳:VM3(远端))
prefix:2.2.2.2nexthop:VM4(local)
(--前缀:2.2.2.2下一跳:VM4(本地))
本实施例中上述VRF中的信息旨在更清晰地阐述本实施例的应用场景,可以理解地,实际应用中VRF表中呈现的信息内容和样式可以根据需要具体设计。在图4所示的场景下,如果leaf交换机在转发报文时优先选择本地路由,那么在leaf交换机1接收到由VM1或VM2发送的报文,且该报文的目的地址为2.2.2.2时,leaf交换机1依据优先选择本地路由的规则,会一直选择将报文转发给本地的VM3,从而导致VM3一直处于高负载状态,而VM4则一直处于空闲状态,无法实现负载均衡。
以上以图1示出的网络结构为例,可以理解地,数据中心网络的可能结构并不仅限于此。例如,数据中心网络也可以不包括spine交换机,或者在leaf交换机下还连接二层leaf交换机,然后由二层leaf交换机挂载VM用户设备等,该二层leaf交换机也可以理解为用户侧设备。但在不同的各种网络结构中,仍然可能存在上述描述的问题。
有鉴于此,本申请实施例提供一种报文转发方法,网络设备根据路由的地址类型对VRF中的路由进行了分组,使得VRF表中的路由被分成了本地路由组以及远端路由组,网络设备在获取到报文的隧道标识时,可以确定该报文来自于对端隧道端点设备,如网络侧的DCGW或不同于所述网络设备的另一leaf交换机,网络设备基于VRF表中只包括有本地路由的本地路由组转发该报文,从而避免了该报文再次被转发至其他的隧道端点设备,即避免了路由环路现象的出现,保证了报文的正常转发。
其中,本申请实施例提供的报文转发方法可以应用于图3或图4所示的部署有VXLAN隧道的网络架构中,也可以应用于部署有其他传输隧道的网络架构中(例如部署有MPLS隧道或者SR隧道),在此不做限定。
可以参阅图5,图5为本申请实施例提供的一种报文转发方法500的流程示意图。如图5所示,本申请实施例提供的报文转发方法500,包括:
501、网络设备获取第一报文的第一隧道标识。
本实施例中,所述网络设备与网络中其他的网络设备建立有传输隧道,例如所述网络设备与其他的网络设备建立VXLAN隧道、MPLS隧道或者SR隧道。作为一个隧道端点设备,所述网络设备可以接收其他的隧道端点设备所发送的第一报文,并对该第一报文进行转发。所述第一报文来自于所述网络设备与其他的隧道端点设备之间所建立的传输隧道。来自于传输隧道的所述第一报文中包括有第一隧道标识,网络设备可以获取到第一报文的第一隧道标识,该第一隧道标识可以用于表示所述第一报文的隧道属性,即表示所述第一报文是否是来自于传输隧道的,如来自网络侧的第一报文通过对端隧道端点设备DCGW发送至所述网络设备。也就是说,在第一报文来自于传输隧道的情况下,网络设备在获取到第一报文的第一隧道标识之后,可以基于第一隧道标识确定第一报文是由其他的隧道端点设备通过传输隧道转发给所述网络设备,并需要由所述网络设备继续转发的。
在一个可能的实施方式中,所述网络设备具体可以为数据中心网络中连接有一个或多个VM的设备。例如,所述网络设备可以为与部署有一个或多个VM的服务器所连接的接入交换机(比如leaf交换机)或接入路由器。所述网络设备可以接收其他设备所发送的报文,并将该报文转发给与其连接的VM;所述网络设备也可以接收与其连接的VM所发送的报文,并将报文转发给其他的设备。以图3或图4为例,所述网络设备可以是leaf交换机1,上述其他设备可以是leaf交换机2,也可以是spine交换机1或spine交换机2等。
其中,在网络设备为接入交换机的情况下,所述第一报文可以是DCGW通过所述网络设备与DCGW之间的传输隧道转发给所述网络设备的,所述第一报文还可以是其他的接入交换机通过其与所述网络设备之间的传输隧道转发给所述网络设备的,在此并不唯一限定向所述网络设备发送所述第一报文的设备。
502、根据所述第一隧道标识为第一值,所述网络设备根据VRF表中的第一路由组转发所述第一报文。
其中,该第一路由组中只包括有一个或多个下一跳出接口为本地出接口的本地路由,所述本地路由即用于到达与所述网络设备挂载的用户侧设备,如所述网络设备挂载的VM的路由,第一路由组中并不包括有下一跳出接口为远端出接口的远端路由,即该第一路由组实际上为本地路由组。此外,VRF表中还包括有第二路由组,该第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由,即该第二路由组为远端路由组。简单来说,根据路由下一跳的类型,VRF表中的路由可以被分成为两个路由组,下一跳出接口为本地出接口的路由则属于第一路由组,下一跳出接口为远端出接口的路由则属于第二路由组。
本实施例中,所述网络设备获取到的第一报文中的第一隧道标识的值为第一值,所述第一隧道标识为第一值可以具体是表示所述第一报文是来自于传输隧道的。也就是说,所述网络设备根据所述第一隧道标识为第一值,可以确定所述第一报文是由其他的隧道端点设备通过传输隧道转发给所述网络设备的。因此,所述网络设备可以根据VRF表中的第一路由组转发所述第一报文,即所述网络设备根据VRF表中的本地路由组转发所述第一报文。
这样,在第一报文中的第一隧道标识为第一值的情况下,网络设备根据VRF表中只包括有本地路由的本地路由组来转发第一报文,可以使得网络设备将所述第一报文转发至本地,即被其他的隧道端点设备转发至所述网络设备的第一报文不会再次被转发至其他的隧道端点设备,避免了路由环路现象的出现,保证了第一报文的正常转发。
在一个可能的实施方式中,所述网络设备根据VRF表中的第一路由组转发所述第一报文,具体可以包括:根据所述第一报文中的第一隧道标识为第一值,所述网络设备在VRF表中查找第一路由标记信息,以确定与该第一路由标记信息对应的第一路由组;网络设备再根据确定的所述第一路由组转发所述第一报文,即网络设备可以根据所述第一报文的目的地址在第一路由组确定用于转发所述第一报文的路由,进而基于该路由转发所述第一报文。
其中,所述第一路由标记信息具体可以用于标记VRF表中的本地路由,所述VRF表中的本地路由均对应有第一路由标记信息。因此,网络设备通过确定VRF表中的路由是否对应有第一路由标记信息,即可确定该路由是否是属于第一路由组的路由,从而确定VRF表中的第一路由组。
可选地,在一个可能的实现方式中,在VRF表中可以通过指定字段来表示所述第一路由标记信息,例如在VRF表中新增与本地路由对应的特定字段,用于表示本地路由对应的第一路由标记信息。例如,在VRF表中新增“flag”字段(“标记”字段),“flag”字段下的值为“1”时,则表示第一路由标记信息。具体地,一种以新增的“flag”字段表示第一路由标记信息的VRF表可以如下所示:
prefix:1.1.1.1nexthop:VM1 flag:1(local)
(--前缀:1.1.1.1下一跳:VM1标记:1(本地))
prefix:1.1.1.1nexthop:VM2 flag:1(local)
(--前缀:1.1.1.1下一跳:VM2标记:1(本地))
prefix:1.1.1.1nexthop:VM3(remote)
(--前缀:1.1.1.1下一跳:VM3(远端))
prefix:1.1.1.1nexthop:VM4(remote)
(--前缀:1.1.1.1下一跳:VM4(远端))
可以看出,在VRF表的本地路由中新增了“flag”字段,且“flag”字段对应的值为1,用于表示“flag”字段对应的路由为本地路由,即值为1的“flag”字段用于表示第一路由标记信息。如此一来,网络设备通过查找VRF表中值为1的“flag”字段,即可确定VRF表中与“flag”字段对应的本地路由,从而确定VRF表中的第一路由组。
在上述的实现方式中,VRF表中是通过“flag”字段对应的值为1来表示第一路由标记信息,这是作为一种具体的示例。在其他可能的实现方式中,在VRF表中还可以通过为“flag”字段赋予其他值,或者利用其他可能的已有或新增字段来表示第一路由标记信息,网络设备通过查找VRF表中对应指定字段的路由,即可确定VRF表中的本地路由。
此外,对于VRF表中的第二路由组,所述第二路由组可以不具有标记信息或者对应于第二路由标记信息,即第二路由组中的路由可以是不具有标记信息的,或者第二路由组中的路由具有第二路由标记信息。
可以理解的是,在第一路由组具有第一路由标记信息,且第二路由组不具有标记信息的情况下,网络设备可以通过判断VRF表中的路由是否具有标记信息来确定VRF表中的第一路由组以及第二路由组;例如,网络设备可以通过判断VRF表中的路由是否具有指定的字段来确定路由所属的路由组,即具有指定的字段的路由属于第一路由组,不具有指定的字段的路由则属于第二路由组。
可以理解地,还可以采用其他任何可能的形式区别所述第一路由组和第二路由组,只要网络设备至少能够基于该形式确定出第一路由组即可。
在第一路由组具有第一路由标记信息,第二路由组具有第二路由标记信息的情况下,网络设备则通过判断VRF表中的路由具体的标记信息来确定VRF表中的第一路由组以及第二路由组。其中,第二路由标记信息具体可以是区别于第一路由标记信息的任意值或者任意字段,以使得网络设备能够识别出路由中的第一路由标记信息或者第二路由标记信息。示例性地,在VRF表中同样可以通过新增的字段来表示所述第二路由标记信息,即在VRF表中新增与远端路由对应的特定字段,用于表示远端路由对应的第二路由标记信息。例如,在VRF表中可以新增“flag”字段,“flag”字段下的值为“0”时,则表示第二路由标记信息。也就是说,在路由中新增的“flag”字段的值为“0”时,表示第二路由标记信息;在路由中新增的“flag”字段的值为“1”时,则表示第一路由标记信息;网络设备可以根据“flag”字段的值来判断VRF表中的路由是属于第一路由组还是属于第二路由组。
具体地,一种以新增的“flag”字段表示第一路由标记信息以及第二路由标记信息的VRF表可以如下所示:
prefix:1.1.1.1nexthop:VM1 flag:1(local)
(--前缀:1.1.1.1下一跳:VM1标记:1(本地))
prefix:1.1.1.1nexthop:VM2 flag:1(local)
(--前缀:1.1.1.1下一跳:VM2标记:1(本地))
prefix:1.1.1.1nexthop:VM3flag:0(remote)
(--前缀:1.1.1.1下一跳:VM3标记:0(远端))
prefix:1.1.1.1nexthop:VM4flag:0(remote)
(--前缀:1.1.1.1下一跳:VM4标记:0(远端))
可以看出,在VRF表的本地路由中新增了“flag”字段,且“flag”字段对应的值为1时,表示“flag”字段对应的路由为本地路由;“flag”字段对应的值为0时,表示“flag”字段对应的路由为远端路由。如此一来,网络设备通过判断VRF表中“flag”字段的值,即可确定VRF表中的本地路由以及远端路由,从而确定VRF表中的第一路由组以及第二路由组。
可选地,在一个可能的实施方式中,在所述网络设备具有负载均衡能力的情况下,所述网络设备在基于第一路由组转发隧道标识为第一值的报文时,还可以基于预先配置的负载均衡策略确定转发报文的路由。
示例性地,所述网络设备接收到第一报文和第二报文,该第一报文的第一隧道标识为第一值,该第二报文的第二隧道标识同样为所述第一值,即所述网络设备可以获取到值为第一值的第一隧道标识以及第二隧道标识。其中,所述第一报文和所述第二报文属于同一业务对应的流量,即所述第一报文的目的地址和所述第二报文的目的地址是相同的。在所述网络设备基于第一路由组转发第一报文时,所述网络设备可以基于第一报文的目的地址在第一路由组中确定第一报文对应的等价多路径路由(Equal-Cost Multi-Pathrouting,ECMP)组,然后再基于负载均衡策略在所述ECMP组中确定一个用于转发所述第一报文的路由,并基于所确定的路由转发所述第一报文。其中,所述ECMP组表示的是可用于转发所述第一报文的路由组,所述ECMP组中的路由对应的目的地址均相同,即所述ECMP组中的路由的目的地址与所述第一报文的目的地址对应,所述ECMP组中的路由的下一跳出接口则不相同。同样,在所述网络设备转发所述第二报文时,可以基于第二报文的目的地址在第一路由组中确定第二报文对应的同一ECMP组,然后再基于负载均衡策略在第二报文对应的ECMP组中确定一个用于转发所述第二报文的路由,并基于所确定的路由转发所述第二报文。
例如,网络设备在转发第一报文时,基于负载均衡策略在ECMP组中选择了第一路由为用于转发第一报文的路由,并且根据所述第一路由转发所述第一报文,例如将所述第一报文转发至VM1处;网络设备在转发第二报文时,基于同样的负载均衡策略在所述ECMP组中选择了第二路由为用于转发第二报文的路由,并且根据所述第二路由转发所述第二报文,例如将所述第二报文转发至VM2处;其中,VM1与VM2共享同一个IP地址。这样一来,在第一报文和第二报文的目的地址相同的情况下,网络设备可以基于负载均衡策略将第一报文和第二报文转发至不同的VM上进行处理,以实现VM之间的负载均衡,从而避免出现一些VM过载而另外一些VM空闲的现象。
以上描述的是网络设备转发隧道标识为第一值的报文的过程,以下将详细描述网络设备转发隧道标识不是第一值的报文的过程。
可以参阅图6,图6为本申请实施例提供的一种报文转发方法600的流程示意图。如图6所示,本申请实施例提供的报文转发方法600,包括:
601、所述网络设备获取第三报文的第三隧道标识。
具体地,网络设备在接收到第三报文之后,网络设备可以获取第三报文的第三隧道标识。
602、根据所述第三隧道标识为第二值,所述网络设备根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。
本实施例中,所述网络设备获取到的第三报文中的第三隧道标识的值为第二值,所述第三隧道标识为第二值具体是表示所述第三报文不是来自于传输隧道的,即第三隧道标识为第二值具体可以表示所述第三报文是来自于用户侧的。例如,在网络设备接收到的第三报文是与所述网络设备挂载的本地的VM发送的时候,所述第三报文中的第三隧道标识的值则为第二值。
也就是说,所述网络设备根据所述第三隧道标识为第二值,可以确定需要转发的所述第三报文是来自于本地的,或者用户设备(如所述网络设备挂载的VM)的。因此,所述网络设备可以根据VRF表中的第一路由组和第二路由组转发所述第三报文,即所述网络设备根据VRF表中的本地路由组和远端路由组转发所述第三报文。
其中,所述网络设备根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文具体可以是:所述网络设备根据第三报文的目的地址,在所述VRF表中查找第三报文对应的路由,即前缀与第三报文的目的地址相同的路由;然后所述网络设备在查找到的路由中选择一个路由,以转发所述第三报文。可以理解的是,在VRF表中的路由被分成第一路由组和第二路由组两个路由组的情况下,第一路由组以及第二路由组中的路由即为VRF表中的所有路由,因此,网络设备可以是直接根据VRF表中的路由来实现第三报文的转发,即网络设备可以不再需要确定VRF表中的第一路由组以及第二路由组。
本实施例中,网络设备在接收到来自于诸如用户侧的第三报文时,基于VRF表中的本地路由以及远端路由来实现报文的转发,保证所述第三报文能够均衡地转发至本地的VM以及远端的VM上处理,避免出现部分VM过载或者空闲的现象,实现VM资源的合理利用。
以上对网络设备基于报文中的隧道标识进行报文转发的过程进行了详细的描述,为了便于理解,以下将对图5对应的实施例以及图6对应的实施例中网络设备获取报文中的隧道标识的过程进行详细的说明。
以图5对应的实施例为例,在所述网络设备获取第一报文的第一隧道标识之前,所述方法500还可以包括:所述网络设备接收所述第一报文;所述网络设备根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识。也就是说,在网络设备所接收到的第一报文中本身是携带有隧道属性信息的,网络设备在确定第一报文中携带有隧道属性信息之后,可以对第一报文进行更新,以使得更新后的第一报文中包括有与第一报文本身所携带的隧道属性信息对应的第一隧道标识,从而便于网络设备在转发第一报文时能够基于第一隧道标识选择对应的第一路由组。
可以理解的是,在隧道端点设备通过隧道传输报文时,作为源端点的隧道端点设备会对报文进行隧道封装,封装后的报文中会携带有隧道属性信息。因此,网络设备对来自于隧道的报文进行解封装后,即可确定报文中携带有隧道属性信息。具体地,以VXLAN隧道为例,可以参阅图7,图7为本申请实施例提供的一种VXLAN隧道报文的封装示意图。如图7所示,在原始报文中包括有有效载荷(payload)、内部互联网协议头部(inner IP header)以及内部以太网头部(inner ethernet header),在对报文进行VXALN隧道封装之后,报文中增加了VXLAN头部,而VXLAN头部前面则是标准的UDP头部,即包括了外部以太网头部(outerethernet header)、外部互联网协议头部(outer IP header)以及外部用户数据报协议头部(outer UDP header)。其中,报文中的VXLAN头部或者VXLAN头部中的部分数据位则可以作为隧道属性信息,以标识报文是来自于VXLAN隧道的。可选地,在网络设备在对报文解封装且确定该报文来自于隧道之后,可以保留报文中的部分数据位,以标记该报文的隧道属性,以便于后续对报文所执行的转发操作,作为一种更为具体的实现方式,VXLAN报文格式可参见标准RFC7348,该标准的全部内容在此引入到本申请实施例中。或者,在另一种可能的实现方式中,在网络设备在对报文解封装且确定该报文来自于隧道之后,可以生成与该报文的隧道属性对应的标识字段,该标识字段用于标识所述网络设备接收的所述报文具有隧道属性。
可以理解的是,以上是以隧道为VXLAN隧道为例,对隧道属性信息进行了说明;在本申请实施例中,第一报文所携带的隧道属性信息具体还可以是MPLS隧道属性信息或者SR隧道属性信息等隧道属性信息,本申请实施例不做具体限定。
以上方法实施例虽然以图1示出的数据中心的网络结构作为示例进行了阐述,还可以理解的是,该数据中心的网络结构并不作为本方法实施例的唯一限定,在实际应用中,本方法实施例可以用于解决其他应用场景或网络结构中的类似问题。
本实施例中,在网络设备在对第一报文解封装且确定所述第一报文中携带有隧道属性信息之后,网络设备可以基于第一报文中所携带的隧道属性信息对解封装后的第一报文进行更新,以使得更新后的第一报文中包括有第一隧道标识。
其中,网络设备可以通过多种方式来对解封装后的第一报文进行更新。
在一种可能的实现方式中,网络设备在对第一报文进行解封装之后,可以保留解封装前的第一报文中的部分数据位,以作为第一报文中的第一隧道标识,从而实现对第一报文的更新。也就是说,相对于原始的第一报文来说,更新后的第一报文中还包括了所保留的部分数据位,该部分数据位用于表示第一报文的第一隧道标识。其中,网络设备在第一报文中所保留的部分数据位可以是解封装之前的第一报文中用于表示第一报文的隧道属性信息的数据位,例如可以是第一报文中的VXLAN头部或者VXLAN头部中的部分数据位。在一个可能的具体示例中,网络设备可以是在第一报文中保留VXLAN头部中的VXLAN标志位(VXLAN flags)或者是VXLAN标志位中的部分数据位,其中,VXLAN头部中的VXLAN标志位为16比特,即网络设备可以是在第一报文中保留16比特的VXLAN标志位或者在保留16比特的VXLAN标志位的部分数据位。
可以理解的是,在网络设备通过保留的部分数据位来表示报文的隧标识的情况下,前述图5对应的实施例中,所述第一隧道标识和第二隧道标识为第一值具体为:第一隧道标识为解封装之前的第一报文中可用于表示隧道属性信息的部分数据位;第二隧道标识为解封装之前的第二报文中可用于表示隧道属性信息的部分数据位,其中第二隧道标识可以与第一隧道标识相同。前述图6对应的实施例中,第三隧道标识为第二值具体可以是:第三隧道标识为null值,即第三隧道标识为空值,或者第三隧道标识为不同于所述第一值的其他非空值。也就是说,在第三报文来自于用户侧的情况下,网络设备可以通过确认第三报文中的隧道标识为不同于第一值的第二值,在后续执行对第三报文的转发操作时,根据VRF表中的第一路由组和第二路由组转发第三报文。
在另一种可能的实现方式中,网络设备在对第一报文进行解封装之后,可以在解封装后的第一报文中新增特定的字段,以作为第一报文中的第一隧道标识,从而实现对第一报文的更新。也就是说,相对于原始的第一报文来说,更新后的第一报文中还包括了新增的特定字段,该特定字段用于表示第一报文的第一隧道标识。
在一个可能的示例中,网络设备可以通过两个比特的字段来表示报文的隧道标识。例如,在报文的隧道属性信息为VXLAN隧道属性信息时,即该报文来自于VXLAN隧道时,网络设备可以通过字段“01”来表示该报文的隧道标识;在报文的隧道属性信息为MPLS隧道属性信息时,即该报文来自于MPLS隧道时,网络设备可以通过字段“10”来表示该报文的隧道标识;在报文的隧道属性信息为SR隧道属性信息时,即该报文来自于SR隧道时,网络设备可以通过字段“11”来表示该报文的隧道标识。此外,在报文没有携带有隧道属性信息时,例如报文来自于本地的VM时,网络设备可以通过字段“00”来表示该报文的隧道标识。
可以理解的是,在网络设备通过特定字段来表示报文的隧道标识的情况下,前述图5对应的实施例中,所述第一隧道标识和第二隧道标识为第一值具体是:第一隧道标识具体为字段“01”、“10”以及“11”中的任意一个,用于表示第一报文为来自于传输隧道的流量;第二隧道标识同样可以是字段“01”、“10”以及“11”中的任意一个,用于表示第二报文是来自于传输隧道的流量;前述图6对应的实施例中,所述第三隧道标识为第二值可以是:第三隧道标识具体为字段“00”,用于表示第三报文是来自于用户侧的流量。
在另一种可能的实现方式中,第三报文中并不包括用于表示所述报文为用户侧报文的第三隧道标识,所述网络设备可以根据所述第三报文中不包括隧道标识而根据所述VRF中的第一路由组和第二路由组进行转发。
为了便于理解,以下将结合具体的例子对本申请实施例提供的报文转发方法进行详细的说明。
以图3所示的业务场景为例,在前缀(即目的地址)为1.1.1.1的情况下,leaf交换机1上的VRF表中包括有两个本地路由(下一跳为VM1和VM2)以及两个远端路由(下一跳为VM3和VM4),即下一跳为VM1和VM2的两个本地路由属于第一路由组,下一跳为VM3和VM4的两个远端路由则属于第二路由组。
如果leaf交换机1接收到DCGW经过spine交换机1所转发的报文1之后,leaf交换机1对该报文1解封装之后,可以确定报文1中携带有VXLAN隧道属性信息,因此,leaf交换机1可以对解封装后的报文1进行更新,以使得更新后的报文1中包括有值为第一值隧道标识。网络设备在转发该报文1的过程中,根据该报文1中的隧道标识为第一值,网络设备根据VRF表中的第一路由组转发该报文1。比如,在报文1的目的地址为1.1.1.1时,leaf交换机1可以在VRF表中确定下一跳为VM1以及下一跳为VM2的路由(即第一路由组中的路由)为可用于转发报文的路由,然后leaf交换机1在前述两个路由确定一个为用于转发报文1的路由,从而实现将报文1转发至本地的VM1或VM2中。
对于由DCGW或者leaf交换机2等隧道端点设备转发给leaf交换机1的报文,leaf交换机1均基于VRF表中的第一路由组实现报文的转发,能够避免leaf交换机1选择到远端路由而再次将报文转发到leaf交换机2上,即避免了路由环路现象的出现。
此外,对于图4所示的业务场景,在leaf交换机1接收到本地VM所发送的报文2时,leaf交换机1在确定报文2中没有携带有隧道属性信息之后,leaf交换机1可以对报文2进行更新,以使得更新后的报文2中包括有值为第二值的隧道标识。网络设备在转发该报文2的过程中,根据该报文2中的隧道标识为第二值,网络设备根据VRF表中的第一路由组以及第二路由组转发该报文2。即网络设备无需优先选择本地路由,因此可以保证leaf交换机1基于负载均衡策略在本地路由和远端路由中选择其中的一个路由为转发报文的路由,即保证了leaf交换机1在转发来自于本地的VM所发送的报文时(即本地报文),能够实现负载均衡,避免资源的浪费。
可以参阅图8,图8为本申请实施例提供的另一种业务场景示意图。
在图8对应的业务场景中,VNF网元1分布在VM1和VM3上,VM1和VM3共享IP地址1.1.1.1;VNF网元2分布在VM2和VM4上,VM2和VM4共享同一个IP地址2.2.2.2。并且,VM1和VM2接入leaf交换机1,VM3和VM4接入leaf交换机2。
对于leaf交换机1来说,leaf交换机1所包括的VRF表具体可以为:
prefix:1.1.1.1nexthop:VM1 flag:1(local)
(--前缀:1.1.1.1下一跳:VM1标记:1(本地))
prefix:2.2.2.2nexthop:VM2flag:1(local)
(--前缀:2.2.2.2下一跳:VM2标记:1(本地))
prefix:1.1.1.1nexthop:VM3 flag:0(remote)
(--前缀:1.1.1.1下一跳:VM3标记:0(远端))
prefix:2.2.2.2nexthop:VM4 flag:0(remote)
(--前缀:2.2.2.2下一跳:VM4标记:0(远端))
其中,下一跳为VM1以及VM2的路由属于第一路由组,下一跳为VM3以及VM4的路由则属于第二路由组。
在leaf交换机1接收到由DCGW或者leaf交换机2所转发的报文时,该报文携带有隧道属性信息,该报文对应的隧道标识的值为第一值,因此leaf交换机基于第一路由组进行报文的转发,即保证了目的地址为1.1.1.1的报文被转发至VM1以及目的地址为2.2.2.2的报文被转发至VM2,并不会出现leaf交换机1将报文再次转发至leaf交换机2的现象。
此外,在leaf交换机接收到来自于VM1且目的地址为2.2.2.2的报文时,由于该报文没有携带有隧道属性信息,该报文对应的隧道标识的值为第二值,因此leaf交换机1基于VRF表中的第一路由组和第二路由组转发该报文;也就是说,leaf交换机1可以基于负载均衡策略在下一跳为VM2以及下一跳为VM4的两个路由中选择一个路由作为转发报文的路由,实现负载均衡,从而避免资源的浪费。
也就是说,在网络设备采用了本申请实施例提供的报文转发方法之后,既可以避免路由环路现象的出现,又可以保证基于负载均衡策略来实现报文的转发,避免资源的浪费。
图9为本申请实施例提供的一种网络设备的结构示意图,本申请实施例提供的网络设备90,例如可以为上述各方法实施例中的leaf交换机1或leaf交换机2等。网络设备90例如可以包括:获取单元901,用于获取第一报文的第一隧道标识;处理单元902,用于根据所述第一隧道标识为第一值,根据VRF表中的第一路由组转发所述第一报文,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由。
可选地,在一种可能的实现方式中,所述处理单元902还用于:根据所述第一报文中的第一隧道标识为第一值,在所述VRF表中查找第一路由标记信息,以确定对应于所述第一路由标记信息的所述第一路由组;根据确定的所述第一路由组转发所述第一报文。
可选地,在一种可能的实现方式中,所述网络设备具备负载均衡能力;所述获取单元901,还用于获取第二报文的第二隧道标识,所述第一报文和所述第二报文属于同一业务流量;所述处理单元902,还用于:在所述第一路由组中确定第一路由,并根据所述第一路由转发所述第一报文;根据所述第二隧道标识为所述第一值,在所述第一路由组中确定第二路由,并根据所述第二路由转发所述第二报文。
可选地,在一种可能的实现方式中,所述获取单元901,还用于获取第三报文的第三隧道标识;所述处理单元902,还用于根据所述第三隧道标识为第二值,根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。
可选地,在一种可能的实现方式中,所述VRF表中的所述第二路由组不具有标记信息或者对应于第二路由标记信息。
可选地,在一种可能的实现方式中,所述获取单元901,还用于接收所述第一报文;所述处理单元902,还用于根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识。
可选地,在一种可能的实现方式中,所述隧道属性信息为VXLAN隧道属性信息,或者MPLS隧道属性信息,或者SR隧道属性信息。
可选地,在一种可能的实现方式中,所述网络设备为数据中心网络中连接多个虚拟机的设备。
图10为本申请实施例提供的一种网络设备的结构示意图,如图10所示,提供了一种网络设备100。网络设备100例如可以是前述方法实施例中的第二网络设备。网络设备100包括:处理器1001。所述处理器1001与存储器1002耦合。存储器1002可以独立于处理器1001之外或独立于网络设备100之外,如存储器(Memory)#3,也可以在处理器1001或网络设备100之内(Memory#1和Memory#2)。存储器1002可以是物理上独立的单元,也可以是云服务器上的存储空间或网络硬盘等。可选地,存储器1002可以为一个或多个。当存储器1002的个数为多个时,可以位于相同的或不同的位置,并且可以独立或配合使用。
存储器1002用于存储计算机可读指令(或者称之为计算机程序)。
处理器1001用于读取计算机可读指令以实现前述有关网络设备的方面及其任意实现方式提供的方法。
可选的,该网络设备100还包括收发器1003,用于接收和发送数据。
另外,该处理器1001可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。另外,该存储器1002可以包括:易失性存储器(volatilememory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)、云存储(cloud storage)、网络附接存储(network attached storage)、网盘(network drive)等;存储器还可以包括上述种类的存储器的组合或者其他具有存储功能的任意形态的介质或产品。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (19)

1.一种报文转发方法,其特征在于,包括:
网络设备获取来自对端隧道端点设备通过传输隧道发送的第一报文的第一隧道标识,所述第一隧道标识用于表示所述第一报文的隧道属性;
根据所述第一隧道标识为第一值,所述网络设备根据虚拟路由转发VRF表中的第一路由组转发所述第一报文至本地,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一报文中的第一隧道标识为第一值,所述网络设备根据VRF表中的第一路由组转发所述第一报文至本地,包括:
所述网络设备根据所述第一报文中的第一隧道标识为第一值,在所述VRF表中查找第一路由标记信息,以确定对应于所述第一路由标记信息的所述第一路由组;
所述网络设备根据确定的所述第一路由组转发所述第一报文至本地。
3.根据权利要求1或2所述的方法,其特征在于,所述网络设备具备负载均衡能力,所述方法包括:
所述网络设备还获取第二报文的第二隧道标识,所述第一报文和所述第二报文属于同一业务流量;
所述网络设备根据VRF表中的第一路由组转发所述第一报文至本地,包括:
所述网络设备在所述第一路由组中确定第一路由,并根据所述第一路由转发所述第一报文至本地;
所述网络设备根据所述第二隧道标识为所述第一值,在所述第一路由组中确定第二路由,并根据所述第二路由转发所述第二报文至本地。
4.根据权利要求1或2所述的方法,其特征在于,所述方法包括:
所述网络设备获取第三报文的第三隧道标识;
根据所述第三隧道标识为第二值,所述网络设备根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。
5.根据权利要求4所述的方法,其特征在于,所述VRF表中的所述第二路由组不具有标记信息或者对应于第二路由标记信息。
6.根据权利要求1或2所述的方法,其特征在于,所述网络设备获取来自对端隧道端点设备通过传输隧道发送的第一报文的第一隧道标识之前,所述方法还包括:
所述网络设备接收来自对端隧道端点设备通过传输隧道发送的所述第一报文;
所述网络设备根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识;
所述网络设备获取来自对端隧道端点设备通过传输隧道发送的第一报文的第一隧道标识,包括:
所述网络设备获取来自对端隧道端点设备通过传输隧道发送的所述更新后的第一报文的第一隧道标识。
7.根据权利要求6所述的方法,其特征在于,所述隧道属性信息为可扩展虚拟局域网络VXLAN隧道属性信息,或者多协议标签交换MPLS隧道属性信息,或者分段路由SR隧道属性信息。
8.根据权利要求1或2所述的方法,其特征在于,所述网络设备为数据中心网络中连接多个虚拟机的设备。
9.一种网络设备,其特征在于,包括:
获取单元,用于获取来自对端隧道端点设备通过传输隧道发送的第一报文的第一隧道标识;
处理单元,用于根据所述第一隧道标识为第一值,根据VRF表中的第一路由组转发所述第一报文至本地,其中,所述第一路由组包括一个或多个本地路由,所述一个或多个本地路由的下一跳出接口均为本地出接口,所述VRF表还包括第二路由组,所述第二路由组包括一个或多个下一跳出接口为远端出接口的远端路由。
10.根据权利要求9所述的网络设备,其特征在于,所述处理单元还用于:
根据所述第一报文中的第一隧道标识为第一值,在所述VRF表中查找第一路由标记信息,以确定对应于所述第一路由标记信息的所述第一路由组;
根据确定的所述第一路由组转发所述第一报文至本地。
11.根据权利要求9或10所述的网络设备,其特征在于,所述网络设备具备负载均衡能力;
所述获取单元,还用于获取第二报文的第二隧道标识,所述第一报文和所述第二报文属于同一业务流量;
所述处理单元,还用于:
在所述第一路由组中确定第一路由,并根据所述第一路由转发所述第一报文;
根据所述第二隧道标识为所述第一值,在所述第一路由组中确定第二路由,并根据所述第二路由转发所述第二报文。
12.根据权利要求9或10所述的网络设备,其特征在于,所述获取单元,还用于获取第三报文的第三隧道标识;
所述处理单元,还用于根据所述第三隧道标识为第二值,根据所述VRF表中的第一路由组和第二路由组查找路由以转发所述第三报文。
13.根据权利要求12所述的网络设备,其特征在于,所述VRF表中的所述第二路由组不具有标记信息或者对应于第二路由标记信息。
14.根据权利要求9或10所述的网络设备,其特征在于,所述获取单元,还用于接收来自对端隧道端点设备通过传输隧道发送的所述第一报文;
所述处理单元,还用于根据接收的所述第一报文中携带的隧道属性信息,更新所述第一报文,更新后的第一报文包括与所述隧道属性信息对应的所述第一隧道标识。
15.根据权利要求14所述的网络设备,其特征在于,所述隧道属性信息为VXLAN隧道属性信息,或者MPLS隧道属性信息,或者SR隧道属性信息。
16.根据权利要求9或10所述的网络设备,其特征在于,所述网络设备为数据中心网络中连接多个虚拟机的设备。
17.一种网络设备,其特征在于,包括:处理器、存储器;存储器用于存储指令;处理器用于执行存储器中的指令,使得所述网络设备执行如权利要求1至8任意一项所述的方法。
18.一种芯片,其特征在于,所述芯片应用于网络设备中,所述芯片包括:处理器;所述处理器被配置为执行权利要求1至8任一项所述的方法中所述网络设备的操作。
19.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有计算机可读指令,当该计算机可读指令被处理器执行时实现如权利要求1至8任意一项所述的方法。
CN202010314701.8A 2020-04-20 2020-04-20 一种报文转发方法及网络设备 Active CN113542112B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010314701.8A CN113542112B (zh) 2020-04-20 2020-04-20 一种报文转发方法及网络设备
US17/234,192 US11611508B2 (en) 2020-04-20 2021-04-19 Packet forwarding method and network device
EP21169069.8A EP3902211A1 (en) 2020-04-20 2021-04-19 Packet forwarding method and network device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010314701.8A CN113542112B (zh) 2020-04-20 2020-04-20 一种报文转发方法及网络设备

Publications (2)

Publication Number Publication Date
CN113542112A CN113542112A (zh) 2021-10-22
CN113542112B true CN113542112B (zh) 2023-11-21

Family

ID=75581427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010314701.8A Active CN113542112B (zh) 2020-04-20 2020-04-20 一种报文转发方法及网络设备

Country Status (3)

Country Link
US (1) US11611508B2 (zh)
EP (1) EP3902211A1 (zh)
CN (1) CN113542112B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118655B (zh) * 2022-06-21 2023-12-12 阿里巴巴(中国)有限公司 跨网络报文转发方法、装置、电子设备及可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475581A (zh) * 2012-06-06 2013-12-25 华为技术有限公司 一种网络标签分配方法、设备与系统
CN103607349A (zh) * 2013-11-14 2014-02-26 华为技术有限公司 虚拟网络中确定路由的方法及运营商边缘设备
WO2016026406A1 (zh) * 2014-08-18 2016-02-25 华为技术有限公司 一种报文发送方法和网络节点
CN107342925A (zh) * 2016-04-29 2017-11-10 新华三技术有限公司 一种报文传输方法及装置
CN107547340A (zh) * 2017-06-19 2018-01-05 新华三技术有限公司 一种报文转发方法和装置
CN107547366A (zh) * 2017-05-15 2018-01-05 新华三技术有限公司 一种报文转发方法和装置
CN108900406A (zh) * 2018-06-26 2018-11-27 新华三技术有限公司 一种流量转发方法及装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7486659B1 (en) * 2003-02-24 2009-02-03 Nortel Networks Limited Method and apparatus for exchanging routing information between virtual private network sites
US7593352B2 (en) * 2006-06-02 2009-09-22 Cisco Technology, Inc. Discovering MPLS VPN services in a network
US8320388B2 (en) * 2007-02-02 2012-11-27 Groupe Des Ecoles Des Telecommunications (Get) Autonomic network node system
WO2009086931A1 (en) * 2008-01-09 2009-07-16 Telefonaktiebolaget Lm Ericsson (Publ) Setting up a virtual private network
US20100027549A1 (en) * 2008-07-31 2010-02-04 Michael Satterlee Method and apparatus for providing virtual private network identifier
KR100995906B1 (ko) * 2008-12-22 2010-11-23 한국전자통신연구원 Mpls l3vpn에서 포워딩 테이블 구축 방법
US8953590B1 (en) * 2011-03-23 2015-02-10 Juniper Networks, Inc. Layer two virtual private network having control plane address learning supporting multi-homed customer networks
US9331938B2 (en) * 2012-04-13 2016-05-03 Nicira, Inc. Extension of logical networks across layer 3 virtual private networks
US10091102B2 (en) * 2013-01-09 2018-10-02 Cisco Technology, Inc. Tunnel sub-interface using IP header field
US9397946B1 (en) * 2013-11-05 2016-07-19 Cisco Technology, Inc. Forwarding to clusters of service nodes
US9634936B2 (en) * 2014-06-30 2017-04-25 Juniper Networks, Inc. Service chaining across multiple networks
US10931629B2 (en) * 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10237176B2 (en) * 2016-06-30 2019-03-19 Juniper Networks, Inc. Auto discovery and auto scaling of services in software-defined network environment
US10110469B2 (en) * 2016-07-21 2018-10-23 Cisco Technology, Inc. Detecting and preventing network loops
US10097467B1 (en) * 2016-08-11 2018-10-09 Amazon Technologies, Inc. Load balancing for multipath groups routed flows by re-associating routes to multipath groups
US10116567B1 (en) * 2016-08-11 2018-10-30 Amazon Technologies, Inc. Load balancing for multipath group routed flows by re-routing the congested route
US10848421B2 (en) * 2017-06-27 2020-11-24 Level 3 Communications, Llc Internet service through a virtual routing and forwarding table of a multiprotocol label switching network
CN109995634B (zh) * 2017-12-29 2021-08-17 中兴通讯股份有限公司 一种组播虚拟专用网络的承载方法和设备
US10673737B2 (en) * 2018-04-17 2020-06-02 Cisco Technology, Inc. Multi-VRF universal device internet protocol address for fabric edge devices

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475581A (zh) * 2012-06-06 2013-12-25 华为技术有限公司 一种网络标签分配方法、设备与系统
CN103607349A (zh) * 2013-11-14 2014-02-26 华为技术有限公司 虚拟网络中确定路由的方法及运营商边缘设备
WO2016026406A1 (zh) * 2014-08-18 2016-02-25 华为技术有限公司 一种报文发送方法和网络节点
CN107342925A (zh) * 2016-04-29 2017-11-10 新华三技术有限公司 一种报文传输方法及装置
CN107547366A (zh) * 2017-05-15 2018-01-05 新华三技术有限公司 一种报文转发方法和装置
CN107547340A (zh) * 2017-06-19 2018-01-05 新华三技术有限公司 一种报文转发方法和装置
CN108900406A (zh) * 2018-06-26 2018-11-27 新华三技术有限公司 一种流量转发方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于VXLAN的云数据中心网络研究;王永建;张健;张富根;董真;;通信技术(01);第82-87页 *

Also Published As

Publication number Publication date
EP3902211A1 (en) 2021-10-27
CN113542112A (zh) 2021-10-22
US11611508B2 (en) 2023-03-21
US20210328918A1 (en) 2021-10-21

Similar Documents

Publication Publication Date Title
US11283707B2 (en) Segment routing with fast reroute for container networking
US11546288B2 (en) Techniques for managing software defined networking controller in-band communications in a data center network
US10320664B2 (en) Cloud overlay for operations administration and management
US10171357B2 (en) Techniques for managing software defined networking controller in-band communications in a data center network
CN106936777B (zh) 基于OpenFlow的云计算分布式网络实现方法、系统
CN104601472B (zh) 在芯片中实现vxlan网关分布式路由的方法及报文处理系统
US10673737B2 (en) Multi-VRF universal device internet protocol address for fabric edge devices
US20210359879A1 (en) Packet forwarding method and network device
US11706140B2 (en) Packet forwarding method and network device
CN110943901A (zh) 一种报文转发方法、装置、设备和存储介质
CN113973082A (zh) 一种报文处理方法及网络设备
WO2022007702A1 (zh) 一种报文处理方法及网络设备
CN110022263B (zh) 一种数据传输的方法及相关装置
CN113542112B (zh) 一种报文转发方法及网络设备
CN111130978B (zh) 网络流量转发方法、装置、电子设备及机器可读存储介质
CN112532563B (zh) 报文的发送方法和装置
CN116418632A (zh) 一种报文处理方法、装置、设备及机器可读存储介质
CN109218258B (zh) 数据包传输方法及网关设备
EP3913865B1 (en) Message decapsulation method and device, message encapsulation method and device, electronic device, and storage medium
CN107995084B (zh) 隧道选择方法及装置
WO2023125774A1 (zh) 一种vxlan报文传输方法、网络设备及系统
WO2023088145A1 (zh) 一种报文处理方法、装置及设备
CN117914820A (zh) 算力路由方法、装置及系统
CN117097818A (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
GR01 Patent grant
GR01 Patent grant