JP3987241B2 - 系間情報通信システム - Google Patents
系間情報通信システム Download PDFInfo
- Publication number
- JP3987241B2 JP3987241B2 JP21534899A JP21534899A JP3987241B2 JP 3987241 B2 JP3987241 B2 JP 3987241B2 JP 21534899 A JP21534899 A JP 21534899A JP 21534899 A JP21534899 A JP 21534899A JP 3987241 B2 JP3987241 B2 JP 3987241B2
- Authority
- JP
- Japan
- Prior art keywords
- control means
- path
- communication
- information communication
- interface control
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2089—Redundant storage control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2005—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2007—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
- G06F11/201—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2002—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
- G06F11/2012—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant and using different communication protocols
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
【発明の属する技術分野】
本発明は、第1の系と第2の系との間で情報通信が行われる、2重化されたコントローラを備えた2重化コントローラ内蔵装置に代表される系間情報通信システムに関する。
【0002】
【従来の技術】
近年のディスクアレイ装置には、それぞれ異なるホスト装置と接続可能な2重化されたコントローラを備えた2重化コントローラ内蔵装置を構成しているものがある。この種のディスクアレイ装置では、各コントローラ(各系)と対応するホスト装置との間でデータ転送が可能なようになっている。各コントローラには、ホスト装置との間の転送データを一時記憶するためのキャッシュメモリがそれぞれ設けられている。
【0003】
従来、上記した2重化コントローラを内蔵するディスクアレイ装置(系間情報通信システム)では、各コントローラ(各系)内のキャッシュメモリ上のデータの保全性を高めるために、いわゆるミラードキャッシュ方式を採用している。この方式は、ホスト装置から自系(のコントローラ)で受け取ったライトデータを他系のコントローラのキャッシュメモリにコピー(ミラー)する方式である。
【0004】
このミラードキャッシュ方式を適用するディスクアレイ装置においては、他系でのキャッシュメモリへのコピー(ライト)が完了するのを待って、つまり自系と他系のキャッシュメモリの内容の一致化が図られるのを待って、ホスト装置へのライトの完了を通知するのが一般的である。
【0005】
また、この種のディスクアレイ装置では、コントローラ間の重要な通信での信頼性向上のために、冗長なパスを特別に備えるのが一般的である。
【0006】
【発明が解決しようとする課題】
上記したように、2重化コントローラを内蔵し、ミラードキャッシュ方式を適用する従来のディスクアレイ装置(2重化コントローラ内蔵装置、系間情報通信システム)では、他系のライトが完了するまで自系のコントローラはホスト側に完了を返せないため、この2重化コントローラ間のライトデータの通信のパスがライト時の性能のボトルネックになるという問題があった。
【0007】
また、従来のディスクアレイ装置(2重化コントローラ内蔵装置、系間情報通信システム)では、コントローラ間の重要な通信での信頼性向上のために、冗長なパスを特別に備える必要があるという問題もあった。
【0008】
本発明は上記事情を考慮してなされたものでその目的は、2重化コントローラ間の情報通信に代表される2つの系の間の情報通信における転送サイズの違いにより、当該系間の情報通信に使用する通信パスを使い分けることで、当該系間の情報通信の高速化を図ることができる系間情報通信システムを提供することにある。
【0009】
本発明の他の目的は、冗長パスを特別に設けなくても、パスの冗長化を図ることができる系間情報通信システムを提供することにある。
【0010】
【課題を解決するための手段】
本発明は、第1の系と第2の系との間で情報通信が行われる系間情報通信システムにおいて、上記第1の系と第2の系との間の転送サイズが小さい場合の情報通信に供される、転送サイズが小さい場合に高速レスポンスが可能な第1の通信路と、上記第1の系と第2の系との間の転送サイズが大きい場合の情報通信に供される、上記第1の通信路に比べて転送サイズが大きい場合の転送能力が大きい第2の通信路とを備えると共に、上記第1及び第2の系には、他系と情報通信を行う場合、対象となる情報のサイズに応じて上記第1または第2の通信路のいずれか一方が切り替え使用されるように制御する主制御手段をそれぞれ設けたことを特徴とする。
【0011】
このような構成においては、2つの系の間で情報通信を行う場合、その情報通信の対象となる情報のサイズ(転送サイズ)に応じて使用する通信路を使い分けることにより、つまり転送サイズが小さいときには、転送サイズが小さいときのレスポンスが高速な第1の通信路を用い、転送サイズが大きいときには、転送能力が大きい第2の通信路を用いることにより、2つの系の間の高速情報通信が実現可能となる。ここで、転送サイズの大小は情報通信の種類によって決まることが多いため、その種類(例えば、データ転送に必要なデータ転送前後の一連の手順での系間通信、つまり制御データの通信であるか、データ転送それ自体であるか)に応じて通信路を使い分けするとよい。
【0012】
また、上記第1及び第2の系に、上記主制御手段(例えばマイクロプロセッサユニット)が接続された内部バスを備えた構成では、当該第1及び第2の系に、自系内の主制御手段による内部バスを介しての制御のもとで上記第1の通信路を介して他系との間で逐次情報通信を行う第1のインタフェース制御手段と、自系内の主制御手段からの指示に応じて主制御手段から独立に上記第2の通信路を介して他系との間で指示された情報通信を行う第2のインタフェース制御手段とを設けることで、転送サイズに応じて使用する通信路を使い分けての情報通信(情報転送)を効率的に行うことができる。
【0013】
ここで、上記第1及び第2の系が、ミラードキャッシュ方式を適用するキャッシュメモリを内蔵する2重化コントローラである構成では、上記第2のインタフェース制御手段に、自系内の主制御手段からの指示に応じて自系内のキャッシュメモリに格納されたデータを上記第2の通信路を介して他系内の第2のインタフェース制御手段により当該他系内のキャッシュメモリにコピーさせる機能を持たせるならば、内部バスでのトラヒックが上がるのを防止しながら、大量のデータコピーが実現可能となる。
【0014】
また、上記第1及び第2の系から共通にアクセス可能な少なくとも1つのディスク装置と、上記第1及び第2の系とディスク装置とを接続するための第3の通信路とを備えたシステムでは、上記第1のパスまたは第2のパス上に障害が発生した場合に、上記主制御手段の制御により、上記ディスク装置アクセス用の第3の通信路が第1または第2のパスの代替パスとして使用される構成とすることにより、冗長パスを特別に用意しなくても、通信パスの冗長化が実現可能となる。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態につき、系間情報通信システムが2重化コントローラ内蔵のディスクアレイ装置である場合を例に、図面を参照して説明する。
【0016】
図1は本発明の一実施形態に係る2重化コントローラ内蔵のディスクアレイ装置のブロック構成図、図2は当該ディスクアレイ装置を備えたシステムのブロック構成図である。
【0017】
図2において、100,200は、本発明に直接関係するディスクアレイ装置を接続するホスト装置(ホストコンピュータ)であり、例えばサーバ(サーバコンピュータ)をなす。ホスト装置100,200とディスクアレイ装置300(内の後述するコントローラ310,320に設けられたホストI/F313,323)とは、SCSI(Small Computer System Interface)バス、あるいはファイバチャネル等のバス110,210により接続されている。
ホスト装置100,200には、例えば複数のクライアント(クライアントコンピュータ)400がイーサネット(Ethernet)バス、リングバス等により構成されるネットワーク500を介して接続されている。
【0018】
ディスクアレイ装置300は、図1に示すように、当該装置300全体を制御する2重化されたコントローラ310,320と、ディスクアレイを構成する複数のディスク装置、例えば2つのハードディスク装置(以下、HDDと称する)360,361とを備えている。コントローラ310,320(内の後述するHDD−I/F314,324)とHDD360,361とは、SCSIバス等のバス350により接続されている。
【0019】
コントローラ310,320は、当該コントローラ310,320の制御中枢をなす中央制御部としてのMPU(Micro Processing Unit)311,321と、キャッシュメモリ部312,322とを備えている。
【0020】
キャッシュメモリ部312,322は、ホスト装置100,200から転送されたデータ(ライトデータ)、及びHDD360,361から読み出されたデータ(リードデータ)を一時記憶するキャッシュメモリ312a,322を内蔵する。このキャッシュメモリ312a,322aは、ミラードキャッシュを実現するために、当該キャッシュメモリ312a,322a(を内蔵したキャッシュメモリ部312,322)を持つコントローラ310,320と対をなすもう一方のコントローラ320,310からのデータ、つまり他方(他系)のコントローラ320,310からのデータがコピー可能な領域を有する。またキャッシュメモリ部312,322は、I/F(インタフェース)として、後述する内部バス317,327との接続用と、コントローラ間データ転送用(コントローラ間データ転送に用いるバス340との接続用)との2ポートを有する。
【0021】
コントローラ310,320はまた、ホスト装置100,200と接続するバス110,120の制御部をなすインタフェース制御部、つまりホスト装置100,200とのインタフェース制御部(以下、ホストI/Fと称する)313,323と、HDD360,361とのインタフェース制御部(以下、HDD−I/Fと称する)314,324とを備えている。
【0022】
コントローラ310,320はまた、当該コントローラ310,320間のデータ転送制御を司り、データ転送サイズが小さい場合に高速レスポンスが可能なコントローラ間データ転送制御部(以下、コント間I/Fと称する)315,325と、当該コントローラ310,320間のデータ転送制御を司り、データ転送サイズに影響されずに一定のレスポンスが可能なコントローラ間データ転送制御部(以下、コント間I/Fと称する)316,326とを備えている。コント間I/F315,325は内部バス317,327を介してMPU311,321と接続され、コント間I/F316,326はキャッシュメモリ部312,322のコントローラ間データ転送用ポートと接続されている。
【0023】
コントローラ310,320は更に、PCIバス(Peripheral Component Interconnect Bus)に代表される内部バス317,327を備えている。この内部バス317,327には、コントローラ310,320内の各モジュール(ここでは、MPU311,321と、キャッシュメモリ部312,322と、ホストI/F313,323と、HDD−I/F314,324と、コント間I/F315,325の各モジュール)が接続されている。
【0024】
コントローラ310,320内のコント間I/F315,325は、データ転送サイズが小さいデータの転送に適したシリアルバスに代表されるバス330により相互接続され、コント間I/F316,326は、データ転送サイズが大きいデータの転送に適した非同期転送型のバス340により相互接続されている。従来のディスクアレイ装置には、コント間I/F316,326と、当該コント間I/F316,326を接続するバス340とが存在しないことに注意されたい。このため従来は、コントローラ310,320間のデータ転送は、MPU311,312の制御により全て内部バス317,327を介して行う必要がある。
【0025】
次に、図2のシステムに適用される図1の構成のディスクアレイ装置300の動作について、ホスト装置100からコントローラ310に対して要求されたデータのライト時に、そのコピーデータをもう一方のコントローラ320内のキャッシュメモリ322に格納する場合を例に、図3及び図4を参照して説明する。
【0026】
今、ホスト装置100からディスクアレイ装置300内のコントローラ310に対し、バス110を介してデータのライト要求が送られたものとする。コントローラ310が、このホスト装置100からのライト要求をホストI/F313を介して受け付けると、ホスト装置100からコントローラ310へのライトデータの転送が開始される。
【0027】
すると、ホスト装置100からバス110を介して転送されるデータは、コントローラ310内のホストI/F313で受け取られて、ホストI/F313→内部バス317→キャッシュメモリ部312のパスを通って、そのコントローラ310のキャッシュメモリ部312に内蔵されたキャッシュメモリ312に格納される。本実施形態では、ホスト装置100からのライト要求で指定されたディスクアレイ(内のHDD)のデータがキャッシュメモリ312aにも存在する(ライト時の)キャッシュヒットの場合には、当該キャッシュメモリ312a内の該当するデータが、ホスト装置100からのライトデータに更新される。このキャッシュメモリ312aに格納されたライトデータは、ホスト装置100からのライト要求で指定されたディスクアレイ(内のHDD)に対する遅延書き込みの対象となる。
【0028】
コントローラ310内のMPU311は、当該コントローラ310(自系)のキャッシュメモリ312に格納されたのと同一のライトデータをコントローラ320(他系)のキャッシュメモリ322にコピー(ミラー)するために、コントローラ320が停止していないか否かを、内部バス317を介してのコント間I/F315を用いたコントローラ間通信(制御データの授受)で確認する。即ちMPU311は、コントローラ320内のMPU321への問い合わせを、図3に示すように、MPU311→内部バス317→コント間I/F315→バス330→コント間I/F325→内部バス327→MPU321のパス31を用いて通知する。
【0029】
コントローラ320内のMPU321は、コントローラ310内のMPU311からの問い合わせを(コント間I/F325から内部バス327を介して)受け取ると、その問い合わせとは逆のパスで、つまり図3に示すように、MPU321→内部バス327→コント間I/F325→バス330→コント間I/F315→内部バス317→MPU311のパス32で、コントローラ310内のMPU311へ正常である旨の応答を返す。
【0030】
MPU311は、コントローラ320内のMPU321からの正常応答を受け取ると、先に格納したデータのキャッシュメモリ322へのコピーを、図4に示すように、MPU311→内部バス317→キャッシュメモリ部312のパス41を用いてキャッシュメモリ部312に指示する。
【0031】
するとキャッシュメモリ部312は、指示されたデータを、コント間I/F316を用いたデータ転送により、図4に示すように、キャッシュメモリ312a→コント間I/F316→バス340→コント間I/F326→キャッシュメモリ322aのパス42を用いて、コントローラ320内のキャッシュメモリ322a(に確保されているコピー領域)にコピーさせる。このデータ転送の最後では、データ転送結果を示す転送ステータスが(コントローラ320内の)キャッシュメモリ部322のコントローラ間データ転送用I/F(ポート)から上記パス42と逆のパスで、(コントローラ310内の)キャッシュメモリ部312のコントローラ間データ転送用I/F(ポート)に返される。
【0032】
キャッシュメモリ部312は、上記転送ステータスからデータ転送の完了を判定すると、内部バス317との接続用I/F(ポート)により、キャッシュメモリ322aへの転送(コピー)が完了したことを、図4に示すように、キャッシュメモリ部312→内部バス317→MPU311のパス43を用いてMPU311に通知する。
【0033】
MPU311は、このキャッシュメモリ322aへの転送(コピー)完了通知を受け取って、キャッシュメモリ312aからキャッシュメモリ322aへのコピー(ミラー)の完了を確認すると、ホスト装置100から要求されたデータライトの完了を判定し、MPU311→内部バス317→ホストI/F313→バス110→ホスト装置100のパスによりホスト装置100にライト完了通知を返す。なお、キャッシュメモリ312aからキャッシュメモリ322aへのコピー(ミラー)が完了した旨の通知は、転送サイズが小さいため、前記パス32を用いてコントローラ310内のMPU311送るようにしても構わない。
【0034】
このように本実施形態では、コントローラ310,320(内のMPU311,321)間の上記問い合わせ及び当該問い合わせに対する応答、つまりコントローラ間通信(制御データの授受)には、コント間I/F315,325及びバス330を含むパス31(32)を用い、キャッシュメモリ312a,322a間のデータ転送(データコピー)には、コント間I/F316,326及びバス340を含むパス42を用いるようにしている。
【0035】
ここで、コントローラ間通信は、大容量のデータの転送が行われるキャッシュメモリ312a,322a間のデータ転送(データコピー)に比べて、その転送データ量が著しく少ない。
【0036】
次に、パス31の中心をなすバス330は、本実施形態のようにシリアルバスで構成されている場合、データ転送開始までの手順と、データ転送終了後の手順に(伴う制御データの授受に)要する時間は、非同期転送型のバス340と異なって少ない。つまり転送のための手順のオーバヘッドが小さい。一方、データ転送時間は、データ量が多いほど長く、少ないほど短くなる。したがってバス330は、上記のコントローラ間通信のように、データ量が少ないデータ転送の場合に高速レスポンスが期待できる。
【0037】
ところが従来は(コント間I/F316,327及びバス340が存在しないため)、データ転送量が少ないコントローラ間通信は勿論、データ転送量が多いキャッシュメモリ間データ転送(データコピー)の場合にも、(コント間I/F315,325及びバス330を含む)上記パス31(32)を用いていた。しかも、このパス31(32)には各コントローラ310,320の内部バス317,327が含まれている。したがって、データコピーのために内部バス317,327を使用することでバストラヒックが上がり、加えてMPU311,321の処理が必要となることから、コピー性能、更にはホスト装置100,200からの要求処理性能が低下する虞があった。
【0038】
これに対して本実施形態では、キャッシュメモリ部312,322に接続されたコント間I/F316,326を設け、当該コント間I/F316,326により、(内部バス317,327から独立した)バス340を中心とするパス41を介して、キャッシュメモリ部312,322内のキャッシュメモリ312a,312b間の(データコピーのための)データ転送をMPU321,322から独立に行うようにしている。ここでは、データコピーのために、コントローラ310,320内の各種モジュールが接続されている内部バス317,327を使用せず、MPU321,322の処理も不要なことから、上述の性能低下を低減できる。
【0039】
ここで、バス340が本実施形態のように非同期転送型の場合、データ転送開始までとデータ転送終了後の手順が複雑であり、バス330と異なって転送のための手順のオーバヘッドが大きい。一方、バス340経由でのデータコピー等、一定の転送サイズの範囲でのデータ転送に要する時間は、上記手順に要する時間に比べて短い。したがって、コント間I/F316,326によりバス340を経由してのデータ転送では、一定の転送サイズの範囲では、転送サイズに関係なく、データ転送のための手順に要する時間でほぼ決まる一定のレスポンスを持つ。
【0040】
また、上記のように、データコピーに内部バス317,327、コント間I/F315,325及びバス330を含むパス31(32)を使用しない構成では、つまりパス31(32)を、コントローラ間通信のようにデータ量が少ないデータ転送のみに使用する構成では、価格的な制約のもとで、バス330の信号ビット幅を少なくし(ハードウェア量を減らし)、代わりに高速信号線を用いることが可能となり、コントローラ間通信等を高速に処理することができる。
【0041】
ところで、図2の構成のディスクアレイ装置300において、上記パス31(32)の中心をなすコント間I/F315、バス330、コント間I/F325、或いは上記パス(42)の中心をなすコント間I/F316、バス340、コント間I/F326のいずれかに障害が発生することがあり得る。
【0042】
そこで本実施形態では、これらのパス上のいずれかの要素に障害が発生した場合の代替パスとして、HDD−I/F314、バス350及びHDD−I/F324のパスが使用可能なようになっている。このHDD−I/F314、バス350及びHDD−I/F324のパス(代替パス)を実現するには、例えばコントローラ310であれば、内部バス317上の通信に使用するデバイスの指定を、コント間I/F315或いはキャッシュメモリ部312のコントローラ間データ転送用I/F(ポート)からHDD−I/F314へ、コントローラ320であれば、内部バス327上の通信に使用するデバイスの指定をコント間I/F325或いはキャッシュメモリ部322のコントローラ間データ転送用I/F(ポート)からHDD−I/F324へ変更すればよい。
【0043】
なお、コントローラ310,320のホストI/F313,323に、ホスト装置との接続ポートを2つ持たせ、ホスト装置100,200を、図5に示すように、バス110,210に相当するバス120,220を介してコントローラ320,310のホストI/F323,313に接続するとよい。
【0044】
このような構成では、例えばコントローラ310自身の障害またはホスト装置100と当該コントローラ310との間の通信パスの障害が発生した場合、ホスト装置100はバス120を用いることで、他系のコントローラ320を切り替え使用することができる。同様にコントローラ320自身の障害またはホスト装置200と当該コントローラ320との間の通信パスの障害が発生した場合には、ホスト装置200はバス220を用いることで、他系のコントローラ310を切り替え使用することができる。
【0045】
また図5の構成において、ホスト装置100,200は、相手に障害が発生した場合に相手の代替処理を行うようになっている。そのためホスト装置100,200は互いに障害発生を監視している。この監視は、ネットワーク500を介して行うことも可能であるが、トラフィックと信頼性を考慮するならば、図5に示すようにホスト装置100,200間を接続するイーサネットバス等のバス600を設け、当該バス600を介して監視するとよい。なお、ホスト装置100,200は、互いに処理を行う構成でも、一方が待機系となる構成のいずれでも構わない。
【0046】
以上は、本発明を、2重化されたコントローラ間の情報通信の高速化のために、その情報通信の対象となる情報のサイズ(の違いを反映する情報通信の種類、つまりデータ転送前後の一連の手順でのコントローラ間通信であるか、データ転送それ自体であるか)に応じて2種の通信パスを切り替え使用する2重化コントローラ内蔵のディスクアレイ装置に実施した場合について説明したが、これに限るものではない。本発明は、相互に情報通信を行う2つの系の装置を備えた系間情報通信システムにおける、系間の情報通信の高速化にも適用可能である。
【0047】
【発明の効果】
以上詳述したように本発明によれば、2重化されたコントローラ間の情報通信に代表される2つの系の間の情報通信における転送サイズの違い(を反映する情報通信の種類の違い)により、当該系間の情報通信に使用する通信パスを使い分けるようにしたので、当該系間の情報通信の高速化を図ることができる。特に、ミラードキャッシュ方式を適用するキャッシュメモリを内蔵する2重化コントローラ間の情報通信を行うシステムでは、コントローラ間の高速データコピーが実現できる。
【0048】
また本発明によれば、第1及び第2の系から共通にアクセス可能な少なくとも1つのディスク装置と、これらを相互接続するための通信路とを備えたシステムでは、系間の情報通信に切り替え使用する通信パスの障害時には、この通信路を代替パスとして使用することにより、冗長パスを特別に設けなくても、パスの冗長化を図ることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る2重化コントローラ内蔵のディスクアレイ装置のブロック構成図。
【図2】図1の構成のディスクアレイ装置を備えたシステムのブロック構成図。
【図3】同実施形態におけるコントローラ間通信で使用される通信パスを説明するための図。
【図4】同実施形態におけるデータコピーで使用される通信パスを説明するための図。
【図5】図2のシステムの変形例を示すブロック図。
【符号の説明】
31,32…パス(第1のパス)
42…パス(第2のパス)
100,200…ホスト装置
300…ディスクアレイ装置(系間情報通信システム、2重化コントローラ内蔵装置)
310…コントローラ(第1の系)
311,321…MPU(主制御手段)
312,322…キャッシュメモリ部
312a,322a…キャッシュメモリ
313,323…ホストI/F
314,324…HDD−I/F
315,325…コント間I/F(第1のインタフェース制御手段)
316,326…コント間I/F(第2のインタフェース制御手段)
317,327…内部バス
320…コントローラ(第2の系)
330…バス(第1の通信路)
340…バス(第2の通信路)
350…バス(第3の通信路)
360,361…HDD(ディスク装置)
Claims (4)
- 第1の系と第2の系との間で情報通信が行われる系間情報通信システムにおいて、
前記第1の系と前記第2の系との間の転送サイズが小さい場合の第1の情報通信に供される、転送サイズが小さい場合に高速レスポンスが可能な第1の通信路と、
前記第1の系と前記第2の系との間の転送サイズが大きい場合の第2の情報通信に供される、前記第1の通信路に比べて転送サイズが大きい場合の転送能力が大きい第2の通信路とを具備し、
前記第1及び第2の系は、
他系と情報通信を行う場合、対象となる情報のサイズに応じて前記第1または第2の通信路のいずれか一方が切り替え使用されるように制御する主制御手段と、
前記主制御手段が接続された内部バスと、
前記内部バス及び前記第1の通信路に接続され、自系内の前記主制御手段による前記内部バスを介しての制御のもとで前記第1の通信路を介して他系との間で前記第1の情報通信を行う第1のインタフェース制御手段と、
前記内部バス及び前記第2の通信路に接続され、自系内の前記主制御手段からの指示に応じて当該主制御手段から独立に前記第2の通信路を介して他系との間で前記第2の情報通信を行う第2のインタフェース制御手段とをそれぞれ備えている
ことを特徴とする系間情報通信システム。 - 前記第1及び第2の系から共通にアクセス可能な少なくとも1つのディスク装置と、
前記第1及び第2の系と前記ディスク装置とを接続するための第3の通信路とを更に具備し、
前記主制御手段は、前記第1の通信路及び前記第1のインタフェース制御手段を含む第1のパス上に、或いは前記第2の通信路及び前記第2のインタフェース制御手段を含む第2のパス上に障害が発生した場合に、前記第3の通信路を前記第1または第2のパスの代替パスとして使用されるように制御することを特徴とする請求項1記載の系間情報通信システム。 - 前記第1及び第2の系は、ミラードキャッシュ方式を適用するキャッシュメモリを内蔵する、前記内部バス及び前記第2のインタフェース制御手段と接続されたキャッシュメモリ手段を備えた2重化コントローラであり、
前記第1の情報通信は、一方の系の前記第1のインタフェース制御手段が、当該一方の系内の前記主制御手段から当該第1のインタフェース制御手段に当該一方の系内の前記内部バスを介して転送されたデータを前記第1の通信路を介して他方の系内の前記第1のインタフェース制御手段に転送し、当該他方の系内の前記第1のインタフェース制御手段が、前記第1の通信路を介して当該他方の系内の前記第1のインタフェース制御手段に転送されたデータを当該他方の系内の前記内部バスを介して当該他方の系内の前記主制御手段に転送することにより、前記第1の系内の前記主制御手段と前記第2の系内の前記主制御手段との間で行われ、
前記第2の情報通信は、一方の系の前記第2のインタフェース制御手段が、当該一方の系内の前記主制御手段からの前記内部バスを介しての指示に応じて当該一方の系内の前記キャッシュメモリに格納されたデータを前記第2の通信路を介して他方の系内の前記第2のインタフェース制御手段に転送し、当該他方の系内の前記第2のインタフェース制御手段が前記第2の通信路を介して当該他方の系内の前記第2のインタフェース制御手段に転送されたデータを当該他方の系内の前記キャッシュメモリにコピーすることにより、前記第1の系内の前記キャッシュメモリと前記第2の系内の前記キャッシュメモリとの間で行われる
ことを特徴とする請求項1記載の系間情報通信システム。 - 前記第1の情報通信は、一方の系内の前記主制御手段、当該一方の系内の前記内部バス、当該一方の系内の前記第1のインタフェース制御手段、前記第1の通 信路、他方の系内の前記第1のインタフェース制御手段、当該他方の系内の内部バス及び当該他方の系内の前記主制御手段のパスであって、前記キャッシュメモリを含まないパスで行われ、
前記第2の情報通信は、一方の系内の前記キャッシュメモリ、当該一方の系内の前記第2のインタフェース制御手段、前記第2の通信路、他方の系内の前記第2のインタフェース制御手段、及び当該他方の系内の前記キャッシュメモリのパスであって、当該他方の系内の前記主制御手段をを含まないパスを介して行われる
ことを特徴とする請求項3記載の系間情報通信システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21534899A JP3987241B2 (ja) | 1999-07-29 | 1999-07-29 | 系間情報通信システム |
US09/628,306 US6944684B1 (en) | 1999-07-29 | 2000-07-28 | System for selectively using different communication paths to transfer data between controllers in a disk array in accordance with data transfer size |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21534899A JP3987241B2 (ja) | 1999-07-29 | 1999-07-29 | 系間情報通信システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001043026A JP2001043026A (ja) | 2001-02-16 |
JP3987241B2 true JP3987241B2 (ja) | 2007-10-03 |
Family
ID=16670819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21534899A Expired - Fee Related JP3987241B2 (ja) | 1999-07-29 | 1999-07-29 | 系間情報通信システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US6944684B1 (ja) |
JP (1) | JP3987241B2 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7404005B1 (en) * | 2000-06-09 | 2008-07-22 | International Business Machines Corporation | Method, system, and program for selecting one of multiple paths to communicate with a device |
US6829660B2 (en) * | 2001-12-12 | 2004-12-07 | Emulex Design & Manufacturing Corporation | Supercharge message exchanger |
JP4090400B2 (ja) * | 2003-07-24 | 2008-05-28 | 株式会社日立製作所 | ストレージシステム |
US20060020720A1 (en) * | 2004-07-23 | 2006-01-26 | Lsi Logic Corporation | Multi-controller IO shipping |
JP2007109141A (ja) * | 2005-10-17 | 2007-04-26 | Hitachi Ltd | ストレージシステム |
JP4834385B2 (ja) * | 2005-11-22 | 2011-12-14 | 株式会社日立製作所 | プリント基板および電子装置 |
JP2008046685A (ja) * | 2006-08-10 | 2008-02-28 | Fujitsu Ltd | 二重化システム及び系切り換え方法 |
JP2009053946A (ja) * | 2007-08-27 | 2009-03-12 | Toshiba Corp | 二重化コントーラ構成ブロックデバイス制御装置 |
JP4550929B2 (ja) * | 2009-01-16 | 2010-09-22 | 株式会社東芝 | 電子機器および通信状態報知方法 |
US8321622B2 (en) | 2009-11-10 | 2012-11-27 | Hitachi, Ltd. | Storage system with multiple controllers and multiple processing paths |
JP5402693B2 (ja) * | 2010-02-05 | 2014-01-29 | 富士通株式会社 | ディスクアレイ装置の制御方法及びディスクアレイ装置 |
TWI582600B (zh) * | 2013-01-04 | 2017-05-11 | 宏碁股份有限公司 | 電子裝置及其資料處理方法 |
CN103970691A (zh) * | 2013-01-24 | 2014-08-06 | 宏碁股份有限公司 | 电子装置及其数据处理方法 |
CN104969204B (zh) * | 2013-09-05 | 2018-02-09 | 株式会社日立制作所 | 存储系统以及存储控制方法 |
JP6187150B2 (ja) | 2013-10-25 | 2017-08-30 | 富士通株式会社 | ストレージ制御装置、ストレージ装置、及びストレージ制御プログラム |
JP6365557B2 (ja) * | 2016-01-26 | 2018-08-01 | 日本電気株式会社 | 制御回路および制御方法 |
CN107870832B (zh) * | 2016-09-23 | 2021-06-18 | 伊姆西Ip控股有限责任公司 | 基于多维度健康诊断方法的多路径存储设备 |
JP6939240B2 (ja) * | 2017-08-17 | 2021-09-22 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置 |
JP2019075032A (ja) * | 2017-10-19 | 2019-05-16 | 富士通株式会社 | ストレージシステム、ストレージ制御装置およびプログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6101574A (en) * | 1995-02-16 | 2000-08-08 | Fujitsu Limited | Disk control unit for holding track data in non-volatile cache memory |
US5768623A (en) * | 1995-09-19 | 1998-06-16 | International Business Machines Corporation | System and method for sharing multiple storage arrays by dedicating adapters as primary controller and secondary controller for arrays reside in different host computers |
US6073218A (en) * | 1996-12-23 | 2000-06-06 | Lsi Logic Corp. | Methods and apparatus for coordinating shared multiple raid controller access to common storage devices |
US6289389B1 (en) * | 1997-06-03 | 2001-09-11 | Lextron Systems, Inc. | Enhanced integrated data delivery system |
US6145028A (en) * | 1997-12-11 | 2000-11-07 | Ncr Corporation | Enhanced multi-pathing to an array of storage devices |
JP3726484B2 (ja) * | 1998-04-10 | 2005-12-14 | 株式会社日立製作所 | 記憶サブシステム |
JP3946873B2 (ja) * | 1998-06-19 | 2007-07-18 | 株式会社日立製作所 | ディスクアレイ制御装置 |
-
1999
- 1999-07-29 JP JP21534899A patent/JP3987241B2/ja not_active Expired - Fee Related
-
2000
- 2000-07-28 US US09/628,306 patent/US6944684B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US6944684B1 (en) | 2005-09-13 |
JP2001043026A (ja) | 2001-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3987241B2 (ja) | 系間情報通信システム | |
US7062591B2 (en) | Controller data sharing using a modular DMA architecture | |
US6732243B2 (en) | Data mirroring using shared buses | |
US6839788B2 (en) | Bus zoning in a channel independent storage controller architecture | |
US7437493B2 (en) | Modular architecture for a network storage controller | |
US8478835B2 (en) | Method and system for using shared memory with optimized data flow to improve input/output throughout and latency | |
US8335899B1 (en) | Active/active remote synchronous mirroring | |
US8316074B2 (en) | Network-accessible memory | |
US7444541B2 (en) | Failover and failback of write cache data in dual active controllers | |
EP1026575A2 (en) | Disk array system and method of changing its configuration | |
JPH09146842A (ja) | 記憶サブシステム | |
JPH08335144A (ja) | 外部記憶装置 | |
JP2008112399A (ja) | ストレージ仮想化スイッチおよびコンピュータシステム | |
JP2010049502A (ja) | ストレージサブシステム、及びこれを有するストレージシステム | |
US7293197B2 (en) | Non-volatile memory with network fail-over | |
US6842829B1 (en) | Method and apparatus to manage independent memory systems as a shared volume | |
JP2009053946A (ja) | 二重化コントーラ構成ブロックデバイス制御装置 | |
KR100258079B1 (ko) | 밀결합 결함 허용 시스템에서 메모리 버스 확장에 의한 동시 쓰기 이중화 장치 | |
US7752340B1 (en) | Atomic command retry in a data storage system | |
JP2004164047A (ja) | 記憶システム | |
JPH0736816A (ja) | 通信バス装置 | |
JP2006268403A (ja) | データストレージシステム及びストレージ制御装置のログデータの等価制御方法 | |
EP1895427B1 (en) | Data processing system, data processing apparatus, and data processing method | |
CN1363998A (zh) | 大规模系统中的双工设备及其方法 | |
US7472221B1 (en) | Mirrored memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040915 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070301 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070313 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070514 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070710 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070712 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100720 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100720 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110720 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120720 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130720 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |