当前位置:问答库>论文摘要

题目:虚拟化环境下小数据包时延优化技术的研究与实现

关键词:虚拟化,I/O虚拟化,KVM,网络,小数据包,时延

  摘要

目前虚拟化技术已经广泛的应用到数据中心及服务计算等领域,用来实现服务器的整合,提高服务器的利用率,简化服务器的管理和维护,降低总的成本。但虚拟化技术也会引入一定的开销,尤其是在I/O虚拟化方面,I/O虚拟化已经成为整个虚拟化的性能瓶颈,也是近年来虚拟化领域非常热门的一个研究课题。半虚拟化I/O模式是提升虚拟化环境下I/O性能一种行之有效的方法,也是被越来越多的虚拟化平台所采用的方法。但是,该方法在高速的小数据包网络环境下,性能仍不够理想。本文基于内核虚拟机(Kernel-based Virtual Machine, KVM)研究如何进一步降低虚拟化环境下小数据包的网络时延,提高小数据包的处理效率。本论文主要工作包括以下几点:1. 研究了KVM虚拟机的整体架构,并从CPU虚拟化、内存虚拟化和I/O虚拟化三个方面深入研究了KVM虚拟机的实现原理,并对其网络通信机制进行了详细的分析,绘制了详细的数据处理流程图和函数调用关系图。2. 测试并分析了KVM虚拟机网络通信过程中的主要开销,指出了影响KVM网络性能的三大因素:I/O指令仿真、上下文切换及数据拷贝,并在此基础上归纳了五种改进的方法:减少I/O指令仿真、降低上下文切换的频率、降低VM exit的处理开销、减少数据拷贝及优化数据包的传输路径。3. 针对高速小数据包情况下KVM上下文切换过于频繁的问题,从三个层面提出并实现小数据包的批量处理,大大的减少了KVM上下文切换的开销,提高了KVM处理小数据包的效率。4. 针对KVM在数据包接收和发送过程中需要多次排队的问题,设计并实现了一种基于共享内存的数据传输机制,通过在VMM和虚拟机之间开辟共享内存减少了数据包排队等待的时间,从而缩短了数据包的往返时延。本文对所提出的优化方法进行了功能测试和性能测试,测试结果表明本文提出的优化方法能够提高虚拟化环境下小数据包的处理效率并在一定程度上降低小数据包的网络时延,优化效果得到了体现。