虚拟机异地在线迁移安全通信机制关键技术研究_第1页
虚拟机异地在线迁移安全通信机制关键技术研究_第2页
虚拟机异地在线迁移安全通信机制关键技术研究_第3页
虚拟机异地在线迁移安全通信机制关键技术研究_第4页
虚拟机异地在线迁移安全通信机制关键技术研究_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、虚拟机异地在线迁移安全通信虚拟机异地在线迁移安全通信机制关键技术研究机制关键技术研究 research of secure communication mechanism for the off-site live virtual machine migration 摘摘 要:要:在企业云计算平台部署的虚拟机中需要进行远程异地在线迁移通信,因为带 宽和广域网安全防护的因素会导致延迟、无法穿透或安全性不够,通信过程中容易被假冒、 窃取和重放攻击,需要新的迁移结构和通信机制,以保证迁移的安全可靠地进行。本文面 向保密性、完整性和穿透性需求,设计了一种异地迁移体系结构,提出了一种新的底层安 全通信协

2、议 sudp,讨论了认证和消息传递的安全性。 关键词关键词:云计算;虚拟机;异地迁移;在线迁移;sudp;安全通信机制 abstract. the virtual machines of cloud computing platform deployed in the enterprise need remote off-site live migration, but the bandwidth and wan security factors could cause communication delay and can not penetrate the firewalls two-wa

3、y, at the same system has the shortcomings of counterfeiting and vulnerable during communication, so we need a new structure and the communication mechanism of live migration to ensure migration safe and reliable. this paper designs the off-site live migration structure for confidentiality, integrit

4、y and penetration requirements, and puts forward a new secure communications protocol underlying sudp to discuss the authentication and messaging security. key words: cloud computing; virtual machine; live virtual machine migration; off-site migration; sudp; secure communication mechanism. 1 1 引言引言

5、在企业云计算平台部署的虚拟机中需要进行远程在线迁移通信,特别是具 有异地双备份的服务器,此时因为带宽和广域网安全防护的因素,需要有新的 迁移框架结构和重新考虑迁移通信机制,以保证迁移的安全可靠地进行,特别 是穿透防火墙的能力。目前虚拟机的在线迁移主要是考虑本地局域网环境1-2, 没有考虑企业集中异地远程灾备的环境,该环境由于广域网和灾备的特殊性, 一是要求高的通讯速度,延迟小,目前的面向连接的 tcp 协议不能满足要求; 二是要求通信能随时双向穿透广域网防护体系例如防火墙,面向连接的 tcp 协 议不能随时双向穿透防火墙,这是致命的弱点;三是要考虑安全要素,需要对 通信的各方进行认证,不能存在

6、伪冒、窃取并能防范攻击;最后,要考虑灾备 要素,目前的迁移框架结构大多考虑的是单一迁移管理中心,一旦该迁移管理 中心失效,整个迁移将会失效,因此,在异地远程将会有备份迁移管理中心, 可以互为备份,同时可以管理本地的虚拟机。综上考虑,本文首先提出了主从 异地迁移管理中心迁移框架结构,讨论了该框架透过广域网络的通信机制和传 输过程中防范假冒、窃取、重放攻击的身份认证机制,这对企业云计算环境的安 全部署具有重要指导意义。 2 2 迁移管理系统结构迁移管理系统结构 图 1 描述了异地远程虚拟机在线迁移的系统结构。基于异地的虚拟机在线 迁移是由主从迁移管理中心(migration management

7、center, mmc)和由各服 务器上的本地认证迁移代理(migration agent, ma)和系统监视代理(system monitor agent, sma)组成的。 图 1 虚拟机异地远程迁移系统结构 主迁移管理中心mmc从迁移管理中心mmc 广 域 网 络 环 境 虚拟机监控器vmm 虚拟机监控器vmm 系 统 监 视 代 理 迁 移 代 理 迁 移 代 理 系 统 监 视 代 理 2.12.1 工作原理工作原理 ma 与 sma 都与 mmc 进行通信获取相应的策略,服务器上的 sma 获取本地服 务器上 cpu、内存和网络带宽等资源的使用情况并向 mmc 提供本地资源使用情

8、况,ma 接收 mmc 发出的迁移命令并进行实际的迁移操作。 在虚拟环境中,vmm 负责对各虚拟机进行调度,可以截获虚拟设备的各项操 作以及相关的参数,sma 正是通过 vmm 获取相应的参数并周期性地向 mmc 发出 请求各独立节点上的资源使用情况。sma 获取资源可以表示为 s=s_cpu,s_mem,s_net,其中,s_cpu 为虚拟机的 cpu 使用率,s_mem 是虚拟 机的内存使用情况,s_net 是虚拟机的网络流量。 mmc 从整体上掌握云计算平台中物理资源的使用情况,根据预设策略,按 需发起虚拟机动态迁移操作,实现平台范围内的负载均衡。mmc 主要控制 ma 和 sma,分别

9、有对应的管理模块。mmc 通过 sma 获取服务器和虚拟机对于 cpu、内 存和网络带宽的使用情况 s,确定是否发起以及如何发起虚拟机的动态迁移操作。 发起虚拟机的动态操作,主要是虚拟机的服务等级协议(service level agreement, sla)不能被满足,例如 s_netup, up 预定的 cpu 使用率;s_mem 物理服务器频繁 发生内存换出。 2.22.2 通信关系通信关系 迁移管理中心和代理之间需要协作完成迁移任务,通信是实现 agent 合作 的必不可少的基本条件。通信的安全问题主要反映在 mmc 与 agent 之间、各 agent 之间的消息和数据传递。mmc

10、由于异地进行迁移,mmc 主从之间还需要进 行数据和指令同步,以保证异地迁移成功。 从安全上考虑,必须对 agent 进行认证,mmc 向 agent 发送认证信息,证 明目前 agent 运行的合法性。agent 与 mmc 通信,主要有:agent 向 mmc 发送注 册信息;agent 与 mmc 时间同步;agent 策略与 mmc 中相应的策略保持一致性; agent 向 mmc 发送日志信息和告警信息;mmc 向各 agent 发送认证信息;mmc 向 各 agent 发送消息,例如动作消息等;mmc 之间的数据同步。 因此,各 agent 与 mmc 以及 mmc 间需要相互进行

11、通信,保持策略数据的同 步性,以及相应的消息传递,这将涉及异地虚拟机迁移安全通信机制的建立。 为了保证 mmc、agent 之间的数据传输采用了 des 的加密和解密算法,des 相对 于以后提出的非对称密码体制设想使用广泛的多。 3 3 通信通信机制机制 agent 通信语言3作为研究 agent 和 mmc 之间通信的一个重要内容,涉及 通信语言的定义、表示、处理和语义解释4。kqml 是目前应用得最多的 acl, 它是一种接口库,并不是编译和解释型语言,程序员仍需提供代码处理每一通 信原语,更重要的是,kqml 没有考虑安全通信的要求,不适合于网络安全系统 的应用,虽然有学者在 kqml

12、 原语的基础上对其进行了安全通信方面的扩充,但 他们仅仅依据公开密钥体制提供了安全通信模型,并没有具体实现与应用5-6。 3.13.1 sudpsudp 协议及其特点协议及其特点 一般而言,agent 通信从实现的底层角度上看可采用二进制流的 socket 通 信,从高层角度上看可采用 rpc 远程过程调用的抽取机制7。本文吸收保密通 信的一般技术,结合 agent 在安全领域的特殊应用,构建了一种采用基于 udp 协议作为消息、代码、数据传递的安全底层通信构架,本文称之为 sudp(safe udp)协议。 在标准的 tcp/ip 协议中,udp 比 tcp 发送速度快得多,程序实现也较为简

13、 单,缺点就是容易丢包,而且不能自动重发也不能自动组包没有数据安全机制, 发包大小不能超过 2k,否则就出错。在复杂的网络通信环境中,可能需要发送 大量数据包(例如,策略数据的复制)并且需要保证速度,而且这些重要的数据 不允许丢失,这就需要 sudp 协议。 相对 tcp 而言,首先,在网络中,有可能需要跨越防火墙,tcp 无法很好 的穿透 nat,来进行点对点通信。其次,通信过程中需要某些重要的消息不丢 失,tcp 需要首先建立连接,每个包都需要确认,这样发送速度会慢不少。因 此,采用 sudp 发送任意大小包,可以保证某些重要的包不会丢失,并且可以轻 松穿透 nat 来进行点对点通信。 s

14、udp 具有以下特点: 1) 自动分包组包; 2) 支持一次性发送任意大小的包; 3) 支持安全控制(支持 amp 消息通信协议) ; 4) 根据丢包率和网速度动态控制发包速度。 因此,消息通信的底层协议主要基于 sudp,在该协议之上还可以自定义其 它的协议。其实现流程如图 2。 3.23.2 消息传递体系结构消息传递体系结构 各 agent 有时需要直接进行交互,但是主要涉及到消息的通知,发生量较少, 如 mmc 通知迁移 agent 消息,大量的通信还是与 mmc 间发生直接通信,这与黑 板的求解模型类似。 agent 间的通信借助黑板,首先从黑板获得相应的身份认证,使得 agent 间

15、产生相互联系,这里的黑板可以认为就是 mmc。系统监视与迁移十分类似于 黑板模型,借助 mmc 黑板能更好地完成系统监视 agent 与迁移 agent 间的协调 任务,提升 agent 的通信质量8。 消息传递结构,本质是基于 socket 的通信,如图 2,sudp 的实现就是基于 socket 的通信,socket()是套接字函数,bind()将端口绑定到该套接字上,然 后激活侦听 listen(),accept()接受数据,read()和 write()相应地在缓冲区 读写数据,connect()是连接服务器的端口。系统中各组件、agent 间采用消息 进行通信,它是实现灵活复杂的协调

16、策略的基础,总之,采用的类黑板系统不 仅需要对各类节点进行监控,而且反映了问题求解的中间状态及各类 agent 之 间传递信息的中介。其间,agent 在网络中是否存在,其身份是否被授权,都 是以 mmc 黑板为调度者,以网络消息的形式来表现。 图 2 socket 的消息传递流程 socket() 服务端客户端 bind() listen() accept()read() write()read() write() connect() socket() 请求 响应 建立连接 4 4 agentagent 的身份认证的身份认证 4.14.1 agentagent 的身份认证体系的身份认证体系

17、本文利用对称密码体系,即共享的密钥保证 agent 间的安全通信。其中, 每个 agent 和 mmc 间都必须相互通信,涉及到通信保密保密问题,mmc 任何识 别 agent 是合法的,在传输过程中,又如何能保证共享密钥的安全性。 定义定义 1 1:注册码是 agent 向 mmc 发起连接请求,mmc 随机分配一个字符串的 数值 m;该注册码只在本次连接会话中有效,下次如果重新连接将导致新的会 话产生,因此,注册码可以作为过程本身相关联的密钥。 定义定义 2 2:每一个 agent 都有自己固定的 id 号,agent 的 id 号和注册码 m、ip 地址、mac 地址、硬盘 id 号有关

18、,记作 agent_id。表达式为: agent_id=m|ip|mac|hd_id。 定义定义 3 3:agent 与 mmc 共享的密钥为注册码 m、ip 地址、硬盘 id 号的 hash 值,即 k=gethash(agent_id)。 假设假设 1 1:注册码 m 是具有 128 位的随机字符串,不会被穷举得到。 命题命题 1 1:网络中分布的所有 agent 在不同的域中具有不同的注册码和不同 的 agent_id,即具有唯一性,该唯一性一是由随机字符串 m 和随机硬盘 id 决 定的。 定义 1 反映出通信实体之间的区别,agent 必须为每一次会话产生一个会 话密钥,该密钥仅用于

19、加密传输数据,而不能参与 agent 身份认证,并且在会 话结束后被丢弃。定义 3 保证了 agent 所拥有密钥的私密性。假设 1 是分布式 agent 安全通信的前提和基础,足够长的注册码确保穷举攻击获取密码几乎是 不可能的。命题 1 用以标志 agent 的唯一性,可以通过 agent 登记、注册、注 销等方式记录、检测和管理 agent。 若 agent 和 mmc 通信,并和其它 agent 通信,协作完成安全任务,必须首 先进行认证。本文采用授权验证认证方式,该方式简便易行,有利于系统的推 广,agent 首先向 mmc 申请注册,在 mmc 控制台由管理员人工授权,该 agent

20、 获取一个注册码 m,并存储在内存中。但是,该方法的弱点是:服务器端存 放的注册码一旦被盗窃,则系统中所有用户的口令均不安全;不能抵抗重放 攻击9-11,攻击者可以中途截获注册码信息,以后使用注册码冒充合法 agent 进行 mmc 验证请求,从而给系统安全带来威胁。 mmc 不直接存储用户的明文 agent_id,而是存储 agent_id 单向 hash 函数 值,可以解决第一个弱点11-12 ,mmc 根据 m 以及发送的相应的硬件信息生成 hash 数字 kagent存放在 mmc 用户库中。 4.24.2 c-rc-r 认证认证 agent 在有限信任的生命周期中,与 mmc 通信,

21、必须进行认证。mmc 为了对 运行中的 agent 进行不定时的认证,认证方式采用简单的“挑战一应答” (challenge-response)的方式,通过三次握手对被认证对象的身份进行周期 性的认证,这是 ppp chap 协议一般采用的认证方式。本文吸收该认证方式的特 点,见图 3。 agent 1、登录请求:agent_id 2、rs|increment_id 3、agent_id,md5(rs|increment_id|k) 4、同意访问或者拒绝访问 mmc 图 3 c-r 认证方式 mmc 向 agent 发送递增改变的标识符和一个挑战消息,挑战消息一般为随 机数; agent 向

22、mmc 发回一个响应,该响应由 hash 函数计算得出,hash 函数的输 入参数由本次认证的标识符、密钥和挑战消息构成;mmc 将收到的响应与自己 根据认证标识符、密钥和挑战消息计算出的 hash 函数值进行比较。若相符则认 证通过,向 agent 发送“成功”消息;否则发送“失败”消息,切断对该 agent 的服务。 认证过程中,传输的内容经过 hash 函数,如 md5 算法加密,网络侦听无法 获取密钥明文。另外,由于 mmc 每次选取的随机数 challenge 不同,hacker 即 使侦听原先的传输内容进行重放攻击,也是无法通过认证的。图 3 中递增改变 的标识符为 mmc 的主机

23、时间,该时间用以同步客户端的主机时间,本质是为了 解决通信中的重放攻击。 4.34.3 复杂复杂 c-rc-r 认证认证 agent 1、登录请求:agent_id 2、des(rs,k) 3、md5(rc),des(rs|rc,k) 4、des(rc|ts|loginstate,k) mmc 图 4 复杂 c-r 认证方式 复杂的认证方式用来解决 agent 对 mmc 的认证。其流程如图 4 所示,描述 如下: mmc 向 agent 发送消息:“des(rs, k)” 。其中,k 由“k=md5(agent_id)” 合并,des 为对称加密算法。agent 根据 agent_id 可以

24、对“des(rs, k)”解密, 然后计算出 rs; agent 向 mmc 发回一个响应:“md5(rc), des(rs|rc, k)” 。其中,消息 的前半部分为 agent 产生的随机数 rc 的 hash 值,rs 与 rc 合并后以 k 加密; 只有 mmc 的 agent 用户基本规则库中保留有 k 值,在接收到 agent 的响应 后认证中心进行解密验证。若 rs 值符合,则解决了 mmc 信任 agent 的问题,之 后向 agent 发送消息:“des(rc|ts|loginstate, k)” ; 只有拥有正确密钥的 agent 可以对“des(rc|ts|loginst

25、ate, k)”解密, 然后验证 rc。若相符,则证明 agent 信任 mmc,然后调整相应的 loginstate, 并将主机时间调整为 mmc 的时间 ts,完成一个信任周期的校验。通过改进的流 程,解决了 agent 与 mmc 的双向认证,可以阻止 hacker 发起的网络侦听攻击、 重放攻击和中间人攻击。 对于一个过于简单的网络通信协议,一般很容易遭受重放攻击,只要获得 交互协议的加密消息,hacker 就可以获取对话13-14,并且伪造 ip 地址信息就 可以向对方发送信息,对方将被蒙骗。一般而言,为了抵抗该攻击,运用了 needham-schroeder 协议15,对密钥交互协

26、议增加了认证,可以确保交互协议 不被窃取。 5 5 结束语结束语 本文提出的云计算平台部署上的异地在线虚拟机迁移的框架结构对实现企业 异地灾备的虚拟机负载平衡是一种很好的方案,并对解决现实中存在通信延迟 和安全通信问题也作出了探讨,下一步需要在开源虚拟化软件 xen vmm 和 kvm 上作进一步的测试和优化。 参考文献参考文献 1fei ma, feng liu, zhen liu. live virtual machine migration based on improved pre-copy approachc. software engineering and service sci

27、ences (icsess), 2010 ieee international conference on, july,2010:230-233. 2hai jin, li deng, song wu, et al. live virtual machine migration with adaptive, memory compressionc. cluster computing and workshops, 2009. cluster 09. ieee international conference on, sept.,2009:1-10. 3rafael h.bordini,mehd

28、i d., et al. current issues in multi-agent systemsc. esaw06 proceedings of the 7th international conference on engineering societies in the agents world vii, 2007,pp38-61 4finin, t., weber, j, et al. draft specification of the kqml agent-communication languager. june 15, 1993 5chelliah thirunavukkar

29、asuy, tim finin, james mayfield. secret agents-a security architecture for the kqml agent communication languager. draft submitted to the cikm95 intelligent information agents workshop, baltimore, december 1995 6wong, h. c., k. sycara. adding security and trust to multi-agent systemsr. proc. autonom

30、ous agents99 workshop on deception, fraud and trust in agent societies, 1999, pp.146-161 7manvi, s.s., venkataram, p. applications of agent technology in communications: a reviewj. computer communications, 2004, 27(15): 1493-1508 8jiang, y.c., xia, z.y., zhong, y.p., zhang, s.y. an adaptive adjusting mechanism for agent distributed blackboard architecturej. microproc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论