CN109165080A - 虚拟机在线迁移过程内存数据的保护方法、装置及物理机 - Google Patents

虚拟机在线迁移过程内存数据的保护方法、装置及物理机 Download PDF

Info

Publication number
CN109165080A
CN109165080A CN201810907541.0A CN201810907541A CN109165080A CN 109165080 A CN109165080 A CN 109165080A CN 201810907541 A CN201810907541 A CN 201810907541A CN 109165080 A CN109165080 A CN 109165080A
Authority
CN
China
Prior art keywords
physical machine
encryption
machine
memory
data
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.)
Pending
Application number
CN201810907541.0A
Other languages
English (en)
Inventor
张国强
张炎民
王宇阳
谢浩安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GUANGZHOU WINHONG INFORMATION TECHNOLOGY Co Ltd
Original Assignee
GUANGZHOU WINHONG INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by GUANGZHOU WINHONG INFORMATION TECHNOLOGY Co Ltd filed Critical GUANGZHOU WINHONG INFORMATION TECHNOLOGY Co Ltd
Priority to CN201810907541.0A priority Critical patent/CN109165080A/zh
Publication of CN109165080A publication Critical patent/CN109165080A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及互联网技术领域,具体涉及一种虚拟机在线迁移过程内存数据的保护方法、装置及物理机,源物理机向目标物理机进行虚拟机迁移过程中,该源物理机先发送事先加密好的虚拟机的内存数据,同时还将记录该虚拟机转移过程中的内存变化数据,并对该内存变化数据进行加密后发送至目标物理机,直至该内存变化数据很小时停止向目标物理机传输,使得一方面保证了数据传输速度,另一方面保证了数据传输的安全性。

Description

虚拟机在线迁移过程内存数据的保护方法、装置及物理机
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种虚拟机在线迁移过程内存数据的保护方法、装置及物理机。
背景技术
虚拟化在云计算中广泛应用,虚拟机在线迁移是虚拟化平台中一项非常重要的技术,可以在不停机的情况下将虚拟机迁从一台物理机移到另外一台物理机上,迁移的过程中虚拟机中的业务不受影响。如在一个物理机上的虚拟机可能运行比较忙,需要其他物理机分担负载,则需要进行虚拟机的在线迁移,又或者存在物理机需要进行维护,也需要将该台物理机上的虚拟机迁移到其他物理机上。
目前主流的虚拟化技术包括VMware vSphere、Xen和KVM在在线迁移的处理过程中,虚拟机内存的拷贝都是明文传输的,而在虚拟机内存中都会包含很多用户数据,这些数据可能是敏感的数据,在对安全性要求比较高的环境里,如果监听者在网络中放置了抓包的工具,则有可能会导致敏感的用户数据被截获而造成数据泄露。
发明内容
本发明的目的在于提供一种虚拟机在线迁移过程内存数据的保护方法,以实现虚拟机在线迁移过程中,其内存数据进行保密传输,提高数据传输的安全性。
本发明的另一目的在于提供一种虚拟机在线迁移过程内存数据的保护装置,以实现虚拟机在线迁移过程中,其内存数据进行保密传输,提高数据传输的安全性。
本发明的另一目的在于提供一种物理机,以实现虚拟机在线迁移过程中,其内存数据进行保密传输,提高数据传输的安全性。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种虚拟机在线迁移过程内存数据的保护方法,应用于相互通信的源物理机和目标物理机,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述方法包括:所述源物理机将启动安装于所述源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;所述源物理机还利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机;所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;所述源物理机还将持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录;所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
第二方面,本发明实施例还提供了一种虚拟机在线迁移过程内存数据的保护方法,应用于源物理机,所述源物理机与目标物理机通信,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述方法包括:启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
第三方面,本发明实施例还提供了一种虚拟机在线迁移过程内存数据的保护装置,应用于源物理机,所述源物理机与目标物理机通信,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述装置包括:启动模块,用于启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;发送模块,用于利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;记录模块,用于持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
第四方面,本发明实施例还提供了一种物理机,所述物理机包括存储器和处理器,所述存储器用于存储计算机程序代码,所述处理器用于执行存储于所述存储器中的计算机程序代码以实现所述的虚拟机在线迁移过程内存数据的保护方法。
本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法、装置及物理机,源物理机向目标物理机进行虚拟机迁移过程中,该源物理机先发送事先加密好的虚拟机的内存数据,同时还将记录该虚拟机转移过程中的内存变化数据,并对该内存变化数据进行加密后发送至目标物理机,直至该内存变化数据很小时停止向目标物理机传输,使得一方面保证了数据传输速度,另一方面保证了数据传输的安全性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的一种物理机的结构示意图
图2示出了本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法的流程示意图。
图3示出了本发明实施例提供的另一种虚拟机在线迁移过程内存数据的保护方法的流程示意图。
图4示出了本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护装置的功能模块示意图。
图示:100-物理机;110-虚拟机在线迁移过程内存数据的保护装置;120-存储器;130-存储控制器;140-处理器;150-外设借口;160-输入输出单元;170-音频单元;180-显示单元;190-通信单元;111-启动模块;112-发送模块;113-记录模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法应用于物理机集群中任意两台需要进行虚拟机转换的源物理机和目标物理机,每台物理机上均运行有一个虚拟化软件,该虚拟化软件上可加载算法模块,容易理解的,该算法模块可以为对称加密算法模块,也可以为非对称加密算法模块。此外,每台物理机上也可安装加密卡这一硬件实现对称算法或非对称算法。
亦即是说,该源物理机上运行的虚拟化软件上设置有对称加密模块,该对称加密模块用于产生加密秘钥,通过该加密秘钥对源物理机上运行的虚拟机产生的内存数据进行加密;该目标物理机上运行的虚拟化软件上设置有非对称加密模块,该非对称加密模块用于产生公钥和私钥,该目标物理机为虚拟机需迁移的宿主机,该目标物理机可将产生的公钥广播至整个物理机集群中,但同一时段内只有一个源物理机使用其私钥与目标物理机进行虚拟机在线迁移。
需要说明的是,物理机集群中任一一台物理机即可为源物理机,也可以为目标物理机,即是说,在本次迁移中,该台物理机为源物理机,但在下次迁移中,该台物理机也可能为目标物理机。
通过本发明实施例提供的虚拟机在线迁移内存数据保护方法,可通过源物理机产生的加密秘钥对内存数据进行加密,同时,该源物理机还将虚拟机迁移过程中虚拟机的内存变化数据进行实时记录和加密,再通过目标物理机的公钥对源物理机产生的加密秘钥进行加密,通过两重加密机制保证了内存数据从源物理机传输到目标物理机的安全性,同时由于源物理机实时记录了虚拟机迁移过程中的内存变化数据,保证了虚拟机迁移过程中其内存数据的完整。
请参照图1,是本发明实施例提供的一种物理机100的结构示意图,该物理机100可以为台式电脑等智能电子设备,该物理机100包括虚拟机在线迁移过程中内存数据的保护装置110、存储器120、存储控制器130、处理器140、外设接口150、输入输出单元160、音频单元170、显示单元180以及通信单元190。
所述存储器120、存储控制器130、处理器140、外设接口150、输入输出单元160、音频单元170、显示单元180、通信单元190各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述虚拟机在线迁移过程内存数据的保护装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述物理机100的操作系统(operating system,OS)中的软件功能模块。所述处理器140用于执行存储器120中存储的可执行模块,例如所述虚拟机在线迁移过程内存数据的保护装置110包括的软件功能模块或计算机程序。
其中,存储器120可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器120用于存储程序,所述处理器140在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的数据采集端100所执行的方法可以应用于处理器140中,或者由处理器140实现。
处理器140可能是一种集成电路芯片,具有信号的处理能力。上述的处理器140可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器140也可以是任何常规的处理器140等。
所述外设接口150将各种输入/输出装置耦合至处理器140以及存储器120。在一些实施例中,外设接口150,处理器140以及存储控制器130可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
输入输出单元160用于提供给用户输入数据实现用户与所述物理机100的交互。所述输入输出单元160可以是,但不限于,鼠标和键盘等。
音频单元170向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。
显示单元180在物理机100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元180可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器140进行计算和处理。
所述通信单元190用于通过所述网络与共享存储之间建立连接,从而实现所述物理机100与共享存储之间的通信连接,并用于通过所述网络收发数据。
请参照图2,是本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法,该方法应用于相互通信的源物理机和目标物理机,该方法包括:
步骤S110,所述源物理机将启动安装于所述源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机。
具体为,该源物理机在自身上运行虚拟机时,将对该虚拟机产生的内存数据进行加密。具体为,该源物理机将间隔预定时间使用加密秘钥对虚拟机的内存数据进行加密,此外该源物理机还将记录间隔预定时间内的内存的变化数据,并使用该加密秘钥对变化数据进行加密,同时将该加密后的变化数据添加到之前加密的内存数据中。
若该源物理机是按照每10分钟使用加密秘钥对虚拟机的内存数据进行加密,如该源物理机已经对9点之前的内存数据使用加密秘钥进行了加密,则对于9点至9点10分新产生的内存数据,将其称之为内存在间隔预定时间(10分钟)内变化的数据,进而该源物理机将对该10分钟的变化数据进行加密后添加到之前加密的内存数据中,以此在虚拟机在线迁移之前先行对虚拟机运行过程中已经产生的内存数据进行加密。
之所以源物理机在启动虚拟机后且在虚拟机迁移前就对虚拟机产生的内存数据进行加密处理,是因为一旦需要对源物理机上的虚拟机进行迁移,可快速响应,节约虚拟机迁移的时间,避免对虚拟机的内存数据进行加解密以影响传输效率。
进而,该源物理机启动虚拟机在线迁移至目标物理机时,可直接将事先加密好的虚拟机的内存数据直接发送至目标物理机。由于该内存数据经过加密秘钥进行加密,则即便在数据传输过程中,该内存数据被盗取,也无法对其解密,较好地保证了数据的安全性。
作为另一种实施方式,该源物理机还可以将加密好的虚拟机的内存数据发送至共享存储中进行存储,同时也对间隔预定时间内的内存的变化数据经过加密后发送至共享存储中,以更新之前存储的内存数据。则进行虚拟机迁移时,目标物理机可直接从共享存储中拉取加密好的内存数据,以加快传输效率。
步骤S120,所述源物理机还利用接收的由所述目标物理机发送的公钥对所述加密秘钥后发送至所述目标物理机。
即是说,该源物理机还将利用目标物理机广播的公钥对自身产生的加密秘钥进行加密,并将加密后的加密秘钥发送至目标物理机。由于该加密秘钥通过目标物理机的公钥进行了加密,则即便该加密秘钥在数据传输过程中被盗取,也没有对应的私钥进行解密,保证了数据传输的安全。
步骤S130,所述目标物理机利用私钥对加密后的所述加密私钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中。
具体为,该目标物理机利用自身的私钥对使用公钥加密的加密私钥进行解密,进而可通过解密得到的加密秘钥对接收的内存数据进行解密。
进而,该目标物理机将该内存数据运行于自身新建的虚拟机上。
步骤S140,所述源物理机还将持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录。
具体为,在源物理机上的虚拟机在不停机的情况下迁移至目标物理机的过程中,该虚拟机实际上还在不停地产生内存数据,这部分虚拟机迁移过程中产生的新产生的内存数据还存储于源物理机上。因此,该源物理机还将持续记录该虚拟机的内存变化数据,并将这部分内存变化数据每间隔预定时间通过加密秘钥加密后发送至目标物理机中。
随着虚拟机的内存数据转移到目标物理机越来越多,运行于源物理机上的虚拟机的内存数据将会越来越少,因而,该源物理机还将记录每次内存变化数据传输至目标物理机的传输时间,当该传输时间小于阈值时,说明当前源物理机上存留的内存数据已经很少了,则该源物理机可停止向目标物理机传输数据。
通过对虚拟机在线迁移过程中新增的内存数据进行分时加密传输至目标物理机中,一方面保证了该虚拟机所有内存数据的完整性,使得目标物理机上的虚拟机可正常运行,另一方面保证了数据传输的安全性,避免了数据泄露。
步骤S150,所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
即是说,该目标物理机将通过之前破解的加密秘钥对新接收的虚拟机迁移过程中的内存变化数据进行解密,并将解密后的内存变化数据添加至之前接收的内存数据中,以保证该虚拟机内存数据的完整性,以使得目标物理机上的虚拟机可拥有需迁移虚拟机的所有内存信息,实现虚拟机的顺利迁移。
待该目标物理机接收完虚拟机的所有内存数据后,该目标物理机将会把接收的所有内存数据以及运行自身上的虚拟机新产生的内存数据,经过加密后发送至共享存储进行存储,以便于下次进行虚拟机的迁移。
请参照图3,是本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法,该方法应用于源物理机,该方法包括:
步骤S110,启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机。
步骤S120,利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中。
步骤S130,持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
请参照图4,是本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护装置110的功能模块示意图,该装置包括启动模块111、发送模块112以及记录模块113。
启动模块111,用于启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机。
在本发明实施例中,步骤S210可以由启动模块111执行。
发送模块112,用于利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中。
在本发明实施例中,步骤S220可以由发送模块112执行。
记录模块113,用于持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
在本发明实施例中,步骤S230可以由记录模块113执行。
由于在虚拟机在线迁移过程内存数据的保护方法部分已经详细描述,在此不再赘述。
综上所述,本发明实施例提供的一种虚拟机在线迁移过程内存数据的保护方法、装置及物理机,源物理机向目标物理机进行虚拟机迁移过程中,该源物理机先发送事先加密好的虚拟机的内存数据,同时还将记录该虚拟机转移过程中的内存变化数据,并对该内存变化数据进行加密后发送至目标物理机,直至该内存变化数据很小时停止向目标物理机传输,使得一方面保证了数据传输速度,另一方面保证了数据传输的安全性。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种虚拟机在线迁移过程内存数据的保护方法,应用于相互通信的源物理机和目标物理机,其特征在于,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述方法包括:
所述源物理机将启动安装于所述源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;
所述源物理机还利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机;
所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;
所述源物理机还将持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录;
所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
2.如权利要求1所述的方法,其特征在于,在虚拟机在线迁移前,对所述虚拟机的内存数据进行加密的方式为:
所述源物理机间隔预定时间使用所述加密秘钥对所述虚拟机的内存数据进行加密;
所述源物理机还将记录间隔的预定时间内的内存的变化数据,并使用所述加密秘钥对变化数据进行加密,并将所述加密的变化数据添加至之前加密的内存数据中。
3.如权利要求2所述的方法,其特征在于,所述源物理机还将加密后的内存数据发送至共享存储中进行存储,并将间隔预定时间内的内存的变化数据经过加密后发送至所述共享存储中,以累加至之前加密的内存数据中;
所述目标物理机将从所述共享存储上获取加密的所述虚拟机的内存数据。
4.如权利要求1所述的方法,其特征在于,所述源物理机还将持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录的步骤包括:
所述源物理机还将持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据每间隔预定时间通过所述加密秘钥加密后发送至所述目标物理机;
所述源物理机还将记录每次所述内存变化数据传输至所述目标物理机的时间,当所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录且停止向所述目标物理机传输。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述目标物理机将接收的所有内存数据以及自身上的虚拟机运行后产生的内存数据定时加密后发送至共享存储中进行存储。
6.一种虚拟机在线迁移过程内存数据的保护方法,应用于源物理机,所述源物理机与目标物理机通信,其特征在于,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述方法包括:
启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;
利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;
持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
7.如权利要求6所述的方法,其特征在于,在虚拟机在线迁移前,对所述虚拟机的内存数据进行加密的方式为:
间隔预定时间使用所述加密秘钥对所述虚拟机的内存数据进行加密;
记录间隔的预定时间内的内存的变化数据,并使用所述加密秘钥对变化数据进行加密,并将所述加密的变化数据添加至之前加密的内存数据中。
8.如权利要求6所述的方法,其特征在于,所述持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录的步骤包括:
持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据每间隔预定时间通过所述加密秘钥加密后发送至所述目标物理机;
记录每次所述内存变化数据传输至所述目标物理机的时间,当所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录且停止向所述目标物理机传输。
9.一种虚拟机在线迁移过程内存数据的保护装置,应用于源物理机,所述源物理机与目标物理机通信,其特征在于,所述源物理机上设置有对称加密模块,所述对称加密模块用于产生加密秘钥,所述目标物理机上设置有非对称加密模块,所述非对称加密模块用于产生公钥和私钥,所述装置包括:
启动模块,用于启动安装于源物理机的虚拟机在线迁移至所述目标物理机,并将经过所述加密秘钥加密后的所述虚拟机的内存数据发送至所述目标物理机;
发送模块,用于利用接收的由所述目标物理机发送的公钥对所述加密秘钥加密后发送至所述目标物理机,以便于所述目标物理机利用所述私钥对加密后的所述加密秘钥进行解密,并通过解密后的加密秘钥解密接收的内存数据,并将所述内存数据运行于所述目标物理机上新建的虚拟机中;
记录模块,用于持续记录所述虚拟机迁移过程中内存变化数据,并将所述内存变化数据通过所述加密秘钥加密后分别发送至所述目标物理机,直至所述内存变化数据的传输时间小于阈值,则所述源物理机停止记录,以供所述目标物理机使用解密得到的加密秘钥对所述内存变化数据进行解密,并依次将所述内存变化数据添加至之前接收的内存数据中。
10.一种物理机,其特征在于,所述物理机包括存储器和处理器,所述存储器用于存储计算机程序代码,所述处理器用于执行存储于所述存储器中的计算机程序代码以实现如权利要求6-8任意一项所述的虚拟机在线迁移过程内存数据的保护方法。
CN201810907541.0A 2018-08-10 2018-08-10 虚拟机在线迁移过程内存数据的保护方法、装置及物理机 Pending CN109165080A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810907541.0A CN109165080A (zh) 2018-08-10 2018-08-10 虚拟机在线迁移过程内存数据的保护方法、装置及物理机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810907541.0A CN109165080A (zh) 2018-08-10 2018-08-10 虚拟机在线迁移过程内存数据的保护方法、装置及物理机

Publications (1)

Publication Number Publication Date
CN109165080A true CN109165080A (zh) 2019-01-08

Family

ID=64895421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810907541.0A Pending CN109165080A (zh) 2018-08-10 2018-08-10 虚拟机在线迁移过程内存数据的保护方法、装置及物理机

Country Status (1)

Country Link
CN (1) CN109165080A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124616A (zh) * 2019-12-23 2020-05-08 海光信息技术有限公司 一种虚拟机迁移方法、处理器及电子设备
CN111124599A (zh) * 2019-11-08 2020-05-08 海光信息技术有限公司 虚拟机内存数据迁移方法、装置、电子设备及存储介质
CN111158853A (zh) * 2019-12-13 2020-05-15 海光信息技术有限公司 虚拟机内存数据迁移方法、cpu芯片及服务器
CN111290830A (zh) * 2020-01-15 2020-06-16 海光信息技术有限公司 一种虚拟机迁移方法、处理器及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070226786A1 (en) * 2006-03-21 2007-09-27 International Business Machines Corporation Method and apparatus for migrating a virtual TPM instance and preserving uniqueness and completeness of the instance
CN101984631A (zh) * 2010-11-05 2011-03-09 北京世纪互联工程技术服务有限公司 一种Xen虚拟机安全动态迁移方法
US20110202765A1 (en) * 2010-02-17 2011-08-18 Microsoft Corporation Securely move virtual machines between host servers
CN102821158A (zh) * 2012-08-20 2012-12-12 广州杰赛科技股份有限公司 一种实现虚拟机迁移的方法和云系统
US20120324239A1 (en) * 2009-12-29 2012-12-20 Siemens Aktiengesellschaft Method and device for operating a virtual machine in accordance with an associated information on assignment of rights
CN106095525A (zh) * 2016-06-06 2016-11-09 浪潮电子信息产业股份有限公司 一种虚拟机动态迁移安全防护方法
CN106341228A (zh) * 2016-11-01 2017-01-18 广东浪潮大数据研究有限公司 一种虚拟机迁移方法、系统及虚拟机迁入端和迁出端

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070226786A1 (en) * 2006-03-21 2007-09-27 International Business Machines Corporation Method and apparatus for migrating a virtual TPM instance and preserving uniqueness and completeness of the instance
US20120324239A1 (en) * 2009-12-29 2012-12-20 Siemens Aktiengesellschaft Method and device for operating a virtual machine in accordance with an associated information on assignment of rights
US20110202765A1 (en) * 2010-02-17 2011-08-18 Microsoft Corporation Securely move virtual machines between host servers
CN101984631A (zh) * 2010-11-05 2011-03-09 北京世纪互联工程技术服务有限公司 一种Xen虚拟机安全动态迁移方法
CN102821158A (zh) * 2012-08-20 2012-12-12 广州杰赛科技股份有限公司 一种实现虚拟机迁移的方法和云系统
CN106095525A (zh) * 2016-06-06 2016-11-09 浪潮电子信息产业股份有限公司 一种虚拟机动态迁移安全防护方法
CN106341228A (zh) * 2016-11-01 2017-01-18 广东浪潮大数据研究有限公司 一种虚拟机迁移方法、系统及虚拟机迁入端和迁出端

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124599A (zh) * 2019-11-08 2020-05-08 海光信息技术有限公司 虚拟机内存数据迁移方法、装置、电子设备及存储介质
CN111124599B (zh) * 2019-11-08 2021-04-30 海光信息技术股份有限公司 虚拟机内存数据迁移方法、装置、电子设备及存储介质
CN111158853A (zh) * 2019-12-13 2020-05-15 海光信息技术有限公司 虚拟机内存数据迁移方法、cpu芯片及服务器
CN111124616A (zh) * 2019-12-23 2020-05-08 海光信息技术有限公司 一种虚拟机迁移方法、处理器及电子设备
CN111124616B (zh) * 2019-12-23 2023-08-08 海光信息技术股份有限公司 一种虚拟机迁移方法、处理器及电子设备
CN111290830A (zh) * 2020-01-15 2020-06-16 海光信息技术有限公司 一种虚拟机迁移方法、处理器及电子设备
CN111290830B (zh) * 2020-01-15 2023-10-20 海光信息技术股份有限公司 一种虚拟机迁移方法、处理器及电子设备

Similar Documents

Publication Publication Date Title
US9792427B2 (en) Trusted execution within a distributed computing system
CN111683071B (zh) 区块链的隐私数据处理方法、装置、设备以及存储介质
US10754693B2 (en) Secure transfer of control over computational entities in a distributed computing environment
CN112751852B (zh) 数据传输方法及相关设备
RU2763516C2 (ru) Генерирование удостоверения аттестации ключа с обеспечением анонимности устройства
CN110800250B (zh) 受控加密私钥的发布
CN109165080A (zh) 虚拟机在线迁移过程内存数据的保护方法、装置及物理机
US8977842B1 (en) Hypervisor enabled secure inter-container communications
US11949775B2 (en) Network bound encryption for recovery of trusted execution environments
CN107924339B (zh) 数据中心以及用于促进数据中心处的私密性的方法和介质
US9071424B1 (en) Token-based key generation
US20230254129A1 (en) Key management for multi-party computation
US20220006787A1 (en) Network bound encryption for orchestrating workloads with sensitive data
CN110830242A (zh) 一种密钥生成、管理方法和服务器
El Bouchti et al. Encryption as a service for data healthcare cloud security
CN109214201A (zh) 一种数据共享方法、终端设备及计算机可读存储介质
WO2022141839A1 (zh) 联邦学习模型的更新方法、装置、电子设备及存储介质
US11176624B2 (en) Privacy-preserving smart metering
WO2020253380A1 (zh) 数据加密方法、装置及终端设备
CN113826352A (zh) 多节点集群中的可信容器之间的密码密钥协调
CN109815747A (zh) 基于区块链的离线审计方法、电子装置及可读存储介质
CN111464297A (zh) 基于区块链的事务处理方法、装置、电子设备和介质
CN112765642A (zh) 数据处理方法、数据处理装置、电子设备及介质
US20170187528A1 (en) Password-authenticated public key encryption and decryption
EP4084484A1 (en) Method and device for encryption of video stream, communication equipment, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190108