[发明专利]一种智能网卡虚拟机脏页的硬件标记实现方法有效
申请号: | 202211125632.1 | 申请日: | 2022-09-16 |
公开(公告)号: | CN115586943B | 公开(公告)日: | 2023-08-15 |
发明(设计)人: | 金磊 | 申请(专利权)人: | 杭州熠芯科技有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50;G06F12/1009 |
代理公司: | 浙江得恒知识产权代理有限公司 33504 | 代理人: | 赵芳 |
地址: | 310000 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 智能 网卡 虚拟机 硬件 标记 实现 方法 | ||
本发明公开了一种智能网卡虚拟机脏页的硬件标记实现方法,包括:S1.建立脏页位图单元,并基于脏页位图单元构建脏页位图标记映射空间;其中脏页位图单元包含数个脏页标记位;S2.构建脏页标记处理通道,通过脏页标记处理通道过滤分析和地址转换,将硬件对虚拟设备虚拟物理内存的访问转换成对脏页位图标记映射空间的虚拟物理内存访问,得到脏页标记请求。本发明可以使虚拟机用户可以更准确、快速地获得智能网卡虚拟化设备所消耗的有效脏页地址,极大地节省虚拟机热迁移中预拷贝过程的执行时间。
技术领域
本发明涉及虚拟机脏页管理技术领域,尤其涉及一种智能网卡虚拟机脏页的硬件标记实现方法。
背景技术
云化时代,虚拟机热迁移作为云计算平台核心技术之一,是各云计算厂商深入钻研的底层技术。执行虚拟机热迁移时,通常先将源虚拟机内所有虚拟物理内存都先标记为脏页,然后等待迁移。脏页拷贝会在预拷贝阶段和虚拟机切换阶段发生,预拷贝阶段先完成大部分脏页内存的拷贝工作,由于在预拷贝执行过程中仍然可能产生新的脏页,所以在虚拟机切换阶段还需进行一次脏页拷贝。对于大规模虚拟机来说,预拷贝阶段的执行时间会比较长。加速虚拟机热迁移已经成为云计算厂商及其用户的迫切需求,用更高效的方法解决脏页标记问题就能提高热迁移的效率。
绝大多数智能网卡都支持虚拟化技术:即将一个物理网卡设备虚拟分割成多个虚拟网卡设备,再将不同的虚拟网卡设备分配给不同的虚拟机使用。同时,网卡作为网络数据收发的主要硬件处理设备,涉及大量内存读写操作。采用传统软件方式把分配给虚拟网卡的所有虚拟内存空间都标记为脏页,会严重影响虚拟机脏页拷贝的执行效率,继而影响虚拟机热迁移的执行速度。如何利用硬件标记方法代替传统软件标记方式,安全地完成脏页标记,并且能够做到更准确、快速就是本发明所具备的意义。
发明内容
本发明的目的是针对现有技术的缺陷,提供了一种智能网卡虚拟机脏页的硬件标记实现方法,采用一种具有可行性的过滤分析提取出有效的内存访问转换为脏页标记请求;通过汇聚标记请求节省传输带宽;多通道并行进脏页标记提高效率。并涉及安全可靠地解决并行标记脏页时可能遇到的访问竞争冲突问题。
为了实现以上目的,本发明采用以下技术方案:
一种智能网卡虚拟机脏页的硬件标记实现方法,包括:
S1.建立脏页位图单元,并基于脏页位图单元构建脏页位图标记映射空间;其中脏页位图单元包含数个脏页标记位;
S2.构建脏页标记处理通道,通过脏页标记处理通道过滤分析和地址转换,将硬件对虚拟设备虚拟物理内存的访问转换成对脏页位图标记映射空间的虚拟物理内存访问,得到脏页标记请求;
S3.当得到脏页标记请求时,进行实际的脏页标记。
进一步的,所述步骤S1中构建脏页位图标记映射空间还包括对脏页位图标记进行配置;其中配置包括:虚拟智能网卡在虚拟机内的设备虚拟物理起始地址;虚拟智能网卡在虚拟机内的设备虚拟物理空间大小;虚拟机页面大小;脏页位图标记映射空间的虚拟物理起始地址。
进一步的,所述步骤S2中脏页标记处理通道包括标记请求缓存器、请求过滤器、地址分析器、无锁处理器。
进一步的,所述请求过滤器包括:
检查内存请求是否由虚拟队列发起;
检查内存请求是否为写请求;
检查访问的内存是否为队列描述符写操作;
检查内存请求访问的是否为中断事件空间;
检查内存访问是否为数据缓存区。
进一步的,所述地址分析器包括:对硬件访问的虚拟设备虚拟物理地址进行地址转换,转换为脏页位图标记映射空间内脏页位图单元的地址和脏页标记位的信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州熠芯科技有限公司,未经杭州熠芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211125632.1/2.html,转载请声明来源钻瓜专利网。