[发明专利]基于磁盘进行I/O请求缓存的方法和装置以及SAN存储设备无效
申请号: | 200810132635.1 | 申请日: | 2008-07-08 |
公开(公告)号: | CN101299181A | 公开(公告)日: | 2008-11-05 |
发明(设计)人: | 张晓琳 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 隆天国际知识产权代理有限公司 | 代理人: | 郭晓东;邢雪红 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 磁盘 进行 请求 缓存 方法 装置 以及 san 存储 设备 | ||
技术领域
本发明涉及存储区域网络技术领域,尤其涉及一种基于磁盘进行I/O请求缓存的方法和装置,还涉及一种SAN存储设备。
背景技术
SAN(Storage Area Network,存储区域网络)是一种通过专用光纤通道网络或者IP网络将一个或多个网络存储设备与客户端连接起来的专用存储系统,用于提供客户端与存储系统之间的数据传输。SAN的工作原理为:存储设备为客户端分配块存储资源,客户端和存储设备基于存储协议,如FC(Fibre Channel,光纤通道)、iSCSI(internet Small Computer System Interface,Internet小型计算机系统接口)进行通信,实现存储资源的数据读写操作。
其中,存储设备的基础存储单元是磁盘,而且出于可靠性、大容量等方面的考虑,存储设备往往会使用多块磁盘进行数据存储。如图1所示,显示了存储设备上的一种资源管理模型:存储设备使用RAID(Redundant Array ofIndependent Disks,独立冗余磁盘阵列)策略,如RAID0、RAID1、RAID5等,将多块磁盘构成一个阵列;在阵列上创建LV(Logical Volume,逻辑卷);之后基于存储协议把LV共享给客户端,图中以iSCSI协议为例。
客户端通过在分配给它的LV上进行数据读写操作实现在存储设备上的数据存储。但限于存储设备自身的处理能力,或者磁盘接口的处理能力,对于客户端的I/O(Input&Output,读/写操作)请求往往无法做到100%的及时响应和处理,因此必须先对客户端的I/O请求进行队列缓存,之后加以调度处理。
现有技术中,I/O请求缓存技术是基于客户端或者说LV进行的:存储设备基于LV为I/O请求建立缓存队列;在接收到客户端的I/O请求时,把不同LV的I/O请求分别放入不同的缓存队列中;再由CPU轮询不同缓存队列,按先进先出的原则调度处理。这种基于LV进行I/O请求缓存的缺陷在于导致了磁盘I/O操作的随机性。
为了便于描述,在此基于图1所示的资源管理模型提供一个资源管理示例:以4块磁盘(标记为Disk 0/Disk 1/Disk 2/Disk 3)创建一个RAID0阵列(标记为Array 0),之后在Array 0上创建3个逻辑卷(标记为LV0,LV 1和LV 2)。由于磁盘和LV的基本存储单位是扇区(每扇区固定512Byte),如果按照通常的以多个(2的整数次方,如4K个)扇区为单位进行空间管理,那么在每块磁盘的地址空间为0~16384的情况下,阵列Array 0的地址空间就是0~65535;则可以分配LV 0的地址空间为0~32767,LV 1和LV 2的地址空间均为0~16383。本示例中LV、阵列和磁盘之间的映射关系如表1所示:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810132635.1/2.html,转载请声明来源钻瓜专利网。