CN1753406B - 一种基于iSCSI协议的IP存储控制方法及其装置 - Google Patents

一种基于iSCSI协议的IP存储控制方法及其装置 Download PDF

Info

Publication number
CN1753406B
CN1753406B CN2005100196681A CN200510019668A CN1753406B CN 1753406 B CN1753406 B CN 1753406B CN 2005100196681 A CN2005100196681 A CN 2005100196681A CN 200510019668 A CN200510019668 A CN 200510019668A CN 1753406 B CN1753406 B CN 1753406B
Authority
CN
China
Prior art keywords
storage
module
iscsi
memory device
application server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2005100196681A
Other languages
English (en)
Other versions
CN1753406A (zh
Inventor
周敬利
曾东
余胜生
秦磊华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN2005100196681A priority Critical patent/CN1753406B/zh
Publication of CN1753406A publication Critical patent/CN1753406A/zh
Application granted granted Critical
Publication of CN1753406B publication Critical patent/CN1753406B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种基于iSCSI协议的IP存储控制方法和装置。该方法包括初始化、路由信息提取与路由处理和并发操作处理三个步骤,它将iSCSI Initiator和iSCSI Target功能集成在一起,实现对存储应用服务器和iSCSI存储设备的统一管理,并利用iSCSI信息建立会话路由表,实现交换功能和支持多个存储应用服务器对同一iSCSI存储设备的并发存储访问。其装置包括存储目标模块、存储访问发起模块、存储管理模块、存储虚拟化模块和访问控制模块;存储应用服务器中设置有用于获取元数据信息的可装载文件系统功能模块。本发明克服了传统iSCSI存储中点到点结构的不足,简化了IP存储的配置和管理,拓展了IP存储体系结构,实现了存储并发访问控制和交换功能,有利于IP存储的普及。

Description

一种基于iSCSI协议的IP存储控制方法及其装置
技术领域
本发明属于网络存储领域,具体提出了一种基于iSCSI协议的IP存储控制方法及其装置。
背景技术
千兆以太网的不断发展和普及,为IP存储的快速发展奠定了坚实的基础,国际数据公司(IDC)最新公布的外部磁盘存储系统市场统计数据表明,近年来IP存储市场持续大幅增长,与2004年第四季度相比,2005年第一季度全球IP存储增长了22%。IP存储将成为下一代网络存储的重要发展方向之一。
相对于光纤通道存储而言,IP存储具有下列优点:
1)基于IP协议传送SCSI指令集,使SCSI数据块能够在高速千兆以太网上进行传输,并利用IP协议的技术标准实现SCSI和TCP/IP协议的连接,使系统成为一个低成本、组织灵活、开放式架构的存储平台。
2)能充分利用已有的IP网络资源,包括IP网络结构、管理工具、安全技术以及IP网络的使用经验。而且对于以局域网为网络环境的用户,需要不多的投资,就可以方便、快捷地对信息和数据进行交互式传输和管理。
3)突破光纤通道存储传输距离的限制(10公里),可以利用IP网络提供一个高速(需要高速链路的支持)、远距离的存储解决方案。
随着万兆以太网络的发展和普及,IP存储的性能将进一步得到提高。
目前,实现IP存储的协议主要有三种,它们分别是基于IP的光纤通道协议(FCIP)、Internet的光纤通道协议(iFCP)和因特网小型微型计算机系统接口协议(iSCSI)。其中前两种协议的主要目的是通过IP网络连接FC存储区域网(FC SAN)以构成一个范围更大的FC SAN,构成后的存储还是光纤通道存储,而iSCSI协议则可以完全脱离光纤通道来构建纯IP储区域网(IP SAN)。
对于基于iSCSI协议的IP存储而言,目前主要存在下列问题:
第一、主要适用点到点结构,即存储访问发起端(initiator)和存储目标端(target)之间一一对应地配置和使用,这种存储体系结构不利于存储规模的扩大。
第二、不支持多个存储应用服务器对同一存储设备的并发存储访问。
发明内容
本发明的目的在于提供一种基于iSCSI协议的IP存储控制方法,该方法不仅可以实现存储应用服务器和iSCSI存储设备的交换互连,而且还能支持多个存储应用服务器对同一iSCSI存储设备的并发存储访问,克服了传统iSCSI存储中点到点结构的不足;本发明还提供了实现该方法的装置。
本发明提供的一种基于iSCSI协议的IP存储控制方法,连接存储应用服务器和iSCSI存储设备的IP存储控制装置依次执行下述步骤:
(1)初始化:
(1.1)运行简单网络管理协议,识别出所有预置有iSCSI信息库的存储应用服务器和iSCSI存储设备;
(1.2)对识别出的iSCSI存储设备进行虚拟化处理,得到逻辑目标存储设备;
(1.3)建立存储应用服务器与逻辑目标存储设备之间的存储访问控制策略和初始路由表;
(1.4)建立元数据的共享锁和互斥锁,建立共享队列和互斥队列;
(2)路由信息提取与路由处理:
(2.1)从存储应用服务器发出的存储读/写服务访问请求中提取IP地址和TCP端口号;
(2.2)根据步骤(2.1)提取的IP地址和TCP端口号定位逻辑目标存储设备;
(2.3)检查访问请求是否与存储访问控制策略相一致,如果不一致转向步骤(2.1);
(2.4)将访问请求按照步骤(1.3)中建立的初始路由表映射到逻辑目标存储设备对应的端口;
(3)并发操作处理:
(3.1)利用锁机制,判断是否存在对同一元数据的并发操作,如果是,进入步骤(3.2),否则,各操作并行进行,完成后修改元数据信息,并向存储应用服务器反馈更新信息,然后转向步骤(2);
(3.2)判断元数据的并发操作为共享操作还是互斥操作,如果为共享操作,则读优先,写操作进入共享队列等待;否则,选择一个写操作执行,其余的写操作进入互斥队列等待;被选中的写操作执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.3)从共享队列和/或互斥队列中挑选等待的写操作执行,执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.4)判断共享队列和互斥队列是否都为空,如果都为空,则转向步骤(2),否则转向步骤(3.3)。
实现上述方法的装置,连接存储应用服务器和iSCSI存储设备;其特征在于:该装置包括存储目标模块、存储访问发起模块、存储管理模块、存储虚拟化模块和访问控制模块;存储应用服务器中设置有用于获取元数据信息的可装载文件系统功能模块;
存储目标模块用于与存储应用服务器通信、判断其访问权限,执行元数据的锁管理功能,查询和控制访问控制模块;
存储管理模块用于控制存储目标模块、存储访问发起模块和存储虚拟化模块,建立逻辑目标存储设备与iSCSI存储设备之间的初始路由表,并根据iSCSI存储设备的动态变化更新路由表;
存储虚拟化模块在存储管理模块的控制下,对存储访问发起模块识别出的iSCSI存储设备进行虚拟化处理,并为存储目标模块和访问控制模块提供统一的逻辑目标存储设备;
存储访问发起模块用于传递存储虚拟化模块和iSCSI存储设备之间的控制和数据信息,并接受来自存储管理模块的存储设备管理信息;
访问控制模块实施分区访问控制和并发访问控制,通过路由表实施存储应用服务器与iSCSI存储设备之间的存储访问控制功能。
本发明的特点主要表现在两方面,其一是有效地将iSCSI Initiator和iSCSI Target功能集成在一起,实现对存储应用服务器和iSCSI存储设备的统一管理,其二是利用iSCSI信息建立会话路由表,实现交换功能和支持多个存储应用服务器对同一iSCSI存储设备的并发存储访问。利用该发明设计的存储控制装置,简化了IP存储的配置和管理,拓展了IP存储体系结构,实现了存储并发访问控制和交换功能,有利于IP存储的普及。
附图说明
图1为基于iSCSI协议的IP存储控制方法流程图;
图2为包含本发明装置的存储系统结构示意图;
图3为IP存储控制装置的性能测试结果图。
具体实施方式
下面结合附图对本发明作进一步详细的说明。如图1所示,本发明方法的步骤为:
(1)初始化;
(1.1)运行简单网络管理协议,识别出所有预置有iSCSI信息库的存储应用服务器和iSCSI存储设备;
(1.2)对识别出的iSCSI存储设备进行虚拟化处理,得到逻辑目标存储设备;
(1.3)建立存储应用服务器与逻辑目标存储设备之间的存储访问控制策略,同时生成逻辑目标存储设备与iSCSI存储设备之间的初始路由表;
(1.4)建立元数据的共享锁和互斥锁,分别用于处理写-读相关和写-写相关,同时建立共享队列和互斥队列;
(2)路由信息提取与路由处理
(2.1)从存储应用服务器发出的存储读/写服务访问请求中提取IP地址和TCP端口号;
(2.2)根据步骤(2.1)中提取的IP地址和TCP端口号定位逻辑目标存储设备;
(2.3)检查访问请求是否与步骤(1.3)中建立的存储应用服务器与逻辑目标存储设备之间的存储访问控制策略相一致,如果不一致则终止该访问请求,转向步骤(2.1)重新接收新的请求。
(2.4)将访问请求按照步骤(1.3)中建立的路由表映射到逻辑目标存储设备所对应的端口;
(3)并发操作处理:
(3.1)利用锁机制,判断是否存在对同一元数据的并发操作,如果是,进入步骤(3.2),否则,各操作并行进行,每个操作完成后分别修改元数据信息,并向存储应用服务器反馈更新信息,然后转向步骤(2)进入下一轮存储访问操作处理;
(3.2)判断元数据的并发操作为共享操作还是互斥操作,如果为共享操作,则读优先,写操作进入共享队列等待;否则,按照预先设定的策略(如按优先级、顺序或随机)选择一个写操作执行,其余的写操作按设定的策略进入互斥队列等待;被选中的写操作执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.3)从共享队列和/或互斥队列中挑选等待的写操作执行,执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.4)判断共享队列和互斥队列是否都为空,如果都为空,则转向步骤(2),否则转向步骤(3.3)。
如图2所示,实现上述方法的IP存储控制装置2由存储目标模块4、存储访问发起模块5、存储管理模块6、存储虚拟化模块7和访问控制模块8五部分组成。
存储控制装置2连接存储应用服务器1和iSCSI存储设备3,共同构成IP存储系统,实现多个存储应用服务器和多个iSCSI存储设备的交换,支持多个存储应用服务器对同一iSCSI存储设备的并发存储访问,从而克服了传统iSCSI存储中点到点结构的不足。存储应用服务器1由m个子存储应用服务器1.1~1.m构成,在各子存储应用服务器1.1~1.m中均设置有可装载文件系统功能模块9.1~9.m,用于获取元数据信息,iSCSI存储设备3由n个子iSCSI存储设备3.1~3.n构成,其中,m和n的取值主要由装置的端口数量确定。
存储目标模块4用于接收存储应用服务器1发出的存储读/写服务请求,提取该请求中的IP地址和TCP端口号并定位逻辑存储设备,然后查询访问控制模块8,判断存储应用服务器是否有对逻辑存储设备的访问权限,如果没有访问权限就拒绝该请求,如果具有访问权限,则接受该请求,并通过访问控制模块8向被存储虚拟化模块7虚拟化后的逻辑存储设备转发存储应用服务器的存储访问请求。除上述功能外,存储目标模块4还执行元数据的锁管理功能,并与存储应用服务器端的可装载文件系统功能模块9.1~9.m通信,向存储应用服务器1反馈待访问数据的元数据锁状态。
存储管理模块6利用简单网络管理协议(SNMP),控制存储目标模块4识别预置有iSCSI信息库的存储应用服务器1,并控制存储访问发起模块5识别预置有iSCSI信息库的iSCSI存储设备3,在此基础之上,存储管理模块6还要控制存储虚拟化模块7对存储访问发起模块6识别出的iSCSI存储设备进行虚拟化处理,在此基础上建立逻辑目标存储设备与iSCSI存储设备之间的初始路由表,并根据iSCSI存储设备的动态变化更新路由表。
存储虚拟化模块7在存储管理模块6的控制下,对存储访问发起模块5识别出的iSCSI存储设备进行虚拟化处理,从而屏蔽iSCSI存储设备在物理特性上可能存在的不同(如容量、转速),并为存储目标模块4和访问控制模块8提供统一的逻辑存储设备,该逻辑存储设备就是经过虚拟化处理后的iSCSI存储设备的存储视图。存储虚拟化通过屏蔽不同存储设备的物理差异并提供统一的存储视图来简化存储目标模块4对iSCSI存储设备读/写处理和简化访问控制模块8对iSCSI存储设备的访问控制处理。
存储访问发起模块5用于传递存储虚拟化模块7和iSCSI存储设备之间的控制和数据信息,并接受来自存储管理模块6的存储设备管理信息,被存储访问发起模块5连接的iSCSI存储设备经过存储虚拟化模块7进行虚拟化处理后得到逻辑目标存储设备。
访问控制模块8实施访问控制功能,具体包括分区访问控制和并发访问控制。访问控制模块8从存储应用服务器1发出的读/写请求中提取出存储应用服务器的IP地址和TCP端口号,通过路由表实施存储应用服务器1与iSCSI存储设备3之间的存储访问控制功能。
我们基于INTEL XSCAL IOP技术进行了控制器原型设计,在100兆网络环境下利用IOMeter软件测试了系统性能″其中存储应用服务器采用ADM1.6GHZ的CPU,512M内存,操作系统是Linux2.4.20-8;IP存储设备采用XEON1.7GHZ CPU,512M内存,操作系统也是Linux2.4.20-8。存储控制器为Intel IQ31244,256MRAM,2个Gb NIC,IOP600MHz。IOMeter设置为100%顺序写、I/O并发数为16。测试结果如图3所示。

Claims (2)

1.一种基于iSCSI协议的IP存储控制方法,连接存储应用服务器和iSCSI存储设备的IP存储控制装置依次执行下述步骤:
(1)初始化:
(1.1)运行简单网络管理协议,识别出所有预置有iSCSI信息库的存储应用服务器和iSCSI存储设备;
(1.2)对识别出的iSCSI存储设备进行虚拟化处理,得到逻辑目标存储设备;
(1.3)建立存储应用服务器与逻辑目标存储设备之间的存储访问控制策略和初始路由表;
(1.4)建立元数据的共享锁和互斥锁,建立共享队列和互斥队列;
(2)路由信息提取与路由处理
(2.1)从存储应用服务器发出的存储读/写服务访问请求中提取IP地址和TCP端口号;
(2.2)根据步骤(2.1)提取的IP地址和TCP端口号定位逻辑目标存储设备;
(2.3)检查访问请求是否与存储访问控制策略相一致,如果不一致转向步骤(2.1);
(2.4)将访问请求按照步骤(1.3)中建立的初始路由表映射到逻辑目标存储设备所对应的端口;
(3)并发操作处理:
(3.1)利用锁机制,判断是否存在对同一元数据的并发操作,如果是,进入步骤(3.2),否则,各操作并行进行,完成后修改元数据信息,并向存储应用服务器反馈更新信息,然后转向步骤(2);
(3.2)判断元数据的并发操作为共享操作还是互斥操作,如果为共享操作,则读优先,写操作进入共享队列等待;否则,选择一个写操作执行,其余的写操作进入互斥队列等待;被选中的写操作执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.3)从共享队列和/或互斥队列中挑选等待的写操作执行,执行完成后修改元数据信息,并向存储应用服务器反馈更新信息;
(3.4)判断共享队列和互斥队列是否都为空,如果都为空,则转向步骤(2),否则转向步骤(3.3)。
2.一种实现权利要求1所述方法的装置,连接存储应用服务器和iSCSI存储设备;其特征在于:该装置包括存储目标模块(4)、存储访问发起模块(5)、存储管理模块(6)、存储虚拟化模块(7)和访问控制模块(8);存储应用服务器中设置有用于获取元数据信息的可装载文件系统功能模块;
存储目标模块(4)用于与存储应用服务器(1)通信、判断其访问权限,执行元数据的锁管理功能,查询和控制访问控制模块(8);
存储管理模块(6)用于控制存储目标模块(4)、存储访问发起模块(5)和存储虚拟化模块(7),建立逻辑目标存储设备与iSCSI存储设备之间的初始路由表,并根据iSCSI存储设备的动态变化更新路由表;
存储虚拟化模块(7)在存储管理模块(6)的控制下,对存储访问发起模块(5)识别出的iSCSI存储设备进行虚拟化处理,并为存储目标模块(4)和访问控制模块(8)提供统一的逻辑目标存储设备;
存储访问发起模块(5)用于传递存储虚拟化模块(7)和iSCSI存储设备之间的控制和数据信息,并接受来自存储管理模块(6)的存储设备管理信息;
访问控制模块(8)实施分区访问控制和并发访问控制,通过路由表实施存储应用服务器(1)与iSCSI存储设备(3)之间的存储访问控制功能。
CN2005100196681A 2005-10-26 2005-10-26 一种基于iSCSI协议的IP存储控制方法及其装置 Expired - Fee Related CN1753406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2005100196681A CN1753406B (zh) 2005-10-26 2005-10-26 一种基于iSCSI协议的IP存储控制方法及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2005100196681A CN1753406B (zh) 2005-10-26 2005-10-26 一种基于iSCSI协议的IP存储控制方法及其装置

Publications (2)

Publication Number Publication Date
CN1753406A CN1753406A (zh) 2006-03-29
CN1753406B true CN1753406B (zh) 2010-06-30

Family

ID=36680088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005100196681A Expired - Fee Related CN1753406B (zh) 2005-10-26 2005-10-26 一种基于iSCSI协议的IP存储控制方法及其装置

Country Status (1)

Country Link
CN (1) CN1753406B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100581172C (zh) 2006-04-19 2010-01-13 杭州华三通信技术有限公司 一种对目的磁盘进行访问的方法和扩展磁盘容量的系统
CN100409673C (zh) * 2006-07-21 2008-08-06 南京航空航天大学 基于嵌入式ip存储技术的高性能分布式并行存储系统
US7562163B2 (en) * 2006-08-18 2009-07-14 International Business Machines Corporation Apparatus and method to locate a storage device disposed in a data storage system
CN1964345B (zh) * 2006-09-25 2010-06-30 杭州华三通信技术有限公司 组播流的处理方法及网络设备
CN101022400B (zh) * 2007-03-16 2011-04-06 杭州华三通信技术有限公司 一种实现网络存储系统的资源分配方法及装置
CN101022425B (zh) * 2007-04-02 2012-05-23 杭州华三通信技术有限公司 基于iscsi的存储资源的分配方法
ATE541397T1 (de) * 2008-02-27 2012-01-15 Nokia Corp Transportunabhängige architektur
CN101488924B (zh) * 2009-02-16 2011-11-16 成都市华为赛门铁克科技有限公司 一种元数据的修改方法和元数据服务器
CN101815036B (zh) * 2010-04-21 2014-10-22 中兴通讯股份有限公司 一种实现访问控制的方法和装置
CN106775458A (zh) * 2016-11-29 2017-05-31 郑州云海信息技术有限公司 一种利用iSCSI实现存储设备虚拟化的方法及装置
CN109413142B (zh) * 2018-09-07 2020-07-31 电信科学技术第五研究所有限公司 一种Linux下的iSCSI虚拟代理实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430645B1 (en) * 1999-06-09 2002-08-06 International Business Machines Corporation Fibre channel and SCSI address mapping for multiple initiator support
US6683883B1 (en) * 2002-04-09 2004-01-27 Sancastle Technologies Ltd. ISCSI-FCP gateway
CN1487417A (zh) * 2002-09-05 2004-04-07 �Ҵ���˾ iSCSI驱动程序与适配器的接口协议
CN1543092A (zh) * 2003-11-07 2004-11-03 清华大学 基于fc-san存储设备的scsi命令优化方法
CN1633131A (zh) * 2005-01-14 2005-06-29 清华大学 一种iSCSI存储系统的实现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430645B1 (en) * 1999-06-09 2002-08-06 International Business Machines Corporation Fibre channel and SCSI address mapping for multiple initiator support
US6683883B1 (en) * 2002-04-09 2004-01-27 Sancastle Technologies Ltd. ISCSI-FCP gateway
CN1487417A (zh) * 2002-09-05 2004-04-07 �Ҵ���˾ iSCSI驱动程序与适配器的接口协议
CN1543092A (zh) * 2003-11-07 2004-11-03 清华大学 基于fc-san存储设备的scsi命令优化方法
CN1633131A (zh) * 2005-01-14 2005-06-29 清华大学 一种iSCSI存储系统的实现方法

Also Published As

Publication number Publication date
CN1753406A (zh) 2006-03-29

Similar Documents

Publication Publication Date Title
CN1753406B (zh) 一种基于iSCSI协议的IP存储控制方法及其装置
CN100396065C (zh) 一种iSCSI存储系统的实现方法
CN108268208B (zh) 一种基于rdma的分布式内存文件系统
US9304902B2 (en) Network storage system using flash storage
US7437462B2 (en) Method for zoning data storage network using SAS addressing
JP5026283B2 (ja) 協調的共用ストレージアーキテクチャ
US7124169B2 (en) Network system and its switches
US7774548B2 (en) Dynamic, on-demand storage area network (SAN) cache
JP5378510B2 (ja) 管理システム
US7808996B2 (en) Packet forwarding apparatus and method for virtualization switch
JP2008542887A5 (zh)
CN103257941B (zh) 多协议存储控制器和系统
JP2004506980A (ja) コンピュータネットワークを介してブロックレベルストレージアクセスを提供するためのアーキテクチャ
JP2008546049A (ja) 宛先ディスクへのアクセス方法とディスク容量拡張システム及びディスクアレイ
CN103186498B (zh) 通过sas域在sata主机与sata目标装置间通信的方法和结构
CN103338217A (zh) 基于低等待时间接口的连网
WO2003023640A2 (en) Load balancing method for exchanging data between multiple hosts and storage entities, in ip based storage area network
WO2015117303A1 (zh) 一种虚拟设备访问方法及装置
CN109302494A (zh) 一种网络存储系统的配置方法、装置、设备及介质
CN102375789A (zh) 一种通用网卡非缓存的零拷贝方法及零拷贝系统
CN101291202B (zh) 数据传输路径的管理方法和主机服务器
CN101242412A (zh) 一种多维数据实例传送的方法和装置以及系统
WO2001006385A1 (en) A communication system for general connection interface machines
CN1444149A (zh) 基于网络存储和可扩展体系结构的服务器系统及方法
CN102868684A (zh) 一种光纤通道目标器及光纤通道目标器实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100630

Termination date: 20111026