(57)【要約】【課題】ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することが可能な技術を提供する。【解決手段】ネットワーク中継装置は、コマンドを取得するコマンド取得部と、取得したコマンドを実行するシステム制御部と、ネットワーク中継装置に潜在する既知の不具合に関する情報を識別するための識別情報と、不具合が顕在化し得る状態であるか否かを確認するための第１の確認コマンドと、不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、取得したコマンドと、第１の確認コマンドとを用いて、ネットワーク中継装置が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定し、不具合が顕在化し得ないと判定した場合は取得したコマンドを、不具合が顕在化し得ると判定した場合は回避コマンドを、システム制御部へ送信する回避処理部とを備える。【選択図】図１
2012124803.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク中継装置であって、
前記ネットワーク中継装置へのコマンドを取得するコマンド取得部と、
取得した前記コマンドを実行するシステム制御部と、
前記ネットワーク中継装置に潜在する既知の不具合に関する情報であって、前記不具合を識別するための識別情報と、前記不具合が顕在化し得る状態であるか否かを確認するための第１の確認コマンドと、前記不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、
取得した前記コマンドと、前記第１の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記システム制御部へ送信する回避処理部と、
を備える、ネットワーク中継装置。
【請求項２】
請求項１記載のネットワーク中継装置であって、
前記回避処理部は、
取得した前記コマンドを用いて前記不具合情報記憶部を検索し、
検索により得られた前記第１の確認コマンドを前記システム制御部へ送信し、
前記システム制御部より得られた前記第１の確認コマンドの実行結果を用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定する、ネットワーク中継装置。
【請求項３】
請求項１または２記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合が既に顕在化しているか否かを確認するための第２の確認コマンドが記憶され、
前記ネットワーク中継装置は、さらに、
前記第２の確認コマンドを前記システム制御部へ送信し、得られた前記第２の確認コマンドの実行結果を用いて、前記ネットワーク中継装置において前記不具合が顕在化しているか否かを判定する復旧処理部を備える、ネットワーク中継装置。
【請求項４】
請求項３記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を解消するための復旧コマンドが記憶され、
前記復旧処理部は、さらに、前記不具合が顕在化していると判定した場合は、前記復旧コマンドを前記システム制御部へ送信する、ネットワーク中継装置。
【請求項５】
請求項１ないし４のいずれか一項記載のネットワーク中継装置であって、さらに、
外部から提供される前記既知の不具合に関する情報を取得し、取得した前記情報を用いて前記不具合情報記憶部に格納されている内容を更新する不具合情報取得部を備える、ネットワーク中継装置。
【請求項６】
請求項１ないし５のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を所定の条件にしたがって分類した分類情報が記憶され、
前記ネットワーク中継装置は、さらに、
前記不具合情報記憶部に格納されている前記不具合に関する情報のうち、前記回避処理部もしくは前記復旧処理部による処理の対象となる情報を限定するために前記分類情報を取得する条件取得部を備える、ネットワーク中継装置。
【請求項７】
請求項６記載のネットワーク中継装置であって、
前記所定の条件は、前記不具合が顕在化した際に前記ネットワーク中継装置に生じる症状の種類と、前記復旧コマンドを実行した際の前記ネットワーク中継装置への影響と、前記不具合の重要度と、のうちの少なくとも１つである、ネットワーク中継装置。
【請求項８】
請求項１ないし７のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合の顕在化を回避するための手段と、を示す言語情報が記憶され、
前記回避処理部は、前記回避コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
【請求項９】
請求項３ないし８のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合を解消するための手段と、を示す言語情報が記憶され、
前記復旧処理部は、前記復旧コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
【請求項１０】
ネットワーク中継装置の制御方法であって、
（ａ）前記ネットワーク中継装置へのコマンドを取得する工程と、
（ｂ）取得した前記コマンドを実行する工程と、
（ｃ）取得した前記コマンドと、前記ネットワーク中継装置に潜在する既知の不具合が顕在化し得る状態であるか否かを確認するための第１の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記工程（ｂ）に実行させる工程と、
を備える、ネットワーク中継装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク中継装置に関し、特に、ネットワーク中継装置において不具合を回避する技術に関する。
【背景技術】
【０００２】
例えば、小規模なクライアントサーバシステムにおいて、サービスを提供するサーバで不具合が発生した場合は、サーバによるサービスの提供を一旦停止させた状態で、サーバに修正プログラムをインストール後、再起動する等の対策を講じて不具合を解消することが一般的である。しかし、ＩＣＴ（Information and Communication Technology）技術の進展に伴い、高い信頼性を持つネットワークインフラストラクチャが求められる近年では、ネットワークインフラストラクチャを構成するネットワーク中継装置（例えば、ＬＡＮスイッチやルータ）に不具合が発見された場合であっても、サービスを停止させずに継続運用することが求められる。
【０００３】
ネットワーク中継装置が提供するサービスを継続運用させるための１つの方法として、ネットワーク中継装置の冗長化がある。例えば、運用系と、予備系との２台のネットワーク中継装置を予め準備しておき、運用系のネットワーク中継装置に対する不具合の対策（例えば、装置の設定変更、修正プログラムのインストール、装置の再起動等）を実施している間、予備系のネットワーク中継装置を使用してサービスの提供を継続する（例えば、特許文献１）。
【０００４】
また、ネットワーク中継装置が提供するサービスを継続運用させるための他の方法として、ネットワーク管理者の運用による不具合の顕在化の回避がある。例えば、あるネットワーク中継装置において既知の不具合がまだ顕在化していない場合、ネットワーク管理者は、ネットワーク中継装置の定期メンテナンスの日までの間、ネットワーク中継装置に対して既知の不具合を回避するための運用（例えば、ネットワーク中継装置に対して特定のコマンドを入力した場合に顕在化する不具合が知られている場合、当該コマンドを入力しないよう運用する等。）を行う。そして、ネットワーク管理者は、ネットワーク中継装置の定期メンテナンスの際に、はじめてネットワーク中継装置に対する既知の不具合の対策を実施する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１-４１２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、ネットワークインフラストラクチャを構成する全てのネットワーク中継装置を冗長化することは、コスト面において好ましくないという問題があった。また、ネットワーク管理者の運用による不具合の顕在化の回避を行うことは、非常に労力を要する上に、ヒューマンエラーの危険性があるという問題があった。
【０００７】
本発明は、ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００９】
［適用例１］
ネットワーク中継装置であって、
前記ネットワーク中継装置へのコマンドを取得するコマンド取得部と、
取得した前記コマンドを実行するシステム制御部と、
前記ネットワーク中継装置に潜在する既知の不具合に関する情報であって、前記不具合を識別するための識別情報と、前記不具合が顕在化し得る状態であるか否かを確認するための第１の確認コマンドと、前記不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、
取得した前記コマンドと、前記第１の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記システム制御部へ送信する回避処理部と、
を備える、ネットワーク中継装置。
このような構成とすれば、回避処理部は、取得したコマンドと、第１の確認コマンドとを用いて、ネットワーク中継装置が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定し、不具合が顕在化し得る状態であると判定した場合は、不具合の顕在化を回避するための回避コマンドをシステム制御部へ送信するため、ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することができる。
【００１０】
［適用例２］
適用例１記載のネットワーク中継装置であって、
前記回避処理部は、
取得した前記コマンドを用いて前記不具合情報記憶部を検索し、
検索により得られた前記第１の確認コマンドを前記システム制御部へ送信し、
前記システム制御部より得られた前記第１の確認コマンドの実行結果を用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定する、ネットワーク中継装置。
このような構成とすれば、回避処理部は、取得したコマンドを用いて不具合情報記憶部を検索し、検索により得られた第１の確認コマンドをシステム制御部に実行させる。この結果、回避処理部は、取得したコマンドに対応する第１の確認コマンドを用いて、ネットワーク中継装置の状態を判定することができる。
【００１１】
［適用例３］
適用例１または２記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合が既に顕在化しているか否かを確認するための第２の確認コマンドが記憶され、
前記ネットワーク中継装置は、さらに、
前記第２の確認コマンドを前記システム制御部へ送信し、得られた前記第２の確認コマンドの実行結果を用いて、前記ネットワーク中継装置において前記不具合が顕在化しているか否かを判定する復旧処理部を備える、ネットワーク中継装置。
このような構成とすれば、復旧処理部は、第２の確認コマンドを用いてネットワーク中継装置において不具合が顕在化しているか否かを判定するため、適用例１の効果に加えてさらに、ネットワーク中継装置において既に顕在化している不具合を検出することができる。
【００１２】
［適用例４］
適用例３記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を解消するための復旧コマンドが記憶され、
前記復旧処理部は、さらに、前記不具合が顕在化していると判定した場合は、前記復旧コマンドを前記システム制御部へ送信する、ネットワーク中継装置。
このような構成とすれば、復旧処理部は、ネットワーク中継装置において既に不具合が顕在化していると判定した場合は、復旧コマンドをシステム制御部へ送信するため、適用例１の効果に加えてさらに、ネットワーク中継装置において既に顕在化している不具合を自動的に解消することができる。
【００１３】
［適用例５］
適用例１ないし４のいずれか一項記載のネットワーク中継装置であって、さらに、
外部から提供される前記既知の不具合に関する情報を取得し、取得した前記情報を用いて前記不具合情報記憶部に格納されている内容を更新する不具合情報取得部を備える、ネットワーク中継装置。
このような構成とすれば、不具合情報取得部は、外部から提供される既知の不具合に関する情報を取得して不具合情報記憶部に格納されている内容を更新するため、不具合情報記憶部内の情報を自動的に更新することができる。
【００１４】
［適用例６］
適用例１ないし５のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を所定の条件にしたがって分類した分類情報が記憶され、
前記ネットワーク中継装置は、さらに、
前記不具合情報記憶部に格納されている前記不具合に関する情報のうち、前記回避処理部もしくは前記復旧処理部による処理の対象となる情報を限定するために前記分類情報を取得する条件取得部を備える、ネットワーク中継装置。
このような構成とすれば、回避処理部もしくは復旧処理部による処理の対象となる不具合に関する情報を限定することができる。
【００１５】
［適用例７］
適用例６記載のネットワーク中継装置であって、
前記所定の条件は、前記不具合が顕在化した際に前記ネットワーク中継装置に生じる症状の種類と、前記復旧コマンドを実行した際の前記ネットワーク中継装置への影響と、前記不具合の重要度と、のうちの少なくとも１つである、ネットワーク中継装置。
このような構成とすれば、回避処理部もしくは復旧処理部による処理の対象を、不具合が顕在化した際にネットワーク中継装置に生じる症状の種類と、復旧コマンドを実行した際のネットワーク中継装置への影響と、不具合の重要度と、の少なくとも１つの条件によって限定することができる。
【００１６】
［適用例８］
適用例１ないし７のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合の顕在化を回避するための手段と、を示す言語情報が記憶され、
前記回避処理部は、前記回避コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
このような構成とすれば、回避処理部による回避コマンド発行時に、自然言語を用いて表わされた不具合の内容と、不具合の顕在化を回避するための手段と、のうちの少なくとも一方を外部へ通知することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【００１７】
［適用例９］
適用例３ないし８のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合を解消するための手段と、を示す言語情報が記憶され、
前記復旧処理部は、前記復旧コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
このような構成とすれば、復旧処理部による復旧コマンド発行時に、自然言語を用いて表わされた不具合の内容と、不具合を解消するための手段と、のうちの少なくとも一方を外部へ通知することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【００１８】
なお、本発明は、種々の態様で実現することが可能である。例えば、ネットワーク中継装置、ネットワーク中継装置の制御方法、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記憶媒体等の形態で実現することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施例としてのネットワークシステムの概略構成を示す説明図である。
【図２】不具合情報テーブルの一例を示す説明図である。
【図３】プロトコル設定テーブルの一例を示す説明図である。
【図４】不具合処理設定テーブルの一例を示す説明図である。
【図５】不具合情報取得処理の手順を示すフローチャートである。
【図６】自動回避処理の手順を示すフローチャートである。
【図７】自動回避処理が行われる様子を示す説明図である。
【図８】第２実施例におけるネットワークシステムの概略構成を示す説明図である。
【図９】第２実施例における不具合情報テーブルの一例を示す説明図である。
【図１０】第２実施例における不具合処理設定テーブルの一例を示す説明図である。
【図１１】第２実施例における不具合情報取得処理の手順を示すフローチャートである。
【図１２】第２実施例における自動復旧処理の手順を示すフローチャートである。
【図１３】自動復旧処理が行われる様子を示す説明図である。
【図１４】第３実施例におけるネットワークシステムの概略構成を示す説明図である。
【図１５】第３実施例における不具合情報テーブルの一例を示す説明図である。
【図１６】第３実施例における不具合処理設定テーブルの一例を示す説明図である。
【図１７】自動復旧処理における処理内容の限定に使用される分類情報ＭＩを指定するための指定画面の一例を示す説明図である。
【発明を実施するための形態】
【００２０】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
【００２１】
Ａ．第１実施例：
（Ａ−１）ネットワーク中継装置の概略構成：
図１は、本発明の一実施例としてのネットワークシステム１０００の概略構成を示す説明図である。ネットワークシステム１０００は、サーバＳＶと、管理端末ＡＴと、３台のレイヤ３のネットワーク中継装置１０（ルータ１０：Ａ、Ｂ、Ｃ）とを備えている。ルータＡ〜Ｃは、いずれも同じ構成および動作を有する装置であり、回線によって相互に接続されている。なお、以降では、ルータＡ〜Ｃを相互に識別する必要がある場合のみ、単に「ルータＡ」等と呼び、ルータの構成や動作の説明等では「ルータ１０」と呼ぶ。
【００２２】
サーバＳＶは、インターネットＩＮＴを介してルータＡと接続されている。サーバＳＶは、ルータ１０の既知の不具合に関する情報を格納した不具合情報データベースＤＢを備えている。なお、以降では、不具合に関する情報を単に「不具合情報」とも呼ぶ。
【００２３】
管理端末ＡＴは、ルータＡに接続され、ルータＡ〜Ｃを管理するための端末（例えば、パーソナルコンピュータ）である。
【００２４】
ルータ１０は、自身に接続される他のルータや端末との間のパケットによる通信を中継するレイヤ３のネットワーク中継装置である。ルータ１０は、不具合処理制御部１００と、コマンド取得部２００と、システム制御部３００と、転送処理部４００と、記憶部５００とを備えている。ルータ１０内の各機能部は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）を含む回路により構成されている。ＣＰＵは、ＲＯＭに記憶された制御プログラムをＲＡＭにロードして実行することで、各機能部として動作する。なお、ルータ１０内の各機能部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ(Field Programmable Gate Array)によって実現されることとしてもよい。なお、図１では便宜上、説明上必要としないルータ１０の構成部については図示を省略している。このことは後述する図においても同様である。
【００２５】
不具合処理制御部１００は、ルータ１０について既に発見されている（既知の）不具合に対応するための処理である不具合対応処理を実行する機能を有する。不具合処理制御部１００は、さらに、不具合情報取得部１１０と、回避処理部１２０とを含む。不具合情報取得部１１０は、ルータ１０の外部（すなわち、サーバＳＶ）の不具合情報データベースＤＢから提供される既知の不具合情報を取得し、不具合情報テーブル５１０を更新する処理（不具合対応処理：不具合情報取得処理）を実行する。詳細は後述する。回避処理部１２０は、既知の不具合の顕在化を回避するための処理（不具合対応処理：自動回避処理）を実行する。詳細は後述する。
【００２６】
コマンド取得部２００は、ルータ１０に対して発行される種々のコマンドを取得する機能を有する。コマンドとは、ルータ１０への命令であり、例えば、ルータ１０の設定内容を表示する命令や、ルータ１０内の各プロセスのＣＰＵ利用率を表示する命令や、ルータ１０内のインタフェースの状態を表示する命令等を含む。ルータ１０へのコマンドは、例えば、ルータ１０に接続されている管理端末ＡＴから発行される。
【００２７】
システム制御部３００は、不具合処理制御部１００やコマンド取得部２００から受信したコマンドを実行するほか、ルータ１０の各部を制御する機能を有する。システム制御部３００は、さらに、宛先判定部３１０と、装置管理部３２０とを含む。宛先判定部３１０は、ルータ１０が受信したパケットに含まれるヘッダ情報を、図示しないルーティングテーブル等を用いて解析し、受信データの宛先検索処理を行う機能を有する。装置管理部３２０は、ルータ１０を管理する機能を有する。装置管理部３２０は、例えば、ルータ１０における障害の発生を検知する機能や、ルータ１０が中継するパケットの統計情報を取得する機能などを含むことができる。
【００２８】
転送処理部４００は、図示しないポートを経由して外部とパケットを送受信する機能や、ルータ１０内の各部へ制御用情報等のデータを転送する機能を有する。
【００２９】
記憶部５００は、例えば、ＣＡＭ（Content Addressable Memory）とよばれる特殊なメモリやＤＲＡＭ（Dynamic Random Access Memory）等により構成されている。記憶部５００には、不具合情報テーブル５１０と、プロトコル設定テーブル５２０と、不具合処理設定テーブル５３０とが記憶されている。これら各テーブルについての詳細は後述する。
【００３０】
（Ａ−２）テーブル構成：
図２は、不具合情報テーブル５１０の一例を示す説明図である。不具合情報記憶部としての不具合情報テーブル５１０は、ルータ１０に潜在する既知の不具合に関する情報を記憶するためのテーブルである。不具合情報テーブル５１０は、識別情報ＤＩと、言語情報ＴＩと、コマンドＣＭとを含んでいる。識別情報ＤＩは、不具合番号フィールドを含み、各エントリに格納されている不具合を相互に識別するための識別情報として、一意な番号が付与されている。
【００３１】
言語情報ＴＩは、人間が識別可能な言語を用いて表わした不具合情報である。言語情報ＴＩは、現象フィールドと、発生条件フィールドと、回避手段フィールドとを含む。現象フィールドには、不具合の内容、すなわち、不具合が顕在化した場合にルータ１０に発生する現象（症状）が格納されている。発生条件フィールドには、ルータ１０において、不具合が顕在化するための条件が格納されている。なお、不具合が顕在化するための条件とは、例えば、ルータ１０の設定内容や、不具合が顕在化するトリガとなるコマンド、またはそれらの組合せ等を意味する。回避手段フィールドには、不具合の顕在化を回避するための手段が格納されている。
【００３２】
コマンドＣＭは、ルータ１０が識別可能な言語（すなわち、本実施例では、システム制御部３００が実行可能なコマンド）を用いて表わした不具合情報である。
コマンドＣＭは、発生条件コマンドフィールドと、回避コマンドフィールドとを含む。発生条件コマンドフィールドには、ルータ１０において不具合が顕在化し得る状態であるか否かを確認するためのコマンド（以降、「第１の確認コマンド」とも呼ぶ。）が格納されている。第１の確認コマンドは、換言すれば、ルータ１０が、発生条件フィールドに格納された前提条件を満たすか否かを確認するためのコマンドである。回避コマンドフィールドには、不具合の顕在化を回避するために、代替的に用いられるコマンド（以降、「回避コマンド」とも呼ぶ。）が格納されている。回避コマンドは、換言すれば、回避手段フィールドに格納された、不具合の顕在化を回避するための手段を実行するためのコマンドである。
【００３３】
図２のコマンドＣＭにおいて使用されている言語の動作概要の一例を以下に示す。なお、以下において「ＸＸＸ」は、ルータ１０に対して発行される種々のコマンドの汎用表記とする。また、「ａａａ」は任意の文字列を、「ｂ」は任意の数字を意味する。
（１）ＣＨＥＣＫ：ＸＸＸ
システム制御部３００はコマンドＸＸＸを実行し、呼び出し元に対して実行結果が正しいか否かを示す戻り値を返す。
（２）ＣＨＥＣＫ ＥＸＩＳＴ：ａａａ
システム制御部３００はプロトコル設定テーブル５２０を参照し、設定情報としてａａａが存在するか否かの戻り値を返す。
（３）ＣＨＥＣＫ ＩＮ：ＸＸＸ
システム制御部３００はコマンド取得部２００に問い合わせを行い、コマンド取得部２００が受信したコマンドがＸＸＸであるか否かの戻り値を返す。
（４）ＣＯＮＶＥＲＳＩＯＮ：ＸＸＸ
システム制御部３００は回避コマンドを実行する。
（５）ＣＯＮＦＩＧ：ＸＸＸ
システム制御部３００はＸＸＸをプロトコル設定テーブル５２０に設定する。
（６）ＣＯＮＦＩＧ：ＰＡＵＳＥ ｂ
システム制御部３００はｂ秒間、コマンドの実行を遅延させる。
【００３４】
例えば、図２のエントリＥ１では、不具合番号００１で識別される不具合は、ルータ１０に対して「Ｓｈｏｗ ｘｘｘａ」というコマンドが発行された場合、本来表示されるはずのカウンタ情報が表示されないことを示している。また、不具合番号００１で識別される不具合は、前提条件として、ルータ１０においてプロトコルＡとプロトコルＢとの両方を設定している場合に発生する可能性があることを示している。さらに、不具合番号００１で識別される不具合を回避するためには、ルータ１０に対して「Ｓｈｏｗ ｘｘｘａ」というコマンドが入力された際、システム制御部３００は「ＣＯＮＶＥＲＳＩＯＮ：Ｓｈｏｗ ｘｘｘａ −Ｆ」という回避コマンドを実行すればよいことを示している。
【００３５】
図３は、プロトコル設定テーブル５２０の一例を示す説明図である。プロトコル設定テーブル５２０は、ルータ１０に設定されている通信プロトコル（通信規約）を記憶するためのテーブルである。図３の例では、ルータ１０には、プロトコルＢと、プロトコルＡとが設定されている。
【００３６】
図４は、不具合処理設定テーブル５３０の一例を示す説明図である。不具合処理設定テーブル５３０は、不具合処理制御部１００が実施する不具合対応処理において使用されるテーブルである。不具合処理設定テーブル５３０は、情報取得有無フィールドと、取得先フィールドと、自動回避処理フィールドとを含んでいる。情報取得フィールドには、不具合情報取得処理を行うか否かを示す情報が格納されている。取得先フィールドには、不具合情報取得処理において、不具合情報を取得する場所を示す情報が格納されている。自動回避処理フィールドには、自動回避処理を行うか否かを示す情報が格納されている。
【００３７】
例えば、図４の例では、不具合情報取得処理を行うことと、不具合情報取得処理においてＩＰアドレスが１０．２．１．１のサーバ（本実施例では図１のサーバＳＶであるものとする。）から不具合情報を取得することと、自動回避処理を行うことと、がわかる。なお、図４の例では、不具合情報取得先として、外部サーバのグローバルＩＰアドレスが格納されているが、不具合情報取得先は、外部サーバに限られず、他の場所が格納されていてもよい。例えば、ルータ１０に接続されたリムーバブルディスクへのパス等が格納されていてもよい。また、不具合処理設定テーブル５３０において、複数のエントリを設けてもよい。複数のエントリを設ける場合、例えば、複数のエントリに格納された全ての取得先から不具合情報を取得しても良いし、一方のエントリをプライマリの取得先、他方のエントリをセカンダリの取得先として、不具合情報を取得しても良い。
【００３８】
（Ａ−３）不具合対応処理：
（Ａ−３−１）不具合情報取得処理：
図５は、不具合情報取得処理の手順を示すフローチャートである。まず、不具合情報取得部１１０は、不具合情報を取得するか否かを判定する（ステップＳ１０２）。具体的には、不具合情報取得部１１０は、不具合処理設定テーブル５３０の情報取得有無フィールドの内容を参照することで、ステップＳ１０２の判定を行う。不具合情報を取得しない場合（ステップＳ１０２：ＮＯ）、不具合情報取得部１１０は、処理を終了させる。
【００３９】
一方、不具合情報を取得する場合（ステップＳ１０２：ＹＥＳ）、不具合情報取得部１１０は、不具合処理設定テーブル５３０の取得先フィールドに格納されている場所にアクセスし、不具合情報を取得する（ステップＳ１０４）。具体的には、図４の例では、不具合情報取得部１１０は、サーバＳＶ（図１）の不具合情報データベースＤＢにアクセスし、不具合情報を取得する。その後、不具合情報取得部１１０は、取得した不具合情報を用いて不具合情報テーブル５１０に格納されている内容を更新する（ステップＳ１０６）。具体的には、図４の例では、不具合情報取得部１１０は、サーバＳＶ（図１）の不具合情報データベースＤＢから取得した不具合情報を用いて、不具合情報テーブル５１０に格納されている内容を、その一貫性を保つような方法で更新する。
【００４０】
（Ａ−３−２）自動回避処理：
図６は、自動回避処理の手順を示すフローチャートである。図７は、自動回避処理が行われる様子を示す説明図である。自動回避処理は、回避処理部１２０がコマンドを受信した際に実行される処理である。
【００４１】
具体的には、例えば、図７の時刻ｔ１において、管理端末ＡＴからルータ１０へ「Ｓｈｏｗ ｘｘｘａ」というコマンドが入力される。ルータ１０へ入力されたコマンドは、コマンド取得部２００により取得され、不具合処理制御部１００（回避処理部１２０）へ送信される。このコマンドを受信した回避処理部１２０は、自動回避処理を実行する。
【００４２】
図６において、回避処理部１２０は、自動回避処理を行うか否かを判定する（ステップＳ２０２）。具体的には、回避処理部１２０は、不具合処理設定テーブル５３０の自動回避処理フィールドの内容を参照することで、ステップＳ２０２の判定を行う。自動回避処理を行わない場合（ステップＳ２０２：ＮＯ）、回避処理部１２０は、コマンド取得部２００から受信したコマンド（すなわち、コマンド取得部２００が取得したコマンド）をシステム制御部３００へ送信し、処理を終了する（ステップＳ２１４）。
【００４３】
一方、自動回避処理を行う場合（ステップＳ２０２：ＹＥＳ）、回避処理部１２０は、コマンド取得部２００から受信したコマンド（すなわち、コマンド取得部２００が取得したコマンド）をキーとして不具合情報テーブル５１０を検索し、一致するエントリがあるか否かを判定する（ステップＳ２０４）。一致するエントリがない場合、換言すれば、コマンド取得部２００が取得したコマンドに対応する既知の不具合がない場合、回避処理部１２０は、処理をステップＳ２１４へ遷移させる。
【００４４】
一方、一致するエントリがある場合、換言すれば、コマンド取得部２００が取得したコマンドに対応する既知の不具合がある場合、回避処理部１２０は、一致するエントリの発生条件コマンドフィールドに格納された第１の確認コマンドを、システム制御部３００へ送信する（ステップＳ２０６）。図７の時刻ｔ２は、回避処理部１２０からシステム制御部３００に対して、第１の確認コマンドが送信される様子を示している。第１の確認コマンドを受信したシステム制御部３００は、第１の確認コマンドを実行し、呼び出し元（コマンド送信元）の回避処理部１２０に対して、実行結果を戻り値として返す。
【００４５】
システム制御部３００からの戻り値を取得した回避処理部１２０は、戻り値が示す内容が、発生条件フィールドの内容（すなわち、不具合が顕在化するための条件）と一致するか否かを判定する（ステップＳ２０８）。一致しない場合、回避処理部１２０は処理をステップＳ２０４へ遷移させる。
【００４６】
一致する場合、回避処理部１２０は、管理端末ＡＴのディスプレイに不具合情報を表示させる（ステップＳ２１０）。管理端末ＡＴに表示させる不具合情報は任意に定めることができるが、不具合情報テーブル５１０の言語情報ＴＩから選択されることが好ましい。例えば、不具合情報テーブル５１０の現象フィールドの値とすることができる。なお、管理端末ＡＴに対して不具合情報を表示させる際は、併せて、回避コマンドを実行する旨を表示させることが好ましい。図７の時刻ｔ３は、管理端末ＡＴに不具合情報が表示されている様子を示している。
【００４７】
不具合情報表示の後、回避処理部１２０は、ステップＳ２０４で一致したエントリの回避コマンドフィールドに格納された回避コマンドを、システム制御部３００へ送信する（ステップＳ２１２）。その後、回避処理部１２０は、ステップＳ２０４へ遷移して、一致する全てのエントリについて処理を終了するまで、ステップＳ２０４〜２１２を繰り返す。図７の時刻ｔ４は、回避処理部１２０からシステム制御部３００に対して、回避コマンドが送信される様子を示している。回避コマンドを受信したシステム制御部３００は、回避コマンドを実行する。なお、ステップＳ２１０と、ステップＳ２１２との実行順序は逆でもよい。
【００４８】
以上のように、第１実施例によれば、回避処理部１２０は、コマンド取得部２００が取得したコマンドと、取得したコマンドに対応する第１の確認コマンドとを用いて、ルータ１０が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定する。具体的には、回避処理部１２０は、取得したコマンドを用いて不具合情報記憶部を検索し、検索により得られた第１の確認コマンドをシステム制御部３００に実行させる。回避処理部１２０は、実行により得られた実行結果を用いて、ルータ１０において取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定する。回避処理部１２０は、不具合が顕在化し得る状態であると判定した場合は、不具合の顕在化を回避するための回避コマンドをシステム制御部３００へ送信する。一方、回避処理部１２０は、不具合が顕在化し得る状態でないと判定した場合や、ルータ１０に関する既知の不具合がない場合は、取得したコマンドをシステム制御部３００へ送信する。システム制御部３００は、受信したコマンド（回避コマンドもしくはコマンド取得部２００が取得したコマンド）を実行する。この結果、ルータ１０に潜在する既知の不具合の顕在化を自動的に回避することが可能となる。
【００４９】
さらに、第１実施例によれば、不具合情報取得部１１０は、外部（サーバＳＶ）から提供される既知の不具合情報を取得して、ルータ１０内の不具合情報記憶部としての不具合情報テーブル５１０に格納されている内容を更新するため、不具合情報記憶部内の情報を自動的に更新することができる。不具合情報記憶部の更新を定期的に行えば、外部から提供される最新の不具合情報を用いた自動回避処理（回避処理部１２０による既知の不具合の顕在化を回避するための処理）が可能となる。この結果、ルータ１０の信頼性をより向上させることができる。
【００５０】
さらに、第１実施例によれば、回避処理部１２０は、回避コマンドをシステム制御部３００へ送信する場合に、現象フィールドの値（すなわち、言語情報ＴＩの不具合の内容）を外部（管理端末ＡＴ）へ通知する。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【００５１】
Ｂ．第２実施例：
本発明の第２実施例では、不具合対応処理として、さらに、顕在化した既知の不具合を解消するための自動復旧処理を備える構成について説明する。以下では、第１実施例と異なる構成および動作を有する部分についてのみ説明する。なお、図中において第１実施例と同様の構成部分については先に説明した第１実施例と同様の符号を付し、その詳細な説明を省略する。
【００５２】
（Ｂ−１）ネットワーク中継装置の概略構成：
図８は、第２実施例におけるネットワークシステム１０００ａの概略構成を示す説明図である。図１に示した第１実施例との違いは、ルータＡ〜Ｃが、ルータ１０に代えてルータ１０ａから構成されている点である。ルータ１０とルータ１０ａとの違いは、不具合処理制御部１００に代えて不具合処理制御部１００ａを、記憶部５００に代えて記憶部５００ａを、それぞれ備える点であり、他の構成や動作は図１に示した第１実施例と同様である。
【００５３】
不具合処理制御部１００と、不具合処理制御部１００ａとの違いは、不具合情報取得部１１０に代えて不具合情報取得部１１０ａを備える点と、さらに、復旧処理部１３０を備える点である。復旧処理部１３０は、顕在化した既知の不具合を解消するための処理（不具合対応処理：自動復旧処理）を実行する。
【００５４】
記憶部５００と、記憶部５００ａとの違いは、不具合情報テーブル５１０に代えて不具合情報テーブル５１０ａを、不具合処理設定テーブル５３０に代えて不具合処理設定テーブル５３０ａを、それぞれ備える点である。
【００５５】
（Ｂ−２）テーブル構成：
図９は、第２実施例における不具合情報テーブル５１０ａの一例を示す説明図である。図２に示した第１実施例との違いは、言語情報ＴＩに、さらに、復旧手段フィールドが含まれる点と、コマンドＣＭに、さらに、現象コマンドフィールドと、復旧コマンドフィールドとが含まれる点であり、他の構成は第１実施例と同様である。
【００５６】
復旧手段フィールドには、ルータ１０において顕在化した不具合を解消するための手段が格納されている。現象コマンドフィールドには、ルータ１０において不具合が既に顕在化しているか否かを確認するためのコマンド（以降、「第２の確認コマンド」とも呼ぶ。）が格納されている。第２の確認コマンドは、換言すれば、ルータ１０において現象フィールドに格納された現象が現れているか否かを確認するためのコマンドである。復旧コマンドフィールドには、ルータ１０において顕在化した不具合を解消するためのコマンド（以降、「復旧コマンド」とも呼ぶ。）が格納されている。復旧コマンドは、換言すれば、復旧手段フィールドに格納された、不具合を解消するための手段を実行するためのコマンドである。
【００５７】
例えば、図９のエントリＥ１では、不具合番号００１で識別される不具合は、ルータ１０に対して「Ｓｈｏｗ ｘｘｘａ」というコマンドが発行された場合、本来表示されるはずのカウンタ情報が表示されないことを示している。また、不具合番号００１で識別される不具合を解消するためには、プロトコルＢを一時的に無効にした後、すぐに有効にすればよいことを示している。すなわち、システム制御部３００は、「ＣＯＮＦＩＧ：Ｎｏ プロトコルＢ」、「ＣＯＮＦＩＧ：ＰＡＵＳＥ１」、「ＣＯＮＦＩＧ：プロトコルＢ」という一連のコマンドから構成される復旧コマンドを実行すればよいことを示している。
【００５８】
図１０は、第２実施例における不具合処理設定テーブル５３０ａの一例を示す説明図である。図４に示した第１実施例との違いは、さらに、自動復旧処理フィールドが含まれる点であり、他の構成は第１実施例と同様である。自動復旧処理フィールドには、自動復旧処理を行うか否かを示す情報が格納されている。
【００５９】
（Ｂ−３）不具合対応処理：
（Ｂ−３−１）不具合情報取得処理：
図１１は、第２実施例における不具合情報取得処理の手順を示すフローチャートである。図５に示した第１実施例との違いは、ステップＳ１０６の後にステップＳ３０２を備える点のみであり、他の動作は第１実施例と同様である。不具合情報取得部１１０ａは、不具合情報テーブル５１０ａを更新した後（ステップＳ１０６）、復旧処理部１３０に対して自動復旧処理を実行させる（ステップＳ３０２）。
【００６０】
（Ｂ−３−２）自動回避処理：
第２実施例における自動回避処理の手順は、図６に示した第１実施例と同様である。
【００６１】
（Ｂ−３−３）自動復旧処理：
図１２は、第２実施例における自動復旧処理の手順を示すフローチャートである。図１３は、自動復旧処理が行われる様子を示す説明図である。自動復旧処理は、不具合情報取得処理のサブルーチンとして実行される処理である。
【００６２】
具体的には、例えば、図１３の時刻ｔ１において、不具合情報取得部１１０ａは不具合情報取得処理を行う。不具合情報取得処理のステップＳ３０２において不具合情報取得部１１０ａは復旧処理部１３０を呼び出す。呼び出された復旧処理部１３０は、自動復旧処理を実行する。
【００６３】
図１２において、復旧処理部１３０は、自動復旧処理を行うか否かを判定する（ステップＳ４０２）。具体的には、復旧処理部１３０は、不具合処理設定テーブル５３０ａの自動復旧処理フィールドの内容を参照することで、ステップＳ４０２の判定を行う。自動復旧処理を行わない場合（ステップＳ４０２：ＮＯ）、復旧処理部１３０は処理を終了する。一方、自動復旧処理を行う場合（ステップＳ４０２：ＹＥＳ）、復旧処理部１３０は、不具合情報テーブル５１０ａを検索し、エントリがあるか否かを判定する（ステップＳ４０４）。不具合情報テーブル５１０ａにエントリがない場合、換言すれば、既知の不具合がない場合、復旧処理部１３０は処理を終了する。
【００６４】
一方、不具合情報テーブル５１０ａにエントリがある場合、換言すれば、既知の不具合がある場合、復旧処理部１３０は、不具合情報テーブル５１０ａ内の１つめのエントリの現象コマンドフィールドに格納された第２の確認コマンドを、システム制御部３００へ送信する（ステップＳ４０６）。図１３の時刻ｔ２は、復旧処理部１３０からシステム制御部３００に対して、第２の確認コマンドが送信される様子を示している。第２の確認コマンドを受信したシステム制御部３００は、第２の確認コマンドを実行し、呼び出し元（コマンド送信元）の復旧処理部１３０に対して、実行結果が正しいか否かを示す戻り値を返す。
【００６５】
システム制御部３００からの戻り値を取得した復旧処理部１３０は、戻り値を元に、ルータ１０aにおいて不具合の現象（症状）が発生（顕在化）しているか否かを判定する（ステップＳ４０８）。具体的には、実行結果が正しい旨の戻り値を取得した場合、復旧処理部１３０は、現象が発生していないと判定し（ステップＳ：４０８：ＮＯ）、処理をステップＳ４０４へ遷移させる。
【００６６】
一方、実行結果が正しくない旨の戻り値を取得した場合、復旧処理部１３０は、現象が発生していると判定し（ステップＳ４０８：ＹＥＳ）、管理端末ＡＴのディスプレイに不具合情報を表示させる（ステップＳ４１０）。管理端末ＡＴに表示させる不具合情報は任意に定めることができるが、不具合情報テーブル５１０ａの言語情報ＴＩから選択されることが好ましい。例えば、不具合情報テーブル５１０ａの現象フィールドの値とすることができる。なお、管理端末ＡＴに対して不具合情報を表示させる際は、併せて、復旧コマンドを実行する旨を表示させることが好ましい。図１３の時刻ｔ３は、管理端末ＡＴに不具合情報が表示されている様子を示している。
【００６７】
不具合情報表示の後、復旧処理部１３０は、現在処理対象としているエントリの復旧コマンドフィールドに格納された復旧コマンドを、システム制御部３００へ送信する（ステップＳ４１２）。その後、復旧処理部１３０は、ステップＳ４０４へ遷移し、不具合情報テーブル５１０ａ内の全てのエントリについて処理を終了するまで、ステップＳ４０４〜Ｓ４１２を繰り返す。図１３の時刻ｔ４は、復旧処理部１３０からシステム制御部３００に対して、復旧コマンドが送信される様子を示している。復旧コマンドを受信したシステム制御部３００は、復旧コマンドを実行する。なお、ステップＳ４１０と、ステップＳ４１２との実行順序は逆でもよい。
【００６８】
以上のように、第２実施例によれば、復旧処理部１３０は、第２の確認コマンドを用いてルータ１０aにおいて既に不具合が顕在化しているか否かを判定する。このため、ルータ１０aにおいて既に顕在化している不具合を検出することができる。さらに、復旧処理部１３０は、ルータ１０aにおいて既に不具合が顕在化していると判定した場合は、不具合を解消するための復旧コマンドをシステム制御部３００へ送信する。システム制御部３００は、受信したコマンド（復旧コマンド）を実行する。この結果、ルータ１０aにおいて、第１実施例の効果に加えてさらに、既に顕在化している既知の不具合を検出し、検出した不具合を自動的に解消することができる。
【００６９】
さらに、第２実施例によれば、復旧処理部１３０は、復旧コマンドをシステム制御部３００へ送信する場合に、現象フィールドの値（すなわち、言語情報ＴＩの不具合の内容）を外部（管理端末ＡＴ）へ通知する。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【００７０】
Ｃ．第３実施例：
本発明の第３実施例では、不具合を所定の条件にしたがって分類した分類情報を用いて、自動回避処理と、自動復旧処理との処理対象を限定する構成について説明する。以下では、第２実施例と異なる構成および動作を有する部分についてのみ説明する。なお、図中において第２実施例と同様の構成部分については先に説明した第２実施例と同様の符号を付し、その詳細な説明を省略する。
【００７１】
（Ｃ−１）ネットワーク中継装置の概略構成：
図１４は、第３実施例におけるネットワークシステム１０００ｂの概略構成を示す説明図である。図８に示した第２実施例との違いは、ルータＡ〜Ｃが、ルータ１０ａに代えてルータ１０ｂから構成されている点である。ルータ１０ａとルータ１０ｂとの違いは、不具合処理制御部１００ａに代えて不具合処理制御部１００ｂを、記憶部５００ａに代えて記憶部５００ｂを、それぞれ備える点であり、他の構成や動作は図８に示した第２実施例と同様である。
【００７２】
不具合処理制御部１００ａと、不具合処理制御部１００ｂとの違いは、回避処理部１２０に代えて回避処理部１２０ｂを、復旧処理部１３０に代えて復旧処理部１３０ｂを、それぞれ備える点と、さらに、条件取得部１４０を備える点である。条件取得部１４０は、回避処理部１２０ｂもしくは復旧処理部１３０ｂによる処理の対象を限定するための分類情報（詳細は後述）を取得する機能を有する。
【００７３】
記憶部５００ａと、記憶部５００ｂとの違いは、不具合情報テーブル５１０ａに代えて不具合情報テーブル５１０ｂを、不具合処理設定テーブル５３０ａに代えて不具合処理設定テーブル５３０ｂを、それぞれ備える点である。
【００７４】
（Ｃ−２）テーブル構成：
図１５は、第３実施例における不具合情報テーブル５１０ｂの一例を示す説明図である。図９に示した第２実施例との違いは、識別情報ＤＩに関連付けられて、さらに、分類情報ＭＩが含まれる点であり、他の構成は第２実施例と同様である。
【００７５】
分類情報ＭＩは、不具合情報テーブル５１０ｂに格納されている既知の不具合を、所定の条件にしたがって分類するための情報である。分類情報ＭＩは、症状フィールドと、復旧時の影響フィールドと、重要度フィールドとを含む。なお、この分類情報はあくまで一例であり、分類情報は、既知の不具合を所定の条件に従って分類するものであれば任意に定めることができる。
【００７６】
症状フィールドには、不具合が顕在化した場合に、ルータ１０bに生じる症状の種類（例えば、表示機能障害、通信機能障害、管理機能障害等）が格納されている。復旧時の影響フィールドには、システム制御部３００において復旧コマンドを実行した際の、ルータ１０bへの影響（例えば、ルータ１０bの再起動を要する、ルータ１０b内の機能モジュールの再起動を要する、再起動は要しない等）が格納されている。重要度フィールドには、不具合の重要度が格納されている。不具合の重要度は、任意に定めることができるが、例えば、通信機能に関する障害は重要度を高く（重要度Ａ）、管理機能に関する障害は重要度を中程度に（重要度Ｂ）、表示機能に関する障害は重要度を低く（重要度Ｃ）することができる。
【００７７】
例えば、図１５のエントリＥ１では、不具合番号００１で識別される不具合が顕在化した場合、ルータ１０bには表示機能障害が生じることを示している。また、不具合番号００１で識別される不具合に対する修復コマンドを実行した場合は、ルータ１０b内の機能モジュールの再起動が必要であることを示している。さらに、不具合番号００１で識別される不具合は、重要度が低い（重要度Ｃ）ことを示している。
【００７８】
図１６は、第３実施例における不具合処理設定テーブル５３０ｂの一例を示す説明図である。図１０に示した第２実施例との違いは、自動回避処理フィールドと、自動復旧処理フィールドに格納されている内容のみであり、他の構成は第２実施例と同様である。自動回避処理フィールドには、不具合の重要度が、重要度Ａ、もしくは、重要度Ｂである場合に、自動回避処理を行う旨が格納されている。自動復旧処理フィールドには、不具合が顕在化した場合にルータ１０bに生じる症状の種類が通信機能障害である場合に、自動復旧処理を行う旨が格納されている。
【００７９】
（Ｃ−３）不具合対応処理：
（Ｃ−３−１）不具合情報取得処理：
第３実施例における不具合情報取得処理の手順は、図１１に示した第２実施例と同様である。
【００８０】
（Ｃ−３−２）自動回避処理：
第３実施例における自動回避処理の手順は、図６に示した第２実施例と基本的には同じである。ただし、第３実施例では、ステップＳ２０４において、回避処理部１２０ｂは、コマンド取得部２００から受信したコマンドに加えて、不具合処理設定テーブル５３０ｂの自動回避処理フィールドに格納されている指定内容をキーとして不具合情報テーブル５１０ｂを検索し、一致するエントリがあるか否かを判定する。具体的には、例えば、図６のステップＳ２０４において回避処理部１２０ｂは、コマンド取得部２００から受信したコマンドと、図１６の自動回避処理フィールドの値「重要度Ａ、重要度Ｂ」とをキーとして、不具合情報テーブル５１０ｂを検索する。
【００８１】
（Ｃ−３−３）自動復旧処理：
第３実施例における自動復旧処理の手順は、図１２に示した第２実施例と基本的には同じである。ただし、第３実施例では、ステップＳ４０４において、復旧処理部１３０ｂは、不具合処理設定テーブル５３０ｂの自動復旧処理フィールドに格納されている指定内容をキーとして、不具合情報テーブル５１０ｂを検索し、一致するエントリがあるか否かを判定する。具体的には、例えば、図１２のステップＳ４０４において復旧処理部１３０ｂは、図１６の自動復旧処理フィールドの値「通信機能障害」をキーとして、不具合情報テーブル５１０ｂを検索する。
【００８２】
（Ｃ−４）条件取得処理：
図１７は、自動復旧処理における処理内容の限定に使用される分類情報ＭＩを指定するための指定画面の一例を示す説明図である。指定画面ＥＷは、管理端末ＡＴからの要求を受信した条件取得部１４０が、管理端末ＡＴのディスプレイ上に表示させる画面である。指定画面ＥＷは、実行トリガ指定部ＦＴと、実行レベル指定部ＦＬと、設定ボタンＢＯと、キャンセルボタンＢＮとを含んでいる。
【００８３】
実行トリガ指定部ＦＴは、自動復旧処理を実行するタイミングを指定するためのフィールドである。図１７の例では、自動復旧処理は、不具合情報取得処理を実行した際に併せて実行されるように指定されている。このようにすれば、不具合情報取得処理が行われるタイミングを、ネットワーク管理者が指定可能となるため、利便性が向上する。
【００８４】
実行レベル指定部ＦＬは、自動復旧処理における処理内容の限定に使用される分類情報ＭＩを指定するためのフィールドである。図１７の例では、実行レベル指定部ＦＬは、不具合情報テーブル５１０ｂ（図１５）の分類情報ＭＩの種類に対応した３つの項目から構成され、各項目は、ラジオボタンＲＢを用いて択一的に選択可能な構成とされている。各項目は、さらに、分類情報ＭＩの各フィールドが採り得る値に対応したサブ項目を含んでいる。ラジオボタンＲＢで選択された項目についてのサブ項目は、さらに、チェックボックスで複数選択可能な構成となっている。ラジオボタンＲＢで選択されていない項目についてのサブ項目は、グレーアウトされている。
【００８５】
ネットワーク管理者は、指定画面ＥＷを用いて所望の実行トリガと、実行レベルとを指定した後、設定ボタンＢＯを押下する。設定ボタンＢＯ押下により、条件取得部１４０は指定画面ＥＷに指定されている内容を取得する。さらに、条件取得部１４０は、実行トリガ指定部ＦＴにおいて指定されている内容をもとに、不具合処理設定テーブル５３０ｂの情報取得有無フィールドを更新する。また、条件取得部１４０は、実行レベル指定部ＦＬにおいて指定されている内容をもとに、不具合処理設定テーブル５３０ｂの自動復旧処理フィールドを更新する。
【００８６】
条件取得部１４０は、自動回避処理における処理内容の限定に使用される分類情報ＭＩの指定についても、上記と同様の方法にて取得することができる。詳細は省略する。
【００８７】
以上のように、第３実施例によれば、条件取得部１４０は、不具合情報記憶部としての不具合情報テーブル５１０ｂに格納されている不具合に関する情報のうち、回避処理部１２０ｂによる処理（自動回避処理）、もしくは、復旧処理部１３０ｂによる処理（自動復旧処理）の対象となる情報（エントリ）を限定するための分類情報ＭＩを取得する。このため、自動回避処理もしくは自動復旧処理の処理対象となる不具合情報を限定することができ、きめ細かな不具合対応処理を実現することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【００８８】
Ｄ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲で種々の構成を採ることができる。例えば、ソフトウェアによって実現した機能は、ハードウェアによって実現するものとしてもよい。そのほか、以下のような変形が可能である。
【００８９】
Ｄ１．変形例１：
上記実施例では、不具合情報取得部による不具合情報取得処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【００９０】
例えば、不具合情報取得部は、不具合処理設定テーブルの取得先フィールドで指定されている場所にアクセスし、不具合情報を取得するものとしたが、不具合情報は外部（例えば、サーバＳＶ）からルータへ配信されるものとしてもよい。この場合、外部からの不具合情報の配信を受信した際に、不具合情報取得部は、不具合情報テーブルの内容を更新することができる。
【００９１】
Ｄ２．変形例２：
上記実施例では、回避処理部による自動回避処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【００９２】
例えば、自動回避処理は、回避処理部がコマンドを受信した際に実行される処理であるものとして説明した。しかし、ネットワーク中継装置内に潜在する不具合が顕在化するトリガが、システム制御部によるコマンドの実行以外の要因であるタイプの不具合（例えば、回線に対する負荷がトリガとなる不具合や、ＣＰＵ利用率に起因する不具合等）がある場合、回避処理部は、図６で示した自動回避処理と同様の処理を、コマンド受信時とは別のタイミングで（例えば定期的に）実行することとしてもよい。なお、その場合、不具合情報テーブル内に、各不具合のタイプ（コマンドの実行に起因するものか、その他の要因に起因するものか）を識別するための情報を格納するためのフィールドを設けることが好ましい。
【００９３】
例えば、回避処理部は、回避コマンドをシステム制御部へ送信する場合に、管理端末のディスプレイへの不具合情報の表示を行うものとした。しかし、管理端末のディスプレイへの不具合情報の表示は、あくまで外部への通知手段の一例であり、種々の通知手段を採用することができる。具体的には、例えば、回避処理部は、不具合情報を予め指定されたアドレス宛にメール送信することによって、外部への通知を行ってもよい。また、ＳＮＭＰ（Simple Network Management Protocol）を用いたネットワーク管理であれば、ＳＮＭＰトラップを用いた通知を行ってもよい。さらに、Ｓｙｓｌｏｇを用いて通知を行ってもよい。さらに、回避処理部は、管理端末への不具合情報の表示に代えて、回避コマンド発行ログを記録することとしてもよい。回避コマンド発行ログは、所定の場所に保存し、いつでも参照可能な構成としてもよいし、所定の間隔で管理端末に送信されてもよい。
【００９４】
例えば、回避処理部は、回避コマンドをシステム制御部へ送信する前に、ネットワーク管理者の確認を得る（具体的には、例えば、管理端末のディスプレイに対して確認を促すメッセージを表示し、ＯＫボタン押下により確認を得たとみなす等）構成としてもよい。こうすれば、ネットワーク管理者は、回避コマンドの発行有無を管理することができ、利便性が向上する。さらに、第３実施例においては、分類情報ＭＩに基づいて、ネットワーク管理者への確認の要否を切り替えても良い。具体的には、例えば、重要度がＡの不具合情報に対する回避コマンドはネットワーク管理者への確認を得てからコマンドを発行し、重要度がＢ、Ｃの不具合情報に対する回避コマンドはネットワーク管理者への確認なしでコマンドを発行する、等の制御を行ってもよい。
【００９５】
例えば、回避処理部は、上記実施例で説明した処理に加えて、さらに、不具合情報の学習処理を行ってもよい。具体的には、例えば、回避処理部は、コマンド取得部から取得したコマンドをシステム制御部へ送信した後（図６：ステップＳ２１４）、システム制御部によるコマンドの実行結果（戻り値）を取得する。実行結果が正しくない旨の戻り値を取得した場合、回避処理部は、図６のステップＳ２１４において送信したコマンドは不具合があるコマンドであると学習し、記憶部内のテーブル（もしくは、不具合情報テーブルでもよい）に、当該コマンドを追加する。また、回避処理部は、学習した不具合情報を、外部（サーバＳＶ）へ定期的に送信してもよい。このようにすれば、ルータを運用しつつ発見された不具合情報を自動的に収集することができる。自動的に収集された不具合情報は、ルータの信頼性向上のために役立てることができる。
【００９６】
Ｄ３．変形例３：
上記実施例では、復旧処理部による自動復旧処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【００９７】
例えば、自動復旧処理は、不具合情報取得処理のサブルーチンとして実行されるものとして説明した。しかし、自動復旧処理は、不具合情報取得処理とは独立して実行されてもよい。自動復旧処理が実行されるタイミングは、管理者により予め指定されたスケジュールに従って実行されてもよいし、定期的に自動で実行されてもよい。なお、定期的に自動で実行する場合は、ルータの処理負荷が軽い時間帯（例えば深夜）に実行することが好ましい。
【００９８】
例えば、復旧処理部は、１度自動復旧処理を終えた不具合情報テーブル内のエントリについては、以降処理を行わないようにしてもよい。具体的には、例えば、復旧処理部は、ステップＳ４１２（図１２）の後において、不具合情報テーブルの処理済みのエントリに対して「対応済フラグ」を付与することによって、２度目の処理を省略することができる。
【００９９】
例えば、復旧処理部は、復旧コマンドをシステム制御部へ送信する場合に、管理端末のディスプレイへの不具合情報の表示を行うものとした。しかし、管理端末のディスプレイへの不具合情報の表示は、あくまで外部への通知手段の一例であり、上記の変形例２と同様に、種々の通知手段を採用することができる。
【０１００】
例えば、復旧処理部は、復旧コマンドをシステム制御部へ送信する前に、ネットワーク管理者の確認を得る構成としてもよい。詳細は、上記変形例２の例示と同様である。
【０１０１】
Ｄ４．変形例４：
上記実施例では、ネットワーク中継装置が備える各テーブルについて説明した。しかし、上記実施例の態様はあくまで例示であり、種々の変形を加えることができる。例えば、テーブルが備えるフィールドの項目を追加、削除、変更することができる。また、各テーブルには、ダイレクトマップ方式を用いることも可能である。
【０１０２】
例えば、不具合情報テーブルのコマンドＣＭにはシステム制御部が実行可能なコマンドを用いるものとして説明した。しかし、コマンドＣＭはルータ１０が識別可能な言語を用いて表わされていれば良く、例えば、機械語等が用いられても良い。
【０１０３】
例えば、不具合情報テーブルに、不具合情報が公開された日時を格納するための公開日時フィールドを備えることとしてもよい。この場合、不具合情報取得処理において、公開日時フィールドの内容を使用することによって、テーブルの整合性を保ちつつ不具合情報テーブルを更新することが容易となる。
【０１０４】
例えば、不具合情報テーブルに、不具合情報の有効期限を格納するための有効期日フィールドを備えることとしてもよい。この場合、有効期日フィールドの内容を用いて、自動回避処理と、自動復旧処理との処理対象を限定することも可能となり、きめ細かな不具合対応処理が可能となる。
【０１０５】
Ｄ５．変形例５：
上記実施例では、ネットワークシステムの構成の一例を示した。しかし、ネットワークシステムの構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。具体的には、例えば、ネットワークシステムを構成するサーバやネットワーク中継装置、管理端末の台数は任意に決定することができる。
【０１０６】
Ｄ６．変形例６：
上記実施例では、ネットワーク中継装置の構成の一例を示した。しかし、ネットワーク中継装置の構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。具体的には、例えば、システム制御部は、宛先判定部と、装置管理部とを含むものとしたが、他の機能部（例えば、処理内容の情報を取得して統計情報を生成するための統計処理部等）を備えることとしてもよい。
【０１０７】
Ｄ７．変形例７：
上記第１実施例では回避処理部による自動回避処理を行う構成を、上記第２実施例では、さらに、復旧処理部による自動復旧処理を行う構成を、上記第３実施例では、さらに、条件取得部による自動回避処理と自動復旧処理の処理対象の限定を行う構成を、それぞれ説明した。しかし、上記実施例における各構成はあくまで例示であり、他の構成を採用することもできる。例えば、ネットワーク中継装置において、回避処理部は備えずに、復旧処理部のみを備える（すなわち、自動復旧処理のみを行う）構成としてもよい。
【符号の説明】
【０１０８】
１０,１０ａ,１０ｂ…ネットワーク中継装置（ルータ）
１００,１００ａ,１００ｂ…不具合処理制御部
１１０,１１０ａ…不具合情報取得部
１２０,１２０ｂ…回避処理部
１３０,１３０ｂ…復旧処理部
１４０…条件取得部
２００…コマンド取得部
３００…システム制御部
３１０…宛先判定部
３２０…装置管理部
４００…転送処理部
５００,５００ａ,５００ｂ…記憶部
５１０,５１０ａ,５１０ｂ…不具合情報テーブル
５２０…プロトコル設定テーブル
５３０,５３０ａ,５３０ｂ…不具合処理設定テーブル
１０００,１０００ａ,１０００ｂ…ネットワークシステム
ＲＢ…ラジオボタン
ＤＢ…不具合情報データベース
ＭＩ…分類情報
ＤＩ…識別情報
ＴＩ…言語情報
ＦＬ…実行レベル指定部
ＣＭ…コマンド
ＢＮ…キャンセルボタン
ＢＯ…設定ボタン
ＦＴ…実行トリガ指定部
ＡＴ…管理端末
ＳＶ…サーバ
ＥＷ…指定画面
ＩＮＴ…インターネット
【図１】
2012124803.tif 000003
【図２】
2012124803.tif 000004
【図３】
2012124803.tif 000005
【図４】
2012124803.tif 000006
【図５】
2012124803.tif 000007
【図６】
2012124803.tif 000008
【図７】
2012124803.tif 000009
【図８】
2012124803.tif 000010
【図９】
2012124803.tif 000011
【図１０】
2012124803.tif 000012
【図１１】
2012124803.tif 000013
【図１２】
2012124803.tif 000014
【図１３】
2012124803.tif 000015
【図１４】
2012124803.tif 000016
【図１５】
2012124803.tif 000017
【図１６】
2012124803.tif 000018
【図１７】
2012124803.tif 000019