一种虚拟机的数据交换方法、装置及物理主机制造方法及图纸

技术编号:10054640 阅读:216 留言:0更新日期:2014-05-16 04:16
本发明专利技术实施例涉及虚拟化技术领域。本发明专利技术实施例提供一种虚拟机的数据交换方法,获取源物理主机内的第一虚拟机待发送的第一数据包;根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,确定与所述第一虚拟机对应的虚拟队列组作为目标虚拟队列组;从所述目标虚拟队列中确定目标虚拟队列组,再确定与所述目标虚拟队列组相映射的目标物理队列,并通过所述目标物理队列发送所述第一数据包,采用本方案可以在一定程度上保证虚拟机的数据交换效率。本发明专利技术实施例还提供一种虚拟机的数据交换装置、物理主机和集群系统。

【技术实现步骤摘要】
一种虚拟机的数据交换方法、装置及物理主机
本专利技术涉及通信
,尤其涉及一种虚拟机的数据交换方法、装置及物理主机。
技术介绍
在虚拟化技术产生以后,通常一台物理主机上包括多个虚拟机(VM,VirtualMachine),且所述物理主机上有至少一个包含多个物理队列的物理网卡,所述多个虚拟机共享该物理主机的网卡资源,每个虚拟机都可以通过位于该物理主机上的任一个物理网卡的任一个物理队列收发数据,这种资源分配方式会导致部分虚拟机占用大量的物理队列收发数据包,其他虚拟机分配不到合理数量的物理队列收发数据包,导致虚拟机的数据交换效率得不到保证。
技术实现思路
本专利技术实施例提供一种虚拟机的数据交换方法、装置及物理主机,用于在一定程度上保证虚拟机的数据交换效率。第一方面,本专利技术实施例提供提出了一种虚拟机的数据交换方法,该方法包括:获取源物理主机内的第一虚拟机待发送的第一数据包,所述第一数据包包括所述第一虚拟机地址信息和目的物理主机地址信息;根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,确定与所述第一虚拟机地址信息表示的所述第一虚拟机对应的虚拟队列组作为目标虚拟队列组,所述多个虚拟队列组中的每个虚拟队列组均包含至少一个虚拟队列,所述多个虚拟队列组中的虚拟队列与所述源物理主机内的物理队列呈一一映射关系;从所述目标虚拟队列组中确定目标虚拟队列;通过与所述目标虚拟队列相映射的目标物理队列向所述目的物理主机地址信息对应的目的物理主机发送所述第一数据包。结合第一方面,在第一种实现方式下,该方法还包括:根据所述多个虚拟机的业务要求和所述多个虚拟队列组中包含的虚拟队列的数目设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。结合第一方面的第一种实现方式,在第二种实现方式下,所述根据所述多个虚拟机的业务要求和所述多个虚拟队列组中包含的虚拟队列的数目设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,包括:根据虚拟队列组中包括的虚拟队列的数目,为所述多个虚拟队列组中的每个虚拟队列组设置对应的优先级,其中优先级高的虚拟队列组中包含的虚拟队列的数目多于优先级低的虚拟队列组中包含的虚拟队列的数目;根据虚拟机的业务要求设置虚拟机的优先级;根据虚拟机的优先级与虚拟队列组的优先级设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。结合第一方面的第二种实现方式,在第三种实现方式下,所述根据虚拟机的优先级与虚拟队列组的优先级设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,包括:当虚拟机的优先级等级数目与虚拟队列组的优先级等级数目相同时,根据虚拟队列组的优先级等级不低于具有对应关系的虚拟机的优先级等级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系;或者,当虚拟机的优先级等级数目比虚拟队列组的优先级等级数目多时,根据优先级高的虚拟机对应的虚拟队列组的优先级高于优先级低的虚拟机对应的虚拟队列组的优先级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,其中至少一个虚拟队列组对应于至少两个优先级等级的虚拟机;或者,当虚拟机的优先级等级数目比虚拟队列组的优先级等级数目少时,根据优先级高的虚拟机对应的虚拟队列组的优先级高于优先级低的虚拟机对应的虚拟队列组的优先级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,其中至少一个优先级等级的虚拟机对应于至少两个虚拟队列组。结合第一方面的第二种实现方式或者第一方面的第三种实现方式,在第四种实现方式下,所述业务要求是指业务对响应及时性的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对响应及时性的要求,设置所述虚拟机的优先级,其中,其上运行的业务对响应及时性要求高的虚拟机的优先级高于其上运行的业务对响应及时性要求低的虚拟机的优先级。结合第一方面的第二种实现方式或者第一方面的第三种实现方式,在第五种实现方式下,所述业务要求是指业务对网络资源的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对网络资源的要求,设置所述虚拟机的优先级,其中,其上运行的业务对网络资源要求高的虚拟机的优先级高于其上运行的业务对网络资源要求低的虚拟机的优先级。结合第一方面的第二种实现方式或者第一方面的第三种实现方式,在第六种实现方式下,所述业务要求是指业务对网络服务质量的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对网络服务质量的要求,设置所述虚拟机的优先级,其中,其上运行的业务对网络服务质量要求高的虚拟机的优先级高于其上运行的业务对网络服务质量要求低的虚拟机的优先级。结合第一方面或者第一方面的第一种实现方式至第一方面的第六种实现方式中的任一种实现方式,在第七种实现方式下,所述从所述目标虚拟队列组中确定目标虚拟队列,包括:基于所述第一数据包包含的所述第一虚拟机地址信息和所述目标物理主机的地址信息,通过调用Hash函数计算出目标虚拟队列的标识;基于所述标识从所述目标虚拟队列组中确定对应的目标虚拟队列。结合第一方面或者第一方面的第一种实现方式至第一方面的第七种实现方式中的任一种实现方式,在第八种实现方式下,通过所述目标物理队列接收来自所述目的物理主机的第二数据包,所述第二数据包包括目的地址信息和所述目的物理主机地址信息,所述目的地址信息是所述第一虚拟机地址信息。第二方面,本专利技术实施例提供一种虚拟机的数据交换装置,该装置包括:获取单元,用于获取源物理主机内的第一虚拟机待发送的第一数据包,所述第一数据包包括所述第一虚拟机地址信息和目的物理主机地址信息;确定单元,用于根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,确定与所述第一虚拟机地址信息表示的所述第一虚拟机对应的虚拟队列组作为目标虚拟队列组,所述多个虚拟队列组中的每个虚拟队列组均包含至少一个虚拟队列,所述多个虚拟队列组中的虚拟队列与所述源物理主机内的物理队列呈一一映射关系;所述确定单元还用于从所述目标虚拟队列组中确定目标虚拟队列;收发单元,用于通过与所述目标虚拟队列相映射的目标物理队列向所述目的物理主机地址信息对应的目的物理主机发送所述第一数据包。结合第二方面,在第一种实现方式下,该装置还包括:设置单元,用于根据所述多个虚拟机的业务要求和所述多个虚拟队列组中包含的虚拟队列的数目设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。结合第二方面的第一种实现方式,在第二种实现方式下,所述设置单元具体用于根据虚拟队列组中包括的虚拟队列的数目,为所述多个虚拟队列组中的每个虚拟队列组设置对应的优先级,其中优先级高的虚拟队列组中包含的虚拟队列的数目多于优先级低的虚拟队列组中包含的虚拟队列的数目;根据虚拟机的业务要求设置虚拟机的优先级;以及,根据虚拟机的优先级与虚拟队列组的优先级设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。结合第二方面的第二种实现方式,在第三种实现方式下,在所本文档来自技高网...
一种虚拟机的数据交换方法、装置及物理主机

【技术保护点】
一种虚拟机的数据交换方法,其特征在于,所述方法包括:获取源物理主机内的第一虚拟机待发送的第一数据包,所述第一数据包包括所述第一虚拟机地址信息和目的物理主机地址信息;根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,确定与所述第一虚拟机地址信息表示的所述第一虚拟机对应的虚拟队列组作为目标虚拟队列组,所述多个虚拟队列组中的每个虚拟队列组均包含至少一个虚拟队列,所述多个虚拟队列组中的虚拟队列与所述源物理主机内的物理队列呈一一映射关系;从所述目标虚拟队列组中确定目标虚拟队列;通过与所述目标虚拟队列相映射的目标物理队列向所述目的物理主机地址信息对应的目的物理主机发送所述第一数据包。

【技术特征摘要】
1.一种虚拟机的数据交换方法,其特征在于,所述方法包括:获取源物理主机内的第一虚拟机待发送的第一数据包,所述第一数据包包括所述第一虚拟机地址信息和目的物理主机地址信息;根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,确定与所述第一虚拟机地址信息表示的所述第一虚拟机对应的虚拟队列组作为目标虚拟队列组,所述多个虚拟队列组中的每个虚拟队列组均包含至少一个虚拟队列,所述多个虚拟队列组中的虚拟队列与所述源物理主机内的物理队列呈一一映射关系;从所述目标虚拟队列组中确定目标虚拟队列;通过与所述目标虚拟队列相映射的目标物理队列向所述目的物理主机地址信息对应的目的物理主机发送所述第一数据包。2.根据权利要求1所述的虚拟机的数据交换方法,其特征在于,还包括:根据所述多个虚拟机的业务要求和所述多个虚拟队列组中包含的虚拟队列的数目设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。3.根据权利要求2所述的虚拟机的数据交换方法,其特征在于,所述根据所述多个虚拟机的业务要求和所述多个虚拟队列组中包含的虚拟队列的数目设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,包括:根据虚拟队列组中包括的虚拟队列的数目,为所述多个虚拟队列组中的每个虚拟队列组设置对应的优先级,其中优先级高的虚拟队列组中包含的虚拟队列的数目多于优先级低的虚拟队列组中包含的虚拟队列的数目;根据虚拟机的业务要求设置虚拟机的优先级;根据虚拟机的优先级与虚拟队列组的优先级设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系。4.根据权利要求3所述的虚拟机的数据交换方法,其特征在于,所述根据虚拟机的优先级与虚拟队列组的优先级设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,包括:当虚拟机的优先级等级数目与虚拟队列组的优先级等级数目相同时,根据虚拟队列组的优先级等级不低于具有对应关系的虚拟机的优先级等级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系;或者,当虚拟机的优先级等级数目比虚拟队列组的优先级等级数目多时,根据优先级高的虚拟机对应的虚拟队列组的优先级高于优先级低的虚拟机对应的虚拟队列组的优先级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,其中至少一个虚拟队列组对应于至少两个优先级等级的虚拟机;或者,当虚拟机的优先级等级数目比虚拟队列组的优先级等级数目少时,根据优先级高的虚拟机对应的虚拟队列组的优先级高于优先级低的虚拟机对应的虚拟队列组的优先级的规则,设置所述源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对应关系,其中至少一个优先级等级的虚拟机对应于至少两个虚拟队列组。5.根据权利要求3或4所述的虚拟机的数据交换方法,其特征在于:所述业务要求是指业务对响应及时性的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对响应及时性的要求,设置所述虚拟机的优先级,其中,其上运行的业务对响应及时性要求高的虚拟机的优先级高于其上运行的业务对响应及时性要求低的虚拟机的优先级。6.根据权利要求3或4所述的虚拟机的数据交换方法,其特征在于:所述业务要求是指业务对网络资源的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对网络资源的要求,设置所述虚拟机的优先级,其中,其上运行的业务对网络资源要求高的虚拟机的优先级高于其上运行的业务对网络资源要求低的虚拟机的优先级。7.根据权利要求3或4所述的虚拟机的数据交换方法,其特征在于:所述业务要求是指业务对网络服务质量的要求,所述根据虚拟机的业务要求设置虚拟机的优先级,包括:根据虚拟机上运行的业务对网络服务质量的要求,设置所述虚拟机的优先级,其中,其上运行的业务对网络服务质量要求高的虚拟机的优先级高于其上运行的业务对网络服务质量要求低的虚拟机的优先级。8.根据权利要求1-4任一项所述的虚拟机的数据交换方法,其特征在于,所述从所述目标虚拟队列组中确定目标虚拟队列,包括:基于所述第一数据包包含的所述第一虚拟机地址信息和所述目标物理主机的地址信息,通过调用Hash函数计算出目标虚拟队列的标识;基于所述标识从所述目标虚拟队列组中确定对应的目标虚拟队列。9.根据权利要求1-4任一项所述的虚拟机的数据交换方法,其特征在于,所述方法还包括:通过所述目标物理队列接收来自所述目的物理主机的第二数据包,所述第二数据包包括目的地址信息和所述目的物理主机地址信息,所述目的地址信息是所述第一虚拟机地址信息。10.一种虚拟机的数据交换装置,其特征在于,包括:获取单元,用于获取源物理主机内的第一虚拟机待发送的第一数据包,所述第一数据包包括所述第一虚拟机地址信息和目的物理主机地址信息;确定单元,用于根据源物理主机内的多个虚拟机与所述源物理主机关联的多个虚拟队列组的对...

【专利技术属性】
技术研发人员:丁天虹
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1