(58)【調査した分野】(Int.Cl.,DB名)
データを入出力するポートを有する複数の情報処理装置と、前記複数の情報処理装置の各情報処理装置に接続する監視装置と、前記監視装置と接続するとともに前記各情報処理装置のポートに対して1つのポートで接続するネットワーク機器とを含む情報処理システムであって、
前記各情報処理装置は、
前記各情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値と、前記複数の情報処理装置のうち他の情報処理装置から取得され、前記他の情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値との比較結果に基づいて、前記各情報処理装置のポートが前記要求に対する前記応答を行えるか否かを判断し、
前記監視装置は、
前記各情報処理装置から、前記各情報処理装置が判断した前記各情報処理装置のポートが要求に対する応答を行えるか否かの判断結果を取得し、
取得した前記各情報処理装置の判断結果に基づいて、第1の情報処理装置へは前記データを送信せず、第2の情報処理装置へは前記データを送信することを決定し、
前記ネットワーク機器は、
前記監視装置から、決定した前記第1の情報処理装置および前記第2の情報処理装置を特定する情報を取得し、
前記第1の情報処理装置への前記データの宛先を前記第2の情報処理装置に変更するとともに、前記第2の情報処理装置からの前記データの送信元を前記第1の情報処理装置に変更する、
ことを特徴とする情報処理システム。
【発明を実施するための形態】
【0012】
以下に図面を参照して、開示の情報処理システム、監視装置、およびネットワーク機器の実施の形態を詳細に説明する。
【0013】
図1は、本実施の形態にかかる情報処理システム100の動作例を示す説明図である。情報処理システム100は、複数の情報処理装置101で構築されるシステムである。情報処理装置101は、例えば、ストレージである。複数のストレージにより、仮想的な1つのストレージを提供することができる。また、情報処理装置101は、ストレージに限らない。例えば、情報処理装置101は、冗長構成をとったWebサーバや、DB(DataBase)サーバ等でもよい。
【0014】
また、複数の情報処理装置101は、外部との通信のために、ネットワーク機器と接続される。このとき、情報処理装置101のポートの最大転送速度より、ネットワーク機器のポートの最大転送速度の方が高い場合がある。この場合、情報処理装置101のポートとネットワーク機器のポートとを1対1で接続すると、ネットワーク機器のポートの転送能力が十分に活用されなくなる。
【0015】
そこで、ネットワーク機器のポートの転送能力を十分に活用するため、ブレイクアウトケーブルを用いて、ネットワーク機器の1つのポートと、複数の情報処理装置101の各情報処理装置101のポートとを接続することが考えられる。これにより、ネットワーク機器の転送能力を十分に活用することができる。ブレイクアウトケーブルは、一方には、ある最大転送速度でデータを転送可能なコネクタがあり、他方には、ある最大転送速度を分割した転送速度でデータを転送可能なコネクタが複数あるケーブルである。ある最大転送速度を分割することは、ある最大転送速度を均等に分割してもよいし、ある最大転送速度を非均等に分割してもよい。ブレイクアウトケーブルは、ポート密度の向上を実現することができる。
【0016】
しかしながら、ブレイクアウトケーブルを用いて、上述した接続方法をとった際に、複数の情報処理装置101のいずれかに不具合が発生すると、他の情報処理装置101にデータが送信できなくなる場合がある。具体的には、ある情報処理装置101に不具合が発生すると、ある情報処理装置101がデータを受信できなくなるため、ネットワーク機器のポートのバッファに、ある情報処理装置101が受信できなくなったデータが蓄積されることになる。ここで、ネットワーク機器のポートのバッファに蓄積できるデータの数には制限がある。該当のバッファに蓄積したデータの数が制限に到達すると、バッファ詰まりが発生し、該当のポートがデータを受け取れなくなるため、他の情報処理装置101にデータが送信できなくなる。このように、ブレイクアウトケーブルを用いると、ネットワーク機器の1つのポートが情報処理装置101間で共有されるため、ある情報処理装置101の問題が、他の情報処理装置101にも波及することになる。そして、複数の情報処理装置101全体のシステムダウンが発生することがある。
【0017】
そして、複数の情報処理装置101全体のシステムダウンが発生すると、管理者等による以下の6つの復旧手順が発生することになる。また、情報処理装置101がストレージであり、複数のストレージにより仮想的な1つのストレージを構築する場合には、以下の8つの復旧手順が発生することになる。1つ目の復旧手順は、問題を起こした情報処理装置101を特定することである。2つ目の復旧手順は、情報処理装置101の接続先ポートを確認することである。3つ目の復旧手順は、問題を起こした情報処理装置101に影響する他の情報処理装置101を確認することである。4つ目の復旧手順は、仮想的な1つのストレージを構築する場合に発生する手順であり、仮想的な1つのストレージの設定を解除することである。5つ目の復旧手順は、問題を起こした情報処理装置101を退避することである。6つ目の復旧手順は、問題を起こした情報処理装置101を修復することである。7つ目の復旧手順は、問題を起こした情報処理装置101に影響する他の情報処理装置101を再配置することである。8つ目の復旧手順は、仮想的な1つのストレージを構築する場合に発生する手順であり、仮想的な1つのストレージを再設定することである。
【0018】
ここで、上述した復旧手順は、1つのブレイクアウトケーブルに対する手順である。そして、データセンタ内で使用されるブレイクアウトケーブルは多数あり、ブレイクアウトケーブルの数分、上述した復旧手順が発生することになり、管理者の作業工数が多くなる。
【0019】
そこで、本実施の形態では、各情報処理装置101がビジーか否かを判断し、ネットワーク機器が、各情報処理装置の判断結果に基づきビジーの情報処理装置101宛てのフレームをビジーでない情報処理装置101宛てに変えることについて説明する。ここで、ビジーとは、要求に対する応答が行えないことを示す。
【0020】
図1を用いて、情報処理システム100の動作例について説明する。
図1では、情報処理システム100は、複数の情報処理装置101として、情報処理装置101−1、2と、ネットワーク機器として、監視装置102と、ネットワーク機器としてL2スイッチ103とを有する。また、L2スイッチ103には、送信装置105が接続する。以下の説明では、同種の要素を区別する場合には、「情報処理装置101−1」、「情報処理装置101−2」のように参照符号を使用し、同種の要素を区別しない場合には、「情報処理装置101」のように参照符号のうちの共通番号だけを使用することがある。
【0021】
そして、L2スイッチ103のポート111は、情報処理装置101−1、2のそれぞれのポート112−1、2と接続する。具体的には、
図1で示すように、ポート111と、ポート112−1、2とは、ブレイクアウトケーブル104により接続される。ブレイクアウトケーブル104は、コネクタ121と、コネクタ122−1、2とを有する。そして、コネクタ121がポート111と接続し、コネクタ122−1がポート112−1と接続し、コネクタ122−2がポート112−2と接続する。
【0022】
監視装置102は、情報処理装置101を監視する装置である。L2スイッチ103は、データとして、イーサネット(登録商標)のフレームを転送する装置である。以下、イーサネットのフレームを、単に「フレーム」と表記する。送信装置105は、情報処理装置101に対してフレームを送信する装置である。
【0023】
図1の(1)で示すように、各情報処理装置101は、自身のポート112のビジーレベルと、自身とは異なる他の情報処理装置101のポート112のビジーレベルとの比較結果に基づいて、自身のポート112が要求に対する応答を行えるか否かを判断する。ここで、ビジーレベルは、要求に対する応答の遅延の程度を示す値である。例えば、要求に対する応答の遅延の程度を示す値は、例えば、要求を送信してから応答があるまでの時間でもよいし、滞留している要求の数でもよいし、前述した時間と数とを掛け合わせた値でもよい。具体的なビジーレベルの算出方法については、
図7で示す。また、各情報処理装置101のポートが要求に対する応答を行えるか否かを、以下、「ビジーフラグ」と表記する。そして、各情報処理装置101のポート112が要求に対する応答を行えないことを、「ビジーフラグON」と表記し、各情報処理装置101のポート112が要求に対する応答を行えることを、「ビジーフラグOFF」と表記する。
【0024】
例えば、各情報処理装置101は、自身のポート112のビジーレベルが、他の情報処理装置101のビジーレベルの平均の2倍以上であれば、ビジーフラグONであると判断し、2倍未満であれば、ビジーフラグOFFであると判断する。
図1の例では、情報処理装置101−1は、自身のポート112−1のビジーフラグがOFFであると判断し、情報処理装置101−2は、自身のポート112−2のビジーフラグがONであると判断する。
【0025】
図1の(2)で示すように、監視装置102は、各情報処理装置101から、各情報処理装置101が判断したビジーフラグの判断結果を取得する。
図1の例では、監視装置102は、情報処理装置101−1からポート112−1のビジーフラグがOFFであり、情報処理装置101−2からポート112−2のビジーフラグがONであることを取得する。
【0026】
次に、
図1の(3)で示すように、監視装置102は、取得した各情報処理装置101の判断結果に基づいて、第1の情報処理装置101と第2の情報処理装置101とを決定する。ここで、第1の情報処理装置101は、複数の情報処理装置101のうち、フレームを送信しない情報処理装置101である。また、第2の情報処理装置101は、第1の情報処理装置101の代わりにフレームを送信する情報処理装置101である。具体的には、監視装置102は、ビジーフラグONとなった情報処理装置101を、第1の情報処理装置101として決定し、ビジーフラグOFFとなった情報処理装置101を、第2の情報処理装置101として決定する。また、第1の情報処理装置101と第2の情報処理装置101とを決定する際には、監視装置102は、第1の情報処理装置101と第2の情報処理装置101とを一意に特定可能な情報を決定してもよい。
【0027】
以降の説明では、第1の情報処理装置101と第2の情報処理装置101とを一意に特定可能な情報として、情報処理装置101のMACアドレスを用いる。そして、第1の情報処理装置101を特定する情報を、第1の情報処理装置101がビジーとなっており、送る対象がフレームであることから、「ビジー状態MACアドレス」と記載する。また、第1の情報処理装置101を特定する情報を、「変更先MACアドレス」と記載する。
図1の説明では、説明の簡略化のため、情報処理装置101の参照符号をMACアドレスとして用いる。
【0028】
図1の例では、監視装置102は、ビジー状態MACアドレスを、情報処理装置101−2のMACアドレスとして決定し、変更先MACアドレスを情報処理装置101−1のMACアドレスとして決定する。
【0029】
そして、
図1の(4)で示すように、L2スイッチ103は、決定した第1の情報処理装置101および第2の情報処理装置101を特定する情報を取得する。
図1の例では、L2スイッチ103は、ビジー状態MACアドレスが情報処理装置101−2のMACアドレスであり、変更先MACアドレスが情報処理装置101−2のMACアドレスであることを取得する。次に、
図1の(5)で示すように、L2スイッチ103は、第1の情報処理装置101を宛先とするフレームの宛先を第2の情報処理装置101に変更する。また、L2スイッチ103は、第2の情報処理装置101を送信元とするフレームの送信元を第1の情報処理装置101に変更する。第1の情報処理装置101を宛先とするフレームの宛先を第2の情報処理装置101に変更することにより、ビジー状態となった情報処理装置101にフレームを送信しないようにできる。また、第2の情報処理装置101を送信元とするフレームは、上述した宛先を変更したフレームに対する応答となるフレームである。従って、第2の情報処理装置101を送信元とするフレームの送信元を第1の情報処理装置101に変更することにより、送信装置105に、ビジー状態となった第1の情報処理装置101からのフレームであると認識させることができる。これにより、送信装置105は、上述した送信元を変更したフレームが、上述した宛先を変更したフレームの応答であると正しく判断することができる。
【0030】
図1の例では、送信装置105が、情報処理装置101−2を宛先とするフレームFr1をL2スイッチ103に送信したとする。フレームFr1を受け付けたL2スイッチ103は、フレームFr1の宛先がビジー状態MACアドレスであるため、変更先MACアドレスに変更する。また、情報処理装置101−1が、送信装置105を宛先とするフレームFr2をL2スイッチ103に送信したとする。フレームFr2を受け付けたL2スイッチ103は、フレームFr2の送信先が変更先MACアドレスであるため、ビジー状態MACアドレスに変更する。
図1で示す太い矢印について、フレームFr1に関しては、実線が、宛先変更後のフレームFr1の通信経路を示し、点線が、宛先変更前のフレームFr1の通信経路を示す。また、フレームFr2に関しては、送信装置105がフレームFr2を受け付けた際に、実線が、送信装置105が想定するフレームFr2の通信経路を示し、点線が、実施のフレームFr2の通信経路を示す。
【0031】
以上のように、情報処理システム100は、ビジー状態となった情報処理装置101にフレームを送信しないようにする。これにより、ポート111のバッファにフレームが滞留しにくくなり、複数の情報処理装置101全体のシステムダウンの発生を抑制することができる。次に、情報処理システム100を、ストレージシステム200に適用した例を、
図2を用いて説明する。
【0032】
図2は、ストレージシステム200の構成例を示す説明図である。ストレージシステム200は、L2スイッチ201と、ブレイクアウトケーブル202と、監視装置203と、ストレージ204−1〜4と、操作端末211と、サーバ212とを有する。L2スイッチ201は、操作端末211とサーバ212とに接続する。さらに、L2スイッチ201は、Ether制御バスを介して監視装置203と接続する。さらに、L2スイッチ201は、ブレイクアウトケーブル202を介してストレージ204−1〜4と接続する。また、監視装置203は、監視バスを介してストレージ204−1〜4と接続する。また、ストレージ204−1〜4は、スイッチ206を介してインターコネクトされる。
【0033】
ストレージ204は、
図1で示した情報処理装置101に相当する。また、監視装置203は、
図1で示した監視装置102に相当する。また、L2スイッチ201は、
図1で示したL2スイッチ103に相当する。また、ブレイクアウトケーブル202は、ブレイクアウトケーブル104に相当する。また、サーバ212は、送信装置105に相当する。
【0034】
L2スイッチ201は、イーサネットのフレームを転送する装置である。例えば、L2スイッチ201は、サーバ212から受信したフレームを、複数のストレージ204のいずれかに転送する。
【0035】
ブレイクアウトケーブル202は、装置間を接続するケーブルであって、1対多の接続を行うケーブルである。
図2で示すブレイクアウトケーブル202は、L2スイッチ201とは40[Gbps]のコネクタ221により接続しており、ストレージ204−1〜4とは10[Gbps]のコネクタ222−1〜4によりそれぞれ接続する。
【0036】
監視装置203は、ストレージ204−1〜4を監視する。ストレージ204−1〜4は、仮想ストレージ205を構築する。これにより、サーバ212は、ストレージ204−1〜4を、一つのストレージとして扱うことができる。
【0037】
操作端末211は、ネットワーク管理者によって操作される端末である。サーバ212は、ストレージ204を利用するサーバである。例えば、ストレージ204は、Webサーバ、DBサーバである。
【0038】
図3は、L2スイッチ201のハードウェア構成例を示す説明図である。L2スイッチ201は、CPU(Central Processing Unit)301と、メモリ302と、Switch LSI(Large Scale Integration)303と、ポート304−1、2とを含む。
【0039】
CPU301は、L2スイッチ201の全体の制御を司る演算処理装置である。メモリ302は、CPU301で動作するプログラムを記憶する不揮発メモリや、CPU301のワークエリアとして使用される揮発性メモリである。Switch LSI303は、ACL(Access Control List)機能を有する集積回路である。ポート304は、接続された装置との間でデータの入出力を行う。
図3の例では、ポート304−1は、サーバ212と接続し、ポート304−2は、ブレイクアウトケーブル202を介してストレージ204と接続する。
【0040】
図4は、監視装置203、ストレージ204、サーバ212のハードウェア構成例を示す説明図である。なお、監視装置203、ストレージ204、およびサーバ212はいずれも同様のハードウェア構成であるため、以下において、監視装置203について説明することとし、ストレージ204、サーバ212についての説明を適宜省略することとする。
【0041】
図4において、監視装置203は、CPU401と、ROM(Read−Only Memory)402と、RAM(Random Access Memory)403と、を含む。また、監視装置203は、ディスクドライブ404およびディスク405と、通信インターフェース406と、を含む。また、CPU401〜ディスクドライブ404、通信インターフェース406はバス407によってそれぞれ接続される。
【0042】
CPU401は、監視装置203の全体の制御を司る演算処理装置である。ROM402は、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。RAM403は、CPU401のワークエリアとして使用される揮発性メモリである。
【0043】
ディスクドライブ404は、CPU401の制御に従ってディスク405に対するデータのリードおよびライトを制御する制御装置である。ディスクドライブ404には、例えば、磁気ディスクドライブ、光ディスクドライブ、ソリッドステートドライブなどを採用することができる。ディスク405は、ディスクドライブ404の制御で書き込まれたデータを記憶する不揮発性メモリである。例えばディスクドライブ404が磁気ディスクドライブである場合、ディスク405には、磁気ディスクを採用することができる。また、ディスクドライブ404が光ディスクドライブである場合、ディスク405には、光ディスクを採用することができる。また、ディスクドライブ404がソリッドステートドライブである場合、ディスク405には、半導体素子によって形成された半導体メモリ、いわゆる半導体ディスクを採用することができる。
【0044】
通信インターフェース406は、ネットワークと内部のインターフェースを司り、他の装置からのデータの入出力を行うポート411を制御する制御装置である。具体的に、通信インターフェース406は、通信回線を通じてネットワークを介して他の装置に接続される。通信インターフェース406には、例えば、モデムやLANアダプタなどを採用することができる。ここで、監視装置203の通信インターフェース406は、Ether制御バスを介してL2スイッチ201と接続し、監視バスを介して、それぞれのストレージ204に接続する。ここで、ストレージ204のポート411が、ブレイクアウトケーブル202を介してL2スイッチ201と接続する。従って、ポート411は、
図1で示したポート112に相当する。
【0045】
また、監視装置203の管理者が、監視装置203を直接操作する場合、監視装置203は、ディスプレイ、キーボード、マウスといったハードウェアを有してもよい。
【0046】
図5は、操作端末211のハードウェア構成例を示す説明図である。操作端末211は、CPU501と、ROM502と、RAM503と、ディスクドライブ504と、ディスク505と、通信インターフェース506とを含む。さらに、操作端末211は、ディスプレイ507と、キーボード508と、マウス509と、機器接続インターフェース510とを含む。また、CPU501〜ディスクドライブ504と、通信インターフェース506〜機器接続インターフェース510とは、バス511によってそれぞれ接続される。
【0047】
CPU501は、操作端末211の全体の制御を司る演算処理装置である。ROM502は、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。RAM503は、CPU501のワークエリアとして使用される揮発性メモリである。
【0048】
ディスクドライブ504は、CPU501の制御に従ってディスク505に対するデータのリードおよびライトを制御する制御装置である。ディスクドライブ504には、例えば、磁気ディスクドライブ、光ディスクドライブ、ソリッドステートドライブなどを採用することができる。ディスク505は、ディスクドライブ504の制御で書き込まれたデータを記憶する不揮発性メモリである。例えばディスクドライブ504が磁気ディスクドライブである場合、ディスク505には、磁気ディスクを採用することができる。また、ディスクドライブ504が光ディスクドライブである場合、ディスク505には、光ディスクを採用することができる。また、ディスクドライブ504がソリッドステートドライブである場合、ディスク505には、半導体ディスクを採用することができる。
【0049】
通信インターフェース506は、ネットワークと内部のインターフェースを司り、外部装置からのデータの入出力を制御する制御装置である。具体的に、通信インターフェース506は、通信回線を通じてネットワークを介して他の装置に接続される。通信インターフェース506には、例えば、モデムやLANアダプタなどを採用することができる。
【0050】
ディスプレイ507は、マウスカーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する装置である。ディスプレイ507には、例えば、CRT(Cathode Ray Tube)、TFT(Thin Film Transistor)液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【0051】
キーボード508は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う装置である。また、キーボード508は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス509は、マウスカーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う装置である。マウス509は、ポインティングデバイスとして同様に機能を有するものであれば、トラックボールやジョイスティックなどであってもよい。
【0052】
機器接続インターフェース510は、操作端末211と周辺機器とを接続し、接続した周辺機器を制御する制御装置である。例えば、機器接続インターフェース510は、USB(Universal Serial Bus)等を採用することができる。そして、機器接続インターフェース510には、例えば、機器接続インターフェース510がUSBである場合にはUSBフラッシュドライブ521や、メモリカードリーダライタ522を接続することができる。
【0053】
USBフラッシュドライブ521は、電力を供給しなくてもデータを保持可能な不揮発性の半導体メモリであるフラッシュメモリを内蔵し、フラッシュメモリの制御および機器接続インターフェース510との通信を行うドライブ装置を含めた装置である。メモリカードリーダライタ522は、メモリカード523に対するデータのリードおよびライトを制御する制御装置である。メモリカード523は、カード型の記録媒体である。メモリカード523には、フラッシュメモリが内蔵される。
【0054】
図6は、ブレイクアウトケーブル202の外観の一例を示す説明図である。
図6で示すように、ブレイクアウトケーブル202は、一方には、1つのコネクタ221があり、他方には、複数のコネクタ222を有する。次に、ストレージシステム200の機能構成例について、
図7で示す。
【0055】
図7は、ストレージシステム200の機能構成例を示す説明図である。監視装置203は、制御部701と、記憶部702とを有する。L2スイッチ201は、制御部703と、ACL部704とを有する。ストレージ204は、制御部705と、記憶部706と、リンクアップ検知部761とを有する。制御部701、制御部703、制御部705は、記憶装置に記憶されたプログラムを、それぞれ、CPU401、CPU301、CPU401が実行することにより、各部の機能を実現する。記憶装置とは、具体的には、それぞれ、制御部701がRAM403、ディスク405であり、制御部703がメモリ302であり、制御部705がRAM403、ディスク405である。また、制御部701の処理結果は、RAM403、CPU401のレジスタやキャッシュメモリ等に格納される。同様に、制御部703の処理結果は、メモリ302、CPU301のレジスタやキャッシュメモリ等に格納される。同様に、制御部705の処理結果は、RAM403、CPU401のレジスタやキャッシュメモリ等に格納される。
【0056】
そして、制御部701は、フロー制御部711を有する。制御部703は、MIB(Management Information Base)値処理部731と、フレーム処理部732とを有する。制御部705は、ビジー状態判断部741と、データ再配置部742とを有する。
【0057】
記憶部702は、例えば、RAM403、ディスク405等である。記憶部702は、MACアドレス保存メモリ721と、監視テーブル722と、MIB値記録メモリ723とを有する。MACアドレス保存メモリ721には、各ストレージ204のMACアドレスが登録される。監視テーブル722の記憶領域には、各ストレージ204のビジー状態が格納される。MIB値記録メモリ723には、MIB値が格納される。MIB値は、ビジー状態がONとなったストレージ204のMACアドレスの値と、変更先のMACアドレスの値とを有する。
【0058】
ACL部704は、Switch LSI303によって実現される機能である。ACL部704は、変更部733を有する。
【0059】
記憶部706は、例えば、RAM403、ディスク405等である。記憶部706は、ビジー情報保存メモリ751と、データ752とを有する。ビジー情報保存メモリ751には、各ストレージ204のビジーレベルと、ビジーフラグとが格納される。データ752は、インターコネクトによって各ストレージ204の間で共有されるデータである。リンクアップ検知部761は、自身の通信インターフェース406のポートがリンクアップしたか否かを検知する。例えば、リンクアップ検知部761は、CPU401が、通信インターフェース406の制御レジスタを参照することにより実現される機能である。
【0060】
次に、制御部701、制御部703、制御部705内の各機能部について、説明のし易い順に説明を行う。ビジー状態判断部741は、自身のポート411のビジーレベルと、複数のストレージ204のうち各ストレージ204とは異なる他のストレージ204のポート411のビジーレベルとの比較結果に基づいて、自身のポート411のビジーフラグを判断する。ここで、ビジーレベルは、
図1で示したように、例えば、要求を送信してから応答があるまでの時間と、滞留している要求の数とを掛け合わせた値で算出される。
【0061】
例えば、あるストレージ204において、要求を送信してから応答があるまでの時間として、I/OリクエストWAIT時間が38秒であり、滞留している要求の数としてI/O滞留数が、10個であるとする。この場合、ビジー状態判断部741は、ビジーレベルを、380[秒・個]と算出する。また、別のストレージ204において、I/OリクエストWAIT時間が5秒であり、滞留している要求の数としてI/O滞留数が、1個であるとする。この場合、ビジー状態判断部741は、ビジーレベルを、5[秒・個]と算出する。そして、あるストレージ204のビジー状態判断部741は、自身のポート411と、別のストレージ204のポート411のビジーレベルとが、それぞれ、380[秒・個]、5[秒・個]であり、380×50%>5であるから、ビジーフラグONと判断する。
【0062】
フロー制御部711は、各ストレージ204から、各ストレージ204が判断した各ストレージ204のポート411のビジーフラグの判断結果を取得する。そして、フロー制御部711は、取得した各ストレージ204の判断結果に基づいて、ビジー状態MACアドレスと変更先MACアドレスとを決定する。
【0063】
また、フロー制御部711は、サーバ212から、複数のストレージ204への要求の種別を取得し、取得した各ストレージ204の判断結果と要求の種別とに基づいて、ビジー状態MACアドレスと変更先MACアドレスとを決定してもよい。例えば、各ストレージ204の判断結果のうちビジーフラグONを示す判断結果があり、かつ、要求の種別が書き込み要求であるとする。この場合、フロー制御部711は、ビジーフラグONを示す判断結果に対応するストレージ204のMACアドレスをビジー状態MACアドレスとして決定する。また、フロー制御部711は、ビジーフラグOFFを示す判断結果に対応するストレージ204のMACアドレスを変更先MACアドレスとして決定する。
【0064】
また、例えば、サーバ212は、複数のストレージ204のうち、読み出し要求の対象となるデータ752を記憶する読み出し先ストレージ204を特定する情報を記憶してもよい。この場合、フロー制御部711は、各ストレージ204の判断結果のうちビジーフラグONを示す判断結果があり、かつ、要求の種別が読み出し要求である場合、サーバ212から、読み出し先ストレージ204を特定する情報を取得する。そして、フロー制御部711は、ビジーフラグONを示す判断結果に対応するストレージ204のMACアドレスをビジー状態MACアドレスとして決定する。さらに、フロー制御部711は、読み出し先ストレージ204であって、かつ、ビジーフラグOFFを示す判断結果に対応するストレージ204のMACアドレスを変更先MACアドレスとして決定する。
【0065】
また、フロー制御部711は、読み出し先ストレージ204であって、かつ、ビジーフラグOFFを示す判断結果に対応するストレージ204がない場合、各ストレージ204に、読み出し要求の対象となるデータ752の再配置を指示する。指示を受け付けた場合、データ再配置部742が、データ752の再配置を実行する。そして、再配置の指示後に、フロー制御部711は、ビジーフラグONを示す判断結果に対応するストレージ204のMACアドレスをビジー状態MACアドレスとして決定する。さらに、フロー制御部711は、ビジーフラグOFFを示す判断結果に対応するストレージ204のMACアドレスを変更先MACアドレスとして決定する。
【0066】
MIB値処理部731は、監視装置203から、フロー制御部711が決定したビジー状態MACアドレスおよび変更先MACアドレスを取得する。そして、MIB値処理部731は、ビジー状態MACアドレスを宛先とするフレームの宛先を変更先MACアドレスに変更するとともに、変更先MACアドレスを送信元とするデータの送信元をビジー状態MACアドレスに変換する指示を、変更部733に送信する。
【0067】
変更部733は、MIB値処理部731から指示を受けた後、フレームを受け付けた場合、フレーム処理部732にSourceMACアドレスとDestinationMACアドレスの解析をさせる。そして、変更部733は、MIB値処理部731からの指示に従って、フレームの宛先や送信元を変更する。
【0068】
また、MACアドレス保存メモリ721は、各ストレージ204が記憶する仮想ストレージ識別情報を各ストレージ204に対応付けて記憶してもよい。仮想ストレージ識別情報は、仮想ストレージ205を識別する識別情報である。仮想ストレージ識別情報を、以下、「システムID」と表記する。この場合、ストレージ204は、自身のシステムIDを記憶する。ビジー状態判断部741は、自身のポート411のビジーレベルと、自身が記憶するシステムIDと同一の値のシステムIDを記憶する他のストレージ204のポート411のビジーレベルとの比較結果に基づいて、自身のポート411のビジーフラグを判断する。そして、フロー制御部711は、取得した各ストレージ204の判断結果に基づいて、ビジー状態MACアドレスと変更先MACアドレスとを、システムIDに対応して決定する。次に、情報処理システム100の各装置の動作について、
図8〜
図14を用いて説明する。
【0069】
(操作端末211の動作の説明)
操作端末211は、ネットワーク管理者の操作によって操作端末が監視する監視対象のストレージ204に関する情報を受け付ける。ストレージに関する情報は、ストレージ204のMACアドレスと、システムIDである。操作端末211は、監視装置203にMACアドレスとシステムIDとを送信する。監視装置203は、同一のシステムIDの中で、フレームの転送制御を行う。
【0070】
(監視装置203の動作の説明)
監視装置203は、操作端末211から受け付けた監視対象のストレージ204のMACアドレスを監視する。監視の一つとして、監視装置203は、監視対象のストレージ204に対応するビジーフラグを定期的に確認する。監視装置203は、監視対象のストレージ204の各ストレージ204のビジー状態を、監視テーブル722を用いて管理する。そして、監視装置203は、監視テーブル722とビジーフラグとの組み合わせから、監視装置203が行う処理を決定する。監視テーブル722とビジーフラグとの組み合わせに応じた監視装置203の処理について、
図8を用いて説明する。
【0071】
図8は、監視テーブル722とビジーフラグとの組み合わせに応じた監視装置203の処理の一例を示す説明図である。
図8に示す表800は、監視テーブル722とビジーフラグとの組み合わせに応じた監視装置203の処理の一覧を示す。
図8に示す表800は、レコード801〜804を有する。
【0072】
レコード801は、ビジーフラグがONであり、監視テーブル722のビジー状態がOFFの場合、監視装置203が、ビジー状態をONに変更後、ビジー処理に移行することを示す。ビジー処理については、
図9で説明する。レコード802は、ビジーフラグがONであり、監視テーブル722のビジー状態がONの場合、監視装置203が、ビジー処理に移行することを示す。
【0073】
レコード803は、ビジーフラグがOFFであり、監視テーブル722のビジー状態がOFFの場合、監視装置203が、処理しないことを示す。レコード804は、ビジーフラグがOFFであり、監視テーブル722のビジー状態がONの場合、監視装置203が、ビジー状態をOFFに変更後、ビジー処理を終了することを示す。次に、ビジー処理の一例について、
図9を用いて説明する。
【0074】
図9は、ビジー処理の一例を示す説明図である。
図9に示す表900は、アクセスの種別と、ビジー状態にないストレージにおけるデータの有無との組み合わせに応じたビジー処理の内容を示す。
図9に示す表900は、レコード901〜903を有する。
【0075】
レコード901は、アクセスの種別が読み出し要求であり、ビジー状態にないストレージにおけるデータの有無が「あり」である場合、監視装置203が、ビジー処理として、MIB値でフレームの転送制御を行うことを示す。レコード902は、アクセスの種別が読み出し要求であり、ビジー状態にないストレージ204におけるデータの有無が「なし」である場合の監視装置203のビジー処理を示す。この場合、監視装置203が、ビジー処理として、ストレージ204にユーザデータの再配置を指示し、MIB値でフレームの転送制御を行う。ここで、ストレージ204にデータ752の再配置の指示とは、ビジーフラグがOFFのストレージ204に対して、インターコネクトを使用したデータの移動による再配置を指示することである。これにより、ビジーフラグがONとなったストレージ204だけに格納されていたデータ752も、他のストレージ204から読み出すことができるようになる。
【0076】
レコード903は、アクセスの種別が書き込み要求である場合、監視装置203が、ビジー処理として、MIB値でフレームの転送制御を行うことを示す。監視装置203の処理を示すフローチャートを、
図10〜
図12で示す。
【0077】
(サーバ212の動作の説明)
サーバ212は、アクセスの詳細や、データの配置場所についての情報を、監視装置203に提供する。
【0078】
(L2スイッチ201の動作の説明)
L2スイッチ201は、監視装置203から提供されるMIB値から、フレームのSourceMACアドレスとDestinationMACアドレスの変更を行う。定期的にポーリングされるMIB値が、ビジー状態ONを示す場合、L2スイッチ201は、MIB値から、変更すべきフレームのSourceMACアドレスとDestinationMACアドレスを取得する。そして、L2スイッチ201は、SourceMACアドレスとDestinationMACアドレスとの変更処理を行う。変更すべきフレームとは、DestinationMACアドレスがビジー状態MACアドレスとなるフレームと、SourceMACアドレスが変更先MACアドレスとなるフレームとである。また、L2スイッチ201は、MIB値がビジー状態OFFを契機に、SourceMACアドレスとDestinationMACアドレスとの変更処理を終了する。L2スイッチ201の処理を示すフローチャートを、
図13、
図14で示す。
【0079】
(ストレージ204の動作の説明)
ストレージ204は、監視装置203から提供されるシステムIDによって、本実施の形態にかかる処理を行うか否かの判断を行う。通知されたシステムIDが既に監視対象としてストレージ204に登録されている場合、複数のストレージ204で1つの仮想のストレージ204に見せていると判断し、ストレージ204は、本実施の形態にかかる処理に移行する。通知されたシステムIDが監視対象としてストレージ204に登録されていない場合、ストレージ204は、本実施の形態にかかる処理を行わない。
【0080】
本実施の形態にかかる処理に移行すると、ストレージ204は、監視対象のポート411の状態を取得し、取得した状態がオフライン状態を示す場合、ビジーフラグをOFFに切り替え、処理を終了する。
【0081】
一方、監視対象のポート411がオンライン状態、すなわち、リンクアップしている場合、ストレージ204は、I/OリクエストWAIT時間と、I/O滞留数とを取得し、取得した情報からビジーレベルを算出する。例えば、ストレージ204は、I/OリクエストWAIT時間と、I/O滞留数とを乗じた値を、ビジーレベルとして算出する。ストレージ204は、計算したビジーレベルを、ビジー情報保存メモリ751に格納する。
【0082】
ビジーレベルの算出が終わると、ストレージ204は、自身のシステムIDと同一のシステムIDを有する他のストレージ204のビジー情報保存メモリ751からビジーレベルを取得し、自身のビジーレベルと比較する。自身のビジーレベルが他ストレージ204の平均の2倍以上の場合、ストレージ204は、監視対象のポート411のビジーフラグをONに設定する。一方、自身のビジーレベルが他ストレージ204の平均の2倍未満の場合、ストレージ204は、監視対象のポート411のビジーフラグをOFFに設定する。他ストレージ204との比較により、ストレージシステム200は、特出して性能劣化が起きているストレージ204に対してだけビジーフラグを操作することができる。ストレージ204の処理を示すフローチャートを、
図15で示す。
【0083】
次に、情報処理システム100の各装置の処理について、
図10〜
図15を用いて説明する。
【0084】
図10は、監視装置203の処理手順の一例を示すフローチャートである。監視装置203は、操作端末から、監視するストレージ204のMACアドレスとシステムIDとを受け付ける(ステップS1001)。次に、監視装置203は、監視するストレージ204のMACアドレスを、MACアドレス保存メモリ721に記憶する(ステップS1002)。そして、監視装置203は、ビジーフラグのポーリングを開始する(ステップS1003)。監視装置203は、ストレージ204のビジー情報保存メモリ751から、ストレージ204のビジーフラグを取得する(ステップS1004)。次に、監視装置203は、取得したビジーフラグがONか否かを判断する(ステップS1005)。
【0085】
取得したビジーフラグがONである場合(ステップS1005:Yes)、監視装置203は、監視テーブル722を参照して、ビジーフラグがONとなったストレージ204のポート411がビジー状態中か否かを判断する(ステップS1006)。ビジーフラグがONとなったストレージ204のポート411がビジー状態中でない場合(ステップS1006:No)、監視装置203は、ビジーフラグONビジー状態OFF時のビジー処理を実行する(ステップS1007)。ビジーフラグONビジー状態OFF時のビジー処理については、
図11で説明する。ステップS1007の処理終了後、または、ビジーフラグがONとなったストレージ204のポート411がビジー状態中である場合(ステップS1006:Yes)、監視装置203は、ステップS1004の処理に移行する。
【0086】
一方、取得したビジーフラグがOFFである場合(ステップS1005:No)、監視装置203は、ビジーフラグがOFFとなったストレージ204のポート411がビジー状態中か否かを判断する(ステップS1008)。ビジーフラグがOFFとなったストレージ204のポート411がビジー状態中である場合(ステップS1008:Yes)、監視装置203は、ビジーフラグOFFビジー状態ON時のビジー処理を実行する(ステップS1009)。ビジーフラグOFFビジー状態ON時のビジー処理については、
図13で説明する。ステップS1009の処理終了後、または、ビジーフラグがOFFとなったストレージ204のポート411がビジー状態中でない場合(ステップS1008:No)、監視装置203は、ステップS1004の処理に移行する。
【0087】
図11は、ビジーフラグONビジー状態OFF時のビジー処理手順の一例を示すフローチャートである。ビジーフラグONビジー状態OFF時のビジー処理は、レコード801で示した処理に相当する。
【0088】
監視装置203は、監視テーブル722内における、ビジーフラグがONとなったストレージ204のポート411のビジー状態をONに変更する(ステップS1101)。次に、監視装置203は、
サーバ212がストレージ204にアクセスする際、ストレージ204に対するアクセスの種別
(書き込み要求または読み出し要求)をサーバ212から取得する(ステップS1102)。そして、監視装置203は、アクセスの種別が書き込み要求か否かを判断する(ステップS1103)。アクセスの種別が読み出し要求である場合(ステップS1103:No)、監視装置203は、サーバから、読み出し先を取得する(ステップS1104)。ここで、読み出し先とは、具体的には、読み出し先となるストレージ204を特定する情報である。ストレージ204を特定する情報は、例えば、ストレージ204のポート411のMACアドレスである。そして、監視装置203は、取得した読み出し先がビジー状態のポート411だけか否かを判断する(ステップS1105)。
【0089】
取得した読み出し先がビジー状態のポート411だけである場合(ステップS1105:Yes)、監視装置203は、ストレージ204に、データ752の再配置を指示する(ステップS1106)。指示を受けたストレージ204は、データ752の再配置を実行する。
【0090】
ステップS1106の処理終了後、または、アクセスの種別が書き込み要求である場合(ステップS1103:Yes)、または、取得した読み出し先がビジー状態のポート411だけではない場合(ステップS1105:No)、監視装置203は、監視テーブル722を参照して、ビジー状態ではないポート411を確認する(ステップS1107)。そして、監視装置203は、MACアドレス保存メモリ721を参照して、ビジー状態となったポート411のMACアドレスをビジー状態MACアドレスとしてMIB値記録メモリ723に登録する(ステップS1108)。また、監視装置203は、MACアドレス保存メモリ721を参照して、ビジー状態ではないポート411のMACアドレスを変更先MACアドレスとしてMIB値記録メモリ723に登録する(ステップS1109)。ステップS1109の処理終了後、監視装置203は、ビジーフラグONビジー状態OFF時のビジー処理を終了する。
【0091】
図12は、ビジーフラグOFFビジー状態ON時のビジー処理手順の一例を示すフローチャートである。ビジーフラグOFFビジー状態ON時のビジー処理は、レコード804で示した処理に相当する。
【0092】
監視装置203は、ビジーフラグがOFFとなったストレージ204のポート411のビジー状態をOFFに変更する(ステップS1201)。次に、監視装置203は、MACアドレス保存メモリ721を参照して、MIB値記録メモリ723に登録したビジー状態MACアドレスを解除する(ステップS1202)。また、監視装置203は、MACアドレス保存メモリ721を参照して、MIB値記録メモリ723に登録した変更先MACアドレスを解除する(ステップS1203)。ステップS1203の処理終了後、監視装置203は、ビジーフラグOFFビジー状態ON時のビジー処理を終了する。
【0093】
図13は、L2スイッチ201内制御部703の処理手順の一例を示すフローチャートである。制御部703は、MIB値のポーリングを開始する(ステップS1301)。そして、制御部703は、監視装置203のMIB値記録メモリ723を参照して、MIB値がビジーを示すか否かを判断する(ステップS1302)。ここで、MIB値は、ビジー状態がONとなったストレージ204がある際に、該当のストレージ204のMACアドレスの値と、変更先のMACアドレスの値とを有する。従って、MIB値がビジーを示すとは、ビジー状態がONとなったストレージ204のMACアドレスが登録されている状態を示す。
【0094】
MIB値がビジーを示す場合(ステップS1302:Yes)、制御部703は、監視装置203のMIB値記録メモリ723から、ビジー状態MACアドレスと、変更先MACアドレスとを取得する(ステップS1303)。そして、制御部703は、ACL部704に、DestinationMACアドレスとSourceMACアドレスとの変更処理開始を指示する(ステップS1304)。ステップS1304の処理終了後、制御部703は、ステップS1302の処理に移行する。
【0095】
一方、MIB値がビジーを示さない場合(ステップS1302:No)、制御部703は、ACL部704に、DestinationMACアドレスとSourceMACアドレスとの変更処理終了を指示する(ステップS1305)。ステップS1305の処理終了後、制御部703は、ステップS1302の処理に移行する。
【0096】
図14は、L2スイッチ201内ACL部704の処理手順の一例を示すフローチャートである。ACL部704は、制御部703から、変更処理開始を受け付けており、かつ、変更処理終了を受け付けていないか否かを判断する(ステップS1401)。変更処理開始を受け付けており、かつ、変更処理終了を受け付けていない場合(ステップS1401:Yes)、ACL部704は、受け付けたフレームを解析することにより、受け付けたフレームのDestinationMACアドレスと、SourceMACアドレスとを取得する(ステップS1402)。そして、ACL部704は、受け付けたフレームのDestinationMACアドレスがビジー状態MACアドレスか否かを判断する(ステップS1403)。受け付けたフレームのDestinationMACアドレスがビジー状態MACアドレスである場合(ステップS1403:Yes)、ACL部704は、受け付けたフレームのDestinationMACアドレスを、変更先MACアドレスに変更する(ステップS1404)。
【0097】
ステップS1404の処理終了後、または、受け付けたフレームのDestinationMACアドレスがビジー状態MACアドレスでない場合(ステップS1403:No)、ACL部704は、SourceMACアドレスが変更先MACアドレスか否かを判断する(ステップS1405)。SourceMACアドレスが変更先MACアドレスである場合(ステップS1405:Yes)、受け付けたフレームのSourceMACアドレスを、ビジー状態MACアドレスに変更する(ステップS1406)。ステップS1406の処理終了後、または、SourceMACアドレスが変更先MACアドレスでない場合(ステップS1405:No)、ACL部704は、一連の処理を終了する。
【0098】
一方、変更処理開始を受け付けていない、または、変更処理開始を受け付けており、さらに変更処理終了を受け付けた場合(ステップS1401:No)、ACL部704は、DestinationMACアドレスとSourceMACアドレスとの変更を解除する(ステップS1407)。ステップS1407の処理終了後、ACL部704は、一連の処理を終了する。
【0099】
図15は、ストレージ204の処理手順の一例を示すフローチャートである。ストレージ204は、システムIDを確認する(ステップS1501)。そして、ストレージ204は、システムIDによって、自身を含めて仮想ストレージ205が構築されているか否かを判断する(ステップS1502)。自身を含めて仮想ストレージ205が構築されていない場合(ステップS1502:No)、ストレージ204は、ステップS1501の処理に移行する。
【0100】
一方、自身を含めて仮想ストレージ205が構築されている場合(ステップS1502:Yes)、ストレージ204は、ポート状態を取得する(ステップS1503)。そして、ストレージ204は、取得したポート状態により、ポート411がリンクアップしているか否かを判断する(ステップS1504)。ポート411がリンクアップしている場合(ステップS1504:Yes)、ストレージ204は、I/OリクエストWAIT時間と、I/O滞留数とを取得する(ステップS1505)。次に、ストレージ204は、取得した情報に基づいて、ビジーレベルを算出する(ステップS1506)。ストレージ204は、算出したビジーレベルを、ビジー情報保存メモリ751に格納する。
【0101】
そして、ストレージ204は、他ストレージ204のビジー情報保存メモリ751から、他ストレージ204のビジーレベルを取得する(ステップS1507)。次に、ストレージ204は、算出したビジーレベルが他ストレージ204のビジーレベルの2倍以上か否かを判断する(ステップS1508)。算出したビジーレベルが他ストレージ204のビジーレベルの2倍以上である場合(ステップS1508:Yes)、ストレージ204は、ビジー情報保存メモリ751内のビジーフラグをONに設定する(ステップS1509)。
【0102】
ポート411がリンクアップしていない場合(ステップS1504:No)、または、算出したビジーレベルが他ストレージ204のビジーレベルの2倍未満である場合(ステップS1508:No)、ストレージ204は、ビジー情報保存メモリ751内のビジーフラグをOFFに設定する(ステップS1510)。ステップS1509またはステップS1510の処理終了後、ステップS1501の処理に移行する。
【0103】
以上説明したように、ストレージシステム200は、各ストレージ204がビジーフラグを判断し、L2スイッチ201が、各ストレージ204の判断結果に基づきビジー状態MACアドレス宛てのフレームを変更先MACアドレス宛てに変更する。これにより、L2スイッチ201のポート304−2のバッファにフレームが滞留しにくくなり、複数のストレージ204全体のシステムダウンの発生を抑制することができる。また、ストレージシステム200は、ストレージ204の問題発生時にフレームの転送制御について管理者等の判断が不要となるため、人の手を介在することなく、複数のストレージ204全体のシステムダウンを回避することができる。また、ストレージシステム200は、あるストレージ204で問題が起きても、複数のストレージ204全体のシステムの通常運用を実現することができる。また、
図1で説明した8つの復旧手順の全てが発生しないため、管理者の作業工数を抑制することができる。
【0104】
また、監視装置203は、各ストレージ204のビジーフラグの判断結果と、ストレージ204への要求の種別とに基づいて、ビジー状態MACアドレスと変更先MACアドレスとを決定してもよい。具体的には、ビジーフラグONとなるストレージ204があり、ストレージ204への要求が読み出し要求であるとする。この場合、監視装置203は、読み出し要求の対象となるデータ752を記憶し、かつ、ビジーフラグOFFとなるストレージ204のMACアドレスを変更先MACアドレスとして決定する。これにより、読み出し要求となるフレームについて、L2スイッチ201は、ビジー状態にないストレージ204にフレームを送信するため、L2スイッチ201のポート304−2のバッファにフレームが滞留しにくくなる。また、読み出し要求の対象となるデータ752を記憶するストレージ204に対してフレームを送信するため、サーバ212は、意図したデータ752を取得することができる。
【0105】
また、ビジーフラグONとなるストレージ204があり、ストレージ204への要求が読み出し要求である場合に、読み出し要求の対象となるデータを記憶し、かつ、ビジーフラグOFFとなるストレージ204がない可能性がある。この場合、監視装置203は、ストレージ204に、データ752の再配置を指示する。これにより、監視装置203は、読み出し要求の対象となるデータを記憶し、かつ、ビジーフラグOFFとなるストレージ204があるようにすることができる。
【0106】
また、ビジーフラグONとなるストレージ204があり、ストレージ204への要求が書き込み要求であるとする。この場合、監視装置203は、ビジーフラグONとなるストレージ204のMACアドレスをビジー状態MACアドレスとして決定するとともに、ビジーフラグOFFとなるストレージ204のMACアドレスを変更先MACアドレスとして決定する。書き込み要求に対しては、インターコネクトにより各ストレージ204間でデータ752が共有されるため、複数のストレージ204のどのストレージ204でも書き込み要求を送信することができる。そして、書き込み要求となるフレームについて、L2スイッチ201は、ビジー状態にないストレージ204にフレームを送信するため、L2スイッチ201のポート304−2のバッファにフレームが滞留しにくくなる。
【0107】
また、ストレージシステム200内には、仮想ストレージ205を構築するストレージ204と、仮想ストレージ205を構築しないストレージ204とが混在してもよいし、複数の仮想ストレージ205があってもよい。この場合、各ストレージ204は、自身のポート411のビジーレベルと、自身のシステムIDと同一の値のシステムIDを記憶する他のストレージ204のポート411のビジーレベルとの比較結果に基づいて、自身のポート411のビジーフラグを判断する。そして、監視装置203は、取得した各ストレージ204の判断結果に基づいて、ビジー状態MACアドレスと変更先MACアドレスとを、システムIDに対応して決定する。これにより、ストレージシステム200は、仮想ストレージ205を構築するストレージ204と、仮想ストレージ205を構築しないストレージ204とが混在する場合や、複数の仮想ストレージ205がある場合も、本実施の形態を実施することができる。
【0108】
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
【0109】
また、本実施の形態で説明したL2スイッチ201は、スタンダードセルやストラクチャードASIC(Application Specific Integrated Circuit)などの特定用途向けICやFPGA(Field Programmable Gate Array)などのPLD(Programmable Logic Device)によっても実現することができる。具体的には、例えば、上述したL2スイッチ201の制御部703、ACL部704をHDL記述によって機能定義し、HDL記述を論理合成して特定用途向けICやPLDに与えることにより、L2スイッチ201を製造することができる。
【0110】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0111】
(付記1)データを入出力するポートを有する複数の情報処理装置と、前記複数の情報処理装置の各情報処理装置に接続する監視装置と、前記監視装置と接続するとともに前記各情報処理装置のポートに対して1つのポートで接続するネットワーク機器とを含む情報処理システムであって、
前記各情報処理装置は、
前記各情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値と、前記複数の情報処理装置のうち前記各情報処理装置とは異なる他の情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値との比較結果に基づいて、前記各情報処理装置のポートが要求に対する応答を行えるか否かを判断し、
前記監視装置は、
前記各情報処理装置から、前記各情報処理装置が判断した前記各情報処理装置のポートが要求に対する応答を行えるか否かの判断結果を取得し、
取得した前記各情報処理装置の判断結果に基づいて、前記複数の情報処理装置のうちデータを送信しない第1の情報処理装置と前記第1の情報処理装置の代わりにデータを送信する第2の情報処理装置とを決定し、
前記ネットワーク機器は、
前記監視装置から、決定した前記第1の情報処理装置および前記第2の情報処理装置を特定する情報を取得し、
前記第1の情報処理装置を宛先とするデータの宛先を前記第2の情報処理装置に変更するとともに、前記第2の情報処理装置を送信元とするデータの送信元を前記第1の情報処理装置に変更する、
ことを特徴とする情報処理システム。
【0112】
(付記2)前記複数の情報処理装置は、データを共有する複数のストレージであって、
前記情報処理システムは、さらに、前記監視装置と接続し前記複数の情報処理装置への読み出し要求または書き込み要求を送信する送信装置を含み、
前記監視装置は、
前記送信装置から、前記複数の情報処理装置への要求の種別を取得し、
取得した前記各情報処理装置の判断結果と前記要求の種別とに基づいて、前記第1の情報処理装置と前記第2の情報処理装置とを決定する、
ことを特徴とする付記1に記載の情報処理システム。
【0113】
(付記3)前記送信装置は、
前記複数の情報処理装置のうち、読み出し要求の対象となるデータを記憶する読み出し先情報処理装置を特定する情報を記憶しており、
前記監視装置は、
前記各情報処理装置の判断結果のうち要求に対する応答を行えないことを示す判断結果があり、かつ、前記要求の種別が前記読み出し要求である場合、前記送信装置から、前記読み出し先情報処理装置を特定する情報を取得し、
要求に対する応答を行えないことを示す判断結果に対応する情報処理装置を前記第1の情報処理装置として決定するとともに、前記読み出し先情報処理装置であって、かつ、要求に対する応答を行えることを示す判断結果に対応する情報処理装置を前記第2の情報処理装置として決定する、
ことを特徴とする付記2に記載の情報処理システム。
【0114】
(付記4)前記監視装置は、
前記読み出し先情報処理装置であって、かつ、要求に対する応答を行えることを示す判断結果に対応する情報処理装置がない場合、前記各情報処理装置に、前記読み出し要求の対象となるデータの再配置を指示し、
前記再配置の指示後に、要求に対する応答を行えないことを示す判断結果に対応する情報処理装置を前記第1の情報処理装置として決定するとともに、要求に対する応答を行えることを示す判断結果に対応する情報処理装置を前記第2の情報処理装置として決定する、
ことを特徴とする付記3に記載の情報処理システム。
【0115】
(付記5)前記監視装置は、
前記各情報処理装置の判断結果のうち要求に対する応答を行えないことを示す判断結果があり、かつ、前記要求の種別が前記書き込み要求である場合、要求に対する応答を行えないことを示す判断結果に対応する情報処理装置を前記第1の情報処理装置として決定するとともに、要求に対する応答を行えることを示す判断結果に対応する情報処理装置を前記第2の情報処理装置として決定する、
ことを特徴とする付記2〜4のいずれか一つに記載の情報処理システム。
【0116】
(付記6)前記複数の情報処理装置は、仮想的なストレージを構築しており、
前記各情報処理装置は、
前記仮想的なストレージを識別する仮想ストレージ識別情報を記憶しており、
前記各情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値と、前記複数の情報処理装置のうち前記各情報処理装置とは異なり、かつ、前記各情報処理装置が記憶する仮想ストレージ識別情報と同一の値の仮想ストレージ識別情報を記憶する他の情報処理装置のポートにおける要求に対する応答の遅延の程度を示す値との比較結果に基づいて、前記各情報処理装置のポートが要求に対する応答を行えるか否かを判断し、
前記監視装置は、
前記各情報処理装置が記憶する仮想ストレージ識別情報を前記各情報処理装置に対応付けて記憶し、
取得した前記各情報処理装置の判断結果に基づいて、前記複数の情報処理装置のうちデータを送信しない第1の情報処理装置と前記第1の情報処理装置の代わりにデータを送信する第2の情報処理装置とを、前記仮想ストレージ識別情報に対応して決定する、
ことを特徴とする付記2〜5のいずれか一つに記載の情報処理システム。
【0117】
(付記7)データを入出力するポートを有する各情報処理装置のポートに対して1つのポートでネットワーク機器に接続する複数の情報処理装置に接続する監視装置であって、
前記各情報処理装置から、前記各情報処理装置のポートが要求に対する応答を行えるか否かの判断結果を取得し、
取得した前記各情報処理装置の判断結果に基づいて、前記複数の情報処理装置のうちデータを送信しない第1の情報処理装置と前記第1の情報処理装置の代わりにデータを送信する第2の情報処理装置とを決定し、
決定した前記第1の情報処理装置と前記第2の情報処理装置とを特定する情報を、前記ネットワーク機器に送信する、
制御部を有することを特徴とする監視装置。
【0118】
(付記8)データを入出力するポートを有する複数の情報処理装置の各情報処理装置のポートに対して1つのポートで接続するネットワーク機器であって、
前記複数の情報処理装置に接続する監視装置から、前記複数の情報処理装置のうちデータを送信しない第1の情報処理装置と前記第1の情報処理装置の代わりにデータを送信する第2の情報処理装置とを特定する情報を取得する制御部と、
前記第1の情報処理装置を宛先とするデータの宛先を前記第2の情報処理装置に変更するとともに、前記第2の情報処理装置を送信元とするデータの送信元を前記第1の情報処理装置に変更する変更部と、
を有することを特徴とするネットワーク機器。