(57)【要約】【課題】保守前後に円滑にルーティング要素をコストアウト／コストインできるようにする。【解決手段】コンピュータネットワーク内のルーティング要素を選択し（４０）、ビット単位論理積演算等によりそのインタフェースアドレスにサブネットマスクを適用して発生させたサブネットアドレスから最大のもの、最小のもの及び選択されているルーティング要素のアドレスを除外して隣接ルーティング要素のアドレスを判別し（４２）、その隣接ルーティング要素から取得した（４４）設定情報に基づきネットワークトポロジを判別し（４６）、そのネットワークトポロジ内から選択した（５０）リンクに係るコストをそのリンクがルーティングに使用されなくなるよう修正して（５４）、選択されているルーティング要素周辺にネットワークトラフィックをルーティングする。【選択図】図３ａ
2006087103.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワークに係る複数個のルーティング要素の中からルーティング要素を選択するステップと、
選択されたルーティング要素に係るインタフェースアドレスに対しサブネットマスクを適用することにより複数個のサブネットアドレスを発生させるステップと、
選択されているルーティング要素にリンクしている隣接ルーティング要素のアドレスをこれらのサブネットアドレスの中から判別するステップと、
そのアドレスを用い隣接ルーティング要素からコスト初期値を含む設定情報を取得するステップと、
この設定情報に基づき複数個のリンクを含むネットワークトポロジを判別するステップと、
これらのリンクの中からコスト初期値が設定されているリンクを選択するステップと、
そのリンクを介したルーティングが望まれなくなり選択されているルーティング要素周辺にそのネットワークトラフィックがルーティングされることとなるよう、選択されたリンクに係るコストを修正するステップと、
を有し、コンピュータネットワーク内でネットワークトラフィックをリルーティングさせる方法。
【請求項２】
請求項１記載の方法において、更に、
オペレータから認証情報を受け取るステップと、
その認証情報が正しいものかどうか確認するステップと、
その認証情報が正しいものであることを確認できた場合にそのオペレータによるアクセスを許可するステップと、
を有する方法。
【請求項３】
請求項１記載の方法において、更に、
選択されているリンクに係るコストを修正する前にコスト初期値を含む設定情報を格納しておくステップと、
選択されているリンクに係るコストに対する修正を経た後にそのコストをコスト初期値へと復元するステップと、
を有する方法。
【請求項４】
請求項１記載の方法において、選択されたリンクに係るコストを修正するステップが、
選択されているリンクに係るコストを入力するステップと、
選択されているリンクに係るコストをプリビューするステップと、
選択されているリンクに係るコストをオペレータが承認するステップと、
オペレータによるコスト承認に応じそのコストを選択されているリンクに対し適用するステップと、
を含む方法。
【請求項５】
請求項１記載の方法において、更に、ネットワークトポロジを表示するステップを有する方法。
【請求項６】
請求項１記載の方法において、更に、設定情報をアーカイブするステップを有する方法。
【請求項７】
請求項１記載の方法において、更に、選択されているルーティング要素に対する保守を実行するステップを有する方法。
【請求項８】
請求項１記載の方法において、サブネットマスクを適用するステップが、選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させるステップを含む方法。
【請求項９】
請求項８記載の方法において、複数個のサブネットアドレスの中から隣接ルーティング要素のアドレスを判別するステップが、
これらのサブネットアドレスのうち最大及び最小のサブネットアドレスを除外するステップと、
更にそれらのサブネットアドレスのうち選択されているルーティング要素のアドレスを除外するステップと、
その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別するステップと、
を含む方法。
【請求項１０】
請求項８記載の方法であって、自動的に又はマニュアル的に実行される方法。
【請求項１１】
処理デバイス並びにこれに機能的に結合している入力デバイス及びディスプレイを備え、
処理デバイスが、コンピュータネットワークに関連付けられている複数個のルーティング要素の中から入力デバイスを介しオペレータによりルーティング要素を選択させ、そのルーティング要素に係るインタフェースアドレスに対しサブネットマスクを適用することにより複数個のサブネットアドレスを発生させ、選択されているルーティング要素にリンクしている隣接ルーティング要素のアドレスをこれらのサブネットアドレスの中から判別し、隣接ルーティング要素からコスト初期値を含む設定情報を取得し、この設定情報に基づき複数個のリンクを含むネットワークトポロジを判別し、これらのリンクの中からコスト初期値が設定されているリンクを入力デバイスを介しオペレータにより選択させ、更にそのリンクを介したルーティングが望まれなくなり選択されているルーティング要素周辺にそのネットワークトラフィックがルーティングされることとなるよう入力デバイスを介しオペレータにより当該選択されたリンクに係るコストを修正させることによって、
修正後のコストに基づき複数個のルーティング要素を含むコンピュータネットワーク内でネットワークトラフィックをリルーティングさせる装置。
【請求項１２】
請求項１１記載の装置において、処理デバイスが、オペレータから認証情報を受け取り、その認証情報が正しいものかどうか確認し、その認証情報が正しいものであることを確認できた場合にそのオペレータによるアクセスを許可する装置。
【請求項１３】
請求項１１記載の装置において、処理デバイスが、選択されているリンクに係るコストを修正する前に処理デバイスに機能的に結合しているメモリデバイス内に設定情報を格納し、選択されているリンクに係るコストを修正した後に選択されているリンクに係るコストをメモリデバイス内のコスト初期値へと復元する装置。
【請求項１４】
請求項１１記載の装置において、オペレータが選択されているリンクに係るコストを入力デバイスを介し入力するとそのコストがディスプレイによりオペレータに対しプリビューされ、オペレータが入力デバイスを介しそのコストを承認すると処理デバイスがそのコストをそのリンクに対し適用する装置。
【請求項１５】
請求項１１記載の装置において、ディスプレイによりネットワークトポロジを表示する装置。
【請求項１６】
請求項１１記載の装置において、設定情報をメモリ内にアーカイブする装置。
【請求項１７】
請求項１１記載の装置において、選択されているルーティング要素に対する保守を実行する装置。
【請求項１８】
請求項１１記載の装置において、処理デバイスが、選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させる装置。
【請求項１９】
請求項１８記載の装置において、処理デバイスが、発生したサブネットアドレスのうち最大及び最小のサブネットアドレスを除外し、更にそれらサブネットアドレスから選択されているルーティング要素のアドレスを除外し、その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別する装置。
【請求項２０】
請求項１１記載の装置において、処理デバイスが、ＡＳＩＣ、マイクロプロセッサ、マイクロコントローラ、ＦＰＧＡ及びコンピュータのうち少なくとも何れかを含む装置。
【請求項２１】
請求項１１記載の装置において、入力デバイスが、キーボード、マウス、タッチパッド及びトラックボールのうち少なくとも何れかを含む装置。
【請求項２２】
選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させるステップと、
これらサブネットアドレスのうち最大及び最小のサブネットアドレスを除外するステップと、
更にそれらサブネットアドレスのうち選択されているルーティング要素のアドレスを除外するステップと、
その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別するステップと、
を有し、コンピュータネットワーク内にあり選択されているルーティング要素に対する隣接ルーティング要素のアドレスを判別する方法。
【請求項２３】
処理デバイス、これに機能的に結合しており選択されているルーティング要素の選択に使用される入力デバイス、並びに処理デバイスに機能的に結合しているディスプレイを備え、
処理デバイスが、選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させ、これらサブネットアドレスのうち最大及び最小のサブネットアドレスを除外し、更にそれらサブネットアドレスのうち選択されているルーティング要素のアドレスを除外し、その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別することにより、
コンピュータネットワーク内にあり選択されているルーティング要素に対する隣接ルーティング要素のアドレスを判別する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概略、ネットワーク通信システムの保守に関する。本発明は、より詳細には、保守対象になっているルーティング要素を避けるようネットワークトラフィックを自動リルーティングする方法に関する。
【背景技術】
【０００２】
リルーティングが重要になるのはネットワークルータに対する定時保守や随時保守の際である。こういった保守はネットワークシステムアドミニストレータ等が行うものであるが、その作業は長々しいものでありしばしばリルーティング手順にて誤り乃至エラーが発生する。また、ＩＰ(Internet Protocol)ベース通信ネットワークにおけるダイナミックルーティングは、通常はＩＧＰ(Interior Gateway Protocol)例えばＯＳＰＦ(Open Shortest Path First)ルーティングプロトコルによって、実行される。ＯＳＰＦルーティングプロトコルは、基本的にはネットワーク間接続乃至ゲートウェイ用のプロトコルであり、外部ネットワークと通信を行えるようにするためのプロトコルである。
【０００３】
ＯＳＰＦルーティングプロトコルによるルーティングは、ルーティングデータベースを保有しているネットワークノードそれぞれにより実行される。ルーティングデータベースはネットワークトポロジ（例えばネットワークノード間の様々なリンク）に関する情報を含むデータベースであり、宛先サイトへのメッセージ送信経路を決定する際、各ノードにて使用される。これにより決定されたルーティング情報乃至経路情報は、通常はルーティングテーブル内に格納される。また、ルーティングデータベースの更新は、隣接ノード間でのＬＳＡ(Link-State Advertisement)パケットの交換によって行われる。この種のパケットは、一般に、現存するネットワークノード間リンクに関する情報を含んでおり、通常、周期的にまたネットワークトポロジ変化時に転送される。その際、ブロードキャスト型ネットワーク内であれば、隣接要素（群）宛にＬＳＡパケット（群）をフルードさせる特定のルータがＯＳＰＦプロトコルによって指定され、非ブロードキャスト型ネットワーク内であれば、ポイントトゥポイントパケットやブロードキャストパケットを介しＬＳＡパケット（群）が送信される。即ち、ＯＳＰＦプロトコルによれば、ＩＰ通信ネットワークのトポロジを確認することや使用するルート（群）を決定することができる。
【０００４】
ＯＳＰＦプロトコルによれば、更に、隣接要素探索及び保守用パケット或いはハロー型パケットの周期的送受信をネットワークノード間で行うことによって、使用不能通信リンク（群）を検出することもできる。即ち、そのノードに隣り合うノードを探すため、並びにそのノードとその隣接ノードとの間で確実に通信を行えるようにするため、各ノードによりこれらのパケットが周期的に送信される。加えて、ＯＳＰＦプロトコルによれば、定時保守や非ルーチン的保守に伴い特定のネットワークノードによるサービスが非アクティブになっているとき、使用不能リンク（群）を含んでおりもはや通り抜けられなくなっている現在ルートに代えて、別のルートを採用することができる。しかしながら、ＯＳＰＦプロトコルには幾つかの問題点がある。
【０００５】
【特許文献１】米国特許第５８０５５９９号明細書
【特許文献２】米国特許第５９４６３２４号明細書
【特許文献３】米国特許第５９７４０２８号明細書
【非特許文献１】A. Retena, L. Nguyen, R. White, A. Zinin, D. McPherson, "RFC3137 OSPF Stub Router Advertisement", The Internet Society (2001)
【非特許文献２】B. Daniel, B. Omer, R. Carmel, "OSPF Open Shortest Path First", Final Project in "Protocols and Computer Networks", Dr. Derby Koren, Tel-Aviv University
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特に、このプロトコルにおいては、壊れ又は使用できなくなっているルートを検出し修復するのにある程度の時間が必要である。これは、予測していなかった原因でそのルートが使用不能になったときには不可避であるとはいえ、プロトコル効率を最適値より下げる原因となっている。ここでいう最適値とは、ルート（群）の存続可能性を左右するネットワークトポロジ変化に関する知識が先験的に与えられておりその知識を利用できるとき、例えばネットワークノードについて組まれている保守又は更新スケジュールに従いネットワークトポロジを変化させるときに、得られる値のことである。この場合にプロトコル効率が高まるのは、ネットワークトポロジ変化に先立って代替ルート（群）を決定できるためである。
【０００７】
また、ＯＳＰＦは、ドメイン間ルーティングプロトコルとして広く用いられるプロトコルであると同時に、ＬＳＡプロトコルでもある。これは、自律系(ＡＳ:autonomous system)内の各ルータがネットワークトポロジを調べその全トポロジビューを構築することを、意味している。このトポロジビューは概念的には指向線図(directed graph)である。トポロジビューを表すグラフ即ちトポロジグラフにおいては、各ルータがトポロジ図形の頂点として表され、隣接ルータ間リンクそれぞれが方向性のない辺（エッジ）として表される。また、そのルータの設定(configuration)ファイル内での強制割当によって、各リンクに荷重(weight)例えばコストが対応づけられる。各ルータは、この加重トポロジグラフ(weighted topology graph)を使用して自分を起点とした最短経路ツリーを計算し、その結果を適用して自分用のフォワーディングテーブルを構築する。これによって、リンク荷重から見て最短な経路に沿ってその宛先へとパケットをフォワーディング（先送り乃至転送）することができる。
【０００８】
本願では、最短経路ツリーの計算をＳＰＦ(Shortest Path First)計算と呼び、その結果得られるツリーをＳＰＴ(Shortest-Path Tree)と呼ぶ。ＯＳＰＦプロトコルによるトポロジビューはエリア分割することができ、これらのエリアは２個の階層を有する階層構造を形成している。そのうちバックボーンエリアに当たるエリア０は階層構造の最上位に位置しており、非バックボーンエリア（エリア１、エリア２等々）に対する接続可能性を示している。ＯＳＰＦプロトコルによれば、各リンクに対し厳密に１エリアが割り当てられる。
【０００９】
ルータのうち複数のエリアにリンクしているルータをボーダルータと呼ぶ。ルータは、自分がリンクしている先のエリア毎に完全なトポロジグラフを保持する一方、リモートエリア（群）については完全なトポロジグラフを保持しない。但し、自分のエリアに属する幾つかのボーダルータからリモートエリア内の各ノードに至る経路（群）の総荷重に関する情報には、アクセスできる。更に、ＯＳＰＦプロトコルにおいては、他のルーティングプロトコル例えばＢＧＰ(Border Gateway Protocol)からルーティング情報をインポートできる。他のプロトコルからＯＳＰＦプロトコルへとルーティング情報をインポートするルータを、ＡＳＢＲ(Autonomous System Border Router)と呼ぶ。
【００１０】
ＯＳＰＦプロトコルによればＳＰＦ計算が三段階で実行される。第１段階においては、ＯＳＰＦプロトコルにより各エリアのトポロジグラフについてＳＰＴ（群）が計算され、これによりエリア内（イントラエリア）宛先へのルート（群）が計算される。この段階をイントラエリア段階と呼ぶ。第２段階においては、ＯＳＰＦプロトコルにより経路荷重情報に基づき適当なボーダルータが中間ノードとして選択され、これによって各リモートノードへのルート（群）が計算される。この段階をインタエリア（エリア間）段階と呼ぶ。
【００１１】
最終段階においては、ＯＳＰＦプロトコルにより適当なＡＳＢＲが中間ノードとして選択され、これにより各外部ノードへのルート（群）が計算される。この段階を外部段階と呼ぶ。ＯＳＰＦプロトコルが稼働しているルータ（群）は、使用できるローカル接続についての情報を、責任を持ってＬＳＡパケット内に記述する。これらのＬＳＡパケットはネットワークに属する他の全てのルータに対して信頼性良くフルードされるため、これを受け取る側のルータ（群）はノード別のトポロジビューを構築することができる。ルータメモリ内におけるＬＳＡパケットの集まりはリンク状態データベースと呼ばれ、概念的にはそのルータについてのトポロジグラフを形成している。
【００１２】
また、ＩＰアドレッシングの考え方は、周知の通り次のようなものである。まず、ＩＰアドレスは、ＩＰネットワーク上におけるノード乃至ホスト接続に対しユニークに付与される識別子である。ＩＰアドレスは３２ビットの二進数であり、通常は４個の十進数によって表現される。各十進数は０〜２５５の値域を有する８ビット分の数値であり、十進数間はドットで区切って表記される。この表記法はドット区切り十進表記(dotted decimal notation)として知られている。例えば、ＩＰアドレス１４０．１７９．２２０．２００は二進表記では１０００１１００．１０１１００１１．１１０１１１００．１１００１０００である。また、デフォルトのサブネットマスク（次述）は、通常、クラスＡであれば２５５．０．０．０即ち１１１１１１１１．００００００００．００００００００．００００００００であり、クラスＢであれば２５５．２５５．０．０即ち１１１１１１１１．１１１１１１１１．００００００００．００００００００であり、クラスＣであれば２５５．２５５．２５５．０即ち１１１１１１１１．１１１１１１１１．１１１１１１１１．００００００００である。
【００１３】
ＩＰアドレスは２個の部部分を有しており、そのうち１個はネットワークを、もう１個はノードを、識別する部分である。ＩＰアドレスのうちどの部分が前者（ネットワークアドレス）でどの部分が後者（ノードアドレス）か決めるのは、そのアドレスのクラス及びサブネットマスクである。
【００１４】
ＩＰアドレスに対しサブネットマスクを適用すれば、そのアドレス中のネットワークアドレス部分及びノードアドレス部分を識別できる。まず、サブネットマスク中では、ネットワークビットが１値により、ノードビットが０値により、それぞれ表されている。従って、ＩＰアドレスとそのサブネットマスクのビット単位論理積（ＡＮＤ）演算を行うことによってネットワークアドレス乃至ネットワーク番号が得られる。例えば、クラスＢのＩＰアドレス１４０．１７９．２４０．２００の二進表記１０００１１００．１０１１００１１．１１１１００００．１１００１０００と、デフォルトのクラスＢサブネットマスク２５５．２５５．０．０の二進表記１１１１１１１１．１１１１１１１１．００００００００．００００００００とのビット単位論理積演算を実行することにより、ネットワークアドレス１０００１１００．１０１１００１１．００００００００．００００００００即ち１４０．１７９．０．０が得られる。
【００１５】
更に、ＣＩＤＲ(Classless InterDomain Routing)によれば、上述のクラスフル表記に代えてサブネットマスクの表記を短縮した簡略表記を用いることができる。この表記においては、サブネットマスクの各構成ビットを明示するのに代えて、サブネットマスクの先頭から連なっている「１」の個数を示す。例えば、ＩＰアドレスを１９２．６０．１２８．０、サブネットマスクを２５５．２５５．２５２．０（二進表記では１１１１１１１１．１１１１１１１１．１１１１１１００．００００００００）と表すのに代えて、ネットワークアドレスを単純に１９２．６０．１２８．０／２２と表す。この表記中の１９２．６０．１２８．０はネットワークの開始アドレスを示しており、／２２はそのアドレスのネットワークアドレス部分を指定する「１」の個数即ち２２を示している。
【００１６】
こういったＣＩＤＲによる表記によれば、従来のクラスフル表記におけるクラスをも表記できる。例えば、クラスＡサブネットマスク２５５．０．０．０は／８、クラスＢサブネットマスク２５５．２５５．０．０は／１６、クラスＣサブネットマスク２５５．２５５．２５５．０は／２４と、表すことができる。
【００１７】
また、ＯＳＰＦプロトコル及び静的ルートは、ＶＬＳＭ(Variable-Length Subnet Mask)をサポートしている。ＶＬＳＭを用いれば、同一番号のネットワークに対してインタフェース毎に異なるサブネットマスクを使用できる。例えば、３０ビットサブネットマスクを使用し残り２ビットのアドレス空間をインタフェースホストアドレス用にリザーブすれば、ポイントトゥポイントリンク上の２個のホストエンドポイント向けに十分なホストアドレス空間を提供できる。
【００１８】
また、例えばルーティング可能なネットワーク上で通信サービスプロバイダが各種定期保守乃至更新を実施するデータネットワークにおいては、ルーティングリコンバージェンス（ルーティングの可否再決定／再収束）に伴ってデータパケットのロス及びディレイが発生する。また、複雑な設定変更を非自動的に実施する際には人的エラーが生じやすい。例えば、およそ３３個の隣接要素を有する典型的なルータ例えばニューヨークバックボーンルータについてコスト変更をマニュアル実施するには、およそ１〜２時間がかかる。この時間の大部分は、ネットワークマップに従いまたローカルリンクＩＰアドレスを用い当て推量で隣接要素を探す作業等に費やされるため、オペレータは保守終了後の残りの時間でマニュアル作業を実施しなければならない。ここでいうマニュアル作業とは、マニュアルで書き取っておいた現在のコスト設定値をマニュアルで復元する作業である。上の例では、３３個の隣接要素（例えばルータ）上で１個ずつこれを行わねばならない。多くの場合、このマニュアル作業は、リンクコスト設定値の間違いや亡失、非対称コスト復元等を招くものである。これは、ＰＯＥ(Plant Operator Error)やＤＰＭ(Defects per Million)増加を引き起こす原因となっている。
【００１９】
以上の問題点に鑑み、本発明は、オペレータ入力用のインタフェースを提供することによって、コンピュータネットワーク内のルーティング要素を円滑にコストアウトするタスクをそのルーティング要素に対する保守の実施前に実行できるようにし、また保守後においてはこれとは逆の手順を実行できるようにすること、特にこれらのタスクを自動実行かマニュアル実行かによらずネットワークトポロジに関する先験的な知識なしで実行できるようにすることを、目的とする。
【００２０】
本発明は、また、コンピュータネットワーク内のルーティング要素を再設定(reconfiguration)する作業に伴う人的エラー、例えばコスト変更間違い、インタフェーススキッピング、非対称コスト変更等の人的エラーの発生を抑制乃至防止することを目的とする。
【００２１】
本発明は、また、コンピュータネットワーク内のルーティング要素を保守する際のオペレータ作業量を顕著に減らすことを目的とする。
【００２２】
本発明は、また、コンピュータネットワーク内におけるパケットロスを減らすことによって、保守手順を実質的に改善し保守能力を実質的に向上させることを目的とする。
【００２３】
本発明は、また、管理ネットワークから保守対象ルータ及びその隣接要素のインタフェースＩＰアドレスへのインタフェースＩＰアドレス到達可能性についてトラブルシューティングを実施できる診断インタフェースを提供することを目的とする。
【００２４】
本発明は、また、隣接ルーティング要素のＩＰアドレスを判別する方法、特にネットワークトポロジに関する先験的な知識なしで自動的に又はマニュアル操作に応じ実行できる方法を提供することを、目的とする。
【課題を解決するための手段】
【００２５】
本発明によれば、これらの目的をそれぞれ単独で又は他の目的と共に達成できる。また、本発明は、本願に添付されている特許請求の範囲により明示的に要求されていない限り、複数個の目的を共に達成できるものと解釈されるべきではない。
【００２６】
本発明の一実施形態に係る方法は、コンピュータネットワーク内でルーティング要素周辺にネットワークトラフィックをルーティングする方法であって、ルーティング要素を選択するステップと、選択されたルーティング要素に係るインタフェースアドレスに対しサブネットマスクを適用することにより複数個のサブネットアドレスを発生させるステップと、選択されているルーティング要素にリンクしている隣接ルーティング要素のアドレスをこれらのサブネットアドレスの中から判別するステップと、この隣接ルーティング要素から設定情報を取得するステップと、この設定情報に基づきネットワークトポロジを判別するステップと、このネットワークトポロジ内の複数個のリンクから１個を選択するステップと、選択されたリンクに係るコストを修正するステップと、を有する。修正されたコストを適用することによって、この選択されているリンクを用いたルーティングが望まれなくなり、その結果、ネットワークトラフィックが選択されているルーティング要素の周辺にルーティングされる。
【００２７】
本方法には、更に、オペレータから認証情報を受け取るステップと、その認証情報が正しいものかどうか確認するステップと、その認証情報が正しいものであることを確認できた場合にアクセスを許可するステップとを、含めることができる。選択されているリンクに係るコストを修正する前に設定情報を格納しておけば、それを当該修正より後の復元に使用できる。選択されているリンクに係るコストを修正するステップには、選択されているリンクに係るコストを入力するステップと、そのコストをプリビューするステップと、そのコストを承認するステップと、この承認に応じ選択されているリンクに対しそのコストを適用するステップとを、含めることができる。選択されているルーティング要素に対する保守は選択されているリンクに係るコストの修正後に行えばよく、設定情報の復元は保守後に行えばよい。
【００２８】
本発明の他の実施形態に係る装置は、処理デバイス並びにこれに機能的に結合している入力デバイス及びディスプレイを備え、そのコンピュータネットワークに関連付けられている複数個のルーティング要素を含むコンピュータネットワーク内でルーティング要素周辺にネットワークトラフィックをルーティングする装置である。オペレータは入力デバイスを用いてルーティング要素を選択する。
【００２９】
処理デバイスは、選択されているルーティング要素に係るインタフェースアドレスに対しサブネットマスクを適用することによって複数個のサブネットアドレスを発生させ、選択されているルーティング要素にリンクしている隣接ルーティング要素のアドレスをこれらのサブネットアドレスの中から判別し、隣接ルーティング要素から設定情報を取得する。処理デバイスは設定情報に基づきネットワークトポロジを判別し、オペレータは入力デバイスを介してリンクを選択する。オペレータは選択されたリンクに係るコストを入力デバイスを介して修正する。このコスト修正によって、この選択されているリンクを介したルーティングが望まれなくなり、それによって、ネットワークトラフィックが選択されているルーティング要素周辺にルーティングされる。
【００３０】
処理デバイスは、例えば、オペレータから認証情報を受け取り、その認証情報が正しいものかどうか確認する。本装置は、例えば、処理デバイスに機能的に結合しているメモリデバイスを備えており、このメモリデバイスにはコスト修正に先立って設定情報が格納される。処理デバイスは、コスト修正後にメモリデバイスからコストを好適に復元する。
【００３１】
処理デバイスは、例えば、ＡＳＩＣ(application specific integrated circuit)、マイクロプロセッサ、マイクロコントローラ、ＦＰＧＡ(field programmable gate array)及びコンピュータのうち少なくとも何れかを含む。入力デバイスは、例えば、キーボード、マウス、タッチパッド及びトラックボールのうち少なくとも何れかを含む。
【００３２】
本発明の他の実施形態に係る方法は、コンピュータネットワーク内にあり選択されているルーティング要素に対する隣接ルーティング要素のアドレスを判別する方法であって、選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させるステップと、これらのサブネットアドレスから最大及び最小のサブネットアドレスを除外するステップと、更にそれらのサブネットアドレスから選択されているルーティング要素のアドレスを除外するステップと、その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別するステップと、を有する。
【００３３】
本発明の他の実施形態に係る装置は、処理デバイス、入力デバイス及びディスプレイを備え、コンピュータネットワーク内にあり選択されているルーティング要素に対する隣接ルーティング要素のアドレスを判別する装置である。処理デバイスは、選択されているルーティング要素に係るインタフェースアドレスとサブネットマスクとをビット単位論理積演算により結合させた結果から複数個のサブネットアドレスを発生させ、これらのサブネットアドレスから最大及び最小のサブネットアドレスを除外し、更にそれらのサブネットアドレスから選択されているルーティング要素のアドレスを除外し、その結果残ったサブネットアドレスを隣接ルーティング要素のアドレスとして識別する。
【００３４】
本発明の他の目的及び構成上の特徴事項は、別紙図面を参照して行う以下の詳細な説明から明らかとなろう。なお、図面は例示説明のために添付されているに過ぎず、本発明の技術的範囲を定めるものではないことを、了解されたい。
【発明を実施するための最良の形態】
【００３５】
本発明によれば、従来技術における問題点が基本的に解決される。それは、オペレーションエンジニアがルーティング要素を選択できるようにしてあり、選択されたルーティング要素におけるルーティングプロトコル設定例えばＯＳＰＦプロトコル設定が現在どのようになっているかをそのルーティング要素に対し自動的に問い合わせるようにしてあり、そしてそのルーティング要素を円滑にコストアウトできるようＯＳＰＦ設定のうち何個かの項目を変更可能にしてあるためである。ここに、「コスト」とは、各ルータインタフェース乃至リンクの出力側に関連付けられておりシステムアドミニストレータが設定できる項目であり、コストが低いインタフェースほどデータトラフィックのフォワーディングに用いられやすい。また、「コストアウト」とは、その対象とされているルーティング要素につながるリンクに係るコストを調整すること、特に他のルーティング要素においてこのリンクに属する経路を避ける傾向が生まれていくよう調整することをいい、あるルーティング要素をコストアウトすることによりそのルーティング素子からトラフィックを逸らすことができる。また、現在の設定内容は、好ましくは、保守終了後における自動復元用に記録される。
【００３６】
比較的新しく発展途上の段階にあるＩＰアプリケーション、例えばＶｏＩＰ(Voice Over-IP)やＯＬＧ(OnLine Gaming)は、保守作業に伴うＩＰインフラストラクチャの変化に対してますます敏感になってきている。顧客に与える影響を抑えるため、本発明においては、ＩＰネットワーク用の新規なネットワーク保守手順を提供している。このネットワーク保守手順は、保守対象と目されているルータに対する保守の実施前に、そのルータに接続されているリンクに係るＯＳＰＦコストを修正できる手順である。
【００３７】
但し、ルータからトラフィックを逸らし顧客に対する影響を抑えるというこの手法をマニュアルで実施したとすると、所要時間もかさむし人的エラーも発生しやすくなる。これは、１個のルータに関連付けられているリンクが少なくなく、それら多数のリンクについてコストを修正しなければならなくなるためである。オペレータによる人的エラーはＩＰバックボーンにおけるＤＰＭの主たる発生源であるし、保守作業者との意思疎通がうまくいかないときは間違ったルーティング要素に影響が及びひいては顧客に影響が及ぶことがあり得る。
【００３８】
本発明に係るＲＥＡＣＴ(Routing Elements Automated Change Tool)は、ルーティング要素に対する保守作業前後手順によりＯＳＰＦコスト設定変更を自動実行できるようにしたツールであり、円滑なリコンバージェンス及び人的エラー防止に役立つツールである。このツールは、ルーティングノードをネットワークから円滑に除去できるだけでなく、保守が終了したルータをその通常のフォワーディング動作モードに再導入できるツールである。
【００３９】
ＲＥＡＣＴは、テキスト処理用のプログラミング言語例えばＰＥＡＲＬ(Practical Extraction and Report Langugage)スクリプトにより好適に作成・記述できる。ＲＥＡＣＴは、保守の際にＩＰルーティング要素を円滑にコストアウトするツールであり、数多くのベンダから供給されているＩＰルーティング要素に対し単一のインタフェースからアクセスできるよう、各種のルーティング要素から現在の設定内容を読み出して修正する能力を有している。
【００４０】
好適な実施形態においては、コスト設定についての問い合わせと可視化（表示）が単一のコマンドによって実行され、ルーティング要素に係るコストの修正設定がトラフィックに影響を及ぼさない制御された環境にて行われる。問い合わせによって取得した現在のコストは構造化されたユニークなファイル内に記録される。好適な実施形態においては、ＲＥＡＣＴは、ルーティング要素（群）が選択されると保守作業者に対して視覚により通知する。好適な実施形態においては、ＲＥＡＣＴは、保守が成功裏に終了すると先に記録済の初期設定を復元することによってそのルーティング要素を自動的にそのルーティング経路内に復帰させる。好適な実施形態においては、ＲＥＡＣＴは、設定修正値を適用する前にオペレータに対しそれをプリビューする。ＲＥＡＣＴは、所定ガイドラインに沿って変更範囲を制限するよう作成することもできる。
【００４１】
図１に、本発明の一実施形態に従い構成されたＲＥＡＣＴモジュールを使用できる通信ネットワークの例を示す。このネットワーク１０に含まれる複数個のネットワークノード１２は、このネットワーク１０を介して通信を行うことができ、ネットワーク１０は様々に利用することができる。例えば、ネットワークノード１２は、この通信ネットワーク１０を介し他のノード１２に転送する情報を収集して処理することができる。各ネットワークノード１２は、好ましくは、後に図２により詳細に説明するネットワークノードルータ１６を有している。このルータ１６は、ポイントトゥポイントリンク（群）１４を介し他のネットワークノードルータ（群）１６と相互接続されている。
【００４２】
通信ネットワーク１０においては、好ましくは、当該ネットワーク１０を介して情報をルーティングできるようにするため、適当なルーティングプロトコルが採用される。その際、本件技術分野にて知られているどのようなルーティングプロトコルでも採用できるが、例えばＯＳＰＦ−ＩＰを用いれば動的経路探索を実行することができる。ＯＳＰＦプロトコルにおいては、図示しないルーティングデータベースをネットワーク１０内の各ネットワークノード１２によって保持させる。ルーティングデータベース中の情報を使用することによって、ネットワークノード１２は、パケットのルーティングに適する経路を決定できる。
【００４３】
通常、ルーティングデータベースには様々なネットワークノード１２間のリンク１４に関する情報が含まれており、これに基づき更新されるルーティング情報は通常はルーティングテーブル上に保持されている。ＯＳＰＦプロトコルはリンクステートタイプのルーティングプロトコルであり、ＬＳＡタイプパケット乃至データベース更新パケットを各ノード１２に送信してデータベース同士をノード間で同期させる。この種のパケットは好ましくは複数個のポイントトゥポイントメッセージによって隣接ネットワークノード１２に送信される。このポイントトゥポイントメッセージは送信元ノードから特定の宛先ノードに宛てたメッセージであり、例えばノードのデータベースに変化を引き起こす性格の変化がネットワーク１０に生じたときに送信される。
【００４４】
データベース更新パケットを受信した宛先ノードは、好ましくは、パケット受信通知のためにそのデータベース更新パケットの送信元ノードに宛てて、ポイントトゥポイントＯＳＰＦタイプＡＣＫ(acknowledgement)パケットを送信する。ＯＳＰＦプロトコルによれば、更に、ネットワークノード１２間での隣接要素探索保持パケット乃至ハロータイプパケットの周期的な送受信によって、使用不能な又はコストが変化した通信リンク１４を検出できる。この種のパケットは、隣接ノードを探索するため及びそのノード１２とその隣接ノードとの間の通信を確実に行えるようにするため、各ノード１２により周期的に送信される。加えて、ＯＳＰＦプロトコルによれば、もはや通り抜けられなくなっている高コストリンク乃至使用不能リンクが現在のルートに含まれている場合に、当該現在のルートに代わる代替ルートを採用できる。
【００４５】
ＯＳＰＦプロトコルは上述の通りリンクステートタイプのルーティングプロトコルであり、ルータ同士で既知の宛先に至る好適経路の距離ベクトルを交換しあうＲＩＰ(Routing Information Protocol)等の距離ベクトルタイプのルーティングプロトコルに対して、幾つかの利点を有している。例えば、ＯＳＰＦプロトコルによれば、コストが変化したリンクや使用不能リンクや崩壊したリンクをネットワーク１０を介して迅速に探索・発見でき、またそういったリンクについての情報をネットワーク１０を介して迅速に広めることができる。また、リンクステートプロトコルにおける収束時間(convergence time)は、一般に、距離ベクトルプロトコルにおけるそれに比べて短い。更に、距離ベクトルプロトコルでは、無限計数問題(Count-to-Infinity Problem)と呼ばれる現象が生じることがあり、この現象が生じるとコストアウトやリンクの使用不能化に対するプロトコルの応答が鈍くなる。
【００４６】
スプリットホライズンと呼ばれるアルゴリズムを用いればこの問題を部分的に緩和できるとはいえ、スプリットホライズンアルゴリズムにはまた別の欠点があり、またこの種の収束問題はリンクステートプロトコルでは生じない。即ち、各ルータ１６が完全なネットワークトポロジについてのデータベースを保持しているため、使用不能リンク乃至コストアウトリンクに関する情報をネットワーク１０内に迅速に広めることができる。また、各ルータ１６は自分のトポロジデータベースの更新に応じて自分のルーティングテーブルも再計算する。このように、リンクステートプロトコルはネットワークトポロジの動的性格に対し距離ベクトルプロトコルよりも適合している。また、リンクステートプロトコルは通常は大きめのオーバヘッドを必要とするが、ＯＳＰＦプロトコルに係るオーバヘッドは本願で述べている通りネットワーク１０の帯域幅に比べれば顕著に小さい。
【００４７】
本発明においては、ＯＳＰＦルーティングプロトコルのフィーチャを好適に利用すると共に例えば予定乃至計画されている保守を実行する際に必要なネットワークトポロジに関する先験的知識を好適に利用することによって、ルーティング能力を向上させている。即ち、それによって作成したネットワークトポロジ（トポロジビュー）を用いることにより、リンク１４が使用不能になる前にＯＳＰＦプロトコルによりルーティングテーブルを調整することができ、このルーティングテーブル調整を通じて、ＩＰにて使用不能リンクへとパケットがルーティングされることを基本的に防止することができ、ひいてはパケットのロス乃至ディレイを回避することができる。
【００４８】
図２に、本発明の一実施形態に係るネットワークルータ１６をブロック図により示す。図１に示した各ネットワークノード１２は、ネットワーク１０内でデータパケットをルーティングして通信を行うべく、好ましくはこの図に示すルータ１６を備えている。より詳細には、ルータ１６は、好ましくはアプリケーションモジュール１８、ＴＣＰ(Transmission Control Protocol)モジュール２０、ＵＤＰ(User Datagram Protocol)モジュール２２、ＩＰモジュール２４、ＲＥＡＣＴモジュール２６、ＯＳＰＦモジュール２８、パケットフィルタモジュール３０及び何個かのルータポート３２を備えている。ルータ１６を構成するこれらのモジュールは、このルータ１６内の図示しない処理デバイス（後述）によって実行されるソフトウェアとして構築するのが望ましいが、ハードウェア的に構築することもまたソフトウェアとハードウェアの組合せによって構築することもできる。
【００４９】
ルータ１６の各ポート３２には、好ましくは、リンク１４を介した通信を行えるよう、同ネットワークノード１２を構成している図示しないネットワークインタフェースカードが装着・接続される。このネットワークインタフェースカードは、通常、その実装先ノード１２から他のノードへと信号を送信する動作、他のノードからその実装先ノード１２への信号を受信する動作、並びにそれらの信号の変調／復調、暗号化／暗号解除等を実行する。各ポート３２は、通常、その接続先のネットワークインタフェースカードを介して何れかのリンク１４、即ちそのネットワークインタフェースカードの実装先ノード１２とネットワークトポロジ内でその隣にあるノードとを接続するリンク１４に、関連付けられている。
【００５０】
この図の例では、ポート３２はＩＰモジュール２４に接続されている。ＩＰモジュール２４はＩＰを実行するためのモジュールであり、外に出て行くパケットを適切なポートに向かわせまた中に入ってくるパケットを更なる処理のためルータ１６内の適切なモジュールに向かわせるスイッチとして、機能している。また、この図の例では、ＩＰモジュール２４がＴＣＰモジュール２０及びＵＤＰモジュール２２に接続されている。これらの転送プロトコルモジュール２２及び２４は、基本的には、ネットワークノード１２その他ネットワーク１０上のアプリケーション間で情報交換を行えるようにするモジュールである。なお、ここでＴＣＰモジュール２０及びＵＤＰモジュール２２を示しているのは一例に過ぎず、実際には他種の転送プロトコルモジュールを用いてもよい。
【００５１】
この図の例におけるアプリケーションモジュール１８は、転送プロトコルモジュール２２及び２４に接続されており、ルータ１６内でアプリケーションレベルのルーチンを実行できるようにしている。また、この図の例におけるパケットフィルタモジュール３０は、ＩＰモジュール２４、ＲＥＡＣＴモジュール２６及びＯＳＰＦモジュール２８に接続されている。この図の例におけるＯＳＰＦモジュール２８はＯＳＰＦルーティングプロトコルを実行するモジュールであり、ＲＥＡＣＴモジュール２６は本発明に係る手順に従いルーティングすべくＯＳＰＦプロトコルにおける各種設定を修正するモジュールである。
【００５２】
図３ａ及び図３ｂとして、本発明の一実施形態に係りコンピュータネットワーク内でルーティング要素周辺にトラフィックをリルーティングする方法のフローチャートを示す。この図の例では、図２に示したＲＥＡＣＴモジュール２６は、まずステップ３４においてオペレータにログイン情報乃至認証情報を求め、入力デバイス（後述）等を介しオペレータから受け取った情報が正しいものであるかどうかをステップ３６においてリモートサーバ上に格納されている情報に照らして確認し、確認できたらステップ３８においてアクセスを許可し例えば図４に示す画面をディスプレイ（後述）上に表示する。ステップ４０においては、オペレータは、「Select」ボタン操作によりリスト表示されるルーティング要素の中から保守対象とすべき１個又は複数個のルータを選択し「Start」ボタン操作により選択を確定することができる。
【００５３】
この例におけるＲＥＡＣＴモジュール２６は、ステップ４２において、保守対象として選択されているルータの隣にどのような要素（群）が存在しているかを、そのルータに係るポイントトゥポイントリンク１４のＩＰアドレスに基づき判別する。図３ｃに示すように、このステップ４２は、保守対象として選択されているルータのインタフェースＩＰアドレスそれぞれについて／３０サブネットマスク（即ち２５５．２５５．２５５．２５２）等のサブネットマスクとのビット単位論理積演算を行うことにより（ステップ４１）、実現できる。理解されるであろうが、ビット単位論理積演算結果中、サブネットマスク中の対応ビットが０値であるため０値になっているビットに、適宜１値又は０値を代入することによって、アドレス候補（群）を生成できる。
【００５４】
ステップ４３においては、このようにサブネットマスクを適用することによって得られたアドレス候補（サブネットアドレス）のうち、最初乃至最小のＩＰアドレス即ちネットワークＩＰアドレスと、最後乃至最大のＩＰアドレス即ちブロードキャストＩＰアドレスとを除外することによって、関連ホストアドレス（群）が判別される。ステップ４５においては、更に、保守対象として選択されているルータに対応するインタフェースＩＰアドレスが除外される。ステップ４７においては、残った関連ホストアドレス（群）が隣接ホストＩＰアドレス（群）と見なされる。この隣接ホストＩＰアドレス（群）を用いればそのルータの隣接要素（群）に接続することができる。ＲＥＡＣＴモジュール２６は、図３ａ中のステップ４４において、この接続を介しそのルータの隣接要素（群）から設定ファイルを取得する。なお、隣接要素（群）のアドレスを判別する動作は自動化するとよい。但し、マニュアル実行も本発明の技術的範囲に含まれる。
【００５５】
例えば、保守対象ルータに実装されているインタフェースのうちあるインタフェースに振られているＩＰアドレス１．１．１．１に対しサブネットマスク／３０を適用すると、２個の関連ホストアドレスを含む４個のＩＰアドレスが得られる。そのうち最小ＩＰアドレスたる１．１．１．０はネットワークＩＰアドレスであり、１．１．１．１及び１．１．１．２が関連ホストアドレスであり、最大ＩＰアドレスたる１．１．１．３はブロードキャストＩＰアドレスである。従って、関連ホストアドレスの中からＲＥＡＣＴモジュール２６が導出するリモートホストアドレスはこの例では１．１．１．２である。ＲＥＡＣＴモジュール２６は、１．１．１．２を用い隣接ルータを探索して接続し、その設定情報を取得する。
【００５６】
また、導出した隣接ＩＰアドレス１．１．１．２への接続に先立って、ＲＥＡＣＴにおいてある種の除外ルールセットを実行するとよい。この除外ルールセットは、例えば、基本的に、インタフェース状態（up/down）、除外ＩＰアドレス群（loopback0,others）等の要求判別条件に基づき特定のインタフェース、ＩＰアドレス等を除外するのに役立つ。何れの除外ルールも満たされない場合は、ＲＥＡＣＴは１．１．１．２を好適に用いて隣接ルータに接続する。接続に成功したら、ＲＥＡＣＴはそのルータにアクセスしてその設定情報を取得する。
【００５７】
こういった隣接要素探索プロセスは、アクティブなインタフェースＩＰアドレス全てについて、繰り返し実行される。それによって、最終的には、ステップ４６において、保守対象ルータ及びそのアクティブな隣接要素全てに関する情報を示すネットワークトポロジ（トポロジグラフ）が生成される。なお、このＲＥＡＣＴモジュール２６はポイントトゥポイントリンク１４によりリンクしている隣接要素（群）を探索しているが、マルチアクセスリンク（Ｅｔｈｅｒｎｅｔ（登録商標）等）、ハブアンドスポークコンフィギュレーション、サブインタフェースコンフィギュレーション等を探索するように拡張することもでき、そのように拡張したものも本発明の技術的範囲に含まれる。但し、そのインタフェースＩＰアドレスは、好ましくは、ＲＥＡＣＴモジュール２６が稼働しているサーバから到達可能とすべきであろう。このような条件を課しても問題が生じないのは、そういったサーバは通常は管理ネットワークの一部であり、管理対象ドメイン内の全デバイスに対し好適に接続乃至到達できるからである。トポロジを発生させた後は、好ましくは、ステップ４８において、オペレータが使用しているウェブブラウザ上に例えば図５に示す形態にてその結果が表示される。
【００５８】
図５に示す表は複数の行を含んでおり、各行には、保守対象ルータ(router under maintainance:ＲＵＭ)に接続されている個々のリンク１４についての情報が示されている。この表の左半分は各リンク１４のローカル側に関する情報を提供しており、右半分は各リンク１４のリモート側に関する情報を提供している。ローカル側とはＲＵＭに直接接続されている側のことであり、リモート側とは、同リンク１４を挟んでこのＲＵＭとは逆の端にあるルータに直接接続されている側のことである。
【００５９】
この例では、インデクス列８０には各リンク１４を参照するためのインデクス番号が、ローカルルータ列８２には各リンク１４のローカル側にあるルータ即ちＲＵＭの名称（図では「routerA」）が、ローカルインタフェース列８４にはＲＵＭのポートのうち各リンク１４のローカル側に関連付けられているポートを表すポート識別子が、ローカル初期状態列８６にはＲＵＭのポートのうち各リンク１４に関連付けられているポートの状態が、ローカルＩＰアドレス列８８にはＲＵＭのポートのうち各リンク１４に接続されているポートのＩＰアドレスが、ローカルＯＳＰＦコスト列９０には各リンク１４のローカル側に関連付けられているコスト初期値が、リモートルータ列９２には各リンク１４のリモート側にあるルータの名称が、リモートインタフェース列９４には各リンク１４のリモート側に関連付けられているポートを表すポート識別子が、それぞれリスト表示されつつある。
【００６０】
また、リモートＩＰアドレス列９６には各リンク１４のリモート側に接続されているポートのＩＰアドレスが、リモートＯＳＰＦコスト列９８には各リンク１４のリモート側に関連付けられているコスト初期値が、新ＯＳＰＦコスト列１００には対応するローカルＯＳＰＦコスト、リモートＯＳＰＦコスト又はその双方に置き換わるべき新たなコストが、それぞれリスト表示されつつある。なお、図中、「ａ．ｂ．ｃ」はＩＰアドレスの一部であり、変数ａ、ｂ、ｃには何らかの適当な数値が入る。
【００６１】
ステップ５０においては、オペレータは、そのＯＳＰＦコストを修正したいリンク１４を選択できる。その際、アクティブなリンク１４全てを選択することもできるし、何個かにしぼって選択することもできる。コードの更新やハードウェアの変更に伴う通常の保守作業に際しては、アクティブなリンク１４全てをコストアウト時調整対象として選択するのが望ましく（そのようなデフォルト設定を用いてもよく）、それによってライブトラフィックを逸らすことができる。コストアウトのために設定するコスト値は例えば５００００とすればよいが、これとは異なる値に設定することもできる。即ち、特定構成のネットワーク上で特定リンクを介したトラフィックをリルーティングするのに適したコスト値を計算によって決定し、その結果に応じてコストアウト用のコスト値を設定すればよい。また、ルータ１６上で使用されるＯＳＰＦコスト変更コマンドは、好ましくは、
Vendor A/Vendor B/Vendor C: ip ospf cost <0-50,000>
といったコマンドとする。このコマンドを用いれば、任意のリンク１４に対し０〜５００００の範囲内でコストを割り当てることができる。
【００６２】
この段階までに探索収集した情報は、サーバ上のメモリデバイス内等に保持しておく。リンク１４が選択されると、ステップ５２において、好ましくは、ユニークなファイルが生成されコストアウト情報がデータ構造として格納される。このファイルは、オペレータ毎にユニークとなるよう、且つオペレータが使用しているブラウザのセッション毎にユニークとなるよう、作成するのが望ましい。これは、保守作業終了後にコストを復元する際に、ＲＥＡＣＴモジュール２６がこれらのファイルからコストアウトデータを好適に取り出して使用できるようにするためである。加えて、隣接ルータ（群）は、図６中のリンクタイプ列１０２に示されているように、そのネットワーク機能に基づき分類できる。リンクタイプには、「BR」即ちブリッジルータ、「Hub」即ちハブルータ、「Edge」即ちエッジルータ等がある。図６中の新ＯＳＰＦコスト列１００は、各リンク１４のローカル側、リモート側又はその双方に関連付けられる新たなコストを、コストアウトのため適用するのに先立ってプリビュー（次述）するのに用いられる。
【００６３】
ステップ５４においては、コストアウトに用いたいコスト変更値をオペレータが入力しこれらの変更値が適用前にプリビューされ、ステップ５６においてはこれらの変更値が適用される。プリビュー時にはローカルＯＳＰＦコスト列９０及びリモートＯＳＰＦコスト列９８には従前のコスト即ちコスト初期値が表示される。コストアウトのためのこのＯＳＰＦコスト変更は、非対称に実行することができる。即ち、保守対象ルータ周辺のルータ（群）即ちアウタリング上で実行できる。また、実際の設定変更は、先に作成されているリスト上の順序に従い隣接ルータ（群）上で順繰りに実行される。バックボーンを共有しているＩＰネットワークにおいては、トラフィックが最大限効率的に逸れていくよう、コストアウトの順序を選択するのが望ましい。最も単純なやり方としては、まずトラフィック負担が重いルータ（群）からトラフィックを逸らしていき、トラフィック負担が軽いルータ（群）は後回しにする、というやり方があろう。なお、コスト復元時には、コストアウト時のリスト上の順序とは逆の順序とするのが望ましい。
【００６４】
保守対象ルータが完全にコストアウトされ図３ｂ中のステップ５８に示すようにその全トラフィックが逸らされたら、このルータに対する保守作業等がステップ６０において開始される。実行できる保守作業には、ソフトウェア更新、ハードウェア変更等がある。ステップ６２にて保守作業が終了すると、オペレータは、元々のコストを復元するステップ６４に移行できる。再述することとなるが、復元段階ではコストアウト時のリスト上の順序を反転するのが望ましい。これは、保守が終わったルータにはトラフィックが流れ始めるからである。
【００６５】
ＲＥＡＣＴモジュール２６は、このセッションに係る前述のユニークなファイルからコストアウトデータを取り出す。取り出したコストアウトデータに基づく復元即ちコストイン動作は、コスト乃至荷重の値がコストアウト前の元々の値にリセットされる点を除き、コストアウト動作と同様である。図７に示すように、好ましくは、コストイン動作における適用に先立って、ローカルＯＳＰＦコスト列９０及びリモートＯＳＰＦコスト列９８に従前のコスト即ちコストアウト時のコストを表示し、新ＯＳＰＦコスト列１００に新たなＯＰＳＦコスト即ちユニークファイルから取り出したコスト初期値を表示・プリビューする。コストインのためのＯＳＰＦコスト変更も非対称に実行できる。即ち、保守対象ルータ周辺のルータ（群）即ちアウタリング上で実行できる。また、実際の設定変更は、リスト上の順序とは逆の順序に従い隣接ルータ（群）上で順繰りに実行される。バックボーンを共有しているＩＰネットワークにおいては、保守作業後におけるトラフィックフローが最大限効率的になるよう、コストインの順序を選択するのが望ましい。最も単純なやり方としては、まずトラフィック負担が軽いルータから再導入（群）していき、トラフィック負担が重いルータ（群）トラフィックは後回しにする、というやり方があろう。
【００６６】
ＯＳＰＦコストの復元が終了すると、ステップ６６において、ユニークな設定ファイルが将来の参照に備え別の場所にアーカイブされ作業領域から削除される。オペレータは、ステップ６８において、他のルータにつきＲＥＡＣＴモジュール２６を用いた保守を開始するかどうかを、選択することができる。実行することが選択された場合、好適にもセッション識別子が更新されまた新たなユニークファイルが生成される。実行しないことが選択された場合、一連の処理が終了される。なお、このようにセッション毎にセッション識別子を更新しユニークファイルを作成するのは、何個かのブラウザセッション中に、何人かのオペレータにより、複数個のルーティング要素乃至ルータ上で、また複数回に亘り保守作業を実施しても、問題がないようにするためである。そして、図３ａ及び図３ｂに示した方法は自動的に実行させることができるが、マニュアル的に実行することも可能であり、そういった実施形態も本発明の技術的範囲に含まれる。
【００６７】
図８に、本発明の一実施形態に従いコンピュータネットワーク内でトラフィックをリルーティングするのに使用できるコンピュータシステム７０を示す。このシステム７０は、例えば、処理デバイス、ディスプレイ７４及びデータ入力デバイスを備えている。データ入力デバイスとしては、キーボード７６、マウス７８、図示しないトラックボール、図示しないタッチパッド等を任意に用いることができる。処理デバイスとしては、ＡＳＩＣ、マイクロプロセッサ、マイクロコントローラ、ＦＰＧＡ等が任意に組み込まれたコンピュータ７２を用いることができる。このシステム７０は、例えば、保守対象とされ得るルーティング要素又はサーバによりコンピュータネットワーク乃至通信ネットワーク１０に接続される。オペレータは、このこのシステム７０によってＲＥＡＣＴにアクセスできる。
【００６８】
この参照を以て本願に繰り入れるところのＯＳＰＦスタブアドバータイズメントフィーチャ(Stub Advertisement feature)は、ＲＦＣ(Request For Comments)３１３７により文書化されている有用なフィーチャであり、所定条件下にあるルータに係る非スタブインタフェースに対し最大ＯＳＰＦメトリック(0xffff)をアナウンスすることによりルータからトラフィックを逸らす。ここでいう所定条件には、
１．ルータが起動してから所定時間以内、
２．ルータが起動してからＢＧＰが完全に収束し終えるまで、
３．そのルータにとって破壊的な保守作業に先立って、
４．特定セットのＢＧＰセッションがロスしたとき、
５．ＲＩＢ(Routing Information Base)内のルートの個数が所定しきい値を下回ったとき、
という条件が含まれており、
６．こういった条件群が成立しなくなり又は利用しているタイマが計時を終了した後は、ＯＳＰＦコストがその設定値に戻る。
【００６９】
しかしながら、このスタブアドバータイズメントフィーチャを使用できる範囲には、本発明に係るＲＥＡＣＴモジュールを使用できる範囲に比べて、限りがある。まず、このスタブアドバータイズメントフィーチャを使用できるのはネットワーク内のトランジットルータ、即ち他のルータ（群）を介した代替経路が存在し得るルータ上のみである。ここでいうトランジットルータには、ＢＲ(Bridge Router)やＨＲ(Hub Router)が含まれる。反面、このスタブアドバータイズメントフィーチャは、ＡＲ(Access Router)、ＭＳＥ(Multi-Service Edge router)、ＩＧＲ(Internal Gateway Router)等のエッジルータ上では使用できない。それは、ＯＳＰＦの観点からするとそれらがトランジットルータとして動作しないためである。このようにＯＳＰＦスタブアドバータイズメントフィーチャがＨＲやＢＲ専用であるのに対して、ＲＥＡＣＴは、そのサーバから到達できる隣接インタフェースがある限りどのようなルータ上でも動作させることができる。
【００７０】
また、ＯＳＰＦスタブアドバータイズメントフィーチャによりＯＳＰＦルータＬＳＡを１個用い全リンクに対して最大メトリックを瞬時アナウンスすることにより、パケットロスを最少化することができる。これによって、コストアウト手順を円滑に且つ簡便に実行できることとなる。それは、隣接ルータについて修正を施す必要がないためである。ルータＯＳＰＦコンテキスト下でこのフィーチャをコンフィギュレーションするシンタックスは、
Enable: max-metric router-lsa
Disable: no max-metric router-lsa
というものである。
【００７１】
ＲＥＡＣＴモジュールは、ＲＦＣ３１３７により規定されている機能を実行するよう構成することができる。そのように構成されたＲＥＡＣＴモジュールも本発明の技術的範囲に包含される。
【００７２】
このように、ルータ（群）に係るＯＳＰＦコストの変更設定を本発明に従い自動的に又はマニュアルで実行することにより、コスト変更間違い、インターフェーススキッピング、復元時非対称コスト変更等の人的エラーをなくせるだけでなく、保守ウィンドウ上での作業量を最小限にすることができる。また、ＲＥＡＣＴを用いることによりパケットロスが実質的に減少するため、保守手順が目に見えて改善され保守能力が顕著に向上する、という効果が得られる。ＲＥＡＣＴモジュールを用いることで生じる利点としては、更に、ＲＥＡＣＴモジュールを手助けとして用い、ＲＥＡＣＴサーバの所属先管理ネットワークから保守対象ルータ及びその隣接要素のインタフェースＩＰアドレスへのインタフェースＩＰアドレス到達可能性に関し、トラブルシューティングを行うことができる、という点もある。本発明によれば、また、隣接ルーティング要素のＩＰアドレスを判別できる改善された方法を提供することができる。この方法は、自動的にもマニュアル的にも実行できる。
【００７３】
以上、本発明の幾つかの実施形態に関し図示及び説明したが、本発明の神髄及び本来意図に背かない限り、これらの実施形態に変形や修正を施したものも、別紙特許請求の範囲における記載及び本願による教示の範囲に包含されることを、理解されたい。
【図面の簡単な説明】
【００７４】
【図１】本発明の一実施形態に係りリンク及びルーティング要素を含むコンピュータネットワークを示すブロック図である。
【図２】本発明の一実施形態に係るルーティング要素を示すブロック図である。
【図３ａ】本発明の一実施形態に係りコンピュータネットワーク内においてルーティング要素周辺にトラフィックをリルーティングする方法の一部を示すフローチャートである。
【図３ｂ】図３ａに示した方法の残りの部分を示すフローチャートである。
【図３ｃ】本発明の一実施形態に係る隣接ルーティング要素アドレス判別方法を示すフローチャートである。
【図４】ネットワークノードルータのリストからオペレータが保守作業対象ルータを選択できるようにするため表示させるＲＥＡＣＴ起動(REACT OSPF Cost Tool)画面を描いた図である。
【図５】保守対象として選択されたルータ及びその隣接要素を表示しつつあるＯＳＰＦコスト取出(Retrieving OSPF Costs)画面を描いた図である。
【図６】隣接ネットワークノードルータ分類及びこれらに係るコストアウト値が表示されている最新ＯＳＰＦコスト(OSPF Costs retrieved last)画面を描いた図である。
【図７】保守対象ネットワークノードルータを復元対象隣接リンクコスト初期値と共に表示するＯＳＰＦコスト復元(Restoring OSPF Costs)画面を描いた図である。
【図８】本発明の一実施形態におけるコンピュータネットワーク内トラフィックリルーティングに使用するコンピュータシステムを示す図である。
【符号の説明】
【００７５】
１０  通信ネットワーク、１４  ポイントトゥポイントリンク、１６  ネットワークノードルータ、２６  ＲＥＡＣＴモジュール、２８  ＯＳＰＦモジュール、７０  コンピュータシステム、７２  コンピュータ、７４  ディスプレイ、７６  キーボード、７８  マウス、９０  ローカルＯＳＰＦコスト列、９８  リモートＯＳＰＦコスト列、１００  新ＯＳＰＦコスト列。
【図１】
2006087103.tif 000003
【図２】
2006087103.tif 000004
【図３ａ】
2006087103.tif 000005
【図３ｂ】
2006087103.tif 000006
【図３ｃ】
2006087103.tif 000007
【図４】
2006087103.tif 000008
【図５】
2006087103.tif 000009
【図６】
2006087103.tif 000010
【図７】
2006087103.tif 000011
【図８】
2006087103.tif 000012