具有双控制器的磁盘阵列的控制方法与其控制系统的制作方法

文档序号:6600316阅读:120来源:国知局
专利名称:具有双控制器的磁盘阵列的控制方法与其控制系统的制作方法
技术领域
本发明涉及一种磁盘阵列的控制方法与其控制系统,特别涉及一种具有双控制器的磁盘阵列的控制方法与其控制系统。
背景技术
虚拟储存设备称为储存局域网络(Storage Area Network,SAN),主要由客户端 110 anitiator)及目标端120 (target)构成,请参考图1所示。客户端110传送存取请求与目标端120建立通话联机(Session)。目标端120可视为网络的可用储存装置资源的管理/ 分配者。在目标端120—方连接有多组储存设备130,储存设备130的种类可以不限定同一种。换句话说,目标端120可以同时连接冗余磁盘阵列(Redundant Array of Independent Disks,简称RAID)与单颗硬盘。以下是以具有双控制器(以下是以第一控制器与第二控制器作为说明)的因特网小型计算机系统界面(internet Small Computer Systems Interface,简称 iSCSI)作为储存局域网络运作的说明。iSCSI通过TCP/IP通讯协议连接网络的多台计算机主机,以串联多个分散于因特网的储存设备130成为虚拟的网络储存设备。使用者存取此网络储存设备,就如同存取本机硬盘装置。相较于传统小型计算机系统界面(Small Computer Systems hterface,简称SCSI)及RAID技术,iSCSI技术兼具SCSI的高速传输能力,却又不受限于储存设备130的扩充/备分能力,可无限制扩充虚拟储存设备的容量。第一控制器在接收到客户端110的存取要求后,将封包内容逐层的转换成传输控制协议(transformer control protocol,简称TCP)的封包,将封包映像至网络卡中的固件层。最后,由网络卡的固件层将封包通过发送单元(egress packetgenerator)发送至储存设备130。在现有的情况下,都是由第一控制器接收来自客户端的存取操作要求。并由第一控制器判断存取操作要求所欲存取的储存设备130是否为第一控制器所管辖。若客户端欲存取的储存设备130是为第一控制器所管辖时,则由第一控制器调配储存设备130用以提供客户端进行存取。反之,由第一控制器通过内部网络将操作存取要求发送给第二控制器。 如此一来,所有存取调配的负载将落在第一控制器上,使得第一控制器与第二控制器的工作负载将产生严重的不平衡,而且通过内部网络传输也会占用储存设备的存取频宽。

发明内容
鉴于以上的问题,本发明的主要目的在于提供一种具有双控制器的磁盘阵列的控制方法,根据客户端(客户端)对储存设备的存取操作要求,用以选择相应的储存设备。为达到上述目的,本发明所揭露的具有双控制器的磁盘阵列的控制方法包括以下步骤初始储存设备,并设定储存设备中的多个目标设备;分别于第一控制器与第二控制器上运行因特网小型计算机接口服务,在第一控制器的因特网小型计算机接口服务具有第一存取表,而第二控制器的因特网小型计算机接口服务具有第二存取表;由第一控制器接收来自客户端的存取操作要求;第一控制器根据第一存取表判断存取要求所取存的目标设备是否属于第一控制器;若不属于第一控制器,第一控制器向客户端发出转向要求,使客户端重新向第二控制器发送操作存取要求,由第二控制器向客户端提供相应的目标设备。从本发明的另一观点,本发明提出一种具有双控制器的磁盘阵列的控制系统,其是根据客户端对储存设备的存取操作要求,用以选择相应的储存设备。为达到上述目的,本发明所揭露的一种具有双控制器的磁盘阵列的控制系统包括储存设备、第一控制器与第二控制器;储存设备是由多个目标设备(target)所组成; 第一控制器运行因特网小型计算机接口服务,在因特网小型计算机接口服务储存第一存取表,第一存取表用以记录第一控制器可以存取的目标设备;第二控制器运行另一因特网小型计算机接口服务,第二控制器的该因特网小型计算机接口服务储存第二存取表,第二存取表用以记录第二控制器可以存取的目标设备。本发明所提出的具有双控制器的磁盘阵列可以根据目标设备所属的控制器进行工作上的调配,借以降低第一控制器与内部网络传输的负载。以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。


图1为现有技术的架构示意图2为本发明的架构示意图3为本发明的运作流程示意图4为本发明的存取控制操作示意图。
其中,附图标记
110客户端
120巨标端
130储存设备
200控制系统
210第一控制器
220第二控制器
211,221因特网小型计算机接口服务
230储存设备
231目标设备
240心跳程序
410第一虚拟磁盘
420第二虚拟磁盘
430第三虚拟磁盘
440第四虚拟磁盘
具体实施例方式下面结合附图对本发明的结构原理和工作原理作具体的描述请参考图2所示,其是为本发明的架构示意图。具有双控制器的磁盘阵列的控制系统200包括第一控制器210、第二控制器220与储存设备230。储存设备230是由多个目标设备231 (target)所组成。储存设备230是为冗余磁盘阵列(Redundant Array of Independent Disks, RAID).在冗余磁盘阵列中还设定该些目标设备231。第一控制器210 运行因特网小型计算机接口服务211、221,在因特网小型计算机接口服务211、221储存第一存取表,第一存取表用以记录第一控制器210可以存取的目标设备231。第二控制器220运行另一因特网小型计算机接口服务211、221。第二控制器220 的该因特网小型计算机接口服务211、221储存第二存取表,第二存取表用以记录第二控制器220可以存取的目标设备231。而第一控制器210与第二控制器220各自运行心跳程序 240,240.第一控制器210与第二控制器220通过心跳程序M0、240发送存活信息。举例来说,从第一控制器210可以通过监听接口(socket)的方式来实现对第二控制器220的心跳信号的监控。请参考图3所示,其是为本发明的步骤流程示意图。步骤S310 初始化储存设备,并设定储存设备中的多个目标设备;步骤S320 分别于第一控制器与第二控制器上运行因特网小型计算机接口服务, 在第一控制器的因特网小型计算机接口服务中还储存第一存取表,而第二控制器的因特网小型计算机接口服务中储存第二存取表;步骤S330 第一控制器与第二控制器分别运行心跳程序,第一控制器与第二控制器通过该心跳程序相互发送存活信息;步骤S340 由第一控制器接收来自客户端的存取操作要求;步骤S350 第一控制器根据第一存取表判断存取要求所取存的目标设备是否属于第一控制器;步骤S360 若存取要求所取存的目标设备是属于第一控制器,则调用相应的目标设备给客户端;以及步骤S370 若存取要求所取存的目标设备是不属于第一控制器,第一控制器向客户端发出转向要求,使客户端重新向第二控制器发送操作存取要求,由第二控制器向客户端提供相应的目标设备。为清楚说明本发明的整体运作,请同时配合图3与图4所示,其是为本发明的存取控制示意图。在客户端未连接于本发明的储存局域网络前。首先,初始化储存设备230,并且将储存局域网络第一控制器210与第二控制器220启动。在第一控制器210与第二控制器220启动的同时,分别由第一控制器210与第二控制器220执行各自的因特网小型计算机接口服务211、221。在各自的因特网小型计算机接口服务211、221中均记录着对方控制器的存取表,在此将第一控制器210的存取表定义为第一存取表、第二控制器220的存取表定义为第二存取表。由于第一控制器210与第二控制器220可能分属于不同的实体位置, 因此为方便说明各控制器所属的目标设备231,所以将各控制器所属的目标设备231定义为近端目标设备,而对另一控制器的目标设备231则定义为远程目标设备。举例来说,在图4中的储存设备230中包括四个目标设备(假设分别为第一虚拟磁盘410 (VDl)、第二虚拟磁盘420 (VD2)、第三虚拟磁盘430 (VD3)与第四虚拟磁盘 440 (VD4)。第一虚拟磁盘410与第三虚拟磁盘430分别为第一控制器210所管辖,而第二虚拟磁盘420与第四虚拟磁盘440则为第二控制器220所管辖。因此,第一控制器210对于第一虚拟磁盘410(或第三虚拟磁盘430)的关系是为近端目标设备。而第一控制器210 相对于第二虚拟磁盘420 (或第四虚拟磁盘440)则是远程目标设备。接着,由第一控制器210接收来自客户端的存取操作要求(用以请求VDl与VD3)。 若是存取操作要求的目标设备231对于第一控制器210而言为远程目标设备时,则第一控制器210向客户端发出转向要求。当客户端接收到此一转向要求后,会根据转向要求中所记录的第二控制器220的网络地址,重新向第二控制器220发送操作存取要求。若是存取操作要求的目标设备231对于第一控制器210而言为近端目标设备时,则调用相应的目标设备231给客户端。除此之外,第一控制器210与第二控制器220的因特网小型计算机接口服务211、 221亦储存着对方控制器的网络地址。一般而言,储存局域网络为能达到负载平衡的目的, 因此会利用多个网络地址的方式多进多出(multi inputmulti output,简称ΜΙΜΟ)来进行传输。本发明所提出的具有双控制器的磁盘阵列可以根据目标设备231所属的控制器进行工作上的调配,借以降低第一控制器210与内部网络传输的负载。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种具有双控制器的磁盘阵列的控制方法,根据一客户端对储存设备的一存取操作要求,用以选择相应的储存设备,其特征在于,该控制方法包括以下步骤初始一储存设备,并在该储存设备中设定多个目标设备;分别于一第一控制器与一第二控制器上运行一因特网小型计算机接口服务,在该第一控制器的该因特网小型计算机接口服务中具有一第一存取表,而该第二控制器的该因特网小型计算机接口服务中储存具有一第二存取表;由该第一控制器接收来自该客户端的该存取操作要求;该第一控制器根据该第一存取表判断该存取操作要求所取存的该目标设备是否属于该第一控制器;以及若不属于该第一控制器,该第一控制器向该客户端发出一转向要求,使该客户端重新向该第二控制器发送该存取操作要求,由该第二控制器向该客户端提供相应的该目标设备。
2.根据权利要求1所述的具有双控制器的磁盘阵列的控制方法,其特征在于,该第一控制器与该第二控制器分别运行一心跳程序,该第一控制器与该第二控制器 通过该心跳程序相互发送一存活信息。
3.根据权利要求1所述的具有双控制器的磁盘阵列的控制方法,其特征在于,根据该第一存取表判断该存取操作要求所取存的该目标设备是否属于该第一控制器的步骤后还包括若属于该第一控制器,则调用相应的该目标设备给该客户端。
4.根据权利要求1所述的具有双控制器的磁盘阵列的控制方法,其特征在于,该第一控制器的该因特网小型计算机接口服务记录该第二控制器的至少一网络地址,该第二控制器的该因特网小型计算机接口服务记录该第一控制器的该网络地址。
5.一种具有双控制器的磁盘阵列的控制系统,根据一客户端对储存设备的一存取操作要求,用以选择相应的储存设备,其特征在于,该控制系统包括一储存设备,具有多个目标设备;一第一控制器,运行一因特网小型计算机接口服务,在该因特网小型计算机接口服务具有一第一存取表,该第一存取表用以记录该第一控制器可以存取的该些目标设备;以及一第二控制器,运行另一该因特网小型计算机接口服务,该第二控制器的该因特网小型计算机接口服务具有一第二存取表,该第二存取表用以记录该第二控制器可以存取的该些目标设备;其中,由该第一控制器接收来自该客户端的该存取操作要求,该第一控制器根据该第一存取表判断该存取操作要求所取存的该目标设备是否属于该第一控制器,若属于该第一控制器,则调用相应的该目标设备给该客户端,若不属于该第一控制器,该第一控制器向该客户端发出一转向要求,使得该客户端重新向该第二控制器发送该存取操作要求,由该第二控制器向该客户端提供相应的该目标设备。
6.根据权利要求5所述的具有双控制器的磁盘阵列的控制系统,其特征在于,该储存设备为一冗余磁盘阵列,在该冗余磁盘阵列中还设定该些目标设备。
7.根据权利要求5所述的具有双控制器的磁盘阵列的控制系统,其特征在于,该第一控制器与该第二控制器各自运行一心跳程序,该第一控制器与该第二控制器通过该心跳程序发送一存活信息。
全文摘要
一种具有双控制器的磁盘阵列的控制方法与其控制系统,根据一客户端对储存设备的一存取操作要求,用以选择相应的储存设备。控制系统包括储存设备、第一控制器与第二控制器。储存设备具有多个目标设备;第一控制器运行因特网小型计算机接口服务,在因特网小型计算机接口服务具有第一存取表,第一存取表用以记录第一控制器可以存取的目标设备;第二控制器运行另一因特网小型计算机接口服务,第二控制器的因特网小型计算机接口服务具有第二存取表,第二存取表用以记录第二控制器可以存取的目标设备。
文档编号G06F3/06GK102200889SQ201010141318
公开日2011年9月28日 申请日期2010年3月25日 优先权日2010年3月25日
发明者张鹤, 陈玄同 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1