(57)【要約】【課題】障害発生時のエラー通知を迅速に行う。【解決手段】ＣＰＵ１，Ｉ／Ｏ装置２は、それぞれ、エラー通知パケット生成部を備える。また、ＮＣ３は、エラー通知パケット検出部と、同報パケット生成部とエラー通知パケット選択部と、を備える。ＣＰＵ１，Ｉ／Ｏ装置２のエラー通知パケット生成部は、障害が発生するとエラー通知パケットを生成する。そして、ＣＰＵ１，Ｉ／Ｏ装置２は、データパケットの代わりに、このエラー通知パケットを、高速のデータ送受信用ネットワークを介して送信する。ＮＣ３は、このエラー通知パケットを受信して、隣接するＮＣ３等に、データパケットの代わりに、このネットワークを介して送信することにより、障害の同報通知を行う。【選択図】  図１
2005018338.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理ユニット間で伝送路を介して、情報処理に用いるデータを送受信する情報処理装置において、前記処理ユニットで発生した障害の処理を行う障害処理装置であって、
障害が発生すると、発生した障害に関する障害情報を生成し、生成した障害情報を、前記情報処理に用いるデータの代わりに前記伝送路を介して送信する第１の処理ユニットと、
前記障害情報を前記伝送路を介して受信すると、受信した障害情報を、前記情報処理に用いるデータの代わりに前記伝送路を介して、前記障害情報を送信した処理ユニットとは異なる処理ユニットに転送する第２の処理ユニットと、を備えた、
ことを特徴とする情報処理装置の障害処理装置。
【請求項２】
前記第１の処理ユニットは、
発生した障害の障害情報を生成する障害情報生成部と、
前記障害情報生成部が生成した障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記伝送路に接続された第１の処理ユニット又は第２の処理ユニットに送信する送信部と、を備えた、
ことを特徴とする請求項１に記載の情報処理装置の障害処理装置。
【請求項３】
前記障害情報は、障害情報であることを識別可能な特定のデータパターンを有するものであって、
前記第２の処理ユニットは、
前記情報処理に用いるデータ又は前記障害情報を受信する受信部と、
前記受信部が受信したデータのデータパターンを解読して前記障害情報を検出する障害情報検出部と、
前記障害情報検出部が検出した障害情報に基づいて、同報通知に用いる新たな障害情報を生成する同報障害情報生成部と、
前記同報障害情報生成部が生成した新たな障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信する送信部と、を備えて構成されたものである、
ことを特徴とする請求項１又は２に記載の情報処理装置の障害処理装置。
【請求項４】
前記発生した障害の処理内容を示す障害処理記録を記録する記録部を備え、
前記第２の処理ユニットは、前記障害情報を転送すると、前記障害処理記録を前記記録部に送信するように構成された、
ことを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置の障害処理装置。
【請求項５】
前記第２の処理ユニットは、情報処理を行う複数の処理ユニットへのデータ転送を制御するネットワークコントローラである、
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置の障害処理装置。
【請求項６】
情報処理を行う複数の処理ユニットが伝送路を介してネットワーク接続された情報処理装置において、前記ネットワーク上のデータ転送を制御するネットワークコントローラであって、
前記伝送路を介して情報処理に用いるデータ又は前記処理ユニットで発生した障害に関する特定データパターンの障害情報を受信する受信部と、
前記受信部が受信したデータのデータパターンを解読して前記障害情報を検出する障害情報検出部と、
前記障害情報検出部が検出した障害情報に基づいて、同報通知に用いる新たな障害情報を生成する同報障害情報生成部と、
前記同報障害情報生成部が生成した新たな障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信する送信部と、を備えた、
ことを特徴とする情報処理装置のネットワークコントローラ。
【請求項７】
複数の処理ユニット間で伝送路を介して、情報処理に用いるデータを送受信する情報処理装置において、前記処理ユニットで発生した障害の処理を行う障害処理方法であって、
前記処理ユニットに障害が発生すると、発生した障害に関する特定データパターンの障害情報を、情報処理に用いるデータの代わりに、前記伝送路を介して異なる処理ユニットに送信するステップと、
前記伝送路を介してデータを受信するステップと、
受信したデータのデータパターンを解読して前記障害情報を検出するステップと、
前記検出した障害情報を、前記情報処理に用いるデータの代わりに、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信するステップと、を備えた、
ことを特徴とする情報処理装置の障害処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置の障害処理装置、ネットワークコントローラ及び障害処理方法に関する。
【０００２】
【従来の技術】
情報処理装置として、複数の中央処理装置、複数の入出力装置等の処理ユニットを、通信線で接続することによってネットワークを構成したものがある。
【０００３】
このような情報処理装置では、中央処理装置、入出力装置の接続関係についての自由度を上げることが可能になる。また、例えば、入出力装置に障害が発生したとしても、ルーティング規則を変更し、正常に動作する入出力装置と中央処理装置とが接続されることによって、障害に対する耐久性を高めることが可能になる。このため、このような情報処理装置は、中央処理装置、入出力装置のインタコネクトの一形態として用いられるようになってきている。
【０００４】
また、このような情報処理装置では、情報処理装置の運用管理、障害処理等、システムを管理するためのシステム監視装置が備えられている（例えば、特許文献１参照）。
【０００５】
かかるシステム監視装置は、一定期間毎に中央処理装置又は入出力装置の状態を監視する。そして、情報処理装置内において、情報処理装置全体に影響を及ぼすような重大な障害が発生した場合、システム監視装置は、情報処理装置を構成するすべての処理ユニットを停止させる。このようにして、システム監視装置は、エラーの波及を抑止する。
【０００６】
【特許文献１】
特開平１１−３２８１３１号公報（第５−９頁、図１）
【０００７】
【発明が解決しようとする課題】
しかし、かかるシステム監視装置では、一定期間毎に中央処理装置又は入出力装置の状態を監視しているため、障害が発生してから、情報処理装置内のすべてを停止させるまでには、どうしてもタイムラグ（遅延時間）が生じる。このため、障害解析に有効な障害発生直前のデータが情報処理装置内のバッファやトレーサに残っていない場合もあり、障害解析に支障をきたすことになる。
【０００８】
本発明は、このような従来の問題点に鑑みてなされたもので、発生した障害に対する迅速な対応を可能とする情報処理装置の障害処理装置、ネットワークコントローラ及び障害処理方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
この目的を達成するため、本発明の第１の観点に係る情報処理装置の障害処理装置は、
複数の処理ユニット間で伝送路を介して、情報処理に用いるデータを送受信する情報処理装置において、前記処理ユニットで発生した障害の処理を行う障害処理装置であって、
障害が発生すると、発生した障害に関する障害情報を生成し、生成した障害情報を、前記情報処理に用いるデータの代わりに前記伝送路を介して送信する第１の処理ユニットと、
前記障害情報を前記伝送路を介して受信すると、受信した障害情報を、前記情報処理に用いるデータの代わりに前記伝送路を介して、前記障害情報を送信した処理ユニットとは異なる処理ユニットに転送する第２の処理ユニットと、を備えたものである。
【００１０】
このような構成によれば、障害が発生すると、障害情報が、情報処理に用いるデータの代わりに、このデータ伝送用の伝送路を介してすぐに送信されるので、障害に対して迅速な対応が可能となる。
【００１１】
前記第１の処理ユニットは、
発生した障害の障害情報を生成する障害情報生成部と、
前記障害情報生成部が生成した障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記伝送路に接続された第１の処理ユニット又は第２の処理ユニットに送信する送信部と、を備えたものであってもよい。
【００１２】
前記障害情報は、障害情報であることを識別可能な特定のデータパターンを有するものであって、
前記第２の処理ユニットは、
前記情報処理に用いるデータ又は前記障害情報を受信する受信部と、
前記受信部が受信したデータのデータパターンを解読して前記障害情報を検出する障害情報検出部と、
前記障害情報検出部が検出した障害情報に基づいて、同報通知に用いる新たな障害情報を生成する同報障害情報生成部と、
前記同報障害情報生成部が生成した新たな障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信する送信部と、を備えて構成されたものであってもよい。
【００１３】
前記発生した障害の処理内容を示す障害処理記録を記録する記録部を備え、
前記第２の処理ユニットは、前記障害情報を転送すると、前記障害処理記録を前記記録部に送信するように構成されたものであってもよい。
【００１４】
前記第２の処理ユニットは、情報処理を行う複数の処理ユニットへのデータ転送を制御するネットワークコントローラであってもよい。
【００１５】
本発明の第２の観点に係る情報処理装置のネットワークコントローラは、
情報処理を行う複数の処理ユニットが伝送路を介してネットワーク接続された情報処理装置において、前記ネットワーク上のデータ転送を制御するネットワークコントローラであって、
前記伝送路を介して情報処理に用いるデータ又は前記処理ユニットで発生した障害に関する特定データパターンの障害情報を受信する受信部と、
前記受信部が受信したデータのデータパターンを解読して前記障害情報を検出する障害情報検出部と、
前記障害情報検出部が検出した障害情報に基づいて、同報通知に用いる新たな障害情報を生成する同報障害情報生成部と、
前記同報障害情報生成部が生成した新たな障害情報を、前記情報処理に用いるデータの代わりに選択する障害情報選択部と、
前記障害情報選択部が選択した障害情報を、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信する送信部と、を備えたものである。
【００１６】
本発明の第３の観点に係る情報処理装置の障害処理方法は、
複数の処理ユニット間で伝送路を介して、情報処理に用いるデータを送受信する情報処理装置において、前記処理ユニットで発生した障害の処理を行う障害処理方法であって、
前記処理ユニットに障害が発生すると、発生した障害に関する特定データパターンの障害情報を、情報処理に用いるデータの代わりに、前記伝送路を介して異なる処理ユニットに送信するステップと、
前記伝送路を介してデータを受信するステップと、
受信したデータのデータパターンを解読して前記障害情報を検出するステップと、
前記検出した障害情報を、前記情報処理に用いるデータの代わりに、前記障害情報を送信した処理ユニットとは異なる処理ユニットに、前記伝送路を介して送信するステップと、を備えたものである。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態に係る情報処理装置を図面を参照して説明する。
本実施の形態に係る情報処理装置の構成を図１に示す。
本実施の形態に係る情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置）１と、Ｉ／Ｏ装置（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ：入出力装置、図中、「Ｉ／Ｏ」と記す。）２と、ＮＣ（ネットワークコントローラ）３と、ＳＰ（サービスプロセッサ）４と、を備えて構成されている。
【００１８】
情報処理装置１００は、ブロック１０１〜１０８に分割されている。ブロック１０１、１０２は、それぞれ、２つのＣＰＵ１と１つのＳＰ４とを備える。ブロック１０３〜１０６は、それぞれ、４つのＮＣ３と２つのＳＰ４とを備える。ブロック１０７，１０８は、それぞれ、２つのＩ／Ｏ装置２と１つのＳＰ４とを備える。
【００１９】
各ＣＰＵ１と、Ｉ／Ｏ装置２と、ＮＣ３と、ＳＰ４と、は通信線を介して接続される。
【００２０】
ＣＰＵ１は、データの演算処理を行うものである。Ｉ／Ｏ装置２は、外部装置（図示せず）からＣＰＵ１にデータを送ったり、ＣＰＵ１から送信されたデータを外部装置に送ったりするものである。このように、ＣＰＵ１、Ｉ／Ｏ装置２は、通信線を伝送路として他のＣＰＵ１、Ｉ／Ｏ装置２との間で情報処理に用いるデータを送受信し、情報処理を行う。
【００２１】
ＣＰＵ１、Ｉ／Ｏ装置２は、それぞれ、図２に示すように、データ転送部１１と、エラー通知パケット生成部１２と、送信制御部１３と、受信制御部１４と、エラー通知パケット検出部１５と、を備える。
【００２２】
データ転送部１１は、競合調停部（図示せず）から出力されたデータを、エラー通知パケット生成部１２に出力するものである。
【００２３】
エラー通知パケット生成部１２は、情報処理装置１００内のすべてのユニットに対してエラー通知パケットを送出する必要があるようなエラーを検出すると、エラー通知パケットを生成する。エラー通知パケットは、障害が発生したことを通知するための障害情報となる。エラー通知パケット生成部１２は、このようなエラーを検出すると、情報処理に用いるデータからなるデータパケットの代わりに、生成したエラー通知パケットを送信制御部１３に出力する。
【００２４】
このエラー通知パケット生成部１２は、図３に示すように、エラー通知パケット保持部２１と、エラー判定部２２−１〜２２−ｎ（ｎは正の整数）と、ＥＩＦ保持部２３−１〜２３−ｎと、論理和演算部２４と、Ｆ／Ｆ２５と、微分化回路部２６と、セレクタ２７と、を備えて構成される。
【００２５】
エラー通知パケット保持部２１は、エラー通知パケットを保持するものである。このエラー通知パケットは、通常のデータパケットとは判別可能な特定のデータパターンを有するものである。
【００２６】
エラー判定部２２−１〜２２−ｎは、情報処理装置１００内の様々なエラー要因を判別して、情報処理装置１００内のすべてのユニットに対してエラー通知パケットを送出する必要があるか否かを判定するものである。
【００２７】
ＥＩＦ保持部２３−１〜２３−ｎは、エラー判定部２２−１〜２２−ｎの判定結果をＥＩＦ（Ｅｒｒｏｒ  Ｉｎｄｉｃａｔｏｒ  Ｆｌａｇ）として保持するものである。
論理和演算部２４は、ＥＩＦ保持部２３−１〜２３−ｎが保持したＥＩＦの値の論理和演算を行うものである。
Ｆ／Ｆ２５は、論理和演算部２４の演算結果を保持するものである。
【００２８】
微分化回路部２６は、論理和演算部２４の演算結果とＦ／Ｆ２５の出力値とに基づいて論理和演算部２４の演算結果の微分演算を行うものである。
【００２９】
微分化回路部２６は、論理和演算部２４の演算結果が‘１’であって、Ｆ／Ｆ２５の出力値が‘０’のときにのみ‘１’を出力する。
【００３０】
従って、Ｆ／Ｆ２５の出力値が‘１’になった後に、次のクロックタイミングにおいて、論理和演算部２４の演算結果が‘１’であったとしても、微分化回路部２６は、‘０’を出力する。
【００３１】
セレクタ２７は、微分化回路部２６の演算結果に従って、エラー通知パケット生成部１２から出力されたデータパケット、エラー通知パケット保持部２１が保持しているエラー通知パケットのいずれか一方を選択出力するものである。
【００３２】
セレクタ２７は、微分化回路部２６の演算結果が‘０’のときは、データパケットを選択出力し、微分化回路部２６の演算結果が‘１’のときは、エラー通知パケット保持部２１が保持しているエラー通知パケットを選択出力する。
【００３３】
図２に戻り、送信制御部１３は、エラー通知パケット生成部１２が選択出力したパケットを送信するものである。
受信制御部１４は、ＮＣ３から受信したパケットを受信するものである。
【００３４】
エラー通知パケット検出部１５は、受信制御部１４が受信したパケットからエラー通知パケットを検出するものであり、受信制御部１４が受信したパケットのデータパターンを解読するデコーダ（図示せず）を備える。
【００３５】
そして、エラー通知パケット検出部１５は、解読した結果、受信制御部１４が受信したパケットがエラー通知パケットであるときは、ＣＰＵ１又はＩ／Ｏ装置２の動作を停止させるための停止指示情報を出力する。
【００３６】
図１に戻り、ＳＰ４は、情報処理装置１００の運用管理、障害処理等、システムを管理するためのものである。
ＳＰ４は、ＣＰＵ１，Ｉ／Ｏ装置２，ＮＣ３の数が増えて、装置間距離等による物理的制約により、すべてのＮＣ３を管理するできない場合、複数備えられる。
【００３７】
ＳＰ４は、ＣＰＵ１，Ｉ／Ｏ装置２，ＮＣ３との間で高速のデータ通信が行われないため、ＮＣ３によって構成されるネットワークの転送速度に比べ、低速のイーサネット（登録商標）等により接続される。これにより、コスト低減が図られている。
【００３８】
ＣＰＵ１，Ｉ／Ｏ装置２、ＮＣ３は、システム内の全装置が停止すると、内部のレジスタ、バッファ、トレーサ等、障害解析に必要なデータをＳＰ４に供給する。
【００３９】
ＳＰ４は、ＮＣ３、ＣＰＵ１，Ｉ／Ｏ装置２から供給されたデータをログとして記録する。ＳＰ４は、ログを記録するための記録部（図示せず）を備える。
【００４０】
ＮＣ３は、ネットワークを構成するための一要素であり、ＣＰＵ１、Ｉ／Ｏ装置２を高速に接続し、パケット中に記述された行き先装置番号に従い、ルーティングを行い、ＣＰＵ１とＩ／Ｏ装置２との間でデータ転送を行う。
【００４１】
本実施の形態では、ＮＣ３を４ポートのものとして説明する。但し、ＮＣ３は、４ポート未満のものであってもよいし、５ポート以上のものであってもよい。
【００４２】
ＮＣ３は、図４に示すように、受信制御部３１−１〜３１−４と、エラー通知パケット検出部３２−１〜３２−４と、同報パケット生成部３３と、競合調停部３４と、エラー通知パケット選択部３５−１〜３５−４と、送信制御部３６−１〜３６−４と、を備えて構成される。
【００４３】
受信制御部３１−１〜３１−４は、ネットワークを介して送信されたパケットを受信するものである。
【００４４】
エラー通知パケット検出部３２−１〜３２−４は、それぞれ、受信制御部３１−１〜３１−４が受信したパケットをデコードしてエラー通知パケットを検出するものであり、図５に示すように、デコーダ４１を備える。
【００４５】
デコーダ４１は、複数ビットのデータによって構成されるエラー通知パケットと同じパターンのデータを保有し、受信制御部３１−１〜３１−４が受信したパケットのデータパターンを解読する。
【００４６】
そして、デコーダ４１は、保有するデータのパターンが、受信したパケットのデータのパターンと不一致の場合、デコーダ４１は、受信パケットがデータパケットであると判別し、このデータパケットを競合調停部３４に出力する。
【００４７】
一方、２つのパターンが一致した場合、デコーダ４１は、同報パケット生成部３３にエラー通知パケット情報１を出力する。このエラー通知パケット情報１は、受信したパケットがエラー通知パケットであることを示すものであり、パケットを受信したときのタイミング信号とパケットデータとを含む。
【００４８】
図４に戻り、同報パケット生成部３３は、エラー通知パケット検出部３２−１〜３２−４のいずれかから出力されたエラー通知パケット情報１に基づいて、同報通知するためのエラー通知パケット情報２を生成するものである。
【００４９】
同報パケット生成部３３は、図６に示すように、論理和演算部４２と、フラグ保持部４３と、微分化回路部４４と、セレクタ４５と、エラー情報保持部４６と、を備えて構成される。
【００５０】
論理和演算部４２は、エラー通知パケット検出部３２−１〜３２−４から、エラー通知パケット情報１が供給された場合に、そのタイミング信号の論理和を演算するものである。
【００５１】
フラグ保持部４３は、論理和演算部４２が演算した演算結果を送出フラグとして保持するものである。
【００５２】
微分化回路部４４は、論理和演算部４２の出力値とフラグ保持部４３が保持している送出フラグとに基づいてタイミング信号の微分演算を行うものである。
【００５３】
微分化回路部４４は、論理和演算部４２の出力値が‘１’、フラグ保持部４３が保持している送出フラグの値が‘０’のときにのみ‘１’を出力する。
従って、フラグ保持部４３が保持している送出フラグの値が‘１’となった後に論理和演算部４２の出力値が‘１’になったとしても、微分化回路部４４は、演算結果として‘０’を出力する。
【００５４】
この演算結果は、タイミング信号の変化を示し、微分化回路部４４がこのような演算を行うことにより、同報パケット生成部３３は、同一のＮＣ３からエラー通知パケットの同報通知が複数発行されないように制御する。
尚、発生した障害の処理後、ＮＣ３は、フラグ保持部４３が保持している送出フラグの値を、‘０’にリセットする。
【００５５】
同報パケット生成部３３は、データパケット及びエラー通知パケットのいずれを選択するかを指示するための選択指示情報として、微分化回路部４４の演算結果を出力する。
【００５６】
セレクタ４５は、各ポートから供給されたエラー通知パケット情報１のうち、同報通知に用いる情報を選択するものである。
エラー情報保持部４６は、セレクタ４５が選択したエラー通知パケット情報１に含まれているデータを保持するものである。
【００５７】
同報パケット生成部３３は、エラー情報保持部４６が保持したデータをエラー通知パケット情報２として、エラー通知パケット選択部３５−１〜３５−４のすべてに供給する。
【００５８】
図４に戻り、競合調停部３４は、受信したパケットがデータパケットである場合に、このデータパケットの送信先を判別し、ルーティングを行うものである。競合調停部３４は、データパケットを、エラー通知パケット選択部３５−１〜３５−４のうちのいずれかに出力する。
【００５９】
エラー通知パケット選択部３５−１〜３５−４は、それぞれ、同報パケット生成部３３から供給された選択指示情報に従って、エラー通知パケット又はデータパケットを選択出力するものである。エラー通知パケット選択部３５−１〜３５−４は、それぞれ、図７に示すように、データ転送制御部４７と、セレクタ４８と、を備える。
【００６０】
データ転送制御部４７は、競合調停部３４から出力されたデータパケットの転送を制御するものである。
【００６１】
セレクタ４８は、同報パケット生成部３３から供給された選択指示情報に基づいて、エラー通知パケット情報２、データパケットのうちのいずれか一方を選択出力するものである。セレクタ４８は、選択指示情報が‘１’であれば、エラー通知パケット情報２を選択出力し、選択指示情報が‘０’であれば、データパケットを選択出力する。
【００６２】
エラー通知パケット選択部３５−１〜３５−４は、セレクタ４８が選択出力したデータパケット又はエラー通知データパケットを送信制御部３６−１〜３６−４に出力する。
【００６３】
図４に戻り、送信制御部３６−１〜３６−４は、エラー通知パケット選択部３５−１〜３５−４から出力されたデータパケット又はエラー通知パケットを、複数のＣＰＵ１，Ｉ／Ｏ装置２、ＮＣ３のうちの隣接するいずれかのものに送信するものである。
【００６４】
次に本実施の形態に係るコンピュータシステムの動作を説明する。
ＣＰＵ１又はＩ／Ｏ装置２は、エラーの検出処理を行い、エラーを検出しなければ、データパケットを、隣接するＮＣ３に送信し、エラーを検出すると、エラー通知パケットを隣接するＮＣ３に送信する。
【００６５】
このＣＰＵ１又はＩ／Ｏ装置２のエラー通知処理を図８に示すフローチャートに基づいて説明する。
図２に示すＣＰＵ１又はＩ／Ｏ装置２のデータ転送部１１は、エラー通知パケット生成部１２にデータを供給する（ステップＳ１１）。
【００６６】
エラー通知パケット生成部１２のエラー判定部２２−１〜２２−ｎは、情報処理装置１００内の様々なエラー要因を判別して、システム内の全ユニットに対してエラー通知パケットを送出する必要があるようなエラーが発生したか否かを判定する（ステップＳ１２）。
【００６７】
このようなエラーが発生したと判定した場合（ステップＳ１２においてＹｅｓ）、図３に示すエラー判定部２２−１〜２２−ｎは、ＥＩＦ保持部２３−１〜２３−ｎにＥＩＦの値として‘１’を保持させる（ステップＳ１３）。尚、ＣＰＵ１は、ＥＩＦ保持部２３−１〜２３−ｎのいずれかにこのＥＩＦが保持されると、内部の動作を停止させる。
【００６８】
論理和演算部２４は、ＥＩＦ保持部２３−１〜２３−ｎが保持しているＥＩＦの論理和を演算する（ステップＳ１４）。
【００６９】
微分化回路部２６は、Ｆ／Ｆ２５が保持している値と論理和演算部２４が出力した演算結果とに基づいて微分演算を行い、その演算結果を出力する（ステップＳ１５）。尚、Ｆ／Ｆ２５は、微分化回路部２６が、微分演算を行った後、論理和演算部２４が出力した演算結果を保持する。
【００７０】
Ｆ／Ｆ２５が保持している値が‘０’であって、論理和演算部２４の演算結果が‘１’であれば、微分化回路部２６は、演算結果として‘１’を出力する。
【００７１】
しかし、論理和演算部２４が出力した演算結果が‘１’であっても、Ｆ／Ｆ２５が保持している値が‘１’であれば、微分化回路部２６は、演算結果として‘０’を出力する。
【００７２】
セレクタ２７は、微分化回路部２６から出力された演算結果に基づいて、エラー通知パケット保持部２１が保持しているエラー通知パケット、又はデータパケットを選択出力する。
【００７３】
微分化回路部２６の出力値（演算結果）が‘０’であれば、セレクタ２７は、データパケットを選択出力し、微分化回路部２６の出力値が‘１’であれば、セレクタ２７は、エラー通知パケットを選択出力する。
【００７４】
そして、図２に示すエラー通知パケット生成部１２は、セレクタ２７が選択したパケットを送信制御部１３に出力する（ステップＳ１６）。
【００７５】
送信制御部１３は、エラー通知パケット生成部１２から出力されたパケットを隣接するＮＣ３、に送信する（ステップＳ１７）。
【００７６】
ＮＣ３は、隣接するＣＰＵ１、Ｉ／Ｏ装置２、あるいは他のＮＣ３から、パケットを受信し、受信したパケットがデータパケットであるかエラー通知パケットであるかを判別して、受信したパケットの送信又はエラー通知パケットの同報送信を行う。
【００７７】
このＮＣ３の転送処理を図９に示すフローチャートに基づいて説明する。
図４に示すＮＣ３の受信制御部３１−１〜３１−４は、ＣＰＵ１又はＩ／Ｏ装置２からのパケットを受信し、受信したパケットをエラー通知パケット検出部３２−１〜３２−４に供給する（ステップＳ２１）。
【００７８】
図５に示すエラー通知パケット検出部３２−１〜３２−４のデコーダ４１は、供給されたパケットをデコードする（ステップＳ２２）。
【００７９】
デコーダ４１は、供給されたパケットのデータパターンに基づいて、受信したパケットがデータパケットであるかエラー通知パケットであるかを判別する（ステップＳ２３）。
【００８０】
受信したパケットがデータパケットであれば（ステップＳ２３においてＮｏ）、デコーダ４１は、データパケットを図４に示す競合調停部３４に転送する（ステップＳ２４）。
【００８１】
競合調停部３４は、デコーダ４１から転送されたデータパケットの送信先を判別し、ルーティングを行う（ステップＳ２５）。そして、競合調停部３４は、エラー通知パケット選択部３５−１〜３５−４のうち、判別した送信先に対応したものに、このデータパケットを転送する（ステップＳ２６）。
【００８２】
一方、受信パケットがエラー通知パケットであれば（ステップＳ２３においてＹｅｓ）、デコーダ４１は、エラー通知パケット情報１を同報パケット生成部３３に供給する（ステップＳ２７）。このエラー通知パケット情報１は、前述のように、パケットを受信したタイミング信号である‘１’と受信データとからなる。
【００８３】
図６に示す同報パケット生成部３３の論理和演算部４２は、エラー通知パケット情報１からタイミング信号を取り出して、その論理和演算を行う（ステップＳ２８）。
【００８４】
微分化回路部４４は、論理和演算部４２の演算結果とフラグ保持部４３が保持している送出フラグの値とに基づいて微分演算を行う（ステップＳ２９）。
【００８５】
論理和演算部４２の演算結果が‘１’であって、フラグ保持部４３が保持しているフラグ値は‘０’であれば、微分化回路部４４は、演算結果として、‘１’を出力する。
【００８６】
一方、異なるＣＰＵ１等において、再度、エラーが発生した場合、エラー通知パケット情報１の受信タイミング信号は再び‘１’となる。しかし、受信タイミング信号が再び‘１’となったとしても、フラグ保持部４３が保持している送出フラグは‘１’であるため、微分化回路部４４は、‘０’を出力する。このため、エラー通知パケットの同報通知は行われなくなる。
【００８７】
このように、異なるＣＰＵ１からほぼ同時にエラー通知パケットが出力されたとしても、エラー通知パケットの同報通知は制限される。微分化回路部４４は、この演算結果を選択指示情報として出力する。
【００８８】
同報パケット生成部３３のセレクタ４５は、微分化回路部４４が出力した選択指示情報に基づいていずれかのエラー通知パケット情報１を選択する（ステップＳ３０）。
【００８９】
エラー情報保持部４６は、セレクタ４５が選択したエラー通知パケット情報１を格納する（ステップＳ３１）。
【００９０】
同報パケット生成部３３は、微分化回路部４４の演算結果を選択指示情報として、エラー通知パケット選択部３５−１〜３５−４のすべてに供給する（ステップＳ３２）。
【００９１】
図７に示す各ポートのエラー通知パケット選択部３５−１〜３５−４のセレクタ４８は、同報パケット生成部３３から供給された選択指示情報に基づいて、データパケット、エラー通知パケット情報２のいずれか一方を選択出力する（ステップＳ３３）。
【００９２】
セレクタ４８は、選択したパケットを送信制御部３６−１〜３６−４に出力する。図４に示す送信制御部３６−１〜３６−４は、パケットを送信する（ステップＳ３４）。
【００９３】
このように、１つのポートでエラー通知パケットを受信した場合、ＮＣ３は、すべてのポートからエラー通知パケットの同報通知を行うことになる。これにより、ＮＣ３内で滞留しているデータパケットを追い越して、エラー通知を行うことが可能になる。
【００９４】
ＮＣ３が出力したエラー通知パケットは、同じように隣接するＮＣ３，ＣＰＵ１あるいはＩ／Ｏ装置２に、順次、通知される。そして、このような同報通知が繰り返し行われることにより、エラー通知パケットは、ネットワーク内を伝播して行く。
【００９５】
前述したように、一度、ＮＣ３でエラー通知パケットの同報通知が行われると、同一のＮＣ３は、エラー通知パケットを受信しても同報通知は行わない。
【００９６】
エラー通知パケットがＮＣ３を介してＣＰＵ１又はＩ／Ｏ装置２に到達すると、図２に示すＣＰＵ１又はＩ／Ｏ装置２の受信制御部１４は、このエラー通知パケットを受信する。エラー通知パケット検出部１５は、エラー通知パケットを検出すると、停止指示情報を出力する。ＣＰＵ１又はＩ／Ｏ装置２は、停止指示情報に従って内部の動作を停止させる。
【００９７】
情報処理装置１００内の全ユニットにエラー通知パケットが到達し、情報処理装置１００内の全ユニットが停止すると、ＣＰＵ１，Ｉ／Ｏ装置２、ＮＣ３は、内部のレジスタ、バッファ、トレーサ等、障害解析に必要なデータを図１に示すＳＰ４に供給する。ＳＰ４は、供給されたデータをログとして記録部に記録する。
そして、ＳＰ４の記録部に記録されたログに基づいて障害発生時におけるデータ解析が行われる。
【００９８】
以上説明したように、本実施の形態によれば、エラーの通知を、レイテンシの長いＳＰ４を介して行うことなく、高速の通常のデータ転送のパスを使用して、優先的にエラー通知パケットを転送するようにした。
【００９９】
従って、障害発生時のエラー通知を迅速に行うことができ、情報処理装置１００内の全ユニットをすぐに停止させることができ、発生した障害に対し、迅速に対応することができる。
【０１００】
また、ＳＰ４が、障害解析に必要なデータをログとして記録部に記録するので、データのすべりを最小限にしたログデータを採取することができる。
【０１０１】
尚、本発明を実施するにあたっては、種々の形態が考えられ、上記実施の形態に限られるものではない。
例えば、上記実施の形態では、システム内の全装置を停止するエラーについて説明した。しかし、インタフェースのエラー等、システム全体を停止する必要がない障害等においても、エラー通知パケットを追加定義することにより、トレーサ等の通常動作に影響のないリソースのみを停止することもできる。
【０１０２】
また、ＣＰＵ１、Ｉ／Ｏ装置２が備えるエラー通知パケット生成部１２をＮＣ３に備えることもできる。このようにすれば、ＮＣ３内で障害が発生した場合でも、障害の発生を通知することができる。
【０１０３】
【発明の効果】
以上説明したように、本発明によれば、発生した障害に対し、迅速に対応することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】図１に示すＣＰＵ又はＩ／Ｏ装置の構成を示すブロック図である。
【図３】図２に示すエラー通知パケット生成部の構成を示すブロック図である。
【図４】図１に示すＮＣ（ネットワークコントローラ）の構成を示すブロック図である。
【図５】図４に示すエラー通知パケット検出部の構成を示すブロック図である。
【図６】図４に示す同報パケット生成部の構成を示すブロック図である。
【図７】図４に示すエラー通知パケット選択部の構成を示すブロック図である。
【図８】図１に示すＣＰＵ又はＩ／Ｏ装置のエラー通知処理を示すフローチャートである。
【図９】図１に示すＮＣの転送処理を示すフローチャートである。
【符号の説明】
１  ＣＰＵ
２  Ｉ／Ｏ装置
３  ネットワークコントローラ（ＮＣ）
４  ＳＰ（サービスプロセッサ）
１２  エラー通知パケット生成部
３１−１〜３１−４  受信制御部
３２−１〜３２−４  エラー通知パケット検出部
３３  同報パケット生成部
３４  競合調停部
３５−１〜３５−４  エラー通知パケット選択部
３６−１〜３６−４  送信制御部
１００  情報処理装置
【図１】
2005018338.tif 000003
【図２】
2005018338.tif 000004
【図３】
2005018338.tif 000005
【図４】
2005018338.tif 000006
【図５】
2005018338.tif 000007
【図６】
2005018338.tif 000008
【図７】
2005018338.tif 000009
【図８】
2005018338.tif 000010
【図９】
2005018338.tif 000011