(57)【特許請求の範囲】
【請求項１】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する方法であって、
前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を、前記システムを診断する診断ユニットが、更新するステップと、
前記モジュールの１つの障害を示すアラームを、前記システムから、前記診断ユニットが受け取るステップと、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記診断ユニットが、前記障害と関係付けて因果ネットワークを構成するステップと、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率とを、前記診断ユニットが計算するステップと、
前記トポロジ情報に基づいて、前記診断ユニットが、前記条件つき確率を前記誤動作の発生する確率に関係付け、前記条件つき確率と前記誤動作の発生する確率とを前記因果ネットワークに追加するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記診断ユニットが、前記誤動作の発生する確率の少なくとも１つを更新するステップと、
前記更新された誤動作の発生する確率に応答して、前記診断ユニットが、前記アラームの診断を提案するステップとを含む、前記システムを診断する方法。
【請求項２】
前記アラームを受け取るステップが、前記システム内の前記複数のモジュールからイベント・レポートを集めるステップと、前記イベント・レポートから前記アラームを抽出するステップとを含む、請求項１に記載の方法。
【請求項３】
前記イベント・レポートを集めるステップが、前記システムの構成の変更のレポートを受け取るステップを含み、前記因果ネットワークを構成するステップが、前記変更された構成に基づいて前記因果ネットワークを構成するステップを含む、請求項２に記載の方法。
【請求項４】
前記変更された構成に基づいて前記因果ネットワークを構成するステップが、前記構成が記録されるデータベースを維持するステップと、前記因果ネットワークの構成に使用するために、前記構成の前記変更の前記レポートに応答して前記データベースを更新するステップとを含む、請求項３に記載の方法。
【請求項５】
前記アラームを抽出するステップが、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出するステップを含み、前記確率の前記少なくとも１つを更新するステップが、前記確率を更新するために前記アラームの前記シーケンスを処理するステップを含む、請求項２に記載の方法。
【請求項６】
前記アラームの前記シーケンスを抽出するステップが、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームのそれぞれの寿命を定義するステップと、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択するステップとを含む、請求項５に記載の方法。
【請求項７】
抽出する前記アラームを選択するステップが、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択するステップを含む、請求項６に記載の方法。
【請求項８】
前記因果ネットワークを構成するステップが、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義するステップを含み、前記アラームの前記シーケンスを処理するステップが、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新するステップを含む、請求項５に記載の方法。
【請求項９】
前記因果ネットワークを構成するステップが、前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートを定義するステップと、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワーク内で前記テンプレートをインスタンス化するステップとを含む、請求項５に記載の方法。
【請求項１０】
前記障害に関連したノードからなるテンプレートを定義するステップと、
前記障害によるアラームが発生した場合に、前記テンプレートを、前記因果ネットワークに追加するステップと、を含む請求項１に記載の方法。
【請求項１１】
前記テンプレートを定義するステップにおいて、前記モジュールの誤動作の１つによって引き起こされるアラームを予想するステップを含み、
前記テンプレートを追加するステップにおいて、前記予想されるアラームの発生に応答して前記因果ネットワークに前記テンプレートを追加するステップを含む、請求項１０に記載の方法。
【請求項１２】
前記因果ネットワークを構成するステップが、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別するステップと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするステップとを含む、請求項１に記載の方法。
【請求項１３】
前記因果ネットワークを構成するステップにおいて、
前記システム内の誤動作を生じたモジュールと接続をしているために、第１のモジュールで第１障害状態を発生したことを識別するステップと、
前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２のモジュールで発生する第２障害状態に前記障害をリンクし、因果ネットワークに追加するステップと、を含む、請求項１に記載の方法。
【請求項１４】
前記識別するステップにおいて、前記第２障害状態の可能な原因が、前記誤動作を生じたモジュール又は、前記システム内のその他のモジュールとの接続に起因するかどうかを判定するステップと、
前記その他のモジュールとの接続に起因した場合に、前記因果ネットワーク内で、前記その他のモジュールで発生する第３障害状態に前記障害をリンクし、因果ネットワークに追加するステップとを含む、請求項１３に記載の方法。
【請求項１５】
前記因果ネットワークを追加するステップが、前記誤動作の発生する確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加するステップと、前記因果ネットワーク内で前記複数の発生に前記障害をリンクするステップとを含む、請求項１に記載の方法。
【請求項１６】
前記複数の発生に前記障害をリンクするステップが、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定するステップと、前記障害状態の少なくとも一部を前記障害にリンクするステップとを含む、請求項１５に記載の方法。
【請求項１７】
前記誤動作の前記確率の前記少なくとも１つを更新するステップが、前記１つまたは複数の前記モジュールの障害の間の平均時間を査定するステップを含む、請求項１に記載の方法。
【請求項１８】
前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記確率の前記少なくとも１つを更新するステップが、前記確率分布の前記平均および前記積率を再査定するステップを含む、請求項１に記載の方法。
【請求項１９】
前記確率分布が、故障率分布を含み、前記平均および前記積率を再査定するステップが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するステップを含む、請求項１８に記載の方法。
【請求項２０】
前記診断を提案するステップが、前記更新された確率の１つまたは複数を所定の閾値と比較するステップと、前記確率の前記１つが前記閾値を超える時に診断アクションを起動するステップとを含む、請求項１に記載の方法。
【請求項２１】
前記診断アクションを起動するステップが、前記診断について前記システムのユーザに通知するステップを含む、請求項２０に記載の方法。
【請求項２２】
前記ユーザに通知するステップが、前記因果ネットワークに基づく前記診断の説明を提供するステップを含む、請求項２１に記載の方法。
【請求項２３】
前記診断アクションを起動するステップが、前記誤動作を検証するために診断テストを実行するステップを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、請求項２０に記載の方法。
【請求項２４】
前記診断テストの結果に応答して前記因果ネットワークを変更するステップを含む、請求項２３に記載の方法。
【請求項２５】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する方法であって、
前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を、前記システムを診断する診断ユニットが、更新するステップと、
前記モジュールの１つの障害を示すアラームを、前記システムから、前記診断ユニットが受け取るステップと、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記診断ユニットが、前記障害と関係付けて因果ネットワークを構成するステップと、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率を示す確率分布とを、前記診断ユニットが計算するステップと、
前記トポロジ情報に基づいて、前記診断ユニットが、前記確率分布に前記条件つき確率を関係付け、前記条件つき確率と前記確率分布とを前記因果ネットワークに追加するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記診断ユニットが、前記確率分布の少なくとも１つを更新するステップと、
前記更新された誤動作の発生する確率を示す確率分布に応答して、前記診断ユニットが、前記アラームの診断を提案するステップとを含む、前記システムを診断する方法。
【請求項２６】
前記確率分布を更新するステップが、前記２つ以上の前記モジュールの障害の間の平均時間を査定するステップを含む、請求項２５に記載の方法。
【請求項２７】
前記確率分布が、平均および積率を有し、前記確率分布を更新するステップが、前記確率分布の前記平均および前記積率を再査定するステップを含む、請求項２５に記載の方法。
【請求項２８】
前記確率分布が、故障率分布を含み、前記平均および前記積率を再査定するステップが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するステップを含む、請求項２７に記載の方法。
【請求項２９】
前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記因果ネットワークを構成するステップが、前記モジュールの前記１つでのローカル障害状態を識別するステップと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするステップとを含む、請求項２５に記載の方法。
【請求項３０】
前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記因果ネットワークを構成するステップが、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別するステップと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクするステップとを含む、請求項２５に記載の方法。
【請求項３１】
前記２つ以上の前記モジュールが、第３モジュールを含み、前記障害をリンクするステップが、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定するステップと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクするステップとを含む、請求項３０に記載の方法。
【請求項３２】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する装置であって、前記装置が、診断プロセッサを含み、
前記診断プロセッサが、前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を更新し、
前記モジュールの１つの障害を示すアラームを、前記システムから、受け取り、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記障害と関係付けて因果ネットワークを構成し、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率とを計算するステップと、
前記トポロジ情報に基づいて、前記条件つき確率を前記誤動作の発生する確率に関係付け、前記条件つき確率と前記誤動作の発生する確率とを前記因果ネットワークに追加し、
前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の発生する確率の少なくとも１つを更新し、
前記更新された誤動作の発生する確率に応答して、前記診断ユニットが、前記アラームの診断を提案する診断プロセッサを含む装置。
【請求項３３】
前記診断プロセッサが、前記システム内の前記複数のモジュールからイベント・レポートを受け取り、前記イベント・レポートから前記アラームを抽出するようにリンクされる、請求項３２に記載の装置。
【請求項３４】
前記イベント・レポートが、前記システムの構成の変更のレポートを含み、前記診断プロセッサが、前記変更された構成に基づいて前記因果ネットワークを構成するように配置される、請求項３３に記載の装置。
【請求項３５】
前記構成が記録されるデータベースを含むメモリを含み、前記因果ネットワークの構成に使用するために、前記診断プロセッサが、前記構成の前記変更の前記レポートに応答して前記データベースを更新するように結合される、請求項３４に記載の装置。
【請求項３６】
前記診断プロセッサが、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出し、前記確率を更新するために前記アラームの前記シーケンスを処理するように結合される、請求項３３に記載の装置。
【請求項３７】
それぞれの寿命が、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームに関して定義され、前記診断プロセッサが、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択するように配置される、請求項３６に記載の装置。
【請求項３８】
前記診断プロセッサが、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択するように配置される、請求項３７に記載の装置。
【請求項３９】
前記因果ネットワークを追加する際に、前記診断プロセッサが、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義するように配置され、前記診断プロセッサが、さらに、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新するように備えられた、請求項３６に記載の装置。
【請求項４０】
前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記診断プロセッサが、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワークに前記テンプレートを追加する、請求項３６に記載の装置。
【請求項４１】
前記障害に関連したノードからなるテンプレートを定義し、
前記障害によるアラームが発生した場合に、前記テンプレートを、前記因果ネットワークに追加する手順を含む診断プロセッサである請求項３２に記載の装置。
【請求項４２】
前記テンプレートを定義する手順において、前記モジュールの誤動作の１つによって引き起こされるアラームを予想する手順と、
前記テンプレートを追加する手順において、前記予想されるアラームの発生に応答して前記因果ネットワークに前記テンプレートを追加する手順とを含む診断プロセッサである請求項４１に記載の装置。
【請求項４３】
前記診断プロセッサが、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別し、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするように配置される、請求項３２に記載の装置。
【請求項４４】
前記診断プロセッサが、前記システム内の誤動作を生じたモジュールと接続をしているために、第１のモジュールで第１障害状態を発生したことを識別し、
前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２のモジュールで発生する第２障害状態に前記障害をリンクし、因果ネットワークに追加する手順を含む、請求項３２に記載の装置。
【請求項４５】
前記診断プロセッサが、前記第２障害状態の可能な原因が、前記誤動作を生じたモジュール又は、前記システム内のその他のモジュールとの接続に起因するかどうかを判定し、
前記その他のモジュールとの接続に起因した場合に、前記因果ネットワーク内で、前記その他のモジュールで発生する第３障害状態に前記障害をリンクし、因果ネットワークに追加する手順を含む、請求項４４に記載の方法。
【請求項４６】
前記診断プロセッサが、前記誤動作の発生する確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加し、前記因果ネットワーク内で前記複数の発生に前記障害をリンクするように配置される、請求項３２に記載の装置。
【請求項４７】
前記診断プロセッサが、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定し、前記障害状態の少なくとも一部を前記障害にリンクするように配置される、請求項４６に記載の装置。
【請求項４８】
前記誤動作の前記確率の前記少なくとも１つが、前記１つまたは複数の前記モジュールの障害の間の平均時間として表される、請求項３２に記載の装置。
【請求項４９】
前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記診断プロセッサが、前記確率分布の前記平均および前記積率を更新するように配置される、請求項３２に記載の装置。
【請求項５０】
前記確率分布が、故障率分布を含み、前記診断プロセッサが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するように配置される、請求項４９に記載の装置。
【請求項５１】
前記診断プロセッサが、前記更新された確率の１つまたは複数を所定の閾値と比較し、前記確率の前記１つが前記閾値を超える時に診断アクションを起動するように配置される、請求項３２に記載の装置。
【請求項５２】
ユーザ・インターフェースを含み、前記診断プロセッサが、前記ユーザ・インターフェースを介して前記診断について前記システムのユーザに通知するように結合される、請求項５１に記載の装置。
【請求項５３】
前記診断プロセッサが、前記ユーザ・インターフェースを介して、前記因果ネットワークに基づく前記診断の説明を提供するように配置される、請求項５２に記載の装置。
【請求項５４】
前記診断アクションが、前記誤動作を検証するために実行される診断テストを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、請求項５１に記載の装置。
【請求項５５】
前記診断プロセッサが、前記診断テストの結果に応答して前記因果ネットワークを変更するように配置される、請求項５４に記載の装置。
【請求項５６】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する装置であって、前記装置が、診断プロセッサを含み、前記診断プロセッサが、
前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を更新し、
前記モジュールの１つの障害を示すアラームを前記システムから受け取り、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記障害と関係付けて因果ネットワークを構成し、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率を示す確率分布とを計算し、
前記トポロジ情報に基づいて、前記確率分布に前記条件つき確率を関係付け、前記条件つき確率と前記確率分布とを前記因果ネットワークに追加し、
前記アラームおよび前記因果ネットワークに基づいて、前記確率分布の少なくとも１つを更新し、
前記更新された誤動作の発生する確率を示す確率分布に応答して、前記診断ユニットが、前記アラームの診断を提案する診断プロセッサを含む装置。
【請求項５７】
前記確率分布が、前記２つ以上の前記モジュールの障害の間の平均時間を示す、請求項５６に記載の装置。
【請求項５８】
前記確率分布が、平均および積率を有し、前記診断プロセッサが、前記アラームに応答して、前記確率分布の前記平均および前記積率を再査定するように配置される、請求項５６に記載の装置。
【請求項５９】
前記確率分布が、故障率分布を含み、前記診断プロセッサが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するように配置される、請求項５８に記載の装置。
【請求項６０】
前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記診断プロセッサが、前記モジュールの前記１つでのローカル障害状態を識別し、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするように配置される、請求項５６に記載の装置。
【請求項６１】
前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記診断プロセッサが、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別し、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクするように配置される、請求項５６に記載の装置。
【請求項６２】
前記２つ以上の前記モジュールが、第３モジュールを含み、前記診断プロセッサが、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定し、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクするように配置される、請求項６１に記載の装置。
【請求項６３】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する複数のプログラム命令からなる、コンピュータに読み取られるプログラムであって、
前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を、前記システムを診断する診断ユニットが、更新するステップと、
前記モジュールの１つの障害を示すアラームを、前記システムから、前記診断ユニットが受け取るステップと、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記診断ユニットが、前記障害と関係付けて因果ネットワークを構成するステップと、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率とを、前記診断ユニットが計算するステップと、
前記トポロジ情報に基づいて、前記診断ユニットが、前記条件つき確率を前記誤動作の発生する確率に関係付け、前記条件つき確率と前記誤動作の発生する確率とを、前記因果ネットワークに追加するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記診断ユニットが、前記誤動作の発生する確率の少なくとも１つを更新するステップと、
前記更新された誤動作の発生する確率に応答して、前記診断ユニットが、前記アラームの診断を提案するステップとを含むプログラム。
【請求項６４】
前記プログラム命令が、前記コンピュータに、前記システム内の前記複数のモジュールからイベント・レポートを受け取ることと、前記イベント・レポートから前記アラームを抽出することとを行わせる、請求項６３に記載のプログラム。
【請求項６５】
前記イベント・レポートが、前記システムの構成の変更のレポートを含み、前記プログラム命令が、前記コンピュータに、前記変更された構成に基づいて前記因果ネットワークを構成することを行わせる、請求項６４に記載のプログラム。
【請求項６６】
前記プログラム命令が、前記コンピュータに、前記構成の前記変更の前記レポートに応答して、前記因果ネットワークの構成に使用するために、前記構成が記録されるデータベースを更新することを行わせる、請求項６５に記載のプログラム。
【請求項６７】
前記プログラム命令が、前記コンピュータに、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出することと、前記確率を更新するために前記アラームの前記シーケンスを処理することとを行わせる、請求項６４に記載のプログラム。
【請求項６８】
それぞれの寿命が、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームに関して定義され、前記プログラム命令が、前記コンピュータに、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択することを行わせる、請求項６７に記載のプログラム。
【請求項６９】
前記プログラム命令が、前記コンピュータに、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択することを行わせる、請求項６８に記載のプログラム。
【請求項７０】
前記プログラム命令が、前記コンピュータに、前記因果ネットワークを構成する際に、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義することと、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新することとを行わせる、請求項６７に記載のプログラム。
【請求項７１】
前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記プログラム命令が、前記コンピュータに、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワーク内で前記テンプレートをインスタンス化することを行わせる、請求項６７に記載のプログラム。
【請求項７２】
前記障害に関連したノードからなるテンプレートを定義し、
前記障害によるアラームが発生した場合に、前記テンプレートを、前記因果ネットワークに追加する手順を含む請求項６３に記載のプログラム。
【請求項７３】
前記テンプレートを定義する際に、前記モジュールの誤動作の１つによって引き起こされるアラームを予想する手順を含み、
前記テンプレートを追加する際に、前記予想されるアラームの発生に応答して前記因果ネットワークに前記テンプレートを追加する手順を含む、請求項７２に記載のプログラム。
【請求項７４】
前記プログラム命令が、前記コンピュータに、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別することと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクすることとを行わせる、請求項６３に記載のコンピュータ・ソフトウェア製品。
【請求項７５】
前記因果ネットワークを構成する際に、
前記システム内の誤動作を生じたモジュールと接続をしているために、第１のモジュールで第１障害状態を発生したことを識別し、
前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２のモジュールで発生する第２障害状態に前記障害をリンクし、因果ネットワークに追加する手順を含む、請求項６３に記載のプログラム。
【請求項７６】
前記識別する際に、前記第２障害状態の可能な原因が、前記誤動作を生じたモジュール又は、前記システム内のその他のモジュールとの接続に起因するかどうかを判定し、
前記その他のモジュールとの接続に起因した場合に、前記因果ネットワーク内で、前記その他のモジュールで発生する第３障害状態に前記障害をリンクし、因果ネットワークに追加する手順を含む、請求項７５に記載のプログラム。
【請求項７７】
前記プログラム命令が、前記コンピュータに、前記誤動作の発生する確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加することと、前記因果ネットワーク内で前記複数の発生に前記障害をリンクすることとを行わせる、請求項６３に記載のプログラム。
【請求項７８】
前記プログラム命令が、前記コンピュータに、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定することと、前記障害状態の少なくとも一部を前記障害にリンクすることとを行わせる、請求項７７に記載のプログラム。
【請求項７９】
前記誤動作の前記確率の前記少なくとも１つが、前記１つまたは複数の前記モジュールの障害の間の平均時間として表される、請求項６３に記載のプログラム。
【請求項８０】
前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記プログラム命令が、前記コンピュータに、前記確率分布の前記平均および前記積率を更新することを行わせる、請求項６３に記載のプログラム。
【請求項８１】
前記確率分布が、故障率分布を含み、前記プログラム命令が、前記コンピュータに、ベイズ信頼性理論モデルを使用して前記故障率分布を更新することを行わせる、請求項８０に記載のプログラム。
【請求項８２】
前記プログラム命令が、前記コンピュータに、前記更新された確率の１つまたは複数を所定の閾値と比較することと、前記確率の前記１つが前記閾値を超える時に診断アクションを起動することとを行わせる、請求項６３に記載のプログラム。
【請求項８３】
前記プログラム命令が、前記コンピュータに、前記診断について前記システムのユーザに通知することを行わせる、請求項８２に記載のプログラム。
【請求項８４】
前記プログラム命令が、前記コンピュータに、前記因果ネットワークに基づく前記診断の説明をユーザに提供することを行わせる、請求項８３に記載のプログラム。
【請求項８５】
前記診断アクションが、前記誤動作を検証するために実行される診断テストを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、請求項８２に記載のプログラム。
【請求項８６】
前記プログラム命令が、前記コンピュータに、前記診断テストの結果に応答して前記因果ネットワークを変更することを行わせる、請求項８５に記載のプログラム。
【請求項８７】
複数のモジュールが接続されて構成されたシステムにおいて、このシステムを診断する複数のプログラム命令からなる、コンピュータに読み取られるプログラムであって、
前記システムの構成が変更された場合に、この変更された構成に基づいて前記システムのトポロジ情報を、前記システムを診断する診断ユニットが、更新するステップと、
前記モジュールの１つの障害を示すアラームを、前記システムから、前記診断ユニットが受け取るステップと、
前記アラームを受け取ると、前記障害を発生したモジュールの誤動作と、前記障害を発生したモジュールとは異なるが、前記障害につながった可能性があるモジュールの誤動作とを、前記トポロジ情報に基づいて、前記診断ユニットが、前記障害と関係付けて因果ネットワークを構成するステップと、
前記障害を条件とした前記モジュールの条件つき確率と前記モジュールの誤動作の発生する確率を示す確率分布とを、前記診断ユニットが計算するステップと、
前記トポロジ情報に基づいて、前記診断ユニットが、前記確率分布に前記条件つき確率を関係付け、前記条件つき確率と前記確率分布とを前記因果ネットワークに追加するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記診断ユニットが、前記確率分布の少なくとも１つを更新するステップと、
前記更新された誤動作の発生する確率を示す確率分布に応答して、前記診断ユニットが、前記アラームの診断を提案するステップとを含むプログラム。
【請求項８８】
前記確率分布が、前記２つ以上の前記モジュールの障害の間の平均時間を示す、請求項８７に記載のプログラム。
【請求項８９】
前記確率分布が、平均および積率を有し、前記プログラム命令が、前記コンピュータに、前記アラームに応答して、前記確率分布の前記平均および前記積率を再査定することを行わせる、請求項８７に記載のプログラム。
【請求項９０】
前記確率分布が、故障率分布を含み、前記プログラム命令が、前記コンピュータに、ベイズ信頼性理論モデルを使用して前記故障率分布を更新することを行わせる、請求項８９に記載のプログラム。
【請求項９１】
前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記プログラム命令が、前記コンピュータに、前記モジュールの前記１つでのローカル障害状態を識別することと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクすることとを行わせる、請求項８７に記載のプログラム。
【請求項９２】
前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記プログラム命令が、前記コンピュータに、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別することと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクすることとを行わせる、請求項８７に記載のプログラム。
【請求項９３】
前記２つ以上の前記モジュールが、第３モジュールを含み、前記プログラム命令が、前記コンピュータに、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定することと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクすることとを行わせる、請求項８７に記載のプログラム。
【発明の詳細な説明】
【０００１】
関連出願の相互参照
本願は、参照によって本明細書に組み込まれる米国特許仮出願第６０／２１４９７１号明細書の利益を主張するものである。
【０００２】
【発明の属する技術分野】
本発明は、一般に通信ネットワークの障害診断のための方法およびシステムに関し、詳細には、通常の通信アクティビティが進行中である間にそのようなネットワーク内で欠陥のあるコンポーネントを識別する方法に関する。
【従来の技術】
【０００３】
コンピュータ・ネットワークの複雑さは、増大を続け、これらのネットワークついて要求される信頼性、可用性、およびサービスも、高まり続けている。これらの要因によって、コンピュータ・ネットワークでネットワーク障害を識別し、分離するのに使用される診断システムに課せられる重荷が増える。ネットワーク・アクティビティに深刻に干渉する可能性がある障害を防ぐためには、初期の障害の前兆となる断続的な問題および散発的な問題を検出し、その問題を引き起こしている装置を正確に示すことが重要である。ネットワークの高可用性を維持するために、ネットワークがオンラインであり、通常のアクティビティ・モードで稼動している間にこれらの問題を識別しなければならない。その後、サービス担当者に、完全に壊れてしまう前に欠陥のある要素を交換するように指示することができる。
【０００４】
現代のネットワークは、通常は、トポロジ・ファイル、システムワイドなエラー・ログ、およびコンポーネント固有のトレース・ファイルなどの大量の診断情報を提供する。これらの情報を分析してネットワーク障害を識別することは、最高の技量を有するネットワーク管理者以外の人間の能力の範囲を超えている。ネットワーク診断に対する最も自動化された手法では、ｉｆ−ｔｈｅｎルールの形で専門家の知識をフレーム化し、このルールを診断情報に自動的に適用することによってこの問題を克服しようとする。通常、ルールは、ヒューリスティックであり、特にそれが適用されるシステムに合わせて作成しなければならない。その結果、ルール自体が、考案が困難であり、発生する可能性があるすべてのエラー状態に一般的に適用することができない。そのようなルールは、包括的に適用可能ではなく、一般に、システム構成が変更された時には更新されなければならない。
【０００５】
モデルベースの診断手法では、誤動作の場合に、問題のシステムの機能モデルから始め、それを分析して、欠陥のあるコンポーネントを識別する。機能モデル（フォワード（ｆｏｒｗａｒｄ）モデルまたは因果（ｃａｕｓａｌ）モデルとも称する）は、システム仕様書または信頼性分析モデルの一部として簡単に入手可能であることがしばしばである。そのようなモデルの開発は、通常は、システム設計またはシステム分析の過程の単純な部分である。したがって、モデルの作成では、設計者がシステム障害診断の専門家である必要がない。診断結論に達するために、代わりに自動化されたアルゴリズムが機能モデルに適用される。システム・モデルが、構成変更を反映するように更新される限り、これらのアルゴリズムは、行われた変更に対して診断を自動的に適合させる。
【０００６】
Ｓｙｓｔｅｍ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ（ＳＡＮ）などの交換コンピューティング・ネットワークおよび交換回線通信ネットワークでは、診断アプリケーションに関して、その複雑さおよび固有の不確実性に関する特定の課題が示される。複雑さでは、使用される多数のコンポーネント、ネットワーク内の装置の間の複数の動的経路の存在、およびそのネットワークが搬送する大量の情報を扱わなければならない。不確実性は、なかんずく、アラーム・メッセージが、パケット形式でネットワークを介して搬送されるという事実から生ずる。その結果、アラーム伝送に未知の遅延が存在する可能性があり、アラームが順序どおりに到着せず、一部のアラーム・パケットが失われる場合もある。
【０００７】
不確実性が存在する情況でのモデルベース診断の技術で既知のパラダイムの１つが、ベイズ・ネットワーク（Ｂａｙｅｓｉａｎ  Ｎｅｔｗｏｒｋ）である。カウエル（Ｃｏｗｅｌｌ）他が、「Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｎｅｔｗｏｒｋｓ  ａｎｄ  Ｅｘｐｅｒｔ  Ｓｙｓｔｅｍｓ」（Ｓｐｒｉｎｇｅｒ−Ｖｅｒｌａｇ、米国ニューヨーク州、１９９９年）でベイズ・ネットワーク理論の全般的な説明を示している。同書は、参照によって本明細書に組み込まれる。ベイズ・ネットワークは、領域変数に対応するノードを有し、条件つき確率テーブルが各ノードに付加される、有向非輪状グラフである。グラフの辺の向きが、ノードの間の因果関係に対応する時に、ベイズ・ネットワークを、因果ネットワーク（ｃａｕｓａｌ  ｎｅｔｗｏｒｋ）とも呼ぶ。ノードの対の間に辺がないことは、それらのノードが条件的に独立であるという前提を表す。確率テーブルの積によって、変数の同時確率分布が与えられる。確率は、テストされるシステム内での障害および誤動作の共起に関する新しい証拠が集められる時に更新される。診断システムは、新しいアラームまたはアラームの組を受け取る時に、ベイズ・ネットワークを使用して、アラームの背後にある最も確率の高い誤動作を自動的に判定する。
【０００８】
その開示が参照によって本明細書に組み込まれる米国特許第６０７６０８３号明細書に、通信ネットワークの診断へのベイズ・ネットワークの例示的適用が記載されている。通信ネットワークが、ベイズ・ネットワークとして表され、通信ネットワーク内の装置および通信リンクが、ベイズ・ネットワークのノードとして表される。通信ネットワークの障害が、識別され、トラブル・チケット（ｔｒｏｕｂｌｅ  ｔｉｃｋｅｔ）の形で記録され、障害の１つまたは複数の考えられる原因が、ベイズ・ネットワーク計算に基づいて与えられる。障害が訂正された時に、ベイズ・ネットワークが、障害の訂正で習得された知識を用いて更新される。更新されたトラブル・チケット情報が、ベイズ・ネットワークの適当な確率行列の自動更新に使用される。米国特許第６０７６０８３号明細書のベイズ・ネットワークは、静的であり、通信ネットワークの構成の変更に対する備えがない。さらに、このベイズ・ネットワークは、通信ネットワーク全体をモデル化するので、大規模で複雑な交換ネットワークを扱わなければならない時に、簡単に手におえなくなる。
【０００９】
コンピュータ・システムでの障害診断に対するベイズ・ネットワークの適用のもう１つの手法が、参照によって本明細書に組み込まれる、ピッツァ（Ｐｉｚｚａ）他著、「Ｏｐｔｉｍａｌ  Ｄｉｓｃｒｉｍｉｎａｔｉｏｎ  ｂｅｔｗｅｅｎ  Ｔｒａｎｓｉｅｎｔ  ａｎｄ  Ｐｅｒｍａｎｅｎｔ  Ｆａｕｌｔｓ」、Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｔｈｉｒｄ  ＩＥＥＥ  Ｈｉｇｈ  Ａｓｓｕｒａｎｃｅ  Ｓｙｓｔｅｍ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｓｙｍｐｏｓｉｕｍ、１９９８年に記載されている。この著者は、信頼性理論の原理をコンピュータ・システムのコンポーネントの過渡的障害と永久的障害の区別に適用することを提案している。信頼性理論では、故障率または経時的な故障分布に関して（平均故障間隔（ＭＴＢＦ）などに関して）所与の装置の故障の確率を予測する。標準的な信頼性理論の技法は、既知の条件での装置動作をサンプリングすることに基づく。その一方で、ピッツァ他によって提案された方式では、システム・コンポーネントの永久的障害と過渡的障害の確率が、ベイズ・ネットワークを使用する推論によって推定され、更新される。しかし、この方式は、ごく限られた実用的適用度だけを有する。というのは、故障確率に関する正確で最適な判断に達するために、あるモジュールから別のモジュールへのエラー伝搬なしで、コンピュータ・システム内の各モジュールを別々に調べるからである。これは、実世界の交換ネットワークで合理的に行うことができる仮定ではない。
【００１０】
【発明が解決しようとする課題】
【課題を解決するための手段】
本発明の好ましい実施形態では、ベイズ・ネットワークと信頼性理論を組み合わせて、現実的で効率的な形で大規模で複雑な交換ネットワークを扱うことができる診断方法および診断システムを提供する。診断システムは、全体としてのネットワークに関する最新のトポロジ情報と共に、ネットワーク内の装置に関するローカル障害モデルを維持する。ローカル障害モデルには、信頼性理論の項で表される、ネットワーク内のモジュールの推定誤動作率が含まれる。アラーム（または一連のアラーム）がネットワークから受け取られた時に、診断システムは、ローカル障害モデル、推定誤動作率、およびトポロジ情報を使用して、アラームの可能な原因とその確率を表すベイズ・ネットワークを構築する。その後、誤動作率推定値が、観察されたアラームおよびその到着時刻に基づいて更新される。所与のモジュールの推定誤動作率が、ある閾値を超える時に、診断システムは、そのモジュールに故障の疑いがあると宣言し、疑わしいモジュールのテストまたは交換の勧告を、システムのユーザに発行する。
【００１１】
したがって、当技術分野で既知のモデルベースの診断方法とは違って、本発明の好ましい実施形態では、動的なベイス・ネットワーク・モデルが使用され、このモデルは、特に受け取ったアラームまたはアラームのグループのそれぞれに応答して作成される。その結果、このモデルは、ネットワーク全体の完全なモデルを維持することの極端に高い計算コストおよびメモリ要件をこうむらずに、実際の最新のネットワーク状態を完全かつ正確に反映する。この診断システムによって生成される所与のモデルでは、装置モデルが分離状態でのみ考慮される上述のピッツァ他の手法と異なって、接続されたモジュールの間の相互作用およびエラー伝搬が考慮される。本発明の実施形態では、カスケード接続されたスイッチなどのネットワーク・トポロジの規則的なパターンが、識別され、利用されて、モジュール間のエラー伝搬を正しくモデル化するのに使用しなければならないベイズ・ネットワークのサイズが制限されることが好ましい。
【００１２】
本発明のいくつかの好ましい実施形態では、診断システムが、ネットワーク内のモジュールの２次故障確率を査定する、すなわち、推定平均故障率と確率分布の積率（標準偏差）の両方を考慮する。所与のモジュールの確率分布の平均および積率は、モジュールに関してベイズ・ネットワークが構成され、評価されるたびに更新される。２次確率の使用は、ベイズ信頼性理論（ベイズ・ネットワークとは別個の）の特性である。ベイズ信頼性理論では、当技術分野で既知の診断システムで使用される、より単純な１次サンプリングベースの方法と異なって、初期査定および訂正の処理として故障率査定を扱う。２次手法は、障害診断モデリングにより適する。
【００１３】
本明細書では、交換コンピュータ・ネットワークでの障害診断に関して好ましい実施形態を説明するが、当業者は、本発明の原理を、他のタイプの通信ネットワークだけではなく、他の種類の電気システムおよび機械システムならびに医療システムおよび金融システムを含む他のシステムの障害の突き止めに同様に適用可能であることを諒解するであろう。
【００１４】
したがって、本発明の好ましい実施例によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のための方法であって、
前記システムから、前記モジュールの１つの障害を示すアラームを受け取るステップと、
前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新するステップと、
前記更新された確率に応答して前記アラームの診断を提案するステップと
を含む方法が提供される。
【００１５】
前記アラームを受け取るステップが、前記システム内の前記複数のモジュールからイベント・レポートを集めるステップと、前記イベント・レポートから前記アラームを抽出するステップとを含み、前記イベント・レポートを集めるステップが、前記システムの構成の変更のレポートを受け取るステップを含み、前記因果ネットワークを構成するステップが、前記変更された構成に基づいて前記因果ネットワークを構成するステップを含むことが好ましい。前記変更された構成に基づいて前記因果ネットワークを構成するステップが、前記構成が記録されるデータベースを維持するステップと、前記因果ネットワークの構成に使用するために、前記構成の前記変更の前記レポートに応答して前記データベースを更新するステップとを含むことが最も好ましい。
．
【００１６】
代替としてまたは追加として、前記アラームを抽出するステップが、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出するステップを含み、前記確率の前記少なくとも１つを更新するステップが、前記確率を更新するために前記アラームの前記シーケンスを処理するステップを含む。前記アラームの前記シーケンスを抽出するステップが、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームのそれぞれの寿命を定義するステップと、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択するステップとを含むことが好ましい。抽出する前記アラームを選択するステップが、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択するステップを含むことが最も好ましい。
【００１７】
さらに追加としてまたは代替として、前記因果ネットワークを構成するステップが、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義するステップを含み、前記アラームの前記シーケンスを処理するステップが、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新するステップを含む。
【００１８】
好ましい実施形態では、前記相互リンクされた複数のモジュールが、規則的なパターンで相互リンクされた前記モジュールの所与の１つの複数のインスタンスを含み、前記因果ネットワークを構成するステップが、前記モジュールの前記所与の１つに対応する前記ネットワーク内のノードのグループを含むテンプレートを定義するステップと、前記アラームに応答して前記１つまたは複数のモジュールに関して前記テンプレートをインスタンス化するステップとを含む。前記テンプレートを定義するステップが、前記モジュールの前記所与の１つの前記インスタンスの１つでの前記誤動作の１つによって引き起こされる期待されるアラームを識別するステップを含み、前記テンプレートをインスタンス化するステップが、前記期待されるアラームの発生に応答して前記ネットワークに前記テンプレートのインスタンスを追加するステップを含むことが好ましい。
【００１９】
前記因果ネットワークを構成するステップが、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別するステップと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするステップとを含むことが好ましい。追加してまたは代替として、前記因果ネットワークを構成するステップが、前記システム内の前記モジュールの第２の１つとの接続に起因して前記モジュールの第１の１つで発生する第１障害状態を識別するステップと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記第２の１つで発生する第２障害状態に前記障害をリンクするステップとを含む。前記障害をリンクするステップが、前記第２障害状態の可能な原因が、前記モジュールの前記第２の１つと前記システム内の前記モジュールの第３の１つとの間のもう１つの接続に起因するかどうかを判定するステップと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記モジュールの前記第３の１つで発生する第３障害状態に前記障害をリンクするステップとを含むことが好ましい。
【００２０】
好ましい実施形態では、前記因果ネットワークを構成するステップが、前記誤動作の前記それぞれの確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加するステップと、前記因果ネットワーク内で前記複数の発生に前記障害をリンクするステップとを含む。前記複数の発生に前記障害をリンクするステップが、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定するステップと、前記障害状態の少なくとも一部を前記障害にリンクするステップとを含むことが好ましい。
【００２１】
もう１つの好ましい実施形態では、前記誤動作の前記確率の前記少なくとも１つを更新するステップが、前記１つまたは複数の前記モジュールの障害の間の平均時間を査定するステップを含む。
【００２２】
前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記確率の前記少なくとも１つを更新するステップが、前記確率分布の前記平均および前記積率を再査定するステップを含むことが好ましい。前記確率分布が、故障率分布を含み、前記平均および前記積率を再査定するステップが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するステップを含むことが最も好ましい。
【００２３】
前記診断を提案するステップが、前記更新された確率の１つまたは複数を所定の閾値と比較するステップと、前記確率の前記１つが前記閾値を超える時に診断アクションを起動するステップとを含むことが好ましい。通常は、前記診断アクションを起動するステップが、前記診断について前記システムのユーザに通知するステップを含み、前記ユーザに通知するステップが、前記因果ネットワークに基づく前記診断の説明を提供するステップを含む。追加としてまたは代替として、前記診断アクションを起動するステップが、前記誤動作を検証するために診断テストを実行するステップを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される。前記因果ネットワークが、前記診断テストの結果に応答して変更されることが好ましい。
【００２４】
本発明の好ましい実施形態によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のための方法であって、
前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成するステップと、
前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新するステップと、
前記更新された確率分布に応答して前記アラームの診断を提案するステップと
を含む方法も提供される。
【００２５】
本発明の好ましい実施形態によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のための装置であって、前記装置が、診断プロセッサを含み、前記診断プロセッサが、前記システムから、前記モジュールの１つの障害を示すアラームを受け取るように結合され、前記診断プロセッサが、前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成し、前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新して、前記更新された確率に応答して前記アラームの診断を提案するように配置される装置が、追加的に提供される。
【００２６】
前記装置が、前記構成が記録されるデータベースを含むメモリを含み、前記因果ネットワークの構成に使用するために、前記診断プロセッサが、前記構成の前記変更の前記レポートに応答して前記データベースを更新するように結合されることが好ましい。
【００２７】
前記装置が、ユーザ・インターフェースを含み、前記診断プロセッサが、前記ユーザ・インターフェースを介して前記診断について前記システムのユーザに通知するように結合されることがさらに好ましい。
【００２８】
さらに、本発明の好ましい実施形態によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のための装置であって、前記装置が、診断プロセッサを含み、前記診断プロセッサが、前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成し、前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新して、前記更新された確率分布に応答して前記アラームの診断を提案するように配置される、装置が提供される。
【００２９】
さらに、本発明の好ましい実施形態によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のためのコンピュータ・ソフトウェア製品であって、前記コンピュータ・ソフトウェア製品が、プログラム命令が保管されたコンピュータ可読媒体を含み、前記プログラム命令が、コンピュータによって読み取られた時に、前記コンピュータに、前記システムから前記モジュールの１つの障害を示すアラームを受け取ることと、前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成することと、前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新して、前記更新された確率に応答して前記アラームの診断を提案することとを行わせる、コンピュータ・ソフトウェア製品が提供される。
【００３０】
さらに、本発明の好ましい実施形態によれば、相互リンクされた複数のモジュールから構成されたシステムの診断のための製品であって、前記製品が、プログラム命令が保管されたコンピュータ可読媒体を含み、前記プログラム命令が、コンピュータによって読み取られた時に、前記コンピュータに、前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成することと、前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新して、前記更新された確率分布に応答して前記アラームの診断を提案することとを行わせる製品が提供される。
【００３１】
【発明の実施の形態】
図１は、本発明の好ましい実施形態による、管理可能な通信ネットワークであるネットワーク２２と、ネットワークを監視するのに使用される診断ユニット２０を概略的に示すブロック図である。ネットワーク２２には、通常は、当技術分野で既知のように、ｓｙｓｔｅｍ／ｓｔｏｒａｇｅ  ａｒｅａ  ｎｅｔｗｏｒｋ（ＳＡＮ）が含まれる。そのようなネットワークでは、ノード２４に、サーバまたは他のコンピュータ・プロセッサ、入出力装置、記憶装置、またはゲートウェイを含めることができ、これらが、スイッチ２８によって相互接続される。そのようなネットワークの例が、米国ニューヨーク州アーモンクのＩＢＭ  Ｃｏｒｐｏｒａｔｉｏｎ社が製造するＲＳ／６０００  ＳＰシステムである。ネットワーク２２は、診断ユニット２０によって使用される次の２つの鍵となる特徴を提供するという意味で、「管理可能な」といわれる。第１に、このネットワークは、パケット破壊または装置無応答などのエラーおよび障害と、異常な機能性を反映する可能性がある統計に関して監視される。第２に、このネットワークは、特にアラームを生成する時を決定するのに使用されるエラー閾値などの装置パラメータをシステム・オペレータまたは自動コントローラがセットする能力に関して、構成可能である。
【００３２】
ネットワーク２２の管理機能は、ノードのうちで、１次ノード２６として働くように選択されたノードを介して調整されることが好ましい。ノード２４には、イベント・コレクタ３０が含まれ、このイベント・コレクタ３０は、すべてのノードで稼動するネットワーク管理ソフトウェアの一部として稼動するソフトウェア・エージェントとして実施されることが好ましい。これらのエージェントは、アラームおよび構成変更を含む、それぞれのノードで発生するシステム・イベントを集める。イベント・コレクタ３０は、これらのイベントを、管理パケットの形で、１次ノード２６上で稼動する１次イベント・コレクタ３２に送信する。１次イベント・コレクタ３２は、下で説明するように、イベントのストリームを処理のために診断ユニット２０に渡す。
【００３３】
概念的な明瞭さのために、診断ユニット２０は、１次ノード２６とは別の機能ブロックとして図示されているが、本発明の好ましい実施形態では、診断ユニット２０が、１次ノード上で稼動するソフトウェア・コンポーネントとして実施される。その代わりに、診断ユニット・ソフトウェアを、１次ノードとは物理的に分離された別のプロセッサ上で稼動させることができ、また、ノードのグループまたはすべてのノードで分散アプリケーションとして稼動させることができる。このソフトウェアは、たとえば１次ノードまたは他のプロセッサへ電子的な形でネットワーク２２を介してダウンロードすることができ、その代わりに、ＣＤ−ＲＯＭなどの有形の媒体上で供給することができる。
【００３４】
図２は、本発明の好ましい実施形態による、診断ユニット２０の詳細を概略的に示すブロック図である。診断ユニット２０が、上で注記したようにソフトウェアで実施されると仮定すると、図２に示されたブロックは、通常は、別々のハードウェア要素ではなく、診断ソフトウェア・パッケージ内の機能要素またはプロセスを表す。１次イベント・コレクタ３２によって収集されたイベントのストリームが、診断ユニット２０内で、イベント・フォーマッタおよびマージャ４０によって受け取られる。このブロックは、イベントを順番に、好ましくはイベント・コレクタ３０によってイベントの発生の時刻を示すために適用されたタイム・スタンプに基づく日時順で配置する。その代わりに、壽序を、１次ノード２６でのイベントの受取の時刻に基づくものとすることができる。イベント・フォーマッタおよびマージャ４０は、適宜、イベント・コレクタ３０から受け取ったイベント・メッセージ情報を、診断ユニット２０内の後続ブロックによって効率的に処理できる統一されたフォーマットで再フォーマットする。イベント・フォーマッタおよびマージャ４０は、イベントを、構成変更イベントとアラーム（すなわちエラー報告）に分離し、処理のために２つのマージされたストリームを供給する。
【００３５】
構成トラッカ４２が、構成変更イベントを受け取り、これらを処理して、システム・モデル４４に基づいて構成データベース４６を更新する。構成データベース４６は、現在使用可能なモジュール、その状況、およびトポロジを含む、ネットワーク始動時のネットワーク２２の完全な構成を用いて初期化される。このデータベースは、その後、たとえば、ノード２４の追加または除去、スイッチ２８上のポートの使用可能化または使用不能化などの、発生したすべての変更を反映するために、リアル・タイムで自動的に更新される。システム・モデル４４では、ネットワーク２２内で使用されるモジュールが、その相互接続および階層を含めて記述される。用語「モジュール」は、本明細書では、通常は、特定のエラー・レポートに関連付けることができる現場交換可能ユニット（ＦＲＵ）またはＦＲＵの一部を指すのに使用される。システム・モデル４４内のモジュールの間の差異化によって、診断ユニット２０がエラー・レポートを診断し、そのソースを局所化する際の粒度が決定される。階層システム・モデルが、当技術分野で既知のように、Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ（ＸＭＬ）フォーマットでネットワーク２２のオペレータによって診断ユニット２０に供給されることが好ましい。
【００３６】
診断エンジン４８は、イベント・フォーマッタおよびマージャ４０からアラーム・ストリームを受け取り、この情報を使用して、各アラームに関連するモジュールの信頼性査定を判定し、更新する。信頼性査定は、各アラームに対応するベイズ・ネットワークをオンザフライで構成し、ベイズ信頼性理論を使用して、モジュールのそれぞれのさまざまな誤動作の誤動作率を査定することによって、更新される。診断エンジンが使用する方法は、後で詳細に説明する。ベイズ・ネットワークを構成する際に、診断エンジンは、上で説明したように、システム・モデル４４および構成データベース４６によって供給される情報を使用する。診断エンジンは、ネットワーク２２内の可能な障害を記述する障害モデル５０にも頼る。この文脈での障害は、ローカルな問題または予想されない入力に起因して所与のモジュール内で発生する可能性がある、異常な状態または振る舞いである。
【００３７】
障害モデル５０は、好ましくはネットワーク・オペレータによって、最も好ましくはＸＭＬフォーマットで供給される。障害モデルのサンプルのＤＴＤ（Ｄｏｃｕｍｅｎｔ  Ｔｙｐｅ  Ｄｅｆｉｎｉｔｉｏｎ）を、付録Ａとして本明細書に添付する。これには、通常は、グローバル障害情報が、システム・モデル内の基本モジュールのすべてに関する個別の障害モデルと共に含まれる。これらの基本モジュールは、モジュール階層の最下位レベルにあるモジュールである。
【００３８】
障害モデル５０のグローバル障害情報には、ネットワーク２２で可能なすべてのタイプの誤動作と、その期待される率が記述される。この文脈での用語「誤動作」は、モジュール内の障害の根本原因を指す。モジュールで障害が検出される時に、その障害は、そのモジュール自体で発生した誤動作に起因する場合と、障害が検出されたモジュールへネットワークを介して通信トラフィックで伝搬された別のモジュールの誤動作に起因する場合がある。障害モデル５０の誤動作確率は、通常は、故障の間の推定平均時間（ＭＴＢＦ）などの故障率に関して表現される。推定された率に、確率分布の標準偏差（または第１積率）に関して表現された推定の信頼性の尺度が付随することが好ましい。誤動作率査定は、対数時間スケールでの正規分布によって記述することができる。したがって、たとえば、秒単位での誤動作率査定（１０、１）は、誤動作発生の間の平均時間が１０１０秒であり、発生の間の実際の時間が区間［１０８、１０１２］秒である確率が０．９５であることを示す。診断エンジン４８は、ネットワーク２２から受け取るアラームを処理する際に、平均および標準偏差の両方を推論によって更新する。
【００３９】
各基本モジュールの個々の障害モデルには、以下の情報が含まれる。
・そのモジュールで発生する可能性がある誤動作のそれぞれについて、それがそのモジュール自体によって検出され、そのモジュールによるアラームの生成につながるかどうかと、その誤動作がそのモジュールの出力の障害状態を引き起こすかどうか。障害状態は、障害すなわち、上で注記したようにモジュールの異常な状態または振る舞いの出現につながる誤動作の発生の結果である。モジュール自体で障害を引き起こすモジュール内の障害状態を、本明細書では「ローカル障害状態」と呼称する。別のモジュールの異常な入力状態を引き起こす、モジュール出力での障害状態を、「接続障害状態」と呼称する。
・モジュールの入力に現れる可能性がある障害状態のそれぞれについて、その状態がそのモジュールによって伝搬されるか、検出されるか、その両方であるか。
・検出される障害状態のそれぞれについて、モジュールがどのアラームを報告するか。
【００４０】
勧告および説明ジェネレータ５２が、診断エンジン４８によって計算された誤動作査定を受け取り、ネットワーク２２内の異なるモジュールの査定を、障害モデル５０に保持された期待されるベースライン値と比較する。所与のモジュールの故障率査定が、そのベースライン値より大幅に高い時には、勧告および説明ジェネレータ５２は、通常は、さらに診断処置を講ずるか、そのモジュールを含むＦＲＵを交換するようにユーザに勧告する。そのような勧告を行うための判断基準は、下でさらに説明する。勧告は、ユーザ・インターフェース５４を介して提示される。このユーザ・インターフェースを用いて、ユーザが、勧告および説明ジェネレータへの照会を入力でき、それに応答して勧告の根本的理由の包括的な説明を受け取ることができることが好ましい。説明は、診断エンジン４８によって構成されたベイズ・ネットワークに基づいて、当技術分野で既知の説明を生成する方法を使用して生成されることが好ましい。このための例示的方法が、ドラズデル（Ｄｒｕｚｄｅｌ）著、「Ｑｕａｌｉｔａｔｉｖｅ  Ｖｅｒｂａｌ  Ｅｘｐｌａｎａｔｉｏｎｓ  ｉｎ  Ｂａｙｅｓｉａｎ  Ｂｅｌｉｅｆ  Ｎｅｔｗｏｒｋｓ」、Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ  ａｎｄ  Ｓｉｍｕｌａｔｉｏｎ  ｏｆ  Ｂｅｈａｖｉｏｒ  Ｑｕａｒｔｅｒｌｙ  ９４（１９９６年）、４３ないし５４ページと、マディガン（Ｍａｄｉｇａｎ）他著、「Ｅｘｐｌａｎａｔｉｏｎ  ｉｎ  Ｂｅｌｉｅｆ  Ｎｅｔｗｏｒｋｓ」、Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔａｔｉｏｎａｌ  ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｓｔａｔｉｓｔｉｃｓ  ６、１６０ないし１８１ページ（１９９７年）に記載されている。これらの出版物の両方が、参照によって本明細書に組み込まれる。
【００４１】
図３は、本発明の好ましい実施形態による、診断ユニット２０でアラームを処理し、勧告を生成する方法を概略的に示す流れ図である。この方法は、アラーム受取のステップ６０で、診断エンジン４８がアラームを受け取るたびに起動されることが好ましい。その代わりに、この方法を、あるタイプまたはグループのアラームに応答して呼び出すことができる。シーケンス組合せのステップ６２で、短い時間間隔で発生する関係するアラームを、処理のために組み合わせることが好ましい。集合処理のためのシーケンス内でのアラームの組合せに適用可能な方法および考慮事項を、図５に関して下で詳細に説明する。
【００４２】
診断エンジン４８は、ネットワーク構築のステップ６４で、特定のアラームまたはアラーム・シーケンスに適用可能なベイズ・ネットワーク（または因果ネットワーク）を構築する。単一のアラームに応答して構成された通常のベイズ・ネットワークを図４に示し、このネットワークを構成するのに使用される方法を、図６ないし８に関して下で詳細に説明する。ベイズ・ネットワークは、有向非輪状グラフであり、そのノードが、問題のアラームにつながる可能なモジュール誤動作、障害状態、および障害を含む変数に対応する。誤動作ノードは、期待される誤動作率または査定された誤動作率に基づく、指定された確率分布を有する。残りの変数の確率は、グラフ内の親に対して、対応する変数の条件つき確率を表す確率テーブルによって記述される。
【００４３】
グラフを構成した後に、診断エンジン４８は、更新のステップ６６で、シーケンス内のアラームに基づいてノードの確率テーブルを更新する。指定された時間枠内で発生する異なるアラームを相関させることによって、診断エンジンは、ノードの条件つき確率を調整することができ、その後、グラフを作って、誤動作ノードの誤動作率査定を更新することができる。言い換えると、すべての所与の観察されたアラームＡについて、その確率Ｐ（Ａ＝真）に、１をセットする。期待されるアラームの確率は、その寿命分布に従って判定される。その後、ベイズ・ネットワークのノードの確率テーブルを再計算して、これらの結果との一貫性を有するようにする。この手順を、ベイズ・ネットワークの分野では、「証拠伝搬（ｅｖｉｄｅｎｃｅ  ｐｒｏｐａｇａｔｉｏｎ）」と称する。
【００４４】
更新された誤動作査定は、勧告のステップ６８で、勧告および説明ジェネレータ５２がユーザに勧告を提供するための基礎として働く。ユーザが、各モジュールに適用される２つの閾値レベルすなわち、モジュールに「障害の疑いあり」としてフラグが立てられる低閾値と、疑わしいモジュールが疑わしくないものとして再分類される高閾値を定義することが好ましい。これらの閾値は、各モジュールの査定された誤動作率と、システム仕様に基づくそのモジュールの期待される故障率の間の差に関係する。ユーザは、この２つの閾値の信頼性レベルも定義する。この信頼性レベルは、モジュールの誤動作率査定に関連する標準偏差値に対して検査される。したがって、たとえば、ユーザは、そのＭＴＢＦ（誤動作率の逆数）が１０８未満に低下したことが１０％の信頼性レベルである時に、所与のモジュールに障害の疑いありとしてフラグを立てることを指定することができる。あるアラーム・シーケンスに続くステップ６６の後に、そのモジュールについて査定されたＭＴＢＦが、上で説明した対数表記を使用して（９、２）であると仮定する。そのような場合には、実際のＭＴＢＦが閾値１０８未満に低下した確率が１０％を超えるので、そのモジュールにそれ相応にフラグが立てられる。ユーザは、通常、問題のＦＲＵを交換するか他の形でサービスするコストに応じて、ネットワーク動作中のモジュールの障害の結果の深刻さに対して重みをつけて、閾値および信頼性レベルを設定する。
【００４５】
所与のモジュールが、障害の疑いありとしてフラグを立てられている時に、勧告および説明ジェネレータ５２が、そのモジュールの状況を検証するためにそのモジュールに適用することができるオンラインの非破壊試験手順があるかどうかを判定するために検査する。そうである場合には、ジェネレータが、その手順を自動的に呼び出すか、その代わりに、その手順を実行するようにユーザに促すことが好ましい。この手順の結果が、診断エンジン４８にフィード・バックされることが好ましく、この診断エンジン４８は、適用可能なベイズ・ネットワークにその結果を組み込み、その誤動作率査定をそれ相応に更新する。この手順の次に、勧告および説明ジェネレータ５２が、ＦＲＵを交換しなければならないかどうかを判定することができる。その代わりに、問題のモジュールに関連する可能な誤動作のすべてに関するＭＴＢＦ査定が、高閾値未満に低下する（おそらくはネットワーク２２からの追加のアラームの受取および処理の後に）場合に、そのモジュールの障害の疑いフラグをリセットする。
【００４６】
図４は、本発明の好ましい実施形態による、診断エンジン４８によって生成される例示的ベイズ・ネットワークであるネットワーク７０を概略的に示すグラフである。この例では、診断エンジン４８が、図３の方法のステップ６０で受け取る、観察されたＵＳＤ（非送信請求データ）アラーム７１に応答して、ネットワーク７０を構成する。このアラームは、ＵＳＤ障害７２が発生し、これによって、スイッチ２８の１つの受信器ポートが、データの前に送信されなければならない、正しいパケットの先頭（ＢＯＰ）文字が先行していなかったデータを受信したことを意味する。この障害を引き起こす可能性がある、障害モデル５０に記述されたシナリオには、次の２つがある。
・破壊されたＢＯＰ  −  このエラーを報告したスイッチにデータを送信した、ネットワーク２２内の先行するスイッチの受信器部分と、エラーが検出された実際の受信器ポートとの間のどのモジュールでも発生する可能性がある。
・ローカル設計欠陥  −  メモリ破壊以外の、報告するスイッチのローカルな問題。
【００４７】
ネットワーク７０を構築するために、診断エンジン４８は、観察されたＵＳＤアラーム７１に対応するノードと、そのアラームを引き起こしたＵＳＤ障害７２に対応するノードから始める。障害モデル５０に基づいて、報告するスイッチでＵＳＤ障害７２を引き起こした可能性がある障害状態７４に対応するノードを、ネットワークに追加する。上で注記したように、これらの障害状態には、リンク上またはスイッチ自体の中で破壊されたビットと、破壊を引き起こした可能性があるローカル設計欠陥の両方が含まれる。その後、障害モデルを使用して、再帰的な形でネットワーク７０にさらに障害状態７６を追加する。追加される障害状態には、報告するスイッチ上の障害状態、またはそれに接続され、報告するスイッチに伝搬され、したがって障害状態７４の１つを引き起こした可能性がある先行するスイッチ上の障害状態のすべてを含めなければならない。この処理は、最終的に停止する。というのは、データ・フローが非輪状であり、ネットワーク２２が有限だからである。そうであっても、通信ネットワーク２２全体を介する障害状態の伝搬によって、手におえないほど大きいベイズ・ネットワーク７０がもたらされるはずである。現在の例では、スイッチ２８が、破壊されたデータを再送信しないので、伝搬が停止し、したがって、ＢＯＰ破壊が、ネットワーク２２内で、先行するスイッチの受信器ポートより遠い位置から発した可能性はない。下の図９で、本発明の好ましい実施形態に従って作成されたベイズ・ネットワークのサイズを制限する、もう１つの技法を示す。
【００４８】
障害状態７４および７６のそれぞれについて、診断エンジン４８は、その状態を引き起こした可能性がある誤動作８０に対応するノードをネットワーク７０に追加する。誤動作ノードは、故障率分布をそれに関連付けられ、これによって、特定の誤動作の連続的な確率が示される。ネットワーク７０を完成させるために、誤動作８０を、ブール発生７８に関して離散化する。言い換えると、所与の誤動作８０を、離散化された故障率分布を有する区間変数によって表す。各区間について、連続故障率分布関数の値を計算して（通常は区間の中点で）、区間の離散化された故障率分布の値を与える。出現変数は、対応する誤動作が発生する確率の計算に使用される。言い換えると、出現変数は、ｔが、ネットワーク７０がそれについて構成された観察されたアラームの観察の時刻であるものとして、その項目がＰ（時刻ｔに発生した誤動作｜ａ＜故障率＜ｂ）によって与えられる条件つき確率テーブルを有するブール変数である。確率テーブルは、ポアソン到着統計などの適当なモデルに従って、対応する誤動作の推定された率によって決定されることが好ましい。ネットワーク７０の複雑さを減らすために、誤動作８０ごとに１つのブール発生のノード７８だけがあることが好ましい。誤動作によって引き起こされる障害状態７４および７６は、その誤動作に関連する出現変数に接続される。
【００４９】
ネットワーク２２内の前のスイッチと、ＵＳＤアラームを報告したスイッチとの間のリンクでＢＯＰビット破壊が発生した場合（ケーブル上と、ケーブルを装置に接続する補助コンポーネントで発生した破壊を含む）、破壊されたビットは、エラー検出コード（ＥＤＣ）障害８２も引き起こしていなければならない。この情況は、「リンク上のＵＳＤ」障害状態ノードをＥＤＣ障害ノードに接続する、ネットワーク７０に追加された辺によって反映される。ＥＤＣ障害は、観察されたＵＳＤアラーム７１の他に、スイッチにＥＤＣアラーム８４を発行させているはずである。このＥＤＣアラーム８４が、「期待されるアラーム」としてネットワーク７０に追加される。診断ユニット２０でのＥＤＣアラームの到着または非到着は、ＵＳＤアラームの可能性の高い原因を判定するのに重要な要因であり、したがって、ネットワーク７０内のノードの条件つき確率を調整するのに重要な要因である。
【００５０】
図５は、診断エンジン４８が受け取るアラーム９０のシーケンスの処理を概略的に示すタイミング図である。これらのアラームは、現在のアラームに関するベイズ・ネットワークを構築し、ネットワーク内のノードの確率を評価するのに使用するために、ステップ６２（図３）で組み合わせられる。適当な時間ウィンドウ内のアラームのシーケンスを集めることが、たとえば、期待されたアラーム８４が、観察されたアラーム７１と共に到着したか否かの判定に使用される。時間ウィンドウの選択は、診断ユニット２０でのアラーム到着時刻およびアラームの到着の順序の不確実性を正しく扱うために重要である。
【００５１】
所与のシーケンス内のどのアラームを処理のために組み合わせるかを判定するために、時間に対する正規分布を、アラームの各タイプに関連付ける。この分布は、アラームの「寿命分布」と称するが、ネットワーク２２内である時刻Ｔ＝０に発生したイベントに関連するアラームの、診断ユニット２０での到着の時間に対する確率を表す。言い換えると、図５を参照すると、アラームＡ”の寿命分布によって、アラームＡが時刻Ｔ０に受け取られた時に、Ａと同一の障害状態によって生成されたアラームＡ”が、時刻Ｔ１に受け取られる推定確率が与えられる。通常、各アラーム・タイプの寿命は、診断ユニットのユーザによって指定されるが、その代わりに、ネットワーク２２の実際の性能に基づいて、診断ユニットによって寿命を計算することができる。
【００５２】
場合によっては、ネットワーク２２のモジュールが、障害の発生のすべてでアラームを発生するのではなく、ある回数の発生を累算し、その後、バッチ・アラームを発行する。この場合、単独のアラーム寿命に閾値係数を掛け、その結果、アラームの寿命分布が広くなるようにする必要がある。したがって、図５には、閾値係数を有しない第１アラーム・タイプの狭い分布９２と、低い閾値係数を有する第２アラーム・タイプの中間の分布９４と、高い閾値係数を有する第３アラーム・タイプの広い分布９６が示されている。
【００５３】
確率テーブルおよび誤動作率査定を更新するためにベイズ・ネットワークを処理する（図３の方法のステップ６６）前に、診断エンジン４８が、シーケンス内の関係する観察されたアラームおよび期待されるアラームのすべてを受け取るまで、待つことが好ましい。待つ時間の長さは、アラーム寿命によって決定される。図５に示されているように、診断エンジン４８は、すべての期待されるアラームの到着確率が、所定の閾値未満になる時刻ＴＥＮＤまで待つことが好ましい。その場合に、アラームＡ０、…、Ａ’、Ａ”は、アラームＡに関連するとみなされるが、ＴＥＮＤの後に到着するアラームＡＮは、そう見なされない。
【００５４】
図６は、本発明の好ましい実施形態による、ネットワーク構築のステップ６４（図３の方法の）の詳細を概略的に示す流れ図である。これは、再帰的な方法であり、好ましくは、図４に示されたネットワーク７０などのベイズ・ネットワークの構成に使用される。この方法は、初期化のステップ１００で、観察されたアラームＡ（観察されたＵＳＤアラーム７１など）が時刻ＴにモジュールＭで受け取られることから始まる。ネットワーク作成のステップ１０２で、診断エンジン４８が、新しいベイズ・ネットワークＢＮを作成し、アラームＡに対応するノードをＢＮに追加する。障害発見のステップ１０４で、エンジンが、Ａに対応する障害Ｆを見つけるために、障害モデル５０でアラームを検索する。Ｆに対応するノードを、辺（Ｆ、Ａ）と共にＢＮに追加する。
【００５５】
障害状態発見のステップ１０６で、診断エンジン４８が、次に、Ｆを引き起こした可能性がある障害状態Ｃを見つけるために、障害モデル５０で障害Ｆを検索する。図４の例からわかるように、どの所与の障害についても、通常は複数のそのような障害状態がある。そのような障害状態Ｃのそれぞれについて、診断エンジン４８が、障害状態追加のステップ１０８を実行し、これによって、モジュールＭ上の状態Ｃに対応するノードがＢＮに追加され、Ｃにつながった可能性がある追加の障害状態が検索される。ステップ１０８には、再帰ルーチンが含まれるが、これについては、図７に関して下で詳細に説明する。このステップでは、各障害状態につながる誤動作および誤動作発生に対応するノードおよび辺も追加される。辺追加のステップ１１０で、Ｆを引き起こした可能性がある障害状態Ｃのそれぞれについて、対応する辺（Ｃ、Ｆ）をＢＮに追加する。Ｆを引き起こした可能性がある可能な障害状態Ｃのすべてをこの形で処理した後に、ベイズ・ネットワークが完成する。
【００５６】
図７は、本発明の好ましい実施形態による、障害状態追加のステップ１０８で実行されるルーチンの詳細を概略的に示す流れ図である。このルーチンは、ノード追加のステップ１２０で、モジュールＭの状態Ｃに対応するノードをＢＮに追加することから始まる。局所性検査のステップ１２２で、診断エンジン４８が、障害モデル５０を検査して、状態Ｃがローカル障害状態と接続障害状態のどちらであるかを判定する。ローカル障害状態の場合、状態Ｃを引き起こした、モジュールＭの誤動作Ｎだけを検査すればよい。誤動作発見のステップ１２４で、診断エンジン４８が、障害モデル５０の可能な誤動作を検索する。誤動作Ｎのそれぞれについて、誤動作検査のステップ１２６で、エンジンが、Ｎに対応するノードがＢＮに既に存在するかどうかを検査する。そうでない場合には、ノード追加のステップ１２８で、ノードＮをＢＮに追加する。その後、辺追加のステップ１２９で、辺（Ｎ、Ｃ）をＢＮに追加する。可能な誤動作のすべてをＢＮに追加した時に、ステップ１０８が完了する。
【００５７】
ステップ１２２で、接続障害状態が識別される時には、扱いがより複雑になる。この場合、モジュール発見のステップ１３０で、診断エンジン４８が、システム・モデル４４および構成データベース４６でモジュールＭを検索して、Ｍ’からＭへの接続で障害状態Ｃが現れる原因になった可能性がある形でＭに接続されている１つまたは複数のモジュールＭ’を見つける。障害状態追加のステップ１３２で、そのようなモジュールＭ’のそれぞれについて、診断エンジン４８が、状態Ｃを引き起こした可能性がある、Ｍ’上およびＭ’につながる接続上の障害状態を見つけ、ＢＮに追加する。このステップには、図８に関して下で詳細に説明するルーチンが含まれる。ステップ１３２のルーチンは、ステップ１０８のルーチンの再帰の一部を形成する。このルーチンは、障害状態Ｃの出現につながった可能性がある、Ｍ’上およびその接続上（Ｍ’に接続された他のモジュールなどを含む）の障害状態のすべてに対応するノードおよび辺がＢＮに追加されるまで継続する。
【００５８】
障害状態Ｃにつながる可能な接続障害状態のすべてを探査した後に、予期される障害の発見のステップ１３４で、診断エンジン４８が、障害モデル５０を照会して、これらの障害状態が、ステップ１０４で見つかった障害Ｆ以外の別の障害Ｆ’につながる可能性があるかどうかを判定する。ＥＤＣ障害８２（図４）が、そのような障害の例である。障害ノード追加のステップ１３６で、そのような期待される障害Ｆ’のそれぞれのノードをＢＮに追加する。さらに、Ｆ’によって生成される期待されるアラームＡ’に対応するノードを、辺（Ｃ、Ｆ’）および（Ｆ’、Ａ’）と共にＢＮに追加する。他のモジュール上のローカル障害状態に対応する辺および障害Ｆ’につながった可能性があるモジュールに関連する接続障害状態に対応する辺が、さらにネットワークに追加される可能性もある。最初のアラームＡに対する相対的な時間（指定された寿命によって与えられる）以内に期待されるアラームＡ’の発生または非発生が、ステップ６６（図３）でのベイズ・ネットワークに関する状態確率テーブルの書込に使用される。
【００５９】
図８は、本発明の好ましい実施形態による、障害状態追加のステップ１３２で実行されるルーチンの詳細を概略的に示す流れ図である。上で注記したように、このルーチンは、接続障害状態ＣがＭ’とＭの間の接続上に現れる可能性がある形でＭに接続されたモジュールＭ’のそれぞれについて実行される。このルーチンは、Ｍ’に接続されたモジュールＭ”についても再帰的に実行される可能性がある。ローカル障害検査のステップ１４０で、診断エンジン４８が、まず、障害モデル５０を検査して、Ｍに接続されたＭ’の出力上で状態Ｃを生じた可能性があるＭ’上のローカル障害状態Ｃ’があるかどうかを確認する。そのような状態Ｃ’がある場合には、ステップ１０８のルーチンに従い、必要な変更を加えて、診断エンジン４８が、モジュールＭ’上のＣ’に対応するノードをベイズ・ネットワークＢＮに追加する。このルーチンは、Ｃ’を引き起こした可能性があるローカル誤動作に対応するノードと、適当な辺の、ＢＮへの追加にもつながる。辺追加のステップ１４２で、辺（Ｃ’、Ｃ）もＢＮに追加する。
【００６０】
ローカル障害状態Ｃ’が見つかった場合でもそうでない場合でも、Ｃを生じたＣ’を生じた可能性がある、Ｍ’とＭ’に接続された他のモジュールＭ”との間の接続障害状態Ｃ”もある場合がある。この情況は、Ｍ’がＣに伝搬すると言うのと同等である。伝搬のステップ１４４で、診断エンジン４８が、障害モデル５０を参照することによって、Ｍ’がＣに伝搬するかどうかを確認する。Ｍ’がＣに伝搬する場合には、入力検査のステップ１４６で、診断エンジン４８が、障害モデルを照会して、接続障害状態Ｃ”が現れた可能性があるＭ’の入力を判定する。そのような入力のそれぞれについて、Ｍ’上の接続障害状態Ｃ”をＢＮに追加する。このステップでも、必要な変更を加えて、ステップ１０８のルーチンに従う。辺追加のステップ１４８で、障害状態Ｃ”のそれぞれについて、辺（Ｃ”、Ｃ）をＢＮに追加する。ここでステップ１３２が終了し、ベイズ・ネットワークの構成は、すべての再帰が完了するまでステップ１３４で継続される。
【００６１】
通信ネットワーク２２は有限でなければならないので、図６ないし８によって例示されたベイズ・ネットワークを構成する方法は、最終的に必ず停止する。しかし、障害伝搬のためにベイズ・ネットワークが非常に大きくなり、通信ネットワーク全体を表す点まで大きくなる場合がありえる。そのような情況は、完全に手におえない情況であり、回避しなければならない。
【００６２】
したがって、本発明の好ましい実施形態では、ＳＡＮなどの交換ネットワークに固有の規則性を利用することによって、ステップ６４でベイズ・ネットワークの増大を制限する。そのようなネットワークは、一般に、少数の異なるモジュール・タイプを有し、これらのタイプが、通常は規則的な構成に配置される。これらの構造は、ベイズ・ネットワークではテンプレートによって表されることが好ましい。所与のテンプレートのすべてのインスタンスが、所与の障害状態の下で同一の期待されるアラームを生じる。通信ネットワークの構造に物理的に存在する、所与のテンプレートの多数のインスタンスが存在する可能性があるが、テンプレートの特定のインスタンスが、その期待されるアラームの１つが実際に観察された時に限って、インスタンス化される、すなわち、ベイズ・ネットワークに追加されることが好ましい。
【００６３】
図９は、通信ネットワーク１６８と、本発明の好ましい実施形態に従って診断エンジン４８によって構成された、対応するベイズ・ネットワーク１７５との規則的な構造を示すグラフである。この例の通信ネットワーク１６８には、カスケード接続されたスイッチ１７０、１７２、および１７４が含まれ、スイッチ１７０は、カスケードの第１層にあり、スイッチ１７２は第２層、スイッチ１７４は第３層にある。ベイズ・ネットワーク１７５の構成は、スイッチ１７０のポートの１つで観察されたアラーム１７６に対応するノードから開始される。図６ないし８の手順に従って、アラーム１７６を引き起こした責任を負う障害１７８に対応するノードと、その障害を引き起こしたスイッチ１７０の受信器ポートでの障害状態１８０のノードがベイズ・ネットワーク１７５に追加される。この状態は、スイッチの中央キューでの障害状態１８２によって引き起こされた可能性がある。これらは、スイッチ１７０でのアラーム１７６を引き起こした可能性があるローカル障害である。
【００６４】
アラーム１７６が、スイッチ１７２の１つからスイッチ１７０に伝搬した障害によって引き起こされた可能性もある。そのような障害伝搬は、スイッチ１７２の送信器ポートでの障害状態１８４、スイッチを接続するケーブルでの障害状態１８６、スイッチ１７２の受信器ポートでの障害状態１８８、またはスイッチ１７２の中央キューでの障害状態１９０を含む、一連の障害状態の１つによって引き起こされる可能性がある。スイッチ１７０の場合と同様に、スイッチ１７２での障害状態１８８または１９０は、スイッチ１７２の受信器ポートでの障害１９２を生じ、期待されるアラーム１９４につながる。
【００６５】
障害状態１８４、１８６、１８８、および１９０が、障害１９２および期待されるアラーム１９４と共に、通信ネットワーク１６８内のスイッチの１つに対応するベイズ・ネットワーク・テンプレートを構成する（障害状態につながる可能性がある誤動作および誤動作発生に対応するノードは、簡単にするためにここでは省略する）。スイッチ１７２の１つが、アラーム１７６の適当な時間制限内に期待されるアラーム１９４を発行した場合には、アラーム１７６と期待されるアラーム１９４が互いに関連すると仮定する慨然論的基礎がある。この場合、アラームを発行するスイッチに対応するテンプレートがインスタンス化される、すなわち、それがベイズ・ネットワーク１７５に追加される。期待されるアラームが発生しなかった場合には、対応するスイッチが、更新された誤動作査定の計算（ステップ６６）に影響せず、テンプレートを、計算を妥協せずにベイズ・ネットワークから省略することができる。この形で、所与のアラームに応答して構成されたベイズ・ネットワークが、計算的に小さく、扱いやすい状態に保たれる。スイッチ１７２の１つのテンプレートをインスタンス化する場合には、診断エンジン４８が、第３層のスイッチ１７４をベイズ・ネットワーク１７５に含める必要があるかどうかを判定するために、第３層のスイッチ１７４に対応する期待されるアラームを検討することが好ましい。しかし、実際には、一般にごく少数のテンプレートをインスタンス化することだけが必要になる。
【００６６】
診断ユニット２０を使用するネットワーク２２の障害診断に関して（発明人のＲＳ／６０００  ＳＰシステムでの経験から採用した例を用いて）好ましい実施形態を説明したが、当業者は、本発明の原理が、他のネットワークおよびシステムの障害の突き止めに同様に適用可能であることを諒解するであろう。ほとんどの現代の通信ネットワーク、特にパケット・データ・ネットワークは、診断ユニット２０などの診断システムによって使用することができる障害報告機能および構成機能を有する、扱いやすいものである。ネットワークまたはシステムの要素のすべてがモデル化され、これらの要素の間のデータ・フローが非輪状である限り、ベイズ・ネットワークおよびベイズ信頼性理論に基づく診断モデルを、本発明の原理に基づいて適用することができる。この原理は、通信ネットワークおよびコンピュータ・ネットワーク（およびそのようなネットワークのサブシステム）だけではなく、他の種類の電気システムおよび機械システムならびに医療システムおよび金融システムにも適用可能である。
【００６７】
0003579834.tif 000002
0003579834.tif 000003
0003579834.tif 000004
0003579834.tif 000005
【００６８】
まとめとして、本発明の構成に関して以下の事項を開示する。
【００６９】
（１）相互リンクされた複数のモジュールから構成されたシステムの診断のための方法であって、
前記システムから、前記モジュールの１つの障害を示すアラームを受け取るステップと、
前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成するステップと、
前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新するステップと、
前記更新された確率に応答して前記アラームの診断を提案するステップと
を含む方法。
（２）前記アラームを受け取るステップが、前記システム内の前記複数のモジュールからイベント・レポートを集めるステップと、前記イベント・レポートから前記アラームを抽出するステップとを含む、上記（１）に記載の方法。
（３）前記イベント・レポートを集めるステップが、前記システムの構成の変更のレポートを受け取るステップを含み、前記因果ネットワークを構成するステップが、前記変更された構成に基づいて前記因果ネットワークを構成するステップを含む、上記（２）に記載の方法。
（４）前記変更された構成に基づいて前記因果ネットワークを構成するステップが、前記構成が記録されるデータベースを維持するステップと、前記因果ネットワークの構成に使用するために、前記構成の前記変更の前記レポートに応答して前記データベースを更新するステップとを含む、上記（３）に記載の方法。
（５）前記アラームを抽出するステップが、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出するステップを含み、前記確率の前記少なくとも１つを更新するステップが、前記確率を更新するために前記アラームの前記シーケンスを処理するステップを含む、上記（２）に記載の方法。
（６）前記アラームの前記シーケンスを抽出するステップが、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームのそれぞれの寿命を定義するステップと、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択するステップとを含む、上記（５）に記載の方法。
（７）抽出する前記アラームを選択するステップが、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択するステップを含む、上記（６）に記載の方法。
（８）前記因果ネットワークを構成するステップが、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義するステップを含み、前記アラームの前記シーケンスを処理するステップが、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新するステップを含む、上記（５）に記載の方法。
（９）前記因果ネットワークを構成するステップが、前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートを定義するステップと、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワーク内で前記テンプレートをインスタンス化するステップとを含む、上記（５）に記載の方法。
（１０）前記相互リンクされた複数のモジュールが、規則的なパターンで相互リンクされた前記モジュールの所与の１つの複数のインスタンスを含み、前記因果ネットワークを構成するステップが、前記モジュールの前記所与の１つに対応する前記ネットワーク内のノードのグループを含むテンプレートを定義するステップと、前記アラームに応答して前記１つまたは複数のモジュールに関して前記テンプレートをインスタンス化するステップとを含む、上記（１）に記載の方法。
（１１）前記テンプレートを定義するステップが、前記モジュールの前記所与の１つの前記インスタンスの１つでの前記誤動作の１つによって引き起こされる期待されるアラームを識別するステップを含み、前記テンプレートをインスタンス化するステップが、前記期待されるアラームの発生に応答して前記ネットワークに前記テンプレートのインスタンスを追加するステップを含む、上記（１０）に記載の方法。
（１２）前記因果ネットワークを構成するステップが、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別するステップと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするステップとを含む、上記（１）に記載の方法。
（１３）前記因果ネットワークを構成するステップが、前記システム内の前記モジュールの第２の１つとの接続に起因して前記モジュールの第１の１つで発生する第１障害状態を識別するステップと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記第２の１つで発生する第２障害状態に前記障害をリンクするステップとを含む、上記（１）に記載の方法。
（１４）前記障害をリンクするステップが、前記第２障害状態の可能な原因が、前記モジュールの前記第２の１つと前記システム内の前記モジュールの第３の１つとの間のもう１つの接続に起因するかどうかを判定するステップと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記モジュールの前記第３の１つで発生する第３障害状態に前記障害をリンクするステップとを含む、上記（１３）に記載の方法。
（１５）前記因果ネットワークを構成するステップが、前記誤動作の前記それぞれの確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加するステップと、前記因果ネットワーク内で前記複数の発生に前記障害をリンクするステップとを含む、上記（１）に記載の方法。
（１６）前記複数の発生に前記障害をリンクするステップが、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定するステップと、前記障害状態の少なくとも一部を前記障害にリンクするステップとを含む、上記（１５）に記載の方法。
（１７）前記誤動作の前記確率の前記少なくとも１つを更新するステップが、前記１つまたは複数の前記モジュールの障害の間の平均時間を査定するステップを含む、上記（１）に記載の方法。
（１８）前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記確率の前記少なくとも１つを更新するステップが、前記確率分布の前記平均および前記積率を再査定するステップを含む、上記（１）に記載の方法。
（１９）前記確率分布が、故障率分布を含み、前記平均および前記積率を再査定するステップが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するステップを含む、上記（１８）に記載の方法。
（２０）前記診断を提案するステップが、前記更新された確率の１つまたは複数を所定の閾値と比較するステップと、前記確率の前記１つが前記閾値を超える時に診断アクションを起動するステップとを含む、上記（１）に記載の方法。
（２１）前記診断アクションを起動するステップが、前記診断について前記システムのユーザに通知するステップを含む、上記（２０）に記載の方法。
（２２）前記ユーザに通知するステップが、前記因果ネットワークに基づく前記診断の説明を提供するステップを含む、上記（２１）に記載の方法。
（２３）前記診断アクションを起動するステップが、前記誤動作を検証するために診断テストを実行するステップを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、上記（２０）に記載の方法。
（２４）前記診断テストの結果に応答して前記因果ネットワークを変更するステップを含む、上記（２３）に記載の方法。
（２５）相互リンクされた複数のモジュールから構成されたシステムの診断のための方法であって、
前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成するステップと、
前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新するステップと、
前記更新された確率分布に応答して前記アラームの診断を提案するステップと
を含む方法。
（２６）前記確率分布を更新するステップが、前記２つ以上の前記モジュールの障害の間の平均時間を査定するステップを含む、上記（２５）に記載の方法。
（２７）前記確率分布が、平均および積率を有し、前記確率分布を更新するステップが、前記確率分布の前記平均および前記積率を再査定するステップを含む、上記（２５）に記載の方法。
（２８）前記確率分布が、故障率分布を含み、前記平均および前記積率を再査定するステップが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するステップを含む、上記（２７）に記載の方法。
（２９）前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記因果ネットワークを構成するステップが、前記モジュールの前記１つでのローカル障害状態を識別するステップと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするステップとを含む、上記（２５）に記載の方法。
（３０）前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記因果ネットワークを構成するステップが、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別するステップと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクするステップとを含む、上記（２５）に記載の方法。
（３１）前記２つ以上の前記モジュールが、第３モジュールを含み、前記障害をリンクするステップが、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定するステップと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクするステップとを含む、上記（３０）に記載の方法。
（３２）相互リンクされた複数のモジュールから構成されたシステムの診断のための装置であって、前記装置が、診断プロセッサを含み、前記診断プロセッサが、前記システムから、前記モジュールの１つの障害を示すアラームを受け取るように結合され、前記診断プロセッサが、前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成し、前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新して、前記更新された確率に応答して前記アラームの診断を提案するように配置される、装置。
（３３）前記診断プロセッサが、前記システム内の前記複数のモジュールからイベント・レポートを受け取り、前記イベント・レポートから前記アラームを抽出するようにリンクされる、上記（３２）に記載の装置。
（３４）前記イベント・レポートが、前記システムの構成の変更のレポートを含み、前記診断プロセッサが、前記変更された構成に基づいて前記因果ネットワークを構成するように配置される、上記（３３）に記載の装置。
（３５）前記構成が記録されるデータベースを含むメモリを含み、前記因果ネットワークの構成に使用するために、前記診断プロセッサが、前記構成の前記変更の前記レポートに応答して前記データベースを更新するように結合される、上記（３４）に記載の装置。
（３６）前記診断プロセッサが、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出し、前記確率を更新するために前記アラームの前記シーケンスを処理するように結合される、上記（３３）に記載の装置。
（３７）それぞれの寿命が、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームに関して定義され、前記診断プロセッサが、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択するように配置される、上記（３６）に記載の装置。
（３８）前記診断プロセッサが、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択するように配置される、上記（３７）に記載の装置。
（３９）前記因果ネットワークを構成する際に、前記診断プロセッサが、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義するように配置され、前記診断プロセッサが、さらに、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新するように配置される、上記（３６）に記載の装置。
（４０）前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記診断プロセッサが、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワーク内で前記テンプレートをインスタンス化するように配置される、上記（３６）に記載の装置。
（４１）前記相互リンクされた複数のモジュールが、規則的なパターンで相互リンクされた前記モジュールの所与の１つの複数のインスタンスを含み、前記モジュールの前記所与の１つに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記診断プロセッサが、前記アラームに応答して１つまたは複数の前記モジュールに関して前記テンプレートをインスタンス化するように配置される、上記（３２）に記載の装置。
（４２）前記テンプレートが、前記モジュールの前記所与の１つの前記インスタンスの１つでの前記誤動作の１つによって引き起こされる期待されるアラームを含み、前記診断プロセッサが、前記期待されるアラームの発生に応答して前記ネットワークに前記テンプレートのインスタンスを追加することによって前記テンプレートをインスタンス化するように配置される、上記（４１）に記載の装置。（４３）前記診断プロセッサが、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別し、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするように配置される、上記（３２）に記載の装置。
（４４）前記診断プロセッサが、前記システム内の前記モジュールの第２の１つとの接続に起因して前記モジュールの第１の１つで発生する第１障害状態を識別し、前記第１障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記第２の１つで発生する第２障害状態に前記障害をリンクするように配置される、上記（３２）に記載の装置。
（４５）前記診断プロセッサが、前記第２障害状態の可能な原因が、前記モジュールの前記第２の１つと前記システム内の前記モジュールの第３の１つとの間のもう１つの接続に起因するかどうかを判定し、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記モジュールの前記第３の１つで発生する第３障害状態に前記障害をリンクするように配置される、上記（４４）に記載の装置。
（４６）前記診断プロセッサが、前記誤動作の前記それぞれの確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加し、前記因果ネットワーク内で前記複数の発生に前記障害をリンクするように配置される、上記（３２）に記載の装置。
（４７）前記診断プロセッサが、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定し、前記障害状態の少なくとも一部を前記障害にリンクするように配置される、上記（４６）に記載の装置。
（４８）前記誤動作の前記確率の前記少なくとも１つが、前記１つまたは複数の前記モジュールの障害の間の平均時間として表される、上記（３２）に記載の装置。
（４９）前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記診断プロセッサが、前記確率分布の前記平均および前記積率を更新するように配置される、上記（３２）に記載の装置。
（５０）前記確率分布が、故障率分布を含み、前記診断プロセッサが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するように配置される、上記（４９）に記載の装置。
（５１）前記診断プロセッサが、前記更新された確率の１つまたは複数を所定の閾値と比較し、前記確率の前記１つが前記閾値を超える時に診断アクションを起動するように配置される、上記（３２）に記載の装置。
（５２）ユーザ・インターフェースを含み、前記診断プロセッサが、前記ユーザ・インターフェースを介して前記診断について前記システムのユーザに通知するように結合される、上記（５１）に記載の装置。
（５３）前記診断プロセッサが、前記ユーザ・インターフェースを介して、前記因果ネットワークに基づく前記診断の説明を提供するように配置される、上記（５２）に記載の装置。
（５４）前記診断アクションが、前記誤動作を検証するために実行される診断テストを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、上記（５１）に記載の装置。
（５５）前記診断プロセッサが、前記診断テストの結果に応答して前記因果ネットワークを変更するように配置される、上記（５４）に記載の装置。
（５６）相互リンクされた複数のモジュールから構成されたシステムの診断のための装置であって、前記装置が、診断プロセッサを含み、前記診断プロセッサが、前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成し、前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新して、前記更新された確率分布に応答して前記アラームの診断を提案するように配置される、装置。
（５７）前記確率分布が、前記２つ以上の前記モジュールの障害の間の平均時間を示す、上記（５６）に記載の装置。
（５８）前記確率分布が、平均および積率を有し、前記診断プロセッサが、前記アラームに応答して、前記確率分布の前記平均および前記積率を再査定するように配置される、上記（５６）に記載の装置。
（５９）前記確率分布が、故障率分布を含み、前記診断プロセッサが、ベイズ信頼性理論モデルを使用して前記故障率分布を更新するように配置される、上記（５８）に記載の装置。
（６０）前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記診断プロセッサが、前記モジュールの前記１つでのローカル障害状態を識別し、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクするように配置される、上記（５６）に記載の装置。
（６１）前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記診断プロセッサが、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別し、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクするように配置される、上記（５６）に記載の装置。
（６２）前記２つ以上の前記モジュールが、第３モジュールを含み、前記診断プロセッサが、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定し、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクするように配置される、上記（６１）に記載の装置。
（６３）相互リンクされた複数のモジュールから構成されたシステムの診断のためのコンピュータ・ソフトウェア製品であって、前記コンピュータ・ソフトウェア製品が、プログラム命令が保管されたコンピュータ可読媒体を含み、前記プログラム命令が、コンピュータによって読み取られた時に、前記コンピュータに、前記システムから前記モジュールの１つの障害を示すアラームを受け取ることと、前記アラームに応答して、前記障害を前記障害につながった可能性がある１つまたは複数の前記モジュールでの誤動作に関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率に関係付ける、因果ネットワークを構成することと、前記アラームおよび前記因果ネットワークに基づいて、前記誤動作の前記確率の少なくとも１つを更新して、前記更新された確率に応答して前記アラームの診断を提案することとを行わせる、コンピュータ・ソフトウェア製品。
（６４）前記プログラム命令が、前記コンピュータに、前記システム内の前記複数のモジュールからイベント・レポートを受け取ることと、前記イベント・レポートから前記アラームを抽出することとを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（６５）前記イベント・レポートが、前記システムの構成の変更のレポートを含み、前記プログラム命令が、前記コンピュータに、前記変更された構成に基づいて前記因果ネットワークを構成することを行わせる、上記（６４）に記載のコンピュータ・ソフトウェア製品。
（６６）前記プログラム命令が、前記コンピュータに、前記構成の前記変更の前記レポートに応答して、前記因果ネットワークの構成に使用するために、前記構成が記録されるデータベースを更新することを行わせる、上記（６５）に記載のコンピュータ・ソフトウェア製品。
（６７）前記プログラム命令が、前記コンピュータに、前記モジュールの前記１つでの前記障害を示す前記アラームを含む、相互に近接する時刻に発生するアラームのシーケンスを抽出することと、前記確率を更新するために前記アラームの前記シーケンスを処理することとを行わせる、上記（６４）に記載のコンピュータ・ソフトウェア製品。
（６８）それぞれの寿命が、前記システムからの前記アラームの受取の際の期待される遅延に応答して、前記アラームに関して定義され、前記プログラム命令が、前記コンピュータに、前記それぞれの寿命に応答して前記シーケンスから抽出する前記アラームを選択することを行わせる、上記（６７）に記載のコンピュータ・ソフトウェア製品。
（６９）前記プログラム命令が、前記コンピュータに、前記因果ネットワークがそれに応答して構成された前記モジュールの前記１つでの前記障害を示す前記アラームの発生の時刻のそれぞれの寿命以内に発生した前記アラームを選択することを行わせる、上記（６８）に記載のコンピュータ・ソフトウェア製品。
（７０）前記プログラム命令が、前記コンピュータに、前記因果ネットワークを構成する際に、前記１つまたは複数の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームを定義することと、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記確率を更新することとを行わせる、上記（６７）に記載のコンピュータ・ソフトウェア製品。
（７１）前記システム内の前記モジュールのカテゴリおよび前記カテゴリ内の前記モジュールでの前記誤動作の１つによって引き起こされる期待されるアラームに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記プログラム命令が、前記コンピュータに、アラームの前記抽出されたシーケンス内の前記期待されるアラームの発生に応答して前記因果ネットワーク内で前記テンプレートをインスタンス化することを行わせる、上記（６７）に記載のコンピュータ・ソフトウェア製品。
（７２）前記相互リンクされた複数のモジュールが、規則的なパターンで相互リンクされた前記モジュールの所与の１つの複数のインスタンスを含み、前記モジュールの前記所与の１つに対応する前記ネットワーク内のノードのグループを含むテンプレートが定義され、前記プログラム命令が、前記コンピュータに、前記アラームに応答して前記モジュールの１つまたは複数に関して前記テンプレートをインスタンス化することを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（７３）前記テンプレートが、前記モジュールの前記所与の１つの前記インスタンスの１つでの前記誤動作の１つによって引き起こされる期待されるアラームを含み、前記プログラム命令が、前記コンピュータに、前記期待されるアラームの発生に応答して前記ネットワークに前記テンプレートのインスタンスを追加することによって前記テンプレートをインスタンス化することを行わせる、上記（７２）に記載のコンピュータ・ソフトウェア製品。
（７４）前記プログラム命令が、前記コンピュータに、前記障害が発生した前記モジュールの前記１つでのローカル障害状態を識別することと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクすることとを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（７５）前記プログラム命令が、前記コンピュータに、前記システム内の前記モジュールの第２の１つとの接続に起因して前記モジュールの第１の１つで発生する第１障害状態を識別することと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記第２の１つで発生する第２障害状態に前記障害をリンクすることとを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（７６）前記プログラム命令が、前記コンピュータに、前記第２障害状態の可能な原因が、前記モジュールの前記第２の１つと前記システム内の前記モジュールの第３の１つとの間のもう１つの接続に起因するかどうかを判定することと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記モジュールの前記第３の１つで発生する第３障害状態に前記障害をリンクすることとを行わせる、上記（７５）に記載のコンピュータ・ソフトウェア製品。
（７７）前記プログラム命令が、前記コンピュータに、前記誤動作の前記それぞれの確率に応答して、前記誤動作の１つの複数の発生を前記因果ネットワークに追加することと、前記因果ネットワーク内で前記複数の発生に前記障害をリンクすることとを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（７８）前記プログラム命令が、前記コンピュータに、前記発生のそれぞれによって引き起こされる１つまたは複数の障害状態を判定することと、前記障害状態の少なくとも一部を前記障害にリンクすることとを行わせる、上記（７７）に記載のコンピュータ・ソフトウェア製品。
（７９）前記誤動作の前記確率の前記少なくとも１つが、前記１つまたは複数の前記モジュールの障害の間の平均時間として表される、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（８０）前記誤動作の前記確率が、平均および積率を有する確率分布に関して定義され、前記プログラム命令が、前記コンピュータに、前記確率分布の前記平均および前記積率を更新することを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（８１）前記確率分布が、故障率分布を含み、前記プログラム命令が、前記コンピュータに、ベイズ信頼性理論モデルを使用して前記故障率分布を更新することを行わせる、上記（８０）に記載のコンピュータ・ソフトウェア製品。
（８２）前記プログラム命令が、前記コンピュータに、前記更新された確率の１つまたは複数を所定の閾値と比較することと、前記確率の前記１つが前記閾値を超える時に診断アクションを起動することとを行わせる、上記（６３）に記載のコンピュータ・ソフトウェア製品。
（８３）前記プログラム命令が、前記コンピュータに、前記診断について前記システムのユーザに通知することを行わせる、上記（８２）に記載のコンピュータ・ソフトウェア製品。
（８４）前記プログラム命令が、前記コンピュータに、前記因果ネットワークに基づく前記診断の説明をユーザに提供することを行わせる、上記（８３）に記載のコンピュータ・ソフトウェア製品。
（８５）前記診断アクションが、前記誤動作を検証するために実行される診断テストを含み、前記診断テストが、前記閾値を超える前記確率の前記１つに応答して選択される、上記（８２）に記載のコンピュータ・ソフトウェア製品。
（８６）前記プログラム命令が、前記コンピュータに、前記診断テストの結果に応答して前記因果ネットワークを変更することを行わせる、上記（８５）に記載のコンピュータ・ソフトウェア製品。
（８７）相互リンクされた複数のモジュールから構成されたシステムの診断のための製品であって、前記製品が、プログラム命令が保管されたコンピュータ可読媒体を含み、前記プログラム命令が、コンピュータによって読み取られた時に、前記コンピュータに、前記モジュールの１つでの障害を前記障害につながった可能性がある２つ以上の前記モジュールでの誤動作と関連付け、前記障害の条件つき確率を前記誤動作のそれぞれの確率分布に関係付ける因果ネットワークを構成することと、前記障害を示す前記システムからのアラームに応答して、前記誤動作の前記確率分布を更新して、前記更新された確率分布に応答して前記アラームの診断を提案することとを行わせる、製品。
（８８）前記確率分布が、前記２つ以上の前記モジュールの障害の間の平均時間を示す、上記（８７）に記載の製品。
（８９）前記確率分布が、平均および積率を有し、前記プログラム命令が、前記コンピュータに、前記アラームに応答して、前記確率分布の前記平均および前記積率を再査定することを行わせる、上記（８７）に記載の製品。
（９０）前記確率分布が、故障率分布を含み、前記プログラム命令が、前記コンピュータに、ベイズ信頼性理論モデルを使用して前記故障率分布を更新することを行わせる、上記（８９）に記載の製品。
（９１）前記２つ以上の前記モジュールが、前記障害が発生した前記モジュールの前記１つを含み、前記プログラム命令が、前記コンピュータに、前記モジュールの前記１つでのローカル障害状態を識別することと、前記ローカル障害状態に応答して、前記因果ネットワーク内で、前記モジュールの前記１つで発生する前記誤動作の１つに前記障害をリンクすることとを行わせる、上記（８７）に記載の製品。
（９２）前記２つ以上の前記モジュールが、第１モジュールおよび第２モジュールを含み、前記プログラム命令が、前記コンピュータに、前記システム内の前記第２モジュールとの接続に起因して前記第１モジュールで発生する第１障害状態を識別することと、前記第１障害状態に応答して、前記因果ネットワーク内で、前記第２モジュールで発生する第２障害状態に前記障害をリンクすることとを行わせる、上記（８７）に記載の製品。
（９３）前記２つ以上の前記モジュールが、第３モジュールを含み、前記プログラム命令が、前記コンピュータに、前記第２障害状態の可能な原因が、前記第２モジュールと前記第３モジュールとの間の前記システム内のもう１つの接続に起因するかどうかを判定することと、前記もう１つの接続に応答して、前記因果ネットワーク内で、前記第３モジュールで発生する第３障害状態に前記障害をリンクすることとを行わせる、上記（８７）に記載の製品。
【図面の簡単な説明】
【図１】本発明の好ましい実施形態による、モデルベースの診断ユニットを有する管理可能なコンピュータ・ネットワークを概略的に示すブロック図である。
【図２】本発明の好ましい実施形態による、図１の診断ユニットの詳細を概略的に示すブロック図である。
【図３】本発明の好ましい実施形態による、ネットワーク診断のための方法を概略的に示す流れ図である。
【図４】本発明の好ましい実施形態による、通信ネットワーク内のアラームに応答して構成された例示的ベイズ・ネットワークを示すグラフである。
【図５】本発明の好ましい実施形態による、アラームのシーケンスを処理する方法を概略的に例示するタイミング図である。
【図６】本発明の好ましい実施形態による、アラームに応答してベイズ・ネットワークを構成する方法を概略的に示す流れ図である。
【図７】図６の方法に従って構成されたベイズ・ネットワークに障害状態を追加する方法を概略的に示す流れ図である。
【図８】図６の方法に従って構成されたベイズ・ネットワークに障害状態を追加する方法を概略的に示す流れ図である。
【図９】本発明の好ましい実施形態による、モデル化される通信ネットワークの規則性を利用するベイズ・ネットワークの構成の方法を示すグラフである。
【符号の説明】
２０  診断ユニット
４０  イベント・フォーマッタおよびマージャ
４２  構成トラッカ
４４  システム・モデル
４６  構成データベース
４８  診断エンジン
５０  障害モデル
５２  勧告および説明ジェネレータ
５４  ユーザ・インターフェース
６０  アラームを受け取るステップ
６２  シーケンス内で他のアラームと組み合わせるステップ
６４  既存の誤動作率査定を使用して、アラーム・シーケンスに関するベイズ・ネットワークを構築するステップ
６６  ネットワーク内の誤動作に関する率査定を更新するステップ
６８  誤動作率に基づいて勧告を作るステップ
【図１】
0003579834.tif 000006
【図２】
0003579834.tif 000007
【図３】
0003579834.tif 000008
【図４】
0003579834.tif 000009
【図５】
0003579834.tif 000010
【図６】
0003579834.tif 000011
【図７】
0003579834.tif 000012
【図８】
0003579834.tif 000013
【図９】
0003579834.tif 000014