(57)【特許請求の範囲】
【請求項１】
ヘルスチェック起動部、パケット送信起動部、ヘルスチェック監視部、パケット受信処理部、パケット判定部、ヘルスチェック結果判定部、障害部位特定部をソフトウェアとして含むＣＰＵと、
前記ヘルスチェック起動部による監視パケットの送信数をカウントするヘルスチェック送信数、前記パケット判定部による前記監視パケットの受信数をカウントするヘルスチェック受信数、前記ヘルスチェック起動部にて前記監視パケットの送信数をカウントするヘルスチェック起動部送信統計、前記パケット送信起動部で前記監視パケットの受信数をカウントするパケット送信起動部受信統計、前記パケット送信起動部で前記監視パケットの送信数をカウントするパケット送信起動部送信統計、前記パケット受信処理部で前記監視パケットの受信数をカウントするパケット受信部受信統計、前記パケット受信処理部で前記監視パケットの送信数をカウントするパケット受信部送信統計、前記パケット判定部で前記監視パケットの受信数をカウントするパケット判定部受信統計を含むメモリと、
前記監視パケットの受信数をカウントする転送受信統計と前記監視パケットの送信数をカウントする転送送信統計を有する、ハードウェアとしての転送先決定部と、
を備え、
前記ヘルスチェック起動部は、前記パケット送信起動部へ前記監視パケットを送信し、前記ヘルスチェック送信数および前記ヘルスチェック起動部送信統計をカウントアップし、
前記パケット送信起動部は、前記監視パケットを受信したら、前記パケット送信起動部受信統計をカウントアップし、前記転送先決定部に向けて前記監視パケットを送信し、前記パケット送信起動部送信統計をカウントアップし、
前記転送先決定部は、前記監視パケットを受信したら、前記転送受信統計をカウントアップし、前記パケット受信処理部へ向けて、前記監視パケットを送信し、前記転送送信統計をカウントアップし、
前記パケット受信処理部は、前記監視パケットを受信したら、前記パケット受信部受信統計をカウントアップし、前記監視パケットを前記パケット判定部へ送信し、前記パケット受信部送信統計をカウントアップし、
前記パケット判定部は、前記監視パケットを受信したら、前記パケット判定部受信統計をおよび前記ヘルスチェック受信数をカウントアップし、
前記ヘルスチェック監視部は、前記パケット判定部が前記監視パケットを一定時間以内に受信しなかった場合、前記ヘルスチェック結果判定部を起動し、
前記ヘルスチェック結果判定部は、前記ヘルスチェック送信数と前記ヘルスチェック受信数を比較し、両方の数が不一致であれば異常と判断し、前記障害部位特定部を起動し、
前記障害部位特定部は、監視パケットの伝送経路に従い予め設定された判定順序で、どの送信数若しくは送信統計と、どの受信数若しくは受信統計とを比較して一致又は不一致を判定するかを予め定めた判定内容と、該判定内容に対応する障害部位とに従い、該当する判定内容に対応する障害部位を判定し、該障害部位を含む障害情報を表示部に表示又は出力部に出力し、
前記監視パケットは、折り返す設定とした折り返し要否フラグと、監視パケットとして設定した監視パケットフラグを含み、
前記転送決定部は、折り返し要否フラグが折り返す設定であれば、受信パケットを監視パケットであるとして折り返し、一方、前記転送決定部は、折り返し要否フラグが折り返さない設定であれば、受信パケットを転送先へ転送し、
前記パケット判定部は、監視パケットフラグが監視パケット設定であれば、監視パケットを受信したと判断する
パケット中継装置。
【請求項２】
請求項１に記載のパケット中継装置において、
予め設定された判定順序により、判定内容として、前記ヘルスチェック起動部から監視パケットが送信されて前記パケット判定部で受信される経路の順序に従って、第１の部位からの送信統計と第２の部位での受信統計とを比較する内容、又は、第１の部位からの送信統計と第１の部位での受信統計とを比較する内容が定義され、該判定内容が不一致の場合の障害部位として前記第１の部位が定義されている、判定テーブルを備え、
前記障害部位特定部は、前記判定テーブルを参照し、障害部位を判定する
ことを特徴とするパケット中継装置。
【請求項３】
請求項１又は２に記載のパケット中継装置において、
予め定められたチェック間隔毎に前記ヘルスチェック起動部を起動し、前記監視パケットの送信間隔を決定するタイマ部をさらに備えたことを特徴とするパケット中継装置。
【請求項４】
請求項１乃至３のいずれかに記載のパケット中継装置において、
前記監視パケットの受信数をカウントする第１の受信統計と前記監視パケットの送信数をカウントする第１の送信統計を備え、前記監視パケットを、前記パケット送信起動部から受信し、前記転送先決定部に送信する第１のハードウェア部位及び、
前記監視パケットの受信数をカウントする第２の受信統計と前記監視パケットの送信数をカウントする第２の送信統計を備え、前記監視パケットを、前記転送先決定部から受信し、前記パケット受信処理部へ送信する第２のハードウェア部位
のうち少なくとも一方をさらに備え、
前記パケット送信起動部は、前記第１のハードウェア部位に前記監視パケットを送信し、
前記第１のハードウェア部位は、前記監視パケットを受信したら前記第１の受信統計をカウントアップし、前記転送先決定部へ、前記監視パケットを送信し、前記第１の送信統計をカウントアップし、
前記転送先決定部は、前記第１のハードウェア部位から前記監視パケットを受信する処理または前記第２のハードウェア部位へ前記監視パケットを送信する処理の少なくとも一方を実行し、
前記第２のハードウェア部位は、前記監視パケットを受信したら、前記第２の受信統計をカウントアップし、前記第２のハードウェア部位は前記パケット受信処理部へ前記監視パケットを送信し、前記第２のハードウェア部位は前記第２の送信統計をカウントアップし、
前記障害部位特定部は、前記第１及び第２の受信統計及び前記第１及び第２の送信統計を参照して、障害部位を判定することができるようにしたことを特徴とするパケット中継装置。
【請求項５】
請求項１乃至４のいずれかに記載のパケット中継装置において、
前記パケット判定部は、
前記監視パケットを受信したら、前記ヘルスチェック監視部を停止し、前記パケット判定部はヘルスチェック結果判定部を起動することを特徴とするパケット中継装置。
【請求項６】
情報処理装置間で送受信されるデータパケットをネットワークを介して中継するパケット中継装置であって、
前記ネットワークに接続されるパケット受信部と、
前記ネットワークに接続されるパケット送信部と、
前記パケット受信部及び前記パケット送信部に接続され、前記ネットワークから前記パケット受信部を介して受信され前記パケット送信部を介して送信される前記データパケットの中継経路を決定する転送先決定部と、
前記パケット受信部及びパケット送信部に接続される制御部と、
を備え、
前記パケット受信部及びパケット送信部及び前記転送先決定部は、それぞれ前記制御部により生成され所定の経路で転送される監視パケットの通過状況を保持し、
前記制御部は、前記パケット受信部とパケット送信部と前記転送先決定部を含む所定の経路に向けて監視パケットを送信し、送信された監視パケットの受信状況に基づいて、装置異常を判定し、
装置異常と判定した場合、前記パケット受信部及びパケット送信部及び前記転送先決定部から前記監視パケットの通過状況を収集し、収集結果に基づいて、前記パケット受信部及びパケット送信部及び前記転送先決定部のいずれかで障害がおこったかを特定し、特定結果と障害情報とともに出力部または表示部に出力し、
前記監視パケットは、折り返す設定とした折り返し要否フラグと、監視パケットとして設定した監視パケットフラグを含み、
前記転送決定部は、折り返し要否フラグが折り返す設定であれば、受信パケットを監視パケットであるとして折り返し、一方、前記転送決定部は、折り返し要否フラグが折り返さない設定であれば、受信パケットを転送先へ転送し、
前記制御部は、監視パケットフラグが監視パケット設定であれば、監視パケットを受信したと判断する
パケット中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット中継装置およびシステム、障害検出方法に係り、特に、パケット中継装置のパケット送信機能またはパケット受信機能またはパケット転送機能等の各機能および/または各機能を実行するモジュールで故障が発生した際に故障部位を特定するパケット中継装置およびシステム、障害検出方法に関する。
【背景技術】
【０００２】
近年のネットワークではネットワークサービスの多様化により、パケット中継装置は多機能化および高機能化が著しい。サポートするネットワークプロトコル、ネットワーク保守機能およびネットワーク運用機能も増加傾向にある。
まず、パケット中継装置のソフトウェアは、ネットワークプロトコルによる経路制御、ネットワーク保守機能およびネットワーク運用機能を実現する。
ネットワークプロトコルによる経路制御、ネットワーク保守機能およびネットワーク運用機能では、制御に必要なパケットの自装置から送信する機能および自装置宛のパケットとして受信する機能を有する。従来は上述したソフトウェアは機能毎にパケットの送受信機能を備えていたが、ソフトウェア機能の多機能化により、パケット送受信機能を有する各ソフトウェア機能から独立させたレイヤ構造にするソフトウェアモジュール構造が一般的である。この結果、パケット送信機能およびパケット受信機能を実現するソフトウェアを障害検出単位として見た場合、通過するモジュール数は増加してきている。
また、パケット中継装置のハードウェアは、多機能化および高機能化を実現するため装置を構成するハードウェアデバイスが増加している。またハードウェアは価格競争の面から市販品のハードウェアデバイスを用いる場合が多い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２２９４７７号公報
【特許文献２】特開２０１１−１５１４７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
パケット中継装置は、自装置からのパケット送信および自装置宛のパケットの受信において、上述したソフトウェアのモジュールとハードウェアの各デバイスで連携してパケット送信機能およびパケット受信機能を実現する。しかしながら上述した様に、ソフトウェアモジュールの増加およびハードウェア構成の複雑化により、パケット送信機能およびパケット受信機能を実現するソフトウェアモジュールおよびハードウェアデバイスで想定外の障害が発生する場合がある。また、ハードウェアデバイスが汎用部品の場合、全ての障害をデバイス自身で検出できない場合がある。このようにパケット送信機能およびパケット受信機能を実現する全てのソフトウェアモジュールおよびハードウェアデバイスで全ての障害を自律的に検出ができない場合、以下のような課題がある。
【０００５】
パケット中継装置では、パケット送信機能またはパケット受信機能を実現する部位にて装置が自律的な検出が出来ない障害によりパケット送信機能またはパケット受信機能が停止した場合、パケットの送信または受信が正常に動作しなくなる。この結果、例えばネットワークプロトコルを制御するプロトコル制御パケットの送信または受信が正常に動作しないことでネットワーク装置間の隣接関係の維持が出来なくなる場合があり、当該装置の影響のみならず当該装置が加入するネットワーク全体に影響を及ぼすことが想定される。
また、パケット送信機能またはパケット受信機能を実現する部位にて装置が自律的な検出が出来ない障害によりパケットの送信または受信が正常に動作しない現象が発生した場合、障害部位の特定は非常に困難であり復旧に時間を要すことが想定される。このような状況からパケット中継装置は高信頼化が必須である。高信頼化技術として多数のハードウェアデバイスを分散したボード上に実装する構造とし、一部のハードウェアデバイスが故障した場合は故障したボードのみを停止させる縮退運転をすることで、当該装置の正常な部位の運用を継続させることが一般的であるが、この場合においても全ての障害を確実に検出し、かつ障害部位を特定することは必要である。
【０００６】
近年のパケット中継装置においては、上述した課題を解決するため、以下に示すような３つの方式によりパケット送信機能およびパケット受信機能の動作の正常性を確認できる機能を装備することが一般的である。
まず一つは、特開2006-229477号公報で示されるような、自装置において自装置のパケット送信機能およびパケット受信機能の動作の正常性を確認できる機能技術である。
ただし、特開2006-229477号公報では、自装置からのパケット送信および自装置宛のパケットの受信において、複数のソフトウェアモジュールおよび複数のハードウェアデバイスを経由してパケット送信およびパケット受信を実現している場合、パケット送信機能およびパケット受信機能の一連の動作の正常性は確認できるが、パケット送信機能およびパケット受信機能を形成するいずれの部位による障害であるかを特定することは困難である。
【０００７】
次に、特開2011-151470号公報で示されるような、他装置から自装置のパケット送信機能および受信機能の動作の正常性を確認できる機能である。ただし、特開2011-151470号公報では、パケット受信機能およびパケット送信機能にてパケットの廃棄を制御する場合は廃棄部位を特定可能であるが、予期しない障害による廃棄または疎通不可能となった場合、パケット中継の停止要因となった部位を特定することは困難である。
最後に、監視パケットによる自装置内機能監視の従来の技術による例を、図３〜図４を参照して説明する。
以下、パケット中継装置が、ＣＰＵ３０１、パケット送信機能を有するハードウェア  パケット送信部３０２、パケットの中継経路を決定する転送先決定部３０３、パケットの受信機能を有するパケット受信部３０４、ソフトウェアが情報を記憶できるメモリ空間３０５を備えたパケット中継装置を例とする。
ソフトウェアの各モジュールは１つのＣＰＵ上でそれぞれのモジュールが独立したタスクとして動作可能とした場合を例とする。またソフトウェアで、パケット送受信をするソフトウェア間インタフェースはキュー、パケット送受信をしないソフトウェア間モジュール間のインタフェースは関数コールによる起動とした場合を例とし、ＣＰＵおよび各ハードウェアのパケット通信インタフェースはキューを用いる場合を例とし、送信側は送信先のキューへの積み込み完了で送信成功と見なす場合を例とし、受信側はパケット受信検出を一定周期で確認することでパケットを受信する場合を例とし、メモリ空間はソフトウェアが自由にアクセス出来ることを前提とした記載とする。
【０００８】
まず図３、図４、図５にて従来技術の基本原理を説明する。
図３は、パケット中継装置の機能ブロック図である。
図４は、ヘルスチェック監視機能による障害部位特定までの流れ図である。
図５は、監視パケット構造を示す図である。
ＣＰＵ３０１上で動作するソフトウェアは、監視パケット３４１の送信間隔を決定するタイマ部３１１、監視パケット３４１を作成するヘルスチェック起動部３１２、監視パケット３４１をハードウェアへ送信するパケット送信起動部３１３、監視パケット３４１の受信を監視するヘルスチェック監視部３１４、監視パケット３４１をハードウェアから受信するパケット受信部３１５、受信した監視パケット３４１を他のパケットと識別するパケット判定部３１６、ヘルスチェック監視結果を決定するヘルスチェック結果判定部３１７を備える。
メモリ空間３０５は、監視パケット３４１の送信数をカウントするヘルスチェック送信数３２１、監視パケット１４１の受信数をカウントするヘルスチェック受信数３２２を含む。
【０００９】
ソフトウェアのタイマ部３１１は、ヘルスチェック間隔毎にタイムアウトしソフトウェアのヘルスチェック起動部３１２を起動する。（４０１）（なお、かっこ内の数字は、図４に示す数字に対応する。以下、同様。）
ソフトウェアのヘルスチェック起動部３１２は、監視パケット３４１を作成する。この際、図５のように、装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を折り返す設定５０４とする。また装置内パケット管理情報５０２の監視パケットフラグ５０５を監視パケット設定５０６とする。
ソフトウェアのヘルスチェック起動部３１２は、次にソフトウェアのパケット送信起動部３１３へ、監視パケット３４１を送信する。ソフトウェアのヘルスチェック起動部３１２は、次にメモリ空間３０５のヘルスチェック送信数３２１をカウントアップする。ソフトウェアのヘルスチェック起動部３１２は、次にソフトウェアのヘルスチェック監視部３１４を起動し、ヘルスチェック監視フレーム３４１の受信を監視する。（４０２）
【００１０】
ソフトウェアのパケット送信起動部３１３は、ハードウェアのパケット送信部３０２に監視パケット３４１を送信する。（４０４）
ハードウェアのパケット送信部３０２は、監視パケット３４１を受信したら、ハードウェアの転送先決定部３０３へ、監視パケット３４１を送信する。（４０５）
ハードウェアの転送先決定部３０３は、監視パケット３４１を受信したら、監視パケット３４１の装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を識別する。監視パケット５０１は、折り返し設定５０４であるため、ハードウェアの転送先決定部３０３は、ハードウェアのパケット受信部３０４へ、監視パケット３４１を送信する。（４０６）
【００１１】
ハードウェアのパケット受信部３０４は、監視パケット３４１を受信したら、ＣＰＵ３０１へ、監視パケット３４１を送信する。（４０７）
ソフトウェアのパケット受信処理部３１５は、監視パケット３４１を受信したら、監視パケット３４１をソフトウェアのパケット判定部３１６へ監視パケット３４１を送信する。（４０８）
ソフトウェアのパケット判定部３１６は、監視パケット３４１を受信したら、受信したパケットの装置内パケット管理情報５０２の監視パケットフラグ５０５が監視パケット設定５０６であるため、ヘルスチェック監視フレーム３４１と判断し、メモリ空間１０５のヘルスチェック受信数３２２をカウントアップする。ソフトウェアのパケット判定部３１６は、次にソフトウェアのヘルスチェック監視部３１４を停止する。ソフトウェアのパケット判定部３１６は、次にソフトウェアのヘルスチェック結果判定部３１７を起動する。（４０９）
【００１２】
ソフトウェアのヘルスチェック監視部３１４は、監視パケット３４１が一定周期毎に割り込み起動され規定時間の経過を監視する機能を有することで、時間内にソフトウェアのパケット判定部３１６で受信されるか監視する。ソフトウェアのヘルスチェック監視部３１４は、ソフトウェアのパケット判定部３１６が監視パケット３４１を一定時間以内に受信した場合、ソフトウェアのパケット判定部３１６から停止される。一方、ソフトウェアのパケット判定部３１６が監視パケット３４１を一定時間以内に受信しなかった場合、ヘルスチェック監視部１１４では規定に監視時間を経過することで、監視パケット監視タイムアウトと認識する。ヘルスチェック監視部１１４は監視パケット監視タイムアウトが発生するとソフトウェアのヘルスチェック結果判定部３１７を起動する。（４０３）
【００１３】
ソフトウェアのヘルスチェック結果判定部３１７は、メモリ空間１０５のヘルスチェック送信数３２１とヘルスチェック受信数３２２を比較する。ソフトウェアのヘルスチェック結果判定部３１７はこの比較の結果、両方の数が同一であれば正常とみなす。一方、この比較の結果、両方の数が不一致であれば異常と見なす。（４１０）
上述のように、従来例では、いずれにおいても予期しない障害による廃棄または疎通不可能な状態が発生した場合、異常であると見なすことは可能であっても、パケット中継の停止要因となった部位を特定することは困難である。
【００１４】
以上のように、従来技術では、複数のソフトウェアモジュールと複数のハードウェアデバイスを経由してパケット送信機能およびパケット受信機能を実現するパケット中継装置において障害部位を特定することは、通常困難である。
本発明では、以上の点に鑑み、パケット中継装置においてパケット送信機能およびパケット受信機能等の各機能を実現する全てまたは特定のソフトウェアモジュールおよび全てまたは特定のハードウェアデバイスが自律的に検知できない障害を装置として検出し、なおかつ障害部位を特定することが出来る高信頼のパケット中継装置およびシステム、障害検出方法を実現することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するため、本発明では、特に、パケット中継装置にて監視パケットの送受信による障害検出方式にて監視パケットによる動作確認対象となる全てまたは特定のソフトウェアモジュールおよびハードウェアデバイスに、監視パケットの通過情報を記録する手段を設け、さらに障害監視にて異常を検出した際に、全てまたは特定のソフトウェアモジュールおよびハードウェアデバイスの通過状況を確認することで障害部位を特定する障害部位特定部を設ける。
これにより、本発明は、ソフトウェアモジュールおよびハードウェアデバイスの各部位が自律的に検知できない障害を装置として検出し、なおかつ障害部位を特定することが出来る高信頼のパケット中継装置およびシステム、障害検出方法を実現できる。
【００１６】
本発明のひとつの態様によると、ソフトウェアを実装可能なＣＰＵを有し、パケット送信機能、パケット中継経路の決定機能、パケット受信機能を有し、ＣＰＵ上のソフトウェアが情報を記憶できるメモリ空間を有し、周期的に自装置のパケット送信機能およびパケット受信機能の障害を検出する監視パケットの送信機能と受信機能によるパケット送信機能およびパケット受信機能の障害を検出する手段を備え、複数のソフトウェアモジュールまたは複数のハードウェアデバイスにてパケットの送信および中継および受信を実現するパケット中継装置において、メモリ空間上にソフトウェアモジュール毎のパケットの通過情報を記録する手段を包含し、ハードウェアのパケット転送に関わるデバイス毎にパケットの通過情報を記録する手段を包含し、監視パケットの送信数と受信数が一致しなかった場合にソフトウェアおよびハードウェアのパケット通過情報により障害部位を特定する機能を包含することを特徴とするパケット中継装置が提供される。
【００１７】
本発明の第１の解決手段によると、
ヘルスチェック起動部、パケット送信起動部、ヘルスチェック監視部、パケット受信処理部、パケット判定部、ヘルスチェック結果判定部、障害部位特定部をソフトウェアとして含むＣＰＵと、
前記ヘルスチェック起動部による前記監視パケットの送信数をカウントするヘルスチェック送信数、前記パケット判定部による前記監視パケットの受信数をカウントするヘルスチェック受信数、前記ヘルスチェック起動部にて前記監視パケットの送信数をカウントするヘルスチェック起動部送信統計、前記パケット送信起動部で前記監視パケットの受信数をカウントするパケット送信起動部受信統計、前記パケット送信起動部で前記監視パケットの送信数をカウントするパケット送信起動部送信統計、前記パケット受信処理部で前記監視パケットの受信数をカウントするパケット受信部受信統計、前記パケット受信処理部で前記監視パケットの送信数をカウントするパケット受信部送信統計、前記パケット判定部で前記監視パケットの受信数をカウントするパケット判定部受信統計を含むメモリと、
前記監視パケットの受信数をカウントする転送受信統計と前記監視パケットの送信数をカウントする転送送信統計を有する、ハードウェアとしての転送先決定部と、
を備え、
前記ヘルスチェック起動部は、前記パケット送信起動部へ前記監視パケットを送信し、前記ヘルスチェック送信数および前記ヘルスチェック起動部送信統計をカウントアップし、
前記パケット送信起動部は、前記監視パケットを受信したら、前記パケット送信起動部受信統計をカウントアップし、前記パケット転送部に向けて前記監視パケットを送信し、前記パケット送信起動部送信統計をカウントアップし、
前記転送先決定部は、前記監視パケットを受信したら、前記転送受信統計をカウントアップし、前記パケット受信処理部へ向けて、前記監視パケットを送信し、前記転送送信統計をカウントアップし、
前記パケット受信処理部は、前記監視パケットを受信したら、前記パケット受信部受信統計をカウントアップし、前記監視パケットを前記パケット判定部へ送信し、前記パケット受信部送信統計をカウントアップし、
前記パケット判定部は、前記監視パケットを受信したら、前記パケット判定部受信統計をおよび前記ヘルスチェック受信数をカウントアップし、
前記ヘルスチェック監視部は、前記パケット判定部が前記監視パケットを一定時間以内に受信しなかった場合、前記ヘルスチェック結果判定部を起動し、
前記ヘルスチェック結果判定部は、前記ヘルスチェック送信数と前記ヘルスチェック受信数を比較し、両方の数が不一致であれば異常と判断し、前記障害部位特定部を起動し、
前記障害部位特定部は、監視パケットの伝送経路に従い予め設定された判定順序で、どの送信数若しくは送信統計と、どの受信数若しくは受信統計とを比較して一致又は不一致を判定するかを予め定めた判定内容と、該判定内容に対応する障害部位とに従い、該当する判定内容に対応する障害部位を判定し、該障害部位を含む障害情報を表示部に表示又は出力部に出力する
パケット中継装置が提供される。
【００１８】
本発明の第２の解決手段によると、
ヘルスチェック起動部、パケット送信起動部、ヘルスチェック監視部、パケット受信処理部、パケット判定部、ヘルスチェック結果判定部、障害部位特定部をソフトウェアとして含むＣＰＵと、
前記ヘルスチェック起動部による前記監視パケットの送信数をカウントするヘルスチェック送信数、前記パケット判定部による前記監視パケットの受信数をカウントするヘルスチェック受信数、前記ヘルスチェック起動部にて前記監視パケットの送信数をカウントするヘルスチェック起動部送信統計、前記パケット送信起動部で前記監視パケットの受信数をカウントするパケット送信起動部受信統計、前記パケット送信起動部で前記監視パケットの送信数をカウントするパケット送信起動部送信統計、前記パケット受信処理部で前記監視パケットの受信数をカウントするパケット受信部受信統計、前記パケット受信処理部で前記監視パケットの送信数をカウントするパケット受信部送信統計、前記パケット判定部で前記監視パケットの受信数をカウントするパケット判定部受信統計を含むメモリと、
前記監視パケットの受信数をカウントする転送受信統計と前記監視パケットの送信数をカウントする転送送信統計を有する、ハードウェアとしての転送先決定部と、
を備えたパケット中継装置における障害検出方法であって、
前記ヘルスチェック起動部は、前記パケット送信起動部へ前記監視パケットを送信し、前記ヘルスチェック送信数および前記ヘルスチェック起動部送信統計をカウントアップし、
前記パケット送信起動部は、前記監視パケットを受信したら、前記パケット送信起動部受信統計をカウントアップし、前記パケット転送部に向けて前記監視パケットを送信し、前記パケット送信起動部送信統計をカウントアップし、
前記転送先決定部は、前記監視パケットを受信したら、前記転送受信統計をカウントアップし、前記パケット受信処理部へ向けて、前記監視パケットを送信し、前記転送送信統計をカウントアップし、
前記パケット受信処理部は、前記監視パケットを受信したら、前記パケット受信部受信統計をカウントアップし、前記監視パケットを前記パケット判定部へ送信し、前記パケット受信部送信統計をカウントアップし、
前記パケット判定部は、前記監視パケットを受信したら、前記パケット判定部受信統計をおよび前記ヘルスチェック受信数をカウントアップし、
前記ヘルスチェック監視部は、前記パケット判定部が前記監視パケットを一定時間以内に受信しなかった場合、前記ヘルスチェック結果判定部を起動し、
前記ヘルスチェック結果判定部は、前記ヘルスチェック送信数と前記ヘルスチェック受信数を比較し、両方の数が不一致であれば異常と判断し、前記障害部位特定部を起動し、
前記障害部位特定部は、監視パケットの伝送経路に従い予め設定された判定順序で、どの送信数若しくは送信統計と、どの受信数若しくは受信統計とを比較して一致又は不一致を判定するかを予め定めた判定内容と、該判定内容に対応する障害部位とに従い、該当する判定内容に対応する障害部位を判定し、該障害部位を含む障害情報を表示部に表示又は出力部に出力する
障害検出方法が提供される。
【００１９】
本発明の第３の解決手段によると、
ヘルスチェック起動部、パケット送信起動部、ヘルスチェック監視部、パケット受信処理部、パケット判定部、ヘルスチェック結果判定部、障害部位特定部をソフトウェアとして含むＣＰＵと、
前記ヘルスチェック起動部による前記監視パケットの送信数をカウントするヘルスチェック送信数、前記パケット判定部による前記監視パケットの受信数をカウントするヘルスチェック受信数、前記ヘルスチェック起動部にて前記監視パケットの送信数をカウントするヘルスチェック起動部送信統計、前記パケット送信起動部で前記監視パケットの受信数をカウントするパケット送信起動部受信統計、前記パケット送信起動部で前記監視パケットの送信数をカウントするパケット送信起動部送信統計、前記パケット受信処理部で前記監視パケットの受信数をカウントするパケット受信部受信統計、前記パケット受信処理部で前記監視パケットの送信数をカウントするパケット受信部送信統計、前記パケット判定部で前記監視パケットの受信数をカウントするパケット判定部受信統計を含むメモリと、
前記監視パケットの受信数をカウントする転送受信統計と前記監視パケットの送信数をカウントする転送送信統計を有する、ハードウェアとしての転送先決定装置と、
を備えたパケット中継システムにおいて、
前記ヘルスチェック起動部は、前記パケット送信起動部へ前記監視パケットを送信し、前記ヘルスチェック送信数および前記ヘルスチェック起動部送信統計をカウントアップし、
前記パケット送信起動部は、前記監視パケットを受信したら、前記パケット送信起動部受信統計をカウントアップし、前記パケット転送部に向けて前記監視パケットを送信し、前記パケット送信起動部送信統計をカウントアップし、
前記転送先決定装置は、前記監視パケットを受信したら、前記転送受信統計をカウントアップし、前記パケット受信処理部へ向けて、前記監視パケットを送信し、前記転送送信統計をカウントアップし、
前記ＣＰＵは、前記転送先決定装置の前記転送受信統計及び前記転送送信統計を取得し、
前記パケット受信処理部は、前記監視パケットを受信したら、前記パケット受信部受信統計をカウントアップし、前記監視パケットを前記パケット判定部へ送信し、前記パケット受信部送信統計をカウントアップし、
前記パケット判定部は、前記監視パケットを受信したら、前記パケット判定部受信統計をおよび前記ヘルスチェック受信数をカウントアップし、
前記ヘルスチェック監視部は、前記パケット判定部が前記監視パケットを一定時間以内に受信しなかった場合、前記ヘルスチェック結果判定部を起動し、
前記ヘルスチェック結果判定部は、前記ヘルスチェック送信数と前記ヘルスチェック受信数を比較し、両方の数が不一致であれば異常と判断し、前記障害部位特定部を起動し、
前記障害部位特定部は、監視パケットの伝送経路に従い予め設定された判定順序で、どの送信数若しくは送信統計と、どの受信数若しくは受信統計とを比較して一致又は不一致を判定するかを予め定めた判定内容と、該判定内容に対応する障害部位とに従い、該当する判定内容に対応する障害部位を判定し、該障害部位を含む障害情報を表示部に表示又は出力部に出力する
パケット中継システムが提供される。
【発明の効果】
【００２０】
本発明により、当該装置自身でパケット送信機能およびパケット受信機能および、パケット受信機能等の各機能に関わる障害を検出するとともに、ソフトウェアの各モジュールおよび各ハードウェアデバイスが自律的に検知できない障害を装置として検出し、かつ障害部位を特定することが出来る高信頼のパケット中継装置およびシステム、障害検出方法を実現できる。
【図面の簡単な説明】
【００２１】
【図１】本実施の形態のパケット中継装置における監視パケットによる障害監視および部位特定するための機能ブロック図である。
【図２−１】本実施の形態のパケット中継装置における監視パケットによる障害検出および部位特定の流れ図（１／２）である。
【図２−２】本実施の形態のパケット中継装置における監視パケットによる障害検出および部位特定の流れ図（２／２）である。
【図３】従来のパケット中継装置における監視パケットによる障害監視を実現するための機能ブロック図である。
【図４−１】従来のパケット中継装置における監視パケットによる障害検出の流れ図（１／２）である。
【図４−２】従来のパケット中継装置における監視パケットによる障害検出の流れ図（２／２）である。
【図５】監視パケット構造を示す図である。
【図６】本実施の形態の特定例１(ハードウェアのパケット送信部で監視パケットが途絶えた場合)のパケット中継装置の動作図である。
【図７】本実施の形態の特定例２(ソフトウェアのパケット受信処理部で監視パケットが途絶えた場合)のパケット中継装置の動作図である。
【図８】本実施の形態の特定例１(ハードウェアのパケット送信部で監視パケットが途絶えた場合)の流れ図である。
【図９−１】本実施の形態の特定例２(ソフトウェアのパケット受信処理部で監視パケットが途絶えた場合)の流れ図（１／２）である。
【図９−２】本実施の形態の特定例２(ソフトウェアのパケット受信処理部で監視パケットが途絶えた場合)の流れ図（２／２）である。
【図１０】本実施の形態の障害部位特定部で実施する障害部位特定の決定を示す図である。
【図１１】本実施の形態の特定例１(ハードウェアのパケット送信部で監視パケットが途絶えた場合)の障害部位特定部の障害部位特定を示す図である。
【図１２】本実施の形態の特定例２(ソフトウェアのパケット受信部で監視パケットが途絶えた場合)の障害部位特定部の障害部位特定を示す図である。
【発明を実施するための最良の形態】
【００２２】
本発明の実施の形態を図１〜図２、図５〜図１２を参照して説明する。
以下、パケット中継装置が、ハードウェアとして、ＣＰＵ、パケット送信機能を有する  パケット送信部、パケットの中継経路を決定する転送先決定部、パケットの受信機能を有するパケット受信部、ソフトウェアが情報を記憶できるメモリ空間を備えたパケット中継装置を例とする。
ソフトウェアの各モジュールは１つのＣＰＵ上でそれぞれのモジュールが独立したタスクとして動作可能とした場合を例とする。またソフトウェアで、パケット送受信をするソフトウェア間インタフェースはキュー、パケット送受信をしないソフトウェア間モジュール間のインタフェースは関数コールによる起動とした場合を例とし、ＣＰＵおよび各ハードウェアのパケット通信インタフェースはキューを用いる場合を例とし、送信側は送信先のキューへの積み込み完了で送信成功と見なす場合を例とし、受信側はパケット受信検出を一定周期で確認することでパケットを受信する場合を例とし、メモリ空間はソフトウェアが自由にアクセス出来ることを前提とした記載とする。
【００２３】
まず図１、図２、図５、図１０にて本実施の形態の基本原理を説明する。
図１は、パケット中継装置の機能ブロック図である。
図２は、ヘルスチェック監視機能による障害部位特定までの流れ図である。
図５は、監視パケット構造を示す図である。
図１０は、ソフトウェアの障害部位特定部における障害部位特定方法を示す図である。ソフトウェアの障害部位特定部６１８が、図１０のような判定テーブルを有するようにしてもよいし、又は、これらの情報を他のメモリに含めて、ソフトウェアの障害部位特定部６１８がそれを参照するようにしてもよい。
【００２４】
ＣＰＵ１０１上で動作するソフトウェアは、監視パケット１４１の送信間隔を決定するタイマ部１１１、監視パケット１４１を作成するヘルスチェック起動部１１２、監視パケット１４１をハードウェアへ送信するパケット送信起動部１１３、監視パケット１４１の受信を監視するヘルスチェック監視部１１４、監視パケット１４１をハードウェアから受信するパケット受信処理部１１５、受信した監視パケット１４１を他のパケットと識別するパケット判定部１１６、ヘルスチェック監視結果を決定するヘルスチェック結果判定部１１７、ヘルスチェック監視で障害を検出した場合に障害部位を特定する障害部位特定部１１８を備える。
ハードウェアのパケット送信部１０２は、監視パケット１４１の受信数をカウントする受信統計１３１と、監視パケット１４１の送信数をカウントする送信統計１３２を備える。
ハードウェアの転送先決定部１０３は、監視パケット１４１の受信数をカウントする受信統計１３３と、監視パケット１４１の送信数をカウントする送信統計１３４を備える。
ハードウェアのパケット受信部１０４は、監視パケット１４１の受信数をカウントする受信統計１３５と、監視パケット１４１の送信数をカウントする送信統計１３６を備える。
メモリ空間１０５は、監視パケット１４１の送信数をカウントするヘルスチェック送信数１２１、監視パケット１４１の受信数をカウントするヘルスチェック受信数１２２、ソフトウェアのヘルスチェック起動部１１２にて監視パケット１４１の送信数をカウントするヘルスチェック起動部送信統計１２３、パケット送信起動部１１３で監視パケット１４１の受信数をカウントするパケット送信起動部受信統計１２４、パケット送信起動部１１３で監視パケット１４１の送信数をカウントするパケット送信起動部送信統計１２５、パケット受信処理部１１５で監視パケット１４１の受信数をカウントするパケット受信部受信統計１２６、パケット受信処理部１１５で監視パケット１４１の送信数をカウントするパケット受信部送信統計１２７、パケット判定部１１６で監視パケット１４１の受信数をカウントするパケット判定部受信統計１２８を含む。
【００２５】
以下、動作を説明する。
ソフトウェアのタイマ部１１１は、ヘルスチェック間隔毎にタイムアウトしソフトウェアのヘルスチェック起動部１１２を起動する。（２０１）（なお、かっこ内の数字は、図２に示す数字に対応する。以下、同様。）
ソフトウェアのヘルスチェック起動部１１２は、監視パケット１４１を作成する。この際、装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を折り返す設定５０４とする。また装置内パケット管理情報５０２の監視パケットフラグ５０５を監視パケット設定５０６とする。
ソフトウェアのヘルスチェック起動部１１２は、次にソフトウェアのパケット送信起動部１１３へ、監視パケット１４１を送信する。
ソフトウェアのヘルスチェック起動部１１２は、次にメモリ空間１０５のヘルスチェック送信数１２１およびヘルスチェック起動部送信統計１２３をカウントアップする。
ソフトウェアのヘルスチェック起動部１１２は、次にソフトウェアのヘルスチェック監視部１１４を起動し、監視パケット１４１の受信を監視する。（２０２）
【００２６】
ソフトウェアのパケット送信起動部１１３は、まず監視パケット１４１を受信した場合、メモリ空間１０５のパケット送信起動部受信統計１２４をカウントアップする。ソフトウェアのパケット送信起動部１１３は、次にハードウェアのパケット送信部１０２に監視パケット１４１を送信する。ソフトウェアのパケット送信起動部１１３は、次にメモリ空間１０５のパケット送信起動部送信統計１２５をカウントアップする。（２０４）
なお、ソフトウェアモジュールやハードウェアデバイスの各部において、監視パケットであることの判別は、図５の監視パケットフラグ５０５が監視パケット５０６に設定されていることにより行うことができる。
【００２７】
ハードウェアのパケット送信部１０２は、監視パケット１４１を受信したら自身の受信統計１３１をカウントアップする。ハードウェアのパケット送信部１０２は、次にハードウェアの転送先決定部１０３へ、監視パケット１４１を送信する。
ハードウェアのパケット送信部１０２は、次に自身の送信統計１３２をカウントアップする。（２０５）
ハードウェアの転送先決定部１０３は、監視パケット１４１を受信したら自身の受信統計１３３をカウントアップする。ハードウェアの転送先決定部１０３は次に監視パケット１４１の装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を識別する。監視パケット５０１は折り返し設定５０４であるため、ハードウェアのパケット受信部１０４へ、監視パケット１４１を送信する。ハードウェアの転送先決定部１０３は、次に自身の送信統計１３４をカウントアップする。（２０６）なお、装置内折り返し（要否フラグ５０３が折り返さない設定の場合、転送先決定部１０３は、受信パケットをパケット受信部１０４へ送信せず、適宜の転送先を設定して、受信パケットをその転送先に転送する。）
【００２８】
ハードウェアのパケット受信部１０４は、監視パケット１４１を受信したら自身の受信統計１３５をカウントアップする。ハードウェアのパケット受信部１０４は、次にＣＰＵ１０１へ、監視パケット１４１を送信する。ハードウェアのパケット受信部１０４は、次に自身の送信統計１３６をカウントアップする。（２０７）
ソフトウェアのパケット受信処理部１１５は、監視パケット１４１を受信したらメモリ空間１０５のパケット受信部受信統計１２６をカウントアップする。ソフトウェアのパケット受信処理部１１５は、次に監視パケット１４１をソフトウェアのパケット判定部１１６へ送信する。ソフトウェアのパケット受信処理部１１５は次にメモリ空間１０５のパケット受信部送信統計１２７をカウントアップする。（２０８）
【００２９】
ソフトウェアのパケット判定部１１６は、監視パケット１４１を受信したら、監視パケット１４１であればメモリ空間１０５のパケット判定部受信統計１２８およびヘルスチェック受信数１２２をカウントアップする。ソフトウェアのパケット判定部１１６は、次にソフトウェアのヘルスチェック監視部１１４を停止する。ソフトウェアのパケット判定部１１６は、次にソフトウェアのヘルスチェック結果判定部１１７を起動する。（２０９）
ソフトウェアのヘルスチェック監視部１１４は、ハードウェアクロックにより一定周期毎に割り込み起動され規定時間の経過を監視する機能を有することで、監視パケット１４１が一定時間内にソフトウェアのパケット判定部１１６で受信されるか監視する。ソフトウェアのヘルスチェック監視部１１４は、ソフトウェアのパケット判定部１１６が監視パケット１４１を一定時間以内に受信した場合、ソフトウェアのパケット判定部１１６から停止される。ソフトウェアのパケット判定部１１６が監視パケット１４１を一定時間以内に受信しなかった場合、ヘルスチェック監視部１１４では規定に監視時間を経過することで、監視パケット監視タイムアウトと認識する。ヘルスチェック監視部１１４は、監視パケット監視タイムアウトが発生するとソフトウェアのヘルスチェック結果判定部１１７を起動する。（２０３）
【００３０】
ソフトウェアのヘルスチェック結果判定部１１７は、ソフトウェアのパケット判定部１１６（監視パケットを受信した場合）またはヘルスチェック監視部１１４（監視パケットの監視がタイムアウトした場合）により起動されると、メモリ空間１０５のヘルスチェック送信数１２１とヘルスチェック受信数１２２を比較する。
ソフトウェアのヘルスチェック結果判定部１１７は、この比較の結果、両者の数が同一であれば正常とみなす。一方、この比較の結果、両者の数が不一致であれば、異常と見なし障害部位特定部１１８を起動する。（２１０）
ソフトウェアの障害部位特定部１１８は、図１０で示す判定順序１００１の順番に判定内容１００２に該当するか否かを判定する。判定の結果、判定内容に該当した場合、ソフトウェアの障害部位特定部１１８は、同列の障害部位１００３で示す部位を障害部位とみなす。（２１１）
なお、ソフトウェアの障害部位特定部１１８は、障害部位を含む判定結果を、適宜の表示装置に表示したり、出力装置に出力することができる。
【００３１】
（特定例１）
次に、図５、図６、図８、図１１にて障害部位の特定例１として監視パケット６４１がハードウェアのパケット送信部６０２が受信後、処理が停止する障害を例として説明する。
図５は、監視パケット構造を示す図である。
図６は、パケット中継装置の機能ブロック図である。
図８は、監視パケット６４１がハードウェアのパケット送信部６０２が受信後、送信できなかった障害が発生した場合の障害部位特定までの流れ図である。
図１１は、ソフトウェアの障害部位特定部にてハードウェアのパケット送信部６０２が障害部位と特定する方法を示す説明図である。
【００３２】
以下、動作を説明する。
ソフトウェアのタイマ部６１１は、ヘルスチェック間隔毎にタイムアウト８０１し、ソフトウェアのヘルスチェック起動部６１２を起動する。（８０１）（なお、かっこ内の数字は、図８に示す数字に対応する。以下、同様。）
ソフトウェアのヘルスチェック起動部６１２は、監視パケット６４１を作成する。この際、装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を折り返す設定５０４とする。
ソフトウェアのヘルスチェック起動部６１２は、次にソフトウェアのパケット送信起動部６１３へ、監視パケット６４１を送信する。ソフトウェアのヘルスチェック起動部６１２は、次にメモリ空間６０５のヘルスチェック送信数６２１およびヘルスチェック起動部送信統計６２３をカウントアップする。ソフトウェアのヘルスチェック起動部６１２は、次にソフトウェアのヘルスチェック監視部６１４を起動し、ヘルスチェック監視フレーム６４１の受信を監視する。（８０２）
【００３３】
ソフトウェアのパケット送信起動部６１３は、まずヘルスチェック監視フレーム６４１を受信した場合、受信したパケットの装置内パケット管理情報５０２の監視パケットフラグ５０５が監視パケット設定５０６であるため、ヘルスチェック監視フレーム６４１と判断し、メモリ空間６０５のパケット送信起動部受信統計６２４をカウントアップする。ソフトウェアのパケット送信起動部６１３は、次にハードウェアのパケット送信部６０２に監視パケット６４１を送信する。ソフトウェアのパケット送信起動部６１３は、次にメモリ空間６０５のパケット送信起動部送信統計６２５をカウントアップする。（８０４）
【００３４】
ハードウェアのパケット送信部６０２は、監視パケット６４１を受信したら、自身の受信統計６３１をカウントアップする。ハードウェアのパケット送信部６０２は、障害が発生しており、監視パケット６４１の転送は以降全て停止する。
このため、ハードウェアのパケット送信部６０２の送信統計６３２、ハードウェアの転送先決定部６０３の受信統計６３３、ハードウェアの転送先決定部６０３の送信統計６３４、
ハードウェアのパケット受信部６０４の受信統計６３５、ハードウェアのパケット受信部６０４の送信統計６３６、メモリ空間６０５のパケット受信部受信統計６２６、メモリ空間６０５のパケット受信部送信統計６２７、メモリ空間６０５のパケット判定部受信統計６２８、メモリ空間６０５のヘルスチェック受信数６２２はカウントアップされない。
【００３５】
ソフトウェアのヘルスチェック監視部６１４は、監視パケット６４１が一定時間内にソフトウェアのパケット判定部６１６で受信されないため、監視パケット監視タイムアウトし、ソフトウェアのヘルスチェック結果判定部６１７を起動する。（８０３）
ソフトウェアのヘルスチェック結果判定部６１７は、ヘルスチェック監視部６１４により起動され、メモリ空間６０５のヘルスチェック送信数６２１とヘルスチェック受信数６２２を比較する。ソフトウェアのヘルスチェック結果判定部６１７は、この比較の結果、不一致であるため異常と見なし障害部位特定部６１８を起動する。（８１０）
ソフトウェアの障害部位特定部６１８は、図１１で示す判定順序１１０１の順番に判定内容１１０２に該当するか否かを判定する。まず障害部位特定部６１８は、判定順序１１０１の１の判定内容１１０２を実施する。
判定順序１１０１の１の判定内容１１０２を実施の結果、非該当であるため、次に障害部位特定部６１８は、判定順序１１０１の２の判定内容１１０２を実施する。判定順序１１０１の２の判定内容１１０２を実施の結果、非該当であるため、次に障害部位特定部６１８は、判定順序１１０１の３の判定内容１１０２を実施する。判定順序１１０１の３の判定内容１１０２を実施の結果、非該当であるため、次に障害部位特定部６１８は、判定順序１１０１の４の判定内容１１０２を実施する。判定順序１１０１の４の判定内容１１０２を実施の結果、該当であるため、障害部位特定部６１８は、障害部位１１０３で示すハードウェアのパケット送信部を障害部位と特定する。（８１１）
【００３６】
（特定例２）
次に、図５、図７、図９、図１２にて障害部位の特定例２として監視パケット７４１がソフトウェアのパケット受信処理部７１５が監視パケット７４１を受信できない障害を例として説明する。
図５は、監視パケット構造を示す図である。
図７は、パケット中継装置の機能ブロック図である。
図９は、監視パケット７４１がソフトウェアのパケット受信処理部７１５が受信できない障害が発生した場合の障害部位特定までの流れ図である。
図１２は、ソフトウェアの障害部位特定部にてソフトウェアのパケット受信処理部７１５が障害部位と特定する方法を示す説明図である。
【００３７】
以下、動作を説明する。
ソフトウェアのタイマ部７１１は、ヘルスチェック間隔毎にタイムアウト９０１し、ソフトウェアのヘルスチェック起動部７１２を起動する。（９０１）（なお、かっこ内の数字は、図９に示す数字に対応する。以下、同様。）
ソフトウェアのヘルスチェック起動部７１２は、監視パケット７４１を作成する。この際、装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を折り返す設定５０４とする。
ソフトウェアのヘルスチェック起動部７１２は、次にソフトウェアのパケット送信起動部７１３へ、監視パケット７４１を送信する。ソフトウェアのヘルスチェック起動部７１２は、次にメモリ空間７０５のヘルスチェック送信数７２１およびヘルスチェック起動部送信統計７２３をカウントアップする。ソフトウェアのヘルスチェック起動部７１２は、次にソフトウェアのヘルスチェック監視部７１４を起動し、ヘルスチェック監視フレーム７４１の受信を監視する。（９０２）
【００３８】
ソフトウェアのパケット送信起動部７１３は、まずヘルスチェック監視フレーム７４１を受信した場合、メモリ空間７０５のパケット送信起動部受信統計７２４をカウントアップする。ソフトウェアのパケット送信起動部７１３は、次にハードウェアのパケット送信部７０２に監視パケット７４１を送信する。ソフトウェアのパケット送信起動部７１３は、次にメモリ空間７０５のパケット送信起動部送信統計７２５をカウントアップする。（９０４）
ハードウェアのパケット送信部７０２は、監視パケット７４１を受信したら自身の受信統計７３１をカウントアップする。ハードウェアのパケット送信部７０２は、次にハードウェアの転送先決定部７０３へ、監視パケット７４１を送信する。
ハードウェアのパケット送信部７０２は、次に自身の送信統計７３２をカウントアップする。（９０５）
【００３９】
ハードウェアの転送先決定部７０３は、監視パケット７４１を受信したら、自身の受信統計７３３をカウントアップする。ハードウェアの転送先決定部７０３は、次に監視パケット７４１の装置内パケット管理情報５０２の装置内折り返し要否フラグ５０３を識別する。監視パケット５０１は、折り返し設定５０４であるため、ハードウェアのパケット受信部７０４へ、監視パケット７４１を送信する。ハードウェアの転送先決定部７０３は、次に自身の送信統計７３４をカウントアップする。（９０６）
ハードウェアのパケット受信部７０４は、監視パケット７４１を受信したら自身の受信統計７３５をカウントアップする。ハードウェアのパケット受信部７０４は、次にＣＰＵ７０１へ、監視パケット７４１を送信する。ハードウェアのパケット受信部７０４は、次に自身の送信統計７３６をカウントアップする。（９０７）
【００４０】
ソフトウェアのパケット受信処理部７１５は、監視パケット７４１の受信が出来ない障害が発生しており、監視パケット７４１の転送は以降全て停止する。
このため、メモリ空間７０５のパケット受信部受信統計７２６、メモリ空間７０５のパケット受信部送信統計７２７、メモリ空間７０５のパケット判定部受信統計７２８、メモリ空間７０５のヘルスチェック受信数７２２はカウントアップされない。
ソフトウェアのヘルスチェック監視部７１４は、監視パケット７４１が一定時間内にソフトウェアのパケット判定部７１６で受信されないため、監視パケット監視タイムアウトし、ソフトウェアのヘルスチェック結果判定部７１７を起動する。（９０３）
ソフトウェアのヘルスチェック結果判定部７１７は、ソフトウェアのヘルスチェック監視部６１４により起動され、メモリ空間７０５のヘルスチェック送信数７２１とヘルスチェック受信数７２２を比較する。ソフトウェアのヘルスチェック結果判定部７１７は、この比較の結果、不一致であるため異常と見なし障害部位特定部７１８を起動する。
【００４１】
ソフトウェアの障害部位特定部７１８は、図１２で示す判定順序１２０１の順番に判定内容１２０２に設定するか否かを判定する。まず、ソフトウェアの障害部位特定部７１８は、判定順序１２０１の１の判定内容１２０２を実施する。
判定順序１２０１の１の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の２の判定内容１２０２を実施する。判定順序１２０１の２の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の３の判定内容１２０２を実施する。判定順序１２０１の３の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の４の判定内容１２０２を実施する。判定順序１２０１の４の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の５の判定内容１２０２を実施する。判定順序１２０１の５の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の６の判定内容１２０２を実施する。判定順序１２０１の６の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の７の判定内容１２０２を実施する。判定順序１２０１の７の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の８の判定内容１２０２を実施する。判定順序１２０１の８の判定内容１２０２を実施の結果、非該当であるため、次にソフトウェアの障害部位特定部７１８は、判定順序１２０１の９の判定内容１２０２を実施する。判定順序１２０１の９の判定内容１２０２を実施の結果、該当であるため、ソフトウェアの障害部位特定部７１８は、障害部位１２０３で示すソフトウェアのパケット受信部を障害部位と特定する。
【産業上の利用可能性】
【００４２】
以上の説明では、全てのＣＰＵ内のソフトウェアモジュールについて送信数/受信数を示すメモリ空間を設け、全てのハードウェアデバイスについて送信数/受信数を示す統計を設けるようにしたが、これらを全てに限らず、特定のソフトウェアモジュールおよびハードウェアデバイスについて設けるようにしてもよい。また、ハードウェアデバイスの、パケット送信部１０２、転送先決定部１０３および/またはパケット受信部１０４は、ＣＰＵ１０１と同一装置内に備えられている場合に限らず、別の装置として構成してもよい。例えば、その場合、各装置の受信統計および送信統計の情報を、ＣＰＵは、適宜のネットワークを経て適宜のタイミングで取得し、メモリ空間に保存し、これを障害部位特定部が参照するように構成すればよい。さらに、ＣＰＵ内の各モジュールの種類および数や、ハードウェアの各部の種類および数についても、適宜定めることができる。
【符号の説明】
【００４３】
１０１、３０１、６０１、７０１…ＣＰＵ
１０２、３０２、６０２、７０２…ハードウェアのパケット送信部
１０３、３０３、６０３、７０３…ハードウェアの転送先決定部
１０４、３０４、６０４、７０４…ハードウェアのパケット受信部
１０５、３０５、６０５、７０５…メモリ空間
１１１、３１１、６１１、７１１…ソフトウェアのタイマ部
１１２、３１２、６１２、７１２…ソフトウェアのヘルスチェック起動部
１１３、３１３、６１３、７１３…ソフトウェアのパケット送信起動部
１１４、３１４、６１４、７１４…ソフトウェアのヘルスチェック監視部
１１５、３１５、６１５、７１５…ソフトウェアのパケット受信処理部
１１６、３１６、６１６、７１６…ソフトウェアのパケット判定部
１１７、３１７、６１７、７１７…ソフトウェアのヘルスチェック結果判定部
１２１、３２１、６２１、７２１…メモリ空間内ヘルスチェック送信数
１２２、３２２、６２２、７２２…メモリ空間内ヘルスチェック受信数
１４１、３４１、６４１、７４１…監視パケット
１１８、６１８、７１８…ソフトウェアの障害部位特定部
１２３、６２３、７２３…メモリ空間内ヘルスチェック起動部送信統計
１２４、６２４、７２４…メモリ空間内パケット送信起動部受信統計
１２５、６２５、７２５…メモリ空間内パケット送信起動部送信統計
１２６、６２６、７２６…メモリ空間内パケット受信部受信統計
１２７、６２７、７２７…メモリ空間内パケット受信部送信統計
１２８、６２８、７２８…メモリ空間内パケット判定部受信統計
１３１、６３１、７３１…ハードウェアのパケット送信部受信統計
１３２、６３２、７３２…ハードウェアのパケット送信部送信統計
１３３、６３３、７３３…ハードウェアの転送先決定部受信統計
１３４、６３４、７３４…ハードウェアの転送先決定部送信統計
１３５、６３５、７３５…ハードウェアのパケット受信部受信統計
１３６、６３６、７３６…ハードウェアのパケット受信部送信統計
２０１、４０１、８０１、９０１…ソフトウェアのタイマ部処理
２０２、４０２、８０２、９０２…ソフトウェアのヘルスチェック起動部処理
２０３、４０３、８０３、９０３…ソフトウェアのヘルスチェック監視部処理
２０４、４０４、８０４、９０４…ソフトウェアのパケット送信起動部処理
２０５、４０５、８０５、９０５…ハードウェアのパケット送信部処理
２０６、４０６、９０６…ハードウェアの転送先決定部処理
２０７、４０７、９０７…ハードウェアのパケット受信部処理
２０８、４０８…ソフトウェアのパケット受信部処理
２０９、４０９…ソフトウェアのパケット判定部処理
２１０、４１０、８１０、９１０…ソフトウェアのヘルスチェック結果判定部処理
２１１、８１１、９１１…ソフトウェアの障害部位特定部
５０１…監視パケットフォーマット
５０２…監視パケットの装置内パケット管理情報
５０３…監視パケットの装置内パケット管理情報内装置内折り返し要否フラグ
５０４…監視パケットの装置内パケット管理情報内装置内折り返し要否フラグの折り返し情報
５０５…監視パケットの装置内パケット管理情報内監視パケットフラグ
５０６…監視パケットの装置内パケット管理情報内監視パケットフラグの監視パケット情報
１００１、１１０１、１２０１…ソフトウェアの障害部位特定部における判定順序
１００２、１１０２、１２０２…ソフトウェアの障害部位特定部における判定内容
１００３、１１０３、１２０３…ソフトウェアの障害部位特定部が特定する障害部位
【図１】
0005665723.tif 000002
【図２−１】
0005665723.tif 000003
【図２−２】
0005665723.tif 000004
【図３】
0005665723.tif 000005
【図４−１】
0005665723.tif 000006
【図４−２】
0005665723.tif 000007
【図５】
0005665723.tif 000008
【図６】
0005665723.tif 000009
【図７】
0005665723.tif 000010
【図８】
0005665723.tif 000011
【図９−１】
0005665723.tif 000012
【図９−２】
0005665723.tif 000013
【図１０】
0005665723.tif 000014
【図１１】
0005665723.tif 000015
【図１２】
0005665723.tif 000016