(57)【特許請求の範囲】
【請求項１】
パケットをその宛先コンピュータまでルーターによって経路制御を行いながら到達させることにより通信を行う通信ネットワークにおいて通信障害箇所を迂回する方法であって、
第１のルーターが、
当該第１のルーターが有する経路制御表にて宛先コンピュータのアドレスに対応する転送先として指定されたルーターを経由して、前記宛先コンピュータに直結した第２のルーターへの通信が可能であるか否かを判定するステップと、
前記第２のルーターへの通信が不可能であると判定された場合に、予め規定されている迂回ルーターの候補に対して、当該候補から前記第２のルーターへの通信の可否を問合せ、当該候補から前記第２のルーターへの通信が可能であることの応答があった場合に当該候補を迂回ルーターとして決定するステップと、
当該第１のルーターが受信した、前記アドレスを宛先アドレスとして有するパケットを、前記決定された迂回ルーターに送信するステップとを実行し、
前記迂回ルーターが、
前記第２のルーターへの通信の可否が前記第１のルーターから問合せられた場合に、当該迂回ルーターが前記第２のルーター宛に送信したメッセージに対する応答の有無に基づいて、当該迂回ルーターから前記第２のルーターへの通信が可能であるか否かを判定するステップと、
前記第２のルーターへの通信が可能であると判定された場合に、前記第１のルーターに対して前記第２のルーターへの通信が可能であることの応答を行うステップと、
前記第１のルーターから受信した前記パケットを、当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信するステップと、を実行することを特徴とする方法。
【請求項２】
請求項１記載の通信障害箇所を迂回する方法において、
前記第１のルーターが、
当該第１のルーターが受信した、前記アドレスを宛先アドレスとして有するパケットについて、当該パケット全体を含むペイロード部と、前記迂回ルーターのアドレスを宛先に指定すると共に迂回パケットであることを表すヘッダー部と、からなる迂回パケットを生成するステップと、
当該生成した迂回パケットを前記決定された迂回ルーターに送信するステップと、を更に実行し、
前記迂回ルーターが、
前記第１のルーターから受信したパケットのヘッダー部を参照して、受信したパケットが迂回パケットであるか否かを判定するステップと、
受信したパケットが迂回パケットであると判定された場合に、当該迂回パケットからヘッダー部を取り除くことにより抽出した、前記アドレスを宛先アドレスとして有するパケットを、当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信するステップと、を更に実行することを特徴とする方法。
【請求項３】
パケットをその宛先コンピュータまでルーターによって経路制御を行いながら到達させることにより通信を行う通信ネットワークにおいて通信障害箇所を迂回するための迂回ルーターであって、
第１のルーターが有する経路制御表にて宛先コンピュータのアドレスに対応する転送先として指定されたルーターを経由して、前記宛先コンピュータに直結した第２のルーターへの通信が不可能であると第１のルーターにより判定された場合において、当該第２のルーターへの通信の可否が第１のルーターから問合せられたとき、当該迂回ルーターが前記第２のルーター宛に送信したメッセージに対する応答の有無に基づいて、当該迂回ルーターから前記第２のルーターへの通信が可能であるか否かを判定する手段と、
前記第２のルーターへの通信が可能であると判定された場合に、前記第１のルーターに対して前記第２のルーターへの通信が可能であることの応答を行う手段と、
前記第１のルーターから受信した前記宛先コンピュータのアドレスを宛先アドレスとして有するパケットを当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信する手段と、を備えることを特徴とする迂回ルーター。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワーク上で通信障害が発生した場合に、その障害箇所を迂回して確実に通信を行う方法及びそのための迂回ルーターに関する。
【０００２】
【従来の技術】
インターネットは、多数のネットワークが相互に接続されて構成されており、その接続部にはルーターが設けられる。ルーターは、あるネットワークに属するコンピュータから別のネットワークに属するコンピュータへ通信が行われる場合に、ＩＰパケットが宛先ＩＰアドレスに向けて正しく転送されるように、次に転送されるべきルーターを選択する役割を有している。すなわち、ルーターは、宛先ＩＰアドレスと、次に転送すべきルーターとの対応関係が記録された経路制御表を備えており、この経路制御表を参照することにより、ＩＰパケットのＩＰヘッダに含まれる宛先ＩＰアドレスから、そのパケットを転送すべき次のルーターを決定する。こうして、あるネットワークのコンピュータから送信されたＩＰパケットは、各ルーターによって経路制御を受けながら宛先のコンピュータに到達することとなる。
【０００３】
上記した経路制御によって各ＩＰパケットが宛先アドレスに到達するには、各ルーターが備える経路制御表が正しく設定されていることが必要である。この経路制御表の作成や管理を行うためのプロトコル（ルーティングプロトコル）の代表的なものとしてＲＩＰ、ＯＰＳＦ，ＢＧＰなどがある。これらのプロトコルでは、夫々のルーターが取得した経路情報を他のルータと交換する。これにより、経路情報がインターネット全体へ広がっていき、各ルーターにおいて正しい経路制御表が管理されることとなる。
【０００４】
【発明が解決しようとする課題】
ところで、ルーター間を結ぶ経路の一部に障害が発生し、ルーター間での通信が行えなくなると、上記したルーティングプロトコルによって、その旨の情報が障害部に隣接するルーターから他のルーターへ伝播されていく。しかしながら、この情報伝播には一定の時間がかかるため、障害発生の直後はルーターの経路制御表にその障害発生が反映されていないことが起こり得る。この場合、当該ルーターでは障害が発生した経路へ向けて、誤って経路制御を行ってしまい、ＩＰパケットをその宛先まで到達させることができないおそれがある。
【０００５】
また、インターネット上の全てのルーターが正しく機能しているという保証はなく、正しく機能していないルーターのために、ルーティングプロトコルによる経路情報の伝播が正しく行われなくなることもある。このような場合にも、経路制御表に従った経路制御では、パケットをその宛先アドレスまで到達させることができなくなる。
【０００６】
本発明は上記の点に鑑みてなされたものであり、ネットワーク上の通信障害によって経路制御表に基づく経路制御が適正に行われなくなった場合にも、その障害箇所を迂回して確実に通信を行えるようにすることを目的とする。
【０００７】
【課題を解決するための手段】
上記の目的を達成するため、請求項１に記載された発明は、パケットをその宛先コンピュータまでルーターによって経路制御を行いながら到達させることにより通信を行う通信ネットワークにおいて通信障害箇所を迂回する方法であって、
第１のルーターが、
当該第１のルーターが有する経路制御表にて宛先コンピュータのアドレスに対応する転送先として指定されたルーターを経由して、前記宛先コンピュータに直結した第２のルーターへの通信が可能であるか否かを判定するステップと、
前記第２のルーターへの通信が不可能であると判定された場合に、予め規定されている迂回ルーターの候補に対して、当該候補から前記第２のルーターへの通信の可否を問合せ、当該候補から前記第２のルーターへの通信が可能であることの応答があった場合に当該候補を迂回ルーターとして決定するステップと、
当該第１のルーターが受信した、前記アドレスを宛先アドレスとして有するパケットを、前記決定された迂回ルーターに送信するステップとを実行し、
前記迂回ルーターが、
前記第２のルーターへの通信の可否が前記第１のルーターから問合せられた場合に、当該迂回ルーターが前記第２のルーター宛に送信したメッセージに対する応答の有無に基づいて、当該迂回ルーターから前記第２のルーターへの通信が可能であるか否かを判定するステップと、
前記第２のルーターへの通信が可能であると判定された場合に、前記第１のルーターに対して前記第２のルーターへの通信が可能であることの応答を行うステップと、
前記第１のルーターから受信した前記パケットを、当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信するステップと、を実行することを特徴とする。
【０００９】
また、請求項２に記載された発明は、請求項１に記載の通信障害箇所を迂回する方法において、
前記第１のルーターが、
当該第１のルーターが受信した、前記アドレスを宛先アドレスとして有するパケットについて、当該パケット全体を含むペイロード部と、前記迂回ルーターのアドレスを宛先に指定すると共に迂回パケットであることを表すヘッダー部と、からなる迂回パケットを生成するステップと、
当該生成した迂回パケットを前記決定された迂回ルーターに送信するステップと、を更に実行し、
前記迂回ルーターが、
前記第１のルーターから受信したパケットのヘッダー部を参照して、受信したパケットが迂回パケットであるか否かを判定するステップと、
受信したパケットが迂回パケットであると判定された場合に、当該迂回パケットからヘッダー部を取り除くことにより抽出した、前記アドレスを宛先アドレスとして有するパケットを、当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信するステップと、を更に実行することを特徴とする。
【００１０】
また、請求項３に記載された発明は、パケットをその宛先コンピュータまでルーターによって経路制御を行いながら到達させることにより通信を行う通信ネットワークにおいて通信障害箇所を迂回するための迂回ルーターであって、
第１のルーターが有する経路制御表にて宛先コンピュータのアドレスに対応する転送先として指定されたルーターを経由して、前記宛先コンピュータに直結した第２のルーターへの通信が不可能であると第１のルーターにより判定された場合において、当該第２のルーターへの通信の可否が第１のルーターから問合せられたとき、当該迂回ルーターが前記第２のルーター宛に送信したメッセージに対する応答の有無に基づいて、当該迂回ルーターから前記第２のルーターへの通信が可能であるか否かを判定する手段と、
前記第２のルーターへの通信が可能であると判定された場合に、前記第１のルーターに対して前記第２のルーターへの通信が可能であることの応答を行う手段と、
前記第１のルーターから受信した前記宛先コンピュータのアドレスを宛先アドレスとして有するパケットを当該迂回ルーターが有する経路制御表にて前記アドレスに対応する転送先として指定されたルーターに送信する手段と、を備えることを特徴とする。
【００１３】
【発明の実施の形態】
図１は、本発明に係わる通信障害箇所の迂回方法が適用されるインターネット１０の構成図である。インターネット１０は多数のネットワークが相互に接続されて構成されており、ネットワーク間の各接続部にはルーターが設けられている。図１では、本発明の通信障害箇所の迂回方法に係わるルータＡ，Ｂ１，Ｂ２，・・，Ｂｎ，Ｃ，Ｄ等が示されている。本実施形態では、ルーターＡに直結されたネットワーク１２上の各コンピュータ１４から、ルーターＤに直結されたネットワーク１６に属する各コンピュータ１８への通信を確実に行うべく、ルーターＢ１，・・・，Ｂｎにより通信障害箇所を迂回するものとして説明する。以下、コンピュータ１４を送信元コンピュータ１４とも称し、また、コンピュータ１８を宛先コンピュータ１８とも称す。さらに、ルーターＢ１，・・・，Ｂｎを迂回ルーターＢ１，・・・，Ｂｎとも称する。なお、各ネットワーク１２，１６およびルーターＣには、図１に示すようなＩＰアドレスが割り当てられているものとする。
【００１４】
各ルーターはその内部に経路制御表を備えている。経路制御表には、宛先ＩＰアドレスと、ＩＰパケットを次に転送すべきルーターとの対応関係が記録されている。
【００１５】
図２は、一例としてルーターＡの経路制御表を示す。図２に示す如く、この経路制御表では、ネットワーク１６のネットワークアドレスである１９２．１００．１２０．０／２４に対して、ルーターＣのＩＰアドレスである１９２．１５０．１６０．１が指定されている。このため、ルーターＡへ到達した、宛先がネットワーク１６上の宛先コンピュータ１８であるパケットは、ルーターＡからルーターＣへ向けて転送されることとなる。
【００１６】
ところで、上記従来技術の項で述べたように、ネットワーク上には、何らかの原因で障害が生じ、通信不能となる場合がある。例えば、ルーターＡからルーターＣを経由してルーターＤへ至る経路に発生した障害によりこの経路での通信が不能になったとする。このような通信不能に関する情報は、原則的には、ＲＩＰやＯＳＰＦ等の公知のルーティングプロトコルにより、ルーターＡにも伝播してその経路制御表に反映されることとなる。しかしながら、通信不能に関する情報が伝播するには一定の時間が必要となり、また、この情報が１００％確実にルーターＡに伝達されるという保証もない。このため、障害発生後も、ルーターＡの経路制御表が修正されず、宛先コンピュータ１８宛のパケットがルータＣに向けて転送されてしまうことが起こり得る。この場合、ルーターＣへ向けて転送された宛先コンピュータ１８宛のパケットは、宛先コンピュータ１８へ到達できないことになる。
【００１７】
本実施形態では、このような障害発生時にも、障害発生箇所を迂回して、ＩＰパケットをその宛先へ確実に到達させることを可能とするものである。以下、本実施形態における通信障害箇所の迂回方法について説明する。なお、本実施形態では、ルーターＡから宛先コンピュータ１８への通信（すなわちルーターＤへの通信）を確実に行うため、通信障害発生時の迂回用に用いるべき迂回ルーターＢ１，Ｂ２，・・・，ＢｎがルーターＡにおいて予め規定されているものとし、さらに、各迂回ルーターには、Ｂ１，Ｂ２，・・・，Ｂｎの順で高い優先度が与えられているものとする。
【００１８】
ルーターＡは、所定のタイミングで（例えば定期的に）、宛先コンピュータ１８に直結されたルータＤを宛先として、ＩＣＭＰエコーメッセージを送信する。このＩＣＭＰメッセージは、ルーターＡの経路制御表を参照して、ルーターＣに向けて転送される。そして、ルーターＡからルーターＣを経て宛先コンピュータ１８へ至る経路の通信が正常に行われている場合には、このエコーメッセージに対してルータＤからルータＡへ応答メッセージ（ＩＣＭＰ  Ｅｃｈｏ  Ｒｅｐｌｙ  Ｍｅｓｓａｇｅ）が返される。しかし、ルーターＡ，Ｃ，Ｄ間の何れかに通信障害が生ずると、ＩＣＭＰメッセージに対してこの応答メッセージが返信されてこなくなる。ルーターＡは、これによってルーターＡからルーターＣを経由して宛先コンピュータ１８へ至る通信経路での通信障害の発生を検知する。
【００１９】
また、ルーターＡは、やはり所定のタイミングで、迂回ルーターＢ１，Ｂ２，・・・に対して、当該迂回ルーターからルーターＤへの通信が可能か否かを、優先度が高い順に、ルーターＤへの通信が可能な迂回ルーターが見出されるまで問い合わせる。そして、このような問合せによりルーターＤへの通信が可能なルーターとして見出されたルーターを、実際に用いるべき迂回ルーターＢとして決定する。なお、上記の問合せを受けたルーターＢ１，Ｂ２・・・は、ルーターＡの場合と同様に、ＩＣＭＰエコーメッセージをルーターＤ宛に送信することによりルーターＤへの通信の可否を判定する。
【００２０】
以下、ルーターＡが実行する処理の内容を図３に示すフローチャートを参照して説明する。図３に示す処理は、ルーターＡが受取った各パケットについて実行される。なお、上記した通信障害検出処理において、宛先目的コンピュータ１８へ至る経路の通信障害が検出されると、フラグＦが１に設定されるものとする。
【００２１】
先ず、ステップ１００において、フラグＦが１であるか否かが判別される。その結果、Ｆ＝１が不成立であれば、上記の通信障害は発生していないことになる。この場合、次にステップ１０２にいて、経路制御表に従った通常の経路制御が行われる。一方、ステップ１００においてＦ＝１が成立する場合は、宛先コンピュータ１８への通信障害が発生していると判断されて、次にステップ１０４の処理が実行される。
【００２２】
ステップ１０４では、パケットのＩＰヘッダーを参照して、宛先ＩＰアドレスが宛先コンピュータ１８のＩＰアドレスに一致するか否か（すなわち、本例では、宛先ＩＰアドレスのネットワーク部がネットワーク１６のネットワークアドレス１９２．１００．１２０．０／２４に一致するか否か）が判別される。その結果、アドレスが不一致であれば、上記ステップ１０２において、通常の経路制御が行われる。一方、アドレスが一致する場合には、次にステップ１０６の処理が実行される。
【００２３】
ステップ１０６では、図４に示すように、ＩＰパケット全体をペイロード部とし、このペイロード部にＴＣＰヘッダおよびＩＰヘッダが付加された迂回用パケットが生成される。付加されたＩＰヘッダでは、送信元アドレスとしてルーターＡのＩＰアドレスが、宛先アドレスとして迂回ルーターＢのＩＰアドレスが夫々指定される。また、付加されたＴＣＰヘッダには、このパケットが迂回用パケットであることを示す情報が設定される。そして、ステップ１０８では、生成された迂回用パケットが迂回ルーターＢに向けて送出される。
【００２４】
迂回ルーターＢは、受け取ったパケットのＴＣＰヘッダを参照して、そのパケットが迂回用パケットであるか否かを判定する。そして、迂回用パケットであれば、ＩＰヘッダおよびＴＣＰヘッダを取り除いたペイロード部（すなわち元のＩＰパケット）を、迂回ルーターＢの経路制御表を参照した通常の経路制御に従って送出する。
【００２５】
以上説明したように、本実施形態では、送信元コンピュータ１４から宛先コンピュータ１８宛てのＩＰパケットについて、ルーターＡからルーターＣを経てルーターＤへ至る経路（すなわち、ルーターＡの経路制御表に従った本来の経路制御による経路）に通信障害が発生した場合にも、迂回ルーターＢ１，Ｂ２，・・・Ｂｎの何れかを経由して確実に宛先コンピュータ１８へ到達させることができる。したがって、本実施形態によれば、送信元コンピュータ１４から宛先コンピュータ１８への通信を、通信障害の影響を受けることなく確実に行うことができる。
【００２６】
また、本実施形態では、複数の迂回ルーターＢ１，Ｂ２，・・・，Ｂｎを設け、ルーターＤへの通信が可能なルーターを実際の迂回ルーターＢとして用いるので、宛先コンピュータ１８への通信をより確実なものとすることができる。
【００２７】
なお、上記したルーターＡ，Ｂ１，・・・Ｂｎにおける処理は、これらのルーターとして、例えばＶＰＮ（Virtual Private Network）のためのプロトコルであるＩＰｓｅｃ対応のルーターを用いることにより実現される。この場合、ルーターＡで付加されるＴＣＰヘッダが、ＩＰｓｅｃで定義されるＡＨ（認証）ヘッダに相当することとなる。
【００２８】
【発明の効果】
以上説明したように、本発明によれば、第１のルーターから第２のルーターへの通常の経路制御に従った通信に障害が生じた場合に、第２のルーター宛のパケットを迂回ルーターを経由して伝送することができる。このため、上記障害発生時にも、第２のルーター宛のパケットを確実に当該第２のルーターまで到達させることができる。すなわち、本発明によれば、第１のルーターから第２のルーターへの通信を確実に行うことができる。
【図面の簡単な説明】
【図１】本発明の一実施形態であるシステムの全体構成図である。
【図２】各ルーターが備える経路制御表の一例を示す図である。
【図３】ルーターＡにおいて実行される処理の内容を示すフローチャートである。
【図４】ルーターＡにおいて生成される迂回パケットの構成を示す図である。
【符号の説明】
１０  インターネット
１２，１６  ネットワーク
１４  送信元コンピュータ
１８  宛先コンピュータ
Ａ，Ｃ，Ｄ  ルーター
Ｂ１，・・・Ｂｎ  迂回ルーター
【図１】
0004629254.tif 000002
【図２】
0004629254.tif 000003
【図３】
0004629254.tif 000004
【図４】
0004629254.tif 000005