首页 / 专利库 / 软件 / 虚拟机迁移 / 一种虚拟机迁移方法和装置

一种虚拟机迁移方法和装置

阅读:903发布:2020-05-08

专利汇可以提供一种虚拟机迁移方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 提供了一种 虚拟机 迁移方法和装置,在共享内存区域中添加需要被安全处理的内存数据的内存地址信息及相关联的状态信息,如果所述状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。与现有的基于安全虚拟化的 虚拟机迁移 技术的低效率相比,本发明通过虚拟机监视器分配一段内存作为共享信息的内存区域,并将其地址告知安全处理器,虚拟机监视器和安全处理器通过这 块 共享内存区域传递信息,只需要专注于完成各自的任务,提升了虚拟机监视器和安全处理器之间的交互效率,减少中间调用环节的等待时间,从而极大的提升了虚拟机监视器和安全处理器各自的使用效率,减少迁移耗时。,下面是一种虚拟机迁移方法和装置专利的具体信息内容。

1.一种虚拟机迁移方法,其特征在于,包括:
在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息;
其中,所述内存数据需要被安全处理后迁移至接收方,所述状态信息用于指示所述内存数据是否已完成安全处理;以及
如果所述状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。
2.根据权利要求1所述的虚拟机迁移方法,其特征在于,在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之前还包括:
收集需要被安全处理的内存数据的内存地址信息,等待所述内存数据被安全处理。
3.根据权利要求1或2所述的虚拟机迁移方法,其特征在于,所述共享内存区域还包括控制字段,所述控制字段包含迁移起始标志和迁移结束标志。
4.根据权利要求3所述的虚拟机迁移方法,其特征在于,在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之前还包括:
对控制字段的迁移起始标志置位。
5.根据权利要求4所述的虚拟机迁移方法,其特征在于,在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之后还包括:
读取共享内存区域中的内存数据的内存地址信息,对相应的内存数据进行安全处理;
安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
6.根据权利要求5所述的虚拟机迁移方法,其特征在于,安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态的步骤之后还包括:
查看共享内存中是否存在被标记为已完成安全处理的内存地址信息,如果有,将相应的内存数据发送到数据接收方。
7.根据权利要求3所述的虚拟机迁移方法,其特征在于,当满足结束迁移条件时,将迁移结束标志进行置位,结束迁移流程。
8.一种虚拟机迁移装置,其特征在于,包括:
存储器
安全处理器;
处理器;
其中,所述存储器共享在所述处理器和所述安全处理器之间,用于存储内存数据的内存地址信息及相关联的状态信息;其中,所述内存数据需要被安全处理后迁移至接收方,所述状态信息用于指示所述内存数据是否已完成安全处理;
所述安全处理器被配置为对所述内存地址信息所指示的内存数据进行安全处理,并且在完成处理后将相关联的状态信息设置为已完成安全处理的状态;
所述处理器被配置为如果状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。
9.根据权利要求8所述的虚拟机迁移装置,其特征在于,所述处理器还被配置为收集需要被安全处理的内存数据的内存地址信息,等待所述内存数据被安全处理器处理。
10.根据权利要求8或9所述的虚拟机迁移装置,其特征在于,所述共享内存区域还包括控制字段,所述控制字段包含迁移起始标志和迁移结束标志。
11.根据权利要求10所述的虚拟机迁移装置,其特征在于,所述处理器被配置于对控制字段的迁移起始标志置位。
12.根据权利要求11所述的虚拟机迁移装置,其特征在于,所述安全处理器还被配置为读取共享内存区域中的内存数据的内存地址信息;
对相应的内存数据进行安全处理;
安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
13.根据权利要求12所述的虚拟机迁移装置,其特征在于,所述处理器还被配置为查看共享内存区域中是否存在被标记为已完成安全处理的内存数据,如果有,将相应的内存数据发送到数据接收方。
14.根据权利要求10所述的虚拟机迁移装置,其特征在于,所述处理器还被配置为当满足结束迁移条件时,将迁移结束标志进行置位,结束迁移流程。

说明书全文

一种虚拟机迁移方法和装置

技术领域

[0001] 本申请涉及安全虚拟化领域,具体而言,涉及基于安全虚拟化的虚拟机迁移技术。

背景技术

[0002] 虚拟化技术能够将一台物理主机虚拟化为多台虚拟主机,每个虚拟机都有自己的操作系统和应用服务程序。虚拟机迁移属于虚拟化技术中一个很重要的应用场景,它可以使物理主机的资源得到更合理的分配和管理。其中,普通虚拟机迁移的步骤为部署在处理器上的虚拟机监视器扫描到需要迁移的内存页之后,可以直接将内存页中的内容直接发送给接收方。
[0003] 为保护用户虚拟机的内存安全,现有技术提出了一种安全虚拟化技术,使用安全处理器对虚拟机中的内存数据进行安全处理。但是,启用了安全虚拟化后,实际使用中会导致虚拟机的迁移效率大大的降低,而虚拟机迁移又属于虚拟机技术中一个很重要的应用场景,显然这样大的迁移效率降低是用户不能接受的。发明内容
[0004] 本申请实施例的目的在于提供一种虚拟机迁移方法和装置,用以解决安全虚拟化条件下虚拟机迁移效率较低的问题。
[0005] 第一方面,本申请实施例提供了一种虚拟机迁移方法,包括:
[0006] 在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息;
[0007] 其中,所述内存数据需要被安全处理后迁移至接收方,所述状态信息用于指示所述内存数据是否已完成安全处理;以及
[0008] 如果所述状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。
[0009] 在一种可能的实现方式中,还包括,
[0010] 在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之前还包括:
[0011] 收集需要被安全处理的内存数据的内存地址信息,等待所述内存数据被安全处理。
[0012] 在一种可能的实现方式中,还包括,
[0013] 所述共享内存区域还包括控制字段,所述控制字段包含迁移起始标志和迁移结束标志。
[0014] 在一种可能的实现方式中,还包括,在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之前还包括:
[0015] 对控制字段的迁移起始标志置位。
[0016] 在一种可能的实现方式中,还包括,
[0017] 在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息的步骤之后还包括:
[0018] 读取共享内存区域中的内存数据的内存地址信息,对相应的内存数据进行安全处理;
[0019] 安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
[0020] 在一种可能的实现方式中,还包括,
[0021] 安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态的步骤之后还包括:
[0022] 查看共享内存中是否存在被标记为已完成安全处理的内存地址信息,如果有,将相应的内存数据发送到数据接收方。
[0023] 在一种可能的实现方式中,还包括,
[0024] 当满足结束迁移条件时,将迁移结束标志进行置位,结束迁移流程。
[0025] 第二方面,本申请实施例提供了一种虚拟机迁移装置,包括:
[0026] 存储器
[0027] 安全处理器;
[0028] 处理器;
[0029] 其中,所述存储器共享在所述处理器和所述安全处理器之间,用于存储内存数据的内存地址信息及相关联的状态信息;其中,所述内存数据需要被安全处理后迁移至接收方,所述状态信息用于指示所述内存数据是否已完成安全处理;
[0030] 所述安全处理器被配置为对所述内存地址信息所指示的内存数据进行安全处理,并且在完成处理后将相关联的状态信息设置为已完成安全处理的状态;
[0031] 所述处理器被配置为如果状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。
[0032] 在一种可能的实现方式中,还包括,
[0033] 所述处理器还被配置为收集需要被安全处理的内存数据的内存地址信息,等待所述内存数据被安全处理器处理。
[0034] 在一种可能的实现方式中,还包括,
[0035] 所述共享内存区域还包括控制字段,所述控制字段包含迁移起始标志和迁移结束标志。
[0036] 在一种可能的实现方式中,还包括,
[0037] 所述处理器被配置于对控制字段的迁移起始标志置位。
[0038] 在一种可能的实现方式中,还包括,
[0039] 所述安全处理器还被配置为读取共享内存区域中的内存数据的内存地址信息;
[0040] 对相应的内存数据进行安全处理;
[0041] 安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
[0042] 在一种可能的实现方式中,还包括,
[0043] 所述处理器还被配置为查看共享内存区域中是否存在被标记为已完成安全处理的内存数据,如果有,将相应的内存数据发送到数据接收方。
[0044] 在一种可能的实现方式中,还包括,
[0045] 所述处理器还被配置为当满足结束迁移条件时,将迁移结束标志进行置位,结束迁移流程。
[0046] 本发明提供了一种虚拟机迁移方法和装置,在共享内存区域中添加需要被安全处理的内存数据的内存地址信息及相关联的状态信息,如果所述状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。与现有的基于安全虚拟化的虚拟机迁移技术的低效率相比,本发明通过虚拟机监视器分配一段内存作为共享信息的内存区域,并将其地址告知安全处理器,虚拟机监视器和安全处理器通过这共享内存区域传递信息,只需要专注于完成各自的任务,提升了虚拟机监视器和安全处理器之间的交互效率,减少中间调用环节的等待时间,从而极大的提升了虚拟机监视器和安全处理器各自的使用效率,减少迁移耗时。附图说明
[0047] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0048] 图1为现有技术提供的一种虚拟机迁移方法;
[0049] 图2为本申请实施例提供的一种虚拟机迁移方法;
[0050] 图3为本申请实施例提供的另一种虚拟机迁移方法;
[0051] 图4为本申请实施例提供的另一种虚拟机迁移方法;
[0052] 图5为本申请实施例提供的一种虚拟机迁移装置。

具体实施方式

[0053] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0054] 现有技术中基于安全虚拟化技术的虚拟机的迁移方法,如图1所示,所述方法包括:
[0055] 由于基于安全虚拟化的虚拟机内存经过了硬件的加密,所以当虚拟机监视器扫描到需要迁移的内存页后,不能直接发送出去,需要让安全处理器预先进行安全处理,将其转化成接收方可以解密的加密数据。每当虚拟器监视器扫描到需要迁移的内存页之后,将该内存页的地址信息交给安全处理器,然后等待安全处理器处理结束,返回后虚拟机监视器继续进行扫描,查找下一个需要迁移的内存页。这种迁移方式中,虚拟机监视器和安全处理器的交互方式比较低效,从虚拟机监视器的度看,从扫描到需要迁移的内存页101到发送给接收方107,中间需要等待102-106这几个步骤完成,大量的时间浪费在了调用等待上;同样的,每当安全处理器处理完一个任务后,也需要等待虚拟机监视器下一个任务信息,安全处理器无法得到充分的利用,导致了迁移效率低下。
[0056] 本发明实施例提供了一种虚拟机迁移方法,如图2所示,所述方法包括:
[0057] 201、在共享内存区域中添加内存数据的内存地址信息及相关联的状态信息;
[0058] 在此之前,虚拟机迁移开始时,虚拟机监视器可以分配一段内存作为共享内存区域,并将其地址告知安全处理器。在虚拟机监视器分配好共享内存区域后,将共享内存区域的地址告知安全处理器,安全处理器接收到共享内存区域的地址后向虚拟机监视器返回响应消息。之后,虚拟机监视器和安全处理器可以通过这块共享内存区域传递信息。
[0059] 虚拟机监视器可以扫描获取需要安全处理和迁移的内存数据,需要被安全处理的内存数据可以是内存页。虚拟机监视器在共享内存区域中存储有相应内存页的内存地址和状态信息,内存地址可以告知安全处理器该内存页的具体位置,状态信息用于标记相关的内存页是否已经被安全处理过。初始状态下,状态信息默认是未处理状态。
[0060] 202、如果所述状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据。
[0061] 由于基于安全虚拟化的虚拟机内存数据经过了加密,所以当内存数据需要被迁移时,不能直接发送出去,需要让安全处理器预先进行安全处理。经过安全处理后的内存数据的相关联状态信息会被标记为已完成安全处理的状态,虚拟机监视器通过该状态信息知晓该内存数据是否可以迁移。
[0062] 本发明实施例提供了另一种虚拟机迁移方法,如图3所示,所述方法包括:
[0063] 301、将控制字段的迁移起始标志置位;
[0064] 302、进行数据迁移的处理;
[0065] 303、当满足结束迁移条件时,将迁移结束标志进行置位,结束迁移流程。
[0066] 控制字段是指由虚拟机监视器预先在所分配的共享内存区域中指定的字段,例如,该字段可以是2bits的字段,由迁移起始标志位和迁移结束标志位组成。
[0067] 在一种可能的实施方式中,控制字段可以由虚拟机监视器和安全处理器共同访问,其中虚拟机监视器对控制字段具有读写权限,而安全处理器对控制字段仅具有读权限。
[0068] 在开始迁移数据之前,由虚拟机监视器将控制字段的迁移起始标志置位,该动作执行后需要由虚拟机监视器告知安全处理器,使得安全处理器获知开始对共享内存数据中的内存数据进行安全处理的时机。
[0069] 满足结束迁移条件是指虚拟机监视器判断所有需要被迁移和安全处理的数据均已完成安全处理并发送给了接收方。
[0070] 此时虚拟机监视器将控制字段的迁移结束标志置位,该动作执行后也需要由虚拟机监视器告知安全处理器。此时,安全处理器不再需要读取共享内存区域中的内存数据进行安全处理。
[0071] 本发明实施例提供了另一种虚拟机迁移方法,如图4所示,所述方法包括:
[0072] 401、收集需要被安全处理的内存地址信息,写入预先分配的共享内存区域中;
[0073] 虚拟机监视器根据需要迁移的内存数据,将其内存地址信息写入预先分配的共享内存区域,为安全处理器进行安全处理提供数据基础
[0074] 402、读取共享内存区域中的内存地址相关的内存数据;
[0075] 403、对相应的内存数据进行安全处理;
[0076] 404、安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
[0077] 安全处理器可以读取共享内存区域中需要处理的内存地址信息数据进行安全处理,安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。上述过程对于安全处理器而言是一个循环处理的过程,每次循环顺序执行步骤402-404的过程,直到共享内存区域中的内存数据状态信息都被设置为已完成安全处理的状态,此时控制字段的迁移结束标志被置位。
[0078] 405、查看共享内存中是否存在被标记为已完成安全处理的内存数据,如果有,将相应的内存数据发送到数据接收方。
[0079] 虚拟机监视器会重复执行查看共享内存中是否存在被标记为已完成安全处理的内存数据的操作,当查看到已被安全处理过的内存数据时,由虚拟机监视器执行将内存数据发送给接收方的操作,完成实际的数据迁移。根据数据迁移的目标对象,数据接收方可以是物理主机,或其他虚拟机。
[0080] 本发明实施例还提供了一种虚拟机迁移装置,如图5所示,所述装置包括:
[0081] 处理器501;
[0082] 安全处理器502;和
[0083] 存储器503,共享在所述处理器501和所述安全处理器502之间,用于存储需要被安全处理的内存数据的内存地址信息及相关联的状态信息;
[0084] 其中,所述安全处理器502被配置为对所述内存地址信息所指示的内存数据进行安全处理,并且在完成处理后将相关联的状态信息设置为已完成安全处理的状态;
[0085] 所述处理器501被配置为如果状态信息指示相关联的内存数据已完成安全处理,迁移所述内存数据
[0086] 在具体实施中,所述处理器501收集需要被安全处理的内存数据的内存地址信息写入所述共享内存区域中,供所述安全处理器502处理。
[0087] 在具体实施中,所述共享内存区域还包括控制字段,所述控制字段包含迁移起始标志和迁移结束标志。
[0088] 在具体实施中,所述处理器501在控制字段的迁移起始标志置位后,所述安全处理器502读取共享内存区域中的内存数据的内存地址信息;对相应的内存数据进行安全处理;所述安全处理完成后将该内存数据的状态信息设置为已完成安全处理的状态。
[0089] 在具体实施中,所述处理器501查看共享内存中是否存在被标记为已完成安全处理的内存数据,如果有,将该数据发送到数据接收方。
[0090] 在具体实施中,当满足结束迁移条件时,所述处理器501将迁移结束标志进行置位,结束迁移流程。
[0091] 通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程。
[0092] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0093] 以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈