(57)【要約】【課題】ＭＡＰ（モビリティアンカポイント）の配下に複数のモバイルルータが連なったネスト状態において、モバイルルータの配下に存在するモバイルノードが送受信を行うパケットを転送する際に必要となるカプセル化の回数を減少させる。【解決手段】アドレスＡを有するノード４２０からアドレスＤを有するノード４５０に、パケット送信を行う際、アドレスＡを有するノードは、アドレスＤまでの経路上に存在する、アドレスＢを有するノード４３０とアドレスＣを有するノード４４０が含まれている中間アドレスのリストをルーティングヘッダの内部に挿入して、あて先アドレスに次のホップのあて先であるアドレスＢを設定する。アドレスＢを有するノードは、パケットを受信し、あて先アドレスと、中間アドレスのリスト内のアドレスＣとを交換する。アドレスＣを有するノードでも同様の処理が行われて、パケットはアドレスＤを有するノードに到達する。【選択図】図５
2008546222.tif 000002
【特許請求の範囲】
【請求項１】
配下のネットワーク内における通信ノードの位置を特定する局所的なアドレスと、前記通信ノードが外部のネットワークとの通信を行う際に利用される大局的なアドレスとが関連付けられたアドレス対応情報を保持し、階層的なネットワークの管理を行うモビリティアンカポイントと、モバイルネットワークを配下に有するモバイルルータと、前記モバイルネットワークに接続しており、前記モバイルネットワーク内で通知されているプレフィックスに基づいて構成されるアドレスを使用して通信を行うモバイルノードとを有する通信システムにおいて、前記モビリティアンカポイントの管理下に前記モバイルルータが接続されており、前記モビリティアンカポイントが、前記モバイルルータ及び前記モバイルノードに係る前記アドレス対応情報を保持している状態におけるパケット転送制御方法であって、
前記モビリティアンカポイントが、前記モバイルルータの配下に存在する前記モバイルネットワークの前記プレフィックスを把握するプレフィックス把握ステップと、
前記モビリティアンカポイントが、前記モバイルルータの前記プレフィックスに基づいて、前記モビリティアンカポイントから前記モバイルノードへの経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを生成する中間アドレスリスト生成ステップを有するパケット転送制御方法。
【請求項２】
前記モビリティアンカポイントが前記モバイルノードの前記大局的なアドレスあてのパケットを前記モバイルノードに転送する場合、前記パケットに前記アドレスリストを付加するとともに、前記パケットをカプセル化して、カプセル化パケットのあて先アドレスに次のホップに位置する前記モバイルルータの前記局所的なアドレスを設定するパケット転送ステップを有する請求項１に記載のパケット転送制御方法。
【請求項３】
前記カプセル化パケットに付加されるルーティングヘッダ内にアドレスリストが挿入される請求項２に記載のパケット転送制御方法。
【請求項４】
前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点に位置する前記モバイルルータは、前記カプセル化パケットを転送する際に、前記アドレスリストを参照して、前記カプセル化パケットのあて先アドレスを、前記アドレスリストの所定の箇所に存在する前記モバイルルータの前記局所的なアドレスと交換するあて先アドレス交換ステップを有する請求項２又は３に記載のパケット転送制御方法。
【請求項５】
前記モバイルノードが、前記アドレスリストを取得するアドレスリスト取得ステップと、
前記モバイルノードが、前記モビリティアンカポイントを経由するパケットの送信を行う際に、前記アドレスリストを逆順にした逆順アドレスリストを前記パケットに付加するとともに、前記モビリティアンカポイントをあて先アドレスに設定したカプセル化パケットで前記パケットをカプセル化して送信するパケット送信ステップとを、
有する請求項１から３のいずれか１つに記載のパケット転送制御方法。
【請求項６】
前記カプセル化パケットに付加されるリバースルーティングヘッダ内に前記逆順アドレスリストが挿入される請求項５に記載のパケット転送制御方法。
【請求項７】
前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点に位置する前記モバイルルータは、前記カプセル化パケットを転送する際に、前記アドレスリストを参照して、前記カプセル化パケットの送信元アドレスを、自身の前記局所的なアドレスと交換する送信元アドレス交換ステップを有する請求項４又は５に記載のパケット転送制御方法。
【請求項８】
階層的なネットワークの管理を行うモビリティアンカポイントが有するパケット転送制御装置であって、
配下のネットワーク内における通信ノードの位置を特定する局所的なアドレスと、前記通信ノードが外部のネットワークとの通信を行う際に利用される大局的なアドレスとが関連付けられたアドレス対応情報を保持する登録テーブル格納手段と、
前記登録テーブル格納手段に前記アドレス対応情報が登録されているモバイルルータの配下に存在するモバイルネットワークのプレフィックスを保持するプレフィックス格納手段と、
前記モバイルルータの前記プレフィックスに基づいて、前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを生成する中間アドレスリスト生成手段とを、
有するパケット転送制御装置。
【請求項９】
前記モバイルノードの前記大局的なアドレスあてのパケットを前記モバイルノードに転送する場合、前記パケットに前記アドレスリストを付加するとともに、前記パケットをカプセル化するカプセル化手段と、
前記カプセル化手段で生成されたカプセル化パケットのあて先アドレスに次のホップに位置する前記モバイルルータの前記局所的なアドレスを設定するアドレス設定手段とを、  有する請求項８に記載のパケット転送制御装置。
【請求項１０】
モバイルネットワークを配下に有するモバイルルータのパケット転送制御装置であって、
上位に存在するモビリティアンカポイントから、複数のアドレスを含むアドレスリストが付加されたカプセル化パケットを受信するパケット受信手段と、
前記アドレスリストを参照して、前記カプセル化パケットのあて先アドレスを、前記アドレスリストの所定の箇所に存在する前記モバイルルータの前記局所的なアドレスと交換するあて先アドレス交換手段と、
前記あて先アドレスが交換された前記カプセル化パケットを送信するパケット送信手段とを、
有するパケット転送制御装置。
【請求項１１】
モバイルネットワークを配下に有するモバイルルータのパケット転送制御装置であって、
下位に存在するモバイルノードから、複数のアドレスを含むアドレスリストが付加されたカプセル化パケットを受信するパケット受信手段と、
前記アドレスリストを参照して、前記カプセル化パケットの送信元アドレスを、前記アドレスリスト内の自身のアドレスと交換する送信元アドレス交換手段と、
前記送信元アドレスが交換された前記カプセル化パケットを送信するパケット送信手段とを、
有するパケット転送制御装置。
【請求項１２】
モビリティアンカポイントの管理下に存在するモバイルルータによって形成されたモバイルネットワーク内の通信ノードであって、
前記モビリティアンカポイントから前記通信ノードへの経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを取得するアドレスリスト取得手段と、
前記モビリティアンカポイントを経由するパケットの送信を行う際に、前記アドレスリストを逆順にした逆順アドレスリストを前記パケットに付加するとともに、前記モビリティアンカポイントをあて先アドレスに設定したカプセル化パケットで前記パケットをカプセル化して送信するパケット送信手段とを、
有する通信ノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）ネットワークなどのパケット交換型データ通信ネットワークにおけるパケット転送制御方法及びパケット転送制御装置並びに通信ノードに関し、特に、モバイルＩＰ及びＨＭＩＰ（Hierarchical Mobile IP）を使用するノードによって送受信されるパケットを転送するためのパケット転送制御方法及びパケット転送制御装置並びに通信ノードに関する。
【背景技術】
【０００２】
現在、多数のデバイスが、ＩＰネットワークを使用して、相互に通信を行っている。モバイル機器にモビリティサポートを提供するために、ＩＥＴＦ（Internet Engineering Task Force）では、ＩＰｖ６（Internet Protocol version 6）におけるモビリティサポートの拡張が進められている（下記の非特許文献１参照）。モバイルＩＰでは、各モバイルノードは、永続的なホームドメインを持っている。モバイルノードが、自身のホームネットワークに接続している場合、モバイルノードには、ホームアドレス（ＨｏＡ：Home Address）としてプライマリグローバルアドレスが割り当てられる。
【０００３】
一方、モバイルノードがホームネットワークから離れている場合、すなわち、他のフォーリンネットワークに接続している場合には、通常、モバイルノードには、気付アドレス（ＣｏＡ：Care-of Address）として一時的なグローバルアドレスが割り当てられる。モビリティサポートの考えは、モバイルノードが他のフォーリンネットワークに接続している場合でも、自身のホームアドレスで、そのモバイルノードまで到達可能となるようにするものである。
【０００４】
このような考えは、非特許文献１において、ホームエージェント（ＨＡ：Home Agent）として知られるエンティティを、ホームネットワークに導入することによって実践されている。モバイルノードは、バインディングアップデート（ＢＵ：Binding Update）メッセージを使用して、ホームエージェントへの気付アドレスの登録を行う。これにより、ホームエージェントは、モバイルノードのホームアドレスと気付アドレスとの間のバインディングを生成することが可能となる。ホームエージェントは、モバイルノードのホームアドレスに向けられたメッセージを受信（intercept）し、パケットのカプセル化（あるパケットを新たなパケットのペイロードとすることであり、パケットトンネリングとしても知られている）を用いて、そのパケットをモバイルノードの気付アドレスに転送する機能を担っている。
【０００５】
モバイルＩＰによって、他の静的なＩＰのアドレス構成におけるモビリティサポートも可能となるが、そこには不完全な点も存在している。この不完全な点の１つが、モバイル機器がインターネットへの接続ポイントを変える際には、常にホームエージェントやコレスポンデントノードに対してバインディングアップデートを送信する必要がある点である。乗り物上のモバイル機器などのような高い移動度（モビリティ）を有するノードに関しては、モバイルノードがバインディングアップデートを送信する必要が生じる頻度は、非常に高くなる。
【０００６】
この理由から、ＩＥＴＦでは現在、階層的なモバイルＩＰｖ６モビリティ管理プロトコル（ＨＭＩＰ：Hierarchical Mobile IPv6 Mobility Management Protocol、非特許文献２参照）の開発が進められている。ＨＭＩＰの概念は、下記の特許文献１に含まれる内容に非常によく似ている。ここでは、モビリティアンカポイント（ＭＡＰ：Mobility Anchor Point）として知られるエンティティが定義されている。このＭＡＰはアクセスネットワークの比較的大きなセグメントを取り扱い、ＭＡＰによって管理されるアクセスネットワークのセグメント内で移動するモバイルノードは、同一の気付アドレスを使用することができるようになる。この方法では、モバイルノードが現在の接続ポイントにおいて、ローカル気付アドレス（ＬＣｏＡ：Local Care-of Address）を取得し、このＬＣｏＡをＭＡＰに登録する。そして、この登録の際に、モバイルノードにはリージョナル気付アドレス（ＲＣｏＡ：Regional Care-of Address）が割り当てられ、モバイルノードは、このＲＣｏＡを用いて、自身のホームエージェントにバインディングアップデートを送信する。したがって、モバイルノードのホームアドレスに送信されるパケットは、ホームエージェントによってカプセル化され、モバイルノードのＲＣｏＡあてに送信される。ＭＡＰは、このパケットを受信（intercept）して、モバイルノードのＬＣｏＡにトンネルする。
【０００７】
これによって、モバイルノードが自身のホームエージェントやコレスポンデントノードに対して送信する必要が生じるバインディングアップデートの回数は、大きく低減されることになる。また、モバイルノードは、同一のＭＡＰによって管理されるアクセスネットワークのセグメント内を移動する限りにおいて、そのＲＣｏＡは変えずにＬＣｏＡのみを変えるだけでよい。したがって、モバイルノードは、自身のＬＣｏＡをＭＡＰに通知するだけでよく、自身のホームエージェントやコレスポンデントノードに対してバインディングアップデートを送信する必要はない。モバイルノードは、このＭＡＰによって管理されるアクセスネットワークのセグメントから離れる場合にのみ、新たなＲＣｏＡが割り当てられる必要が生じ、この場合には、自身のホームエージェントやコレスポンデントノードに対して、バインディングアップデートの送信を行う。
【０００８】
また、下記の特許文献２には、モバイルノードやコレスポンデントノードがＭＡＰにおける障害を検出するためのメカニズムを提供することによって、ＨＭＩＰの機能を強化する技術が開示されている。特許文献２に開示されている技術によれば、ＭＡＰに障害が起こった場合に、モバイルノードは、新たなＭＡＰの配下に位置するまでの間、ＬＣｏＡを気付アドレスとして使用する方法が提供される。
【０００９】
一方、無線デバイスの台数の増加は更に加速しており、モビリティ技術において、新たな技術分野（class）が現れるであろうことが予想される。その１つが、ノードを含むネットワーク全体が、そのまま接続ポイントを変えるネットワークモビリティ（すなわち、ＮＥＭＯ）である。個々のホスト用のモビリティサポートの概念を、ノードを含むネットワーク用のモビリティサポートに拡張した場合、移動を行うネットワークに係る解決策は、モバイルネットワークがインターネットに対してどの接続ポイントで接続している場合でも、プライマリグローバルアドレスでモバイルネットワーク内のノードに到達可能とすることができる機構の提供を目的としている。
【００１０】
ＩＥＴＦでは、現在、下記の非特許文献２に記載されているように、ネットワークモビリティに対する解決策が展開されている。ここでは、モバイルルータがホームエージェントに対してＢＵを送信する際に、モバイルルータによって、モバイルネットワーク内のノードが使用しているネットワークプリフィックスが指定される。このネットワークプリフィックスは、ＢＵに挿入されるネットワークプリフィックスオプションとして知られる特別なオプションを使用して指定される。これにより、ホームエージェントは、プリフィックスに基づくルーティングテーブルを構築し、その結果、ホームエージェントは、こうしたプリフィックスを有する送信先に送信されるパケットを、モバイルルータの気付アドレスに転送することが可能となる。このモバイルルータとそのホームエージェントとの間の双方向トンネルを用いる考え方は、下記の特許文献３にも開示されている。
【００１１】
この双方向トンネルを用いた簡単なメカニズムは、ネットワークモビリティサポートを考慮しているものの、モバイルネットワークのネスティングは、コレスポンデントノードから入れ子状態のモバイルネットワーク内のノードまでの長く曲折した経路を引き起こすことになる。これは最も奥深い可動のネットワークにおけるノードに送られたパケットが、各レベルのネスティング（すなわち、別のモバイルルータによって管理されるモバイルネットワークに接続しているモバイルルータ）に関して、最外のモバイルネットワーク内のノードに送信されるパケットは、追加されたトンネルを通る必要があるからである。トンネルのエンドポイントはモバイルルータのホームエージェントなので、トンネルのエンドポイントは、インターネット全体にわたって分散している可能性があり、その結果、パケットは、長く曲折した経路を通ることになってしまう。
【００１２】
この問題を解決するため、下記の非特許文献４で提案されている別の解決方法では、モバイルネットワークが入れ子状態（すなわち、別のモバイルネットワークに接続されたモバイルネットワーク）になった場合に、多数のレベルでのカプセル化を避けるためにリバースルーティングヘッダを使用する。ここでは、下流のモバイルルータは、自身のホームエージェントへのトンネルパケットにリバースルーティングヘッダをセットする。そして、上流のモバイルルータがこのトンネルパケットを途中で受信（intercept）すると、上流の複数のモバイルルータのそれぞれは、このパケットに関して、別のＩＰ−ｉｎ−ＩＰトンネルへのカプセル化を行わず、その代わりに、上流のモバイルルータは、そのパケットの送信元アドレスをリバースルーティングヘッダにコピーして、送信元アドレスとして、自身の気付アドレスを設定する。このようにして、最初のモバイルルータのホームエージェントは、パケットを受信した場合に、最初のモバイルルータと自身との間の経路上に存在する複数のモバイルルータの連なりを把握することが可能となる。また、ホームエージェントは、受信パケット（intercepted packet）を最初のモバイルルータに転送しようとする場合には、この受信パケットに拡張タイプ２のルーティングヘッダを含ませることによって、パケットは、他の上流のモバイルルータを経由して直接最初のモバイルルータに送信されるようにすることが可能である。
【００１３】
また、ネスティングのみがネットワークモビリティサポートに関する問題というわけではない。モバイルＩＰのように、ネットワークが高速で移動している場合に頻繁にバインディングアップデートを行うという問題をネットワークモビリティは抱えている。また、どのようにしてＨＭＩＰをネットワークモビリティサポートの解決方法と統合できるかに関しては明らかにはなっていない。１つの明白な解決方法としては、モバイルルータが、自身のＬＣｏＡをＭＡＰに登録し、ＭＡＰからＲＣｏＡを取得し、このＲＣｏＡを気付アドレスとして使用して、自身のホームエージェントにバインディングアップデートを送信するものである。しかしながら、モバイルネットワークのネスティングを考慮した場合、これによって、長く曲折したルーティングが起きる可能性がある。
【００１４】
この具体例として、図１に示されるネットワーク構成を考える。ここで、モバイルルータＭＲ１４２は、別のモバイルルータＭＲ１４０によって管理されているモバイルネットワーク１０４に接続されている。また、モバイルルータＭＲ１４０は、ＭＡＰ１２０によって管理されるアクセスネットワーク１０２に属するアクセスルータＡＲ１３０に接続されている。また、モバイルルータＭＲ１４２は、モバイルネットワーク１０６を管理している（モバイルネットワーク１０６には、１つのモバイルネットワークノードＭＮ１５０が図示されている）。また、ホームエージェントＨＡ１１０は、モバイルルータＭＲ１４０のホームエージェントであり、ホームエージェントＨＡ１１２は、モバイルルータ１４２のホームエージェントであり、ホームエージェント１１４は、モバイルノードＭＮ１５０のホームエージェントである。また、ネットワーク１００は、例えばグローバルなインターネットである。ＭＲ１４０、１４２、モバイルノードＭＮ１５０はすべて、ＭＡＰ１２０への登録を行って、ＨＭＩＰを使用する。
【００１５】
ここで、ＣＮ１６０がＭＮ１５０に対してパケットを送信する場合について考える。図２には、パケットがＭＮ１５０に到達するまでの経路が図示されている。まず、ＣＮ１６０から送信されたＭＮ１５０のホームアドレスをあて先とするパケットは、ＭＮ１５０のホームエージェントＨＡ１１４に向かう経路２１０を通る。そして、ＨＡ１１４は、パケットをＭＮ１５０のＲＣｏＡに転送する。これにより、ＭＡＰ１２０への経路２１２が取られる。ＭＡＰ１２０は、パケットを受信（intercept）して、ＭＮ１５０のＬＣｏＡにトンネルする。しかしながら、ＭＮ１５０のＬＣｏＡはモバイルネットワーク１０６のプレフィックスによって構成されており、パケットは、モバイルルータＭＲ１４２のホームエージェントＨＡ１１２に向かう経路２１４を取る。そして、ＨＡ１１２はＭＲ１４２のＲＣｏＡにパケットを転送し、パケットはＭＡＰ１２０に戻る経路２１６を取る。
【００１６】
ＭＡＰ１２０は、このパケットをＭＲ１４２のＬＣｏＡにトンネルする。一方、ＭＲ１４２のＬＣｏＡはモバイルネットワーク１０４のプレフィックスによって構成されており、パケットは、モバイルルータＭＲ１４０のホームエージェントＨＡ１１０に向かう経路２１８を取る。そして、ＨＡ１１０はＭＲ１４０のＲＣｏＡにパケットを転送し、パケットは、ＭＡＰ１２０に向かう経路２２０を取る。ＭＡＰ１２０は、このパケットを経路２２２を通じてＭＲ１４０のＬＣｏＡにトンネルする。ＭＲ１４０は、このパケットをデカプセル化して、ＭＲ１４２に送信する。そして最後に、ＭＲ１４２が、このパケットをデカプセル化してＭＮ１５０に転送する。
【００１７】
上述の説明から、ＨＭＩＰとネットワークモビリティサポートとを単に組み合わせただけの場合における問題が把握できる。入れ子状態のモバイルネットワーク内のモバイルノードをあて先とするパケットは、長く冗長な経路をたどることになり、ＭＡＰを複数回通過することになる。これは、ネットワークリソースを無駄に消費するだけではなく、大きなパケット遅延を引き起こすことになり、例えば、広く普及しつつあるＶｏＩＰや他のマルチメディアセッションなどのリアルタイムのアプリケーションでは、とても容認されるものではない。
【００１８】
また、ネットワークモビリティサポートにおけるバインディングアップデートによってプレフィックス情報を送信するという概念をＨＭＩＰに拡張することが可能かもしれない。また、モバイルルータがＭＡＰに登録を行う際に、ＭＡＰがモバイルルータにプレフィックスを委譲（delegate）することも可能である。この委譲されるプレフィックスは、モバイルルータによって管理されるモバイルネットワークで使用可能なものであり、モバイルネットワークに接続されているモバイルノードは、委譲されたプレフィックスからＬＣｏＡを構成することが可能である。
【００１９】
どちらの場合においても、ＭＡＰは、モバイルルータがＭＡＰに登録を行う際に、モバイルルータによって取り扱われるプレフィックスを把握している。したがって、ＭＡＰは、モバイルノードのＲＣｏＡをあて先とするパケットを受信した場合に、プレフィックステーブルをチェックして、モバイルノードがモバイルネットワークのプレフィックスを有するＬＣｏＡを持っていることを把握し、パケットをモバイルノードのＬＣｏＡに直接トンネルする代わりに、モバイルルータにトンネルする。これを行うことによって、図２に図示されているルーティングの経路は、余分な経路２１４、２１６、２１８、２２０が取り除かれて、非常に短縮されるようになる。
【特許文献１】Malki, K., Soliman, H., "Hierarchical Mobility Management For Wireless Networks", US Patent Application No 2001/0046223A1, Nov 2001.
【特許文献２】Venkitaraman, N., "Method and Apparatus for Robust Local Mobility Management in a Mobile Network", US Patent Application No 2003/0185196A1, Oct 2003.
【特許文献３】Leung, K. K., "Mobile IP mobile router", US Patent 6,636,498, Oct 2003.
【非特許文献１】Johnson, D. B., Perkins, C. E., and Arkko, J., "Mobility Support in IPv6", Internet Engineering Task Force (IETF) Request For Comments (RFC) 3775, June 2004.
【非特許文献２】Soliman, H., et. al., "Hierarchical Mobile IPv6 Mobility Management (HMIPv6)", IETF Internet Draft: draft-ietf-mipshop-hmipv6-04.txt, Work-in-progress, December 2004.
【非特許文献３】Devarapalli, V., et. al., "NEMO Basic Support Protocol", IETF RFC 3963, January 2005.
【非特許文献４】Thubert, P., and Molteni, M., "IPv6 Reverse Routing Header and Its Application to Mobile Networks", Internet Draft: draft-thubert-nemo-reverse-routing-header-04.txt, Work In Progress, Feb 2004.
【発明の開示】
【発明が解決しようとする課題】
【００２０】
しかしながら、プレフィックス情報を使用することによって、長く曲折したルーティングに関する問題は排除することが可能となるが、すべての問題が解決されるわけではない。依然として、ＭＡＰは、モバイルルータに送るパケットをカプセル化する必要がある。この問題の例として、図２に図示される上述の例を参照しながら説明する。ＭＡＰ１２０は不要な経路２１４、２１６、２１８、２２０を取り除くためにプレフィックス情報を使用するが、依然として、ＭＡＰ１２０は、最初にＭＮ１５０のＬＣｏＡにパケットをトンネルし、次にＭＲ１４２のＬＣｏＡにパケットをトンネルし、最後にＭＲ１４０のＬＣｏＡにパケットをトンネルする必要がある。すなわち、ＨＡ１１４によって元々カプセル化されていたものも含めて、パケットは４回カプセル化されることになる。
【００２１】
また、図３には、この具体例が図示されている。ここでは、ＣＮ１６０からＭＮ１５０までの経路３１０が、ＨＡ１１４からＭＮ１５０までのトンネル３２０、ＭＡＰ１２０からＭＮ１５０までのトンネル３３０、ＭＡＰ１２０からＭＲ１４２までのトンネル３４０、ＭＡＰ１２０からＭＲ１４０までのトンネル３５０を通る必要があることが分かる。
【００２２】
このように、追加される各レベルのカプセル化において、パケットにはヘッダがオーバヘッドとなるので、これによって、カプセル化／デカプセル化を行う各ノードにおいて、かなりの処理遅延が生じることになるという問題がある。また、このパケットは、途中でパケットの断片化が行われる可能性が高くなってしまうという問題がある。さらに、データの伝送に関し、オーバヘッドの増大によって、データ伝送効率の低下を招いてしまうという問題もある。
【００２３】
上記の課題に鑑み、本発明は、ＭＡＰの配下に複数のモバイルルータが連なったネスト状態において、モバイルルータの配下に存在するモバイルノードが送受信を行うパケットを転送する際に必要となるカプセル化の回数を減少させることを目的とする。
【課題を解決するための手段】
【００２４】
上記の目的を達成するため、本発明によれば、配下のネットワーク内における通信ノードの位置を特定する局所的なアドレスと、前記通信ノードが外部のネットワークとの通信を行う際に利用される大局的なアドレスとが関連付けられたアドレス対応情報を保持し、階層的なネットワークの管理を行うモビリティアンカポイントと、モバイルネットワークを配下に有するモバイルルータと、前記モバイルネットワークに接続しており、前記モバイルネットワーク内で通知されているプレフィックスに基づいて構成されるアドレスを使用して通信を行うモバイルノードとを有する通信システムにおいて、前記モビリティアンカポイントの管理下に前記モバイルルータが接続されており、前記モビリティアンカポイントが、前記モバイルルータ及び前記モバイルノードに係る前記アドレス対応情報を保持している状態におけるパケット転送制御方法であって、
前記モビリティアンカポイントが、前記モバイルルータの配下に存在する前記モバイルネットワークの前記プレフィックスを把握するプレフィックス把握ステップと、
前記モビリティアンカポイントが、前記モバイルルータの前記プレフィックスに基づいて、前記モビリティアンカポイントから前記モバイルノードへの経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを生成する中間アドレスリスト生成ステップを有するパケット転送制御方法が提供される。
【００２５】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記モビリティアンカポイントが前記モバイルノードの前記大局的なアドレスあてのパケットを前記モバイルノードに転送する場合、前記パケットに前記アドレスリストを付加するとともに、前記パケットをカプセル化して、カプセル化パケットのあて先アドレスに次のホップに位置する前記モバイルルータの前記局所的なアドレスを設定するパケット転送ステップを有する。
【００２６】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記カプセル化パケットに付加されるルーティングヘッダ内にアドレスリストが挿入される。
【００２７】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点に位置する前記モバイルルータは、前記カプセル化パケットを転送する際に、前記アドレスリストを参照して、前記カプセル化パケットのあて先アドレスを、前記アドレスリストの所定の箇所に存在する前記モバイルルータの前記局所的なアドレスと交換するあて先アドレス交換ステップを有する。
【００２８】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記モバイルノードが、前記アドレスリストを取得するアドレスリスト取得ステップと、
前記モバイルノードが、前記モビリティアンカポイントを経由するパケットの送信を行う際に、前記アドレスリストを逆順にした逆順アドレスリストを前記パケットに付加するとともに、前記モビリティアンカポイントをあて先アドレスに設定したカプセル化パケットで前記パケットをカプセル化して送信するパケット送信ステップとを、
有する。
【００２９】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記カプセル化パケットに付加されるリバースルーティングヘッダ内に前記逆順アドレスリストが挿入される。
【００３０】
さらに、本発明のパケット転送制御方法は、上記の構成に加えて、前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点に位置する前記モバイルルータは、前記カプセル化パケットを転送する際に、前記アドレスリストを参照して、前記カプセル化パケットの送信元アドレスを、自身の前記局所的なアドレスと交換する送信元アドレス交換ステップを有する。
【００３１】
また、上記の目的を達成するため、本発明のパケット転送制御装置は、階層的なネットワークの管理を行うモビリティアンカポイントが有するパケット転送制御装置であって、
配下のネットワーク内における通信ノードの位置を特定する局所的なアドレスと、前記通信ノードが外部のネットワークとの通信を行う際に利用される大局的なアドレスとが関連付けられたアドレス対応情報を保持する登録テーブル格納手段と、
前記登録テーブル格納手段に前記アドレス対応情報が登録されているモバイルルータの配下に存在するモバイルネットワークのプレフィックスを保持するプレフィックス格納手段と、
前記モバイルルータの前記プレフィックスに基づいて、前記モバイルノードと前記モビリティアンカポイントとの間の経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを生成する中間アドレスリスト生成手段とを有する。
【００３２】
さらに、本発明のパケット転送制御装置は、上記の構成に加えて、前記モバイルノードの前記大局的なアドレスあてのパケットを前記モバイルノードに転送する場合、前記パケットに前記アドレスリストを付加するとともに、前記パケットをカプセル化するカプセル化手段と、
前記カプセル化手段で生成されたカプセル化パケットのあて先アドレスに次のホップに位置する前記モバイルルータの前記局所的なアドレスを設定するアドレス設定手段とを、  有する。
【００３３】
また、上記の目的を達成するため、本発明のパケット転送制御装置は、モバイルネットワークを配下に有するモバイルルータのパケット転送制御装置であって、
上位に存在するモビリティアンカポイントから、複数のアドレスを含むアドレスリストが付加されたカプセル化パケットを受信するパケット受信手段と、
前記アドレスリストを参照して、前記カプセル化パケットのあて先アドレスを、前記アドレスリストの所定の箇所に存在する前記モバイルルータの前記局所的なアドレスと交換するあて先アドレス交換手段と、
前記あて先アドレスが交換された前記カプセル化パケットを送信するパケット送信手段とを、
有する。
【００３４】
また、上記の目的を達成するため、本発明のパケット転送制御装置は、モバイルネットワークを配下に有するモバイルルータのパケット転送制御装置であって、
下位に存在するモバイルノードから、複数のアドレスを含むアドレスリストが付加されたカプセル化パケットを受信するパケット受信手段と、
前記アドレスリストを参照して、前記カプセル化パケットの送信元アドレスを、前記アドレスリスト内の自身のアドレスと交換する送信元アドレス交換手段と、
前記送信元アドレスが交換された前記カプセル化パケットを送信するパケット送信手段とを、
有する。
【００３５】
また、上記の目的を達成するため、本発明の通信ノードは、モビリティアンカポイントの管理下に存在するモバイルルータによって形成されたモバイルネットワーク内の通信ノードであって、
前記モビリティアンカポイントから前記通信ノードへの経路の中継点となる１つ又は複数のモバイルルータのアドレスリストを取得するアドレスリスト取得手段と、
前記モビリティアンカポイントを経由するパケットの送信を行う際に、前記アドレスリストを逆順にした逆順アドレスリストを前記パケットに付加するとともに、前記モビリティアンカポイントをあて先アドレスに設定したカプセル化パケットで前記パケットをカプセル化して送信するパケット送信手段とを、
有する。
【発明の効果】
【００３６】
本発明は、上記の構成を有しており、ＭＡＰの配下に複数のモバイルルータが連なったネスト状態において、モバイルルータの配下に存在するモバイルノードが送受信を行うパケットを転送する際に必要となるカプセル化の回数を減少させるという効果を有している。
【発明を実施するための最良の形態】
【００３７】
以下、図面を参照しながら、本発明の実施の形態について説明する。
【００３８】
本発明では、モバイルネットワークの内部でネスト状態（nesting：入れ子状態、ネスティング）にあるモバイルノードに関して、モビリティアンカポイント（ＭＡＰ）が、複数のレベルのトンネルカプセル化を行う必要をなくすために使用される方法が開示される。基本的には、ＭＡＰが、登録されたモバイルルータに関連するプレフィックス情報に基づいて、モバイルノードに到達可能とする中間アドレスのリストの構成を行う。そして、モバイルノードへの転送を必要とするパケットが到着した場合には、ルーティングヘッダ内に中間アドレスのリストが置かれる。また、さらに、この中間アドレスのリストはモバイルノードに伝送され、モバイルノードは、ＭＡＰを通じてパケットを転送する必要がある場合に、この中間アドレスのリストをリバースルーティングヘッダに置くことが可能である。
【００３９】
図１に図示されている構成の場合、モバイルノードＭＮ１５０がＭＡＰ１２０に登録される際に、ＭＡＰ１２０が、モバイルルータＭＲ１４０及びＭＲ１４２のプレフィックス情報に基づいて、モバイルノードＭＮ１５０に到達可能とする中間アドレスを推定する。なお、この中間アドレスのリストは、モバイルルータ１４０のＬＣｏＡ、モバイルルータ１４２のＬＣｏＡ、ＭＮ１５０のＬＣｏＡであることが分かる。この中間アドレスのリストはＭＮ１５０に伝えられる。
【００４０】
図４には、ルーティングヘッダ４１０を有するパケット４００のメッセージフォーマットが示されている。送信元アドレスフィールド４０２には、送信者のアドレスが含まれており、あて先アドレスフィールド４０４には、次の中間的なあて先のアドレスが含まれている。
【００４１】
また、ルーティングヘッダ４１０のタイプフィールド４１２によって、これがルーティングヘッダであることが示されており、長さフィールド４１４には、８オクテット単位によるルーティングヘッダ４１０のサイズが含まれている。また、セグメント残りフィールド４１６には、ルーティングヘッダ４１０内の未処理のアドレス４１８の数が与えられる。なお、ルーティングヘッダ内のアドレスの数は動的であり、図４には、ｎ＋１をルーティングヘッダ内のアドレス数として、アドレス４１８−０、４１８−１から４１８−ｎまでのアドレスによって示されている。
【００４２】
また、ルーティングヘッダがどのように作用するかを例示するため、図５に簡単な例を示す。ここでは、アドレスＡを持つノード４２０が、アドレスＤを持つノード４５０にパケットを送信する。ノード４２０は、パケットにルーティングヘッダを挿入し、その結果、パケットは、アドレスＢを持つノード４３０、アドレスＣを持つノード４４０を経由して転送される。初期状態のパケットの内容は、パケットのスナップショット４２５に示されているものである。
【００４３】
ここで、送信元アドレス４０２にはアドレスＡが含まれており、あて先アドレス４０４には最初の中間アドレスであるアドレスＢが含まれている。ルーティングヘッダ４１０のセグメント残りフィールド４１６には、未到達の中間アドレスがあと２つ存在する旨を示す数字の２が含まれている。また、ルーティングヘッダ４１０のアドレス［０］フィールド４１８−０には、アドレスＣが含まれており、ルーティングヘッダ４１０のアドレス［１］フィールド４１８−１には、アドレスＤが含まれている。
【００４４】
ノード４３０は、このパケットを受信すると、ルーティングヘッダ４１０には未処理のアドレスがまだ存在していることを把握する。したがって、ノード４３０は、次の未処理のアドレス（アドレスＣ）とあて先アドレスフィールド４０４とを交換して、セグメント残りフィールド４１６をデクリメントする。これにより、ノード４３０から送信されたパケットの内容は、パケットのスナップショット４３５に示されるようになる。
【００４５】
ここで、送信元アドレス４０２にはアドレスＡが含まれており、あて先アドレス４０４には次の中間アドレスＣが含まれている。また、ルーティングヘッダ４１０のセグメント残りフィールド４１６には、未到達の中間アドレスがあと１つ存在する旨を示す数字の１が含まれている。また、ルーティングヘッダ４１０のアドレス［０］フィールド４１８−０には、アドレスＢが含まれており、ルーティングヘッダ４１０のアドレス［１］フィールド４１８−１には、アドレスＤが含まれている。
【００４６】
また、ノード４４０は、このパケットを受信すると、ルーティングヘッダ４１０には未処理のアドレスがまだ１つ存在していることを把握する。したがって、ノード４４０は、次の未処理のアドレス（アドレスＤ）とあて先アドレスフィールド４０４とを交換して、セグメント残りフィールド４１６をデクリメントする。これにより、ノード４４０から送信されるパケットの内容は、パケットスナップショット４４５に示されるようになる。
【００４７】
ここで、送信元アドレス４０２にはアドレスＡが含まれており、あて先アドレス４０４には次の（かつ最後の）中間アドレスＤが含まれている。また、ルーティングヘッダ４１０のセグメント残りフィールド４１６には、すべての中間アドレスに到達した旨を示す数字の０が含まれている。また、ルーティングヘッダ４１０のアドレス［０］フィールド４１８−０には、アドレスＢが含まれており、ルーティングヘッダ４１０のアドレス［１］フィールド４１８−１には、アドレスＣが含まれている。ノード４５０は、このパケットを受信すると、セグメント残りフィールド４１６が既に０なので、自身が最終あて先であることを把握する。
【００４８】
また、図６には、リバースルーティングヘッダ５１０を有するパケット５００のメッセージフォーマットが示されている。送信元アドレスフィールド５０２には、送信者のアドレスが含まれており、あて先アドレスフィールド５０４には、次の中間的な送信者のアドレスが含まれている。また、リバースルーティングヘッダ５１０のタイプフィールド５１２によって、これがリバースルーティングヘッダであることが示されており、長さフィールド５１４には、８オクテット単位によるリバースルーティングヘッダ５１０のサイズが含まれている。また、セグメント残りフィールド５１６には、リバースルーティングヘッダ５１０内の未処理のアドレス５１８の数が与えられる。なお、リバースルーティングヘッダ内のアドレスの数は動的であり、図６には、ｎ＋１をリバースルーティングヘッダ内のアドレス数として、アドレス５１８−０、５１８−１から５１８−ｎまでのアドレスによって示されている。
【００４９】
リバースルーティングヘッダは、ルーティングヘッダとほぼ同一の方法で作用するが、中間あて先アドレスを格納する代わりに、中間送信元アドレスを格納する。なお、これは、パケットの送信元アドレスが特定のプレフィックスに属していない場合に、中間ルータが特定のネットワークから受信したパケットを破棄する可能性があるイングレスフィルタリングから逃れるために必要となる。
【００５０】
次に、リバースルーティングヘッダがどのように作用するかを例示するため、図７に簡単な例を示す。ここでは、アドレスＡを持つノード５２０が、アドレスＤを持つノード５５０にパケットを送信する。ノード５２０は、ノード５５０にパケットを届けるためには、アドレスＢを持つノード５３０と、アドレスＣを持つノード５４０とを経由してパケットが送られることを知っており、パケットにリバースルーティングヘッダを挿入する。初期状態のパケットの内容は、パケットのスナップショット５２５に示されているものである。
【００５１】
ここで、送信元アドレス５０２には最初の送信者のアドレスＡが含まれており、あて先アドレス５０４にはアドレスＤが含まれている。また、リバースルーティングヘッダ５１０のセグメント残りフィールド５１６には、未到達の中間アドレスがあと２つ存在する旨を示す数字の２が含まれている。また、リバースルーティングヘッダ５１０のアドレス［０］フィールド５１８−０には、アドレスＢが含まれており、リバースルーティングヘッダ５１０のアドレス［１］フィールド５１８−１には、アドレスＣが含まれている。
【００５２】
また、ノード５３０は、このパケットを受信すると、リバースルーティングヘッダ５１０には未処理のアドレスがまだ存在していることを把握する。したがって、ノード５３０は、次の未処理のアドレス（アドレスＣ）と送信元アドレスフィールド５０２とを交換して、セグメント残りフィールド５１６をデクリメントする。これにより、ノード５３０から送信されるパケットの内容は、パケットスナップショット５３５に示されるようになる。
【００５３】
ここで、送信元アドレス５０２にはアドレスＢが含まれており、あて先アドレス５０４にはアドレスＤが含まれている。また、リバースルーティングヘッダ５１０のセグメント残りフィールド５１６には、未到達の中間アドレスがあと１つ存在する旨を示す数字の１が含まれている。また、リバースルーティングヘッダ５１０のアドレス［０］フィールド５１８−０には、アドレスＡが含まれており、リバースルーティングヘッダ５１０のアドレス［１］フィールド５１８−１には、アドレスＣが含まれている。
【００５４】
次に、ノード５４０は、このパケットを受信すると、リバースルーティングヘッダ５１０には未処理のアドレスがまだ１つ存在していることを把握する。したがって、ノード５４０は、次の未処理のアドレス（アドレスＤ）と送信元アドレスフィールド５０２とを交換して、セグメント残りフィールド５１６をデクリメントする。これにより、ノード５４０から送信されたパケットの内容は、パケットスナップショット５４５に示されるようになる。
【００５５】
ここで、送信元アドレス５０２にはアドレスＣが含まれており、あて先アドレス５０４にはアドレスＤが含まれている。また、リバースルーティングヘッダ５１０のセグメント残りフィールド５１６には、すべての中間アドレスに到達した旨を示す数字の０が含まれている。また、リバースルーティングヘッダ５１０のアドレス［０］フィールド５１８−０には、アドレスＡが含まれており、リバースルーティングヘッダ５１０のアドレス［１］フィールド５１８−１には、アドレスＢが含まれている。
【００５６】
また、ルーティングヘッダを使用するために、本発明では、ＭＡＰ１２０が図８に図示されているような機能アーキテクチャを有する必要がある。ＭＡＰ１２０は、下位ネットワークインタフェース６１０、ルーティング部６２０、ルーティングヘッダ処理部６２５、登録部６３０、プレフィックステーブル６４０、登録テーブル６５０を有している。
【００５７】
下位ネットワークインタフェース６１０は、ＭＡＰ１２０がパケット交換型データ通信ネットワーク上の他のノードと通信を行うことができるようにするために必要なネットワーキングハードウェア、ソフトウェア、プロトコルのすべてを表す機能ブロックである。例えば、国際標準化機構（ＩＳＯ：International Standards Organization）の開放型システム間相互接続（ＯＳＩ：Open System Interconnect ）の７レイヤモデルにおいては、下位ネットワークインタフェース６１０は、物理層及びデータリンク層を包含するものである。ネットワーク１００やアクセスネットワーク１０２から受信したパケットは、パケット経路６６２やパケット経路６６４を通り、下位ネットワークインタフェース６１０によって処理される。パケットが物理アドレスによってＭＡＰ１２０をあて先とする場合には、パケットは、パケット経路６６６を通ってルーティング部６２０に渡される。
【００５８】
また、ルーティング部６２０は、インターネットワーキングレイヤのルーティングに関連するすべての処理を取り扱う。ＯＳＩモデルの下では、ルーティング部６２０は、ネットワークレイヤに関するあらゆる機能を含んでいる。ルーティング部６２０は、最終あて先に基づいて、次のホップにパケットを転送する機能を有している。正確な動作を行うために、ルーティング部６２０は、登録テーブル６５０を用いてＲＣｏＡとＬＣｏＡとのマッピングをチェックするために、シグナル経路６７６を通じて、登録テーブル６５０を参照する必要がある。この必要が生じた場合には、ルーティングヘッダ処理部６２５は、ルーティングヘッダの構築／検証のためにシグナル経路６７４を通じて問い合わせを行う。
【００５９】
また、ルーティングヘッダ処理部６２５は、ルーティングヘッダを適切に構築するために、登録テーブル６５０及びプレフィックステーブル６４０に問い合わせを行う必要があり、これは、シグナル経路６８２、６８４を通じて行われる。受信パケットがモバイルノードからの登録メッセージである場合には、メッセージはシグナル経路６７２を通じて登録部６３０に渡され、そこで更なる処理が行われる。
【００６０】
また、登録部６３０は、モバイルノードの登録に関する情報を保持する機能を有している。モバイルノードが登録を行った場合に、登録部６３０は、ＲＣｏＡとＬＣｏＡとのマッピングを生成し、シグナル経路６７８を通じて登録テーブル６５０にそのマッピングを格納する。また、さらに、モバイルノードがモバイルルータの場合には、登録部６３０はモバイルルータに接続されているモバイルネットワークのプレフィックス情報を保持する。プレフィックス情報は、シグナル経路６８０を通じてプレフィックステーブル６４０に格納される。
【００６１】
図９には、プレフィックステーブル６４０の内容が示されている。このテーブルは、基本的に、テーブルの各列がモバイルネットワークに関するプレフィックスのエントリに対応する論理的なデータ構造を有している。各エントリは、少なくとも、モバイルネットワークのアドレスプレフィックスを格納するプレフィックスフィールド６４２、アドレスのプレフィックスのビット数を格納するプレフィックス長フィールド６４４、モバイルネットワークに接続されているモバイルルータのＲＣｏＡを格納するＲＣｏＡフィールド６４６を有している。
【００６２】
なお、プレフィックステーブル６４０は、ＲＣｏＡフィールド６４６を含むように記載されているが、プレフィックステーブル６４０内に、ＲＣｏＡの代わりにＬＣｏＡを格納してもよいことは当業者にとって明らかである。また、プレフィックステーブル６４０内のエントリを登録テーブル６５０内のマッピングにリンクする識別子のフォームも必要である。また、さらに、プレフィックス長の推察が可能な他の手段が存在する場合には、プレフィックステーブル６４０からプレフィックス長フィールド６４４が省略されてもよいことも当業者にとっては明らかである。１つの例としては、プレフィックスのビット数が定数であるように標準化する機構が挙げられる。また、別の例としては、プレフィックス内のビットの特定のパターンによってプレフィックス長が示されてもよい。なお、プレフィックスが、モバイルルータによって所有されているものであるか、あるいは他のエンティティ（例えばＭＡＰ１２０自身）に代表（委譲）されているものであるかによらず、その一般性が失われることはない。
【００６３】
また、図１０には、登録テーブル６５０の内容が示されている。このテーブルは、基本的に、テーブルの各列がモバイルノードに関するマッピングのエントリに対応する論理的なデータ構造を有している。各エントリは、少なくとも、モバイルノードのＲＣｏＡを格納するＲＣｏＡフィールド６５２、モバイルノードのＬＣｏＡを格納するＬＣｏＡフィールド６５４を有している。
【００６４】
次に、上述のＭＡＰ１２０の機能アーキテクチャに基づいて、本発明の目的を達成するための動作について説明する。ＭＡＰ１２０がモバイルノードから登録メッセージを受信した場合、登録部６３０は、モバイルノードのＬＣｏＡとＲＣｏＡとのマッピングを格納するための適切なエントリを登録テーブル６５０に挿入する。また、モバイルノードがモバイルルータである場合には、登録部６３０は、プレフィックス情報とモバイルルータのＲＣｏＡとのマッピングを格納するためのエントリをプレフィックステーブル６４０に挿入する。さらに、ルーティングヘッダ処理部６２５は、モバイルノードに到達可能とする中間アドレスのリストを構成する。
【００６５】
図１１には、モバイルノードのＲＣｏＡが与えられた場合に、ルーティングヘッダ処理部６２５が、モバイルノードに到達可能とする中間アドレスのリストを構築する方法に関するフローチャートが示されている。 なお、図１１に示されるアルゴリズムでは、モバイルノードに到達可能とする中間アドレスのリストが逆の順序で与えられることに注意する必要がある。ステップ９１０において、まず、中間アドレスの空のリスト（アドレスリスト）が準備される。また、ステップ９２０に示されるように、モバイルノードのＲＣｏＡを含むように、仮のアドレス格納（tmp）が設定される。そして、ステップ９３０以降のループが開始される。
【００６６】
ステップ９３０では、登録テーブル６５０内に、仮のアドレス格納内に含まれるアドレスに一致するＲＣｏＡフィールド６５２を有するエントリがあるか否かのチェックが行われる。一致するアドレスが発見されない場合には、アルゴリズムは終了となり、ステップ９７０で中間アドレスのリストが逆の順序で返される。一方、一致するアドレスが発見された場合には、ステップ９４０に進み、登録テーブル６５０内の一致するエントリのＬＣｏＡフィールド６５４内に含まれるＬＣｏＡが、中間アドレスのリストに追加される。そして、ステップ９５０において、プレフィックスフィールド６４２及びプレフィックス長フィールド６４４に従って、プレフィックステーブル６４０内の各エントリのプレフィックス情報に関して、このＬＣｏＡと一致するプレフィックスが存在するか否かのチェックが行われる。
【００６７】
ここで、一致するエントリが存在しない場合には、ループを出てステップ９７０に進み、中間アドレスのリストが逆の順序で返される。また、プレフィックステーブル６４０から一致するエントリが発見された場合には、ステップ９６０に示されるように、一致したエントリのＲＣｏＡフィールド６４６に含まれるアドレスが仮のアドレス格納に格納される。そして、アルゴリズムは、再びステップ９３０に戻る。
【００６８】
中間アドレスのリストが得られると、ＭＡＰ１２０は、このリストを用いて、モバイルノードへの返答を行うための登録レスポンスにルーティングヘッダを挿入する。このルーティングヘッダによって、登録レスポンスは、リスト内の中間アドレスを経由して、モバイルノードに到達する。モバイルノードは、この登録レスポンスを受信した場合に、登録レスポンス内のルーティングヘッダのアドレスフィールド４１８を逆の順序で格納することが可能である。この逆順によって、モバイルノードがＭＡＰ１２０にパケットを送信する際のパケット転送に必要となるリバースルーティングヘッダに使用される順序が得られる。
【００６９】
例えば、図１に図示されているネットワーク構成において、モバイルルータＭＲ１４０及びＭＲ１４２がＭＡＰ１２０に登録を行い、ＭＡＰ１２０のプレフィックステーブル６４０内にモバイルネットワーク１０４及びモバイルネットワーク１０６のプレフィックス情報が格納されている場合には、ＭＡＰ１２０からモバイルノードＭＮ１５０に送信されるトンネルパケット１０００の内容は、図１２に示されるようになり、ＭＮ１５０からＭＡＰ１２０に送信されるトンネルパケット１０５０の内容は、図１３に示されるようになる。
【００７０】
図１２に示されるトンネルパケット１０００の内容は、ＭＡＰ１２０によって送信された直後のパケットのスナップショットである。すなわち、ＭＲ１４０及びＭＲ１４２は、まだ、ルーティングヘッダ１０１０の処理を行っていない。送信元アドレスフィールド１００２には、ＭＡＰ１２０のアドレスが含まれており、あて先アドレスフィールド１００４には、最初の中間アドレス（モバイルルータＭＲ１４０のＬＣｏＡ）が含まれている。また、ルーティングヘッダ１０１０において、セグメント残りフィールド１０１６には数字の２が含まれており、アドレス［０］フィールド１０１８−０にはモバイルルータＭＲ１４２のＬＣｏＡが含まれており、アドレス［１］フィールド１０１８−１にはモバイルノードＭＮ１５０のＬＣｏＡが含まれている。
【００７１】
なお、ＭＮ１５０がパケット１０００を受信した場合には、ルーティングヘッダ１０１０の内容は、セグメント残りフィールド１０１６が数字のゼロ、アドレス［０］フィールド１０１８−０がモバイルルータＭＲ１４０のＬＣｏＡ、アドレス［１］フィールド１０１８−１がモバイルルータＭＲ１４２のＬＣｏＡ、あて先アドレスフィールド１００４がモバイルノードＭＮ１５０のＬＣｏＡとなることは明らかである。
【００７２】
また、図１３に示されるトンネルパケット１０５０の内容は、ＭＮ１５０によって送信された直後のパケットのスナップショットである。すなわち、ＭＲ１４０及びＭＲ１４２は、まだ、ルーティングヘッダ１０６０の処理を行っていない。送信元アドレスフィールド１０５２には、ＭＮ１５０のＬＣｏＡが含まれており、あて先アドレスフィールド１０５４には、ＭＡＰ１２０のアドレスが含まれている。また、リバースルーティングヘッダ１０６０には、受信したルーティングヘッダ１０１０のアドレスが逆の順序で含まれており、セグメント残りフィールド１０６６には数字の２が含まれており、アドレス［０］フィールド１０６８−０にはモバイルルータＭＲ１４２のＬＣｏＡが含まれており、アドレス［１］フィールド１０６８−１にはモバイルルータＭＲ１４０のＬＣｏＡが含まれている。
【００７３】
また、図１４には、ＭＡＰ１２０がＭＡＰ１２０によって管理されているアクセスネットワーク１０２に属するアドレスに送信されたパケットを受信した場合のルーティング部６２０の処理に関するフローチャートが示されている。なお、ここでは、ＲＣｏＡをＬＣｏＡにマッピングするために、ＭＡＰ１２０によって行われる処理が示されている。
【００７４】
ステップ１１１０において、登録テーブル６５０のＲＣｏＡフィールド６５２に関して、入力パケットのあて先アドレスと一致するエントリが存在するか否かのチェックが行われる。一致するエントリが発見されなかった場合には、ステップ１１２０に進み、通常の方法で入力パケットの転送が行われる。一方、一致するエントリが発見された場合には、ステップ１１３０、１１４０、１１５０に進む。
【００７５】
ステップ１１３０では、ＲＣｏＡアドレス（すなわち、入力パケットのあて先アドレス）がルーティングヘッダ処理部６２５に渡され、図１１に示すアルゴリズムを使用して中間アドレスのリストが取得される。次に、ステップ１１４０では、入力パケットはトンネルパケットにカプセル化され、トンネルパケットのあて先アドレスには、ステップ１１３０で生成された中間アドレスのリスト内の末尾のアドレスが設定される。なお、不図示ではあるが、トンネルパケットの送信元アドレスにはＭＡＰ１２０のアドレスが設定されることは明白である。
【００７６】
そして、ステップ１１５０において、中間アドレスのリストに、アドレスが１つ以上含まれているか否かのチェックが行われる。アドレスが含まれていない場合には、ルーティングヘッダの必要性はなく、ステップ１１８０に示すように、トンネルパケットは送出される。一方、アドレスが１つ以上存在する場合には、ステップ１１６０に進み、ルーティングヘッダが準備される。中間アドレスのリスト内のアドレスのうち、末尾のアドレス（これは、既にトンネルパケットのあて先アドレスフィールドとして使用済み）を除いたすべてのアドレスは、逆順でルーティングヘッダ内に設定される。そして、ステップ１１７０に示されるように、ルーティングヘッダがトンネルパケットに付加されて、最終的に、ステップ１１８０において、トンネルパケットが送出される。
【００７７】
また、ルーティングヘッダ及びリバースルーティングヘッダに関しては、途中のモバイルルータが正しく処理を行うことが要求される。なお、ここでは、モバイルルータという用語は、完全又は部分的なモバイルルーティング機能を実現するノードを示す一般的な意味で使用している。ルーティングヘッダの処理に関しては、モバイルルータは、あて先アドレスがモバイルルータのアドレスである場合には、ルーティングヘッダが存在するか否かのチェックを行う必要がある。ルーティングヘッダが存在する場合には、ルーティングヘッダのセグメント残りフィールドがチェックされ、ゼロではないことの確認が行われる。
【００７８】
なお、セグメント残りフィールドがゼロである場合には、パケットはモバイルルータ自身をあて先とする。一方、セグメント残りフィールドがゼロではない場合には、モバイルルータは、ルーティングヘッダ内の次の未処理のアドレスとあて先アドレスとを交換するとともに、セグメント残りフィールドをデクリメントする。そして、パケットは新たなあて先に転送される。
【００７９】
また、リバースルーティングヘッダの処理に関しては、モバイルルータは、あて先アドレスがＭＡＰのアドレスである場合には、リバースルーティングヘッダが存在するか否かのチェックを行う必要がある。リバースルーティングヘッダが存在する場合には、リバースルーティングヘッダのセグメント残りがチェックされ、ゼロではないことの確認が行われる。なお、セグメント残りフィールドがゼロである場合には、パケットは変更されることなく転送される。
【００８０】
一方、セグメント残りフィールドがゼロではない場合には、モバイルルータは、リバースルーティングヘッダ内の次の未処理のアドレスがモバイルルータのアドレスか否かのチェックを行う。ここで、モバイルルータのアドレスではない場合には、パケットは変更されることなく転送される。一方、モバイルルータのアドレスである場合には、モバイルルータは、リバースルーティングヘッダ内の次の未処理のアドレスと送信元アドレスとを交換するとともに、セグメント残りをデクリメントして、パケットを転送する。
【００８１】
ルーティングヘッダ及びリバースルーティングヘッダを使用することによって、本発明の目的は達成される。例えば、図１に示すネットワーク構成を例にとって説明する。図１５には、ＭＲ１４０、ＭＲ１４２、ＭＮ１５０によって行われる登録に関するメッセージシーケンスが示されている。なお、ホームエージェントに送信されるバインディングアップデートに関しては簡素化して省略する。また、図１５では、登録メッセージはReg、応答メッセージはRes、トンネルパケットはtunnel、カプセル化はＴＥ、デカプセル化ＴＤ、ルーティングヘッダの処理はＲＨ、リバースルーティングヘッダの処理はＲＲＨと表記する。
【００８２】
モバイルルータＭＲ１４０が登録メッセージ１２０１をＭＡＰ１２０に送信した場合、ＭＡＰ１２０は、ＭＲ１４０のＬＣｏＡ及びＲＣｏＡのマッピングを含むエントリを自身の登録テーブル６５０に追加する。さらに、モバイルネットワーク１０４のプレフィックス情報を含むエントリも、ＭＡＰ１２０のプレフィックステーブル６４０に追加される。そして、ＭＡＰ１２０は、成功を示す登録レスポンス１２０２による返答を行う。
【００８３】
また、モバイルルータＭＲ１４２がＭＡＰ１２０に対して登録メッセージ１２１１を送信した場合、ＭＲ１４０は、このメッセージを受信（intercept）する。メッセージ１２１１にはリバースルーティングヘッダが存在しないので、ＭＲ１４０は、トンネルカプセル化（ＴＥ：Tunnel Encapsulation）処理１２１２に示されるように、パケットをカプセル化して、そのホームエージェント１１０に送信する。カプセル化１２１２ではＭＲ１４０のＲＣｏＡが使用されるので、ＭＡＰ１２０への更なるカプセル化１２１３が必要となる。これにより、トンネルパケット１２１４が生じる。
【００８４】
ＭＡＰ１２０は、トンネルデカプセル化（ＴＤ：Tunnel Decapsulation）処理１２１５に示されるように、パケットのデカプセル化を行い、内部パケット１２１６をＨＡ１１０に転送する。ＨＡ１１０は、トンネルパケット１２１６をデカプセル化し（処理１２１７）、ＭＡＰ１２０に対して、最内部の登録リクエスト１２１８（メッセージ１２１１と同一）を転送する。ＭＡＰ１２０は、ＭＲ１４２のＬＣｏＡ及びＲＣｏＡのマッピングを含むエントリを自身の登録テーブル６５０に追加する。また、モバイルネットワーク１０６のプレフィックス情報を含むエントリも、ＭＡＰ１２０のプレフィックステーブル６４０に追加される。
【００８５】
さらに、ＭＲ１４２のＬＣｏＡがモバイルネットワーク１０４に関連するプレフィックスから構成されているので、ＭＡＰ１２０は、ＭＲ１４２に返答する登録レスポンス１２１９内にルーティングヘッダを挿入する。図１１に示すアルゴリズムから構築されるルーティングヘッダには、１つのアドレス（ＭＲ１４２のＬＣｏＡ）のみが含まれており、パケットの送信元アドレスには、ＭＲ１４０のＬＣｏＡが設定されている。ＭＲ１４０は、あて先アドレスをルーティングヘッダ内に１つのみ存在するアドレスと交換することによってルーティングヘッダの処理を行い（処理１２２０）、ＭＲ１４２にパケット１２２１を転送する。これにより、ＭＲ１４２がこのレスポンス１２２１を受信する際、ルーティングヘッダにはＭＲ１４０のＬＣｏＡのアドレスが含まれており、あて先アドレスにはＭＲ１４２のＬＣｏＡが設定されている。
【００８６】
モバイルノードＭＮ１５０がＭＡＰ１２０に対して登録メッセージ１２３１を送信した場合、ＭＲ１４２は、このメッセージを受信（intercept）する。メッセージ１２３１にはリバースルーティングヘッダが存在しないので、ＭＲ１４２は、カプセル化処理１２３２に示されるように、パケットをカプセル化して、そのホームエージェント１１２に送信する。カプセル化１２３２ではＭＲ１４２のＲＣｏＡが使用されるので、ＭＡＰ１２０への更なるカプセル化１２３３が必要となる。これにより、トンネルパケット１２３４が生じる。
【００８７】
このトンネルパケット１２３４には、アドレス（ＭＲ１４０のＬＣｏＡ）を１つのみ有するリバースルーティングヘッダも挿入されている。ＭＲ１４０は、このパケット１２３４を受信（intercept）し、送信元アドレスをリバースルーティングヘッダ内のアドレスに交換することによってリバースルーティングヘッダの処理を行い（処理１２３５）、パケット１２３６はＭＡＰ１２０を経由する。ＭＡＰ１２０は、パケットをデカプセル化して（処理１２３７）、内部パケット１２３８をＨＡ１１２に転送する。ＨＡ１１２はトンネルパケット１２３８をデカプセル化して（処理１２３９）、最内部の登録リクエスト１２４０（メッセージ１２３１と同一）をＭＡＰ１２０に転送する。
【００８８】
ＭＡＰ１２０は、ＭＮ１５０のＬＣｏＡ及びＲＣｏＡのマッピングを含むエントリを自身の登録テーブル６５０に追加する。また、ＭＮ１５０のＬＣｏＡがモバイルネットワーク１０６に関連するプレフィックスから構成されているので、ＭＡＰ１２０は、ＭＮ１５０に返答する登録レスポンス１２４１内にルーティングヘッダを挿入する。図１１に示すアルゴリズムから構築されるルーティングヘッダには、図１２に示す内容が含まれている。
【００８９】
ＭＲ１４０は、あて先アドレスをルーティングヘッダ内の最初のアドレスと交換することによってルーティングヘッダの処理を行い（処理１２４２）、ＭＲ１４２にパケット１２４３を転送する。ＭＲ１４２は、あて先アドレスをルーティングヘッダ内の次のアドレスと交換することによってルーティングヘッダの処理を行い（処理１２４４）、ＭＮ１５０にパケット１２４５を転送する。
【００９０】
また、ＣＮ１６０がＭＮ１５０に対してパケット１２５１を送信する場合、パケット１２５１は、ＭＮ１５０のホームアドレスをあて先とするので、まずＨＡ１１４を経由する。ＨＡ１１４は、処理１２５２に示されるように、パケット１２５１をＭＮ１５０のＲＣｏＡにトンネルする。このトンネルパケット１２５３は、ＭＡＰ１２０に到達する。次に、ルーティング部６２０によって図１４に示されるアルゴリズムが使用され、トンネルパケット１２５３は、さらに２つめのトンネルによって、図１２に示すルーティングヘッダ１０１０と同一のルーティングヘッダでカプセル化される（処理１２５４）。この２つめのトンネルパケット１２５５は、ＭＲ１４０のＬＣｏＡに発送される。次に、ＭＲ１４０は、あて先アドレスをルーティングヘッダ内の最初のアドレスと交換し（処理１２５６）、その結果として生じるパケット１２５７をＭＲ１４２のＬＣｏＡに転送する。
【００９１】
次に、ＭＲ１４２は、あて先アドレスをルーティングヘッダ内の２番目のアドレスと交換し（処理１２５８）、その結果として生じるパケット１２５９をＭＮ１５０のＬＣｏＡに転送する。最後に、ＭＮ１５０は、データパケット１２５１を抽出するために、２回のデカプセル化を実行する（処理１２６０及び処理１２６１）。ＭＡＰ１２０からＭＮ１５０に到達するまでの間、パケットはカプセル化を１回しか受けていないことが分かる。これは、図３に示されるような３回の付加的なカプセル化に比べて、十分に低減されたと言える。
【００９２】
また逆に、ＭＮ１５０はＣＮ１６０にパケットを送信しようとする場合には、最初に処理１２７１に示されるように、自身のホームエージェント１１４に向けてパケットをカプセル化し、ＭＮ１５０のＲＣｏＡを送信元アドレスに設定する。さらに、ＭＮ１５０のＲＣｏＡが送信元アドレスに設定されたパケットは、転送のためにＭＡＰ１２０に向けてカプセル化されるので、２つめのカプセル化１２７２が必要となる。２つめのトンネルパケット１２７３には、ＭＮ１５０がリバースルーティングヘッダを挿入する。リバースルーティングヘッダの内容は、先に説明したＭＡＰ１２０からＭＮ１５０に送信されたルーティングヘッダを逆にすることによって得ることが可能である。したがって、２つめのトンネルパケット１２７３は、図１３に示されているパケット１０５０と似たものとなる。
【００９３】
２つめのトンネルパケット１２７３は、最初にＭＲ１４２に向けて発送される。ＭＲ１４２は、リバースルーティングヘッダを調べ、送信元アドレスフィールドをリバースルーティングヘッダの最初のアドレスと交換し（処理１２７４）、その結果として生じるパケット１２７５をＭＲ１４０に発送する。一方、ＭＲ１４０は、リバースルーティングヘッダを調べ、送信元アドレスフィールドをリバースルーティングヘッダの２番目のアドレスと交換し（処理１２７６）、その結果として生じるパケット１２７７を、アクセスルータＡＲ１３０を通じてＭＡＰ１２０に発送する。
【００９４】
次に、ＭＡＰ１２０は、リバースルーティングヘッダの正当性について検証を行い、パケットをデカプセル化して(処理１２７８)、最初のトンネルパケット１２７９をＨＡ１１４に転送する。ＨＡ１１４は、最初のトンネルパケットの正当性について検証を行い、パケットをデカプセル化して（処理１２８０）、最内部のデータパケット１２８１をＣＮ１６０に転送する。
【００９５】
なお、一見したところでは、リバースルーティングヘッダ及びルーティングヘッダの使用は、非特許文献４と同様に見えるかもしれない。しかしながら、当業者であれば、より詳細に調べれば、以下のように、本発明と非特許文献４との間に著しい差異があることが分かるであろう。
【００９６】
従来の技術では、リバースルーティングヘッダの送信者があらかじめリバースルーティングヘッダの内容を知る術はなく、代わりに、送信者は、中間ルータに、そのアドレスをリバースルーティングヘッダに適切に挿入してもらう。したがって、送信者は、現在のＩＰセキュリティ機構を用いて、リバースルーティングヘッダの内容を保護することは不可能である。これでは、受信者は、受信パケットの確実性や完全性を検証することができず、非常に危険である。一方、本発明では、送信者は、あらかじめリバースルーティングヘッダについて通知されるので、従来のＩＰセキュリティ機構を用いて、リバースルーティングヘッダが付加されて送信されるパケットを保護することが可能である。
【００９７】
また、図１５の説明では、リバースルーティングヘッダを導入する目的について疑問が生じるかもしれない。すなわち、経路に沿った中間ルータにパケットを直接送信させるルーティングヘッダとは異なり、リバースルーティングヘッダは追加の機能を有さない余分な処理のように思えるかもしれない。しかしながら、実際には、リバースルーティングヘッダの導入によって、下記の２つの目的が達成される。
【００９８】
（１）上流のモバイルルータに対して、このパケットをホームエージェントにトンネルしないように指示すること
（２）イングレスフィルタリングを受けないようにすること
【００９９】
１番目の目的に関しては、例えば、モバイルルータＭＲ１４２が、自身のモバイルネットワーク１０６内のあるノードからのパケットを受信する場合を考えてみる。この場合、モバイルルータＭＲ１４２は、どのパケットをホームエージェントＨＡ１１２にトンネルし、どのパケットを単に上流に向けて発送すべきであるかを把握する従来の方法は存在しないが、本発明におけるリバースルーティングヘッダの導入によって、モバイルルータは、パケットの識別を行うことが可能となる。
【０１００】
また、２番目の目的はイングレスフィルタリングによる廃棄を受けないようにすることである。例えば、ＭＮ１５０がリバースルーティングヘッダを付加しないでＭＡＰ１２０にパケットをトンネルする場合を考えてみる。パケットは、アドレスがモバイルネットワーク１０６のプレフィックスから構成されたＭＮ１５０のＬＣｏＡを送信元アドレスに有している。ＭＲ１４２の場合には、パケットを受信した後、このパケットはホームエージェントを経由すべきではないことが何らかの方法で把握される。したがって、ＭＲ１４２はパケットをモバイルネットワーク１０４に転送する。しかしながら、パケットの送信元アドレスはモバイルネットワーク１０４のプレフィックスから構成されていない。そのため、モバイルルータＭＲ１４０が、このパケットは更に転送されるべきであることを確実に把握していない場合には、イングレスフィルタリングに基づいて、このパケットは偽りのパケットであるとみなされて破棄される。
【０１０１】
上述の説明によれば、リバースルーティングヘッダは、パケットをＭＡＰに直接転送するように（ホームエージェントにトンネルする代わりに）、上流のモバイルルータに通知するために使用されるとともに、イングレスフィルタリングを受けないようにするために使用されることが分かる。なお、リバースルーティングヘッダに代わって、外部パケットに特別なシグナルを埋め込むことも可能である。この特別なシグナルを確認した上流のモバイルルータは、ホームエージェントに向けたパケットのカプセル化を行わず、さらに、イングレスフィルタリングを克服するために、上流のモバイルルータは、外部パケットの送信元アドレスを各自のＬＣｏＡで置換すべきである。ＩＰｖ６では、このような特別なシグナルは、例えばホップバイホップヘッダ（hop-by-hop header）に挿入されるルータ警告オプションによって実現可能である。なお、説明を簡単にするため、以降、この特別な信号を直接転送オプション（Direct-Forward option）又は単にＤＦオプションと呼ぶことにする。
【０１０２】
外部パケットは内部パケットをＭＡＰに発送する以外の目的を持たないので、上流のモバイルルータによる送信元アドレスの変更では、特に重要なセキュリティの脅威は生じない。図１６には、ＤＦオプションが使用された場合のメッセージシーケンス図が例示されている。なお、ここでは、ＭＮ１５０がＣＮ１６０にデータパケットを送信する場合の一部のみが示されている。
【０１０３】
まず、ＭＮ１５０は、処理１３７１に示されるように、ホームエージェント１１４へのパケットに関して、ＭＮ１５０のＲＣｏＡを送信元アドレスに設定してカプセル化する。このとき、ＭＮ１５０のＲＣｏＡを送信元アドレスに有するパケットはＭＡＰ１２０への転送のためにカプセル化されなくてはならないので、２つめのカプセル化１３７２が必要となる。ＭＮ１５０は、ＭＮ１５０のＬＣｏＡを送信元アドレスに有する２つめのトンネルパケット１３７３にＤＦオプションを挿入する。この２つめのトンネルパケット１３７３は、まずＭＲ１４２に発送される。ＭＲ１４２は、処理１３７４に示されるように、ＤＦオプションを調べて、送信元アドレスを自身のＬＣｏＡに変更し、その結果として生じるパケット１３７５をＭＲ１４０に発送する。なお、図１６において、ＤＦオプションの確認処理はＤＦと表記する。
【０１０４】
さらに、ＭＲ１４０は、処理１３７６で示されるように、ＤＦオプションを調べて、送信元アドレスを自身のＬＣｏＡに変更し、その結果として生じるパケット１３７７を、アクセスルータＡＲ１３０を通じてＭＡＰ１２０に発送する。そして、ＭＡＰ１２０はパケットをデカプセル化して（処理１３７８）、ＨＡ１１４に１つめのトンネルパケットを転送する。ＨＡ１１４は、１つめのトンネルパケットの正当性について検証し、パケットをデカプセル化して（処理１３８０）、最内部のデータパケット１３８１をＣＮ１６０に転送する。
【０１０５】
また、リバースルーティングヘッダやＤＦオプションを使用せず、上流のモバイルルータが、下流のモバイルノードから受信したパケットはホームエージェントにカプセル化されるべきではない旨と、送信元アドレスを上流のモバイルルータのＬＣｏＡに変更できる旨とを把握することができる手段を導入することも可能である。これは、ＭＡＰのサービスを利用するつもりである下流のモバイルノードに、別のプレフィックス（Separate Prefix）を持たせることによって実現される。この別のプレフィックス（以降、Ｓプレフィックスと呼ぶ）は、モバイルルータ自身によって所有されてもよく、あるいはアクセスネットワーク内の何らかのノード（ＭＡＰ自身であることも可能）によって委譲されてもよい。ルータ通知を送信する際に、上流のモバイルルータは特別なオプション内にこのＳプレフィックスを挿入する。これにより、ＭＡＰのサービスを利用するつもりであるモバイルノードのみが、このＳプレフィックスからＬＣｏＡを構成する。また、その他のノードは、単にこのＳプレフィックスを無視する。
【０１０６】
この動作について、図１に図示されているネットワークを参照しながら説明する。ここで、モバイルノードＭＮ１５０のＬＣｏＡが、モバイルネットワーク１０６のＳプレフィックスから構成されており、モバイルルータ１４２のＬＣｏＡが、モバイルネットワーク１０４のＳプレフィックスから構成されていると仮定する。図１７には、Ｓプレフィックスが使用されている場合のメッセージシーケンス図が示されている。なお、ここでは、ＭＮ１５０がＣＮ１６０にデータパケットを送信する場合の一部のみが示されている。
【０１０７】
まず、ＭＮ１５０は、処理１４７１に示されるように、ホームエージェント１１４へのパケットに関して、ＭＮ１５０のＲＣｏＡを送信元アドレスに設定してカプセル化する。このとき、ＭＮ１５０のＲＣｏＡを送信元アドレスに有するパケットはＭＡＰ１２０への転送のためにカプセル化されなくてはならないので、２つめのカプセル化１４７２が必要となる。２つめのトンネルパケット１４７３は、ＭＮ１５０のＬＣｏＡを送信元アドレスに有し、まずＭＲ１４２に発送される。ＭＲ１４２は、処理１４７４に示されるように、パケット１４７３の送信元アドレスがＳプレフィックスによって構成されているとともに、パケット１４７３のあて先アドレスがＭＡＰ１２０であることを確認して、送信元アドレスを自身のＬＣｏＡに変更し、その結果として生じるパケット１４７５をＭＲ１４０に発送する。なお、図１７において、Ｓプレフィックスの確認処理はＳＰと表記する。
【０１０８】
さらに、ＭＲ１４０は、処理１４７６で示されるように、パケット１４７５の送信元アドレスがＳプレフィックスによって構成されているとともに、パケット１４７５のあて先アドレスがＭＡＰ１２０であることを確認して、送信元アドレスを自身のＬＣｏＡに変更し、その結果として生じるパケット１４７７を、アクセスルータＡＲ１３０を通じてＭＡＰ１２０に発送する。そして、ＭＡＰ１２０はパケットをデカプセル化して（処理１４７８）、ＨＡ１１４に１つめのトンネルパケット１４７９を転送する。ＨＡ１１４は、１つめのトンネルパケット１４７９の正当性について検証し、パケットをデカプセル化して（処理１４８０）、最内部のデータパケット１４８１をＣＮ１６０に転送する。
【０１０９】
ＭＡＰ１２０がセキュリティに関連している場合には、ＭＡＰ１２０がパケットをグローバルなインターネット１００にパケットを転送する前に、管理下にあるアクセスネットワーク１０２から受信したパケットの正当性の検証を行うことが可能な正当性チェック方法が存在している。 図１８には、リバースルーティングヘッダが使用されている場合に実行可能な正当性チェック方法が示されている。また、図１９には、ＤＦオプション又はＳプレフィックスが使用されている場合に実行可能な正当性チェック方法が示されている。なお、図１８の正当性チェック方法と図１９の正当性チェック方法との間の差異は、わずか数ステップであり、同一のステップには同一の参照符号が付されている。
【０１１０】
リバースルーティングヘッダが使用されている場合、ＭＡＰ１２０は、リバースルーティングヘッダを含むとともにＭＡＰ１２０をあて先とするパケットの処理を行うためのアルゴリズム（図１８に図示）を使用することが可能である。ステップ１５１０において、まず、受信パケットが、カプセル化された内部パケットを含んでいるか否かのチェックが行われる。受信パケットにカプセル化された内部パケットが含まれていない場合には、ステップ１５２０に進み、パケットが消費される。なお、これは、パケットが登録メッセージなどのように、ＭＡＰ１２０そのものに向けられたデータを含んでいることを意味している。
【０１１１】
一方、内部パケットが含まれている場合には、この受信パケットは、ＭＡＰ１２０から内部パケットをグローバルなインターネット１００に転送されるように意図されたトンネルパケットである。このとき、ＭＡＰ１２０は一連の正当性チェックの実行を開始する。ステップ１５３０では、登録テーブル６５０に関して、内部パケットの送信元アドレスのチェックが行われ、送信元アドレスが、登録ノードに係る有効なＲＣｏＡであるか否かの確認が行われる。有効なＲＣｏＡではない場合には、ステップ１５４０に示されるように、パケットは破棄される。一方、内部パケットの送信元アドレスが登録ノードに係る有効なＲＣｏＡである場合には、ステップ１５５０に進み、このＲＣｏＡがルーティングヘッダ処理部６２５に渡され、図１１に示されているアルゴリズムを使用して、中間アドレスのリストが生成される。
【０１１２】
ステップ１５６０において、外部パケットのリバースルーティングヘッダのアドレスが仮のアドレスリスト内に置かれ、ステップ１５６２において、外部パケットの送信元アドレスが仮のアドレスリスト内に追加される。そして、ステップ１５６４において、この仮のアドレスリストが、ステップ１５５０でルーティングヘッダ処理部６２５により生成されたアドレスリストと比較される。パケットが有効な登録ノードから送信されたものである場合には、２つのリストは同一であるべきである。したがって、２つのリストが同一でない場合には、ステップ１５７０においてパケットは破棄され、２つのリストが同一である場合には、ステップ１５８０において内部パケットが転送される。
【０１１３】
ＤＦオプション又はＳプレフィックスが使用されている場合、ＭＡＰ１２０は図１９に示されているアルゴリズムを使用して、ＭＡＰ１２０をあて先とするパケットの処理を行うことが可能である。これらの処理は、図１８に図示されている処理とほぼ同一であり、同一の処理には同一符号を付すとともに、説明を省略する。唯一の変更は、図１８のステップ１５６０、１５６２、１５６４が、単一のステップ１５６８に置き換えられる点である。
【０１１４】
ここでは、外部パケットの送信元アドレスが、ステップ１５５０でルーティングヘッダ処理部６２５によって生成されたアドレスリストの末尾のアドレスに対してチェックされる。パケットが有効な登録ノードから送信されたものである場合には、２つのアドレスは同一であるべきである。したがって、２つのアドレスが同一でない場合には、ステップ１５７０においてパケットは破棄され、２つのアドレスが同一である場合には、ステップ１５８０において内部パケットが転送される。
【０１１５】
また、本明細書において、最も実用的であり好適な実施の形態によって本発明の開示が行われているが、当業者であれば、本発明の範囲を逸脱しない程度に、構成やパラメータの詳細に変更が加えられ得ることは理解されるであろう。例えば、ルーティングヘッダ処理部６２５の機能を増強することが可能である。モバイルノードのＲＣｏＡをあて先とし、ＭＡＰ１２０によって受信（intercept）されるパケットは、ルーティングヘッダを用いてモバイルノードにトンネルされる必要があるが、ルーティングヘッダが必要とされる際に、図１１のアルゴリズムが常に実行されてしまっては相当な負荷がかかってしまう可能性がある。
【０１１６】
この負荷を減少させる方法の１つは、ルーティングヘッダキャッシュを使用することである。ここでは、ルーティングヘッダ処理部６２５がキャッシュを保持する。登録されたモバイルノードに到達可能な中間アドレスのリストを生成する要求がある場合には常に、図１１に示されるアルゴリズムを実行する代わりに、ルーティングヘッダ処理部６２５が、必要なアドレスのリストがキャッシュされているか否かのチェックを行う。そして、必要なアドレスのリストがキャッシュされている場合には、キャッシュからリストが取得可能である。一方、必要なアドレスのリストがキャッシュされていない場合には、図１１に示されるアルゴリズムが使用されて、アドレスリストが生成され、このアドレスリストがキャッシュされる。
【０１１７】
なお、キャッシュが使用されている場合には、確実にキャッシュの内容が古くならないように注意する必要がある。キャッシュの新しさを保証する方法の１つは、プレフィックステーブル６４０又は登録テーブル６５０になされる変更箇所が存在するすべてのキャッシュエントリを無効にすることである。通常の状況下では、登録ノードのＲＣｏＡに送信されるパケット数と比べて、これらの変更は頻繁には起こらないので、ルーティングヘッダキャッシュの導入が有用であり得るが、このルーティングヘッダキャッシュの導入は、実施の際に決定されればよい。
【０１１８】
また、上述では、モビリティアンカポイントとモバイルルータの機能について説明が行われている。ＭＡＰとモバイルルータは別々のエンティティとして記載されているが、モバイルルータがモビリティアンカポイントの機能を実行することが可能であることは、当業者には認識されており、本発明では、このようなノードを適用することも可能である。また、さらに、機能の分配が行われるようにすることも可能である。例えば、複数のノード間でモビリティアンカポイントの任意の機能が分配されてもよい（階層的な方法による分配も可能）。
【０１１９】
また、別の例としては、図１のアクセスルータＡＲ１３０自身がモビリティアンカポイントの機能を部分的又は完全に実行してもよい。実際にＡＲ１３０は、モバイルルータの機能を部分的又は完全に実行することが可能である。また、モビリティアンカポイント及びモバイルルータの両方の機能を一部又は完全に実行するアクセスルータでもよい。上述のような変更が本発明の範囲に十分に含まれることは、当業者に認識されるはずである。
【産業上の利用可能性】
【０１２０】
本発明は、ＭＡＰの配下に複数のモバイルルータが連なったネスト状態において、モバイルルータの配下に存在するモバイルノードが送受信を行うパケットを転送する際に必要となるカプセル化の回数を減少させるという効果を有しており、ＩＰネットワークなどのパケット交換型データ通信ネットワークに係る通信技術や、パケット転送技術及びパケット処理技術に適用可能である。
【図面の簡単な説明】
【０１２１】
【図１】従来の技術および本発明の実施の形態に共通するネットワーク構成の一例を示す図
【図２】図１において、従来の技術を用いた場合のＣＮからＭＮに送信されるパケットの経路を示す図
【図３】図２に示される経路において、パケットが複数のレベルでカプセル化される様子を模式的に示す図
【図４】本発明の実施の形態におけるルーティングヘッダを有するパケットのフォーマットの一例を示す図
【図５】本発明の実施の形態において、ルーティングヘッダを有するパケットがアドレスＡを持つノードからアドレスＤを持つノードに転送される際のパケットヘッダの変遷を模式的に示す図
【図６】本発明の実施の形態におけるリバースルーティングヘッダを有するパケットのフォーマットの一例を示す図
【図７】本発明の実施の形態において、リバースルーティングヘッダを有するパケットがアドレスＡを持つノードからアドレスＤを持つノードに転送される際のパケットヘッダの変遷を模式的に示す図
【図８】本発明の実施の形態におけるＭＡＰの構成の一例を示す図
【図９】本発明の実施の形態において、ＭＡＰが有するプレフィックステーブルの一例を示す図
【図１０】本発明の実施の形態において、ＭＡＰが有する登録テーブルの一例を示す図
【図１１】本発明の実施の形態において、ＭＡＰのルーティング部がＭＮに到達可能とする中間アドレスのリストを構築する際に使用されるアルゴリズムの一例を示すフローチャート
【図１２】本発明の実施の形態において、ＭＡＰからＭＮに送信されるトンネルパケットの内容の一例を示す図
【図１３】本発明の実施の形態において、ＭＮからＭＡＰに送信されるトンネルパケットの内容の一例を示す図
【図１４】本発明の実施の形態において、ＭＡＰによって管理されているアクセスネットワークに属するアドレスあてのパケットを受信した際にＭＡＰのルーティング部によって使用されるアルゴリズムの一例を示すフローチャート
【図１５】図１に示すネットワーク構成において、登録に係るメッセージ交換の一例と、ルーティングヘッダ及びリバースルーティングヘッダが使用されたパケット伝送の一例とを示すシーケンスチャート
【図１６】図１に示すネットワーク構成において、ＤＦオプションが使用されたパケット伝送の一例を示すシーケンスチャート
【図１７】図１に示すネットワーク構成において、Ｓプレフィックスが使用されたパケット伝送の一例を示すシーケンスチャート
【図１８】本発明の実施の形態において、リバースルーティングヘッダが使用されているパケットの正当性をＭＡＰがチェックする際に使用されるアルゴリズムの一例を示すフローチャート
【図１９】本発明の実施の形態において、ＤＦオプション又はＳプレフィックスが使用されているパケットの正当性をＭＡＰがチェックする際に使用されるアルゴリズムの一例を示すフローチャート
【符号の説明】
【０１２２】
１００  ネットワーク
１０２  アクセスネットワーク
１０４、１０６  モバイルネットワーク
１１０、１１２、１１４  ホームエージェント（ＨＡ）
１２０  モビリティアンカポイント（ＭＡＰ）
１３０、１３２、１３４  アクセスルータ（ＡＲ）
１４０、１４２  モバイルルータ（ＭＲ）
１５０  モバイルノード（ＭＮ）
１６０  コレスポンデントノード（ＣＮ）
４２０、４３０、４４０、４５０、５２０、５３０、５４０、５５０  ノード
６１０  下位ネットワークインタフェース
６２０  ルーティング部
６２５  ルーティングヘッダ処理部
６３０  登録部
６４０  プレフィックステーブル
６５０  登録テーブル
【図１】
2008546222.tif 000003
【図２】
2008546222.tif 000004
【図３】
2008546222.tif 000005
【図４】
2008546222.tif 000006
【図５】
2008546222.tif 000007
【図６】
2008546222.tif 000008
【図７】
2008546222.tif 000009
【図８】
2008546222.tif 000010
【図９】
2008546222.tif 000011
【図１０】
2008546222.tif 000012
【図１１】
2008546222.tif 000013
【図１２】
2008546222.tif 000014
【図１３】
2008546222.tif 000015
【図１４】
2008546222.tif 000016
【図１５】
2008546222.tif 000017
【図１６】
2008546222.tif 000018
【図１７】
2008546222.tif 000019
【図１８】
2008546222.tif 000020
【図１９】
2008546222.tif 000021
【国際調査報告】
2008546222.tif 000022
2008546222.tif 000023
2008546222.tif 000024
2008546222.tif 000025