CN100480979C - 存储系统以及存储控制方法 - Google Patents

存储系统以及存储控制方法 Download PDF

Info

Publication number
CN100480979C
CN100480979C CNB2006100584003A CN200610058400A CN100480979C CN 100480979 C CN100480979 C CN 100480979C CN B2006100584003 A CNB2006100584003 A CN B2006100584003A CN 200610058400 A CN200610058400 A CN 200610058400A CN 100480979 C CN100480979 C CN 100480979C
Authority
CN
China
Prior art keywords
breaking
logic section
order
section bulk
raid
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
CNB2006100584003A
Other languages
English (en)
Other versions
CN1924783A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN1924783A publication Critical patent/CN1924783A/zh
Application granted granted Critical
Publication of CN100480979C publication Critical patent/CN100480979C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

提供一种解除了公共存储器体系结构和分散存储器体系结构双方的问题点的新的存储控制技术。在存储系统(3)中具备接收并转发命令的路由器(7)、多个RAID模块(11)、从路由器(3)接收命令并对多个RAID模块(11)的某一个进行发送的交换机(9)。在各个RAID模块(11)中具备多个媒体驱动器(57),由这些多个媒体驱动器(57)提供RAID组。各个RAID模块(11)不横跨其他RAID组地单独具备RAID组。此外,在存储系统(3)中,路由器(7)不进行命令的分析而是进行命令的转发,RAID模块(11)内的处理器(43)进行命令的分析。

Description

存储系统以及存储控制方法
技术领域
本发明涉及一种存储控制技术。
背景技术
作为与存储系统有关的技术,例如公知在特开2001—256003号公报、特开2003—140837号公报、特开平8—328760号公报、特开平10—63576号公报以及特开2002—123479号公报中公开的技术。
但是,作为可以在存储系统中采用的体系结构,例如具有公共存储器体系结构或分散存储器体系机构。
根据公共存储器体系结构,在公共存储器中存储与存储系统有关的各种各样的信息,存储系统内的哪个接口基板(例如对于主机装置的接口基板、以及对于媒体驱动器的接口基板)都可以访问公共存储器内的信息。但是,因此向公共存储器的访问就会集中,成为瓶颈。
根据分散存储器体系结构,存在具有路由选择以及交换功能的上位的路由器以及交换机部,和分割了RAID结构的下位的多个模块。上位的路由器/交换机部从主机装置接收命令,并对该命令进行分析,判断访问多个模块中的哪一个,可以访问多个模块中的一个或多个的模块。但是,因此路由器/交换机部的负荷就会增大。此外,一个RAID的结构是由多个模块提供的,所以在一个模块发生了故障的情况下,其它模块即使正常RAID结构也被破坏。
【专利文献1】特开2001—256003号公报
【专利文献2】特开2003—140837号公报
【专利文献3】特开平8—328760号公报
【专利文献4】特开平10—63576号公报
【专利文献5】特开2002—123479号公报
发明内容
因此,本发明的目的之一在于提供一种解除了公共存储器体系结构和分散存储器体系结构双方的问题点的新的存储控制技术。
通过后面的说明,本发明的其他目的将会变得明确。
本发明的存储系统具有:从存在于存储系统外部的外部装置接收命令并进行转发的路由器;多个RAID模块;从所述路由器接收命令后发送给所述多个RAID模块中的某一个的交换机。各个RAID模块具备:多个媒体驱动器;由所述多个媒体驱动器提供的依据RAID组的逻辑部分件;对与所述外部装置之间交换的数据进行存储的存储器;可以对经由所述交换机从所述外部装置接收到的数据、从所述逻辑部分件读出的数据进行存储的存储器;以及处理器。所述处理器根据经由所述交换机从所述外部装置接收到的命令,把所述存储器中存储的数据写入所述逻辑部分件中,或者将所述存储器中存储的数据输出给所述交换机。在该存储系统中,各个RAID模块不横跨其他RAID模块地单独具备RAID组。所述外部装置可以是主机装置也可以是其他的存储系统。
在本发明的一个方式中,所述路由器可以不进行所述命令的分析(例如是写入命令还是读取命令的判断)而对所述命令进行转发。此时,所述各个RAID模块内的所述处理器进行所述命令的分析,可以执行按照该分析结果的处理。
在本发明的一个方式中,所述路由器可以具有:不进行所述命令的分析而控制所述命令的转发的命令转发电路(例如转发单元);可以存储用于对命令的转发进行控制的转发控制信息的存储区域(例如存储单元)。在所述转发控制信息中,用于确定命令的转发目的地的路径数据可以与每个用于识别逻辑部分件的各逻辑部分件ID相对应。所述命令转发电路可以从所述外部装置接收逻辑部分件ID以及命令,由所述转发控制信息确定与该逻辑部分件ID相对应的路径数据,并根据已确定的路径数据转发所述接收到的命令。
所述各个RAID模块可以具备可以对各个逻辑部分件ID进行存储的存储资源(例如存储单元),该各个逻辑部分件ID表示在该RAID模块中存在的各个逻辑部分件。所述各个RAID模块(例如处理器)在所述存储资源中存在逻辑部分件ID的更新时,可以将更新请求和与更新有关的逻辑部分件ID发送给所述交换机。所述交换机可以将所述更新请求和与所述更新有关的逻辑部分件ID发送给所述路由器。所述路由器可以接收所述更新请求和与所述更新有关的逻辑部分件ID,并根据所述更新请求,使用所述已接收到的逻辑部分件ID更新所述转发控制信息。
这里,所述路由器可以具备缓冲存储器。所述路由器即使在接收到所述更新请求的情况下,也可以从所述外部装置接收命令,如果从所述外部装置接收到了命令,则将所述接收到的命令积蓄在所述缓冲存储器中,在所述转发控制信息的更新已结束的情况下,根据更新后的转发控制信息转发积蓄在所述缓冲存储器中的各个命令。
此外,所述RAID模块可以对所述更新请求进行广播。
在本发明的一个方式中,所述各个RAID模块可以具备表示各个逻辑部分件ID和各个媒体驱动器ID的对应的构成信息(例如可以具备构成信息存储单元)。在所述各个RAID模块所具备的构成信息中包含存在于具有该构成信息的RAID模块中的逻辑部分件以及媒体驱动器各自的ID就可以,也可以不包含存在于其他RAID模块中的逻辑部分件以及媒体驱动器各自的ID。所述处理器可以由所述构成信息确定与从所述交换机接收到的逻辑部分件ID相对应的媒体驱动器ID,来访问与所述确定的媒体驱动器ID相对应的媒体驱动器。
根据本发明,提供一种解除了公共存储器体系结构和分散存储器体系结构双方的问题点的新的存储控制技术。
附图说明
图1A表示本发明第一实施方式的整个系统的结构。
图1B表示存储系统3的结构例。
图2A表示路由器7的结构例。
图2B表示路由表23的结构例。
图2C表示路由器7从主机装置1接收的第一分组组的结构例。
图2D表示路由器7发送给SW9的第二分组组的结构例。
图3A表示SW9的结构例。
图3B表示RAID模块11的结构例。
图4表示在存储系统3从主机装置1接收到命令时进行的处理的流程的一个例子。
图5表示在存储系统3中进行的路由表更新处理的流程的一个例子。
图6A表示边界外方式的一个例子。
图6B表示第一边界内方式的一个例子。
图6C表示在本实施方式中所采用的第二边界内方式。
图7A是本发明一实施方式的一个变形例的说明图。
图7B是本发明一实施方式的其他变形例的说明图。
具体实施方式
下面,参照附图对本发明的一实施方式进行说明。
图1A表示本发明第一实施方式的整个系统的结构例。
可以通过通信网络2可通信地连接多台(也可以为1台)主机装置1、1、...和存储系统3。
主机装置1例如是具备CPU、存储器以及显示装置等硬件资源的计算机装置(例如服务器)。主机装置1可以对存储系统3发送读出对象数据的读取命令、写入命令以及写入对象数据。
作为通信网络2可以采用各种各样的通信网络。具体地说,例如通信网络2可以采用SAN(storage Area Network)或者LAN(Local Area Network)。
存储系统3例如可以采用像矩阵状地排列多个媒体驱动器而构成的RAID(Redundant Array of Independent Inexpensive Disks)那样的磁盘阵列系统。
图1B表示存储系统3的结构例。
在存储系统3中具备:多个协议芯片(在图中略记为「PC」)5、5、...;多个路由器7、7、...;交换机(以下为SW)9;多个RAID模块11、11、...;以及服务处理器(以下为SVP)22。协议芯片5、路由器7以及RAID模块11中的至少一个可以是1个。
协议芯片5是对主机装置1和路由器7之间交换的命令进行协议转换的电路。
路由器7接收由协议芯片5协议转换后的命令(还存在除了命令之外接收数据的情况),进行该命令的路径控制。此外,也可以将上述的协议芯片5内置于路由器7中。
SW9是对各个路由器7、各个RAID模块11以及SVP22的相互连接进行切换的装置。SW9例如可以采用纵横制SW。在SW9中具有与路由器7连接的两个或多于两个的端口12A、12A、...;和与RAID模块3连接的两个或多于两个的端口12B、12B、...。
RAID模块11是具有超高速缓冲存储器、处理器等的组件(如果用别的说法为一组),具有不依存于其他的RAID模块11的RAID结构。即,存在于RAID模块11中的RAID结构与其他的RAID模块11独立,即使在其他的RAID模块11中发生了故障也不会被损坏。这里,RAID结构例如可以为按照规定的RAID等级(例如RAID5)设定的RAID组(例如一个或多个逻辑部分件(以下称为LU))。
SVP22是可以经由SW9对各个路由器7、各个RAID模块11进行访问的装置。具体地说,例如SVP22是维护用终端,可以具备管理者进行操作的输入装置(例如键盘或鼠标)、按照管理者的操作执行处理的控制装置(例如安装了CPU等的母插件)、显示在RAID模块11、路由器7中设定的信息的显示装置(例如显示器画面)。SVP22可以安装在存储系统3上,也可以经由LAN等通信网路远距离地设置。此外,至少在一个主机装置1上具有SVP22的功能,该主机装置1作为SVP22可以对存储系统3进行控制。
以上是存储系统3的概要。在该实施方式中,为了使下面的说明容易理解设各个路由器7经由SW9与全部的RAID模块11连接,换句话说,设设各个RAID模块11经由SW9与全部的路由器7相连接。
下面对该存储系统3所具备的各种要素进行详细地说明。
图2A表示路由器7的结构例。
路由器7不具备CPU,不对从主机装置1接收到的命令进行分析。这一点是对存储系统3实施的一个办法。路由器7例如是一种电路基板,具备本地存储器(以下称为LM)21和ASIC(Application Specific Integrated Circuit)27。
LM27是易失性或非易失性存储器。在LM27中例如设置了用于暂时存储经由路由器7交换的分组组(包含命令以及/或者数据)的分组缓冲存储器25。此外,LM27可以存储路由表23。路由表23是用于对来自主机装置1的命令、数据的路径(换句话说是转发目的地)进行控制的信息。如图2B所示,在路由表23中登录多个信息要素集合。在各个信息要素集合中包含逻辑部分件号码(以下为LUN)和端口号码(以下为端口#)。所谓LUN是用于确定LU的号码(也可以是号码以外的ID)。所谓端口#是SW9具备的多个端口中与路由器7相连接的端口12A的号码。此外,LUN以及端口#也可以是号码外之外的ID。
ASIC27是控制分组组的转发的LSI(Large Scale Integration)。该ASIC27可以为纯粹的硬件电路。ASIC27经由协议芯片5从主机装置1接收图2C所示的第一分组组(例如包含LUN和命令的信息),并且对SW9发送附加了端口#的分组组(例如图2D所示的分组组,以下称为第二分组组)。关于ASIC27所进行的处理在后面参照图4来进行详细的说明。
图3A表示SW9的结构例。
在SW9中安装了ASIC31,该ASIC31对在路由器7和RAID模块11之间交换的分组组的转发进行控制。ASIC31可以与SVP22连接。SVP22经由该ASIC31可以对各个路由器7或各个RAID模块11进行访问。
图3B表示RAID模块11的结构例。
在RAID模块11中具备多个媒体驱动器57、57、...,向各个媒体驱动器57的访问路径被二重化。媒体驱动器57是具备可以存储数据的存储媒体的装置,例如是硬盘驱动器。在RAID模块11中具备控制部53和存储部54。
在控制部53中具备超高速缓冲存储器(以下称为CM)51、二重化的转发控制LSI49、二重化的磁盘控制器41、41。控制部53例如可以由一个或多个电路基板构成。
CM51是可以对在路由器7和媒体驱动器57之间交换的数据进行存储的存储器。此外,CM51也可以存储与具有自己的RAID模块(以下称为该模块)11的结构有关的构成信息。如果换一种说法,由于该RAID模块11从其他的RAID模块11中独立出来,所以CM51无需存储与其他的RAID模块11有关的构成信息。
转发控制LSI49例如是集线器,控制CM51、控制器41、媒体驱动器57以及SW9之间的分组组的转发。
控制器41控制对各个媒体驱动器57的数据的输入输出。在控制器41中例如具有:微处理器(以下称为MP)43、引导(boot)存储器45以及LM47。引导存储器45存储了MP43的启动用程序。MP43可以通过从引导存储器45读取该程序来进行启动。此外,MP43例如通过从LM47读入控制程序并执行该控制程序,可以发挥存储虚拟化功能(例如把两个或多于两个的媒体驱动器57作为一个存储资源提供给主机装置1的功能)。LM47用作MP43的工作区域。LM47可以代替CM51存储构成信息。
存储部54中具备:所述多个媒体驱动器57;对各个媒体驱动器57和控制部53之间的通信进行控制的交换机(例如,光纤通道交换机(以下称为FSW)55)。在多个媒体驱动器57设定作为逻辑存储设备的逻辑部分件(LU)61。图3B中表示一个LU61,但是当然可以设定多个LU61。
以下,对在存储系统3中进行的各种各样的处理流程进行说明。
图4表示在存储系统3从主机装置1接收到命令时进行的处理的流程的一个例子。
主机装置1对存储系统3发送第一分组组(步骤S1)。具体地说,例如主机装置1对存储系统3发送对作为访问目的地(例如数据的写入目的地或读出源)的LUN进行了指定的命令(例如写入命令或读取命令)。
存储系统3的路由器7经由协议芯片5从主机装置1接收第一分组组。路由器7的ASIC27将接收到的第一分组组积蓄在LM21内的分组缓冲存储器25中(S2)。
然后,ASIC27根据路由表23确定与第一分组组内的LUN相对应的端口#(S3)。具体地说,例如ASIC27确定与第一分组组内的LUN相对应的、并且与不是占线状态的端口12A对应的端口#。
ASIC27从分组缓冲存储器25读出第一分组组,并对所读出的第一分组组附加在S3中确定的端口#来作为第二分组组(S4),然后将第二分组组发送给与该端口#对应的SW9的端口12A(S5)。
SW9的ASIC31经由某个端口12A接收第二分组组,并把接收到的第二分组组经由与某个端口12A对应的端口12B发送给与该端口12B相连接的RAID模块11(S6)。
在接收到第二分组组的RAID模块11中,转发控制LSI49把第二分组组内的命令转发给控制器41。如果在第二分组组内包含了写入对象数据,则转发控制LSI49将写入对象数据写入CM51。
控制器41的MP43从转发控制LSI49接收命令,并对接收到的命令进行分析(S7)。具体地说,例如MP43判断接收到的命令是写入命令还是读取命令。
在RAID模块11内执行与MP43的判断结果是写入命令还是读取命令相对应的处理(S8)。
例如,在MP43判断为是读取命令的情况下,MP43可以对构成与第二分组组内的LUN对应的LU61的各个媒体驱动器57请求由读取命令所指定的读出对象数据。例如可以通过参照已经写入了LUN和媒体驱动器ID的对应关系的构成信息71(参照图5)来确定构成该LU61的各个媒体驱动器57是哪一个。从接收到请求的各个媒体驱动器57读出所请求的数据,读出的数据经由转发控制LSI49被写入CM51。然后,该数据被从CM51读出,经由转发控制LSI49发送给输出了第二分组组的端口12B。由此,经由SW9以及路由器7对读出命令的发行源的主机装置1发送读出对象数据。
另一方面,在MP43判断为是写入命令的情况下,MP43使转发控制LSI49把在CM51中写入的写入对象数据向构成与第二分组组内的LUN对应的LU61的各个媒体驱动器57写入。由此,在CM51中写入的写入对象数据经由转发控制LSI49被写在构成LU61的各个媒体驱动器57中。
以上是存储系统3从主机装置1接收到命令时进行的处理的流程的一个例子。根据该处理,在路由器7中设定了将转发路径与各个LUN相对应起来的路由表23。路由器7根据路由表23确定与主机装置1所指定的LUN对应的转发路径,可以使命令通过该转发路径。具体地说,作为转发路径设定了SW9的端口12A的端口#。如果端口12A决定了,则成为来自SW9的命令的出口的端口12B就决定了,如果端口12B决定了,则成为命令的行进目的地的RAID模块11也决定了。在RAID模块11中,哪个媒体驱动器57与哪个LUN的LU61对应作为构成信息71被进行管理,如果将LUN以及命令发送给RAID模块11,则在该RAID模块11中对命令进行分析,据此对提供与该LUN相对应的LU61的媒体驱动器57进行访问。因此,在该实施方式中,根据由路由器7接收到的LUN来决定向媒体驱动器57的路径。
然而,在该实施方式中,有时产生需要更新路由器7具有的路由表23的事件(以下称为路由表更新事件)。所谓该事件是与在路由表23中写入的信息要素有关的信息的更新,具体地说,例如是RAID模块内的LUN的追加、变更或删除。作为该事件产生的具体的例子,考虑有:由SVP22等加载构成信息71;通过SVP22等更新构成信息71;或者追加或删除RAID模块11。
在发生了路由表更新事件的情况下,在存储系统3中进行用于路由表更新的处理。
图5表示在存储系统3中进行的路由表更新处理的流程的一个例子。此外,在该图5中,使用50以后的号码表示路由表更新处理的步骤,并使用10~30之间的号码表示来自主机装置1的命令的转发的步骤。
RAID模块11内的MP43可以检测路由表更新事件的发生(S51)。具体地说,例如MP43在加载了来自SVP22的构成信息71并写入CM51(或者LM47)的情况下,或者在追加、变更或者删除CM51中存在的构成信息71的LUN的情况下,可以认为是上述事件的产生。
MP43对表更新请求(UP_REQ0)进行广播(S52)。具体地说,例如MP43从该RAID模块11的各个端口输出表更新请求。由此,经由SW9对所有的路由器7发送表更新请求(S53)。下面,为了简化说明,以一个RAID模块11和一个路由器7之间的交换为例进行说明。
路由器7的ASIC27在接收到UP_REQ0的情况下,如果能够接受对路由表23进行追加、变更或者删除的信息,则可以将表示可以更新的状态(UP_RDY0)向UP_REQ0的发送源端口12A进行回答(S54)。此外,在回答了状态(UP_RDY0)时,ASIC27可以将路由器7的状态从可以接收来自主机装置1的第一分组组来进行处理的通常状态经由作为休息的空闲状态,切换为路由表23的更新等待状态(例如可以将空闲状态作为暂时的状态)。具体地说,例如ASIC27在每次切换路由器7的状态时,可以将表示切换后的状态的状态数据写入LM21。
如果ASIC27在回答UP_RDY0之前从主机装置1接收到第一分组组(S10),由于是通常状态,所以使用旧的(即更新前)路由表23进行图4的从S2到S4的处理。结果,使图4的S5以及S6相同,向RAID模块11发送第二分组组(S5以及S6),并且在RAID模块11中进行该第二分组组内的命令的分析等。
路由器7的ASIC27从回答了UP_RDY0的时刻开始,即使从第一主机装置1接收到第一分组组,也将第一分组组积蓄在分组缓冲存储器25中,但不把该第一分组组发送给SW9(即,成为不把第一分组组发送给主机装置1的时间带T的开始)。
由ASIC27回答的UP_RDY0经由SW9被发送给RAID模块11(S55)。
RAID模块11的MP43如果确认了UP_RDY0,则把路由表23的更新所需要的信息(UPDATE0)向UP_RDY0的发送源端口12B进行发送(或者进行广播)(S56)。如果UPDATE0中包含的信息要素例如是LUN的追加,则可以为追加LUN的指示(例如标志)和应追加的LUN。如果是LUN的删除,则可以为删除LUN的指示(例如标志)和应删除的LUN。如果是LUN的变更,则可以为变更LUN的指示(例如标志)和变更前的LUN以及变更后的LUN。UPDATE0经由SW9被发送给路由器7(S57)。
路由器7的ASIC27在接收到UPDATE0时,可以将路由器7从变更等待状态经由空闲状态切换为更新状态,而且可以根据接收到的UPDATE0更新路由表23(S58)。例如ASIC27在检测出在UPDATE0中包含了追加LUN的指示的情况下,可以在路由表23中追加UPDATE0中包含的LUN、与各个端口#的信息要素集合。此时追加的信息要素集合的数量可以与端口12A的数量相同。此外,例如ASIC27在检测出在UPDATE0中包含了删除LUN的指示的情况下,可以从路由表23中删除包含与UPDATE0中所包含的LUN一致的LUN的全部的信息要素集合。此外,例如,ASIC27在检测出在UPDATE0中包含了变更LUN的指示的情况下,可以将与UPDATE0中所包含的变更前LUN一致的路由表23上的LUN更新为变更后的LUN。
如果路由表23的更新已结束,则ASIC27把表示路由表23更新结束的状态(ST0)回答给UPDATE0的发送源端口12A(S59)。ST0经由SW9被发送给RAID模块11(S60)。
此外,在回答了ST0的时刻,没有把第一分组组发送给主机装置1的时间带T就会结束。此时,ASIC27可以把路由器7的状态从更新状态经由空闲状态切换为通常状态。此时,ASIC27可以读出积蓄在分组缓冲存储器25中的第一分组组,并根据新的(即更新后的)路由表23确定与第一分组组内的LUN对应的端口#。即,对于该第一分组组,使用新的路由表23进行图4的S3—S8(在时间带T结束后接收到第一分组组的情况下,从图4的S2开始进行)。
以上是在存储系统3中进行的路由表更新处理的流程的一个例子。此外,该处理流程还可以适用于在LM21上新地设定路由表23的情况。例如在路由器7的LM21的路由表21中写入了可以对应的全部的端口#,LUN成为空白。此时,各个RAID模块11对各个路由器7通知在自身的构成信息71中记录的全部的LUN,各个路由器7的ASIC27通过将已通知的LUN与各个端口#相对应,可以构筑路由表23。
根据以上的实施方式,在存储系统3中准备单独具有RAID结构的RAID模块11。RAID模块11不依存于其他的RAID模块11。例如,RAID模块11内的MP43使用该模块11内的CM51,但不使用其他RAID模块11内的MP51。因此,可以期待与RAID模块11的数量实质成比例的性能。
此外,根据上述的实施方式,可以以RAID模块11为单位增设或去掉。因此,可以期待扩张性的提高。
此外,根据上述的实施方式,在RAID模块11的上位安装从主机装置1接收LUN以及命令的路由器7。该路由器7不对来自主机装置1的命令进行分析(例如该命令是读出命令还是写入命令的判断),而是可以将该命令分配给恰当的下位转发目的地。因此,路由器7的处理时间长度变短,由此可以期待对主机装置1提供高速的访问处理。
此外,根据上述的实施方式,从RAID模块11对各个路由器7发行更新请求或更新信息。各个路由器7在接收到更新请求时,至少到更新路由表23之前为分组未发送状态。各个路由器7在该状态中,在从主机装置1接收到命令时,将命令积蓄在分组缓冲存储器25中,在解除该状态之后按照更新后的路由表23进行命令的分配。由此,存储系统3可以一边从主机装置1接收第一分组组(如果换句话说,即使主机装置1不停止第一分组组的发行),一边更新RAID模块11内的LUN,与此相伴更新各个路由器7的路由表23。
此外,根据上述的实施方式,采用图6C表示的方式,即采用在RAID模块11上安装用于发挥存储虚拟化功能的控制程序70的边界内(in bound)方式。MP43通过执行控制程序70,例如可以从构成信息71(参照图5)确定与LUN对应的驱动器#,可以访问与LUN的LU61对应的各个媒体驱动器57。这样的边界内方式可以缓解图6A所示的边界外(out bound)方式、图6B所示的其他边界内方式的缺点。即,根据图6A所示的边界外方式,因为每个主机装置1都需要控制程序70,所以考虑到购入成本变高的问题。根据图6B所示的边界内方式,中继装置80(例如SW9、路由器7或者存在于通信网络2中的交换机)进行命令分析等处理,存在性能恶化的可能。如果是图6C所示的边界内方式,可以缓解这些缺点。
以上对本发明的一实施方式进行了说明,这是用于说明本发明的一个例子,并没有将本发明的范围限定于该实施方式的意思,本发明也可以通过其他各种各样的方式来进行实施。
例如,如图7A所示,可以对多个路由器7进行一体化(例如可以由一个电路基板90来制作)。由此,可以实现多个路由器7的电源的通用化。
此外,如图7B所示,可以对路由器7和RAID模块11内的控制部53进行一体化(例如可以由一个电路基板110来制作)。由此可以实现路由器7和控制部53的电源的通用化。
此外,例如在路由表23中登录的信息要素集合中,除了LUN以及端口#之外,还可以包含其他种类的信息要素。作为其他种类的信息要素,例如可以是构成与LUN对应的LU的驱动器ID。此外,例如可以采用用于识别成为命令的转发目的地的RAID模块11的ID(例如号码、以下为模块#)。此时,路由器7除了端口#之外,还可以对来自主机装置1的第一分组组附加模块#来对SW9进行发送。由此,第二分组组(包含端口#、模块#以及第一分组组)被发送给根据该第二分组组内的模块#识别的RAID模块11。
此外,例如在路由表23中登录的端口#以及/或者对第一分组组附加的端口#可以是多个种类。例如代替端口12A的端口#或者在此之上,可以是端口12B的端口#、路由器7的端口(未图示)的端口#以及RAID模块的端口(未图示)的端口#中的至少一个。

Claims (8)

1.一种存储系统,其特征在于,
具有:
从存在于存储系统外部的外部装置接收命令并进行转发的路由器;
多个RAID模块;和
从所述路由器接收命令然后发送给所述多个RAID模块中的某一个的交换机,
各个RAID模块具备:
多个媒体驱动器;
依据由所述多个媒体驱动器提供的RAID组的逻辑部分件;
对与所述外部装置之间交换的数据进行存储的存储器;
可以对经由所述交换机从所述外部装置接收到的数据、从所述逻辑部分件读出的数据进行存储的存储器;和
处理器,其根据经由所述交换机从所述外部装置接收到的命令,把所述存储器中存储的数据写入所述逻辑部分件中,或者将所述存储器中存储的数据输出给所述交换机,
不横跨其他RAID模块地单独具备所述RAID组,
其中,所述各个RAID模块具备可以对各个逻辑部分件ID进行存储的存储资源,该各个逻辑部分件ID表示在该RAID模块中存在的各个逻辑部分件,在所述存储资源中存在逻辑部分件ID的更新时,可以将更新请求和与更新有关的逻辑部分件ID发送给所述交换机,
所述交换机将所述更新请求和与所述更新有关的逻辑部分件ID发送给所述路由器,
所述路由器接收所述更新请求和与所述更新有关的逻辑部分件ID,并根据所述更新请求,使用所述已接收到的逻辑部分件ID更新转发控制信息。
2.根据权利要求1所述的存储系统,其特征在于,
所述路由器不进行所述命令的分析,而是对所述命令进行转发,
所述各个RAID模块内的所述处理器进行所述命令的分析,执行按照该分析结果的处理。
3.根据权利要求1所述的存储系统,其特征在于,
所述路由器具有:
不进行所述命令的分析,而是控制所述命令的转发的命令转发电路;和
可以存储用于对命令的转发进行控制的转发控制信息的存储区域,
在所述转发控制信息中,把用于确定命令的转发目的地的路径数据与每个用于识别逻辑部分件的各逻辑部分件ID相对应,
所述命令转发电路可以从所述外部装置接收逻辑部分件ID以及命令,由所述转发控制信息确定与该逻辑部分件ID相对应的路径数据,并根据已确定的路径数据转发所述接收到的命令。
4.根据权利要求3所述的存储系统,其特征在于,
所述路由器具备缓冲存储器,即使在接收到所述更新请求的情况下,也从所述外部装置接收命令,如果从所述外部装置接收到了命令,则将所述接收到的命令存储在所述缓冲存储器中,在所述转发控制信息的更新已结束的情况下,根据更新后的转发控制信息转发积蓄在所述缓冲存储器中的各个命令。
5.根据权利要求3所述的存储系统,其特征在于,
所述RAID模块对所述更新请求进行广播。
6.根据权利要求1所述的存储系统,其特征在于,
所述各个RAID模块具备表示各个逻辑部分件ID和各个媒体驱动器ID的对应的构成信息,
在所述各个RAID模块所具备的构成信息中包含存在于具有该构成信息的RAID模块中的逻辑部分件以及媒体驱动器各自的ID,不包含存在于其他RAID模块中的逻辑部分件以及媒体驱动器各自的ID,
所述处理器由所述构成信息确定与从所述交换机接收到的逻辑部分件ID相对应的媒体驱动器ID,来访问与所述确定的媒体驱动器ID相对应的媒体驱动器。
7.一种存储控制方法,其在存储系统中实现,其特征在于,
使用路由器从存在于存储系统外部的外部装置接收命令,
所述路由器不进行所述命令的分析,将所述命令转发给安装在交换机上的多个端口中的某一个端口,
从所述交换机的其他的端口输出从所述交换机的某个端口输入的命令,转发给多个RAID模块中的某一个,
接收到命令的RAID模块内的处理器对该命令进行分析,并按照该分析的结果对存在于该RAID模块中的逻辑部分件进行访问,
其中,所述多个RAID模块具备可以对各个逻辑部分件ID进行存储的存储资源,该各个逻辑部分件ID表示在该RAID模块中存在的各个逻辑部分件,在所述存储资源中存在逻辑部分件ID的更新时,可以将更新请求和与更新有关的逻辑部分件ID发送给所述交换机,
所述交换机将所述更新请求和与所述更新有关的逻辑部分件ID发送给所述路由器,
所述路由器接收所述更新请求和与所述更新有关的逻辑部分件ID,并根据所述更新请求,使用所述已接收到的逻辑部分件ID更新转发控制信息。
8.一种存储系统,其特征在于,
具有:
从存在于存储系统外部的外部装置接收命令并进行转发的路由器;
多个RAID模块;和
从所述路由器接收命令然后发送给所述多个RAID模块中的某一个的交换机,
所述路由器、各个RAID模块以及所述各个交换机具有端口,
各个RAID模块具备:
多个媒体驱动器;
依据由所述多个媒体驱动器提供的RAID组的逻辑部分件;
对与所述外部装置之间交换的数据进行存储的存储器;
可以对经由所述交换机从所述外部装置接收到的数据、从所述逻辑部分件读出的数据进行存储的存储器;和
处理器,其根据经由所述交换机从所述外部装置接收到的命令,把所述存储器中存储的数据写入所述逻辑部分件中,或者将所述存储器中存储的数据输出给所述交换机,
不横跨其他RAID模块地单独具备所述RAID组,
所述路由器具有:
不进行所述命令的分析,而是控制所述命令的转发的命令转发电路;和可以存储用于对命令的转发进行控制的转发控制信息的存储区域,
在所述转发控制信息中,把用于识别端口的端口ID与每个用于识别逻辑部分件的各个逻辑部分件ID相对应,
所述命令转发电路从所述外部装置接收逻辑部分件ID以及命令,由所述转发控制信息确定与该逻辑部分件ID相对应的端口ID,并对逻辑部分件ID以及命令的集合附加所确定的端口ID来转发附加了所述端口ID的所述集合,所述各个RAID模块具备表示各个逻辑部分件ID和各个媒体驱动器ID的对应的构成信息,
在所述各个RAID模块所具备的构成信息中包含存在于具有该构成信息的RAID模块中的逻辑部分件以及媒体驱动器各自的ID,不包含存在于其他RAID模块中的逻辑部分件以及媒体驱动器各自的ID,
所述处理器从所述交换机接收所述集合,对所述接收到的集合内的命令进行分析,并且由所述构成信息确定与所述接收到的集合内的逻辑部分件ID相对应的媒体驱动器ID,并按照所述命令分析的结果访问与所述确定的媒体驱动器ID相对应的媒体驱动器,
所述各个RAID模块具备可以对各个逻辑部分件ID进行存储的存储资源,该各个逻辑部分件ID表示在该RAID模块中存在的各个逻辑部分件,在所述存储资源中存在逻辑部分件ID的更新时,可以将更新请求和与更新有关的逻辑部分件ID发送给所述交换机,
所述交换机将所述更新请求和与所述更新有关的逻辑部分件ID发送给所述路由器,
所述路由器接收所述更新请求和与所述更新有关的逻辑部分件ID,并根据所述更新请求,使用所述已接收到的逻辑部分件ID更新所述转发控制信息。
CNB2006100584003A 2005-08-29 2006-03-03 存储系统以及存储控制方法 Expired - Fee Related CN100480979C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005247735 2005-08-29
JP2005247735A JP4786255B2 (ja) 2005-08-29 2005-08-29 ストレージシステム及び記憶制御方法

Publications (2)

Publication Number Publication Date
CN1924783A CN1924783A (zh) 2007-03-07
CN100480979C true CN100480979C (zh) 2009-04-22

Family

ID=37309726

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100584003A Expired - Fee Related CN100480979C (zh) 2005-08-29 2006-03-03 存储系统以及存储控制方法

Country Status (4)

Country Link
US (2) US7430636B2 (zh)
EP (2) EP1760578A1 (zh)
JP (1) JP4786255B2 (zh)
CN (1) CN100480979C (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4309359B2 (ja) * 2005-03-09 2009-08-05 株式会社日立製作所 パケット通信装置とその機能拡張方法
US7668193B2 (en) * 2005-09-02 2010-02-23 Stmicroelectronics S.R.L. Data processor unit for high-throughput wireless communications
US20070180145A1 (en) * 2006-01-27 2007-08-02 Cisco Technology, Inc. (A California Corporation) Pluggable transceiver module with encryption capability
JP5022062B2 (ja) * 2007-03-01 2012-09-12 株式会社日立製作所 プールi/oデバイス動作確認方法、及び計算機システム
JP2009129164A (ja) * 2007-11-22 2009-06-11 Nec Corp 分散ストレージでのファイル配置およびアクセス方法、その装置及びそのプログラム
JP5067206B2 (ja) * 2008-03-05 2012-11-07 日本電気株式会社 Jbod装置、コンピュータシステム及びアクセス制御方法
EP2506504A4 (en) * 2009-11-26 2013-11-13 Nec Corp RELAY DEVICE
US9552299B2 (en) * 2010-06-11 2017-01-24 California Institute Of Technology Systems and methods for rapid processing and storage of data
US8762668B2 (en) * 2010-11-18 2014-06-24 Hitachi, Ltd. Multipath switching over multiple storage systems
US8600945B1 (en) * 2012-03-29 2013-12-03 Emc Corporation Continuous data replication
US9112943B1 (en) * 2012-04-06 2015-08-18 Samsung Research America, Inc. System and method for retrieving, storing and distributing digital broadcast media in a cloud-computing environment
JP2016018384A (ja) * 2014-07-08 2016-02-01 富士通株式会社 ストレージ制御装置、ストレージシステム、及びプログラム
US11561860B2 (en) * 2017-11-13 2023-01-24 Weka.IO Ltd. Methods and systems for power failure resistance for a distributed storage system
JP7197545B2 (ja) * 2020-09-29 2022-12-27 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237658A (en) 1991-10-01 1993-08-17 Tandem Computers Incorporated Linear and orthogonal expansion of array storage in multiprocessor computing systems
US6301711B1 (en) * 1993-11-30 2001-10-09 International Business Machines Corporation System and method for the network support of full motion video using a redundant array of inexpensive disks
JPH08328760A (ja) * 1995-06-01 1996-12-13 Hitachi Ltd ディスクアレイ装置
JPH1063576A (ja) 1996-08-27 1998-03-06 Hitachi Ltd 階層ディスク装置およびその制御方法
US6189043B1 (en) * 1997-06-09 2001-02-13 At&T Corp Dynamic cache replication in a internet environment through routers and servers utilizing a reverse tree generation
JP4874515B2 (ja) * 1998-12-22 2012-02-15 株式会社日立製作所 記憶装置システム
JP2000242434A (ja) * 1998-12-22 2000-09-08 Hitachi Ltd 記憶装置システム
US6542961B1 (en) 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
CN1218073C (zh) * 2000-03-01 2005-09-07 苏拉有限及两合公司 用于填塞卷曲的方法和装置
JP2001256003A (ja) 2000-03-10 2001-09-21 Hitachi Ltd ディスクアレイ制御装置、そのディスクアレイ制御ユニットおよびその増設方法
US6826613B1 (en) 2000-03-15 2004-11-30 3Com Corporation Virtually addressing storage devices through a switch
JP2002044138A (ja) * 2000-07-25 2002-02-08 Nec Corp ネットワークシステム,キャッシュサーバ,中継サーバ,ルータ,キャッシュサーバ制御方法及び記録媒体
AU2001289009A1 (en) * 2000-09-12 2002-03-26 Falcon Asset Acquisition Group Method and apparatus for flash load balancing
JP2002123479A (ja) 2000-10-17 2002-04-26 Hitachi Ltd ディスク制御装置およびそのキャッシュ制御方法
JP2003029932A (ja) * 2001-07-18 2003-01-31 Hitachi Ltd ディスク制御装置
JP2003140837A (ja) 2001-10-30 2003-05-16 Hitachi Ltd ディスクアレイ制御装置
US7000027B2 (en) 2001-11-29 2006-02-14 International Business Machines Corporation System and method for knowledgeable node initiated TCP splicing
JP2003337735A (ja) * 2002-05-20 2003-11-28 Sony Corp 情報処理システムおよび方法、情報処理装置および方法、プログラム格納媒体、並びにプログラム
US20040177218A1 (en) * 2002-11-06 2004-09-09 Meehan Thomas F. Multiple level raid architecture
JP4326819B2 (ja) * 2003-02-28 2009-09-09 株式会社日立製作所 ストレージシステムの制御方法、ストレージシステム、プログラム、及び記録媒体
JP4615230B2 (ja) 2004-03-03 2011-01-19 潔 小倉 ガラクトシルセラミド発現因子−1のc領域によるがん細胞転移抑制剤

Also Published As

Publication number Publication date
US7430636B2 (en) 2008-09-30
US20070050546A1 (en) 2007-03-01
JP2007065751A (ja) 2007-03-15
US20080320221A1 (en) 2008-12-25
CN1924783A (zh) 2007-03-07
EP2184674A3 (en) 2010-07-07
JP4786255B2 (ja) 2011-10-05
US7747819B2 (en) 2010-06-29
EP2184674A2 (en) 2010-05-12
EP1760578A1 (en) 2007-03-07

Similar Documents

Publication Publication Date Title
CN100480979C (zh) 存储系统以及存储控制方法
US7194592B2 (en) Storage system using load balancing among systems of varying performance
US7136963B2 (en) Storage capable of cache assignment modification
CN101149667B (zh) 磁盘阵列系统
US7913037B2 (en) Computer system for controlling allocation of physical links and method thereof
JP3726484B2 (ja) 記憶サブシステム
JP4847272B2 (ja) 論理区画ごとに電源を管理する計算機システム、ストレージ装置及びそれらの制御方法
CN100581172C (zh) 一种对目的磁盘进行访问的方法和扩展磁盘容量的系统
CN100418047C (zh) 磁盘阵列装置以及其控制方法
JP2009146106A (ja) 物理的な通信ポートに付加される仮想的な通信ポートを移行する機能を有したストレージシステム
JP4672282B2 (ja) 情報処理装置、及び情報処理装置の制御方法
JP4653965B2 (ja) 入出力インタフェースモジュールの管理方法
JPH11203201A (ja) キャッシュメモリの配置方法およびデータ記憶システム
US7545746B2 (en) Computer system for controlling routed data amount
JP2009026091A (ja) 接続管理プログラム、接続管理方法および情報処理装置
US20110202716A1 (en) Storage system and data writing method
EP1274015A2 (en) Disk array control apparatus and control data transfer method using the same
US20110283063A1 (en) Disk array device, a disk array device control method and a disk array device control program
US7058758B2 (en) Load balancing to support tape and disk subsystems on shared fibre channel adapters
WO1999063442B1 (en) Fibre channel topological structure and method and application with raid devices and controllers
CN110515536A (zh) 数据存储系统
JP2000347812A (ja) 情報処理装置およびディスクアレイ装置
KR100347527B1 (ko) 단일 광채널 중재루프를 이용한 래이드 시스템의 구조
US20060059302A1 (en) Disk array subsystem
JP2006092166A (ja) ライブラリ制御システム

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090422

CF01 Termination of patent right due to non-payment of annual fee