|
此套毕业设计百度网盘下载地址(金币充值):
游客,本付费内容需要支付 200金币 才能浏览 支付
技术:Virtio等
摘要:
云计算服务模式中的平台即服务PaaS (Platform as a service)本质上是物理资源的虚拟化,是构建云计算数据中心的基础。虚拟化通常在硬件和应用中增加虚拟层,对云服务的系统性能(比如数据吞吐量、延时和每秒处理事务数)有直接影响。在常用的虚拟化平台KVM中,半虚拟化框架Virtio的网络请求处理过程占用CPU资源最多的场景是I/O请求数据转换时超级调用(hypercall)导致的系统切换,造成性能瓶颈。针对这一问题,本文提出一种前端计时聚合方法FTAM(Front-end Timer Aggregation Method)来降低虚拟层对云服务系统性能的影响。FTAM方法以Virtio网络模块virtio-net为基础,首先将通过virtio-net前端模块的数据进行重要性分类,随后通过计时器的控制进行聚合,然后自适应的传入共享通道,在满足服务目标水平SLO的基础上将多次超级调用的开销减为一次,降低CPU开销,合理的分配资源,从而提升系统性能。
关键词 云计算;虚拟化技术;超级调用;网络性能;系统切换
目录:
摘 要 i
Abstract ii
1. 绪论 1
1.1 本文研究的背景及意义 1
1.2 相关研究的现状 2
1.3 研究现状中存在的问题 4
1.4 本文的主要研究内容 4
1.5 本文论文组织结构 5
1.6 本章小结 5
2. 相关技术介绍 7
2.1 虚拟化概述 7
2.1.1 虚拟化技术原理 7
2.2 I/O 虚拟化概述 8
2.2.1 CPU 模式切换原理 9
2.2.2 I/O 完全虚拟化 10
2.2.3 I/O 半虚拟化 11
2.2.4 I/O 硬件辅助虚拟化 12
2.3 I/O 虚拟化性能优化途径 12
2.3.1 I/O 虚拟化开销分析 12
2.3.2 简化客户机操作系统 13
2.3.3 减小系统切换频率 14
2.3.4 降低每次系统切换开销 15
2.4 KVM 内核虚拟机 16
2.4.1 KVM 虚拟化框架 16
2.4.2 KVM 虚拟化方法 17
2.4.3 I/O 完全虚拟化实现方式——Qemu/KVM 17
2.4.4 I/O 半虚拟化实现方式——Virtio 18
2.5本章小结 20
3. KVM网络I/O 虚拟化性能优化的设计与实现 21
3.1 Virtio 网络请求传输重要机制 21
3.1.1 Virtio 网络设备寄存器 21
3.1.2 数据传输通道——Virtqueue 22
3.1.3 数据缓冲区——Vring 23
3.1.4 通信机制——Hypercall 25
3.2 前端驱动发送网络请求 26
3.2.1 流程分析 26
3.2.2 瓶颈分析 27
3.2.3 AHC 方法及不足 27
3.2.4 后端构想 28
3.3 FTAM 方法设计 29
3.3.1 FTAM前端设计的实现 29
3.4 本章小节 32
4. 性能测试与分析 34
4.1 实验环境与测试工具 34
4.1.1 系统环境 34
4.1.2 Netperf 测试工具 34
4.1.3 PING 测试工具 35
4.1.4 性能指标 36
4.1.5 CPU 性能监测工具——vmstat 36
4.2 网络I/O 虚拟化性能测试与评估 36
4.2.1 批量数据传输基准测试 37
4.2.2 缓存时间与网络吞吐性能的关系 37
4.3 网络I/O 虚拟化性实验设计 38
4.3.1 FTAM方法测试吞吐量 38
4.3.2 FTAM方法测试延迟 39
4.3.3 FTAM方法测试每秒处理事物帧数 39
4.3.4 CPU 利用率 41
4.4 本章小结 41
总结 42
参考文献 44
致谢 45
论文字数:36955
包含资料:
截图:
|
|