(57)【特許請求の範囲】
【請求項１】
複数のインターネットサービスプロバイダに各々センター用トンネルルータ及びインターフェースを設置し、
前記インターネットサービスプロバイダのユーザ側にはユーザ用トンネルルータを設置し、
前記ユーザ用トンネルルータは、前記センター用トンネルルータを設置している前記各インターネットサービスプロバイダが提供するインターネット接続サービスと各々接続し、
前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータの間に、物理的には異なる前記インターフェース及び経路を通る論理回線を各々確立し、
各インターネットサービスプロバイダは、ネットワークで相互接続され、前記ユーザにより前記各論理回線の定常的な通信品質測定に基づくアクセス回線制御を行い、どの前記論理回線を通信に利用するかを常時動的に選択し、
前記各トンネルルータは、各論理回線の品質測定の結果を比較して、最適と判断した前記論理回線を利用するように経路を制御し、
前記ユーザの拠点にネットワークアドレス変換ルータとドメインネームシステムサーバを設け、前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと各々対応し、それぞれのインターネットサービスプロバイダにより各々に仮想的に対応した仮想グローバルアドレスの割り当てを受け、
前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークを、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけて、異なる前記仮想グローバルアドレスへのアクセスを、前記ユーザの一つのプライベートサーバに転送可能とし、
前記プライベートサーバのドメイン名に対して複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避し、
前記ネットワークアドレス変換ルータは、ある宛先へのネクストホップを決定する場合に、通常のルーティングテーブルに登録されているネクストホップに対して優先して、ユーザが設定したポリシーに基づいてネクストホップを選択するポリシールーティングを行うもので、
前記ネットワークアドレス変換ルータに、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを設けるとともに、フローテーブルとポリシールーティングテーブルを設け、
前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、
前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、
前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択することを特徴とするマルチホーム接続方法。
【請求項２】
複数のインターネットサービスプロバイダと、そのユーザとにより構成され、
各インターネットサービスプロバイダ側には各々センター用トンネルルータ及びインターフェースを設置し、前記ユーザ側にはユーザ用トンネルルータを設置し、
前記ユーザ用トンネルルータは、前記センター用トンネルルータを設置している前記各インターネットサービスプロバイダが提供するインターネット接続サービスと各々接続され、各々物理回線を利用して、前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータの間に、各々論理回線を確立し、
各インターネットサービスプロバイダは、ネットワークで相互接続され、前記ユーザと一方のインターネットサービスプロバイダの前記トンネルルータとの間に、物理的には異なる前記インターフェース及び経路を通る複数の論理回線を各々確立し、
前記論理回線の通信品質測定を行う通信品質測定手段を、前記各センター用トンネルルータとユーザ用トンネルルータとに各々備え、この通信品質測定手段は、前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータ間で確立した論理回線それぞれについて定常的に品質測定を行い、より効率的な論理回線を通信に利用するように常時動的に選択して、前記各論理回線を利用するように経路を制御するものであり、
前記ユーザはプライベートネットワークを有し、前記ユーザの拠点に、ネットワークアドレス変換ルータとドメインネームシステムサーバを備え、
前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと接続され、各インターネットサービスプロバイダからアドレスの割り当てを受け、
前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークに設置した前記ユーザのプライベートサーバには、複数の仮想グローバルアドレスが仮想的に設定され、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけ、異なる前記仮想グローバルアドレスへのアクセスを、一つの前記プライベートサーバに転送可能とし、
前記ドメインネームシステムサーバは、前記プライベートサーバのドメイン名に対して、複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避するものであり、
前記ネットワークアドレス変換ルータは、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを備えるとともに、フローテーブルとポリシールーティングテーブルとを備え、
前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、
前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、
前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択するものであることを特徴とするマルチホーム接続装置。
【請求項３】
複数のインターネットサービスプロバイダと接続したプライベートネットワークを有し、
各インターネットサービスプロバイダ側には、各々センター用トンネルルータと接続先に対応したインターフェースとを設け、
前記プライベートネットワークを有したユーザの拠点に、ネットワークアドレス変換ルータとドメインネームシステムサーバを備え、
前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと接続され、各インターネットサービスプロバイダからアドレスの割り当てを受け、
前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークに設置した前記ユーザのプライベートサーバには、複数の仮想グローバルアドレスが仮想的に設定され、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけ、異なる前記仮想グローバルアドレスへのアクセスを、一つの前記プライベートサーバに転送可能とし、
前記ドメインネームシステムサーバは、前記プライベートサーバのドメイン名に対して、複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避するものであり、
前記ネットワークアドレス変換ルータは、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを備えるとともに、フローテーブルとポリシールーティングテーブルとを備え、
前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、
前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、
前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択するものであることを特徴とするマルチホーム接続装置。
【請求項４】
前記複数のインターネットサービスプロバイダは、前記ユーザに対して、論理回線の接続が互いに対称な構成である請求項２又は３記載のマルチホーム接続装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数のインターネットサービスプロバイダ（以下、ＩＳＰと言う）と接続するサービス（以下、マルチホーム接続と言う）に関し、特に、インターネットからユーザネットワークへのパケット転送の経路を制御し、マルチホーム接続を容易に実現できるマルチホーム接続方法と装置に関する。
【背景技術】
【０００２】
インターネット接続サービスにおいて、マルチホーム接続とは、複数のＩＳＰと接続し、インターネットとの接続を冗長化する仕組みである。ユーザネットワークがひとつのＩＳＰとのみ接続している場合、図１１に示すように、インターネット２で繋がった外部クライアント３と接続したユーザネットワーク４において、一つのＩＳＰ−Ａに障害が発生すると、ユーザネットワーク４とインターネット２との接続が途絶えてしまう。これを防止するために、ユーザネットワーク４を他のＩＳＰ−Ｂ等とも接続しておくことで、一方のＩＳＰに障害が発生した場合にも、他方のＩＳＰを経由してインターネットとの接続を維持することが可能になる。特に、ＥＣ（エレクトロニック・コマース）サイトなどのように、インターネット接続がビジネスと直結するネットワークは、特にマルチホーム接続が必要とされる。
【０００３】
また、特許文献１，２に開示されているように、マルチホーム接続されているユーザネットワークに対する、インターネットからのトラフィックを、複数のリンクに適切に分散させる制御や、遅延、パケットロスどの通信品質パラメータに応じて、複数のリンクのうちいずれか一つを通る経路を適切に選択できるようにした、マルチホーム接続におけるパケット転送方法も提案されている。
【特許文献１】特開２００４−２７４７０２号公報
【特許文献２】特開２００４−２７４７０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来の技術において、マルチホーム接続を実現するためには、障害が発生したＩＳＰの利用を動的に回避する仕組みが必要となる。複数のＩＳＰに接続していたとしても、ＩＳＰの障害を検出して他方のＩＳＰを利用するように切り替える仕組みがなければ、障害が発生したＩＳＰを利用し続けることになる。そのため、ＩＳＰの障害を検出し、それをきっかけに他方のＩＳＰを利用するように制御する仕組みが必要になる。
【０００５】
また、マルチホーム接続では、接続の冗長化のみならず、複数のＩＳＰにトラフィックの送受信を分散させ、回線の利用効率を高める仕組みが求められる。トラフィック分散の制御を行わない場合、他のＩＳＰに余剰帯域があるにも関わらず、ひとつのＩＳＰにトラフィックが集中し、回線が輻輳する可能性がある。そのため、通常時においても、それぞれの回線を適度に利用する仕組みを導入することで、回線の利用効率を高めることが好ましい。
【０００６】
一般的に、マルチホーム接続を実現するためには、ＢＧＰ（Border Gateway Protocol）という仕組みが広く利用されているが、いくつか問題点が指摘されている。まず、通信品質に基づいたＩＳＰ選択ができない点が挙げられる。ＢＧＰの場合、ＩＳＰとの通信が完全にできなくなる状況を障害の基準としている。そのため、若干のパケットロスが発生した場合や、遅延が大きくなった場合は障害とは見なさず、そのＩＳＰを利用し続ける。これにより、実際の通信は、品質の劣る回線でやり取りされることになる。また、トラフィック量に応じた制御もできないため、適切なトラフィック分散を行うためには、管理者が常にトラフィック量を監視して手動で制御する必要がある。こうした技術的な課題に加え、ＢＧＰは、運用のコストが高いといった問題があり、中小企業などの小規模なネットワークにこのＢＧＰを導入することは難しいものであった。
【０００７】
また、従来の複数ネットワークアドレス変換機能であるマルチＮＡＴ（Network Address Translation）には、外部ネットワークを始点とするセッションが不整合になる問題があるため、マルチＮＡＴによるマルチホーム接続は、内部から外部へのセッションのみを冗長化の対象として利用されてきた。
【０００８】
この発明は、上記従来の技術の問題点に鑑みて成されたもので、簡単な構造で、ＢＧＰ等の問題点を解消し、容易にマルチホーム接続を可能にし、効率的なインターネット接続と高い通信品質を維持することができるマルチホーム接続方法と装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
この発明のマルチホーム接続方法と装置は、ユーザとＩＳＰの接続の冗長化システムと、ＩＳＰとインターネットの接続の冗長化システムとによって、障害を動的に回避するマルチホーム接続装置である。
【００１０】
この発明は、複数のインターネットサービスプロバイダに各々センター用トンネルルータ及びインターフェースを設置し、前記インターネットサービスプロバイダのユーザ側にはユーザ用トンネルルータを設置し、前記ユーザ用トンネルルータは、前記センター用トンネルルータを設置している前記各インターネットサービスプロバイダが提供するインターネット接続サービスと各々接続し、前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータの間に、物理的には異なる前記インターフェース及び経路を通る論理回線を各々確立し、各インターネットサービスプロバイダは、ネットワークで相互接続され、前記ユーザにより前記各論理回線の定常的な通信品質測定に基づくアクセス回線制御を行い、どの前記論理回線を通信に利用するかを常時動的に選択し、前記各トンネルルータは、各論理回線の品質測定の結果を比較して、最適と判断した論理回線を利用するように経路を制御し、前記ユーザの拠点にネットワークアドレス変換ルータとドメインネームシステムサーバを設け、前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと各々対応し、それぞれのインターネットサービスプロバイダにより各々に仮想的に対応した仮想グローバルアドレスの割り当てを受け、前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークを、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけて、異なる前記仮想グローバルアドレスへのアクセスを、前記ユーザの一つのプライベートサーバに転送可能とし、前記プライベートサーバのドメイン名に対して複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避し、前記ネットワークアドレス変換ルータは、ある宛先へのネクストホップを決定する場合に、通常のルーティングテーブルに登録されているネクストホップに対して優先して、ユーザが設定したポリシーに基づいてネクストホップを選択するポリシールーティングを行うもので、前記ネットワークアドレス変換ルータに、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを設けるとともに、フローテーブルとポリシールーティングテーブルを設け、前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択するマルチホーム接続方法である。
【００１１】
またこの発明は、複数のインターネットサービスプロバイダと、そのユーザとにより構成され、各インターネットサービスプロバイダ側には各々センター用トンネルルー及びインターフェースを設置し、前記ユーザ側にはユーザ用トンネルルータを設置し、前記ユーザ用トンネルルータは、前記センター用トンネルルータを設置している前記各インターネットサービスプロバイダが提供するインターネット接続サービスと各々接続され、各々物理回線を利用して、前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータの間に、各々論理回線を確立し、各インターネットサービスプロバイダは、ネットワークで相互接続され、前記ユーザと一方のインターネットサービスプロバイダの前記トンネルルータとの間に、物理的には異なる前記インターフェース及び経路を通る複数の論理回線を各々確立し、前記論理回線の通信品質測定を行う通信品質測定手段を、前記各センター用トンネルルータとユーザ用トンネルルータとに各々備え、この通信品質測定手段は、前記ユーザと前記各インターネットサービスプロバイダの各トンネルルータ間で確立した論理回線それぞれについて定常的に品質測定を行い、より効率的な論理回線を通信に利用するように常時動的に選択して、前記各論理回線を利用するように経路を制御するマルチホーム接続装置である。そして、前記ユーザはプライベートネットワークを有し、前記ユーザの拠点に、ネットワークアドレス変換ルータとドメインネームシステムサーバを備え、前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと接続され、各インターネットサービスプロバイダからアドレスの割り当てを受け、前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークに設置した前記ユーザのプライベートサーバには、複数の仮想グローバルアドレスが仮想的に設定され、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけ、異なる前記仮想グローバルアドレスへのアクセスを、一つの前記プライベートサーバに転送可能とし、前記ドメインネームシステムサーバは、前記プライベートサーバのドメイン名に対して、複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避するものであり、前記ネットワークアドレス変換ルータは、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを備えるとともに、フローテーブルとポリシールーティングテーブルとを備え、前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択するマルチホーム接続装置である。
【００１２】
またこの発明は、複数のインターネットサービスプロバイダと接続したプライベートネットワークを有し、各インターネットサービスプロバイダ側には各々センター用トンネルルータと接続先に対応したインターフェースとを設け、前記プライベートネットワークを有したユーザの拠点に、ネットワークアドレス変換ルータとドメインネームシステムサーバを備え、前記ユーザのネットワークアドレス変換ルータは、複数の前記インターネットサービスプロバイダと接続され、各インターネットサービスプロバイダからアドレスの割り当てを受け、前記ユーザのプライベートネットワークは、前記ユーザのプライベートアドレスにより構築され、前記ユーザのプライベートネットワークに設置した前記ユーザのプライベートサーバには、複数の仮想グローバルアドレスが仮想的に設定され、前記仮想グローバルアドレスと前記プライベートアドレスを多対一で対応づけ、異なる前記仮想グローバルアドレスへのアクセスを、一つの前記プライベートサーバに転送可能とし、前記ドメインネームシステムサーバは、前記プライベートサーバのドメイン名に対して、複数の前記仮想グローバルアドレスを登録し、一方のインターネットサービスプロバイダに障害が発生した場合には、前記ドメインネームシステムサーバは、ドメイン名のアドレス問い合わせに対して、その障害が発生したインターネットサービスプロバイダから割り当てられた前記仮想グローバルアドレスを返答しないことで、障害のあるインターネットサービスプロバイダを経由したアクセスを回避するものであり、前記ネットワークアドレス変換ルータは、デフォルトの宛先として所定の宛先が設定されたルーティングテーブルを備えるとともに、フローテーブルとポリシールーティングテーブルとを備え、前記ネットワークアドレス変換ルータは、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信した外部の前記インターフェースの情報とともにフローエントリとして前記フローテーブルに登録し、任意に設定した一定時間の間、前記フローテーブルにエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、前記フローテーブルから前記エントリを削除し、タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされ、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除し、前記ポリシールーティングテーブルは、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として、転送するネクストホップの前記インターフェースを決定するためのテーブルであり、前記フローテーブルに登録された前記外部からのパケットによる前記フローエントリを、前記ポリシールーティングテーブルに動的に追加して設定し、前記ポリシールーティングテーブルは常に前記ルーティングテーブルよりも先に検索され、前記ネットワークアドレス変換ルータは、前記転送するパケットと前記ポリシールーティングテーブルのエントリがマッチした場合は、前記ポリシールーティングテーブルに登録されている前記ネクストホップを前記転送するパケットの宛先として選択するマルチホーム接続装置である。
【００１３】
前記複数のインターネットサービスプロバイダは、前記ユーザに対して、論理回線の接続が互いに対称な構成である。
【００１４】
この発明のシステムは、ユーザとＩＳＰの双方向からの品質測定に基づいて最適な回線を選択可能としたものである。そして、外部ネットワークからアクセスがあった場合に、応答パケットをアクセスと同じ回線に送り返すように制御するポリシールーティング技術を用いている。この技術を利用することで、マルチＮＡＴ機能を双方向の冗長化に利用している。
【発明の効果】
【００１５】
この発明のマルチホーム接続方法と装置によれば、高速な回線障害の検出と回線切り替えが可能であり、高速に回線障害が迂回されるため、ユーザは障害が発生したことを意識せず、通常時とまったく同じインターネット利用を継続可能なものである。
【００１６】
通信品質に基づく回線切り替えを自動的に行うことが可能である。即ち、パケットロスや遅延が発生した場合に、障害と判断し、別の回線を利用して通信を行うように制御する。これにより、ユーザのトラフィックは常に高い品質を維持することができる。
【００１７】
また、トラフィック量に応じた回線切り替えが可能であり、回線に流れるトラフィック量が、設定した閾値を超えた場合、輻輳の発生を事前に防止するために、他の回線にトラフィックを切り替えることができる。適切なトラフィック分散が自動的に行われるため、ネットワーク管理者はメンテナンスする必要がないものである。
【００１８】
正確な通信品質の測定が可能であり、しかも品質情報は測定によって得られ、ユーザとＩＳＰの双方向から測定を行うため、片方向毎の品質測定が可能になり、より正確な品質の把握が可能になる。
【００１９】
セッションを維持したまま切り替えが可能であり、障害が発生した場合にも、既存のセッションを維持し続けることが可能である。このため、ユーザ側に障害の影響を与えない。さらに、ランニングコストが安価なＰＡ(Provider Aggregatable)アドレスを利用したマルチホームが可能である。
【発明を実施するための最良の形態】
【００２０】
以下、この発明の実施の形態について図面に基づいて説明する。図１はこの発明の第一実施形態を示すもので、この実施形態のマルチホーム接続方法と装置を用いたシステムでは、障害のパターンとして、ユーザとＩＳＰの接続の障害と、ＩＳＰとインターネットの接続の障害を想定している。従って、この発明は、（Ａ）ユーザとＩＳＰの接続の冗長化システムと、（Ｂ）ＩＳＰとインターネットの接続の冗長化システムとによって、障害を動的に回避するものである。この両者は独立して利用することも可能であるが、両者を組み合わせることで、最適なインターネット接続の冗長化を実現する。
【００２１】
（Ａ）ユーザとＩＳＰの接続の冗長化システム
ここでは、ユーザ１２とＩＳＰの接続回線を冗長化する方法について述べる。この実施形態の部分のシステムは、図１に示すように、複数台のトンネルルータによって構成される。ＩＳＰ−Ａにセンター用トンネルルータ１０を設置し、ユーザ１２側にはユーザ用トンネルルータ１４を設置する。ユーザ１２のトンネルルータ１４は、ＩＳＰ−Ａのトンネルルータ１０と論理的に接続し、常にＩＳＰ−Ａのトンネルルータを経由してインターネット２０との通信を行う。
【００２２】
ユーザ１２のトンネルルータ１４は、ＩＰ（Internet Protocol）トンネル技術による複数の論理回線を利用して、ＩＳＰ−Ａのトンネルルータ１０と冗長接続されている。ＩＰトンネル技術は、ＩＰネットワークを介してルータの間に仮想的な論理回線を確立させる技術である。ＧＲＥやＩＰ−Ｉｎ−ＩＰなどが標準化されている。
【００２３】
まず、ユーザ１２は、トンネルルータ１０を設置している一つのＩＳＰ−Ａが提供するＡＤＳＬやフレッツなどの一般的なインターネット接続サービスと契約する。このＩＰ接続回線１１Ａを利用して、ユーザ１２とＩＳＰのトンネルルータの間にトンネルによる論理回線１３Ａを確立する。
【００２４】
ユーザ１２は、別のＩＳＰ−Ｂとも、インターネット接続サービスを契約し、こちらのＩＰ接続回線１１Ｂを利用して、ユーザ１２とＩＳＰ−Ｂの図示しないトンネルルータの間にもう一つの論理回線１３Ｂを確立する。ＩＳＰ−ＡとＩＳＰ−Ｂは、ＩＰネットワーク１５で相互接続されている。この結果、ユーザ１２とＩＳＰ−Ａのトンネルルータ１０の間に、物理的には異なる経路を通る、複数の論理回線１３Ａ，１３Ｂが確立される。これにより、一方の物理回線であるＩＰ接続回線１１Ｂに障害が発生した場合にも、ユーザ１２とＩＳＰ−Ａとの接続性が維持される。
【００２５】
各ルータ１０，１４は、定常的にKeep Aliveパケットを用いた死活確認によって論理回線１３Ａ，１３Ｂを監視し、論理回線１３Ａ，１３Ｂの障害を検出した場合には、その回線を利用しないようにトラフィックを迂回させる。死活確認の間隔の調整により、数秒オーダでの迂回が可能である。
【００２６】
この構成の場合、ユーザ１２のネットワークは、ＩＳＰ−Ａに属するネットワークとなる。ＩＳＰ−Ｂは、ユーザ１２とＩＳＰ−Ａとを接続するためのアクセス回線提供事業者として機能する。
【００２７】
次に、論理回線の品質測定に基づくアクセス回線制御について説明する。まず、ユーザ１２とＩＳＰ−Ａのトンネルルータ１４，１０は、確立した論理回線１３Ａ，１３Ｂそれぞれについて、定期的に品質測定を行い、その結果に基づいて、どの論理回線１３Ａ，１３Ｂを通信に利用するかを動的に選択する。各トンネルルータ１０，１４は、各論理回線１３Ａ，１３Ｂの品質測定の結果を内部で比較し、運用者のポリシーに従って最適と判断した論理回線を利用するように経路を制御する。論理回線１３Ａ，１３Ｂの品質測定には、既存のどのような技術を用いてもよい。Pingなどの既存の測定技術を用いることも可能である。
【００２８】
（Ｂ）ＩＳＰとインターネットとの接続の冗長化システム
次に、ＩＳＰとインターネット２０の間の回線に障害が発生した場合に、プライベートネットワーク２６を冗長化する方法について述べる。この実施形態の部分のシステムは、図３に示すように、ユーザ１２の拠点に設置するネットワークアドレス変換ルータであるＮＡＴ（Network Address Translation）ルータ２２とＤＮＳ（Domain
Name System）サーバ２４によって構成される。ユーザ１２のＮＡＴルータ２２は、複数のＩＳＰ−Ａ、ＩＳＰ−Ｂ等と接続し、それぞれのＩＳＰからアドレスの割り当てを受ける。ユーザ１２のプライベートネットワーク２６は、ユーザ１２のプライベートアドレスにより構築する。
【００２９】
この発明では、ユーザ１２のプライベートネットワーク２６を、いわゆるマルチＮＡＴを利用して構築することで、ＩＳＰとインターネット２０の間の接続に障害が発生した場合の冗長化を実現する。マルチＮＡＴは、ユーザ１２のＮＡＴルータ２２に実装される機能で、プライベートネットワーク２６に設置したプライベートサーバ２８に、複数のグローバルアドレスを仮想的に設定する仕組みである。
【００３０】
一般的なＮＡＴは、ルータ内部に保持された仮想的なグローバルアドレスに対してアクセスがあった場合、そのアクセスをグローバルアドレスと一対一に対応付けられたそのユーザのプライベートアドレスに転送する。転送する際には、パケットの宛先アドレスをプライベートアドレスに変換する。この仕組みにより、プライベートネットワークのコンピュータと外部のコンピュータがシームレスに通信することが可能になる。
【００３１】
一方、マルチＮＡＴでは、仮想的に割り当てられた仮想グローバルアドレスとプライベートアドレスを多対一で対応づけることで、異なる仮想グローバルアドレスへのアクセスを、ユーザ１２の一つのプライベートサーバ２８に転送することが可能になる。外部ネットワークからは、一つのプライベートサーバ２８は独立した２台の仮想サーバ２８Ａ，２８Ｂに見える。この機能を利用して、ひとつのプライベートサーバ２８に対し、ＩＳＰ−Ａから割り当てられた仮想グローバルアドレスと、ＩＳＰ−Ｂから割り当てられた仮想グローバルアドレスを、各々仮想的に割り当てる。こうすることで、万が一、一方のＩＳＰ−Ａに障害が発生したとしても、もう一方の仮想グローバルアドレスを介してプライベートサーバ２８に対する通信を継続することが可能になる。
【００３２】
この構成の場合、一つのサーバ２８に対して、複数の仮想グローバルアドレスが存在するため、ＤＮＳサーバ２４は、このサーバ２８のドメイン名に対して、複数の仮想グローバルアドレスを登録する。一方のＩＳＰに障害が発生した場合には、ドメイン名のアドレス問い合わせに対して、ＤＮＳサーバ２４は、そのＩＳＰから割り当てられた仮想グローバルアドレスを返答しないことで、障害ＩＳＰを経由したアクセスを回避する。
【００３３】
一般に、マルチＮＡＴを用いる場合、外部からのＴＣＰ（Transmission Control Protocol）セッション確立が問題となる。ＮＡＴにおいて内部から外部への通信を行う場合、パケットの送信元アドレスは、プライベートアドレスからグローバルアドレスに変換されて宛先に転送される。マルチＮＡＴの場合、一つのプライベートアドレスに複数のグローバルアドレスを対応付けているので、送信元アドレスとして、どちらのグローバルアドレスを利用するか選択する必要がある。一般的なルータでは、パケットの転送先となるインターフェースに応じて変換するグローバルアドレスを選択する仕組みになっている。例えば、ＩＳＰ−Ａに転送する場合には、ＩＳＰ−Ａと接続するインターフェースに対応付けられたグローバルアドレスに変換され、ＩＳＰ−Ｂに転送する場合には、ＩＳＰ−Ｂと接続するインターフェースに対応付けられたグローバルアドレスに変換される。
【００３４】
ここで、図４を基にインターネット上のある外部クライアント３０から、仮想サーバ２８ＢにＴＣＰでアクセスする場合を考える。また、ＮＡＴルータ２２では、外部クライアント３０宛のトラフィックをＩＳＰ−Ａに転送するようにデフォルトで設定されているとする。この場合、プライベートサーバ２８から外部クライアント３０への応答パケットの送信元アドレスは、仮想サーバ２８Ａのものに変換される。外部クライアント３０のサーバは、仮想サーバ２８Ｂからの応答を待っているため、仮想サーバ２８Ａからの応答は処理しない。その結果、プライベートサーバ２８と外部クライアント３０の通信が成り立たなくなる。
【００３５】
そこで、この発明の実施形態のシステムでは、この問題を解決するために、セッションログに基づいたポリシールーティングを行う。ポリシーとは、宛先ＩＰアドレス以外の経路選択条件を指す。例えば、送信元ＩＰアドレスや宛先ポート番号、あるいは、それらの組み合わせなどがポリシーとして挙げられる。
【００３６】
まず、インターネットでのルーティングは、宛先ベースが原則となっている。パケットのＩＰヘッダに含まれている宛先ＩＰアドレスの情報をキーにして、自身のルーティングテーブルに登録されている宛先エントリを検索し、それに対応するネクストホップを選出する。一方、ポリシールーティングでは、ある宛先へのネクストホップを決定する場合に、通常のルーティングテーブルに登録されているネクストホップではなく、ユーザが設定したポリシーに基づいてネクストホップを選択する。
【００３７】
この発明の実施形態のシステムでは、セッションログに基づいてポリシーを動的に設定する。外部クライアント３０からアクセスを受けたことを契機に、その外部クライアント３０宛のネクストホップを、アクセスを受けたインターフェース（以下、ＩＦと言う）に変更するポリシーを動的に追加する。前述の例のように、外部クライアント３０から仮想サーバ２８Ｂに対してアクセスされた場合、ＮＡＴルータ２２に、外部クライアント３０宛のネクストホップを、当初の設定のＩＳＰ−ＡからＩＳＰ−Ｂに変更するポリシーを動的に追加する。これにより、図５に示すように、応答パケットの送信元アドレスは、仮想サーバ２８Ｂのアドレスに変換され、ＴＣＰセッションが正しく成立するようになる。
【００３８】
この実施形態のポリシールーティングについて、以下に詳述する。図６に示すように、ＮＡＴルータ２２において、ＩＳＰ−Ａと接続するインターフェースをＩＦ−Ａ、ＩＳＰ−Ｂと接続するインターフェースをＩＦ−Ｂとする。ＩＰアドレスとして、ＩＦ―ＡにはAddr-A2、ＩＦ−ＢにはAddr-B2を設定する。また、ＩＳＰ−ＡのルータのアドレスはAddr-A1、ＩＳＰ−ＢのルータのアドレスはAddr-B1とする。
【００３９】
ユーザ１２内部のプライベートサーバ２８には、ＩＰアドレスとして、Addr-X2を設定する。また、プライベートサーバ２８と接続するＮＡＴルータ２２のインターフェースをＩＦ−Xとし、アドレスとしてAddr-X1を設定する。
【００４０】
ＮＡＴルータ２２のルーティングテーブル３４には、デフォルトの宛先としてAddr-A1を設定する。ルーティングテーブル３４は、パケットの転送先を決定するためのデータベーステーブルである。パケットの宛先アドレスをキーにして、マッチする宛先を検索する。この設定は、ＮＡＴルータ２２が転送するパケットが、通常全てAddr-A1、つまり、ＩＳＰ−Ａに向けて送信することを表す。ＩＦ−Ａに対応するＮＡＴテーブル３２Ａには、内部アドレスAddr-X2と、外部アドレスAddr-A2の対応付けを登録する。
【００４１】
ＩＦ−Ａを通過するパケットは、ＮＡＴテーブル３２Ａに従ってアドレスが変換される。また、ＩＦ−Ｂに対応するＮＡＴテーブル３２Ｂには、内部アドレスAddr-X2と外部アドレスAddr-B2の対応付けを登録する。ＩＦ−Ｂを通過するパケットは、ＮＡＴテーブル３２Ｂに従ってアドレスが変換される。
【００４２】
次に、基本的なＮＡＴによるアドレス変換の処理プロセスについて説明する。まず、外部から内部へパケットを転送する場合、図７、図８に示すように、ＮＡＴルータ２２の処理プロセスは、以下の通りである。
【００４３】
外部からパケットを受信する（Ｓ１）。そして、受信したインターフェースのＮＡＴテーブル３２Ａを参照する（Ｓ２）。パケットの宛先アドレスがＮＡＴテーブル３２Ａに登録されている外部アドレスのいずれかにマッチした場合、ＮＡＴルータ２２は、パケットの宛先アドレスをそれに対応する内部アドレスAddr-X2に変換する（Ｓ３）。
【００４４】
次に、ルーティングテーブル３４を参照する。変換された宛先アドレスAddr-X2の情報を元に、ネクストホップのＩＦ−Xを検索する（Ｓ４）。そして、ネクストホップのＩＦ−Xにパケットを転送し、ＩＦ−Xから、宛先アドレスを変換したパケットをプライベートサーバ２８に送信する（Ｓ５）。
【００４５】
また、内部から外部へパケットを転送する場合のＮＡＴルータ２２の処理プロセスは、内部からパケットを受信する（Ｓ６）と、まずルーティングテーブル３４を参照する（Ｓ７）。そして、宛先アドレスの情報を元に、ネクストホップのＩＦ−Ａを検索する（Ｓ７）。ネクストホップに従って、どのインターフェースのＮＡＴテーブル３２を参照するかを決定する（Ｓ８）。パケットの送信元アドレスAddr-X2が、ＮＡＴテーブル３２に登録されている内部アドレスのいずれかにマッチした場合、ＮＡＴルータ２２は、パケットの送信元アドレスAddr-X2をそれに対応する外部アドレスAddr-A2に変換する（Ｓ９）。そして、ネクストホップのＩＦ−Ａにパケットを転送し、ネクストホップのインターフェースであるＩＦ−Ａから送信元アドレスを変換したパケットを送信する。
【００４６】
さらに、この発明では、動的ポリシールーティングのため、図９に示すように、以下のテーブルをＮＡＴルータ２２内に追加している。
【００４７】
一つめはフローテーブル３６を追加している。フローテーブル３６は、外部から受信しているパケットを把握するためのテーブルである。ＮＡＴルータ２２は、外部からパケットを受信した場合、その外部からのパケットの送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号に関する情報を、受信インターフェースの情報とともにフローテーブル３６にフローエントリとして登録する。フローテーブル３６の各エントリは、タイマーによって管理される。任意に設定した一定時間の間、フローテーブル３６にエントリとして登録された条件にマッチする他の外部からのパケットを受信しなかった場合、通信がなくなったと判断し、フローテーブル３６からエントリを削除する。タイマーの時間内にエントリにマッチする他の外部からのパケットを受信した場合、そのエントリのタイマーはリセットされる。また、インターフェースのダウンを検出した場合は、直ちに関連するエントリを削除する。
【００４８】
二つめに、ポリシールーティングテーブル３８を追加している。ポリシールーティングテーブル３８は、転送するパケットの宛先アドレス、送信元ポート番号、宛先ポート番号の情報を条件として転送するネクストホップのインターフェースを決定するためのテーブルである。
【００４９】
転送するパケットとポリシールーティングテーブル３８のエントリがマッチした場合は、ポリシールーティングテーブル３８に登録されているネクストホップのインターフェースが選択される。ポリシールーティングテーブル３８のエントリは、上述のフローテーブル３６によって動的に追加される。フローテーブル３６にエントリが追加された場合、その情報を基に送信元と宛先の情報を入れ替えたポリシールーティングのエントリが作成される。フローテーブル３６のエントリが削除された場合は、同様に関連するポリシールーティングテーブル３８のエントリも削除される。
【００５０】
また、ポリシールーティングテーブル３８は、通常のルーティングテーブル３４よりも優先される。ポリシールーティングテーブル３８は常にルーティングテーブル３４よりも先に検索され、パケットがポリシールーティングテーブル３８の条件にマッチした場合は、ルーティングテーブル３４は検索されない。
【００５１】
以上述べたポリシールーティングを行い、ある宛先へのネクストホップを決定する際に、通常のルーティングテーブルに登録されているネクストホップではなく、ユーザが設定したポリシーに基づいてネクストホップを選択し、動的にルーティングを行い、マルチＮＡＴを利用した場合の、ＩＳＰとインターネット２０との接続の冗長化を可能としている。
【００５２】
この発明の実施形態のマルチホーム接続方法と装置は、ＩＳＰにセンター用トンネルルータ１０を設置し、ユーザ１２側にはユーザ用トンネルルータ１４を設置し、ユーザ１２のトンネルルータ１４は、ＩＳＰ−Ａのトンネルルータ１０と論理的に接続し、常にＩＳＰ−Ａのトンネルルータ１０を経由してインターネット２０との通信を行う。さらに、ユーザ１２のネットワークを、マルチＮＡＴを利用して構築し、ＩＳＰとインターネット２０の間の接続に障害が発生した場合の冗長化を行う。
【００５３】
そして、この実施形態では、図１０に示すように、上述の（Ａ）、（Ｂ）により説明したシステムを連携させ、トータルなマルチホームサービスを実現させている。即ち、ユーザ１２側拠点に設置するルータは、トンネルルータ１４とＮＡＴルータ２２の機能を合わせ持つマルチホームルータ４０とする。ＩＳＰ−Ａ，ＩＳＰ−Ｂには、とにもマルチホーム用のトンネルルータ１６の機能を有したマルチホームルータ４２を設置する。そして、ユーザ１２とＩＳＰ−Ａ，ＩＳＰ−Ｂ間で、各々論理回線１３Ａ１，１３Ｂ１と、他方のＩＳＰを経由してインターネット２０に接続した論理回線１３Ａ２，１３Ｂ２を確立する。これにより、ＩＳＰ−Ａ，ＩＳＰ−Ｂに対して、互いに同様の機能を持たせることが可能になり、一方の物理回線に障害が発生した場合にも、ＩＳＰ−Ａ，ＩＳＰ−Ｂとの間に、少なくとも、ひとつの論理回線を維持することが可能になる。この接続モデルは、ＩＥＴＦにおいてＲＦ２２６０、及びＲＦＣ３１７８として標準化されているモデルをベースとしている。
【００５４】
なお、この発明のマルチホーム接続方法と装置は、上記実施形態に限定されず、ＩＳＰやＮＡＴルータの数、設置位置等は適宜選択可能なものである。
【図面の簡単な説明】
【００５５】
【図１】この発明の一実施形態のマルチホーム接続においてユーザとＩＳＰとの接続を示す概念図である。
【図２】この発明の一実施形態のマルチホーム接続においてユーザとＩＳＰとの接続を示す概念図である。
【図３】この発明の一実施形態のマルチホーム接続においてユーザとＩＳＰとインターネットの接続を示す概念図である。
【図４】この発明の一実施形態のマルチホーム接続においてユーザとＩＳＰとインターネットの接続を示す概念図である。
【図５】この発明の一実施形態のマルチホーム接続においてユーザとＩＳＰとインターネットの接続を示す概念図である。
【図６】この発明の一実施形態のマルチホーム接続装置のユーザ側のシステムを示す概念図である。
【図７】この発明の一実施形態のマルチホーム接続装置のユーザ側のシステムのＮＡＴルータの機能を示す概念図である。
【図８】この発明の一実施形態のマルチホーム接続装置のユーザ側のシステムのＮＡＴルータの一般的処理を示すフロー図である。
【図９】この発明の一実施形態のマルチホーム接続装置のユーザ側のシステムのＮＡＴルータの処理を示すフロー図である。
【図１０】この発明の一実施形態のマルチホーム接続装置を示す概念図である。
【図１１】従来のインターネットとＩＳＰの接続状態を示す概念図である。
【符号の説明】
【００５６】
１０，１４  トンネルルータ
１１Ａ，１１Ｂ  ＩＰ接続回線
１２  ユーザ
１３Ａ，１３Ｂ  論理回線
１５  ＩＰネットワーク
２０  インターネット
２４  ＤＮＳサーバ
２６  プライベートネットワーク
２８  プライベートサーバ
３０  外部クライアント
【図１】
0004839428.tif 000002
【図２】
0004839428.tif 000003
【図３】
0004839428.tif 000004
【図４】
0004839428.tif 000005
【図５】
0004839428.tif 000006
【図６】
0004839428.tif 000007
【図７】
0004839428.tif 000008
【図８】
0004839428.tif 000009
【図９】
0004839428.tif 000010
【図１０】
0004839428.tif 000011
【図１１】
0004839428.tif 000012