[发明专利]虚拟机环境中的虚拟双控制模块之间的通信有效
申请号: | 201710526265.9 | 申请日: | 2017-06-30 |
公开(公告)号: | CN109213702B | 公开(公告)日: | 2022-08-30 |
发明(设计)人: | 杨利锋;高健;徐鑫磊;贾瑞勇;刘友生 | 申请(专利权)人: | 伊姆西IP控股有限责任公司 |
主分类号: | G06F13/16 | 分类号: | G06F13/16;G06F11/20;G06F11/16;G06F3/06 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华;丁君军 |
地址: | 美国马*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 环境 中的 虚拟 控制 模块 之间 通信 | ||
1.一种计算机实现的方法,包括:
在虚拟存储装置中部署第一虚拟控制模块和第二虚拟控制模块,所述第一虚拟控制模块和所述第二虚拟控制模块互为冗余;
创建对物理外围设备互连Express(PCIe)交换机进行仿真的虚拟PCIe交换机;以及
经由所述虚拟PCIe交换机来在所述第一虚拟控制模块与所述第二虚拟控制模块之间同步高速缓存数据,
其中部署第一虚拟控制模块和第二虚拟控制模块包括使用单根I/O虚拟化在所述第一虚拟控制模块和所述第二虚拟控制模块中的每个虚拟控制模块内部署相应的虚拟PCIe接口以将所述第一虚拟控制模块和所述第二虚拟控制模块对接到所述虚拟PCIe交换机,所述第一虚拟控制模块和所述第二虚拟控制模块通过所述单根I/O虚拟化能够共享单个PCIe硬件接口,
并且其中所述虚拟PCIe接口包括事务层、数据链路层和硬件抽象层,所述事务层包括多个虚拟电路作为主接口以用于与所述虚拟PCIe接口中的其他组件通信,所述数据链路层包括PCIe传输模块以用于实现链路层的数据通信,并且所述硬件抽象层被配置和操作以对硬件电路进行抽象以向所述事务层和所述数据链路层提供硬件和虚拟硬件无差别的操作接口,
并且其中所述硬件抽象层包括DMA模块,所述DMA模块被配置和操作以经由所述虚拟PCIe交换机提供所述第一虚拟控制模块与所述第二虚拟控制模块之间的直接存储器访问(DMA)操作,所述DMA操作在高速缓存数据经由所述虚拟PCIe交换机在所述第一虚拟控制模块与所述第二虚拟控制模块之间的同步中被使用。
2.根据权利要求1所述的方法,其中创建所述虚拟PCIe交换机包括:
通过仿真所述物理PCIe交换机的以下各项中的至少一项来创建虚拟PCIe交换机:PCIe地址转换、输入输出(I/O)路由、I/O解析以及I/O隔离。
3.根据权利要求2所述的方法,其中创建所述虚拟PCIe交换机还包括:
生成所述第一虚拟控制模块所处的第一PCIe地址空间与所述第二虚拟控制模块所处的第二PCIe地址空间之间的地址转换;以及
基于所述地址转换将所述第一PCIe地址空间中的第一地址转换成所述第二PCIe地址空间中的第二地址。
4.根据权利要求1所述的方法,其中同步所述高速缓存数据包括:
将来自所述第一虚拟控制模块的所述高速缓存数据发送到所述第二虚拟控制模块;以及
向所述虚拟存储装置的虚拟盘阵列写入所述高速缓存数据。
5.根据权利要求1所述的方法,其中同步所述高速缓存数据包括:
通过所述虚拟PCIe交换机来执行所述第一虚拟控制模块中的第一硬件抽象层与所述第二虚拟控制模块中的第二硬件抽象层之间的直接存储器访问。
6.根据权利要求1所述的方法,还包括:
使用所述虚拟PCIe交换机来创建所述第一虚拟控制模块和所述第二虚拟控制模块中的至少一个与支持PCIe的特定物理设备之间的通信。
7.根据权利要求6所述的方法,还包括:
向所述第一虚拟控制模块和所述第二虚拟控制模块分配路由标识;以及
向所述特定物理设备中的多个虚拟功能分配路由标识,所述多个虚拟功能中的一个虚拟功能与所述特定物理设备的一部分物理资源相关联。
8.根据权利要求6所述的方法,还包括:
基于从所述特定物理设备接收到的消息反馈,来动态调整所述虚拟PCIe交换机处的缓冲区的大小。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于伊姆西IP控股有限责任公司,未经伊姆西IP控股有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710526265.9/1.html,转载请声明来源钻瓜专利网。