[发明专利]一种面向云计算环境的两级磁盘调度方法有效
申请号: | 201210557355.1 | 申请日: | 2012-12-20 |
公开(公告)号: | CN103064730A | 公开(公告)日: | 2013-04-24 |
发明(设计)人: | 冯丹;李宁;施展;江泓;柳青;焦田丰 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/455 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 方放 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 计算 环境 两级 磁盘 调度 方法 | ||
技术领域
本发明属于计算机存储技术领域,具体涉及一种面向云计算环境的两级磁盘调度方法。
背景技术
云计算技术可以使多个客户操作系统(Guest OS)部署在不同的虚拟机(Virtual Machine)中,并同时运行在一台物理机上。这种资源分享模式可以提升硬件资源的复用水平,降低系统管理成本,以及提升设备访问的安全性。
为使虚拟机对磁盘的访问不互相干扰,尤其是当有一台虚拟机在磁盘访问中出现异常时,其他虚拟机的正常访问不受影响,现有云计算系统采用驱动分离模型(Split Driver Model)或相似的技术实现可靠的磁盘访问。如图1所示,驱动分离模型将磁盘的驱动设置在专门的驱动域(Driver Domain)中,虚拟机并不直接访问磁盘设备,而是通过前端驱动(Front Driver)将I/O请求信息发送至一个I/O缓冲区(I/O Ring)并通过消息通道(Event Channel)通知驱动域,驱动域通过后端驱动(Back Driver)将I/O缓冲区的I/O请求取出并发送至磁盘的原生驱动进行处理。I/O请求执行完毕后,驱动域将I/O请求的数据发回I/O缓冲区,并再次通过消息通道通知虚拟机的前端驱动,虚拟机通过前端驱动取回I/O请求的数据。这种磁盘I/O请求和执行模式对虚拟机中的操作系统是透明的,即虚拟机中的应用程序会认为是直接访问磁盘。这种驱动分离模型或类似的技术客观上使磁盘I/O请求经历了两级磁盘调度的控制,即虚拟机操作系统的磁盘调度(上游调度)和驱动域中的磁盘调度(下游调度)。而两级磁盘调度的配合程度将严重影响磁盘访问的性能。
在磁盘调度中,I/O请求合并是其优化功能之一。由于磁盘中磁头的机械式运行模式,磁头的摆动会产生较大的时间开销,从而会影响磁盘访问性能,而I/O请求合并可以减少磁头摆动的频率,从而减少磁头寻道带来的额外时间开销。此外,由于I/O请求的减少,操作系统和磁盘设备命令交互的次数也会减少,这也使磁盘访问的协议开销(如ISCSI协议)大大降低。因此,I/O请求合并在磁盘访问中至关重要。I/O请求合并的必要条件是参与合并的I/O请求必须具有相邻的逻辑块地址(Logic Block Address,简称LBA)。如图2所示,当到达I/O请求(Ra)的起始LBA等于磁盘调度内I/O请求队列某I/O请求(Rb)的终止LBA时(起始LBA加该I/O请求大小),称为后合并(Back Merge);而当到达I/O请求(Ra)的终止LBA等于磁盘调度队列内某I/O请求(Rb)的起始LBA时,称为前合并(Front Merge)。此外,当参与合并的I/O请求到达磁盘调度时,另一个参与合并的I/O请求也必须在调度中,否则,I/O请求合并依然无法完成。
在两级磁盘调度的构架中,I/O请求合并由虚拟机中的磁盘调度和驱动域中的磁盘调度共同完成。如图3所示,部署在虚拟机中的应用程序发送的I/O请求首先要经过文件系统层(包括虚拟文件系统和实际使用的文件系统(例如Ext2或者Ext3等))的处理,从而成为大小一致的I/O请求,然后,这些I/O请求到达上游调度进行请求合并,并发往驱动域,在下游调度进一步完成I/O请求合并。这样,两级磁盘调度的配合程度将直接影响I/O请求合并的程度。在云计算的驱动分离模型中,由于操作系统对I/O请求合并的限制以及虚拟化的效率因素,虚拟机中调度完成的I/O请求合并程度需要受到限制。现有的虚拟化软件和操作系统普遍采用统一的参数设定,如果需要修改则必须重新编译操作系统。这对于虚拟I/O的性能优化是不利的。
在云计算环境中I/O请求合并通常是由两级磁盘调度采用流水线模式协作完成的,因此流水线的下游调度(驱动域磁盘调度)是其上游调度(虚拟机中磁盘调度)的功能延伸。
现有的云计算系统普遍采用固定的系统配置来约束上游调度的I/O请求合并程度(即限定I/O请求合并的次数)。当I/O请求的大小或者合并次数超过系统限定时,原本可合并的两个I/O请求将收到合并中止信号,从而无法在该级调度完成合并操作。如果要修改I/O请求合并程度的系统配置就必须重新编译操作系统和云计算系统,这样就更无法适应虚拟机中部署程序I/O请求的变化,从而使上游调度的“过度合并”和“合并不足”问题影响磁盘I/O性能的提升。
“过度合并”:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210557355.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种粉末水解制氢装置
- 下一篇:电磁炉及其导光装置