(57)【要約】【課題】第一のストレージと第二のストレージとを接続し、第一のストレージ内の外部デバイスを第二のストレージのデバイスとしてホストへ提供する場合、外部デバイスに対する処理による負荷が、第二のストレージの性能を低下させる。【解決手段】第二のストレージは、ディスクおよびキャッシュを制御する複数のキャッシュ制御部と、ホストからの要求を適当なキャッシュ制御部に振り分ける複数のプロトコル変換部と、構成管理部と、これらを相互に接続する相互結合網を有する。第一のストレージはいずれかのプロトコル変換部と接続することにより第二のストレージシステムと接続される。第二のストレージは、キャッシュ制御部で外部デバイスに対する処理を実行するか、キャッシュ制御部で外部デバイスに対する処理を実行することなくプロトコル変換部を介して第一のストレージ装置と接続するかを選択する。【選択図】図１
2005011277.tif 000002
【特許請求の範囲】
【請求項１】
計算機と、第一のストレージデバイスを有する第一のストレージシステムとに接続される第二のストレージシステムであって、
前記計算機と接続される第一の制御部と、
前記計算機が使用するデータを格納する第二のストレージデバイスとキャッシュメモリとを有し、前記第二のストレージデバイス及び前記キャッシュメモリへのデータの入出力を制御する第二の制御部と、
前記第一のストレージシステムと接続される第三の制御部と、
前記第一の制御部、前記第二の制御部、及び前記第三の制御部を相互に接続する相互接続網とを有し、
前記第一の制御部は、前記計算機から入出力対象のストレージデバイスを示す第一の識別情報を有する第一の入出力要求を受信し、該第一の識別情報に基づいて第二の入出力要求を前記第二の制御部若しくは前記第三の制御部のいずれに送信するかを選択することを特徴とする第二のストレージシステム。
【請求項２】
請求項１記載の第二のストレージシステムにおいて、
前記第一の識別情報が前記第二のストレージデバイスと対応付けられている場合に、前記第一の制御部は前記第一の入出力要求を、前記第二の制御部の識別情報を有する第二の入出力要求に変換して、該第二の入出力要求を前記第二の制御部に送信することを特徴とする第二のストレージシステム。
【請求項３】
請求項１記載の第二のストレージシステムにおいて、
前記第一の識別情報は前記第一のストレージデバイスと対応付けられており、
前記第一の制御部は前記第二の入出力要求を前記第二の制御部若しくは前記第三の制御部のいずれに送信するかを選択することを特徴とする第二のストレージシステム。
【請求項４】
請求項３記載の第二のストレージシステムにおいて、
前記第一の制御部は、前記第一の入出力要求に関する処理が前記第二の制御部で実行される場合に、前記第二の制御部の識別情報を有する第二の入出力要求を、前記第二の制御部に送信することを特徴とする第二のストレージシステム。
【請求項５】
請求項４記載の第二のストレージシステムにおいて、
前記第二の制御部は、前記第二の入出力要求を受信した場合に、前記第二の入出力要求を前記第一のストレージシステムの識別情報を有する第三の入出力要求に変換し、前記第三の制御部に送信することを特徴とする第二のストレージシステム。
【請求項６】
請求項３記載の第二のストレージシステムにおいて、
前記第一の入出力要求に関する処理が前記第二の制御部で実行されない場合に、前記第一の制御部は、前記第三の制御部の識別情報を有する第二の入出力要求を、前記第三の制御部に送信することを特徴とする第二のストレージシステム。
【請求項７】
請求項３記載の第二のストレージシステムにおいて、
前記第一のストレージデバイスに関する処理を前記第二の制御部が実行する場合に、前記第一の制御部は、前記第二の制御部の識別情報を有する第二の入出力要求を前記第二の制御部に送信することを特徴とする第二のストレージシステム。
【請求項８】
請求項３記載の第二のストレージシステムにおいて、
前記第一のストレージデバイスに関する処理が前記第二の制御部で実行されない場合に、前記第一の制御部は前記第三の制御部の識別情報を有する第二の入出力要求を、前記第三の制御部に送信することを特徴とする。
【請求項９】
請求項３記載の第二のストレージシステムにおいて、
更に前記第一の制御部、前記第二の制御部、及び前記第三の制御部を管理する構成管理部を有し、
前記構成管理部は、前記第一の識別情報と対応付けられているストレージデバイスの識別情報を管理することを特徴とする第二のストレージシステム。
【請求項１０】
請求項９記載の第二のストレージシステムにおいて、
前記構成管理部が前記第一の識別情報と対応付けて前記第一のストレージデバイスの識別情報及び前記第二の制御部の識別情報を管理している場合に、前記第一の制御部は、前記第一の入出力要求を前記第二の制御部の識別情報を有する第二の入出力要求に変換して、前記第二の制御部に送信することを特徴とするストレージシステム。
【請求項１１】
計算機と、第一のストレージデバイスを有する第一のストレージシステムとに接続される第二のストレージシステムであって、
前記計算機と接続される第一の制御部と、
第二のストレージデバイスとキャッシュメモリとを有する第二の制御部と、
前記第一のストレージシステムと接続される第三の制御部と、
前記第一の制御部、前記第二の制御部、及び前記第三の制御部を相互に接続する相互接続網とを有し、
前記第一の制御部が前記計算機から前記第一のストレージデバイスに対する入出力要求を受信した場合に、前記第一の制御部は、入出力要求を前記相互接続網と前記第三の制御部とを経由する第一の経路を介して前記第一のストレージシステムに送信するか、入出力要求を前記相互接続網と前記第二の制御部と前記第三の制御部とを経由する第二の経路を介して前記第一のストレージシステムに送信するかを選択することを特徴とする第二のストレージシステム。
【請求項１２】
請求項１１記載の第二のストレージシステムにおいて、
更に前記第一の制御部、前記第二の制御部、及び前記第三の制御部を管理する、前記相互接続網に接続される構成管理部を有しており、
前記第三の制御部に前記第一のストレージシステムが接続される際に、前記構成管理部は、前記第一のストレージデバイスに対する入出力要求を、前記第一の経路若しくは前記第二の経路のいずれを介して前記第一のストレージシステムに送信するかを設定することを特徴とする第二のストレージシステム。
【請求項１３】
請求項１２記載の第二のストレージシステムにおいて、
前記構成管理部は、前記第一のストレージデバイスに関する処理が前記第二の制御部で実行される場合に、入出力要求を前記第二の経路を介して前記第一のストレージシステムに送信するよう設定することを特徴とする第二のストレージシステム。
【請求項１４】
請求項１２記載の第二のストレージシステムにおいて、
前記構成管理部は、前記第一のストレージデバイスに対する入出力要求を前記第一のストレージシステムに送信するための経路を変更するよう設定することを特徴とする第二のストレージシステム。
【請求項１５】
請求項１２記載の第二のストレージシステムにおいて、
前記構成管理部は、前記第一のストレージデバイスに関する処理が前記第二の制御部で実行されない場合に、入出力要求を前記第一のストレージシステムに送信するために用いられる経路を、前記第二の経路から前記第一の経路へ変更するよう設定することを特徴とする第二のストレージシステム。
【請求項１６】
請求項１５記載の第二のストレージシステムにおいて、
前記構成管理部が、前記第一のストレージデバイスに対する入出力要求を前記第一のストレージシステムに送信するために用いられる経路を、前記第二の経路から前記第一の経路へ変更するよう設定する場合に、
前記第二の制御部は、前記キャッシュメモリに格納されている前記第一のストレージデバイスに格納されるデータを該第一のストレージデバイスに格納して、前記キャッシュメモリ上の記憶領域を開放するよう制御し、
前記キャッシュメモリ上の記憶領域が開放された後に、前記構成管理部は入出力要求を前記第一のストレージシステムに送信するために用いられる経路を変更することを特徴とする第二のストレージシステム。
【請求項１７】
請求項１６記載の第二のストレージシステムにおいて、
前記構成管理部が、前記第一のストレージデバイスに対する入出力要求を前記第一のストレージシステムに送信するために用いられる経路を、前記第二の経路から前記第一の経路へ変更する場合に、
前記第一の制御部は、前記第一のストレージデバイスに格納されるデータが前記キャッシュメモリに格納されている場合には、該データに対する入出力要求を前記第二の制御部へ送信し、それ以外の場合には前記第一のストレージデバイスに対する入出力要求を前記第三の制御部へ送信することを特徴とする第二のストレージシステム。
【請求項１８】
請求項１２記載の第二のストレージシステムにおいて、
前記構成管理部は、前記第一のストレージデバイスに関する処理を前記第二の制御部で実行する必要が生じた場合に、入出力要求を前記第一のストレージシステムに送信するために用いられる経路を、前記第一の経路から前記第二の経路へ変更するよう設定することを特徴とする第二のストレージシステム。
【請求項１９】
計算機に接続されるストレージシステムに他のストレージシステムを接続する方法であって、
前記ストレージシステムは、前記計算機と接続される第一の制御部と、ディスク装置及びキャッシュメモリを有する第二の制御部と、前記他のストレージシステムと接続される第三の制御部と、前記第一の制御部、前記第二の制御部、及び前記第三の制御部を管理する構成管理部と、前記第一の制御部、前記第二の制御部、前記第三の制御部、及び構成管理部を相互に接続する相互接続網とを有し、
前記他のストレージシステムを前記第三の制御部と接続するステップと、
前記第一の制御部が前記計算機から受信する前記他のストレージシステム内のストレージデバイスに格納されているデータに対する入出力要求を、前記相互接続網及び前記第三の制御部を介する第一の経路若しくは、前記相互接続網、前記第二の制御部及び前記第三の制御部を介する第二の経路のうちいずれを経由して前記他のストレージシステムに送信するかを、前記構成管理部が設定するステップとを有することを特徴とするストレージシステムの接続方法。
【請求項２０】
請求項１９記載のストレージシステムの接続方法において、
前記構成管理部は管理装置とネットワークを経由して接続されており、
前記構成管理部が、前記管理装置から接続経路の変更指示を受信するステップと、
前記変更指示に基づいて、前記構成管理部が、前記他のストレージシステム内のストレージデバイスに格納されているデータに対する入出力要求を送信する経路を変更するよう、設定を変更するステップを有することを特徴とするストレージシステムの接続方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機システムにおいて計算機によって使用されるデータを格納するストレージ装置、特にクラスタ構成を採用したストレージ装置に関する。
【０００２】
【従来の技術】
近年，計算機で取り扱われるデータ量は飛躍的に増大し，これに応じてデータを格納するストレージの大容量化が進んでいる。大容量ストレージの管理コストを削減するアプローチの一つとして、大容量データを多数の小型ストレージに分散格納するのではなく、高性能、高信頼、高可用な大型ストレージ一台に大容量データを集約して格納するシステム設計が行われている。管理対象となるストレージの台数を抑えることで、障害保守などストレージの管理コストを低減することが可能となる。
【０００３】
だが、一台のストレージ装置が大容量データを格納し、かつ多数のホストと接続する場合、ストレージ装置の内部に実装する制御プロセッサやディスク装置数が増加する。そしてそれら多数の制御プロセッサやディスク装置間で高速連携を行う必要があるため、内部バスや制御メモリの高速化、制御プロセッサ間での競合回避などが、ハードウェアおよびソフトウェア双方において、技術面およびコスト面での大きな課題となる。
【０００４】
この課題を解決し、大規模かつ低コストな大型ストレージを実現する方法として、特許文献１に開示されている技術のように、ストレージへのクラスタ技術の適用が考えられる。
【０００５】
クラスタ構成ストレージシステムは、比較的小構成のストレージノード複数台をスイッチ等の相互結合機構で相互に結合した構成を有し、係る構成によって大容量のストレージ装置が実現される。その構成方法には様々な形態が考えられるが、クラスタ構成ストレージシステムが受信した入出力要求は、入出力要求の対象デバイスを搭載するストレージノードへ振り分けられ、各ストレージノードで入出力要求が処理されるという点は同じである。一般に、各ストレージノードには通常のストレージ装置と同様、ホストインタフェース、ディスク装置、制御プロセッサ、メモリ、制御メモリ、ディスクキャッシュなどが搭載され、これらの部位がストレージノード内で内部ネットワークにより結合される。各ストレージノードでは、これら内部部位を用いてディスク装置への入出力要求処理を行う。
【０００６】
ここで、各ストレージノードのディスクキャッシュおよび制御メモリは、当該ノード内に存在する制御プロセッサ間でのみ共有されるため、クラスタ構成ストレージシステムでは、内部バスやメモリ帯域の性能要件を緩和することが可能となる。更に、ストレージノードを計算機システムが必要とする記憶容量に合わせて複数結合して、クラスタ構成ストレージシステムを構成することで、小容量から大容量まで様々な容量を持つストレージ装置をスケーラブルに実現できる。尚クラスタ構成ストレージシステムでは、データ複製や内部でのデータ再配置など、ディスク装置間でのデータ連携のために、各ストレージノード間で相互結合機構を介して、制御情報やディスク装置格納データがやりとりされる。
【０００７】
一方、計算機システムに新しいストレージ装置を導入する際、機器導入コストを低減するためには、顧客が既に当該計算機システムに導入済みの既存ストレージを活用することが有効である。既存ストレージデバイスの全データを新規ストレージに移行してしまうには、新規導入ストレージに既存ストレージデバイス分の容量を具備しなければならず、ストレージ導入コストを押し上げてしまうからである。
【０００８】
ここで複数のストレージ装置を接続する方法として、特許文献２に開示されているように、第一ストレージ装置を第ニストレージ装置へ接続し、第一ストレージ装置がホスト等上位に提供するデバイス（以下、論理デバイスと呼ぶ）を第二ストレージ装置を介して第二ストレージ装置の論理デバイスとしてホストへ提供する方法が考えられる。第二ストレージ装置はホストからの論理デバイスへの入出力要求を受信した際に、アクセス対象のデバイスが第一ストレージ装置の論理デバイス若しくは第二ストレージ装置内部の物理デバイスのいずれに対応しているのかを判定し、判定結果に従って適当なアクセス先に入出力要求を振り分ける。
【０００９】
【特許文献１】
米国特許６，２５６，７４０号明細書
【特許文献２】
特開平１０−２８３２７２号明細書
【００１０】
【発明が解決しようとする課題】
特許文献２に開示されている方法では、第一ストレージ装置の論理デバイス（以降、外部デバイスとも呼ぶ。）に対応する第二ストレージ装置の論理デバイスに対する入出力要求を第二ストレージ装置がホスト計算機から受信した場合に、第二ストレージ装置の制御プロセッサがアクセス対象が外部デバイスであることを判定した後、アドレス情報などを書き換え、第一ストレージ装置へ入出力要求が送信される。従って、第二ストレージ装置内に搭載したディスク装置で構成されるデバイス（以降、内部デバイスとも呼ぶ。）に対する入出力処理性能に影響を及ぼす可能性が高い。
【００１１】
例えば、外部デバイスに対応する第二ストレージ装置の論理デバイスに対する入出力処理が第二ストレージ装置内の制御プロセッサによって実行されることによって、第二ストレージ装置の制御プロセッサの演算能力が消費される。
【００１２】
本発明の目的は、第一ストレージ装置と第二ストレージ装置とを接続し、ホストから第一ストレージ装置に対する入出力要求を第二ストレージ装置を介して第一ストレージ装置に送信するシステムにおいて、第二ストレージの負荷を軽減することができる技術を提供することにある。
【００１３】
また、本発明の別の目的は、第一ストレージ装置と第二ストレージ装置とを接続し、ホストから第一ストレージ装置に対する入出力要求を第二ストレージ装置を介して第一ストレージ装置に送信するシステムにおいて、第一のストレージ装置と第二のストレージ装置との間の接続形態を切り替える技術を提供することである。
【００１４】
【課題を解決するための手段】
ストレージシステムは、前記計算機と接続される第一の制御部と、ストレージデバイスとキャッシュメモリとを有する第二の制御部と、他のストレージシステムと接続される第三の制御部と、第一の制御部、第二の制御部、及び第三の制御部を相互に接続する相互接続網とを有する。
【００１５】
第一の制御部が計算機から他のストレージシステム内のストレージデバイスに対する入出力要求を受信した場合に、第一の制御部は、入出力要求を相互接続網と第三の制御部とを経由する第一の経路を介して他のストレージシステムに送信するか、相互接続網と第二の制御部と第三の制御部とを経由する第二の経路を介して他のストレージシステムに送信するかを選択する。
【００１６】
【発明の実施の形態】
本発明の実施形態の例として、第１の実施形態と第２の実施形態を説明する。
【００１７】
第１の実施形態は、第１ストレージ装置内に存在する外部デバイスを、クラスタ構成ストレージシステムである第２ストレージ装置の論理デバイスとして定義する際に、第２ストレージ装置における外部デバイスの接続形態を決定し、決定された接続形態に基づいて、ホスト計算機からの外部デバイスへの入出力要求を適当な送信先へ振り分ける例を示す。
【００１８】
第２の実施形態は、第２ストレージ装置へ導入した外部デバイスの接続形態を別の接続形態に変更する処理と、外部デバイスへのホスト入出力要求を接続形態切替処理の進捗に応じて適当な送信先へ振り分ける例を示す。
【００１９】
尚、第一の実施形態、第二の実施形態では共に、クラスタ構成ストレージ装置である第二ストレージ装置は、外部ストレージ装置である第一ストレージ装置と接続し、第一ストレージ装置内に存在する外部デバイスを、第二ストレージ装置のデバイスとしてホストに提供する機能を有する。係る機能を以降外部ストレージ接続機能と呼ぶ。
【００２０】
通常、ディスク装置を用いたストレージ装置、特にＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ）などのディスクアレイを制御するストレージ装置では、実際にストレージ装置に搭載されている物理デバイスであるディスク装置に、ホストへ提供する（即ち、ホストがディスクデバイスとして認識する）論理的なディスク装置（以下、論理デバイスとも呼ぶ。）を対応付けている。第二ストレージ装置の外部ストレージ接続機能を用いると、第二ストレージ装置は、第一ストレージ装置の論理デバイスを外部デバイスとして認識し、第二ストレージ装置の論理デバイスへ対応づける。そして、第二ストレージ装置は、ホスト計算機からアクセス要求を受信すると、アクセス要求に含まれる情報によって特定されるアクセス対象の論理デバイスが第二ストレージ装置内に存在する物理デバイスに対応付けられているのか、第一ストレージ装置内に存在する外部デバイスに対応付けられているのかを判定し、判定結果に基づいて適当なアクセス先にアクセス要求を振り分ける。
【００２１】
このとき、ホスト計算機からの入出力要求の対象となっている論理デバイスと対応付けられているのが、第二ストレージ装置内に存在する内部デバイスか第一ストレージ装置内に存在する外部デバイスかによらず、この入出力要求を第二ストレージ装置の制御プロセッサにより処理することが可能である。外部デバイスに対するホスト計算機からのアクセス要求を第二ストレージ装置の制御プロセッサにより処理すれば、第二ストレージ装置が有するデータ複製などの機能を外部デバイスに対しても提供することができる。これにより、計算機システムに第二ストレージ装置を導入する際のコストを抑制し、既存の第一ストレージ装置を有効利用しつつ、第一ストレージ装置内のデバイスに格納されているデータへ新しい第二ストレージ装置の高性能性や各種機能を適用することができるというメリットがある。
【００２２】
しかし、外部デバイスに対するアクセス要求を第二ストレージ装置の制御プロセッサにより処理すれば、第二ストレージ装置内に存在する内部デバイスの入出力処理性能に影響を及ぼす可能性が高い。例えば、上述の様に、外部デバイスに関連する処理が第二ストレージ装置内の制御プロセッサで実行されることで、制御プロセッサの演算能力が消費される。また、第二ストレージ装置内のディスクキャッシュが外部デバイス内に格納されているデータの格納に用いられることで、内部デバイス内に格納されているデータがディスクキャッシュから追い出される可能性が高くなり、キャッシュヒット率低下による入出力性能の低下を引き起こすことになる。
【００２３】
第一ストレージ装置内に存在する外部デバイスに対して、第二ストレージ装置が有するデータ複製等の機能を適用する場合には、第二ストレージ装置内の制御プロセッサやキャッシュメモリ等の資源が第一ストレージ装置のために消費されるのはやむを得ない。しかし、第一ストレージ装置内には、運用管理の統合という意味では第二ストレージの論理デバイスとして、第二ストレージ装置内の内部デバイスと統合して管理したいが、第二ストレージ装置が有する機能を適用する必要のないものも存在する。係る外部デバイスへのアクセス処理にまで、第二ストレージ装置が有する機能が適用される外部デバイスに対する処理と同様に、第二ストレージ装置の資源を消費するのはシステム性能上好ましくない。また、特定の外部デバイスに対して第二ストレージ装置の機能が常に適用されるとは限らない。例えば、第二ストレージ装置が有するデータ複製機能を用いて、外部ストレージ装置である第一ストレージ装置内にデータをバックアップする場合、バックアップ処理実行中は第二ストレージ装置が有する機能が第一ストレージ装置に適用されるため、第二ストレージ装置の資源が消費されるが、バックアップ処理が終了した後はバックアップデータが格納されている外部デバイスにアクセスする際、なるべく第二ストレージ装置の資源を消費しないようにしたい。
【００２４】
そこで、第一ストレージ装置を第二ストレージ装置に接続させる際に接続形態を選択し、接続形態に応じて外部デバイス宛の入出力要求を第二ストレージ装置で処理する技術を第一の実施形態として、一度選択された接続形態を変更するための技術を第二の実施形態として、以下に説明する。
【００２５】
まず第１図から第１４図、第１７図を参照して、第１の実施形態を説明する。
【００２６】
第１図は本発明の第１の実施形態が適用される計算機システムのハードウェア構成の一例を示す図である。
【００２７】
計算機システムは、１台以上のホスト計算機（以下、ホストとも呼ぶ。）１００と、管理サーバ１１０と、ファイバチャネルスイッチ１２０と、第二ストレージ装置に相当するストレージ装置１３０と、各々が第一ストレージ装置に相当する１台以上の外部ストレージ装置１８０ａ、１８０ｂ（１８０と総称）と、管理端末１９０を有する。ホスト１００は一以上のポート１０７を、ストレージ装置１３０は一以上のポート１４１を有し、ホスト１００及びストレージ装置１３０は各々ポートを介してファイバチャネルスイッチ１２０のポート１２１に接続する。ホスト１００及びストレージ装置１３０がファイバチャネルスイッチ１２０を介して接続されることによって構成されるネットワークを、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｋｒ）と呼ぶ。さらに、外部ストレージ１８０ａと１８０ｂは、各々が有するポート１８１を介してストレージ装置１３０に接続され、外部ストレージ装置１８０ａ及び１８０ｂ内に存在するディスク装置から構成される外部デバイスは、ストレージ装置１３０によりストレージ１３０の論理デバイスとしてホスト１００へ提供される。また、ホスト１００、ファイバチャネルスイッチ１２０、ストレージ装置１３０、及び外部ストレージ装置１８０は、ＩＰネットワーク１７５を介して管理サーバ１１０に接続され、管理サーバ１１０で動作する図示しないＳＡＮ管理ソフトウェアによって統合管理される。なお、本実施形態では、ストレージ１３０は管理端末１９０を介して管理サーバ１１０に接続する形態をとるものとするが、ストレージ装置１３０が直接ＩＰネットワークに接続される構成であっても良い。
【００２８】
ホスト１００は、ＣＰＵ１０１やメモリ１０２などを有する計算機であり、ディスク装置や光磁気ディスク装置などの記憶装置１０３に格納されたオペレーティングシステムやアプリケーションプログラムなどのソフトウェアをメモリ１０２に読み上げ、ＣＰＵ１０１がメモリ１０２から読み出して実行することで、所定の機能を達成する。キーボードやマウスなどの入力装置１０４やディスプレイ１０５等の出力装置を具備し、入出力装置１０４がホスト管理者などからの入力を受け付け、出力装置がＣＰＵから指示された情報を出力する。又、ホストはＳＡＮと接続するための一以上のポート１０７と、ＩＰネットワーク１７５と接続するための一以上のインタフェース制御部１０６を有する。
【００２９】
管理サーバ１１０も、ＣＰＵ１１１やメモリ１１２を有する計算機であり、ディスク装置や光磁気ディスク装置等の記憶装置１１３に格納されたＳＡＮ管理ソフトウェアなどをメモリ１１２に読み上げ、ＣＰＵ１１１がそれを読んで実行することで、計算機システム全体の運用・保守管理といった、所定の機能を達成する。ＣＰＵ１１１によってＳＡＮ管理ソフトウエアが実行されると、管理サーバ１１０はインタフェース制御部１１６からＩＰネットワーク１７５を介して、計算機システム内の各機器から構成情報、リソース利用率、性能監視情報などを収集する。そして、管理サーバ１１０は収集したそれらの情報をディスプレイ１１５等の出力装置に出力してストレージ管理者に提示する。また、管理サーバは、キーボードやマウス等の入力装置１１４を介してストレージ管理者からの指示を受信し、受信した運用・保守指示をインタフェース制御部１１６を介して各機器に送信する。
【００３０】
ファイバチャネルスイッチ１２０は、複数のポート１２１を有する。各ポート１２１には、ホスト１００のポート１０７、又は、ストレージ１３０のポート１４１のいずれかが接続される。ファイバチャネルスイッチ１２０は、インタフェース制御部１２３を有しており、インタフェース制御部１２３を介してＩＰネットワーク１７５にも接続されている。ファイバチャネルスイッチ１２０は、ファイバチャネルスイッチ１２０に接続される１台以上のホスト１００が、ストレージ１３０にアクセスできるようにするために使用される。物理的にはファイバチャネルスイッチ１２０に接続される全てのホスト１００から、ファイバチャネルスイッチ１２０に接続されたストレージ１３０にアクセスすることが可能である。また、ファイバチャネルスイッチ１２０は、特定ポートから特定ポートへの通信を制限するゾーニングと呼ばれる機能を有する。ゾーニング機能を用いれば、例えば、特定ストレージ１３０の特定ポート１４１へのアクセスを特定ホスト１００に制限するよう、ファイバチャネルスイッチ内でのアクセス要求の転送を制御することができる。このように接続元ポートと接続先ポートの組み合わせを制御する方法については、ファイバチャネルスイッチ１２０のポート１２１に割り当てられたポートＩＤを用いる方法、各ホスト１００のポート１０７やストレージ１３０のポート１４１が保持するＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）を用いる方法などがある。
【００３１】
ストレージ１３０はクラスタ構成を有し、具体的には、複数のプロトコル変換部１４０と複数のキャッシュ制御部１５０と構成管理部１６０を、相互結合網１７０で接続した構成を有する。
【００３２】
プロトコル変換部１４０は、複数のポート１４１と、１つ以上の制御プロセッサ１４２と、メモリ１４３と、相互結合網１７０に接続される転送制御部１４４とを搭載し、ポート１４１から受信した入出力要求についてアクセス対象デバイスを特定し、転送制御部１４４より相互結合網１７０を介して適当なキャッシュ変換部１５０やプロトコル変換部１４０へ入出力要求やデータを転送する処理を行う。その際、制御プロセッサ１４２は入出力要求に含まれるポートＩＤおよびＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）からストレージ１３０がホスト１００へ提供する上位論理デバイス番号を算出し、さらに当該上位論理デバイスが対応するキャッシュ制御部１５０と下位論理デバイス番号、もしくは対応するプロトコル変換部１４０と外部デバイス番号を特定する。そして特定されたキャッシュ制御部１５０若しくはプロトコル変換部１４０へ、特定された下位論理デバイス番号若しくは外部デバイス番号を算出するのに必要な情報を有する入出力要求を送信する。また、プロトコル変換部１４０は、ポート１４１を介して外部ストレージ装置１８０など別のストレージ装置を接続することが可能であり、別のプロトコル変換部１４０から受信する入出力要求や、キャッシュ制御部１５０から受信する入出力要求を外部ストレージへ送信することによって、外部ストレージ装置にデータをライトしたり、外部ストレージ装置からデータをリードすることができる。
【００３３】
なお本実施形態では、ポート１４１としてＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）を上位プロトコルとしたファイバチャネルインタフェースに対応したポートを想定しているが、ＳＣＳＩを上位プロトコルとしたＩＰネットワークインタフェースなど、他のストレージ接続用ネットワークインタフェースに対応したポートであっても構わない。
【００３４】
キャッシュ制御部１５０は、１つ以上のポート１５６、各々ポートに接続される１台以上のディスク装置１５７、１つ以上の制御プロセッサ１５２と各々のプロセッサに対応するメモリ１５３、１つ以上のディスクキャッシュ１５４、１つ以上の制御メモリ１５５、及び相互結合網１７０に接続される転送制御部１５１を有する。
【００３５】
制御プロセッサ１５２は、相互結合網１７０を介して転送制御部１５１により受信した、同じキャッシュ制御部１５０内に存在するディスク装置１５７への入出力要求を処理する。また制御プロセッサ１５２は、ストレージ１３０がホスト１００に対してディスク装置１５７を単体のディスク装置としてではなく、ディスクアレイのように複数のディスク装置１５７を１つ又は複数の論理デバイスに見せかけている場合に、論理デバイスと物理デバイス又はディスク装置１５７との間の対応関係の管理や、論理デバイスに対するアクセス要求を物理デバイス若しくはディスク装置１５７へのアクセス要求に変換する処理などを行う。更に制御プロセッサ１５２はデータ複製やデータ再配置など、データ連携機能を実現する各種処理を実行する。
【００３６】
ディスクキャッシュ１５４は、ホスト１００からのアクセス要求に対する処理速度を高めるため、ディスク装置１５７から頻繁に読み出されるデータを予め格納しておいたり、ホスト１００から受信したライトデータを一時的に格納したりする。尚、ディスクキャッシュ１５４を用いたライトアフタを行う場合、即ちホスト１００から受信したライトデータがディスクキャッシュ１５４に格納された後、ディスク装置１５７に実際に書き込まれる前にホスト１００に対しライト要求に対する応答を返す場合には、ディスクキャッシュに格納されているライトデータがディスク装置１５７に書き込まれる前に消失することを防止するために、ディスクキャッシュ１５４をバッテリバックアップなどにより不揮発メモリとしたり、媒体障害への耐性向上のため二重化するなど、ディスクキャッシュ１５４の可用性を向上させておくことが望ましい。
【００３７】
制御メモリ１５５は、ディスク装置１５７、若しくは複数のディスク装置１５７を組み合わせて構成される物理デバイス、若しくはストレージ装置１３０にプロトコル変換部１４０を介して接続される外部ストレージ装置１８０内のデバイス（外部デバイス）の管理や、外部デバイス若しくは物理デバイスと下位論理デバイスの対応関係の管理を行うための情報を格納する。なお、制御メモリ１５５に格納されている制御情報が消失すると、ディスク装置１５７に格納されているデータへアクセスできなくなるため、制御メモリはバッテリバックアップなどにより不揮発メモリとしたり、媒体障害への耐性向上のため二重化するなど、高可用化のための構成を有することが望ましい。
【００３８】
尚、本実施形態におけるストレージ１３０は、複数のディスク装置１５７をまとめて１つまたは複数の物理デバイスを定義し（即ち複数のディスク装置１５７をまとめて１つ又は複数の物理デバイスと対応付け）、１つの物理デバイスに１つの下位論理デバイス及び上位論理デバイスを割り当てて、ホスト１００に提供する。しかしもちろん、個々のディスク装置１５７を１つの物理デバイスおよび１つの下位論理デバイス及び上位論理デバイスとしてホスト１００に見せるようにしてもよい。また、複数の物理デバイスを１つ又は複数の下位論理デバイスに対応付けたり、複数の下位論理デバイスに１つ又は複数の上位論理デバイスを対応付けても良い。
【００３９】
構成管理部１６０は、一又は複数の制御プロセッサ１６２、各々の制御プロセッサに対応する一又は複数のメモリ１６３、一又は複数の制御メモリ１６４、記憶装置１６５、相互結合網１７０と接続される転送制御部１６１、及びインタフェース制御部１６６を有する。固定ディスク装置などの記憶装置１６５に格納した制御プログラムをメモリ１６３に読み上げ、これを制御プロセッサ１６２が実行することで、ストレージ１３０の構成管理や障害管理のための所定の処理が実行される。制御プロセッサ１６２は、インタフェース制御部１６６を介して接続される管理端末１９０にストレージ管理者へ提示する構成情報を送信したり、管理者から管理端末１９０に入力された保守・運用指示を管理端末１９０から受信して、受領した指示に従い、ストレージ１３０の構成変更などを行う。ストレージ装置１３０の構成情報は制御メモリ１６４に格納される。制御メモリ１６４上の構成情報はプロトコル変換部１４０の制御プロセッサ１４２やキャッシュ制御部１５０の制御プロセッサ１５２から参照したり更新したりすることができるので、ストレージ装置１３０内の各プロトコル変換部及び各キャッシュ制御部間で、構成情報の共有を実現することができる。なお、構成管理部１６０が障害などにより動作不可に陥った場合、ストレージ１３０全体がアクセス不可に陥るため、構成管理部１６０内の各構成要素を二重化しておくか、もしくは構成管理部１６０自体をストレージ装置１３０内に複数搭載して構成管理部１６０自体の二重化をしておくことが望ましい。また、管理端末１９０から１つ以上のキャッシュ制御部１５０へのＩ／Ｆを別途設け、構成管理部が行う制御をキャッシュ制御部１５０と管理端末１９０で分担することで、構成管理部１６０を制御メモリ１６４のみの構成にすることも可能である。さらに、制御メモリ１６４内の情報を１つ以上のキャッシュ制御部１５０の制御メモリ１５５で保持することで、構成管理部１６０を省略することも可能である。
【００４０】
相互結合網１７０は、プロトコル変換部１４０、キャッシュ制御部１５０、構成管理部１６０を接続し、これらの各部位間でのデータ、制御情報、及び構成情報の送受信を実行する。この相互結合網１７０により、構成管理部１６０が、ストレージ装置１３０内に存在するプロトコル変換部１４０及びキャッシュ制御部１５０にストレージ装置１３０の構成情報を配布したり、プロトコル変換部１４０やキャッシュ制御部１５０から構成情報を取得してストレージ装置１３０の構成を管理したりすることができる。また、相互結合網１７０がプロトコル変換部１４０とキャッシュ制御部１５０との間でアクセス要求を転送するので、ホスト１００はプロトコル変換部１４０の任意のポート１４１からキャッシュ制御部１５０に属する任意の下位論理デバイスへアクセスすることが可能となる。なお、可用性向上の観点から相互結合網も多重化されていることが望ましい。
【００４１】
管理端末１９０は、ＣＰＵ１９２、メモリ１９３、記憶装置１９４、構成管理部１６０と接続されるインタフェース制御部１９１、ＩＰネットワーク１７５と接続されるインタフェース制御部１９７、ストレージ管理者からの入力を受け付ける入力装置１９５及びストレージ管理者にストレージ１３０の構成情報や管理情報を出力するディスプレイ１９６等の出力装置を有する。ＣＰＵ１９２は記憶装置１９４に格納されているストレージ管理プログラムをメモリ１９３に読み出して、これを実行することにより、構成情報の参照、構成変更の指示、特定機能の動作指示などを行い、ストレージ１３０の保守運用に関して、ストレージ管理者もしくは管理サーバ１１０とストレージ装置１３０間のインタフェースとなる。
【００４２】
なお、管理端末１９０を省略して、ストレージ１３０を直接管理サーバ１１０へ接続し、ストレージ装置１３０を管理サーバ１１０で動作する管理ソフトウェアを用いて管理してもよい。
【００４３】
外部ストレージ装置１８０は、ストレージ装置１３０のプロトコル変換部１４０のポート１４１と接続される一又は複数のポート１８１、制御プロセッサ１８２、メモリ１８３、ディスクキャッシュ１８４、一又は複数のディスク装置１８６及び各々ディスク装置に接続される一又は複数のポート１８５を有する。制御プロセッサ１８２はメモリ１８３に格納されているプログラムを実行することにより、ポート１８１から受信したディスク装置１８６への入出力要求を処理する。本実施形態では外部ストレージ装置１８０を、クラスタ構成を有さず、ストレージ装置１３０より小規模な構成のストレージ装置としたが、ストレージ１３０と同じ構成を有する同規模のストレージ装置であってもかまわない。
【００４４】
また、本実施形態では図１に示すようにストレージ装置１３０のポート１４１と外部ストレージ装置１８０のポート１８１を直接接続したが、図１７に示すように、ポート１４１とポート１８１を、ホスト１００とストレージ１３０を接続するファイバチャネルスイッチ１２０もしくは別のファイバチャネルスイッチを介して接続してもかまわない。ただし、この場合、ホスト１００から外部ストレージ１８０への直接アクセスを抑止するよう、ファイバチャネルスイッチ１２０のゾーニングを設定することが望ましい。また、外部ストレージ１８０は、図１７の外部ストレージ１８０ａのようにディスクキャッシュ１８４を有するディスクアレイ装置であっても構わないし、外部ストレージ１８０ｂのようにディスクキャッシュや制御プロセッサを有さないＪＢＯＤ（Ｊｕｓｔ  Ｂｏｕｎｃｈ  ＯｆＤｉｓｋ）のような単体ディスク装置グループであっても構わない。
【００４５】
次に、本発明の実施形態におけるストレージ１３０のソフトウェア構成について説明する。図２はストレージ１３０および管理端末１９０の制御メモリおよびメモリに格納される、制御情報とストレージ制御処理のためのプログラムの一例を示したソフトウェア構成図である。
【００４６】
なお、以降の説明では、表現の簡略化のため、プロトコル変換部１４０をＰＡ（Ｐｒｏｔｏｃｏｌ  Ａｄａｐｔｏｒ）、キャッシュ制御部１５０をＣＡ（Ｃａｃｈｅ  Ａｄａｐｔｏｒ）、構成管理部１６０をＭＡ（Ｍａｎａｇｅｍｅｎｔ  Ａｄａｐｔｏｒ）、管理端末１９０をＳＴ（Ｓｅｒｖｉｃｅ  Ｔｅｒｍｉｎａｌ）と表記する。
【００４７】
また、本発明の実施形態では、ストレージ装置１３０内のデバイス階層を次の通りとする。ＣＡ１５０内でディスク装置１５７複数台によるディスクアレイが構成され、このディスクアレイはＣＡ１５０によって物理デバイスとして管理される。また、ＰＡ１４０に接続した外部ストレージ１８０の論理デバイスである外部デバイスは、ＰＡ１４０で認識された後、ＭＡ１６０にて管理される。更にＣＡ１５０では、当該ＣＡ内に存在する物理デバイス又は当該ＣＡを介してアクセスされる外部デバイスに対して下位論理デバイスが割り当てられる（即ち、ＣＡ１５０は物理デバイス又は外部デバイスと、下位論理デバイスとを対応づける）。下位論理デバイスは各ＣＡ内において管理される論理デバイスであり、その番号は各ＣＡ１５０毎に独立管理される。下位論理デバイスは、ＭＡ１６０によって上位論理デバイスと対応付けられ、ストレージ１３０のデバイスとしてホスト１００に提供される。即ち、ホストが認識するのはストレージ１３０の上位論理デバイスであり、ホスト１００は上位論理デバイスを識別するための情報を用いて、ストレージ装置１３０若しくは外部ストレージ装置１８０に格納されているデータにアクセスする。
【００４８】
ストレージ１３０の構成管理情報としては、ＣＡ１５０の制御メモリ１５５に下位論理デバイス管理情報２０１と物理デバイス管理情報２０２とキャッシュ管理情報２０３を、ＭＡ１６０の制御メモリ１６４に上位論理デバイス管理情報２０４と外部デバイス管理情報２０５とＬＵパス管理情報２０６が格納されている。
【００４９】
図３に上位論理デバイス管理情報２０３の一例を示す。上位論理デバイス管理情報は、各上位論理デバイスにつき、上位論理デバイス番号３１から対応外部デバイス番号３８までの情報組を保持する。尚、図３中の切替進捗ポインタ３９は第二の実施形態において使用される情報であり、第一の実施形態においては上位論理デバイス情報２０３として切替進捗ポインタ３９を有しなくても良い。
【００５０】
上位論理デバイス番号３１には、上位論理デバイスを識別するために上位論理デバイスにＭＡが割り当てた番号が格納されている。サイズ３２には、上位論理デバイス番号３１により特定される上位論理デバイスの容量が格納されている。対応ＣＡ番号、下位論理デバイス番号３３には、当該上位論理デバイスに対応付けられている下位論理デバイスの番号と、当該下位論理デバイスが属するＣＡの番号が格納される。上位論理デバイスが未定義の場合、対応ＣＡ番号、下位論理デバイス番号３３エントリには無効値が設定される。尚、この下位論理デバイス番号が、当該下位論理デバイスを管理するＣＡが保持する下位論理デバイス管理情報２０１のエントリ番号となる。デバイス状態３４には、当該上位論理デバイスの状態を示す情報が設定される。状態としては、「オンライン」、「オフライン」、「未実装」、「障害オフライン」が存在する。「オンライン」は、当該上位論理デバイスが正常に稼動し、ホスト１００からアクセスできる状態であることを示す。「オフライン」は、当該上位論理デバイスは定義され、正常に稼動しているが、ＬＵパスが未定義であるなどの理由で、ホストからはアクセスできない状態にあることを示す。「未実装」は、当該上位論理デバイスが定義されておらずホストからアクセスできない状態にあることを示す。「障害オフライン」は、当該上位論理デバイスに障害が発生してホストからアクセスできないことを示す。なお、本実施形態では簡単のため、製品の工場出荷時にあらかじめ、ディスク装置１５７上に作成された物理デバイスへ下位論理デバイスが割り当てられ、更に下位論理デバイスに上位論理デバイスが割り当てられているものとする。このため、下位論理デバイスに割当済みの上位論理デバイスについてのデバイス状態３４の初期値は「オフライン」、その他の上位論理デバイスについては上位論理デバイスが定義されていないことになるので、デバイス状態３４の初期値は、「未実装」となる。
【００５１】
エントリ３５のポート番号には、当該上位論理デバイスが複数のポート１４１のうちどのポートに接続されているかを表す情報、即ち当該上位論理デバイスにアクセスするために用いられるポートの識別情報が設定される。ここでポートの識別情報とは、各ポート１４１に割り振られているストレージ１３０内で一意な番号であり、エントリ３５には、当該上位論理デバイスがＬＵＮ定義されているポート１４１の番号が記録される。また、同エントリ３５に格納されるターゲットＩＤとＬＵＮは、当該上位論理デバイスを識別するための識別子である。本実施形態においては、上位論理デバイスを識別するための識別子として、ＳＣＳＩ上でホスト１００からデバイスをアクセスする場合に用いられるＳＣＳＩ−ＩＤ、とＬＵＮが用いられる。
【００５２】
接続ホスト名３６は、当該上位論理デバイスへのアクセスが許可されているホスト１００を識別するホスト名である。ホスト名としては、ホスト１００のポート１０７に付与されたＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）など、ホスト１００もしくはポート１０７を一意に識別可能な値であれば何を用いてもよい。同ストレージ１３０には、このほかに、各ポート１４１のＷＷＮなどの属性に関する管理情報を保持する。
【００５３】
デバイスアクセスモード３７には、当該上位論理デバイスへの入出力要求の処理形態を示す「ＣＡ経由」「ＰＡ直結」という値が格納される。当該上位論理デバイスが外部デバイスに対応付けられていない場合や、当該上位論理デバイスが外部デバイスに対応付けられていても当該上位論理デバイスに対する入出力要求に対してＣＡ１５０での入出力処理が必要な場合には「ＣＡ経由」が設定される。
「ＰＡ直結」は当該上位論理デバイスが外部デバイスに対応付けられており、かつ、ＣＡ１５０を経由せずに直接ＰＡ１４０間で入出力要求を転送できる場合を示す。
【００５４】
対応外部デバイス番号３８には、当該上位論理デバイスが外部デバイスに対応付けられている場合にはその外部デバイスの識別番号を、そうでない場合は無効値が設定される。
【００５５】
図４にＬＵパス管理情報２０６の一例を示す。ＬＵパス管理情報２０６は、ストレージ１３０内のプロトコル変換部１４０が有する各ポート１４１について、各ポートに定義されている有効なＬＵＮ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）分の情報を保持する。ターゲットＩＤ／ＬＵＮ４１エントリには、ポート１４１に定義された（割り当てられた）ＬＵＮのアドレスが格納される。対応上位論理デバイス番号４２には、当該ＬＵＮが割り当てられている上位論理デバイスの番号が格納される。接続ホスト名４３は、当該ポート１４１に定義されている当該ＬＵＮに対してアクセスを許可されているホスト１００を示す情報が格納され、ホスト１００を示す情報としては例えば上述のホスト１００のポート１０７に付与されているＷＷＮが用いられる。
【００５６】
尚、一つの上位論理デバイスに対して複数のポート１４１のＬＵＮが定義され（割り当てられ）ており、複数のポート１４１から当該上位論理デバイスにアクセスできる場合がある。この場合、当該複数のポート１４１のＬＵＮ各々に関するＬＵパス管理情報２０６の接続ホスト名４３の和集合が、当該上位論理デバイスに関する上位論理デバイス管理情報２０３の接続ホスト名３６に保持される。
【００５７】
図５に下位論理デバイス管理情報２０１の一例を示す。各ＣＡ１５０は、自ＣＡ内に属する各下位論理デバイス毎に、下位論理デバイス番号５１から対応上位論理デバイス番号５５までの情報組を下位論理デバイス管理情報として保持する。尚、図５に示す切替進捗ポインタ５６は第二の実施形態において用いられる情報であり、第一の実施形態においては、各ＣＡは必ずしも切替進捗ポインタ５６を下位論理デバイス情報の一部として保持する必要はない。
【００５８】
下位論理デバイス番号５１には、下位論理デバイスを識別するための識別番号が登録される。サイズ５２には、当該下位論理デバイス番号５１により特定される下位論理デバイスの容量が格納されている。
【００５９】
対応物理／外部デバイス番号５３には、当該下位論理デバイスが対応付けられている、当該下位論理デバイスを管理しているＣＡ１５０内の物理デバイスの識別番号もしくは外部ストレージ装置１８０内に存在する外部デバイスの識別番号が格納される。当該下位論理デバイスに対して物理デバイス若しくは外部デバイスが割り当てられていない場合、エントリ５３には無効値が設定される。尚、エントリ５３に登録されるデバイス番号は、当該下位論理デバイスを管理しているＣＡが保持する物理デバイス管理情報２０２、もしくはＭＡが保持する外部デバイス管理情報２０５のエントリ番号となる。
【００６０】
デバイス状態５４には、当該下位論理デバイスの状態を示す情報が設定されるが、その値は上位論理デバイス管理情報２０３のデバイス状態３４と同じであるため、説明は省略する。対応上位論理デバイス番号５５には、当該下位論理デバイスが対応付けられている上位論理デバイス番号が設定される。
【００６１】
図６にＣＡ１５０内のディスク装置１５７から構成される物理デバイスを管理するための物理デバイス管理情報２０２の一例を示す。各ＣＡ１５０は、自ＣＡ内に存在する物理デバイス毎に、物理デバイス番号６１からディスク内サイズ６９の情報組を保持する。
【００６２】
物理デバイス番号６１には、物理デバイスを識別するための識別番号が登録される。サイズ６２には、物理デバイス番号６１により特定される物理デバイスの容量が格納されている。対応下位論理デバイス番号６３には、当該物理デバイスが対応付けられている当該物理デバイスが属するＣＡ１５０によって管理されている下位論理デバイス番号が格納される。当該物理デバイスが下位論理デバイスへ割り当てられていない場合、エントリ６３には無効値が設定される。
【００６３】
デバイス状態６４には、当該物理デバイスの状態を示す情報が設定される。状態としては、「オンライン」、「オフライン」、「未実装」、「障害オフライン」が存在する。「オンライン」は、当該物理デバイスが正常に稼動し、下位論理デバイスに割り当てられている状態であることを示す。「オフライン」は、当該物理デバイスは定義され、正常に稼動しているが、下位論理デバイスに未割り当てであることを示す。「未実装」は、当該物理デバイスがディスク装置１５７上に定義されていない状態にあることを示す。「障害オフライン」は、当該物理デバイスに障害が発生して下位論理デバイスに割り当てられないことを示す。なお、本実施形態では、簡単のため、物理デバイスは製品の工場出荷時にあらかじめディスク装置１５７上に作成され、かつ下位論理デバイスにも割り当てられているものとする。このため、利用可能な物理デバイスについてはデバイス状態６４の初期値は「オンライン」状態、その他は「未実装」状態となる。
【００６４】
ＲＡＩＤ構成６５には、当該物理デバイスが割り当てられたディスク装置１５７のＲＡＩＤレベル、データディスクとパリティディスク数などＲＡＩＤ構成に関連する情報が保持される。同じように、ストライプサイズ６６には、ＲＡＩＤにおけるデータ分割単位（ストライプ）長が保持される。ディスク番号リスト６７には、当該物理デバイスが割り当てられたＲＡＩＤを構成する複数のディスク装置１５７各々の識別番号が保持される。このディスク１５７の識別番号は、ＣＡ１５０内でディスク装置１５７を識別するために付与した一意な値である。ディスク内開始オフセット６８とディスク内サイズ６９には、当該物理デバイスが各ディスク装置１５７内のどの領域に割り当てられているかを示す情報である。本実施例では簡単のため、全物理デバイスについて、ＲＡＩＤを構成する各ディスク装置１５７内のオフセットとサイズを統一させている。
【００６５】
図７に、ストレージ１３０の上位論理デバイス、若しくは上位論理デバイスと下位論理デバイスの双方とに対応づけられる、ストレージ１３０に接続された外部ストレージ１８０内のデバイスを管理するための、外部デバイス管理情報２０５の一例を示す。ストレージ１３０のＭＡ１６０は、外部ストレージ１８０内に存在する各外部デバイス毎に、外部デバイス番号７１からターゲットポートＩＤ／ターゲットＩＤ／ＬＵＮリスト７９までの情報組を保持する。外部デバイス番号７１には、ストレージ１３０のＭＡ１６０が当該外部デバイスに対して割り当てた、ストレージ１３０内で一意な値が格納される。サイズ７２には、外部デバイス番号７１により特定される外部デバイスの容量が格納される。
【００６６】
対応上位論理デバイス番号７３には、当該外部デバイスが対応付けられているストレージ１３０内の上位論理デバイスの番号が登録される。対応ＣＡ番号、下位論理デバイス番号７４には、当該外部デバイスに対応付けられており、当該外部デバイスに対するホストからのアクセス要求を処理する、ストレージ装置１３０のＣＡの番号と、当該外部デバイスに対応付けられている下位論理デバイスの番号が格納される。尚当該外部デバイスに対して上位論理デバイス若しくは下位論理デバイスが割り当てられていない場合、エントリ７３若しくはエントリ７４には無効値が設定される。
【００６７】
デバイス状態７５には、当該外部デバイスの状態を示す情報が設定されるが、各状態の意味は物理デバイス管理情報２０２内デバイス状態６４と同じである。ストレージ１３０は初期状態では外部ストレージ１８０を接続していないため、デバイス状態７５の初期値は「未実装」となる。ストレージ識別情報７６には、当該外部デバイスを搭載する外部ストレージ１８０の識別情報を保持する。ストレージ識別情報としては、同ストレージのベンダ識別情報と各ベンダが一意に割り振る製造シリアル番号の組み合わせ、などが考えられる。外部ストレージ内デバイス番号７７には、当該外部デバイスに対して当該外部デバイスが搭載されている外部ストレージ１８０によって割り振られたデバイスの識別番号が格納される。尚、外部デバイスは外部ストレージ１８０の論理デバイスであるから、エントリ７７には外部ストレージ１８０の論理デバイス番号が格納される。
【００６８】
ＰＡ番号／イニシエータポート番号リスト７８には、当該外部デバイスへアクセス可能なストレージ１３０のポート１４１の識別番号と、当該ポートが属するＰＡ１４０の識別番号が登録される。複数のポート１４１から当該外部デバイスへアクセスできる場合には、複数のポート識別番号と複数のＰＡ識別番号が登録される。
【００６９】
ターゲットポートＩＤ／ターゲットＩＤ／ＬＵＮリスト７９には、当該外部デバイスが外部ストレージ１８０の１つ以上のポート１８１にＬＵＮ定義されている場合、それらのポート１８１のポートＩＤおよび当該外部デバイスが割り当てられたターゲットＩＤ／ＬＵＮが１つ又は複数個保持される。尚、ストレージ装置１３０のＰＡ１４０が外部デバイスにアクセスする場合（ＰＡ１４０から外部デバイスに対する入出力要求を送信する場合）には、当該外部デバイスが属する外部ストレージ１８０によって当該外部デバイスに割り当てられたターゲットＩＤ及びＬＵＮが、当該外部デバイスを識別するための情報として用いられる。
【００７０】
次に、再び図２に戻り、ストレージ装置１３０のＰＡ１４０内のメモリ１４３、ＣＡ内のメモリ１５３、ＭＡ内のメモリ１６３、管理端末１９０内のメモリ１９３に格納されている情報およびプログラムについて説明する。
【００７１】
ＣＡ内およびＭＡ内の制御メモリ１５５、１６４に格納されている各制御情報は、各ＣＡ、各ＰＡ及びＭＡ内の各制御プロセッサから参照・更新可能であるが、その際に相互接続網１７０などを介したアクセスが必要となる。よって、処理性能向上のため、各制御プロセッサで実行される処理に必要な制御情報の複製を、各部位（即ち、ＣＡ、ＰＡ又はＭＡ）内のメモリに保持する。各部位は、当該部位が管理する制御情報が、構成変更により更新された場合は、相互接続網１７０を介してその旨を他の部位に通知し、最新情報を当該部位の制御メモリから他の部位のメモリへ取り込ませる。尚、制御情報が更新された場合に更新を他の部位に知らせる別の方法として、例えば、各部位は、自部位内の制御メモリに保持した構成情報毎に制御メモリ上に更新有無を示すフラグを設け、各部位の制御プロセッサは処理開始時もしくは各構成情報を参照する毎に同フラグを参照して更新有無をチェックする方法などが考えられる。
【００７２】
尚、各部位のメモリには上述の制御情報の複製に加えて、各部位内の制御プロセッサで動作する制御プログラムが格納される。
【００７３】
本実施形態では、外部ストレージ装置１８０内に存在する外部デバイスをストレージ装置１３０の論理デバイスとして定義する処理、すなわち論理デバイスおよびＬＵパス定義処理と、そうして定義された外部デバイスを含むストレージ１３０の論理デバイスに対するホストコンピュータからの入出力要求の処理を例に、ストレージ装置１３０及び外部ストレージ装置１８０の制御方法を説明する。
【００７４】
これらの処理に関連して各部位のメモリには少なくとも、以下の制御情報とプログラムが保持される。ＰＡ１４０のメモリ１４３には、上位論理デバイス管理情報の複製２１４と外部デバイス管理情報の複製２１５とＬＵパス管理情報の複製２１６と、要求振り分け処理２５１、外部デバイス定義処理２５３、ＬＵパス定義処理２５２の各プログラムが格納される。ＣＡ１５０のメモリ１５３には、下位論理デバイス管理情報の複製２１１、物理デバイス管理情報の複製２１２、外部デバイス管理情報の複製２１５と、コマンド処理２５４、論理デバイス定義処理２５５、ライトアフタ処理２５７、外部デバイス接続変更処理２５６の各プログラムが格納される。ＭＡ１６０のメモリ１６３には、全デバイス管理情報（即ち、上位論理デバイス管理情報、下位論理デバイス管理情報、物理デバイス管理情報、及び外部デバイス管理情報）の複製２１０と、論理デバイス定義処理２５５、ＬＵパス定義処理２５２、外部デバイス定義処理２５３、外部デバイス接続変更処理２５６の各プログラムが格納される。ＳＴ１９０のメモリ１９３には、全デバイス管理情報の複製２１０と、論理デバイス定義処理２５５、ＬＵパス定義処理２５２、及び外部デバイス定義処理２５３の各プログラムが格納される。
【００７５】
次に各部位で動作するストレージ制御処理について説明する。ストレージ装置１３０内に存在する物理デバイスである内部デバイス、及び外部ストレージ装置内１８０に存在する外部デバイスを含むデバイスを、特定のホスト計算機に割り当てて当該ホスト計算機から使用できるようにする処理は、外部デバイス定義処理２５３、論理デバイス定義処理２５５、ＬＵパス定義処理２５２の大きく３つの処理に分けることができる。
【００７６】
図８は、外部デバイス定義処理２５３の処理フローの一例を示す図である。外部デバイス定義処理２５３は、ストレージ装置１３０の管理下に外部ストレージ装置１８０内のデバイスを外部デバイスとして導入するための処理である。
【００７７】
まず、ストレージ管理者もしくは管理サーバ１１０からの外部ストレージ１８０接続指示を受け付けたＳＴ１９０が、ＭＡ１６０に接続指示を送信する（ステップ８０１）。接続指示には、接続対象となる外部ストレージ１８０を特定する情報、例えば、外部ストレージ１８０のポート１８１のＷＷＮや外部ストレージデバイスへＩｎｑｕｉｒｙコマンドを送信した際にその応答により得られる装置識別情報もしくはその両方の情報と、外部ストレージ１８０に接続されるストレージ装置１３０のポート１４１の番号とが付加される。
【００７８】
ＭＡ１６０では外部ストレージの接続指示を受信し、接続指示に付加された全ポート１４１番号に対応する全ＰＡ１４０へ、外部ストレージを識別するための情報と外部ストレージ装置と接続されるポートの番号とを有する外部ストレージ接続指示を送信する（ステップ８０２）。
【００７９】
ＭＡから外部ストレージ接続指示を受信したＰＡ１４０では、接続指示に付加された外部ストレージ１８０識別情報を用いて接続対象となる外部デバイスを探索する（ステップ８０３）。具体的には、外部ストレージ識別情報としてポート１８１のＷＷＮをＰＡがＭＡからもらう場合は、ＰＡは接続指示に付加されたポート番号により指定されたポート１４１から外部ストレージのポート１８１の全ＬＵＮに対してＩｎｑｕｉｒｙコマンドを送信し、Ｉｎｑｕｉｒｙコマンドに対する正常な応答を返したＬＵＮを外部デバイス登録候補とする。外部ストレージ識別情報としてＰＡがＭＡから装置識別情報しかもらわない場合には、当該ＰＡ１４０の全ポート１４１各々によって検出された外部ストレージ装置１８０のノードポートのそれぞれに対して（ノードポートログイン時に検出済み）、全ＬＵＮについてＰＡはＩｎｑｕｉｒｙコマンドを送信し、Ｉｎｑｕｉｒｙコマンドに対する正常な応答を返したデバイス（ＬＵＮ）について、ＰＡは応答内に含まれる装置識別情報を接続指示に付加された値と比較し、一致するデバイスを外部デバイス登録候補とする。
【００８０】
そうして、検出された外部デバイス登録候補についての情報リストをＰＡ１４０はＭＡ１６０へ返却する（ステップ８０４）。この情報リストには、各外部デバイス登録候補について外部デバイス管理情報２０５を設定するのに必要な情報が含まれる。
【００８１】
ＭＡ１６０では、受け取った外部デバイスリストに含まれる外部デバイスに採番し、外部デバイス管理情報２０５へデバイス情報を登録し、同情報に更新のあった旨を他の各部位へ通知する（ステップ８０５）。尚、ステップ８０５においてＭＡが外部デバイス管理情報２０５へ登録する情報としては、具体的には、ＭＡが外部デバイスに対して割り当てた外部デバイス番号７１、Ｉｎｑｕｉｒｙコマンドに対する応答から取得されるサイズ７２、ストレージ識別情報７６及び外部ストレージ内デバイス番号７７、ＰＡ１４０からＭＡに通知されるＰＡ／イニシエータポート番号リスト７８及びターゲットポートＩＤ／ターゲットＩＤ／ＬＵＮリスト７９が含まれる。また、対応上位論理デバイス番号７３及び対応ＣＡ番号／下位論理デバイス番号７４は未割当のため、ＭＡは初期値である無効値をこれらのエントリに設定する。更にデバイス状態７５には「オフライン」状態が設定される。
【００８２】
外部デバイス管理情報２０５の更新通知を受けた各ＣＡ１５０及びＰＡ１４０は、ＭＡ１６０の制御メモリ１６４に保存されている外部デバイス管理情報２０５を各々のメモリに読み込む。また、ＳＴ１９０は外部デバイス管理情報２０５をメモリに取り込むと共に、外部デバイス定義処理の完了を、当該処理の要求元であるストレージ管理者もしくは管理サーバ１１０に通知すべく完了通知を出力する（ステップ８０６）。
【００８３】
なお本実施形態では、ストレージ１３０に対してストレージ管理者もしくは管理サーバ１１０が接続指示と共に、導入対象となる外部ストレージ１８０を指示する形態をとる。しかし、ストレージ管理者若しくは管理サーバ１１０は、外部ストレージ１８０の接続指示のみをストレージ１３０に指示し、ストレージ１３０で全ポート１４１から検出した全外部ストレージ各々が有する全デバイスを外部デバイスとして登録しても構わない。また、ストレージ管理者や管理サーバからは特に明示的な接続指示を与えず、ストレージ１３０に外部ストレージ１８０が接続されたのを契機に、ストレージ１３０が検出した全デバイスを外部デバイスとして登録してもよい。
【００８４】
図９は、論理デバイス定義処理２５５の処理フローの一例を示す図である。論理デバイス定義処理２５５は、ストレージ管理者もしくは管理サーバ１１０からの指示を受けて、ストレージ１３０が搭載する物理デバイスもしくは外部デバイス定義処理２５３で定義された外部デバイスに対して、上位および下位論理デバイスを定義する処理である。
【００８５】
ストレージ管理者若しくは管理サーバ１１０から論理デバイス定義指示を受け付けたＳＴ１９０は、当該指示をＭＡ１６０に送信する（ステップ９０１）。論理デバイス定義指示には、論理デバイスが割り当てられる対象となる物理デバイス若しくは外部デバイスの番号と、割り当てられる上位論理デバイスの番号と、割り当てられる下位論理デバイスの番号と、当該下位論理デバイスを管理するＣＡの番号とが付加される。なお本実施形態では、説明の簡略化のため、１つの物理若しくは外部デバイスに対して１つの論理デバイスを割り当てるものとするが、２つ以上の物理若しくは外部デバイスからなるデバイスグループに対して１つの論理デバイスを、又は１つの物理若しくは外部デバイスに対して２つ以上の論理デバイスを、又は２つ以上の物理若しくは外部デバイスからなるデバイスグループに対して２つ以上の論理デバイスを定義しても構わない。ただし、それぞれの場合、下位論理デバイス管理情報２０１に、物理若しくは外部デバイス内での当該論理デバイスの開始位置およびサイズなどの情報付加、対応する物理および外部デバイス番号エントリの複数デバイス化が、物理および外部デバイス管理情報２０２、２０５に、対応する下位論理デバイス番号エントリの複数デバイス化がそれぞれ必要となる。
【００８６】
論理デバイス定義指示を受信したＭＡ１６０は論理デバイス定義指示に付加されている情報より対象ＣＡ１５０を特定し、特性されたＣＡ１５０に論理デバイス定義指示を送信する（ステップ９０２）。
【００８７】
対象ＣＡ１５０では、指示された物理若しくは外部デバイスに対して下位論理デバイスを登録する（ステップ９０３）。具体的には対象ＣＡは、下位論理デバイス管理情報２０１の対象デバイスエントリ（論理デバイス定義指示に付加されている下位論理デバイスの番号に対応するエントリ）について、論理デバイス定義指示に付加されている下位論理デバイス番号をエントリ５１に、論理デバイス定義指示に付加されている物理若しくは外部デバイスの番号をエントリ５３に、下位論理デバイスのサイズをエントリ５２に、論理デバイス定義指示に付加されている上位論理デバイス番号をエントリ５５に各々登録し、デバイス状態５４には「オンライン」を設定する。また、当該物理／外部デバイスの対応ＣＡ番号／下位論理デバイス番号を設定し、デバイス状態を「オンライン」に更新する。登録が完了したらＣＡ１４０はＭＡ１６０にその旨通知する。
【００８８】
次にＭＡ１６０では、論理デバイス定義指示によって指定された下位論理デバイスへ、上位論理デバイスを割り当て、制御情報が更新された旨を他の各部位に通知する（ステップ９０４）。具体的にはＭＡ１６０は、上位論理デバイス管理情報２０３の当該デバイスエントリ（論理デバイス定義指示に付加されている上位論理デバイスの番号に対応するエントリ）について、論理デバイス定義指示に付加されている上位論理デバイスの番号をエントリ３１に、上位論理デバイスのサイズをエントリ３２に、論理デバイス定義指示に付加されているＣＡ番号と下位論理デバイス番号をエントリ３３に設定し、デバイス状態としてエントリ３４には「オフライン」状態を設定し、エントリ３５及び３６に関しては未割当のため無効値を設定する。更に、当該論理デバイスの割当対象が外部デバイスの場合には、論理デバイス定義指示に付加されている外部デバイス番号をエントリ３８に設定し、デバイスアクセスモード３７は初期値として「ＰＡ直結」を設定する。更に、当該論理デバイスの割り当て対象が外部デバイスである場合には、外部デバイス管理情報２０５の対応上位論理デバイス番号７３に当該上位論理デバイス番号を設定する。そして、ＭＡは制御情報の更新があった旨を各ＰＡ及びＳＴに通知する。
【００８９】
制御情報更新を通知されたＰＡ１４０では更新のあった情報をメモリ１４３へ取り込む。又、制御情報更新を通知されたＳＴ１６０では、更新のあった情報を取り込んだ後、論理デバイス定義処理の完了を要求元であるストレージ管理者若しくは管理サーバへ報告すべく終了報告を出力する（ステップ９０５）。
【００９０】
図１０は、ＬＵパス定義処理２５２の処理フローの一例を示す図である。ストレージ管理者若しくは管理サーバ１１０からＬＵパス定義指示を受け付けたＳＴ１９０がＭＡ１６０に対して同指示を転送する（ステップ１００１）。同指示には、対象上位論理デバイス番号とＬＵを定義するポート１４１番号とＬＵＮに加えて、同ＬＵをアクセスするホスト１００の識別情報（ホストが有するポート１０７のＷＷＮなど）と当該上位論理デバイスへの要求機能レベルが付加される。
【００９１】
ここで要求機能レベルとしては、ストレージ１３０が提供するデータ複製やデバイス再配置などのデータ連携機能や、データをキャッシュ上に格納しておくキャッシュ常駐化によるアクセス高速化機能などの適用有無が指定される。尚、要求機能レベルとして、単に、当該上位論理デバイスがＣＡ１５０経由で処理が必要か否かを示す情報を指定してもよい。
【００９２】
ＭＡ１６０では、ＬＵパス定義指示内において指定される上位論理デバイスに関する上位論理デバイス管理情報２０３内エントリ３８より、当該デバイスが外部デバイスか否かを判定し（ステップ１００２）、外部デバイスの場合は外部デバイス接続変更処理を行う（ステップ１００３）。
【００９３】
外部デバイス接続変更処理完了後又は、ＬＵパス定義指示内において指定される上位論理デバイスが外部デバイスに対応付けられていない場合は、ＭＡは、当該上位論理デバイスに対してＬＵパス登録を行う（ステップ１００４）。具体的にはＭＡは、上位論理デバイス管理情報２０３の当該デバイスエントリのポート番号、ターゲットＩＤ、ＬＵＮ３５と接続ホスト名３６にＬＵパス定義指示内において指定される対応情報を設定し、ＬＵパス管理情報２０６のＬＵパス定義指示内において指定されるポートに関する空きエントリに、ターゲットＩＤ／ＬＵＮ４１を始めとする構成情報を、ＬＵパス定義指示に従って設定する。
【００９４】
登録及び設定が完了したら、その旨を他の各部位へ通知し、通知を受信したＰＡ１４０は新たに設定、登録された情報を取込み、通知を受信したＳＴ１９０は新たに設定、登録された情報を取り込むと共に、要求元である管理サーバ１１０やストレージ管理者へ完了報告を通知すべく完了報告を出力する。
【００９５】
図１４は、外部デバイス接続変更処理２５６の処理フローの一例を示す図である。第１の実施例では、外部デバイスに対応する上位論理デバイスに対してＬＵパス定義される際に、当該外部デバイスに対してストレージ管理者が要求する機能レベルに基づきＣＡ経由での入出力処理が必要であると判断された場合に、初期状態のＰＡ直結接続から接続形態を切り替えるため、外部デバイス接続変更処理２５６が実行される。
【００９６】
まず、ＭＡ１６０で、ＬＵパス定義指示に付加された当該デバイスへの要求機能レベルをチェックし、ＣＡ経由での入出力処理が必要かを判定する（ステップ１４０１）。尚、要求機能レベルとしてデータ複製やデータ再配置等のデータ連携機能やキャッシュ常駐化等のディスクキャッシュを用いた機能が設定されている場合、若しくは要求機能レベルとして直接的にＣＡ経由が必要である旨が指定されている場合には、ＣＡ経由での入出力処理が必要であると判断される。必要であれば、上位論理デバイス管理情報２０３のデバイスアクセスモード３７に現在「ＰＡ直結」が登録されているならば（ステップ１４０２）、当該デバイスのデバイスアクセスモード３７を「ＣＡ経由」に変更する（ステップ１４０３）。ＣＡ経由での入出力処理が必要ではないと判定された場合、若しくは必要だと判定されても現在デバイスアクセスモード３７が「ＣＡ経由」になっている場合には、デバイスアクセスモード３７の変更を行われない。
【００９７】
以上の処理により、外部デバイスをストレージ１３０が管理する上位論理デバイスとしてストレージ１３０内に登録し、ホスト１００に割り当てることができる。
【００９８】
次に、このように外部デバイスがストレージ１３０の上位論理デバイスとしてホストに提供されている状態で、ホスト１００から受信する入出力要求を処理する方法について、ＰＡ１４０での要求振り分け処理とＣＡ１５０でのコマンド処理とライトアフタ処理の３つに分けて説明する。
【００９９】
図１１は、要求振り分け処理２５１の処理フローの一例を示す図である。要求振り分け処理２５１は、ＰＡ１４０内のポート１４１においてホスト１００又は外部ストレージ装置１８０から受け取った入出力要求やデータ、および転送制御部１４４においてＣＡ１５０や別のＰＡ１４０から受け取った入出力要求やデータを、ＣＡ又は他のＰＡ又はホスト又は外部ストレージ装置１８０等、適切な対象部位へ振り分ける処理である。要求振り分け処理２５１では、コマンドフレームを受信した際に、デバイス管理情報を参照して当該フレームの転送先を決定し、以降、当該コマンドによって開始される入出力処理（ファイバチャネルではエクスチェンジに相当する）でやりとりされるデータフレームなどの転送制御のために、当該入出力処理のルーティング制御情報を登録する。ルーティング制御情報は各ＰＡ１４０で独立に管理され、当該入出力処理の識別情報（ファイバチャネルの場合はフレームヘッダに格納されているエクスチェンジＩＤ）、要求元部位およびアドレス、要求先部位およびアドレスなどの情報を保持する。要求元および要求先アドレスには、ファイバチャネルの場合、コマンドフレームのヘッダ情報に含まれるソースＩＤとデスティネーションＩＤおよびＬＵＮが用いられる。尚ホスト１００は、外部デバイスに対してもストレージ１３０内に存在する物理デバイスに対しても、ストレージ１３０が管理するデバイスとしてアクセスするので、ホストからは外部デバイスも物理デバイスもポート１４１のＬＵＮとしてアクセスされることになる。従って、ホストから受信するコマンドフレームのヘッダ情報には、デスティネーションＩＤとしてポート１４１のポートＩＤが、ＬＵＮとしてポート１４１でのＬＵＮが設定されている。
【０１００】
ホストからコマンドフレームを受信したＰＡは、ＰＡ直結モードでアクセスする場合には、対応ＰＡ１４０（即ち外部デバイスを有する外部ストレージを接続しているポートを有するＰＡ）の番号、当該外部ストレージ１８０と接続されるポート１４１の番号、外部ストレージのポート１８１のポートＩＤ、及びポート１８１でのアクセス対象の外部デバイスのＬＵＮを、要求先情報としてルーティング情報に登録する。
【０１０１】
また、ＣＡ経由モードでアクセスする場合にはＰＡは、経由するＣＡ１５０の識別番号、及びコマンドフレームのヘッダ情報が示す上位論理デバイスに対応付けられている下位論理デバイス番号を、要求先情報としてルーティング情報に登録する。
【０１０２】
尚このルーティング制御情報には、外部デバイスへの入出力要求など、ＣＡ１５０からの入出力要求のルーティング情報も登録される。この場合、当該入出力要求の送信元情報としては、ＣＡ１５０番号やＣＡ１５０で動作するコマンド処理２５４を特定する識別情報などが保持される。
【０１０３】
ポート１４１又は転送制御部１４４からデータやコマンドなどを含んだファイバチャネルフレームを受信したＰＡ１４０では（ステップ１１０１）、フレーム種別によって処理を切り分ける（１１０２）。尚、フレーム種別は、フレームに含まれるデータから判別することができる。
【０１０４】
当該フレームがＦＣＰコマンドフレームの場合、当該フレームの送信元によって処理を切り分ける（１１０３）。なお、本実施形態では、コマンドフレームは、ホスト１００からポート１４１を介して受信する場合と、外部ストレージ１８０をアクセスするＣＡ１３０や他ＰＡ１４０から転送制御部１４４を介して受信する場合の２つがある。
【０１０５】
まず、送信元がホストの場合、ＰＡは受信フレームのヘッダ情報に含まれるアクセス対象の上位論理デバイスを表すＬＵＮに基づいて、ＬＵパス管理情報と上位論理デバイス管理情報を参照し、当該上位論理デバイスが外部デバイスに対応付けられており、かつデバイスアクセスモードが「ＣＡ経由」でない、すなわち第１の実施形態では「ＰＡ直結」であるかを判断する。当該上位論理デバイスが外部デバイスに対応付けられておりかつデバイスアクセスモードが「ＰＡ直結」である場合には更に、当該コマンドの要求種別がＣＡ処理不要であるかを判断する。これらの条件を全て満たす場合、当該要求のアクセス形態はＰＡ直結であると、それ以外の場合は当該要求のアクセス形態はＣＡ経由であると決定される（ステップ１１０４〜１１０５）。
【０１０６】
ＰＡ直結アクセスの場合、ＦＣＰコマンドフレームを受信したＰＡは上位論理デバイス管理情報２０３及び外部デバイス管理情報２０５を参照して、当該外部デバイスを有する外部ストレージ装置１８０が接続されたＰＡ１４０の識別番号、当該外部デバイスの外部ストレージ装置１８０内での識別情報であるターゲットポートＩＤ、ターゲットＩＤ、ＬＵＮ等を取得し、これを入出力処理の要求先、当該フレームの送信元を入出力処理の要求元として、当該コマンドのルーティング制御情報を登録する（ステップ１１０６）。
【０１０７】
ＣＡ経由アクセスの場合は、ＰＡは上位論理デバイス管理情報２０３を参照して、受信したコマンドフレームのアクセス対象となっている上位論理デバイスが対応するＣＡ番号などを算出し、これを入出力処理の要求先、当該フレームの送信元を入出力処理の要求元として、当該コマンドのルーティング制御情報を登録する（ステップ１１０７）。
【０１０８】
一方、ステップ１１０３の切り分け処理で、当該コマンドフレームの送信元がホスト１００以外、すなわちＣＡ１５０もしくは他ＰＡ１４０の場合、当該コマンドフレームのヘッダ情報で指定されている外部ストレージ１８０の外部デバイスを転送先に決定し、これを当該入出力処理の要求先、当該フレームの送信元を入出力処理の要求元として当該コマンドのルーティング制御情報を登録する（ステップ１１０８，１１０９）。
【０１０９】
一方、ステップ１１０２の切り分け処理で、ＰＡ１４０で受信したフレームの種別がデータフレーム、受信準備完了通知フレーム、完了報告フレームの場合は、当該フレームに対応する入出力処理のルーティング制御情報を参照し、当該フレームの送信元部位の交信相手先を当該フレームの転送先として決定する。すなわち、ＰＡが当該フレームを外部ストレージ１８０から受信した場合は当該入出力処理の要求元であるホスト１００が接続されたＰＡ１４０もしくはＣＡ１５０が、ホスト１００から受信した場合は当該入出力処理の要求先であるＣＡ１５０もしくは外部ストレージ１８０が接続されたＰＡ１４０が当該フレームの転送先として決定される。さらに、ＰＡ１４０が当該フレームをＣＡ１５０もしくは他ＰＡ１４０から受信した場合は当該入出力処理の交信相手先（即ち当該フレームの送信元が当該入出力処理の要求元ならば要求先）であるホスト１００又は外部ストレージ１８０が、それぞれ当該フレームの転送先として決定される（ステップ１１１０）。
受信フレームの転送先が決まったら、ＰＡ１４０は転送先部位によって処理を切り分ける（ステップ１１１１）。転送先が他のＰＡ１４０の場合は当該入出力要求のルーティング制御情報に登録されている転送先のアドレスを当該フレームの送信先アドレスへ設定する（ステップ１１１２）。すなわち、送信先が外部デバイスの場合、受信したフレームのデスティネーションＩＤをルーティング制御情報に当該入出力処理の要求先として登録されている外部デバイスのターゲットポートＩＤ（即ちポート１８１のポートＩＤ）へ、また、同フレーム内のＬＵＮなどのアドレス情報を当該外部デバイスのアドレス（即ち外部デバイス管理情報を参照して取得したＬＵＮ等）に書き換え、送信先がホスト１００の場合、受信フレームのデスティネーションＩＤをルーティング制御情報に当該入出力処理の要求元として登録されているホスト１００のポート１０７のポートＩＤへ書き換える。
【０１１０】
また、転送先が当該ＰＡ１４０内のポート１４１に接続したホスト１００又は外部ストレージ１８０の場合は当該ポート１４１のアドレスを当該フレームの送信元アドレスへ設定する（ステップ１１１３）。
そして、コマンド、データ、受信準備完了報告、完了報告フレームを受信したＰＡ１４０は決定された転送先であるホスト１００、又は外部ストレージ１８０、又はＣＡ１５０、又はＰＡ１４０へ当該フレームを転送する（ステップ１１１４）。さらに、転送を完了した当該フレームが完了報告フレームだった場合は、当該入出力処理のルーティング制御情報の登録を解除する（ステップ１１１５，１１１６）。
【０１１１】
また、ＰＡが受信したフレームがＦＣＰ関連のフレームでない場合は、ファイバチャネルのノードポートとして従来公知な処理を当該フレーム受信ＰＡ１４０の制御プロセッサ１４２にて実行する（ステップ１１１７）。
【０１１２】
なお、要求振り分け処理が実行された結果、コマンドフレームの転送先がＣＡ１５０であると決定された場合、フレーム以外にアクセス対象であるＣＡ番号、下位論理デバイス番号、ＬＢＡ、サイズなどの情報を付加して転送先のＣＡへ送信する。また、コマンドフレームに続くデータフレームなどをＣＡ１５０に転送する場合は、ＰＡ１４０とＣＡ１５０のそれぞれの転送制御部において、既に確立したコマンドシーケンスを意識したデータ転送を行う。
【０１１３】
図１２は、コマンド処理２５４の処理フローの一例を示す図である。コマンド処理は、ＣＡ１５０において下位論理デバイスに対する入出力要求を処理するものである。
【０１１４】
要求振り分け処理２５１の結果、ＣＡ１５０で受信されたＦＣＰコマンドに対して、コマンド種別がチェックされる（ステップ１２０２）。当該ＦＣＰコマンドの要求がリードの場合は、ディスクキャッシュ１５４上にリード対象のデータがヒットしているか（キャッシュに格納されているか）をキャッシュ管理情報２０３を参照して判定し（ステップ１２０３）、ヒットしている場合は、ステップ１２０８でＰＡ１４０へのデータ送信を開始する。
【０１１５】
キャッシュミスの場合は、キャッシュ管理情報２０３を更新してディスクキャッシュ１５４に領域を確保し（ステップ１２０４）、当該データが格納される物理デバイス若しくは外部デバイスからキャッシュへのステージングを実行する。リードデータが格納されているデバイスが物理デバイスであるか外部デバイスであるかは、ＣＡが下位論理デバイス管理情報２１０を参照することによって判断することができる（ステップ１２０５）。
【０１１６】
リードデータが格納されているデバイスが物理デバイスであれば、ＣＡは物理デバイス管理情報２０２より特定したディスク装置１５７に対してリード要求を発行してデータを読み出し（ステップ１２０６）、読み出したデータをディスクキャッシュ１５４の確保領域に格納する（ステップ１２０７）。
【０１１７】
リードデータが格納されているデバイスが外部デバイスであれば、ＣＡは外部デバイス管理情報２０５を参照してエントリ７８からアクセス対象ＰＡ１４０を特定し、外部デバイスに対するリード要求を当該ＰＡへ送信する（ステップ１２１０）。リード要求を受信したＰＡ１４０では要求振り分け処理２５１によって当該リード要求を外部デバイスに対して送信し、応答として外部ストレージ装置からリードデータを受信し、外部ストレージ装置１８０から受信したリードデータをＣＡ１５０へ返送する。ＣＡはＰＡから受信したリードデータをディスクキャッシュ１５４の確保領域に格納する（ステップ１２１１、１２０７）。
【０１１８】
ディスクキャッシュにリードデータが格納されるとＣＡは、ディスクキャッシュ１５４に格納されたデータをＦＣＰコマンドフレーム転送元のＰＡ１４０へ送信し（ステップ１２０８）、ＰＡ１４０では要求振り分け処理２５１が当該データをホストへ転送する。
【０１１９】
ＣＡ１５０がＰＡから受信したＦＣＰコマンドフレームがライトの場合、ＣＡはライトデータに対応する旧データがディスクキャッシュ１５４に格納されているか否かを判断し（１２１２）、キャッシュミスの場合にはディスクキャッシュ１５４領域を割り当てる（１２１３）。
【０１２０】
次にＣＡはＦＣＰコマンドフレーム転送元のＰＡ１４０に対して、転送準備完了を送信する（ステップ１２１４）。転送準備完了を受信したＰＡ１４０の要求振り分け処理２５１は転送準備完了をホスト１００へ転送し、ホスト１００からライトデータが送られてくると、ＰＡ１４０は先ほどのＣＡ１５０へデータを送信する。ＣＡ１５０ではＰＡから受信したライトデータを確保したディスクキャッシュ１５４上の領域へ格納する（ステップ１２１５、１２１６）。
【０１２１】
また、ＣＡ１５０で受信したコマンドがリードでもライトでもない場合、例えばモードセンスなどのセンス系コマンドや診断系のコマンドの場合は、一般的なＳＣＳＩストレージの仕様に基づき適切な処理を実行する（ステップ１２１７）。
【０１２２】
そして、コマンド処理を完了したことを、ホスト１００に接続しているＰＡ１４０へ報告し、ＰＡ１４０の要求振り分け処理２５１により、ホスト１００へ完了報告フレームが送信される（ステップ１２０９）。
【０１２３】
図１３は、ライトアフタ処理２５７の処理フローの一例を示す図である。ライトアフタ処理は、ＣＡ１５０におけるコマンド処理２５４の結果、ディスクキャッシュ１５４に格納されたライトデータをディスク装置１５７へ書き出す処理である。ディスクキャッシュ１５４上に保持されたライトデータはキャッシュ管理情報２０３で管理される。通常、ライトデータやディスクからリードされたリードデータは、なるべく古いものから順にディスクキャッシュ１５４より追い出されるように、キューなどで管理されている。
【０１２４】
そういった従来公知の方法により管理されたデータの中から、ＣＡはディスクへ実際に書き込むデータを選択し（ステップ１３０１）、当該データが格納されるディスクが外部デバイスに対応づけられているか物理デバイスに対応付けられているかを下位論理デバイス管理情報２０１に基づいて判断する（ステップ１３０２）。
【０１２５】
ライトデータを物理デバイスに書き込む場合にはＣＡは物理デバイス管理情報２０２を参照してデータを書き込むディスクを特定し、ライトデータを特定されたディスクに書き込む（ステップ１３０３）。
【０１２６】
一方ライトデータを外部デバイスに書き込む場合には、ＣＡは外部デバイス管理情報２０５を参照してライトデータが書き込まれる外部デバイスを有する外部ストレージと接続しているＰＡを特定し、当該ＰＡへライト要求を送信する（ステップ１３０４）。ライト要求を受信したＰＡでは要求振り分け処理２５１により当該ライト要求を外部ストレージ１８０に転送し、ライト要求に対する応答として当該外部ストレージ１８０から転送準備完了通知を受信する。すると当該ＰＡは転送準備完了通知をライト要求送信元のＣＡへ送信し、これを受信したＣＡはライトデータを当該ＰＡへ送信する（ステップ１３０５，１３０６）。ライトデータを受信したＰＡは要求振り分け処理２５１によりライトデータを上述の外部ストレージ１８０に送信し、外部ストレージ１８０によってライトデータが外部デバイスに書き込まれる。
【０１２７】
ＣＡは、ライトデータを物理デバイス若しくは外部デバイスへライトした後、ライトデータが格納されていたディスクキャッシュ上の領域を解放する（ステップ１３０７）。
【０１２８】
第二に、第１５図から第１６図を参照して，第２の実施形態を説明する。
【０１２９】
第２の実施形態では、外部デバイスに対応する上位論理デバイスについて、ＬＵパス定義時に一旦決定された接続形態（即ち、ＰＡ直結かＣＡ経由か）を、その後の当該デバイスへの機能要求レベルの変化に応じて、切り替えるものである。尚、接続形態を切り替える際にも、当該上位論理デバイスへのホストからの入出力要求は受け続ける。
【０１３０】
尚、第２の実施形態では、第１の実施形態とほぼ同じハードウェアおよびソフトウェア構成を有するため、その差異についてのみ説明する。
【０１３１】
図３を用いて、第２の実施形態における上位論理デバイス管理情報２０３の構成例を説明する。第１の実施形態との違いは、デバイスアクセスモード３７の値として、「ＰＡ直結」、「ＣＡ経由」に加えて「ＰＡ直結移行中」を追加したことである。「ＰＡ直結移行中」は外部デバイス接続形態を「ＣＡ経由」から「ＰＡ直結」へ切り替える過渡状態、すなわち、後述する切替処理が対応ＣＡ１５０にて実行中であることを示す。また、第２の実施形態では、第一の実施形態における上位論理デバイス管理情報２０３に、更に切替進捗ポインタ３９が追加される。このポインタは当該上位論理デバイスが「ＰＡ直結移行中」である場合に使用され、当該上位論理デバイスのうち、外部接続の接続形態切替処理が未完了な領域の先頭アドレスを示す情報である。進捗ポインタ３９は、後述するＣＡ１５０のキャッシュミス化処理の進捗に応じて更新される。
【０１３２】
図５を用いて、第２の実施形態における下位論理デバイス管理情報２０１の構成例を説明する。第２の実施形態では、第一の実施形態における下位論理デバイス管理情報２０１に加えて、更に切替進捗ポインタ５６が追加される。進捗ポインタの内容は上記上位論理デバイス管理情報２０３のものと同じである。この進捗ポインタ５６もＣＡ１５０によるキャッシュミス化処理の進捗に応じて更新される。
【０１３３】
上位論理デバイス管理情報と下位論理デバイス管理情報とで２重に進捗ポインタを管理することで、ＭＡ１６０で保持する上位論理デバイス管理情報２０３への更新頻度を抑えることが可能となる。上位論理デバイス管理情報２０３が更新されると、ストレージ装置１３０内の全ＰＡ１４０がメモリ１４３へ更新情報を取り込む必要があるため、上位論理デバイス管理情報２０３の更新頻度を抑制することは、ストレージ装置１３０の性能を維持する上では有効である。
【０１３４】
ただし、上位論理デバイス管理情報２０３が更新されても更新情報がすぐには各ＰＡに反映されないとなると、ＰＡ１４０は入出力要求振り分け処理において古い切替進捗ポインタ３９を参照することになる。従って、既にキャッシュミス化を終えた領域についてもＰＡ１４０からＣＡ１５０へ入出力要求が転送されることになる。よって、ＣＡ１５０のコマンド処理２５４で、キャッシュミス化処理を終えた領域へのライト要求についてはライトアフタで処理せず、即物理デバイス若しくは外部デバイスへ書き込むなど、キャッシュミス化処理で利用したディスクキャッシュ１５４を処理後速やかに解放する必要がある。
【０１３５】
図１５に、第２の実施形態における外部デバイス接続変更処理２５６の処理フローの一例を示す。外部デバイス接続変更処理は、第１の実施形態と同様外部デバイスに対応する上位論理デバイスがホスト１００に割り当てられ、ＬＵパスが定義される際に実行されるのに加え、ＭＡ１６０がＳＴ１９０を介してストレージ管理者もしくは管理サーバ１１０から、上位論理デバイスに対する機能要求レベルの変更指示を受信した場合に、ＭＡ１６０より実行される。
【０１３６】
機能要求レベルの変更指示を受信したＭＡは、当該変更指示内の情報によって特定される上位論理デバイスの接続形態をＣＡ経由とすべきか否かを、当該変更指示に基づいて判断する（ステップ１７０１）。ＣＡ経由とすべきである場合には、現在当該上位論理デバイスのアクセスモードがＰＡ直結モードとなっているかどうかをＭＡは上位論理デバイス管理情報２０３を参照して判断する（ステップ１７０２）。ＰＡ直結モードである場合には、ＭＡは当該上位論理デバイスの接続形態を「ＰＡ直結」から「ＣＡ経由」へ変更する必要があるが、この場合の処理は第１の実施形態の図１４に示す処理と同様である（ステップ１７０３）。既にＣＡ直結モードとなっている場合には変更は必要ないので処理を終了する。
【０１３７】
ステップ１７０１に戻って、当該上位論理デバイスの接続形態をＰＡ経由とすべき場合、ＭＡは上位論理デバイス管理情報２０３を参照して現在当該上位論理デバイスのデバイスアクセスモードがＣＡ経由となっているかＰＡ経由となっているかを判断する（ステップ１７０４）。
【０１３８】
ＣＡ経由となっている場合には、ＭＡは接続形態を「ＣＡ経由」から「ＰＡ直結」へ変更する必要がある。そこでまずＭＡ１６０は、当該上位論理デバイスの上位論理デバイス管理情報２０３内のデバイスアクセスモード３７を「ＰＡ直結移行中」へ変更し（ステップ１７０５）、当該上位論理デバイスに対応付けられている下位論理デバイスを管理しているＣＡを上位論理デバイス管理情報２０３を参照して特定する。そして特定されたＣＡに当該上位論理デバイスの接続形態がＣＡ経由からＰＡ直結に変更される旨を通知する（ステップ１７０６）。
【０１３９】
通知を受けたＣＡ１５０では、対応する下位論理デバイスの全データについてディスクキャッシュ１５４を検索しディスクキャッシュをミス化、すなわち、物理デバイス若しくは外部デバイスへ未更新のデータはディスクキャッシュから対応デバイスへ書き出してデバイス内のデータを更新した後、更新済みのデータについては即、当該データに割り当てられたキャッシュ領域を解放する。検索はキャッシュ管理情報を用いて、当該下位論理デバイスの先頭から順次行い、検索およびミス化処理が終わった部分については、上位論理デバイス及び下位論理デバイス管理情報の切替進捗ポインタを進めることで進捗を管理する。
【０１４０】
ディスクキャッシュの全領域についてミス化処理が完了したら、ＣＡはその旨をＭＡ１６０へ報告し（ステップ１７０８）、ＭＡ１６０で上位論理デバイス管理情報２０３内のデバイスアクセスモード３７を「ＰＡ直結」へ変更して接続形態変更処理を完了する。
【０１４１】
図１６に、第２の実施形態における要求振り分け処理２５１の処理フローの一例を示す。第２の実施形態における要求振り分け処理２５１では、図１１に示す第一の実施形態における要求振り分け処理と比べると、受信したファイバチャネルフレームがＦＣＰコマンドフレームであり、送信元がホストであり、コマンドの対象デバイスが外部デバイスで、アクセスモードが「ＣＡ経由」でなく、コマンド要求種別がＣＡ処理不要のときに、さらにアクセスモードが「ＰＡ直結移行中」でかつ当該コマンド内ＬＢＡとブロック数で示されるアクセス領域が当該上位論理デバイスの切替進捗ポインタ３９よりも後にあるかを判断するステップ（ステップ１８１８）が追加される。アクセスモードが「ＰＡ直結移行中」でないか、ＰＡが受信したコマンドが進捗ポインタよりも前、すなわちＰＡ直結へ切替済みの領域を対象としている場合には、アクセス先を外部デバイスを有する外部ストレージ装置１８０が接続されたＰＡとし（ステップ１８０６）、そうでない場合、すなわちアクセスモードが「ＰＡ直結移行中」でかつアクセス先が未切替な部分である場合は、ＣＡへ当該コマンドフレームを転送する（ステップ１８０７）。
【０１４２】
なお、本発明は上記の実施形態に限定されず、数々の変形が可能である。
【０１４３】
例えば、本実施形態では、外部デバイスが対応付けられている上位論理デバイスのアクセスモードが「ＰＡ直結」であっても、受信コマンドが診断系やセンス系などのコマンドの場合はＣＡ１５０が当該コマンド処理を行っている。しかしＣＡ１５０の代わりにＭＡ１６０の制御プロセッサ１６２がこれらのコマンド処理を行っても構わない。この場合、本実施形態にあるように、全ての外部デバイスをＣＡ２５０および下位論理デバイスへ割り当てることなく、直接上位論理デバイスへ割り当てることが可能となる。
【０１４４】
また、例えば、本実施形態では、ホスト１００とストレージ１３０と外部ストレージ１８０の間をファイバチャネルで接続しているが、上位にＳＣＳＩプロトコルを採用するＩＰネットワークで接続しても構わない。その場合、ホスト１００とストレージ１３０間、ストレージ１３０と外部ストレージ間が異なる種類のネットワークであってもよい。
【０１４５】
また、図１７のように外部ストレージ１８０がＪＢＯＤなどの冗長性のないデバイスの場合、ストレージ１３０のＣＡ１５０にて複数の外部デバイスでＲＡＩＤを構成することも可能である。ただし、その場合は論理デバイス定義の段階で、当該上位論理デバイスのアクセスモードを「ＣＡ経由」と設定し、下位論理デバイス１つに対して外部デバイス複数の対応関係を下位論理デバイス管理情報２０１で管理するか、もしくは外部デバイスによって構成されるＲＡＩＤを管理するための情報を新設してＣＡで管理すると共に、外部デバイスＲＡＩＤと下位論理デバイスとの対応を下位論理デバイス管理情報２０１で管理する必要がある。
【０１４６】
【発明の効果】
本発明のストレージシステムによれば、他のストレージシステムと接続して他のストレージシステム内のデバイスを自システムのデバイスとしてホスト計算機に提供することができ、また、他のストレージシステム内のデバイスに対する処理によるストレージシステムの負荷を低減することができる。また、他のストレージシステム内のデバイスへの接続形態を、ホストからのＩ／Ｏを受けつつ切り替えることができる。
【図面の簡単な説明】
【図１】本発明が適用される計算機システムのハードウェア構成の一例を示す図である。
【図２】本発明が適用されるストレージのソフトウェア構成の一例を示す図である。
【図３】上位論理デバイス管理情報の一例を示す図である。
【図４】ＬＵパス管理情報の一例を示す図である。
【図５】下位論理デバイス管理情報の一例を示す図である。
【図６】物理デバイス管理情報の一例を示す図である。
【図７】外部デバイス管理情報の一例を示す図である。
【図８】外部デバイス定義処理の一例を示す図である。
【図９】論理デバイス定義処理の一例を示す図である。
【図１０】ＬＵパス定義処理の一例を示す図である。
【図１１】要求振り分け処理の一例を示す図である。
【図１２】コマンド処理の一例を示す図である。
【図１３】ライトアフタ処理の一例を示す図である。
【図１４】外部デバイス接続変更処理の一例を示す図である。
【図１５】外部デバイス接続変更処理の他の一例を示す図である。
【図１６】要求振り分け処理の他の一例を示す図である。
【図１７】本発明が適用される計算機システムの他の一例を示す図である。
【符号の説明】
１００…ホスト
１１０…管理サーバ
１２０…ファイバチャネルスイッチ
１３０…ストレージ装置
１４０…プロトコル変換部
１５０…キャッシュ制御部
１６０…構成管理部
１７０…相互結合網
１８０…外部ストレージ装置
１９０…管理端末
２０１…下位論理デバイス管理情報
２０２…物理デバイス管理情報
２０３…キャッシュ管理情報
２０４…上位論理デバイス管理情報
２０５…外部デバイス管理情報
２０６…ＬＵパス管理情報
２５１…要求振り分け処理
２５２…ＬＵパス定義処理
２５３…外部デバイス定義処理
２５４…コマンド処理
２５５…論理デバイス定義処理
２５６…外部デバイス接続変更処理
２５７…ライトアフタ処理
【図１】
2005011277.tif 000003
【図２】
2005011277.tif 000004
【図３】
2005011277.tif 000005
【図４】
2005011277.tif 000006
【図５】
2005011277.tif 000007
【図６】
2005011277.tif 000008
【図７】
2005011277.tif 000009
【図８】
2005011277.tif 000010
【図９】
2005011277.tif 000011
【図１０】
2005011277.tif 000012
【図１１】
2005011277.tif 000013
【図１２】
2005011277.tif 000014
【図１３】
2005011277.tif 000015
【図１４】
2005011277.tif 000016
【図１５】
2005011277.tif 000017
【図１６】
2005011277.tif 000018
【図１７】
2005011277.tif 000019