(57)【特許請求の範囲】
【請求項１】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元方法において、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手順と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とするネットワーク設定復元方法。
【請求項２】
前記各ネットワーク機器までのホップ数を検知する手順は、
オペレーションサーバが、
各ネットワーク機器に経路調査メッセージを順次に送信する手順と、
送信した経路調査メッセージごとに応答メッセージを受信する手順と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手順とを含むことを特徴とする請求項１に記載のネットワーク設定復元方法。
【請求項３】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項１または２に記載のネットワーク設定復元方法。
【請求項４】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項１ないし３のいずれかに記載のネットワーク設定復元方法。
【請求項５】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元システムにおいて、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手段と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手段とを含むことを特徴とするネットワーク設定復元システム。
【請求項６】
前記各ネットワーク機器までのホップ数を検知する手段が、
各ネットワーク機器に経路調査メッセージを順次に送信する手段と、
送信した経路調査メッセージごとに応答メッセージを受信する手段と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手段とを含むことを特徴とする請求項５に記載のネットワーク設定復元システム。
【請求項７】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項５または６に記載のネットワーク設定復元システム。
【請求項８】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項５ないし７のいずれかに記載のネットワーク設定復元システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルータやサーバなどのネットワーク機器の設定を変更前の状態に切り戻すことで復元するネットワーク設定復元方法およびシステムに係り、特に、短時間での復元を可能にしたネットワーク設定復元方法およびシステムに関する。
【背景技術】
【０００２】
ルータやサーバなどのネットワーク機器のネットワーク設定ファイル（以下、単に設定ファイルと表現する場合もある）を管理する次世代NWオペレーションサーバをネットワーク(NW)上に設置し、オペレーションミスなどの障害が発生した際には、この次世代NWオペレーションサーバより一括して以前の設定ファイルを読み出し、各ネットワーク機器に順次に切り戻すことにより迅速な障害復旧を支援するシステムが、非特許文献１，２および特許文献１に開示されている。従来のネットワーク設定ファイルの切り戻しは、例えば以下のような手順で実行される。
【０００３】
手順１： 運用者がクライアント端末を用いてルータ、スイッチ、サーバ等の各種ネットワーク機器のオペレーション（操作・設定）を行う。その際、次世代NWオペレーションサーバはオペレーションのログを収集する。また、オペレーション終了時に全てのネットワーク機器の設定ファイルを保存管理する。 
【０００４】
手順２：オペレーションの内容にエラー等が含まれていた場合、警報や障害発生が通知される。 
【０００５】
手順３：運用者はクライアント端末を介して次世代NWオペレーションサーバを操作し、全ての被管理装置の設定ファイルを以前の（正常に動作していた任意の時点の）状態に切戻す。これにより、障害から復旧する。 
【０００６】
手順４：運用者は障害復旧後に、次世代NWオペレーションサーバが保存管理しているオペレーションのログを分析して障害原因を特定する。 
【非特許文献１】「オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの提案」，吉原貴仁ほか：信学会2007総合大会論文集
【非特許文献２】オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの実装，荒井大輔ほか：信学会2007総合大会論文集
【特許文献１】特願２００６−２４９２９９号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ネットワーク設定の切り戻し対象となるネットワーク機器のうち、自身の経路情報にしたがって動作し、ネットワークを構成するルータやスイッチでは、ネットワーク設定の切り戻しにより経路情報も以前の設定に切り戻されてしまうので、切り戻し前の機器と切り戻し後の機器とで経路情報に齟齬が生じてしまい、接続が断たれてしまう場合がある。したがって、ネットワーク機器のうち、特にルータやスイッチに関しては、齟齬の影響が最小限に抑えられるように、オペレーションサーバから遠い位置のルータ等から順にネットワーク設定を切り戻すことが望ましい。
【０００８】
しかしながら、上記した従来技術ではルータやスイッチのネットワーク設定を切り戻す際でも、その順序が全く考慮されていなかったので、切り戻しの開始直後から多くの経路が断たれて通信不能に陥ってしまうという技術課題があった。
【０００９】
本発明の目的は、上記した従来技術の課題を全て解決し、サーバからの接続性を確保しながらルータやスイッチのネットワーク設定を切り戻せるネットワーク設定復元方法およびシステムを提供することにある。
【課題を解決するための手段】
【００１０】
上記した目的を達成するために、本発明は、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ切り戻してネットワーク設定を復元するネットワーク設定復元方法において、前記オペレーションサーバが、各ネットワーク機器までのホップ数を検知する手順と、前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、オペレーションサーバから遠いネットワーク機器から順に切り戻せるようになるので、サーバとの接続性を維持したままでの復元が可能になる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。図１は、本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【００１３】
管理対象のネットワーク１には、ネットワーク設定ファイルの復元対象となるスイッチ、ルータあるいはサーバ等の各種ネットワーク機器A，B，C，D…が収容されている。このネットワーク１にはさらに、各ネットワーク機器にネットワーク設定を行うクライアント２、およびクライアント２からの保存要求に応答して各ネットワーク機器からネットワークの設定ファイルを取得し、さらに、クライアント２からの切戻要求に応答して各ネットワーク機器へ既登録の設定ファイルを切り戻してネットワーク設定を復元するオペレーションサーバ３が接続されている。
【００１４】
図２は、４つのネットワーク機器A，B，C，Dの設定ファイルがクライアント１の操作で更新され、更新後の設定ファイルが２つの識別子IDs，IDrsと紐付けられてオペレーションサーバ３に保存される様子を模式的に表現した図である。
【００１５】
本発明では、保存要求ごとに全てのネットワーク機器の設定ファイルが、当該保存時刻を代表する第１識別子（セッション識別子IDs）と紐付けられてオペレーションサーバ３に蓄積される。また、本発明では未更新の設定ファイルが各ネットワーク機器から保存要求ごとに繰り返し取得されてしまう無駄を省くために、各ネットワーク機器からは更新されている可能性のある設定ファイルのみが取得され、未更新の設定ファイルに関しては、オペレーションサーバ３に既登録の設定ファイルが読み出されてコピーされるようにしている。
【００１６】
そこで、本発明ではコピー元の設定ファイルが新規保存された時刻を代表する第２識別子（実セッション識別子IDrs）を定義し、この実セッション識別子IDrsも各設定ファイルに紐付けられる。したがって、ネットワーク機器から取得されて新規保存される設定ファイルでは、セッション識別子IDsおよび実セッション識別子IDrsが同値となる。
【００１７】
図２では、時刻t1において全てのネットワーク機器A，B，C，Dの設定ファイルFa，Fb，Fc，Fdが、その保存タイミングを代表するセッション識別子IDsおよび実セッション識別子IDrsと紐付けられてオペレーションサーバ３に予め登録されている。時刻t1が最初の保存タイミングであれば、セッション識別子IDsおよび実セッション識別子IDrsのいずれにも、時刻t1を代表する「１」が登録される
【００１８】
図３，４は、前記オペレーションサーバ３の動作を示したフローチャートであり、図２の時刻t1以降、２つのネットワーク機器B，Cの設定ファイルFb，Fcのみが更新され、時刻t2において、設定ファイルの保存要求がクライアント１からオペレーションサーバ３へ通知されると、これが図３のステップＳ１で検知されてステップＳ２へ進む。ステップＳ２では、設定ファイル保存処理が実行される。
【００１９】
図４は、前記設定ファイル保存処理の手順を示したフローチャートであり、ステップＳ２０１では、前記時刻t2を代表するセッション識別子IDs=２および実セッション識別子IDrs=２が設定される。ステップＳ２０２では、前回の保存時刻t1以降に操作履歴のあるネットワーク(NW)機器の一つが選択される。本実施形態では、３つのネットワーク機器B，C，Dに関して操作履歴があり、最初にネットワーク機器Bが選択されたものとして説明を続ける。
【００２０】
ステップＳ２０３では、ネットワーク機器Bの設定ファイルFbがオペレーションサーバ３により取得される。ステップＳ２０４では、直前の保存時刻t1を代表するセッション識別子IDs=１と紐付けられている既登録の設定ファイル群の中から、ネットワーク機器Bの設定ファイルFbが読み取られる。そして、この設定ファイルFb(IDs=1)と、時刻t2で取得された今回の設定ファイルFbとが比較され、両者が一致するか否かに基づいて更新の有無が判定される。不一致であれば、更新が有ったと判定されてステップＳ２０５へ進み、前記ステップＳ２０３で取得された今回の設定ファイルFbが、時刻t2を代表するセッション識別子IDs=２および実セッション識別子IDrs=２と紐付けられて保存される。
【００２１】
ステップＳ２０６では、操作履歴のある全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、ここではネットワーク機器C，Dに対する処理が残っているので、ステップＳ２０２へ戻って上記した各処理が繰り返される。このとき、ネットワーク機器Cに関しては前記ネットワーク機器Bと同様に、その設定ファイルが更新されていると判定されるので、ステップＳ２０３でネットワーク機器Cから取得された設定ファイルFcが、時刻t2を代表するセッション識別子IDs=２および実セッション識別子IDrs=２と紐付けられて保存される。
【００２２】
これに対して、ネットワーク機器Dに関しては、例えばファイルを参照した操作履歴が残っているだけなので、ステップＳ２０４では設定ファイルが更新されていないと判定されてステップＳ２０６へ進む。
【００２３】
ステップＳ２０７では、設定ファイルが未更新のネットワーク機器の一つが選択される。本実施形態では、２つのネットワーク機器A，Dが順次に選択される。ステップＳ２０８では、選択されたネットワーク機器に関して、前回の保存時刻t1を代表するセッション識別子IDs=１と紐付けられている既登録の設定ファイル群の中から、前記未更新のネットワーク機器の設定ファイルが、そのセッション識別子IDsおよび実セッション識別子IDrsと共に読み込まれる。ステップＳ２０９では、セッション識別子IDsのみが今回の保存時刻t2を代表する「２」に書き換えられ、このセッション識別子IDs=２に対応した設定ファイル群の一つとして保存される。
【００２４】
ネットワーク機器Aであれば、セッション識別子IDs=１および実セッション識別子IDrs=１と紐付けられている既登録の設定ファイルFa(IDs=１，IDrs=１)と同一内容の設定ファイルが、今回の保存時刻t2を代表するセッション識別子IDs=２および実セッション識別子IDrs=１と紐付けられて保存される。
【００２５】
ステップＳ２１０では、設定ファイルが未更新の全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、全てのネットワーク機器に関して上記した処理が完了するまで、ステップＳ２０７へ戻って上記した各処理が繰り替えられる。
【００２６】
図２へ戻り、上記のように時刻t2で保存要求が検知されると、２つのネットワーク機器B，Cの設定ファイルFb，Fcは、保存時刻t2を代表するセッション識別子IDs=２、および実セッション識別子IDrs=２と紐付けられてオペレーションサーバ３に保存される。
【００２７】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A，Dの設定ファイルFa，Fdは、今回の保存時刻t2を代表するセッション識別子IDs=２、および当該設定ファイルが新規保存された時刻t1を代表する実セッション識別子IDrs=１と紐付けられてオペレーションサーバ３に登録される。
【００２８】
さらに、時刻t2以降にネットワーク機器Dの設定ファイルFdのみが更新され、時刻t3で新たな保存要求が検知されると、当該ネットワーク機器Dの設定ファイルFdは、今回の保存時刻t3を代表するセッション識別子IDs=３、および実セッション識別子IDrs=３と紐付けられてオペレーションサーバ３に登録される。
【００２９】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A，B，Cの設定ファイルFa，Fb，Fcのうち、その内容が時刻t1で新規保存された内容と同一であるネットワーク機器Aの設定ファイルFaに関しては、今回の保存時刻t3を代表するセッション識別子IDs=３および時刻t1を代表する実セッション識別子IDrs=１と紐付けられてオペレーションサーバ３に登録される。
【００３０】
同様に、設定ファイルの内容が時刻t2で新規保存された内容と同一であるネットワーク機器B，Cの設定ファイルFb，Fcに関しては、今回の保存時刻t3を代表するセッション識別子IDs=３および時刻t2を代表する実セッション識別子IDrs=２と紐付けられてオペレーションサーバ３に登録される。
【００３１】
次いで、以上のようにして時系列で保存された設定ファイルを利用して、各ネットワーク機器の設定ファイルを所望の復元時刻における設定内容に切り戻す手順を説明する。ここでは、各ネットワーク機器の設定ファイルが、図５に示した経過を経て更新され、最新の保存タイミングが時刻t3である場合を例にして説明する。
【００３２】
オペレータがクライアント１から、所望の復元時刻を含む切戻要求をオペレーションサーバ３へ送信し、これが図３のステップＳ３で検知されると、ステップＳ４へ進んで設定ファイル切戻処理が実行される。ここでは、復元時刻としてt2が指定されたものとして説明を続ける。
【００３３】
図７は、前記設定ファイル切戻処理の手順を示したフローチャートであり、図８は、そのシーケンスフローである。
【００３４】
ステップＳ４０１では、最新の保存時刻t3以降、新たに操作されたネットワーク機器があるか否かが判定される。操作されたネットワーク機器がなければステップＳ４０３ヘ進み、有ればステップＳ４０２へ進む。ステップＳ４０２では、前記図４のフローチャートで説明した設定ファイル保存処理と同様の処理が実行され、当該切戻要求の受信時刻t4を保存時刻として設定ファイルが前記と同様にオペレーションサーバ３に保存され、その後、ステップＳ４０３へ進む。
【００３５】
図６は、時刻t4で新たにネットワーク設定保存処理が実行された場合の、各ネットワーク機器の設定ファイルの更新状況を示した図であり、ここでは、時刻t3以降にネットワーク機器Bが操作されていたので、ネットワーク機器Bの設定ファイルFbが取り込まれ、保存時刻t4を代表するセッション識別子IDs=４および実セッション識別子IDrs=４と紐付けられてオペレーションサーバ３に新規保存される。
【００３６】
また、更新されていない他のネットワーク機器A，C，Dに関しては、直前の保存時刻t3を代表するセッション識別子IDs=３と紐付けられている設定ファイルが読み出され、セッション識別子IDsのみが、今回の保存時刻t4を代表するセッション識別子IDs=４に書き換えられて保存される。
【００３７】
ステップＳ４０３では、最新（直前）の保存時刻（図５の例では、時刻t3）を代表するセッション識別子IDs=３と紐付けられた各設定ファイルの実セッション識別子IDrsと、復元時刻t2を代表するセッション識別子IDs=２と紐付けられた各設定ファイルの実セッション識別子IDrsとが比較され、この比較結果に基づいて切戻対象のネットワーク機器が特定される。すなわち、実セッション識別子IDrsが不一致のネットワーク機器が切戻対象とされる。
【００３８】
図５を参照すれば、ネットワーク機器Aの時刻t3で保存された設定ファイルFaの実セッション識別子IDrsおよび復元時刻t2で保存された設定ファイルの実セッション識別子IDrsはいずれも「１」であり、各時刻t2，t3の設定ファイルは同一であることが判るので、ネットワーク機器Aは切戻対象とされない。
【００３９】
同様に、ネットワーク機器B，Cについても、各設定ファイルFb，Fcの時刻t3における実セッション識別子IDrsおよび復元時刻t2における実セッション識別子IDrsはいずれも「２」であり、各時刻t2，t3の設定ファイルは同一であることが判るので、ネットワーク機器B，Cも切戻対象とされない。
【００４０】
これに対して、ネットワーク機器Dに関しては、その設定ファイルFdの復元時刻t2における実セッション識別子IDrsが「１」であるのに対して、最新の保存時刻t3における実セッション識別子IDrsは「３」であり、各時刻t2，t3の設定ファイルが異なっていることが判るので、ネットワーク機器Dは切戻対象とされる。
【００４１】
なお、図６に示した例であれば、ネットワーク機器A，Cは切戻対象とされず、ネットワーク機器B，Dが切戻対象とされる。
【００４２】
図７のフローチャートへ戻り、ステップＳ４０４では、特定された切戻対象のネットワーク機器が一つ選択される。ステップＳ４０５では、このネットワーク機器に対して、後に詳述するネットワーク設定の切戻処理が実行される。ステップＳ４０６では、全ての切戻対象に対する切戻処理が完了したか否かが判定され、完了するまで前記ステップＳ４０４へ戻って上記した各手順が繰り返される。
【００４３】
次いで、前記ステップＳ４０５で実行されるネットワーク設定の切戻方法について説明する。
【００４４】
本実施形態では、ネットワーク機器がCisco社製のルータやスイッチのように、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器であるか否かによって切り戻し手順が異なり、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器では、以下に詳述するコマンドを用いた切り戻し手順が実行され、それ以外の機器では従来技術と同様の切り戻し手順が実行される。
【００４５】
図９は、Cisco社製ルータの設定ファイルの一例を示した図であり、設定ファイルは、２つの「！」マークで挟まれた「項目」の集合であり、各「項目」には「項目値」が登録されている。ここでは、項目「スタティックルート」に登録されている３つの項目値「ip route 0.0.0.0 0.0.0.0 192.168.1.1」，「ip route 192.168.2.0 255.255.255.0 192.168.0.8」，「ip route 192.168.3.0 255.255.255.0 192.168.0.8」に着目して説明する。本発明では、以下の２つの切り戻し方法のいずれかを採用して切り戻しが実行される。
[第１の切戻方法]
【００４６】
Cisco社製ルータは、設定ファイルの記憶領域として不揮発性の"startup-config"および揮発性の"running-config"を備え、ルータの起動時に"startup-config"の内容が"running-config"にコピーされ、それ以後、ルータは"running-config"に登録されている設定ファイルにしたがって動作する。したがって、復元時刻の設定ファイルを"startup-config"に書き込み、その後、ルータを再起動させれば、設定ファイルが"running-config"にコピーされるのでルータの復元が可能になる。
[第２の切戻方法]
【００４７】
上記した第１の切戻方法ではルータの再起動が必要となるが、復元目標の設定ファイルを"startup-config"ではなく"running-config"へ直接コピーできればルータの再起動を不要にできる。しかしながら、Cisco社製ルータのように、"running-config"へのコピーコマンドがマージ（結合）であると、復元目標の設定ファイルの内容と切り戻し後の"running-config"の内容とに齟齬が生じる場合がある。
【００４８】
図１０は、ネットワーク機器の"running-config"に復元目標の設定ファイルをマージした際に生じる得る齟齬を説明した図であり、"running-config"に登録されている現在の設定ファイルから復元目標の設定ファイルへの切り戻しが、項目値の追加や変更のみであれば、現在の設定ファイルに復元目標の設定ファイルをマージするだけでも齟齬は生じない。しかしながら、項目値の削除を伴う場合は、マージでは既存の不要な項目値を削除できないので齟齬が生じてしまう。
【００４９】
そこで、第２の切戻方法では、現在の設定ファイルと復元目標の設定ファイルとを予め比較して両者の差分を求め、マージのみで齟齬の無い切り戻しが可能であれば設定ファイルを"running-config"へ直接コピーする一方、マージでは齟齬が生じる場合には、オペレーションサーバ３において"running-config"を書き換えるコマンドを生成し、これをネットワーク機器へ送信して"running-config"を書き換えるようにしている。
【００５０】
以下、図１１のフローチャートを参照して、上記した第２の切戻方法の手順について詳細に説明する。
【００５１】
ステップＳ６１では、最新の設定ファイルと復元目標の設定ファイルとの差分が設定項目ごとに取得される。ステップＳ６２では、前記差分に基づいてマージでの切り戻しが可能か否かが判定される。マージでの切り戻しが可能であればステップＳ６３へ進み、前記復元目標の設定ファイルがルータの"running-config"にコピー（マージ）される。
【００５２】
これに対して、マージでの切り戻しが不可能であればステップＳ６４へ進み、項目の一つが選択される。ステップＳ６５で、選択された項目に関して、最新の設定ファイルの各項目値と復元目標の設定ファイルの各項目値との差分が参照され、差分があればステップＳ６６へ進み、この差分を切り戻すコマンドが生成される。
【００５３】
図１２は、コマンド生成の手順を示したフローチャートであり、ここでは、項目「スタティックルート」を切り戻す際のコマンドを例にして説明する。
【００５４】
ステップＳ７１では、前記差分が項目値ごとに分析される。ステップＳ７２では、その分析結果に基づいて、復元目標の設定ファイルから現在の設定ファイルへの更新内容が、「削除」、「追加」、「変更」のいずれであるかが判定される。
【００５５】
図１３に示したように、現在の設定ファイルが、復元目標の設定ファイルから一部の項目値（ここでは、"ip route 192.168.3.0 255.255.255.0 192.168.0.8"）を削除された内容であれば、「削除」と判定されるのでステップＳ７３へ進み、この項目値を設定ファイルへ追加するコマンド"iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。
【００５６】
また、図１４に示したように、現在の設定ファイルが、復元目標の設定ファイルに一部の項目値（ここでは、"ip route 0.0.0.0 0.0.0.0 192.168.1.1"）を追加した内容であれば、「追加」と判定されるのでステップＳ７４へ進み、この項目値を設定ファイルから削除するコマンド"no iproute 0.0.0.0 0.0.0.0 192.168.1.1"が生成される。
【００５７】
さらに、図１５に示したように、現在の設定ファイルが、復元目標の設定ファイルの一部の項目値が変更された内容（ここでは、"ip route 192.168.5.0 255.255.255.0 192.168.0.8"が"ip route 192.168.3.0 255.255.255.0 192.168.0.8"に変更されている）であれば、「変更」と判定されるのでステップＳ７５へ進み、変更後（現在）の項目値を設定ファイルから削除するコマンド"no iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。ステップＳ７６では、変更前の項目値を設定ファイルへ追加するコマンド"iproute 192.168.5.0 255.255.255.0 192.168.0.8"が生成される。
【００５８】
図１１へ戻り、ステップＳ６７では、全ての項目に関してコマンド生成が完了したか否かが判定され、完了するまでは、ステップＳ６４へ戻って上記した各処理が繰り返される。ステップＳ６８では、前記ステップＳ６６で生成されたコマンドが、対応するネットワーク機器へ送信される。各ネットワーク機器は、受信したコマンドを実行して"running-config"を切り戻す。ステップＳ６９では、"running-config"を"startup-config"へコピーする要求がネットワーク機器へ送信される。各ネットワーク機器は、この要求に応答して、"running-config"の内容を"startup-config"へコピーする。
【００５９】
次いで、図１６および図１７のフローチャートを参照して、ネットワーク機器（ここでは、ルータまたはスイッチ）の切り戻し順序の決定方法について説明する。本実施形態では、オペレーションサーバ３がバックグラウンド処理として、経路調査のためのtracerouteを実行してICMPエコー要求メッセージを各ルータへ送信し、その応答であるICMP Time Exceededエラーメッセージに基づいて各ルータまでの距離（ホップ数）を判別し、ホップ数の多いルータから順にネットワーク設定を復元するようにしている。
【００６０】
図１７は、オペレーションサーバ３によるルータの切り戻し順序の決定方法の手順を示したフローチャートであり、ステップＳ８１では、ネットワーク機器の一つが今回の注目機器として選択される。ステップＳ８２では、今回の注目機器を対象にtracerouteが実行され、前記注目機器を宛先とするICMPエコー要求メッセージが、そのTTL(Time To Live)フィールドの値を更新させながら順次に送信される。
【００６１】
このICMPエコー要求メッセージを受信した経路上の各ルータでは、そのTTLフィールドの値を「１」だけ減じ、その結果が「０」以外であれば、当該メッセージを自身の経路情報に基づいて次ホップ先へ転送する。また、TTLフィールドの値を「１」だけ減じた結果が「０」であれば、当該メッセージを破棄すると共に、送信元IPアドレスフィールドに自身のIPアドレスが登録されているICMP Time Exceededエラーメッセージをオペレーションサーバ３へ返信する。
【００６２】
ステップＳ８３では、今回の注目機器からの応答メッセージを受信できたか否かに基づいて、今回の注目機器を対象としたtracerouteが完了したか否かが判定される。tracerouteが完了するとステップＳ８４へ進み、今回の注目機器までのホップ数が確認される。ステップＳ８５では、今回の注目機器のIPアドレスと当該注目機器までのホップ数とのペアが記憶される。ステップＳ８６では、全てのネットワークに関してtracerouteが完了したか否かが判定され、完了するまでは、前記ステップＳ８１へ戻って注目機器を変更しながら上記した各処理が繰り返される。
【００６３】
全てのネットワーク機器に関してtracerouteが完了するとステップＳ８７へ進み、前記ステップＳ８５においてネットワーク機器ごとに記憶されたデータがホップ数の降順にソートされて切り戻し順序が決定される。すなわち、オペレーションサーバ３からのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられる。
【００６４】
図１８は、前記オペレーションサーバ３の一実施形態の構成を示した機能ブロックであり、ここでは本発明の説明に不用な構成の図示が省略されている。
【００６５】
設定ファイルデータベース３０１は、設定ファイルがその保存タイミングを代表する第１識別子（セッション識別子IDs）および新規保存タイミングを代表する第２識別子（実セッション識別子IDrs）と紐付けられて保存される記憶手段である。操作履歴監視部３０２は、各ネットワーク機器の操作履歴を監視し、前記ステップＳ４０１において、操作履歴のあるネットワーク機器を選別する。
【００６６】
保存要求検知部３０５は、前記ステップＳ１において、クライアント１から送信される保存要求を検知する。設定ファイル取得部３０３は、前記保存要求に応答して、前回の保存タイミング以降に操作履歴のあるネットワーク機器から設定ファイルを取得する。
【００６７】
更新有無判定部３０４は、前記ステップＳ２０４において、ネットワーク機器ごとに、取得した設定ファイルと、前回の保存タイミングを代表する第１識別子（セッション識別子IDs）と紐付けられている既登録の設定ファイルとを比較して更新の有無を判定する。新規保存部３１２は、前記ステップＳ２０５において、更新されている設定ファイルをネットワーク機器から取得し、今回を保存タイミングとする第１識別子（セッション識別子IDs）および今回を新規保存タイミングとする第２識別子（実セッション識別子IDrs）と紐付けて前記設定ファイルデータベース３０１に保存する。
【００６８】
保存部３１１は、前記ステップＳ２０９において、設定ファイルが更新されていないネットワーク機器の既登録の設定ファイルをコピーして、今回の保存タイミングを代表する第１識別子および当該設定ファイルに紐付けられている第２識別子と紐付けて前記設定ファイルデータベース３０１に保存する。切戻要求検知部３０６は、前記ステップＳ３において、クライアント１から送信される切戻要求を検知する。切戻対象特定部３０７は、前記ステップＳ４０３において、復元時刻を含む切戻要求に応答して、切戻対象のネットワーク機器を特定する。設定ファイル切戻部３０８は、前記ステップＳ４０５において、切戻対象のネットワーク機器に、前記復元時刻を代表する第１識別子と紐付けられている既登録の設定ファイルを切り戻す。
【００６９】
前記切戻対象特定部３０７は、前記ステップＳ４０３において、最新の保存タイミングを代表する第１識別子（セッション識別子IDs）と紐付けられている既登録の設定ファイルの第２識別子（実セッション識別子IDrs）を読み出す第１読出部３０７ａ、前記復元時刻を代表する第１識別子（セッション識別子IDs）と紐付けられている既登録の設定ファイルの第２識別子（実セッション識別子IDrs）を読み出す第２読出部３０７ｂ、および読み出された第２識別子同士を比較する比較部３０７ｃを含み、前記比較結果に基づいて切戻対象のネットワーク機器を特定する。
【００７０】
前記設定ファイル切戻部３０８は、前記ステップＳ６１，Ｓ６２において、最新の保存タイミングを代表する第１識別子と紐付けられている既登録の設定ファイルと、復元時刻を代表する第１識別子と紐付けられている既登録の設定ファイルとを比較して、変更項目および変更内容を分析する変更分析部３０８ｅを含む。
【００７１】
前記設定ファイル切戻部３０８はさらに、変更内容が「削除」の項目に関して、当該削除されている項目を設定ファイルに追加するコマンドを前記ステップＳ７３で生成する第１コマンド生成部３０８ａ、変更内容が「追加」の項目に関して、当該追加されている項目を設定ファイルから削除するコマンドを前記ステップＳ７４で生成する第２コマンド生成部３０８ｂ、変更内容が「変更」の項目に関して、当該変更後の項目を設定ファイルから削除するコマンド、および変更前の項目を設定ファイルに追加するコマンドを、それぞれ前記ステップＳ７５，Ｓ７６で生成する第３コマンド生成部３０８ｃ、および前記各コマンドをネットワーク機器へ前記ステップＳ６８で送信して実行させるコマンド送信部３０８ｄを含む。
【００７２】
メッセージ送受信部３０９は、前記ステップＳ８２において、各ネットワーク機器（ここでは、ルータまたはスイッチ）を対象に経路調査用のtracerouteを順次に実行し、ICMPエコー要求メッセージおよびICMP Time Exceededエラーメッセージを送受信する。ホップ数検知部３１０は、前記ステップＳ８４〜８６において、前記各ネットワーク機器から返信された応答メッセージに基づいて、各ネットワーク機器までのホップ数を検知する。切戻順序決定部３１３は、前記ステップＳ８７において、前記各ネットワーク機器までのホップ数に基づいてネットワーク機器の切戻順序を決定する。前記切戻対象特定部３０７は、前記切戻順序に基づいて、自身からのホップ数が多いネットワーク機器から優先的にネットワーク設定を切り戻す。
【図面の簡単な説明】
【００７３】
【図１】本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【図２】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=１と紐付けられて保存される様子を模式的に表現した図である。
【図３】オペレーションサーバ３の動作を示したフローチャートである。
【図４】設定ファイル保存処理の手順を示したフローチャートである。
【図５】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=１に基づいて復元される様子を模式的に表現した図（その１）である。
【図６】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=１に基づいて復元される様子を模式的に表現した図（その２）である。
【図７】設定ファイル切戻処理の手順を示したフローチャートである。
【図８】設定ファイル切戻処理の手順を示したシーケンスフローである。
【図９】Cisco社製ルータの設定ファイルの一例を示した図である。
【図１０】設定ファイルをマージにより切り戻したときに齟齬が生じる様子を説明した図である。
【図１１】第２の切戻方法の手順を示したフローチャートである。
【図１２】コマンド生成の手順を示したフローチャートである。
【図１３】コマンドの内容を説明した図（その１）である。
【図１４】コマンドの内容を説明した図（その２）である。
【図１５】コマンドの内容を説明した図（その３）である。
【図１６】ルータの切り戻し順序の決定方法を説明した図である。
【図１７】ルータの切り戻し順序を示したフローチャートである。
【図１８】オペレーションサーバの機能ブロックである。
【符号の説明】
【００７４】
１…ネットワーク，２…クライアント，３…オペレーションサーバ，３０１…設定ファイルデータベース，３０２…操作履歴監視部，３０３…設定ファイル取得部，３０４…更新有無判定部，３０５…保存要求検知部，３０６…切戻要求検知部，３０７…切戻対象特定部，３０８…設定ファイル切戻部，３０９…メッセージ送受信部，３１０…ホップ数検知部，３１１…保存部，３１２…新規保存部，３１３…切戻順序決定部
【図１】
0004777307.tif 000002
【図２】
0004777307.tif 000003
【図３】
0004777307.tif 000004
【図４】
0004777307.tif 000005
【図５】
0004777307.tif 000006
【図６】
0004777307.tif 000007
【図７】
0004777307.tif 000008
【図８】
0004777307.tif 000009
【図９】
0004777307.tif 000010
【図１０】
0004777307.tif 000011
【図１１】
0004777307.tif 000012
【図１２】
0004777307.tif 000013
【図１３】
0004777307.tif 000014
【図１４】
0004777307.tif 000015
【図１５】
0004777307.tif 000016
【図１６】
0004777307.tif 000017
【図１７】
0004777307.tif 000018
【図１８】
0004777307.tif 000019