一种基于持续快照的虚拟机并行记录重放方法及系统技术方案

技术编号:26303821 阅读:42 留言:0更新日期:2020-11-10 19:58
本发明专利技术提出一种基于持续快照技术的虚拟机并行重放方法及系统,属于虚拟化技术领域。在收到记录请求时,先挂起要被记录的目标虚拟机,利用快照记录目标虚拟机的初始状态;运行目标虚拟机,将目标虚拟机运行相关的不确定性事件记录在日志信息中,同时每隔一段时间进行一次快照来记录该目标虚拟机的瞬时状态信息;当收到重放请求时,先借助快照进行虚拟机状态回滚,再按照记录的日志信息将不确定性事件注入到重放虚拟机的执行过程中,以重现目标虚拟机之前的执行过程。本发明专利技术将快照技术和记录重放技术集成,实现了三种并行重放模式,以解决虚拟机记录和重放过程中系统灵活性差和效率低的问题。

【技术实现步骤摘要】
一种基于持续快照的虚拟机并行记录重放方法及系统
本专利技术属于虚拟化
,涉及到虚拟机快照回滚技术和记录重放技术,具体涉及到一种基于持续快照技术的虚拟机并行重放方法及系统。
技术介绍
互联网技术的飞速发展为人类带来了巨大的便利,但同时,网络安全威胁也日益增长。而虚拟化技术提供一个可信、可控、可操作的环境来模拟真实的系统和网络行为,为深入分析和了解上层安全活动的产生、传播和演变提供了环境。如今,基于虚拟化的动态安全分析成为一种重要的研究方法,但传统的安全分析往往会给原系统运行带来严重的性能损失,影响系统的可用性,同时,很多攻击过程难以复现,在实现环境中重塑攻击过程是一项挑战性的任务。为了解决以上问题,记录重放技术被提出,其将系统的运行过程记录到日志文件中,之后可根据日志文件对运行过程进行多次重放。首先,一次记录可进行多次重放,为安全分析的展开提供了条件;其次,解耦了系统运行过程和分析过程,将安全分析过程推后到系统重放过程中,有效避免了复杂的安全分析给系统带来的压力。图1显示了虚拟机记录重放的传统架构。在虚拟机开机前,系统先设置好记录或者重放的相应配置,虚拟机开机后,根据配置文件进行相应的记录或者重放过程。具体来说,若虚拟机接下来进入记录阶段,VMM(虚拟机管理器)先根据配置信息创建日志文件,在虚拟机启动后进入记录模式,VMM读取所有不确定性事件及其对应的时间戳,将其写入日志文件中用于后期重放;若根据需求,虚拟机接下来进入重放过程,VMM先将磁盘状态回滚到记录开始时候状态,接着虚拟机开机进入重放模式,VMM从相应日志文件中读取不确定事件的信息,按照记录的时间点将其注入虚拟机,完成虚拟机行为的确定性重放过程。此架构灵活性及重放效率低,对虚拟机运行过程中任一小段执行过程的分析都需要从记录的初始阶段开始重放;此外,因测试或分析算法的复杂度,重放过程通常远慢于记录过程,无法满足实时检测分析的需求。虚拟机记录重放技术对被记录系统的整个运行轨迹进行记录,重放过程根据记录的信息可以将虚拟机状态回滚到任意运行时刻。但根据传统的记录重放架构,所有重放过程都需要从记录的起始阶段开始,按照记录信息逐条指令进行恢复,重放效率较低。而虚拟机快照技术将虚拟机瞬时状态进行了完整保存,可以实现虚拟机状态的快速回滚,但频繁的快照会对系统性能带来较大影响。
技术实现思路
本专利技术的目的在于提出一种基于快照技术的虚拟机并行记录重放方法及系统,将快照技术和记录重放技术进行集成,以解决虚拟机记录和重放过程中系统灵活性差和效率低的问题。为实现上述目的,本专利技术采用的技术方案如下:一种基于持续快照的虚拟机并行记录重放方法,包括以下步骤:在收到记录请求时,先挂起要被记录的目标虚拟机,利用快照记录该目标虚拟机的初始状态信息,并为该目标虚拟机的写磁盘操作进行重定向;运行该目标虚拟机,将虚拟机运行相关的不确定性事件记录在日志信息中,同时每隔一段时间进行一次快照来记录该目标虚拟机的瞬时状态信息;当收到重放请求时,借助快照和重放虚拟机将目标虚拟机状态回滚到指定时刻前的瞬时状态,进行虚拟机的行为重放,按照记录的日志信息将不确定性事件注入到重放虚拟机的执行过程中,以重现目标虚拟机之前的执行过程,直至将状态恢复到指定时刻。进一步地,所述快照采用一般的快照技术。进一步地,在收到记录请求时,先设置相应寄存器状态和创建日志文件,再开始记录。进一步地,为目标虚拟机的写磁盘操作进行重定向的方法为,借助外部磁盘快照技术新建新磁盘镜像文件,同时将原磁盘镜像文件设置为只读,将目标虚拟机接下来的写操作重定向到新磁盘镜像文件中。进一步地,当目标虚拟机运行超过设定的时间阈值时,循环进行如下操作,直至收到终止记录的请求,操作包括:在挂起目标虚拟机时,利用磁盘快照技术记录虚拟机的状态信息,并为目标虚拟机的写磁盘操作进行重定向;在运行目标虚拟机时,获取虚拟机运行相关的所有不确定性事件并写入到日志文件中。进一步地,磁盘快照技术采用qcow2的内部磁盘快照和外部磁盘快照技术相结合的双层磁盘快照技术。进一步地,虚拟机的初始、瞬时等状态信息包括CPU、内存、磁盘和外部设备的状态信息。进一步地,不确定性事件包括外部中断、键盘鼠标输入、网络数据包等。进一步地,在重放虚拟机重放之前,复制对应时间段增量磁盘镜像文件,将复制的新磁盘镜像文件作为重放虚拟机的磁盘镜像文件;在重放虚拟机重放时,使重放虚拟机的写操作在新磁盘镜像文件上进行。进一步地,每个重放虚拟机都拥有一个独立的磁盘镜像文件。进一步地,重放虚拟机的重放包括离线重放,实时重放,多维度并行重放以及多时间片并行重放。一种基于持续快照的虚拟机并行记录重放系统,包括:记录组件,负责目标虚拟机行为的记录,包括在收到记录请求时,先挂起要被记录的目标虚拟机,利用快照记录该目标虚拟机的初始状态信息,并为该目标虚拟机的写磁盘操作进行重定向;将该目标虚拟机运行相关的不确定性事件记录在日志信息中,同时每隔一段时间进行一次快照来记录该目标虚拟机的瞬时状态信息;将虚拟机的初始状态信息、不确定性事件和瞬时状态信息储存于磁盘中;重放组件,包括至少一个重放虚拟机,负责目标虚拟机行为的重放,包括在收到重放请求时,借助快照将重放虚拟机状态回滚到指定时刻前的瞬时状态,进行虚拟机的行为重放,按照记录的日志信息将不确定性事件注入到重放虚拟机的执行过程中,以重现重放虚拟机之前的执行过程,直至将状态恢复到指定时刻;重放虚拟机的重放包括离线重放、实时重放、多维度并行重放以及多时间片并行重放。与现有技术相比,本专利技术的积极效果为:本专利技术能够有效提高虚拟机记录和重放的灵活性,并提高重放的性能,加快重放分析速度。本专利技术的积极效果体现在以下方面:1)在记录阶段,利用快照技术,保存虚拟机在各个运行阶段的瞬时状态,重放时借助保存的快照信息,可以实现快速定位并回滚到重放点,提高系统的灵活度,减少不必要的重放过程;2)提出实时重放技术,此技术实现了虚拟机重放进程与记录进程同时运行,为实时分析提供了技术支撑。3)利用持续快照技术,对系统运行过程进行时间片划分,在此基础上能实现多时间片并行重放和多维度并行重放,有效提升重放分析的效率,应用到安全分析领域,提高分析的实时性,减小对于安全攻击的反应时间。附图说明图1是虚拟机记录重放传统架构图。图2是基于持续快照的并行重放模式图。图3是虚拟机并行重放系统架构图。图4是虚拟机并行记录重放示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本专利技术做进一步说明。本实施例主要针对虚拟机记录和重放过程中系统灵活性差和效率低的问题,提出了一种基于持续快照的虚拟机并行记录重放方法,将快照技术和记录重放技术进行集成,让二者优势互补,如图2所示,具体说明如下:首先在接收到记录请求时,利用快照技术将记录的目标虚拟机的初始状态(包括CPU、本文档来自技高网
...

【技术保护点】
1.一种基于持续快照的虚拟机并行记录重放方法,其特征在于,包括以下步骤:/n在收到记录请求时,先挂起要被记录的目标虚拟机,利用快照记录该目标虚拟机的初始状态信息,并为该目标虚拟机的写磁盘操作进行重定向;/n运行该目标虚拟机,将虚拟机运行相关的不确定性事件记录在日志信息中,同时每隔一段时间进行一次快照来记录该目标虚拟机的瞬时状态信息;/n当收到重放请求时,借助快照和重放虚拟机将目标虚拟机状态回滚到指定时刻前的瞬时状态,进行目标虚拟机的行为重放,按照记录的日志信息将不确定性事件注入到重放虚拟机的执行过程中,以重现目标虚拟机之前的执行过程,直至将状态恢复到指定时刻。/n

【技术特征摘要】
1.一种基于持续快照的虚拟机并行记录重放方法,其特征在于,包括以下步骤:
在收到记录请求时,先挂起要被记录的目标虚拟机,利用快照记录该目标虚拟机的初始状态信息,并为该目标虚拟机的写磁盘操作进行重定向;
运行该目标虚拟机,将虚拟机运行相关的不确定性事件记录在日志信息中,同时每隔一段时间进行一次快照来记录该目标虚拟机的瞬时状态信息;
当收到重放请求时,借助快照和重放虚拟机将目标虚拟机状态回滚到指定时刻前的瞬时状态,进行目标虚拟机的行为重放,按照记录的日志信息将不确定性事件注入到重放虚拟机的执行过程中,以重现目标虚拟机之前的执行过程,直至将状态恢复到指定时刻。


2.如权利要求1所述的方法,其特征在于,在收到记录请求时,先设置相应寄存器状态和创建日志文件,再开始记录。


3.如权利要求1所述的方法,其特征在于,为目标虚拟机的写磁盘操作进行重定向的方法为,借助外部磁盘快照技术新建新磁盘镜像文件,同时将原磁盘镜像文件设置为只读,将目标虚拟机接下来的写操作重定向到新磁盘镜像文件中。


4.如权利要求1所述的方法,其特征在于,当目标虚拟机运行超过设定的时间阈值时,循环进行如下操作,直至收到终止记录的请求,操作包括:在挂起目标虚拟机时,利用磁盘快照技术记录虚拟机的状态信息,并为目标虚拟机的写磁盘操作进行重定向;在运行目标虚拟机时,获取虚拟机运行相关的所有不确定性事件并写入到日志信息中。


5.如权利要求3或4所述的方法,其特征在于,磁盘快照技术采用qcow2的内部磁盘快照和外部磁盘快照技术相结合的双层磁盘快照技术。

【专利技术属性】
技术研发人员:郝志宇王玮崔磊丁振全云晓春
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

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

1