(57)【要約】【課題】ルーティング情報およびストレージデバイス情報を考慮し、より最適なストレージデバイスを選択する。【解決手段】ストレージデバイス選択方法であって、ゲートウェイ装置３は、ルーティングテーブル３５１と、ストレージ情報テーブル３５２と、処理部３３とを有し、処理部３３は、サーバ１からRead/Write要求情報を受信する要求受信ステップと、ルーティングテーブル３５１、ストレージ情報テーブル３５２およびRead/Write要求情報に基づいてストレージデバイス２を選択する選択ステップと、選択ステップで選択したストレージデバイス２に、Read/Write要求情報を転送する要求転送ステップと、を行う。【選択図】  図１
2006146409.tif 000002
【特許請求の範囲】
【請求項１】
ＩＰｖ６のＩＰ−ＳＡＮにより接続されたストレージシステムにおけるストレージデバイス選択方法であって、
前記ストレージシステムは、複数のストレージデバイスと、前記ストレージデバイスに対しデータのRead/Writeを実行するサーバと、ゲートウェイ装置とを有し、
前記ゲートウェイ装置は、前記ストレージデバイス毎に当該ストレージデバイスまでの近さを示すメトリック情報が設定されたルーティングテーブルと、前記ストレージデバイス毎に当該ストレージデバイスのデバイス情報が設定されたストレージ情報テーブルと、処理部と、を有し、
前記処理部は、
前記サーバから、エニキャストアドレスおよびRead/Writeデータ量を含むRead/Write要求情報を受信する要求受信ステップと、
前記ルーティングテーブルを参照し、前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のメトリック情報を特定するとともに、前記ストレージ情報テーブルを参照し、前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のデバイス情報を特定する特定ステップと、
前記ストレージデバイス各々の前記メトリック情報および前記デバイス情報と、前記Read/Writeデータ量情報と、に基づいてストレージデバイスを選択する選択ステップと、
選択ステップで選択したストレージデバイスに、前記Read/Write要求情報を転送する要求転送ステップと、を行うこと
を特徴とするストレージデバイス選択方法。
【請求項２】
請求項１記載のストレージデバイス選択方法であって、
前記ストレージ情報テーブルの前記デバイス情報には、ストレージデバイス各々の未使用容量が含まれること
を特徴とするストレージデバイス選択方法。
【請求項３】
請求項１記載のストレージデバイス選択方法であって、
前記処理部は、
前記選択ステップで選択したストレージデバイスからRead/Write受諾メッセージを受信し、当該Read/Write受諾メッセージを前記サーバに転送するメッセージ転送ステップと、
前記サーバからRead/Writeデータを受信し、当該Read/Writeデータを前記選択したストレージデバイスに転送するデータ転送ステップと、をさらに行うこと
を特徴とするストレージデバイス選択方法。
【請求項４】
請求項１記載のストレージデバイス選択方法であって、
前記処理部は、
前記選択ステップで選択したストレージデバイスからRead/Write受諾メッセージを受信し、当該Read/Write受諾メッセージを前記サーバに転送するメッセージ転送ステップと、をさらに行い、
前記サーバは、前記Read/Write受諾メッセージを受信し、当該Read/Write受諾メッセージに含まれる前記選択したストレージデバイスの所在情報を宛先として、Read/Writeデータを送信するサーバ送信ステップを、行うこと
を特徴とするストレージデバイス選択方法。
【請求項５】
請求項１記載のストレージデバイス選択方法であって、
前記ゲートウェイ装置は、Read/Writeデータ量を記憶するデータ量記憶部を、さらに有し、
前記処理部は、
前記要求受信ステップにおいて前記サーバから受信したRead/Write要求情報からRead/Writeデータ量を取得し、取得したRead/Writeデータ量を前記データ量記憶部に記憶する記憶ステップを、さらに行うこと
を特徴とするストレージデバイス選択方法。
【請求項６】
請求項１記載のストレージデバイス選択方法であって、
前記処理部は、
前記ストレージデバイス各々から、所定のタイミングでデバイス情報を受信し、受信したデバイス情報を、前記ストレージ情報テーブルに記憶するデバイス情報受信ステップを、さらに行うこと
を特徴とするストレージデバイス選択方法。
【請求項７】
請求項１記載のストレージデバイス選択方法であって、
前記処理部は、
前記要求受信ステップにおいて、前記サーバの公開鍵を用いて署名を復号し、前記サーバの認証を行うこと
を特徴とするストレージデバイス選択方法。
【請求項８】
請求項１記載のストレージデバイス選択方法であって、
前記処理部は、
前記サーバから受信した暗号化メッセージを、当該ゲートウェイ装置が有する秘密鍵を用いて復号する第１の復号ステップと、
前記第１の復号ステップで復号したメッセージを、前記ストレージデバイスの公開鍵を用いて暗号化し、前記ストレージデバイスに送信する第１の暗号化ステップと、
前記ストレージデバイスから受信した暗号化メッセージを、当該ゲートウェイ装置が有する秘密鍵を用いて復号する第２の復号ステップと、
前記第２の復号ステップで復号したメッセージを、前記サーバの公開鍵を用いて暗号化し、前記サーバに送信する第２の暗号化ステップと、をさらに行うこと
を特徴とするストレージデバイス選択方法。
【請求項９】
複数のストレージデバイスとサーバとがＩＰｖ６のＩＰ−ＳＡＮにより接続されたストレージシステムにおけるゲートウェイ装置であって、
前記ストレージデバイス毎に当該ストレージデバイスまでの近さを示すメトリック情報が設定されたルーティングテーブルと、
前記ストレージデバイス毎に当該ストレージデバイスのデバイス情報が設定されたストレージ情報テーブルと、
前記サーバから、エニキャストアドレスおよびRead/Writeデータ量を含むRead/Write要求情報を受信する要求受信手段と、
前記ルーティングテーブルを参照して前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のメトリック情報を特定するとともに、前記ストレージ情報テーブルを参照して前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のデバイス情報を特定する特定手段と、
前記ストレージデバイス各々の前記メトリック情報および前記デバイス情報と、前記Read/Writeデータ量情報と、に基づいてストレージデバイスを選択する選択手段と、
前記選択手段が選択したストレージデバイスに、前記Read/Write要求情報を転送する転送手段と、を有すること
を特徴とするゲートウェイ装置。
【請求項１０】
ＩＰｖ６のＩＰ−ＳＡＮにより接続されたストレージシステムであって、
前記ストレージシステムは、サーバと、ストレージデバイスと、ゲートウェイ装置と、を有し、
前記サーバは、
Read/Write実行先のエニキャストアドレスと、Read/Writeデータ量と、を含むRead/Write要求を、前記ゲートウェイ装置に送信するサーバ送信手段と、を有し、
前記ゲートウェイ装置は、
前記ストレージデバイス毎に当該ストレージデバイスまでの近さを示すメトリック情報が設定されたルーティングテーブルと、
前記ストレージデバイス毎に当該ストレージデバイスのデバイス状態が設定されたストレージ情報テーブルと、
前記サーバから、前記Read/Write要求情報を受信する要求受信手段と、
前記ルーティングテーブルを参照して前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のメトリック情報を特定するとともに、前記ストレージ情報テーブルを参照して前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のデバイス情報を特定する特定手段と、
前記ストレージデバイス各々の前記メトリック情報および前記デバイス情報と、前記Read/Writeデータ量情報と、に基づいてストレージデバイスを選択する選択手段と、
前記選択手段が選択したストレージデバイスに、前記Read/Write要求情報を転送する転送手段と、を有すること
を特徴とするストレージシステム。
【請求項１１】
請求項１０記載のストレージシステムであって
前記ストレージ情報テーブルに記憶されたデバイス情報には、前記ストレージデバイスの未使用容量を含み、
前記ストレージデバイス各々は、
当該ストレージデバイスの前記デバイス情報を、所定のタイミングで前記ゲートウェイ装置に送信する送信手段を有すること
を特徴とするストレージシステム。
【請求項１２】
請求項１０記載のストレージシステムであって
前記ストレージデバイス各々のデバイス状態を収集するストレージデバイス収集サーバを、をさらに有し、
前記ストレージデバイス収集サーバは、
前記ストレージデバイス各々の、未使用容量およびコネクション数を含む前記デバイス情報を、所定のタイミングで前記ストレージデバイス各々から収集する収集手段と、
前記収集手段が収集した各デバイス情報を、前記ゲートウェイ装置に送信する送信手段と、を有すること
を特徴とするストレージシステム。
【請求項１３】
請求項１０記載のストレージシステムであって
前記ストレージデバイス各々のデバイス状態を収集するストレージデバイス収集サーバと、前記ストレージデバイス各々を管理するリソース管理サーバと、をさらに有し、
前記ストレージデバイス収集サーバは、
前記ストレージデバイス各々の、未使用容量およびコネクション数を含む前記デバイス情報を、所定のタイミングで前記ストレージデバイス各々から収集する収集手段と、
前記収集手段が収集した各デバイス情報を、前記リソース管理サーバに送信する送信手段と、を有し、
前記リソース管理サーバは、
前記ストレージデバイス収集サーバから前記デバイス情報を受信するデバイス情報受信手段と、
前記ゲートウェイ装置から、Read/Writeデータ量を受信するデータ量受信手段と、前記デバイス情報と前記Read/Writeデータ量とに基づいて、ストレージリソースが不足しているか否かを判別する判別手段と、
ストレージリソースが不足している場合、前記ストレージデバイスにＬＵＮの作成を通知する通知手段と、を有すること
を特徴とするストレージシステム。
【請求項１４】
複数のストレージデバイスとサーバとがＩＰｖ６のＩＰ−ＳＡＮにより接続されたストレージシステムにおいて、ゲートウェイ装置が実行するストレージデバイス選択プログラムであって、
前記ゲートウェイ装置は、前記ストレージデバイス毎に当該ストレージデバイスまでの近さを示すメトリック情報が設定されたルーティングテーブルと、前記ストレージデバイス毎に当該ストレージデバイスのデバイス情報が設定されたストレージ情報テーブルと、処理部と、を有し、
前記処理部に、
前記サーバから、エニキャストアドレスおよびRead/Writeデータ量を含むRead/Write要求情報を受信する要求受信ステップと、
前記ルーティングテーブルを参照し、前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のメトリック情報を特定するとともに、前記ストレージ情報テーブルを参照し、前記Read/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のデバイス情報を特定する特定ステップと、
前記ストレージデバイス各々の前記メトリック情報および前記デバイス情報と、前記Read/Writeデータ量情報と、に基づいてストレージデバイスを選択する選択ステップと、
選択ステップで選択したストレージデバイスに、前記Read/Write要求情報を転送する要求転送ステップと、を実行させること
を特徴とするストレージデバイス選択プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ−ＳＡＮにおけるストレージデバイスの選択技術に関する。
【背景技術】
【０００２】
近年、ストレージ仮想化技術が研究されている。ストレージ仮想化技術は、複数のストレージデバイスを論理的に統合し、サーバからはストレージデバイスの物理的な構造を意識させずにストレージデバイスの利用を可能にするものである。
【０００３】
ストレージ仮想化技術には、例えば、In_Band方式やOut_of_Band方式などがある。In_Band方式では、アプリケーションサーバとストレージデバイスとの間に介在するアプライアンスノードが、アプリケーションサーバに提示する論理ディスク情報と物理ディスク情報とのマッピングを行う。Out_of_Band方式では、データの物理的な格納場所を示すメタデータを管理するメタデータサーバが、アプリケーションサーバからの要求により、データの物理的な格納場所をアプリケーションサーバに通知する。なお、非特許文献１には、ストレージ仮想化技術に関する記載がある。
【非特許文献１】“SNIA”、[online]、［平成１６年６月９日検索］、インターネット＜ＵＲＬ：http://www.snia .org/education/tutorials/fall2003/virtualization/＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のストレージ仮想化技術では、アプリケーションサーバとストレージデバイス間のネットワークのルーティング情報やストレージデバイスの状態が考慮されていなかった。このためＩＰネットワーク上で実現されるＩＰ−ＳＡＮ環境において従来のストレージ仮想化技術を適用する場合、ネットワークの状態によっては著しい応答時間の増大を招く可能性がある。また、ＩＰｖ６網においてＩＰ−ＳＡＮ技術およびストレージ仮想化技術を実現することは、未だ検討されていない。
【０００５】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、ルーティング情報およびストレージデバイス情報を考慮し、より最適なストレージデバイスを選択することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明では、例えば、ＩＰｖ６のＩＰ−ＳＡＮにより接続されたストレージシステムにおけるストレージデバイス選択方法であって、ストレージシステムは、複数のストレージデバイスと、ストレージデバイスに対しデータのRead/Writeを実行するサーバと、ゲートウェイ装置とを有する。そして、ゲートウェイ装置は、ストレージデバイス毎に当該ストレージデバイスまでの近さを示すメトリック情報が設定されたルーティングテーブルと、ストレージデバイス毎に当該ストレージデバイスのデバイス情報が設定されたストレージ情報テーブルと、処理部と、を有する。処理部は、サーバからエニキャストアドレスおよびRead/Writeデータ量を含むRead/Write要求情報を受信する要求受信ステップと、ルーティングテーブルを参照してRead/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のメトリック情報を特定するとともに、ストレージ情報テーブルを参照してRead/Write要求情報で指定されたエニキャストアドレスに割り当てられたストレージデバイス各々のデバイス情報を特定する特定ステップと、ストレージデバイス各々のメトリック情報およびデバイス情報と、Read/Writeデータ量情報とに基づいてストレージデバイスを選択する選択ステップと、選択ステップで選択したストレージデバイスに、Read/Write要求情報を転送する要求転送ステップと、を行う。
【発明の効果】
【０００７】
本発明により、ＩＰ−ＳＡＮを用いて接続されたストレージシステムにおいて、より最適なストレージデバイスの選択し、Read/Writeに要する応答時間をより短縮することができる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について説明する。
【０００９】
図１は、本発明の一実施形態が適用されたストレージシステムの全体構成図である。
【００１０】
図示するストレージシステムは、少なくとも１つのアプリケーションサーバ（以下、「ＡＰサーバ」）１と、少なくとも１つのストレージデバイス２と、少なくと1つのゲートウェイ装置３と、を有する。そして、ＡＰサーバ１各々と、ストレージデバイス２各々とは、ゲートウェイ装置３を介したＩＰ−ＳＡＮ４により接続されている。ＩＰ−ＳＡＮ４は、ＩＰｖ６（Internet Protocol Version 6）を使用したＳＡＮ（Storage Area Network）である。なお、ＩＰ−ＳＡＮ４には、例えば、ＦＣＩＰ、ｉＦＣＰ、ｍＦＣＰ、ｉＳＣＳＩなどの方式を用いることができる。
【００１１】
また、ＡＰサーバ１各々は、ＩＰ−ＳＡＮ４とは異なるＬＡＮ（Local Area Network）５に接続されている。そして、ＡＰサーバ１各々には、デフォルトゲートウェイ装置が設定されているものとする。図示する例では、ＡＰサーバ１ａの場合、ゲートウェイ装置３ａがデフォルトゲートウェイ装置である。
【００１２】
各ＡＰサーバ１は、各種の業務処理を行うことにより、ストレージデバイス２に対してデータの読み込みまたは書き込み（以下、「Read/Write」）を実行する。また、ＡＰサーバ１は、ストレージデバイス２にアクセスする際に、ＩＰｖ６で定義されるエニキャストアドレスを用いるものとする。エニキャストアドレスは、ストレージ仮想化技術を実現するものであって、1つのエニキャストアドレスに対して、少なくとも1つのノード（本実施形態の場合は、ストレージデバイス２）が割り当てられる。各ストレージデバイス２は、各種のデータを記憶する記憶装置である。
【００１３】
ゲートウェイ装置３は、ネットワーク上で、伝送媒体やプロトコルが異なるデータを相互に変換して通信を可能にする装置である。また、各ゲートウェイ装置３は、本ストレージシステムに新たなストレージデバイス２が接続された場合、サービス発見プロトコルにより新たに接続されたストレージデバイス２の発見を行う。そして、ゲートウェイ装置３は、新たに接続されたストレージデバイス２から、ＩＰアドレスおよびストレージ容量などのストレージデバイス情報を受信する。そして、ゲートウェイ装置３は、サービス発見プロトコルにより発見したストレージデバイス２各々から、所定のタイミングで（定期的に）、各ストレージデバイス２の未使用容量などのストレージデバイス情報を収集する。
【００１４】
このようなストレージシステムにおける、Read/Write処理の概要を、以下に説明する。
【００１５】
まず、ＡＰサーバ１ａは、エニキャストアドレスを宛先とするRead/Write要求を、送信する（ａ１）。ゲートウェイ装置３ａ（ＡＰサーバ１ａのデフォルトゲートウェイ装置）は、ＡＰサーバ１ａからRead/Write要求を受信する。そして、ゲートウェイ装置３ａは、後述するストレージデバイス選択処理にしたがって、エニキャストアドレスに割り当てられたストレージデバイス２の中から適切なストレージデバイス２ａ，２ｂを選択し、選択したストレージデバイス２ａ、２ｂにRead/Write実行データを送信する（ａ２）。
【００１６】
次に、ゲートウェイ装置３について、より詳細に説明する。
【００１７】
図２はゲートウェイ装置３の機能構成を示したものである。ゲートウェイ装置３は、要求受付部３１と、ストレージ情報受付部３２と、処理部３３と、記憶部３５と、を有する。要求受付部３１は、各ＡＰサーバ１からRead/write要求を受け付ける。ストレージ情報受付部３２は、ストレージデバイス各々２から、ＩＰアドレス、ストレージ容量、未使用容量などを含むストレージデバイス情報を受け付ける。処理部３３は、要求受付部３１が受け付けたはRead/write要求の宛先となるストレージデバイス２を選択（特定）する。
【００１８】
記憶部３５には、ルーティングテーブル３５１と、ストレージ情報テーブル３５２とが記憶されている。ルーティングテーブル３５１は、経路情報およびメトリック情報が設定されている。なお、ルーティングテーブル３５１については後述する。
【００１９】
ストレージ情報テーブル３５２は、ＩＰ−ＳＡＮ４に接続されたストレージデバイス２各々の各種容量が設定されている。例えば、ストレージ情報テーブル３５２は、ストレージデバイス２毎に、当該ストレージデバイス２の全ストレージ容量と、未使用容量とを有する。全ストレージ容量については、ストレージ情報受付部３２がサービス発見プロトコルにより新たなストレージデバイス２を検知したときに、ストレージデバイス２から収集してストレージ情報テーブル３５２に設定する。未使用容量については、所定のタイミングで、ストレージ情報受付部３２がストレージデバイス２各々から未使用容量を受信し、ストレージ情報テーブル３５２に設定する。
【００２０】
図３は、記憶部３５に記憶されたルーティングテーブル３５１の一例を示した図である。ルーティングテーブル３５１は、ＡＰサーバ１が指定するＩＰアドレス毎にレコードが作成される。なお、図示する例では、ＡＰサーバ１が指定するＩＰアドレスは、エニキャストアドレスであるものとする。
【００２１】
図示するルーティングテーブル３５１のレコードは、サーバが指定するＩＰアドレスおよびアドレス種別（エニキャスト）５１を有する。また、当該レコードは、図示するＩＰアドレスに割り当てられた少なくとも１つの宛先ノード情報５２を有する。
【００２２】
宛先ノード情報５２各々は、宛先ノードＩＰアドレスと、次ノードＩＰアドレスと、メトリック情報と、を有する。宛先ノードＩＰアドレスは、エニキャストアドレスであるＩＰアドレスに割り当てられたノード（ストレージデバイス）のアドレスである。次ノードＩＰアドレスは、ＩＰパケットが次に経由するノード（ルータ）のアドレスである。
【００２３】
メトリック（Metric）情報は、送信元から宛先ノードまでの距離を示すものであり、ルーティングプロトコル（経路制御プロトコル）で使用される数値である。このメトリック情報の数値が小さいほど、宛先ノードまでの距離が短いことを示す。メトリック情報に用いられる指標は、使用するルーティングプロトコルによって異なる。例えば、送信元から送信されたＩＰパケットが宛先ノードに到着するまでにいくつのルータを経由したかを示すホップ数を、メトリック情報として使用することが考えられる。また、ネットワークの最大伝送速度である帯域幅の逆数をメトリック情報として使用することが考えられる。
【００２４】
上記説明した、ＡＰサーバ１およびゲートウェイ装置３は、例えば図４に示すようなＣＰＵ９０１と、メモリ９０２と、外部記憶装置９０３と、入力装置９０４と、出力装置９０５と、他の装置と接続するための通信制御装置９０６と、これらの各装置を接続するバス９０７と、を備えた汎用的なコンピュータシステムを用いることができる。
【００２５】
このコンピュータシステムにおいて、ＣＰＵ９０１がメモリ９０２上にロードされた所定のプログラムを実行することにより、各装置の各機能が実現される。例えば、ＡＰサーバ１およびゲートウェイ装置３の各機能は、ＡＰサーバ１用のプログラムの場合はＡＰサーバ１のＣＰＵ９０１が、そして、ゲートウェイ装置３用のプログラムの場合はゲートウェイ装置３のＣＰＵ９０１が、それぞれ実行することにより実現される。なお、ゲートウェイ装置３の記憶部３５には、ゲートウェイ装置３のメモリ９０２または外部記憶装置９０３が用いられる。また、外部記憶装置９０３、入力装置９０４および出力装置９０５は、必要に応じて備えられるものとする。
【００２６】
次に、図１に示すストレージシステムの処理について説明する。
【００２７】
図５は、ストレージシステムの処理フロー図である。なお、ゲートウェイ装置３は、ＡＰサーバ１各々に、当該ＡＰサーバ１が使用可能なストレージデバイス２に割り当てられたエニキャストアドレスをあらかじめ通知しておくものとする。
【００２８】
まず、ＡＰサーバ１は、ゲートウェイ装置３にストレージデバイス２へのRead/Write要求を送信する（Ｓ１）。なお、Read/Write要求には、エニキャストアドレスであるＩＰアドレス（以下、「宛先ＩＰアドレス」）と、Read/Write実行時の要求データ量とが含まれている。
【００２９】
そして、ゲートウェイ装置３の要求受付部３１は、ＡＰサーバ１からRead/Write要求を受信する。そして、処理部３３は、宛先ＩＰアドレスに割り当てられたストレージデバイス２の中から、所定のストレージデバイスを特定する（Ｓ２）。すなわち、処理部３３は、受信したRead/Write要求に含まれる要求データ量を記憶部３５に記憶する。そして、処理部３３は、記憶部３５に記憶されたルーティングテーブル３５１（図３参照）を読み出し、宛先ＩＰアドレスを有するレコードを特定する。そして、処理部３３は、特定したレコードのアドレスタイプを参照し、エニキャストアドレスであることを確認する。そして、処理部３３は、特定したレコードの宛先ノード情報各々のメトリック情報を取得する。
【００３０】
そして、処理部３３は、記憶部３５に記憶されたストレージ情報テーブル３５２を読み出し、宛先ノード情報各々の宛先ノードＩＰアドレスに対応するストレージデバイス２各々の未使用容量を特定する。そして、処理部３３は、記憶部３５に記憶した要求データ量と、ストレージデバイス２各々のメトリック情報および未使用容量とを用いて、所定のアルゴリズムにより最適なストレージデバイス２を選択（特定）する。なお、処理部３３は、複数の最適なストレージデバイス２を選択することとしてもよい。
【００３１】
例えば、処理部３３は、まずルーティングテーブル３５１を参照し、メトリック情報の値が最も小さい（距離が近い）宛先ノード情報を特定する。そして、処理部３３は、ストレージ情報テーブル３５２を参照し、特定した宛先ノード情報の宛先ノードＩＰアドレスに対応するストレージデバイス２の未使用容量を特定する。そして、処理部３３は、当該未使用容量が、要求データ量より大きい場合は、当該ストレージデバイス２を選択する。
【００３２】
一方、未使用容量が、要求データ量より小さい場合、処理部３３は、ルーティングテーブル３５１を参照し、メトリック情報が次に小さい宛先ノード情報を特定する。そして、処理部３３は、ストレージ情報テーブル３５２を参照し、前回特定した宛先ノード情報と今回特定した宛先ノード情報の未使用容量の合計が要求データ量より大きいか否かを判別する。未使用容量の合計が要求データ量より大きい場合、処理部３３は、当該２つのストレージデバイスを特定する。未使用容量の合計が要求データ量より小さい場合は、処理部３３は、ルーティングテーブル３５１を参照し、メトリック情報が次に小さい宛先ノード情報を特定し、以降同様の処理を行う。
【００３３】
なお、図示する例では、処理部３３は、ストレージデバイスＡ２Ａと、ストレージデバイスＢ２Ｂと、を選択するものとする。複数のストレージデバイス２を選択した場合、処理部３３は、ストレージデバイス２各々のメトリック情報に基づいて、所定の方法（計算式）により要求データ量の配分を算出する。
【００３４】
そして、処理部３３は、選択したストレージデバイス２各々に、ＡＰサーバ１から受信したRead/Write要求を転送する（Ｓ３）。なお、複数のストレージデバイス２を選択した場合、処理部３３は、ＡＰサーバ１から受信したRead/Write要求の要求データ量を前記所定の方法により配分したデータ量に各々更新して、Read/Write要求を転送する。
【００３５】
そして、ストレージデバイス２各々は、ＩＰ−ＳＡＮ４を介して、ゲートウェイ装置３からRead/Write要求を受信する。そして、ストレージデバイス２各々は、Read/Write要求を受諾する受諾メッセージを送信元のゲートウェイ装置３に送信する（Ｓ４）。そして、ゲートウェイ装置３の処理部３３は、ストレージデバイス２各々から受信した受諾メッセージを、ＡＰサーバ１へ送信する（Ｓ５）。これにより、ゲートウェイ装置３を介して、ＡＰサーバ１とストレージデバイス２間でコネクションが確立され、以降のRead/Writeが実行される。なお、ストレージデバイス２各々が送信する受諾メッセージには、当該ストレージデバイスの宛先ノードＩＰアドレス、および、配分された要求データ量と、が含まれているものとする。
【００３６】
ＡＰサーバ１は、ストレージデバイス２各々の受諾メッセージを受信し、ゲートウェイ装置３にRead/Writeを実行するためのデータを送信する（Ｓ６）。そして、ゲートウェイ装置３の処理部３３は、Read/Writeデータ受信し、Ｓ２において選択したストレージデバイス２に受信したRead/Writeデータを送信する（Ｓ７）。なお、選択したストレージデバイス２が複数の場合は、処理部３３は、Read/Writeデータを所定の方法により分割して各ストレージデバイスに送信する。そして、各ストレージデバイス２は、受信したRead/Writeデータをディスクに書き込む（または読み出す）。
【００３７】
なお、ＡＰサーバ１は、Ｓ６においてゲートウェイ装置３を経由せずに、Ｓ２において選択したストレージデバイス２に、直接、Read/Writeデータを送信することとしてもよい。この場合、ＡＰサーバ１は、Ｓ５において受信した受諾メッセージに含まれるストレージデバイスの宛先ノードＩＰアドレス、および、配分された要求データ量に基づいて、ストレージデバイスに直接Read/Writeデータを送信する。
【００３８】
次に、認証処理および暗号化処理について説明する。本実施形態のストレージシステムは、必要に応じて、以下説明する認証処理または暗号化処理を行うものとする。
【００３９】
図６は、認証処理および暗号化処理を模式的に示した図である。
【００４０】
認証処理については、ＡＰサーバ１とゲートウェイ装置３との間（ｃ１）、およびゲートウェイ装置３とストレージデバイス２との間（ｃ２）で、送信者の認証を行う。すなわち、ＡＰサーバ１は、図５のＳ１において、ＡＰサーバ１の秘密鍵を用いて暗号化したデジタル署名を付加したRead/Write要求をゲートウェイ装置３送信する（ｃ１）。デジタル署名は、デジタル文書の正当性を保証するため付加される暗号化された署名情報である。公開鍵暗号方式を応用することにより、デジタル文書の作成者を証明し、かつその文書が改ざんされていないことを保証する。
【００４１】
そして、ゲートウェイ装置３は、ＡＰサーバからのデジタル署名付のRead/Write要求を受信し、Read/Write要求に添付されたデジタル署名をＡＰサーバ１の公開鍵を用いて復号し、正しい内容か否かを判別する。そして、ゲートウェイ装置３は、図５のＳ３において、ストレージデバイス２自身の秘密鍵を用いて暗号化したデジタル署名付のRead/Write要求を、Ｓ２で選択したストレージデバイスに送信する（ｃ２）。
【００４２】
このようなデジタル署名を付加することにより、ＡＰサーバ１とゲートウェイ装置３との間（ｃ１）、およびゲートウェイ装置３とストレージデバイス２との間（ｃ２）で、それぞれ送信者の認証を行うことができ、不正なサーバからストレージデバイスへのアクセスや、データの改ざんを防止することができる。
【００４３】
また、暗号化処理については、ＡＰサーバ１とゲートウェイ装置３との間（ｃ１）、およびゲートウェイ装置３とストレージデバイス２との間（ｃ２）で、メッセージ（データ）の暗号化を行う。すなわち、ＡＰサーバ１は、Read/Write要求の送信時（図５：Ｓ１）に、ゲートウェイ装置３の公開鍵を用いてRead/Write要求を暗号化する。
【００４４】
そして、ゲートウェイ装置３は、ＡＰサーバ１からのRead/Write要求を受信すると、Read/Write要求を自らの秘密鍵により復号する。そして、ゲートウェイ装置３は、図５のＳ３において、ストレージデバイス２の公開鍵を用いてRead/Write要求を暗号化し、Ｓ２で選択したストレージデバイス２に送信する（ｃ２）。そして、暗号化されたRead/Write要求を受信したストレージデバイス２は、自らの秘密鍵を用いてRead/Write要求を復号する。なお、以降の処理（図５：Ｓ４〜Ｓ７）についても、同様に暗号化処理を行う。
【００４５】
このような暗号化されたメッセージを送信することにより、ＡＰサーバ１とゲートウェイ装置３との間（ｃ１）、または、ゲートウェイ装置３とストレージデバイス２との間（ｃ２）での通信途中で、第三者に盗み見られることや、メッセージの改ざんを防止することができる。すなわち、デジタル署名による認証処理および暗号化処理により、より高いセキュリティを確保することができる。
【００４６】
次に、図１に示すストレージシステムが、各ストレージデバイス２の状態情報を収集するストレージデバイス情報収集サーバ６を有する場合について説明する。
【００４７】
図７は、ストレージデバイス情報収集サーバ６を有する場合のストレージシステムの全体構成図である。図７に示すストレージシステムは、ＩＰ−ＳＡＮ４に接続されたストレージデバイス情報収集サーバ６を有する点において、図１に示すストレージシステムと異なる。ストレージデバイス情報収集サーバ６は、ストレージデバイス２各々から、所定のタイミングで、ストレージデバイス情報を収集（受信）する（ｄ１）。そして、ストレージデバイス情報収集サーバ６は、収集したストレージデバイス情報を、ゲートウェイ装置３に送信する（ｄ２）。なお、ストレージデバイス情報は、例えば、コネクション数、ＣＰＵ利用率、未使用容量などである。
【００４８】
そして、ゲートウェイ装置３のストレージ情報受付部３２は、所定のタイミングで、ストレージデバイス情報収集サーバ６からストレージデバイス情報を受信し、ストレージ情報テーブル３５２に記憶する。なお、図１で説明したストレージ情報受付部３２は、ストレージデバイス２各々から未使用容量を含むストレージデバイス情報を受信したが、図７のストレージ情報受付部３２は、ストレージデバイス情報収集サーバ６からストレージデバイス情報を受信する。また、図７のゲートウェイ装置３のストレージ情報テーブル３５２では、ストレージデバイス２各々の未使用容量だけでなく、コネクション数、ＣＰＵ利用率も、さらに有する。
【００４９】
これにより、ゲートウェイ装置３の処理部３３は、ルーティングテーブル３５１のメトリック情報、要求データ量に加え、ストレージデバイス情報（例えば、コネクション数やＣＰＵ使用率等）に基づいて、Read/Write要求の転送先ストレージデバイスを決定することができる。
【００５０】
なお、ストレージデバイス情報収集サーバ６からのストレージデバイス情報の収集は所定のタイミングで行うものとしたが、ゲートウェイ装置３がＡＰサーバ１からのRead/Write要求を受信したときに、ストレージデバイス情報を受信することとしてもよい。すなわち、Read/Write要求を受信したときに、ゲートウェイ装置３のストレージ情報受付部３２は、ストレージデバイス情報収集サーバ６にストレージデバイス情報の収集メッセージを送信する。そして、ストレージデバイス情報収集サーバ６は、収集メッセージを受け付け、各ストレージサーバからストレージデバイス情報を収集し、ゲートウェイ装置３に送信する。
【００５１】
次に、図１に示すストレージシステムが、ストレージデバイス情報収集サーバ６およびリソース管理サーバ７を有する場合について説明する。
【００５２】
図８は、ストレージデバイス情報収集サーバ６およびリソース管理サーバ７を有する場合のストレージシステムの全体構成図である。図８に示すストレージシステムは、ＩＰ−ＳＡＮ４に接続されたストレージデバイス情報収集サーバ６およびリソース管理サーバ７を有する点において、図１に示すストレージシステムと異なる。
【００５３】
なお、図８に示すストレージデバイス情報収集サーバ６は、図７に示すストレージデバイス情報収集サーバ６と同様に、各ストレージデバイス２からストレージデバイス情報を収集する（ｆ１）。また、図８に示すストレージデバイス情報収集サーバ６が各ストレージデバイス２から収集するストレージデバイス情報には、前述のコネクション数、ＣＰＵ利用率および未使用容量だけでなく、ストレージデバイスの新規接続や切断などの接続状況も含むものとする。
【００５４】
そして、リソース管理サーバ７は、ストレージデバイス情報収集サーバ６からストレージデバイス情報を所定のタイミングで定期的に受信する（ｆ２）。そして、リソース管理サーバ７は、各ストレージデバイス２各々のストレージデバイス情報を記憶部（不図示）に記憶する。
【００５５】
また、リソース管理サーバ７は、前記ゲートウェイ装置からRead/Writeデータ量および宛先ノードＩＰアドレス（ストレージデバイスのＩＰアドレス）を受信する（ｅ１）。すなわち、ゲートウェイ装置３は、ＡＰサーバ１からRead/Write要求を受信すると（図５：Ｓ１）、Read/Write要求に含まれるRead/Writeデータ量と、宛先ＩＰアドレスに割り当てされた宛先ノードＩＰアドレスと、をリソース管理サーバ７に送信する。
【００５６】
そして、リソース管理サーバ７は、記憶部に記憶したストレージデバイス毎のストレージデバイス情報と、宛先ＩＰアドレスと、Read/Writeデータ量とに基づいて、ストレージデバイス２のリソースが十分であるか否かを判断する。たとえば、Read/Writeデータ量が、宛先ノードＩＰアドレスに対応する全ストレージデバイスの未使用容量の合計より大きい場合、リソース管理サーバ７は、リソースが不足していると判別する。この場合、リソース管理サーバ７は、各ストレージデバイス２に対してＬＵＮ（Logical Unit Number）作成リクエストを送信する（ｅ２）。ＬＵＮ作成リクエストを受信したストレージデバイス２各々は、ディスクの領域をフォーマットすることにより、新たなＬＵ（Logical Unit）を作成する。これにより、各ストレージデバイス２のリソースが増加する。
【００５７】
以上、本発明の一実施形態を説明した。
【００５８】
本実施形態のストレージシステムによれば、ＩＰｖ６網でのＩＰ−ＳＡＮ技術およびストレージ仮想化技術を実現することができる。
【００５９】
また、本実施形態のゲートウェイ装置３は、ルーティングテーブルに設定されたメトリック情報、ストレージデバイス情報、およびRead/Write要求に含まれる要求データ量にもとづいて、より最適なストレージデバイスを決定することができる。
【００６０】
また、本実施形態のＡＰサーバ１は、ゲートウェイ装置３を用いることにより、適切なRead/Write実行先ストレージデバイスにアクセスでき、Read/Writeに要する応答時間をより短縮することができる。
【００６１】
また、本実施形態のストレージシステムでは、ＡＰサーバ１とストレージデバイス２間において、認証処理またはメッセージの暗号化処理を行うことにより、よりセキュアな通信環境の下でRead/Write処理を実行することができる。
【００６２】
また、本実施形態のストレージデバイス情報収集サーバにより、ストレージデバイスの選択に際して、ストレージデバイスの状態情報をより詳細に反映させたストレージシステムの構築を行うことができる。
【００６３】
また、本実施形態のリソース管理サーバにより、ストレージデバイスの新規接続や接続状態の中断・終了等、ストレージデバイスの状態の変化をゲートウェイ装置が動的に取得し、適切なストレージリソース配分を実施することができる。これにより、ユーザが意識することなく、最適かつ十分なストレージリソースがユーザに対して一元的に提供され、ストレージリソースの提供と性能向上に資することが可能となる。
【００６４】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記の実施形態では、ＡＰサーバ１は、デフォルトゲートウェイ装置が設定されているものとした。しかしながら、ＡＰサーバ１は、デフォルトゲートウェイを設定しないこととしてもよい。この場合、ＡＰサーバ１は、図３に示すルーティングテーブルを有するゲートウェイ装置３の宛先を指定して、Read/Write要求を送信するものとする。
【００６５】
また、本実施形態では、ゲートウェイ装置３のストレージ情報受付部３２または、ストレージデバイス情報収集サーバ６が所定のタイミングでストレージデバイス情報を収集し、ストレージ情報テーブル３５２を更新するものとした。しかしながら、ゲートウェイ装置３３の処理部３３が、ストレージ情報テーブル３５２を更新するものとしてもよい。すなわち、処理部３３は、図５のＳ７の後に、Ｓ２で特定したストレージデバイスの未使用容量から今回送信したデータ量を減算し、ストレージ情報テーブル３５２を更新することとしてもよい。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施形態が適用されたストレージシステムの全体構成図。
【図２】ゲートウェイ装置の機能構成を示す図。
【図３】ルーティングテーブルの一例を示す図。
【図４】ゲートウェイ装置およびＡＰサーバのハードウェア構成例を示す図。
【図５】ストレージシステムの処理フロー図。
【図６】ストレージシステムにおける認証・暗号化機能を模式的に示した図。
【図７】ストレージデバイス情報収集サーバを備えたストレージシステムの全体構成図。
【図８】ストレージデバイス情報収集サーバおよびリソース管理サーバを備えたストレージシステムの全体構成図。
【符号の説明】
【００６７】
１：ＡＰサーバ、２：ストレージデバイス、３：ゲートウェイ装置、３１：要求受付部、３２：ストレージ情報受付部、３３：処理部、３５：記憶部、３５１：ルーティングテーブル、３５２：ストレージ情報テーブル、４：ＩＰ−ＳＡＮ、５：ＬＡＮ、６：ストレージデバイス情報収集サーバ、７：リソース管理サーバ
【図１】
2006146409.tif 000003
【図２】
2006146409.tif 000004
【図３】
2006146409.tif 000005
【図４】
2006146409.tif 000006
【図５】
2006146409.tif 000007
【図６】
2006146409.tif 000008
【図７】
2006146409.tif 000009
【図８】
2006146409.tif 000010