説明

ネットワーク中継装置、および、ネットワーク中継装置の制御方法

【課題】ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することが可能な技術を提供する。
【解決手段】ネットワーク中継装置は、コマンドを取得するコマンド取得部と、取得したコマンドを実行するシステム制御部と、ネットワーク中継装置に潜在する既知の不具合に関する情報を識別するための識別情報と、不具合が顕在化し得る状態であるか否かを確認するための第1の確認コマンドと、不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、取得したコマンドと、第1の確認コマンドとを用いて、ネットワーク中継装置が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定し、不具合が顕在化し得ないと判定した場合は取得したコマンドを、不具合が顕在化し得ると判定した場合は回避コマンドを、システム制御部へ送信する回避処理部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク中継装置に関し、特に、ネットワーク中継装置において不具合を回避する技術に関する。
【背景技術】
【0002】
例えば、小規模なクライアントサーバシステムにおいて、サービスを提供するサーバで不具合が発生した場合は、サーバによるサービスの提供を一旦停止させた状態で、サーバに修正プログラムをインストール後、再起動する等の対策を講じて不具合を解消することが一般的である。しかし、ICT(Information and Communication Technology)技術の進展に伴い、高い信頼性を持つネットワークインフラストラクチャが求められる近年では、ネットワークインフラストラクチャを構成するネットワーク中継装置(例えば、LANスイッチやルータ)に不具合が発見された場合であっても、サービスを停止させずに継続運用することが求められる。
【0003】
ネットワーク中継装置が提供するサービスを継続運用させるための1つの方法として、ネットワーク中継装置の冗長化がある。例えば、運用系と、予備系との2台のネットワーク中継装置を予め準備しておき、運用系のネットワーク中継装置に対する不具合の対策(例えば、装置の設定変更、修正プログラムのインストール、装置の再起動等)を実施している間、予備系のネットワーク中継装置を使用してサービスの提供を継続する(例えば、特許文献1)。
【0004】
また、ネットワーク中継装置が提供するサービスを継続運用させるための他の方法として、ネットワーク管理者の運用による不具合の顕在化の回避がある。例えば、あるネットワーク中継装置において既知の不具合がまだ顕在化していない場合、ネットワーク管理者は、ネットワーク中継装置の定期メンテナンスの日までの間、ネットワーク中継装置に対して既知の不具合を回避するための運用(例えば、ネットワーク中継装置に対して特定のコマンドを入力した場合に顕在化する不具合が知られている場合、当該コマンドを入力しないよう運用する等。)を行う。そして、ネットワーク管理者は、ネットワーク中継装置の定期メンテナンスの際に、はじめてネットワーク中継装置に対する既知の不具合の対策を実施する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平11-41282号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、ネットワークインフラストラクチャを構成する全てのネットワーク中継装置を冗長化することは、コスト面において好ましくないという問題があった。また、ネットワーク管理者の運用による不具合の顕在化の回避を行うことは、非常に労力を要する上に、ヒューマンエラーの危険性があるという問題があった。
【0007】
本発明は、ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0009】
[適用例1]
ネットワーク中継装置であって、
前記ネットワーク中継装置へのコマンドを取得するコマンド取得部と、
取得した前記コマンドを実行するシステム制御部と、
前記ネットワーク中継装置に潜在する既知の不具合に関する情報であって、前記不具合を識別するための識別情報と、前記不具合が顕在化し得る状態であるか否かを確認するための第1の確認コマンドと、前記不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、
取得した前記コマンドと、前記第1の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記システム制御部へ送信する回避処理部と、
を備える、ネットワーク中継装置。
このような構成とすれば、回避処理部は、取得したコマンドと、第1の確認コマンドとを用いて、ネットワーク中継装置が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定し、不具合が顕在化し得る状態であると判定した場合は、不具合の顕在化を回避するための回避コマンドをシステム制御部へ送信するため、ネットワーク中継装置に潜在する既知の不具合の顕在化を自動的に回避することができる。
【0010】
[適用例2]
適用例1記載のネットワーク中継装置であって、
前記回避処理部は、
取得した前記コマンドを用いて前記不具合情報記憶部を検索し、
検索により得られた前記第1の確認コマンドを前記システム制御部へ送信し、
前記システム制御部より得られた前記第1の確認コマンドの実行結果を用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定する、ネットワーク中継装置。
このような構成とすれば、回避処理部は、取得したコマンドを用いて不具合情報記憶部を検索し、検索により得られた第1の確認コマンドをシステム制御部に実行させる。この結果、回避処理部は、取得したコマンドに対応する第1の確認コマンドを用いて、ネットワーク中継装置の状態を判定することができる。
【0011】
[適用例3]
適用例1または2記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合が既に顕在化しているか否かを確認するための第2の確認コマンドが記憶され、
前記ネットワーク中継装置は、さらに、
前記第2の確認コマンドを前記システム制御部へ送信し、得られた前記第2の確認コマンドの実行結果を用いて、前記ネットワーク中継装置において前記不具合が顕在化しているか否かを判定する復旧処理部を備える、ネットワーク中継装置。
このような構成とすれば、復旧処理部は、第2の確認コマンドを用いてネットワーク中継装置において不具合が顕在化しているか否かを判定するため、適用例1の効果に加えてさらに、ネットワーク中継装置において既に顕在化している不具合を検出することができる。
【0012】
[適用例4]
適用例3記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を解消するための復旧コマンドが記憶され、
前記復旧処理部は、さらに、前記不具合が顕在化していると判定した場合は、前記復旧コマンドを前記システム制御部へ送信する、ネットワーク中継装置。
このような構成とすれば、復旧処理部は、ネットワーク中継装置において既に不具合が顕在化していると判定した場合は、復旧コマンドをシステム制御部へ送信するため、適用例1の効果に加えてさらに、ネットワーク中継装置において既に顕在化している不具合を自動的に解消することができる。
【0013】
[適用例5]
適用例1ないし4のいずれか一項記載のネットワーク中継装置であって、さらに、
外部から提供される前記既知の不具合に関する情報を取得し、取得した前記情報を用いて前記不具合情報記憶部に格納されている内容を更新する不具合情報取得部を備える、ネットワーク中継装置。
このような構成とすれば、不具合情報取得部は、外部から提供される既知の不具合に関する情報を取得して不具合情報記憶部に格納されている内容を更新するため、不具合情報記憶部内の情報を自動的に更新することができる。
【0014】
[適用例6]
適用例1ないし5のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を所定の条件にしたがって分類した分類情報が記憶され、
前記ネットワーク中継装置は、さらに、
前記不具合情報記憶部に格納されている前記不具合に関する情報のうち、前記回避処理部もしくは前記復旧処理部による処理の対象となる情報を限定するために前記分類情報を取得する条件取得部を備える、ネットワーク中継装置。
このような構成とすれば、回避処理部もしくは復旧処理部による処理の対象となる不具合に関する情報を限定することができる。
【0015】
[適用例7]
適用例6記載のネットワーク中継装置であって、
前記所定の条件は、前記不具合が顕在化した際に前記ネットワーク中継装置に生じる症状の種類と、前記復旧コマンドを実行した際の前記ネットワーク中継装置への影響と、前記不具合の重要度と、のうちの少なくとも1つである、ネットワーク中継装置。
このような構成とすれば、回避処理部もしくは復旧処理部による処理の対象を、不具合が顕在化した際にネットワーク中継装置に生じる症状の種類と、復旧コマンドを実行した際のネットワーク中継装置への影響と、不具合の重要度と、の少なくとも1つの条件によって限定することができる。
【0016】
[適用例8]
適用例1ないし7のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合の顕在化を回避するための手段と、を示す言語情報が記憶され、
前記回避処理部は、前記回避コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
このような構成とすれば、回避処理部による回避コマンド発行時に、自然言語を用いて表わされた不具合の内容と、不具合の顕在化を回避するための手段と、のうちの少なくとも一方を外部へ通知することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【0017】
[適用例9]
適用例3ないし8のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合を解消するための手段と、を示す言語情報が記憶され、
前記復旧処理部は、前記復旧コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
このような構成とすれば、復旧処理部による復旧コマンド発行時に、自然言語を用いて表わされた不具合の内容と、不具合を解消するための手段と、のうちの少なくとも一方を外部へ通知することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【0018】
なお、本発明は、種々の態様で実現することが可能である。例えば、ネットワーク中継装置、ネットワーク中継装置の制御方法、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記憶媒体等の形態で実現することができる。
【図面の簡単な説明】
【0019】
【図1】本発明の一実施例としてのネットワークシステムの概略構成を示す説明図である。
【図2】不具合情報テーブルの一例を示す説明図である。
【図3】プロトコル設定テーブルの一例を示す説明図である。
【図4】不具合処理設定テーブルの一例を示す説明図である。
【図5】不具合情報取得処理の手順を示すフローチャートである。
【図6】自動回避処理の手順を示すフローチャートである。
【図7】自動回避処理が行われる様子を示す説明図である。
【図8】第2実施例におけるネットワークシステムの概略構成を示す説明図である。
【図9】第2実施例における不具合情報テーブルの一例を示す説明図である。
【図10】第2実施例における不具合処理設定テーブルの一例を示す説明図である。
【図11】第2実施例における不具合情報取得処理の手順を示すフローチャートである。
【図12】第2実施例における自動復旧処理の手順を示すフローチャートである。
【図13】自動復旧処理が行われる様子を示す説明図である。
【図14】第3実施例におけるネットワークシステムの概略構成を示す説明図である。
【図15】第3実施例における不具合情報テーブルの一例を示す説明図である。
【図16】第3実施例における不具合処理設定テーブルの一例を示す説明図である。
【図17】自動復旧処理における処理内容の限定に使用される分類情報MIを指定するための指定画面の一例を示す説明図である。
【発明を実施するための形態】
【0020】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
【0021】
A.第1実施例:
(A−1)ネットワーク中継装置の概略構成:
図1は、本発明の一実施例としてのネットワークシステム1000の概略構成を示す説明図である。ネットワークシステム1000は、サーバSVと、管理端末ATと、3台のレイヤ3のネットワーク中継装置10(ルータ10:A、B、C)とを備えている。ルータA〜Cは、いずれも同じ構成および動作を有する装置であり、回線によって相互に接続されている。なお、以降では、ルータA〜Cを相互に識別する必要がある場合のみ、単に「ルータA」等と呼び、ルータの構成や動作の説明等では「ルータ10」と呼ぶ。
【0022】
サーバSVは、インターネットINTを介してルータAと接続されている。サーバSVは、ルータ10の既知の不具合に関する情報を格納した不具合情報データベースDBを備えている。なお、以降では、不具合に関する情報を単に「不具合情報」とも呼ぶ。
【0023】
管理端末ATは、ルータAに接続され、ルータA〜Cを管理するための端末(例えば、パーソナルコンピュータ)である。
【0024】
ルータ10は、自身に接続される他のルータや端末との間のパケットによる通信を中継するレイヤ3のネットワーク中継装置である。ルータ10は、不具合処理制御部100と、コマンド取得部200と、システム制御部300と、転送処理部400と、記憶部500とを備えている。ルータ10内の各機能部は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)を含む回路により構成されている。CPUは、ROMに記憶された制御プログラムをRAMにロードして実行することで、各機能部として動作する。なお、ルータ10内の各機能部は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)によって実現されることとしてもよい。なお、図1では便宜上、説明上必要としないルータ10の構成部については図示を省略している。このことは後述する図においても同様である。
【0025】
不具合処理制御部100は、ルータ10について既に発見されている(既知の)不具合に対応するための処理である不具合対応処理を実行する機能を有する。不具合処理制御部100は、さらに、不具合情報取得部110と、回避処理部120とを含む。不具合情報取得部110は、ルータ10の外部(すなわち、サーバSV)の不具合情報データベースDBから提供される既知の不具合情報を取得し、不具合情報テーブル510を更新する処理(不具合対応処理:不具合情報取得処理)を実行する。詳細は後述する。回避処理部120は、既知の不具合の顕在化を回避するための処理(不具合対応処理:自動回避処理)を実行する。詳細は後述する。
【0026】
コマンド取得部200は、ルータ10に対して発行される種々のコマンドを取得する機能を有する。コマンドとは、ルータ10への命令であり、例えば、ルータ10の設定内容を表示する命令や、ルータ10内の各プロセスのCPU利用率を表示する命令や、ルータ10内のインタフェースの状態を表示する命令等を含む。ルータ10へのコマンドは、例えば、ルータ10に接続されている管理端末ATから発行される。
【0027】
システム制御部300は、不具合処理制御部100やコマンド取得部200から受信したコマンドを実行するほか、ルータ10の各部を制御する機能を有する。システム制御部300は、さらに、宛先判定部310と、装置管理部320とを含む。宛先判定部310は、ルータ10が受信したパケットに含まれるヘッダ情報を、図示しないルーティングテーブル等を用いて解析し、受信データの宛先検索処理を行う機能を有する。装置管理部320は、ルータ10を管理する機能を有する。装置管理部320は、例えば、ルータ10における障害の発生を検知する機能や、ルータ10が中継するパケットの統計情報を取得する機能などを含むことができる。
【0028】
転送処理部400は、図示しないポートを経由して外部とパケットを送受信する機能や、ルータ10内の各部へ制御用情報等のデータを転送する機能を有する。
【0029】
記憶部500は、例えば、CAM(Content Addressable Memory)とよばれる特殊なメモリやDRAM(Dynamic Random Access Memory)等により構成されている。記憶部500には、不具合情報テーブル510と、プロトコル設定テーブル520と、不具合処理設定テーブル530とが記憶されている。これら各テーブルについての詳細は後述する。
【0030】
(A−2)テーブル構成:
図2は、不具合情報テーブル510の一例を示す説明図である。不具合情報記憶部としての不具合情報テーブル510は、ルータ10に潜在する既知の不具合に関する情報を記憶するためのテーブルである。不具合情報テーブル510は、識別情報DIと、言語情報TIと、コマンドCMとを含んでいる。識別情報DIは、不具合番号フィールドを含み、各エントリに格納されている不具合を相互に識別するための識別情報として、一意な番号が付与されている。
【0031】
言語情報TIは、人間が識別可能な言語を用いて表わした不具合情報である。言語情報TIは、現象フィールドと、発生条件フィールドと、回避手段フィールドとを含む。現象フィールドには、不具合の内容、すなわち、不具合が顕在化した場合にルータ10に発生する現象(症状)が格納されている。発生条件フィールドには、ルータ10において、不具合が顕在化するための条件が格納されている。なお、不具合が顕在化するための条件とは、例えば、ルータ10の設定内容や、不具合が顕在化するトリガとなるコマンド、またはそれらの組合せ等を意味する。回避手段フィールドには、不具合の顕在化を回避するための手段が格納されている。
【0032】
コマンドCMは、ルータ10が識別可能な言語(すなわち、本実施例では、システム制御部300が実行可能なコマンド)を用いて表わした不具合情報である。
コマンドCMは、発生条件コマンドフィールドと、回避コマンドフィールドとを含む。発生条件コマンドフィールドには、ルータ10において不具合が顕在化し得る状態であるか否かを確認するためのコマンド(以降、「第1の確認コマンド」とも呼ぶ。)が格納されている。第1の確認コマンドは、換言すれば、ルータ10が、発生条件フィールドに格納された前提条件を満たすか否かを確認するためのコマンドである。回避コマンドフィールドには、不具合の顕在化を回避するために、代替的に用いられるコマンド(以降、「回避コマンド」とも呼ぶ。)が格納されている。回避コマンドは、換言すれば、回避手段フィールドに格納された、不具合の顕在化を回避するための手段を実行するためのコマンドである。
【0033】
図2のコマンドCMにおいて使用されている言語の動作概要の一例を以下に示す。なお、以下において「XXX」は、ルータ10に対して発行される種々のコマンドの汎用表記とする。また、「aaa」は任意の文字列を、「b」は任意の数字を意味する。
(1)CHECK:XXX
システム制御部300はコマンドXXXを実行し、呼び出し元に対して実行結果が正しいか否かを示す戻り値を返す。
(2)CHECK EXIST:aaa
システム制御部300はプロトコル設定テーブル520を参照し、設定情報としてaaaが存在するか否かの戻り値を返す。
(3)CHECK IN:XXX
システム制御部300はコマンド取得部200に問い合わせを行い、コマンド取得部200が受信したコマンドがXXXであるか否かの戻り値を返す。
(4)CONVERSION:XXX
システム制御部300は回避コマンドを実行する。
(5)CONFIG:XXX
システム制御部300はXXXをプロトコル設定テーブル520に設定する。
(6)CONFIG:PAUSE b
システム制御部300はb秒間、コマンドの実行を遅延させる。
【0034】
例えば、図2のエントリE1では、不具合番号001で識別される不具合は、ルータ10に対して「Show xxxa」というコマンドが発行された場合、本来表示されるはずのカウンタ情報が表示されないことを示している。また、不具合番号001で識別される不具合は、前提条件として、ルータ10においてプロトコルAとプロトコルBとの両方を設定している場合に発生する可能性があることを示している。さらに、不具合番号001で識別される不具合を回避するためには、ルータ10に対して「Show xxxa」というコマンドが入力された際、システム制御部300は「CONVERSION:Show xxxa −F」という回避コマンドを実行すればよいことを示している。
【0035】
図3は、プロトコル設定テーブル520の一例を示す説明図である。プロトコル設定テーブル520は、ルータ10に設定されている通信プロトコル(通信規約)を記憶するためのテーブルである。図3の例では、ルータ10には、プロトコルBと、プロトコルAとが設定されている。
【0036】
図4は、不具合処理設定テーブル530の一例を示す説明図である。不具合処理設定テーブル530は、不具合処理制御部100が実施する不具合対応処理において使用されるテーブルである。不具合処理設定テーブル530は、情報取得有無フィールドと、取得先フィールドと、自動回避処理フィールドとを含んでいる。情報取得フィールドには、不具合情報取得処理を行うか否かを示す情報が格納されている。取得先フィールドには、不具合情報取得処理において、不具合情報を取得する場所を示す情報が格納されている。自動回避処理フィールドには、自動回避処理を行うか否かを示す情報が格納されている。
【0037】
例えば、図4の例では、不具合情報取得処理を行うことと、不具合情報取得処理においてIPアドレスが10.2.1.1のサーバ(本実施例では図1のサーバSVであるものとする。)から不具合情報を取得することと、自動回避処理を行うことと、がわかる。なお、図4の例では、不具合情報取得先として、外部サーバのグローバルIPアドレスが格納されているが、不具合情報取得先は、外部サーバに限られず、他の場所が格納されていてもよい。例えば、ルータ10に接続されたリムーバブルディスクへのパス等が格納されていてもよい。また、不具合処理設定テーブル530において、複数のエントリを設けてもよい。複数のエントリを設ける場合、例えば、複数のエントリに格納された全ての取得先から不具合情報を取得しても良いし、一方のエントリをプライマリの取得先、他方のエントリをセカンダリの取得先として、不具合情報を取得しても良い。
【0038】
(A−3)不具合対応処理:
(A−3−1)不具合情報取得処理:
図5は、不具合情報取得処理の手順を示すフローチャートである。まず、不具合情報取得部110は、不具合情報を取得するか否かを判定する(ステップS102)。具体的には、不具合情報取得部110は、不具合処理設定テーブル530の情報取得有無フィールドの内容を参照することで、ステップS102の判定を行う。不具合情報を取得しない場合(ステップS102:NO)、不具合情報取得部110は、処理を終了させる。
【0039】
一方、不具合情報を取得する場合(ステップS102:YES)、不具合情報取得部110は、不具合処理設定テーブル530の取得先フィールドに格納されている場所にアクセスし、不具合情報を取得する(ステップS104)。具体的には、図4の例では、不具合情報取得部110は、サーバSV(図1)の不具合情報データベースDBにアクセスし、不具合情報を取得する。その後、不具合情報取得部110は、取得した不具合情報を用いて不具合情報テーブル510に格納されている内容を更新する(ステップS106)。具体的には、図4の例では、不具合情報取得部110は、サーバSV(図1)の不具合情報データベースDBから取得した不具合情報を用いて、不具合情報テーブル510に格納されている内容を、その一貫性を保つような方法で更新する。
【0040】
(A−3−2)自動回避処理:
図6は、自動回避処理の手順を示すフローチャートである。図7は、自動回避処理が行われる様子を示す説明図である。自動回避処理は、回避処理部120がコマンドを受信した際に実行される処理である。
【0041】
具体的には、例えば、図7の時刻t1において、管理端末ATからルータ10へ「Show xxxa」というコマンドが入力される。ルータ10へ入力されたコマンドは、コマンド取得部200により取得され、不具合処理制御部100(回避処理部120)へ送信される。このコマンドを受信した回避処理部120は、自動回避処理を実行する。
【0042】
図6において、回避処理部120は、自動回避処理を行うか否かを判定する(ステップS202)。具体的には、回避処理部120は、不具合処理設定テーブル530の自動回避処理フィールドの内容を参照することで、ステップS202の判定を行う。自動回避処理を行わない場合(ステップS202:NO)、回避処理部120は、コマンド取得部200から受信したコマンド(すなわち、コマンド取得部200が取得したコマンド)をシステム制御部300へ送信し、処理を終了する(ステップS214)。
【0043】
一方、自動回避処理を行う場合(ステップS202:YES)、回避処理部120は、コマンド取得部200から受信したコマンド(すなわち、コマンド取得部200が取得したコマンド)をキーとして不具合情報テーブル510を検索し、一致するエントリがあるか否かを判定する(ステップS204)。一致するエントリがない場合、換言すれば、コマンド取得部200が取得したコマンドに対応する既知の不具合がない場合、回避処理部120は、処理をステップS214へ遷移させる。
【0044】
一方、一致するエントリがある場合、換言すれば、コマンド取得部200が取得したコマンドに対応する既知の不具合がある場合、回避処理部120は、一致するエントリの発生条件コマンドフィールドに格納された第1の確認コマンドを、システム制御部300へ送信する(ステップS206)。図7の時刻t2は、回避処理部120からシステム制御部300に対して、第1の確認コマンドが送信される様子を示している。第1の確認コマンドを受信したシステム制御部300は、第1の確認コマンドを実行し、呼び出し元(コマンド送信元)の回避処理部120に対して、実行結果を戻り値として返す。
【0045】
システム制御部300からの戻り値を取得した回避処理部120は、戻り値が示す内容が、発生条件フィールドの内容(すなわち、不具合が顕在化するための条件)と一致するか否かを判定する(ステップS208)。一致しない場合、回避処理部120は処理をステップS204へ遷移させる。
【0046】
一致する場合、回避処理部120は、管理端末ATのディスプレイに不具合情報を表示させる(ステップS210)。管理端末ATに表示させる不具合情報は任意に定めることができるが、不具合情報テーブル510の言語情報TIから選択されることが好ましい。例えば、不具合情報テーブル510の現象フィールドの値とすることができる。なお、管理端末ATに対して不具合情報を表示させる際は、併せて、回避コマンドを実行する旨を表示させることが好ましい。図7の時刻t3は、管理端末ATに不具合情報が表示されている様子を示している。
【0047】
不具合情報表示の後、回避処理部120は、ステップS204で一致したエントリの回避コマンドフィールドに格納された回避コマンドを、システム制御部300へ送信する(ステップS212)。その後、回避処理部120は、ステップS204へ遷移して、一致する全てのエントリについて処理を終了するまで、ステップS204〜212を繰り返す。図7の時刻t4は、回避処理部120からシステム制御部300に対して、回避コマンドが送信される様子を示している。回避コマンドを受信したシステム制御部300は、回避コマンドを実行する。なお、ステップS210と、ステップS212との実行順序は逆でもよい。
【0048】
以上のように、第1実施例によれば、回避処理部120は、コマンド取得部200が取得したコマンドと、取得したコマンドに対応する第1の確認コマンドとを用いて、ルータ10が、取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定する。具体的には、回避処理部120は、取得したコマンドを用いて不具合情報記憶部を検索し、検索により得られた第1の確認コマンドをシステム制御部300に実行させる。回避処理部120は、実行により得られた実行結果を用いて、ルータ10において取得したコマンドの実行によって不具合が顕在化し得る状態であるか否かを判定する。回避処理部120は、不具合が顕在化し得る状態であると判定した場合は、不具合の顕在化を回避するための回避コマンドをシステム制御部300へ送信する。一方、回避処理部120は、不具合が顕在化し得る状態でないと判定した場合や、ルータ10に関する既知の不具合がない場合は、取得したコマンドをシステム制御部300へ送信する。システム制御部300は、受信したコマンド(回避コマンドもしくはコマンド取得部200が取得したコマンド)を実行する。この結果、ルータ10に潜在する既知の不具合の顕在化を自動的に回避することが可能となる。
【0049】
さらに、第1実施例によれば、不具合情報取得部110は、外部(サーバSV)から提供される既知の不具合情報を取得して、ルータ10内の不具合情報記憶部としての不具合情報テーブル510に格納されている内容を更新するため、不具合情報記憶部内の情報を自動的に更新することができる。不具合情報記憶部の更新を定期的に行えば、外部から提供される最新の不具合情報を用いた自動回避処理(回避処理部120による既知の不具合の顕在化を回避するための処理)が可能となる。この結果、ルータ10の信頼性をより向上させることができる。
【0050】
さらに、第1実施例によれば、回避処理部120は、回避コマンドをシステム制御部300へ送信する場合に、現象フィールドの値(すなわち、言語情報TIの不具合の内容)を外部(管理端末AT)へ通知する。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【0051】
B.第2実施例:
本発明の第2実施例では、不具合対応処理として、さらに、顕在化した既知の不具合を解消するための自動復旧処理を備える構成について説明する。以下では、第1実施例と異なる構成および動作を有する部分についてのみ説明する。なお、図中において第1実施例と同様の構成部分については先に説明した第1実施例と同様の符号を付し、その詳細な説明を省略する。
【0052】
(B−1)ネットワーク中継装置の概略構成:
図8は、第2実施例におけるネットワークシステム1000aの概略構成を示す説明図である。図1に示した第1実施例との違いは、ルータA〜Cが、ルータ10に代えてルータ10aから構成されている点である。ルータ10とルータ10aとの違いは、不具合処理制御部100に代えて不具合処理制御部100aを、記憶部500に代えて記憶部500aを、それぞれ備える点であり、他の構成や動作は図1に示した第1実施例と同様である。
【0053】
不具合処理制御部100と、不具合処理制御部100aとの違いは、不具合情報取得部110に代えて不具合情報取得部110aを備える点と、さらに、復旧処理部130を備える点である。復旧処理部130は、顕在化した既知の不具合を解消するための処理(不具合対応処理:自動復旧処理)を実行する。
【0054】
記憶部500と、記憶部500aとの違いは、不具合情報テーブル510に代えて不具合情報テーブル510aを、不具合処理設定テーブル530に代えて不具合処理設定テーブル530aを、それぞれ備える点である。
【0055】
(B−2)テーブル構成:
図9は、第2実施例における不具合情報テーブル510aの一例を示す説明図である。図2に示した第1実施例との違いは、言語情報TIに、さらに、復旧手段フィールドが含まれる点と、コマンドCMに、さらに、現象コマンドフィールドと、復旧コマンドフィールドとが含まれる点であり、他の構成は第1実施例と同様である。
【0056】
復旧手段フィールドには、ルータ10において顕在化した不具合を解消するための手段が格納されている。現象コマンドフィールドには、ルータ10において不具合が既に顕在化しているか否かを確認するためのコマンド(以降、「第2の確認コマンド」とも呼ぶ。)が格納されている。第2の確認コマンドは、換言すれば、ルータ10において現象フィールドに格納された現象が現れているか否かを確認するためのコマンドである。復旧コマンドフィールドには、ルータ10において顕在化した不具合を解消するためのコマンド(以降、「復旧コマンド」とも呼ぶ。)が格納されている。復旧コマンドは、換言すれば、復旧手段フィールドに格納された、不具合を解消するための手段を実行するためのコマンドである。
【0057】
例えば、図9のエントリE1では、不具合番号001で識別される不具合は、ルータ10に対して「Show xxxa」というコマンドが発行された場合、本来表示されるはずのカウンタ情報が表示されないことを示している。また、不具合番号001で識別される不具合を解消するためには、プロトコルBを一時的に無効にした後、すぐに有効にすればよいことを示している。すなわち、システム制御部300は、「CONFIG:No プロトコルB」、「CONFIG:PAUSE1」、「CONFIG:プロトコルB」という一連のコマンドから構成される復旧コマンドを実行すればよいことを示している。
【0058】
図10は、第2実施例における不具合処理設定テーブル530aの一例を示す説明図である。図4に示した第1実施例との違いは、さらに、自動復旧処理フィールドが含まれる点であり、他の構成は第1実施例と同様である。自動復旧処理フィールドには、自動復旧処理を行うか否かを示す情報が格納されている。
【0059】
(B−3)不具合対応処理:
(B−3−1)不具合情報取得処理:
図11は、第2実施例における不具合情報取得処理の手順を示すフローチャートである。図5に示した第1実施例との違いは、ステップS106の後にステップS302を備える点のみであり、他の動作は第1実施例と同様である。不具合情報取得部110aは、不具合情報テーブル510aを更新した後(ステップS106)、復旧処理部130に対して自動復旧処理を実行させる(ステップS302)。
【0060】
(B−3−2)自動回避処理:
第2実施例における自動回避処理の手順は、図6に示した第1実施例と同様である。
【0061】
(B−3−3)自動復旧処理:
図12は、第2実施例における自動復旧処理の手順を示すフローチャートである。図13は、自動復旧処理が行われる様子を示す説明図である。自動復旧処理は、不具合情報取得処理のサブルーチンとして実行される処理である。
【0062】
具体的には、例えば、図13の時刻t1において、不具合情報取得部110aは不具合情報取得処理を行う。不具合情報取得処理のステップS302において不具合情報取得部110aは復旧処理部130を呼び出す。呼び出された復旧処理部130は、自動復旧処理を実行する。
【0063】
図12において、復旧処理部130は、自動復旧処理を行うか否かを判定する(ステップS402)。具体的には、復旧処理部130は、不具合処理設定テーブル530aの自動復旧処理フィールドの内容を参照することで、ステップS402の判定を行う。自動復旧処理を行わない場合(ステップS402:NO)、復旧処理部130は処理を終了する。一方、自動復旧処理を行う場合(ステップS402:YES)、復旧処理部130は、不具合情報テーブル510aを検索し、エントリがあるか否かを判定する(ステップS404)。不具合情報テーブル510aにエントリがない場合、換言すれば、既知の不具合がない場合、復旧処理部130は処理を終了する。
【0064】
一方、不具合情報テーブル510aにエントリがある場合、換言すれば、既知の不具合がある場合、復旧処理部130は、不具合情報テーブル510a内の1つめのエントリの現象コマンドフィールドに格納された第2の確認コマンドを、システム制御部300へ送信する(ステップS406)。図13の時刻t2は、復旧処理部130からシステム制御部300に対して、第2の確認コマンドが送信される様子を示している。第2の確認コマンドを受信したシステム制御部300は、第2の確認コマンドを実行し、呼び出し元(コマンド送信元)の復旧処理部130に対して、実行結果が正しいか否かを示す戻り値を返す。
【0065】
システム制御部300からの戻り値を取得した復旧処理部130は、戻り値を元に、ルータ10aにおいて不具合の現象(症状)が発生(顕在化)しているか否かを判定する(ステップS408)。具体的には、実行結果が正しい旨の戻り値を取得した場合、復旧処理部130は、現象が発生していないと判定し(ステップS:408:NO)、処理をステップS404へ遷移させる。
【0066】
一方、実行結果が正しくない旨の戻り値を取得した場合、復旧処理部130は、現象が発生していると判定し(ステップS408:YES)、管理端末ATのディスプレイに不具合情報を表示させる(ステップS410)。管理端末ATに表示させる不具合情報は任意に定めることができるが、不具合情報テーブル510aの言語情報TIから選択されることが好ましい。例えば、不具合情報テーブル510aの現象フィールドの値とすることができる。なお、管理端末ATに対して不具合情報を表示させる際は、併せて、復旧コマンドを実行する旨を表示させることが好ましい。図13の時刻t3は、管理端末ATに不具合情報が表示されている様子を示している。
【0067】
不具合情報表示の後、復旧処理部130は、現在処理対象としているエントリの復旧コマンドフィールドに格納された復旧コマンドを、システム制御部300へ送信する(ステップS412)。その後、復旧処理部130は、ステップS404へ遷移し、不具合情報テーブル510a内の全てのエントリについて処理を終了するまで、ステップS404〜S412を繰り返す。図13の時刻t4は、復旧処理部130からシステム制御部300に対して、復旧コマンドが送信される様子を示している。復旧コマンドを受信したシステム制御部300は、復旧コマンドを実行する。なお、ステップS410と、ステップS412との実行順序は逆でもよい。
【0068】
以上のように、第2実施例によれば、復旧処理部130は、第2の確認コマンドを用いてルータ10aにおいて既に不具合が顕在化しているか否かを判定する。このため、ルータ10aにおいて既に顕在化している不具合を検出することができる。さらに、復旧処理部130は、ルータ10aにおいて既に不具合が顕在化していると判定した場合は、不具合を解消するための復旧コマンドをシステム制御部300へ送信する。システム制御部300は、受信したコマンド(復旧コマンド)を実行する。この結果、ルータ10aにおいて、第1実施例の効果に加えてさらに、既に顕在化している既知の不具合を検出し、検出した不具合を自動的に解消することができる。
【0069】
さらに、第2実施例によれば、復旧処理部130は、復旧コマンドをシステム制御部300へ送信する場合に、現象フィールドの値(すなわち、言語情報TIの不具合の内容)を外部(管理端末AT)へ通知する。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【0070】
C.第3実施例:
本発明の第3実施例では、不具合を所定の条件にしたがって分類した分類情報を用いて、自動回避処理と、自動復旧処理との処理対象を限定する構成について説明する。以下では、第2実施例と異なる構成および動作を有する部分についてのみ説明する。なお、図中において第2実施例と同様の構成部分については先に説明した第2実施例と同様の符号を付し、その詳細な説明を省略する。
【0071】
(C−1)ネットワーク中継装置の概略構成:
図14は、第3実施例におけるネットワークシステム1000bの概略構成を示す説明図である。図8に示した第2実施例との違いは、ルータA〜Cが、ルータ10aに代えてルータ10bから構成されている点である。ルータ10aとルータ10bとの違いは、不具合処理制御部100aに代えて不具合処理制御部100bを、記憶部500aに代えて記憶部500bを、それぞれ備える点であり、他の構成や動作は図8に示した第2実施例と同様である。
【0072】
不具合処理制御部100aと、不具合処理制御部100bとの違いは、回避処理部120に代えて回避処理部120bを、復旧処理部130に代えて復旧処理部130bを、それぞれ備える点と、さらに、条件取得部140を備える点である。条件取得部140は、回避処理部120bもしくは復旧処理部130bによる処理の対象を限定するための分類情報(詳細は後述)を取得する機能を有する。
【0073】
記憶部500aと、記憶部500bとの違いは、不具合情報テーブル510aに代えて不具合情報テーブル510bを、不具合処理設定テーブル530aに代えて不具合処理設定テーブル530bを、それぞれ備える点である。
【0074】
(C−2)テーブル構成:
図15は、第3実施例における不具合情報テーブル510bの一例を示す説明図である。図9に示した第2実施例との違いは、識別情報DIに関連付けられて、さらに、分類情報MIが含まれる点であり、他の構成は第2実施例と同様である。
【0075】
分類情報MIは、不具合情報テーブル510bに格納されている既知の不具合を、所定の条件にしたがって分類するための情報である。分類情報MIは、症状フィールドと、復旧時の影響フィールドと、重要度フィールドとを含む。なお、この分類情報はあくまで一例であり、分類情報は、既知の不具合を所定の条件に従って分類するものであれば任意に定めることができる。
【0076】
症状フィールドには、不具合が顕在化した場合に、ルータ10bに生じる症状の種類(例えば、表示機能障害、通信機能障害、管理機能障害等)が格納されている。復旧時の影響フィールドには、システム制御部300において復旧コマンドを実行した際の、ルータ10bへの影響(例えば、ルータ10bの再起動を要する、ルータ10b内の機能モジュールの再起動を要する、再起動は要しない等)が格納されている。重要度フィールドには、不具合の重要度が格納されている。不具合の重要度は、任意に定めることができるが、例えば、通信機能に関する障害は重要度を高く(重要度A)、管理機能に関する障害は重要度を中程度に(重要度B)、表示機能に関する障害は重要度を低く(重要度C)することができる。
【0077】
例えば、図15のエントリE1では、不具合番号001で識別される不具合が顕在化した場合、ルータ10bには表示機能障害が生じることを示している。また、不具合番号001で識別される不具合に対する修復コマンドを実行した場合は、ルータ10b内の機能モジュールの再起動が必要であることを示している。さらに、不具合番号001で識別される不具合は、重要度が低い(重要度C)ことを示している。
【0078】
図16は、第3実施例における不具合処理設定テーブル530bの一例を示す説明図である。図10に示した第2実施例との違いは、自動回避処理フィールドと、自動復旧処理フィールドに格納されている内容のみであり、他の構成は第2実施例と同様である。自動回避処理フィールドには、不具合の重要度が、重要度A、もしくは、重要度Bである場合に、自動回避処理を行う旨が格納されている。自動復旧処理フィールドには、不具合が顕在化した場合にルータ10bに生じる症状の種類が通信機能障害である場合に、自動復旧処理を行う旨が格納されている。
【0079】
(C−3)不具合対応処理:
(C−3−1)不具合情報取得処理:
第3実施例における不具合情報取得処理の手順は、図11に示した第2実施例と同様である。
【0080】
(C−3−2)自動回避処理:
第3実施例における自動回避処理の手順は、図6に示した第2実施例と基本的には同じである。ただし、第3実施例では、ステップS204において、回避処理部120bは、コマンド取得部200から受信したコマンドに加えて、不具合処理設定テーブル530bの自動回避処理フィールドに格納されている指定内容をキーとして不具合情報テーブル510bを検索し、一致するエントリがあるか否かを判定する。具体的には、例えば、図6のステップS204において回避処理部120bは、コマンド取得部200から受信したコマンドと、図16の自動回避処理フィールドの値「重要度A、重要度B」とをキーとして、不具合情報テーブル510bを検索する。
【0081】
(C−3−3)自動復旧処理:
第3実施例における自動復旧処理の手順は、図12に示した第2実施例と基本的には同じである。ただし、第3実施例では、ステップS404において、復旧処理部130bは、不具合処理設定テーブル530bの自動復旧処理フィールドに格納されている指定内容をキーとして、不具合情報テーブル510bを検索し、一致するエントリがあるか否かを判定する。具体的には、例えば、図12のステップS404において復旧処理部130bは、図16の自動復旧処理フィールドの値「通信機能障害」をキーとして、不具合情報テーブル510bを検索する。
【0082】
(C−4)条件取得処理:
図17は、自動復旧処理における処理内容の限定に使用される分類情報MIを指定するための指定画面の一例を示す説明図である。指定画面EWは、管理端末ATからの要求を受信した条件取得部140が、管理端末ATのディスプレイ上に表示させる画面である。指定画面EWは、実行トリガ指定部FTと、実行レベル指定部FLと、設定ボタンBOと、キャンセルボタンBNとを含んでいる。
【0083】
実行トリガ指定部FTは、自動復旧処理を実行するタイミングを指定するためのフィールドである。図17の例では、自動復旧処理は、不具合情報取得処理を実行した際に併せて実行されるように指定されている。このようにすれば、不具合情報取得処理が行われるタイミングを、ネットワーク管理者が指定可能となるため、利便性が向上する。
【0084】
実行レベル指定部FLは、自動復旧処理における処理内容の限定に使用される分類情報MIを指定するためのフィールドである。図17の例では、実行レベル指定部FLは、不具合情報テーブル510b(図15)の分類情報MIの種類に対応した3つの項目から構成され、各項目は、ラジオボタンRBを用いて択一的に選択可能な構成とされている。各項目は、さらに、分類情報MIの各フィールドが採り得る値に対応したサブ項目を含んでいる。ラジオボタンRBで選択された項目についてのサブ項目は、さらに、チェックボックスで複数選択可能な構成となっている。ラジオボタンRBで選択されていない項目についてのサブ項目は、グレーアウトされている。
【0085】
ネットワーク管理者は、指定画面EWを用いて所望の実行トリガと、実行レベルとを指定した後、設定ボタンBOを押下する。設定ボタンBO押下により、条件取得部140は指定画面EWに指定されている内容を取得する。さらに、条件取得部140は、実行トリガ指定部FTにおいて指定されている内容をもとに、不具合処理設定テーブル530bの情報取得有無フィールドを更新する。また、条件取得部140は、実行レベル指定部FLにおいて指定されている内容をもとに、不具合処理設定テーブル530bの自動復旧処理フィールドを更新する。
【0086】
条件取得部140は、自動回避処理における処理内容の限定に使用される分類情報MIの指定についても、上記と同様の方法にて取得することができる。詳細は省略する。
【0087】
以上のように、第3実施例によれば、条件取得部140は、不具合情報記憶部としての不具合情報テーブル510bに格納されている不具合に関する情報のうち、回避処理部120bによる処理(自動回避処理)、もしくは、復旧処理部130bによる処理(自動復旧処理)の対象となる情報(エントリ)を限定するための分類情報MIを取得する。このため、自動回避処理もしくは自動復旧処理の処理対象となる不具合情報を限定することができ、きめ細かな不具合対応処理を実現することができる。この結果、ネットワーク管理者に対するユーザビリティを向上させることができる。
【0088】
D.変形例:
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲で種々の構成を採ることができる。例えば、ソフトウェアによって実現した機能は、ハードウェアによって実現するものとしてもよい。そのほか、以下のような変形が可能である。
【0089】
D1.変形例1:
上記実施例では、不具合情報取得部による不具合情報取得処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【0090】
例えば、不具合情報取得部は、不具合処理設定テーブルの取得先フィールドで指定されている場所にアクセスし、不具合情報を取得するものとしたが、不具合情報は外部(例えば、サーバSV)からルータへ配信されるものとしてもよい。この場合、外部からの不具合情報の配信を受信した際に、不具合情報取得部は、不具合情報テーブルの内容を更新することができる。
【0091】
D2.変形例2:
上記実施例では、回避処理部による自動回避処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【0092】
例えば、自動回避処理は、回避処理部がコマンドを受信した際に実行される処理であるものとして説明した。しかし、ネットワーク中継装置内に潜在する不具合が顕在化するトリガが、システム制御部によるコマンドの実行以外の要因であるタイプの不具合(例えば、回線に対する負荷がトリガとなる不具合や、CPU利用率に起因する不具合等)がある場合、回避処理部は、図6で示した自動回避処理と同様の処理を、コマンド受信時とは別のタイミングで(例えば定期的に)実行することとしてもよい。なお、その場合、不具合情報テーブル内に、各不具合のタイプ(コマンドの実行に起因するものか、その他の要因に起因するものか)を識別するための情報を格納するためのフィールドを設けることが好ましい。
【0093】
例えば、回避処理部は、回避コマンドをシステム制御部へ送信する場合に、管理端末のディスプレイへの不具合情報の表示を行うものとした。しかし、管理端末のディスプレイへの不具合情報の表示は、あくまで外部への通知手段の一例であり、種々の通知手段を採用することができる。具体的には、例えば、回避処理部は、不具合情報を予め指定されたアドレス宛にメール送信することによって、外部への通知を行ってもよい。また、SNMP(Simple Network Management Protocol)を用いたネットワーク管理であれば、SNMPトラップを用いた通知を行ってもよい。さらに、Syslogを用いて通知を行ってもよい。さらに、回避処理部は、管理端末への不具合情報の表示に代えて、回避コマンド発行ログを記録することとしてもよい。回避コマンド発行ログは、所定の場所に保存し、いつでも参照可能な構成としてもよいし、所定の間隔で管理端末に送信されてもよい。
【0094】
例えば、回避処理部は、回避コマンドをシステム制御部へ送信する前に、ネットワーク管理者の確認を得る(具体的には、例えば、管理端末のディスプレイに対して確認を促すメッセージを表示し、OKボタン押下により確認を得たとみなす等)構成としてもよい。こうすれば、ネットワーク管理者は、回避コマンドの発行有無を管理することができ、利便性が向上する。さらに、第3実施例においては、分類情報MIに基づいて、ネットワーク管理者への確認の要否を切り替えても良い。具体的には、例えば、重要度がAの不具合情報に対する回避コマンドはネットワーク管理者への確認を得てからコマンドを発行し、重要度がB、Cの不具合情報に対する回避コマンドはネットワーク管理者への確認なしでコマンドを発行する、等の制御を行ってもよい。
【0095】
例えば、回避処理部は、上記実施例で説明した処理に加えて、さらに、不具合情報の学習処理を行ってもよい。具体的には、例えば、回避処理部は、コマンド取得部から取得したコマンドをシステム制御部へ送信した後(図6:ステップS214)、システム制御部によるコマンドの実行結果(戻り値)を取得する。実行結果が正しくない旨の戻り値を取得した場合、回避処理部は、図6のステップS214において送信したコマンドは不具合があるコマンドであると学習し、記憶部内のテーブル(もしくは、不具合情報テーブルでもよい)に、当該コマンドを追加する。また、回避処理部は、学習した不具合情報を、外部(サーバSV)へ定期的に送信してもよい。このようにすれば、ルータを運用しつつ発見された不具合情報を自動的に収集することができる。自動的に収集された不具合情報は、ルータの信頼性向上のために役立てることができる。
【0096】
D3.変形例3:
上記実施例では、復旧処理部による自動復旧処理について、処理の手順の一例を挙げて説明した。しかし、上記実施例の手順はあくまで一例であり、種々の変形を行うことができる。
【0097】
例えば、自動復旧処理は、不具合情報取得処理のサブルーチンとして実行されるものとして説明した。しかし、自動復旧処理は、不具合情報取得処理とは独立して実行されてもよい。自動復旧処理が実行されるタイミングは、管理者により予め指定されたスケジュールに従って実行されてもよいし、定期的に自動で実行されてもよい。なお、定期的に自動で実行する場合は、ルータの処理負荷が軽い時間帯(例えば深夜)に実行することが好ましい。
【0098】
例えば、復旧処理部は、1度自動復旧処理を終えた不具合情報テーブル内のエントリについては、以降処理を行わないようにしてもよい。具体的には、例えば、復旧処理部は、ステップS412(図12)の後において、不具合情報テーブルの処理済みのエントリに対して「対応済フラグ」を付与することによって、2度目の処理を省略することができる。
【0099】
例えば、復旧処理部は、復旧コマンドをシステム制御部へ送信する場合に、管理端末のディスプレイへの不具合情報の表示を行うものとした。しかし、管理端末のディスプレイへの不具合情報の表示は、あくまで外部への通知手段の一例であり、上記の変形例2と同様に、種々の通知手段を採用することができる。
【0100】
例えば、復旧処理部は、復旧コマンドをシステム制御部へ送信する前に、ネットワーク管理者の確認を得る構成としてもよい。詳細は、上記変形例2の例示と同様である。
【0101】
D4.変形例4:
上記実施例では、ネットワーク中継装置が備える各テーブルについて説明した。しかし、上記実施例の態様はあくまで例示であり、種々の変形を加えることができる。例えば、テーブルが備えるフィールドの項目を追加、削除、変更することができる。また、各テーブルには、ダイレクトマップ方式を用いることも可能である。
【0102】
例えば、不具合情報テーブルのコマンドCMにはシステム制御部が実行可能なコマンドを用いるものとして説明した。しかし、コマンドCMはルータ10が識別可能な言語を用いて表わされていれば良く、例えば、機械語等が用いられても良い。
【0103】
例えば、不具合情報テーブルに、不具合情報が公開された日時を格納するための公開日時フィールドを備えることとしてもよい。この場合、不具合情報取得処理において、公開日時フィールドの内容を使用することによって、テーブルの整合性を保ちつつ不具合情報テーブルを更新することが容易となる。
【0104】
例えば、不具合情報テーブルに、不具合情報の有効期限を格納するための有効期日フィールドを備えることとしてもよい。この場合、有効期日フィールドの内容を用いて、自動回避処理と、自動復旧処理との処理対象を限定することも可能となり、きめ細かな不具合対応処理が可能となる。
【0105】
D5.変形例5:
上記実施例では、ネットワークシステムの構成の一例を示した。しかし、ネットワークシステムの構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。具体的には、例えば、ネットワークシステムを構成するサーバやネットワーク中継装置、管理端末の台数は任意に決定することができる。
【0106】
D6.変形例6:
上記実施例では、ネットワーク中継装置の構成の一例を示した。しかし、ネットワーク中継装置の構成は、上述した態様に限らず、本発明の要旨を逸脱しない範囲において任意に定めることができる。具体的には、例えば、システム制御部は、宛先判定部と、装置管理部とを含むものとしたが、他の機能部(例えば、処理内容の情報を取得して統計情報を生成するための統計処理部等)を備えることとしてもよい。
【0107】
D7.変形例7:
上記第1実施例では回避処理部による自動回避処理を行う構成を、上記第2実施例では、さらに、復旧処理部による自動復旧処理を行う構成を、上記第3実施例では、さらに、条件取得部による自動回避処理と自動復旧処理の処理対象の限定を行う構成を、それぞれ説明した。しかし、上記実施例における各構成はあくまで例示であり、他の構成を採用することもできる。例えば、ネットワーク中継装置において、回避処理部は備えずに、復旧処理部のみを備える(すなわち、自動復旧処理のみを行う)構成としてもよい。
【符号の説明】
【0108】
10,10a,10b…ネットワーク中継装置(ルータ)
100,100a,100b…不具合処理制御部
110,110a…不具合情報取得部
120,120b…回避処理部
130,130b…復旧処理部
140…条件取得部
200…コマンド取得部
300…システム制御部
310…宛先判定部
320…装置管理部
400…転送処理部
500,500a,500b…記憶部
510,510a,510b…不具合情報テーブル
520…プロトコル設定テーブル
530,530a,530b…不具合処理設定テーブル
1000,1000a,1000b…ネットワークシステム
RB…ラジオボタン
DB…不具合情報データベース
MI…分類情報
DI…識別情報
TI…言語情報
FL…実行レベル指定部
CM…コマンド
BN…キャンセルボタン
BO…設定ボタン
FT…実行トリガ指定部
AT…管理端末
SV…サーバ
EW…指定画面
INT…インターネット

【特許請求の範囲】
【請求項1】
ネットワーク中継装置であって、
前記ネットワーク中継装置へのコマンドを取得するコマンド取得部と、
取得した前記コマンドを実行するシステム制御部と、
前記ネットワーク中継装置に潜在する既知の不具合に関する情報であって、前記不具合を識別するための識別情報と、前記不具合が顕在化し得る状態であるか否かを確認するための第1の確認コマンドと、前記不具合の顕在化を回避するための回避コマンドと、が関連付けられて記憶されている不具合情報記憶部と、
取得した前記コマンドと、前記第1の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記システム制御部へ送信する回避処理部と、
を備える、ネットワーク中継装置。
【請求項2】
請求項1記載のネットワーク中継装置であって、
前記回避処理部は、
取得した前記コマンドを用いて前記不具合情報記憶部を検索し、
検索により得られた前記第1の確認コマンドを前記システム制御部へ送信し、
前記システム制御部より得られた前記第1の確認コマンドの実行結果を用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定する、ネットワーク中継装置。
【請求項3】
請求項1または2記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合が既に顕在化しているか否かを確認するための第2の確認コマンドが記憶され、
前記ネットワーク中継装置は、さらに、
前記第2の確認コマンドを前記システム制御部へ送信し、得られた前記第2の確認コマンドの実行結果を用いて、前記ネットワーク中継装置において前記不具合が顕在化しているか否かを判定する復旧処理部を備える、ネットワーク中継装置。
【請求項4】
請求項3記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を解消するための復旧コマンドが記憶され、
前記復旧処理部は、さらに、前記不具合が顕在化していると判定した場合は、前記復旧コマンドを前記システム制御部へ送信する、ネットワーク中継装置。
【請求項5】
請求項1ないし4のいずれか一項記載のネットワーク中継装置であって、さらに、
外部から提供される前記既知の不具合に関する情報を取得し、取得した前記情報を用いて前記不具合情報記憶部に格納されている内容を更新する不具合情報取得部を備える、ネットワーク中継装置。
【請求項6】
請求項1ないし5のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、前記不具合を所定の条件にしたがって分類した分類情報が記憶され、
前記ネットワーク中継装置は、さらに、
前記不具合情報記憶部に格納されている前記不具合に関する情報のうち、前記回避処理部もしくは前記復旧処理部による処理の対象となる情報を限定するために前記分類情報を取得する条件取得部を備える、ネットワーク中継装置。
【請求項7】
請求項6記載のネットワーク中継装置であって、
前記所定の条件は、前記不具合が顕在化した際に前記ネットワーク中継装置に生じる症状の種類と、前記復旧コマンドを実行した際の前記ネットワーク中継装置への影響と、前記不具合の重要度と、のうちの少なくとも1つである、ネットワーク中継装置。
【請求項8】
請求項1ないし7のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合の顕在化を回避するための手段と、を示す言語情報が記憶され、
前記回避処理部は、前記回避コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
【請求項9】
請求項3ないし8のいずれか一項記載のネットワーク中継装置であって、
前記不具合情報記憶部には、前記識別情報に関連付けられて、さらに、自然言語を用いて表わされた前記不具合の内容と、自然言語を用いて表わされた前記不具合を解消するための手段と、を示す言語情報が記憶され、
前記復旧処理部は、前記復旧コマンドを前記システム制御部へ送信する場合に、前記言語情報のうちの少なくとも一方を外部へ通知する、ネットワーク中継装置。
【請求項10】
ネットワーク中継装置の制御方法であって、
(a)前記ネットワーク中継装置へのコマンドを取得する工程と、
(b)取得した前記コマンドを実行する工程と、
(c)取得した前記コマンドと、前記ネットワーク中継装置に潜在する既知の不具合が顕在化し得る状態であるか否かを確認するための第1の確認コマンドとを用いて、前記ネットワーク中継装置が、取得した前記コマンドの実行によって前記不具合が顕在化し得る状態であるか否かを判定し、前記不具合が顕在化し得る状態でないと判定した場合は取得した前記コマンドを、前記不具合が顕在化し得る状態であると判定した場合は前記回避コマンドを、前記工程(b)に実行させる工程と、
を備える、ネットワーク中継装置の制御方法。

【図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