论文部分内容阅读
虚拟化技术是云计算关键技术之一,云计算中的虚拟化技术主要应用于虚拟机的动态迁移。目前,虚拟机动态迁移只是将虚拟机迁移到目的主机,并没有将所处的网络设置一并迁移,然而大部分的应用服务都是由很多虚拟机和他们所处的网络组成,服务程序的正常工作依赖于虚拟机所处的网络的基本设置和状态,如权限管理和QoS功能。传统的网络设备通常配有专用的管理系统,专有的协议,并且缺乏可以用于编程和自动化配置的API。SDN技术的优势是将数据转发层和控制层完全分开,使得网络设备的可编程性更强,开发维护人员能够通过控制端程序方便的控制交换设备。 本文研究的是将一个应用服务所包括的虚拟机群和网络状态整体迁移到目的物理设备上,并且在虚拟机迁移过程中应用服务能正常工作服务不中断。本文设计的网络整体迁移程序位于SDN控制器和交换设备之间,对SDN控制器透明,透明的好处是增强了程序的可移植性。基于SDN技术的网络迁移程序的工作过程可以概括为:首先将源交换设备上的状态克隆到目的交换设备上,然后网络迁移程序负责将源和目的交换设备协同工作形成一个网络整体,当所有虚拟机都迁移完成时,关闭源交换设备。在虚拟机迁移的过程中网络迁移程序必须保证数据包的独立性,同时需要融合源和目的交换设备上的消息,使其在SDN控制器端看来是一个交换设备。 本文使用了OpenStack云计算平台和Floodlight控制器搭建实验环境,并设计了三个实验来验证所设计的程序的功能和性能,实验表明,网络迁移程序能很好的保证虚拟机迁移过程中应用服务的正常工作。