CN105099953B - 云数据中心虚拟网络的隔离方法与装置 - Google Patents
云数据中心虚拟网络的隔离方法与装置 Download PDFInfo
- Publication number
- CN105099953B CN105099953B CN201410175324.9A CN201410175324A CN105099953B CN 105099953 B CN105099953 B CN 105099953B CN 201410175324 A CN201410175324 A CN 201410175324A CN 105099953 B CN105099953 B CN 105099953B
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- virtual
- interchanger
- layer switch
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明的实施例提供云数据中心虚拟网络的隔离方法与装置,涉及云计算领域,用于提高虚拟网络的安全性。该方法包括:接收交换机发送的转发询问信息,转发询问信息由交换机在接收到数据包时发送;根据转发询问信息,确定数据包的源虚拟机与第一边缘层交换机的连接关系,以及数据包的目的虚拟机与第二边缘层交换机的连接关系,第一边缘层交换机是与源虚拟机直接相连的交换机,第二边缘层交换机是与目的虚拟机直接相连的交换机;根据上述连接关系以及保存的对应关系,确定源虚拟机与目的虚拟机是否属于同一租户租用的虚拟网络;当源虚拟机与目的虚拟机不属于同一租户租用的虚拟网络时,控制交换机丢弃数据包。本发明应用于网络安全技术。
Description
技术领域
本发明涉及云计算领域,尤其涉及一种云数据中心虚拟网络的隔离方法与装置。
背景技术
云数据中心以资源出租为核心业务,租户可通过租用VM(Virtual Machine,虚拟机)来共享使用云数据中心的网络资源。同一租户租用的多个VM需要进行网络通信,从而形成一个虚拟网络。通常,多个虚拟网络共存于云数据中心的物理网络之上。由于传统网络不支持地址空间虚拟化以及难以实现对大规模网络的集中控制等缺陷,因此,面向多租户的云数据中心引入了SDN(Software Defined Networking,软件定义网络)技术。SDN技术的设计理念是要将网络的控制层与数据层进行分离,并实现网络的可编程控制。
基于SDN技术,现有技术中提出了根据VM到VM的资源需求将云数据中心中的不同租户分入不同的VDC(Virtual Data Center,虚拟数据中心),并在此分隔的基础上为租户提供有保证的服务。
在实现基于VM到VM的资源需求进行VDC分隔的过程中,现有技术中至少存在如下问题:属于不同虚拟网络之间的VM的流量隔离问题没有得到解决,导致现有的虚拟网络存在安全隐患。
发明内容
本发明的实施例提供一种云数据中心虚拟网络的隔离方法与装置,能够提高虚拟网络的安全性。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种云数据中心虚拟网络的隔离方法,包括:
接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
根据所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
当所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
结合第一方面,在第一方面的第一种可能的实现方式中,
所述源虚拟机与所述第一边缘层交换机的连接关系包括所述源虚拟机与所述第一边缘层交换机的端口的第一连接关系;
所述目的虚拟机与所述第二边缘层交换机的连接关系包括所述目的虚拟机与所述第二边缘层交换机的端口的第二连接关系;
所述保存的对应关系包括:所述第一连接关系与租户租用的虚拟网络的对应关系,所述第二连接关系与租户租用的虚拟网络的对应关系。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,在所述根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络前,所述方法还包括:
接收租户的请求信息,所述请求信息包括租户的计划租用虚拟机的数量N、网内带宽要求、弹性参数α,所述虚拟机包括所述源虚拟机和所述目的虚拟机;
根据所述计划租用虚拟机的数量N确定实际租用虚拟机的数量M;
根据预先获取拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户;
其中,M=N/α,所述数量N、数量M均为正整数,0<α≤1。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述确定由M台虚拟机所组成的虚拟网络包括:
确定与边缘层交换机连接的未租用虚拟机的数量P是否大于或等于数量M,所述边缘层交换机包括所述第一边缘层交换机和所述第二边缘层交换机,所述边缘层交换机为与所述虚拟机直接相连的交换机;
当数量P大于或等于数量M时,从所述边缘层交换机所连接的P台虚拟机中选择M台虚拟机;
当数量P小于数量M时,从路由层交换机所连接的未租用虚拟机中选择M台虚拟机,所述路由层交换机为未与所述虚拟机直接相连的交换机,所述路由层交换机为与所述边缘层交换机直接相连的交换机;
其中,所述数量P为正整数。
结合第一方面的第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述请求信息还包括网际带宽要求;
在确定由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络后,所述方法还包括:
从所述由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络中,确定符合所述网际带宽要求的虚拟网络;
所述将所组成的虚拟网络分配所述租户包括:
将符合所述网内带宽要求以及网际带宽要求的虚拟网络分配所述租户。
结合第一方面的第二种至第四种可能的任一实现方式,在第一方面的第五种可能的实现方式中,所述预先获取拓扑网络结构包括所述虚拟机的已租用信息、带宽的已租用信息;
所述根据预先获的取拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户之后,所述方法还包括:
当其他租户归还虚拟机时,更新所述归还的虚拟机的已租用信息、所述归还的虚拟机对应的带宽的已租用信息;
根据更新后的虚拟机的已租用信息、带宽的已租用信息,调整所述虚拟网络。
结合第一方面或第一方面的第一种至第五种可能的任一实现方式,在第一方面的第六种可能的实现方式中,所述方法还包括:
当接收到所述交换机发送的带宽速度大于预设值时,向所述交换机下发带宽限速指令,以将所述数据包的源虚拟机在所述交换机上的带宽速度限制在所述预设值内。
第二方面,提供一种云数据中心虚拟网络的隔离装置,包括:
接收单元,用于接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
确定单元,用于根据所述接收单元接收的所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
所述确定单元还用于:根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
控制单元,用于当所述确定单元确定所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
结合第二方面,在第二方面的第一种可能的实现方式中,所述装置还包括分配单元;
所述分配单元具体包括:
请求信息接收模块,用于接收租户的请求信息,所述请求信息包括租户的计划租用虚拟机的数量N、网内带宽要求、弹性参数α,所述虚拟机包括所述源虚拟机和所述目的虚拟机;
租用数量确定模块,用于根据所述请求信息接收模块接收的所述计划租用虚拟机的数量N确定实际租用虚拟机的数量M;
虚拟网络确定模块,用于根据预先获取拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户;
其中,M=N/α,所述数量N、数量M均为正整数,0<α≤1。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述虚拟网络确定模块具体用于:
确定与虚拟机直接相连的边缘层交换机所连接的未租用虚拟机的数量P是否大于或等于数量M;
当数量P大于或等于数量M时,从所述边缘层交换机所连接的P台虚拟机中选择M台虚拟机;
当数量P小于数量M时,从路由层交换机所连接的未租用虚拟机中选择M台虚拟机,所述路由层交换机为未与所述虚拟机直接相连的交换机,所述路由层交换机为与所述边缘层交换机直接相连的交换机;
其中,所述数量P为正整数。
结合第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述请求信息还包括网际带宽要求;
所述虚拟网络确定模块还用于:从所述由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络中,确定符合所述网际带宽要求的虚拟网络,并将符合所述网内带宽要求以及网际带宽要求的虚拟网络分配所述租户。
结合第二方面的第一种至第三种可能的任一实现方式,在第二方面的第四种可能的实现方式中,所述预先获取的虚拟机与交换机的拓扑网络结构包括虚拟机的已租用信息、带宽的已租用信息;
所述分配单元还用于:当其他租户归还虚拟机时,更新所述归还的虚拟机的已租用信息、所述归还的虚拟机对应的带宽的已租用信息;
根据更新后的虚拟机的已租用信息、带宽的已租用信息,调整所述虚拟网络。
结合第二方面或第二方面的第一种至第四种可能的任一实现方式,在第二方面的第五种可能的实现方式中,所述控制单元还用于:
当接收到所述交换机发送的带宽速度大于预设值时,向所述交换机下发带宽限速指令,以将所述数据包的源虚拟机在所述交换机上的带宽速度限制在所述预设值内。
根据本发明实施例提供的云数据中心虚拟网络的隔离方法与装置,由于云数据中心的控制器能够根据源虚拟机与第一边缘层交换机的连接关系、目的虚拟机与第二边缘层交换机的连接关系以及保存的对应关系,确定源虚拟机与目的虚拟机是否属于同一租户所租用的虚拟网络,并在源虚拟机与目的虚拟机不属于同一租户所租用的虚拟网络时,控制交换机丢弃数据包,因此,利用本发明实施例能够消除不同租户所租用的虚拟网络之间的流量侦听所带来的安全隐患,提高虚拟网络的安全性。
附图说明
图1是本发明实施例一提供的云数据中心虚拟网络的隔离方法的流程图;
图2是本发明实施例二所涉及的云数据中心虚拟网络的分配方法的流程图;
图3是本发明实施例三所涉及的云数据中心虚拟网络的分配方法的选择流程图;
图4为本发明实施例所涉及的云数据中心虚拟网络的分布示意图;
图5A是本发明实施例四提供的云数据中心虚拟网络的隔离装置的结构示意图;
图5B是本发明实施例四的变形实施例所提供的云数据中心虚拟网络的隔离装置的结构示意;
图6为本发明实施例五提供的控制器的结构示意图。
具体实施方式
下面结合附图对本发明实施例的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
虚拟机(Virtual Machine,VM)是云数据中心的资源划分形式。如图4所示,在云数据中心中,VM与交换机(或称为交换设备)相连,其中,交换机包括虚拟交换机(virtualSwitch,vSwitch)。与VM直接相连的交换机可称为边缘层交换机,不与VM直接相连的交换机可称为路由层交换机。租户可以通过租用VM,并利用将VM连接起来的交换机而组成虚拟网络,该虚拟网络属于租用这些VM的租户。
在面向多租户的云数据中心中引入SDN(Software Defined Networking,软件定义网络)技术,能够实现虚拟网络的控制层与数据层的分离,便于管理虚拟网络。在基于SDN技术的云数据中心中,控制层的功能可由具有控制处理功能的装置实施,所述装置具体而言可以是云数据中心的控制器。以下,将以所述装置是控制器为例进行说明。
实施例一
图1是本发明实施例一提供的云数据中心虚拟网络的隔离方法的流程图。如图1所示,所述方法包括以下步骤:
S11、接收交换机发送的转发询问信息,所述转发询问信息由交换机在接收到数据包时发送。
在云数据中心启用后,当交换机在获取到VM发送的数据包后,根据SDN技术的原理,交换机不自行决定该数据包的路由,而是向控制器询问转发该数据包的路由。由于向交换机发送数据包的VM是该数据包的源头,因此可将该VM称为源VM。与之相应地,可将数据包即将前往的VM称为目的VM。
在此步骤中,交换机在获取到源VM发送的数据包后向控制器发送转发询问信息,控制器从而接收该转发询问信息。转发询问信息可包括数据包的所来自的源VM的信息和所去往的目的VM的信息,控制器能够根据转发询问信息确定该数据包的路由。
S12、根据转发询问信息,确定数据包的源虚拟机与第一边缘层交换机的连接关系,以及数据包的目的虚拟机与第二边缘层交换机的连接关系。
在云数据中心中,VM(包括源VM与目的VM)与交换机相连。对于与源VM直接相连的边缘层交换机,可称之为第一边缘层交换机;对于与目的VM直接相连的边缘层交换机,可称之为第二边缘层交换机。交换机由交换机的信息来区别,交换机的信息可包括:交换机的编号或名称,交换机的编号例如可以为IP(Internet Protocol,互联网协议)/MAC(MediaAccess Control,介质访问控制)地址或自定义编号;交换机的端口的端口号或端口名称等,交换机的端口的端口号例如可以为DPID.Port,其中DPID为Destination ProcessIdentifier(目的文件处理标识符)。一台交换机可同时连接一台或多台VM,交换机的同一端口也可能同时连接一台或多台VM。
在此步骤中,对于源VM与第一边缘层交换机的连接关系,控制器可根据转发询问信息中所记录的信息,例如数据包的源VM的标识,结合预先获取的虚拟机与交换机的拓扑网络结构,确定与该源VM直接相连的第一边缘层交换机,即确定源VM与第一边缘层交换机的连接关系;对于目的VM与第二边缘层交换机的连接关系,可以根据与确定源VM与第一边缘层交换机的连接关系类似的方式获取。
对于源VM与第一边缘层交换机的连接关系,更具体地可为:源VM与第一边缘层交换机的端口的连接关系,可称为第一连接关系;对于目的VM与第二边缘层交换机的连接关系,更具体地可为:目的VM与第二边缘层交换机的端口的连接关系,可称为第二连接关系。
S13、根据源虚拟机与第一边缘层交换机的连接关系、目的虚拟机与第二边缘层交换机的连接关系以及保存的对应关系,确定源虚拟机与目的虚拟机是否属于同一租户租用的虚拟网络。
在此步骤中,控制器可根据源VM与第一边缘层交换机的连接关系、目的VM与第二边缘层交换机的连接关系(例如源VM所连接的交换机或目的VM所连接的交换机的编号)以及保存的对应关系,确定源VM与目的VM是否属于同一租户所租用的虚拟网络。其中,对于所述对应关系,其可由控制器在出租VM及虚拟网络时确定并保存在自身,具体可包括:源VM与第一边缘层交换机的连接关系—租户租用的虚拟网络的对应关系,目的VM与第二边缘层交换机的连接关系—租户租用的虚拟网络的对应关系。更具体地,所述保存的对应关系包括:所述第一连接关系与租户租用的虚拟网络的对应关系,所述第二连接关系与租户租用的虚拟网络的对应关系。
例如,租户A租用的虚拟机VM_a1、VM_a2…VM_aM均与交换机Switch_1相连,组成了虚拟网络Network_A;或者,更具体地,虚拟机VM_a1、VM_a2…VM_aM分别在交换机Switch_1的端口DPID.Port11、DPID.Port12…DPID.Port1M上与交换机Switch_1相连。租户B租用的虚拟机VM_b1、VM_b2…VM_bM均与交换机Switch_2相连,组成了虚拟网络Network_B。
对于如何确定源VM与目的VM是否属于同一租户租用的虚拟网络,举例而言,若源VM在端口DPID.Port11上与交换机为Switch_1相连,且根据保存的对应关系可知:交换机Switch_1的端口DPID.Port11所连接的VM为VM_a1,因此,控制器可确定源VM即为VM_a1,属于租户A所租用的虚拟网络Network_A。若控制器还确定了目的VM是租户A所租用的虚拟网络Network_A中的VM_a2,则控制器确定源VM与目的VM属于同一租户A所租用的虚拟网络Network_A。另一方面,若控制器确定了目的VM是租户B所租用的虚拟网络Network_B中的VM_b1,则控制器可确定源VM与目的VM不属于同一租户所租用的虚拟网络。
在确定源VM与目的VM是否属于同一租户所租用的虚拟网络前,需要将租户符合租户需求的虚拟网络分配给租户,分配的方法将在实施例二中具体说明。
S14、当源虚拟机与目的虚拟机不属于同一租户租用的虚拟网络时,控制交换机丢弃数据包。
当数据包的源VM与目的VM不属于同一租户所租用的虚拟网络时,该数据包可能是一个租户对另一个租户的攻击。例如,一个租户利用数据包干扰其他租户的通信,甚至恶意占用网络资源,由此对网络中的其他租户造成类似拒绝服务(Denial of Service,DOS)攻击的网络安全问题。或者,一个租户利用数据包探测相邻摆放的不同租户的VM的隐私。相邻摆放的不同租户的VM是指不同租户所租用的VM在物理设备层面上相同或者邻近。
根据S13的确定结果,当源VM与目的VM不属于同一租户所租用的虚拟网络时,控制交换机丢弃数据包,这样能够消除带宽抢占和流量侦听带来的安全隐患。
进一步地,当接收到交换机发送的带宽速度大于预设值时,控制器可向该交换机下发带宽限速指令,以将所述数据包的源VM在该交换机上的带宽速度限制在所述预设值内。或者,更进一步地,在交换机在其第一端口获取到源VM发送的数据包的情况下,控制器还可向交换机下发带宽限速指令,以限制源VM在第一端口上的带宽速度在预设值内。这样,能够进一步消除带宽抢占和流量侦听带来的安全隐患。
根据S13的确定结果,当源VM与目的VM属于同一租户所租用的虚拟网络时,控制器可根据VM与交换机的拓扑网络结构确定数据包的转发路径,并根据转发路径控制获取到数据包的交换机转发数据包。这样,能够保证同一租户所租用的VM之间的正常通信。
由以上可看出,根据本发明实施例一提供的云数据中心虚拟网络的隔离方法,由于控制器能够根据源VM与第一边缘层交换机的连接关系、目的VM与第二边缘层交换机的连接关系以及保存的对应关系,确定源VM与目的VM是否属于同一租户所租用的虚拟网络,并在源VM与目的VM不属于同一租户所租用的虚拟网络时,控制交换机丢弃数据包,因此,能够消除不同租户所租用的虚拟网络之间的流量侦听所带来的安全隐患,提高虚拟网络的安全性。
实施例二
实施例二用于说明本发明实施例一所涉及的虚拟网络的分配方法。图2是本发明实施例二所涉及的云数据中心虚拟网络的分配方法的流程图。该分配方法同样可由云数据中心中具有控制处理功能的控制器来实施。如图2所示,所述分配方法包括以下步骤:
S21、接收租户的请求信息,所述请求信息包括租户的计划租用VM的数量N、网内带宽要求、弹性参数α。
在此步骤中,当租户需要租用虚拟网络时,可向控制器发送请求信息,控制器接收租户的请求信息。租户可根据自身需求生成相应的请求信息,从而满足不同租户的应用需求。
具体地,可向租户提供用于租用虚拟网络的定制接口,租户可通过该定制接口向控制器发送请求信息。在保证服务质量的基础上,所提供的定制接口具有简洁的特点。定制接口例如可设计为{计划租用VM的数量(N),网内带宽(intra-bandwidth)}。可选地,定制接口的参数还可包括弹性参数(α)和/或网际带宽(inter-bandwidth)。以下,依次对定制接口所包含的参数进行说明。其中,所述数量N、数量M均为正整数,0<α≤1。
计划租用VM的数量N表示租户租用云数据中心的VM数量,这是租户的最基本需求,其中,VM包括源VM和目的VM。云数据中心的物理计算机资源被分割为多个用于对外出租的VM,租户根据自身需要,通过租用不同数量的VM来完成自己的计算任务。
网内带宽是影响网络服务质量最大的因素,也是租户的基本需求。租户租用的VM构成属于自己的虚拟网络,首先需要满足的就是租户自身网络内的网络通信服务。网内带宽直接影响数据密集型计算的分布式计算应用,如MapReduce(一种编程模型)等。
网际带宽是影响租户租用VM构成的虚拟网络与外界通信的因素。租户租用VM构成的虚拟网络也需要与外界通信,这样的需求往往体现在在线服务类应用的应用场景,如Web服务等。由于网络带宽资源的稀有,现实生成场景中,网内带宽往往高于网际带宽数十倍甚至数百倍,因此,有必要将网际带宽与网内带宽分离来达到各自独立的定制,有效利用网络带宽资源。
对于弹性参数,由于云数据中心推行弹性服务的服务目标,因而租用的虚拟网络应具备配合弹性服务进行弹性伸缩的能力。如果采用临时补充分配的方法,由于临近资源不足,造成虚拟网络无法扩展。另外,如果将租用的虚拟网络整体搬迁到一个可以容纳其拓展容量的区域,则会引起巨大的网络流量,甚至导致网路抖动。本发明采用弹性参数,在分配时预留一定的资源(即VM)给虚拟网络,当虚拟网络需要伸缩时,可以迅速满足其需求。同时,弹性参数可以根据租户的弹性需求来定制,还可以区分弹性服务的要求来达到更细致的服务。
S22、根据计划租用VM的数量N确定实际租用VM的数量M。
为了适应租户虚拟网络具备弹性伸缩能力以配合弹性服务的要求,可确定租户的实际租用VM的数量M大于计划租用VM的数量N。实际租用VM的数量M中大于计划租用VM的数量N部分的VM作为租户的冗余资源,供租户将来的使用。因此,租户可以在一定范围内快速增加或减少自己的资源持有量。当然,不存在弹性服务需求的情况下,可确定租户的实际租用VM的数量M等于计划租用VM的数量N。
具体地,若请求信息还包括弹性参数α,实际租用VM的数量M通过以下公式确定:M=N/α,其中,N为租户的计划租用VM的数量,0<α≤1,数量N、数量M均为正整数。
S23、根据预先获取的VM与交换机的拓扑网络结构,确定由M台VM所组成的虚拟网络,并在所组成的虚拟网络符合网内带宽要求时将所组成的虚拟网络分配租户。
在执行S23之前,控制器需要明确VM与交换机的拓扑网络结构。首先,搜集云数据中心拓扑信息,对整个网络进行建模,包括:对整个云数据中心网络的交换机编号,记录网络设备间的连接关系,包括不同交换机连接的端口对应情况和连接链路的可用带宽资源数量;明确交换机的层级关系,越接近VM的交换机层次越低,如接入层比聚合层低,聚合层比核心层低。交换机连接下层设备的端口为下行端口,所对应链路为此交换机的下行链路;交换机连接上层设备的端口为上行端口,所对应链路为此交换机的上行链路。
然后,对VM租用情况进行记账:由下而上依次统计各层交换机连接在其下行端口上的未租用VM数量总和。此数量值为该交换机能够容纳的VM空间。每台VM的出租将会使相应交换机的可用VM空间减少对应的大小。每台VM的归还也会使相应交换机的可用VM空间增加对应的大小。
再次,对带宽租用情况进行记账:记录网络拓扑上每条链路的带宽占用情况。每次租出相应的带宽线路给租户,都会减去相应链路的可用带宽数量。当租约到期,归还的带宽资源会增加到相应的链路,以备再次分发使用。
VM的已租用信息与带宽的已租用信息是预先获取的VM与交换机的拓扑网络结构所需包括的基本信息。
在本步骤中,在确定由M台VM所组成的虚拟网络时,可首先判断与边缘层交换机所连接的未租用VM的数量P是否大于或等于数量M。当数量P大于或等于数量M时,从边缘层交换机所连接的P台VM中选择M台VM;当数量P小于数量M时,从路由层交换机所连接的VM中选择M台VM,其中,所述数量P为正整数。
例如,根据交换机的层级关系,越接近VM的交换机的层次越低,其中,与VM直接相连的交换机,即边缘层交换机的层次最低;越远离VM的交换机的层次越高,即与VM相隔的交换机的个数越多的路由层交换机的层次越高。在确定由M台VM所组成的虚拟网络时,可按照层级从低到高的顺序,依次从边缘层交换机、第一层路由层交换机、第二层路由层交换机直至第X层路由层交换机的所连接的VM中选择M台VM。
可选地,若从某一边缘层交换机所连接的未租用VM中能够选择M台VM,则首先判断所选择的M台VM能否组成符合网内带宽要求的虚拟网络。若所选择的M台VM组成的虚拟网络符合网内带宽要求,则可将该虚拟网络分配给租户。若所选择的M台VM组成的虚拟网络不符合网内带宽要求,则可从另一边缘层交换机所连接的未租用VM中能够选择M台VM,进行与上述过程相同的判断。若所有边缘层交换机所连接的未租用VM均不满足大于或等于M台且符合网内带宽要求的条件,则依次从第一层、第二层乃至第X层路由层交换机所连接的未租用VM中选择M台VM,进行与上述过程相同的判断。
更可选地,在请求信息还包括网际带宽要求的情况下,在确定由M台VM所组成的且符合网内带宽要求的虚拟网络后,可进一步判断该虚拟网络是否符合网际带宽要求的虚拟网络。即,若某一交换机所连接的M台VM所组成的虚拟网络符合网内带宽要求,则进一步判断该虚拟网络是否符合网际带宽要求的虚拟网络。若该虚拟网络同时符合网内带宽要求与网际带宽要求的虚拟网络,则将该虚拟网络分配给租户。若该虚拟网络不符合网际带宽要求,则可判断其他交换机所连接的M台VM所组成的虚拟网络是否同时符合网内带宽要求与网际带宽要求,其中,交换机的判断过程可参照上述说明。此外,在判断是否符合网内带宽要求与网际带宽要求时,亦可先判断是否符合网际带宽要求再判断是否符合网内带宽要求。
更进一步地,由于交换机的同一端口可能连接多台VM,因此在判断交换机所连接的未租用VM的台数是否大于或等于数量M时,可优先判断交换机的同一端口所连接的未租用VM的台数是否大于或等于数量M。
当交换机的同一端口所连接的未租用VM的台数大于或等于数量M时,从交换机的同一端口所连接的未租用VM中选择M台VM。当交换机的同一端口所连接的未租用VM的台数不足数量M时,再判断同一交换机的不同端口所连接的未租用VM的总台数是否大于或等于数量M。
当同一交换机的不同端口所连接的未租用VM的总台数大于或等于数量M时,从该交换机的不同端口所连接的未租用VM中选择M台VM。当同一交换机的不同端口所连接的未租用VM的总台数不足数量M时,再考虑其他交换机或更进一步地考虑相连的多台交换机。
由上可看出,在选择M台VM时,应尽可能使所选择的M台VM集中起来,可选的是连接于同一端口,其次是连接于同一交换机,再次是连接于相连且数量较少的交换机。这样一来,能够使不同所选择的VM达到或趋于物理设备层面上的隔离,从而有助于进一步实现流量隔离,提高虚拟网络的安全性。而且,由于同一租户所租用的虚拟机相对于现有技术而言更为集中,因此,能够保证较高水平的资源复用率,例如,同一租户所租用的虚拟机之间的数据包传输时所需的交换机减少。
例如,交换机Switch_3的端口DPID.Port31所连接的未租用VM有10台,若M=9,则可选从交换机Switch_3的端口DPID.Port31所连接的10台未租用VM中选择9台。若M=11,则无法从交换机Switch_3的端口DPID.Port31所连接的未租用VM中选择11台VM,此时,若交换机Switch_3的端口DPID.Port32连接有未租用VM,则可从交换机Switch_3的端口DPID.Port32所连接的未租用VM中选择1台,并从交换机Switch_3的端口DPID.Port31所连接的未租用VM中选择10台。若同一层的任意一个交换机的所连接的未租用VM的总数均不足11,则可从同一层的多个交换机所连接的未租用VM中选择11台交换机。例如,若交换机Switch_4连接有5台未租用VM,交换机Switch_5连接有6台未租用VM,则可选择交换机Switch_4所连接的5台未租用VM与交换机Switch_5所连接的6台未租用VM组成11台交换机。
在根据预先获取的VM与交换机的拓扑网络结构确定由M台VM所组成的虚拟网络,并在所组成的虚拟网络符合网内带宽要求时将所组成的虚拟网络分配租户的情况下,当其他租户归还VM时,更新所述虚拟机的已租用信息、所述带宽的已租用信息;根据更新后的所述虚拟机的已租用信息、所述带宽的已租用信息,调整分配给所述租户的虚拟网络。
例如,设分配给租户C的11台包括交换机Switch_4所连接的5台VM与交换机Switch_5所连接的6台VM,分配给租户D的6台VM来自于交换机Switch_4所连接的VM,当租户D归还所租用的来自于交换机Switch_4所连接的6台VM时,控制器可更新拓扑网络结构,即将交换机Switch_4所连接的未租用VM增加6台。因此,控制器可控制租户C释放交换机Switch_5所连接的6台VM并将交换机Switch_4所连接的6台空闲VM分配给租户C,这样一来能够进一步使不同所选择的VM达到或趋于物理设备层面上的隔离。
可选的,在本发明的一个实施例中,方法还包括控制器向交换机下发带宽限速指令,以限制所述数据包的源虚拟机在所述交换机上的带宽速度在预设值内。
可选的,在本发明的另一个实施例中,方法还包括:当所述源虚拟机与所述目的虚拟机属于同一租户租用的虚拟网络时,根据预先获取的拓扑网络结构确定所述数据包的转发路径;根据所述转发路径控制获取到所述数据包的交换机转发所述数据包。
由上可看出,根据本发明实施例二所提供的云数据中心虚拟网络的分配方法,由于分配给不同租户的虚拟机所组成的虚拟网络达到了或趋于物理设备层面上的隔离,因此,在使用本发明实施例一所提供的云数据中心虚拟网络的隔离方法时,结合本发明实施例二所提供的云数据中心虚拟网络的分配方法,能够进一步消除带宽抢占和流量侦听带来的安全隐患。
实施例三
为了更好地说明本发明实施例二所涉及的云数据中心虚拟网络的分配方法,下面再结合图3对该分配进行说明。图3是本发明实施例三所涉及的云数据中心虚拟网络的分配方法的选择流程图。如图3所示,所述分配方法包括:
S31、控制器接收租户的请求信息。
开始时,控制器搜集云数据中心拓扑信息,对整个网络进行建模,还对VM的租用情况、带宽的租用情况进行记账。当租户需要租用虚拟网络时,租户通过定制接口向控制器发送请求信息,用以请求控制器为其分配虚拟机及对应的虚拟网络。
S32、控制器根据M=N/α计算实际租用VM的数量M。其中,参数M,N,α的含义与实施例二中的相同。
S33、控制器判断是否存在容纳M台VM的交换机。
控制器可按照未租用VM空间由小到大的顺序,对每层的交换机按进行排列,然后根据VM的分配数量,找到可以容纳它的层次。然后,在此层寻找大于等于其数量的交换机进行带宽检查,可选的是选择可以容纳且未租用VM空间最小的交换机。
S34、判断是否满足网内带宽要求。
根据租户请求的网内带宽大小,在S33找到的交换机为根的子树内,通过HOSE(软管)优化模型检查能否满足租户请求的网内带宽大小。若满足则继续检查网际带宽是否足够;若不满足则返回S33,查找下一个空间足额的交换机。
S35、判断是否满足网际带宽要求。
根据租户请求的网际带宽大小,继续检查S34中找到的交换机与云数据中心网络出口设备的剩余带宽是否满足租户请求。若满足则分配成功,并对租用的VM和带宽资源进行相应的记账处理,生成VM和链路的分配报表;若不满足则退回S34。
S36、分配成功。
由上可看出,根据本发明实施例三所提供的云数据中心虚拟网络的分配方法,由于分配给不同租户的虚拟机所组成的虚拟网络达到了或趋于物理设备层面上的隔离,因此,在使用本发明实施例一所提供的云数据中心虚拟网络的隔离方法时,结合本发明实施例三所提供的云数据中心虚拟网络的分配方法,能够进一步消除带宽抢占和流量侦听带来的安全隐患。
实施例四
与本发明实施例一至三提供的云数据中心虚拟网络的隔离装置对应,本发明实施例四还提供一种云数据中心虚拟网络的隔离装置。所述装置具体可以是云数据中心中具有控制处理功能的控制器。图5A是本发明实施例四提供的云数据中心虚拟网络的隔离装置的结构示意图。如图5A所示,所述装置50包括:
接收单元51,用于接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
确定单元52,用于根据所述接收单元51接收的所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
所述确定单元52还用于:根据所述源虚拟机与第一边缘层交换机的连接关系、所述目的虚拟机与第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
控制单元53,用于当所述确定单元52确定所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
具体地,确定单元52可根据源VM与第一边缘层交换机的连接关系、目的VM与第二边缘层交换机的连接关系(例如源VM所连接的交换机或目的VM所连接的交换机的编号)以及保存的对应关系,确定源VM与目的VM是否属于同一租户所租用的虚拟网络。其中,源VM与第一边缘层交换机的连接关系可包括源VM与第一边缘层交换机的端口的第一连接关系,目的VM与第二边缘层交换机的连接关系可包括目的VM与第二边缘层交换机的端口的第二连接关系,具体说明可参照实施例一。对于所述对应关系,其可由装置50在出租VM及虚拟网络时确定并保存在自身,具体可包括:源VM与第一边缘层交换机的连接关系—租户租用的虚拟网络的对应关系,目的VM与第二边缘层交换机的连接关系—租户租用的虚拟网络的对应关系。更具体地,所述保存的对应关系包括:所述第一连接关系与租户租用的虚拟网络的对应关系,所述第二连接关系与租户租用的虚拟网络的对应关系,具体说明可参照实施例一。
根据确定单元52的确定结果,所述控制单元53还可用于:当接收到所述交换机发送的带宽速度大于预设值时,向该交换机下发带宽限速指令,以将该数据包的源虚拟机在所述交换机上的带宽速度限制在所述预设值内。更具体地,在所述交换机在其第一端口获取到所述数据包的情况下,所述控制单元53还可用于:向所述交换机下发带宽限速指令,以限制所述数据包的源虚拟机在所述第一端口上的带宽速度在预设值内。这样,能够消除带宽抢占和流量侦听带来的安全隐患。
所述确定单元52还用于:当所述确定单元52确定所述源虚拟机与所述目的虚拟机属于同一租户租用的虚拟网络时,根据预先获取的拓扑网络结构确定所述数据包的转发路径;所述控制单元53还用于:根据所述确定单元52确定的所述转发路径控制获取到所述数据包的交换机转发所述数据包。这样,能够保证同一租户所租用的VM之间的正常通信。
由以上可看出,根据本发明实施例四提供的云数据中心虚拟网络的隔离装置,由于所述装置能够根据源VM与第一边缘层交换机的连接关系、目的VM与第二边缘层交换机的连接关系以及保存的对应关系,确定源VM与目的VM是否属于同一租户所租用的虚拟网络,并在源VM与目的VM不属于同一租户所租用的虚拟网络时,控制交换机丢弃数据包,因此,能够消除不同租户所租用的虚拟网络之间的流量侦听所带来的安全隐患,提高虚拟网络的安全性。
如图5B所示,在本发明实施例四的一变形实施例中,所述装置50还包括分配单元54。所述分配单元54具体包括:请求信息接收模块541,用于接收租户的请求信息,所述请求信息包括租户的计划租用虚拟机的数量N、网内带宽要求、弹性参数α,所述虚拟机包括源VM与目的VM;租用数量确定模块542,用于根据所述请求信息接收模块541接收的所述计划租用虚拟机的数量N确定实际租用虚拟机的数量M;虚拟网络确定模块543,用于根据预先获取拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户;其中,M=N/α,所述数量N、数量M均为正整数,0<α≤1。
为了确定由M台虚拟机所组成的虚拟网络,虚拟网络确定模块543具体用于:确定与虚拟机直接相连的边缘层交换机所连接的未租用虚拟机的数量P是否大于或等于数量M;当数量P大于或等于数量M时,从所述边缘层交换机所连接的P台虚拟机中选择M台虚拟机;当数量P小于数量M时,从路由层交换机所连接的未租用虚拟机中选择M台虚拟机,所述路由层交换机为未与所述虚拟机直接相连的交换机,所述路由层交换机为与所述边缘层交换机直接相连的交换机;其中,所述数量P为正整数。这样一来,能够使不同所选择的VM达到或趋于物理设备层面上的隔离,从而有助于进一步实现流量隔离,提高虚拟网络的安全性。
为了更进一步地使不同所选择的VM达到或趋于物理设备层面上的隔离,所述虚拟网络确定模块543选择的所述M台虚拟机为所述边缘层交换机的同一端口或所述路由层交换机的同一端口所连接的M台虚拟机。
可选地,所述请求信息还可包括网际带宽要求,所述虚拟网络确定模块543还用于:从所述由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络中,确定符合所述网际带宽要求的虚拟网络,并将符合所述网内带宽要求以及网际带宽要求的虚拟网络分配所述租户。
此外,所述预先获取的虚拟机与交换机的拓扑网络结构包括虚拟机的已租用信息、带宽的已租用信息;所述分配单元54还用于:当其他租户归还虚拟机时,更新所述归还的虚拟机的已租用信息、所述归还的虚拟机对应的带宽的已租用信息;根据更新后的虚拟机的已租用信息、带宽的已租用信息,调整所述虚拟网络。这样一来能够进一步使不同所选择的VM达到或趋于物理设备层面上的隔离。
关于分配单元54及其虚拟网络确定模块543的说明具体可参照实施例二与实施例三,在此不再赘述。
实施例五
图6为本发明实施例五提供的控制器的结构示意图。如图6所示,本实施例的控制器60包括:至少一个收发器61、处理器62、存储器63和总线。收发器61、处理器62、存储器63通过总线连接并完成相互间的通信。所述总线可以是工业标准体系结构(IndustryStandard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在一个实施例中,处理器62通过读取存储器63中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:
接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
根据所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
当所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
需说明的是,上述处理器62除了具有上述功能之外,还可用于执行上述方法实施例中的其他流程,在此不再赘述。
收发器61主要用于实现本实施例的控制器60与其他设备或装置(如交换机)之间的通信。处理器62可能是一个中央处理器(Central Processing Unit,CPU),或者是特定集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
由以上可看出,根据本发明实施例五提供的控制器,由于控制器能够根据源VM与第一边缘层交换机的连接关系、目的VM与第二边缘层交换机的连接关系以及保存的对应关系,确定源VM与目的VM是否属于同一租户所租用的虚拟网络,并在源VM与目的VM不属于同一租户所租用的虚拟网络时,控制交换机丢弃数据包,因此,能够消除不同租户所租用的虚拟网络之间的流量侦听所带来的安全隐患,提高虚拟网络的安全性。
本说明书中的各个实施例已有侧重地进行了描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。因此,本发明的各方面、或各个方面的可能实现方式可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件等等),或者组合软件和硬件方面的实施例的形式,在这里都统称为“电路”、“模块”或者“系统”。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (13)
1.一种云数据中心虚拟网络的隔离方法,其特征在于,包括:
接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
根据所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
当所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
2.根据权利要求1所述的方法,其特征在于,
所述源虚拟机与所述第一边缘层交换机的连接关系包括所述源虚拟机与所述第一边缘层交换机的端口的第一连接关系;
所述目的虚拟机与所述第二边缘层交换机的连接关系包括所述目的虚拟机与所述第二边缘层交换机的端口的第二连接关系;
所述保存的对应关系包括:所述第一连接关系与租户租用的虚拟网络的对应关系,所述第二连接关系与租户租用的虚拟网络的对应关系。
3.根据权利要求1或2所述的方法,其特征在于,在所述根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络前,所述方法还包括:
接收租户的请求信息,所述请求信息包括租户的计划租用虚拟机的数量N、网内带宽要求、弹性参数α,所述虚拟机包括所述源虚拟机和所述目的虚拟机;
根据所述计划租用虚拟机的数量N确定实际租用虚拟机的数量M;
根据预先获取拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户;
其中,M=N/α,所述数量N、数量M均为正整数,0<α≤1。
4.根据权利要求3所述的方法,其特征在于,所述确定由M台虚拟机所组成的虚拟网络包括:
确定与边缘层交换机连接的未租用虚拟机的数量P是否大于或等于数量M,所述边缘层交换机包括所述第一边缘层交换机和所述第二边缘层交换机,所述边缘层交换机为与所述虚拟机直接相连的交换机;
当数量P大于或等于数量M时,从所述边缘层交换机所连接的P台虚拟机中选择M台虚拟机;
当数量P小于数量M时,从路由层交换机所连接的未租用虚拟机中选择M台虚拟机,所述路由层交换机为未与所述虚拟机直接相连的交换机,所述路由层交换机为与所述边缘层交换机直接相连的交换机;
其中,所述数量P为正整数。
5.根据权利要求3所述的方法,其特征在于,所述请求信息还包括网际带宽要求;
在确定由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络后,所述方法还包括:
从所述由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络中,确定符合所述网际带宽要求的虚拟网络;
所述将所组成的虚拟网络分配所述租户包括:
将符合所述网内带宽要求以及网际带宽要求的虚拟网络分配所述租户。
6.根据权利要求4或5所述的方法,其特征在于,所述预先获取拓扑网络结构包括所述虚拟机的已租用信息、带宽的已租用信息;
所述根据预先获取的拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户之后,所述方法还包括:
当其他租户归还虚拟机时,更新所述归还的虚拟机的已租用信息、所述归还的虚拟机对应的带宽的已租用信息;
根据更新后的虚拟机的已租用信息、带宽的已租用信息,调整所述虚拟网络。
7.根据权利要求1或2或4或5所述的方法,其特征在于,所述方法还包括:
当接收到所述交换机发送的带宽速度大于预设值时,向所述交换机下发带宽限速指令,以将所述数据包的源虚拟机在所述交换机上的带宽速度限制在所述预设值内。
8.一种云数据中心虚拟网络的隔离装置,其特征在于,包括:
接收单元,用于接收交换机发送的转发询问信息,所述转发询问信息由所述交换机在接收到数据包时发送;
确定单元,用于根据所述接收单元接收的所述转发询问信息,确定所述数据包的源虚拟机与第一边缘层交换机的连接关系,以及所述数据包的目的虚拟机与第二边缘层交换机的连接关系,其中,所述第一边缘层交换机是与所述源虚拟机直接相连的交换机,所述第二边缘层交换机是与所述目的虚拟机直接相连的交换机;
所述确定单元还用于:根据所述源虚拟机与所述第一边缘层交换机的连接关系、所述目的虚拟机与所述第二边缘层交换机的连接关系以及保存的对应关系,确定所述源虚拟机与所述目的虚拟机是否属于同一租户租用的虚拟网络;
控制单元,用于当所述确定单元确定所述源虚拟机与所述目的虚拟机不属于同一租户租用的虚拟网络时,控制所述交换机丢弃所述数据包。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括分配单元;
所述分配单元具体包括:
请求信息接收模块,用于接收租户的请求信息,所述请求信息包括租户的计划租用虚拟机的数量N、网内带宽要求、弹性参数α,所述虚拟机包括所述源虚拟机和所述目的虚拟机;
租用数量确定模块,用于根据所述请求信息接收模块接收的所述计划租用虚拟机的数量N确定实际租用虚拟机的数量M;
虚拟网络确定模块,用于根据预先获取的拓扑网络结构,确定由M台虚拟机所组成的虚拟网络,并在所组成的虚拟网络符合所述网内带宽要求时将所组成的虚拟网络分配所述租户;
其中,M=N/α,所述数量N、数量M均为正整数,0<α≤1。
10.根据权利要求9所述的装置,其特征在于,所述虚拟网络确定模块具体用于:
确定与虚拟机直接相连的边缘层交换机所连接的未租用虚拟机的数量P是否大于或等于数量M;
当数量P大于或等于数量M时,从所述边缘层交换机所连接的P台虚拟机中选择M台虚拟机;
当数量P小于数量M时,从路由层交换机所连接的未租用虚拟机中选择M台虚拟机,所述路由层交换机为未与所述虚拟机直接相连的交换机,所述路由层交换机为与所述边缘层交换机直接相连的交换机;
其中,所述数量P为正整数。
11.根据权利要求9或10所述的装置,其特征在于,所述请求信息还包括网际带宽要求;
所述虚拟网络确定模块还用于:从所述由M台虚拟机所组成的且符合所述网内带宽要求的虚拟网络中,确定符合所述网际带宽要求的虚拟网络,并将符合所述网内带宽要求以及网际带宽要求的虚拟网络分配所述租户。
12.根据权利要求11所述的装置,其特征在于,所述预先获取的虚拟机与交换机的拓扑网络结构包括虚拟机的已租用信息、带宽的已租用信息;
所述分配单元还用于:当其他租户归还虚拟机时,更新所述归还的虚拟机的已租用信息、所述归还的虚拟机对应的带宽的已租用信息;
根据更新后的虚拟机的已租用信息、带宽的已租用信息,调整所述虚拟网络。
13.根据权利要求8至10或12任一项所述的装置,其特征在于,所述控制单元还用于:
当接收到所述交换机发送的带宽速度大于预设值时,向所述交换机下发带宽限速指令,以将所述数据包的源虚拟机在所述交换机上的带宽速度限制在所述预设值内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410175324.9A CN105099953B (zh) | 2014-04-28 | 2014-04-28 | 云数据中心虚拟网络的隔离方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410175324.9A CN105099953B (zh) | 2014-04-28 | 2014-04-28 | 云数据中心虚拟网络的隔离方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105099953A CN105099953A (zh) | 2015-11-25 |
CN105099953B true CN105099953B (zh) | 2018-06-19 |
Family
ID=54579530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410175324.9A Active CN105099953B (zh) | 2014-04-28 | 2014-04-28 | 云数据中心虚拟网络的隔离方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105099953B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107040441B (zh) * | 2016-02-04 | 2020-01-21 | 华为技术有限公司 | 跨数据中心的数据传输方法、装置及系统 |
WO2018044341A1 (en) * | 2016-08-27 | 2018-03-08 | Nicira, Inc. | Extension of network control system into public cloud |
US10193749B2 (en) | 2016-08-27 | 2019-01-29 | Nicira, Inc. | Managed forwarding element executing in public cloud data compute node without overlay network |
KR101860234B1 (ko) * | 2016-12-20 | 2018-05-21 | 엘에스산전 주식회사 | 듀얼 포트 스위치의 링크 속도 설정 방법 |
CN107395532B (zh) * | 2017-07-11 | 2020-08-11 | 北京航空航天大学 | 一种基于sdn的多租户虚拟网络隔离方法 |
EP3673627B1 (en) | 2017-08-27 | 2023-09-13 | Nicira, Inc. | Performing in-line service in public cloud |
US11343229B2 (en) | 2018-06-28 | 2022-05-24 | Vmware, Inc. | Managed forwarding element detecting invalid packet addresses |
US11374794B2 (en) | 2018-08-24 | 2022-06-28 | Vmware, Inc. | Transitive routing in public cloud |
CN112491572B (zh) * | 2019-09-12 | 2022-01-21 | 华为技术有限公司 | 终端之间连接状态的预测方法、装置和分析设备 |
CN115994036B (zh) * | 2023-03-22 | 2023-06-02 | 北京腾达泰源科技有限公司 | 云平台租户隔离方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299929A (zh) * | 2011-09-15 | 2011-12-28 | 北京天地云箱科技有限公司 | 虚拟机的访问控制方法、系统和装置 |
CN102339444A (zh) * | 2010-07-27 | 2012-02-01 | 戴元顺 | 云超市系统 |
CN102801729A (zh) * | 2012-08-13 | 2012-11-28 | 福建星网锐捷网络有限公司 | 虚拟机报文转发方法、网络交换设备及通信系统 |
CN103118149A (zh) * | 2013-03-04 | 2013-05-22 | 华为技术有限公司 | 同一租户内服务器间的通信控制方法及网络设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8700811B2 (en) * | 2010-05-25 | 2014-04-15 | Microsoft Corporation | Virtual machine I/O multipath configuration |
US8819235B2 (en) * | 2010-10-20 | 2014-08-26 | International Business Machines Corporation | Multi-adapter link aggregation for adapters with hardware based virtual bridges |
-
2014
- 2014-04-28 CN CN201410175324.9A patent/CN105099953B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102339444A (zh) * | 2010-07-27 | 2012-02-01 | 戴元顺 | 云超市系统 |
CN102299929A (zh) * | 2011-09-15 | 2011-12-28 | 北京天地云箱科技有限公司 | 虚拟机的访问控制方法、系统和装置 |
CN102801729A (zh) * | 2012-08-13 | 2012-11-28 | 福建星网锐捷网络有限公司 | 虚拟机报文转发方法、网络交换设备及通信系统 |
CN103118149A (zh) * | 2013-03-04 | 2013-05-22 | 华为技术有限公司 | 同一租户内服务器间的通信控制方法及网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN105099953A (zh) | 2015-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105099953B (zh) | 云数据中心虚拟网络的隔离方法与装置 | |
CN105812260B (zh) | 一种控制mac地址转发表发送的方法、装置及系统 | |
CN109462534B (zh) | 区域互联控制器、区域互联控制方法以及计算机存储介质 | |
CN104702522B (zh) | 软件定义网络中路由数据的计算机实现方法、装置、控制器 | |
CN104202264B (zh) | 云化数据中心网络的承载资源分配方法、装置及系统 | |
CN103930882B (zh) | 具有中间盒的网络架构 | |
CN103369027B (zh) | 混合云环境中的位置感知虚拟服务配备 | |
CN104639372B (zh) | 基于sdn的覆盖网络和物理网络的关联方法及系统 | |
CN104702512B (zh) | 为软件定义网络提供网络管理的分级控制系统及计算机实现方法 | |
CN104125110B (zh) | 网络资源监控方法及装置 | |
CN104798356B (zh) | 用于控制水平扩展软件应用中的利用率的方法和装置 | |
CN103929368B (zh) | 多业务单元负载均衡方法及装置 | |
CN103348635B (zh) | 网络系统、控制单元和最优路由控制方法 | |
CN104348724B (zh) | 一种支持多租户的数据转发方法和装置 | |
US10630508B2 (en) | Dynamic customer VLAN identifiers in a telecommunications network | |
CN106953788A (zh) | 一种虚拟网络控制器及控制方法 | |
CN107896195A (zh) | 服务链编排方法、装置及服务链拓扑结构 | |
CN103716213B (zh) | 在固定接入网中和在用户设备中运行的方法 | |
CN104469845B (zh) | 一种报文处理方法、系统及设备 | |
CN106850459A (zh) | 一种实现虚拟网络负载均衡的方法及装置 | |
CN106059915A (zh) | 基于sdn控制器实现租户南北向流量限速的系统及方法 | |
CN108900551A (zh) | Sdn/nfv网络安全防护方法及装置 | |
CN104954239B (zh) | 一种内置cgn的宽带接入网关及其实现方法 | |
CN105791402B (zh) | 一种云计算平台网络虚拟化实现方法及相应插件和代理 | |
CN1879359A (zh) | 在MPLS网络中实现QoS保证的方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |