説明

障害回復システム及びサーバ

【課題】
ネットワークにおける障害の抑止またはネットワークの障害の自動回復を図る。
【解決手段】
サーバ200は、障害回復の対象であるひとつ又は複数のネットワーク装置A、B、Cを示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有する。例えばネットワーク装置A300は、自ネットワーク装置の障害を検出し、障害イベントをサーバ200に送信する。サーバ200が、シナリオテーブルを参照して、頻度情報が高い順に処情報を選択し、ネットワーク装置A300に送信する。サーバ200は、ネットワーク装置A300から障害イベントが受信されなくなるまで、対象情報の選択と送信を繰り返す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、障害回復システム及びサーバに係り、特に、ネットワーク運用管理において蓄積した障害の対処法候補から自動的に学習した優先度に基づき有効な対処法を選択し、障害回復を行うネットワーク制御における障害回復システム及びサーバに関する。
【背景技術】
【0002】
従来のネットワーク運営において、ネットワークに障害が起きた際の対処方法として高いスキルを積んだ運用者が障害毎に直接対応することや、あるいは、簡単な障害を回復するための運用方法をコンピュータ上にスクリプトとして事前に用意しておき、運用者が選択することにより障害に対処していた。しかし、前者の方法の場合、対処方法が運用者のスキルに依存してしまい、平均的な運用を行うことが困難であること及び運用者自体の人的コストが非常に大きくなる傾向があった。また、後者の場合は、障害を回復するための運用方法をあらかじめ保持しておけるため、運用者は障害単位での対応をする必要が減るが、障害が起きた際にどの障害が起きたかを特定判断する必要があり、完全な自動化はできていない。
【0003】
また、ネットワーク監視システムにおける障害情報管理方式が開示されている(例えば、特許文献1参照)。この方式では、発生する可能性のある障害種別と、これら各障害種別に夫々対応して対応障害が及ぼす影響度の大小に従って予め決定された影響優先度と、対応障害が及ぼす可能性のある影響障害種別とを予め定めて格納した障害情報管理テーブルとを備える。また、複数の障害の発生に応答して、前記障害情報管理テーブルを参照してこれら発生障害種別の各々に対応する影響優先度と影響障害種別とに応じて障害原因となる障害種別を特定する方式である。
【0004】
【特許文献1】特許第3099770号公報
【特許文献2】特許第3618682号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献2の方法において、現在の様々なネットワークプロトコルやネットワーク装置の組み合わせで構成されている構成の変化が常に見込まれるネットワークにおいては優先度も常に変化する必要があり、事前に決定しておいた固定的優先度による障害種別を特定することは困難となる。また、現在のネットワークのような複雑なネットワーク制御プロトコルが多く使用される環境においては、常にネットワークのチューニングをする必要があるが、実際には細かなパラメータ調整など単純な作業の連続であることが多く、人的時間的コストの増大を生んでいた。
【0006】
また、特許文献2の特許において、セキュリティ障害イベントに応じて、システムが自動生成したマニュアルをユーザが参照しながら、ユーザの障害対応に対しての手助けを行うことを主目的としている。しかしながら、想定している障害への断片的な対処に対するマニュアルの組み合わせのユーザへの提示であり、想定外の障害に対しての対処に関しては、解決が困難となる。
【0007】
本発明は、以上の点に鑑み、実際のネットワーク運用に即した優先度を頻度情報として自動学習することにより、事前に登録しておいた対処方法を含むシナリオの選択を行い、障害を自動的に回復させる障害回復システム及びサーバを提供することを目的とする。また、本発明は、ネットワーク運用のコスト軽減を図ることのできるネットワーク制御における障害回復システム等を提供することを目的とする。
【0008】
また、本発明は、人的時間的コストの軽減を図ることも目的のひとつである。さらに、本発明は、ネットワーク障害の抜本的解決ではなく、可能な限りの手段を尽くすことにより運用者が実際に対応するまでの時間を稼ぐことも目的のひとつである。さらに、本発明は、運用者が対応するまでに、想定される対処を自動的に実行し、運用者による対応をより効果的にすることを目的のひとつとする。
【課題を解決するための手段】
【0009】
(1)自動障害回復システムは、ネットワーク装置とサーバとクライアント装置(クライアント)を備える。ネットワーク装置は、単一または複数のネットワークを構成する他のネットワーク装置と通信し、物理的または論理的な接続関係または、物理的接続関係と論理的な接続上における選択優先度を記述した構成定義テンプレートからネットワーク装置の機能を定義するための構成定義に変換し出力する機能を備える。また、ネットワーク装置は、ネットワーク装置の機能によって発生する障害や状態変化の通知である装置障害イベントを送信する機能を持つ。
【0010】
サーバは、単一または複数のネットワーク装置と通信し、単一または複数のネットワーク装置の機能によって生じる障害または状態変化による障害のうちユーザが対処したいと考える機能の障害に該当する対象機能かつ監視対象かつ障害情報かつ障害に対応するための対処方法かつ対処方法の選択頻度からなる頻度情報の組み合わせであるシナリオをシナリオテーブルに登録する。また、サーバは、単一または複数のネットワーク装置が送信した装置障害イベントを受信し、シナリオテーブルに存在する該当対処方法のうち頻度情報順に選択する。サーバは、単一または複数のネットワーク装置毎の構成定義テンプレートを生成し、単一または複数のネットワーク装置に送信する機能を有する。サーバは、シナリオテーブルの頻度情報を対処方法の成功結果によって更新する機能を有する。サーバは、前記装置から同じ装置障害イベント情報受信がなくなるまで、シナリオテーブル中の対処方法をもとに順に構成定義テンプレートを生成し、前記装置に送信する機能を有する。
【0011】
クライアントは、前記サーバのシナリオテーブルに登録またはシナリオテーブル一覧を表示するための外部インタフェースである。
(2)本システムは、単一または複数のネットワーク装置の物理的接続関係または論理的接続関係または物理的接続と論理的接続の関係の選択優先度を記述した構成定義テンプレートは、文法定義を事前に定義したフォーマットに基づいた記述方法を持っている。
(3)本システムは、構成定義テンプレートと構成定義において、構成定義テンプレートの文法定義と構成定義のフォーマットの間に一定の変換規則を持っている。
(4)本システムは、サーバのシナリオテーブルに登録またはシナリオテーブル一覧を表示するための外部インタフェースであるクライアントは、サーバとの接続においてネットワークまたはサーバ内の機能を実現するプロセス間での通信を介する。
(5)本システムは、構成定義によって反映したネットワーク中継の機能に起因する障害または機能の状態変化の情報である装置障害イベントを送信する機能は、ネットワーク装置に備わる通信送信機能またはサーバもしくはネットワーク装置からのコールバックによる送信機能を含む。
(6)本システムは、監視対象は単一または複数のネットワーク装置または装置内の機能部位を論理関係で記述する。
(7)本システムは、シナリオテーブルにユーザが登録した障害に該当する対処方法がすべて頻度情報順に実行されるまで続き、未選択のシナリオがなくなった時点で装置障害イベントの受信が続いた場合に、ユーザに対し手動での対処要求を通知する。
(8)本システムのサーバは、ネットワークまたはプロセス間通信を介してクライアントと通信可能であり、ネットワークを介して単一または複数の装置から送信されてくる装置障害イベントを受信する。サーバは、装置からの装置障害イベントを受信する装置障害イベント受信プログラムと、装置障害イベントの内容に従い、対象機能かつ監視対象かつ障害情報を満たす単一または複数のシナリオ候補一覧をシナリオテーブルから取り出し、シナリオ候補リストとして管理するシナリオテーブル管理プログラムを備える。
(9)本システムは、シナリオテーブルに存在する該当対処方法のうち頻度情報順とは、頻度情報をもとに選択する順序が降順である。
(10)本システムにおけるデータ処理法は、複数の障害対象に対する、処理を各処理対処の使用頻度を利用しつつ行う、コンピュータを用いた使用頻度を利用したデータ処理法であり、コンピュータは選択された処理対象の使用頻度を更新して記録し、コンピュータは複数の処理対象を、選択のために利用する際に、記録されている各処理対象の使用頻度を読み出して、選択のための情報として利用する使用頻度を利用したデータ処理方法である。
(11)本システムは、ユーザが事前にシナリオとして登録した障害種別と対処方法との組み合わせに対し、過去の同様の障害における対処方法の使用頻度を頻度情報として付加することにより、過去の事例による対象方法の選択をコンピュータに行わせることを可能とする処理方法をもつ。
(12)本システムのクライアントは、シナリオテーブルに登録またはシナリオテーブル一覧を表示するための外部インタフェースであり、シナリオテーブル一覧の表示機能とユーザが登録するシナリオの送信機能とを備えたクライアントである。
(13)本システムは、シナリオテーブル一覧表示機能において、表示を利用する対象は、直接ユーザである人間またはプログラムである。
(14)本システムのシナリオテーブルは、ユーザが登録したシナリオ一覧を有するシナリオテーブルであって、装置障害の対象機能を保持する対象機能領域と、前記障害発生を起こした機能に該当する単一または複数の装置情報を保持する監視対象領域と、障害情報を保持する障害情報領域と、障害に対処する対処方法領域と、
を備えたシナリオテーブルである。
(15)本システムは、対処方法は、単一または複数のネットワーク装置の物理的接続関係または論理的接続関係または物理的接続と論理的接続の関係の選択優先度を記述した文法定義を事前に定義したフォーマットに基づく構成定義テンプレートである。
(16)本システムは、シナリオテーブルにおいて、シナリオテーブルに登録されているシナリオの頻度情報が0の場合、テーブルに登録されている順序が、シナリオを選択する際の順となる。
(17)本システムは、シナリオテーブルにおいて、シナリオテーブルに登録されている二つ以上のシナリオの頻度情報が同じ値の場合、テーブルに登録されている順序が、シナリオを選択する際の順となる。
(18)装置障害イベントにおいて、装置障害イベントによって選択したシナリオの実行は実行回数による制限が可能であり、クライアントまたはサーバにおいて前記実行回数の定義できる。
(19)装置障害イベントにおいて、サーバが特定の装置障害イベントを受け続ける時間を制限することが可能であり、クライアントまたはサーバにおいて前記時間を定義できる。
(20)ユーザが事前にシナリオとして登録した障害種別と対処方法との組み合わせに対し、過去の同様の障害における対処方法の使用頻度を頻度情報として付加することにより、過去の事例による対象方法の選択をコンピュータに行わせることを可能とする処理方法であり、コンピュータに行わせた結果をログとしてクライアントまたはサーバまたはネットワーク装置に保存できる。
(21)シナリオテーブルにおいて、シナリオテーブルのシナリオを構成する項目は拡張が可能である。
【0012】
本発明の第1の解決手段によると、
ネットワークを構成するひとつ又は複数のネットワーク装置と、
前記ネットワーク装置に接続され、障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記ネットワーク装置が、自ネットワーク装置の障害を検出し、自装置を示す監視対象情報と該障害内容を識別するための障害情報とを含む障害イベントを前記サーバに送信することと、
前記サーバが、該障害イベントを受信し、前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報を前記ネットワーク装置に送信することと、
前記ネットワーク装置が、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信していないと判断されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システムが提供される。
【0013】
本発明の第2の解決手段によると、
ネットワークを構成するひとつ又は複数のネットワーク装置と通信するためのインタフェースと、
障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと
処理部と
を備え、
前記処理部は、
前記ネットワーク装置が障害を検出することで送信される、前記ネットワーク装置を示す監視対象情報と該障害内容を識別するための障害情報とを含む障害イベントを、前記インタフェースを介して受信することと、
前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報を、前記インタフェースを介して前記ネットワーク装置に送信することと、
選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しない場合、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバが提供される。
【0014】
本発明の第3の解決手段によると、
ネットワークを構成する第1のネットワーク装置と、
前記第1のネットワーク装置に接続され、及び、ネットワークを構成する第2のネットワーク装置と、
前記第1及び第2のネットワーク装置に接続され、障害回復の対象である前記第1及び第2のネットワーク装置を示す監視対象情報と、前記第1のネットワーク装置の状態と前記第2のネットワーク装置の状態の組み合わせで定まる障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記第1のネットワーク装置が、自装置を示す第1の監視対象情報と自装置の状態を示す第1の状態情報を含む第1のイベントを前記サーバに送信することと、
前記第2のネットワーク装置が、自装置を示す第2の監視対象情報と自装置の状態を示す第2の状態情報を含む第2のイベントを前記サーバに送信することと、
前記サーバが、第1及び第2のイベントを受信し、第1の状態情報と第2の状態情報に基づき障害の有無を判断し、及び、障害情報を求めることと、
前記サーバが、前記シナリオテーブルを参照して、第1及び第2のイベントに含まれる第1及び第2の監視対象情報及び求められた障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報を前記第1及び第2のネットワーク装置にそれぞれ送信することと、
前記第1及び第2のネットワーク装置がそれぞれ、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、障害が回避されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システムが提供される。
【0015】
本発明の第4の解決手段によると、
ネットワークを構成する第1及び第2のネットワーク装置と通信するためのインタフェースと、
障害回復の対象である前記第1及び第2のネットワーク装置を示す監視対象情報と、前記第1のネットワーク装置の状態と前記第2のネットワーク装置の状態の組み合わせで定まる障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと
処理部と
を備え、
前記処理部は、
前記第1のネットワーク装置から、前記第1のネットワーク装置を示す第1の監視対象情報と前記第1のネットワーク装置の状態を示す第1の状態情報を含む第1のイベントを、前記インタフェースを介して受信することと、
前記第2のネットワーク装置から、前記第2のネットワーク装置を示す第2の監視対象情報と前記第2のネットワーク装置の状態を示す第2の状態情報を含む第2のイベントを、前記インタフェースを介して受信することと、
第1の状態情報と第2の状態情報に基づき障害の有無を判断し、及び、障害情報を求めることと、
前記シナリオテーブルを参照して、第1及び第2のイベントに含まれる第1及び第2の監視対象情報及び求められた障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報を、前記ネットワークインタフェースを介して前記第1及び第2のネットワーク装置にそれぞれ送信することと、
障害が回避されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバが提供される。
【0016】
本発明の第5の解決手段によると、
ネットワークを構成する第1のネットワーク装置と、
ネットワークを構成する第2のネットワーク装置と、
前記第1のネットワーク装置を介してネットワークに接続され、かつ、前記第2のネットワーク装置を介してネットワークに接続される第3のネットワーク装置と、
前記第1及び第2のネットワーク装置に接続され、障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記第3のネットワーク装置が、前記第1又は第2のネットワーク装置の障害により、ネットワークへの転送に障害が発生したことを検出すると、自装置を示す監視対象情報と転送機能の障害であることを識別するための障害情報とを含む障害イベントを前記サーバに送信することと、
前記サーバが、障害イベントを受信し、前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報に従い、該対処情報を前記第1及び第2のネットワーク装置に送信することと、
前記第1及び第2のネットワーク装置が、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しないと、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システムが提供される。
【0017】
本発明の第6の解決手段によると、
ネットワークを構成する第1及び第2及び第3のネットワーク装置と通信するためのインタフェースと、
障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと、
処理部と
を備え、
前記処理部は、
前記第3のネットワーク装置が、前記第1又は第2のネットワーク装置の障害によりネットワークへの転送に障害が発生したことを検出することで送信される、前記第3のネットワーク装置を示す監視対象情報と転送機能の障害であることを識別するための障害情報とを含む障害イベントを、前記インタフェースを介して受信することと、
前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報に従い、前記ネットワークインタフェースを介して、該対処情報を前記第1及び第2のネットワーク装置に送信することと、
選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しないと、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバが提供される。
【発明の効果】
【0018】
本発明によると、実際のネットワーク運用に即した優先度を頻度情報として自動学習することにより、事前に登録しておいた対処方法を含むシナリオの選択を行い、障害を自動的に回復させる障害回復システム及びサーバを提供することができる。また、本発明によると、ネットワーク運用のコスト軽減を図ることのできるネットワーク制御における障害回復システム等を提供することができる。
【0019】
現在のネットワークのような複雑なネットワーク制御プロトコルが多く使用される環境においては、常にネットワークのチューニングをする必要があるが、実際には細かなパラメータ調整であることが多く、単純な作業の連続であることが多く、本発明により、人的時間的コストの軽減が可能となる。また、ネットワーク障害の抜本的解決ではなく、可能な限りの手段を尽くすことにより運用者が実際に対応するまでの時間を稼ぐことが可能となる。さらに、本発明によると、運用者が対応するまでに、想定される対処を自動的に実行し、運用者による対応をより効果的にすることができる。
【発明を実施するための最良の形態】
【0020】
1.第1の実施の形態
本実施の形態では、ルーティングに関する実施の形態について説明する。
【0021】
図1は、本実施の形態による自動障害回復システムの全体構成図である。
【0022】
自動障害回復システムは、クライアント装置100と、サーバ200と、ネットワーク装置とを備える。ネットワーク装置は、例えば、複数備えることができる。図示の例では、ネットワーク装置A300と、ネットワーク装置B400と、ネットワーク装置C500を備える。
【0023】
クライアント装置(以下、クライアントと記す)100は、ネットワークを運用している管理者用の装置である。クライアント100とサーバ200はネットワークまたはプロセス間通信を介して接続している。サーバ200と単一または複数のネットワーク装置A300、ネットワーク装置B400、ネットワーク装置C500は同一ネットワークで接続されている。ネットワーク装置とは、例えば、ネットワークを構成する装置であり、例えば、ルータやスイッチ等である。また、その同一ネットワーク内においてルーティングプロトコルを動作させている。サーバ200とネットワークを介して繋がっているネットワーク装置は単一または複数であり、いくつあってもよい。ユーザ(管理者)はクライアント100からサーバ200に対し、ネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500において障害が起きうることを想定し、障害に対する対処方法を含むシナリオをクライアント100にあらかじめ登録する。クライアント100は登録されたシナリオ一覧を表示部に表示し、ユーザはシナリオがサーバ200に登録されたことを確認する。
【0024】
サーバ200は、ネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500から送信される障害イベント情報を受信すると、該当するシナリオを頻度情報に基づき選択する。頻度情報は、例えば、対処情報により障害が回復した回数を示す。また、サーバ200は、構成定義テンプレートを作成し、障害イベント情報を受信したネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500に送信する。構成定義テンプレートは、例えば、選択されたシナリオ内の対処方法を含む。構成定義テンプレートを受信したネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500は、構成定義を生成し、機能に反映する。これにより、選択されたシナリオの対処方法が反映され、又は、対処方法に従い設定が変更される。
【0025】
サーバ200は、ネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500から、予め定められた時間内に同じ装置障害イベントが送信されてこないことを確認後、サーバ200に登録されているシナリオテーブルの該当するシナリオの頻度情報の数値を+1更新する。また、装置障害イベントの受信が続いている場合は次に頻度情報の値が大きいシナリオを選択し、ユーザが登録したシナリオ選択を障害が収まるまで繰り返す。障害が収まった時点で、該当シナリオの頻度情報の数値を+1更新する。
【0026】
図2は、サーバ200の構成図である。
【0027】
サーバ200は、メモリ270と、CPU280と、ネットワーク装置またはクライアント100と接続するためのネットワークインタフェース290とを備える。メモリ270は、シナリオテーブル表示プログラム210と、シナリオテーブル管理プログラム220と、シナリオテーブル230と、シナリオ候補リスト240と、構成定義テンプレート生成プログラム250と、装置障害イベント受信プログラム260とを有する。
【0028】
シナリオテーブル表示プログラム210は、クライアント100にシナリオテーブル230の内容を表示するためのプログラムである。シナリオテーブル管理プログラム220は、シナリオテーブルの登録またはシナリオテーブル230からシナリオ候補リスト240を取り出す。シナリオテーブル230は、クライアント100から登録されたシナリオを格納するテーブルである。シナリオテーブル230の詳細な構成は後述する。シナリオ候補リスト240は、シナリオテーブル230から、対象機能でより絞ったリストである。構成定義テンプレート生成プログラム250は、選択したシナリオ中にある対処方法から導かれた構成定義テンプレートを生成し、構成定義テンプレートをネットワーク装置に送信する。装置障害イベント受信プログラム270は、ネットワーク装置A300またはネットワーク装置B400またはネットワーク装置C500が送信した装置障害イベントを受信する部分である。
【0029】
CPU280は、例えば、メモリ270から各プログラムを読み込み実行する。ネットワークインタフェース290は、例えば、ネットワーク装置A、B、Cやクライアントと通信するためのインタフェースである。なお、図2において、シナリオテーブル230及びシナリオ候補リスト240はメモリ270中に存在しているが、これらはハードディスクのような外部記憶装置上にあってもよいし、ネットワークまたはプロセス間通信を介した外部記憶装置上にあってもよい。
【0030】
図3は、ネットワーク装置A300の構成図である。なお、ネットワーク装置B400またはネットワーク装置C500の構成も同様である。また、同様のネットワーク装置はいくつあってもよい。
【0031】
ネットワーク装置A300は、メモリ330とCPU340とネットワークインタフェース350を有する。ネットワークインタフェース350は単一であってもよいし、または複数あってもかまわない。ネットワークインタフェース350は、例えば、サーバ200と通信するためのインタフェースである。メモリ320は、構成定義管理プログラム310と装置障害イベント送信プログラム320とを有する。構成定義管理プログラム310は、構成定義テンプレートをサーバ200から受信し、構成定義を生成する。装置障害イベント送信プログラム320は、ネットワーク装置A300において発生した装置障害イベントをサーバ200に送信する。CPU340は、メモリ330の各プログラムを読み出し、実行する。
【0032】
図20は、クライアント100の構成図である。クライアント100は、メモリ110と、表示部120と、CPU130と、ネットワークインタフェース140と、入力部150とを有する。
【0033】
図4は、クライアント100の表示部120に表示される画面の例を示す図である。例として、図4(a)に、クライアント100においてシナリオ登録するための画面であるシナリオ入力画面121を示し、図4(b)にシナリオを登録後に登録されたシナリオ一覧を表示するシナリオ一覧表示画面122を示す。シナリオ入力画面121とシナリオ一覧表示画面122は、同一のクライアントまたは複数のクライアントで構成されていてもよい。
【0034】
図4(a)は、シナリオ入力画面である。シナリオ入力画面は、例えば、シナリオの項目と、シナリオの送信指示を入力するためのボタン101を含む。シナリオは、例えば、対象機能と、監視対象と、障害情報と、対処方法とを含む。クライアント100は、シナリオ入力画面を表示部120に表示し、表示部120の表示に従いユーザ(管理者)により入力されるシナリオを、入力部(例えば、キーボードなど)150から入力する。シナリオをサーバ200に登録する際には、シナリオを送信するためのボタン101が押されることにより、クライアント100は、入力されたシナリオをサーバ200に送信する(シナリオ登録要求)。図4(a)の例では、「ルーティング」、「ネットワーク装置A」、「経路学習頻発」、「コスト+10増加」とのデータを含むシナリオ237がサーバ200に送信される。
【0035】
図4(b)は、シナリオ一覧表示画面である。シナリオ一覧表示画面は、例えば、シナリオと頻度情報を含む。例えば、新たなシナリオ237がサーバ200に登録されると、サーバ200は登録されているシナリオ及び頻度情報をクライアント100に送信する。クライアント100は、サーバ200からシナリオ及び頻度情報を受信し、表示部120に表示する。
【0036】
図5は、シナリオテーブル230の構成図である。
【0037】
シナリオテーブル230は、対象機能231と、監視対象232と、障害情報233と、対処方法(対処情報)234と、頻度情報235とを含む。対象機能231は、ネットワーク装置で実現されている機能のどれが対象となっているかということを示す。監視対象232は、サーバ200が装置障害イベントを単一または複数のネットワーク装置から受信した際に、どのネットワーク装置を障害回復の対象とするかという条件を記述するデータである。障害情報233は、障害の種別を示す。対処方法234は、具体的な対処方法を示す。頻度情報235は、シナリオが何度選択され障害の回復に貢献されたかを示す。本実施の形態では、231〜234を総じてシナリオ236と称する。
【0038】
図示のシナリオテーブル230においては、例えば、対象機能がルーティング、L2冗長、マルチキャストルーティングについてのシナリオが複数登録されている。シナリオテーブル230に登録されるシナリオ236は0ないし複数である。
【0039】
図6は、シナリオ候補リスト240の構成図である。
【0040】
シナリオ候補リスト240は、シナリオテーブル230から対象機能で検索して、該当するシナリオ246及び頻度情報を取り出したものである。図5のシナリオテーブル230と同じ項目241〜245がシナリオ候補リスト240に存在する。図6の例は、ルーティングに関する対象機能のシナリオ候補リスト240である。なお、図中コストとは例えば、宛先ネットワークに到達するまでに経由する各リンクに応じた値である。なお、サーバ200は、シナリオテーブル230から取り出したシナリオ候補リスト240を参照してシナリオを選択するが、シナリオ候補リスト240を省略してシナリオテーブル230からシナリオを選択してもよい。また、予め対象機能毎のシナリオテーブル230を有してもよい。
【0041】
図9は、ルーティング機能において本実施の形態を適用した場合のフローチャートを示す。
【0042】
まず、サーバ200は、予めシナリオをシナリオテーブル230に登録する(ステップS0)。ルーティング機能を使用しているネットワーク装置C500は、後述する自ネットワーク装置が出力するログに基づき経路学習頻発を判断する(ステップS2)。なお、ステップS2の処理は、例えば定期的に、繰り返し実行できる。ネットワーク装置C500(例えば、装置障害イベント送信プログラム320)は、経路学習が頻発していると判断すると、装置障害イベントをサーバ200に送信をする(ステップ301)。装置障害イベントは、例えば、対象機能と、監視対象と、障害情報とを含む。ここでは、対象機能は「ルーティング」、監視対象は「ネットワーク装置C500」、障害情報は「経路学習頻発」である。なお、これらの情報は、予め定められた識別子であってもよい。次に、サーバ200は、例えば、装置障害イベント受信プログラム260により装置障害イベントを受信し、装置障害イベントに含まれる情報に基づき、シナリオ候補リスト240又はシナリオテーブル230を参照し、該当するシナリオのうち、頻度情報が最も大きい又は予め定められた値以上のシナリオを選択する(ステップS1)。図6の例では、シナリオ238が選択される。頻度情報は、過去にその対処方法を反映又は実行することにより障害が回復した回数を示し、頻度情報が大きいシナリオを選択することで、障害回復が期待できるシナリオ(対処方法)を選択できる。なお、ステップS0、ステップS1、ステップS2の具体的処理は後に詳細に説明する。
【0043】
サーバ200(例えば、構成定義テンプレート生成プログラム250)は、選択したシナリオに含まれる対処方法に従い、構成定義テンプレートを生成する(ステップS302)。なお、上述のステップS1で選択されたようにネットワーク装置C500からのイベントに基づき図6のシナリオ候補リストのシナリオ及び頻度情報を参照すると、最も頻度情報が大きい(最も有力な)対処方法は「コスト+30増加」というものである。構成定義テンプレートは、選択された対処方法をネットワーク装置に反映させるためのデータ、命令等を含む。サーバ200は、ネットワーク装置C500の構成定義管理プログラムに構成定義テンプレートを送信する(ステップS303)。ネットワーク装置C500の構成定義管理プログラム310は、構成定義テンプレートを受信し、受信した構成定義テンプレートから構成定義を生成し、反映する(ステップS304)。すなわち、選択されたシナリオの対処方法が反映される。なお、サーバ200は、対処方法をネットワーク装置C500に送信し、ネットワーク装置C500は対処方法を実行又は反映させるようにしてもよい。ネットワーク装置C500では、障害が回復すれば繰り返し実行するステップS2で経路学習頻発と判断されず、再度装置障害イベントが送信されることはないが、障害が回復しなければ、再び装置障害イベントが送信される(ステップS2、S301)。
【0044】
次に、サーバ200は、今まで装置障害イベントを送信してきていたネットワーク装置C500からの装置障害イベントが止まったか判断する(ステップS305)。例えば、一定時間内にネットワーク装置C500から同内容の装置障害イベントが受信されたか否かにより装置障害イベントがとまったかを判断する。サーバ200は、ネットワーク装置C500から同じ装置障害イベントが来た場合(ステップS305のnoの場合)、障害が復旧していないと見なし、ステップS1以降の処理を繰り返す。一方、サーバ200は、装置障害イベントが止まったときは(ステップS305のyesの場合)、障害を抑止できたと見なし、シナリオテーブル230の該当するシナリオの頻度情報に対し+1更新する(ステップS306)。なお、上述のステップS1において該当するシナリオがない場合又は順次選択することで全て選択した場合、サーバ200は、ユーザ(クライアント)に直接通知してもよい。なお、シナリオの対処方法は、複数の対処方法を組み合わせることも可能である。
【0045】
図7は、シナリオ登録(ステップS0)のフローチャートである。
【0046】
まず、クライアント100は、ユーザが登録したいシナリオを入力部150より入力し、サーバ200に送信する(ステップS100)。例えば、まず、クライアント100は、シナリオ入力画面121を表示部120に表示する。次に、クライアント100は、表示部120の表示に従いユーザ(管理者)により入力される対象機能、監視対象、障害情報、対処方法を含むシナリオを入力部150から入力する。ここでは、一例として、図4(a)に例示するように、対象機能に「ルーティング」、監視対象に「ネットワーク装置Aまたはネットワーク装置B」、障害情報に「経路学習頻発」、対処方法に「コスト+10増加」を含むシナリオ237が入力される。さらに、クライアント100は、シナリオ237を送信するためのボタン101が押されることにより、ユーザにより入力されたシナリオ237をサーバ200に送信する。
【0047】
サーバ200(例えば、シナリオテーブル管理プログラム220)は、クライアント100から送信されたシナリオを受信し(ステップS100)、シナリオをシナリオテーブル230に登録する(ステップS101)。例えば、サーバ200は、受信したシナリオ237をシナリオテーブル230の新たな各エントリに追加する。例えば、受信されたシナリオ237に従い、シナリオテーブル230の対象機能231に「ルーティング」、監視対象232に「ネットワーク装置Aまたはネットワーク装置B」、障害情報233に「経路学習頻発」、対処方法234に「コスト+10増加」をそれぞれ登録する。また、サーバ200は、対応する頻度情報を初期化(例えば0)とする。
【0048】
サーバ200(例えば、シナリオテーブル表示プログラム210)は、シナリオテーブル230に登録された対象機能231、監視対象232、障害情報233、対処方法234及び頻度情報を含むシナリオ一覧をクライアント100に送信する(ステップS102)。なお、サーバ200は、新たに登録されたシナリオ及び頻度情報のみを送信するようにしてもよい。クライアント100は、サーバ200から送られて来た登録されたシナリオテーブル一覧を受信し、表示部120にシナリオ一覧表示画面122を表示する(ステップ103)。例えば、クライアント100は、サーバ200から送信されたシナリオテーブル一覧に含まれる対象機能231、監視対象232、障害情報233、対処方法234及び頻度情報235の内容を表示部120に各々表示する。
【0049】
図8は、シナリオテーブルを用いたシナリオ選択(ステップS1)のフローチャートである。
【0050】
まず、サーバ200は、例えばネットワーク装置C500からの装置障害イベント内に存在する対象機能、監視対象、障害情報に該当するシナリオ候補リスト240がメモリ270中に存在しているかを検索する(ステップS200)。シナリオ候補リスト240がメモリ270中に存在していない場合(ステップS200)、サーバ200(例えばシナリオテーブル管理プログラム220)は、装置障害イベント中の対象機能と、監視対象と、障害情報をキーにシナリオテーブル230を検索し、単一または複数のシナリオ候補リスト240を取り出す(ステップS201)。さらに、サーバ200は、メモリ270に、取り出した単一または複数のシナリオ候補リスト240を記憶しておく。一方、サーバ200は、ステップS200でネットワーク装置からの装置障害イベント内に存在する対象機能、監視対象、障害情報に該当するシナリオ候補リスト240が存在した場合(ステップS200)、ステップS202に移る。
【0051】
ステップS202では、サーバ200は、シナリオ候補リスト240の中で、頻度情報の数値がもっとも高いシナリオを選択する(ステップS202)。なお、サーバは、頻度情報が予め定められた値以上の対処方法のうち、適宜のものを選択してもよい。また、サーバ200は、選択したシナリオ又はシナリオ中の対処方法をメモリ270に適宜記憶してもよい。次に、サーバ200は、シナリオ候補リスト240から選択したシナリオをメモリ270中にあるシナリオ候補リスト240から削除する(ステップ203)。これにより、次のタイミングでシナリオが選択される際に、頻度情報が次に大きいシナリオが選択される。なお、ステップS203の処理を省略して、ステップS202では頻度情報が高い順に選択されるようにしてもよい。
【0052】
図10は、ネットワーク装置が出力する、一定時間内に発生したログの一覧図である。ネットワーク装置は、図示するように一定時間内に発生した経路計算ログ等のログを出力する。ログは、データベース上の情報またはテキストで記述した情報であってもよい。
【0053】
図11は、経路学習頻発判断(ステップS2)をする際のフローチャートである。
【0054】
まず、ルーティング機能を使用しているネットワーク装置C500は、一定時間内に発生する経路計算ログ回数の閾値(T回)を設定する(ステップS251)。次に、ネットワーク装置C500は、予め出力したログを監視し、一定時間内に発生した経路計算ログの回数を求める(ステップS253)。ネットワーク装置C500は、求められた経路計算ログの回数がステップS251で設定した閾値(T)を超えているか否かを判断する(ステップS255)。ネットワーク装置C500は、設定された閾値(T)を超えていない場合(ステップS255のno)、経路学習頻発でないと判断し、ログの監視を継続する(ステップS253)。一方、ネットワーク装置C500は、経路計算ログの回数がステップS251で設定した閾値を超えていた場合(ステップS255のyesの場合)、経路学習頻発と判断し、装置障害イベントをサーバに送信する(ステップS257)。ここで、装置障害イベントは、例えば対象機能として「ルーティング」と、監視対象として自装置の識別情報(例えば、「ネットワーク装置C」)と、障害情報として「経路学習頻発」とを含む。なお、上述の説明では、ネットワーク装置C500について説明したが、ネットワーク装置A300、ネットワーク装置B400についても同様である。
2.第2の実施の形態
本実施の形態では、レイヤー2装置冗長における実施の形態について説明する。
【0055】
図12は、L2冗長の機能を用いた場合の全体構成図である。第1の実施の形態との違いのひとつは、二つのネットワーク装置からのイベントを受け、二つのネットワーク装置に機能変更を促している点である。また、二つのネットワーク装置からの各イベントに基づき、ひとつの障害情報を特定している点でも第1の実施の形態と異なる。ただし、この例においては二つのネットワーク装置であるが、特にネットワーク装置で用いられる機能次第で単一または複数のネットワーク装置を扱うことに制限はない。
【0056】
自動障害回復システムは、クライアント装置100と、サーバ200と、ネットワーク装置とを備える。ネットワーク装置は、例えば、複数備えることができる。図示の例では、ネットワーク装置A300と、ネットワーク装置B400と、ネットワーク装置C500と、ネットワーク装置D600とを備える。図12においてネットワーク装置A300とネットワーク装置B400は、例えばL2冗長切り替えの機能が動作している。各装置の構成は、上述の第1の実施の形態と同様であるので、説明を省略する。
【0057】
図13は、図12の構成において想定されるシナリオの一部を登録したシナリオテーブル230から取り出されたシナリオ候補リストである。図示の例では、L2冗長についてのシナリオが取り出されている。
【0058】
図15は、サーバ200が保持する状態変更判定テーブルの構成図である。状態変更判定テーブルは、ネットワーク装置毎に、各装置がマスターであるかバックアップであるかを示すネットワーク装置状態を保持する。例えば、ネットワーク装置A300及びB400からの装置障害イベントを受け、マスターとバックアップの二つのネットワーク装置状態を保持する。
【0059】
図14は、L2冗長機能において本実施の形態を適用した場合のフローチャートである。ここでは、ネットワーク装置A300、ネットワーク装置B400がともに、ステータスがマスターからバックアップに移行した場合について説明する。
【0060】
まず、サーバ200は、上述の第1の実施の形態と同様に、予めシナリオ登録をする(ステップS0)。ネットワーク装置A300、ネットワーク装置B400はそれぞれ、ネットワーク装置のステータスがマスターからバックアップに変わったという装置障害イベントを送信する。ここで、装置障害イベントは、対象機能(例えばL2冗長)と、監視対象(例えばネットワーク装置A300又はネットワーク装置B400)と、変更情報(例えばバックアップ又はマスター)とを含む。二つの装置障害イベントをうけたサーバ200は、変更情報に従い、図15の状態変更判定テーブルを更新し(図15(b))、変更された状態変更判定テーブルに基づき、ダブルバックアップになっているという状態判断を行う(ステップS3)。例えば、ネットワーク装置A300とネットワーク装置B400の状態に基づき、障害情報を「ダブルバックアップ」とする。状態判断(ステップS3)の処理の詳細は後述する。二つのイベントをもって一つの障害情報としている点は、第1の実施の形態と異なる。
【0061】
次に、図13に例示するシナリオ候補リストに従い、第1の実施の形態と同様にシナリオを選択する(ステップS1)。ここでは、対象機能がL2冗長、監視対象がネットワーク装置A300かつネットワーク装置B400、障害情報がダブルバックアップであるので、該当するシナリオのうち頻度情報の高いシナリオ239が選択される。サーバ200は、構成定義テンプレートを作成する(ステップS404)。但し、本実施の形態では対象が二つのネットワーク装置であるため、構成定義テンプレートは2種類生成される。例えば、選択されたシナリオ239の対処方法に従い、ネットワーク装置A300宛ての構成定義テンプレートは対処方法として「バックアップ」を含み、一方ネットワーク装置B400宛ての構成定義テンプレートは対処方法として「マスター」を含む。サーバ200は、各ネットワーク装置A300、B400の構成定義管理プログラムに構成定義テンプレートを送信する(ステップS405)。
【0062】
ネットワーク装置A300、ネットワーク装置B400は、テンプレートを受信しネットワーク装置に反映する(ステップS406、S407)。次に、ネットワーク装置A300はバックアップに変更したとう装置障害イベントを送信する(ステップS408)。同様にネットワーク装置B400は、マスターに変更したという装置障害イベントを送信する(ステップS409)。サーバ200ではイベントを受け、上述と同様に状態判断する(ステップS31)。ネットワーク装置A300、ネットワーク装置B400で構成されるL2冗長構成においてダブルバックアップ又はダブルマスターという状態が回避されたか判断する(ステップS410)。サーバ200は、回避されていれば(S410)、シナリオテーブル230の該当シナリオの頻度情報を+1更新する(ステップS411)。一方、サーバ200は、障害回復が不成功に終わり、ステップS410において障害が回避されていないと判断された場合(S410)、第1の実施の形態と同様にステップS1から繰り返される。
【0063】
図16は、マスターとバックアップの状態判断(ステップS30、S31)のフローチャートである。
【0064】
サーバ200は、ネットワーク装置A、Bのマスター/バックアップの状態を監視する(S351)。サーバ200は、ネットワーク装置A、Bともに同じ状態であるか判断する(S353)。サーバ200は、ネットワーク装置A、Bが同じ状態でなければ(S353:no)、正常と判断して(S361)状態判断の処理を終える。一方、サーバ200は、ネットワーク装置A、Bが同じ状態であれば(S353:yes)、その状態がマスターか判断する(S355)。サーバ200は、状態がマスターであれば(S355:yes)、障害情報を「ダブルマスター」とする。一方、サーバ200は、状態がバックアップであれば(S355:no)、障害情報を「ダブルバックアップ」とする。
3.第3の実施の形態
本実施の形態では、マルチキャストルーティングにおける実施の形態について説明する。
【0065】
図17は、マルチキャストルーティングの機能を用いた場合の全体構成図である。第1の実施の形態との違いのひとつは、イベントを送信するネットワーク装置と、構成定義が反映されるネットワーク装置が異なる点である。ただし、この例においては四つのネットワーク装置であるが、特にネットワーク装置で用いられる機能次第で単一または複数のネットワーク装置を扱うことに制限はない。
【0066】
自動障害回復システムは、クライアント装置100と、サーバ200と、ネットワーク装置とを備える。ネットワーク装置は、例えば、複数備えることができる。図示の例では、ネットワーク装置A300と、ネットワーク装置B400と、ネットワーク装置C500と、ネットワーク装置D600とを備える。図17においてネットワーク装置A300とネットワーク装置B400、ネットワーク装置C500においてマルチキャストルーティングのRPの機能が動作している。なお、他の構成については、第1の実施の形態と同様であるので、説明を省略する。
【0067】
ネットワーク装置D600からはネットワーク装置A300、ネットワーク装置B400、ネットワーク装置C500のいずれもがRPの設定されたネットワーク装置になりうるとして設定されている。RPとは、マルチキャストルーティングにおけるRendezvous Point(ランデブーポイント)の省略形である。
【0068】
図18は、図17の構成において想定されるシナリオの一部を登録したシナリオテーブル230から取り出されたシナリオ候補リスト240である。
【0069】
図19は、マルチキャストルーティング機能における本実施の形態のフローチャートである。ネットワーク装置A300においてRPが設定されていたが、何らかの原因でネットワーク装置A300がRPとして機能しなくなった状態について説明する。
【0070】
サーバ200は、上述の第1の実施の形態と同様に、予めシナリオ登録をする(ステップS0)。ネットワーク装置D600は、RPが見えなくなったためマルチキャストルーティングができなくなったという装置障害イベントを送信する。ここでの装置障害イベントは、例えば、対象機能(例えばマルチキャストルーティング)と、監視対象(例えばネットワーク装置D)と、障害情報(例えばRPが見えなくなった)とを含む。次に、図18のシナリオ候補リスト240に従い、上述の第1の実施の形態と同様に、シナリオを選択する(ステップS1)。ここでは、該当するシナリオのうち頻度情報が高いシナリオ241が選択される。サーバ200は、構成定義テンプレートを作成する(ステップS502)。但し、本実施の形態では対象が三つのネットワーク装置であるため、構成定義テンプレートは3種類生成される。例えば、選択されたシナリオ241の対処方法に従い、ネットワーク装置A300宛ての構成定義テンプレートは対処方法として「RP設定:no」を含み、ネットワーク装置B400宛ての構成定義テンプレートは対処方法として「RP設定:yes」を含み、ネットワーク装置C500宛ての構成定義テンプレートは対処方法として「RP設定:no」を含む。サーバ200は、各ネットワーク装置A300、B400、C500の構成定義管理プログラムに構成定義テンプレートを送信する(ステップS503)。
【0071】
次に、ネットワーク装置A300は、受信された構成定義テンプレートに従い、RPの設定をnoに変更する(ステップS504)。同様に、ネットワーク装置B400、ネットワーク装置C500はそれぞれ、受信された構成定義テンプレートに従いRPの設定をyes、noに変更する(ステップS505)。次にサーバ200は、今まで装置障害イベントを送信してきていたネットワーク装置D600から一定時間内に同じ装置障害イベントの送信が止まったか判断する(ステップS506)。サーバ200は、一定時間内に装置障害イベントが来た場合(ステップS506のno)、障害が復旧していないと見なし、再びステップS1を繰り返す。一方、サーバ200は、一定時間内に装置障害イベントが受信されない場合(ステップS506のyes)、装置障害イベントが止まったとして障害を抑止できたと見なし、シナリオテーブル230の該当するシナリオの頻度情報に対し+1更新する(ステップS507)。
【0072】
なお、第1、第2、第3の実施の形態に分けて説明したが、これら各実施の形態のサーバは、ひとつ又は複数のサーバで実現することができる。
【0073】
上述の第1〜第3の実施の形態によると、例えば以下の効果を奏する。
(1)上述の実施の形態によると、事前に予測される障害と対処方法を頻度順に実施してみることで、ネットワークにおける障害の抑止またはネットワークの障害の自動回復を図ることが可能となる。また、上述の実施の形態によると、実施した対処方法によってネットワークにおける障害の抑止または自動回復が成功した対処方法に頻度情報を付加することにより、頻度情報に基づく確実な対処方法が選択される可能性が増え、さらに効率的なネットワークの安定化を図ることが可能となる。さらに、上述の実施の形態によると、階層化されているネットワークレイヤーの対処方法を登録しておくことにより本来解決が困難であった特定のネットワークレイヤーの障害に対しても対応することが可能になる。
(2)上述の実施の形態によると、構成定義テンプレートが特有のフォーマットで記述できることは、構成定義テンプレート作成アプリケーションの作成を容易とすることができる。
(3)上述の実施の形態によると、構成定義テンプレートの文法定義と構成定義のフォーマットの間に一定の変換規則を持つことは、機種依存定義である構成定義への変換を容易とすることができる。上述の実施の形態の構成定義テンプレートと構成定義において、構成定義テンプレートの文法定義と構成定義のフォーマットの間に一定の変換規則を持つことを特徴のひとつとする。
(4)上述の実施の形態によると、サーバのシナリオテーブルに登録またはシナリオテーブル一覧を表示するための外部インタフェースであるクライアントは、サーバとの接続においてネットワークまたはサーバ内の機能を実現するプロセス間での通信を介することを特徴のひとつとしているため、既存システムまたは分散システム環境との接続を容易とする。
(5)上述の実施の形態によると、構成定義によって反映したネットワーク中継の機能に起因する障害または機能の状態変化の情報である装置障害イベントを送信する機能とは、ネットワーク装置に備わる通信送信機能またはサーバもしくはネットワーク装置からのコールバックによる送信機能を含むことを特徴のひとつとしているため、既存システムまたは分散システムとの連携で用いられる送信技術への対応を容易とする。
(6)上述の実施の形態によると、監視対象とは単一または複数のネットワーク装置またはネットワーク装置内の機能部位を論理的に記述できることを特徴のひとつとしているため、単一または複数のネットワーク装置のシナリオの記述を容易とし、シナリオテーブルが適切化されやすくなる。
(7)上述の実施の形態によると、シナリオテーブルにユーザが登録した障害に該当する対処方法がすべて頻度情報順に実行されるまで続き、未選択のシナリオがなくなった時点で装置障害イベントの受信が続いた場合に、ユーザに対し手動での対処要求を通知するため、未知の障害があったとしても対処がなされる。
(8)上述の実施の形態によると、シナリオ候補リストとして関連するシナリオ候補を抜き出しているため、該当シナリオを選択するための効率が良い。
(9)上述の実施の形態によると、頻度情報の優先度を明確に決めているため、システムで過去によく使用した順に実行することが可能である。
(10)上述の実施の形態によると、選択の対象である各処理対象の使用頻度に基づき、選択の効率化が可能である。
(11)上述の実施の形態によると、ユーザが事前にシナリオとして登録した障害種別と対処方法との組み合わせに対し、過去の同様の障害における対処方法の使用頻度を頻度情報として付加することにより、過去の事例による対象方法の選択をコンピュータに行わせることが可能である。
(12)上述の実施の形態によると、シナリオテーブルへのシナリオ登録を容易に行うことができる。
(13)上述の実施の形態によると、シナリオテーブル一覧表示機能は、直接ユーザである人間またはプログラムを対象としているため、GUI(Graphic User Interface)またはアプリケーション構築が可能である。
(14)上述の実施の形態によると、シナリオテーブルのデータ構造が明確化されているため、アプリケーションとして実装が容易である。
(15)上述の実施の形態によると、対処方法の記述として構成定義テンプレートを用いているため、論理的な記述が可能である。
(16)上述の実施の形態によると、シナリオテーブルにおいて、シナリオテーブルに登録されているシナリオの頻度情報が0の場合、テーブルに登録されている順序がシナリオを選択する際の順となるため、シナリオを登録して頻度情報が更新されていない状態であっても適切に動作が可能である。
(17)上述の実施の形態によると、シナリオテーブルにおいて、シナリオテーブルに登録されている二つ以上のシナリオの頻度情報が同じ値の場合、テーブルに登録されている順序が、シナリオを選択する際の順となるため、頻度情報が同じ値であっても、適切に処理が可能である。
(18)上述の実施の形態によると、シナリオによっては複数回実行することにより、ネットワークを不安定にすることもありえるため、ユーザが任意に制限を設けることまたはシステムとしての制限を事前に設定しておくことで一定の制限をかけることが可能である。
(19)上述の実施の形態によると、シナリオによっては長時間実行することにより、ネットワークを不安定にすることもありえるため、サーバが特定の装置障害イベントを受けつづける時間に一定の制限を設けることによりシナリオの実行に一定の制限を設けることが可能である。
(20)上述の実施の形態によると、ログを保持することによりシステムによって実行された、シナリオの選択または実行順またはシナリオ実行によるネットワーク装置の状態変化をトレースができ、シナリオ作成または障害の抜本的解決に役立てることが可能である。
(21)上述の実施の形態によると、シナリオテーブルのシナリオを構成する項目を拡張可能にすることにより将来的なシナリオ選択の重み付けの差別化を行うことが可能である。
4.第4の実施の形態
以下に示す実施例は、その本質を変容させることなく、互いに組み合わせ可能であり、他の実施形態にも適用できる。
【0074】
図21は、図5に示すシナリオテーブル230の項目に、マニュアルデータ2000を拡張情報として追加している。マニュアルデータ2000は、直接テーブルにXML(Extensible Markup Language)として記憶するか、または外部データベースに対する参照ポインタを持ってもよい。マニュアルデータ2000は、障害情報の補足情報、または注意事項としてユーザが追記する。第1〜3までの実施形態のシナリオテーブルにおいていずれも適用可能である。
【0075】
図22は、図21に示すシナリオテーブル230に含まれる情報(構成要素)から組み合わせにより、保守マニュアル800を生成する関係を示している。図22では、保守マニュアル800の構成要素を、対象機能231、障害情報233、マニュアルデータ2000としているが、シナリオテーブル230の構成要素であれば、ユーザが必要とする範囲でどれを採用しても構わない。また、外部の情報を組み合わせることも可能である。ただし、外部の情報と組み合わせる場合は、マニュアルデータ上にURI(Uniform Resource Identifiers)で参照ポインタを記述するか、または、シナリオテーブル230の項目を拡張し、マニュアルデータと同様のURIを利用する。
【0076】
図23は、図21における構成要素であるマニュアルデータ2000に記憶された内容の具体例であり、XMLにて記述しされたマニュアルデータ700(経路学習関連マニュアルデータ)を示している。マニュアルデータ700のXMLタグの構成に関しては、ユーザが定義可能である。
【0077】
図24は、マニュアルデータとシナリオテーブルの項目を組み合わせて生成された、保守マニュアル800を示す。保守マニュアル800をXMLとして生成することにより、例えばHTML(Hyper Text Markup Language)またはワード文書に変換可能となり、ユーザの環境に応じた保守マニュアルの提供が可能となる。
【0078】
上述の第4の実施の形態のよると、例えば以下の効果を奏する。
(1)障害に対する自動回復だけではなく、補足または注意などの変更点をより詳細にユーザに通知することが可能となる。
(2)保守マニュアルをXML形式で保持することにより、XMLの持つあらゆるドキュメントへの変換が容易であるという特性を利用することが可能であり、例えば紙に印刷されたものや、最初からHTMLのものとは異なり、再利用性が高まる。
【図面の簡単な説明】
【0079】
【図1】本実施の形態の全体構成を示す図である。
【図2】サーバを、CPUを用いて実現した場合の構成を示す図である。
【図3】ネットワーク装置を、CPUを用いて実現した場合の構成を示す図である。
【図4】クライアントのシナリオ入力画面とシナリオ一覧を示す図である。
【図5】シナリオテーブルを示す図である。
【図6】シナリオ候補リストを示す図である。
【図7】クライアントがシナリオ登録する際のフローチャートである。
【図8】シナリオ選択のフローチャートである。
【図9】ルーティング機能使用時におけるシステムフローチャートである。
【図10】ネットワーク装置が出力するログの一覧である。
【図11】経路学習頻発判断をする際のフローチャートである。
【図12】L2冗長構成時の第2の実施の形態による全体構成を示す図である。
【図13】L2冗長におけるシナリオ候補リストである。
【図14】L2冗長機能使用時におけるシステムフローチャートである。
【図15】状態変更判定の基準となる状態遷移テーブルである。
【図16】状態判断のフローチャートである。
【図17】マルチキャストルーティング機能使用時の全体構成を示す図である。
【図18】マルチキャストルーティングにおけるシナリオ候補リストである。
【図19】マルチキャストルーティング機能使用時におけるシステムフローチャートである。
【図20】クライアントの構成図である。
【図21】マニュアルデータの項目を追加したシナリオテーブルである。
【図22】シナリオテーブルの情報から保守マニュアルを生成することを示す図である。
【図23】マニュアルデータの具体例である。
【図24】生成された保守マニュアルの具体例である。
【符号の説明】
【0080】
100 クライアント
200 サーバ
300 ネットワーク装置A
400 ネットワーク装置B
500 ネットワーク装置C
600 ネットワーク装置D
210 シナリオテーブル表示プログラム
220 シナリオテーブル管理プログラム
230 シナリオテーブル
240 シナリオ候補リスト
250 構成定義テンプレート生成プログラム
260 装置障害イベント受信プログラム
270 メモリ
280 CPU
290 ネットワークインタフェース
310 構成定義管理プログラム
320 装置障害イベント送信プログラム
330 メモリ
340 CPU
350 ネットワークインタフェース
101 シナリオを送信するボタン
231 対象機能
232 監視対象
233 障害情報
234 対処方法
235 頻度情報
236 シナリオ
240 シナリオ候補リスト
241 対象機能
242 監視対象
243 障害情報
244 対処方法
245 頻度情報
700 マニュアルデータ
800 保守マニュアル

【特許請求の範囲】
【請求項1】
ネットワークを構成するひとつ又は複数のネットワーク装置と、
前記ネットワーク装置に接続され、障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記ネットワーク装置が、自ネットワーク装置の障害を検出し、自装置を示す監視対象情報と該障害内容を識別するための障害情報とを含む障害イベントを前記サーバに送信することと、
前記サーバが、該障害イベントを受信し、前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報を前記ネットワーク装置に送信することと、
前記ネットワーク装置が、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信していないと判断されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システム。
【請求項2】
ネットワークを構成するひとつ又は複数のネットワーク装置と通信するためのインタフェースと、
障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと、
処理部と
を備え、
前記処理部は、
前記ネットワーク装置が障害を検出することで送信される、前記ネットワーク装置を示す監視対象情報と該障害内容を識別するための障害情報とを含む障害イベントを、前記インタフェースを介して受信することと、
前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報を、前記インタフェースを介して前記ネットワーク装置に送信することと、
選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しない場合、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバ。
【請求項3】
前記サーバは、
前記ネットワーク装置が該対処情報を反映し又は該対処情報に基づき設定を変更した後に、前記障害が再度検出されることにより送信される前記障害イベントを再度受信することと、
前記障害イベントを再度受信すると、前記シナリオテーブルを参照し、前記障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報の中から、対応する頻度情報が大きい順に対処情報を選択すること、及び、該対処情報を前記ネットワーク装置に送信することを、前記障害イベントが再度受信されなくなるまで繰り返すことをさらに含む請求項1に記載の障害回復システム又は請求項2に記載のサーバ。
【請求項4】
前記サーバに送信することは、
前記ネットワーク装置が、経路計算のログを含む予め出力されたログを監視し、一定時間内に発生した経路計算の回数を求めることと、
前記ネットワーク装置が、求められた経路計算の回数が予め設定された閾値よりも大きいことにより、経路学習が頻発している障害を検出することと、
前記ネットワーク装置が、自装置を示す監視対象情報と、経路学習が頻発していることを識別するための障害情報とを含む障害イベントを前記サーバに送信すること
を含む請求項1に記載の障害回復システム。
【請求項5】
ネットワークを構成する第1のネットワーク装置と、
前記第1のネットワーク装置に接続され、及び、ネットワークを構成する第2のネットワーク装置と、
前記第1及び第2のネットワーク装置に接続され、障害回復の対象である前記第1及び第2のネットワーク装置を示す監視対象情報と、前記第1のネットワーク装置の状態と前記第2のネットワーク装置の状態の組み合わせで定まる障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記第1のネットワーク装置が、自装置を示す第1の監視対象情報と自装置の状態を示す第1の状態情報を含む第1のイベントを前記サーバに送信することと、
前記第2のネットワーク装置が、自装置を示す第2の監視対象情報と自装置の状態を示す第2の状態情報を含む第2のイベントを前記サーバに送信することと、
前記サーバが、第1及び第2のイベントを受信し、第1の状態情報と第2の状態情報に基づき障害の有無を判断し、及び、障害情報を求めることと、
前記サーバが、前記シナリオテーブルを参照して、第1及び第2のイベントに含まれる第1及び第2の監視対象情報及び求められた障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報を前記第1及び第2のネットワーク装置にそれぞれ送信することと、
前記第1及び第2のネットワーク装置がそれぞれ、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、障害が回避されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システム。
【請求項6】
ネットワークを構成する第1及び第2のネットワーク装置と通信するためのインタフェースと、
障害回復の対象である前記第1及び第2のネットワーク装置を示す監視対象情報と、前記第1のネットワーク装置の状態と前記第2のネットワーク装置の状態の組み合わせで定まる障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと
処理部と
を備え、
前記処理部は、
前記第1のネットワーク装置から、前記第1のネットワーク装置を示す第1の監視対象情報と前記第1のネットワーク装置の状態を示す第1の状態情報を含む第1のイベントを、前記インタフェースを介して受信することと、
前記第2のネットワーク装置から、前記第2のネットワーク装置を示す第2の監視対象情報と前記第2のネットワーク装置の状態を示す第2の状態情報を含む第2のイベントを、前記インタフェースを介して受信することと、
第1の状態情報と第2の状態情報に基づき障害の有無を判断し、及び、障害情報を求めることと、
前記シナリオテーブルを参照して、第1及び第2のイベントに含まれる第1及び第2の監視対象情報及び求められた障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報を、前記ネットワークインタフェースを介して前記第1及び第2のネットワーク装置にそれぞれ送信することと、
障害が回避されると、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバ。
【請求項7】
前記サーバは、
前記第1のネットワーク装置から、第1の監視対象情報と、対処情報が反映され又は設定が変更された後の前記第1のネットワーク装置の状態を示す第3の状態情報とを含む第3のイベントを受信することと、
前記第2のネットワーク装置から、第2の監視対象情報と、対処情報が反映され又は設定が変更された後の前記第2のネットワーク装置の状態を示す第4の状態情報とを含む第4のイベントを受信することと、
第3の状態情報と第4の状態情報に基づき障害が回避されたか判断することと、
障害が回避されていないと判断されると、前記シナリオテーブルを参照し、第1及び第2の監視対象情報と障害情報とに対応するひとつ又は複数の対処情報の中から、対応する頻度情報が大きい順に対処情報を選択すること、及び、該対処情報を前記第1及び第2のネットワーク装置に送信することを、障害が回避されたと判断されるまで繰り返すこと、
をさらに含む請求項5に記載の障害回復システム又は請求項6に記載のサーバ。
【請求項8】
前記第1及び前記第2のネットワーク装置は、冗長構成で動作し、
前記障害情報を求めることは、
前記サーバが、前記第1のネットワーク装置の第1の状態情報と、前記第2のネットワーク装置の第2の状態情報の双方がマスターを示す場合、及び、双方がバックアップを示す場合に、前記サーバは障害があると判断すること、及び、ダブルマスター又はダブルバックアップを示す障害情報を求めること
を含み、
前記対処情報は、前記第1のネットワーク装置及び前記第2のネットワーク装置の一方をマスター、他方をバックアップとさせるための情報を含む請求項5に記載の障害回復システム。
【請求項9】
ネットワークを構成する第1のネットワーク装置と、
ネットワークを構成する第2のネットワーク装置と、
前記第1のネットワーク装置を介してネットワークに接続され、かつ、前記第2のネットワーク装置を介してネットワークに接続される第3のネットワーク装置と、
前記第1及び第2のネットワーク装置に接続され、障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルを有するサーバと
を備え、
前記第3のネットワーク装置が、前記第1又は第2のネットワーク装置の障害により、ネットワークへの転送に障害が発生したことを検出すると、自装置を示す監視対象情報と転送機能の障害であることを識別するための障害情報とを含む障害イベントを前記サーバに送信することと、
前記サーバが、障害イベントを受信し、前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
前記サーバが、選択された対処情報に従い、該対処情報を前記第1及び第2のネットワーク装置に送信することと、
前記第1及び第2のネットワーク装置が、対処情報を受信し、該対処情報を反映し又は該対処情報に基づき設定を変更することと、
前記サーバは、選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しないと、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含む障害回復システム。
【請求項10】
ネットワークを構成する第1及び第2及び第3のネットワーク装置と通信するためのインタフェースと、
障害回復の対象であるひとつ又は複数の前記ネットワーク装置を示す監視対象情報と、障害内容を識別するための障害情報と、該障害に対する対処情報と、該対処情報により障害が回復した回数を示す頻度情報とが対応して記憶されたシナリオテーブルと、
処理部と
を備え、
前記処理部は、
前記第3のネットワーク装置が、前記第1又は第2のネットワーク装置の障害によりネットワークへの転送に障害が発生したことを検出することで送信される、前記第3のネットワーク装置を示す監視対象情報と転送機能の障害であることを識別するための障害情報とを含む障害イベントを、前記インタフェースを介して受信することと、
前記シナリオテーブルを参照して、該障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報を検索し、該当する対処情報の中から、対応する頻度情報が最も大きい又は予め定められた値以上の対処情報をひとつ選択することと、
選択された対処情報に従い、前記ネットワークインタフェースを介して、該対処情報を前記第1及び第2のネットワーク装置に送信することと、
選択された対処情報を送信してから予め定められた時間内に前記障害イベントを再度受信しないと、前記シナリオテーブルを参照し、選択された対処情報に対応する頻度情報を増加させること
を含むサーバ。
【請求項11】
前記サーバは、
前記第1及び第2のネットワーク装置が該対処情報を反映し又は該対処情報に基づき設定を変更した後に、前記第3のネットワーク装置で前記障害が再度検出されることにより送信される前記障害イベントを再度受信することと、
前記障害イベントを再度受信すると、前記シナリオテーブルを参照し、前記障害イベントに含まれる監視対象情報と障害情報に対応するひとつ又は複数の対処情報の中から、対応する頻度情報が大きい順に対処情報を選択すること、及び、該対処情報を前記第1及び第2のネットワーク装置に送信することを、前記第3のネットワーク装置から前記障害イベントが再度受信されなくなるまで繰り返すことと
をさらに含む請求項9に記載の障害回復システム又は請求項10に記載のサーバ。
【請求項12】
前記第1のネットワーク装置が、マルチキャストルーティングのランデブーポイントとして設定され、
前記サーバに送信することは、
前記第3のネットワーク装置が、前記第1のネットワーク装置のランデブーポイント機能の障害により、自装置のマルチキャストルーティング機能に障害が発生したことを検出すること、及び、障害イベントを前記サーバに送信すること
を含み、
前記対処情報は、前記第2のネットワーク装置をマルチキャストルーティングのランデブーポイントとして設定するための情報を含む請求項9に記載の障害回復システム。
【請求項13】
前記サーバに接続されたクライアント装置
をさらに備え、
前記クライアント装置は、入力部から監視対象情報と障害情報と対処情報とを入力して前記サーバへ送信し、
前記サーバは、前記クライアント装置から受信された監視対象情報と障害情報と対処情報とを前記シナリオテーブルに記憶し、
前記サーバは、記憶された各情報に対応する頻度情報を初期化する請求項1又は5又は9に記載の障害回復システム。
【請求項14】
前記サーバに接続されたクライアント装置
をさらに備え、
前記サーバは、前記シナリオテーブルの該当する対処情報が順次選択されることにより、未選択の対処情報がなくなった場合に、前記クライアント装置に通知し、
前記クライアント装置は、対処情報がなくなったことを表示部に表示又は出力部に出力する請求項1又は5又は9に記載の障害回復システム。
【請求項15】
前記シナリオテーブルは、前記障害情報に関連するマニュアル情報を記憶することを特徴とする請求項1記載の障害回復システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2007−267352(P2007−267352A)
【公開日】平成19年10月11日(2007.10.11)
【国際特許分類】
【出願番号】特願2006−274639(P2006−274639)
【出願日】平成18年10月6日(2006.10.6)
【出願人】(504411166)アラクサラネットワークス株式会社 (315)
【Fターム(参考)】