CN110088732B - 一种数据包处理方法、主机和系统 - Google Patents
一种数据包处理方法、主机和系统 Download PDFInfo
- Publication number
- CN110088732B CN110088732B CN201680091703.7A CN201680091703A CN110088732B CN 110088732 B CN110088732 B CN 110088732B CN 201680091703 A CN201680091703 A CN 201680091703A CN 110088732 B CN110088732 B CN 110088732B
- Authority
- CN
- China
- Prior art keywords
- network
- host
- data packet
- address
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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]
- H04L12/4645—Details on frame tagging
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1013—Network architectures, gateways, control or user entities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请公开一种数据包处理方法、主机和系统,云管理平台根据主机的管理网IP地址和网络处理设备的管理网IP地址之间的对应关系,向网络处理设备发送主机上运行的计算实例的VPC网络信息;虚拟交换机接收计算实例通过自身的虚拟端口发出的数据包,数据包携带发出数据包的虚拟端口的VLAN标识和计算实例的网络地址;虚拟交换机根据VLAN标识发送数据包,将数据包路由到网络处理设备;网络处理设备接收数据包,根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理。本申请中,由独立的网络功能处理设备提供网络功能处理,从而可以根据需求对计算实例的VPC网络特性进行调整,提高了管理效率。
Description
技术领域
本发明涉及IT技术领域,尤其涉及一种数据包处理方法、主机和系统。
背景技术
随着虚拟化(Virtualization)技术的发展,出现了不同类型的虚拟化技术,例如:VMWare公司的ESXi、微软公司的Hyper-V、KVM、Xen,以及容器(Container)等,通过虚拟化技术可以在一台主机上虚拟出多个计算实例。
云资源池中包括多个主机,使用不同的虚拟机技术的主机可构成不同类型的云资源池,例如云资源池的类型包括:VMWare云资源池、Hyper-v云资源池、KVM云资源池和Xen云资源池等等。
由于不同类型云资源池的开放程度不同,因而不同类型的云资源池提供的虚拟私有云(Virtual Private Cloud,VPC)网络特性不相同,基本上高级的网络特性需要用户购买专门的网络组件来实现,例如:VMWare云资源池中的ESXi主机可部署标准虚拟化交换机(Virtual Standard Switch,VSS)/标准分布式交换机(Virtual Distibuted Switch,VDS),VSS/VDS可提供二层转发能力,如果ESXi主机需要实现安全组、三层路由或动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)等网络特性时,需要购买相应的网络组件。因此,当用户使用由多个不同类型的云资源池组成的云计算系统时,由于各种资源池提供的网络特性不同,给云资源池的管理上带来不便,同时增加云计算系统部署的复杂度。
发明内容
本申请公开了一种数据包处理方法、主机和系统,将对数据包的VPC网络特性处理转移到与主机相连的网络处理设备上,VPC网络特性不再受到资源池类型的限制,便于对计算实例的VPC网络特性进行动态管理,降低了云计算系统部署的复杂度。
第一方面,本申请提供了一种数据包处理方法,数据包处理方法应用于云计算系统,云计算系统包括云管理平台和至少一个主机,云计算系统中各个主机可以是使用不同虚拟化技术的主机,虚拟化技术包括但不限于VMVare虚拟化技术、Hyper-v虚拟化技术、Xen虚拟化技术或KVM虚拟化技术。主机包括虚拟交换机和网络处理设备,主机运行有多个计算实例,计算实例可以是虚拟机或容器,多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,虚拟端口表示计算实例的虚拟网卡的逻辑端口,且同一主机上各计算实例的虚拟端口的VLAN标识互不相同,VLAN标识表示虚拟端口所属的VLAN的标识,主机上各个虚拟端口的VLAN标识不同表示各个虚拟端口所属的VLAN不同,这样主机上的各个计算实例处于不同的虚拟局域网中,不能直接进行互通。主机通过网络处理设备与云计算系统中的其他设备通信;其他通信设备包括但不限于交换机、路由器、网络处理设备或云计算系统中的其他主机。
云管理平台根据主机的管理网IP地址和网络处理设备的管理网IP地址之间的对应关系,向网络处理设备发送主机上运行的计算实例的VPC网络信息;管理网IP地址表示在管理网元中的IP地址,管理网主要传输控制命令。VPC网络信息表示对数据包的处理规则,VPC网络信息包括但不限于DHCP规则、端口安全规则、L2转发规则、L3路由规则、隧道封装规则中的一种或多种。
虚拟交换机接收计算实例通过自身的虚拟端口发出的数据包,数据包携带发出数据包的虚拟端口的VLAN标识和计算实例的网络地址;由于主机内的各个计算实例的虚拟端口的VLAN标识不同,计算实例之间无法直接进行通信,虚拟交换机将数据包发送到网络处理设备,即虚拟交换机根据VLAN标识发送数据包,将数据包路由到网络处理设备;
网络处理设备接收数据包,根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理,并发送数据包。
实施上述实施例,主机将计算实例的数据包引流到网络处理设备上,由网络处理设备根据预先配置的VPC网络信息对数据包进行相应的处理,网络处理设备可以实现完备的VPC网络特性的处理,可根据需要对计算实例的VPC网络特性进行增加或移除,便于对计算实例的VPC网络特性进行管理,同时可减少云资源池的部署成本。
在第一方面中的一种可能的实施方式中,数据包处理方法还包括:
所述网络处理设备接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
实施上述实施例,云管理平台向管理范围内其他网络处理设备发送计算实例的虚拟端口的上线信息,这样在计算实例上线时,云管理平台中的网络处理设备能及时得知计算实例的网络地址和网络处理设备的业务网IP。
在第一方面中的一种可能的实施方式中,数据包处理方法还包括:
网络处理设备根据数据包的目的网络地址确定数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送数据包。数据包中携带源网络地址和目的网络地址,源网络地址和目的网络地址均为业务网IP地址,源网络地址为发出数据包的计算实例的网络地址,目的网络地址为接收数据包的计算实例的网络地址。
实施上述实施例,网络处理设备通过数据包的目的网络地址建立与目的计算实例对应的网络处理设备之间的隧道,通过隧道能将数据包转发给目的计算实例,这样数据包能通过公共网络发送给对端。
在第一方面中的一种可能的实施方式中,
所述网络处理设备通过PCI总线连接到所述主机,作为所述主机的网卡为所述主机提供网络接入服务;或者,
当网络处理设备的网络端口数量m大于主机的网络端口数量n时,网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,m,n均为大于1的正整数;或者,
在网络处理设备的网络端口数量m小于主机的网络端口数量n的情况下,网络处理设备的m个网络端口通过物理交换设备与主机的n个网络端口连接,m,n均为大于1的正整数。物理交换设备可以为交换机。
在第一方面中的一种可能的实施方式中,云管理平台为网络处理设备分配管理网IP地址和业务网IP地址,记录主机的管理网IP地址和网络处理设备的管理网IP地址之间的对应关系。
在第一方面中的一种可能的实施方式中,在所述云管理平台向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息之前,数据包处理方法还包括:
云管理平台向主机发送实例创建请求,实例创建请求携带计算实例的资源配置信息以及网络地址;资源配置信息表示分配给计算实例的硬件资源和软件资源的配置信息,例如:分配给计算实例的CPU、内存和磁盘的规格,以及计算实例中安装的操作系统和应用程序的类型。网络地址表示计算实例的虚拟端口的地址,可以为IP地址和MAC地址。
主机根据资源配置信息以及网络地址创建计算实例以及计算实例的虚拟端口,向云管理平台返回计算实例创建成功的指示消息,指示消息携带主机的管理网IP地址以及计算实例的网络地址;
云管理平台为创建的计算实例的虚拟端口分配VLAN标识,分配的VLAN标识与主机上已有虚拟端口的VLAN标识均不相同。
在第一方面中的一种可能的实施方式中,在所述云管理平台向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息之后,数据包处理方法还包括:
网络处理设备根据接收到的VPC网络信息,创建为计算实例提供网络处理功能的虚拟网元;其中,每个虚拟网元可对应一个虚拟端口,虚拟网元可通过虚拟端口提供网络处理功能。
网络处理设备根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理包括:网络处理设备根据数据包的源网络地址确定计算实例对应的虚拟网元,由确定的虚拟网元为计算实例提供网络处理功能。
在第一方面中的一种可能的实施方式中,云计算系统还包括另一主机,另一主机为数据包的目的主机,目的主机上运行有目的计算实例;方法还包括:
目的主机对应的目的网络处理设备接收数据包,根据数据包的目的网络地址确定目的计算实例的VPC网络信息,根据目的计算实例的VPC网络信息对数据包进行网络功能处理,并发送数据包至目的主机中的目的计算实例。
第二方面,本申请提供了一种数据包处理方法,数据包处理方法应用于主机,主机包括虚拟交换机和网络处理设备,主机运行有多个计算实例,计算实例包括但不限于虚拟机和容器,主机通过虚拟化技术实现虚拟机或容器的运行环境,虚拟化技术包括但不限于VMVare虚拟化技术、Hyper-v虚拟化技术、Xen虚拟化技术或KVM虚拟化技术。多个计算实例的虚拟端口配置有VLAN标识,且个计算实例的VLAN标识各不相同,主机通过网络处理设备与云计算系统中的其他设备通信,方法包括:
网络处理设备接收云管理平台发送的主机上运行的计算实例的VPC网络信息。VPC网络信息表示对数据包的处理规则,VPC网络信息包括但不限于DHCP规则、端口安全规则、L2转发规则、L3路由规则、隧道封装规则中的一种或多种。
计算实例通过自身的虚拟端口发出数据包,数据包携带发出数据包的虚拟端口的VLAN标识和计算实例的网络地址;
虚拟交换机根据VLAN标识发送数据包,将数据包路由到网络处理设备;
网络处理设备接收数据包,根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理,并发送数据包。
实施上述实施例,主机将计算实例的数据包引流到网络处理设备上,由网络处理设备根据预先配置的VPC网络信息对数据包进行相应的处理,网络处理设备实现完备的VPC网络特性的处理,可根据需要对计算实例的VPC网络特性进行增加或移除,便于对计算实例的VPC网络特性进行管理,同时可减少云资源池的部署成本。
在第二方面中的一种可能的实施方式中,网络处理设备接收云管理平台发送的上线信息,上线信息包括其他网络处理设备的业务网IP以及其他网络处理设备对应的计算实例的网络地址。网络处理设备根据数据包的目的网络地址,确定数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送数据包。
在第二方面中的一种可能的实施方式中,网络处理设备通过总线连接到主机,作为主机的网卡为主机提供网络接入服务;或者,
当网络处理设备的网络端口数量m大于主机的网络端口数量n时,网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,m,n均为大于1的正整数;或
在网络处理设备的网络端口数量m小于主机的网络端口数量n的情况下,网络处理设备的m个网络端口通过物理交换设备与主机的n个网络端口连接,m,n均为大于1的正整数。
在第二方面中的一种可能的实施方式中,数据包处理方法还包括:
网络处理设备根据接收到的VPC网络信息,创建为计算实例提供网络处理功能的虚拟网元;其中,每个虚拟网元可对应一个虚拟端口,虚拟网元可通过虚拟端口提供网络处理功能。
网络处理设备根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理包括:网络处理设备根据数据包的源网络地址确定计算实例对应的虚拟网元,由确定的虚拟网元为计算实例提供网络处理功能。
第三方面,本申请公开了一种云计算系统,云计算系统包括云管理平台和至少一个主机,云管理平台用于管理云资源池中的主机,每个云资源池包括一个或多个主机,云资源池包括但不限于ESXi云资源池、微软公司的Hyper-v云资源池、Xen云资源池或KVM云资源池。主机包括虚拟交换机和网络处理设备,主机运行有多个计算实例,计算实例包括但不限于容器和虚拟机,多个计算实例的虚拟端口配置有VLAN标识,计算实例的虚拟端口表示虚拟网卡的逻辑端口,VLAN标识表示虚拟端口所属的VLAN的身份,主机中配置的各个计算实例的虚拟端口的VLAN标识互不相同,即每个计算实例的虚拟端口属于不同的VLAN,这样主机内的计算实例之间不能直接互通。主机与网络处理设备相连,主机通过网络处理设备与云计算系统中的其他设备通信。
云管理平台用于根据主机的管理网IP地址和网络处理设备的管理网IP地址之间的对应关系,向网络处理设备发送主机上运行的计算实例的VPC网络信息;
虚拟交换机用于接收计算实例通过自身的虚拟端口发出的数据包,数据包携带发出数据包的虚拟端口的VLAN标识和计算实例的网络地址;
虚拟交换机还用于根据VLAN标识发送数据包,将数据包路由到网络处理设备;
网络处理设备用于接收数据包,根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理,并发送数据包。
在第三方面中的一种可能的实施方式中,云管理平台还用于向管理范围内的其他网络处理设备发送计算实例的虚拟端口的上线信息,上线信息包括计算实例的网络地址以及网络处理设备的业务网IP地址。
在第三方面中的一种可能的实施方式中,所述网络处理设备,还用于接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址,根据数据包的目的网络地址,确定数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送数据包。
在第三方面中的一种可能的实施方式中,云管理平台还用于向主机发送实例创建请求,实例创建请求携带计算实例的资源配置信息以及网络地址;
主机还用于根据资源配置信息及网络地址创建计算实例和计算实例的网络端口,向云管理平台返回计算实例创建成功的指示消息,指示消息携带主机的管理网IP以及计算实例的网络地址;
云管理平台还用于为创建的计算实例的虚拟端口分配VLAN标识,分配的VLAN标识与主机上已有虚拟端口的VLAN表示均不相同。
在第三方面中的一种可能的实施方式中,网络处理设备还用于根据接收到的VPC网络信息,创建为计算实例提供网络处理功能的虚拟网元;
网络处理设备根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理包括:网络处理设备根据数据包的源网络地址确定计算实例对应的虚拟网元,由确定的虚拟网元为计算实例提供网络处理功能。
在第三方面中的一种可能的实施方式中,云计算系统还包括另一主机,另一主机为数据包的目的主机,目的主机上运行有目的计算实例,目的主机对应的目的网络处理设备用于接收数据包,根据数据包的目的网络地址确定目的计算实例的VPC网络信息,由确定的VPC网络信息对数据包进行网络功能处理,并发送数据包至目的主机中的目的计算实例。
第四方面,本申请提供了一种主机,主机包括虚拟交换机以及网络处理设备,主机运行有多个计算实例,多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,主机通过网络处理设备与云计算系统中的其他设备通信;
网络处理设备,用于接收云管理平台发送的主机上运行的计算实例的VPC网络信息;
计算实例,用于通过自身的虚拟端口发出数据包,数据包携带发出数据包的虚拟端口的VLAN标识和计算实例的网络地址;
虚拟交换机,用于根据VLAN标识发送数据包,将数据包路由到网络处理设备;
网络处理设备,用于接收数据包,根据计算实例的网络地址确定计算实例的VPC网络信息,对数据包进行网络功能处理,并发送数据包。
第五方面,本申请提供了一种主机,包括第一处理器、第一存储器以及网络处理设备,网络处理设备包括第二处理器以及第二存储器,其中,主机运行有多个计算实例,多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,第一存储器和第二存储器中存储有指令,第一处理器执行第一存储器中的指令以实现前述各方面中主机上运行的计算实例的功能,第一处理器执行第一存储器中的指令以实现前述各方面中主机上运行的虚拟交换机的功能,第二处理器用于执行第二存储器中的指令以实现前述各方面中对计算实例发出的数据包的网络功能处理。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种云计算系统的结构示意图;
图2A和2B为本发明实施例公开的一种主机的结构示意图示意图;
图3A-图3C是本发明实施例提供的网络处理设备和主机之间的连接示意图;
图4为本发明实施例公开的一种数据包处理方法的流程示意图;
图5是本发明实施例提供的一种数据包处理方法的另一流程示意图;
图6是本发明实施例提供的一种主机的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
参见图1,为本发明实施例提供的一种云计算系统的结构示意图,所述云计算系统包括云管理平台10、交换设备20、云资源池11、云资源池12、...、云资源池1m,m为大于2的整数。每个云资源池中可包括多个主机以及与主机关联的网络处理设备,在一种可能的实施方式中,每个主机可以连接一个网络处理设备,网络处理设备的具体形式可以为嵌入式板卡(Embedded Board),嵌入式板卡上安装有操作系统,通过操作系统可实现完整的VPC网络特性;在另一种可能的实施方式中,一个网络处理设备可以连接多个主机,同时为多个主机提供网络功能处理的服务,一个网络处理设备服务的主机的数量可根据网络处理设备的处理能力来设置,本实施例不作限制。
可以理解的是,网络处理设备除了嵌入式板卡外还可以是一个实现网络功能处理的硬件服务器,主机可通过交换机与该硬件服务器连接。网络处理设备可通过现有的通信协议与主机进行连接,通信协议包括但不限于外围部件互连标准(Peripheral ComponentInterface Express,PCIE)协议、通用串行总线(Universal Serial Bus,USB)协议或串行高级技术附件(Serial Advanced Technology Attachment,SATA)协议。
示例性的,如图1所示,云资源池11中包括n个主机111-11n和n个网络处理设备1111-11n1,每个主机连接有一个网络处理设备。云资源池11-1m包含多种类型的云资源池,根据提供计算能力的方式云资源池的类型分为裸金属云资源池和虚拟化云资源池。其中,虚拟化云资源池中的主机通过虚拟化技术为多个用户提供计算能力,部署在主机上的计算实例为虚拟机或容器,一个主机上可部署多个计算实例;裸金属云资源池中主机直接将自身的计算能力提供给用户,部署在主机上的计算实例为裸机,即主机本身。根据虚拟化技术的不同,虚拟化云资源池又可以包括:VMVare公司的ESXi云资源池、微软公司的Hyper-v云资源池、Xen云资源池或KVM云资源池。交换设备20用于接收和转发网络处理设备的数据包,为部署在主机上的计算实例提供路由转发功能,交换设备20包括但不限于二层交换机或三层交换机。
如图2A所示,为本发明实施例提供的一种主机的结构示意图,在本发明实施例中,主机211位于云资源池21内,主机211为云资源池21中的任意一个主机,主机211包括虚拟交换机212和网络处理设备213,主机211上部署有多个计算实例1~m,m为大于0的整数,计算实例1~m可以为虚拟机或容器。主机211为一台物理服务器,该物理服务器的底层为硬件层,硬件层包括中央处理器(CPU,Central Processing Unit)、内存、硬盘以及网卡等硬件资源;在计算实例1~m为虚拟机的情况下,主机211借助虚拟化软件(例如:VMWare ESXi、Citrix XEN等)实现计算实例1~m的虚拟化运行环境,安装在主机211上实现虚拟化环境的软件层称为虚拟机监视器(Virtual Machine Monitor,VMM),VMM用于对硬件层中的硬件资源进行调度、分配和管理工作,VMM之上运行计算实例1~m,VMM为每个计算实例提供虚拟化的CPU、内存、存储、IO设备(如网卡)以及以太网交换机等硬件环境,保证计算实例1至m之间相互隔离运行。
主机211为每个计算实例创建虚拟端口,虚拟端口为计算实例内的虚拟网卡(Virtual Network Interface Card,vNIC)对应的端口,虚拟交换机212提供计算实例之间以及计算实例与外部网络之间的通讯能力。每个计算实例的虚拟端口连接到虚拟交换机212的一个或多个虚拟端口上,计算实例的数据包通过虚拟端口发送到虚拟交换机212,由虚拟机交换机212将数据包转发给网络处理设备213,从而实现计算实例与网络处理设备的通信。
图2A所示的主机中,网络处理设备可以作为物理网卡,为主机上的计算实例提供网络接入能力。
如图2B所示,为本发明实施例提供的一种主机的另一结构示意图,与图2A中的主机的区别在于,图2B中的主机211上安装有物理网卡214,物理网卡214与虚拟交换机212连接,同时物理网卡214通过网络处理设备213与交换设备22连接。
主机211部署的每个计算实例的虚拟端口配置有虚拟局域网(Virtual LocalArea Network,VLAN)标识,且每个计算实例的虚拟端口的VLAN标识互不相同。对于主机211中的任意一个计算实例而言,计算实例用于通过自身的虚拟端口发出数据包给主机211内设置的虚拟交换机212,数据包携带发出数据包的虚拟端口的VLAN标识;虚拟交换机212用于接收计算实例发送的数据包,虚拟交换机获取数据包携带的VLAN标识,由于主机211内的所有计算实例的VLAN标识互不相同,各个计算实例之间相互隔离,虚拟交换机212只能将接收到的数据包通过上行口发送给物理网卡214,物理网卡214将数据包转发给网络处理设备213;网络处理设备213接收虚拟交换机发送的数据包,根据发送数据包的计算实例预先配置的VPC网络信息进行相应的网络功能处理。
基于上述主机的结构示意图,主机将计算实例的数据包引流到网络处理设备上,由网络处理设备根据预先配置的VPC网络信息对数据包进行相应的处理,网络处理设备实现完备的VPC网络特性的处理,可根据需要对计算实例的VPC网络特性进行增加或移除,便于对计算实例的VPC网络特性进行管理,同时可减少云资源池的部署成本。
参见图3A,为图2A中网络处理设备213与主机211之间的连接示意图,主机211与网络处理设备213之间组网连线方式可以为虚拟端口模式。在虚拟端口模式下,网络处理设备213与主机211连接,例如:网络处理设备213通过PCI总线连接到到主机211。主机上的VMM为网络处理设备213提供驱动包,加载驱动包使主机211将网络处理设备213识别为一个物理网卡,网络处理设备213的网络端口作为主机211的网络端口,主机211通过网络处理设备213实现数据的收发,这样无论是主机211发送的报文还是主机211接收的报文都需要经由网络处理设备213处理。由于网络处理设备213对主机211而言为一个物理网卡,因此可以为网络处理设备213配置IP地址和网关地址。网络处理设备213通过网络端口与交换设备22连接,交换设备22用于接收和转发网络处理设备213的数据包,为部署在主机211上的计算实例1~m提供路由转发功能交换设备,交换设备22包括但不限于二层交换机或三层交换机。
参见图3B,为图2B中网络处理设备213和主机211的连接示意图,本实施例中,主机211具有独立的物理网卡214,网络处理设备213和主机211之间通过背靠连接方式(NetworkTraffic Forwarded Back-to-Back)进行连接,在背靠连线方式下,网络处理设备213上网络端口的数量大于物理网卡214上网络端口的数量的情况下,网络处理设备213能提供与主机211上相等数量的网络端口,物理网卡214上所有的网络端口采用一对一的方式与网络处理设备上的网络端口进行连接。
参见图3C,为图2B中网络处理设备213和主机211的另一种连接示意图,在本实施例中,主机211具有单独的物理网卡214,网络处理设备和主机211之间通过背靠中转方式(Network Traffic Relayed Back-to-Back)进行连接,在背靠中转方式下:物理网卡214的网络端口数量大于网络处理设备213的网络端口的数量,无法通过背靠连线方式实现组网连线,将物理网卡214的网络端口先连接到交换设备22,再通过交换设备22的网络端口连接网络处理设备213的网络端口。
根据上述的网络处理设备213与主机211之间的三种组网连线方式,以及主机上部署的各个计算实例预先设置成相互隔离的模式,主机211上部署的所有的计算实例生成的数据包都需要引流到网络处理设备213。
图2A和图2B公开了本发明实施例提供的主机的结构示意图,图3A-3C公开了主机与网络处理设备连接关系示意图,结合上述示意图中的结构及连接关系,本发明实施例对数据包处理流程进行进一步的阐述。参见图4,为本发明实施例提供的一种数据包的处理方法的流程示意图,在本发明实施例中云资源池包括至少一个主机以及与所述主机相关联的网络处理设备,所述方法包括:
S401、为主机安装操作系统以及配置管理网和业务网。
具体的,云资源池中的主机为用户提供CPU资源、内存资源和存储资源等硬件资源,主机执行计算实例的创建、撤销、配置、迁移和备份等操作。主机和主机之间可配置两个传输网络:管理网和业务网,管理网中主要传输控制命令,业务网中主要传输数据包。以云资源池中的一个主机为例,主机上运行虚拟机监控器(Virtual Machine Monitor,VMM),VMM通过虚拟化技术将主机的硬件资源抽象为资源池,提供给主机上部署的多个计算实例(虚拟机或容器)。主机上线时,云管理平台(Cloud Management Platform)为主机分配管理网IP地址和业务网IP地址。主机的管理网IP地址用于接收或发送控制命令,主机的业务网IP地址用于接收或发送数据包。
需要说明的是,本步骤中,主机的配置可以采用常用的技术方式实现,本发明对此并不进行限定。
S402、主机与网络处理设备根据引流模式组网连线,主机记录主机的管理网IP地址和网络处理设备的管理网IP地址的对应关系。
网络处理设备与主机连接,具体的,二者可通过PCI(Peripheral ComponentInterconnect,外围部件互连互联)接口进行连接,主机还可通过PCI接口为网络处理设备供电,当然网络处理设备也可以利用自身的电源进行供电。云管理平台可以为网络处理设备分配管理网IP地址和业务网IP地址,分配IP地址的方式可采用DHCP协议动态分配,也可以采用静态分配方式。云管理平台将分配的网络处理设备的管理网IP地址和业务网IP地址通知给主机,主机为网络处理设备配置管理网IP地址和业务网IP地址。主机可以记录网络处理设备的管理网IP地址与主机的管理网IP地址的对应关系,主机将上述对应关系通知给云管理平台。
网络处理设备与主机之间根据预设的引流模式组网连线,组网连线的方式分为:虚拟端口方式、背靠连线方式和背靠中转连线方式。网络处理设备与主机之间的组网连线方式可参照图3A至图3C的描述,此处不再赘述。
S403、云管理平台记录主机的管理网IP地址与网络处理设备的管理网IP地址的对应关系,订阅主机上的虚拟机变化事件。
具体的,云管理平台连接主机,云管理平台为主机分配上网账号,以及对主机进行网络配置,网络配置包括但不限于域名系统(Domain Name System,DNS)配置、网关配置和运营商配置,使主机能访问互联网。云管理平台记录主机的管理网IP地址和网络处理设备的管理网IP地址的对应关系,并存储对应关系,云管理平台获取上述对应关系的方法可以是主机上报而得到。云管理平台订阅主机上的虚拟机变化事件,虚拟机变化事件表示主机上虚拟机的状态或配置发生变更的事件,虚拟机变化事件包括但不限于虚拟机的创建、虚拟机的移除、虚拟机的网络地址的重配置、虚拟机的备份数据的重配置,主机上虚拟机的状态或配置发生变化时,都需要向云管理平台发送虚拟机变化事件,使云管理平台记录的虚拟机的相关参数与主机保持同步。
S404、主机安装网络处理设备的网络代理模块,使得网络处理设备可以连接云管理平台。
具体的,网络代理模块用于与云管理平台之间进行通信,网络处理设备与云管理平台之间可以通过IP通信协议进行通信,IP通信协议包括但不限于远程过程调用协议(Remote Procedure Call Protocol,RPC)、SOCKET、基于安全接口层的超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer,HTTPs)等。
S405、用户客户端申请虚拟机的登录账号。
具体的,登录账号用于验证用户的身份,用户客户端可以通过注册的方式向云管理平台申请登录账号,云管理平台根据预设的账号生成规则分配一个登录账号给用户客户端。
S406、用户客户端向云管理平台发送虚拟机创建请求,携带资源配置信息。
具体的,虚拟机创建请求用于创建虚拟机,资源配置信息表示分配给待创建的虚拟机的硬件资源参数,资源配置信息包括但不限于CPU的核心数量和频率、内存的大小和读写速度、磁盘的大小和读写速度等。本发明实施例中以计算实例为虚拟机为例进行说明,本领域技术人员可以理解的是,当计算实例为容器时,本发明实施例同样适用。
S407、云管理平台为待创建的虚拟机分配网络地址。
网络地址为待创建的虚拟机的虚拟端口的网络地址,虚拟机的虚拟端口表示虚拟机的虚拟网卡的端口,一个虚拟网卡可具有一个或多个虚拟端口,网络地址包括但不限于MAC地址和IP地址。
S408、云管理平台向主机发送虚拟机创建请求,所述虚拟机创建请求携带资源配置信息和网络地址。
其中,所网络地址为S407中分配的网络地址。
需要说明的是,对于不同类型的云资源池,本步骤中的虚拟机创建请求的处理流程略有不同,例如,对于VMware公司的ESXi主机,云管理平台通过vCenter向所述主机发送所述虚拟机创建请求;对于KVM类型的资源池,云管理平台可以直接向主机发送所述虚拟机创建请求。
S409、主机根据资源配置信息创建虚拟机,并根据网络地址创建虚拟端口。
具体的,主机根据资源配置信息在主机上创建虚拟机,在成功创建虚拟机之后,主机根据网络地址创建虚拟机的虚拟端口。
S410、主机向云管理平台上报虚拟机变化事件。
具体的,虚拟机变化事件携带主机的管理网IP地址、S409中创建的虚拟机的虚拟端口信息和表示虚拟机创建成功的指示信息,虚拟端口信息包括但不限于虚拟端口的端口标识(例如:UUID)和网络地址(例如MAC地址和IP地址)。
云管理平台还可以向管理范围内的其他主机发送虚拟端口上线信息,其他主机可根据需要保存虚拟端口上线信息。具体的,管理范围可是云管理平台管理的一个或多个云资源池。
S411、云管理平台为虚拟机的虚拟端口分配VLAN标识,主机中不同的虚拟端口具有不同的VLAN标识。
具体的,云管理平台可记录每个主机中已创建的虚拟端口的VLAN标识,云管理平台为S409创建的虚拟机的虚拟端口分配VLAN标识时需要保证分配的VLAN标识不同于已创建的所有虚拟端口的VLAN标识,即保证主机上所有虚拟端口的VLAN标识均不相同。这样即使两个虚拟机连接相同Network(位于同一主机中),虚拟机的虚拟端口也分配不同的VLAN标识。主机的虚拟交换机只有二层能力,不同的虚拟端口分配不同VLAN标识后,不同的虚拟端口位于不同的虚拟局域网中,因此主机上所有的数据包只能走内部设置的虚拟交换机的上行口(Uplink口),从而使得虚拟交换机将数据包转发到网络处理设备,从而实现了主机上报文引流到网络处理设备的目的。
在一种可能的实施方式中,云管理平台为虚拟机的虚拟端口分配VLAN标识的方法可以是:云管理平台维护一个VLAN标识资源池,VLAN标识资源池中存储有指定数值范围的VLAN标识,每个VLAN标识有两种状态:未使用状态和已使用状态,未使用状态表示VLAN标识没有分配给任何一个虚拟端口,已使用状态表示VLAN标识已分配给主机中的某个虚拟机的虚拟端口。在云管理平台需要为新创建的虚拟机的虚拟端口分配VLAN标识时,从VLAN标识资源池中取出一个未使用状态的VLAN标识分配给该虚拟端口。
S412、云管理平台向主机通知虚拟机的虚拟端口的VLAN标识。
S413、主机根据接收到到的VLAN标识配置虚拟机的虚拟端口。
具体的,主机内部署有虚拟交换机(例如VSS或VDS),主机上所有的虚拟机的虚拟端口都连接到虚拟交换机上。在一种可能的实现中,虚拟机可能会有多个虚拟端口,虚拟机的多个虚拟端口组成端口组(Port Group),主机将接收到的VLAN标识作为端口组的VLAN标识。
S414、云管理平台根据主机的管理网IP地址查询主机关联的网络处理设备的管理网IP地址,并根据上报的虚拟机变化事件解析出虚拟机的虚拟端口的网络地址,为虚拟机分配VPC网络信息。
具体的,云管理平台上存储有主机的管理网IP地址和网络处理设备的管理网IP地址的对应关系,云管理平台根据接收到的主机的管理网IP地址查询到关联的网络处理设备的管理网IP地址,云管理平台根据上报的虚拟机变化事件解析出虚拟机的虚拟端口的网络地址;云管理平台为虚拟机分配VPC网络信息,以及建立虚拟机的虚拟端口的网络地址与VPC网络信息的关联关系,VPC网络信息包括但不限于DHCP规则、端口安全规则、L2转发规则、L3路由规则、隧道封装规则中的一种或多种。
S415、云管理平台向网络处理设备下发VPC网络信息。
S416、网络处理设备根据接收到的VPC网络信息进行相关的网络配置。
具体的,网络处理设备上安装有操作系统,当网络处理设备接收云管理平台发送的VPC网络信息时,网络处理设备的操作系统根据VPC网络信息创建对应的虚拟网元,例如Linux Bridge、Open Switch、Namespace等,并为虚拟网元创建相应的虚拟端口。需要说明的是,不同的虚拟机可能有不同的网络特性需求,网络处理设备还可存储虚拟机的网络地址与分配的VPC网络信息之间的映射关系。
S417、云管理平台向管理范围内的网络处理设备通知虚拟端口的上线信息。
具体的,云管理平台可以向管理范围内的网络处理设备通知S409创建的虚拟机的虚拟端口(Port)的上线信息,管理范围可以是云管理平台管理的一个或多个云资源池,上线信息携带的虚拟机的网络地址、虚拟机的虚拟端口的标识(UUID)以及网络处理设备的业务网IP地址,接收到上线信息的网络处理设备可根据需要存储上线信息。
当云管理平台管理范围内的网络处理设备接收到虚拟端口的上线信息时,可以存储虚拟机的网络地址、虚拟机的虚拟端口的标识(UUID)以及虚拟机所在的网络处理设备的业务网IP地址之间的对应关系。
S418、主机通过虚拟端口接收虚拟机发送的数据包。
具体的,主机从虚拟机的虚拟端口接收数据包,数据包携带虚拟机的虚拟所在的VLAN的VLAN标识、源网络地址和目的网络地址。
S419、主机将数据包重定向到网络处理设备。
具体的,虚拟机发送的数据包携带VLAN标识,由于主机上的每个虚拟机的虚拟端口具备不同的VLAN标识,相互隔离。当主机上的虚拟交换机接收到所述数据包时,虚拟交换机根据VLAN标识广播该数据包,该数据包通过上行口引流到网络处理设备上。
在网络处理设备和主机之间的连线方式为虚拟端口方式的情况下,网络处理设备对主机而言为一个物理网卡,虚拟机从对应的虚拟端口发出数据包,虚拟交换机接收该数据包,将该数据包以广播的方式发送给网络处理设备。
在网络处理设备和主机之间的连线方式为背靠连线方式的情况下,虚拟机从对应的虚拟端口发出数据包,虚拟机交换机将数据包以广播的方式发送给物理网卡,物理网卡将数据包转发给网络处理设备。
在网络处理设备和主机之间的连线方式为背靠中转方式的情况下,虚拟机从对应的虚拟端口发出数据包,虚拟机交换机将数据包以广播的方式发送给物理网卡,物理网卡通过交换设备的中转将数据包转发给网络处理设备。
S420、网络处理设备接收所述数据包,根据与虚拟机对应的VPC网络信息处理数据包。
具体的,网络处理设备接收数据包,将数据包中携带的VLAN标识剥离,以及获取数据包中携带的源网络地址和目的网络地址,网络处理设备确定源网络地址与数据包的源虚拟机关联的VPC网络信息,根据确定的VPC网络信息对数据包进行处理。具体的,可以由网络处理设备的虚拟网元(例如,Linux Bridge、Nmamespace、OpenvSwitch)对数据包进行处理,以实现安全组、端口安全、L2转发、分布式路由、DHCP、NAT、策略路由、Vxlan隧道或GRE隧道的封装等VPC网络特性,网络处理设备根据数据包的源网络地址确定关联的虚拟网元,由关联的虚拟网元对数据包进行网络功能处理。
当数据包的目的虚拟机和发送数据包的源虚拟机位于同一主机中时,网络处理设备将处理后的数据包返回主机;在目的虚拟机和发送数据包的源虚拟机位于同一云资源池的其他主机上时,网络处理设备将处理后的数据包通过本地交换机发送到目的虚拟机;在目的虚拟机和发送数据包的虚拟机位于其他云资源池的主机上时,网络处理设备将数据包进行隧道封装后通过公共网络送到目的虚拟机。
需要说明的是,本实施例中的云资源池可以是Hyper-v云资源池、VMware云资源池、XEN云资源池、KVM云资源池,其中,在云资源池为VMware云资源池的情况下,VMware云资源池中还部署有vCenter服务器,这样主机上的某些功能需要卸载到vCenter服务器执行。vCenter服务器主要用于集中管理VMWare云资源池中主机上部署的虚拟机的创建、撤销、配置、迁移和备份等操作;将主机加入到管理网和业务网,为主机分配的管理网IP地址和的业务网IP地址,以及为网络管理设备分配的管理网IP地址和的业务网IP地址;向云管理平台上报主机的管理网IP地址和网络处理设备的的管理网IP地址的对应关系;vCenter服务器确定云资源池中各个主机上硬件资源的分布状况,从中选择一个满足资源配置信息的主机,根据资源配置信息在主机上创建虚拟机,在成功创建虚拟机之后,主机根据网络地址创建虚拟机的虚拟端口。
当不同类型的两个云资源池中的计算实例进行通信时,两个云资源池提供的VPC网络特性可能不同。为了实现不同云资源池中的计算实例的流量的互联互通,现有技术中通常在主机上创建一个专用的虚拟处理网元,主机将计算实例的流量引流到专用的虚拟处理网元进行网络特性处理,从而实现不同的VPC网络特性。例如:以VMWare云资源池为例,在每个ESXi主机创建和启动一个专用的虚拟机,VDS/VSS将ESXi主机上其他虚拟机的流量引入到专用的虚拟处理网元进行报文处理,提供DHCP、网络地址转换(NetworkAddressTranslation,NAT)或虚拟可扩展局域网(Virtual Extensible LAN,Vxlan)封装等VPC网络特性。但是在上述实现方式中,虚拟处理网元的创建和启动会消耗主机的硬件资源,同时虚拟处理网元会存在性能瓶颈,优化成本高;同一主机上的虚拟机之间的流量进行隔离,导致某些VPC网络特性(例如安全组)无法生效。
本实施例提供了一种云计算系统,以实现不同类型的云资源间的互通。参见图1,对本实施例的云计算系统的结构和工作过程进行说明。本实施例的第一计算实例和第二计算实例位于不同的主机上,假设主机111为第一服务器,第一服务器111上部署有第一计算实例,第一主机111关联有网络处理设备1111;主机121为第二服务器,第二服务器上部署有第二计算实例,主机121关联有网络处理设备1211。本申请提供的云计算系统的工作过程为:第一主机上的第一计算实例生成数据包,数据包携带源网络地址和目的网络地址,源网络地址为第一计算实例的网络地址,目的网络地址为第二计算实例的网络地址,源网络地址和目的网络地址可以为IP地址和/或MAC地址,其中的IP地址为业务网IP地址。其中,第一主机和第二主机可以位于不同的云资源池,第一主机连接有第一网络处理设备,第二主机连接有第二网络处理设备。第一主机预先存储有VLAN配置信息,VLAN配置信息表示部署在第一主机上的每个计算实例的虚拟端口具有不同的VLAN标识,第一主机根据预设的VLAN配置信息将数据包重定向发送给关联的第一网络处理设备,第一网络处理设备接收数据包,获取数据包中携带的源网络地址,根据预设的映射关系查询与源网络地址关联的第一VPC网络信息,第一VPC网络信息为第一计算实例预先配置的VPC网络信息,第一网络处理设备根据第一VPC网络信息对数据包进行相关处理,第一VPC网络信息包括但不限于DHCP规则、端口安全规则、L2转发规则、L3路由规则、隧道封装规则中的一种或多种,第一网络处理设备根据数据包中的目的网络地址(例如:目的IP地址和目的MAC地址)确定第一计算实例和第二计算实例位于不同的主机的情况下,第一网络处理设备将处理后的数据包发送给交换设备,交换设备根据数据包中携带的目的网络地址将数据包进行L2层转发或L3层路由到第二网络处理设备,第二网络处理设备根据预设的映射关系查询与目的网络地址关联的第二VPC网络信息,第二VPC网络信息为第二计算实例预先配置的VPC网络信息,第二网络处理设备第二VPC网络信息对接收到的数据包进行处理,然后处理后将数据包发送给第二主机,第二主机通过第二计算实例对应的虚拟端口将数据包发送给第二计算实例。
第二计算实例根据数据包生成的响应数据包,响应数据包中携带源网络地址和目的网络地址,源网络地址为第二计算实例的网络地址,目的网络地址为第一计算实例的网络地址。第二计算实例向第一计算实例返回响应数据包的过程可参照第一计算实例向第二计算实例发送数据包的过程,此处不再赘述。
上述各实施例,任意两个计算实例之间的数据包均需要引流到网络处理设备,由网络处理设备根据VPC网络信息对数据包进行VCP网络特性处理,这样可以为不同类型的云资源池提供完备的VPC网络特性,网络处理设备不需要占用主机的硬件资源,提高云资源池中硬件资源池的利用率。
进一步的,参见图5,为本发明实施例提供的一种数据包的处理方法的流程示意图,在本发明实施例中,第一虚拟机部署在第一主机中,第一主机根据引流模式连接有第一网络处理设备,第二虚拟机部署在第二主机中,第二主机根据引流模式连接有第二网络处理设备;第一主机和第二主机中还部署有虚拟交换机,用于实现虚拟机的报文的路由和转发。具体的连接方式可参照图3A至图3C的描述。下面以第一虚拟机与第二虚拟机的通信过程为例说明本实施例的数据包处理方法,包括:
S501、第一虚拟机向虚拟交换机发送数据包到虚拟交换机。
具体的,第一虚拟机通过虚拟端口向虚拟交换机发送数据包,数据包携带第一虚拟机的IP地址(源IP地址)、第一虚拟机的MAC地址(源MAC地址)、第二虚拟机的IP地址(目的IP地址)和第二虚拟机的MAC地址(目的MAC地址),其中,源IP地址和目的IP地址均为业务网IP地址。
S502、虚拟交换机根据虚拟机的VLAN为数据包增加VLAN标识。
具体的,虚拟机交换机根据接收数据包的虚拟端口确定虚拟机所属的VLAN,为数据包增加该VLAN的VLAN标识。
S503、虚拟交换机将数据包发送给第一网络处理设备。
具体的,由于第一主机上所有的虚拟机的虚拟端口的VLAN标识预先设置为互不相同,因此第一主机上所有虚拟机之间相互隔离。
在第一网络处理设备和第一主机之间的连线方式为虚拟端口方式的情况下,第一网络处理设备对第一主机而言为一个物理网卡,第一虚拟机从对应的虚拟端口发出数据包,第一主机中的虚拟交换机接收该数据包,将该数据包以广播的方式发送给第一网络处理设备。
在第一网络处理设备和第一主机之间的连线方式为背靠连线方式的情况下,第一虚拟机从对应的虚拟端口发出数据包,第一主机中的虚拟机交换机将数据包以广播的方式发送给物理网卡,物理网卡将数据包转发给第一网络处理设备。
在第一网络处理设备和第一主机之间的连线方式为背靠中转方式的情况下,第一虚拟机从对应的虚拟端口发出数据包,第一主机中的虚拟机交换机将数据包以广播的方式发送给物理网卡,物理网卡通过机架交换机(Top of Rack,TOR)的中转将数据包转发给第一网络处理设备。
S504、第一网络处理设备去掉数据包携带的VLAN标识,根据预先配置的第一VPC网络信息对数据包进行处理。第一网络处理设备判断访问的虚拟机是否位于同一主机内,若为否,第一网络处理设备将数据包进行隧道封装。
具体的,第一网络处理设备通过业务网口接收携带VLAN标识的数据包,剥离数据包中的VLAN标识,获取数据包中携带源网络地址(第一虚拟机的IP地址和/或MAC地址),根据预设的映射关系查询与源网络地址关联的第一VPC网络信息,第一网络处理设备根据预先配置的第一VPC网络信息对数据包进行处理。第一网络处理设备将处理后的数据包进行隧道封装生成隧道报文。
S505、第一网络处理设备将隧道报文进行L2层/L3层转发到第一主机相邻的TOR。
S506、TOR接入/汇聚/核心交换机基于隧道报文的报文头进行L2层/L3层转发。
S507、TOR根据隧道报文的报文头进行L2层/L3层转发到第二网络处理设备。
S508、第二网络处理设备解封装数据包,根据第二VPC网络信息对数据包进行处理。
具体的,第二网络处理设备获取数据包中携带的目的网络地址(第二虚拟机的IP地址和/或MAC地址),根据预设的映射关系查询与目的网络地址关联的第二VPC网络信息,根据第二VPC网络信息对数据包进行处理。
S509、第二网络处理设备将处理后的数据包转发到第二主机。
S510、第二主机将接收到的数据包送到虚拟交换机。
S511、虚拟交换机根据第二虚拟机的MAC地址将数据包进行L2层转发到第二虚拟机的虚拟端口。
S512、第二虚拟机接收数据包。
需要说明的是,第二虚拟机根据数据包生成响应数据包,第二虚拟机将响应数据包返回给第一虚拟机的过程可参照S501至S512的描述,此处不再赘述。
图5所示的实施例公开了两个虚拟机之间传输数据包的过程,在上述过程中,数据包的VPC网络特性处理由网络处理设备执行,通过网络处理设备保证VPC网络特性与云资源池类型的不相关性。
请参阅图6,图6为本发明实施例公开的一种主机的硬件结构示意图。其中,图6所示的主机6包括第一处理器611、第一存储器612和第一通信接口613和网络处理设备62,网络处理设备62包括第二处理器621、第二存储器622和第二通信接口623。第一通信接口613和第二通信接口623用于传输业务数据和控制命令,第一通信接口613和第二通信接口623的接口类型相同,第一通信接口613和第二通信接口623可以为PCI接口、USB接口和SATA接口中的任意一种,第一处理器611和第二处理器621的数量可以是一个或多个,第一处理器611和第二处理器612可以是单核处理器或多核处理器。在本发明的一些实施例中,第一处理器611、第一存储器612和第一通信接口613可以通过通过总线或其他方式连接,第二处理器621、第二存储器622和第二通信接口623可以通过总线或其他方式连接。
主机6上运行有多个计算实例,多个计算实例的虚拟端口配置有VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,第一存储器612和第二存储器622存储有指令,第一处理器611执行第一存储器612中的指令以实现主机6上运行的计算实例的功能,第一处理器611执行第一存储器612中的指令以实现主机6上运行的虚拟交换机的功能,所二处理器621用于执行第二存储器622中的指令以实现对计算实例发出的数据包的网络功能处理
第二处理器612用于执行第二存储器622中的指令以执行步骤:接收云管理平台发送的主机6上运行的所述计算实例的VPC网络信息;
第一处理器611用于执行第一存储器612中的指令以执行步骤:通过自身的虚拟端口发出数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
第一处理器611用于执行第一存储器612中的指令以执行步骤:根据所述VLAN标识发送所述数据包,所述数据包路由到所述网络处理设备;
第二处理器621用于执行所第二存储器622中的指令以执行步骤:接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包。
在一种可能的实现方式中,第二处理器621用于执行第二存储器622中的指令以执行步骤:接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP以及所述其他网络处理设备对应的计算实例的网络地址。
在一种可能的实现方式中,第二处理器621用于执行第二存储器622中的指令以执行步骤:用于根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
在一种可能的实现方式中,第二处理器621用于执行第二存储器622中的指令以执行步骤:用于根据接收到的VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
第二处理器621用于执行第二存储器622中的指令以执行所述根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理包括:根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
综上所述,主机将计算实例的数据包引流到网络处理设备上,由网络处理设备根据预先配置的VPC网络信息对数据包进行相应的处理,网络处理设备实现完备的VPC网络特性的处理,可根据需要对计算实例的VPC网络特性进行增加或移除,便于对计算实例的VPC网络特性进行管理,同时可减少云资源池的部署成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上实施例仅揭露了本发明中较佳实施例,不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (30)
1.一种云计算系统,其特征在于,包括云管理平台和至少一个主机,其中,所述主机包括虚拟交换机和网络处理设备,所述主机运行有多个计算实例,所述多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,所述主机与所述网络处理设备相连,通过所述网络处理设备与云计算系统中的其他设备通信;
所述云管理平台,用于根据所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系,向所述网络处理设备发送所述主机上运行的计算实例的虚拟私有云VPC网络信息;
所述虚拟交换机,用于接收所述计算实例通过自身的虚拟端口发出的数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
所述虚拟交换机,还用于根据所述VLAN标识发送所述数据包,将所述数据包路由到所述网络处理设备;
所述网络处理设备,用于接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包;
所述网络处理设备上安装有操作系统,基于所述操作系统能够实现完整的VPC网络功能处理,包括对计算实例的VPC网络特性进行增加或移除。
2.如权利要求1所述的系统,其特征在于,
所述网络处理设备,还用于接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
3.如权利要求2所述的系统,其特征在于,
所述网络处理设备,还用于根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
4.如权利要求1-3任一所述的系统,其特征在于,
所述网络处理设备通过总线连接到所述主机,作为所述主机的网卡为所述主机提供网络接入服务;或者,
当所述网络处理设备的网络端口数量m大于所述主机的网络端口数量n时,所述网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,所述m,n均为大于1的正整数;或者,
在网络处理设备的网络端口数量m小于或等于所述主机的网络端口数量n的情况下,所述网络处理设备的m个网络端口通过物理交换设备与所述主机的n个网络端口连接,所述m,n均为大于1的正整数。
5.如权利要求2-3任一所述的系统,其特征在于,
所述云管理平台,还用于为所述网络处理设备分配管理网IP地址和业务网IP地址,记录所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系。
6.如权利要求2-3任一所述的系统,其特征在于,
所述云管理平台,还用于向所述主机发送实例创建请求,所述实例创建请求携带所述计算实例的资源配置信息以及网络地址;
所述主机,还用于根据所述资源配置信息以及网络地址创建所述计算实例以及所述计算实例的虚拟端口,向云管理平台返回计算实例创建成功的指示消息,所述指示消息携带所述主机的管理网IP地址以及所述计算实例的网络地址;
所述云管理平台,还用于为创建的所述计算实例的虚拟端口分配VLAN标识,分配的所述VLAN标识与所述主机上已有虚拟端口的VLAN标识均不相同。
7.如权利要求2-3任意一项所述的系统,其特征在于,
所述网络处理设备,还用于根据接收到的所述VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
所述网络处理设备根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理包括:所述网络处理设备根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
8.如权利要求1-3任一所述的系统,其特征在于,所述云计算系统还包括另一主机,所述另一主机为所述数据包的目的主机,所述目的主机上运行有目的计算实例;
所述目的主机对应的目的网络处理设备,用于接收所述数据包,根据所述数据包的目的网络地址确定所述目的计算实例的VPC网络信息,由确定的VPC网络信息对所述数据包进行网络功能处理,并发送所述数据包至所述目的主机中的目的计算实例。
9.一种主机,其特征在于,所述主机包括虚拟交换机以及网络处理设备,所述主机运行有多个计算实例,所述多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,所述主机通过所述网络处理设备与云计算系统中的其他设备通信;
所述网络处理设备,用于接收云管理平台根据所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系发送的所述主机上运行的计算实例的VPC网络信息;
所述计算实例,用于通过自身的虚拟端口发出数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
所述虚拟交换机,用于根据所述VLAN标识发送所述数据包,将所述数据包路由到所述网络处理设备;
所述网络处理设备,用于接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包;
所述网络处理设备上安装有操作系统,基于所述操作系统能够实现完整的VPC网络功能处理,包括对计算实例的VPC网络特性进行增加或移除。
10.如权利要求9所述的主机,其特征在于,
所述网络处理设备,还用于接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
11.如权利要求10所述的主机,其特征在于,
所述网络处理设备,还用于根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
12.如权利要求9-11任意一项所述的主机,其特征在于,
所述网络处理设备通过总线连接到所述主机,作为所述主机的网卡为所述主机提供网络接入服务;或者,
当所述网络处理设备的网络端口数量m大于所述主机的网络端口数量n时,所述网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,所述m,n均为大于1的正整数;或者,
在网络处理设备的网络端口数量m小于或等于所述主机的网络端口数量n的情况下,所述网络处理设备的m个网络端口通过物理交换设备与所述主机的n个网络端口连接,所述m,n均为大于1的正整数。
13.如权利要求9-11任意一项所述的主机,其特征在于,
所述网络处理设备,还用于根据接收到的VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
所述网络处理设备根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理包括:所述网络处理设备根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
14.一种数据包处理方法,其特征在于,所述数据包处理方法应用于云计算系统,云计算系统包括云管理平台和至少一个主机,所述主机包括虚拟交换机和网络处理设备,所述主机运行有多个计算实例,所述多个计算实例的虚拟端口配置有VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,所述主机与所述网络处理设备相连,通过所述网络处理设备与云计算系统中的其他设备通信;所述数据包处理方法包括:
云管理平台根据所述主机的管理网IP地址和网络处理设备的管理网IP地址之间的对应关系,向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息;
所述虚拟交换机接收所述计算实例通过自身的虚拟端口发出的数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
所述虚拟交换机根据所述VLAN标识发送所述数据包,将所述数据包路由到所述网络处理设备;
所述网络处理设备接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包;
所述网络处理设备上安装有操作系统,基于所述操作系统能够实现完整的VPC网络功能处理,包括对计算实例的VPC网络特性进行增加或移除。
15.如权利要求14所述的方法,其特征在于,在所述网络处理设备接收所述数据包之前,所述方法还包括:
所述网络处理设备接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
16.如权利要求15所述的方法,其特征在于,所述网络处理设备发送所述数据包包括:
所述网络处理设备根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
17.如权利要求14-16任一所述的方法,其特征在于,
所述网络处理设备通过总线连接到所述主机,作为所述主机的网卡为所述主机提供网络接入服务;或者,
当所述网络处理设备的网络端口数量m大于所述主机的网络端口数量n时,所述网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,所述m,n均为大于1的正整数;或者,
在网络处理设备的网络端口数量m小于或等于所述主机的网络端口数量n的情况下,所述网络处理设备的m个网络端口通过物理交换设备与所述主机的n个网络端口连接,所述m,n均为大于1的正整数。
18.如权利要求15-16任一所述的方法,其特征在于,所述云管理平台向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息之前,所述方法还包括:
所述云管理平台为所述网络处理设备分配管理网IP地址和业务网IP地址,记录所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系。
19.如权利要求15-16任一所述的方法,其特征在于,在所述云管理平台向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息之前,所述方法还包括:
所述云管理平台向所述主机发送实例创建请求,所述实例创建请求携带所述计算实例的资源配置信息以及网络地址;
所述主机根据所述资源配置信息以及网络地址创建所述计算实例以及所述计算实例的虚拟端口,向云管理平台返回计算实例创建成功的指示消息,所述指示消息携带所述主机的管理网IP地址以及所述计算实例的网络地址;
所述云管理平台为创建的所述计算实例的虚拟端口分配VLAN标识,分配的所述VLAN标识与所述主机上已有虚拟端口的VLAN标识均不相同。
20.如权利要求15-16任意一项所述的方法,其特征在于,在所述云管理平台向所述网络处理设备发送所述主机上运行的计算实例的VPC网络信息之后,所述方法还包括:
所述网络处理设备根据接收到的VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
所述网络处理设备根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理包括:所述网络处理设备根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
21.如权利要求14-16任一所述的方法,其特征在于,所述云计算系统还包括另一主机,所述另一主机为所述数据包的目的主机,所述目的主机上运行有目的计算实例;
在所述网络处理设备接收所述数据包之后,所述方法还包括:
所述目的主机对应的目的网络处理设备接收所述数据包,根据所述数据包的目的网络地址确定所述目的计算实例的VPC网络信息,根据所述目的计算实例的VPC网络信息对所述数据包进行网络功能处理,并发送所述数据包至所述目的主机中的目的计算实例。
22.一种数据包处理方法,其特征在于,所述数据包处理方法应用于主机,所述主机包括虚拟交换机和网络处理设备,所述主机运行有多个计算实例,所述多个计算实例的虚拟端口配置有VLAN标识,且个计算实例的VLAN标识各不相同,所述主机通过所述网络处理设备与云计算系统中的其他设备通信,所述方法包括:
所述网络处理设备接收云管理平台根据所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系发送的所述主机上运行的计算实例的VPC网络信息;
所述计算实例通过自身的虚拟端口发出数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
所述虚拟交换机根据所述VLAN标识发送所述数据包,将所述数据包路由到所述网络处理设备;
所述网络处理设备接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包;
所述网络处理设备上安装有操作系统,基于所述操作系统能够实现完整的VPC网络功能处理,包括对计算实例的VPC网络特性进行增加或移除。
23.如权利要求22所述的方法,其特征在于,在所述网络处理设备接收所述数据包之前,所述方法还包括:
所述网络处理设备接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
24.如权利要求23所述的方法,其特征在于,所述网络处理设备发送所述数据包包括:
所述网络处理设备根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
25.如权利要求22-24所述的方法,其特征在于,
所述网络处理设备通过总线连接到所述主机,作为所述主机的网卡为所述主机提供网络接入服务;或者,
当所述网络处理设备的网络端口数量m大于所述主机的网络端口数量n时,所述网络处理设备的m个网络端口中任意的n个网络端口与主机的n个网络端口以一对一的方式连接,所述m,n均为大于1的正整数;或者,
在网络处理设备的网络端口数量m小于或等于所述主机的网络端口数量n的情况下,所述网络处理设备的m个网络端口通过物理交换设备与所述主机的n个网络端口连接,所述m,n均为大于1的正整数。
26.如权利要求22-24任意一项所述的方法,其特征在于,
在所述网络处理设备接收云管理平台发送的所述主机上运行的计算实例的VPC网络信息之后,所述方法还包括:所述网络处理设备根据接收到的VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
所述网络处理设备根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理包括:
所述网络处理设备根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
27.一种主机,其特征在于,包括第一处理器、第一存储器以及网络处理设备,所述网络处理设备包括第二处理器以及第二存储器,其中,所述主机运行有多个计算实例,所述多个计算实例的虚拟端口配置有虚拟局域网VLAN标识,且各计算实例的虚拟端口的VLAN标识互不相同,所述第一存储器和所述第二存储器中存储有指令,所述第一处理器执行所述第一存储器中的第一指令以实现所述主机上运行的计算实例的功能,所述第一处理器执行所述第一存储器中的第二指令以实现所述主机上运行的虚拟交换机的功能,
所述第二处理器用于执行所述第二存储器中的指令以执行步骤:接收云管理平台根据所述主机的管理网IP地址和所述网络处理设备的管理网IP地址之间的对应关系发送的所述主机上运行的计算实例的VPC网络信息;
所述第一处理器用于执行所述第一存储器中的第一指令以执行步骤:通过自身的虚拟端口发出数据包,所述数据包携带发出所述数据包的虚拟端口的VLAN标识和所述计算实例的网络地址;
所述第一处理器用于执行所述第一存储器中的第二指令以执行步骤:根据所述VLAN标识发送所述数据包,所述数据包路由到所述网络处理设备;
所述第二处理器用于执行所述第二存储器中的指令以执行步骤:接收所述数据包,根据所述计算实例的网络地址确定所述计算实例的VPC网络信息,对所述数据包进行网络功能处理,并发送所述数据包;
所述网络处理设备上安装有操作系统,基于所述操作系统能够实现完整的VPC网络功能处理,包括对计算实例的VPC网络特性进行增加或移除。
28.如权利要求27所述的主机,所述第二处理器用于执行所述第二存储器中的指令以执行步骤:接收云管理平台发送的上线信息,所述上线信息包括其他网络处理设备的业务网IP地址以及所述其他网络处理设备连接的主机上运行的计算实例的网络地址。
29.如权利要求28所述的主机,其特征在于,
所述第二处理器用于执行所述第二存储器中的指令以执行步骤:根据所述数据包的目的网络地址,确定所述数据包的目的计算实例对应的网络处理设备的业务网IP地址,建立与所述数据包的目的计算实例对应的网络处理设备之间的隧道,通过建立的隧道发送所述数据包。
30.如权利要求27-29任意一项所述的主机,其特征在于,
所述第二处理器用于执行所述第二存储器中的指令以执行步骤:
根据接收到的VPC网络信息,创建为所述计算实例提供网络处理功能的虚拟网元;
根据所述数据包的源网络地址确定所述计算实例对应的虚拟网元,由确定的虚拟网元为所述计算实例提供网络处理功能。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2016/110803 WO2018112709A1 (zh) | 2016-12-19 | 2016-12-19 | 一种数据包处理方法、主机和系统 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN110088732A CN110088732A (zh) | 2019-08-02 |
| CN110088732B true CN110088732B (zh) | 2021-08-20 |
Family
ID=62624492
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201680091703.7A Active CN110088732B (zh) | 2016-12-19 | 2016-12-19 | 一种数据包处理方法、主机和系统 |
Country Status (3)
| Country | Link |
|---|---|
| US (3) | US10447500B2 (zh) |
| CN (1) | CN110088732B (zh) |
| WO (1) | WO2018112709A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025177085A1 (zh) * | 2024-02-20 | 2025-08-28 | 云智能资产控股(新加坡)私人股份有限公司 | 集成系统接入云计算环境的方法及装置、计算设备、计算机可读存储介质及计算机程序产品 |
Families Citing this family (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11201858B2 (en) * | 2017-06-01 | 2021-12-14 | Kct Holdings, Llc | Apparatus and method for secure router device |
| US10742447B2 (en) * | 2017-07-10 | 2020-08-11 | Level 3 Communications, Llc | Connecting to multiple cloud instances in a telecommunications network |
| US11102214B2 (en) * | 2018-08-27 | 2021-08-24 | Amazon Technologies, Inc. | Directory access sharing across web services accounts |
| EP3895031A4 (en) * | 2018-12-15 | 2022-07-20 | Telefonaktiebolaget LM Ericsson (publ) | EFFICIENT NETWORK ADDRESS TRANSLATION (NAT) IN CLOUD NETWORKS |
| CN111352574B (zh) * | 2018-12-21 | 2023-04-25 | 杭州宏杉科技股份有限公司 | 路径切换的方法、装置及计算机可读存储介质 |
| US10880124B2 (en) | 2018-12-28 | 2020-12-29 | Alibaba Group Holding Limited | Offload controller control of programmable switch |
| US10855584B2 (en) | 2018-12-28 | 2020-12-01 | Alibaba Group Holding Limited | Client-equipment-peering virtual route controller |
| US11070470B2 (en) * | 2019-01-22 | 2021-07-20 | Vmware, Inc. | Host router in a virtual computing instance |
| US11258729B2 (en) * | 2019-02-27 | 2022-02-22 | Vmware, Inc. | Deploying a software defined networking (SDN) solution on a host using a single active uplink |
| CN109981437B (zh) * | 2019-03-08 | 2022-02-18 | 平安科技(深圳)有限公司 | 一种基于vpc的多数据中心互通方法及相关设备 |
| CN112637088B (zh) * | 2019-09-24 | 2023-06-23 | 阿里巴巴集团控股有限公司 | 网络系统、网络处理方法和装置、电子设备以及计算机可读存储介质 |
| US11550608B2 (en) * | 2019-10-31 | 2023-01-10 | International Business Machines Corporation | Guest-to-host virtual networking |
| CN110933135B (zh) * | 2019-10-31 | 2022-11-29 | 苏州浪潮智能科技有限公司 | 在计算机设备中建立网络连接的方法和装置 |
| US11418995B2 (en) | 2019-11-29 | 2022-08-16 | Amazon Technologies, Inc. | Mobility of cloud compute instances hosted within communications service provider networks |
| US10965737B1 (en) * | 2019-11-29 | 2021-03-30 | Amazon Technologies, Inc. | Cloud computing in communications service provider networks |
| US10880232B1 (en) * | 2019-11-29 | 2020-12-29 | Amazon Technologies, Inc. | Availability groups of cloud provider edge locations |
| US11677583B2 (en) | 2020-04-06 | 2023-06-13 | Cisco Technology, Inc. | Dynamic cellular connectivity between the hypervisors and virtual machines |
| US11283708B1 (en) * | 2020-06-29 | 2022-03-22 | Amazon Technologies, Inc. | Dedicating network paths between computing resources in a cloud provider network |
| US12418507B2 (en) * | 2020-07-16 | 2025-09-16 | Level 3 Communications, Llc | Network security device |
| CN114328442A (zh) * | 2020-10-10 | 2022-04-12 | 腾讯科技(深圳)有限公司 | 数据库迁移方法、装置、设备及计算机可读存储介质 |
| CN112398687B (zh) * | 2020-11-13 | 2023-04-18 | 广东省华南技术转移中心有限公司 | 云计算网络的配置方法、云计算网络系统以及存储介质 |
| CN113300985B (zh) * | 2021-03-30 | 2023-04-07 | 阿里巴巴(中国)有限公司 | 数据处理方法、装置、设备和存储介质 |
| US11714775B2 (en) * | 2021-05-10 | 2023-08-01 | Zenlayer Innovation LLC | Peripheral component interconnect (PCI) hosting device |
| CN113630275B (zh) * | 2021-08-13 | 2024-03-19 | 华云数据控股集团有限公司 | 虚拟机管理器集群的网络互通方法、计算设备和存储介质 |
| CN114024799B (zh) * | 2022-01-06 | 2022-04-01 | 杭州优云科技有限公司 | 一种裸金属服务器和虚拟化网络互联的方法和装置 |
| CN114584606B (zh) * | 2022-04-29 | 2022-08-02 | 阿里云计算有限公司 | 端云通信方法及设备 |
| CN115118654B (zh) * | 2022-06-17 | 2023-08-18 | 北京百度网讯科技有限公司 | 虚拟网络下的数据转发方法、系统、装置及程序产品 |
| CN115174674B (zh) * | 2022-06-29 | 2025-06-06 | 阿里云计算有限公司 | 流量的转发方法 |
| CN118473941A (zh) * | 2023-02-09 | 2024-08-09 | 华为云计算技术有限公司 | 一种基于公有云的虚拟实例配置方法及云管理平台 |
| CN116566711B (zh) * | 2023-05-29 | 2025-12-12 | 杭州安恒信息技术股份有限公司 | 一种数据传输方法、装置、设备及存储介质 |
| CN116668512A (zh) * | 2023-06-19 | 2023-08-29 | 中国电信股份有限公司 | 混合网络连通方法、系统、电子设备及存储介质 |
| CN117014353B (zh) * | 2023-06-30 | 2025-05-27 | 深圳华为云计算技术有限公司 | 一种拨测策略生成的方法、装置、存储介质和计算设备集群 |
| CN116846667A (zh) * | 2023-07-28 | 2023-10-03 | 中移(苏州)软件技术有限公司 | 网络系统、网络工作节点、网络管控和网络隔离方法 |
| CN120110689A (zh) * | 2023-12-04 | 2025-06-06 | 杭州阿里云飞天信息技术有限公司 | 点对面的云上跨区域服务的访问方法、发布方法及系统 |
| CN119094522B (zh) * | 2024-08-29 | 2025-09-30 | 浪潮云信息技术股份公司 | 一种基于虚拟路由网关的混合云网络通信方法以及系统 |
| CN119583441A (zh) * | 2024-12-06 | 2025-03-07 | 天翼云科技有限公司 | 报文转发方法、装置、计算机可读存储介质和程序产品 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102413190A (zh) * | 2011-12-19 | 2012-04-11 | 广东电子工业研究院有限公司 | 一种基于云计算的网络架构及其虚拟网络管理方法 |
| CN104521198A (zh) * | 2012-08-02 | 2015-04-15 | 思科技术公司 | 用于虚拟以太网接口绑定的系统和方法 |
| CN105207873A (zh) * | 2015-08-31 | 2015-12-30 | 华为技术有限公司 | 一种报文处理方法和装置 |
| CN105591863A (zh) * | 2014-10-20 | 2016-05-18 | 中兴通讯股份有限公司 | 一种实现虚拟私有云网络与外部网络互通的方法和装置 |
Family Cites Families (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8472443B2 (en) * | 2009-05-15 | 2013-06-25 | Cisco Technology | Port grouping for association with virtual interfaces |
| US9042304B2 (en) * | 2012-06-05 | 2015-05-26 | Vmware, Inc. | Controlling a paravirtualized wireless interface from a guest virtual machine |
| US8750288B2 (en) * | 2012-06-06 | 2014-06-10 | Juniper Networks, Inc. | Physical path determination for virtual network packet flows |
| US9898317B2 (en) * | 2012-06-06 | 2018-02-20 | Juniper Networks, Inc. | Physical path determination for virtual network packet flows |
| US9094308B2 (en) * | 2012-06-06 | 2015-07-28 | Juniper Networks, Inc. | Finding latency through a physical network in a virtualized network |
| US9154589B1 (en) * | 2012-06-28 | 2015-10-06 | Amazon Technologies, Inc. | Bandwidth-optimized cloud resource placement service |
| US20160285734A1 (en) * | 2012-11-21 | 2016-09-29 | Nec Corporation | Cloud-environment provision system, route control method, and medium |
| WO2014086023A1 (zh) * | 2012-12-06 | 2014-06-12 | 华为技术有限公司 | 跨服务区通信的方法、装置和数据中心网络 |
| US9350558B2 (en) * | 2013-01-09 | 2016-05-24 | Dell Products L.P. | Systems and methods for providing multicast routing in an overlay network |
| US9413612B2 (en) * | 2013-12-24 | 2016-08-09 | Cisco Technology, Inc. | Automatic resolution of virtual network instance to VLAN mapping conflicts in dual-homed deployments in a dynamic fabric automation network architecture |
| KR20150082932A (ko) * | 2014-01-08 | 2015-07-16 | 한국전자통신연구원 | 가상 머신의 구성 관리 지원 장치 및 방법과, 그 구성 관리 지원 장치를 이용한 클라우드 서비스 중개 장치 및 방법 |
| US9794186B2 (en) * | 2014-03-27 | 2017-10-17 | Nicira, Inc. | Distributed network address translation for efficient cloud service access |
| US10083051B1 (en) * | 2014-04-11 | 2018-09-25 | VCE IP Holding Company LLC | System, method, and code for classifying resources of a virtual computing environment |
| WO2016000184A1 (zh) * | 2014-06-30 | 2016-01-07 | 华为技术有限公司 | 一种交换机模式切换方法、设备及系统 |
| CN105262685B (zh) * | 2014-07-14 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法和装置 |
| US9628379B2 (en) * | 2015-06-01 | 2017-04-18 | Cisco Technology, Inc. | Large scale residential cloud based application centric infrastructures |
| US10476845B2 (en) * | 2015-06-26 | 2019-11-12 | Nicira, Inc. | Traffic handling for containers in a virtualized computing environment |
| US9722948B2 (en) * | 2015-06-26 | 2017-08-01 | Nicira, Inc. | Providing quality of service for containers in a virtualized computing environment |
| US9781037B2 (en) * | 2015-09-15 | 2017-10-03 | Cisco Technology, Inc. | Method and apparatus for advanced statistics collection |
| US10846121B2 (en) * | 2016-03-18 | 2020-11-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Using nano-services to secure multi-tenant networking in datacenters |
| US10728106B1 (en) * | 2016-04-29 | 2020-07-28 | Architecture Technology Corporation | Multi-domain cloud computing |
| US10432532B2 (en) * | 2016-07-12 | 2019-10-01 | Cisco Technology, Inc. | Dynamically pinning micro-service to uplink port |
| US10333959B2 (en) * | 2016-08-31 | 2019-06-25 | Nicira, Inc. | Use of public cloud inventory tags to configure data compute node for logical network |
| US10397136B2 (en) * | 2016-08-27 | 2019-08-27 | Nicira, Inc. | Managed forwarding element executing in separate namespace of public cloud data compute node than workload application |
| US10419340B2 (en) * | 2016-08-29 | 2019-09-17 | Vmware, Inc. | Stateful connection optimization over stretched networks using specific prefix routes |
| US10545777B2 (en) * | 2016-11-08 | 2020-01-28 | International Business Machines Corporation | Generating a virtual machines relocation protocol |
| AU2016414391B2 (en) * | 2016-11-09 | 2019-01-17 | Huawei Technologies Co., Ltd. | Packet processing method in cloud computing system, host, and system |
| US10129186B2 (en) * | 2016-12-07 | 2018-11-13 | Nicira, Inc. | Service function chain (SFC) data communications with SFC data in virtual local area network identifier (VLAN ID) data fields |
-
2016
- 2016-12-19 CN CN201680091703.7A patent/CN110088732B/zh active Active
- 2016-12-19 WO PCT/CN2016/110803 patent/WO2018112709A1/zh not_active Ceased
-
2018
- 2018-06-26 US US16/018,861 patent/US10447500B2/en active Active
-
2019
- 2019-09-27 US US16/586,306 patent/US11190375B2/en active Active
-
2021
- 2021-10-28 US US17/513,025 patent/US20220123960A1/en not_active Abandoned
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102413190A (zh) * | 2011-12-19 | 2012-04-11 | 广东电子工业研究院有限公司 | 一种基于云计算的网络架构及其虚拟网络管理方法 |
| CN104521198A (zh) * | 2012-08-02 | 2015-04-15 | 思科技术公司 | 用于虚拟以太网接口绑定的系统和方法 |
| CN105591863A (zh) * | 2014-10-20 | 2016-05-18 | 中兴通讯股份有限公司 | 一种实现虚拟私有云网络与外部网络互通的方法和装置 |
| CN105207873A (zh) * | 2015-08-31 | 2015-12-30 | 华为技术有限公司 | 一种报文处理方法和装置 |
Non-Patent Citations (1)
| Title |
|---|
| 云数据中心SDN/NFV应用分析;段晓东;《电信技术》;20150725;第33-38页 * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025177085A1 (zh) * | 2024-02-20 | 2025-08-28 | 云智能资产控股(新加坡)私人股份有限公司 | 集成系统接入云计算环境的方法及装置、计算设备、计算机可读存储介质及计算机程序产品 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20180302243A1 (en) | 2018-10-18 |
| CN110088732A (zh) | 2019-08-02 |
| US20220123960A1 (en) | 2022-04-21 |
| WO2018112709A1 (zh) | 2018-06-28 |
| US20200112458A1 (en) | 2020-04-09 |
| US11190375B2 (en) | 2021-11-30 |
| US10447500B2 (en) | 2019-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110088732B (zh) | 一种数据包处理方法、主机和系统 | |
| JP6605713B2 (ja) | クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム | |
| JP6513835B2 (ja) | クラウドコンピューティングシステムにおけるパケット処理方法、ホスト、およびシステム | |
| CN103369027B (zh) | 混合云环境中的位置感知虚拟服务配备 | |
| US8670450B2 (en) | Efficient software-based private VLAN solution for distributed virtual switches | |
| CN105284080B (zh) | 数据中心的虚拟网络管理方法及数据中心系统 | |
| CN114338606B (zh) | 一种公有云的网络配置方法及相关设备 | |
| CN106533890B (zh) | 一种报文处理方法、装置及系统 | |
| US20100287262A1 (en) | Method and system for guaranteed end-to-end data flows in a local networking domain | |
| US20130024553A1 (en) | Location independent dynamic IP address assignment | |
| US8521890B2 (en) | Virtual network configuration and management | |
| EP3125504B1 (en) | Resource allocation method, packet communication method and device | |
| CN105556929A (zh) | 在云计算系统中运行应用的网络元件和方法 | |
| CN117499318A (zh) | 云计算虚拟网络系统、及其使用方法、装置、设备及介质 | |
| US12074844B2 (en) | Secure and dynamic assignment of network addresses to network devices in an information processing system | |
| Tholeti | Hypervisors, virtualization, and networking | |
| HK1250189A1 (zh) | 云计算系统中报文处理的方法、主机和系统 | |
| HK1250189B (zh) | 云计算系统中报文处理的方法、主机和系统 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| TR01 | Transfer of patent right | ||
| TR01 | Transfer of patent right |
Effective date of registration: 20220210 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |