(57)【要約】【課題】  通信環境下で発生した障害に関する解析を行い易くする。【解決手段】  複数の通信装置に接続されるファイバチャネルスイッチ（以下、ＦＣ−ＳＷ）１０４Ａが、サーバ１０１Ａ、１０１Ｂから第１通信ポート２０３Ａを介して受信したデータを一時的に記憶するバッファ２５７と、トレースデータを格納するトレースデータ格納メモリ２０２と、バッファ２５７に蓄積されたデータを記憶制御システム１０６Ａに送信するマイクロプロセッサ（ＭＰ）２６７とを備える。ＭＰ２６７は、受信したデータに関する情報をトレースデータとしてトレースデータ格納メモリ２０２に格納し、トレースデータ送信条件に適合したことが検出されたならば、記憶制御システムにライトコマンドを発行し、トレースデータ格納メモリ２０２に格納されているトレースデータを読み出して記憶制御システム１０６Ａに送信する。【選択図】図１
2005301640.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置に接続されるスイッチ装置において、
複数の通信装置がそれぞれ接続される複数の通信ポートと、
前記複数の通信装置から複数の通信ポートを介してそれぞれ受信したデータを一時的に記憶するバッファ領域と、
トレースデータを格納するトレースデータ格納領域と、
前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するプロセッサと
を備え、
前記プロセッサは、
前記複数の通信ポートの各々を介して受信したデータに関する情報を、前記トレースデータとして前記トレースデータ格納領域に格納し、
前記複数の通信ポートの少なくとも１つに記憶装置が接続されている場合、トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ格納領域に格納されているトレースデータを読み出して前記記憶装置に送信する、
スイッチ装置。
【請求項２】
前記プロセッサは、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記記憶装置にライトコマンドを発行する、
請求項１記載のスイッチ装置。
【請求項３】
前記プロセッサは、前記記憶装置からの要求に応答して、前記データの送受信に関する処理のうち少なくとも送信に関する処理を中断し、前記記憶装置にライトコマンドを発行する、
請求項１記載のスイッチ装置。
【請求項４】
前記プロセッサは、障害発生に関する通知を受信した場合、障害発生情報を前記トレースデータ格納領域に格納し、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する、
請求項１記載のスイッチ装置。
【請求項５】
前記複数の通信ポートの各々は、論理的に定められた複数のゾーンのうちの少なくとも１つに属し、
前記トレースデータ格納領域は、前記複数のゾーンにそれぞれ対応した複数のトレースデータサブ記憶領域を備え、
前記プロセッサは、前記複数のゾーンのうちのいずれかのゾーンについて前記トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ転送条件に適合したゾーンに対応するトレースデータサブ記憶領域からトレースデータを読出す、
請求項１記載のスイッチ装置。
【請求項６】
スイッチ装置が有する複数の通信ポートの少なくとも１つを介して上位装置と接続される記憶制御システムにおいて、
データを記憶する複数の記憶装置と、
上位装置から受信したデータを前記記憶装置に書込む記憶制御システムプロセッサと
を備え、
前記複数の記憶装置には、トレースデータを記憶するためのトレースデータ記憶装置が含まれており、
前記記憶制御システムプロセッサは、ライトコマンドと、前記スイッチ装置において取得されたトレースデータとを前記スイッチ装置から受信した場合、前記トレースデータを前記トレースデータ記憶装置に書込む、
記憶制御システム。
【請求項７】
前記記憶制御システムプロセッサは、前記記憶制御システムに接続された外部装置から前記トレースデータ記憶装置内のトレースデータを要求された場合に、前記要求に応答して、前記トレースデータ記憶装置からトレースデータを読み出して前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する、
請求項６記載の記憶制御システム。
【請求項８】
スイッチ装置が、記憶装置を含んだ複数の通信装置からそれぞれ複数の通信ポートを介して受信したデータを一時的にバッファ領域に格納するステップと、
前記スイッチ装置が、前記複数の通信ポートの各々を介して受信したデータに関する情報をトレースデータとして、前記バッファ領域とは別に設けられたトレースデータ格納領域に格納するステップと、
前記スイッチ装置が、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するステップと、
前記スイッチ装置が、トレースデータ転送条件に適合したことを検出した場合に、前記記憶装置に対してライトコマンドを発行するステップと、
前記スイッチ装置が、前記トレースデータ格納領域に格納されているトレースデータを読み出すステップと、
前記スイッチ装置が、前記読み出したトレースデータを前記記憶装置に送信するステップと、
前記記憶装置が、前記ライトコマンドに応答して、前記トレースデータを前記記憶装置内に書込むステップと
を有するトレースデータ取得方法。
【請求項９】
前記スイッチ装置は、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記発行するステップを実行する、
請求項８記載のトレースデータ収集方法。
【請求項１０】
前記記憶装置が、前記記憶装置の外部装置からトレースデータを要求された場合に、前記要求に応答して、記憶しているトレースデータを前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信するステップと、
前記スイッチ装置が、前記転送要求に応答して前記発行するステップを実行するステップと、
前記記憶装置が、前記スイッチ装置からのトレースデータを前記記憶装置に書き込み、前記書き込んだトレースデータを更に前記外部装置に送信するステップと
を有する請求項８記載のトレースデータ取得方法。
【請求項１１】
前記複数の通信装置に含まれている２つの上位装置が互いに監視し合うステップと、
一方の前記上位装置が、他方の前記上位装置に障害が発生したことを検出した場合、前記障害の発生に関する通知を前記スイッチ装置に送信するステップと、
前記スイッチ装置が、前記通知を基に前記障害発生情報を前記トレースデータ格納領域に格納するステップと、
前記スイッチ装置が、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護するステップと
を更に有する請求項８記載のトレースデータ取得方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トレースデータを取得するための技術に関する。
【背景技術】
【０００２】
例えば、通信ネットワークを介して行われる複数の通信装置間での通信において障害が発生する場合があるが、その障害が発生するまでの流れを調査するための方法として、レースデータを採取する方法が知られている。例えば、特開平８−２８６９９３号公報には、トレース機能を有する通信制御処理プログラムの領域でラップアラウンドしながら採取している内部トレース情報を、データリンク確立後の障害検出時に、回線毎の領域に退避することにより調査可能な情報を確保する方法が開示されている。
【０００３】
【特許文献１】特開平８−２８６９９３号公報。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、例えば、ファイバチャネルスイッチを介してＲＡＩＤ（Redundant
Array of Independent Inexpensive Disks）システムと複数のサーバとが接続されたＳＡＮ（Storage Area
Network）環境においても障害が発生する場合があるが、そのＳＡＮ環境では、発生した障害の原因を特定することが困難な場合がある。このような場合、例えば、サーバとファイバチャネルスイッチとの間、及び、ファイバチャネルスイッチとＲＡＩＤシステムとの間にアナライザを設置して、障害発生時と同様の環境にし、再び同様の障害が発生した場合に、アナライザの解析結果を基に、原因を解明するという方法が考えられる。しかし、それでは、障害発生時と同様の環境にするのは手間であるし、原因解明までに多大な時間を要することが考えられる。
【０００５】
このような問題点は、ＳＡＮ環境に限らず、他の通信環境においても存在するものと考えられる。
【０００６】
従って、本発明の目的は、通信環境下で発生した障害に関する解析を行い易くすることにある。
【０００７】
本発明の他の目的は、後の記載から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本発明の第１の観点に従うスイッチ装置は、複数の通信装置がそれぞれ接続される複数の通信ポートと、前記複数の通信装置から複数の通信ポートを介してそれぞれ受信したデータを一時的に記憶するバッファ領域と、トレースデータを格納するトレースデータ格納領域と、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するプロセッサとを備える。前記プロセッサは、前記複数の通信ポートの各々を介して受信したデータに関する情報を、前記トレースデータとして前記トレースデータ格納領域に格納する。また、前記プロセッサは、前記複数の通信ポートの少なくとも１つに記憶装置が接続されている場合、トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ格納領域に格納されているトレースデータを読み出して前記記憶装置に送信しても良い。
【０００９】
前記トレースデータは、例えば、前記スイッチ装置を介在する全てのデータそれ自体であっても良いし、各データを構成する複数の情報要素から抽出された２以上の情報要素であっても良い。
【００１０】
このスイッチ装置は、例えば、複数のサーバや１以上の記憶制御システム（例えばＲＡＩＤシステム或いは磁気テープライブラリ装置）に接続される通信ネットワーク上のノードスイッチ（例えばファイバチャネルスイッチ）であっても良いし、記憶制御システム内に備えられるスイッチであっても良い。後者の場合、記憶制御システムは、例えば、上位装置からデータを受ける複数のチャネル制御部と、前記チャネル制御部に接続され、前記上位装置との間でやり取りされるデータを保存するキャッシュ記憶領域と、前記上位装置との間でやり取りされるデータを、前記キャッシュ領域に格納し又は前記キャッシュ領域から読み出すように制御する複数のディスク制御部と、前記複数のディスク制御部の制御によって前記上位装置から送られたデータが格納される複数のディスク型記憶装置と、前記複数のチャネル制御部、前記複数のディスク制御部及び前記キャッシュ領域を互いに接続するスイッチ装置とを備え、前記スイッチ装置が、前述した本発明の第１の観点に従うスイッチ装置であっても良い。
【００１１】
また、記憶装置は、ハードディスクドライブや半導体メモリ等であっても良いし、前述した記憶制御システムであっても良い。記憶制御システムが、複数の記憶装置を備えている場合、それら複数の記憶装置のうちのどの記憶装置にトレースデータが格納されるかが予め決められていても良い。また、それら複数の記憶装置の各々は、物理的な記憶装置（例えば、ハードディスクドライブ）であっても良いし、論理的な記憶装置（例えば、１以上の物理的な記憶装置上に設けられた論理デバイス）でっても良い。
【００１２】
本発明の第１の観点に従うスイッチ装置の第１の実施態様では、前記プロセッサは、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記ライトコマンドを発行する。
【００１３】
本発明の第１の観点に従うスイッチ装置の第２の実施態様では、前記プロセッサは、前記記憶装置からの要求に応答して、前記データの送受信に関する処理のうち少なくとも送信に関する処理を中断し、前記ライトコマンドを発行する。
【００１４】
本発明の第１の観点に従うスイッチ装置の第３の実施態様では、前記プロセッサは、障害発生に関する通知を受信した場合、障害発生情報を前記トレースデータ格納領域に格納し、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する（例えば、データ格納領域における上書き禁止のアドレスを、所定の記憶領域（例えばプロセッサが有するメモリ）に登録する）。
【００１５】
本発明の第１の観点に従うスイッチ装置の第４の実施態様では、前記複数の通信ポートの各々は、論理的に定められた複数のゾーンのうちの少なくとも１つに属する。前記トレースデータ格納領域は、前記複数のゾーンにそれぞれ対応した複数のトレースデータサブ記憶領域を備える。前記プロセッサは、前記複数のゾーンのうちのいずれかのゾーンについて前記トレースデータ転送条件に適合したことが検出されたならば、前記ライトコマンドを発行し、前記トレースデータ転送条件に適合したゾーンに対応するトレースデータサブ記憶領域からトレースデータを読出す。
【００１６】
本発明の第２の観点に従う記憶制御システムは、スイッチ装置が有する複数の通信ポートの少なくとも１つを介して上位装置と接続されるものであり、データを記憶する複数の記憶装置と、上位装置から受信したデータを前記記憶装置に書込む記憶制御システムプロセッサとを備える。前記複数の記憶装置には、トレースデータを記憶するためのトレースデータ記憶装置が含まれている。前記記憶制御システムプロセッサは、ライトコマンドと、前記スイッチ装置において取得されたトレースデータとを前記スイッチ装置から受信した場合、前記トレースデータを前記トレースデータ記憶装置に書込む。
【００１７】
例えば、前記記憶制御システムプロセッサは、前記記憶制御システムに接続された外部装置から前記トレースデータ記憶装置内のトレースデータを要求された場合に、前記要求に応答して前記トレースデータ記憶装置からトレースデータを読み出して前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する。
【００１８】
本発明の第３の観点に従うトレースデータ取得方法では、スイッチ装置が、記憶装置を含んだ複数の通信装置からそれぞれ複数の通信ポートを介して受信したデータを一時的にバッファ領域に格納するステップを行う。また、前記スイッチ装置が、前記複数の通信ポートの各々を介して受信したデータに関する情報をトレースデータとして、前記バッファ領域とは別に設けられたトレースデータ格納領域に格納するステップを行う。また、前記スイッチ装置が、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するステップを行う。また、前記スイッチ装置が、トレースデータ転送条件に適合したことを検出した場合に、ライトコマンドを前記記憶装置に対して発行するステップを行う。また、前記スイッチ装置が、前記トレースデータ格納領域に格納されているトレースデータを読み出すステップを行う。また、前記スイッチ装置が、前記読み出したトレースデータを前記記憶装置に送信するステップを行う。また、前記記憶装置が、前記ライトコマンドに応答して、前記スイッチ装置からのトレースデータを前記記憶装置内の記憶領域に書込むステップを行う。
【００１９】
本発明の第３の観点に従う方法の第１の実施態様では、前記スイッチ装置は、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記ライトコマンドを発行する。
【００２０】
本発明の第３の観点に従う方法の第２の実施態様では、前記記憶装置が、前記記憶装置の外部装置からトレースデータを要求された場合に、前記要求に応答して、記憶しているトレースデータを前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する。前記スイッチ装置が、前記転送要求に応答して前記発行するステップを実行する。前記記憶装置が、前記スイッチ装置からのトレースデータを前記記憶装置に書き込み、前記書き込んだトレースデータを更に前記外部装置に送信する。
【００２１】
本発明の第３の観点に従う方法の第３の実施態様では、前記複数の通信装置に含まれている２つの上位装置が互いに監視し合う。一方の前記上位装置が、他方の前記上位装置に障害が発生したことを検出した場合、前記障害の発生に関する通知を前記スイッチ装置に送信する。前記スイッチ装置が、前記通知を基に前記障害発生情報を前記トレースデータ格納領域に格納する。前記スイッチ装置が、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する。
【発明の効果】
【００２２】
本発明によれば、通信環境下で発生した障害に関する解析を行い易くなる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して、本発明の一実施形態について説明する。
【００２４】
図１は、本発明の一実施形態に係るコンピュータシステムの構成例を示す。
【００２５】
このコンピュータシステム１は、ＬＡＮ１０８等の第１通信ネットワークに接続された複数のクライアント端末１０７、複数のサーバ、１以上の記憶制御システム及び１以上のファイバチャネルスイッチ（以下、「ＦＣ−ＳＷ」と略記）を備えている。複数のサーバ及び１以上の記憶制御システムは、１以上のＦＣ−ＳＷによって構成されるＳＡＮ（Storage Area Network）５５５に接続されている。
【００２６】
クライアント端末１０７は、パーソナルコンピュータ等の情報処理端末であり、サーバに対して所定のサービスの提供を求めることができる。
【００２７】
複数のサーバには、例えば、図示の第１サーバ１０１Ａ及び第２サーバ１０１Ｂが含まれている。第１サーバ１０１Ａ及び第２サーバ１０１Ｂは実質的に同様の機能を有しているので、第１サーバ１０１Ａについて代表的に説明する。第１サーバ１０１Ａは、記憶制御システムに備えられている後述の論理デバイス（以下、「ＬＤＥＶ」と略記）にデータを書込むためのライトコマンドを発行したり、ＬＤＥＶからデータを読み出すためのリードコマンドを発行したりする（以下、ライトコマンド及びリードコマンドを「Ｉ／Ｏ要求」と総称する場合がある）。第１サーバ１０１Ａは、主体的タイマ１０２、ＬＡＮインターフェース回路（以下、「ＬＡＮＩ／Ｆ」と略記）２６１及びファイバチャネルインターフェース回路（以下、「ＦＣＩ／Ｆ」）２６２を備えている。また、第１サーバ１０１Ａは、図示しないが、ＣＰＵやメモリ等、情報処理に関わるハードウェアも備えている。
【００２８】
第１サーバ１０１Ａ内では、主体的タイマ１０２によって日時が管理されている。主体的タイマ１０２が認識している日時は、ネットワークタイムプロトコルにおける主体的な日時として、ＬＡＮＩ／Ｆ２６１を介して出力される。それに対し、第２サーバ１０１Ｂ、ＦＣ−ＳＷ及び記憶制御システム等に備えられている後述の従属的タイマが認識している日時は、ネットワークタイムプロトコルに従って、その主体的な日時に調整される。すなわち、コンピュータシステム１が備える全てのノードの日時が統一される。なお、主体的タイマ１０２は、ＬＡＮ１０８上のどのノードに存在しても良い。
【００２９】
ＦＣＩ／Ｆ２６２には、１又は複数のファイバケーブル、例えば、第２ＦＣ−ＳＷ１０４Ｂに接続されたファイバケーブル１０９Ａと、第１ＦＣ−ＳＷ１０４Ａに接続されたファイバケーブル１０９Ｃとが接続される。ちなみに、第２サーバ１０１ＢのＦＣＩ／Ｆ２６２には、１又は複数のファイバケーブルとして、例えば、第２ＦＣ−ＳＷ１０４Ｂに接続されたファイバケーブル１０９Ｄと、第１ＦＣ−ＳＷ１０４Ａに接続されたファイバケーブル１０９Ｂとが接続される。
【００３０】
１以上の記憶制御システムには、例えば、図示の第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂが含まれている。第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂは実質的に同様の機能を有しているので、第１記憶制御システム１０６Ａについて代表的に説明する。第１記憶制御システム１０６Ａは、例えば、複数の物理ディスク（例えばハードディスクドライブ）２５０がアレイ状に配列されたRAID（Redundant Array of Independent Inexpensive Disks）のようなディスクアレイシステムである。第１記憶制御システム１０６Ａは、ＬＡＮＩ／Ｆ２１１、従属的タイマ１０５、１以上のチャネルアダプタ（以下、ＣＨＡ）、制御メモリ２２０、キャッシュメモリ２３０、複数の物理ディスク２５０、１以上のディスクアダプタ（以下、ＤＫＡ）、サービスプロセッサ（以下、ＳＶＰ）１１０及びマイクロプロセッサ（以下、ＭＰ）２１０が備えられている。
【００３１】
従属タイマ１０５の日時は、ＬＡＮＩ／Ｆ２１１を介して取り込まれた上記主体的な日時に従属的に調整される。
【００３２】
１以上のチャネルアダプタ（以下、ＣＨＡ）として、例えば２つのＣＨＡ２９０Ａ、２９０Ｂが備えられる。ＣＨＡ２９０Ａ、２９０Ｂは、インターフェース回路、例えば、１又は複数のファイバケーブルが接続されるファイバチャネルインターフェース回路である。ＣＨＡ２９０Ａには、１又は複数のファイバケーブルとして、例えば、第１ＦＣ−ＳＷ１０４Ａに接続されたファイバケーブル１０９Ｇが接続され、ＣＨＡ２９０Ｂには、第２ＦＣ−ＳＷ１０４Ｂに接続されたファイバケーブル１０９Ｆが接続される。これにより、第１記憶制御システム１０６Ａは、第１ＦＣ−ＳＷ１０４Ａ及び第２ＦＣ−ＳＷ１０４Ｂを介して、第１サーバ１０１Ａ及び第２サーバ１０１Ｂに接続される。ＣＨＡ２９０Ａ及び２９０Ｂは、実質的に同様の機能を有するのでＣＨＡ２９０Ａについて代表的に説明する。ＣＨＡ２９０Ａは、ファイバケーブル１０９Ｇを介して受信したＩ／Ｏ要求（入出力要求）に基づいて、ＭＰ２１０の制御の下で、Ｉ／Ｏ要求が有するデータをキャッシュメモリ２３０に書き込んだり、ＤＫＡ２４０によってキャッシュメモリ２３０に書かれたデータを取得しファイバケーブル１０９Ｇに出力したりする。
【００３３】
制御メモリ２２０は、Ｉ／Ｏ要求の処理の制御に関する制御情報（例えば、キャッシュメモリ１３０上のアドレスと、ＬＤＥＶ上のアドレスとの対応付け）等を記憶しておくためのメモリである。ＭＰ２１０は、例えば、制御メモリ２２０内の制御情報等に基づいて、種々の処理を行う。
【００３４】
キャッシュメモリ２３０は、ＣＨＡ２９０Ａ、２９０ＢとＤＫＡ２４０との間でやり取りされるデータが一時的に記憶するためのメモリである。なお、制御メモリ２２０とキャッシュメモリ２３０は、物理的に分離している必要はなく、例えば、単一のメモリ上でメモリ空間が分けられていても良い。
【００３５】
複数の物理ディスク２５０上には、２以上のＬＤＥＶ（別の言い方をすれば論理ユニット或いは論理ボリューム）が備えられる。２以上のＬＤＥＶには、例えば、第１サーバ１０１Ａ或いは第２サーバ１０１Ｂから出力されたデータを格納するためのサーバ用ＬＤＥＶ２５１Ｙの他に、後述のトレースデータを格納するためのトレースデータＬＤＥＶ２５１Ｔが含まれている。
【００３６】
１以上のＤＫＡとして、例えば図示のＤＫＡ２４０が備えられる。ＤＫＡ２４０は、ＭＰ２１０の制御の下で、ＣＨＡ２９０Ａ又は２９０Ｂによってキャッシュメモリ１３０に書かれたデータを取得し、そのデータを、そのデータが存在するキャッシュメモリ１３０上のアドレスに対応したＬＤＥＶ内の場所に書込む。また、ＤＫＡ２４０は、ＭＰ２１０の制御の下で、ＬＤＥＶからデータを読出し、読み出したデータをキャッシュメモリ１３０に書込む。
【００３７】
ＳＶＰ１１０は、例えば、ノート型パーソナルコンピュータ等の情報処理端末である。ＳＶＰ１１０は、ＭＰ２１０に対してコマンドを発行することで、任意のＬＤＥＶ内のデータを取得し、取得したデータをＳＶＰ１１０のディスプレイ画面に表示する等を行うことができる。
【００３８】
ＭＰ２１０は、制御メモリ２２０内の制御情報等に基づいて、第１記憶制御システム１０６Ａの動作全体を制御するものである。
【００３９】
１以上のＦＣ−ＳＷとして、例えば第１ＦＣ−ＳＷ１０４Ａ及び第２ＦＣ−ＳＷ１０４Ｂが備えられている。第１ＦＣ−ＳＷ１０４Ａ及び第２ＦＣ−ＳＷ１０４Ｂは、実質的に同様の機能を有するので第１ＦＣ−ＳＷ１０４Ａについて代表的に説明する。第１ＦＣ−ＳＷ１０４Ａには、第１サーバ１０１Ａ及び第２サーバ１０１Ｂと、第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂとが接続される。第１ＦＣ−ＳＷ１０４Ａは、第１サーバ１０１Ａ或いは第２サーバ１０１Ｂの接続相手を第１記憶制御システム１０６Ａと第２記憶制御システム１０６Ｂのうちのいずれにするかを選択的に切替える。第１ＦＣ−ＳＷ１０４Ａは、ＬＡＮＩ／Ｆ２６８と、従属的タイマ１０３と、ＦＣＩ／Ｆ２６５、２６６と、トレースデータ格納メモリ２０２と、ＭＰ２６７とを備える。
【００４０】
従属タイマ１０３の日時は、ＬＡＮＩ／Ｆ２６８を介して取り込まれた上記主体的な日時に従属的に調整される。
【００４１】
ＦＣＩ／Ｆ２６５、２６６には、１又は複数のファイバケーブルが接続される。例えば、ＦＣＩ／Ｆ２６５には、前述したファイバケーブル１０９Ｃおよび１０９Ｂが接続され、ＦＣＩ／Ｆ２６６には、前述したファイバケーブル１０９Ｇと、第２記憶制御システム１０６ＢのＣＨＡ２９０Ａに接続されたファイバケーブル１０９Ｅが接続される。これにより、第１ＦＣ−ＳＷ１０４Ａには、第１サーバ１０１Ａ及び第２サーバ１０１Ｂと、第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂとが接続される。
【００４２】
トレースデータ格納メモリ２０２は、第１ＦＣ−ＳＷ１０４Ａを通過するデータに関するトレースデータを格納するためのメモリである。
【００４３】
ＭＰ２６７は、この第１ＦＣ−ＳＷ１０４Ａの動作全体を制御するものである。例えば、ＭＰ２６７は、この第１ＦＣ−ＳＷ１０４Ａをデータが通過する都度に、そのデータに基づくトレースデータを生成し、生成したトレースデータをトレースデータ格納メモリ２０２に格納する。また、ＭＰ２６７は、後に詳述するトレースデータ送信条件に適合した場合に（例えばＭＰ２６７がアイドル状態になっている場合に）、トレースデータ格納メモリ２０２に格納されているトレースデータを読み出し、そのトレースデータをトレースデータＬＤＥＶ２５１Ｔに書込むためのライトコマンドを、第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂの少なくとも一方に送信する。
【００４４】
このように、本実施形態では、ＦＣ−ＳＷ１０４Ａ、１０４Ｂが、サーバ１０１Ａ、１０１Ｂと記憶制御システム１０６Ａ、１０６Ｂとの間でやり取りされるデータの入出力を行う都度に、そのデータに基づくトレースデータを生成して記憶する。そして、ＦＣ−ＳＷ１０４Ａ、１０４Ｂは、トレースデータ送信条件に適合した場合に、蓄積されてきた１又は複数のトレースデータを、第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂの少なくとも一方に送信する。それにより、ＦＣ−ＳＷで蓄積されてきた１又は複数のトレースデータが、トレースデータのために設けられたＬＤＥＶ２５１Ｔに格納される。なお、トレースデータの送信先は、動的に選択されても良いし予め決まっていても良い。例えば、第１ＦＣ−ＳＷ１０４Ａに蓄積されたトレースデータは、第１記憶制御システム１０６ＡのトレースデータＬＤＥＶ２５１Ｔに格納され、第２ＦＣ−ＳＷ１０４Ｂに蓄積されたトレースデータは、第２記憶制御システム１０６ＢのトレースデータＬＤＥＶ２５１Ｔに格納されることが予め決まっていても良い（この既定の情報は、各々のＦＣ−ＳＷに記憶されていても良い）。また、このように既定されていても、例えば、第１ＦＣ−ＳＷ１０４Ａと第１記憶制御システム１０６Ａとの間の通信が不能になったことを第１ＦＣ−ＳＷ１０４Ａが検出した場合には、第１ＦＣ−ＳＷ１０４Ａは、蓄積されたトレースデータの送信先を、第１記憶制御システム１０６ＡのトレースデータＬＤＥＶ２５１Ｔから第２記憶制御システム１０６ＢのトレースデータＬＤＥＶ２５１Ｔに切替えても良い。
【００４５】
ところで、本実施形態において、ＳＡＮ５５５を介してサーバと記憶制御システムとの間でやり取りされるデータは、以下に例示するような構成になっている。
【００４６】
図２は、ＳＡＮ５５５を流れるデータの構成例を示す。
【００４７】
本実施形態で使用する「データ」という言葉は、典型的には図２に示すデータフレーム４１３のことを意味する。データフレーム４１３は、例えば、長さは可変で、最長2148バイトある。データフレーム４１３には、例えば、SOF(Start Of Frame)オーダードセット４０１、フレームヘッダ４０３、データペイロード４０５、オプション４０７、ＣＲＣ（Cyclic Redundancy Check）コード４０９、及びEOF(End Of Frame)オーダードセット４１１が含まれている。SOFオーダードセット４０１は、データフレーム４１３の始まりを示す。フレームヘッダ４０３は、データフレーム４１３の転送属性（例えばどのサーバからどのＬＤＥＶに書き込まれるのか）を表す。例えば、データフレーム４１３は、データフレームの送信元を表すソースＩＤと、データフレームの送信先を表すデスティネーションＩＤとを有する。データペイロード４０５は、実データ（例えばＬＤＥＶに書き込まれるコード群）である。オプション４０７には、実データとは別の情報である。ＣＲＣ（Cyclic Redundancy Check）フレーム４０９は、エラーチェック用のコードである。EOFオーダードセット４１１は、データフレーム４１３の終わりを示す。このようなデータフレーム４１３において、例えば、データペイロード４０５及びオプション４０７以外の構成要素に、データフレーム４１３の送信の際に送信元装置で発生した状態情報が組み込まれても良い。換言すれば、例えば、サーバも記憶制御システムも、データフレーム４１３を送信する場合、その送信の際における自分の状態を、データフレーム４１３における所定の構成要素に組み込んで送信しても良い。
【００４８】
ちなみに、複数のデータフレーム４１３が１つの小グループにまとめられ、バルクデータ転送の単位とされたものがシーケンス４１５である。シーケンス４１５は、例えば、16ビットの大きさを表現するため、最大128MBのデータサイズとすることができる。そして、複数のシーケンス４１５が１つの大グループにまとめられたのが、エクスチェンジ４１７である。各ＦＣ−ＳＷは、例えばエクスチェンジ４１７単位で通信を行う。
【００４９】
以下、第１ＦＣ−ＳＷ１０４Ａを代表的に例に採って、ＦＣ−ＳＷの構成を説明する。
【００５０】
図３は、第１ＦＣ−ＳＷ１０４Ａの構成例を示す。
【００５１】
第１ＦＣ−ＳＷ１０４Ａには、複数の通信ポート２０３が備えられている。それら複数の通信ポート２０３には、１以上の第１通信ポート２０３Ａと、１以上の第２通信ポート２０３Ｂとが含まれている。以下、説明の便宜上、第１通信ポート２０３Ａから第２通信ポート２０３Ｂへかけてのデータ転送方向を「下り方向」と呼び、それのデータ転送経路を「下り方向経路」と呼ぶ。一方、第２通信ポート２０３Ｂから第１通信ポート２０３Ａへかけてのデータ転送方向を「上り方向」と呼び、それのデータ転送経路を「上り方向経路」と呼ぶ。
【００５２】
第１ＦＣ−ＳＷ１０４Ａにおいて、１以上の第１通信ポート２０３Ａから１以上の第２通信ポート２０３Ｂへかけての下り方向経路上には、ＳＰ変換回路２７１Ａ、ＡＳＩＣ２７３Ａ、１以上のデータ転送用バッファ２７５、セレクタ２８０、ＡＳＩＣ２７３Ｂ及びＰＳ変換回路２７１Ｂが備えられている（なお、この構成は、上り方向経路についても同様なので、上り方向経路についての説明は省略する）。
【００５３】
ＳＰ変換回路２７１Ａは、第１通信ポート２０３Ａを介して入力されたデータの形式をシリアルからパラレルに変換して出力する回路である。一方、ＰＳ変換回路２７１Ｂは、入力されたデータの形式をパラレルからシリアルに変換して出力する回路である。
【００５４】
ＡＳＩＣ（Application-specific integrated circuit）２７３Ａ、２７３Ｂは、ファイバのプロトコルを制御する回路である。
【００５５】
データ転送用バッファ２７５は、各第１通信ポート２０３Ａ毎に備えられる。データ転送用バッファ２７５には、それに対応する第１通信ポート２０３Ａを介して受信されたデータフレーム４１３が一時的に蓄積される。
【００５６】
セレクタ２８０は、１以上の第１通信ポート２０３Ａにそれぞれ接続された１以上の第１バスライン２８１と、１以上の第２通信ポート２０３Ｂにそれぞれ接続された１以上の第２バスライン２８２との間に介在する。セレクタ２８０は、ＭＰ２６７からの命令に従って、１以上の第１バスライン２８１の中から選択した第１バスライン２８１と、１以上の第２バスライン２８２の中から選択した第２バスライン２８２とを相互に接続する。
【００５７】
１以上の第１バスライン２８１の各々には、データ転送用バッファ２７５よりも上流側で、トレースデータ格納メモリ２０２へのメモリバスライン２８３が接続されている。
【００５８】
ＭＰ２６７は、通信ポート２０３を介してデータフレーム４１３を受信した場合、そのデータフレーム４１３を、その通信ポート２０３に対応したデータ転送用バッファ２７５に格納する。そして、ＭＰ２６７は、データ転送用バッファ２７５からデータフレーム４１３を読み出し、セレクタ２８０を制御して、読出したデータフレーム４１３を、それの送信先装置が接続されている通信ポート２０３から出力する。
【００５９】
また、図３及び図４に示すように、ＭＰ２６７は、通信ポート２０３を介してデータフレーム４１３を受信した場合（又は、データ転送用バッファ２７５内のデータフレーム４１３を通信ポート２０３を介して送信する場合）（図４のステップＳ８１でＹ）、そのデータフレーム４１３に基づくトレースデータ要素を取得する（Ｓ８２）。このＳ８２において、ＭＰ２６７は、例えば、データフレームそれ自体、又は、データフレーム４１３を構成する複数のデータフレーム要素の中から選択した２以上のデータフレーム要素（例えば、データフレーム４１３の中からデータサイズの大きいデータペイロード４０５及びオプション４０７の少なくとも一方を除いたもの）を、トレースデータ要素として取得する。ＭＰ２６７は、従属的タイマ１０３から日時情報を取得し（Ｓ８３）、取得された日時情報をタイムスタンプとして、Ｓ８２で取得されたトレースデータ要素に付すことにより、トレースデータ要素及びタイムスタンプを含んだトレースデータを生成する（Ｓ８４）。ＭＰ２６７は、生成されたトレースデータを、トレースデータ格納メモリ２０２に格納する（Ｓ８５）。なお、ここで付されるタイムスタンプが表す日時は、データフレーム４１３の受信日時（又は送信日時）である。受信日時とは、具体的には、例えば、データフレーム４１３がデータ転送用バッファ２７５に格納された日時であり、送信日時とは、データ転送用バッファ２７５からデータフレーム４１３が読み出された日時である。
【００６０】
ＭＰ２６７は、通信ポート２０３を介してデータフレーム４１３を受信する都度（又は、データ転送用バッファ２７５内のデータフレーム４１３を通信ポート２０３を介して送信する都度）、上述したＳ８１〜Ｓ８５の処理を実行する。これにより、トレースデータ格納メモリ２０２には、次々にトレースデータが蓄積されていく。トレースデータ格納メモリ２０２に蓄積されたトレースデータは、例えば以下のような処理流れによって、トレースデータＬＤＥＶ２５１Ｔに転送される。
【００６１】
すなわち、図３及び図５に示すように、ＭＰ２６７は、トレースデータ送信条件に適合したか否かを判別する（Ｓ１）。ここで、トレースデータ送信条件とは、例えば、トレースデータ格納メモリ２０２に少なくとも１つのトレースデータが存在し、且つ、データフレーム４１３の送受信に関する処理を行っていないアイドル状態になっている（換言すれば、ＳＡＮ５５５上にデータフレーム４１３が存在しない状態になっている）ことである。
【００６２】
ＭＰ２６７は、トレースデータ送信条件に適合しないことが判別された場合には（Ｓ１でＮ）、通常の処理、例えば、受信したデータフレーム４１３をデータ転送用バッファ２７５に格納したり、そのデータフレーム４１３に関するトレースデータを生成してトレースデータ格納メモリ２０２に書き込んだり、データ転送用バッファ２７５に格納されているデータフレーム４１３をそれの送信先装置に送信したりする。
【００６３】
ＭＰ２６７は、トレースデータ送信条件に適合したことが判別された場合には（Ｓ１でＹ）、ライトコマンドを、第１記憶制御システム１０６Ａ及び第２記憶制御システム１０６Ｂの少なくとも一方に発行する（Ｓ３）。なお、ライトコマンドの発行先となる記憶制御システムに関する情報（例えば、その記憶制御システムのトレースデータＬＤＥＶへの論理パス名）が、第１ＦＣ−ＳＷ１０４Ａ内の所定の記憶領域（例えばトレースデータ格納メモリ上に設けられた領域）に登録されていて、ＭＰ２６７は、その情報に従ってライトコマンドを送信しても良い。また、ＭＰ２６７は、第１ＦＣ−ＳＷ１０４Ａと各記憶制御システムとの間のファイバケーブルおけるトラフィック状態を検出し、そのトラフィック状態に基づいて、ライトコマンドが流れ易いファイバケーブルに接続されている記憶制御システムにライトコマンドを送信するようにしても良い。
【００６４】
Ｓ３の次に、ＭＰ２６７は、トレースデータ送信開始アドレスからトレースデータを読み出す（Ｓ４）。ここで、トレースデータ送信開始アドレスとは、トレースデータ格納メモリ２０２のどこからトレースデータの読出しを開始するのかを示すアドレスである。トレースデータ送信開始アドレスは、例えば、ＭＰ２６７内のレジスタ等の所定の記憶領域にセットされる。
【００６５】
ＭＰ２６７は、読み出したトレースデータを、Ｓ３でのライトコマンド発行先の記憶制御システムに送信する（Ｓ５）。ＭＰ２６７は、トレースデータ送信条件に適合している状態の間は（Ｓ６でＮ）、例えばトレースデータ格納メモリ２０２内に存在する全てのトレースデータを送信し終えるまで、Ｓ５の処理を繰り返す。もし、トレースデータ送信条件に適合しなくなったことが検出された場合は（Ｓ６でＹ）、ＭＰ２６７は、次回のトレースデータ送信開始アドレスを所定の記憶領域に保存して、Ｓ１に戻る。
【００６６】
このような流れによって、例えば第１ＦＣ−ＳＷ１０４から第１記憶制御システム１０６Ａにトレースデータが送信された場合は、第１記憶制御システム１０６ＡのＭＰ２１０によってライトコマンドが処理されて、図６の一点鎖線で示すように、トレースデータが、ＣＨＡ２９０Ａ、キャッシュメモリ２３０及びＤＫＡ２４０を介してトレースデータＬＤＥＶ２５１Ｔに書き込まれる。
【００６７】
ＭＰ２１０は、ＳＶＰ１１０からの要求に応答して、トレースデータＬＤＥＶ２５１Ｔ内のトレースデータをＳＶＰ１１０に提供することができる。ＳＶＰ１１０は、取得されたトレースデータに基づいてトレースデータ一覧リストを生成しそれを表示する。
【００６８】
図７は、トレースデータ一覧リストの例である。
【００６９】
トレースデータ一覧リスト５９６に載せられる情報項目としては、例えば、検出時刻５１１と、差分時刻５１３、通信ポート番号５１４、記憶制御システム情報５１５、サーバ情報５１７、デスティネーションＩＤ５２１、及びソースＩＤ５２３が表示される。トレースデータ一覧リスト５９６には、各トレースデータ毎に、上述した各種情報項目に対応した情報が表示される。
【００７０】
検出時刻５１１は、トレースデータに含まれているタイムスタンプが表す日時である。
【００７１】
差分時刻５１３は、直前回の検出時刻と今回の検出時刻との差分である。
【００７２】
通信ポート番号５１４は、データフレーム４１３が受信時（又は送信時）に通過した通信ポートに割当てられた番号を示す。
【００７３】
記憶制御システム情報５１５は、例えば、記憶制御システムを特定するための情報と、データフレーム４１３の送信の際における記憶制御システムの状態情報とを含んだ情報である。
【００７４】
サーバ情報５１７は、例えば、サーバを特定するための情報と、データフレーム４１３の送信の際におけるサーバの状態情報とを含んだ情報である。
【００７５】
デスティネーションＩＤ５２１は、データフレーム４１３の送信先のＩＤである。
【００７６】
ソースＩＤ５２３は、データフレーム４１３の送信元のＩＤである。
【００７７】
図示の一覧リスト５９６は、例えば、サーバから記憶制御システムを突然認識することができなくなった障害原因を調べるために、トレースデータＬＤＥＶ２５１Ｔからトレースデータを読み出した場合に生成されたものだとする。読み出されたトレースデータは、第１ＦＣ−ＳＷ１０４Ａから出力されたものだとする。そして、生成された一覧リスト５９６に、枠５０１で示すように、記憶制御システム情報５１５の列に、ＬＩＰ信号（接続初期化信号）情報が記録されていたとする。この場合、上記障害は、第１ＦＣ−ＳＷ１０４ＡへのＬＩＰ信号が、記憶制御システム側の都合で発行されたことが原因であることがわかる。
【００７８】
以上、上述した実施形態によれば、複数のサーバの各々と複数の記憶制御システムの各々との間でやり取りされるデータ（つまりＳＡＮ５５５上を流れるデータ）が一旦集約される第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）において、その第１ＦＣ−ＳＷ１０４Ａを通過する全てのデータのトレースデータが生成されて記憶される。このように蓄積されたトレースデータに基づく情報を閲覧すれば、障害が発生した場合にはそれの原因究明を迅速に行えることが期待される。ちなみに、トレースデータを採取するための方法として、サーバ１０１Ａ、１０１ＢとＦＣ−ＳＷ１０４Ａ、１０４Ｂとの間、及び、ＦＣ−ＳＷ１０４Ａ、１０４Ｂと記憶制御システム１０６Ａ、１０６Ｂとの間にそれぞれアナライザを介在させ、各アナライザによって採取されたデータをそれぞれ取得する方法が考えられるが、本実施形態では、上述したようにＳＡＮ５５５上を流れるデータが一旦集約されるＦＣ−ＳＷ１０４Ａ、１０４Ｂにおいてトレースデータの収集が行われるので、その方法よりも効率的にトレースデータを取得することができる。
【００７９】
また、上述した実施形態によれば、第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）は、蓄積されたトレースデータを、データフレームの送受信に関する処理を行っていないアイドル状態の場合に、記憶制御システム１０６Ａ及び／又は１０６Ｂに送信する。これにより、サーバ１０１Ａ、１０１Ｂと記憶制御システム１０６Ａ、１０６Ｂ間のやり取りに加えて、トレースデータを記憶制御システムに送信する処理を実行しても、サーバ１０１Ａ、１０１Ｂと記憶制御システム１０６Ａ、１０６Ｂ間のやり取りのスループットの低下を抑えることができる。ちなみに、上述した特開平８−２８６９９３号公報に開示の技術では、ホストコンピュータが任意のタイミングで通信制御処理装置から内部トレース情報を取得するので、本実施形態とは相違する。
【００８０】
ところで、上述した実施形態には、幾つかの変形例が考えられる。以下、それらの変形例について説明する。
【００８１】
（１）第１の変形例。
【００８２】
図８は、本実施形態の第１の変形例において行われる処理流れを示す。
【００８３】
図８（Ａ）に示すように、第１の変形例では、第１サーバ１０１Ａと第２サーバ１０１Ｂとが、クラスタを構成しており、互いに監視し合っている（Ｓ１１Ａ、Ｓ１１Ｂ）。その際、例えば第１サーバ１０１Ａにおいて障害が発生した場合（Ｓ１２）、第２サーバ１０１Ｂが、第１サーバ１０１Ａに対する監視結果として、第１サーバ１０１Ａで発生した障害を検出する（Ｓ１３）。そして、第２サーバ１０１Ｂは、その障害に関するエラー情報（例えばダンプ情報）を、第１サーバ１０１が使用していた第１ＦＣ−ＳＷ１０４Ａ（別の言い方をすれば、第１サーバ１０１との間でデータフレーム４１３の送受信を行っていた第１ＦＣ−ＳＷ１０４Ａ）にＬＡＮ１０８を介して送信する（Ｓ１４）。
【００８４】
図８（Ｂ）に示すように、第１ＦＣ−ＳＷ１０４ＡのＭＰ２６７は、第２サーバ１０１Ｂからエラー情報を受信した場合（Ｓ２１でＹ）、受信したエラー情報にタイムスタンプを付してトレースデータ格納メモリ２０２に書き込み（Ｓ２２）、第１ＦＣ−ＳＷ１０４Ａ内の所定記憶領域に上書き禁止領域をセットする（Ｓ２３）。上書き禁止領域とは、上書きがされてはならない（換言すれば、消去されてはならない）データが存在するメモリ領域であり、ＭＰ２６７のマイクロプログラムは、上書き禁止領域にはデータを書き込まないように作られている。
【００８５】
図８（Ｃ）に示すように、第１ＦＣ−ＳＷ１０４ＡのＭＰ２６７は、新たなトレースデータをトレースデータ格納メモリ２０２に書き込む際、トレースデータ格納メモリ２０２に空き領域が無い場合、上書き禁止領域がセットされていなければ（Ｓ３１でＮ）、複数のトレースデータのちの最も古いトレースデータに新たなトレースデータを上書きする。一方、第１ＦＣ−ＳＷ１０４ＡのＭＰ２６７は、上記の場合、上書き禁止領域がセットされていれば（Ｓ３１でＹ）、上書き禁止領域以外の領域に存在する複数のトレースデータのちの最も古いトレースデータに新たなトレースデータを上書きする（Ｓ３３）。
【００８６】
この第１の変形例によれば、第１サーバ１０１Ａで障害が発生したことによって突然それまでに通信していた第１ＦＣ−ＳＷ１０４Ａと通信が行われなくなっても、第２サーバ１０１Ｂが第１サーバ１０１Ａでの障害を検出して、第１サーバ１０１Ａと通信していた第１ＦＣ−ＳＷ１０４Ａにエラー情報が送信される。そして、第１ＦＣ−ＳＷ１０４Ａは、エラー情報を受信したらトレースデータ格納メモリにそのエラー情報を書込み、エラー情報が書き込まれる前までに蓄積されてきたトレースデータは消去されないように保護される。これにより、エラー情報書込み前の全てのトレースデータを取得することができるので、障害の原因を特定することができる可能性が高まることが期待できる。なお、第１ＦＣ−ＳＷ１０４Ａは、記憶制御システム１０６Ａ、１０６Ｂからエラー情報を受信した場合にも、上記のように、そのエラー情報受信前のトレースデータを保護することができる。
【００８７】
（２）第２の変形例。
【００８８】
図９は、本実施形態の第２の変形例に係る第１ＦＣ−ＳＷ１０４Ａの概念を示す。
【００８９】
図９（Ａ）に示すように、第１ＦＣ−ＳＷ１０４Ａは、複数の論理的なゾーンに分割されている。例えば、第１ＦＣ−ＳＷ１０４Ａは、第１ゾーン３１１Ａ、第２ゾーン３１１Ｂ及び第３ゾーン３１１Ｃの３つの論理的なゾーンに分割されている。また、第１ＦＣ−ＳＷ１０４Ａに搭載されているどの第１通信ポート２０３Ａ及びどの第２通信ポート２０３Ｂがどのゾーンに属しているかに関するゾーン情報が、第１ＦＣ−ＳＷ１０４Ａ内の所定記憶領域に登録されている。ゾーン情報は、具体的には、例えば、１以上の第１通信ポート２０３Ａ及び１以上の第２通信ポート２０３Ｂの各々のポート番号に対応付けられたゾーン番号を有する情報である。ＦＣ−ＳＷ１０４のＭＰ２６７は、そのゾーン情報に基づいて、各ゾーン毎に種々の処理を実行することができる。
【００９０】
また、図９（Ｂ）に示すように、トレースデータ格納メモリ２０２は、複数の論理的なゾーン３１１Ａ〜３３１Ｃにそれぞれ対応した複数のサブ領域２０２Ａ〜２０２Ｃに分割されている。
【００９１】
この第２変形例において、第１ＦＣ−ＳＷ１０４ＡのＭＰ２６７は、以下のような処理を行うことができる。
【００９２】
図１０は、第２変形例において行われる処理流れの一例を示す。
【００９３】
ＭＰ２６７は、トレースデータ送信条件に適合したゾーン３１１Ａ〜３１１Ｃが存在するか否かを判別する（Ｓ３１）。その結果、トレースデータ送信条件に適合したゾーンが１つもなければ（Ｓ３１でＮ）、ＭＰ２６７は、全てのゾーンについて、図５のＳ２を実行する。一方、Ｓ３１の結果、トレースデータ送信条件に適合したゾーンが１つでもあれば（Ｓ３１でＹ）、ＭＰ２６７は、その条件に適合したゾーンについてのみ、図５のＳ３〜Ｓ７を実行し、他のゾーンについては、図５のＳ２を実行する。
【００９４】
この第２変形例によれば、第１ＦＣ−ＳＷ１０４Ａを論理的なゾーンに分割し、分割されたゾーン毎に制御が行われるので、蓄積されたトレースデータを記憶制御システムに転送することと、データフレームの送受信に関する処理を行うこととを効率的に両立して行うことができる。
【００９５】
（３）第３の変形例。
【００９６】
図１１は、本実施形態の第３変形例において行われる処理流れを示す。
【００９７】
ＳＶＰ１１０が、第１記憶制御システム１０６ＡのＭＰ２１０に対してトレースデータ要求を発行すると（Ｓ６１）、ＭＰ２１０は、トレースデータＬＤＥＶ２５１Ｔ内のトレースデータをＳＶＰ１１０に転送する（Ｓ６２）。ＳＶＰ１１０は、そのＳ６２の処理によって受信したトレースデータを基に例えば上述したトレースデータ一覧リストを生成して表示する（Ｓ６３）。
【００９８】
ＭＰ２１０は、Ｓ６２の後、トレースデータ要求を第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）に送信する（Ｓ６４）。第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）のＭＰ２６７は、その要求に応答して、データ送受信を中断し（別の言い方をすれば、データフレームの受付及び送信を中断し）（Ｓ６５）、図５のＳ３〜Ｓ５を実行する。それにより、第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）に蓄積されたトレースデータが第１記憶制御システム１０６Ａに送信される。
【００９９】
第１記憶制御システム１０６ＡのＭＰ２１０は、受信したトレースデータをトレースデータＬＤＥＶ２５１Ｔに書き込み（Ｓ６６）、その書き込んだトレースデータをトレースデータＬＤＥＶ２５１Ｔから取得してＳＶＰ１１０に転送する（Ｓ６７）。例えば、Ｓ６４〜Ｓ６７の処理は、ＭＰ２１０がＳＶＰ１１０から表示終了処理を受けるまで定期的或いは不定期に行われても良い。
【０１００】
ＳＶＰ１１０は、トレースデータ一覧リストを表示している間、Ｓ６７によって更にトレースデータを受信した場合には、そのトレースデータを基にトレースデータ一覧リストを更新して表示する（Ｓ６８）。
【０１０１】
この第３変形例によれば、ＳＶＰ１１０がトレースデータを必要とした場合という適切な場合に、第１ＦＣ−ＳＷ１０４Ａ（及び第２ＦＣ−ＳＷ１０４Ｂ）に蓄積されたトレースデータが第１記憶制御システム１０６Ａに転送される。
【０１０２】
なお、Ｓ６５の処理は、例えば以下の方法で行うことができる。
【０１０３】
第１ＦＣ−ＳＷ１０４Ａは、サーバ１０１Ａ、１０１Ｂ或いは記憶制御システム１０６Ａ、１０６Ｂからの所定信号に対し、通常返送する信号とは別種類の信号を返送することで、その所定信号の送信元に、データの送受信が中断された判断されるようにする。
【０１０４】
具体的には、例えば、ファブリック接続の場合、第１ＦＣ−ＳＷ１０４Ａは、データフレームを受信したならば、それに対して、通常、ＡＣＫ(Acknowledgment)信号をデータフレーム送信元に返送するが、データの送受信を中断する場合には、ＡＣＫ信号でなくビジー信号或いはリジェクト信号を返送する。それにより、データフレーム送信元に対し、送信フレームが何等かの事情により受け付けられなかった(つまり通信が中断された)ということが判断される。
【０１０５】
また、例えば、ファブリックループ接続の場合、第１ＦＣ−ＳＷ１０４Ａは、データの送受信を開始するためのＯＰＥＮ信号を受信したならば、通常、Ｒ−ＲＤＹ（Receiver_Ready）応答を返送してデータの送受信を開始するが、それを開始しない場合、ＣＬＯＳＥ信号を応答としてＯＰＥＮ信号の送信元に返送する。それにより、その送信元においてデータ送受信が行えないと判断される。
【０１０６】
（４）第４の変形例。
【０１０７】
図１２は、本実施形態の第４変形例における記憶制御システムの構成例である。
【０１０８】
記憶制御システム１０６には、複数のＣＨＡ２９０、制御メモリ２２０、キャッシュメモリ２３０及び複数のＤＫＡ２４０を接続する接続部８００が備えられる。接続部８００は、例えば高速クロスバスイッチである。この接続部８００に、第１ＦＣ−ＳＷ１０４Ａ及び第２ＦＣ−ＳＷ１０４Ｂのような機能、すなわち、接続部８００を介在するデータに関するトレースデータを生成しそれを所定記憶領域（例えばキャッシュメモリ２３０又は制御メモリ２２０）に蓄積し、トレースデータ送信条件に適合した場合に、その所定記憶領域内のトレースデータをトレースデータＬＤＥＶ２５１Ｔに送信する機能が搭載されていても良い。また、各ＣＨＡ２９０及び各ＤＫＡ２４０には、図示しないＭＰが１又は複数個搭載されていて、ＣＨＡ２９０上のＭＰとＤＫＡ２４０上のＭＰとが互いに制御メモリ２２０を介してプロセッサ間通信を行うことにより、ＬＤＥＶへのデータの格納や、ＬＤＥＶからのデータの読出し等が行われても良い。
【０１０９】
以上、本発明の実施形態及び幾つかの変形例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこの実施形態及び変形例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、ＦＣ−ＳＷにおいてトレースデータを記憶する記憶装置は、メモリに限らずハードディスクなどの他種の記憶装置であっても良い。また、上記の説明では、第１ＦＣ−ＳＷ１０４Ａ及び第１記憶制御システム１０６Ａを代表的に例にとって説明しているが、他のＦＣ−ＳＷ１０４Ｂ及び記憶制御システム１０６Ｂについても同様である。また、１つの記憶制御システム内にトレースデータＬＤＥＶ２５１Ｔは幾つ存在しても良い。また、第１ＦＣ−ＳＷ１０４ＡのＭＰ２６７は、トレースデータ格納メモリ２０２の空き容量が残り少なくなったことが検出された場合（例えば空き容量がゼロ又はその近傍になったことが検出された場合）、サーバ及び記憶制御システムからのデータフレームの受付を中断して、トレースデータ格納メモリ２０２内のトレースデータを記憶制御システムに転送しても良い。また、トレースデータ格納メモリ２０２に、トレースデータの他にエラー情報（例えば記憶制御システム又はサーバのダンプ情報）が格納されている場合には、トレースデータのみならずエラー情報もトレースデータＬＤＥＶ２５１Ｔに転送され、その場合、トレースデータ及びエラー情報がＳＶＰ１１０に読み出されて表示されても良い。また、記憶制御システムのＭＰ２１０は、その記憶制御システム内で何らかの障害が発生する都度に、その障害に関するエラー情報を、トレースデータＬＤＥＶ２５１Ｔに格納しても良い。
【図面の簡単な説明】
【０１１０】
【図１】本発明の一実施形態に係るコンピュータシステムの構成例を示す。
【図２】ＳＡＮ５５５を流れるデータの構成例を示す。
【図３】第１ＦＣ−ＳＷ１０４Ａの構成例を示す。
【図４】トレースデータがトレースデータ格納メモリ２０２に格納される場合に行われる第１ＦＣ−ＳＷ１０４Ａの処理流れを示す。
【図５】トレースデータ格納メモリ２０２に格納されたトレースデータの転送に関わる第１ＦＣ−ＳＷ１０４Ａの処理流れを示す。
【図６】トレースデータ格納メモリ２０２から読み出されて第１記憶制御システム１０６Ａに転送されたトレースデータのルートを示す。
【図７】トレースデータ一覧リストの例である。
【図８】本発明の一実施形態の第１変形例において行われる処理流れを示す。
【図９】本発明の一実施形態の第２変形例に係る第１ＦＣ−ＳＷ１０４Ａの概念を示す。
【図１０】本発明の一実施形態の第２変形例において行われる処理流れの一例を示す。
【図１１】本発明の一実施形態の第３変形例において行われる処理流れを示す。
【図１２】本発明の一実施形態の第４変形例における記憶制御システムの構成例である。
【符号の説明】
【０１１１】
１０１Ａ…第１サーバ  １０１Ｂ…第２サーバ  １０４Ａ…第１ＦＣ−ＳＷ  １０４Ｂ…第２ＦＣ−ＳＷ  １０６Ａ…第１記憶制御システム  １０６Ｂ…第２記憶制御システム  ２０２…トレースデータ格納メモリ  ２５１Ｔ…トレースデータＬＤＥＶ  ２５１Ｙ…サーバ用ＬＤＥＶ
【図１】
2005301640.tif 000003
【図２】
2005301640.tif 000004
【図３】
2005301640.tif 000005
【図４】
2005301640.tif 000006
【図５】
2005301640.tif 000007
【図６】
2005301640.tif 000008
【図７】
2005301640.tif 000009
【図８】
2005301640.tif 000010
【図９】
2005301640.tif 000011
【図１０】
2005301640.tif 000012
【図１１】
2005301640.tif 000013
【図１２】
2005301640.tif 000014