(57)【要約】【課題】アプリケーションに依存せず、全ての通信でリダイレクト機能を実現することが可能で、リダイレクト装置が複数の外部ネットワークに接続された場合でも、正しいリダイレクト先、リダイレクト元を認識可能にする。【解決手段】第１のリダイレクト装置１が第２のリダイレクト装置２に対してネゴシェーション要求パケットを送信し、第２のリダイレクト装置２は通信装置２のアドレスを付したネゴシェーション応答パケットを返信する。第１のリダイレクト装置１はリダイレクトテーブルにパケットのアドレスを登録するとともに、リダイレクト元アドレス、リダイレクト先アドレス、送信元アドレス、アプリケーション識別子、セッション識別子、リダイレクト先ネットワーク識別子の項目を登録し、これらの項目を第１と第２のリダイレクト装置間で通信し、正常に送信元などの情報を認識する。【選択図】図３
2006094106.tif 000002
【特許請求の範囲】
【請求項１】
第１のリダイレクト装置は外部ネットワークに物理的または論理的に接続され、接続されている外部ネットワークから割り当てられた第１のアドレスを持ち、さらに第１の通信装置と接続するための第２のアドレスを持ち、別のアドレスを保有する第１の通信装置と接続されており、
第１の通信装置が、第１のリダイレクト装置および外部ネットワークを介して第２のリダイレクト装置との通信を開始するために外部ネットワークへ第２のリダイレクト装置に対して接続要求パケットを送信し、
第１のリダイレクト装置は前記接続要求パケットの受信をトリガーに、第２のリダイレクト装置に対してネゴシェーション要求パケットを送信し、第２のリダイレクト装置が前記ネゴシェーション要求パケットを受信した際に、第２のリダイレクト装置は接続先の変更指示すなわちリダイレクトの指示を行うために新たな接続先すなわちリダイレクト先の装置である第２の通信装置のアドレスを記したネゴシェーション応答パケットを第１のリダイレクト装置に送信し、
第１のリダイレクト装置は前記ネゴシェーション応答パケットを受信し、受信したネゴシェーション応答パケットに含まれるリダイレクト先のアドレスからリダイレクト先を認識し、それ以降、第１のリダイレクト装置は、第１の通信装置から受信するパケットのうち送信先アドレスが第２のリダイレクト装置のアドレスであるパケットを、パケットに含まれる送信先アドレスをリダイレクト先のアドレスに変換して外部ネットワークに送信することにより、第１の通信装置と第２の通信装置との通信を可能とするリダイレクト方法において、
第１のリダイレクト装置は、「リダイレクト元アドレス」「リダイレクト先アドレス」をレコードとするリダイレクトテーブルを保持し、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを、「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した場合には、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスと「リダイレクト先アドレス」が一致する前記レコードがあった場合に、受信したパケットの送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項２】
請求項１記載のリダイレクト方法において、
前記第１の通信装置のアドレスが外部ネットワークで利用できない場合には、第１のリダイレクト装置は前記リダイレクトテーブルの前記レコードを構成する要素に「送信元アドレス」を加えたリダイレクトテーブルを保持し、
ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットの送信元アドレスを「送信元アドレス」として、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスが「リダイレクト先アドレス」と一致する前記レコードがあった場合に、受信したパケットの送信先アドレスを前記一致したレコードの「送信元アドレス」に変換し、さらに送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項３】
請求項１または２に記載のリダイレクト方法において、
前記リダイレクト先と直接通信を行うことを可能とし、該リダイレクト先からの通信であると正しい認識を可能にするため、
第１のリダイレクト装置は、前記リダイレクトテーブルの前記レコードを構成する要素に、「アプリケーション識別子」と「セッション識別子」のうちの１つまたは両方を加えたリダイレクトテーブルを保持し、
ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるアプリケーションの種類を表す識別子を「アプリケーション識別子」、セッションを表す識別子を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、請求項１または２に示す検索条件および一致条件に加えて、さらに受信したパケットのアプリケーションの種類を表す識別子およびセッションを表す識別子が前記レコードの「アプリケーション識別子」および「セッション識別子」に一致するレコードがあった場合に、請求項１または２に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項４】
請求項１または２に記載のリダイレクト方法において、
前記外部ネットワークがＩＰネットワークであった場合、通信プロトコルがＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌであり、前記リダイレクトテーブルのレコードを構成するリダイレクト元アドレス、リダイレクト先アドレスおよび送信元アドレスをＩＰアドレスで構成し、  第１のリダイレクト装置は、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれる宛先ＩＰアドレスまたはネゴシェーション応答パケットに示されるリダイレクト元アドレスを「リダイレクト元アドレス」、ネゴシェーション応答パケットに示されるリダイレクト先アドレスを「リダイレクト先アドレス」として、前記リダイレクトテーブルの前記レコードに記憶し、さらに請求項２に記載の方法の場合にはネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれる送信元ＩＰアドレスを、「送信元アドレス」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索し、受信したパケットの送信元ＩＰアドレスが、「リダイレクト先アドレス」と一致する前記レコードがあった場合に、送信元ＩＰアドレスを前記一致したレコードの「リダイレクト元アドレス」に変換し、さらに請求項２の方法の場合には受信したパケットの送信先ＩＰアドレスを前記一致したレコードの「送信元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項５】
請求項１または２に記載のリダイレクト方法において、
前記ＴＣＰもしくはＵＤＰを用いた場合にリダイレクト先と直接通信を行うことを可能にするため、請求項４に記載の方法に示すリダイレクトテーブルのレコードの構成において、さらに請求項３に記載の方法に示す「アプリケーション識別子」および「セッション識別子」として、それぞれＴＣＰおよびＵＤＰの識別が可能となる「ＩＰのプロトコル番号」と「送信元ポート番号」の２つの要素を加えた要素で構成し、
第１のリダイレクト装置は、請求項４に記載の方法に示す前記リダイレクトテーブルの前記レコードへの記憶に加え、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるＩＰヘッダのプロトコル番号を「アプリケーション識別子」，ＴＣＰもしくはＵＤＰの場合はＴＣＰまたはＵＤＰヘッダに含まれる送信元ポート番号を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークから受信したパケットに対しリダイレクトテーブルを検索し、請求項１または請求項２に記載の方法の検索条件に加えて、さらに受信したパケットのＩＰヘッダのプロトコル番号が「アプリケーション識別子」と、宛先ポート番号が「セッション識別子」に一致するレコードがあった場合に、請求項４に記載の方法に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項６】
請求項１または２に記載のリダイレクト方法において、
第１のリダイレクト装置が複数のネットワークに接続される場合のために、複数の外部ネットワークに接続される第１のリダイレクト装置は、請求項１〜３のいずれかの方法に示す前記リダイレクトテーブルの前記レコードを構成する要素に「リダイレクト先ネットワーク識別子」を加えたリダイレクトテーブルを保持し、受信したネゴシェーション応答パケットに含まれ、リダイレクト先が所属するネットワークを表すネットワーク識別子を「リダイレクト先ネットワーク識別子」として前記リダイレクトテーブルの前記レコードに記憶し、
該第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索し、請求項１〜３のいずれかの方法に示す検索条件および一致条件に加えて、さらにパケットを受信した外部ネットワークが前記レコードの「リダイレクト先ネットワーク識別子」に一致するレコードがあった場合に、請求項１〜３のいずれかの方法に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴とするリダイレクト方法。
【請求項７】
外部ネットワークに物理的または論理的に接続され、接続されている外部ネットワークから割り当てられた第１のアドレスを持ち、さらに内部に接続するための第２のアドレスを持つ一方の装置が、接続されている第１の通信装置が外部ネットワークを介して通信を開始するために外部ネットワークへ接続要求パケットを送信した後、該接続要求パケットの受信をトリガーにネゴシェーション要求パケットを他方の装置に送信し、該他方の装置は前記ネゴシェーション要求パケットを受信した際に、接続先の変更指示すなわちリダイレクトの指示を行うために新たな接続先すなわちリダイレクト先の第２の通信装置のアドレスを記したネゴシェーション応答パケットを前記一方の装置に送信し、該一方の装置は前記ネゴシェーション応答パケットを受信し、受信したネゴシェーション応答パケットに含まれるリダイレクト先のアドレスからリダイレクト先を認識し、それ以降、第１のリダイレクト装置は、第１の通信装置から受信するパケットのうち送信先アドレスが該他方の装置のアドレスであるパケットを、パケットに含まれる送信先アドレスをリダイレクト先のアドレスに変換して外部ネットワークに送信することにより、第１の通信装置と第２の通信装置との通信を可能とするリダイレクト装置において、
「リダイレクト元アドレス」「リダイレクト先アドレス」をレコードとし、前記ネゴシェーション応答パケットの受信をトリガーに、前記ネゴシェーション要求パケットの送信先アドレスを、「レダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記レコードに追加して記憶するリダイレクトテーブルと、
一方の装置が外部ネットワークからパケットを受信した場合には、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスと「リダイレクト先アドレス」が一致する前記レコードがあった場合に、受信したパケットの送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換するための変換手段と
を具備することを特徴とするリダイレクト装置。
【請求項８】
請求項７に記載のリダイレクト装置において、
前記通信装置のアドレスが外部ネットワークで利用できない場合には、前記レコードを構成する要素に「送信元アドレス」を加え、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットの送信元アドレスを「送信元アドレス」として、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記レコードに記憶するリダイレクトテーブルと、
外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、「リダイレクト先アドレス」が受信したパケットの送信元アドレスと一致する前記レコードがあった場合に、受信したパケットの送信先アドレスを前記一致したレコードの「送信元アドレス」に変換し、さらに送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換手段と
を具備することを特徴とするリダイレクト装置。
【請求項９】
請求項７または８に記載のリダイレクト装置において、
前記リダイレクト先と直接通信を行うことを可能とし、リダイレクト先からの通信であると正しい認識を可能にするため、前記リダイレクトテーブルの前記レコードを構成する要素に、「アプリケーション識別子」と「セッション識別子」のうちの１つまたは両方を加え、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるアプリケーションの種類を表す識別子を「アプリケーション識別子」、セッションを表す識別子を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶するリダイレクトテーブルと、
一方の装置は、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、請求項７または８に記載の検索条件および一致条件に加えて、さらに受信したパケットのアプリケーションの種類を表す識別子およびセッションを表す識別子が前記レコードの「アプリケーション識別子」および「セッション識別子」に一致するレコードがあった場合に、請求項７または８に記載の変換処理を行う変換手段と
を具備することを特徴とするリダイレクト装置。
【請求項１０】
請求項７または８に記載のリダイレクト装置において、
前記一方の装置が複数のネットワークに接続される場合、請求項７〜９のいずれかに記載のリダイレクトテーブルの前記レコードを構成する要素に「リダイレクト先ネットワーク識別子」を加え、受信したネゴシェーション応答パケットに含まれ、リダイレクト先が所属するネットワークを表すネットワーク識別子を「リダイレクト先ネットワーク識別子」として前記レコードに記憶するリダイレクトテーブルと、
該一方の装置は、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索し、請求項７〜９のいずれかに記載の検索条件および一致条件に加えて、さらにパケットを受信した外部ネットワークが前記レコードの「リダイレクト先ネットワーク識別子」に一致するレコードがあった場合に、請求項７〜９のいずれかに記載の変換処理を行う変換手段と
を具備することを特徴とするリダイレクト装置。
【請求項１１】
第１のリダイレクト装置のコンピュータに、第１の通信装置からの接続要求パケットの受信をトリガーに、第２のリダイレクト装置に対してネゴシェーション要求パケットを送信する手順、前記ネゴシェーション応答パケットを受信する手順、受信したネゴシェーション応答パケットに含まれるリダイレクト先のアドレスからリダイレクト先を認識する手順、それ以降、第１の通信装置から受信するパケットのうち送信先アドレスが第２のリダイレクト装置のアドレスであるパケットを、パケットに含まれる送信先アドレスをリダイレクト先のアドレスに変換する手順、該パケットを外部ネットワークに送信する手順、「リダイレクト元アドレス」「リダイレクト先アドレス」をレコードとするリダイレクトテーブルの検索を行う手順、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを、「レダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークからパケットを受信した場合には、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスと「リダイレクト先アドレス」が一致する前記レコードがあった場合に、受信したパケットの送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１２】
請求項１１に記載のリダイレクト用プログラムにおいて、
第１のリダイレクト装置のコンピュータに、通信装置１のアドレスが外部ネットワークで利用できない場合には、前記リダイレクトテーブルの前記レコードを構成する要素に「送信元アドレス」を加える手順、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットの送信元アドレスを「送信元アドレス」として、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索する手順、「リダイレクト先アドレス」が受信したパケットの送信元アドレスと一致する前記レコードがあった場合に、受信したパケットの送信先アドレスを前記一致したレコードの「送信元アドレス」に変換する手順、さらに送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１３】
請求項１１または１２に記載のリダイレクト用プログラムにおいて、
第１のリダイレクト装置のコンピュータに、前記リダイレクトテーブルの前記レコードを構成する要素に、「アプリケーション識別子」と「セッション識別子」のうちの１つまたは両方を加える手順、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるアプリケーションの種類を表す識別子を「アプリケーション識別子」、セッションを表す識別子を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索する手順、請求項１１または１２に記載の検索条件および一致条件に加えて、さらに受信したパケットのアプリケーションの種類を表す識別子およびセッションを表す識別子が前記レコードの「アプリケーション識別子」および「セッション識別子」に一致するレコードがあった場合に、請求項１１または１２に記載の変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１４】
請求項１１または１２に記載のリダイレクト用プログラムにおいて、
第１のリダイレクト装置のコンピュータに、外部ネットワークがＩＰネットワークであった場合、通信プロトコルがＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌであり、前記リダイレクトテーブルのレコードを構成するリダイレクト元アドレス、リダイレクト先アドレスおよび送信元アドレスをＩＰアドレスで構成し、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれる宛先ＩＰアドレスまたはネゴシェーション応答パケットに示されるリダイレクト元アドレスを「リダイレクト元アドレス」、ネゴシェーション応答パケットに示されるリダイレクト先アドレスを「リダイレクト先アドレス」として、前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索する手順、受信したパケットの送信元ＩＰアドレスが、「リダイレクト先アドレス」と一致する前記レコードがあった場合に、送信元ＩＰアドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する手順、さらに請求項１２に記載の場合には受信したパケットの送信先ＩＰアドレスを前記一致したレコードの「送信元アドレス」に変換する変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１５】
請求項１１または１２に記載のリダイレクト用プログラムにおいて、
第１のリダイレクト装置のコンピュータに、ＴＣＰもしくはＵＤＰを用いた場合にリダイレクト先と直接通信を行うことを可能にするため、請求項１４に記載のリダイレクトテーブルのレコードの構成に加え、請求項１３に記載の「アプリケーション識別子」および「セッション識別子」として、それぞれＴＣＰおよびＵＤＰの識別が可能となる「ＩＰのプロトコル番号」と「送信元ポート番号」の２つの要素を加える手順、請求項１４に記載の前記リダイレクトテーブルの前記レコードへの記憶に加え、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるＩＰヘッダのプロトコル番号を「アプリケーション識別子」，ＴＣＰもしくはＵＤＰの場合はＴＣＰまたはＵＤＰヘッダに含まれる送信元ポート番号を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークから受信したパケットに対しリダイレクトテーブルを検索する手順、請求項１１または１２の検索条件に加えて、さらに受信したパケットのＩＰヘッダのプロトコル番号が「アプリケーション識別子」と、宛先ポート番号が「セッション識別子」に一致するレコードがあった場合に、請求項１４に記載の変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１６】
請求項１１または１２に記載のリダイレクト用プログラムにおいて、
第１のリダイレクト装置のコンピュータに、複数のネットワークに接続される場合のために、請求項１１〜１３のいずれかに記載の前記リダイレクトテーブルの前記レコードを構成する要素に「リダイレクト先ネットワーク識別子」を加える手順、受信したネゴシェーション応答パケットに含まれ、リダイレクト先が所属するネットワークを表すネットワーク識別子を「リダイレクト先ネットワーク識別子」として前記リダイレクトテーブルの前記レコードに記憶する手順、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索する手順、請求項１１〜１３のいずれかに記載の検索条件および一致条件に加えて、さらにパケットを受信した外部ネットワークが前記レコードの「リダイレクト先ネットワーク識別子」に一致するレコードがあった場合に、請求項１１〜１３のいずれかに記載の変換処理を行う手順、第１の通信装置へパケットを転送する手順を、それぞれ実行させるためのリダイレクト用プログラム。
【請求項１７】
請求項１１〜１６のいずれかに記載のリダイレクト用プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信技術に関し、特に、第１の地点から第２の地点へ通信を開始する際に、第２の地点の装置が第１の地点の装置に対して、第３の地点へ通信を転送するリダイレクト方法および装置、ならびにそのプログラムと記録媒体に関する。
【背景技術】
【０００２】
従来、インターネットなどのＩＰネットワークを介して通信を行う場合において、リダイレクトを実現するプロトコルとしては、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）（非特許文献１参照）などの技術が提案されている。ＨＴＴＰはＲＦＣ１９４５で述べられており、接続要求のためのＲｅｑｕｅｓｔコマンドを含むパケットを送信し、Ｒｅｑｕｅｓｔコマンドを受信したサーバはレスポンスとしてＲｅｓｐｏｎｓｅコマンドを含むパケットを返信するが、このＲｅｓｐｏｎｓｅコマンドのｌｏｃａｔｉｏｎヘッダにリダイレクト先を示すＵＲＬを含めることで、接続要求側にリダイレクト先を通知することができる。ｌｏｃａｔｉｏｎヘッダでリダイレクト先を通知された接続要求側は、あらためてリダイレクト先に対しＲｅｑｕｅｓｔコマンドを含むパケットを送信し直すことができる。
この方式の特徴は、アプリケーションレイヤーで表現するところであり、Ｅｎｄ−Ｅｎｄの通信機器、すなわちサーバやクライアント機器のアプリケーションがネゴシェーションを行うものである。
【０００３】
【非特許文献１】ＨＴＴＰ        “ＲＦＣ１９４５  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ・・・ＨＴＴＰ／１．０”（１０．１１  Ｌｏｃａｔｉｏｎ）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
リダイレクト技術に関す提案としては、例えば特願２００４−０１６９３１号明細書および図面に記載の『複数のネットワークに同時に接続する通信方法および通信装置』がある。この発明の請求項１には、『第１の通信装置が、第１のリダイレクト装置および外部ネットワークを介して第２のリダイレクト装置との通信を開始するために外部ネットワークへ第２のリダイレクト装置に対して接続要求パケット送信し、第１のリダイレクト装置は前記接続要求パケットの受信をトリガーに第２のリダイレクト装置に対してネゴシェーション要求パケットを送信し、第２のリダイレクト装置が前記ネゴシェーション要求パケットを受信した際に、第２のリダイレクト装置は接続先の変更指示すなわちリダイレクトの指示を行うために新たな接続先すなわちリダイレクト先の装置である第２の通信装置のアドレスを記したネゴシェーション応答パケットを第１のリダイレクト装置へ送信し、第１のリダイレクト装置は前記ネゴシェーション応答パケットを受信し、受信したネゴシェーション応答パケットに含まれるリダイレクト先のアドレスからリダイレクト先を認識し、以降、第１のリダイレクト装置は、第１の通信装置から受信するパケットのうち送信先アドレスが第２のリダイレクト装置のアドレスであるパケットを、パケットに含まれる送信先アドレスをリダイレクト先のアドレスに変換して、外部ネットワークに送信することにより第１の通信装置が第２の通信装置との通信を可能とするリダイレクト方法』と記載され、明細書および図面にも上記と同じ内容が記載されている。
【０００５】
上記提案の通信方法では、リダイレクト装置間でネゴシェーションを行い、送信パケットの宛先アドレスを変換することによるリダイレクトを行っている。
しかしながら、以下のような課題（問題点）がある。
（課題１）アプリケーションレイヤーでの実現では、アプリケーションごとに対応する必要がある。
ＨＴＴＰでは、アプリケーションレベルでリダイレクトを実現しているが、最も代表的外部ネットワークの一つであるインターネットで行われている通信は勿論、ＨＴＴＰを用いた通信だけではなく、ほかにもＦＴＰ、ＳＭＴＰ、ＰＯＰ、ＤＮＳなど、様々なアプリケーションを用いて通信が行われている。アプリケーションレベルでリダイレクトを実現する場合、全てのアプリケーションごとにリダイレクトに対応するために規定をし、実装を行わなければならない。従って、一つの通信装置でＤＮＳサーバ、メールサーバ（ＳＭＴＰ、ＰＯＰ）など様々なアプリケーションについてリダイレクトをさせようとした場合、全てのアプリケーションについて個々に対応しなければならなくなり、仮にまだプロトコルの規定がされていないアプリケーションの場合、リダイレクトに対応させるためのプロトコル仕様変更がアプリケーションごとに必要になり、さらにサーバ側のソフトウェアの変更が必要になるだけでなく、利用するクライアント全てのソフトウェアの変更が必要となってしまう。
【０００６】
（課題２）通信を継続できない。
図１は、一般的な接続構成を示すネットワークの構成図である。
インターネットなどの外部ネットワークに、リダイレクト装置１、リダイレクト装置２、通信装置２がそれぞれ接続されている。また、リダイレクト装置１には、通信装置１が接続されており、通信装置１はリダイレクト装置１を介して外部ネットワークに接続された他のリダイレクト装置、通信装置等と通信を行う。外部ネットワークを介して通信を行うためには通信相手のアドレスを指定する必要があり、インターネットなどのＩＰネットワークを利用する場合は、ＩＰアドレスを指定して通信を行う。例えば、Ｗｅｂサーフィンを行う場合、クライアント側にはアプリケーションとしてＷｅｂブラウザソフトを使用し、通信相手すなわちＷｅｂサーバのＩＰアドレスもしくはＩＰアドレスに相当するＵＲＬを指定して通信を開始する。クライアント側から通信相手であるＷｅｂサーバに対して宛先アドレスがＷｅｂサーバのアドレスであるＩＰパケットを送信することで通信を行う。
図１においては、Ｗｅｂブラウザを搭載したパソコン等が通信装置１に該当し、Ｗｅｂサーバがリダイレクト装置２および通信装置２に該当する。
【０００７】
図２は、図１におけるリダイレクトシーケンスチャートである。
さて、ＨＴＴＰのｌｏｃａｔｉｏｎヘッダのようなアプリケーションレベルでのリダイレクト方法ではなく、アドレス変換によるリダイレクト方法である前記特願２００４−０１６９３１号明細書および図面に記載の方法を用いて、通信装置１がリダイレクト装置２に対して接続要求を行い、リダイレクト装置２が行う通信装置２へのリダイレクト指示により、通信装置１が通信装置２との通信を行う場合について、図１および図２により説明する。
通信装置１は、まずリダイレクト装置２と通信を行うため、宛先アドレスをリダイレクト装置２のアドレスに設定した接続要求パケットを送信する（接続要求パケット(1))。ただし、この接続要求パケットはリダイレクト装置２に到達したとしても、リダイレクト装置２はもともと通信装置２へリダイレクトするように設定されているため、受信した接続要求パケットは破棄されることもある。接続要求パケット(1)を受信したリダイレクト装置１は、リダイレクト装置２に対しネゴシェーション要求パケットを送信し（ネゴシェーション要求パケット(2))、リダイレクト装置２から通信装置２にリダイレクトを指示するネゴシェーション応答パケットを受信（ネゴシェーション応答パケット(3))する。
【０００８】
この指示に基づきリダイレクト装置１は、これ以降、通信装置１から送信されたパケットのうち宛先アドレスがリダイレクト装置２のパケットは、宛先アドレスを通信装置２のアドレスに変換して外部ネットワーク側へ送信する動作を行う。通信装置１は、先に送信した接続要求パケット(1)に対してレスポンスを受信していないことから、通信装置１のアプリケーションはリダイレクト装置２へ接続要求パケットを再送する（接続要求パケット（再送）(4))。接続要求パケット（再送）(4)を受信したリダイレクト装置１は、宛先アドレスがリダイレクト装置２宛であることを識別し、宛先アドレスを通信装置２のアドレスに変換して、外部ネットワーク側へ送信する。（接続要求パケット（再送）(5))。
このようにすることで、通信装置１が試みた接続要求は通信装置２へリダイレクトされ、無事通信装置２へパケットが到達させることができるため、リダイレクトが成功したかのように思われる。
【０００９】
ただし、一般的なアプリケーションでは、接続要求に対して何等かの応答を返す。ＨＴＴＰであれば、Ｒｅｑｕｅｓｔコマンドに対してＲｅｓｐｏｎｓｅコマンドを返信する。従って、接続要求パケット（再送）(5)に対し、通信装置２は接続応答パケット(6)を返信し、通信装置１に到達する。しかし、この接続応答パケット(6)の送信元アドレスは通信装置２のアドレスとなってしまうところが問題である。何故ならば、通信装置１はリダイレクト装置２宛ての接続要求パケットを送信したにもかかわらず、送信元アドレスが通信装置２の接続応答パケットを受信してしまうからである。通信装置１のアプリケーションは異なる通信相手からの接続応答パケットは破棄してしまうため、前述の特願２００４−０１６９３１号明細書および図面に記載の方法では、通信が継続できない。すなわち、この方法では、リダイレクトされたパケットがリダイレクト先に到達できる到達性は実現しているが、アプリケーションレベルでの接続性は担保されていない。
【００１０】
（課題３）リダイレクト先からの新たな通信が識別できない。
図８は、リダイレクトテーブルが登録されている場合に、通信装置１が通信相手を正しく認識できない例を示すシーケンスチャートである。
リダイレクト装置１でリダイレクトの条件に関する情報を記憶するリダイレクトテーブルを保持し、外部ネットワーク側からパケットを受信した場合にリダイレクトテーブルを検索し、検索条件に一致するレコード、すなわち受信したパケットの送信元アドレスがリダイレクト先アドレスと一致する場合、送信元アドレスとリダイレクトテーブルの該当するレコードに示されるリダイレクト元アドレスに変換して、通信装置１へ送信する。
【００１１】
リダイレクト先がＷｅｂサーバなどの場合、サーバからクライアントへ通信を開始することはないため、問題は発生しない。しかし、検索条件を送信元アドレスのみとし、かつリダイレクト装置２への通信は通信装置２へリダイレクトを行うようにテーブルが登録されていた場合、新たに通信装置２から通信装置１に対して通信を開始するために通信装置２から通信装置１へパケットを送信した場合(接続要求パケット(1))、外部ネットワークからパケットを受信したリダイレクト装置１は送信元アドレスをリダイレクト元のアドレスに変換してしまうため、通信装置１はリダイレクト元の装置であるリダイレクト装置２から通信を開始されたと判断してしまい、通信装置２からの通信と認識できなくなってしまう（図８参照）。すなわち、リダイレクト先から新たな通信開始要求を受けた際に、リダイレクト先からの通信要求であるのか、あるいは、リダイレクト元からの通信要求であるのか、区別できなくなる。
【００１２】
（課題４）複数の外部ネットワークを利用する場合、正しいリダイレクト元を認識できない。
図１２は、複数の外部ネットワークがある場合の機器構成およびネットワーク構成、ならびにリダイレクトテーブルを示す図である。
リダイレクト装置１が複数のネットワークと接続される場合について考えると、複数のネットワークの全てがインターネットであるわけではなく、個別ネットワークすなわちある特定のサービスを提供するため、インターネットには接続されていないネットワークであることが考えられる。
図１２（ａ）に示すように、個別ネットワークはインターネットと接続していないことから、グローバルアドレスが使用されておらず、プライベートアドレスの使用が想定される。プライベートアドレスを使用しての個別ネットワークのアドレス体系は、個別ネットワークを運営する管理者が自由に設定することになるため、異なる個別ネットワークにもかかわらず、同じアドレスが使用される可能性がある。
【００１３】
例えば、リダイレクト装置２のリダイレクト先は個別ネットワーク２に所属し、アドレスがアドレスＡの通信装置２であり、リダイレクト装置３のリダイレクト先は個別ネットワーク３に所属しアドレスがアドレスＡの通信装置３である場合、リダイレクト装置１はリダイレクトテーブルにリダイレクト先アドレスのみを登録すると、リダイレクト装置１のリダイレクトテーブルは、図１２（ｂ）に示す通りとなり、どの個別ネットワークへ送信してよいか識別できないのみならず、リダイレクト装置１が個別ネットワークからパケットを受信した場合に、送信元アドレスがアドレスＡのパケットが転送された場合、図１２（ｂ）のリダイレクトテーブルのレコード１が該当するのか、レコード２が該当するのか判断できないことから、送信元アドレスを正しいリダイレクト元に変換することができなくなってしまう。
【００１４】
（目的）
本発明の目的は、アプリケーションに依存せず、全ての通信でリダイレクト機能を実現することが可能であり、またリダイレクト装置が複数の外部ネットワークに接続された場合でも、正しいリダイレクト先、リダイレクト元を認識可能であるリダイレクト方法および装置、ならびにそのプログラムと記録媒体を提供することである。
【課題を解決するための手段】
【００１５】
本発明のリダイレクト方法は、（１）第１のリダイレクト装置は外部ネットワークに物理的または論理的に接続され、接続されている外部ネットワークから割り当てられた第１のアドレスを持ち、さらに第１の通信装置と接続するための第２のアドレスを持ち、別のアドレスを保有する第１の通信装置と接続されており、
第１の通信装置が、第１のリダイレクト装置および外部ネットワークを介して第２のリダイレクト装置との通信を開始するために外部ネットワークへ第２のリダイレクト装置に対して接続要求パケットを送信し、
第１のリダイレクト装置は前記接続要求パケットの受信をトリガーに、第２のリダイレクト装置に対してネゴシェーション要求パケットを送信し、第２のリダイレクト装置が前記ネゴシェーション要求パケットを受信した際に、第２のリダイレクト装置は接続先の変更指示すなわちリダイレクトの指示を行うために新たな接続先すなわちリダイレクト先の装置である第２の通信装置のアドレスを記したネゴシェーション応答パケットを第１のリダイレクト装置に送信し、
第１のリダイレクト装置は前記ネゴシェーション応答パケットを受信し、受信したネゴシェーション応答パケットに含まれるリダイレクト先のアドレスからリダイレクト先を認識し、それ以降、第１のリダイレクト装置は、第１の通信装置から受信するパケットのうち送信先アドレスが第２のリダイレクト装置のアドレスであるパケットを、パケットに含まれる送信先アドレスをリダイレクト先のアドレスに変換して外部ネットワークに送信することにより、第１の通信装置と第２の通信装置との通信を可能とするリダイレクト方法において、
第１のリダイレクト装置は、「リダイレクト元アドレス」「リダイレクト先アドレス」をレコードとするリダイレクトテーブルを保持し、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを、「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した場合には、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスと「リダイレクト先アドレス」が一致する前記レコードがあった場合に、受信したパケットの送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【００１６】
また、本発明のリダイレクト方法は、（２）前記（１）の方法において、通信装置１のアドレスが外部ネットワークで利用できない場合には、第１のリダイレクト装置は前記リダイレクトテーブルの前記レコードを構成する要素に「送信元アドレス」を加えたリダイレクトテーブルを保持し、
ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットの送信元アドレスを「送信元アドレス」として、ネゴシェーション応答パケットの受信をトリガーに、ネゴシェーション要求パケットの送信先アドレスを「リダイレクト元アドレス」として、前記ネゴシェーション応答パケットに含まれるリダイレクト先の通信装置のアドレスを「リダイレクト先アドレス」として前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、受信したパケットの送信元アドレスが「リダイレクト先アドレス」と一致する前記レコードがあった場合に、受信したパケットの送信先アドレスを前記一致したレコードの「送信元アドレス」に変換し、さらに送信元アドレスを前記一致したレコードの「リダイレクト元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【００１７】
また、本発明のリダイレクト方法は、（３）前記（１）または（２）の方法において、リダイレクト先と直接通信を行うことを可能とし、リダイレクト先からの通信であると正しい認識を可能にするため、
第１のリダイレクト装置は前記リダイレクトテーブルの前記レコードを構成する要素に、「アプリケーション識別子」と「セッション識別子」のうちの１つまたは両方を加えたリダイレクトテーブルを保持し、
ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるアプリケーションの種類を表す識別子を「アプリケーション識別子」、セッションを表す識別子を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に、前記リダイレクトテーブルを検索し、前記（１）または（２）の方法に示す検索条件および一致条件に加えて、さらに受信したパケットのアプリケーションの種類を表す識別子およびセッションを表す識別子が前記レコードの「アプリケーション識別子」および「セッション識別子」に一致するレコードがあった場合に、前記（１）または（２）の方法に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【００１８】
また、本発明のリダイレクト方法は、（４）前記（１）または（２）の方法において、
外部ネットワークがＩＰネットワークであった場合、通信プロトコルがＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌであり、前記リダイレクトテーブルのレコードを構成するリダイレクト元アドレス、リダイレクト先アドレスおよび送信元アドレスをＩＰアドレスで構成し、
第１のリダイレクト装置は、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれる宛先ＩＰアドレスまたはネゴシェーション応答パケットに示されるリダイレクト元アドレスを「リダイレクト元アドレス」、ネゴシェーション応答パケットに示されるリダイレクト先アドレスを「リダイレクト先アドレス」として、前記リダイレクトテーブルの前記レコードに記憶し、さらに前記（２）の方法の場合にはネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれる送信元ＩＰアドレスを、「送信元アドレス」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索し、受信したパケットの送信元ＩＰアドレスが、「リダイレクト先アドレス」と一致する前記レコードがあった場合に、送信元ＩＰアドレスを前記一致したレコードの「リダイレクト元アドレス」に変換し、さらに前記（２）の方法の場合には受信したパケットの送信先ＩＰアドレスを前記一致したレコードの「送信元アドレス」に変換する変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【００１９】
また、本発明のリダイレクト方法は、（５）前記（１）または（２）の方法において、
ＴＣＰもしくはＵＤＰを用いた場合にリダイレクト先と直接通信を行うことを可能にするため、前記（４）の方法に示すリダイレクトテーブルのレコードの構成において、さらに前記（３）の方法で示す「アプリケーション識別子」および「セッション識別子」として、それぞれＴＣＰおよびＵＤＰの識別が可能となる「ＩＰのプロトコル番号」と「送信元ポート番号」の２つの要素を加えた要素で構成し、
第１のリダイレクト装置は、前記（４）の方法に示す前記リダイレクトテーブルの前記レコードへの記憶に加え、ネゴシェーション要求パケットの送信トリガーとなった前記接続要求パケットに含まれるＩＰヘッダのプロトコル番号を「アプリケーション識別子」，ＴＣＰもしくはＵＤＰの場合はＴＣＰまたはＵＤＰヘッダに含まれる送信元ポート番号を「セッション識別子」として、前記リダイレクトテーブルの前記レコードに記憶し、
第１のリダイレクト装置は、外部ネットワークから受信したパケットに対しリダイレクトテーブルを検索し、前記（１）または（２）の方法の検索条件に加えて、さらに受信したパケットのＩＰヘッダのプロトコル番号が「アプリケーション識別子」と、宛先ポート番号が「セッション識別子」に一致するレコードがあった場合に、前記（４）の方法に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【００２０】
さらに、本発明のリダイレクト方法は、（６）前記（１）または（２）の方法において、
第１のリダイレクト装置が複数のネットワークに接続される場合のために、複数の外部ネットワークに接続される第１のリダイレクト装置は、前記（１）〜（３）の方法に示す前記リダイレクトテーブルの前記レコードを構成する要素に「リダイレクト先ネットワーク識別子」を加えたリダイレクトテーブルを保持し、受信したネゴシェーション応答パケットに含まれ、リダイレクト先が所属するネットワークを表すネットワーク識別子を「リダイレクト先ネットワーク識別子」として前記リダイレクトテーブルの前記レコードに記憶し、
該第１のリダイレクト装置は、外部ネットワークからパケットを受信した際に前記リダイレクトテーブルを検索し、前記（１）〜（３）の方法に示す検索条件および一致条件に加えて、さらにパケットを受信した外部ネットワークが前記レコードの「リダイレクト先ネットワーク識別子」に一致するレコードがあった場合に、前記（１）〜（３）の方法に示す変換処理を行い、第１の通信装置へパケットを転送することを特徴としている。
【発明の効果】
【００２１】
本発明によれば、アプリケーションに依存することなく、全ての通信においてリダイレクト機能を実現することができる。
また、通信装置から受信したパケットの宛先アドレスを変更して、外部ネットワークへ送信することにより、リダイレクトを実現する方式では実現できなかったアプリケーションレベルでの通信の継続性も得ることができる。
また、アプリケーションごと、セッションごとにリダイレクトテーブルのレコード管理を行うことにより、リダイレクト先からの新たな通信を正しく認識することが可能になる。
さらに、リダイレクト装置が複数の外部ネットワークに接続された場合でも、正しいリダイレクト先、リダイレクト元の各装置を認識することが可能である。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施形態を、図面により詳細に説明する。
（ネットワーク構成）
図３は、本発明の一実施形態に係るリダイレクト装置を接続したネットワークの構成図である。
各装置、外部ネットワークの構成は、前述の図１と同じである。インターネットなどのＩＰネットワークを利用する場合には、ＩＰアドレスを指定して通信を行うが、この場合において、リダイレクト装置の外部ネットワークと接続されたインタフェースのＩＰアドレスをＩＰアドレス１、リダイレクト装置２、通信装置２のＩＰアドレスをそれぞれＩＰアドレス２，ＩＰアドレス３とする。また、リダイレクト装置１の通信装置１と接続されたインタフェースのＩＰアドレスをＩＰアドレス１１、通信装置１のＩＰアドレスをＩＰアドレス１２とする。
【００２３】
（リダイレクトテーブル）
図４は、本発明の一実施形態に係るリダイレクトテーブルの構成図である。
リダイレクトテーブルは、１つまたは複数のレコードから構成され、レコードは「リダイレクト元アドレス」，「リダイレクト先アドレス」で構成される。また、本レコード毎に、「送信元アドレス」「アプリケーション識別子」「セッション識別子」「リダイレクト先ネットワーク識別子」が追加される場合もある。
【００２４】
（パケット変換処理のフロー）
図５は、リダイレクト装置のパケット変換処理に関する動作フローチャートである。
リダイレクト装置１の動作は、図２と同様に、通信装置１がリダイレクト装置２との通信を開始するため、接続要求パケットをリダイレクト装置２に送信する。このときの接続要求パケットの送信元アドレスと宛先アドレスは、それぞれＩＰアドレス１２、ＩＰアドレス２である。通信装置１が送信した接続要求パケットはリダイレクト装置１に届き、リダイレクト装置１は接続要求パケットの宛先アドレスがＩＰアドレス２であることを識別すると、送信元アドレスがＩＰアドレス１、宛先アドレスがＩＰアドレス２のネゴシェーション要求パケットを生成し、リダイレクト装置２に送信する。
【００２５】
ネゴシェーション要求パケットは、外部ネットワークを介してリダイレクト装置２に届き、リダイレクト装置２は通信装置２へのリダイレクトを指示するため、リダイレクト先であるＩＰアドレス３を含む送信元アドレス、宛先アドレスがそれぞれＩＰアドレス２、ＩＰアドレス１のネゴシェーション応答パケットでリダイレクト装置１に返送する。ここまでは、図２と同様である。
ネゴシェーション応答パケットを受信したリダイレクト装置１は、ネゴシェーション応答パケットの送信元アドレス、すなわちＩＰアドレス２をレコードの「リダイレクト元アドレス」に設定し、ネゴシェーション応答パケットに含まれるリダイレクト先アドレス、すなわちＩＰアドレス３をレコードの「リダイレクト先アドレス」に設定する。
【００２６】
リダイレクトテーブルにレコードが追加された後のリダイレクト装置１のパケット変換処理の動作は、図５の通りである。図５（ａ）は、通信装置からパケットを受信したときの動作、図５（ｂ）は、外部ネットワークからパケットを受信したときの動作である。
通信装置を接続しているインタフェースにパケットを受信した場合、図５（ａ）に示すように、そのパケットの宛先アドレスを認識し、リダイレクトテーブルの全てのレコードを検索し、宛先アドレスが「リダイレクト元アドレス」と一致するレコードがあった場合、すなわち「リダイレクト元アドレス」がＩＰアドレス２のレコードがあった場合には（ステップ１０１）、宛先アドレスを当該レコードの「リダイレクト先アドレス」に示されるアドレス、すなわちＩＰアドレス３に変換し（ステップ１０２）、パケットを外部ネットワークへ送信する（ステップ１０３）。一方、「リダイレクト元アドレス」と一致するレコードがなかったときには、ネゴシェーションを起動し、ネゴシェーション要求パケットを送信する（ステップ１０４）。
【００２７】
一方、外部ネットワークを接続しているインタフェースにパケットを受信した場合、図５（ｂ）に示すように、そのパケットの送信元アドレスを認識し、リダイレクトテーブルの全てのレコードを検索し、送信元アドレスが「リダイレクト元アドレス」と一致するレコードがあった場合、すなわち、「リダイレクト元アドレス」がＩＰアドレス３であるレコードがあった場合には（ステップ２０１）、送信元アドレスを当該レコードの「リダイレクト元アドレス」に示されるアドレス、すなわちＩＰアドレス２に変換し（ステップ２０２）、パケットを通信装置１へ送信する（ステップ２０３）。
【実施例】
【００２８】
（実施例１）
図６は、本発明の実施例１に係るリダイレクト動作のシーケンスチャートである。
通信装置１は、リダイレクト装置２と通信を行うため、宛先アドレスをリダイレクト装置２のアドレスであるＩＰアドレス２に設定した接続要求パケットを送信する（接続要求パケット(1))。ただし、この接続要求パケットはリダイレクト装置２に到達したとしても、リダイレクト装置２はもともと通信装置２へリダイレクトするように設定されているため、受信した接続要求パケットは破棄されることがある。
接続要求パケット(1)を受信したリダイレクト装置１は、ＩＰアドレス２のリダイレクト装置２に対しネゴシェーション要求パケットを送信し（ネゴシェーション要求パケット(2)）、リダイレクト装置２から通信装置２へ、すなわちＩＰアドレス３へリダイレクトを指示するネゴシェーション応答パケットを受信する（ネゴシェーション応答パケット(3))。
【００２９】
この指示に基づき、リダイレクト装置１は、リダイレクトテーブルに「リダイレクト元アドレス」をＩＰアドレス２、「リダイレクト先アドレス」をＩＰアドレス３としてレコードに登録する。これ以降、通信装置１から送信されたパケットのうち宛先アドレスがリダイレクトテーブルのレコードの「リダイレクト元アドレス」と一致するパケット、すなわち宛先アドレスがリダイレクト装置２のアドレスであるＩＰアドレス２のパケットを受信した場合には、宛先アドレスを該当するレコードの「リダイレクト先アドレス」である通信装置２のアドレス、すなわちＩＰアドレス３に変換して外部ネットワーク側へ送信する動作を行う。
【００３０】
通信装置１は、先に送信した接続要求パケット(1)に対してレスポンスを受信していないことから、通信装置１のアプリケーションはリダイレクト装置２へ接続要求パケットを再送する（接続要求パケット（再送）(4))。
接続要求パケット（再送）を受信したリダイレクト装置１は、リダイレクトテーブルを検索する。宛先アドレスがリダイレクトテーブルのレコードの「リダイレクト元アドレス」と一致するパケット、すなわち宛先アドレスがリダイレクト装置２のアドレスであるＩＰアドレス２のパケットを受信したので、宛先アドレスを該当するレコードの「リダイレクト先アドレス」である通信装置２のアドレス、すなわちＩＰアドレス３に変換して、外部ネットワーク側に送信する動作を行う（接続要求パケット（再送）(5))。
【００３１】
接続応答パケット(6)を受信したリダイレクト装置１は、リダイレクトテーブルを検索し、受信したパケットの送信元アドレスがリダイレクトテーブルのレコードの「リダイレクト先アドレス」であるＩＰアドレス３と一致するレコードがあるため、送信元アドレスをリダイレクトテーブルの該当するレコードの「リダイレクト元アドレス」、すなわちリダイレクト装置２のアドレスであるＩＰアドレス２に変換して、通信装置１へ送信する（接続応答パケット(7))。
このようにすれば、宛先アドレスがＩＰアドレス２の接続要求パケットに対して、送信元アドレスがＩＰアドレス２の接続応答パケットを受信することが可能となり、アプリケーションレベルでも通信を継続させることが可能となる。
【００３２】
（実施例２）
図７は、本発明の実施例２に係るリダイレクト動作のシーケンスチャートである。
なお、図７中の下線の部分は、実施例１の図６と相違している動作を示している。
図３では、リダイレクト装置１はユーザ宅などへの設置を想定して記述しており、一般的には家庭用のブロードバンドルータが想定される。このような場合、ＩＰアドレス１は外部ネットワークから割り当てられたグローバルＩＰアドレスが用いられているものの、ＩＰアドレス１１、ＩＰアドレス１２はユーザが任意に設定できるプライベートアドレスを利用するのが一般的である。この場合には、当然ながら外部ネットワーク側ではグローバルアドレスを用いて通信を行い、リダイレクト装置１と通信装置１の間ではプライベートアドレスを用いて通信を行わなければならないことから、アドレス変換が必要となる。
この場合の一連のシーケンスを図７に示している。
【００３３】
図７において、リダイレクト装置１では、ネゴシェーション応答パケット(3)の受信までは、実施例１の図６と同様である。この時点で、実施例１のリダイレクトテーブルのレコードに、「送信元アドレス」を追加する。すなわち、リダイレクトテーブルへレコードを追加する際に、「リダイレクト元アドレス」、「リダイレクト先アドレス」とともに、ネゴシェーション要求パケットの送信トリガーとなった接続要求パケットの送信元ＩＰアドレスであるＩＰアドレス１２を「送信元アドレス」に登録する。
リダイレクト装置１は、通信装置１からパケット（接続要求パケット（再送）(4))を受信した場合、パケットの宛先ＩＰアドレスがリダイレクトテーブルの「リダイレクト元アドレス」のすなわちＩＰアドレス２と一致し、かつパケットの送信元ＩＰアドレスが「送信元アドレス」と一致するため、送信元アドレスを自身のＩＰアドレスであるＩＰアドレス１に、宛先アドレスを「リダイレクト先アドレス」であるＩＰアドレス３に、それぞれ変換して外部ネットワーク側に送信する（接続要求パケット（再送）(5))。
【００３４】
また、リダイレクト装置１は、外部ネットワークからパケット（接続応答パケット(6))を受信した場合、リダイレクトテーブルを検索する。送信元アドレスがリダイレクトテーブルのレコードの「リダイレクト先アドレス」であるＩＰアドレス３に一致するため、送信元アドレスをリダイレクトテーブルの該当するレコードの「リダイレクト元アドレス」、すなわちリダイレクト装置２のアドレスであるＩＰアドレス２に変換し、さらに宛先アドレスを該当するレコードの「送信元アドレス」、すなわち通信装置１のアドレスであるＩＰアドレス１２に変換して、通信装置側へ送信する（接続応答パケット(7))。
このようにすれば、通信装置１にプライベートアドレスを用いた場合においても、宛先アドレスがＩＰアドレス２の接続要求パケットに対して、送信元アドレスがＩＰアドレス２の接続応答パケットを受信することが可能となり、アプリケーションレベルでも通信を継続させることが可能になる。
【００３５】
（実施例３）
図９は、本発明の実施例３に係るリダイレクト動作のシーケンスチャートである。
本実施例は、実施例１および実施例２において、リダイレクトテーブルが登録されている場合に、通信装置１が通信相手を正しく認識できない課題を解決するため、リダイレクトテーブルに「アプリケーション識別子」と「セッション識別子」を用いた例である。
リダイレクト装置１におけるリダイレクトテーブルへのレコードの追加の手順は、実施例１、実施例２と同様であるが、リダイレクト装置１は通信装置１から受信したパケットＩＰヘッダに含まれるプロトコル番号を「アプリケーション識別子」に、送信元ポート番号を「セッション識別子」に、合わせて登録する。ここでは、リダイレクトテーブルのレコードに、「リダイレクト元アドレス」としてＩＰアドレス２、「リダイレクト先アドレス」としてＩＰアドレス３、「アプリケーション識別子」としてＴＣＰ、「セッション識別子」として送信元ポート番号である５４３２１が、それぞれ設定されていたとする。
【００３６】
図１０は、実施例３におけるリダイレクト装置のパケット変換処理の動作フローチャートである。
ここで、リダイレクト装置１が、外部ネットワークに接続されている通信装置２から通信装置１と新たに通信を開始するためのＩＰパケットであり、宛先アドレスがＩＰアドレス１２、送信元アドレスがＩＰアドレス３、プロトコル番号がＴＣＰ、宛先ポート番号が「５５５５５」のＩＰパケットを受信したとする。
リダイレクト装置１は、図１０（ｂ）に示すように、リダイレクトテーブルの検索を行う。送信元アドレスが「リダイレクト元アドレス」であるＩＰアドレス３と、プロトコル番号が「アプリケーション識別子」であるＴＣＰと一致するが、宛先ポート番号が「セッション識別子」である５４３２１と一致しないことから、送信元ＩＰアドレスを「リダイレクト元アドレス」であるＩＰアドレス２には変換しない。従って、通信装置１に届けられるＩＰアドレスの送信元アドレスは通信装置２のＩＰアドレス３であるため、通信装置１は通信装置２からの通信であることが認識できる。
【００３７】
図１０（ａ）と図５（ａ）とを比較すれば明らかなように、実施例３では、図５のステップに加えて、プロトコル番号とアプリケーション識別子が一致するか否かの判別処理（ステップ１１２）と、送信元ポート番号とセッション識別子が一致するか否かの判別処理（ステップ１１３）とが追加されている。
また、図１０（ｂ）と図５（ｂ）とを比較すれば明らかなように、実施例３では、図５のステップに加えて、プロトコル番号とアプリケーション識別子が一致するか否かの判別処理（ステップ２１２）と、宛先ポート番号とセッション識別子が一致するか否かの判別処理（ステップ２１３）とが追加されている。
【００３８】
（実施例４）
図１３は、本発明の実施例４に係るリダイレクト動作のシーケンスチャートであり、図１４は同じく実施例４におけるリダイレクトテーブルのレコードの構成図である。
本実施例は、リダイレクト装置が複数の外部ネットワークに接続される場合に、送信元アドレスを正しいリダイレクト元のアドレスに戻せなくなるという課題を「リダイレクト先ネットワーク識別子」を用いることにより解決できる例である。
図１２に示す構成において、リダイレクト装置１は、リダイレクト元でありアドレスがＩＰアドレス３のリダイレクト装置３からネゴシェーション応答パケットを受信したことにより、リダイレクト先ネットワークとして個別ネットワーク３を表す識別子であるＮＷ３、リダイレクト先アドレスとして通信装置３のアドレスであるＩＰアドレスＡを指示されたケースについて説明する。
【００３９】
リダイレクト装置１は、図１４に示すように、リダイレクトテーブルの「リダイレクト先ネットワーク識別子」にＮＷ３、「リダイレクト先アドレス」にＩＰアドレスＡのレコードを追加する。
リダイレクト装置１は、図１３に示すように、送信元アドレスがアドレスＡの接続応答パケット(6)を個別ネットワーク３から受信した場合にリダイレクトテーブルを検索し、「リダイレクト先ネットワーク識別子」が接続応答パケット(5)を受信したネットワークであるＮＷ３に一致し、かつ送信元アドレスが「リダイレクト先アドレス」であるＩＰアドレスＡと一致するレコードがあることから、リダイレクト元のアドレスをＩＰアドレス３と特定し、送信元アドレスをＩＰアドレス３に変換した接続応答パケット(7)を通信装置１に送信する。
このように、「リダイレクト先ネットワーク識別子」を用いることにより、複数の外部ネットワークがあった場合にも、正しいリダイレクト元を認識できるようになる。
【００４０】
（実施例５）
本実施例は、リダイレクト装置をネットワーク側の設備として設置される場合である。
実施例１から実施例４では、図３および図１２に示す通り、リダイレクト装置はユーザ宅に設置される構成を例に説明した。しかし、図１１（ａ），（ｂ）に示すように、ネットワーク側の設備として、ユーザにリダイレクトを意識させることなくリダイレクトを実現することが可能であることも明白である。
このような構成にすることで、外部ネットワークを運営する通信事業者や、外部ネットワークへ接続するためのアクセスネットワークを用いてアクセスサービスを提供する事業者がリダイレクトサービスを行うことも可能である。
【００４１】
（プログラムと記録媒体）
図５のパケット変換処理のフロー、図６の実施例１のリダイレクトシーケンス、図７の実施例２のリダイレクトシーケンス、図９の実施例３のリダイレクトシーケンス、図１０の実施例３におけるパケット変換処理のフロー、図１３の実施例４のリダイレクトシーケンスの各動作ステップを、それぞれプログラムコード化し、完成したプログラムをＣＤ−ＲＯＭなどの記録媒体に格納しておけば、この記録媒体を本願明細書および図面に示すリダイレクト装置のコンピュータに装着し、プログラムをインストールして実行させることで、本発明を容易に実現することができる。また、プログラムをネットワークを介して他の多くコンピュータにダウンロードすることで、本発明のプログラムを広く汎用化することも可能である。
【００４２】
以上のような本発明のリダイレクト方法および装置を用いることにより、実施例１から実施例５で説明した通信方法による通信が可能となる。
【図面の簡単な説明】
【００４３】
【図１】解決すべき課題を与える機器構成とネットワーク構成のブロック図である。
【図２】従来技術のリダイレクト動作のシーケンスチャートである。
【図３】本発明の基本となる機器構成とネットワーク構成のブロック図である。
【図４】本発明のリダイレクトテーブルの構成図である。
【図５】本発明によるリダイレクト装置のパケット変換処理の動作フローチャートである。
【図６】本発明の実施例１に係るリダイレクト動作のシーケンスチャートである。
【図７】本発明の実施例２に係るリダイレクト動作のシーケンスチャートである。
【図８】リダイレクトテーブルが登録されている場合に、通信装置１が通信相手を正しく認識できない例を示す図である。
【図９】本発明の実施例３に係るリダイレクト動作のシーケンスチャートである。
【図１０】同じく実施例３におけるリダイレクト装置１のパケット変換処理の動作フローチャートである。
【図１１】本発明の実施例５に係るリダイレクト装置とそのネットワーク構成を示す図である。
【図１２】複数の外部ネットワークがある場合における機器構成とネットワーク構成のブロック図である。
【図１３】本発明の実施例４に係るリダイレクト動作のシーケンスチャートである。
【図１４】同じく実施例４に係るリダイレクトテーブルのレコード構成図である。
【符号の説明】
【００４４】
ＩＰアドレス１・・・リダイレクト装置１のネットワークインタフェースのアドレス
ＩＰアドレス２・・・リダイレクト装置２のネットワークインタフェースのアドレス
ＩＰアドレス３・・・通信装置２のネットワークインタフェースのアドレス
ＩＰアドレス１１・・・リダイレクト装置１の通信装置側インタフェースのアドレス
ＩＰアドレス１２・・・通信装置１のリダイレクト装置側インタフェースのアドレス
ＮＷ３・・・個別ネットワーク３の識別子
【図１】
2006094106.tif 000003
【図２】
2006094106.tif 000004
【図３】
2006094106.tif 000005
【図４】
2006094106.tif 000006
【図５】
2006094106.tif 000007
【図６】
2006094106.tif 000008
【図７】
2006094106.tif 000009
【図８】
2006094106.tif 000010
【図９】
2006094106.tif 000011
【図１０】
2006094106.tif 000012
【図１１】
2006094106.tif 000013
【図１２】
2006094106.tif 000014
【図１３】
2006094106.tif 000015
【図１４】
2006094106.tif 000016