(57)【要約】【課題】出力インタフェースに対応するネットワークに障害が発生した場合に、ＩＰパケットの損失を低減すること。【解決手段】隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定し、前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されるテーブルを設定し、前記第１ルート情報及び第２ルート情報から目的地ＩＰアドレスを抽出してフォワーディングテーブルを設定し、前記第１ルート情報に従い第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記第２ルート情報に従う第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行う構成とする。【選択図】図３
2006191636.tif 000002
【特許請求の範囲】
【請求項１】
隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するステップと、
前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されるテーブルを設定するステップと、
前記第１ルート情報及び第２ルート情報から目的地ＩＰアドレスを抽出してフォワーディングテーブルを設定するステップと、
前記第１ルート情報に従い第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記第２ルート情報に従う第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うステップと、を備えることを特徴とするネットワークルーティング制御方法。
【請求項２】
前記第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されたテーブルによってアクティブ出力インタフェースを生存ポートリストテーブルに登録するステップをさらに備え、
前記パケットのフォワーディングを行うステップは、前記障害が発生したネットワークの出力インタフェースを前記生存ポートリストテーブルから削除するステップを含むことを特徴とする請求項１に記載のネットワークルーティング制御方法。
【請求項３】
前記第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されたテーブルのインデックス番号をネクストホップリストテーブルに格納するステップをさらに備え、
前記パケットのフォワーディングを行うステップは、同一のインデックス番号を有する第１ネクストホップエントリー及び第２ネクストホップエントリーのうち、第２ネクストホップエントリーを介して前記パケットのフォワーディングを行うことを特徴とする請求項２に記載のネットワークルーティング制御方法。
【請求項４】
隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するステップと、
前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップテーブル及び第２ネクストホップテーブルを設定するステップと、
前記第１ネクストホップテーブル及び第２ネクストホップテーブルによってアクティブ出力インタフェースを生存ポートリストテーブルに登録するステップと、
前記第１ネクストホップテーブル及び第２ネクストホップテーブルのインデックス番号をネクストホップリストテーブルに格納するステップと、
前記第１ルート情報及び第２ルート情報の目的地ＩＰアドレスをフォワーディングテーブルに格納し、前記第１ネクストホップテーブルの中の該当第１ネクストホップエントリーの物理アドレスを設定するステップと、
前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記インデックス番号に対応する前記第２ネクストホップエントリーに出力インタフェースを設定して該当パケットのフォワーディングを行うステップと、を備えることを特徴とするネットワークルーティング制御方法。
【請求項５】
前記パケットのフォワーディングを行うステップは、前記障害が発生したネットワークの出力インタフェースを前記生存ポートリストテーブルから削除するステップを含むことを特徴とする請求項４に記載のネットワークルーティング制御方法。
【請求項６】
前記パケットのフォワーディングを行うステップは、同一のインデックス番号を有する第１ネクストホップエントリー及び第２ネクストホップエントリーのうち、第２ネクストホップエントリーを介して前記パケットのフォワーディングを行うことを特徴とする請求項５に記載のネットワークルーティング制御方法。
【請求項７】
前記パケットのフォワーディングを行うステップは、
前記障害が発生したネットワークの出力インタフェースを前記生存ポートリストテーブルから削除した後に、前記ネクストホップリストテーブルから前記第２ネクストホップテーブルのインデックス番号を検索するステップと、
前記検索したインデックス番号に対応する前記第１ネクストホップエントリーの物理アドレスを、前記第２ネクストホップテーブルの第２ネクストホップエントリーの物理アドレスに設定するステップと、
前記インデックス番号に対応付けて設定した前記物理アドレスを前記フォワーディングテーブルから検索するステップと、
前記検索した物理アドレスに基づいて前記第２ネクストホップテーブルから前記第２ネクストホップエントリーを検索するステップと、をさらに備えることを特徴とする請求項５に記載のネットワークルーティング制御方法。
【請求項８】
隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するルーティング設定部と、
前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されるテーブルを設定すると共に、前記第１ルート情報及び第２ルート情報から目的地ＩＰアドレスを抽出してフォワーディングテーブルを設定するフォワーディング管理部と、
前記第１ルート情報に従い前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記第２ルート情報に従う前記第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うフォワーディング部と、を備えることを特徴とするネットワークルーティング制御装置。
【請求項９】
前記フォワーディング管理部は、前記第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されたテーブルによってアクティブ出力インタフェースを生存ポートリストテーブルに登録すると共に、前記障害が発生したネットワークの出力インタフェースを前記生存ポートリストテーブルから削除することを特徴とする請求項８に記載のネットワークルーティング制御装置。
【請求項１０】
前記フォワーディング部は、前記第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されたテーブルのインデックス番号をネクストホップリストテーブルに格納し、同一のインデックス番号を有する第１ネクストホップエントリー及び第２ネクストホップエントリーのうち、第２ネクストホップエントリーを介して前記パケットのフォワーディングを行うことを特徴とする請求項９に記載のネットワークルーティング制御装置。
【請求項１１】
隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するルーティング設定部と、
前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップテーブル及び第２ネクストホップテーブルを設定し、前記第１ネクストホップテーブル及び第２ネクストホップテーブルによってアクティブ出力インタフェースを生存ポートリストテーブルに登録し、前記第１ネクストホップテーブル及び第２ネクストホップテーブルのインデックス番号をネクストホップリストテーブルに格納し、前記第１ルート情報及び第２ルート情報の目的地ＩＰアドレスをフォワーディングテーブルに格納し、前記第１ネクストホップテーブルの該当第１ネクストホップエントリーの物理アドレスを設定するフォワーディング管理部と、
前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記インデックス番号に対応する前記第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うフォワーディング部と、を備えることを特徴とするネットワークルーティング制御装置。
【請求項１２】
前記フォワーディング管理部は、前記障害が発生したネットワークの出力インタフェースを、前記生存ポートリストテーブルから削除することを特徴とする請求項１１に記載のネットワークルーティング制御装置。
【請求項１３】
前記フォワーディング管理部は、同一のインデックス番号を有する第１ネクストホップエントリー及び第２ネクストホップエントリーのうち、第２ネクストホップエントリーを介して前記パケットのフォワーディングを行うことを特徴とする請求項１２に記載のネットワークルーティング制御装置。
【請求項１４】
前記フォワーディング管理部は、
前記障害が発生したネットワークの出力インタフェースを前記生存ポートリストテーブルから削除した後に、前記ネクストホップリストテーブルから前記第２ネクストホップテーブルのインデックス番号を検索し、
前記検索したインデックス番号に対応する前記第１ネクストホップエントリーの物理アドレスを、前記第２ネクストホップテーブルの第２ネクストホップエントリーの物理アドレスに設定することを特徴とする請求項１３に記載のネットワークルーティング制御装置。
【請求項１５】
前記フォワーディング部は、前記インデックス番号に対応付けて設定した前記物理アドレスを前記フォワーディングテーブルから検索し、検索した物理アドレスに基づいて前記第２ネクストホップテーブルから前記第２ネクストホップエントリーを検索することを特徴とする請求項１４に記載のネットワークルーティング制御装置。
【請求項１６】
隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して、複数経路の中からコストが最小となるベストルート及びこのベストルートに次いでコストが小さいセカンダリールートを設定するルーティング設定部と、
ネットワークシステム内において第２ルータに接続した第１ルータの多数の出力ポートの中のアクティブ状態である出力インタフェースのリストを生存ポートリストテーブルを用いて管理し、前記生存ポートリストテーブルにおいて、前記第２ルータにインタフェースが設定されると、前記アクティブ出力インタフェースリストの情報を維持するフォワーディング管理部と、
フォワーディングテーブル及びＩＰパケットが受信されると、設定されたベストネクストホップテーブルの物理アドレスを参照して目的地ＩＰアドレスを検索し、前記フォワーディングテーブルから検索した物理アドレスに対応するベストネクストルートエントリーをベストネクストホップテーブル（best next hop table）から検索し、前記検索したベストネクストホップエントリーを用いて前記ＩＰパケットにヘッダーを追加して、該当ルータに前記ＩＰパケットのフォワーディングを行うフォワーディング部と、
前記ベストルートの情報に従い設定されたネットワークに障害が発生したか否かを検知し、その検知結果を前記フォワーディング管理部に出力するネットワークモニター部と、を備えることを特徴とするネットワークルーティング制御装置。
【請求項１７】
前記フォワーディング管理部は、前記ルーティング設定部から提供されるベストルートの情報及びセカンダリールートの情報に従い設定されたルートに基づいて該当ＩＰパケットを出力する出力インタフェースが、アクティブ状態にあるか否かを前記生存ポートリストテーブルを参照して確認し、前記出力ポートがアクティブ状態にある場合には、前記ベストルートの情報からネクストホップ情報を抽出して前記ベストネクストホップテーブルを設定し、前記セカンダリールートの情報からネクストホップ情報を抽出してセカンダリーネクストホップテーブルを設定することを特徴とする請求項１６に記載のネットワークルーティング制御装置。
【請求項１８】
前記フォワーディング管理部は、前記ルーティング設定部から提供されるベストルートの情報から目的地ＩＰアドレス情報を抽出して前記フォワーディングテーブルを設定することを特徴とする請求項１６に記載のネットワークルーティング制御装置。
【請求項１９】
前記フォワーディング管理部は、ルーティング設定部から提供されるベストルートの情報から前記目的地ＩＰアドレス及びネットマスクのマスキング値を抽出して前記フォワーディングテーブルを設定し、前記マスキング値をベストネクストホップテーブルの該当エントリーの物理アドレス値に設定し、該当インタフェース番号に対応するベストネクストホップテーブル及びセカンダリーネクストホップテーブルのインデックスリストをネクストホップリストテーブルに格納することを特徴とする請求項１６に記載のネットワークルーティング制御装置。
【請求項２０】
前記フォワーディング部は、前記フォワーディングテーブルから前記入力されたＩＰパケットの目的地ＩＰアドレスを検索し、検索された目的地ＩＰアドレスに対応して設定されたセカンダリーネクストホップテーブルの物理アドレスを検索し、前記フォワーディングテーブルで検索した物理アドレスに対応するセカンダリーネクストルートエントリーを前記セカンダリーネクストホップテーブルから検索し、検索されたセカンダリーネクストホップエントリーを用いてＩＰパケットにヘッダーを追加して、該当ルータにフォワーディングすることを特徴とする請求項１６に記載のネットワークルーティング制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルータによるネットワークルーティング制御に関し、より詳細には、ＩＰ(Internet Protocol)パケット（IP Packet）のルーティング転送の際、ネットワーク障害が発生するとそれを素早く検知し、前記ＩＰパケットを代替インタフェース（alternative interface）に素早くスイッチングして、前記ＩＰパケットの損失（loss）を低減するための、ルータによるネットワークルーティング制御方法及びその装置に関する。
【背景技術】
【０００２】
近年、インターネットユーザの急増、提供サービスの多様化、ＶｏＩＰ（Voice over Internet Protocol）などの利用分野の拡大などに伴い、インターネットトラフィックが急増している。これにより、特にギガビットまたはテラビットの高速ルータ（router）などの場合、インターネット上でＩＰパケットを該当目的地に短時間に転送するために、該当パケットの目的地経路を遅延無しに最短時間内に発見し、フォワーディング（forwarding）をすることが技術的懸案事項となっている。そのため、各ルータの物理入力インタフェース（physical input interface）を介して伝送されるＩＰパケットの目的地経路を探すために、最短経路テーブル（例えば、ルーティングテーブルまたはフォワーディングテーブル）の維持、効率的な経路テーブルの管理、及び検索時間の短縮などの機能が必須的に要求されている。
【０００３】
図１は、インターネット網におけるルータ間の接続構成を概略的に示すブロック図である。
【０００４】
インターネット網におけるルータ１０、２０の各々は、フォワーディングエンジン１２、２２を備えており、このフォワーディングエンジン１２、２２を介して互いに接続されるように構成されている。ルータ１０、２０は、同じ転送プロトコルを使用する別々のネットワークを接続する装置である。また、ルータ１０、２０は、ネットワーク階層間を接続し、フォワーディングテーブル（経路配分表）に従って他のネットワークまたは自分のネットワーク内のルーティングノードを決定する。さらに、ルータ１０、２０は、ＩＰパケットを目的地アドレスに転送するために、転送可能な種々の経路の中から最も効率的な経路（ルート）の選択を行う。
【０００５】
一方、ルータ１０、２０内のフォワーディングエンジン１２、２２は、ＩＰパケットの目的地アドレスを参照して次のホップ（next hop）を決定し、決定された次のホップに該当するルータにＩＰパケットを転送する。
【０００６】
ここで、前記フォワーディングエンジン１２、２２の条件を見れば、まず、プリフィクス長さ（prefix length）１６、２４、３２をレベル１、２、３にそれぞれ設定し、パターンビットは、ビットの使用量を最小化するために２ビットに設定し、次のホップの情報は１バイトで表し、そして当該ホップ情報は、パケットの出力ポート番号やインタフェース番号とすることができる。また、アドレスは、２バイトのオフセット値だけを指定する。セグメント値は、適切に指定し、実際次のホップが入っている位置または次のホップ情報が入っている位置のポインタを“ｎｐｔｒ”と呼ぶとき、“ｎｐｔｒ＝（セグメントシフト１６）＋オフセット”が物理的な位置を示す値となる。
【０００７】
図２は、従来のルータの構成を示すブロック図である。図２に示すように、従来のルータは、ルーティング設定部３２、フォワーディング管理部３４、フォワーディング部３８、フォワーディングテーブル３５及びネクストホップテーブル３６を有する。
【０００８】
ルーティング設定部３２は、隣接するルータとの間で送信／受信されるルーティングプロトコル制御メッセージ（ＲＩＰ、ＯＳＰＦ、ＢＧＰ、ｓｔａｔｉｃ）により、コストが最小となるベストルート（best route）を設定する。このとき、ルーティング設定部３２は、設定したベストルート情報をフォワーディング管理部３４に提供する。ここで、ベストルート情報には、ＩＰアドレス情報、ネットマスク（net mask）情報、入力されたＩＰパケットの出力ポートを示すネクストホップ情報などが含まれる。
【０００９】
フォワーディング管理部３４は、ルーティング設定部３２から提供されるベストルート情報から前記ネクストホップ情報を抽出して、ネクストホップテーブル３６を設定する。さらに、フォワーディング管理部３４は、ルーティング設定部３２から提供されるベストルート情報から目的地のＩＰアドレスを抽出して、フォワーディングテーブル３５を設定する。
【００１０】
フォワーディング部３８は、入力されるＩＰパケットに対して、フォワーディングテーブル３５及びネクストホップテーブル３６に格納された情報を用いてルーティング及びフォワーディングを行う。すなわち、フォワーディング部３８は、ＩＰパケットを受信すると、フォワーディングテーブル３５を参照し、当該ＩＰパケットの目的地アドレスに対応する目的地ＩＰアドレスを検出すると共に、対応するネクストホップテーブルの物理アドレス情報を検出する。そして、フォワーディング部３８は、ネクストホップテーブル３６の物理アドレス情報に対応する物理アドレス値に該当するネクストホップエントリー値を用いてＩＰパケットにヘッダーを追加し、該当ルータにＩＰパケットをフォワーディングする。
【００１１】
ところが、ルーティング設定部３２により設定されたベストルート情報を用いてＩＰパケットのフォワーディングする間に、ネットワーク障害に起因したリンクダウンのような、該当出力ポートに障害が発生する場合がある。この場合、ルーティング設定部３２は、隣接するルータとハートビット（Heart bit）のような制御情報を交換しながらベストルートを再び設定する。そのため、ネットワーク障害が発生してからベストルートが再設定されるまでの間、前に設定されたベストルートに従って該当出力ポートにルーティングされる全てのＩＰパケットは損失されるという問題がある。一例を挙げると、ベストルートの再設定により、ＯＳＰＦの場合は４０秒間、ＲＩＰの場合は１８０秒間、ＩＰパケットが損失される問題がある。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、前述のような問題点を解決するためになされたものであり、その目的は、出力インタフェースに対するネットワーク障害発生に起因するＩＰパケットの損失を低減することのできるネットワークルーティング制御方法及びその装置を提供することにある。
【００１３】
また、本発明の他の目的は、既に設定されたルーティング経路を介してＩＰパケットをフォワーディングする間に、ネットワーク障害に起因して該当出力ポートに障害が発生した場合に、ベストルートを再設定するまでのＩＰパケットの損失を低減することのできるネットワークルーティング制御方法及びその装置を提供することにある。
【００１４】
また、本発明のさらに他の目的は、既に設定されたベストルーティング経路を介してＩＰパケットをフォワーディングする間に、ネットワーク障害に起因して該当出力ポートに障害が発生した場合に、ベストルートを再設定するまで代替ルーティング経路を介してＩＰパケットをフォワーディングすることにより、ＩＰパケットの損失を低減することのできるネットワークルーティング制御方法及びその装置を提供することにある。
【課題を解決するための手段】
【００１５】
前記目的を達成するために、本発明の一態様に係るネットワークルーティング制御方法は、隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するステップと、前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されるテーブルを設定するステップと、前記第１ルート情報及び第２ルート情報から目的地ＩＰアドレスを抽出してフォワーディングテーブルを設定するステップと、前記第１ルート情報に従い第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記第２ルート情報に従う第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うステップと、を備えることを特徴とする。
【００１６】
また、本発明の他の態様に係るネットワークルーティング制御方法は、隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するステップと、前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップテーブル及び第２ネクストホップテーブルを設定するステップと、前記第１ネクストホップテーブル及び第２ネクストホップテーブルによるアクティブ出力インタフェースを生存ポートリストテーブルに登録するステップと、前記第１ネクストホップテーブル及び第２ネクストホップテーブルのインデックス番号をネクストホップリストテーブルに格納するステップと、前記第１ルート情報及び第２ルート情報の目的地ＩＰアドレスをフォワーディングテーブルに格納し、前記第１ネクストホップテーブルの中の該当第１ネクストホップエントリーの物理アドレスを設定するステップと、前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記インデックス番号に対応する前記第２ネクストホップエントリーに出力インタフェースを設定して該当パケットのフォワーディングを行うステップと、を備えることを特徴とする。
【００１７】
また、本発明のさらに他の態様に係るネットワークルーティング制御装置は、隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するルーティング設定部と、前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップエントリー及び第２ネクストホップエントリーで構成されるテーブルを設定すると共に、前記第１ルート情報及び第２ルート情報から目的地ＩＰアドレスを抽出してフォワーディングテーブルを設定するフォワーディング管理部と、前記第１ルート情報に従い前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記第２ルート情報に従う前記第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うフォワーディング部と、を備えることを特徴とする。
【００１８】
また、本発明のさらに他の態様に係るネットワークルーティング制御装置は、隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して第１ルート情報及び第２ルート情報を設定するルーティング設定部と、前記第１ルート情報及び第２ルート情報を用いて第１ネクストホップテーブル及び第２ネクストホップテーブルを設定し、前記第１ネクストホップテーブル及び第２ネクストホップテーブルによってアクティブ出力インタフェースを生存ポートリストテーブルに登録し、前記第１ネクストホップテーブル及び第２ネクストホップテーブルのインデックス番号をネクストホップリストテーブルに格納し、前記第１ルート情報及び第２ルート情報の目的地ＩＰアドレスをフォワーディングテーブルに格納し、前記第１ネクストホップテーブルの該当第１ネクストホップエントリーの物理アドレスを設定するフォワーディング管理部と、前記第１ネクストホップエントリーに設定されたネットワークに障害が発生した場合に、前記インデックス番号に対応する前記第２ネクストホップエントリーに出力インタフェースを設定して、該当パケットのフォワーディングを行うフォワーディング部と、を備えることを特徴とする。
【００１９】
また、本発明のさらに他の態様に係るネットワークルーティング制御装置は、隣接するルータとの間でルーティングプロトコル制御メッセージを送信／受信して、複数経路の中からコストが最小となるベストルート及びこのベストルートに次いでコストが小さいセカンダリールートを設定するルーティング設定部と、ネットワークシステム内において第２ルータに接続した第１ルータの多数の出力ポートの中のアクティブ状態である出力インタフェースのリストを生存ポートリストテーブルを用いて管理し、前記生存ポートリストテーブルにおいて、前記第２ルータにインタフェースが設定されると、前記アクティブ出力インタフェースリストの情報を維持するフォワーディング管理部と、フォワーディングテーブル及びＩＰパケットが受信されると、設定されたベストネクストホップテーブルの物理アドレスを参照して目的地ＩＰアドレスを検索し、前記フォワーディングテーブルから検索した物理アドレスに対応するベストネクストルートエントリーをベストネクストホップテーブル（best next hop table）から検索し、前記検索したベストネクストホップエントリーを用いて前記ＩＰパケットにヘッダーを追加して、該当ルータに前記ＩＰパケットのフォワーディングを行うフォワーディング部と、前記ベストルートの情報に従い設定されたネットワークに障害が発生したか否かを検知し、その検知結果を前記フォワーディング管理部に出力するネットワークモニター部と、を備えることを特徴とする。
【発明の効果】
【００２０】
本発明によれば、ルーティング設定部がベストルートと共にセカンダリールートをも設定してフォワーディングテーブルに設定し、該当インタフェースに対応するネットワークに障害が発生した場合にそのネットワーク障害を検知し、ルーティング設定部がベストルートを再計算してフォワーディングテーブルを再設定するまでの間、既に設定されたセカンダリールートに転換してＩＰパケットのフォワーディングを行うことにより、ＩＰパケットの損失を顕著に低減することができ、その結果としてネットワークの信頼性を確保することが可能になる。
【発明を実施するための最良の形態】
【００２１】
以下、添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。なお、本明細書において、同一の符号は、同一の構成要素を示す。また、本発明の要旨を不明瞭にするおそれのある公知の機能及び構成についての詳細な説明は省略する。
【００２２】
図３は、本発明の好適な実施形態による、高速で転送するＩＰパケットを保護するルータのブロック図である。
【００２３】
図３に示すように、本実施形態に従うルータは、ルーティング設定部１００、フォワーディング管理部２００、フォワーディング部５００、ネットワークモニター部３００、フォワーディングテーブル４２０、ベストネクストホップテーブル（best next hop table）４４０、及びセカンダリーネクストホップテーブル（secondary next hop table）４６０を含む。フォワーディングテーブル４２０、ベストネクストホップテーブル４４０、及びセカンダリーネクストホップテーブル４６０は、少なくとも１以上のエントリーを有する情報テーブルであり、図示な省略するがメモリ等の記憶部に格納されている。以後に説明する他のテーブルについても同様である。
【００２４】
ルーティング設定部１００は、隣接するルータとの間で送信／受信されるルーティングプロトコル制御メッセージ（ＲＩＰ、ＯＳＰＦ、ＢＧＰ、ｓｔａｔｉｃ）を用いて、コストの最小となる第１ルートとしてのベストルート（best route、「最適経路」）及びこのベストルートに次いでコストの小さい第２ルートとしてのセカンダリールート（secondary route、「準最適経路」）を設定する。このとき、ルーティング設定部１００は、設定したベストルート情報をフォワーディング管理部２００に提供する。ここで、ベストルート情報及びセカンダリールート情報の各々は、ＩＰアドレス情報、ネットマスク情報、入力されたＩＰパケットの出力インタフェースを示すネクストホップ情報などが含まれる。
【００２５】
フォワーディング管理部２００は、ネットワークシステム内において現在のルータ（第２ルータ）に接続したルータ（第１ルータ）の多数の出力ポートの中で実際にアクティブ状態にある出力インタフェースをリストにして管理する。このとき、フォワーディング管理部２００は、アクティブ出力インタフェースリストを生存ポートリストテーブル（survival port list table）２４０で管理する。生存ポートリストテーブル２４０は、ルータ内でインタフェースが生成（設定）されたときに、アクティブ出力インタフェースリスト情報を維持するようにする。
【００２６】
また、フォワーディング管理部２００は、ルーティング設定部１００から提供されるベストルート情報及びセカンダリールート情報のそれぞれによる経路設定に従って該当ＩＰパケットを出力する出力インタフェースが、アクティブ状態であるか否かを、生存ポートリストテーブル２４０を通じて確認する。両出力インタフェースがアクティブ状態である場合、フォワーディング管理部２００は、ベストルート情報からネクストホップ情報を抽出してベストネクストホップテーブル４４０を設定し、また、セカンダリールート情報からセカンダリーネクストホップ情報を抽出してセカンダリーネクストホップテーブル４６０を設定する。
【００２７】
フォワーディング管理部２００は、ルーティング設定部１００から提供されるベストルート情報から目的地ＩＰアドレス情報を抽出してフォワーディングテーブル４２０を設定する。好ましくは、フォワーディング管理部２００は、ルーティング設定部１００から提供されるベストルート情報から、目的地ＩＰアドレス情報及びネットマスクのマスキング値を抽出してフォワーディングテーブル４２０に設定する。また、フォワーディング管理部２００は、前記マスキング値を、ベストネクストホップテーブル４４０の該当エントリーの物理アドレス値として設定する。また、フォワーディング管理部２００は、該当インタフェース番号に対応するベストネクストホップテーブル４４０及びセカンダリーネクストホップテーブル４６０のインデックス（index）をリストにして、ネクストホップリストテーブル２２０に格納する。
【００２８】
これにより、フォワーディング部５００は、ＩＰパケットを受信すると、フォワーディングテーブル４２０を参照して目的地ＩＰアドレスを検索し、既に設定されたベストネクストホップテーブル４４０の物理アドレスを検索する。また、フォワーディング部５００は、フォワーディングテーブル４２０から検索した物理アドレスに該当するベストネクストルートのエントリーを、ベストネクストホップテーブル４４０で検索する。そして、フォワーディング部５００は、検索したネクストホップエントリー（情報）を用いてＩＰパケットにヘッダーを付加し、該当ルータにフォワーディングする。
【００２９】
一方、ネットワークモニター部３００は、ベストルート情報によって設定されたネットワークの障害発生の有無を検知し、その検知結果をフォワーディング管理部２００に出力する。
【００３０】
フォワーディング管理部２００は、前記ネットワークモニター３００からネットワーク障害メッセージが受信されると、障害が発生した該当出力インタフェースを生存ポートリストテーブル２４０から削除する。これは、ルーティング設定部１００からこれ以上障害が発生した出力インタフェースに対してフォワーディング管理部２００を介してのネクストホップテーブルの変更が行われないようにフィルターリングするためである。フォワーディング管理部２００は、入力されたネットワーク障害メッセージを用いてネクストホップリストテーブル２２０から既に設定されているネクストホップのインデックスを検出する。また、フォワーディング管理部２００は、セカンダリーネクストホップテーブル４６０の該当エントリーの物理アドレスをフォワーディングテーブル４２０に設定する。
【００３１】
フォワーディング部５００は、フォワーディングテーブル４２０から入力されたＩＰパケットの目的地ＩＰアドレスを検索し、検索された目的地ＩＰアドレスに対応して既に設定されたセカンダリーネクストホップテーブル４６０の物理アドレスを検索する。これにより、フォワーディング部５００は、フォワーディングテーブル４２０から検索した物理アドレスに該当するセカンダリーネクストルートエントリーをセカンダリーネクストホップテーブル４６０から検索する。そして、フォワーディング部５００は、検索したセカンダリーネクストホップエントリー（情報）を用いてＩＰパケットにヘッダーを追加して、該当ルータにフォワーディングする。
【００３２】
したがって、本実施形態によれば、ルーティング設定部１００がベストルートと同様にセカンダリールートをも設定してフォワーディングテーブルに設定し、該当インタフェースに対するネットワークに障害が発生した場合に、そのネットワーク障害発生を検知し、ルーティング設定部１００がベストルートを再計算してフォワーディングテーブルを再設定するまでの間、既に設定されたセカンダリールートに転換してＩＰパケットをフォワーディングすることにより、ＩＰパケットの損失を顕著に低減することができ、その結果としてネットワークの信頼性を確保することが可能になる。
【００３３】
図４は、図３に示すベストネクストホップテーブル４４０及びセカンダリーネクストホップテーブル４６０の具体的な一例を示す図である。
【００３４】
図４に示すように、ベストネクストホップテーブル４４０及びセカンダリーネクストホップテーブル４６０の各エントリーは、同じ物理アドレスを有する１つのインデックスナンバーに設定される。すなわち、フォワーディング部５００は、フォワーディングテーブル４２０からネクストホップテーブルの物理アドレスを検索すると、ベストネクストホップテーブル４４０及びセカンダリーネクストホップテーブル４６０のうちいずれか一方を参照してネクストホップエントリーを決定する。例えば、ベストルート情報を用いたＩＰパケットのフォワーディングを行うためには、ベストネクストホップテーブル４４０を参照する。そして、ネットワークに障害が発生した場合にセカンダリールート情報を用いてＩＰパケットのフォワーディングを行うためには、セカンダリーネクストホップテーブル４６０を参照して、ベストネクストホップテーブル４４０の該当エントリーと同じ物理アドレスを有するエントリーをセカンダリーネクストホップエントリーに決定する。
【００３５】
図５Ａ及び図５Ｂは、本発明の実施形態に従うルータによるネットワーク障害が発生した場合のネットワークルーティング制御方法を示すフローチャートである。
【００３６】
図５Ａに示すように、ルーティング設定部１００は、隣接するルータとの間で送信／受信するルーティングプロトコル制御メッセージ（ＲＩＰ、ＯＳＰＦ、ＢＧＰ、ｓｔａｔｉｃ）を用いて、コストが最小となるベストルート及びこのベストルートに次いでコストが小さいセカンダリールートを設定する（ステップＳ１１０）。
【００３７】
フォワーディング管理部２００は、ルーティング設定部１００で設定したベストルート及びセカンダリールートの情報を用いてベストネクストホップテーブル及びセカンダリーネクストホップテーブルを設定する（ステップＳ１２０）。ここで、フォワーディング管理部２００は、アクティブ出力インタフェースを生存ポートリストテーブル２４０に登録する（ステップＳ１３０）。
【００３８】
フォワーディング管理部２００は、ベストネクストホップテーブル４４０及びセカンダリーネクストホップテーブル４６０のインデックス番号をネクストホップリストテーブル２２０に格納する（ステップＳ１４０）。フォワーディング管理部２００は、目的地ＩＰアドレス及びネットマスクのマスキング値をフォワーディングテーブルに格納する（ステップＳ１５０）。また、フォワーディング管理部２００は、前記マスキング値をベストネクストホップテーブル４４０の該当ベストネクストホップエントリーの物理アドレスに設定する（ステップＳ１６０）。
【００３９】
続いて図５Ｂに示すように、フォワーディング管理部２００は、ネットワークモニター部３００からのネットワーク障害発生メッセージが受信されているか否かを判定（確認）する（ステップＳ２１０）。そしてフォワーディング管理部２００は、ネットワーク障害発生メッセージが受信されていれば、該当出力インタフェース番号を生存ポートリストテーブル２４０から削除する（ステップＳ２２０）。
【００４０】
フォワーディング管理部２００は、ネクストホップリストテーブル２２０からセカンダリーネクストホップテーブル４６０の該当インデックス番号を検索する（ステップＳ２３０）。フォワーディング管理部２００は、検索したインデックス番号に対応するベストネクストホップエントリーの物理アドレスを、セカンダリーネクストホップテーブル４６０の該当セカンダリーネクストホップエントリーの物理アドレスに設定する（ステップＳ２４０）。
【００４１】
フォワーディング管理部２００は、前記インデックス番号に対応する前記設定した物理アドレスをフォワーディングテーブル４２０から検索し、検索したフィジカルアドレスに基づいてセカンダリーネクストホップテーブル４６０からセカンダリーネクストホップエントリーを検索する（ステップＳ２５０）。フォワーディング管理部２００は、検索したセカンダリーネクストホップエントリーに従ってＩＰパケットをフォワーディングする（ステップＳ２６０）。
【００４２】
以上において説明した本発明は、本発明が属する技術分野における通常の知識を有する者であれば、本発明の技術的思想を逸脱しない範囲内で、様々な置換、変形及び変更が可能であり、従って本発明の技術的範囲は上述の実施形態及び添付図面の内容に限定されるものではない。
【図面の簡単な説明】
【００４３】
【図１】インターネット網におけるルータ間の接続構成を概略的に示すブロック図である。
【図２】従来のルータの構成を示すブロック図である。
【図３】本発明の実施形態に従い高速で転送されるＩＰパケットを保護するルータを示すブロック図である。
【図４】図３に示すベストネクストホップテーブル及びセカンダリーネクストホップテーブルの具体的な一例を示す図である。
【図５Ａ】本発明の実施形態に従うルータを用いて、ネットワーク障害が発生した場合のネットワークルーティング制御方法を示すフローチャートである。
【図５Ｂ】本発明の実施形態に従うルータを用いて、ネットワーク障害が発生した場合のネットワークルーティング制御方法を示すフローチャートである。
【符号の説明】
【００４４】
１００  ルーティング設定部
２００  フォワーディング管理部
２２０  ネクストホップリストテーブル
２４０  生存ポートリストテーブル
３００  ネットワークモニター部
４２０  フォワーディングテーブル
４４０  ベストネクストホップテーブル
４６０  セカンダリーネクストホップテーブル
５００  フォワーディング部
【図１】
2006191636.tif 000003
【図２】
2006191636.tif 000004
【図３】
2006191636.tif 000005
【図４】
2006191636.tif 000006
【図５Ａ】
2006191636.tif 000007
【図５Ｂ】
2006191636.tif 000008