CN118714087A - Traffic forwarding method, device and storage medium - Google Patents
Traffic forwarding method, device and storage medium Download PDFInfo
- Publication number
- CN118714087A CN118714087A CN202410984592.9A CN202410984592A CN118714087A CN 118714087 A CN118714087 A CN 118714087A CN 202410984592 A CN202410984592 A CN 202410984592A CN 118714087 A CN118714087 A CN 118714087A
- Authority
- CN
- China
- Prior art keywords
- target
- message
- mac
- subport
- network element
- 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 62
- 238000004891 communication Methods 0.000 claims description 20
- 238000007667 floating Methods 0.000 claims description 18
- 238000005538 encapsulation Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000005291 magnetic effect Effects 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 5
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 4
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005129 volume perturbation calorimetry Methods 0.000 description 4
- 230000008859 change Effects 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
- 230000003993 interaction Effects 0.000 description 3
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 2
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Classifications
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- 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/38—Flow based 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/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供一种流量转发方法、设备及存储介质,该方法通过控制器直接下发流表来控制流量的转发行为,通过覆盖网络的MAC作为后端选路的依据,可以灵活使用子端口的MAC或者虚拟网卡组的MAC作为选路依据,使用子端口的MAC将回程流量引到该子端口关联的网元设备中,使用虚拟网卡组的MAC将回程流量引到该虚拟网卡组关联的子端口对应的网元设备中,在采用虚拟网卡组实现负载均衡网元集群、多租户的场景下,保证后端服务器可以准确地将回程报文发送到正确的网元设备,实现负载分担。
The present disclosure provides a traffic forwarding method, device and storage medium. The method controls the forwarding behavior of traffic by directly sending down a flow table through a controller. By overlaying the MAC of the network as the basis for back-end routing, the MAC of the subport or the MAC of the virtual network card group can be flexibly used as the basis for routing. The MAC of the subport is used to guide the return traffic to the network element device associated with the subport, and the MAC of the virtual network card group is used to guide the return traffic to the network element device corresponding to the subport associated with the virtual network card group. In the scenario where the virtual network card group is used to realize load balancing network element cluster and multi-tenant, it is ensured that the back-end server can accurately send the return message to the correct network element device to realize load sharing.
Description
技术领域Technical Field
本公开涉及数据处理领域,尤其涉及一种流量转发方法、设备及存储介质。The present disclosure relates to the field of data processing, and in particular to a traffic forwarding method, device, and storage medium.
背景技术Background Art
相关技术中的软件定义网络(Software Defined Networking,以下简称SDN)框架,对于网络功能虚拟化(Network Functions Virtualization,以下简称NFV)提供了一种负载均衡、多租户共享、弹性网络接口组(Group Elastic Network Interface,以下简称GroupE NI)技术,其将多个虚拟网卡(subport)逻辑抽象成一张,通过subport分别关联不同的虚拟网络功能(Virtual Network Function,以下简称VNF)对应的trunk端口,将引入Gro upENI的流量等价多路径选择(Equal-Cost Multi-Path,以下简称ECMP)到对应的VNF,实现负载均衡的功能,并通过虚拟局域网(Virtual Local Area Network,以下简称VLAN)区分租户。通过动态的更新GroupENI的subport就可以对网元进行动态的扩缩容。对于需要经过目标网络地址转换(Destination Network Address Translation,以下简称DNAT)操作的网元,如DNAT网元集群、外网负载均衡(Load Balancing,以下简称LB)网元集群,入云的流量,源IP通常是不确定的,租户对应的网元地址也是不确定的,后端服务器如何准确的将回程报文发送到正确的网元设备,是一个需要解决的问题。The Software Defined Networking (SDN) framework in the related technology provides a load balancing, multi-tenant sharing, and elastic network interface group (Group Elastic Network Interface, GroupENI) technology for network function virtualization (NFV). It abstracts multiple virtual network cards (subport) into one logical card, associates different trunk ports corresponding to different virtual network functions (VNF) through subports, introduces the traffic equal-cost multi-path selection (ECMP) of GroupENI to the corresponding VNF, realizes the load balancing function, and distinguishes tenants through virtual local area network (VLAN). By dynamically updating the subport of GroupENI, the network element can be dynamically expanded and reduced. For network elements that need to undergo Destination Network Address Translation (DNAT) operations, such as DNAT network element clusters and external network load balancing (LB) network element clusters, the source IP address of the traffic entering the cloud is usually uncertain, and the network element address corresponding to the tenant is also uncertain. How the backend server can accurately send the return message to the correct network element device is a problem that needs to be solved.
发明内容Summary of the invention
本公开的第一方面实施例提出了一种流量转发方法,该方法应用于云计算虚拟网络,云计算虚拟网络包括至少一个虚拟私有云vpn、至少一个负载均衡网元以及互联网网关,负载均衡网元下挂至少一个后端服务器,该方法包括:通过互联网网关接收用户的访问流量,根据访问流量的目的IP从至少一个vpn的虚拟网卡组中确定目标子端口,基于虚拟扩展局域网vxlan将访问流量封装为报文,并将报文发送至与目标子端口绑定的目标负载均衡网元;目标负载均衡网元从下挂的后端服务器中选择目标后端服务器,根据控制器下发的流表将报文的内层源MAC设置为目标子端口的MAC或目标虚拟网卡组的MAC,并将报文通过vxlan封装后转发至目标后端服务器所在的云主机;目标后端服务器所在的云主机根据报文的源MAC建立ct表项,基于ct表项定义ct标签以保存数据类型、报文的内层源MAC以及报文的隧道源IP;目标后端服务器所在的云主机根据ct标签的数据类型匹配对应的流表,基于ct标签执行流表以填充回程报文的内层目的MAC为目标子端口的M AC或目标虚拟网卡组的MAC,并将回程报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元作为新的目标负载均衡网元,将回程报文发回至新的目标负载均衡网元。The first aspect of the present disclosure proposes a traffic forwarding method, which is applied to a cloud computing virtual network. The cloud computing virtual network includes at least one virtual private cloud VPN, at least one load balancing network element and an Internet gateway. The load balancing network element is connected to at least one back-end server. The method includes: receiving user access traffic through the Internet gateway, determining a target sub-port from a virtual network card group of at least one VPN according to the destination IP of the access traffic, encapsulating the access traffic into a message based on a virtual extended local area network vxlan, and sending the message to a target load balancing network element bound to the target sub-port; the target load balancing network element receives the user's access traffic from the connected back-end server Select the target backend server, set the inner source MAC of the message to the MAC of the target subport or the MAC of the target virtual network card group according to the flow table sent by the controller, and forward the message to the cloud host where the target backend server is located after vxlan encapsulation; the cloud host where the target backend server is located establishes a ct table entry according to the source MAC of the message, and defines a ct tag based on the ct table entry to save the data type, the inner source MAC of the message, and the tunnel source IP of the message; the cloud host where the target backend server is located matches the corresponding flow table according to the data type of the ct tag, executes the flow table based on the ct tag to fill the inner destination MAC of the return message as the MAC of the target subport or the MAC of the target virtual network card group, and sends the return message back to the target load balancing network element, or randomly selects a load balancing network element bound to a subport from the target virtual network card group as the new target load balancing network element, and sends the return message back to the new target load balancing network element.
在本公开的一些实施例中,该方法还包括:为vpn创建虚拟网卡组,将vpn中配置的至少一个端口作为子端口绑定在虚拟网卡组中,将每个子端口与至少一个负载均衡网元的trunk端口绑定,其中,虚拟网卡组包括固定IP和MAC且虚拟网卡组与至少一个浮动IP绑定。In some embodiments of the present disclosure, the method also includes: creating a virtual network card group for the VPN, binding at least one port configured in the VPN as a subport in the virtual network card group, and binding each subport to a trunk port of at least one load balancing network element, wherein the virtual network card group includes a fixed IP and MAC and the virtual network card group is bound to at least one floating IP.
在本公开的一些实施例中,通过互联网网关接收用户的访问流量,根据访问流量的目的IP从至少一个vpn的虚拟网卡组中确定目标子端口,基于虚拟扩展局域网vxlan将访问流量封装为报文,并将报文发送至与目标子端口绑定的目标负载均衡网元包括:通过互联网网关接收用户的访问流量,将访问流量的目的IP与至少一个虚拟私有云vpn的虚拟网卡组绑定的浮动IP进行匹配,根据匹配结果确定目标虚拟网卡组,并将目的IP转换为目标虚拟网卡组的固定IP;从目标虚拟网卡组的子端口中随机选择目标子端口,通过vxl an将访问流量封装为报文,将目标子端口的MAC设置为报文的内层目标MAC,并将报文送往与目标子端口绑定的负载均衡网元所在的宿主机;由宿主机根据报文的目标MAC选择对应的目标子端口,将目标子端口打入虚拟局域网vlan标签,并将报文的内层目标MA C设置为trunk端口对应的MAC,通过trunk端口将报文送入对应的负载均衡网元。In some embodiments of the present disclosure, receiving user access traffic through an Internet gateway, determining a target subport from a virtual network card group of at least one VPN according to a destination IP of the access traffic, encapsulating the access traffic into a message based on a virtual extended local area network vxlan, and sending the message to a target load balancing network element bound to the target subport includes: receiving user access traffic through an Internet gateway, matching the destination IP of the access traffic with a floating IP bound to a virtual network card group of at least one virtual private cloud VPN, determining a target virtual network card group according to a matching result, and converting the destination IP into a fixed IP of the target virtual network card group; randomly selecting a target subport from the subports of the target virtual network card group, encapsulating the access traffic into a message through vxlan, setting the MAC of the target subport as an inner target MAC of the message, and sending the message to a host machine where the load balancing network element bound to the target subport is located; the host machine selects a corresponding target subport according to the target MAC of the message, inserts a virtual local area network VLAN tag into the target subport, sets the inner target MAC of the message to the MAC corresponding to the trunk port, and sends the message to the corresponding load balancing network element through the trunk port.
在本公开的一些实施例中,目标负载均衡网元从下挂的后端服务器中选择目标后端服务器,根据控制器下发的流表将报文的内层源MAC设置为目标子端口的MAC或目标虚拟网卡组的MAC,并将报文通过vxlan封装后转发至目标后端服务器所在的云主机包括:目标负载均衡网元根据预设的策略从下挂的后端服务器中选择目标后端服务器,将目标目标虚拟网卡组的固定IP转换为目标后端服务器的源IP,从trunk端口将报文发送至目标负载均衡网元所在的交换机;交换机根据报文的vlan标签匹配对应的目标子端口,将目标子端口剥离vlan标签,根据控制器下发的第一流表确定将目标子端口的MAC设置为内层的源MAC,或根据控制器下发的第一流表确定将目标虚拟网卡组的MAC设置为内存的源MAC;交换机根据vpc的路由将报文通过vxlan封装后发送至目标后端服务器所在的云主机。In some embodiments of the present disclosure, the target load balancing network element selects a target backend server from the downstream backend servers, sets the inner source MAC of the message to the MAC of the target subport or the MAC of the target virtual network card group according to the flow table sent by the controller, and forwards the message to the cloud host where the target backend server is located after being encapsulated by vxlan, including: the target load balancing network element selects the target backend server from the downstream backend servers according to a preset policy, converts the fixed IP of the target virtual network card group to the source IP of the target backend server, and sends the message from the trunk port to the switch where the target load balancing network element is located; the switch matches the corresponding target subport according to the vlan tag of the message, strips the vlan tag from the target subport, determines to set the MAC of the target subport to the inner source MAC according to the first flow table sent by the controller, or determines to set the MAC of the target virtual network card group to the source MAC of the memory according to the first flow table sent by the controller; the switch encapsulates the message through vxlan according to the route of vpc and sends it to the cloud host where the target backend server is located.
在本公开的一些实施例中,目标后端服务器所在的云主机根据报文的源MAC在流表中查找确定ct表项,基于ct表项定义ct标签以保存报文的内层源MAC以及报文的隧道源IP包括:目标后端服务器所在的云主机根据报文的源MAC判断报文是否是否建立ct表项;若报文需要建立ct表项,基于第一流表对目标子端口的MAC进行匹配,将目标子端口的MAC作为报文的内层源MAC保存在ct标签中,将目标负载均衡网元所在的隧道终端IP作为报文的隧道源IP保存在ct标签中,或基于第二流表对目标虚拟网卡组的MAC进行匹配,将目标虚拟网卡组的MAC作为报文的内层源MAC保存在ct标签中。In some embodiments of the present disclosure, the cloud host where the target backend server is located searches the flow table for a ct table entry based on the source MAC of the message, and defines a ct tag based on the ct table entry to save the inner source MAC of the message and the tunnel source IP of the message, including: the cloud host where the target backend server is located determines whether a ct table entry is established for the message based on the source MAC of the message; if a ct table entry needs to be established for the message, the MAC of the target subport is matched based on the first flow table, the MAC of the target subport is saved in the ct tag as the inner source MAC of the message, the tunnel terminal IP where the target load balancing network element is located is saved in the ct tag as the tunnel source IP of the message, or the MAC of the target virtual network card group is matched based on the second flow table, and the MAC of the target virtual network card group is saved in the ct tag as the inner source MAC of the message.
在本公开的一些实施例中,结合组合特征和时序特征从所有键中选择待淘汰的键并淘汰包括:通过全连接层对组合特征和时序特征进行信息融合,得到每个键下一次访问的时间间隔;确定时间间隔最大的键对应的缓存数据,并淘汰缓存数据。In some embodiments of the present disclosure, selecting keys to be eliminated from all keys in combination with combination features and timing features and eliminating them includes: fusing the combination features and timing features through a fully connected layer to obtain the time interval for the next access of each key; determining the cached data corresponding to the key with the largest time interval, and eliminating the cached data.
在本公开的一些实施例中,将报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元,将报文发回至负载均衡网元之后,方法还包括:目标负载均衡网元或新的目标负载均衡网元通过vxlan,经由目标负载均衡网元或新的目标负载均衡网元所在的交换机将回程报文转发至互联网网关;通过互联网网关将回程报文发送给用户。In some embodiments of the present disclosure, the message is sent back to the target load balancing network element, or a load balancing network element bound to a subport is randomly selected from the target virtual network card group. After the message is sent back to the load balancing network element, the method also includes: the target load balancing network element or the new target load balancing network element forwards the return message to the Internet gateway through vxlan, via the switch where the target load balancing network element or the new target load balancing network element is located; and the return message is sent to the user through the Internet gateway.
本公开的第二方面实施例提出了一种流量转发装置,该装置包括:流量接收单元,用于通过互联网网关接收用户的访问流量,根据访问流量的目的IP从至少一个vpn的虚拟网卡组中确定目标子端口,基于虚拟扩展局域网vxlan将访问流量封装为报文,并将报文发送至与目标子端口绑定的目标负载均衡网元;流表决策单元,用于目标负载均衡网元从下挂的后端服务器中选择目标后端服务器,根据控制器下发的流表将报文的内层源M AC设置为目标子端口的MAC或目标虚拟网卡组的MAC,并将报文通过vxlan封装后转发至目标后端服务器所在的云主机;ct标签定义单元,用于目标后端服务器所在的云主机根据报文的源MAC建立ct表项,基于ct表项定义ct标签以保存数据类型、报文的内层源M AC以及报文的隧道源IP;流量回程引流单元,用于目标后端服务器所在的云主机根据ct标签的数据类型匹配对应的流表,基于ct标签执行流表以填充回程报文的内层目的MAC为目标子端口的MAC或目标虚拟网卡组的MAC,并将回程报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元作为新的目标负载均衡网元,将回程报文发回至新的目标负载均衡网元。The second aspect of the present disclosure provides a traffic forwarding device, which includes: a traffic receiving unit, which is used to receive user access traffic through an Internet gateway, determine a target subport from a virtual network card group of at least one VPN according to a destination IP of the access traffic, encapsulate the access traffic into a message based on a virtual extended local area network vxlan, and send the message to a target load balancing network element bound to the target subport; a flow table decision unit, which is used for the target load balancing network element to select a target backend server from the downstream backend servers, set an inner source MAC of the message to the MAC of the target subport or the MAC of the target virtual network card group according to a flow table sent by a controller, and forward the message to the cloud host where the target backend server is located after being encapsulated through vxlan; a ct label definition unit, which is used for the cloud host where the target backend server is located to establish a ct table entry according to the source MAC of the message, and define a ct label based on the ct table entry to store the data type, the inner source MAC of the message, and the MAC of the target subport. AC and the tunnel source IP of the message; the traffic return diversion unit is used for the cloud host where the target backend server is located to match the corresponding flow table according to the data type of the ct label, and execute the flow table based on the ct label to fill the inner destination MAC of the return message with the MAC of the target subport or the MAC of the target virtual network card group, and send the return message back to the target load balancing network element, or randomly select a load balancing network element bound to a subport from the target virtual network card group as the new target load balancing network element, and send the return message back to the new target load balancing network element.
本公开的第三方面实施例提出了一种通信设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开第一方面实施例中描述的方法。The third aspect embodiment of the present disclosure proposes a communication device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method described in the first aspect embodiment of the present disclosure.
本公开的第四方面实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开第一方面实施例中描述的方法。The fourth aspect embodiment of the present disclosure proposes a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the method described in the first aspect embodiment of the present disclosure.
本公开的第五方面实施例提出了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开第一方面实施例中描述的方法。The fifth aspect embodiment of the present disclosure provides a computer program product, including a computer program, which implements the method described in the first aspect embodiment of the present disclosure when executed by a processor.
综上,本公开提出的流量转发方法,实现通过控制器直接下发流表来控制流量的转发行为,通过覆盖网络的MAC作为后端选路的依据,可以灵活使用子端口的MAC或者虚拟网卡组的MAC作为选路依据,使用子端口的MAC将回程流量引到该子端口关联的网元设备中,使用虚拟网卡组的MAC将回程流量引到该虚拟网卡组关联的子端口对应的网元设备中,在采用虚拟网卡组实现负载均衡网元集群、多租户的场景下,保证后端服务器可以准确地将回程报文发送到正确的网元设备,实现负载分担。In summary, the traffic forwarding method proposed in the present invention realizes the control of traffic forwarding behavior by directly sending flow tables through the controller, and uses the MAC of the overlay network as the basis for back-end routing. The MAC of the subport or the MAC of the virtual network card group can be flexibly used as the basis for routing. The MAC of the subport is used to direct the return traffic to the network element device associated with the subport, and the MAC of the virtual network card group is used to direct the return traffic to the network element device corresponding to the subport associated with the virtual network card group. In the scenario where the virtual network card group is used to realize load balancing network element cluster and multi-tenant, it is ensured that the back-end server can accurately send the return message to the correct network element device to achieve load sharing.
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.
图1为本公开实施例提供的一种流量转发方法的流程示意图;FIG1 is a flow chart of a traffic forwarding method provided by an embodiment of the present disclosure;
图2为本公开实施例提供的一种云计算虚拟网络的框架示例图;FIG2 is a diagram showing an example of a framework of a cloud computing virtual network provided by an embodiment of the present disclosure;
图3为本公开实施例提供的一种流量转发方法的流程示意图;FIG3 is a flow chart of a traffic forwarding method provided by an embodiment of the present disclosure;
图4为本公开实施例提供的一种ct标签的示例图;FIG4 is an example diagram of a ct label provided by an embodiment of the present disclosure;
图5为本公开实施例提供的流量转发装置的结构示意图;FIG5 is a schematic diagram of the structure of a traffic forwarding device provided in an embodiment of the present disclosure;
图6为本公开实施例提供的通信设备的硬件组成结构示意图。FIG. 6 is a schematic diagram of the hardware composition structure of a communication device provided in an embodiment of the present disclosure.
具体实施方式DETAILED DESCRIPTION
下面详细描述本公开的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。Embodiments of the present disclosure are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present disclosure, and should not be construed as limiting the present disclosure.
首先,对本公开技术方案所要解决的技术问题及相关技术进行详细阐述。First, the technical problems to be solved by the technical solution of the present disclosure and related technologies are elaborated in detail.
云计算(Cloud Computing)是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备。Cloud computing is an Internet-based computing method in which shared hardware and software resources and information can be provided to computers and other devices on demand.
在大规模云主机的公有云场景下,overlay为了减少背景流,往往采用地址解析协议(Address Resolution Protocol,以下简称ARP)代答的方式,即在网络中传播的内层mac往往是一个虚假的mac,可以是一个固定值,通过vxlan封装后,传输到目标设备后去除隧道封装,在送入用虚拟主机之前将目的内层mac改为虚拟port对应的真实port,由于没有arp学习,所以报文的封装由控制器下发规则控制。In the public cloud scenario of large-scale cloud hosts, in order to reduce background traffic, overlay often uses the Address Resolution Protocol (ARP) proxy answering method, that is, the inner MAC propagated in the network is often a false MAC, which can be a fixed value. After being encapsulated by VXLAN, the tunnel encapsulation is removed after being transmitted to the target device, and the destination inner MAC is changed to the real port corresponding to the virtual port before being sent to the virtual host. Since there is no ARP learning, the encapsulation of the message is controlled by the rules issued by the controller.
天池SDN就是一种强控方案。天池软件定义网络(Software Defined Networking,以下简称SDN)对于网络功能虚拟化(Network Functions Virtualization,以下简称NFV)提供了一种负载均衡、多租户共享、弹性网络接口组(Group Elastic Network Interface,以下简称GroupENI)技术,其将多个虚拟网卡(subport)逻辑抽象成一张,通过subport分别关联不同的虚拟网络功能(Virtual Network Function,以下简称VNF)对应的trunk端口,将引入GroupENI的流量等价多路径选择(Equal-Cost Multi-Path,以下简称ECMP)到对应的VNF,实现负载均衡的功能,并通过虚拟局域网(Virtual Local Area Network,以下简称VLAN)区分租户。通过动态的更新GroupENI的subport就可以对网元进行动态的扩缩容。Tianchi SDN is a strong control solution. Tianchi Software Defined Networking (SDN) provides a load balancing, multi-tenant sharing, and elastic network interface group (GroupENI) technology for Network Functions Virtualization (NFV). It abstracts multiple virtual network cards (subport) into one logical card, associates different trunk ports corresponding to different virtual network functions (VNF) through subports, introduces the traffic equal-cost multi-path selection (ECMP) of GroupENI to the corresponding VNF, realizes the load balancing function, and distinguishes tenants through virtual local area networks (VLANs). By dynamically updating the subport of GroupENI, the network element can be dynamically expanded or reduced.
对于需要经过目标网络地址转换(Destination Network Address Translation,以下简称DNAT)操作的网元,如DNAT网元集群、外网负载均衡(Load Balancing,以下简称LB)网元集群,入云的流量,源IP通常是不确定的,租户对应的网元地址也是不确定的,后端服务器如何准确的将回程报文发送到正确的网元设备,是一个需要解决的问题。For network elements that need to undergo Destination Network Address Translation (DNAT) operations, such as DNAT network element clusters and external network load balancing (LB) network element clusters, the source IP address of the traffic entering the cloud is usually uncertain, and the network element address corresponding to the tenant is also uncertain. How the backend server can accurately send the return message to the correct network element device is a problem that needs to be solved.
为实现DNAT模式下,正确选择数据包回程的目标客户端或者负载均衡服务器,相关技术方案在后端Server,通过对匹配的流在内核中建立连接跟踪表,回程报文根据跟踪表选择对应的负载均衡器,但该方案只能解决单个负载均衡设备的回程流量,并不能解决同一个VTEP设备中存在多个虚拟化负载均衡网元的场景,并且使用内核跟踪表转发效率较差,目前尚未由解决天池SDN场景下,通过GroupENI实现的LB网元集群、多租户功能中,正确选择数据包回程的方法。In order to correctly select the target client or load balancing server for the return of the data packet in DNAT mode, the relevant technical solution is in the back-end Server, by establishing a connection tracking table in the kernel for the matching flow, and the return message selects the corresponding load balancer according to the tracking table. However, this solution can only solve the return traffic of a single load balancing device, and cannot solve the scenario where there are multiple virtualized load balancing network elements in the same VTEP device, and the forwarding efficiency using the kernel tracking table is poor. At present, there is no solution to the method of correctly selecting the return of the data packet in the LB network element cluster and multi-tenant function implemented by GroupENI in the Tianchi SDN scenario.
为了解决上述问题,本公开提出一种新的流量转发方案,采用SDN强控方案,控制器直接下发流表控制流量的转发行为,通过覆盖网络的MAC作为后端选路的依据,并根据应用场景可灵活使用subport的MAC或者GroupENI的MAC作为选路依据:使用subport的MAC将回程流量引到某个该subport关联的网元设备中;使用GroupENI的MAC将回程流量引到GroupENI关联的一组subport对应的网元中,可以天池SDN场景下即通过GroupE NI实现的LB网元集群、多租户功能中,保证正确选择数据包回程的目标客户端或者负载均衡服务器,实现负载分担。In order to solve the above problems, the present invention proposes a new traffic forwarding solution, which adopts the SDN strong control solution. The controller directly sends down the flow table to control the forwarding behavior of the traffic, and uses the MAC of the overlay network as the basis for back-end routing. The MAC of the subport or the MAC of GroupENI can be flexibly used as the basis for routing according to the application scenario: the MAC of the subport is used to guide the return traffic to a network element device associated with the subport; the MAC of GroupENI is used to guide the return traffic to the network element corresponding to a group of subports associated with GroupENI. In the Tianchi SDN scenario, that is, the LB network element cluster and multi-tenant function realized by GroupE NI can ensure the correct selection of the target client or load balancing server for the return of the data packet to achieve load sharing.
下面结合附图及具体实施例对本公开作进一步详细的说明。The present disclosure is further described in detail below with reference to the accompanying drawings and specific embodiments.
图1为本公开实施例提供的一种流量转发方法的流程示意图,该方法应用于云计算虚拟网络,云计算虚拟网络包括至少一个虚拟私有云vpn、至少一个负载均衡LB网元以及互联网网关,负载均衡网元下挂至少一个后端服务器。Figure 1 is a flow chart of a traffic forwarding method provided in an embodiment of the present disclosure, which is applied to a cloud computing virtual network. The cloud computing virtual network includes at least one virtual private cloud vpn, at least one load balancing LB network element and an Internet gateway, and at least one back-end server is hung under the load balancing network element.
在一些实施例中,租户vpn中包括至少一个虚拟机,虚拟机、LB网元以及互联网网关之间通过通信皆通过VXLAN封装。In some embodiments, the tenant VPN includes at least one virtual machine, and communications between the virtual machine, the LB network element, and the Internet gateway are all encapsulated through VXLAN.
在一些实施例中,互联网网关(Internet Gateway,以下简称IGW)为公网服务网关,是云计算虚拟网络架构和公网交互的统一出口。In some embodiments, the Internet Gateway (hereinafter referred to as IGW) is a public network service gateway, which is a unified exit for the interaction between the cloud computing virtual network architecture and the public network.
如图1所示,本公开实施例提供的流量转发方法,包括以下步骤101-104:As shown in FIG1 , the traffic forwarding method provided by the embodiment of the present disclosure includes the following steps 101-104:
步骤101,通过互联网网关接收用户的访问流量,根据访问流量的目的IP从至少一个vpn的虚拟网卡组中确定目标子端口,基于虚拟扩展局域网vxlan将访问流量封装为报文,并将报文发送至与目标子端口绑定的目标负载均衡网元。Step 101, receive the user's access traffic through the Internet gateway, determine the target sub-port from the virtual network card group of at least one VPN according to the destination IP of the access traffic, encapsulate the access traffic into a message based on the virtual extended LAN vxlan, and send the message to the target load balancing network element bound to the target sub-port.
在本公开的一些实施例中,虚拟扩展局域网vxlan为一种承载于UDP报文之上的隧道协议,可以跨3层物理网络实现虚拟二层网络,俗称大二层。In some embodiments of the present disclosure, the virtual extended local area network vxlan is a tunnel protocol carried on UDP packets, which can realize a virtual layer 2 network across a 3-layer physical network, commonly known as a big layer 2.
在本公开的一些实施例中,通过封装和隧道技术使得逻辑上的拓扑结构可以与物理网络拓扑解耦,在物理网络之上创建虚拟网络层即Overlay网络,通过这种方式虚拟机之间的通信可以实现虚拟网络的隔离,同时避免了传统ARP协议可能引入的广播和流量增加问题。In some embodiments of the present disclosure, the logical topology structure can be decoupled from the physical network topology through encapsulation and tunneling technology, and a virtual network layer, namely, an overlay network, is created on top of the physical network. In this way, communication between virtual machines can achieve isolation of the virtual network while avoiding the broadcast and traffic increase problems that may be introduced by the traditional ARP protocol.
在一些实施例中,用户通过GroupENI绑定的浮动IP访问云服务,流量从IGW外网接口进行IGW,根据目的IP即GroupENI绑定的浮动IP匹配对应的GroupENI。随机选择GroupENI下的某一个子端口绑定的VNF所在的设备节点包括子端口绑定的LB网元,基于VXL AN隧道协议将流量封装为报文,并将VXLAN隧道端点(VXLAN Tunnel Endpoint,以下简称VTEP)作为隧道的下一跳地址,将报文送入隧道对端设备。In some embodiments, the user accesses the cloud service through the floating IP bound to the GroupENI, and the traffic is sent to the IGW from the IGW external network interface, and the corresponding GroupENI is matched according to the destination IP, that is, the floating IP bound to the GroupENI. The device node where the VNF bound to a subport under the GroupENI is located is randomly selected, including the LB network element bound to the subport, and the traffic is encapsulated into a message based on the VXL AN tunnel protocol, and the VXLAN tunnel endpoint (VXLAN Tunnel Endpoint, hereinafter referred to as VTEP) is used as the next hop address of the tunnel, and the message is sent to the tunnel peer device.
在一些实施例中,报文指在隧道中被封装的数据包,它代表了实际要传输的应用数据或流量。In some embodiments, a message refers to a data packet encapsulated in a tunnel, which represents actual application data or traffic to be transmitted.
步骤102,目标负载均衡网元从下挂的后端服务器中选择目标后端服务器,根据控制器下发的流表将报文的内层源MAC设置为目标子端口的MAC或目标虚拟网卡组的MAC,并将报文通过vxlan封装后转发至目标后端服务器所在的云主机。In step 102, the target load balancing network element selects the target backend server from the downstream backend servers, sets the inner source MAC of the message to the MAC of the target subport or the MAC of the target virtual network card group according to the flow table sent by the controller, and forwards the message to the cloud host where the target backend server is located after vxlan encapsulation.
在本公开的一些实施例中,MAC地址用于唯一标识网络接口控制器,以便在局域网(LAN)内进行设备间的通信,源MAC地址(Source MAC Address,简称SMAC)为数据帧中表示源设备MAC地址的字段。In some embodiments of the present disclosure, a MAC address is used to uniquely identify a network interface controller to facilitate communication between devices within a local area network (LAN), and a source MAC address (SMAC) is a field in a data frame that represents the MAC address of a source device.
在本公开的一些实施例中,后端服务器是实际处理客户端请求的服务器群体。每个服务器可能运行相同的应用程序或服务,以分担工作负载。In some embodiments of the present disclosure, the backend server is a server group that actually processes client requests. Each server may run the same application or service to share the workload.
在本公开的一些实施例中,在overlay网络中,数据包经过VXLAN封装,其中包含虚假的内层MAC地址,抵达目标设备时,网络设备将去除VXLAN封装,报文的封装由控制器下发规则控制。In some embodiments of the present disclosure, in an overlay network, a data packet is encapsulated by VXLAN, which contains a false inner MAC address. When it arrives at the target device, the network device will remove the VXLAN encapsulation, and the encapsulation of the message is controlled by the rules issued by the controller.
在本公开的一些实施例中,采用openflow通信协议,并采用一种支持openflow的虚拟交换机(Open vSwitch,以下简称OVS)连接虚拟机以及其他网络设备,交换机可以根据来自控制器的指令进行数据包的处理和转发,实现虚拟网络。In some embodiments of the present disclosure, an openflow communication protocol is adopted, and a virtual switch (Open vSwitch, hereinafter referred to as OVS) supporting openflow is adopted to connect virtual machines and other network devices. The switch can process and forward data packets according to instructions from the controller to realize a virtual network.
在本公开的一些实施例中,可以通过控制器下发的流表,由目标负载均衡网元所在的交换机根据控制器下发的流表决策报文的内层MAC地址为目标子端口的MAC或目标虚拟网卡组的MAC,从而实现通过子端口的MAC将回程流量引到某个该子端口关联的网元设备中,或使用GroupENI的MAC将回程流量引到GroupENI关联的一组子端口对应的网元中,实现负载分担。In some embodiments of the present disclosure, through the flow table sent by the controller, the switch where the target load balancing network element is located decides that the inner MAC address of the message sent by the controller is the MAC of the target subport or the MAC of the target virtual network card group, thereby achieving the return traffic being directed to a network element device associated with the subport through the MAC of the subport, or using the MAC of GroupENI to direct the return traffic to the network elements corresponding to a group of subports associated with GroupENI, thereby achieving load sharing.
在本公开的一些实施例中,LB网元根据预设的策略从下挂的后端服务器中选择一台后端服务器,将报文从LB网元的Trunk口发出至LB网元所在的交换机例如OVS虚拟交换机,交换机根据控制器下发的流表决策是将子端口的MAC设置为内层的SMAC,或者是将子端口关联的GroupENI的MAC设置为内层的SMAC,再根据vpc路由将报文经VXLAN封装送到后端服务器所在的云主机。In some embodiments of the present disclosure, the LB network element selects a backend server from the downstream backend servers according to a preset policy, and sends the message from the Trunk port of the LB network element to the switch where the LB network element is located, such as the OVS virtual switch. The switch decides based on the flow table sent by the controller to set the MAC of the subport to the inner SMAC, or to set the MAC of the GroupENI associated with the subport to the inner SMAC, and then encapsulates the message via VXLAN according to the vpc routing and sends it to the cloud host where the backend server is located.
步骤103,目标后端服务器所在的云主机根据报文的源MAC建立ct表项,基于ct表项定义ct标签以保存数据类型、报文的内层源MAC以及报文的隧道源IP。Step 103, the cloud host where the target backend server is located establishes a ct table entry according to the source MAC of the message, and defines a ct tag based on the ct table entry to save the data type, the inner source MAC of the message, and the tunnel source IP of the message.
在本公开的一些实施例中,连接跟踪(Connection Tracking,以下简称CT)表项用于存储和管理活动连接状态信息的数据结构或表格,包括源IP地址、目标IP地址、源端口、目标端口等,ct标签为用于唯一标识和跟踪每个网络连接的状态和属性的标签或元数据。In some embodiments of the present disclosure, a connection tracking (CT) table entry is used to store and manage a data structure or table of active connection status information, including source IP address, destination IP address, source port, destination port, etc. The ct tag is a tag or metadata used to uniquely identify and track the status and attributes of each network connection.
在本公开的一些实施例中,对报文的源MAC进行匹配,确定操作的数据类型并将报文的内层源MAC以及报文的隧道源IP保存在ct标签中,包括两种数据类型,一种为根据目标子端口的MAC进行匹配,将子端口的MAC和所在设备的隧道源IP都保存在ct标签,另一种为根据目标GroupENI的MAC进行匹配,只将目标GroupENI的MAC保存在ct标签中。In some embodiments of the present disclosure, the source MAC of the message is matched, the data type of the operation is determined, and the inner source MAC of the message and the tunnel source IP of the message are saved in the ct tag, including two data types, one is to match according to the MAC of the target subport, and save the MAC of the subport and the tunnel source IP of the device in the ct tag, and the other is to match according to the MAC of the target GroupENI, and only save the MAC of the target GroupENI in the ct tag.
步骤104,目标后端服务器所在的云主机根据ct标签的数据类型匹配对应的流表,基于ct标签执行流表以填充回程报文的内层目的MAC为目标子端口的MAC或目标虚拟网卡组的MAC,并将回程报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元作为新的目标负载均衡网元,将回程报文发回至新的目标负载均衡网元。Step 104, the cloud host where the target backend server is located matches the corresponding flow table according to the data type of the ct tag, executes the flow table based on the ct tag to fill the inner destination MAC of the return message with the MAC of the target subport or the MAC of the target virtual network card group, and sends the return message back to the target load balancing network element, or randomly selects a subport bound to the load balancing network element from the target virtual network card group as the new target load balancing network element, and sends the return message back to the new target load balancing network element.
在本公开的一些实施例中,流表用于存储网络设备(如交换机、路由器)的流量处理规则,规则定义了如何处理不同类型的数据包,包括转发到哪个端口、应用哪些策略、执行哪些操作等。通过流表,网络设备可以根据数据包的特征(如源IP、目标IP、协议类型等)来决定数据包的路由和处理方式。In some embodiments of the present disclosure, the flow table is used to store traffic processing rules of network devices (such as switches and routers), and the rules define how to process different types of data packets, including which port to forward to, which policies to apply, which operations to perform, etc. Through the flow table, the network device can determine the routing and processing method of the data packet based on the characteristics of the data packet (such as source IP, destination IP, protocol type, etc.).
在本公开的一些实施例中,流表包括OpenFlow流表,由控制器通过OpenFlow协议向交换机下发流表项,流表项描述了数据包匹配的条件和匹配成功后执行的动作。In some embodiments of the present disclosure, the flow table includes an OpenFlow flow table, and the controller sends flow table entries to the switch through the OpenFlow protocol. The flow table entries describe the conditions for data packet matching and the actions performed after successful matching.
在本公开的一些实施例中,使用OVS-DPDK(Data Plane Development Kit)模式下的CT建立会话提高转发性能,使用ct标签根据不同的标记位存储报文中的内层源MAC以及报文的隧道源IP,在回程流量中使用,具有较好的扩展性。In some embodiments of the present disclosure, CT in OVS-DPDK (Data Plane Development Kit) mode is used to establish a session to improve forwarding performance, and the ct label is used to store the inner source MAC in the message and the tunnel source IP of the message according to different mark bits, which is used in the return traffic and has good scalability.
在本公开的一些实施例中,若为根据目标子端口的MAC进行匹配的操作类型,在基于ct标签执行流表填充回程报文时,将ct标签中保存的MAC设置为回程报文的内层目的MAC,将ct标签中保存的隧道源IP设置为回程报文的外层目的IP,将回程报文发回至目标负载均衡网元。In some embodiments of the present disclosure, if the operation type is to match according to the MAC of the target subport, when the flow table is filled with the return message based on the ct tag, the MAC saved in the ct tag is set as the inner destination MAC of the return message, and the tunnel source IP saved in the ct tag is set as the outer destination IP of the return message, and the return message is sent back to the target load balancing network element.
在本公开的一些实施例中,若为根据目标GroupENI的MAC进行匹配的操作类型,将ct标签中保存的MAC设置为回程报文的内层目的MAC,重新在目标GroupENI中随机选择一个子端口,将回程报文的内层目的MAC改为该子端口对应的MAC,将回程报文发回至该子端口所绑定的负载均衡网元。In some embodiments of the present disclosure, if the operation type is to match according to the MAC of the target GroupENI, the MAC saved in the ct tag is set as the inner destination MAC of the return message, a subport is randomly selected in the target GroupENI, the inner destination MAC of the return message is changed to the MAC corresponding to the subport, and the return message is sent back to the load balancing network element bound to the subport.
综上,本公开提供的实施例,通过控制器直接下发流表来控制流量的转发行为,通过覆盖网络的MAC作为后端选路的依据,可以灵活使用子端口的MAC或者虚拟网卡组的MAC作为选路依据,使用子端口的MAC将回程流量引到该子端口关联的网元设备中,使用虚拟网卡组的MAC将回程流量引到该虚拟网卡组关联的子端口对应的网元设备中,在采用虚拟网卡组实现负载均衡网元集群、多租户的场景下,保证后端服务器可以准确地将回程报文发送到正确的网元设备,实现负载分担。In summary, the embodiments provided by the present invention control the forwarding behavior of traffic by directly sending down the flow table through the controller, and use the MAC of the overlay network as the basis for back-end routing. The MAC of the subport or the MAC of the virtual network card group can be flexibly used as the basis for routing. The MAC of the subport is used to direct the return traffic to the network element device associated with the subport, and the MAC of the virtual network card group is used to direct the return traffic to the network element device corresponding to the subport associated with the virtual network card group. In the scenario where the virtual network card group is used to implement load balancing network element clusters and multi-tenants, it is ensured that the back-end server can accurately send the return message to the correct network element device to achieve load sharing.
基于图1所示实施例,如图3所示,图3为本公开实施例提供的另一种流量转发方法的流程示意图,该方法应用于云计算虚拟网络,云计算虚拟网络包括至少一个虚拟私有云vpn、至少一个负载均衡LB网元以及互联网网关,负载均衡网元下挂至少一个后端服务器。Based on the embodiment shown in Figure 1, as shown in Figure 3, Figure 3 is a flow chart of another traffic forwarding method provided in the embodiment of the present disclosure, the method is applied to a cloud computing virtual network, the cloud computing virtual network includes at least one virtual private cloud vpn, at least one load balancing LB network element and an Internet gateway, and the load balancing network element has at least one back-end server hanging under it.
在一些实施例中,租户vpn中包括至少一个虚拟机,虚拟机、LB网元以及互联网网关之间通过通信皆通过VXLAN封装。In some embodiments, the tenant VPN includes at least one virtual machine, and communications between the virtual machine, the LB network element, and the Internet gateway are all encapsulated through VXLAN.
在一些实施例中,互联网网关(Internet Gateway,以下简称IGW)为公网服务网关,是云计算虚拟网络架构和公网交互的统一出口,使虚拟私有云中的实例能够与公网进行双向通信。In some embodiments, the Internet Gateway (IGW) is a public network service gateway, which is a unified exit for interaction between the cloud computing virtual network architecture and the public network, enabling instances in the virtual private cloud to communicate bidirectionally with the public network.
本公开实施例提供的流量转发方法,包括以下步骤:The traffic forwarding method provided by the embodiment of the present disclosure includes the following steps:
步骤201,为vpn创建虚拟网卡组,将vpn中配置的至少一个端口作为子端口绑定在虚拟网卡组中,将每个子端口与至少一个负载均衡网元的trunk端口绑定,其中,虚拟网卡组包括固定IP和MAC且虚拟网卡组与至少一个浮动IP绑定。Step 201, create a virtual network card group for the VPN, bind at least one port configured in the VPN as a subport in the virtual network card group, bind each subport to the trunk port of at least one load balancing network element, wherein the virtual network card group includes a fixed IP and MAC and the virtual network card group is bound to at least one floating IP.
在本公开的一些实施例中,虚拟私有云vpn为云计算环境中一个逻辑独立的资源环境,不同VPC间安全隔离。In some embodiments of the present disclosure, a virtual private cloud (VPN) is a logically independent resource environment in a cloud computing environment, with secure isolation between different VPCs.
在一些实施例中,GroupENI是一种虚拟网卡组技术,可将多个虚拟网卡抽象成一个逻辑端口,由此GroupENI拥有端口的基本属性,包括固定IP地址(Fixed IP Address,以下简称Fix-IP),媒体访问控制(Media Access Control,以下简称MAC)地址等。In some embodiments, GroupENI is a virtual network card group technology that can abstract multiple virtual network cards into a logical port, so that GroupENI has basic properties of the port, including a fixed IP address (Fixed IP Address, hereinafter referred to as Fix-IP), a media access control (Media Access Control, hereinafter referred to as MAC) address, etc.
在一些实施例中,GroupENI中的Fix-IP是从租户的VPC中扣出的一段子网中获取,因此VPC内子网路由天然互通,租户的虚拟机可以通过访问GroupENI的Fix-IP去将流量通过ECMP引入到GroupENI下挂的子端口所绑定的网元例中进行业务处理,如负载均衡LB网元。In some embodiments, the Fix-IP in GroupENI is obtained from a subnet deducted from the tenant's VPC, so the subnet routes within the VPC are naturally interconnected. The tenant's virtual machine can access the Fix-IP of GroupENI to introduce traffic through ECMP into the network element instance bound to the subport attached to GroupENI for business processing, such as the load balancing LB network element.
在一些实施例中,GroupENI和普通端口一样支持绑定浮动IP(或称Floating IP),因为GroupENI支持多IP,所以浮动IP要与GroupENI中的Fix-IP建立IP对。外网用户通过访问GroupENI的浮动IP就可以将流量通过ECMP引入到GroupENI下挂的子端口所绑定的网元中进行业务处理。可以配合路由指定下一条为GroupENI,将流量等价路由到GroupE NI下子端口关联的VNF中,实现VNF的负载分担。In some embodiments, GroupENI supports binding floating IP (or Floating IP) like ordinary ports. Because GroupENI supports multiple IPs, floating IP needs to establish an IP pair with Fix-IP in GroupENI. External network users can access the floating IP of GroupENI to introduce traffic through ECMP to the network element bound to the subport under GroupENI for business processing. The next route can be designated as GroupENI in conjunction with routing, and the traffic can be equally routed to the VNF associated with the subport under GroupENI to achieve load sharing of VNF.
在一些实施例中,虚拟网络功能VNF是网络功能虚拟化NFV的基础组成部分,VNF指运行在虚拟化环境中的网络功能可以部署在通用的计算资源上,例如服务器、存储和网络设备。In some embodiments, the virtual network function VNF is a basic component of the network function virtualization NFV. VNF refers to a network function running in a virtualized environment that can be deployed on general computing resources such as servers, storage and network devices.
在一些实施例中,该方法可以应用于GroupENI配合Trunk功能给NFV提供基础网络服务的场景,如图2所示,租户vpc1创建了一个GroupENI(vpc1-GroupENI),其下绑定了多个端口包括(子端口subport:vpc1-subport-1、subport:vpc1-subport-2、...、subport:vpc1-subport-n),建立了一个网卡组;subport又分别关联到多个LB负载均衡器虚拟化网元中,如图2中的LB_1、LB_2...LB_n是一个集群,给vpc1的云主机提供LB服务,每个LB网元下挂多个后端服务器。每一个VNF可多租户共享,有且只有一个trunk端口进行业务流量收发,租户通过将vpc的子端口和trunk端口进行绑定的方式,实现vpc与VNF的流量交互,并通过vlan进行租户隔离。如图2所示,虚拟机、LB网元和IGW之间通信皆通过V XLAN封装。In some embodiments, the method can be applied to the scenario where GroupENI cooperates with Trunk function to provide basic network services for NFV. As shown in FIG2, tenant vpc1 creates a GroupENI (vpc1-GroupENI), which is bound to multiple ports including (subport subport: vpc1-subport-1, subport: vpc1-subport-2, ..., subport: vpc1-subport-n), and establishes a network card group; subport is respectively associated with multiple LB load balancer virtualized network elements, such as LB_1, LB_2...LB_n in FIG2. It is a cluster that provides LB services to the cloud host of vpc1, and each LB network element is connected to multiple backend servers. Each VNF can be shared by multiple tenants, and there is only one trunk port for sending and receiving business traffic. The tenant realizes the traffic interaction between vpc and VNF by binding the subport of vpc and the trunk port, and isolates the tenants through vlan. As shown in FIG2, the communication between virtual machines, LB network elements and IGW is all encapsulated through V XLAN.
在本公开的一些实施例中,用户通过GroupENI绑定的浮动IP访问云服务的流量转发路径如下述步骤202-209所示。In some embodiments of the present disclosure, the traffic forwarding path for a user to access a cloud service through a floating IP bound to GroupENI is shown in the following steps 202-209.
步骤202,通过互联网网关接收用户的访问流量,将访问流量的目的IP与至少一个虚拟私有云vpn的虚拟网卡组绑定的浮动IP进行匹配,根据匹配结果确定目标虚拟网卡组,并将目的IP转换为目标虚拟网卡组的固定IP。Step 202, receiving the user's access traffic through the Internet gateway, matching the destination IP of the access traffic with the floating IP bound to the virtual network card group of at least one virtual private cloud VPN, determining the target virtual network card group according to the matching result, and converting the destination IP into the fixed IP of the target virtual network card group.
在本公开的一些实施例中,以用户通过Vpc1-GroupENI绑定的浮动IP访问云服务为例,流量从IGW外网接口进行IGW,根据目的IP即Vpc1-GroupENI绑定的浮动IP找到对应的vpc1-GroupENI作为目标GroupENI,并将目的IP转换为vpc1-GroupENI的固定IP。In some embodiments of the present disclosure, taking the example of a user accessing a cloud service through a floating IP bound to Vpc1-GroupENI, traffic is transmitted from the IGW external network interface to the IGW, and the corresponding vpc1-GroupENI is found as the target GroupENI based on the destination IP, i.e., the floating IP bound to Vpc1-GroupENI, and the destination IP is converted into the fixed IP of vpc1-GroupENI.
步骤203,从目标虚拟网卡组的子端口中随机选择目标子端口,通过vxlan将访问流量封装为报文,将目标子端口的MAC设置为报文的内层目标MAC,并将报文送往与目标子端口绑定的负载均衡网元所在的宿主机。Step 203, randomly select a target subport from the subports of the target virtual network card group, encapsulate the access traffic into a message through vxlan, set the MAC of the target subport as the inner target MAC of the message, and send the message to the host machine where the load balancing network element bound to the target subport is located.
在本公开的一些实施例中,流量根据哈希HASH算法随机选择目标GroupENI下的某一子端口作为目标子端口,将目标子端口绑定的VNF所在的设备节点的VTEP作为隧道的下一跳地址,将选择的子端口的MAC作为内层报文的目的MAC,以将流量送入隧道对端的设备。In some embodiments of the present disclosure, the traffic randomly selects a subport under the target GroupENI as the target subport according to the hash algorithm, uses the VTEP of the device node where the VNF bound to the target subport is located as the next hop address of the tunnel, and uses the MAC of the selected subport as the destination MAC of the inner message to send the traffic to the device at the other end of the tunnel.
应当说明的是,本公开采用的SDN框架为强控方案,即网络中传播的内层mac往往是一个虚假的mac,可以是一个固定值,通过vxlan封装后,传输到目标设备后去除隧道封装,在送入用虚拟主机之间将目的内层MAC改为虚拟端口对应的真实端口,没有ARP。默认情况下目的MAC、源MAC设置为固定值,送入虚机时由交换机将其改为端口对应的真实MAC,发送报文时,有交换机应答一个默认的MAC。It should be noted that the SDN framework adopted by the present disclosure is a strong control solution, that is, the inner MAC propagated in the network is often a false MAC, which can be a fixed value. After being encapsulated by vxlan, the tunnel encapsulation is removed after being transmitted to the target device. The destination inner MAC is changed to the real port corresponding to the virtual port between the virtual hosts, and there is no ARP. By default, the destination MAC and source MAC are set to fixed values. When sent to the virtual machine, the switch changes it to the real MAC corresponding to the port. When sending a message, the switch responds with a default MAC.
步骤204,由宿主机根据报文的目标MAC选择对应的目标子端口,将目标子端口打入虚拟局域网vlan标签,并将报文的内层目标MAC设置为trunk端口对应的MAC,通过tru nk端口将报文送入对应的负载均衡网元。In step 204, the host selects the corresponding target subport according to the target MAC of the message, inserts the virtual LAN (VLAN) tag into the target subport, sets the inner target MAC of the message to the MAC corresponding to the trunk port, and sends the message to the corresponding load balancing network element through the trunk port.
在本公开的一些实施例中,LB网元所在宿主机,收到报文后剥去vxlan头,根据目的MAC选择对应的子端口,打入vlan标签,并将DMAC改为trunk端口对应的mac,通过Tru nk口送入LB网元。In some embodiments of the present disclosure, the host machine where the LB network element is located strips off the vxlan header after receiving the message, selects the corresponding sub-port according to the destination MAC, inserts the vlan label, and changes the DMAC to the mac corresponding to the trunk port, and sends it to the LB network element through the Trunk port.
应当说明的是,通过Trunk技术可以让一条物理上的链路(接口)传输多个VLAN的数据流量,并且每一个VLAN的数据流量都会被打上“标签”,以此来标明这是属于哪个V LAN的数据流量,实现传输不同vlan的数据流量。It should be noted that Trunk technology allows a physical link (interface) to transmit data traffic from multiple VLANs, and the data traffic from each VLAN will be marked with a "label" to indicate which VLAN the data traffic belongs to, thereby realizing the transmission of data traffic from different VLANs.
步骤205,目标负载均衡网元根据预设的策略从下挂的后端服务器中选择目标后端服务器,将目标目标虚拟网卡组的固定IP转换为目标后端服务器的源IP,从trunk端口将报文发送至目标负载均衡网元所在的交换机。Step 205, the target load balancing network element selects a target backend server from the downstream backend servers according to a preset strategy, converts the fixed IP of the target virtual network card group into the source IP of the target backend server, and sends the message from the trunk port to the switch where the target load balancing network element is located.
在本公开的一些实施例中,LB网元收到报文根据vlan获取租户对应的资源空间,根据策略选择一台后端,将目标GroupENI的固定IP转换为后端服务器的IP,从网元的Trunk口发出。In some embodiments of the present disclosure, the LB network element receives a message and obtains the resource space corresponding to the tenant according to the VLAN, selects a backend according to the policy, converts the fixed IP of the target GroupENI to the IP of the backend server, and sends it from the Trunk port of the network element.
步骤206,交换机根据报文的vlan标签匹配对应的目标子端口,将目标子端口剥离vla n标签,根据控制器下发的第一流表确定将目标子端口的MAC设置为内层的源MAC,或根据控制器下发的第一流表确定将目标虚拟网卡组的MAC设置为内存的源MAC,根据v pc的路由将报文通过vxlan封装后发送至目标后端服务器所在的云主机。In step 206, the switch matches the corresponding target subport according to the VLAN tag of the message, strips the VLAN tag from the target subport, sets the MAC of the target subport to the inner source MAC according to the first flow table sent by the controller, or sets the MAC of the target virtual network card group to the source MAC of the memory according to the first flow table sent by the controller, and encapsulates the message through vxlan according to the routing of vpc and sends it to the cloud host where the target backend server is located.
在本公开的一些实施例中,在LB网元所在的OVS中,根据报文的VLAN匹配来处理流量,并根据控制器下发的流表规则进行决策。当报文经过OVS时,如果根据流表决策需要剥离vlan标签,OVS会执行vlan标签剥离操作,将报文中的vlan标签移除。根据控制器下发的流表规则设置报文的内层源SMAC,一旦决定了内层SMAC,OVS根据VPC路由表的配置来决定如何进一步处理报文,报文被封装为vxlan数据包,并通过OVS网络到达云主机。In some embodiments of the present disclosure, in the OVS where the LB network element is located, traffic is processed according to the VLAN matching of the message, and decisions are made according to the flow table rules issued by the controller. When the message passes through OVS, if the vlan tag needs to be stripped according to the flow table decision, OVS will perform a vlan tag stripping operation to remove the vlan tag in the message. The inner source SMAC of the message is set according to the flow table rules issued by the controller. Once the inner SMAC is determined, OVS decides how to further process the message based on the configuration of the VPC routing table. The message is encapsulated as a vxlan data packet and reaches the cloud host through the OVS network.
在本公开的一些实施例中,LB网元所在的虚拟交换机OVS根据报文的vlan匹配对应的目标子端口,剥离vlan标签,并根据控制器下发的流表决策是将目标子端口的MAC设置为内层的SMAC,或者是将与目标子端口关联的目标GroupENI的MAC设置为内层的S MAC,再根据vpc路由将报文经VXLAN封装送到后端服务器所在的云主机。In some embodiments of the present disclosure, the virtual switch OVS where the LB network element is located matches the corresponding target subport according to the VLAN of the message, strips off the VLAN tag, and decides based on the flow table sent by the controller whether to set the MAC of the target subport to the inner SMAC, or to set the MAC of the target GroupENI associated with the target subport to the inner S MAC, and then encapsulates the message via VXLAN according to the vpc routing and sends it to the cloud host where the backend server is located.
步骤207,目标后端服务器所在的云主机根据报文的源MAC建立ct表项,基于ct表项定义ct标签以保存数据类型、报文的内层源MAC以及报文的隧道源IP。Step 207, the cloud host where the target backend server is located establishes a ct table entry according to the source MAC of the message, and defines a ct tag based on the ct table entry to save the data type, the inner source MAC of the message, and the tunnel source IP of the message.
在本公开的一些实施例中,目标后端服务器所在的云主机根据报文的源MAC在流表中查找确定ct表项,基于ct表项定义ct标签以保存报文的内层源MAC以及报文的隧道源IP包括:目标后端服务器所在的云主机根据报文的源MAC判断报文是否是否建立ct表项;若报文需要建立ct表项,基于第一流表对目标子端口的MAC进行匹配,将目标子端口的MAC作为报文的内层源MAC保存在ct标签中,将目标负载均衡网元所在的隧道终端IP作为报文的隧道源IP保存在ct标签中,或基于第二流表对目标虚拟网卡组的MAC进行匹配,将目标虚拟网卡组的MAC作为报文的内层源MAC保存在ct标签中。In some embodiments of the present disclosure, the cloud host where the target backend server is located searches the flow table for a ct table entry based on the source MAC of the message, and defines a ct tag based on the ct table entry to save the inner source MAC of the message and the tunnel source IP of the message, including: the cloud host where the target backend server is located determines whether a ct table entry is established for the message based on the source MAC of the message; if a ct table entry needs to be established for the message, the MAC of the target subport is matched based on the first flow table, the MAC of the target subport is saved in the ct tag as the inner source MAC of the message, the tunnel terminal IP where the target load balancing network element is located is saved in the ct tag as the tunnel source IP of the message, or the MAC of the target virtual network card group is matched based on the second flow table, and the MAC of the target virtual network card group is saved in the ct tag as the inner source MAC of the message.
在本公开的一些实施例中,后端服务器所在的云主机收到报文后,剥去vxlan头。根据报文的源MAC匹配是否建立CT表项,并定义一个128bit的ct标签(ct_lable)来保存相关信息,以便回程报文填充,再送入对应的云主机。In some embodiments of the present disclosure, after receiving the message, the cloud host where the backend server is located strips off the vxlan header, establishes a CT table entry based on the source MAC match of the message, and defines a 128-bit ct label (ct_lable) to save relevant information so that the return message can be filled and then sent to the corresponding cloud host.
在本公开的一些实施例中,ct标签的格式如图4所示,有128个bit,[120...127]存储typ e,用于定义存储的数据类型,[72...119]存储报文的内层源MAC,[40...71]存储报文的隧道源IP。In some embodiments of the present disclosure, the format of the ct tag is as shown in Figure 4, with 128 bits, [120...127] stores type e, which is used to define the stored data type, [72...119] stores the inner source MAC of the message, and [40...71] stores the tunnel source IP of the message.
在本公开的一些实施例中,如上述两张流表table 154和table 155分别为两种type的操作,table 154是根据目标子端口的MAC进行匹配,type=1,将目标子端口的MAC所在设备的隧道IP都保存在ct_lable中;table 155是根据目标GroupENI的MAC进行匹配,type=3,只将目标GroupENI的MAC保存在ct_lable中。In some embodiments of the present disclosure, the two flow tables table 154 and table 155 mentioned above are two types of operations respectively. Table 154 matches according to the MAC of the target subport, type = 1, and the tunnel IP of the device where the MAC of the target subport is located is saved in ct_lable; table 155 matches according to the MAC of the target GroupENI, type = 3, and only the MAC of the target GroupENI is saved in ct_lable.
应当说明的是,两种type流表的区别在于后端回程的报文是走原来的LB网元,还是重新进入对应的GroupENI随机选择一个LB网元。两种流表通过控制器开关控制,下发一种其中一条。It should be noted that the difference between the two types of flow tables is whether the backend return message goes through the original LB network element or re-enters the corresponding GroupENI to randomly select an LB network element. The two types of flow tables are controlled by the controller switch, and one of them is issued.
步骤208,目标后端服务器所在的云主机根据ct标签的数据类型匹配对应的流表,基于ct标签执行流表以填充回程报文的内层目的MAC为目标子端口的MAC或目标虚拟网卡组的MAC,并将回程报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元作为新的目标负载均衡网元,将回程报文发回至新的目标负载均衡网元。In step 208, the cloud host where the target backend server is located matches the corresponding flow table according to the data type of the ct tag, executes the flow table based on the ct tag to fill in the inner destination MAC of the return message with the MAC of the target subport or the MAC of the target virtual network card group, and sends the return message back to the target load balancing network element, or randomly selects a subport bound to the load balancing network element from the target virtual network card group as the new target load balancing network element, and sends the return message back to the new target load balancing network element.
在本公开的一些实施例中,服务器云主机回包,在本机OVS走CT会话后,跳转到流表table=102,ct_lable的type=1的匹配到流表table=102如下所示:In some embodiments of the present disclosure, the server cloud host returns a packet, and after the local OVS goes through the CT session, it jumps to the flow table table=102, and the match of ct_lable type=1 to the flow table table=102 is as follows:
执行table=102,将ct_lable中的MAC设置为报文内层的目的MAC,即将报文的内层目的MAC改为目的子端口的MAC,将设备的隧道IP设置为报文外层的目的IP,并设置vn i(Virtual Network Identifier,虚拟网络标识符)标志vlan网络流量,将报文从发送到对应的LB网元所在的宿主机。Execute table=102, set the MAC in ct_lable to the destination MAC of the inner layer of the message, that is, change the inner destination MAC of the message to the MAC of the destination subport, set the tunnel IP of the device to the destination IP of the outer layer of the message, and set the vn i (Virtual Network Identifier) flag vlan network traffic, and send the message to the host machine where the corresponding LB network element is located.
在本公开的一些实施例中,ct_lable的type=3的匹配到流表table=102如下所示:In some embodiments of the present disclosure, the match of type=3 of ct_lable to flow table=102 is as follows:
执行table=102,仅将报文的内层目的MAC改为目的GroupENI的MAC,跳转到table103;在table 103表中,根据报文的目的MAC匹配到对应目标GroupENI建立的组group,根据Hash算法随机选择一个子端口对应的哈希桶bucket,将内层DMAC改为该子端口对应的MAC,将该子端口绑定LB网元所在的VTEP设置为报文外层的目的IP,并设置vni,将报文发送到对应的LB网元所在的宿主机。Execute table=102, only change the inner destination MAC of the message to the MAC of the destination GroupENI, and jump to table103; in table 103, match the group group established by the corresponding target GroupENI according to the destination MAC of the message, randomly select a hash bucket corresponding to a subport according to the Hash algorithm, change the inner DMAC to the MAC corresponding to the subport, set the VTEP where the subport is bound to the LB network element as the destination IP of the outer layer of the message, set vni, and send the message to the host where the corresponding LB network element is located.
在本公开的一些实施例中,LB网元所在宿主机,收到报文后剥去vxlan头,根据目的MAC选择对应的子端口,打入vlan标签,通过Trunk口送入LB网元。In some embodiments of the present disclosure, the host machine where the LB network element is located strips off the vxlan header after receiving the message, selects the corresponding sub-port according to the destination MAC, inserts the vlan label, and sends it to the LB network element through the Trunk port.
步骤209,目标负载均衡网元或新的目标负载均衡网元通过vxlan,经由目标负载均衡网元或新的目标负载均衡网元所在的交换机将回程报文转发至互联网网关;通过互联网网关将回程报文发送给用户。Step 209, the target load balancing network element or the new target load balancing network element forwards the return message to the Internet gateway through vxlan via the switch where the target load balancing network element or the new target load balancing network element is located; and sends the return message to the user through the Internet gateway.
在本公开的一些实施例中,LB网元收到报文根据vlan获取租户对应的资源空间,将后端服务器的源IP转换为GroupENI的固定IP,从网元的Trunk口发出;LB网元所在的OV S根据将流量封装转发至IGW网关;IGW网关收到报文后剥去vxlan头,将GroupENI的固定IP转化为对应的Floating IP送出公网发送给用户。In some embodiments of the present disclosure, the LB network element receives a message and obtains the resource space corresponding to the tenant based on the VLAN, converts the source IP of the backend server into the fixed IP of GroupENI, and sends it from the Trunk port of the network element; the OV S where the LB network element is located encapsulates and forwards the traffic to the IGW gateway; after receiving the message, the IGW gateway strips off the vxlan header, converts the fixed IP of GroupENI into the corresponding Floating IP, and sends it out of the public network to the user.
综上,本公开提供的方案,具有以下改进点及有益效果:In summary, the solution provided by the present disclosure has the following improvements and beneficial effects:
1.采用SDN强控,通过openflow协议可根据需要灵活地更改内层MAC控制流量的转发:将子端口的MAC设置为内层的SMAC,将回程流量引到某个该子端口关联的网元设备中;将子端口关联的GroupENI的MAC设置为内层的SMAC,将回程流量引到GroupEN I关联的一组子端口对应的网元中,实现负载分担。1. Adopt SDN strong control, through openflow protocol, the inner MAC can be flexibly changed as needed to control the forwarding of traffic: set the MAC of the subport to the inner SMAC, and guide the return traffic to a network element device associated with the subport; set the MAC of GroupENI associated with the subport to the inner SMAC, and guide the return traffic to the network element corresponding to a group of subports associated with GroupEN I to achieve load sharing.
2.使用OVS-DPDK的模式,在用户态进行会话保持提高转发速率,并定义ct标签的结构,用以存储overlay内层的源MAC,在回程流量中使用具有较好的扩展性。2. Use the OVS-DPDK mode to maintain sessions in user mode to improve forwarding rate, and define the structure of the ct label to store the source MAC of the inner layer of the overlay, which has good scalability when used in return traffic.
本公开实施例还提供一种流量转发装置,如图5所示。图5为本公开实施例提供的流量转发装置的结构示意图,所述流量转发装置300,包括:The embodiment of the present disclosure further provides a traffic forwarding device, as shown in Figure 5. Figure 5 is a schematic diagram of the structure of the traffic forwarding device provided by the embodiment of the present disclosure, and the traffic forwarding device 300 includes:
流量接收单元310,用于通过互联网网关接收用户的访问流量,根据访问流量的目的IP从至少一个vpn的虚拟网卡组中确定目标子端口,基于虚拟扩展局域网vxlan将访问流量封装为报文,并将报文发送至与目标子端口绑定的目标负载均衡网元;The traffic receiving unit 310 is used to receive the user's access traffic through the Internet gateway, determine the target subport from the virtual network card group of at least one VPN according to the destination IP of the access traffic, encapsulate the access traffic into a message based on the virtual extended local area network vxlan, and send the message to the target load balancing network element bound to the target subport;
流表决策单元320,用于目标负载均衡网元从下挂的后端服务器中选择目标后端服务器,根据控制器下发的流表将报文的内层源MAC设置为目标子端口的MAC或目标虚拟网卡组的MAC,并将报文通过vxlan封装后转发至目标后端服务器所在的云主机;The flow table decision unit 320 is used for the target load balancing network element to select the target backend server from the downstream backend servers, set the inner source MAC of the message to the MAC of the target subport or the MAC of the target virtual network card group according to the flow table sent by the controller, and forward the message to the cloud host where the target backend server is located after encapsulation through vxlan;
ct标签定义单元330,用于目标后端服务器所在的云主机根据报文的源MAC建立ct表项,基于ct表项定义ct标签以保存数据类型、报文的内层源MAC以及报文的隧道源IP;The ct label definition unit 330 is used for the cloud host where the target backend server is located to establish a ct table entry according to the source MAC of the message, and define a ct label based on the ct table entry to save the data type, the inner source MAC of the message, and the tunnel source IP of the message;
流量回程引流单元340,用于目标后端服务器所在的云主机根据ct标签的数据类型匹配对应的流表,基于ct标签执行流表以填充回程报文的内层目的MAC为目标子端口的MAC或目标虚拟网卡组的MAC,并将回程报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元作为新的目标负载均衡网元,将回程报文发回至新的目标负载均衡网元。The traffic return diversion unit 340 is used for the cloud host where the target backend server is located to match the corresponding flow table according to the data type of the ct tag, execute the flow table based on the ct tag to fill the inner destination MAC of the return message with the MAC of the target subport or the MAC of the target virtual network card group, and send the return message back to the target load balancing network element, or randomly select a load balancing network element bound to a subport from the target virtual network card group as the new target load balancing network element, and send the return message back to the new target load balancing network element.
在本公开的一些实施例中,该装置还包括虚拟网卡组创建单元,用于为vpn创建虚拟网卡组,将vpn中配置的至少一个端口作为子端口绑定在虚拟网卡组中,将每个子端口与至少一个负载均衡网元的trunk端口绑定,其中,虚拟网卡组包括固定IP和MAC且虚拟网卡组与至少一个浮动IP绑定。In some embodiments of the present disclosure, the device also includes a virtual network card group creation unit, which is used to create a virtual network card group for a VPN, bind at least one port configured in the VPN as a subport in the virtual network card group, and bind each subport to a trunk port of at least one load balancing network element, wherein the virtual network card group includes a fixed IP and MAC and the virtual network card group is bound to at least one floating IP.
在本公开的一些实施例中,流量接收单元310具体用于:通过互联网网关接收用户的访问流量,将访问流量的目的IP与至少一个虚拟私有云vpn的虚拟网卡组绑定的浮动IP进行匹配,根据匹配结果确定目标虚拟网卡组,并将目的IP转换为目标虚拟网卡组的固定IP;从目标虚拟网卡组的子端口中随机选择目标子端口,通过vxlan将访问流量封装为报文,将目标子端口的MAC设置为报文的内层目标MAC,并将报文送往与目标子端口绑定的负载均衡网元所在的宿主机;由宿主机根据报文的目标MAC选择对应的目标子端口,将目标子端口打入虚拟局域网vlan标签,并将报文的内层目标MAC设置为trunk端口对应的MAC,通过trunk端口将报文送入对应的负载均衡网元。In some embodiments of the present disclosure, the traffic receiving unit 310 is specifically used to: receive the user's access traffic through the Internet gateway, match the destination IP of the access traffic with the floating IP bound to the virtual network card group of at least one virtual private cloud VPN, determine the target virtual network card group according to the matching result, and convert the destination IP into a fixed IP of the target virtual network card group; randomly select a target subport from the subports of the target virtual network card group, encapsulate the access traffic into a message through vxlan, set the MAC of the target subport as the inner target MAC of the message, and send the message to the host machine where the load balancing network element bound to the target subport is located; the host machine selects the corresponding target subport according to the target MAC of the message, inserts a virtual local area network VLAN tag into the target subport, and sets the inner target MAC of the message to the MAC corresponding to the trunk port, and sends the message to the corresponding load balancing network element through the trunk port.
在本公开的一些实施例中,流表决策单元320具体用于:控制目标负载均衡网元根据预设的策略从下挂的后端服务器中选择目标后端服务器,将目标目标虚拟网卡组的固定I P转换为目标后端服务器的源IP,从trunk端口将报文发送至目标负载均衡网元所在的交换机;交换机根据报文的vlan标签匹配对应的目标子端口,将目标子端口剥离vlan标签,根据控制器下发的第一流表确定将目标子端口的MAC设置为内层的源MAC,或根据控制器下发的第一流表确定将目标虚拟网卡组的MAC设置为内存的源MAC;交换机根据v pc的路由将报文通过vxlan封装后发送至目标后端服务器所在的云主机。In some embodiments of the present disclosure, the flow table decision unit 320 is specifically used to: control the target load balancing network element to select the target backend server from the downstream backend servers according to a preset strategy, convert the fixed IP of the target virtual network card group into the source IP of the target backend server, and send the message from the trunk port to the switch where the target load balancing network element is located; the switch matches the corresponding target sub-port according to the VLAN tag of the message, strips the VLAN tag from the target sub-port, and determines to set the MAC of the target sub-port to the inner source MAC according to the first flow table sent by the controller, or determines to set the MAC of the target virtual network card group to the source MAC of the memory according to the first flow table sent by the controller; the switch encapsulates the message through vxlan according to the vpc route and sends it to the cloud host where the target backend server is located.
在本公开的一些实施例中,双通道处理模块420具体用于:控制目标后端服务器所在的云主机根据报文的源MAC判断报文是否是否建立ct表项;若报文需要建立ct表项,基于第一流表对目标子端口的MAC进行匹配,将目标子端口的MAC作为报文的内层源MA C保存在ct标签中,将目标负载均衡网元所在的隧道终端IP作为报文的隧道源IP保存在ct标签中,或基于第二流表对目标虚拟网卡组的MAC进行匹配,将目标虚拟网卡组的MA C作为报文的内层源MAC保存在ct标签中。In some embodiments of the present disclosure, the dual-channel processing module 420 is specifically used to: control the cloud host where the target back-end server is located to determine whether a ct table entry is established for the message based on the source MAC of the message; if the message needs to establish a ct table entry, match the MAC of the target sub-port based on the first flow table, and save the MAC of the target sub-port as the inner source MAC of the message in the ct tag, and save the tunnel terminal IP where the target load balancing network element is located as the tunnel source IP of the message in the ct tag, or match the MAC of the target virtual network card group based on the second flow table, and save the MAC of the target virtual network card group as the inner source MAC of the message in the ct tag.
在本公开的一些实施例中,该装置还包括发回单元,用于在将报文发回至目标负载均衡网元,或重新从目标虚拟网卡组中随机选择一个子端口绑定的负载均衡网元,将报文发回至负载均衡网元之后,控制目标负载均衡网元或新的目标负载均衡网元通过vxlan,经由目标负载均衡网元或新的目标负载均衡网元所在的交换机将回程报文转发至互联网网关;通过互联网网关将回程报文发送给用户。In some embodiments of the present disclosure, the device also includes a sending back unit, which is used to send the message back to the target load balancing network element, or randomly select a load balancing network element bound to a subport from the target virtual network card group, and after sending the message back to the load balancing network element, control the target load balancing network element or the new target load balancing network element to forward the return message to the Internet gateway through vxlan via the switch where the target load balancing network element or the new target load balancing network element is located; and send the return message to the user through the Internet gateway.
综上,本公开提供的流量转发装置,通过控制器直接下发流表来控制流量的转发行为,通过覆盖网络的MAC作为后端选路的依据,可以灵活使用子端口的MAC或者虚拟网卡组的MAC作为选路依据,使用子端口的MAC将回程流量引到该子端口关联的网元设备中,使用虚拟网卡组的MAC将回程流量引到该虚拟网卡组关联的子端口对应的网元设备中,在采用虚拟网卡组实现负载均衡网元集群、多租户的场景下,保证后端服务器可以准确地将回程报文发送到正确的网元设备,实现负载分担。In summary, the traffic forwarding device provided by the present invention controls the forwarding behavior of the traffic by directly sending down the flow table through the controller, and uses the MAC of the overlay network as the basis for back-end routing. The MAC of the subport or the MAC of the virtual network card group can be flexibly used as the basis for routing. The MAC of the subport is used to direct the return traffic to the network element device associated with the subport, and the MAC of the virtual network card group is used to direct the return traffic to the network element device corresponding to the subport associated with the virtual network card group. In the scenario where the virtual network card group is used to realize load balancing network element cluster and multi-tenant, it is ensured that the back-end server can accurately send the return message to the correct network element device to realize load sharing.
上述实施例提供的流量转发装置与本公开实施例提供的一种流量转发方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。The traffic forwarding device provided in the above embodiment and a traffic forwarding method embodiment provided in the embodiment of the present disclosure belong to the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
图6为本公开实施例提供的通信设备的硬件组成结构示意图,如图6所示,所述通信设备400包括至少一个处理器402;以及与所述至少一个处理器402通信连接的存储器401;其中,所述存储器401存储有可被所述至少一个处理器402执行的指令,所述指令被所述至少一个处理器402执行,以实现本公开实施例所述的流量转发方法的步骤;或者,所述指令被所述至少一个处理器402执行,以实现本公开实施例所述的流量转发方法的步骤。Figure 6 is a schematic diagram of the hardware composition structure of the communication device provided in an embodiment of the present disclosure. As shown in Figure 6, the communication device 400 includes at least one processor 402; and a memory 401 that is communicatively connected to the at least one processor 402; wherein the memory 401 stores instructions that can be executed by the at least one processor 402, and the instructions are executed by the at least one processor 402 to implement the steps of the traffic forwarding method described in the embodiment of the present disclosure; or, the instructions are executed by the at least one processor 402 to implement the steps of the traffic forwarding method described in the embodiment of the present disclosure.
可选地,该通信设备具体可为本申请实施例的控制设备,并且该通信设备可以实现本申请实施例的各个方法中由控制设备实现的相应流程,为了简洁,在此不再赘述。Optionally, the communication device may specifically be a control device of an embodiment of the present application, and the communication device may implement corresponding processes implemented by the control device in each method of the embodiment of the present application, which will not be described in detail here for the sake of brevity.
可理解,通信设备中还包括通信接口403。通信设备中的各个组件通过总线系统404耦合在一起。可理解,总线系统404用于实现这些组件之间的连接通信。总线系统404除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统404。It is understood that the communication device also includes a communication interface 403. The various components in the communication device are coupled together through a bus system 404. It is understood that the bus system 404 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 404 also includes a power bus, a control bus, and a status signal bus. However, for the sake of clarity, various buses are labeled as bus system 404 in FIG. 6.
可以理解,存储器401可以是易失性存储器或非易失性存储器,也可包括易失性和It is understood that the memory 401 may be a volatile memory or a non-volatile memory, and may also include a volatile memory and a non-volatile memory.
非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read OnlyMemory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRA M,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Acces s Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Mem ory)。本发明实施例描述的存储器401旨在包括但不限于这些和任意其它适合类型的存储器。Both non-volatile memory. Among them, non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), ferromagnetic random access memory, flash memory, magnetic surface memory, optical disk, or read-only optical disk (CD-ROM); magnetic surface memory can be magnetic disk memory or tape memory. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), direct memory bus random access memory (DRRAM). The memory 401 described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.
上述本公开实施例揭示的方法可以应用于处理器402中,或者由处理器402实现。处理器402可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器402中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器402可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器402可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器401,处理器402读取存储器401中的信息,结合其硬件完成前述方法的步骤。The method disclosed in the above embodiment of the present disclosure can be applied to the processor 402, or implemented by the processor 402. The processor 402 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit in the processor 402 or the instruction in the form of software. The above processor 402 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The processor 402 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiment of the present invention, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in the memory 401, and the processor 402 reads the information in the memory 401 and completes the steps of the above method in combination with its hardware.
在示例性实施例中,通信设备可以被一个或多个应用专用集成电路(ASIC,Applicati on Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、FPGA、通用处理器、控制器、MCU、微处理器(Microprocessor)、或其他电子元件实现,用于执行前述方法。In an exemplary embodiment, the communication device may be implemented by one or more application specific integrated circuits (ASIC), DSP, programmable logic device (PLD), complex programmable logic device (CPLD), FPGA, general purpose processor, controller, MCU, microprocessor, or other electronic components to execute the aforementioned method.
本案实施例还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行时实现本发明实施例所述的流量转发方法的步骤;或者,所述计算机指令用于使所述计算机执行时实现本发明实施例所述的流量转发方法的步骤。The embodiment of the present case also provides a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable the computer to implement the steps of the traffic forwarding method described in the embodiment of the present invention when executed; or, the computer instructions are used to enable the computer to implement the steps of the traffic forwarding method described in the embodiment of the present invention when executed.
可选的,该计算机可读存储介质可应用于本申请实施例中的控制设备,并且该计算机指令使得计算机执行本申请实施例的各个方法中由控制设备实现的相应流程,为了简洁,在此不再赘述。Optionally, the computer-readable storage medium can be applied to the control device in the embodiments of the present application, and the computer instructions enable the computer to execute the corresponding processes implemented by the control device in the various methods of the embodiments of the present application. For the sake of brevity, they are not repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as: multiple units or components can be combined, or can be integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the components shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the devices or units can be electrical, mechanical or other forms.
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。The units described above as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units; some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。In addition, all functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may be separately used as a unit, or two or more units may be integrated into one unit; the above-mentioned integrated units may be implemented in the form of hardware or in the form of hardware plus software functional units.
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。A person of ordinary skill in the art can understand that: all or part of the steps of implementing the above-mentioned method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium, which, when executed, executes the steps of the above-mentioned method embodiment; and the aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, RAM, magnetic disks or optical disks.
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。Alternatively, if the above-mentioned integrated unit of the present invention is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present invention can be essentially or partly reflected in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, RAM, magnetic disks or optical disks.
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art who is familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410984592.9A CN118714087A (en) | 2024-07-22 | 2024-07-22 | Traffic forwarding method, device and storage medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202410984592.9A CN118714087A (en) | 2024-07-22 | 2024-07-22 | Traffic forwarding method, device and storage medium |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN118714087A true CN118714087A (en) | 2024-09-27 |
Family
ID=92819910
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202410984592.9A Pending CN118714087A (en) | 2024-07-22 | 2024-07-22 | Traffic forwarding method, device and storage medium |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118714087A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119814654A (en) * | 2024-12-05 | 2025-04-11 | 天翼云科技有限公司 | Message forwarding method, device, electronic device and storage medium |
-
2024
- 2024-07-22 CN CN202410984592.9A patent/CN118714087A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN119814654A (en) * | 2024-12-05 | 2025-04-11 | 天翼云科技有限公司 | Message forwarding method, device, electronic device and storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11283707B2 (en) | Segment routing with fast reroute for container networking | |
| JP7749654B2 (en) | Virtual Layer 2 Network | |
| CN112470436B (en) | System, method, and computer-readable medium for providing multi-cloud connectivity | |
| EP4272384B1 (en) | Internet group management protocol (igmp) of a layer 2 network in a virtualized cloud environment | |
| US10862732B2 (en) | Enhanced network virtualization using metadata in encapsulation header | |
| CN107465590B (en) | Network infrastructure system, method of routing network traffic and computer readable medium | |
| US9654409B2 (en) | Method for scaling address lookups using synthetic addresses | |
| CN104335532B (en) | The method and apparatus for routing the packet to the far-end address of Virtual Switch Instance | |
| CN103200069B (en) | A kind of method and apparatus of Message processing | |
| KR20210093312A (en) | Logic routers with segmented network elements | |
| CN109937401A (en) | Live migration of load-balanced virtual machines via traffic bypass | |
| CN106850459B (en) | Method and device for realizing load balance of virtual network | |
| CN106936939A (en) | A kind of message processing method, relevant apparatus and NVO3 network systems | |
| CN112671628A (en) | Business service providing method and system | |
| CN109547354B (en) | Load balancing method, device, system, core layer switch and storage medium | |
| CN102355417A (en) | Data center two-layer interconnection method and device | |
| CN113542111B (en) | Message forwarding method and network equipment | |
| JP2024503600A (en) | Layer 2 networking span ports in virtualized cloud environments | |
| CN115442184B (en) | Access system and method, access server, system and storage medium | |
| CN115834291B (en) | Distributed intranet service data acquisition method, device, equipment and storage medium | |
| WO2022053007A1 (en) | Network reachability verification method and apparatus, and computer storage medium | |
| CN118714087A (en) | Traffic forwarding method, device and storage medium | |
| US20240039832A1 (en) | Hitless migration of interconnected data center networks for network virtualization overlay using gateways | |
| CN116648892A (en) | Layer 2 Networking Storm Control in Virtualized Cloud Environments |
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 |