JP2005301640A - スイッチ装置、記憶制御システム及びトレースデータ取得方法 - Google Patents

スイッチ装置、記憶制御システム及びトレースデータ取得方法 Download PDF

Info

Publication number
JP2005301640A
JP2005301640A JP2004116370A JP2004116370A JP2005301640A JP 2005301640 A JP2005301640 A JP 2005301640A JP 2004116370 A JP2004116370 A JP 2004116370A JP 2004116370 A JP2004116370 A JP 2004116370A JP 2005301640 A JP2005301640 A JP 2005301640A
Authority
JP
Japan
Prior art keywords
trace data
data
storage
control system
switch device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004116370A
Other languages
English (en)
Inventor
Kenichi Miyamoto
健一 宮本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004116370A priority Critical patent/JP2005301640A/ja
Priority to US10/862,561 priority patent/US7089453B2/en
Publication of JP2005301640A publication Critical patent/JP2005301640A/ja
Priority to US11/455,819 priority patent/US7305590B2/en
Priority to US11/976,530 priority patent/US7624306B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/555Error detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/022Capturing of monitoring data by sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/356Switches specially adapted for specific applications for storage area networks
    • H04L49/357Fibre channel switches

Abstract

【課題】 通信環境下で発生した障害に関する解析を行い易くする。
【解決手段】 複数の通信装置に接続されるファイバチャネルスイッチ(以下、FC−SW)104Aが、サーバ101A、101Bから第1通信ポート203Aを介して受信したデータを一時的に記憶するバッファ257と、トレースデータを格納するトレースデータ格納メモリ202と、バッファ257に蓄積されたデータを記憶制御システム106Aに送信するマイクロプロセッサ(MP)267とを備える。MP267は、受信したデータに関する情報をトレースデータとしてトレースデータ格納メモリ202に格納し、トレースデータ送信条件に適合したことが検出されたならば、記憶制御システムにライトコマンドを発行し、トレースデータ格納メモリ202に格納されているトレースデータを読み出して記憶制御システム106Aに送信する。
【選択図】図1

Description

本発明は、トレースデータを取得するための技術に関する。
例えば、通信ネットワークを介して行われる複数の通信装置間での通信において障害が発生する場合があるが、その障害が発生するまでの流れを調査するための方法として、レースデータを採取する方法が知られている。例えば、特開平8−286993号公報には、トレース機能を有する通信制御処理プログラムの領域でラップアラウンドしながら採取している内部トレース情報を、データリンク確立後の障害検出時に、回線毎の領域に退避することにより調査可能な情報を確保する方法が開示されている。
特開平8−286993号公報。
ところで、例えば、ファイバチャネルスイッチを介してRAID(Redundant
Array of Independent Inexpensive Disks)システムと複数のサーバとが接続されたSAN(Storage Area
Network)環境においても障害が発生する場合があるが、そのSAN環境では、発生した障害の原因を特定することが困難な場合がある。このような場合、例えば、サーバとファイバチャネルスイッチとの間、及び、ファイバチャネルスイッチとRAIDシステムとの間にアナライザを設置して、障害発生時と同様の環境にし、再び同様の障害が発生した場合に、アナライザの解析結果を基に、原因を解明するという方法が考えられる。しかし、それでは、障害発生時と同様の環境にするのは手間であるし、原因解明までに多大な時間を要することが考えられる。
このような問題点は、SAN環境に限らず、他の通信環境においても存在するものと考えられる。
従って、本発明の目的は、通信環境下で発生した障害に関する解析を行い易くすることにある。
本発明の他の目的は、後の記載から明らかになるであろう。
本発明の第1の観点に従うスイッチ装置は、複数の通信装置がそれぞれ接続される複数の通信ポートと、前記複数の通信装置から複数の通信ポートを介してそれぞれ受信したデータを一時的に記憶するバッファ領域と、トレースデータを格納するトレースデータ格納領域と、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するプロセッサとを備える。前記プロセッサは、前記複数の通信ポートの各々を介して受信したデータに関する情報を、前記トレースデータとして前記トレースデータ格納領域に格納する。また、前記プロセッサは、前記複数の通信ポートの少なくとも1つに記憶装置が接続されている場合、トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ格納領域に格納されているトレースデータを読み出して前記記憶装置に送信しても良い。
前記トレースデータは、例えば、前記スイッチ装置を介在する全てのデータそれ自体であっても良いし、各データを構成する複数の情報要素から抽出された2以上の情報要素であっても良い。
このスイッチ装置は、例えば、複数のサーバや1以上の記憶制御システム(例えばRAIDシステム或いは磁気テープライブラリ装置)に接続される通信ネットワーク上のノードスイッチ(例えばファイバチャネルスイッチ)であっても良いし、記憶制御システム内に備えられるスイッチであっても良い。後者の場合、記憶制御システムは、例えば、上位装置からデータを受ける複数のチャネル制御部と、前記チャネル制御部に接続され、前記上位装置との間でやり取りされるデータを保存するキャッシュ記憶領域と、前記上位装置との間でやり取りされるデータを、前記キャッシュ領域に格納し又は前記キャッシュ領域から読み出すように制御する複数のディスク制御部と、前記複数のディスク制御部の制御によって前記上位装置から送られたデータが格納される複数のディスク型記憶装置と、前記複数のチャネル制御部、前記複数のディスク制御部及び前記キャッシュ領域を互いに接続するスイッチ装置とを備え、前記スイッチ装置が、前述した本発明の第1の観点に従うスイッチ装置であっても良い。
また、記憶装置は、ハードディスクドライブや半導体メモリ等であっても良いし、前述した記憶制御システムであっても良い。記憶制御システムが、複数の記憶装置を備えている場合、それら複数の記憶装置のうちのどの記憶装置にトレースデータが格納されるかが予め決められていても良い。また、それら複数の記憶装置の各々は、物理的な記憶装置(例えば、ハードディスクドライブ)であっても良いし、論理的な記憶装置(例えば、1以上の物理的な記憶装置上に設けられた論理デバイス)でっても良い。
本発明の第1の観点に従うスイッチ装置の第1の実施態様では、前記プロセッサは、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記ライトコマンドを発行する。
本発明の第1の観点に従うスイッチ装置の第2の実施態様では、前記プロセッサは、前記記憶装置からの要求に応答して、前記データの送受信に関する処理のうち少なくとも送信に関する処理を中断し、前記ライトコマンドを発行する。
本発明の第1の観点に従うスイッチ装置の第3の実施態様では、前記プロセッサは、障害発生に関する通知を受信した場合、障害発生情報を前記トレースデータ格納領域に格納し、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する(例えば、データ格納領域における上書き禁止のアドレスを、所定の記憶領域(例えばプロセッサが有するメモリ)に登録する)。
本発明の第1の観点に従うスイッチ装置の第4の実施態様では、前記複数の通信ポートの各々は、論理的に定められた複数のゾーンのうちの少なくとも1つに属する。前記トレースデータ格納領域は、前記複数のゾーンにそれぞれ対応した複数のトレースデータサブ記憶領域を備える。前記プロセッサは、前記複数のゾーンのうちのいずれかのゾーンについて前記トレースデータ転送条件に適合したことが検出されたならば、前記ライトコマンドを発行し、前記トレースデータ転送条件に適合したゾーンに対応するトレースデータサブ記憶領域からトレースデータを読出す。
本発明の第2の観点に従う記憶制御システムは、スイッチ装置が有する複数の通信ポートの少なくとも1つを介して上位装置と接続されるものであり、データを記憶する複数の記憶装置と、上位装置から受信したデータを前記記憶装置に書込む記憶制御システムプロセッサとを備える。前記複数の記憶装置には、トレースデータを記憶するためのトレースデータ記憶装置が含まれている。前記記憶制御システムプロセッサは、ライトコマンドと、前記スイッチ装置において取得されたトレースデータとを前記スイッチ装置から受信した場合、前記トレースデータを前記トレースデータ記憶装置に書込む。
例えば、前記記憶制御システムプロセッサは、前記記憶制御システムに接続された外部装置から前記トレースデータ記憶装置内のトレースデータを要求された場合に、前記要求に応答して前記トレースデータ記憶装置からトレースデータを読み出して前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する。
本発明の第3の観点に従うトレースデータ取得方法では、スイッチ装置が、記憶装置を含んだ複数の通信装置からそれぞれ複数の通信ポートを介して受信したデータを一時的にバッファ領域に格納するステップを行う。また、前記スイッチ装置が、前記複数の通信ポートの各々を介して受信したデータに関する情報をトレースデータとして、前記バッファ領域とは別に設けられたトレースデータ格納領域に格納するステップを行う。また、前記スイッチ装置が、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するステップを行う。また、前記スイッチ装置が、トレースデータ転送条件に適合したことを検出した場合に、ライトコマンドを前記記憶装置に対して発行するステップを行う。また、前記スイッチ装置が、前記トレースデータ格納領域に格納されているトレースデータを読み出すステップを行う。また、前記スイッチ装置が、前記読み出したトレースデータを前記記憶装置に送信するステップを行う。また、前記記憶装置が、前記ライトコマンドに応答して、前記スイッチ装置からのトレースデータを前記記憶装置内の記憶領域に書込むステップを行う。
本発明の第3の観点に従う方法の第1の実施態様では、前記スイッチ装置は、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記ライトコマンドを発行する。
本発明の第3の観点に従う方法の第2の実施態様では、前記記憶装置が、前記記憶装置の外部装置からトレースデータを要求された場合に、前記要求に応答して、記憶しているトレースデータを前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する。前記スイッチ装置が、前記転送要求に応答して前記発行するステップを実行する。前記記憶装置が、前記スイッチ装置からのトレースデータを前記記憶装置に書き込み、前記書き込んだトレースデータを更に前記外部装置に送信する。
本発明の第3の観点に従う方法の第3の実施態様では、前記複数の通信装置に含まれている2つの上位装置が互いに監視し合う。一方の前記上位装置が、他方の前記上位装置に障害が発生したことを検出した場合、前記障害の発生に関する通知を前記スイッチ装置に送信する。前記スイッチ装置が、前記通知を基に前記障害発生情報を前記トレースデータ格納領域に格納する。前記スイッチ装置が、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する。
本発明によれば、通信環境下で発生した障害に関する解析を行い易くなる。
以下、図面を参照して、本発明の一実施形態について説明する。
図1は、本発明の一実施形態に係るコンピュータシステムの構成例を示す。
このコンピュータシステム1は、LAN108等の第1通信ネットワークに接続された複数のクライアント端末107、複数のサーバ、1以上の記憶制御システム及び1以上のファイバチャネルスイッチ(以下、「FC−SW」と略記)を備えている。複数のサーバ及び1以上の記憶制御システムは、1以上のFC−SWによって構成されるSAN(Storage Area Network)555に接続されている。
クライアント端末107は、パーソナルコンピュータ等の情報処理端末であり、サーバに対して所定のサービスの提供を求めることができる。
複数のサーバには、例えば、図示の第1サーバ101A及び第2サーバ101Bが含まれている。第1サーバ101A及び第2サーバ101Bは実質的に同様の機能を有しているので、第1サーバ101Aについて代表的に説明する。第1サーバ101Aは、記憶制御システムに備えられている後述の論理デバイス(以下、「LDEV」と略記)にデータを書込むためのライトコマンドを発行したり、LDEVからデータを読み出すためのリードコマンドを発行したりする(以下、ライトコマンド及びリードコマンドを「I/O要求」と総称する場合がある)。第1サーバ101Aは、主体的タイマ102、LANインターフェース回路(以下、「LANI/F」と略記)261及びファイバチャネルインターフェース回路(以下、「FCI/F」)262を備えている。また、第1サーバ101Aは、図示しないが、CPUやメモリ等、情報処理に関わるハードウェアも備えている。
第1サーバ101A内では、主体的タイマ102によって日時が管理されている。主体的タイマ102が認識している日時は、ネットワークタイムプロトコルにおける主体的な日時として、LANI/F261を介して出力される。それに対し、第2サーバ101B、FC−SW及び記憶制御システム等に備えられている後述の従属的タイマが認識している日時は、ネットワークタイムプロトコルに従って、その主体的な日時に調整される。すなわち、コンピュータシステム1が備える全てのノードの日時が統一される。なお、主体的タイマ102は、LAN108上のどのノードに存在しても良い。
FCI/F262には、1又は複数のファイバケーブル、例えば、第2FC−SW104Bに接続されたファイバケーブル109Aと、第1FC−SW104Aに接続されたファイバケーブル109Cとが接続される。ちなみに、第2サーバ101BのFCI/F262には、1又は複数のファイバケーブルとして、例えば、第2FC−SW104Bに接続されたファイバケーブル109Dと、第1FC−SW104Aに接続されたファイバケーブル109Bとが接続される。
1以上の記憶制御システムには、例えば、図示の第1記憶制御システム106A及び第2記憶制御システム106Bが含まれている。第1記憶制御システム106A及び第2記憶制御システム106Bは実質的に同様の機能を有しているので、第1記憶制御システム106Aについて代表的に説明する。第1記憶制御システム106Aは、例えば、複数の物理ディスク(例えばハードディスクドライブ)250がアレイ状に配列されたRAID(Redundant Array of Independent Inexpensive Disks)のようなディスクアレイシステムである。第1記憶制御システム106Aは、LANI/F211、従属的タイマ105、1以上のチャネルアダプタ(以下、CHA)、制御メモリ220、キャッシュメモリ230、複数の物理ディスク250、1以上のディスクアダプタ(以下、DKA)、サービスプロセッサ(以下、SVP)110及びマイクロプロセッサ(以下、MP)210が備えられている。
従属タイマ105の日時は、LANI/F211を介して取り込まれた上記主体的な日時に従属的に調整される。
1以上のチャネルアダプタ(以下、CHA)として、例えば2つのCHA290A、290Bが備えられる。CHA290A、290Bは、インターフェース回路、例えば、1又は複数のファイバケーブルが接続されるファイバチャネルインターフェース回路である。CHA290Aには、1又は複数のファイバケーブルとして、例えば、第1FC−SW104Aに接続されたファイバケーブル109Gが接続され、CHA290Bには、第2FC−SW104Bに接続されたファイバケーブル109Fが接続される。これにより、第1記憶制御システム106Aは、第1FC−SW104A及び第2FC−SW104Bを介して、第1サーバ101A及び第2サーバ101Bに接続される。CHA290A及び290Bは、実質的に同様の機能を有するのでCHA290Aについて代表的に説明する。CHA290Aは、ファイバケーブル109Gを介して受信したI/O要求(入出力要求)に基づいて、MP210の制御の下で、I/O要求が有するデータをキャッシュメモリ230に書き込んだり、DKA240によってキャッシュメモリ230に書かれたデータを取得しファイバケーブル109Gに出力したりする。
制御メモリ220は、I/O要求の処理の制御に関する制御情報(例えば、キャッシュメモリ130上のアドレスと、LDEV上のアドレスとの対応付け)等を記憶しておくためのメモリである。MP210は、例えば、制御メモリ220内の制御情報等に基づいて、種々の処理を行う。
キャッシュメモリ230は、CHA290A、290BとDKA240との間でやり取りされるデータが一時的に記憶するためのメモリである。なお、制御メモリ220とキャッシュメモリ230は、物理的に分離している必要はなく、例えば、単一のメモリ上でメモリ空間が分けられていても良い。
複数の物理ディスク250上には、2以上のLDEV(別の言い方をすれば論理ユニット或いは論理ボリューム)が備えられる。2以上のLDEVには、例えば、第1サーバ101A或いは第2サーバ101Bから出力されたデータを格納するためのサーバ用LDEV251Yの他に、後述のトレースデータを格納するためのトレースデータLDEV251Tが含まれている。
1以上のDKAとして、例えば図示のDKA240が備えられる。DKA240は、MP210の制御の下で、CHA290A又は290Bによってキャッシュメモリ130に書かれたデータを取得し、そのデータを、そのデータが存在するキャッシュメモリ130上のアドレスに対応したLDEV内の場所に書込む。また、DKA240は、MP210の制御の下で、LDEVからデータを読出し、読み出したデータをキャッシュメモリ130に書込む。
SVP110は、例えば、ノート型パーソナルコンピュータ等の情報処理端末である。SVP110は、MP210に対してコマンドを発行することで、任意のLDEV内のデータを取得し、取得したデータをSVP110のディスプレイ画面に表示する等を行うことができる。
MP210は、制御メモリ220内の制御情報等に基づいて、第1記憶制御システム106Aの動作全体を制御するものである。
1以上のFC−SWとして、例えば第1FC−SW104A及び第2FC−SW104Bが備えられている。第1FC−SW104A及び第2FC−SW104Bは、実質的に同様の機能を有するので第1FC−SW104Aについて代表的に説明する。第1FC−SW104Aには、第1サーバ101A及び第2サーバ101Bと、第1記憶制御システム106A及び第2記憶制御システム106Bとが接続される。第1FC−SW104Aは、第1サーバ101A或いは第2サーバ101Bの接続相手を第1記憶制御システム106Aと第2記憶制御システム106Bのうちのいずれにするかを選択的に切替える。第1FC−SW104Aは、LANI/F268と、従属的タイマ103と、FCI/F265、266と、トレースデータ格納メモリ202と、MP267とを備える。
従属タイマ103の日時は、LANI/F268を介して取り込まれた上記主体的な日時に従属的に調整される。
FCI/F265、266には、1又は複数のファイバケーブルが接続される。例えば、FCI/F265には、前述したファイバケーブル109Cおよび109Bが接続され、FCI/F266には、前述したファイバケーブル109Gと、第2記憶制御システム106BのCHA290Aに接続されたファイバケーブル109Eが接続される。これにより、第1FC−SW104Aには、第1サーバ101A及び第2サーバ101Bと、第1記憶制御システム106A及び第2記憶制御システム106Bとが接続される。
トレースデータ格納メモリ202は、第1FC−SW104Aを通過するデータに関するトレースデータを格納するためのメモリである。
MP267は、この第1FC−SW104Aの動作全体を制御するものである。例えば、MP267は、この第1FC−SW104Aをデータが通過する都度に、そのデータに基づくトレースデータを生成し、生成したトレースデータをトレースデータ格納メモリ202に格納する。また、MP267は、後に詳述するトレースデータ送信条件に適合した場合に(例えばMP267がアイドル状態になっている場合に)、トレースデータ格納メモリ202に格納されているトレースデータを読み出し、そのトレースデータをトレースデータLDEV251Tに書込むためのライトコマンドを、第1記憶制御システム106A及び第2記憶制御システム106Bの少なくとも一方に送信する。
このように、本実施形態では、FC−SW104A、104Bが、サーバ101A、101Bと記憶制御システム106A、106Bとの間でやり取りされるデータの入出力を行う都度に、そのデータに基づくトレースデータを生成して記憶する。そして、FC−SW104A、104Bは、トレースデータ送信条件に適合した場合に、蓄積されてきた1又は複数のトレースデータを、第1記憶制御システム106A及び第2記憶制御システム106Bの少なくとも一方に送信する。それにより、FC−SWで蓄積されてきた1又は複数のトレースデータが、トレースデータのために設けられたLDEV251Tに格納される。なお、トレースデータの送信先は、動的に選択されても良いし予め決まっていても良い。例えば、第1FC−SW104Aに蓄積されたトレースデータは、第1記憶制御システム106AのトレースデータLDEV251Tに格納され、第2FC−SW104Bに蓄積されたトレースデータは、第2記憶制御システム106BのトレースデータLDEV251Tに格納されることが予め決まっていても良い(この既定の情報は、各々のFC−SWに記憶されていても良い)。また、このように既定されていても、例えば、第1FC−SW104Aと第1記憶制御システム106Aとの間の通信が不能になったことを第1FC−SW104Aが検出した場合には、第1FC−SW104Aは、蓄積されたトレースデータの送信先を、第1記憶制御システム106AのトレースデータLDEV251Tから第2記憶制御システム106BのトレースデータLDEV251Tに切替えても良い。
ところで、本実施形態において、SAN555を介してサーバと記憶制御システムとの間でやり取りされるデータは、以下に例示するような構成になっている。
図2は、SAN555を流れるデータの構成例を示す。
本実施形態で使用する「データ」という言葉は、典型的には図2に示すデータフレーム413のことを意味する。データフレーム413は、例えば、長さは可変で、最長2148バイトある。データフレーム413には、例えば、SOF(Start Of Frame)オーダードセット401、フレームヘッダ403、データペイロード405、オプション407、CRC(Cyclic Redundancy Check)コード409、及びEOF(End Of Frame)オーダードセット411が含まれている。SOFオーダードセット401は、データフレーム413の始まりを示す。フレームヘッダ403は、データフレーム413の転送属性(例えばどのサーバからどのLDEVに書き込まれるのか)を表す。例えば、データフレーム413は、データフレームの送信元を表すソースIDと、データフレームの送信先を表すデスティネーションIDとを有する。データペイロード405は、実データ(例えばLDEVに書き込まれるコード群)である。オプション407には、実データとは別の情報である。CRC(Cyclic Redundancy Check)フレーム409は、エラーチェック用のコードである。EOFオーダードセット411は、データフレーム413の終わりを示す。このようなデータフレーム413において、例えば、データペイロード405及びオプション407以外の構成要素に、データフレーム413の送信の際に送信元装置で発生した状態情報が組み込まれても良い。換言すれば、例えば、サーバも記憶制御システムも、データフレーム413を送信する場合、その送信の際における自分の状態を、データフレーム413における所定の構成要素に組み込んで送信しても良い。
ちなみに、複数のデータフレーム413が1つの小グループにまとめられ、バルクデータ転送の単位とされたものがシーケンス415である。シーケンス415は、例えば、16ビットの大きさを表現するため、最大128MBのデータサイズとすることができる。そして、複数のシーケンス415が1つの大グループにまとめられたのが、エクスチェンジ417である。各FC−SWは、例えばエクスチェンジ417単位で通信を行う。
以下、第1FC−SW104Aを代表的に例に採って、FC−SWの構成を説明する。
図3は、第1FC−SW104Aの構成例を示す。
第1FC−SW104Aには、複数の通信ポート203が備えられている。それら複数の通信ポート203には、1以上の第1通信ポート203Aと、1以上の第2通信ポート203Bとが含まれている。以下、説明の便宜上、第1通信ポート203Aから第2通信ポート203Bへかけてのデータ転送方向を「下り方向」と呼び、それのデータ転送経路を「下り方向経路」と呼ぶ。一方、第2通信ポート203Bから第1通信ポート203Aへかけてのデータ転送方向を「上り方向」と呼び、それのデータ転送経路を「上り方向経路」と呼ぶ。
第1FC−SW104Aにおいて、1以上の第1通信ポート203Aから1以上の第2通信ポート203Bへかけての下り方向経路上には、SP変換回路271A、ASIC273A、1以上のデータ転送用バッファ275、セレクタ280、ASIC273B及びPS変換回路271Bが備えられている(なお、この構成は、上り方向経路についても同様なので、上り方向経路についての説明は省略する)。
SP変換回路271Aは、第1通信ポート203Aを介して入力されたデータの形式をシリアルからパラレルに変換して出力する回路である。一方、PS変換回路271Bは、入力されたデータの形式をパラレルからシリアルに変換して出力する回路である。
ASIC(Application-specific integrated circuit)273A、273Bは、ファイバのプロトコルを制御する回路である。
データ転送用バッファ275は、各第1通信ポート203A毎に備えられる。データ転送用バッファ275には、それに対応する第1通信ポート203Aを介して受信されたデータフレーム413が一時的に蓄積される。
セレクタ280は、1以上の第1通信ポート203Aにそれぞれ接続された1以上の第1バスライン281と、1以上の第2通信ポート203Bにそれぞれ接続された1以上の第2バスライン282との間に介在する。セレクタ280は、MP267からの命令に従って、1以上の第1バスライン281の中から選択した第1バスライン281と、1以上の第2バスライン282の中から選択した第2バスライン282とを相互に接続する。
1以上の第1バスライン281の各々には、データ転送用バッファ275よりも上流側で、トレースデータ格納メモリ202へのメモリバスライン283が接続されている。
MP267は、通信ポート203を介してデータフレーム413を受信した場合、そのデータフレーム413を、その通信ポート203に対応したデータ転送用バッファ275に格納する。そして、MP267は、データ転送用バッファ275からデータフレーム413を読み出し、セレクタ280を制御して、読出したデータフレーム413を、それの送信先装置が接続されている通信ポート203から出力する。
また、図3及び図4に示すように、MP267は、通信ポート203を介してデータフレーム413を受信した場合(又は、データ転送用バッファ275内のデータフレーム413を通信ポート203を介して送信する場合)(図4のステップS81でY)、そのデータフレーム413に基づくトレースデータ要素を取得する(S82)。このS82において、MP267は、例えば、データフレームそれ自体、又は、データフレーム413を構成する複数のデータフレーム要素の中から選択した2以上のデータフレーム要素(例えば、データフレーム413の中からデータサイズの大きいデータペイロード405及びオプション407の少なくとも一方を除いたもの)を、トレースデータ要素として取得する。MP267は、従属的タイマ103から日時情報を取得し(S83)、取得された日時情報をタイムスタンプとして、S82で取得されたトレースデータ要素に付すことにより、トレースデータ要素及びタイムスタンプを含んだトレースデータを生成する(S84)。MP267は、生成されたトレースデータを、トレースデータ格納メモリ202に格納する(S85)。なお、ここで付されるタイムスタンプが表す日時は、データフレーム413の受信日時(又は送信日時)である。受信日時とは、具体的には、例えば、データフレーム413がデータ転送用バッファ275に格納された日時であり、送信日時とは、データ転送用バッファ275からデータフレーム413が読み出された日時である。
MP267は、通信ポート203を介してデータフレーム413を受信する都度(又は、データ転送用バッファ275内のデータフレーム413を通信ポート203を介して送信する都度)、上述したS81〜S85の処理を実行する。これにより、トレースデータ格納メモリ202には、次々にトレースデータが蓄積されていく。トレースデータ格納メモリ202に蓄積されたトレースデータは、例えば以下のような処理流れによって、トレースデータLDEV251Tに転送される。
すなわち、図3及び図5に示すように、MP267は、トレースデータ送信条件に適合したか否かを判別する(S1)。ここで、トレースデータ送信条件とは、例えば、トレースデータ格納メモリ202に少なくとも1つのトレースデータが存在し、且つ、データフレーム413の送受信に関する処理を行っていないアイドル状態になっている(換言すれば、SAN555上にデータフレーム413が存在しない状態になっている)ことである。
MP267は、トレースデータ送信条件に適合しないことが判別された場合には(S1でN)、通常の処理、例えば、受信したデータフレーム413をデータ転送用バッファ275に格納したり、そのデータフレーム413に関するトレースデータを生成してトレースデータ格納メモリ202に書き込んだり、データ転送用バッファ275に格納されているデータフレーム413をそれの送信先装置に送信したりする。
MP267は、トレースデータ送信条件に適合したことが判別された場合には(S1でY)、ライトコマンドを、第1記憶制御システム106A及び第2記憶制御システム106Bの少なくとも一方に発行する(S3)。なお、ライトコマンドの発行先となる記憶制御システムに関する情報(例えば、その記憶制御システムのトレースデータLDEVへの論理パス名)が、第1FC−SW104A内の所定の記憶領域(例えばトレースデータ格納メモリ上に設けられた領域)に登録されていて、MP267は、その情報に従ってライトコマンドを送信しても良い。また、MP267は、第1FC−SW104Aと各記憶制御システムとの間のファイバケーブルおけるトラフィック状態を検出し、そのトラフィック状態に基づいて、ライトコマンドが流れ易いファイバケーブルに接続されている記憶制御システムにライトコマンドを送信するようにしても良い。
S3の次に、MP267は、トレースデータ送信開始アドレスからトレースデータを読み出す(S4)。ここで、トレースデータ送信開始アドレスとは、トレースデータ格納メモリ202のどこからトレースデータの読出しを開始するのかを示すアドレスである。トレースデータ送信開始アドレスは、例えば、MP267内のレジスタ等の所定の記憶領域にセットされる。
MP267は、読み出したトレースデータを、S3でのライトコマンド発行先の記憶制御システムに送信する(S5)。MP267は、トレースデータ送信条件に適合している状態の間は(S6でN)、例えばトレースデータ格納メモリ202内に存在する全てのトレースデータを送信し終えるまで、S5の処理を繰り返す。もし、トレースデータ送信条件に適合しなくなったことが検出された場合は(S6でY)、MP267は、次回のトレースデータ送信開始アドレスを所定の記憶領域に保存して、S1に戻る。
このような流れによって、例えば第1FC−SW104から第1記憶制御システム106Aにトレースデータが送信された場合は、第1記憶制御システム106AのMP210によってライトコマンドが処理されて、図6の一点鎖線で示すように、トレースデータが、CHA290A、キャッシュメモリ230及びDKA240を介してトレースデータLDEV251Tに書き込まれる。
MP210は、SVP110からの要求に応答して、トレースデータLDEV251T内のトレースデータをSVP110に提供することができる。SVP110は、取得されたトレースデータに基づいてトレースデータ一覧リストを生成しそれを表示する。
図7は、トレースデータ一覧リストの例である。
トレースデータ一覧リスト596に載せられる情報項目としては、例えば、検出時刻511と、差分時刻513、通信ポート番号514、記憶制御システム情報515、サーバ情報517、デスティネーションID521、及びソースID523が表示される。トレースデータ一覧リスト596には、各トレースデータ毎に、上述した各種情報項目に対応した情報が表示される。
検出時刻511は、トレースデータに含まれているタイムスタンプが表す日時である。
差分時刻513は、直前回の検出時刻と今回の検出時刻との差分である。
通信ポート番号514は、データフレーム413が受信時(又は送信時)に通過した通信ポートに割当てられた番号を示す。
記憶制御システム情報515は、例えば、記憶制御システムを特定するための情報と、データフレーム413の送信の際における記憶制御システムの状態情報とを含んだ情報である。
サーバ情報517は、例えば、サーバを特定するための情報と、データフレーム413の送信の際におけるサーバの状態情報とを含んだ情報である。
デスティネーションID521は、データフレーム413の送信先のIDである。
ソースID523は、データフレーム413の送信元のIDである。
図示の一覧リスト596は、例えば、サーバから記憶制御システムを突然認識することができなくなった障害原因を調べるために、トレースデータLDEV251Tからトレースデータを読み出した場合に生成されたものだとする。読み出されたトレースデータは、第1FC−SW104Aから出力されたものだとする。そして、生成された一覧リスト596に、枠501で示すように、記憶制御システム情報515の列に、LIP信号(接続初期化信号)情報が記録されていたとする。この場合、上記障害は、第1FC−SW104AへのLIP信号が、記憶制御システム側の都合で発行されたことが原因であることがわかる。
以上、上述した実施形態によれば、複数のサーバの各々と複数の記憶制御システムの各々との間でやり取りされるデータ(つまりSAN555上を流れるデータ)が一旦集約される第1FC−SW104A(及び第2FC−SW104B)において、その第1FC−SW104Aを通過する全てのデータのトレースデータが生成されて記憶される。このように蓄積されたトレースデータに基づく情報を閲覧すれば、障害が発生した場合にはそれの原因究明を迅速に行えることが期待される。ちなみに、トレースデータを採取するための方法として、サーバ101A、101BとFC−SW104A、104Bとの間、及び、FC−SW104A、104Bと記憶制御システム106A、106Bとの間にそれぞれアナライザを介在させ、各アナライザによって採取されたデータをそれぞれ取得する方法が考えられるが、本実施形態では、上述したようにSAN555上を流れるデータが一旦集約されるFC−SW104A、104Bにおいてトレースデータの収集が行われるので、その方法よりも効率的にトレースデータを取得することができる。
また、上述した実施形態によれば、第1FC−SW104A(及び第2FC−SW104B)は、蓄積されたトレースデータを、データフレームの送受信に関する処理を行っていないアイドル状態の場合に、記憶制御システム106A及び/又は106Bに送信する。これにより、サーバ101A、101Bと記憶制御システム106A、106B間のやり取りに加えて、トレースデータを記憶制御システムに送信する処理を実行しても、サーバ101A、101Bと記憶制御システム106A、106B間のやり取りのスループットの低下を抑えることができる。ちなみに、上述した特開平8−286993号公報に開示の技術では、ホストコンピュータが任意のタイミングで通信制御処理装置から内部トレース情報を取得するので、本実施形態とは相違する。
ところで、上述した実施形態には、幾つかの変形例が考えられる。以下、それらの変形例について説明する。
(1)第1の変形例。
図8は、本実施形態の第1の変形例において行われる処理流れを示す。
図8(A)に示すように、第1の変形例では、第1サーバ101Aと第2サーバ101Bとが、クラスタを構成しており、互いに監視し合っている(S11A、S11B)。その際、例えば第1サーバ101Aにおいて障害が発生した場合(S12)、第2サーバ101Bが、第1サーバ101Aに対する監視結果として、第1サーバ101Aで発生した障害を検出する(S13)。そして、第2サーバ101Bは、その障害に関するエラー情報(例えばダンプ情報)を、第1サーバ101が使用していた第1FC−SW104A(別の言い方をすれば、第1サーバ101との間でデータフレーム413の送受信を行っていた第1FC−SW104A)にLAN108を介して送信する(S14)。
図8(B)に示すように、第1FC−SW104AのMP267は、第2サーバ101Bからエラー情報を受信した場合(S21でY)、受信したエラー情報にタイムスタンプを付してトレースデータ格納メモリ202に書き込み(S22)、第1FC−SW104A内の所定記憶領域に上書き禁止領域をセットする(S23)。上書き禁止領域とは、上書きがされてはならない(換言すれば、消去されてはならない)データが存在するメモリ領域であり、MP267のマイクロプログラムは、上書き禁止領域にはデータを書き込まないように作られている。
図8(C)に示すように、第1FC−SW104AのMP267は、新たなトレースデータをトレースデータ格納メモリ202に書き込む際、トレースデータ格納メモリ202に空き領域が無い場合、上書き禁止領域がセットされていなければ(S31でN)、複数のトレースデータのちの最も古いトレースデータに新たなトレースデータを上書きする。一方、第1FC−SW104AのMP267は、上記の場合、上書き禁止領域がセットされていれば(S31でY)、上書き禁止領域以外の領域に存在する複数のトレースデータのちの最も古いトレースデータに新たなトレースデータを上書きする(S33)。
この第1の変形例によれば、第1サーバ101Aで障害が発生したことによって突然それまでに通信していた第1FC−SW104Aと通信が行われなくなっても、第2サーバ101Bが第1サーバ101Aでの障害を検出して、第1サーバ101Aと通信していた第1FC−SW104Aにエラー情報が送信される。そして、第1FC−SW104Aは、エラー情報を受信したらトレースデータ格納メモリにそのエラー情報を書込み、エラー情報が書き込まれる前までに蓄積されてきたトレースデータは消去されないように保護される。これにより、エラー情報書込み前の全てのトレースデータを取得することができるので、障害の原因を特定することができる可能性が高まることが期待できる。なお、第1FC−SW104Aは、記憶制御システム106A、106Bからエラー情報を受信した場合にも、上記のように、そのエラー情報受信前のトレースデータを保護することができる。
(2)第2の変形例。
図9は、本実施形態の第2の変形例に係る第1FC−SW104Aの概念を示す。
図9(A)に示すように、第1FC−SW104Aは、複数の論理的なゾーンに分割されている。例えば、第1FC−SW104Aは、第1ゾーン311A、第2ゾーン311B及び第3ゾーン311Cの3つの論理的なゾーンに分割されている。また、第1FC−SW104Aに搭載されているどの第1通信ポート203A及びどの第2通信ポート203Bがどのゾーンに属しているかに関するゾーン情報が、第1FC−SW104A内の所定記憶領域に登録されている。ゾーン情報は、具体的には、例えば、1以上の第1通信ポート203A及び1以上の第2通信ポート203Bの各々のポート番号に対応付けられたゾーン番号を有する情報である。FC−SW104のMP267は、そのゾーン情報に基づいて、各ゾーン毎に種々の処理を実行することができる。
また、図9(B)に示すように、トレースデータ格納メモリ202は、複数の論理的なゾーン311A〜331Cにそれぞれ対応した複数のサブ領域202A〜202Cに分割されている。
この第2変形例において、第1FC−SW104AのMP267は、以下のような処理を行うことができる。
図10は、第2変形例において行われる処理流れの一例を示す。
MP267は、トレースデータ送信条件に適合したゾーン311A〜311Cが存在するか否かを判別する(S31)。その結果、トレースデータ送信条件に適合したゾーンが1つもなければ(S31でN)、MP267は、全てのゾーンについて、図5のS2を実行する。一方、S31の結果、トレースデータ送信条件に適合したゾーンが1つでもあれば(S31でY)、MP267は、その条件に適合したゾーンについてのみ、図5のS3〜S7を実行し、他のゾーンについては、図5のS2を実行する。
この第2変形例によれば、第1FC−SW104Aを論理的なゾーンに分割し、分割されたゾーン毎に制御が行われるので、蓄積されたトレースデータを記憶制御システムに転送することと、データフレームの送受信に関する処理を行うこととを効率的に両立して行うことができる。
(3)第3の変形例。
図11は、本実施形態の第3変形例において行われる処理流れを示す。
SVP110が、第1記憶制御システム106AのMP210に対してトレースデータ要求を発行すると(S61)、MP210は、トレースデータLDEV251T内のトレースデータをSVP110に転送する(S62)。SVP110は、そのS62の処理によって受信したトレースデータを基に例えば上述したトレースデータ一覧リストを生成して表示する(S63)。
MP210は、S62の後、トレースデータ要求を第1FC−SW104A(及び第2FC−SW104B)に送信する(S64)。第1FC−SW104A(及び第2FC−SW104B)のMP267は、その要求に応答して、データ送受信を中断し(別の言い方をすれば、データフレームの受付及び送信を中断し)(S65)、図5のS3〜S5を実行する。それにより、第1FC−SW104A(及び第2FC−SW104B)に蓄積されたトレースデータが第1記憶制御システム106Aに送信される。
第1記憶制御システム106AのMP210は、受信したトレースデータをトレースデータLDEV251Tに書き込み(S66)、その書き込んだトレースデータをトレースデータLDEV251Tから取得してSVP110に転送する(S67)。例えば、S64〜S67の処理は、MP210がSVP110から表示終了処理を受けるまで定期的或いは不定期に行われても良い。
SVP110は、トレースデータ一覧リストを表示している間、S67によって更にトレースデータを受信した場合には、そのトレースデータを基にトレースデータ一覧リストを更新して表示する(S68)。
この第3変形例によれば、SVP110がトレースデータを必要とした場合という適切な場合に、第1FC−SW104A(及び第2FC−SW104B)に蓄積されたトレースデータが第1記憶制御システム106Aに転送される。
なお、S65の処理は、例えば以下の方法で行うことができる。
第1FC−SW104Aは、サーバ101A、101B或いは記憶制御システム106A、106Bからの所定信号に対し、通常返送する信号とは別種類の信号を返送することで、その所定信号の送信元に、データの送受信が中断された判断されるようにする。
具体的には、例えば、ファブリック接続の場合、第1FC−SW104Aは、データフレームを受信したならば、それに対して、通常、ACK(Acknowledgment)信号をデータフレーム送信元に返送するが、データの送受信を中断する場合には、ACK信号でなくビジー信号或いはリジェクト信号を返送する。それにより、データフレーム送信元に対し、送信フレームが何等かの事情により受け付けられなかった(つまり通信が中断された)ということが判断される。
また、例えば、ファブリックループ接続の場合、第1FC−SW104Aは、データの送受信を開始するためのOPEN信号を受信したならば、通常、R−RDY(Receiver_Ready)応答を返送してデータの送受信を開始するが、それを開始しない場合、CLOSE信号を応答としてOPEN信号の送信元に返送する。それにより、その送信元においてデータ送受信が行えないと判断される。
(4)第4の変形例。
図12は、本実施形態の第4変形例における記憶制御システムの構成例である。
記憶制御システム106には、複数のCHA290、制御メモリ220、キャッシュメモリ230及び複数のDKA240を接続する接続部800が備えられる。接続部800は、例えば高速クロスバスイッチである。この接続部800に、第1FC−SW104A及び第2FC−SW104Bのような機能、すなわち、接続部800を介在するデータに関するトレースデータを生成しそれを所定記憶領域(例えばキャッシュメモリ230又は制御メモリ220)に蓄積し、トレースデータ送信条件に適合した場合に、その所定記憶領域内のトレースデータをトレースデータLDEV251Tに送信する機能が搭載されていても良い。また、各CHA290及び各DKA240には、図示しないMPが1又は複数個搭載されていて、CHA290上のMPとDKA240上のMPとが互いに制御メモリ220を介してプロセッサ間通信を行うことにより、LDEVへのデータの格納や、LDEVからのデータの読出し等が行われても良い。
以上、本発明の実施形態及び幾つかの変形例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこの実施形態及び変形例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、FC−SWにおいてトレースデータを記憶する記憶装置は、メモリに限らずハードディスクなどの他種の記憶装置であっても良い。また、上記の説明では、第1FC−SW104A及び第1記憶制御システム106Aを代表的に例にとって説明しているが、他のFC−SW104B及び記憶制御システム106Bについても同様である。また、1つの記憶制御システム内にトレースデータLDEV251Tは幾つ存在しても良い。また、第1FC−SW104AのMP267は、トレースデータ格納メモリ202の空き容量が残り少なくなったことが検出された場合(例えば空き容量がゼロ又はその近傍になったことが検出された場合)、サーバ及び記憶制御システムからのデータフレームの受付を中断して、トレースデータ格納メモリ202内のトレースデータを記憶制御システムに転送しても良い。また、トレースデータ格納メモリ202に、トレースデータの他にエラー情報(例えば記憶制御システム又はサーバのダンプ情報)が格納されている場合には、トレースデータのみならずエラー情報もトレースデータLDEV251Tに転送され、その場合、トレースデータ及びエラー情報がSVP110に読み出されて表示されても良い。また、記憶制御システムのMP210は、その記憶制御システム内で何らかの障害が発生する都度に、その障害に関するエラー情報を、トレースデータLDEV251Tに格納しても良い。
本発明の一実施形態に係るコンピュータシステムの構成例を示す。 SAN555を流れるデータの構成例を示す。 第1FC−SW104Aの構成例を示す。 トレースデータがトレースデータ格納メモリ202に格納される場合に行われる第1FC−SW104Aの処理流れを示す。 トレースデータ格納メモリ202に格納されたトレースデータの転送に関わる第1FC−SW104Aの処理流れを示す。 トレースデータ格納メモリ202から読み出されて第1記憶制御システム106Aに転送されたトレースデータのルートを示す。 トレースデータ一覧リストの例である。 本発明の一実施形態の第1変形例において行われる処理流れを示す。 本発明の一実施形態の第2変形例に係る第1FC−SW104Aの概念を示す。 本発明の一実施形態の第2変形例において行われる処理流れの一例を示す。 本発明の一実施形態の第3変形例において行われる処理流れを示す。 本発明の一実施形態の第4変形例における記憶制御システムの構成例である。
符号の説明
101A…第1サーバ 101B…第2サーバ 104A…第1FC−SW 104B…第2FC−SW 106A…第1記憶制御システム 106B…第2記憶制御システム 202…トレースデータ格納メモリ 251T…トレースデータLDEV 251Y…サーバ用LDEV

Claims (11)

  1. 複数の通信装置に接続されるスイッチ装置において、
    複数の通信装置がそれぞれ接続される複数の通信ポートと、
    前記複数の通信装置から複数の通信ポートを介してそれぞれ受信したデータを一時的に記憶するバッファ領域と、
    トレースデータを格納するトレースデータ格納領域と、
    前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するプロセッサと
    を備え、
    前記プロセッサは、
    前記複数の通信ポートの各々を介して受信したデータに関する情報を、前記トレースデータとして前記トレースデータ格納領域に格納し、
    前記複数の通信ポートの少なくとも1つに記憶装置が接続されている場合、トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ格納領域に格納されているトレースデータを読み出して前記記憶装置に送信する、
    スイッチ装置。
  2. 前記プロセッサは、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記記憶装置にライトコマンドを発行する、
    請求項1記載のスイッチ装置。
  3. 前記プロセッサは、前記記憶装置からの要求に応答して、前記データの送受信に関する処理のうち少なくとも送信に関する処理を中断し、前記記憶装置にライトコマンドを発行する、
    請求項1記載のスイッチ装置。
  4. 前記プロセッサは、障害発生に関する通知を受信した場合、障害発生情報を前記トレースデータ格納領域に格納し、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護する、
    請求項1記載のスイッチ装置。
  5. 前記複数の通信ポートの各々は、論理的に定められた複数のゾーンのうちの少なくとも1つに属し、
    前記トレースデータ格納領域は、前記複数のゾーンにそれぞれ対応した複数のトレースデータサブ記憶領域を備え、
    前記プロセッサは、前記複数のゾーンのうちのいずれかのゾーンについて前記トレースデータ転送条件に適合したことが検出されたならば、前記記憶装置にライトコマンドを発行し、前記トレースデータ転送条件に適合したゾーンに対応するトレースデータサブ記憶領域からトレースデータを読出す、
    請求項1記載のスイッチ装置。
  6. スイッチ装置が有する複数の通信ポートの少なくとも1つを介して上位装置と接続される記憶制御システムにおいて、
    データを記憶する複数の記憶装置と、
    上位装置から受信したデータを前記記憶装置に書込む記憶制御システムプロセッサと
    を備え、
    前記複数の記憶装置には、トレースデータを記憶するためのトレースデータ記憶装置が含まれており、
    前記記憶制御システムプロセッサは、ライトコマンドと、前記スイッチ装置において取得されたトレースデータとを前記スイッチ装置から受信した場合、前記トレースデータを前記トレースデータ記憶装置に書込む、
    記憶制御システム。
  7. 前記記憶制御システムプロセッサは、前記記憶制御システムに接続された外部装置から前記トレースデータ記憶装置内のトレースデータを要求された場合に、前記要求に応答して、前記トレースデータ記憶装置からトレースデータを読み出して前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信する、
    請求項6記載の記憶制御システム。
  8. スイッチ装置が、記憶装置を含んだ複数の通信装置からそれぞれ複数の通信ポートを介して受信したデータを一時的にバッファ領域に格納するステップと、
    前記スイッチ装置が、前記複数の通信ポートの各々を介して受信したデータに関する情報をトレースデータとして、前記バッファ領域とは別に設けられたトレースデータ格納領域に格納するステップと、
    前記スイッチ装置が、前記バッファ領域に蓄積されたデータを、前記複数の通信ポートの中から選択された通信ポートに接続されている通信装置に送信するステップと、
    前記スイッチ装置が、トレースデータ転送条件に適合したことを検出した場合に、前記記憶装置に対してライトコマンドを発行するステップと、
    前記スイッチ装置が、前記トレースデータ格納領域に格納されているトレースデータを読み出すステップと、
    前記スイッチ装置が、前記読み出したトレースデータを前記記憶装置に送信するステップと、
    前記記憶装置が、前記ライトコマンドに応答して、前記トレースデータを前記記憶装置内に書込むステップと
    を有するトレースデータ取得方法。
  9. 前記スイッチ装置は、前記データの送受信に関する処理を行っていないアイドル状態の場合に、前記発行するステップを実行する、
    請求項8記載のトレースデータ収集方法。
  10. 前記記憶装置が、前記記憶装置の外部装置からトレースデータを要求された場合に、前記要求に応答して、記憶しているトレースデータを前記外部装置に送信し、且つ、前記トレースデータの転送要求を前記スイッチ装置に送信するステップと、
    前記スイッチ装置が、前記転送要求に応答して前記発行するステップを実行するステップと、
    前記記憶装置が、前記スイッチ装置からのトレースデータを前記記憶装置に書き込み、前記書き込んだトレースデータを更に前記外部装置に送信するステップと
    を有する請求項8記載のトレースデータ取得方法。
  11. 前記複数の通信装置に含まれている2つの上位装置が互いに監視し合うステップと、
    一方の前記上位装置が、他方の前記上位装置に障害が発生したことを検出した場合、前記障害の発生に関する通知を前記スイッチ装置に送信するステップと、
    前記スイッチ装置が、前記通知を基に前記障害発生情報を前記トレースデータ格納領域に格納するステップと、
    前記スイッチ装置が、前記障害発生情報が格納される前から存在するトレースデータを消去されないように保護するステップと
    を更に有する請求項8記載のトレースデータ取得方法。
JP2004116370A 2004-04-12 2004-04-12 スイッチ装置、記憶制御システム及びトレースデータ取得方法 Pending JP2005301640A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004116370A JP2005301640A (ja) 2004-04-12 2004-04-12 スイッチ装置、記憶制御システム及びトレースデータ取得方法
US10/862,561 US7089453B2 (en) 2004-04-12 2004-06-08 Switch device, storage control system and trace data obtaining method
US11/455,819 US7305590B2 (en) 2004-04-12 2006-06-20 Switch device, storage control system and trace data obtaining method
US11/976,530 US7624306B2 (en) 2004-04-12 2007-10-25 Switch device, storage control system and trace data obtaining method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004116370A JP2005301640A (ja) 2004-04-12 2004-04-12 スイッチ装置、記憶制御システム及びトレースデータ取得方法

Publications (1)

Publication Number Publication Date
JP2005301640A true JP2005301640A (ja) 2005-10-27

Family

ID=35137870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004116370A Pending JP2005301640A (ja) 2004-04-12 2004-04-12 スイッチ装置、記憶制御システム及びトレースデータ取得方法

Country Status (2)

Country Link
US (3) US7089453B2 (ja)
JP (1) JP2005301640A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009188821A (ja) * 2008-02-07 2009-08-20 Mitsubishi Electric Corp ベースバンド装置
JP2009282648A (ja) * 2008-05-21 2009-12-03 Fujitsu Ltd ストレージ装置、ディスクコントローラ、及びコマンド発行制御方法
US8213328B2 (en) 2009-04-10 2012-07-03 Hitachi, Ltd. Communication information acquisition creation system, network switch, and network switch evaluation method
JP2019133567A (ja) * 2018-02-02 2019-08-08 富士通株式会社 データ受信装置、データ送受信システム、及びデータ送受信システムの制御方法
JP2019194760A (ja) * 2018-05-01 2019-11-07 株式会社東芝 信号制御回路

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536495B2 (en) * 2001-09-28 2009-05-19 Dot Hill Systems Corporation Certified memory-to-memory data transfer between active-active raid controllers
US7146448B2 (en) * 2001-09-28 2006-12-05 Dot Hill Systems Corporation Apparatus and method for adopting an orphan I/O port in a redundant storage controller
JP4294568B2 (ja) * 2004-10-04 2009-07-15 富士通株式会社 ディスクアレイ装置及びその制御方法
US7543096B2 (en) * 2005-01-20 2009-06-02 Dot Hill Systems Corporation Safe message transfers on PCI-Express link from RAID controller to receiver-programmable window of partner RAID controller CPU memory
US8694970B2 (en) * 2005-06-02 2014-04-08 Seagate Technology Llc Unified debug system with multiple user-configurable trace volumes and trace buffers
US7493526B2 (en) * 2006-06-13 2009-02-17 International Business Machines Corporation System and method for supporting debugging of host channel adapters in a logical partitioning
US7536508B2 (en) * 2006-06-30 2009-05-19 Dot Hill Systems Corporation System and method for sharing SATA drives in active-active RAID controller system
JP2008060971A (ja) * 2006-08-31 2008-03-13 Fujitsu Ltd 情報処理システム、情報処理装置、情報処理方法およびプログラム
US7472218B2 (en) * 2006-09-08 2008-12-30 International Business Machines Corporation Assisted trace facility to improve CPU cache performance
DE102007006508B4 (de) * 2007-02-09 2012-11-15 Texas Instruments Deutschland Gmbh Mikrocontroller mit Speicher-Trace-Modul
US7681089B2 (en) * 2007-02-20 2010-03-16 Dot Hill Systems Corporation Redundant storage controller system with enhanced failure analysis capability
JP5533097B2 (ja) * 2010-03-18 2014-06-25 株式会社リコー 情報処理装置、画像形成装置及び情報処理プログラム
EP2593928A1 (en) * 2010-11-11 2013-05-22 Seiko Epson Corporation Fiscal printer
WO2014118874A1 (ja) * 2013-01-29 2014-08-07 株式会社 日立製作所 ストレージシステム
EP2775678B1 (en) * 2013-03-07 2018-05-09 Brocade Communications Systems, Inc. Diagnostic port for inter-switch and node link testing in electrical, optical and remote loopback modes
US9753836B2 (en) * 2014-09-12 2017-09-05 Intel Corporation Low power debug architecture for system-on-chips (SoCs) and systems
US9989592B2 (en) * 2015-12-18 2018-06-05 Intel IP Corporation Interfaces for wireless debugging
KR20180054364A (ko) * 2016-11-15 2018-05-24 삼성전자주식회사 트레이스 데이터를 생성하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
US11281560B2 (en) * 2019-03-19 2022-03-22 Microsoft Technology Licensing, Llc Input/output data transformations when emulating non-traced code with a recorded execution of traced code
US11782816B2 (en) 2019-03-19 2023-10-10 Jens C. Jenkins Input/output location transformations when emulating non-traced code with a recorded execution of traced code
US10949332B2 (en) 2019-08-14 2021-03-16 Microsoft Technology Licensing, Llc Data race analysis based on altering function internal loads during time-travel debugging

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08286993A (ja) 1995-04-19 1996-11-01 Hitachi Ltd 回線障害解析情報の採取方法
US6311326B1 (en) * 1999-01-04 2001-10-30 Emc Corporation Online debugging and tracing system and method
US6732307B1 (en) 1999-10-01 2004-05-04 Hitachi, Ltd. Apparatus and method for storing trace information
US6769054B1 (en) * 2001-02-26 2004-07-27 Emc Corporation System and method for preparation of workload data for replaying in a data storage environment
US6813731B2 (en) 2001-02-26 2004-11-02 Emc Corporation Methods and apparatus for accessing trace data
US20020170004A1 (en) 2001-05-08 2002-11-14 Shugart Technology, Inc. Storage area network monitor device and networked monitor system
US6910160B2 (en) * 2002-01-10 2005-06-21 International Business Machines Corporation System, method, and computer program product for preserving trace data after partition crash in logically partitioned systems
US7069479B2 (en) * 2002-11-07 2006-06-27 International Business Machines Corporation Method and apparatus for obtaining diagnostic data for a device attached to a computer system
US8050180B2 (en) 2003-10-31 2011-11-01 Brocade Communications Systems, Inc. Network path tracing method

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009188821A (ja) * 2008-02-07 2009-08-20 Mitsubishi Electric Corp ベースバンド装置
JP2009282648A (ja) * 2008-05-21 2009-12-03 Fujitsu Ltd ストレージ装置、ディスクコントローラ、及びコマンド発行制御方法
JP4542173B2 (ja) * 2008-05-21 2010-09-08 富士通株式会社 ストレージ装置、ディスクコントローラ、及びコマンド発行制御方法
US8145834B2 (en) 2008-05-21 2012-03-27 Fujitsu Limited Storage apparatus, disk controller, and command issue control method
US8213328B2 (en) 2009-04-10 2012-07-03 Hitachi, Ltd. Communication information acquisition creation system, network switch, and network switch evaluation method
JP2019133567A (ja) * 2018-02-02 2019-08-08 富士通株式会社 データ受信装置、データ送受信システム、及びデータ送受信システムの制御方法
JP7087419B2 (ja) 2018-02-02 2022-06-21 富士通株式会社 データ受信装置、データ送受信システム、及びデータ送受信システムの制御方法
JP2019194760A (ja) * 2018-05-01 2019-11-07 株式会社東芝 信号制御回路
JP7020991B2 (ja) 2018-05-01 2022-02-16 株式会社東芝 信号制御回路

Also Published As

Publication number Publication date
US7305590B2 (en) 2007-12-04
US20080059844A1 (en) 2008-03-06
US7089453B2 (en) 2006-08-08
US7624306B2 (en) 2009-11-24
US20050240822A1 (en) 2005-10-27
US20060248400A1 (en) 2006-11-02

Similar Documents

Publication Publication Date Title
JP2005301640A (ja) スイッチ装置、記憶制御システム及びトレースデータ取得方法
US7380078B2 (en) Method of monitoring status information of remote storage and storage subsystem
US7992048B2 (en) Computer system and method for performing failure detecting processing for a logical path
JP4681374B2 (ja) ストレージ管理システム
US7032041B2 (en) Information processing performing prefetch with load balancing
US6070251A (en) Method and apparatus for high availability and caching data storage devices
US20110283037A1 (en) Information processing apparatus and data transfer method
US8433862B2 (en) Storage system for adjusting asynchronous copy load based on cache activity rate
US7689858B2 (en) Data-recovery control device
JP4466615B2 (ja) 運用管理システム、監視装置、被監視装置、運用管理方法及びプログラム
EP1901522A1 (en) Storage system effectively using free ports
US20130254429A1 (en) Storage system having sas as its backend communication standard
JP2008108120A (ja) エージェントを使用して性能を監視する計算機システム及びその方法
JP2007128437A (ja) ディスクアレイ装置及びその経路障害検出方法
JP2019095971A (ja) ストレージシステム、ストレージ制御装置およびプログラム
JP4413806B2 (ja) 障害切り分け方法、障害切り分け機能を有する通信装置及びプログラム
JP5573118B2 (ja) ディスクアレイ装置の故障診断システム、故障診断方法、故障診断プログラムおよびディスク装置
JP2006031335A (ja) 情報処理システム及び方法
JP4357433B2 (ja) ストレージシステム
JP2007334764A (ja) Nasシステムおよびnasシステムの情報処理方法
JP2015102951A (ja) 処理要求読込転送装置、及び処理要求転送方法
CN104239425B (zh) 文件访问的方法、装置及系统
JP2007299079A (ja) ストレージ装置及びその障害回復方法
JP2004021608A (ja) 二重化サーバの障害検知方式及びその方法
JP2002169732A (ja) ネットワーク監視システム