(57)【要約】【課題】  初期化処理のタイムアウトとなる時間を延長することで、記憶装置を搭載した搭載装置の停電を検出することができるストレージ管理装置を提供する。【解決手段】  記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、初期化処理が実行された場合、初期化処理が完了しているかを判定する初期化完了判定部１と、初期化完了判定部１による判定結果が否である場合、初期化処理の実行時間が設定時間を経過しているか否かを判定する初期化時間判定部２と、初期化時間判定部２による判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、設定時間を延長する時間延長部と、を備えるストレージ管理装置を提供する。【選択図】図２
2010140399.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置と、
前記記憶装置を少なくとも一つ搭載する、複数の搭載装置と、
前記搭載装置が複数カスケード接続されることで成る、少なくとも２つのループと接続するルータ装置と、
前記ルータ装置に接続されたループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、
前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、
前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が前記ルータ装置に接続されたループの複数で実行されている場合、前記所定の時間を延長する時間延長部と、
を備えるストレージシステム。
【請求項２】
請求項１に記載のストレージシステムにおいて、
前記初期化処理が完了した後に、識別情報が取得されなかった記憶装置に対するライトアクセスが発生し、該ライトアクセスが失敗した場合、前記ライトアクセスのデータを、前記識別情報が取得されなかった記憶装置を搭載した搭載装置とは別の搭載装置内の記憶装置に保持させるデータバックアップ部を備えることを特徴とするストレージシステム。
【請求項３】
請求項１に記載のストレージシステムにおいて、
前記時間延長部は、初期化処理が前記ルータ装置に接続されたループの複数で実行されている場合、前記搭載装置に電源断が発生したと判断し、該電源断の検知を回避するために前記所定の時間を延長することを特徴とするストレージシステム。
【請求項４】
記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、
前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、
前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長部と、
を備えるストレージ管理装置。
【請求項５】
請求項４に記載のストレージ管理装置において、
前記初期化処理が完了した後に、識別情報が取得されなかった記憶装置に対するライトアクセスが発生し、該ライトアクセスが失敗した場合、前記ライトアクセスのデータを、前記識別情報が取得されなかった記憶装置を搭載した搭載装置とは別の搭載装置内の記憶装置に保持させるデータバックアップ部を備えることを特徴とするストレージ管理装置。
【請求項６】
記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定ステップと、
前記初期化完了判定ステップによる判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定ステップと、
前記初期化時間判定ステップによる判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長ステップと、
を実行するストレージ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
大容量のデータを記憶することができるストレージシステム、およびストレージシステムを管理するストレージ管理装置、ストレージ管理方法に関する。
【背景技術】
【０００２】
膨大なデータを蓄積するため、複数の磁気ディスク装置（以下、磁気ディスク装置をＤｉｓｋと記す）を搭載したストレージシステムがある。
【０００３】
図６にストレージシステムの全体図を示す。図６で示したストレージシステムは、ＲＡＩＤ（Redundant Arrays of Independent (Inexpensive) Disks）を構成することによりデータの冗長性を高め、望ましい性能特性をホストに提供することを目的とするシステムである。
【０００４】
以下、図６に示した各モジュールについて説明する。
【０００５】
ＣＡ(Channel Adapter)は、Ｈｏｓｔとのインターフェースの制御をつかさどるモジュールである。ＣＡは、ＨｏｓｔよりデータのＷｒｉｔｅ／Ｒｅａｄオペレーション要求を受領すると、ＣＭ（後述）に対して処理要求を通知したり、ＣＭ上のＣａｃｈｅ  Ｍｅｍｏｒｙに直接アクセスしてＣＭとＨｏｓｔとの間でのデータ転送を行う。
【０００６】
ＣＭ(Centralized Module)は、図６で示した全モジュールの中核となるモジュールである。ＣＭ内には、主にＣＡＣＨＥ制御モジュール、Ｂａｃｋｅｎｄ制御モジュールのファームウェアで実装された制御モジュールが存在する。
【０００７】
ＣＡＣＨＥ制御モジュールは、ＣＭ内のメモリ領域に関して、割り当て管理、制御全般を行う。ＢａｃｋＥｎｄ制御モジュールは、Ｄｉｓｋと通信を行なうFibre Channel Interfaceの制御、ＤｉｓｋのＩ／Ｏ制御、および複数Ｄｉｓｋによって構成されるＲＡＩＤの制御等を行う小モジュールを有する。これら制御は管理用のテーブルであるＦＣＭＡＰ（詳細は後述）に基づき行われる。尚、図６ではFibre Channel Interfaceの制御、およびＤｉｓｋのＩ／Ｏ制御を行うモジュールをＦＣ／Ｄｉｓｋ  Ｄｒｉｖｅｒと表記している。
【０００８】
また、ＣＭにはＤｉｓｋと通信を行なうためのＱＸ４と呼ばれるＦＣコントローラが搭載されている。
【０００９】
ＢＲＴ(BackEnd Router)は、ＣＭとＤＥ（後述）との間の通信経路を提供するファブリック機能を持つモジュールである。図７を参照しつつＢＲＴの特徴について説明する。
【００１０】
ＢＲＴ内にはＣＭとのインターフェースが８Ｐｏｒｔ存在し、ＢＲＴは最大８個のＣＭと接続可能である。また、ＢＲＴはＤＥとの接続用インターフェースが８Ｐｏｒｔ存在し、最大４８個のＤＥ(８パス×６カスケード)と接続可能である。本ストレージシステムは、最大で８個のＢＲＴが実装される。また、ＤＥへのパスを冗長化するため常に２つのＢＲＴが組で実装される。
【００１１】
尚、ファブリックとは、ターゲット（本例ではＤｉｓｋ）とイニシエータ（本例ではＣＭ）を接続する方式の一つであり、ファイバ・チャネル・スイッチを使用した、またはファイバ・チャネル・スイッチ同士が相互接続されたネットワークを指す。ファブリック機能が実装されている場合、イニシエータとターゲットのＰｏｒｔを直接接続しなくてもよいため、拡張性に優れている。また、ファブリック機能は、ターゲット複数をループ接続するＡＬ−ＰＡ方式に比べると、コマンドが送られる際にはファブリック機能を有する装置のみが介されるため、高いコマンド処理能力を発揮する。
【００１２】
図６で示したストレージシステムの内部モジュールの説明に戻る。ＤＥ(Drive enclosure)は、Ｄｉｓｋを実際に搭載する装置である。図８を参照しつつＤＥについて説明する。ＤＥは１台につき最大１５台のＤｉｓｋを搭載することが可能である。また、ＤＥは２枚のＰＢＣ(後述)を搭載し、ＰＢＣを介して他のＤＥとのカスケード接続が可能である。尚、以降の説明において必要な場合、イニシエータ（本例ではＢＲＴ）に直接接続されているＤＥを基本ＤＥと称し、基本ＤＥからカスケード接続されているＤＥを拡張ＤＥと称す。
【００１３】
ＰＢＣ(Port Bypass Circuit)は、はＤＥ当たり２枚搭載され、ＦＣＣ(Fiber Channel Controller)を搭載し、ＣＭから指定されたＤｉｓｋへ、また指定されたＤｉｓｋからＣＭへＦＣパケットを転送する役割を持つ。
【００１４】
また、以下にストレージシステムの関連用語を以下に示す。
【００１５】
・ＰＬＵ
ＰＬＵはＣＭ内で管理しているシステム内のＤｉｓｋの搭載位置を示す情報で、「ＤＥ  Ｎｏ．」と、「Ｓｏｌｔ  Ｎｏ．」で示される。
・Ｌｏｏｐ  ＩＤ
Ｌｏｏｐ  ＩＤは、ファイバチャネルで構成されるループであるＦＣ  Ｌｏｏｐに接続される各デバイスの識別情報である。ＦＣ  Ｌｏｏｐに接続される各デバイスにはそのループ内で固有のアドレスが割り当てられている。このアドレスをＡＬ＿ＰＡと表す。ＡＬ＿ＰＡは連続した数値では無く、扱いにくい場合がある。このためそれぞれのＡＬ＿ＰＡに対して論理的に連続した数値が割り当てられる。この連続した数値がＬｏｏｐ  ＩＤである。
【００１６】
ストレージシステム、および上流モジュールではＤｉｓｋの位置情報はＰＬＵで扱う。しかし、実際にＤｉｓｋにコマンド発行が行われる際には、ＦＣＭＡＰから指定されたＰＬＵの対となるＬｏｏｐ  ＩＤが使用され、Ｄｉｓｋにコマンドが発行される。
【００１７】
・ＦＣＭＡＰ
ＦＣＭＡＰは、ＦＣ  Ｌｏｏｐに接続されているＤｉｓｋの情報の一覧をテーブル化したものである。ＦＣＭＡＰは、ＦＣ  Ｌｏｏｐ上にＬＩＰ（後述）が発生した場合に作成される。ＦＣＭＡＰには以下の情報が格納される。
・ＰＬＵに対応するＬｏｏｐ  ＩＤ
・ＦＣＣのＬｏｏｐ  ＩＤ
・その他、Ｄｉｓｋに関する情報
【００１８】
ＬＩＰ(Loop Initialize Primitive）
ＬＩＰは、ＦＣ  Ｌｏｏｐに接続されているデバイスの識別情報を認識し、使用可能にするために行われるイニシャライズ処理である。Ｌｏｏｐ  Ｍａｓｔｅｒ（本例ではＣＭ）からＬＩＰ開始コマンドがＦＣ  Ｌｏｏｐ上に発行されることにより、ＬＩＰが実行される。尚、ＬＩＰは、ＢＲＴ内の各Ｐｏｒｔ（ＦＣ  Ｌｏｏｐ）で構成が変更になった際に随時実施される。
【００１９】
ストレージシステムは、ＦＣ  Ｌｏｏｐの状態を以下の通りに区別する。
・Ｌｉｎｋｕｐ
ＬＩＰが完了し、該当ＦＣ  Ｌｏｏｐが使用可能な状態を示す。
・ＬＩＰ中
ＬＩＰ実施中であり、該当ＦＣ  Ｌｏｏｐは使用不可能状態であることを示す。また、ＬＩＰ処理が開始してから一定時間経過してもＬＩＰが完了しなかった場合(ＬＩＰ  Ｔｉｍｅｏｕｔ)、ハード異常などが発生している可能性があるため、本ストレージシステムは、該当Ｐｏｒｔを使用不可能な状態にする。
・Ｌｉｎｋｄｏｗｎ
ＬＩＰ未完了の為、ＦＣ  Ｌｏｏｐが使用不可能な状態であることを示す。
【００２０】
また、本発明の関連ある従来技術として、以下の文献が開示されている。
【特許文献１】特開２００１−８６１４６号公報
【特許文献２】特開２００７−２７４１５３号公報
【発明の開示】
【発明が解決しようとする課題】
【００２１】
同一ＢＲＴに接続されている複数のＦＣ  Ｌｏｏｐで同時にＬＩＰが発生した場合、ＢＲＴの処理能力限界によりＬＩＰの完了が遅延する。
【００２２】
また、拡張ＤＥに停電が発生した場合、ストレージシステムは、以下の条件で停電が発生したと判断する。
（１）停電が発生したＤＥのＬＩＰが完了し、該当ＦＣ  Ｌｏｏｐの状態がＬｉｎｋｕｐである。
（２）停電が発生したＤＥに搭載されているＤｉｓｋにアクセスがあった場合、該当ＤｉｓｋのＬｏｏｐ  ＩＤがＦＣＭＡＰから消失する。
（３）そのＤＥに搭載されているＦＣＣがＦＣＭＡＰから消失する。
【００２３】
しかし、拡張ＤＥの停電により、同一ＢＲＴに接続されている複数Ｐｏｒｔ（ＦＣ  Ｌｏｏｐ）にＬＩＰが発生した場合、上述のようにＢＲＴ内の処理能力限界により停電が発生したＤＥのＦＣ  ＬｏｏｐがＬｉｎｋｕｐになるまでに時間がかかる。その結果、ＬＩＰ  ＴｉｍｅｏｕｔとなりＤＥ停電と判断できないケースが存在する。
【００２４】
停電を検出できていれば、例えばＣａｃｈｅ上にあるデータを一時的にＤｉｓｋ（基本ＤＥ内のＤｉｓｋ）に退避することによりデータロストを防止することが可能となるが、停電を検出できなかった場合、それが不可能となってしまう。
【００２５】
ここで、図９を参照しつつ、上述の問題動作についてさらに説明する。尚、ストレージシステムの配置状況にもよるが、基本ＤＥと拡張ＤＥとは別のラックに搭載され、カスケード接続の段数が同一である拡張ＤＥは、同一ラックに搭載される蓋然性が配線ケーブル長の関係で高くなる。また、ラックマウントされた各装置は、ラックの共通の電源ユニットから電力供給される。よって、停電が発生した場合はラック単位で電源断となる（すなわち、同一のラックに搭載されている各装置は同時に電源断になる）ことに留意する。図９の例では、破線でグループ化されたＤＥが１つのラックに搭載されているものとする。また、一点鎖線で示したグループが１つのＦＣ  Ｌｏｏｐを構成しているものとする。尚、システムを構築する上で、主要なユニットは一箇所に集約するというポリシーがあり、このポリシーに則る場合、ＣＭと基本ＤＥとは同一のラックに搭載され、よってＣＭと基本ＤＥとはラック上の共通の電源ユニットから電力が供給されることとなる。
１．まず、基本ＤＥと直接接続している拡張ＤＥを搭載したラックに、停電が発生したとする。
２．ＤＥの停電が複数のＦＣ  Ｌｏｏｐに跨って発生したため、ＢＲＴと接続された複数ＦＣ  ＬｏｏｐにてＬＩＰが発生する。ＢＲＴの処理能力限界のため、ＬＩＰの完了が間延びする。
３．ＬＩＰ完了が間延びした結果、ＬＩＰ監視時間超えが検出され、ＬＩＰ  Ｔｉｍｅｏｕｔとなり、パスが閉塞する。
４．ＣＭは停電が発生したＤＥに搭載されているＤｉｓｋに対してコマンド発行を試みる。しかし、ＣＭは、上記「３．」でパス閉塞が生じているため、ＤＥ停電が発生したと判断できない。
５．停電が検出されなければ、アクセス可能であった基本ＤＥへのアクセスも不可能となり、データロストが発生する（バックアップ失敗）。
【００２６】
本発明は上述した問題点を解決するためになされたものであり、ＬＩＰ  Ｔｉｍｅｏｕｔとなる時間を延長可能とすることで、ＤＥの停電によるＦＣ  Ｌｏｏｐの閉塞、およびバックアップの失敗を防止することができるストレージシステム、ストレージ管理装置、ストレージ管理方法を提供することを目的とする。
【課題を解決するための手段】
【００２７】
ストレージシステムは、複数の記憶装置と、前記記憶装置を少なくとも一つ搭載する、複数の搭載装置と、前記搭載装置が複数カスケード接続されることで成る、少なくとも２つのループと接続するルータ装置と、前記ルータ装置に接続されたループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が前記ルータ装置に接続されたループの複数で実行されている場合、前記所定の時間を延長する時間延長部と、を備える。
【００２８】
ストレージ管理装置は、記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長部と、を備える。
【００２９】
ストレージ管理方法は、記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定ステップと、前記初期化完了判定ステップによる判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定ステップと、前記初期化時間判定ステップによる判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長ステップと、を実行する。
【発明の効果】
【００３０】
初期化処理のタイムアウトとなる時間を延長することで、搭載装置の停電によるループの閉塞を防止する。
【発明を実施するための最良の形態】
【００３１】
本実施の形態の概要について説明する。本実施の形態におけるストレージシステムは、拡張ＤＥで停電が発生した場合、ＢＲＴの各Ｐｏｒｔ、すなわちＦＣ  Ｌｏｏｐ（ループ）にてＬＩＰが発生する。発生したＬＩＰが一定時間完了しなかった場合、ストレージシステムは、同一ＢＲＴの他ＰｏｒｔにてＬＩＰが発生していないか確認する。発生している場合、ストレージシステムは、ＤＥでの停電の可能性があるためＬＩＰ監視時間を延長しＬＩＰ完了を待つ。これにより、ＬＩＰ  ＴｉｍｅｏｕｔによるＢＲＴ  Ｐｏｒｔの切り離し（閉塞）とＢａｃｋｕｐの失敗を防止する。
【００３２】
本実施の形態のストレージシステムのハードウェア構成を図１に示す。ストレージシステム１００は、ＣＭ１０、ＢＲＴ２０（ルータ装置）、少なくとも一つのＤｉｓｋ（記憶装置）を搭載した基本ＤＥ３０および拡張ＤＥ３１（搭載装置）を有する。また、ＣＭ１０には、中央処理装置であるＣＰＵ（Central Processing Unit）９００、揮発性／不揮発性の記憶装置であるメモリ９０１を備える。ＣＭ１０の機能については後述するが、ＣＭ１０以外の各モジュールは、従来と同様の機能を有するものである。次に、ストレージシステム１００の動作について、図１を参照しつつ説明する。尚、図１は、図９同様破線でグループ化されたＤＥが１つのラックに搭載されているものとする。また、一点鎖線で示したグループが１つのＦＣ  Ｌｏｏｐを構成しているものとする。
【００３３】
まず、複数の拡張ＤＥ３１にて停電が発生した場合（Ｓ１）、ＢＲＴ２０の複数Ｐｏｒｔ（すなわち、ＦＣ  Ｌｏｏｐ）にてＬＩＰが発生する。ＢＲＴ２０の処理能力限界のため、ＬＩＰの完了が間延びする（Ｓ２）。
【００３４】
ＬＩＰ完了間延びの結果、ＬＩＰ監視時間超えが検出される。ここでＣＭ１０は、ＬＩＰ監視時間超えが検出された場合、同一ＢＲＴの複数ＰｏｒｔでＬＩＰが発生しているかを確認する（Ｓ３）。複数ＰｏｒｔでＬＩＰが発生しているため、拡張ＤＥ３１で停電が発生している可能性があるため、ＣＭ１０はＬＩＰ監視時間を延長する（Ｓ４）。しばらくしてＬＩＰが完了する。
【００３５】
ＣＭ１０は、ストレージシステム１００を使用しているユーザから、停電が発生した拡張ＤＥ３１に搭載されているＤｉｓｋに対しデータのリード／ライトのアクセスがあった場合、当該Ｄｉｓｋに対しアクセスを試みる。しかしながら、ＬＩＰは完了しているが、当該ＤｉｓｋのＬｏｏｐ  ＩＤが停電のため存在せず、アクセスは失敗する（Ｓ５）。
【００３６】
ここで、ＣＭ１０は、ＤＥ３１で停電が発生したと疑い、当該Ｄｉｓｋが搭載されている拡張ＤＥ３１のＦＣＣがＦＣＭＡＰ上に存在するか確認する。ＣＭ１０は、ＦＣＣが消失していることを確認した場合、ＤＥで停電が発生していると判断する（Ｓ６）。
【００３７】
停電を検出したＣＭ１０は、アクセス可能なＤＥに搭載されているＤｉｓｋにＣａｃｈｅ上のデータ、例えば、ユーザからのアクセスがライト要求であった場合、その書き込み内容のデータを退避する（Ｓ７）。尚、本実施の形態では、アクセス可能なＤＥを、上述の理由によりＣＭ１０と同一のラックに搭載されている蓋然性が高い基本ＤＥ３０とし、ＣＭ１０は、基本ＤＥ３０内のＤｉｓｋにＣａｃｈｅ上のデータを退避する。
【００３８】
次に、本実施の形態のＣＭ１０内の機能ブロックの一例を図２に示す。ＣＭ１０は、初期化完了判定部１、初期化時間判定部２、時間延長部３、データバックアップ部４を備える。尚、これら各機能ブロックは、メモリ９０１内に予め保持されているファームウェア（ソフトウェア）が呼び出され、ファームウェアとＣＰＵ９００、メモリ９０１等の各ハードウェア資源とが協働することで実現される。
【００３９】
初期化完了判定部１は、ＢＲＴ２０に接続されたＦＣ  Ｌｏｏｐうちの少なくとも一つのＦＣ  Ｌｏｏｐで、Ｄｉｓｋそれぞれの識別情報を取得する処理であるＬＩＰが実行された場合、ＬＩＰが完了しているか否かを判定する。
【００４０】
初期化時間判定部２は、初期化完了判定部１による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する。
【００４１】
時間延長部３は、初期化時間判定部２による判定結果が否であり、かつ、ＬＩＰがＢＲＴ２０に接続されたループの複数で実行されている場合、上述の所定の時間を延長する。
【００４２】
また、データバックアップ部４は、ＬＩＰが完了した後に、識別情報が取得されなかったＤｉｓｋに対するライトアクセスが発生し、そのライトアクセスが失敗した場合、そのライトアクセスのデータを、識別情報が取得されなかったＤｉｓｋを搭載したＤＥとは別のＤＥ内のＤｉｓｋに保持させる。
【００４３】
尚、初期化完了判定部１、初期化時間判定部２、時間延長部３、データバックアップ部４の各機能は、上述のＢａｃｋｅｎｄ制御モジュールの中に組み込まれてもよい。
【００４４】
次に、時間延長部３の動作の概要について説明する。
【００４５】
ＢＲＴの複数ＰｏｒｔでＬＩＰが発生し、一定時間経過してもＬＩＰが完了せず時間監視超えが検出された場合、時間延長部３は後述するＬＩＰ発生状況確認ＢＩＴＭＡＰ、およびＬＩＰ延長ＢＩＴＭＡＰの保持内容に基づきＬＩＰの延長が必要であるか判断する。ＬＩＰの延長が必要であると時間延長部３が判断した場合、時間延長部３は、一定間隔でＬＩＰ完了の監視を行い、監視時間の延長を行う。
【００４６】
ここで、ＢＲＴ２０の各ＰｏｒｔでＬＩＰが発生した際の時間延長部３の動作の一例を図３に示し、説明する。
【００４７】
まず、任意のＰｏｒｔ（図３の例ではＰｏｒｔ０）でＬＩＰが発生した場合、時間延長部３は、Ｐｏｒｔ０に対するＬＩＰ時間監視を開始する（Ｓ１１）。次いで、別のＰｏｒｔ（図３の例ではＰｏｒｔ１）でＬＩＰが発生した場合、時間延長部３は、Ｐｏｒｔ１に対するＬＩＰ時間監視を開始する（Ｓ１２）。ここで、Ｐｏｒｔ０のＬＩＰ監視時間超えが検出され、ＬＩＰ発生状況確認ＢＩＴＭＡＰ、およびＬＩＰ延長ＢＩＴＭＡＰの保持内容に基づいたＬＩＰ延長チェック（後述）によって時間延長部３が延長を要すると判断した場合（Ｓ１３）、Ｐｏｒｔ０のＬＩＰ時間監視が再度開始される（Ｓ１４）。
【００４８】
再度、Ｐｏｒｔ０のＬＩＰ監視時間超えが検出され、ＬＩＰ延長チェックによって時間延長部３が延長を要すると判断した場合、Ｐｏｒｔ０のＬＩＰ時間監視がさらに開始される（Ｓ１５、Ｓ１６）。
【００４９】
最後に、ＬＩＰが完了した場合、Ｐｏｒｔ０のＬＩＰ監視延長が終了する（Ｓ１７）。
【００５０】
ＬＩＰ延長処理に使用するＢＩＴＭＡＰについて、図４を参照しつつ説明する。本実施の形態では、ＬＩＰ延長の処理のため、ＬＩＰ発生状況確認ＢＩＴＭＡＰ（図４（Ａ）参照）、およびＬＩＰ延長ＢＩＴＭＡＰ（図４（Ｂ）参照）の２つのＢＩＴＭＡＰを用いる。以下、ＬＩＰ発生状況確認ＢＩＴＭＡＰ、ＬＩＰ延長ＢＩＴＭＡＰについて説明する。尚、これらＢＩＴＭＡＰはメモリ９０１に保持されるものとする。またこれらＢＩＴＭＡＰは、上述のＦＣＭＡＰ内に組み込まれてもよい。
【００５１】
ＬＩＰ発生状況確認ＢＩＴＭＡＰは、ＢＲＴの各ＰｏｒｔでＬＩＰが発生しているか否かを示すＢＩＴＭＡＰである。各Ｂｉｔの値は、１の場合「ＬＩＰ中」であることを意味し、０の場合「ＬＩＰ中以外」であることを意味する。ＬＩＰ発生状況確認ＢＩＴＭＡＰは、システムの最大構成時のＢＲＴのＰｏｒｔ数(最大６４)を管理するするため、８Ｂｙｔｅすなわち６４Ｂｉｔのメモリ領域がメモリ９０１上に新たに設けられる。本領域は、各ＣＭ毎に保持される。
【００５２】
ＬＩＰ発生状況確認ＢＩＴＭＡＰの形式を図４（Ａ）に示す。ＬＩＰが発生した場合、該当Ｐｏｒｔに対応したＢｉｔが１に設定される。ＬＩＰが完了した場合、該当Ｐｏｒｔに対応したＢｉｔが０に設定される。
【００５３】
ＬＩＰ延長ＢＩＴＭＡＰは、ＬＩＰ延長が必要であるか否かをＢＲＴごとに示すＢＩＴＭＡＰである。各Ｂｉｔの値は、１の場合「ＬＩＰ延長必要」であることを意味し、０の場合「ＬＩＰ延長不要」であることを意味する。ＬＩＰ延長ＢＩＴＭＡＰは、システムの最大構成時のＢＲＴ数(最大８)を管理するため、１Ｂｙｔｅすなわち８Ｂｉｔのメモリ領域がメモリ９０１上に新たに設けられる。本領域は、各ＣＭ毎に保持される。
【００５４】
ＬＩＰ延長ＢＩＴＭＡＰの形式を図４（Ｂ）に示す。ＬＩＰ開始時にＬＩＰ発生状況確認ＢＩＴＭＡＰのフラグから、同一ＢＲＴ配下の複数ＰｏｒｔでＬＩＰが発生しているかが確認される。その結果、同一ＢＲＴ配下の複数ＰｏｒｔにてＬＩＰが発生していると判断された場合、該当ＢＲＴのＬＩＰ延長フラグが１に設定される。
【００５５】
尚、ＢＲＴ配下で初回ＬＩＰ（例えば、前回ＬＩＰが発生した時から所定期間が経過した後にＬＩＰが発生した場合、そのＬＩＰを初回ＬＩＰとする）が発生したタイミングで、当該ＢＲＴのＬＩＰ延長フラグが０に設定される。また、ＬＩＰ監視時間超えが検出された場合、本ＢＩＴＭＡＰが参照され、ＬＩＰ延長フラグが１に設定されていた場合、ＬＩＰは延長される。
【００５６】
ここで、あるＢＲＴ配下のＰｏｒｔにて、複数ＬＩＰが発生した場合の例を図４（Ｃ）に基づき説明する。尚、図４（Ｃ）は、横方向を時間軸とした図である。
【００５７】
あるＢＲＴ配下のＰｏｒｔ、例えばＰｏｒｔ０にてＬＩＰが発生したとする（図４（Ｃ）の（１））。該当ＢＲＴ配下のＬＩＰ発生状況確認ＢＩＴＭＡＰのフラグが確認され、該当ＢＲＴ配下のＰｏｒｔでは初回ＬＩＰであると判断される。そのため、該当ＢＲＴのＬＩＰ延長ＢＩＴＭＡＰのフラグは０に設定される。
【００５８】
次に、上述のＢＲＴ配下の別のＰｏｒｔ、例えばＰｏｒｔ１にてＬＩＰが発生したとする（図４（Ｃ）の（２））。ここで、該当ＢＲＴ配下のＬＩＰ発生状況確認ＢＩＴＭＡＰのフラグが確認される。該当ＢＲＴ配下のＰｏｒｔ０で既にＬＩＰが発生しているため、該当ＢＲＴのＬＩＰ延長ＢＩＴＭＡＰのフラグが１に設定される。
【００５９】
Ｐｏｒｔ０に対する監視時間超えが検出された時（図４（Ｃ）の（３））、該当ＢＲＴのＬＩＰ延長ＢＩＴＭＡＰのフラグが参照される。ＬＩＰ延長ＢＩＴＭＡＰのフラグが１に設定されているため、Ｐｏｒｔ０に対するＬＩＰの延長処理が実施される。Ｐｏｒｔ１に対する監視時間超えが検出された時（図４（Ｃ）の（４））も同様である。
【００６０】
次に、ＣＭ１０の動作を図５のフローチャートを参照しつつ説明する。
【００６１】
まず、ＤＥ３１で停電が発生し、ＬＩＰが発生した場合（Ｓ２１）、初期化時間判定部２は、ＬＩＰの時間監視すなわちＬＩＰの実行時間が所定の時間経過したか否かの判定処理を行うためのＬＩＰ実行時間を計測する（Ｓ２２）。ここで、時間延長部３は、ＬＩＰ発生状況確認ＢＩＴＭＡＰに対し、該当ＢＲＴ内のＬＩＰが発生したＰｏｒｔに対応したＢｉｔを１に設定し（Ｓ２３）、該当ＢＲＴ配下で発生したＬＩＰは初回ＬＩＰかを判定する（Ｓ２４）。尚、時間延長部３は、ＬＩＰ発生状況確認ＢＩＴＭＡＰ上で、同一ＢＲＴ内の他のＢｉｔに既に１が設定されているか否かを判定し、１が設定されていない場合に初回ＬＩＰであると判定し、１が設定されている場合に初回ではないものと判定する。
【００６２】
ここで、初回ＬＩＰである場合（Ｓ２４、Ｙｅｓ）、時間延長部３は、ＬＩＰ延長ＢＩＴＭＡＰの該当ＢＲＴに対応するＢｉｔに０を設定する（Ｓ２５）。一方、初回ＬＩＰでない場合（Ｓ２４、Ｎｏ）、時間延長部３は、ＬＩＰ延長ＢＩＴＭＡＰの該当ＢＲＴに対応するＢｉｔに１を設定する（Ｓ２６）。
【００６３】
初期化完了判定部１は、ＬＩＰが完了しているか否かを判定する（Ｓ２７）。ＬＩＰが完了している場合（Ｓ２７、Ｙｅｓ）、初期化時間判定部２は、ＬＩＰの時間監視すなわちＳ２２で開始したＬＩＰ実行時間の計測を停止し（Ｓ３４）、処理は終了する。
【００６４】
一方、ＬＩＰが完了していない場合（Ｓ２７、Ｎｏ）、初期化時間判定部２は、ＬＩＰ監視時間を超えたか否か、すなわちＬＩＰの実行時間が予め設定された所定の時間を経過しているか否かを判定する（Ｓ２８）。ここで、ＬＩＰの実行時間が監視時間を超えている場合（Ｓ２８、Ｙｅｓ）、時間延長部３は、ＬＩＰ監視時間の延長が必要か否かの判定を行う（Ｓ２９）。尚、時間延長部３は、ＬＩＰ延長ＢＩＴＭＡＰの該当ＢＲＴに対応するＢｉｔが１である場合は延長必要と判定し、０である場合は延長不要と判定する。
【００６５】
ここで、延長が不要と判定された場合（Ｓ２９、Ｎｏ）、処理はそのまま終了する。一方、延長が必要と判定された場合（Ｓ２９、Ｙｅｓ）、時間延長部３は、監視時間（所定の時間）を延長することで、ＬＩＰ時間監視を再開する（Ｓ３０）。
【００６６】
初期化完了判定部１は、再度ＬＩＰが完了しているか否かを判定する（Ｓ３１）。ＬＩＰが完了している場合（Ｓ３１、Ｙｅｓ）、初期化時間判定部２は、ＬＩＰの時間監視すなわちＳ２２で開始したＬＩＰ実行時間の計測を停止し（Ｓ３４）、処理は終了する。
【００６７】
一方、ＬＩＰが完了していない場合（Ｓ３１、Ｎｏ）、初期化時間判定部２は、Ｓ２８同様、ＬＩＰ監視時間を超えたか否かを判定する（Ｓ３２）。ここで、ＬＩＰの実行時間が監視時間を超えている場合（Ｓ３２、Ｙｅｓ）、時間延長部３は、ＬＩＰの延長が予め定義された一定回数実施されたか否かを判定し（Ｓ３３）、一定回数を超えている場合（Ｓ３３、Ｙｅｓ）、処理が終了し、当該ＬＩＰはＬＩＰ  Ｔｉｍｅｏｕｔの扱いとなる。一方、一定回数を超えていない場合（Ｓ３３、Ｎｏ）、時間延長部３は、Ｓ３０の処理を再度実行する。
【００６８】
尚、Ｓ２８の判定結果がＮｏである場合、Ｓ２７の処理へ戻り、Ｓ３２の判定結果がＮｏである場合、Ｓ３１の処理へ戻る。本ループ中は、ＬＩＰの完了、またはＬＩＰ監視時間超えの割り込み待ち状態となる。
【００６９】
尚、ＬＩＰが完了し該当ＰｏｒｔのＤｉｓｋが消失している場合、データバックアップ部４は、図１のＳ７で示したようにバックアップを行う。すなわち、データバックアップ部４は、ＬＩＰが完了した後に、識別情報が取得されなかったＤｉｓｋに対するライトアクセスが発生し、そのライトアクセスが失敗した場合、ライトアクセスのデータを、当該ＤＥとは別のＤＥに搭載されたＤｉｓｋに保持させる。尚、本実施の形態では、データバックアップ部４は、基本ＤＥ３０に搭載されたＤｉｓｋにデータを保持させるものとするが、この段階でアクセス可能なＤｉｓｋであればいずれのＤｉｓｋであってもよい。例えば、拡張ＤＥ３１のうちで、バックアップ専用の特定の領域が確保されている場合や、バックアップ専用の外部の磁気ディスク装置が用意されている場合は、失敗したライトアクセスのデータはそれらの記憶領域に退避されてもよい。また、これら退避領域を、ユーザが指定するようにしてもよい。この場合、退避されたデータを本来書き込まれるべき正規の領域へ書き戻す必要があるため、いずれに退避したかをデータバックアップ部４はメモリ９０１に保持させる。
【００７０】
本実施の形態によって、拡張ＤＥ（ラック単位）で停電が発生した場合、停電をより正確に検出しユーザーデータ及び装置内制御情報の消失を防止することが可能である。
【００７１】
以上、本実施の形態によれば、以下の付記で示す技術的思想が開示されている。
（付記１）  複数の記憶装置と、
前記記憶装置を少なくとも一つ搭載する、複数の搭載装置と、
前記搭載装置が複数カスケード接続されることで成る、少なくとも２つのループと接続するルータ装置と、
前記ルータ装置に接続されたループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、
前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、
前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が前記ルータ装置に接続されたループの複数で実行されている場合、前記所定の時間を延長する時間延長部と、
を備えるストレージシステム。
（付記２）  付記１に記載のストレージシステムにおいて、
前記初期化処理が完了した後に、識別情報が取得されなかった記憶装置に対するライトアクセスが発生し、該ライトアクセスが失敗した場合、前記ライトアクセスのデータを、前記識別情報が取得されなかった記憶装置を搭載した搭載装置とは別の搭載装置内の記憶装置に保持させるデータバックアップ部を備えることを特徴とするストレージシステム。
（付記３）  付記１に記載のストレージシステムにおいて、
前記時間延長部は、初期化処理が前記ルータ装置に接続されたループの複数で実行されている場合、前記搭載装置に電源断が発生したと判断し、該電源断の検知を回避するために前記所定の時間を延長することを特徴とするストレージシステム。
（付記４）  記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定部と、
前記初期化完了判定部による判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定部と、
前記初期化時間判定部による判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長部と、
を備えるストレージ管理装置。
（付記５）  付記４に記載のストレージ管理装置において、さらに、
前記初期化処理が完了した後に、識別情報が取得されなかった記憶装置に対するライトアクセスが発生し、該ライトアクセスが失敗した場合、前記ライトアクセスのデータを、前記識別情報が取得されなかった記憶装置を搭載した搭載装置とは別の搭載装置内の記憶装置に保持させるデータバックアップ部を備えることを特徴とするストレージ管理装置。
（付記６）  付記４に記載のストレージ管理装置において、
前記時間延長部は、初期化処理が複数のループで実行されている場合、前記搭載装置に電源断が発生したと判断し、該電源断の検知を回避するために前記所定の時間を延長することを特徴とするストレージ管理装置。
（付記７）  記憶装置を少なくとも一つ搭載する搭載装置が複数カスケード接続されることで成る、複数のループのうちの少なくとも一つのループで、記憶装置それぞれの識別情報を取得する初期化処理が実行された場合、該初期化処理が完了しているか否かを判定する初期化完了判定ステップと、
前記初期化完了判定ステップによる判定結果が否である場合、初期化処理の実行時間が所定の時間を経過しているか否かを判定する初期化時間判定ステップと、
前記初期化時間判定ステップによる判定結果が否であり、かつ、初期化処理が複数のループで実行されている場合、前記所定の時間を延長する時間延長ステップと、
を実行するストレージ管理方法。
（付記８）  付記７に記載のストレージ管理方法において、さらに、
前記初期化処理が完了した後に、識別情報が取得されなかった記憶装置に対するライトアクセスが発生し、該ライトアクセスが失敗した場合、前記ライトアクセスのデータを、前記識別情報が取得されなかった記憶装置を搭載した搭載装置とは別の搭載装置内の記憶装置に保持させるデータバックアップステップを実行することを特徴とするストレージ管理方法。
（付記９）  付記７に記載のストレージ管理方法において、
前記時間延長ステップは、初期化処理が複数のループで実行されている場合、前記搭載装置に電源断が発生したと判断し、該電源断の検知を回避するために前記所定の時間を延長することを特徴とするストレージ管理方法。
【図面の簡単な説明】
【００７２】
【図１】本実施の形態に係るストレージシステムのハードウェア構成および動作の一例を示す図である。
【図２】本実施の形態に係るＣＭの機能ブロックの一例を示す図である。
【図３】本実施の形態に係る、ＢＲＴ内で複数のＬＩＰが発生した際の時間延長部の動作の一例を示す図である。
【図４】本実施の形態に係る、ＬＩＰ発生状況確認ＢＩＴＭＡＰ、ＬＩＰ延長ＢＩＴＭＡＰ、および複数ＬＩＰが発生した際の各ＢＩＴＭＡＰの扱いを説明するための図である。
【図５】本実施の形態に係る、ＣＭの動作を説明するためのフローチャートである。
【図６】既存のストレージシステムの構成を示す図である。
【図７】ＢＲＴの特徴について説明するための図である。
【図８】ＤＥの構成について説明するための図である。
【図９】既存のストレージシステムの拡張ＤＥで停電が発生した際の問題点を説明するための図である。
【符号の説明】
【００７３】
１  初期化完了判定部、２  初期化時間判定部、３  時間延長部、４  データバックアップ部、１０  ＣＭ、２０  ＢＲＴ、３０  基本ＤＥ、３１  拡張ＤＥ、１００  ストレージシステム。
【図１】
2010140399.tif 000003
【図２】
2010140399.tif 000004
【図３】
2010140399.tif 000005
【図４】
2010140399.tif 000006
【図５】
2010140399.tif 000007
【図６】
2010140399.tif 000008
【図７】
2010140399.tif 000009
【図８】
2010140399.tif 000010
【図９】
2010140399.tif 000011