专利名称:基于iscsi的存储资源的分配方法
技术领域:
本发明涉及通过网络的存储资源的分配方法,尤其涉及基于ISCSI(Internet Small Computer System Interface,互联网小型计算机系统接口)协议的存储资源的分配方法。
背景技术:
当今,计算机系统部分通过在单个或最小数量的结构来完成自动化,例如计算机包括中央处理器(CPU)、硬盘驱动器、随机存取存储器(RAM)、只读存储器(ROM)、软盘驱动器以及光盘只读存储器(CDRM)等等,此类设备通常通过计算机系统内的另一集中式单元(如,主板)连接到计算机化系统,而所述设备可以通过SCSI(Small Computer SystemInterface,小型计算机系统接口)建立连接。
SCSI(Small Computer System Interface,小型计算机系统接口)标准体系规范了应用主机和外部设备之间进行数据块I/O(输入/输出)操作的过程,外部设备包括磁盘、磁带、光盘、打印机、扫描仪等。SCSI设备的参考模型是一个典型的客户端-服务器结构,发起服务请求的一方(如应用服务器)称为发起方(Initiator),接受服务请求的一方(如存储系统)称为目标方(Target),发起方和目标方之间可以有不同的物理连接方式。
ISCSI(Internet Small Computer System Interface,互联网小型计算机系统接口)是一种基于TCP/IP的SCSI传输协议,用以在客户端和存储系统之间通过IP网络来传输SCSI命令和数据。目前,ISCSI技术已经标准化(RFC3720、RFC3721等),并且在业界逐步取得广泛的应用。
ISCSI协议的一个典型应用如图1所示。应用服务器安装一个ISCSI发起方模块,存储系统中集成一个ISCSI目标方模块。应用服务器则把SCSI命令和/或数据封装在ISCSI报文中,通过IP网络发送给存储系统,存储系统对每个ISCSI报文进行处理,取出其中的数据并写入到存储介质(如磁盘)中。
目前通过ISCSI实现分配存储资源的方法是,网络管理员事先在存储系统上建立需要的存储资源,同时静态配置客户端的IP地址和发起方的名称,客户端通过ISCSI发起方模块与存储系统的ISCSI目标方模块建立连接,从而使用存储资源。
以图1为例,存储系统的IP地址是192.168.0.1,在其上手动建立一个100G的资源A,然后手动静态配置应用服务器的IP地址192.168.0.11,并手动静态配置应用服务器的ISCSI发起方的名称为iqn.2007-02.com.h3c.storage:server11,利用应用服务器自带的ISCSI发起方模块与存储系统的ISCSI目标方模块建立连接,对资源A进行数据读写。
因此,现有方案操作比较繁琐首先存储系统上的存储资源需要管理员手工建立,同时应用服务器的IP地址和发起方名称都需要管理员静态规划配置,两者的连接建立也需要手工操作。尤其,客户端很多时,手工配置的工作量是巨大的,而且容易出错。
发明内容
本发明的目的在于提供一种基于ISCSI的存储资源的分配方法,该方法可以自动分配存储资源,同时为应用服务器动态规划配置,并且在应用服务器和存储系统服务器之间自动建立连接。
因此为了达到本发明的发明目的,本发明为一种存储资源的分配方法,其中,该方法包括A,存储系统自动为客户端分配IP地址;B,客户端在获得IP地址后自动向存储系统发起建立ISCSI连接,以获得存储资源。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,所述步骤A,是基于动态分配IP地址的协议完成的。根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,在所述步骤A之前,包括存储系统判断提出请求的该客户端是否合法的步骤,若该客户端合法则为其分配IP地址,划分资源,同时根据该客户端的信息为所划分的资源命名,若非法则向客户端返回错误信息。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,在所述步骤A之前,还包括存储系统判断自身是否具有足够存储资源的步骤,若该存储系统具有足够存储资源则为该客户端分配IP地址划分资源,同时根据该客户端的信息为所划分的资源命名,若非法则向客户端返回错误信息。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,在存储系统判断提出请求的该客户端是否合法的步骤中,存储系统根据该客户端的硬件标识判断其是否合法。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,所述客户端的硬件标识为MAC信息。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,所述步骤B进一步包括B1,通过ISCSI发起方名称判断该客户端是否合法,若合法,则在客户端和存储系统之间建立ISCSI连接,若不合法,执行步骤B2;B2,拒绝该ISCSI连接。
根据本发明优选具体实施例所述的基于ISCSI的存储资源的分配方法,其中,在步骤B中,客户端以获得的IP地址为ISCSI发起方命名。
另外,为了达到本发明的发明目的,本发明提供一种与存储系统相连的客户端,其特征在于,该客户端包括IP地址请求模块和ISCSI连接模块,所述动态IP地址请求模块用于在客户端与存储系统建立物理连接以后,向所述存储系统发起动态IP地址请求;所述ISCSI处理模块在所述存储系统返回IP地址后,向所述存储系统自动发起ISCSI连接请求。
根据本发明优选具体实施例所述的与存储系统相连的客户端,其中,该ISCSI连接模块进一步包括为ISCSI发起方命名的命名单元,所述命名单元在接收到所述存储系统返回的IP地址以后,根据获得的IP地址为ISCIS发起方命名。
本发明还提供一种与上述客户端相连的存储系统,其中,所述存储系统包括动态IP地址分配模块,该动态IP地址分配模块接收并处理来自所述客户端的动态IP地址分配请求,向所述客户端分配动态IP地址。
根据本发明优选具体实施例所述的与上述客户端相连的存储系统,其中,所述存储系统进一步包括MAC地址管理模块和资源管理模块,所述MAC地址管理模块检查收到的动态IP地址分配请求中的MAC地址是否合法,所述资源管理模块检查所述存储系统是否存在满足要求的存储资源,所述MAC地址管理模块和资源管理模块均将判断结果返回给所述IP地址分配模块。
根据本发明优选具体实施例所述的与上述客户端相连的存储系统,其中,所述IP地址分配模块获取所述判断结果后,针对符合条件的请求,分配IP地址,划分存储资源,并根据该客户端的信息为划分的存储资源命名,针对不符合条件的请求,返回失败信息。
根据本发明优选具体实施例所述的与上述客户端相连的存储系统,其中,所述存储系统进一步包括ISCSI处理模块,接收所述客户端的ISCIS连接请求,根据所述客户端的发起方名称判断所述客户端是否为合法,如为合法,则响应连接,如为非法,则拒绝连接。
本发明的优点在于本发明使得应用服务器物理连接上存储系统即可自动获得存储资源,几乎无需管理员干预;另外,本发明还可以防止非法应用服务器的非法连接从而保证信息安全。
图1根据现有技术的ISCSI协议的典型应用的示意图;图2根据本发明的基于ISCSI的存储资源的分配方法的流程图;图3根据本发明的存储系统为应用服务器分配IP地址的流程图;图4根据本发明的基于ISCSI的存储资源的分配方法的典型应用的示意图;以及图5根据本发明的基于ISCSI的存储资源的分配装置的模块图。
具体实施例方式
为了达到本发明的发明目的,本具体实施例为一种实用便捷的基于ISCSI的存储资源的分配方法,为了阐述方便,本具体实施例将应用服务器作为客户端解释本发明,所述客户端在实际应用中可为包括磁盘、磁带、光盘、打印机、扫描仪等的其他各种外部设备。
本具体实施例的基本原理及必要过程为用户在存储系统上启用DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)服务器端功能,在存储系统上有一张合法应用服务器的MAC(Media AccessControl,介质访问控制)信息表,同时,在应用服务器端启用DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)客户端功能。应用服务器物理连接上存储系统时,通过DHCP客户端功能向存储系统提出动态IP地址分配,存储系统收到动态IP地址分配请求后,判断该应用服务器是否合法以及存储资源是否足够,并根据判断结果分配IP地址及存储资源并根据客户端的信息为存储资源命名或返回错误信息;应用服务器获得动态IP地址之后,则以获得的IP地址为名称启用ISCSI发起方功能,自动与存储系统建立ISCSI连接;存储系统收到ISCSI连接请求后,通过名称检查该应用服务器是否为自己分配IP地址的DHCP客户端,并根据判断结果分配相应存储资源或拒绝该ISCSI连接请求。应用服务器与存储系统建立ISCSI连接后,即可对该存储资源进行正常的数据读写。
以下结合附图具体说明该基于ISCSI分配存储资源的方法的各个步骤。如图2所示,该方法的具体实施例由三个步骤组成S1应用服务器向存储系统发出IP地址分配请求。
在存储系统上启用DHCP服务器端功能并提供用户接口,从而用户可以指定统一的资源分配量,或者通过DHCP的选项字段(Option Field,非必要字段)来携带用户所需资源分配量的相关信息,基于该资源分配量的相关信息,存储系统可以定制的为应用服务器分配存储资源。同时在应用服务器上启用DHCP客户端功能。因此,应用服务器通过该用户接口与存储系统建立物理连接后,基于DHCP向该存储系统发出IP地址动态分配请求,其中,该IP地址动态分配请求包括该应用服务器的MAC信息。
在本具体实施例中,该IP地址动态分配请求包括该应用服务器的MAC信息并与后续步骤相对应,其中应用服务器的MAC信息也可由CPU序列号等其他硬件标识来代替,并与后续步骤相对应。
S2存储系统为应用服务器分配IP地址。
如上所述,相应于在应用服务器上启用DHCP客户端功能,在存储系统上启用DHCP服务器端功能,从而基于DHCP为应用服务器分配IP地址。该步骤具体包括如图3所示的三个步骤。
S21存储系统判断提出该请求的应用服务器是否合法。
收到来自应用服务器的DHCP地址请求后,存储系统判断提出该请求的应用服务器是否合法,如果不合法,那么拒绝分配地址并向该应用服务器返回错误信息;如果合法,则进行下一步骤。
其中,判断该应用服务其是否合法的方法是,在存储系统上存储合法应用服务器的MAC(Media Access Control,介质访问控制)信息表,在收到包括该应用服务器的MAC信息的IP地址动态分配请求后,存储系统根据其合法应用服务器的MAC信息表是否包括该应用服务器的MAC信息进而判断该应用服务器是否合法。
在本具体实施例中,存储系统采用应用服务器的MAC信息作为判断该应用服务器是否合法的信息,同时存储系统也可以采用CPU序列号等其他硬件标识作为判断该应用服务器是否合法的信息。
S22存储系统判断自身是否有足够的资源。
经过步骤S21判断该应用服务器合法后,存储系统判断自身是否有足够的用户指定的资源分配量,如果资源不足,则拒绝给应用服务器分配IP地址并向该应用服务器返回错误信息;如果资源足够,则进行下一步骤。
S23存储系统为该应用服务器划分出相应的资源空间并为该应用服务器分配IP地址,同时根据分配给应用服务器的IP地址为划分出的资源空间命名。
本具体实施例中,存储系统根据分配给应用服务器的IP地址为划分出的资源空间命名,其中,存储系统也可以根据应用服务器的其他硬件标示信息为划分出的资源空间命名,比如MAC,CPU序列号等等。
经过步骤S21和S22的判断,确定该应用服务器合法,并且该存储系统具有足够的存储资源,则存储系统为该应用服务器划分出相应的存储空间并为该应用服务器分配IP地址,同时根据给应用服务器分配的IP地址为相应的存储空间命名。其中,步骤S21和步骤S22的设置和顺序并不固定,可按用户要求改变。
在本具体实施例中,DHCP采用自动分配的方式,即DHCP服务器分配地址后就不再回收,同样DHCP客户端获得IP地址后就不再释放,这也是存储系统应用所需要的模式。
在本具体实施例中,存储系统和应用服务器采用DHCP协议作为动态分配IP地址的协议,在其他实施方案中,也可采用BOOTP等其他协议作为动态分配IP地址的协议。
客户端所需存储资源量也可以通过其他协议交互来告知存储系统,从而让存储系统定制化的为不同的客户端分配资源。
S3应用服务器向存储系统自动发起建立ISCSI连接。
应用服务器通过DHCP获得IP地址之后,则使用该IP地址命名ISCSI发起方名称,自动向划分给该应用服务器的存储空间发起ISCSI连接请求,由于该相应的存储空间根据给应用服务器分配的IP地址命名而无需任何手工操作。其中,ISCSI发起方的名称也可以采用网口MAC地址、CPU序列号等硬件标识命名、或者根据用户自定义标识命名。
S4存储系统判断该应用服务器是否合法。
存储系统收到应用服务器发送的该ISCSI连接请求后,通过其ISCSI发起方名称判断该应用服务器是否为该存储系统分配IP地址的应用服务器,若该应用服务器并非该存储系统分配IP地址的应用服务器,则存储系统拒绝该ISCSI连接请求并向该应用服务器返回错误信息,若该应用服务器为该存储系统分配IP地址的应用服务器,则进行下一步骤。
S5存储系统与该应用服务器建立ISCSI连接。
在确定该应用服务器为该存储系统分配IP地址的应用服务器后,存储系统向该应用服务器分配相应的存储资源,因此该应用服务器可以在该存储系统上读取其相应存储资源的数据。
以下结合图4以一应用服务器与存储系统建立连接为例说明基于本发明分配方法的一个典型应用。存储系统的IP地址是192.168.0.1/24,DHCP服务器端的IP地址池的范围是192.168.0.2~192.168.0.254,存储系统设定统一的资源分配量为100G。一台应用服务器A集成有一个ISCSI发起方模块(软件的ISCSI驱动程序或者一块支持ISCSI协议的网卡)。
当A物理连接上存储系统后,发起基于DHCP的IP地址动态分配请求,存储系统收到请求后,判断A的MAC地址是否合法,若合法,再检查当前存储系统是否有足够的资源,若有,则分配IP地址192.168.0.11分配给A,同时划分100G的存储资源V给A,该存储资源根据A的IP地址命名为100G-192.168.0.11。A根据动态获得的IP地址为ISCSI发起方命名iqn.2007-02.com.h3c.storageIP192.168.0.11,同时自动与存储系统的相应存储资源V建立ISCSI连接,对资源V进行读写。
另外,如图5所示,为了达到本发明的发明目的,本具体实施例提供包括IP地址分配模块的存储系统以及包括动态IP地址请求模块和ISCSI连接模块的应用服务器,其中应用服务器的动态IP地址请求模块向该IP地址分配模块发送IP地址分配请求,该IP地址分配模块向该应用服务器发送IP地址信息,该ISCSI连接模块存储系统发送ISCSI建立请求。
用户在存储系统上设置统一的资源分配量,或者用户可以通过DHCP的选项字段(Option Field,非必要字段)来携带用户所需资源分配量的相关信息,基于该资源分配量的相关信息,存储系统可以定制的为应用服务器分配存储资源,并在存储系统的IP地址分配单元上启用DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)服务器端功能。此外,在该应用服务器中进一步包括MAC地址管理单元和资源管理单元,并保存有合法应用服务器的MAC(Media Access Control,介质访问控制)信息表。
同时,用户在应用服务器端启用DHCP(Dynamic Host ConfigurationProtocol,动态主机配置协议)客户端功能。应用服务器物理连接上存储系统时,其动态IP地址请求模块通过DHCP客户端功能向存储系统的IP地址分配模块提出动态IP地址分配请求,存储系统的IP地址分配模块在响应动态IP地址分配请求之前,通过MAC地址管理模块根据合法应用服务器的MAC信息表判断该应用服务器是否合法,以及资源管理模块判断存储资源是否足够,并根据判断结果分配IP地址及存储资源或返回错误信息。经过MAC地址管理模块和资源管理模块的判断,确定该应用服务器合法,并且该存储系统具有足够的存储资源,则存储系统为该应用服务器划分出相应的存储空间并为该应用服务器分配IP地址,同时根据给应用服务器分配的IP地址为相应的存储空间命名。
在本具体实施例中,存储系统采用应用服务器的MAC信息作为判断该应用服务器是否合法的信息,采用MAC地址管理模块作为判断模块,同时存储系统也可以采用CPU序列号等其他硬件标识作为判断该应用服务器是否合法的信息,因此本具体实施例的MAC地址管理模块可由其他硬件标示管理模块所替代。
同时,本具体实施例中,存储系统根据分配给应用服务器的IP地址为划分出的资源空间命名,其中,存储系统也可以根据应用服务器的其他硬件标示信息为划分出的资源空间命名,比如MAC,CPU序列号等等。
该应用服务器的ISCSI连接模块进一步包括ISCSI发起方命名单元,应用服务器获得动态IP地址之后,则该ISCSI发起方命名单元以获得的IP地址为名称为该应用服务器命名作为ISCSI发起方名称,并启用ISCSI发起方功能,然后该应用服务器的ISCSI连接模块自动与存储系统建立ISCSI连接;存储系统收到ISCSI连接请求后,使用ISCSI处理模块通过名称检查该应用服务器是否为自己分配IP地址的DHCP客户端,其中,ISCSI处理模块连接于存储系统的处理器和ISCSI连接模块之间,并根据判断结果分配相应存储资源或拒绝该ISCSI连接请求。应用服务器与存储系统建立ISCSI连接后,即可对该存储资源进行正常的数据读写。
在本具体实施例中,存储系统和应用服务器采用DHCP协议作为动态分配IP地址的协议,在其他实施方案中,也可采用BOOTP等其他协议作为动态分配IP地址的协议。
客户端所需存储资源量也可以通过其他协议交互来告知存储系统,从而让存储系统定制化的为不同的客户端分配资源。
需要声明的是,上述发明内容及具体实施方式
意在证明本发明所提供技术方案的实际应用,不应解释为对本发明保护范围的限定。本领域技术人员在本发明的精神和原理内,当可作各种修改、等同替换、或改进。本发明的保护范围以所附权利要求书为准。
权利要求
1.一种存储资源的分配方法,其特征在于,该方法包括A.存储系统自动为客户端分配IP地址;B.客户端在获得IP地址后自动向存储系统发起建立ISCSI连接,以获得存储资源。
2.如权利要求1所述的基于ISCSI的存储资源的分配方法,其特征在于,所述步骤A,是基于动态分配IP地址的协议完成的。
3.如权利要求2所述的基于ISCSI的存储资源的分配方法,其特征在于,在所述步骤A之前,包括存储系统判断提出请求的该客户端是否合法的步骤,若该客户端合法则为其分配IP地址,划分资源,同时根据该客户端的信息为所划分的资源命名,若非法则向客户端返回错误信息。
4.如权利要求2所述的基于ISCSI的存储资源的分配方法,其特征在于,在所述步骤A之前,还包括存储系统判断自身是否具有足够存储资源的步骤,若该存储系统具有足够存储资源则为该客户端分配IP地址划分资源,同时根据该客户端的信息为所划分的资源命名,若非法则向客户端返回错误信息。
5.如权利要求3所述的基于ISCSI的存储资源的分配方法,其特征在于,在存储系统判断提出请求的该客户端是否合法的步骤中,存储系统根据该客户端的硬件标识判断其是否合法。
6.如权利要求5所述的基于ISCSI的存储资源的分配方法,其特征在于,所述客户端的硬件标识为MAC信息。
7.如权利要求1所述的基于ISCSI的存储资源的分配方法,其特征在于,所述步骤B进一步包括B1.通过ISCSI发起方名称判断该客户端是否合法,若合法,则在客户端和存储系统之间建立ISCSI连接,若不合法,执行步骤B2;B2.拒绝该ISCSI连接。
8.如权利要求7所述的基于ISCSI的存储资源的分配方法,其特征在于,在步骤B中,客户端以获得的IP地址为ISCSI发起方命名。
9.一种与存储系统相连的客户端,其特征在于,该客户端包括IP地址请求模块和ISCSI连接模块,所述动态IP地址请求模块用于在客户端与存储系统建立物理连接以后,向所述存储系统发起动态IP地址请求;所述ISCSI处理模块在所述存储系统返回IP地址后,向所述存储系统自动发起ISCSI连接请求。
10.如权利要求9所述的与存储系统相连的客户端,其特征在于,该ISCSI连接模块进一步包括为ISCSI发起方命名的命名单元,所述命名单元在接收到所述存储系统返回的IP地址以后,根据获得的IP地址为ISCIS发起方命名。
11.一种与权利要求9所述的客户端相连的存储系统,其特征在于,所述存储系统包括动态IP地址分配模块,该动态IP地址分配模块接收并处理来自所述客户端的动态IP地址分配请求,向所述客户端分配动态IP地址。
12.如权利要求11所述的存储系统,其特征在于,所述存储系统进一步包括MAC地址管理模块和资源管理模块,所述MAC地址管理模块检查收到的动态IP地址分配请求中的MAC地址是否合法,所述资源管理模块检查所述存储系统是否存在满足要求的存储资源,所述MAC地址管理模块和资源管理模块均将判断结果返回给所述IP地址分配模块。
13.如权利要求12所述的存储系统,其特征在于,所述IP地址分配模块获取所述判断结果后,针对符合条件的请求,分配IP地址,划分存储资源,并根据该客户端的信息为划分的存储资源命名,针对不符合条件的请求,返回失败信息。
14.如权利要求11所述的存储系统,其特征在于,所述存储系统进一步包括ISCSI处理模块,接收所述客户端的ISCIS连接请求,根据所述客户端的发起方名称判断所述客户端是否为合法,如为合法,则响应连接,如为非法,则拒绝连接。
全文摘要
本发明为一种基于ISCSI分配存储资源的方法,该方法包括A.存储系统自动为客户端分配IP地址;B.客户端在获得IP地址后自动向存储系统发起建立ISCSI连接,以获得存储资源。本发明的优点在于本发明使得应用服务器物理连接上存储系统即可自动获得存储资源,几乎无需管理员干预;另外,本发明还可以防止非法应用服务器的非法连接从而保证信息安全。
文档编号H04L29/12GK101022425SQ200710092150
公开日2007年8月22日 申请日期2007年4月2日 优先权日2007年4月2日
发明者夏飞, 周迪 申请人:杭州华为三康技术有限公司