(57)【要約】      （修正有）【課題】モバイルネットワークを配下に持つモバイルルータを有する通信において、よりセキュアであり、より効率的な通信を実現する。【解決手段】モバイルルータ１１１は、ＨｏＴＩメッセージ２０３の送信によって、自身の配下のモバイルネットワークに係るネットワークプリフィックスを通信相手ノード１３０に送信する。通信相手ノードは、ＨｏＴＩメッセージ内のネットワークプリフィックスに基づいて暗号化されたトークンを含むＮＰＴメッセージ２０５を送信する。モバイルルータは、このトークンを抽出して、このトークン及び従来のＲＲ手順のトークンを用いて生成したチェックサムをＢＵメッセージ２０６内に挿入して送信する。なお、上記のモバイルルータの代わりに、コレスポンデントルータを適用することも可能である。【選択図】図２
2011193475.tif 000002
【特許請求の範囲】
【請求項１】
モバイルネットワークを配下に有するモバイルルータと、前記モバイルネットワーク内の任意のノードの通信相手ノードとが、所定の通信ネットワークに接続されているモバイルネットワーク通信システムにおいて、前記通信相手ノードが前記モバイルネットワークに係るプリフィックス情報の検証を行うためのネットワーク管理方法であって、
前記モバイルルータが、前記モバイルルータのホームアドレスを送信元アドレスとして含む第１メッセージを生成し、前記モバイルネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを前記通信相手ノードに送信するステップと、
前記モバイルルータが、前記モバイルルータの気付アドレスを送信元アドレスとして含む第４メッセージを生成し、前記第４メッセージを前記通信相手ノードに送信するステップと、
前記モバイルルータが、前記第１メッセージ及び前記第４メッセージに対する応答メッセージをそれぞれ受信するステップと、
前記通信相手ノードが、前記モバイルルータから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成するステップと、
前記通信相手ノードが、前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記モバイルネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信するステップと、
前記モバイルルータが、前記第２メッセージを受信して、前記第２メッセージ内の前記トークンを抽出するステップと、
前記モバイルルータが、前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成するステップと、
前記モバイルルータが、前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記通信相手ノードに向けて送信するステップと、
前記通信相手ノードが、前記第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行うステップとを、
有するネットワーク管理方法。
【請求項２】
前記モバイルルータが、所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記モバイルネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信するステップをさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記通信相手ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記モバイルルータの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項１に記載のネットワーク管理方法。
【請求項３】
前記通信相手ノードが、前記モバイルネットワークに対応する前記ネットワークプリフィックスに、ランダムに生成された値をホスト部として加えることによって、前記第２メッセージに設定する前記モバイルネットワークに到達可能な前記アドレスを生成するステップを有する請求項１に記載のネットワーク管理方法。
【請求項４】
前記モバイルルータが前記チェックサムを生成する際、前記モバイルルータは、前記第２メッセージ内の前記トークンに加えて、前記第１メッセージに対する応答メッセージ内のＨｏＫトークン、及び、前記第４メッセージに対する応答メッセージ内のＣｏＫトークンに基づいて、前記チェックサムの生成を行う請求項１に記載のネットワーク管理方法。
【請求項５】
前記通信相手ノードは、前記第３メッセージ内の前記チェックサムの検証結果に基づき、検証に成功した前記ネットワークプリフィックスと、前記モバイルルータの前記ホームアドレス及び前記気付アドレスとの関連付けを行って、関連付けられた情報を格納するステップを有する請求項１に記載のネットワーク管理方法。
【請求項６】
モバイルネットワークを形成することが可能なモバイルルータ内に配置されるネットワーク管理装置であって、
前記モバイルルータのホームアドレスを送信元アドレスとして含む第１メッセージを生成し、前記モバイルネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを所定の通信相手ノードに送信する手段と、
前記モバイルルータの気付アドレスを送信元アドレスとして含む第４メッセージを生成し、前記第４メッセージを前記通信相手ノードに送信する手段と、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージをそれぞれ受信する手段と、
前記所定の通信相手ノードから、前記第１メッセージ内の前記ネットワークプリフィックスに基づいて前記所定の通信相手ノードによって生成されたトークンを含む第２メッセージを受信し、前記第２メッセージ内の前記トークンを抽出する手段と、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成する手段と、
前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記所定の通信相手ノードに向けて送信する手段とを、
有するネットワーク管理装置。
【請求項７】
所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記モバイルネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信する手段をさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記通信相手ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記モバイルルータの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項６に記載のネットワーク管理装置。
【請求項８】
リターンルータビリティ手順を実現するための手段を有し、
前記モバイルルータが前記チェックサムを生成する際に、前記第２メッセージ内の前記トークンに加えて、前記第１メッセージに対する応答メッセージ内のＨｏＫトークン、及び、前記第４メッセージに対する応答メッセージ内のＣｏＫトークンに基づいて、前記チェックサムの生成を行うように構成されている請求項６に記載のネットワーク管理装置。
【請求項９】
モバイルネットワークを形成するモバイルルータと通信を行うことが可能であり、前記モバイルネットワークの外部に存在する通信ノード内に配置されるネットワーク管理装置であって、
前記モバイルルータによって生成された、前記モバイルルータのホームアドレスを送信元アドレスとして含み、かつ、前記モバイルネットワークを特定するネットワークプリフィックスを含む第１メッセージを受信する手段と、
前記モバイルルータの気付アドレスを送信元アドレスとして含む第４メッセージが前記モバイルルータによって生成され、前記第４メッセージを受信するステップと、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージのそれぞれを前記モバイルルータに送信するステップと、
前記モバイルルータから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成する手段と、
前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記モバイルネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信する手段と、
前記モバイルルータが前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記モバイルルータによって前記トークンを使用して生成されたチェックサムと、前記ネットワークプリフィックスとを含む第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行う手段とを、
有するネットワーク管理装置。
【請求項１０】
前記第３メッセージ内の前記チェックサムの検証結果に基づき、検証に成功した前記ネットワークプリフィックスと、前記モバイルルータの前記ホームアドレス及び前記気付アドレスとの関連付けを行う手段と、
前記関連付けによって関連付けられた情報を格納するための手段とを、
有する請求項９に記載のネットワーク管理装置。
【請求項１１】
コレスポンデントネットワーク内の任意のノードのプロキシとして機能するコレスポンデントルータと、前記コレスポンデントネットワーク内の任意のノードと通信を行う前記コレスポンデントネットワークの外部に存在する通信相手ノードとが、所定の通信ネットワークに接続されているネットワーク通信システムにおいて、前記通信相手ノードが前記コレスポンデントネットワークに係るプリフィックス情報の検証を行うためのネットワーク管理方法であって、
前記コレスポンデントルータが、前記コレスポンデントルータのアドレスを送信元アドレスとして含む第１メッセージを生成し、前記コレスポンデントネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを前記通信相手ノードに送信するステップと、
前記コレスポンデントルータが、前記コレスポンデントルータの気付アドレスを送信元アドレスとして含む第４メッセージを生成し、前記第４メッセージを前記通信相手ノードに送信するステップと、
前記コレスポンデントルータが、前記第１メッセージ及び前記第４メッセージに対する応答メッセージをそれぞれ受信するステップと、
前記通信相手ノードが、前記コレスポンデントルータから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成するステップと、
前記通信相手ノードが、前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記コレスポンデントネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信するステップと、
前記コレスポンデントルータが、前記第２メッセージを受信して、前記第２メッセージ内の前記トークンを抽出するステップと、
前記コレスポンデントルータが、前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成するステップと、
前記コレスポンデントルータが、前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記通信相手ノードに向けて送信するステップと、
前記通信相手ノードが、前記第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行うステップとを、
有するネットワーク管理方法。
【請求項１２】
前記コレスポンデントルータが、所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記コレスポンデントネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信するステップをさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記通信相手ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記コレスポンデントルータの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項１１に記載のネットワーク管理方法。
【請求項１３】
前記通信相手ノードが、前記コレスポンデントネットワークに対応する前記ネットワークプリフィックスに、ランダムに生成された値をホスト部として加えることによって、前記第２メッセージに設定する前記コレスポンデントネットワークに到達可能な前記アドレスを生成するステップを有する請求項１１に記載のネットワーク管理方法。
【請求項１４】
前記コレスポンデントルータが前記チェックサムを生成する際、前記コレスポンデントルータは、前記第２メッセージ内の前記トークンに加えて、前記第１メッセージに対する応答メッセージ内のＨｏＫトークンに基づいて、前記チェックサムの生成を行う請求項１１に記載のネットワーク管理方法。
【請求項１５】
前記通信相手ノードは、検証の結果に基づき、検証に成功した前記ネットワークプリフィックスと、前記コレスポンデントルータの前記アドレスとの関連付けを行って、関連付けられた情報を格納するステップを有する請求項１１に記載のネットワーク管理方法。
【請求項１６】
コレスポンデントネットワーク内の任意のノードのプロキシとして機能することが可能なコレスポンデントルータ内に配置されるネットワーク管理装置であって、
前記コレスポンデントルータのアドレスを送信元として含む第１メッセージを生成し、前記コレスポンデントネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを前記コレスポンデントネットワークの外部の所定の通信相手ノードに送信する手段と、
前記コレスポンデントルータの気付アドレスを送信元アドレスとして含む第４メッセージを生成し、前記第４メッセージを前記所定の通信相手ノードに送信する手段と、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージをそれぞれ受信する手段と、
前記所定の通信相手ノードから、前記第１メッセージ内の前記ネットワークプリフィックスに基づいて前記所定の通信相手ノードによって生成されたトークンを含む第２メッセージを受信し、前記第２メッセージ内の前記トークンを抽出する手段と、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成する手段と、
前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記所定の通信相手ノードに向けて送信する手段とを、
有するネットワーク管理装置。
【請求項１７】
前記コレスポンデントルータが、所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記コレスポンデントネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信するステップをさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記通信相手ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記コレスポンデントルータの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項１６に記載のネットワーク管理方法。
【請求項１８】
リターンルータビリティ手順を実現するための手段を有し、
前記コレスポンデントルータが前記チェックサムを生成する際に、前記第２メッセージ内の前記トークンに加えて、前記第１メッセージに対する応答メッセージ内のＨｏＫトークンに基づいて、前記チェックサムの生成を行うように構成されている請求項１６に記載のネットワーク管理装置。
【請求項１９】
コレスポンデントネットワーク内の任意のノードのプロキシとして機能するコレスポンデントルータと通信を行うことが可能であり、前記コレスポンデントネットワークの外部に存在する通信ノード内に配置されるネットワーク管理装置であって、
前記コレスポンデントルータによって生成された、前記モバイルルータのホームアドレスを送信元アドレスとして含み、かつ、前記コレスポンデントネットワークを特定するネットワークプリフィックスを含む第１メッセージを受信する手段と、
前記コレスポンデントルータの気付アドレスを送信元アドレスとして含む第４メッセージが前記コレスポンデントルータによって生成され、前記第４メッセージを受信する手段と、
前記第１メッセージ及び前記第４メッセージに対する応答メッセージのそれぞれを前記コレスポンデントルータに送信する手段と、
前記コレスポンデントルータから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成する手段と、
前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記コレスポンデントネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信する手段と、
前記コレスポンデントルータが前記第１メッセージ及び前記第４メッセージに対する応答メッセージの受信に成功した場合に、前記コレスポンデントルータによって前記トークンを使用して生成されたチェックサムと、前記ネットワークプリフィックスとを含む第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行う手段とを、
有するネットワーク管理装置。
【請求項２０】
前記第３メッセージ内の前記チェックサムの検証結果に基づき、検証に成功した前記ネットワークプリフィックスと、前記コレスポンデントルータの前記アドレスとの関連付けを行う手段と、
前記関連付けによって関連付けられた情報を格納するための手段とを、
有する請求項１９に記載のネットワーク管理装置。
【請求項２１】
少なくとも１つ以上のネットワークを管理する第１通信ノードと、前記第１通信ノードとは異なり前記第１通信ノードが管理する前記ネットワークの外部に存在する第２通信ノードとが、所定の通信ネットワークに接続されているネットワーク通信システムにおいて、前記第２通信ノードが前記ネットワークに係るプリフィックス情報の検証を行うためのネットワーク管理方法であって、
前記第１通信ノードが、前記第１通信ノードのアドレスを送信元アドレスとして含む第１メッセージを生成し、前記ネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを前記第２通信ノードに送信するステップと、
前記第１通信ノードが、前記第１メッセージに対する応答メッセージをそれぞれ受信するステップと、
前記第２通信ノードが、前記第１通信ノードから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成するステップと、
前記第２通信ノードが、前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記ネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信するステップと、
前記第１通信ノードが、前記第２メッセージを受信して、前記第２メッセージ内の前記トークンを抽出するステップと、
前記第１通信ノードが、前記第１メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成するステップと、
前記第１通信ノードが、前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記第２通信ノードに送信するステップと、
前記第２通信ノードが、前記第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行うステップとを、
有するネットワーク管理方法。
【請求項２２】
前記第１通信ノードが、所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記ネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信するステップをさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記第２通信ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記第１通信ノードの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項２１に記載のネットワーク管理方法。
【請求項２３】
前記第２通信ノードは、前記第３メッセージ内の前記チェックサムの検証結果に基づき、検証に成功した前記ネットワークプリフィックスと、前記第１通信ノードの前記アドレスとの関連付けを行って、関連付けられた情報を格納するステップを有する請求項２１に記載のネットワーク管理方法。
【請求項２４】
少なくとも１つ以上のネットワークを管理することが可能な第１通信ノード内に配置されるネットワーク管理装置であって、
前記第１通信ノードのアドレスを送信元アドレスとして含む第１メッセージを生成し、前記ネットワークを特定するネットワークプリフィックスを前記第１メッセージに含めて、前記第１メッセージを前記第１通信ノードとは異なり前記第１通信ノードが管理する前記ネットワークの外部に存在する第２通信ノードに送信する手段と、
前記第１メッセージに対する応答メッセージをそれぞれ受信する手段と、
前記第２通信ノードから、前記第１メッセージ内の前記ネットワークプリフィックスに基づいて前記第２通信ノードによって生成されたトークンを含む第２メッセージを受信し、前記第２メッセージ内の前記トークンを抽出する手段と、
前記第１メッセージに対する応答メッセージの受信に成功した場合に、前記トークンを使用してチェックサムを生成する手段と、
前記ネットワークプリフィックス及び前記チェックサムを含む第３メッセージを生成し、前記第２通信ノードに送信する手段とを、
有するネットワーク管理装置。
【請求項２５】
前記第１通信ノードが、所定の期間、パケットのスキャンを行い、前記ネットワークプリフィックスに対応する前記ネットワークに到達可能なアドレスに向けて送信された前記第２メッセージを受信するステップをさらに有し、
前記パケットは、トンネル化されたパケットであり、かつ、前記第２通信ノードのアドレスに等しい送信元アドレスと、前記第１メッセージに記載された前記第１通信ノードの前記ネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとで設定されているパケットである、
請求項２４に記載のネットワーク管理方法。
【請求項２６】
少なくとも１つ以上のネットワークを管理する第１通信ノードと通信を行うことが可能であり、前記第１通信ノードが管理する前記ネットワークの外部に存在する第２通信ノード内に配置されるネットワーク管理装置であって、
前記第１通信ノードによって生成された、前記モバイルルータのホームアドレスを送信元アドレスとして含み、かつ、前記ネットワークを特定するネットワークプリフィックスを含む第１メッセージを受信する手段と、
前記第１メッセージに対する応答メッセージのそれぞれを前記モバイルルータに送信するステップと、
前記第１通信ノードから受信した前記第１メッセージ内の前記ネットワークプリフィックスに基づいて、前記ネットワークプリフィックスに対応するトークンを生成する手段と、
前記ネットワークプリフィックスに対応する前記トークンを含む第２メッセージを生成するとともに、前記ネットワークプリフィックスに対応する前記ネットワークに到達可能なアドレスに向けて、前記第２メッセージを送信する手段と、
前記第１通信ノードが前記第１メッセージに対する応答メッセージの受信に成功した場合に、前記第１通信ノードによって前記トークンを使用して生成されたチェックサムと、前記ネットワークプリフィックスとを含む第３メッセージを受信して、前記第３メッセージ内の前記ネットワークプリフィックスに基づいて、前記第３メッセージ内の前記チェックサムの検証を行う手段とを、
有するネットワーク管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットプロトコル（ＩＰ：Internet Protocol）を利用した通信技術に関し、特に、モバイルルータの移動によってネットワーク全体が移動を行うモバイルネットワークに係る通信技術に関する。
【背景技術】
【０００２】
現在、多数のデバイスが、インターネットプロトコルを使用して、相互に通信を行っている。モバイル機器にモビリティサポートを提供するために、ＩＥＴＦ（Internet Engineering Task Force）では、ＩＰｖ６におけるモビリティサポートの発展が進められている。モバイルＩＰでは、各モバイルノードは、永続的なホームドメインを持っている。モバイルノードが、自身のホームネットワークに接続している場合、モバイルノードには、ホームアドレス（ＨｏＡ：Home Address）として知られるプライマリグローバルアドレスが割り当てられる。一方、モバイルノードがホームネットワークから離れている場合、すなわち、他のフォーリンネットワークに接続している場合には、通常、モバイルノードには、気付アドレス（ＣｏＡ：Care-of Address）として知られる一時的なグローバルアドレスが割り当てられる。モビリティサポートの考えは、モバイルノードが他のフォーリンネットワークに接続している場合でも、自身のホームアドレスで、そのモバイルノードまで到達可能となるようにするものである。
【０００３】
このような考えは、下記の非特許文献１において、ホームエージェント（ＨＡ：Home Agent）として知られるエンティティを、ホームネットワークに導入することによって実践されている。モバイルノードは、バインディングアップデート（ＢＵ：Binding Update）として知られるメッセージを使用して、ホームエージェントへの気付アドレスの登録を行う。これにより、ホームエージェントは、モバイルノードのホームアドレスと気付アドレスとの間のバインディングを生成することが可能となる。ホームエージェントは、モバイルノードのホームアドレスに向けられたメッセージを受信（intercept）し、パケットのカプセル化（あるパケットを新たなパケットのペイロードとすることであり、パケットトンネリングとしても知られている）を用いて、そのパケットをモバイルノードの気付アドレスに転送する機能を担っている。
【０００４】
上述の技術によってモビリティサポートは可能とはなるものの、結果的には、準最適化（サブオプティマル）又はドッグレッグルーティングとして知られる問題が生じることとなる。これらの問題は、モバイルノードが通信相手ノード（ＣＮ：Correspondent Node）と通信を行う際、それらの間において送信されるパケットが、ホームエージェントを通らなければならないことにより生じる。このため、非特許文献１には、モバイルノードが通信相手ノードにＢＵの送信を行うことができる旨が明記されている。通信相手ノードがモバイルノードのホームアドレスと気付アドレスとのバインディングを把握した場合、通信相手ノード及びモバイルノードは、モバイルノードの気付アドレスを送信元又は送信先として、互いに直接（ホームエージェントを通らずに）パケットの送信を行うようにすることが可能となる。
【０００５】
しかしながら、セキュリティを考慮した場合、モバイルノードとそのホームエージェントとは、セキュリティ協定（security association）を共有していると仮定されるので、モバイルノードからホームエージェントに送信されるＢＵはセキュアとなり得るが、このような仮定は、モバイルノードと通信相手ノードとの間では非現実的なものであり、すなわち、モバイルノードから通信相手ノードに送信されるＢＵはセキュアな状態にはなっていない場合が多い。
【０００６】
このため、非特許文献１には、リターンルータビリティ（ＲＲ：Return Routability）手順として知られる手順が明記されている。このＲＲ手順によって、通信相手ノードは、ＢＵに記載された気付アドレスとホームアドレスとが実際に関連付けられているものであることを確認することが可能となる。基本的に、ＲＲ手順では、モバイルノードが、通信相手ノードに対してＢＵを送信する前に、セキュアな状態で生成された２つのトークンを通信相手ノードから取得することが要請されている。
【０００７】
ＲＲ手順を開始するため、最初に、モバイルノードは通信相手ノードに対して、２つの異なるメッセージ、Home-test-Init（ＨｏＴＩ）メッセージ及びCare-of-Test-Init（ＣｏＴＩ）メッセージを送信する。ＨｏＴＩには、パケットの送信元（source）として、モバイルノードのホームアドレスが設定され、ホームエージェント経由で送信される。一方、ＣｏＴＩには、パケットの送信元（source）として、モバイルノードの気付アドレスが設定され、直接送信される。ＨｏＴＩを受信した通信相手ノードは、モバイルノードのホームアドレスに向けて、Home-Test（ＨｏＴ）メッセージを送信することによって応答を行う。このＨｏＴには、Home Keygen Token（ＨｏＫ）と呼ばれるセキュリティトークンが含まれている。このＨｏＫは、モバイルノードのホームアドレスに基づいて、秘密鍵を用いた暗号化により生成されるものである。また、同様に、ＣｏＴＩを受信した通信相手ノードは、モバイルノードの気付アドレスに向けてCare-of-Test（ＣｏＴ）メッセージを送信することによって応答を行う。このＣｏＴには、Care-of Keygen Token（ＣｏＫ）と呼ばれるセキュリティトークンが含まれている。このＣｏＫは、モバイルノードの気付アドレスに基づいて、秘密鍵を用いた暗号化により生成されるものである。
【０００８】
モバイルノードは、ＨｏＴメッセージ及びＣｏＴメッセージの両方のメッセージを受信した場合、通信相手ノードに対して、認証情報（Authenticator）を含むＢＵを送信することが可能となる。この認証情報は、ＨｏＫとＣｏＫとを連結して生成された鍵を使用して、暗号化によって生成されるＢＵのチェックサムである。この方法で、通信相手ノードは、ＢＵを受信した場合には、独自にチェックサムの計算を行い、このチェックサムが認証情報内のものと同一であることを確認することが可能となり、ＢＵに記載されている気付アドレスとホームアドレスとが、実際に関連付けられたものであることが確認される。
【０００９】
一方、無線デバイスの台数の増加はさらに加速しており、モビリティ技術において、新たな技術分野（class）が現れるであろうことが予想される。その１つが、ノードを含むネットワーク全体が、そのまま接続ポイントを変えるネットワークモビリティである。個々のホスト用のモビリティサポートの概念を、ノードを含むネットワーク用のモビリティサポートに拡張した場合、移動を行うネットワークに係る解決策は、モバイルネットワークがインターネットに対してどの接続ポイントで接続している場合でも、プライマリグローバルアドレスでモバイルネットワーク内のノードに到達可能とすることができる機構の提供を目的としている。
【００１０】
このようなモバイルＩＰに基づいて移動を行うネットワークの問題に対する解決策を与えようとするいくつかの試みが、既に存在している。移動を行うネットワークの問題に対して提案された解決策の１つが、下記の特許文献１に記載されているモバイルルータサポートである。ここでは、モバイルネットワークを制御するモバイルルータは、ホームドメインに存在する際に、あるルーティングプロトコルを使用して、モバイルネットワークへのパケット、又はモバイルネットワークからのパケットのルーティングを実行する。一方、モバイルルータ及びそのモバイルネットワークがフォーリンドメインに移動した場合には、モバイルルータは自身のホームエージェントにその気付アドレスを登録し、その後、モバイルルータとホームエージェントとの間でトンネルのセットアップが行われる。そして、モバイルルータがホームドメインに存在していたときに使用されていたルーティングプロトコルが、このトンネルを通じて再度実行される。これによって、モバイルネットワークに向かうあらゆるパケットは、ホームエージェントによって受信（intercept）され、トンネルを通じてモバイルルータに転送されることとなる。そして、パケットは、モバイルルータによって、そのモバイルネットワーク内のホストに転送される。一方、そのモバイルネットワーク内のノードが、モバイルネットワーク外部へのパケットの送信を行おうとする場合には、モバイルルータがそのパケットを受信（intercept）し、トンネルを通じてホームエージェントにパケットの転送を行い、ホームエージェントによって、設定された受信者に対して、パケットの送信が行われる。また、下記の特許文献２に開示されている別の解決策も、ＩＰｖ６のみに対するサポートに特定して記述されているものの、ほぼ同様である。
【００１１】
一方、下記の特許文献３には、モバイルルータの気付アドレスとして、マルチキャストアドレスを使用する方法が開示されている。これによれば、モバイルルータは、新たなアクセスネットワークに移動した後でも、同一の気付アドレスを使用して到達可能となる。
また、ＩＥＴＦでは、下記の非特許文献２ａ、２ｂに開示されているように、ネットワークモビリティの解決策が現在も展開されている。非特許文献２ａ、２ｂには、モバイルルータが、ホームエージェントに対してＢＵを送信する際に、モバイルネットワーク内のノードが使用しているネットワークプリフィックスを明記できる旨が記載されている。ネットワークプリフィックスは、ＢＵに挿入されるネットワークプリフィックスオプションとして知られる特別なオプションを使用して明記される。これにより、ホームエージェントは、ネットワークプリフィックスに基づいて、ルーティングテーブルを構築することが可能となり、その結果、ホームエージェントは、このネットワークプリフィックスを送信先とするすべてのパケットを、モバイルルータの気付アドレスに転送することができるようになる。
【００１２】
また、下記の非特許文献３には、ＣＮが存在するネットワーク（コレスポンデントネットワーク）のエッジルータであるコレスポンデントルータ（ＣＲ：Correspondent Router）が記載されている。このコレスポンデントルータは、任意のモバイルルータに関するバインディングを管理し、そのモバイルルータの配下に存在するモバイルネットワークのネットワークプリフィックス宛てに、トンネリングによってパケットの転送を行う機能を有している。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】Johnson, D. B., Perkins, C. E., and Arkko, J., "Mobility Support in IPv6", Internet Draft: draft-ietf-mobileip-ipv6-24.txt, Work In Progress, June 2003.
【非特許文献２ａ】Devarapalli, V., et. al., "NEMO Basic Support Protocol", IETF Internet Draft: draft-ietf-nemo-basic-02.txt, Dec 2003.
【非特許文献２ｂ】Devarapalli, V., et. al., "NEMO Mobility (NEMO) Basic Support Protocol", RFC 3963, February 2005 (この文献は、特願２００４−２０３８６９号、特願２００４−３０２２６０号に含まれている発明に対する従来の技術を構成するものではない。)
【非特許文献３】P. Thubert, P., et. al,. "Taxonomy of Route Optimization models in the Nemo context", IETF Internet Draft: draft-thubert-nemo-ro-taxonomy-02.txt, February 2004.
【特許文献】
【００１４】
【特許文献１】米国特許第６６３６４９８号公報
【特許文献２】米国特許公開２００３−１１７９６５号公報
【特許文献３】米国特許公開２００３−９５５２３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、上記の特許文献１、特許文献２、及び非特許文献１では、ホームエージェントを経由せずに、モバイルネットワークから通信相手ノードに直接パケットが送信されるようにする条件に関しては言及されていない。したがって、これはモバイルＩＰｖ６におけるドッグレッグルーティングと同様の問題を引き起こすことになり、パケットに関して多大な遅延が生じることとなる。
【００１６】
また、特許文献１には、通信相手ノードに対して、マルチキャスト気付アドレスと、モバイルルータのホームアドレスとを関連付けるＢＵを送信する手段に関する言及があるものの、通信相手ノードが、どのようにしてモバイルルータの背後のモバイルネットワーク内に存在するモバイルネットワークノードのアドレスを、モバイルルータのホームアドレスと関連付けることができるかについては、明らかにされていない。
【００１７】
一方、非特許文献２ａ、２ｂで言及されているように、単に、通信相手ノードに送信するＢＵ内に、１つ又は複数のネットワークプリフィックスオプションを含ませるようにするという単純な方法も存在する。この方法によれば、通信相手ノードは、モバイルルータを特定のネットワークプリフィックスに関連付けることによって、このネットワークプリフィックスに由来する送信先が設定されたパケットを、モバイルルータの気付アドレスに直接送信することが可能となる。これは、もっともらしい解決策であるかのように思えるが、本発明者が慎重な解析を行った結果、気付アドレスとモバイルルータのホームアドレスとの関連付けは、ＲＲ手順によってのみ保証されることが明らかとなった。すなわち、単にＢＵメッセージ内にネットワークプリフィックスオプションを加えるだけでは、通信相手ノードは、特定のネットワークプリフィックスが、特定のホームアドレスを有するモバイルルータによって本当に取り扱われるのかどうかを確かめることは不可能である。そして、このようなネットワークプリフィックスの保証が行われない状態では、悪意ある攻撃者が、自身の（有効な）ホームアドレス及び気付アドレスを通信相手ノードに提供するとともに、ＢＵを用いて、実は攻撃者が所有していないネットワークプリフィックスをあたかも攻撃者が取り扱っているかのように申請することが可能となってしまう。このことは、ＤｏＳ（Denial-of-Service：サービス妨害）攻撃や偽装攻撃の可能性を与えることになってしまい、この場合、通信相手ノードは、他のノードに向けて、攻撃されたネットワークプリフィックスに由来したアドレスを用いて、他のノードに向けて送信するつもりのパケットを攻撃者に向けて送信してしまうこととなる。
【００１８】
また、非特許文献３に記載されているコレスポンデントルータに関しても同様であり、悪意あるコレスポンデントルータが、自身が取り扱っていないコレスポンデントネットワークのネットワークプリフィックスをあたかも取り扱っているかのように、モバイルルータに対して申請を行うことにより、コレスポンデントネットワークの所有を偽装することが可能となってしまう。
【００１９】
以上のような問題に鑑みて、本発明は、ネットワークを管理している通信ノードが、別の通信ノードに対して、そのネットワークを実際に管理していることを証明できるようにすることを第１の目的とする。
【００２０】
また、本発明は、通信相手ノードが、モバイルルータがＢＵメッセージ内に記載されたネットワークプリフィックスを実際に管理していることを確認できるようにすることを第２の目的とする。
【００２１】
また、本発明は、コレスポンデントルータの通信相手となるモバイルルータが、コレスポンデントルータが実際にコレスポンデントネットワークを代理していることを確認できるようにすることを第３の目的とする。
【課題を解決するための手段】
【００２２】
上記の第１の目的を達成するため、本発明では、ネットワークを管理している通信ノードが、別の通信ノードに対してネットワークの識別情報（ネットワークプリフィックス）を申請し、別の通信ノードが、そのネットワークの識別情報を宛て先とするメッセージのやり取りを行うことによって、ネットワークの識別情報を申請した通信ノードによって、そのネットワークが管理されていることを確認する。
【００２３】
また、上記の第２の目的を達成するため、本発明では、モバイルルータと通信相手ノードとの間、又はコレスポンデントルータとモバイルルータとの間で行われるＲＲ手順を改良する。改良されたＲＲ手順は、モバイルネットワークのネットワークプリフィックス、気付アドレス、ホームアドレスの関連付け（バインディング）を登録する前に行われる。
【００２４】
この改良されたＲＲ手順では、最初にモバイルルータが、ＨｏＴＩメッセージ内に、所有しているネットワークプリフィックスの一部又はすべてを記載する。通信相手ノードは、このネットワークプリフィックスを参照し、通常のＨｏＴメッセージに加えて、ＨｏＴＩメッセージに含まれているネットワークプリフィックス用の新たなメッセージ（Network Prefix Test（ＮＰＴ）メッセージ）を送信する。なお、ネットワークプリフィックスが複数存在する場合には、通信相手ノードは、それぞれのネットワークプリフィックスに対応したＮＰＴメッセージの送信を行うことが可能である。
【００２５】
ＮＰＴメッセージは、ネットワークプリフィックスに基づいて暗号化により生成されたトークンを含んでおり、ネットワークプリフィックスを含むアドレスに向けて送信される。モバイルルータは、すべてのＮＰＴメッセージを受信（intercept）して、各ＮＰＴメッセージ内のトークンを格納する。モバイルルータから通信相手ノードに送信されるＢＵメッセージには、検証を行うためのチェックサムが含まれる。ここでは、このチェックサムは、通信相手ノードから送信されたＨｏＴ、ＣｏＴ、ＮＰＴの各メッセージに含まれているトークンを用いて生成される。この方法によって、通信相手ノードは、モバイルルータの気付アドレスとホームアドレスとの関連付けや、モバイルルータが所有している旨を申請したネットワークプリフィックスが、本当にモバイルルータによって所有されているか否かを検証することが可能となり、本発明の第２の目的が達成される。これにより、通信相手ノードは、ネットワークプリフィックスの検証を行った後に、ルーティング情報のセットアップを行い、パケットのカプセル化やその他の方法によって、ネットワークプリフィックスに由来するアドレス宛てのパケットを、モバイルルータの気付アドレスに、ホームエージェントを経由しないで直接転送することが可能となる。
【００２６】
この改良されたＲＲ手順では、コレスポンデントルータが、ＨｏＴＩメッセージ又はＣｏＴメッセージ内に、プロキシ機能によって代理しているネットワークプリフィックスの一部又はすべてを記載する。通信相手ノードは、このネットワークプリフィックスを参照し、ＨｏＴＩメッセージ又はＣｏＴメッセージに含まれているネットワークプリフィックス用の新たなメッセージ（Network Prefix Test（ＮＰＴ）メッセージ）を送信する。なお、ネットワークプリフィックスが複数存在する場合には、通信相手ノードは、それぞれのネットワークプリフィックスに対応したＮＰＴメッセージの送信を行うことが可能である。
【００２７】
ＮＰＴメッセージは、ネットワークプリフィックスに基づいて暗号化により生成されたトークンを含んでおり、ネットワークプリフィックスを含むアドレスに向けて送信される。コレスポンデントルータは、すべてのＮＰＴメッセージを受信（intercept）して、各ＮＰＴメッセージ内のトークンを格納する。コレスポンデントルータから通信相手ノードに送信されるメッセージには、検証を行うためのチェックサムが含まれる。ここでは、このチェックサムは、少なくとも、通信相手ノードから送信されたＮＰＴの各メッセージに含まれているトークンを用いて生成される。この方法によって、通信相手ノードは、コレスポンデントルータのアドレスとネットワークプリフィックスとの関連付けや、コレスポンデントルータが代理していると申請したネットワークプリフィックスが、本当にコレスポンデントルータによって代理されているか否かを検証することが可能となり、本発明の第３の目的が達成される。これにより、通信相手ノードは、ネットワークプリフィックスの検証を行った後に、ルーティング情報のセットアップを行い、パケットのカプセル化やその他の方法によって、ネットワークプリフィックスに由来するアドレス宛てのパケットを、コレスポンデントルータとの間に設定されるトンネルを介して、直接転送することが可能となる。
【発明の効果】
【００２８】
本発明は、上記の第１の目的を達成するための上記構成を有しており、ネットワークを管理している通信ノードが、別の通信ノードに対して、そのネットワークを実際に管理していることを証明できるようになる。
【００２９】
また、本発明は、上記の第２の目的を達成するための上記構成を有しており、通信相手ノードが、モバイルルータのホームアドレスと気付アドレスとの関連付けを検証する従来のＲＲ手順に加えて、さらに、モバイルルータがＢＵメッセージ内に記載されたネットワークプリフィックス（モバイルルータの配下に存在するモバイルネットワークを特定するネットワークプリフィックス）を実際に所有していることを確認できるようになる。
【００３０】
本発明は、上記の第３の目的を達成するための上記構成を有しており、コレスポンデントルータの通信相手となるモバイルルータが、コレスポンデントルータが実際にコレスポンデントネットワークを代理していることを確認できるようになる。
【図面の簡単な説明】
【００３１】
【図１】本発明の第１の実施の形態における通信システムを示す図
【図２】本発明の第１の実施の形態における改良されたＲＲ手順のシーケンスを示す図
【図３】本発明の第１の実施の形態におけるＣｏＴＩメッセージの内容の一例を示す図
【図４】本発明の第１の実施の形態におけるＣｏＴメッセージの内容の一例を示す図
【図５】本発明の第１の実施の形態におけるＨｏＴＩメッセージの内容の一例を示す図
【図６】本発明の第１の実施の形態におけるＨｏＴメッセージの内容の一例を示す図
【図７】本発明の第１の実施の形態におけるＮＰＴメッセージの内容の一例を示す図
【図８】本発明の第１の実施の形態におけるＢＵメッセージの内容の一例を示す図
【図９】本発明の第１の実施の形態におけるＸＢＵＬの構造を示す図
【図１０】本発明の第１の実施の形態におけるアルゴリズムのフローチャートを示す図
【図１１】本発明の第１の実施の形態におけるステップＳ１２００の入力パケットの処理に係る付加処理を示す図
【図１２】本発明の第１の実施の形態において、通信相手ノードが行う、受信したＢＵメッセージの有効性をチェックするためのアルゴリズムを示す図
【図１３】本発明の第１の実施の形態における改良されたＲＲ手順において、低減された帯域幅に関するメッセージシーケンスを示す図
【図１４】本発明の第１の実施の形態におけるＰＨｏＴＩメッセージの内容の一例を示す図
【図１５】本発明の第１の実施の形態におけるＰＨｏＴメッセージの内容の一例を示す図
【図１６】本発明の第１の実施の形態における通信相手ノードがＮＰＫトークンの生成時に送信先アドレスを用いることを前提とした場合のモバイルルータにおける処理の一例を示すフローチャート
【図１７】本発明の第１の実施の形態において、モバイルルータが、これまでの経路最適化に係る動作結果を保持できるように構成されている場合の動作例を示すフローチャート
【図１８】本発明の第２の実施の形態における通信システムを示す図
【図１９】本発明の第２の実施の形態において、コレスポンデントルータが管理するコレスポンデントネットワークに係るネットワークプリフィックスをモバイルルータに登録する際の動作のシーケンスを示す図
【図２０】本発明の第２の実施の形態におけるモバイルルータとコレスポンデントルータとの間の最適化されたＲＲ手順のメッセージシーケンスを示す図
【図２１】本発明の第３の実施の形態における通信システムを示す図であり、（ａ）は、本発明の第３の実施の形態における通信システムの概要を示す図、（ｂ）は、一方の通信ノードが、配下にモバイルネットワークを有するモバイルルータである場合を示す図、（ｃ）は、一方の通信ノードが、所定のネットワークの代理ルータとして機能する固定ルータである場合を示す図、（ｄ）は、複数の固定ルータによって固定ネットワークが管理されている場合を示す図
【図２２】本発明の第３の実施の形態における動作のシーケンスを示す図
【発明を実施するための形態】
【００３２】
本明細書では、ネットワークプリフィックス及び気付アドレスの収集を確認するための通信システム及びこの通信システムに関連する装置、方法が開示される。以下、本発明の理解を容易にするため、用語の定義を行う。
【００３３】
（i）「パケット」は、データネットワーク上で伝送可能な、任意のフォーマットのデータの独立した（self-contained）ユニットである。通常、「パケット」は「ヘッダ」部分と「ペイロード」部分の２つの部分により構成される。「ペイロード」部分には、伝送されるデータが含まれており、「ヘッダ」部分には、パケットの伝送を支援するための情報が含まれている。なお、「ヘッダ」部分には、「パケット」の送信者及び受信者のそれぞれを識別するために、送信元アドレス（source address）及び送信先アドレス（destination address）が含まれる必要がある。
【００３４】
（ii）「モバイルノード」は、グローバルなパケット交換データ通信ネットワークへの接続ポイントを変更するネットワークエレメントである。この「モバイルノード」は、エンドユーザ端末、ゲートウェイやルータなどの中継端末、グローバルなパケット交換データ通信ネットワークへの接続ポイントを変更することが可能なインテリジェントネットワークハブを示す用語として使用する場合もある。また、「モバイルノード」がエンドユーザ端末の場合には、より明確に「モバイルホスト」と呼ばれ、「モバイルノード」が、ゲートウェイ、ルータ、インテリジェントネットワークハブなどとして機能する中間的なネットワークエレメントの場合には、より明確に「モバイルルータ」と呼ばれる。
【００３５】
（iii）「モバイルネットワーク」は、モバイルネットワークに対して、グローバルなパケット交換データ通信ネットワークへの接続性を提供する１つ又は複数のモバイルルータを含み、全体として移動を行うことが可能なノードのネットワークである。このモバイルルータを利用してグローバル接続性を獲得するモバイルネットワーク内の他のネットワークエレメントは、「モバイルネットワークノード」と呼ばれる。これらの「モバイルネットワークノード」は、モバイルルータによって通知される１つ又は複数のネットワークプリフィックスを用いて構成されたアドレスを有している。
【００３６】
（iv）「ホームアドレス」は、モバイルノードに割り当てられているプライマリグローバルアドレスであり、モバイルノードが接続しているグローバルなパケット交換データ通信ネットワークの接続ポイントによらずに、モバイルノードの位置を特定するために利用可能である。なお、本明細書では、ホームアドレス（home-address）を簡略化して、ＨｏＡと呼ぶことがある。
【００３７】
（v）グローバルなパケット交換データ通信ネットワークに接続されたモバイルノードに関し、そのモバイルノードのホームアドレスが、接続ポイントの周辺領域で使用されているアドレスと一致するトポロジを有している場合、このモバイルノードは「ホームに存在する（at home）」と呼ばれる。また、この接続ポイントの近隣領域は、唯一の管理権限者によって制御されており、モバイルノードの「ホームドメイン」と呼ばれる。
【００３８】
（vi）グローバルなパケット交換データ通信ネットワークに接続されたモバイルノードに関し、そのモバイルノードのホームアドレスが、接続ポイントの周辺領域で使用されているアドレスと一致しないトポロジを有している場合、このモバイルノードは「ホームから離れている（away）」と呼ばれる。また、この場合の接続ポイントの周辺領域は、「フォーリンドメイン」と呼ばれる。
【００３９】
（vii）「気付アドレス」は、ホームから離れた状態にあるモバイルノードに対して割り当てられる一時的なグローバルアドレスであり、割り当てられた「気付アドレス」は、モバイルノードがグローバルなパケット交換データ通信ネットワークに接続する接続ポイントの周辺領域で使用されているアドレスと、同一のトポロジを有している。なお、本明細書では、気付アドレス（care-of-address）を簡略化して、ＣｏＡと呼ぶことがある。
【００４０】
（viii）「ホームエージェント」は、モバイルノードのホームドメインに存在するネットワークエンティティである。「ホームエージェント」は、モバイルノードがホームから離れている場合の気付アドレスの登録サービスを行うものであり、モバイルノードのホームアドレスが送信先に設定されているパケットを、モバイルノードの気付アドレスに転送することが可能である。なお、ホームエージェントは、ルータでもある。
【００４１】
（ix）「通信相手ノード」は、グローバルなパケット交換データ通信ネットワークに接続して、モバイルノード又はモバイルネットワークノードとの通信を行う任意のネットワークエレメントである。
【００４２】
（x）「ネットワークプリフィックス」は、ローカルエリアネットワークセグメントで使用されるアドレスの部分（通常は、一番左側の部分）である。「ネットワークプリフィックス」は、通常、ネットワークセグメント上のルータによって通知され、ネットワークセグメント上のノードは、このネットワークプリフィックスに基づいて、アドレスを構成することが可能である。「ネットワークプリフィックス」は、ルーティング情報を簡単なものとするために使用され、その結果、ルータは、同一ネットワークプリフィックスに由来する送信先を有するパケットが同一に経路付けされるように、送信先のネットワークプリフィックスに基づく決定を行うことが可能となる。
【００４３】
なお、以下の説明では、本発明を詳細に理解できるように、特定の数、時間、構造、その他のパラメータなどが詳しく説明されるが、こうした詳細な設定は一例であり、当業者は、こうした特定の詳細な設定を行わなくても、本発明を実行できることは明白である。
【００４４】
＜第１の実施の形態＞
まず、本発明の第１の実施の形態について説明する。図１は、本発明の第１の実施の形態における通信システムを示す図である。図１には、グローバルなパケット交換データ通信ネットワーク１００に接続された通信ノードのシステムが図示されている。モバイルルータ１１１は、アクセスルータ１０１を通じて、グローバルなパケット交換データ通信ネットワーク１００に接続されており、１つ又は複数のモバイルネットワークノード１１２を含むモバイルネットワーク１１０にグローバル接続性を提供している。この図１では、３つのモバイルネットワークノード１１２−１、１１２−２、１１２−３が図示されている。なお、モバイルネットワークノードを特に特定せずに参照する場合には、モバイルネットワークノード１１２と記載することにする。また、図１では、モバイルルータ１１１の配下にモバイルネットワーク１１０が１つのみ図示されているが、モバイルルータ１１１は、例えば、それぞれ異なるネットワークプリフィックスを有する複数のモバイルネットワーク１１０を配下に有していてもよい。なお、このような場合には、モバイルルータ１１１が提供するネットワークにおいて複数のネットワークプリフィックスが提供されており、例えば、モバイルネットワークノード１１２−１とモバイルネットワークノード１１２−２とは、それぞれ異なるネットワークプリフィックスを用いて、アドレス設定を行うことが可能な状態となる。
【００４５】
モバイルネットワークノード１１２は、ローカルエリアネットワークセグメント（リンク）１１５を通じて、モバイルルータ１１１に接続されている。このリンク１１５は、無線又は有線のどちらでもよい。一方、ホームエージェント１２０は、モバイルルータ１１１のホームエージェントであり、通信相手ノード１３０は、モバイルネットワークノード１１２と通信を行うグローバルなパケット交換データ通信ネットワーク１００に接続されたネットワークエレメントである。なお、本発明によれば、モバイルルータ１１１と通信相手ノード１３０との間でパケット交換が行われ、その結果、モバイルルータ１１１によってＢＵメッセージ内に記載されるネットワークプリフィックス及び気付アドレスが、モバイルルータ１１１のホームアドレスと関連付けられていることを、通信相手ノード１３０が確認できるようになる。このパケット交換のシーケンスは、非特許文献１に開示されているReturn Routability（ＲＲ：リターンルータビリティ）手順に改良を加えたものである。
【００４６】
図２は、本発明の第１の実施の形態における改良されたＲＲ手順のシーケンスを示す図である。モバイルルータ１１１が、通信相手ノード１３０へのＢＵメッセージの送信を行おうとする場合、まず、ＲＲ手順を開始する必要がある。ＲＲ手順では、モバイルルータ１１１は、最初に、Home-Test-Init（ＨｏＴＩ）メッセージ２０３と、Care-of-Test-Init（ＣｏＴＩ）メッセージ２０１とを通信相手ノード１３０に送信する。なお、ＨｏＴＩメッセージ２０３及びＣｏＴＩメッセージ２０１の送信順序は、どちらが先でも構わない。
【００４７】
また、ＣｏＴＩメッセージ２０１に関しては、モバイルルータ１１１は、送信元として、その気付アドレスを使用する。したがって、このパケットは、ホームエージェント１２０を経由して伝送される必要はない。
【００４８】
図３には、本発明の第１の実施の形態におけるＣｏＴＩメッセージ２０１の内容の一例が図示されている。送信元アドレス３０１及び送信先アドレス３０２には、それぞれモバイルルータ１１１の気付アドレスと通信相手ノード１３０のアドレスとが記載される。また、モビリティヘッダ３１０（パケット２０１の一部）には、このパケットがＣｏＴＩメッセージであることを示すメッセージタイプフィールド３１１が含まれる。
【００４９】
ＣｏＴＩメッセージ２０１を受信した通信相手ノード１３０は、Care-of-Testメッセージ（ＣｏＴ）メッセージ２０２によって応答を行う。なお、期間２２０は、処理による遅延（処理時間）を示している。また、ＣｏＴメッセージ２０２には、Care-of Keygen（ＣｏＫ）トークンが含まれ、モバイルルータ１１１の気付アドレスが送信先に設定される。これは、非特許文献１のオリジナルのＲＲ手順と同様であり、このＣｏＫトークンには、非特許文献１に記載のオリジナルのＲＲ手順におけるＣｏＫトークンの使用が可能である。
【００５０】
図４には、本発明の第１の実施の形態におけるＣｏＴメッセージ２０２の内容の一例が図示されている。送信元アドレス４０１及び送信先アドレス４０２には、それぞれ通信相手ノード１３０のアドレス及びモバイルルータ１１１の気付アドレスが記載される。また、モビリティヘッダ４１０（パケット２０２の一部）には、このパケットがＣｏＴメッセージ２０２であることを示すメッセージタイプフィールド４１１と、通信相手ノード１３０の秘密鍵を使用し、モバイルルータ１１１の気付アドレスに基づいて暗号化により生成された６４ビットのＣｏＫを含むＣｏＫフィールド４１２とが含まれる。
【００５１】
また、ＨｏＴＩメッセージ２０３に関しては、モバイルルータ１１１は、送信元として、自身のホームアドレスを使用する。したがって、パケットは、ホームエージェント１２０にトンネルされ、ホームエージェント１２０によって、パケットのデカプセル化が行われて、通信相手ノード１３０に転送される。なお、期間２２１は、デカプセル化などによる遅延（処理時間）を示している。また、ＨｏＴＩメッセージ２０３には、オリジナルのＲＲ手順で必要とされている情報の伝送に加えて、さらに、モバイルネットワーク１１０が有するネットワークプリフィックスのリストが記載された特別なオプションが含まれている。これは、非特許文献２ａ、２ｂに記載されているような一連のネットワークプリフィックスオプションの形式（各オプションには、１つのネットワークプリフィックスに関する情報が含まれる）とすることが可能である。
【００５２】
図５には、本発明の第１の実施の形態におけるＨｏＴＩメッセージ２０３の内容の一例が図示されている。送信元アドレス５０１及び送信先アドレス５０２には、それぞれモバイルルータ１１１のホームアドレス及び通信相手ノード１３０のアドレスが記載される。また、モビリティヘッダ５１０（パケット２０３の一部）には、このパケットがＨｏＴＩメッセージ２０３であることを示すメッセージタイプフィールド５１１が含まれる。また、さらに、１つ又は複数のネットワークプリフィックスオプション５１２が含まれていてもよい。各ネットワークプリフィックスオプション５１２には、このオプションがネットワークプリフィックスオプションであることを示すオプションタイプフィールド５２１と、ネットワークプリフィックスを１つ含むネットワークプリフィックスフィールド５２２とが含まれている。
【００５３】
ＨｏＴＩメッセージ２０３を受信した通信相手ノード１３０は、Home-Testメッセージ（ＨｏＴ）メッセージ２０４によって応答を行う。ＨｏＴメッセージ２０４には、Home Keygen（ＨｏＫ）トークンと、さらに、ＨｏＴＩメッセージ２０３の中から通信相手ノードが受け入れたネットワークプリフィックスの数などの情報も含まれている。なお、ＨｏＫトークンも、ＣｏＫトークンと同様、非特許文献１に記載のオリジナルのＲＲ手順におけるＨｏＫトークンの使用が可能である。また、通信相手ノード１３０は、後述のように、受け入れるネットワークプリフィックスの数や、特定のネットワークプリフィックスの受け入れの可否などを適宜選択できるように構成されていることが望ましい。ＨｏＴメッセージ２０４は、モバイルルータ１１１のホームアドレスに向けて送信され、その結果、ホームエージェント１２０によって、カプセル化される。なお、期間２２３は、カプセル化などによる遅延（処理時間）を示している。
【００５４】
図６には、本発明の第１の実施の形態におけるＨｏＴメッセージ２０４の内容の一例が図示されている。送信元アドレス６０１及び送信先アドレス６０２には、それぞれ通信相手ノード１３０のアドレス及びモバイルルータ１１１のホームアドレスが記載される。また、モビリティヘッダ６１０（パケット２０４の一部）には、このパケットがＨｏＴメッセージ２０４であることを示すメッセージタイプフィールド６１１と、通信相手ノード１３０の秘密鍵を使用し、モバイルルータ１１１のホームアドレスに基づいて暗号化により生成された６４ビットのＨｏＫを含むＨｏＫフィールド６１２とが含まれる。また、モビリティヘッダ６１０には、通信相手ノード１３０によって受け入れられるＨｏＴＩメッセージ２０３内のネットワークプリフィックスの数を示すフィールド（プリフィックス数フィールド）６１３も含まれるとよい。なお、このフィールド６１３は、オプションとして、モビリティヘッダ６１０に含まれるようにすることも可能である。
【００５５】
なお、ここでは、モバイルネットワーク１１０のネットワークプリフィックスがＨｏＴＩメッセージ２０３内に埋め込まれ、このネットワークプリフィックスに係る応答（例えば、上述のプリフィックス数フィールド６１３など）がＨｏＴメッセージ２０４に埋め込まれる一例について説明しているが、他のメッセージを利用して、通信相手ノード１３０が、モバイルルータ１１１の配下に存在するモバイルネットワーク１１０のネットワークプリフィックスを取得できるようにすることも可能である。すなわち、例えば、モバイルネットワーク１１０のネットワークプリフィックスをＣｏＴＩメッセージ２０１内に埋め込んで、その応答をＣｏＴメッセージ２０２内に埋め込むなど、ＣｏＴＩメッセージ２０１及びＨｏＴＩメッセージ２０３のいずれか一方又は両方と、ＣｏＴメッセージ２０２及びＨｏＴメッセージ２０４のいずれか一方又は両方との任意の組み合わせを利用して、ネットワークプリフィックスに係る情報の通知及び応答を行うことが可能である。また、ＣｏＴＩメッセージ２０１／ＣｏＴメッセージ２０２やＨｏＴＩメッセージ２０３／ＨｏＴメッセージとは独立したメッセージによって、ネットワークプリフィックスに係る情報の通知及び応答が行われてもよい。
【００５６】
ＨｏＴメッセージ２０４の送出後、通信相手ノード１３０は、次に、ＨｏＴＩメッセージ２０３内にリスト化されており、さらに通信相手ノード１３０が受け入れる各ネットワークプリフィックス用のネットワークプリフィックステスト（ＮＰＴ：Network Prefix Test）メッセージ２０５を送出する。なお、通信相手ノード１３０は、ＨｏＴＩメッセージ２０３に記載されているネットワークプリフィックスをすべて受け入れる必要はない。すなわち、通信相手ノード１３０が、通信相手ノード１３０が受信したＨｏＴＩメッセージ内に記載されているネットワークプリフィックスの中から、すべて又はいくつかのネットワークプリフィックスを受け入れたり、あるいは、全く受け入れなかったりするように構成することが可能である。この理由は、通信相手ノードがすべてのネットワークプリフィックスを受け入れなければならないとした場合には、通信相手ノード１３０は、ＨｏＴＩメッセージ２０３内のネットワークプリフィックスの数だけＮＰＴメッセージを送出しなければならないことによる。
【００５７】
例えば、攻撃者がＨｏＴＩメッセージ２０３を１つ送るだけで、その受信者は、多数のＮＰＴメッセージ２０５の応答を行わなければならなくなってしまい、すなわち、すべてのネットワークプリフィックスの受け入れが要請されている場合には、分散フラッド攻撃（distributed flooding attack）に使用されてしまう可能性がある。このような理由から、通信相手ノード１３０が、ＨｏＴＩメッセージ２０３内のネットワークプリフィックスのリストから、受け入れるネットワークプリフィックスのサブセットを選択できるようにしている。また、これにより、通信相手ノード１３０が、通信相手ノード１３０のルーティング構成と矛盾する可能性のあるネットワークプリフィックスを排除できるようにすることも可能となる。
【００５８】
このＮＰＴメッセージ２０５は、（ａ）ＨｏＫの代わりにNetwork Prefix Keygen（ＮＰＫ）トークンを含んでおり、（ｂ）当該ＮＰＴメッセージ２０５に対応するネットワークプリフィックスを含む送信先アドレスが設定されることを除いて、ＨｏＴメッセージ２０４と同様の形式にすることが可能である。なお、上記のネットワークプリフィックスを含む送信先アドレスとは、ネットワークプリフィックスオプション５１２内の特定のネットワークプリフィックスを含むプリフィックス部を有する送信先アドレスである。ネットワークプリフィックスを含む送信先アドレスの一例としては、所定のネットワークプリフィックスを含むプリフィックス部にランダムに生成されたホスト部が付加されたアドレス、所定のネットワークプリフィックスを含むプリフィックス部に特定の値を有するホスト部が付加されたアドレス、所定のネットワークプリフィックスを含むプリフィックス部にモバイルルータ１１１から任意の方法によって通知された値を有するホスト部が付加されたアドレスなどが挙げられる。
【００５９】
図７には、本発明の第１の実施の形態におけるＮＰＴメッセージ２０５の内容の一例が図示されている。送信元アドレス７０１には、通信相手ノード１３０のアドレスが記載され、送信先アドレス７０２には、ネットワークプリフィックスオプション５１２内の特定のネットワークプリフィックスを含むアドレスが記載される。また、モビリティヘッダ７１０（パケット２０５の一部）には、このパケットがＮＰＴメッセージ２０５であることを示すメッセージタイプフィールド７１１と、通信相手ノード１３０の秘密鍵を使用し、ネットワークプリフィックスオプション５１２における特定のネットワークプリフィックスに基づいて暗号化により生成された６４ビットのＮＰＫを含むＮＰＫフィールド７１２とが含まれる。さらに、モビリティヘッダ７１０には、ＨｏＴＩメッセージ２０３から通信相手ノード１３０が受け入れるネットワークプリフィックスを記載するためのネットワークプリフィックスオプション５１２を含ませることも可能である。
【００６０】
なお、ＨｏＴＩメッセージ２０３には多数のネットワークプリフィックスが含まれているかもしれず、通信相手ノード１３０は、多数のＮＰＴメッセージを送る必要が生じる場合もある。すなわち、ＨｏＴＩメッセージ２０３の受信後、ネットワークのトラフィックに係るバーストが引き起こされる可能性がある。したがって、例えば、通信相手ノード１３０が、各ＮＰＴメッセージ２０５の送信を少しずつずらすようにしてもよい。これは、図２において、期間２２２が相対的に長くなるように図示されていることに反映されている。なお、処理の遅延などの連続的なＮＰＴメッセージ２０５の送信による遅延は、所定の最大値t_NPT_delayを超えないようにする必要がある。
【００６１】
各ＮＰＴメッセージ２０５は、モバイルネットワーク１１０内のネットワークプリフィックスから構成されるアドレスに対して送信されるものであり、ホームエージェント１２０に発送される。通常の動作では、ホームエージェント１２０は、こうしたＮＰＴメッセージ２０５をカプセル化して、モバイルルータ１１１の気付アドレスにトンネルする。なお、期間２２３は、カプセル化などによる遅延（処理の遅延）を表している。なお、各ＮＰＴ２０５メッセージは、ＨｏＴメッセージ２０４と同一経路を通るメッセージであり、ＮＰＴメッセージ２０５に含まれるＮＰＫトークンや、ネットワークプリフィックスオプション５１２をＨｏＴメッセージ２０４に含ませることによって、ＮＰＴメッセージ２０５をＨｏＴメッセージ２０４で代用することも可能である。
【００６２】
モバイルルータ１１１は、ＨｏＴＩメッセージ２０３を送出した後にタイマを始動して、ＮＰＴメッセージ２０５及びＨｏＴメッセージ２０４に係る情報収集の待機状態となる。これは、期間２２４によって図示されている。この期間２２４は、通信相手ノード１３０がＨｏＴＩメッセージ２０３内に記載されたすべてのネットワークプリフィックスを受け入れると仮定した場合に、すべてのＮＰＴメッセージ２０５及びＨｏＴメッセージ２０４の受信を可能とするだけの充分な時間が与えられる必要がある。したがって、期間２２４として妥当な期間t_waitは、同じ経路を通じてモバイルルータ１１１からホームエージェント１２０にパケットを送信し、再び同一経路でモバイルルータ１１１に戻ってくるまでの往復の遅延t_rttを見積もって計算されてもよい。最短の待機期間t_waitは、例えば、t_rttと、ＨｏＴＩメッセージ２０３内に記載されたネットワークプリフィックスの数を乗じたt_NPT_delayとの総和によって与えられる。これは、付加的な遅延発生の原因となるネットワーク輻輳が存在しないと仮定した場合に最も取り得る値である。また、期間t_waitにもう少し余裕を与える場合には、例えば、t_rttの２倍の値と、ＨｏＴＩメッセージ２０３内に記載されたネットワークプリフィックスの数を乗じたt_NPT_delayとの総和としてもよい。
【００６３】
この期間２２４の間、モバイルルータ１１１は、すべてのＮＰＴメッセージ２０５を受信（intercept）する必要がある。しかしながら、ＮＰＴメッセージ２０５は、モバイルルータ１１１のアドレスに対して、直接送信されているものではなく、その代わり、モバイルネットワーク１１０におけるネットワークプリフィックスを含むアドレスに対して送信されている。したがって、モバイルルータ１１１は、これらのＮＰＴメッセージ２０５を捕らえられるように、期間２２４の間は、ホームエージェント１２０からトンネルされたパケットに対して、特別なスキャンを実行する必要がある。そのためには、例えば、モバイルルータ１１１は、ホームエージェント１２０からトンネルされたパケットであり、通信相手ノード１３０のアドレスに等しい送信元アドレスと、ＨｏＴＩメッセージ２０３に記載されたモバイルルータ１１１のネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとが設定されたすべてのパケットのチェックを行う。なお、ここでは、モバイルルータ１１１は、ＮＰＴメッセージ２０５として識別された各パケットにおけるモビリティヘッダ７１０のチェックを行う。
【００６４】
モバイルルータ１１１がＮＰＴメッセージ２０５をすべて受信した後、又は期間２２４が満了となった後、モバイルルータ１１１は、ＢＵメッセージ２０６の送信処理に移行することが可能となる。なお、ここでは、モバイルルータ１１１がＣｏＴメッセージ２０２及びＨｏＴメッセージ２０４の受信に成功したと仮定し、ＣｏＴメッセージ２０２又はＨｏＴメッセージ２０４のいずれか１つが受信されなかった場合には、ＲＲ手順は失敗したとみなされて、モバイルルータ１１１は、所定の期間が経過するまでＲＲ手順の実行を試みないと仮定する。なお、モバイルルータ１１１がＣｏＴメッセージ２０２及びＨｏＴメッセージ２０４の両方の受信に成功しても、本発明に係る改良されたＲＲ手順が失敗したとみなされる場合も存在する。こうした場合におけるエラー処理の詳細に関しては、後で説明する。
【００６５】
モバイルルータ１１１が送信するＢＵメッセージ２０６は、モバイルルータ１１１の気付アドレスに等しい送信元アドレスを有している。したがって、ＢＵメッセージ２０６は、ホームエージェント１２０へのトンネルを経由しない。また、ＢＵメッセージ２０６には、モバイルルータ１１１が受信したＮＰＴメッセージ２０５に関連するネットワークプリフィックスを含むネットワークプリフィックスオプションのリストが含まれる。また、さらに、ＢＵメッセージ２０６には、受信したＨｏＫ、ＣｏＫ、及びすべてのＮＰＫトークンを連結することによって順次生成される鍵を使用して、暗号化により生成された認証情報値が含まれる。なお、ＮＰＫトークンの連結では、モバイルルータ１１１は、ＮＰＫトークンの順番が、ＢＵメッセージ２０６内におけるネットワークプリフィックスの順番と同一となるようにするなど、ＮＰＫトークンとネットワークプリフィックスとの対応関係が確実に把握できるようにすることが望ましい。また、生成する認証情報値に関しても、ＢＵメッセージ２０６の完全性（integrity）を保護するために、ＢＵメッセージ２０６の実際の内容に基づいて生成される必要がある。
【００６６】
図８には、本発明の第１の実施の形態におけるＢＵメッセージ２０６の内容の一例が図示されている。送信元アドレス８０１及び送信先アドレス８０２には、それぞれモバイルルータ１１１の気付アドレス及び通信相手ノード１３０のアドレスが記載される。また、ＢＵメッセージ２０６には、ホームアドレスオプション８０３が含まれ、送信者のホームアドレス（すなわち、モバイルルータ１１１のホームアドレス）を受信者に対して通知することが可能である。また、モビリティヘッダ８１０（パケット２０６の一部）には、このパケットがＢＵメッセージであることを示すメッセージタイプフィールド８１１と、受信したＨｏＫ、ＣｏＫ、及びすべてのＮＰＫトークンを連結することによって順次生成される鍵を使用して、暗号化によって生成された９６ビットのチェックサムを含む認証情報フィールド８１２とが含まれる。さらに、モビリティヘッダ８１０には、モバイルルータ１１１が受信した各ＮＰＴメッセージのネットワークプリフィックスに対応するネットワークプリフィックスオプション５１２を１つ又は複数含ませることも可能である。なお、ネットワークプリフィックスオプション５１２が現れる順序を、認証情報フィールド８１２内の暗号化されたチェックサムの生成時に使用された、対応するＮＰＫの順序と同一とするなど、ネットワークプリフィックスとＮＰＫとの対応関係が把握できるようにすることが望ましい。
【００６７】
ＢＵメッセージ２０６の送信によって、改良されたＲＲ手順は完了する。このとき、ＢＵメッセージ２０６を受信した通信相手ノード１３０は、バインディングアクノレッジメント（ＢＡ：Binding Acknowledgement）メッセージによって、適宜、承認を行うことも可能である。なお、本発明に係る改良されたＲＲ手順では、必ずしもＢＡメッセージの内容に対する変更を行う必要はないが、通信相手ノード１３０が、ＢＡメッセージに変更を加え、ＢＡメッセージによって、特定のネットワークプリフィックスに関するアップデートの成功もしくは失敗を通知できるようにすることも可能である。
【００６８】
なお、上述のように、通信相手ノード１３０が送信するＮＰＴメッセージ２０５の送信先アドレスに係るホスト部には、ランダムな値が挿入されてもよい。また、ホスト部に特定の値（例えば、特定のルールによって、ＮＰＴメッセージ２０５の宛て先に用いられるように定められた特定の値）を使用してもよく、また、モバイルルータ１１１が、ＮＰＴメッセージ２０５の宛て先としての使用を要求するアドレスを通信相手ノード１３０に通知し、この値をホスト部に用いてもよい。
【００６９】
なお、特定の値や、モバイルルータ１１１によって通知されたアドレスが、ＮＰＴメッセージ２０５の送信先アドレスのホスト部として使用されている場合には、モバイルルータ１１１は、ＮＰＴメッセージ２０５が含まれるパケットのスキャン処理を容易に行うことが可能となる。すなわち、モバイルルータ１１１は、パケットのアドレスをスキャンし、特定のネットワークプリフィックスを含み、かつ、特定の値のホスト部やモバイルルータが使用を通知したホスト部が、送信先アドレスとして設定されたパケットを拾い上げることによって、ＮＰＴメッセージ２０５を含むパケットを容易に取得することが可能である。
【００７０】
なお、モバイルルータ１１１が、通信相手ノード１３０に対して、ＮＰＴメッセージ２０５の宛て先としての使用を要求するアドレスを通知する場合には、例えば、ＨｏＴＩメッセージ２０３にこのアドレスのホスト部の値を挿入して、通知を行うことが可能である。ただし、アドレス通知にＨｏＴＩメッセージ２０３を利用する場合には、図５に図示されているＨｏＴＩメッセージ２０３のメッセージフィールドに加えて、ＮＰＴメッセージ２０５の宛て先として使用されることを望むアドレスに係るホスト部を挿入するための新たなオプションフィールドが必要となる。
【００７１】
また、上述のように、ＨｏＴメッセージ２０４に含まれるＨｏＫトークン、ＣｏＴメッセージ２０２に含まれるＣｏＫトークン、ＮＰＴメッセージ２０５に含まれるＮＰＫトークン、ＢＵメッセージ２０６に含まれる認証情報値は、それぞれ暗号化によって生成されるが、基本的には非特許文献１に記載の方法に準拠して生成されることが望ましい。特に、ＨｏＫトークン及びＣｏＫトークンに関しては、上述のように、非特許文献１に記載の方法によって生成されるものをそのまま使うことが可能である。
【００７２】
また、ＮＰＫトークンは通信相手ノード１３０で生成されるものであり、例えば、受け入れるネットワークプリフィックス(Prefix）、受け入れるネットワークプリフィックスの数を通知するＨｏＴメッセージ２０４内のＨｏＫトークンと同一の値が設定されてＨｏＫトークンとの対応関係を識別可能とするNonce値（Nonce）、ＮＰＫトークンであることを示す特定の値（例えば0x02）を連結し、通信相手ノード１３０のみが知る秘密鍵（KCN）と共にHMAC_SHA1と呼ばれる暗号化に関するハッシュ関数を用いて生成される値の先頭６４ビットを用いることが可能である。すなわち、
NPK = First(64,HMAC_SHA1(KCN, (Prefix|Nonce|0x02)))
とすることが可能である。
【００７３】
なお、ここでは、ネットワークプリフィックスを用いてＮＰＫトークンを生成しているが、通常はネットワークプリフィックスよりも長いアドレス自体を用いてトークンの生成が行われるという処理の互換性の観点から、ネットワークプリフィックスを用いる代わりに、ネットワークプリフィックス及びホスト部により構成されるＮＰＴメッセージの送信先アドレス（Prefix.Address）を用いてもよい。すなわち、
NPK = First(64,HMAC_SHA1(KCN, (Prefix.Address|Nonce|0x02)))
とすることが可能である。なお、このＮＰＫトークンは、通信相手ノード１３０によって生成される。
【００７４】
また、ＢＵメッセージ２０６に含まれる認証情報値（Auth）は、例えば、ＨｏＫ、ＣｏＫ、及びすべてのＮＰＫトークンが連結された値に対して、セキュアハッシュアルゴリズムSHA1を適用した値（Kbm）と、モバイルルータ１１１の気付アドレス（MR.CoA）、通信相手ノード１３０のアドレス（CN address）、ＢＵメッセージ全体（BU）を連結した値とに対して、HMAC_SHA1と呼ばれる暗号化に関するハッシュ関数を用いて生成される値の先頭９６ビットを用いることが可能である。すなわち、
Auth = First(96,HMAC_SHA1(Kbm, (MR.CoA|CN address|BU)))
Kbm = SHA1(HoK|CoK|NPK| . . . |NPK)
とすることが可能である。なお、この認証情報値は、モバイルルータ１１１によって生成される。
【００７５】
なお、ＮＰＫトークンの生成にネットワークプリフィックスを用いた場合と、ネットワークプリフィックス及びホスト部により構成される送信先アドレスを用いた場合とでは、モバイルルータ１１１や通信相手ノード１３０の処理に若干の違いが生じることになる。通信相手ノード１３０は、モバイルルータ１１１からのＢＵメッセージ２０６に含まれる認証情報値の検証を行う場合、ＮＰＫトークンの生成に用いられたネットワークプリフィックス、又は、ネットワークプリフィックス及びホスト部により構成される送信先アドレスを知る必要がある。
【００７６】
通信相手ノード１３０がＮＰＫトークンの生成時にネットワークプリフィックスを用いた場合には、通信相手ノード１３０は、例えば、図８に図示されているＢＵメッセージ２０６内のネットワークプリフィックスオプション５１２に含まれるネットワークプリフィックスを用いることによって、検証用の認証情報値を生成して、ＢＵメッセージ２０６の検証を行うことが可能である。
【００７７】
一方、通信相手ノード１３０がＮＰＫトークンの生成時に送信先アドレスを用いた場合には、通信相手ノード１３０は、モバイルルータ１１１からのＢＵメッセージ２０６の検証の際に、何らかの方法によって、この送信先アドレスを把握する必要がある。
【００７８】
ここで、上述のように、通信相手ノード１３０がＮＰＫトークンの生成時に送信先アドレスを用いることを前提とした場合のモバイルルータ１１１における処理について説明する。図１６は、本発明の第１の実施の形態における通信相手ノードがＮＰＫトークンの生成時に送信先アドレスを用いることを前提とした場合のモバイルルータにおける処理の一例を示すフローチャートである。
【００７９】
まず、モバイルルータ１１１は、ＮＰＴメッセージ２０５の送信先アドレスに使用されるアドレス（ＮＰＫトークンの生成に使用されるアドレス）がどのようなものになるか、すなわち、送信先アドレスのホスト部がランダムに生成されるか、特定のルールによって特定の値がホスト部に使用されるように定められているか、モバイルルータ１１１が所望のホスト部の値の通知を行う（使用を要求する）かの３つのパターンのうちのどのパターンであるかを把握する（ステップＳ４０００、Ｓ４１００）。
【００８０】
なお、ステップＳ４０００、Ｓ４１００は、必ずしもモバイルルータ１１１が行う判断を表すものではなく、本発明に係る通信システムの場合分けについても言及している。すなわち、送信先アドレスのホスト部がランダムに生成されるように規定されている通信システムでは、モバイルルータ１１１はステップＳ４０５０以降の処理を行い、送信先アドレスのホスト部には、特定のルールに従った特定の値が使用されるように定められている通信システムでは、モバイルルータ１１１はステップＳ４１５０以降の処理を行い、モバイルルータ１１１が所望のホスト部の値の通知を行うように規定されている通信システムでは、モバイルルータ１１１はステップＳ４３００以降の処理を行う。
【００８１】
ＮＰＴメッセージ２０５の送信先アドレスに使用されるアドレスに、特定のルールに基づく特定の値がホスト部に使用される場合（ステップＳ４０００で『はい』）や、送信先アドレスのホスト部がランダムに生成される場合（ステップＳ４１００で『いいえ』）には、モバイルルータ１１１は、通信相手ノード１３０に対して、ネットワークプリフィックスのみを通知すればよく、ホスト部の通知は行わない（ステップＳ４０５０、Ｓ４１５０）。
【００８２】
一方、モバイルルータ１１１が所望のホスト部の値の通知を行う場合（ステップＳ４１００で『はい』）には、例えば、上述のように、ＨｏＴメッセージ２０４やその他のメッセージによって、ホスト部として通信相手ノード１３０に使用させる特定の値の通知を行う（ステップＳ４２００）とともに、そして、通信相手ノード１３０に対して通知したホスト部の値を任意の記憶媒体に記憶する（ステップＳ４３００）。なお、ここで記憶媒体に記憶されたホスト部の値は、少なくとも通信相手ノード１３０に対して送信するＢＵメッセージ２０６が生成されるまで記憶される。以上の処理は、ＨｏＴＩメッセージ２０３の送信前及び送信時にモバイルルータ１１１によって行われる。
【００８３】
次に、上述した３つのパターンのそれぞれに関するＨｏＴメッセージ２０４の受信後の処理について説明する。特定のルールに基づく特定の値がホスト部に使用される場合には、ＮＰＴメッセージ２０５の送信先アドレスは、特定のネットワークプリフィックス及び特定の値のホスト部によって構成されている。したがって、モバイルルータは、特別な処理を行うことなく、通信相手ノード１３０に対して、図８に示すＢＵメッセージ２０６を生成して送信すればよい（ステップＳ４５００）。
【００８４】
また、ＮＰＴメッセージ２０５の送信先アドレスのホスト部がランダムに生成される場合には、複数のＮＰＴメッセージ２０５のそれぞれの送信先アドレスは、対応する特定のネットワークプリフィックス及びランダムな値のホスト部により構成されている。したがって、モバイルルータ１１１は、各ＮＰＴメッセージ２０５の送信先アドレス（特に、ランダムな値のホスト部）を記憶し（ステップＳ４６００）、ＢＵメッセージ２０６を生成、送信する際に（ステップＳ４６２５）、各ＮＰＴメッセージ２０５の送信先アドレス又はそのホスト部の値を通信相手ノード１３０に通知する（ステップＳ４６５０）。なお、モバイルルータ１１１は、ＮＰＴメッセージ２０５の送信先アドレス又はホスト部を含むための新たなオプションフィールドが加えられたＢＵメッセージ２０６によって、ＮＰＴメッセージ２０５の送信先アドレス又はホスト部を通信相手ノード１３０に通知してもよく、また、その他のメッセージを用いて通信相手ノード１３０に通知してもよい。これにより、通信相手ノード１３０は、モバイルルータ１１１から受信したＢＵメッセージ２０６の検証を行うことが可能となる。
【００８５】
また、モバイルルータ１１１が所望のホスト部の値の通知を行う場合には、複数のＮＰＴメッセージ２０５のそれぞれの送信先アドレスは、対応する特定のネットワークプリフィックス及びモバイルルータ１１１が通知した値のホスト部により構成されている。また、各ＮＰＫトークンも、モバイルルータ１１１が通知した値のホスト部を含む送信先アドレスから生成されている。したがって、モバイルルータ１１１は、ＢＵメッセージ２０６を生成、送信する際に（ステップＳ４７００）、ステップＳ４３００で記憶されたホスト部の値を通信相手ノード１３０に通知する（ステップＳ４７５０）。なお、モバイルルータ１１１は、通知したホスト部の値を含むための新たなオプションフィールドが加えられたＢＵメッセージ２０６によって、通信相手ノード１３０にその使用を要求するとともに記憶したホスト部を、通信相手ノード１３０に通知してもよく、また、その他のメッセージを用いて通信相手ノード１３０に通知してもよい。これにより、通信相手ノード１３０は、モバイルルータ１１１から受信したＢＵメッセージ２０６の検証を行うことが可能となる。
【００８６】
また、上述の図２を用いた説明では、本発明に係る改良されたＲＲ手順が成功した場合について言及しているが、本発明に係るＲＲ手順が失敗するか、あるいは、完全には成功しない場合も存在する。以下に、本発明に係るＲＲ手順が失敗するか、あるいは、完全には成功しない場合のいくつかの例について説明する。
【００８７】
まず、上述のように、ＣｏＴメッセージ２０２又はＨｏＴメッセージ２０４がモバイルルータ１１１に戻ってこない場合には、ＲＲ手順は失敗に終わったとみなされ、所定の期間だけ待った後に、本発明に係る改良されたＲＲ手順が再度行われることが望ましい。
【００８８】
また、ＣｏＴメッセージ２０２及びＨｏＴメッセージ２０４はモバイルルータ１１１に戻ってきたが、ＮＰＴメッセージの一部又はすべてが戻ってこない場合も考えられる。このような場合には、モバイルルータ１１１は、ＣｏＴＩメッセージ２０１及びＨｏＴＩメッセージ２０３を送信して、本発明に係る改良されたＲＲ手順を再度行ってもよい。また、受信した一部のＮＰＴメッセージ２０５に対応したネットワークプリフィックス（ネットワークプリフィックスの一部）のみをＢＵメッセージ２０６の送信によってアップデートしてもよく、残りのネットワークプリフィックス（未登録に終わったネットワークプリフィックス）に関しては、後でもう一度、本発明に係る改良されたＲＲ手順を行ってもよい。なお、この場合には、モバイルルータ１１１においてＲＲ手順が行われた履歴（具体的には、例えば、各通信相手ノード１３０に対して、本発明に係る改良されたＲＲ手順によるアップデートが完了したネットワークプリフィックスと、未完了のネットワークプリフィックスとの判別が可能となる情報）が、モバイルルータ１１１が参照可能な記憶媒体内に保持されることが望ましい。
【００８９】
また、ＣｏＴメッセージ２０２やＨｏＴメッセージ２０４が返ってくる代わりに、通信相手ノード１３０からモバイルルータ１１１に対して、ＩＣＭＰ（Internet Control Message Protocol）などによるエラーメッセージが返ってくる場合がある。この場合は、通信相手ノード１３０が、本発明に係る改良されたＲＲ手順だけでなく、従来のＲＲ手順（すなわち、モバイルＩＰ）にも対応していない場合に生じ得る。したがって、モバイルルータ１１１は、通信相手ノード１３０との間の経路最適化をあきらめ、この通信相手ノード１３０に対して、本発明に係る改良されたＲＲ手順を再度行わないように制御することが望ましい。
【００９０】
また、ＨｏＴメッセージ２０４が返ってきたが、その中にプリフィック数フィールド６１３が存在しない場合も考えられる。この場合は、通信相手ノード１３０が、従来のＲＲ手順（すなわち、モバイルＩＰ）には対応しているものの、本発明に係る改良されたＲＲ手順には対応していないことを意味する。したがって、モバイルルータ１１１は、通信相手ノード１３０に対して、従来のＲＲ手順に係る処理のみを行うことが可能である。なお、この従来のＲＲ手順では、モバイルルータ１１１自身が通信相手ノード１３０と通信を行う際の経路が最適化されるが、モバイルルータ１１１の配下に存在するノード（例えば、モバイルネットワークノード１１２−１）と通信相手ノード１３０との間の経路は最適化されない。したがって、モバイルルータ１１１が、モバイルルータ１１１の配下に存在するノードのためだけに経路最適化を行っているような場合には、むしろモバイルルータ１１１がＢＵメッセージ２０６を送信しないようにするほうが無駄なメッセージの送受信が行われず、有益であると言える。
【００９１】
なお、上述のように、モバイルルータ１１１は、ＮＰＴメッセージ２０５内にプリフィックス数フィールド６１３が存在するか否かをチェックすることによって、通信相手ノード１３０が、本発明に係る改良されたＲＲ手順に対応しているか否かを把握することが可能である。したがって、本発明に係る改良されたＲＲ手順に対応している通信相手ノード１３０は、ネットワークプリフィックスを１つも受け入れない場合においても、例えば、明示的にプリフィックス数フィールド６１３に０を設定したＮＰＴメッセージ２０５を返すことが望ましい。
【００９２】
また、ＨｏＫ、ＣｏＫ、及びＮＰＫトークンの収集を容易にするために、モバイルルータ１１１は、これらのトークンを格納するための特別な格納手段を保持することが望ましい。さらに、非特許文献１では、モバイルノードは、バインディングアップデートリスト（ＢＵＬ：Binding Update List）として知られる概念的なデータ構造におけるモバイルノードに関する気付アドレスとホームアドレスとの間のバインディングを、どの通信相手ノード１３０が把握しているかを覚えておくことの必要性が記載されている。ここでは、どの通信相手ノード１３０がモバイルルータ１１１のホームアドレスと気付アドレスとのバインディングを有しているかを記録する独自の機能を実現するとともに、更にＨｏＫ、ＣｏＫ、及びＮＰＫトークンの収集を容易とすることを可能とするために、モバイルルータ１１１が利用する拡張されたバインディングアップデートリスト（ＸＢＵＬ：eXtended Binding Update List）について説明する。
【００９３】
図９には、本発明の第１の実施の形態におけるＸＢＵＬ９００の構造が図示されている。ＸＢＵＬ９００は、１つ又は複数のＸＢＵＬレコード９１０を有している。各ＸＢＵＬレコード９１０には、下記のような様々なフィールドが含まれている。
【００９４】
・ＣＮアドレスフィールド９１１：通信相手ノード１３０のアドレスを記録するためのフィールド。
・ＨｏＫフィールド９１２：通信相手ノード１３０によって送信されたＨｏＴメッセージ２０４に含まれるＨｏＫトークンを記録するためのフィールド。
・ＣｏＫフィールド９１３：通信相手ノード１３０によって送信されたＣｏＴメッセージ２０２に含まれるＣｏＫトークンを記録するためのフィールド。
・プリフィックス数フィールド９１４：通信相手ノード１３０によって送信されたＨｏＴメッセージ２０４内に示される、通信相手ノード１３０によって受け入れ可能なプリフィックスの数を記録するためのフィールド。
・１つ又は複数のＮＰＫフィールド９１５：通信相手ノード１３０によって送信されたＮＰＴメッセージ２０５に含まれるＮＰＫトークンを記録するためのフィールド。
【００９５】
なお、ＮＰＫフィールド９１５が複数存在する場合には、各ＮＰＫフィールド９１５の順序は、モバイルルータ１１１が所有するネットワークプリフィックスの順序に関連付けられていることが望ましく、これによって、モバイルルータ１１１は、ＮＰＫフィールド９１５のインデックスのみに基づいて、ＮＰＫフィールド９１５とネットワークプリフィックスとの関連付けを行うことが可能となる。
【００９６】
ＨｏＫフィールド９１２、ＣｏＫフィールド９１３、及びＮＰＫフィールド９１５には、各フィールドに有効なトークンが格納されているか否かを示すための手段が設けられる必要がある。そして、有効なトークンが格納されていないことが示されている場合には、モバイルルータ１１１は、対応するＨｏＴメッセージ２０４、ＣｏＴメッセージ２０２、又はＮＰＴメッセージ２０５をまだ受信していないと推測することができる。例えば、フィールドに有効なトークンが格納されている場合には、各フィールド内に特別なビットをセットし、フィールドが空の場合には、この特別なビットがクリアされることによって、有効なトークンが格納されているか否かを示すことができる。また、あらかじめ、ある値（オール０かオール１の値など）によってトークンが構成されないように定めれば、これらの値を用いて、フィールドが空であることを示すことも可能である。
【００９７】
さらに、非特許文献１には、通信相手ノード１３０が、様々なＨｏＫ、ＣｏＫ、及びＮＰＫトークンを生成するために使用される秘密鍵を時折変えるべきであることが明記されている。したがって、通信相手ノード１３０によって使用される秘密鍵が変わる際には、これらのトークンの正当性が失われることになる。このことから、通常、これらのトークンには、所定のライフタイムが設定され、このライフタイムが尽きる際に、ＨｏＫフィールド９１２、ＣｏＫフィールド９１３、及びＮＰＫフィールド９１５に格納されている値が無効となる。
【００９８】
また、ＸＢＵＬ９００に関して、モバイルルータ１１１には、改良されたＲＲ手順をスムーズに実行するための完全な手段が設けられている。ここでは、モバイルルータ１１１が改良されたＲＲ手順を実行するために使用するアルゴリズムについて説明する。
【００９９】
図１０には、本発明の第１の実施の形態におけるアルゴリズムのフローチャートが図示されている。改良されたＲＲ手順は、ステップＳ１０００に示されるように、最初にモバイルルータ１１１がＨｏＴＩメッセージ２０３及びＣｏＴＩメッセージ２０１を送信することによって開始される。続いて、ステップＳ１１００において、モバイルルータ１１１は、期間t_waitに係るタイマを始動する。また、さらに、モバイルルータ１１１は、ＲＲメッセージ収集手順を開始して、通信相手ノード１３０から送信されたＨｏＴ、ＣｏＴ、又はＮＰＴメッセージを含むすべてのパケットを捕獲する。この処理は、基本的に、入力パケットに係る通常処理に対して取り付けられる付加処理（フック：hook）である。この付加処理を行う前に、ＸＢＵＬ９００のチェックが行われ、通信相手ノード１３０のアドレスと等しいＣＮアドレスフィールド９１１を有するＸＢＵＬレコード９１０が存在するか否かがチェックされる。このＸＢＵＬレコード９１０が発見されない場合には、新たなＸＢＵＬレコード９１０が作成される。また、モバイルルータ１１１が入力パケットを受信した場合は常に、付加処理が行われることとなる。なお、この付加処理の詳細に関しては、後で説明する（図１１を参照）。
【０１００】
この後、モバイルルータ１１１における処理は、ステップＳ１２００（タイマの満了がチェックされる）から始まるループに移行する。タイマが満了となっていない場合には、ステップＳ１３００において、モバイルルータ１１１は、ＨｏＴメッセージ２０４を受信したか否かのチェックを行う。これは、例えば、ＸＢＵＬ９００内の対応するＸＢＵＬレコード９１０のＨｏＫフィールド９１２の有効性をチェックすることによって推測可能である。ＨｏＫフィールド９１２が有効な状態の場合は、ＨｏＴメッセージ２０４が既に受信されていることが示されている。また、ＨｏＴメッセージ２０４が受信されていない場合には、アルゴリズムは、ステップＳ１２００に戻る。
【０１０１】
一方、ＨｏＴメッセージ２０４が受信されている場合には、アルゴリズムはステップＳ１４００に進み、受信したＮＰＴメッセージの数がチェックされ、ＨｏＴメッセージ２０４内に記載されている、通信相手ノード１３０によって受け入れられるネットワークプリフィックスの数より少ないか否かが確認される。これは、例えば、ＸＢＵＬ９００内の対応するＸＢＵＬレコード９１０に含まれるプリフィックス数フィールド９１４の数によって、有効なＮＰＴフィールド９１５の数をチェックすることで行われ得る。受信されたＮＰＴメッセージ２０５の数が、通信相手ノード１３０が受け入れたネットワークプリフィックスの数より少ない場合には、アルゴリズムは、ステップＳ１２００に戻る。一方、受信したＮＰＴメッセージ９１５の数が、ネットワークプリフィックスの数に等しくなった場合には、アルゴリズムは、ステップＳ１５００に進み、ＣｏＴメッセージ２０２が受信されたか否かをチェックする。これは、例えば、ＸＢＵＬ９００内の対応するＸＢＵＬレコード９１０のＣｏＫフィールド９１３の有効性から推測することが可能である。ＣｏＴメッセージ２０２が受信されている場合には、アルゴリズムはステップＳ１７００に進む。一方、ＣｏＴメッセージ２０２が受信されていない場合には、アルゴリズムはステップＳ１２００に戻る。
【０１０２】
また、タイマが満了した場合には、アルゴリズムは、ステップＳ１２００で始まるループを出て、ステップＳ１６００に進む。このステップＳ１６００では、モバイルルータ１１１が、既にＨｏＴメッセージ２０４及びＣｏＴメッセージ２０２の両方を受信しているか否かのチェックが行われる。これに関しても、ＸＢＵＬ９００内の対応するＸＢＵＬレコード９１０のＨｏＫフィールド９１２及びＣｏＫフィールド９１３の有効性から推測可能である。ＨｏＴメッセージ２０４及びＣｏＴメッセージ２０２のいずれかがまだ受信されていない場合には、ステップＳ１８００に示されるように、モバイルルータ１１１は、ＲＲ手順が失敗に終わったという結論を下す。一方、ＨｏＴメッセージ２０４及びＣｏＴメッセージ２０２の両方が受信されている場合には、アルゴリズムは、ステップＳ１７００に進む。
【０１０３】
ステップＳ１７００では、モバイルルータ１１１は、ＢＵメッセージ２０６を通信相手ノード１３０に送信して、その結果、ＲＲ手順が完了となる。モバイルルータ１１１は、ＢＵメッセージ２０６を送信する際、受信したＮＰＴメッセージに係るネットワークプリフィックスを含ませることが望ましい。ＢＵメッセージ２０６内にネットワークプリフィックスを含ませる場合には、ＢＵメッセージ２０６の認証情報フィールド８１２を、ＨｏＫフィールド９１２、ＣｏＫフィールド９１３、及び対応するＸＢＵＬ９００内の各ＸＢＵＬレコード９１０のＮＰＫフィールド９１５に格納されたトークンを連結した鍵から生成されるチェックサムとすることが望ましい。
【０１０４】
図１１には、本発明の第１の実施の形態におけるステップＳ１２００の入力パケットの処理に係る付加処理が図示されている。入力パケットが存在する場合には、少なくとも改良されたＲＲ手順の実行中は常に、この付加処理が行われることとなる。ステップＳ２１００において、入力パケットに関して、通信相手ノード（ＣＮ）１３０から送信されたものか否かを調べるチェックが行われる。ここで、入力パケットが通信相手ノード１３０から送信されたものではない場合には、パケットは付加処理から離れ、ステップＳ２９００に示されるように、パケットの通常処理が行われる。
【０１０５】
続いて、入力パケットが通信相手ノード１３０から送信されたものである場合には、ステップＳ２２００において、入力パケットがモバイルルータ１１１のホームエージェント１２０からトンネルされたものであるか否かを確認するためのチェックが行われる。ここで、入力パケットがモバイルルータ１１１のホームエージェント１２０からトンネルされたものである場合には、付加処理はステップＳ２３００に進み、その他の場合には、付加処理はステップＳ２６００に進む。
【０１０６】
ステップＳ２３００では、さらに、入力パケットの送信先アドレスがモバイルルータ１１１のホームアドレス（ＨｏＡ）に等しいか否かを調べるためのチェックが行われる。入力パケットの送信先アドレスがモバイルルータ１１１のホームアドレスに等しい場合には、ステップＳ２５００において、パケットがＨｏＴメッセージ２０４を含んでいるか否かを調べるためのスキャンが行われる。ここで、パケットがＨｏＴメッセージ２０４を含む場合には、ＨｏＫトークンと、受け入れられたネットワークプリフィックスの数とが抽出されて、ステップＳ２５８０に示すように、ＸＢＵＬレコード９１０内のＨｏＫフィールド９１２及びプリフィックス数フィールド９１４のそれぞれに格納され、その他の場合には、パケットは、付加処理からステップＳ２９００に示される通常処理に移される。
【０１０７】
また、送信先アドレスがモバイルルータ１１１のホームアドレスではない場合には、ステップＳ２３００に続くステップＳ２４００において、その送信先アドレスのプリフィックス部が、モバイルルータ１１１が所有するネットワークプリフィックスのいずれか１つに等しいか否かのチェックが行われる。送信先アドレスのプリフィックス部が、モバイルルータ１１１が所有するネットワークプリフィックスのいずれか１つに等しい場合には、さらにステップＳ２４４０において、入力パケットがＮＰＴメッセージ２０５を含んでいるか否かを調べるためのチェックが行われる。入力パケットがＮＰＴメッセージ２０５を含んでいる場合には、ＮＰＴメッセージ２０５からＮＰＫトークンが抽出されて、ステップＳ２４８０に示すように、ＸＢＵＬレコード９１０内の対応するＮＰＫフィールド９１５に格納され、その他の場合には、パケットは、付加処理からステップＳ２９００に示される通常処理に移される。
【０１０８】
一方、ステップＳ２２００でパケットがホームエージェント１２０からトンネルされたものでない場合には、ステップＳ２６００に進み、入力パケットの送信先アドレスが調べられて、モバイルルータ１１１の気付アドレスと等しいか否かのチェックが行われる。入力パケットの送信先アドレスがモバイルルータ１１１の気付アドレスと等しくない場合には、パケットは、付加処理からステップＳ２９００に示される通常処理に移される。
【０１０９】
一方、送信先がモバイルルータの気付アドレスである場合には、ステップＳ２６４０において、入力パケットに対して、ＣｏＴメッセージ２０２が含まれているか否かの確認を行うためのスキャンが実行される。ＣｏＴメッセージ２０２が含まれている場合には、ステップＳ２６８０に示すように、ＣｏＴメッセージ２０２からＣｏＫトークンが抽出されて、ＸＢＵＬレコード９１０のＣｏＫフィールド９１３に格納される一方、ＣｏＴメッセージ２０２が含まれていない場合には、パケットは、付加処理からステップＳ２９００に示される通常処理に移される。また、改良されたＲＲ手順が完了した場合には、上述の付加処理の実行も終了となる。
【０１１０】
また、モバイルルータ１１１は、移動中にその気付アドレスを変えることが可能である。気付アドレスが変わった場合には、改良されたＲＲ手順が繰り返し行われる必要がある。しかしながら、ＸＢＵＬレコード９１０に格納されている値の有効期間がまだ満了となっていない場合には、モバイルルータ１１１は、同一のＨｏＫ及びＮＰＫトークンを取得する必要はなくなる。このような場合には、モバイルルータ１１１は、ＣｏＴＩメッセージを送信するだけでよく、ＣｏＴメッセージ２０２を取得すれば、ＸＢＵＬレコード９１０内に格納されているＨｏＫ及びＮＰＫトークンを使用して、ＢＵメッセージ用のチェックサムを生成することが可能となる。
【０１１１】
さらに、モバイルネットワーク１１０がホームに戻った場合には、モバイルルータ１１１は、そのバインディングを削除するために、ＢＵメッセージ２０６を通信相手ノード１３０に送信する。このような場合には、モバイルルータ１１１は、ＲＲ手順によるテストを実行する必要はなく、代わりに、単にネットワークプリフィックスオプション５１２を持たないＢＵメッセージ２０６を送信すればよい。さらに、このときのＢＵメッセージ２０６の認証情報フィールド８１２内のチェックサムは、ＨｏＫトークンのみによって生成される。
【０１１２】
なお、上述の例では、ＨｏＴＩメッセージ２０３でネットワークプリフィックスが通知され、ＨｏＴメッセージ２０４で受け入れ可能なネットワークプリフィックスの数が通知される場合について言及しているので、ステップＳ２５８０における処理でＨｏＴメッセージ２０４から受け入れ可能なネットワークプリフィックスの数が抽出されている。しかしながら、先に述べたように、ＣｏＴＩメッセージ２０１／ＣｏＴメッセージ２０２やその他のメッセージによって、ネットワークプリフィックスやその受け入れ数のやり取りが行われてもよい。このような場合、例えば、ＣｏＴメッセージ２０２で受け入れ可能なネットワークプリフィックスの数が通知された場合には、モバイルルータ１１１においては、ステップＳ２６８０における処理で、ＣｏＴメッセージ２０２から受け入れ可能なネットワークプリフィックスの数が抽出可能となることは、当業者にとっては明白である。
【０１１３】
また、次に、通信相手ノード１３０が使用するＢＵメッセージ２０６の有効性をチェックするアルゴリズムについて説明する。非特許文献１に記載されているＲＲ手順の利点の１つは、通信相手ノード１３０がバインディングアップデートの受け入れ前に、状態情報を全く保持する必要がないことであり、本発明で開示される改良されたＲＲ手順は、この利点を引き継ぐものである。通信相手ノード１３０は、ＲＲ手順において状態情報を保持する必要はなく、ＨｏＴＩメッセージ２０３及びＣｏＴＩメッセージ２０１への応答の生成のみを行う。通信相手ノード１３０は、ＢＵメッセージ２０６を受信すると、ＢＵメッセージ２０６のみに独自に含まれる情報に基づいて、ＢＵメッセージ２０６の有効性をチェックすることが可能である。図１２には、本発明の第１の実施の形態において、通信相手ノード１３０が行う、受信したＢＵメッセージ２０６の有効性をチェックするためのアルゴリズムが図示されている。
【０１１４】
通信相手ノード１３０が、ＢＵメッセージ２０６を最初に受信した場合には、ステップＳ３０００に示すように、ＢＵメッセージ２０６内にホームアドレスオプション８０３が存在するか否かをチェックする。これは、新しいバインディングを構築するか、又は、以前のバインディングを削除するためにＢＵメッセージ２０６が使用される場合とは異なるものである。ホームアドレスオプション８０３が存在しない場合には、アルゴリズムはステップＳ３１００に進む。ここで、パケットの送信元アドレスは、送信者（すなわち、モバイルルータ）のホームアドレスとして取り扱われ、この送信元アドレスを使用して、ＨｏＫトークンが生成される。次に、ステップＳ３１５０において、ＢＵメッセージ２０６をチェックするための鍵がＨｏＫトークンとなるように設定される。そして、アルゴリズムはステップＳ３７００に進んで、ＢＵメッセージ２０６の有効性のチェックが行われる。
【０１１５】
一方、受信したＢＵメッセージ２０６がホームアドレスオプション８０３を含んでいる場合には、アルゴリズムはステップＳ３２００に進む。ここでは、ホームアドレスオプション８０３内のホームアドレスを使用して、ＨｏＫトークンが生成される。そして、ステップＳ３３００において、ＢＵメッセージ２０６の送信元アドレスは、送信者の気付アドレスとして取り扱われ、この送信元アドレスを使用して、ＣｏＫトークンが生成される。そして、ステップＳ３４００において、ＨｏＫトークン及びＣｏＫトークンが連結され、初期段階の鍵が生成される。その後、アルゴリズムはステップＳ３５００、ステップＳ３６００、ステップＳ３６５０のループにおける、ＢＵメッセージ２０６内に存在する各ネットワークプリフィックスオプション５１２に係る処理に移行する。
【０１１６】
ステップＳ３５００では、ＢＵメッセージ２０６に関して、未処理のネットワークプリフィックスオプション５１２が存在するか否かを確認するためのチェックが行われる。未処理のネットワークプリフィックスオプション５１２が存在しない場合には、ループから抜け出して、ステップＳ３７００及びステップＳ３８００において、ＢＵメッセージ２０６の有効性の検証が行われる。一方、未処理のネットワークプリフィックスオプション５１２が存在する場合には、次の未処理のネットワークプリフィックスオプション５１２は、ステップＳ３６００において処理が行われる。ここでは、次の未処理のネットワークプリフィックスオプション５１２からネットワークプリフィックスが抽出され（これによって、ネットワークプリフィックスの処理が行われる）、このネットワークプリフィックスからＮＰＫトークンが生成される。そして、ステップＳ３６５０において、このＮＰＫトークンに鍵が加えられて、アルゴリズムはループのステップＳ３５００に戻る。このように、チェックサムの生成に使用される鍵は、ネットワークプリフィックスオプション５１２の順序に応じて、ＨｏＫ、ＣｏＫ、及び一連のＮＰＫの連結によって生成される。
【０１１７】
ステップＳ３７００において、取得された鍵（ステップＳ３１５０、Ｓ３４００、Ｓ３６５０のいずれかにおいて取得された鍵）を使用してＢＵメッセージ２０６のチェックサムが生成され、ステップＳ３８００において、このチェックサムと、ＢＵメッセージ２０６内に格納されている認証情報８１２の値との比較が行われる。２つのチェックサムが等しくない場合には、ステップＳ３９００において、検証は失敗に終わり、２つのチェックサムが同一である場合には、ステップＳ３９５０に示すように、検証は成功となってＢＵメッセージ２０６が受け入れられる。
【０１１８】
このチェックで、通信相手ノード１３０は、ネットワークプリフィックス、気付アドレス、ホームアドレスが関連付けられていることを確認することが可能となる。また、通信相手ノード１３０は、この確認に続いて、パケットのカプセル化やその他の方法によって、ルーティング情報のセットアップを行い、ホームエージェント１２０を経由することなく、ネットワークプリフィックスに由来するアドレス宛てのパケットを、直接モバイルルータ１１１の気付アドレスに転送することが可能となる。以上により、本発明に係る目的は達成される。
【０１１９】
また、以下に説明する動作によれば、モバイルルータ１１１とそのアクセスルータ１０１との間の無線の帯域幅（しばしば、制限されることがある）に関する負荷を低減させるために、モバイルルータ１１１に送信するメッセージの数を減少させることが可能となる。これは、例えば、ＨｏＴメッセージ２０４及びＮＰＴメッセージ２０５を受信（intercept）する負荷を、別のエンティティ（例えば、モバイルルータ１１１のホームエージェント１２０）に移すことによって行われる。
【０１２０】
図１３には、本発明の第１の実施の形態における改良されたＲＲ手順において、低減された帯域幅に関するメッセージシーケンスが図示されている。モバイルルータ１１１は、ＲＲ手順を開始する際、従来と同様に、通信相手ノード１３０に対してＣｏＴＩメッセージ２０１を送信する。通信相手ノード１３０は、ＣｏＫを含むＣｏＴメッセージ２０２で応答を行う。なお、これは上述した説明と同様であり、簡潔化のために説明を省略する。
【０１２１】
モバイルルータ１１１は、ＨｏＴＩメッセージ２０３（例えば、図２参照）を送信する代わりに、Proxy Home Test Init（ＰＨｏＴＩ）メッセージ２５３を、自身のホームエージェント１２０に送信する。このＰＨｏＴＩメッセージ２５３によって、モバイルルータ１１１に関するＲＲ手順のホームテスト部分を実行するよう、ホームエージェント１２０に対して指示が行われる。
【０１２２】
図１４には、本発明の第１の実施の形態におけるＰＨｏＴＩメッセージ２５３の内容の一例が図示されている。送信元アドレス２５０１及び送信先アドレス２５０２には、それぞれモバイルルータ１１１のホームアドレス及びホームエージェント１２０のアドレスが記載される。また、モビリティヘッダ２５１０（パケット２５３の一部）には、このパケットがＰＨｏＴＩメッセージ２５３であることを示すメッセージタイプフィールド２５１１が含まれており、さらに、ホームエージェント１２０がＨｏＴＩメッセージ２０３の送信を開始できるように、通信相手ノード１３０のアドレスをホームエージェント１２０に告げる通信相手ノードフィールド２５１２が含まれている。
【０１２３】
また、ＰＨｏＴＩメッセージ２５３に、１つ又は複数のネットワークプリフィックスオプション２５１３を含ませることも可能である。各ネットワークプリフィックスオプション２５１３には、このオプションが、ネットワークプリフィックスオプション２５１３であることを示すオプションタイプフィールド２５２１と、１つのネットワークプリフィックスを含むネットワークプリフィックスフィールド２５２２とが含まれている。
【０１２４】
なお、ここでは、モバイルルータ１１１が、ＰＨｏＴＩメッセージ２５３内にネットワークプリフィックスを埋め込むようにしているが、ネットワークプリフィックスを含まない（ネットワークプリフィックスオプション２５１３の存在しない）ＰＨｏＴＩメッセージ２５３の送信を行うようにすることも可能である。例えば、ホームエージェント１２０が、あらかじめ１つ又は複数のネットワークプリフィックスを把握しておき、モバイルルータ１１１から、ネットワークプリフィックスを含まないＰＨｏＴＩメッセージ２５３を受信した場合には、ホームエージェント１２０が、あらかじめ把握している１つ又は複数のネットワークプリフィックスをＨｏＴＩメッセージ２０３に埋め込むことによって、モバイルルータ１１１のネットワークプリフィックスに関して、改良されたＲＲ手順によるテストを行うことが可能となる。また、さらには、モバイルルータ１１１が、ホームエージェント１２０が把握しているネットワークプリフィックスのうちの特定のネットワークプリフィックスを指定するための識別情報を含むＰＨｏＴＩメッセージ２５３を送信できるようにすることによって、モバイルルータ１１１が、特定のネットワークプリフィックスを選択し、この特定のネットワークプリフィックスに関してのみ、改良されたＲＲ手順によるテストを行うように、ホームエージェント１２０に対して要求できるようにすることも可能である。
【０１２５】
このＰＨｏＴＩメッセージ２５３を受信した場合、ホームエージェント１２０は、通信相手ノード１３０に対して、モバイルルータ１１１の代わりにＨｏＴＩメッセージ２０３を送信する。なお、ここでは、ＨｏＴＩメッセージ２０３の送信元アドレス５０１は、モバイルルータ１１１のホームアドレスを有している。また、ＰＨｏＴＩメッセージ２５３にネットワークプリフィックスオプション２５１３が含まれている場合には、ホームエージェント１２０は、ＨｏＴＩメッセージ２０３内に、同様のネットワークプリフィックスオプション５１２を設定する。一方、ＰＨｏＴＩメッセージ２５３にネットワークプリフィックスオプション２５１３が含まれていない場合には、ホームエージェント１２０は、モバイルルータ１１１によって取り扱われる、構成されたネットワークプリフィックスをＨｏＴＩメッセージ２０３に設定する。ＨｏＴＩメッセージ２０３を送信した後、ホームエージェント１２０は、通信相手ノード１３０によって送信されるすべてのＮＰＴメッセージ２０５を受信（intercept）するために、モバイルルータ１１１のような動作を行う。そのためには、期間２６４の間に、ホームエージェント１２０は、通信相手ノード１３０のアドレスに等しい送信元アドレスと、ＨｏＴＩメッセージ２０３に記載されているネットワークプリフィックスのうちの１つから構成されたアドレスに等しい送信先アドレスとが設定されているすべてのパケットのチェックを行う。ここでは、ホームエージェント１２０は、ＮＰＴメッセージ２０５であることが特定された各パケット内のモビリティヘッダ７１０のチェックを行う。
【０１２６】
さらに、ＮＰＴメッセージ２０５を受信（intercept）することに加えて、ホームエージェント１２０は、通信相手ノード１３０によって送信されるＨｏＴメッセージ２０４の受信（intercept）を行う。なお、ホームエージェント１２０は、モバイルルータ１１１に対して、ＮＰＴメッセージ２０５及びＨｏＴメッセージ２０４のトンネルは行わず、代わりに、ＮＰＴメッセージ２０５及びＨｏＴメッセージ２０４のそれぞれに含まれるＮＰＫ７１２及びＨｏＫ６１２を記録する。ＨｏＴメッセージ２０４及びＮＰＴメッセージ２０５を受信（intercept）した場合、ホームエージェント１２０は、モバイルルータ１１１に対して、Proxy Home Test（ＰＨｏＴ）メッセージ２５４を送信する。ＰＨｏＴメッセージ２５４は、モバイルルータ１１１に、すべてのＨｏＫ及びＮＰＫの値を集めながらリレーによって戻るように送信される。
【０１２７】
図１５には、本発明の第１の実施の形態におけるＰＨｏＴメッセージ２５４の内容の一例が図示されている。送信元アドレス２６０１及び送信先アドレス２６０２には、それぞれホームエージェント１２０のアドレス及びモバイルルータ１１１のホームアドレスが記載されている。また、モビリティヘッダ２６１０（パケット２５４の一部）は、このパケットがＰＨｏＴメッセージ２５４であることを示すメッセージタイプフィールド２６１１を有している。また、さらに、ＲＲ手順のリモートパーティである通信相手ノード１３０を特定するための通信相手ノードフィールド２６１２を有している。ホームエージェント１２０で受信（intercept）されたＨｏＴメッセージ２０４に格納されているＨｏＫの値は、ＨｏＫフィールド２６１３で与えられる。
【０１２８】
さらに、ＰＨｏＴメッセージ２５４には、ホームエージェント１２０で受信（intercept）されたＮＰＴメッセージ２０５の数に等しいオプション数だけ、ネットワークプリフィックスキーオプション２６１４が含まれていることもある。ネットワークプリフィックスキーオプション２６１４が存在する場合、各ネットワークプリフィックスキーオプション２６１４には、このオプションがネットワークプリフィックスオプション２６１４であることを示すメッセージタイプフィールド２６２１と、このオプションに対応するネットワークプリフィックスを指示するネットワークプリフィックスフィールド２６２２と、このネットワークプリフィックス用に通信相手ノード１３０によって生成されたＮＰＫを含むＮＰＫフィールド２６２３とが含まれている。なお、ＰＨｏＴメッセージ２５４は、モバイルルータ１１１のホームアドレスに向けて送信されるものであり、モバイルルータ１１１の気付アドレスにトンネルされることとなる。
【０１２９】
モバイルルータ１１１がＰＨｏＴメッセージ２５４を受信した場合、モバイルルータ１１１は、通信相手ノード１３０に対してＢＵメッセージ２０６を送るために必要なすべての情報を有することとなる。なお、バインディングアップデートメッセージ２０６は、先に説明したものと同一なので、ここでは、その詳細に関する説明は省略する。
【０１３０】
ＰＨｏＴＩメッセージ２５３及びＰＨｏＴメッセージ２５４の送信によって、改良されたＲＲ手順は完了となり、通信相手ノード１３０は、モバイルルータ１１１が申請したネットワークプリフィックスが本当にモバイルノード１１１によって所有されていることを確認できるようになる。さらに、ＮＰＴメッセージ２０５を処理する負荷がホームエージェント１２０に移るので、モバイルルータ１１１とそのアクセスルータ１０１との間のアクセスチャンネル上における負荷が低減される。また、さらに、モバイルルータ１１１の処理の負荷が低減されることも重要であり、これによって、モバイルルータ１１１がバッテリ駆動などである場合に、電量消費が可能な限り低く抑えられるようになる。
【０１３１】
なお、図１３に示すように、ホームエージェント１２０が通信相手ノード１３０へのＨｏＴＩメッセージ２０３の送信やＨｏＴメッセージ２０４及びＮＰＴメッセージ２０５の受信を代理して行う場合においても、通信相手ノード１３０がＮＰＫトークンの生成時に、送信先アドレスを用いることが考えられる。
【０１３２】
このような場合、特に送信先アドレスのホスト部がランダムに生成される場合に、ホームエージェント１２０が、従来のステップＳ４６００に対応する各ＮＰＴメッセージ２０５の送信先アドレスのホスト部の記憶を行って、ＰＨｏＴメッセージ２５３などによって、記憶した各ＮＰＴメッセージ２０５の送信先アドレスのホスト部の値を、モバイルルータ１１１に通知する必要がある。また、モバイルルータ１１１が所望のホスト部の値の通知を行う場合には、例えば、ＰＨｏＴメッセージ２５３やＨｏＴＩメッセージ２０３に、通知するホスト部の値を挿入するための新たなオプションフィールドが加えられる必要がある。
【０１３３】
また、モバイルルータ１１１は、改良されたＲＲ手順を利用して、自身の配下に存在するすべてのモバイルネットワーク１１０のネットワークプリフィックスを通信相手ノード１３０に送信することも可能であり、自身の配下に存在する一部のモバイルネットワーク１１０のネットワークプリフィックスを選択的に通信相手ノード１３０に送信することも可能である。
【０１３４】
前者のモバイルルータ１１１が自身の配下に存在するすべてのモバイルネットワーク１１０のネットワークプリフィックスを通信相手ノード１３０に送信する態様は、例えば、モバイルルータ１１１の配下に存在する不特定のモバイルネットワークに存在しているノードが、特定の通信相手ノード１３０（例えば、ポータルサイトのサーバなど）と通信を行いたい場合に有用である。
【０１３５】
一方、後者のモバイルルータ１１１が自身の配下に存在する一部のモバイルネットワーク１１０のネットワークプリフィックスを選択して、通信相手ノード１３０に送信する態様は、例えば、モバイルルータ１１１の配下のモバイルネットワークに存在する一部のモバイルネットワークノード１１２が通信相手ノード１３０との通信を望んでいる場合に有用である。これによって、モバイルルータ１１１は、通信相手ノード１３０のために経路最適化（例えば、直接通信）を行って、通信の効率を向上させることが可能となる。
【０１３６】
なお、後者の場合には、例えば、まず、モバイルルータ１１１が、自身の配下の特定のノード（ここでは、モバイルネットワークノード１１２−１とする）が通信相手ノード１３０との間で通信を開始した（あるいは、開始しようとした）ことを検出する。そして、モバイルルータ１１１が、通信相手ノード１３０に対して、そのモバイルネットワークノード１１２−１が存在するモバイルネットワークのネットワークプリフィックスのみを、改良されたＲＲ手順を利用して通知し（通信相手ノード１３０にネットワークプリフィックスを確認させ）、その後、このネットワークプリフィックスに係るＢＵを行うようにする。これによって、経路最適化の対象となるネットワークプリフィックスのみが選択的に通知され、そのネットワークプリフィックスに対してのみ、チェックサムなどの計算が行われるようになるので、不要な（経路最適化を行う必要のない）ネットワークプリフィックスに係る通信及び処理が省略可能となる。
【０１３７】
また、例えば、上述のように、モバイルネットワークノード１１２−１が存在するモバイルネットワーク１１０と通信相手ノード１３０との経路最適化が行われた状態で、モバイルルータが、上記のモバイルネットワークノード１１２−１によって使用されているネットワークプリフィックスとは異なるネットワークプリフィックスを使用する別のノード（ここでは、モバイルネットワークノード１１２−２とする）が同一の通信相手ノード１３０との通信を開始した（あるいは、開始しようとした）ことを検出した場合には、このモバイルネットワークノード１１２−２が使用するネットワークプリフィックスのみに係るＢＵメッセージ２０５の送信を行えばよい。このとき、モバイルルータ１１１は、モバイルネットワークノード１１２−２が使用するネットワークプリフィックスに関して、改良されたＲＲ手順を初めから行ってもよいが、先にモバイルネットワークノード１１２−１が使用するネットワークプリフィックスに関連して、通信相手ノード１３０との間で行われたＲＲ手順において取得された情報（例えば、ＣｏＫやＨｏＫ）を再利用して、ＲＲ手順の一部の処理を省略することも可能である。
【０１３８】
このように、モバイルルータ１１１は、例えば、モバイルルータ１１１の移動や有効期限の更新などの様々な理由によって、バインディングアップデートを行う必要がある１つ又は複数のネットワークプリフィックスを選択し、選択したネットワークプリフィックスに関してのみ、ＲＲ手順及びバインディングアップデートを行うことが可能である。また、モバイルルータ１１１は、通信相手ノード１３０へのネットワークプリフィックスの登録処理と同様に、登録されたネットワークプリフィックスの削除や、有効期限の延長に係る更新なども選択的に行うことが可能である。
【０１３９】
また、モバイルルータ１１１は、これまでの経路最適化に係る動作結果を保持しておくことが望ましい。この動作結果の保持は、例えば、上述のように、自身の配下に存在する一部のモバイルネットワーク１１０のネットワークプリフックスを選択的に通信相手ノード１３０に送信する際に、通信相手ノード１３０に対してネットワークプリフィックスが登録済みか未登録かの判別（すなわち、経路最適化が完了しているか否かの判別）を行うために有用である。
【０１４０】
なお、どの通信相手ノード１３０に対して、どのネットワークプリフィックスが既に受け入れられているかを示す情報は、従来のルータによって基本的に保持されている。しかしながら、この情報に加えて、先に説明したＲＲ手順が失敗に終わった原因の詳細（すなわち、例えば、通信相手ノード１３０からＩＣＭＰのエラーメッセージを受信したことから、通信相手ノード１３０が従来のＲＲ手順に対応していないと考えられること、通信相手ノード１３０からネットワークプリフィックスの数が通知されなかったことから、通信相手ノード１３０が本発明に係る改良されたＲＲ手順には対応していないと考えられること、通信相手ノード１３０が本発明に係る改良されたＲＲ手順に対応しているが、一部のネットワークプリフィックスに関しては受理されなかった、あるいは未登録であることなど）についてもモバイルルータ１１１が更に保持できるようにすることは有用である。これによって、モバイルルータ１１１は、例えば、ＲＲ手順を行わないように制御したり、あるいは、ＲＲ手順を再度試みたりするなど、効率良く動作を行うことが可能となる。
【０１４１】
また、モバイルルータ１１１は、上述の動作結果や原因の詳細などに関して、所定の期間のみ保持したり、所定の容量のみ保持したりするように構成されてもよい。また、こうした動作結果や原因の詳細などの保持方法も任意であり、例えば、各通信相手ノード１３０のアドレスに対して、必要な状態の有無を示すフラグや、状態を示す値を関連付けて保持することが可能である。
【０１４２】
以下に、モバイルルータ１１１が、これまでの経路最適化に係る動作結果を保持できるように構成されている場合の動作例について、図１７を参照しながら説明する。図１７は、本発明の第１の実施の形態において、モバイルルータ１１１が、これまでの経路最適化に係る動作結果を保持できるように構成されている場合の動作例を示すフローチャートである。なお、ここでは、モバイルルータ１１１が、１つ又は複数の通信相手ノード１３０のそれぞれに対して、配下に存在する複数のモバイルネットワークの一部又は全部の登録を行っている状態を前提として説明する。
【０１４３】
モバイルルータ１１１は、１つ又は複数の通信相手ノード１３０のそれぞれに対して、配下に存在する複数のモバイルネットワークの一部又は全部の登録を行っており、その状態に係る情報（経路最適化情報）を保持している（ステップＳ５０００）。
【０１４４】
また、モバイルルータ１１１は、配下のモバイルネットワーク１１０内のノードから外部の通信相手ノード１３０に向けて送信されるパケットを受信（intercept）し、このパケットのスキャンを行う（ステップＳ５１００）。そして、通信相手ノード１３０のアドレスと、配下のノードが存在するモバイルネットワーク１１０のネットワークプリフィックスとを参照して、経路最適化情報より、経路最適化が行われているか否かをチェックする（ステップＳ５２００）。ステップＳ５２００において、既に経路最適化が行われていると判断された場合には、モバイルルータ１１１は、通信相手ノード１３０へのトンネルを介して、このパケットが最適経路を通るように転送し（ステップＳ５３００）、再度、ステップＳ５１００における新たなパケットのスキャン処理に戻る。
【０１４５】
一方、ステップＳ５２００において、経路最適化が行われていないと判断された場合には、モバイルルータ１１１は、保持されている経路最適化情報を参照し、通信相手ノード１３０に対して、この配下のノードに係るネットワークプリフィックスの登録処理を新たに行うか否かなどの動作を決定する(ステップＳ５４００）。なお、上述のように、ＲＲ手順が失敗に終わった原因の詳細を参照することによって、モバイルルータ１１１は、今回行う動作として、エラー処理の規定と整合する動作を選択することが可能である。また、例えば、経路最適化情報に通信相手ノード１３０のアドレスが存在しない場合には、この通信相手ノード１３０は、モバイルルータ１１１が初めて通信を行う相手又は所定の期間以上通信を行っていなかった相手であると考えられ、モバイルルータ１１１は、この通信相手ノード１３０に対して、本発明に係る改良されたＲＲ手順を試みることが望ましい。
【０１４６】
そして、経路最適化に係る動作が行われた場合（ステップＳ５５００で『はい』）には、その動作結果（ネットワークプリフィックスの登録の成功又は失敗などの動作結果）によって、経路最適化情報の更新を行う（ステップＳ５６００）。また、経路最適化に係る動作が行われない場合や経路最適化情報の更新が完了した場合（ステップＳ５５００で『いいえ』）には、再度、ステップＳ５１００における新たなパケットのスキャン処理に戻る。なお、ステップＳ５２００において、経路最適化されていないと判断されたパケットは、即座に経路最適化されていないルートを経由するように転送されることが望ましい。
【０１４７】
＜第２の実施の形態＞
次に、本発明の第２の実施の形態について説明する。なお、ここでは、ネットワークプリフィックスを所有していると主張するネットワークノードが、そのネットワークプリフィックスを本当に所有しているか否かを確かめる必要がある状況において、本発明を適用した場合について説明する。以下、ルート最適化の一例として、コレスポンデントルータを使用する場合について説明する。
【０１４８】
図１８は、本発明の第２の実施の形態における通信システムを示す図である。図１８に示すコレスポンデントルータ１５０は、コレスポンデントノード１３０、１３１、１３２を含むコレスポンデントネットワーク１５５を管理しており、コレスポンデントネットワーク１５５内のコレスポンデントノード１３０、１３１、１３２のプロキシとして機能している。なお、図１８では、１つのコレスポンデントネットワーク１５５が図示されているが、複数存在してもよい。ルート最適化を実現するために、モバイルルータ１１１は、コレスポンデントルータ１５０との間に双方向トンネルをセットアップする。これにより、モバイルネットワーク１１０内の任意のノード（例えば、モバイルネットワークノード１１２−１、１１２−２、１１２−３）から、コレスポンデントネットワーク１５５内の任意のノード（例えば、コレスポンデントノード１３０、１３１、１３２）に対して送信されるパケットは、この双方向トンネルを通じて転送されるようになる。
【０１４９】
これを達成するためには、モバイルルータ１１１が、コレスポンデントルータ１５０に対して、そのホームアドレス及び気付アドレスと、モバイルネットワーク１１０のネットワークプリフィックスとを通知するだけでなく、コレスポンデントルータ１５０も、コレスポンデントルータ１５０が管理するコレスポンデントネットワーク１５５のネットワークプリフィックスをモバイルルータ１１１に通知する必要があり、モバイルルータ１１１及びコレスポンデントルータ１５０は、互いに通知し合ったネットワークプリフィックスの正当性について確認を行う必要がある。コレスポンデントルータ１５０がモバイルルータ１１１から通知されるネットワークプリフィックスの確認を行うためには、上述の改良されたＲＲ手順の適用が可能である。一方、モバイルルータ１１１がコレスポンデントルータ１５０によって通知されるネットワークプリフィックスの確認を行うためには、上述の改良されたＲＲ手順の拡張を使用することができる。
【０１５０】
コレスポンデントルータ１５０は、通常、固定ノード（すなわち、モバイルノードではない）であり、コレスポンデントルータ１５０には、関連付けられている気付アドレスは存在しない（すなわち、コレスポンデントルータ１５０は気付アドレスを有さない）。したがって、上述の改良されたＲＲ手順において、ＣｏＴＩ及びＣｏＴメッセージの送信が省略可能であり、コレスポンデントルータ１５０が、単にＨｏＴＩメッセージを送信して、ＨｏＴ及びＮＰＴメッセージを受信（intercept）するように拡張を行うことが可能である。そして、この手順は、コレスポンデントルータ１５０がモバイルルータ１１１に対してＢＵメッセージを送信することによって完了となる。
【０１５１】
また、図１９は、図１８に示す通信システムにおいて、コレスポンデントルータ１５０が管理するコレスポンデントネットワークに係るネットワークプリフィックスをモバイルルータ１１１に登録する際の動作を詳細に説明するシーケンスを示す図である。まず、コレスポンデントルータ１５０が、ＨｏＴＩメッセージ１７０１をモバイルルータ１１１に送信することによって、ＲＲ手順が開始される。このＨｏＴＩメッセージ１７０１の送信元アドレスは、コレスポンデントルータ１５０のアドレスとなり、送信先アドレスは、モバイルルータ１１１のアドレスとなる。
【０１５２】
なお、ここでは、コレスポンデントルータ１５０が、モバイルルータ１１１のアドレスを既に把握していることを前提としている。また、通常、コレスポンデントルータ１５０は、モバイルルータ１１１からＢＵメッセージを受信した後に、ＨｏＴＩメッセージ１７０１の送信を行う。したがって、コレスポンデントルータ１５０は、モバイルルータ１１１の気付アドレスとホームアドレスとの間のバインディングを既に把握している。コレスポンデントルータ１５０は、ＨｏＴＩメッセージ１７０１の送信先アドレスには、モバイルルータ１１１の気付アドレスを設定することが可能であり、また、気付アドレスの設定が望ましいが、当業者には、ＨｏＴＩメッセージ１７０１の送信先アドレスが、モバイルルータ１１１のホームアドレスを有していても動作可能であることは明白である。
【０１５３】
また、ＨｏＴＩメッセージ１７０１には、コレスポンデントルータ１５０によって管理される単一又は複数のネットワークプリフィックスが含まれる。なお、このＨｏＴＩメッセージ１７０１は、上述の第１の実施の形態のＨｏＴＩメッセージ２０３に対応するものであり、ＨｏＴＩメッセージ１７０１のメッセージフォーマットとして、例えば、上述の第１の実施の形態におけるＨｏＴＩメッセージ２０３のメッセージフォーマット（図５に示すメッセージフォーマット）を使用することが可能である。
【０１５４】
モバイルルータ１１１は、ＨｏＴＩメッセージ１７０１を受信した場合には、ＨｏＴメッセージ１７０２によって応答を行う。ＨｏＴメッセージ１７０２には、コレスポンデントルータ１５０のアドレスに基づいてモバイルルータ１１１により生成されたＨｏＫトークンが含まれる。また、ＨｏＴメッセージ１７０２によって、モバイルルータ１１１が送信するＮＰＴメッセージの数が、コレスポンデントルータ１５０に通知されることが望ましい。なお、このＨｏＴメッセージ１７０２は、上述の第１の実施の形態のＨｏＴメッセージ２０４に対応するものであり、ＨｏＴメッセージ１７０２のメッセージフォーマットとして、例えば、上述の第１の実施の形態におけるＨｏＴメッセージ２０４のメッセージフォーマット（図６に示すメッセージフォーマット）を使用することが可能である。
【０１５５】
ＨｏＴＩメッセージ１７０１に記載されている各ネットワークプリフィックスに関して、モバイルルータ１１１は、ネットワークプリフィックスを含むアドレス（アドレスのプリフィックス部に、当該ネットワークプリフィックスを含むアドレス）に対して、ＮＰＴメッセージ１７０３を送信する。なお、ネットワーク内でトラフィックに係るバーストが引き起こされないように、モバイルルータ１１１は、各ＮＰＴメッセージ１７０３の送信を少しずつずらすようにすることが望ましい。この各ＮＰＴメッセージ１７０３の送信期間は、図１９において、期間１７２０によって図示されている。
【０１５６】
各ＮＰＴメッセージ１７０３には、モバイルルータ１１１が、それぞれの送信先アドレスに含まれる特定のネットワークプリフィックスに基づいて生成したＮＰＫトークンが含まれる。なお、このＮＰＴメッセージ１７０３は、上述の第１の実施の形態のＮＰＴメッセージ２０５に対応するものであり、ＮＰＴメッセージ１７０３のメッセージフォーマットとして、例えば、上述の第１の実施の形態におけるＮＰＴメッセージ２０５のメッセージフォーマット（図７に示すメッセージフォーマット）を使用することが可能である。
【０１５７】
一方、コレスポンデントルータ１５０は、ＨｏＴＩメッセージ１７０１の送信後、タイマを始動する。そして、このタイマによる期間１７２４の間、コレスポンデントルータ１５０は、コレスポンデントルータ１５０が管理するネットワークプリフィックスを含むアドレスに対して、モバイルルータ１１１から送信されてくるすべてのパケットを検査し、ＮＰＴメッセージ１７０３か否かのチェックを行う。そして、コレスポンデントルータ１５０は、この期間１７２４の間は、ＨｏＴメッセージ１７０２及びＮＰＴメッセージ１７０３から抽出されるすべてのＨｏＫトークン及びＮＰＫトークンを記録する。
【０１５８】
コレスポンデントルータ１５０がすべてのＨｏＫトークン及びＮＰＫトークンを受信した場合、又は、タイマによる期間１７２４が経過した場合に、コレスポンデントルータ１５０は、モバイルルータ１１１に対して、コレスポンデントルータ１５０が管理するネットワークプリフィックスを登録するためのＢＵメッセージ１７０４の送信処理を開始する。ＢＵメッセージ１７０４には受信したＨｏＫトークン及びＮＰＫトークンに基づいて暗号化により生成されるチェックサムが含まれる。なお、このＢＵメッセージ１７０４は、上述の第１の実施の形態のＢＵメッセージ２０６に対応するものであり、ＢＵメッセージ１７０４のメッセージフォーマットとして、例えば、上述の第１の実施の形態におけるＢＵメッセージ２０６のメッセージフォーマット（図８に示すメッセージフォーマット）を使用することが可能である（ただし、送信元アドレスには、コレスポンデントルータ１５０のホームアドレスが記載される）。
【０１５９】
これにより、モバイルルータ１１１は、ＢＵメッセージ１７０４を受信した後、自身でチェックサムを生成し、ＢＵメッセージ１７０４内のチェックサムとの照合を行うことによって、ＢＵメッセージ１７０４が有効であるか否かを検証することが可能となり、コレスポンデントルータ１５０（コレスポンデントルータ１５０が管理するコレスポンデントネットワーク１５５)を検証するための改良されたＲＲ手順は完了となる。
【０１６０】
なお、上述のように、通常、コレスポンデントルータ１５０は、モバイルルータ１１１からＢＵメッセージを受信した後に、モバイルルータ１１１に対してＨｏＴＩメッセージ１７０１の送信を行う。したがって、例えば、モバイルルータ１１１とコレスポンデントルータ１５０の間で、本発明の第１の実施の形態に係る動作が行われて、モバイルルータ１１１からコレスポンデントルータ１５０に対して、ＢＵメッセージ２０６が送信された後、本発明の第２の実施の形態に係る動作が開始されることが考えられる。しかしながら、基本的には、モバイルルータ１１１及びコレスポンデントルータ１５０は、同一のアルゴリズムに基づいて動作するので、どちらが改良されたＲＲ手順を開始してもよく、また、それぞれが独立して改良されたＲＲ手順をほぼ同時に開始することも考えられる。
【０１６１】
また、モバイルルータ１１１とコレスポンデントルータ１５０とが、改良されたＲＲ手順を相互に行う場合、複雑な処理が増加することにはなるが、いくつかのメッセージを結合することによって、パケット交換回数や冗長性を減らすことが可能である。これに関して、図２０を参照しながら説明する。
【０１６２】
図２０には、本発明の第２の実施の形態におけるモバイルルータ１１１とコレスポンデントルータ１５０との間の最適化されたＲＲ手順のメッセージシーケンスが図示されている。モバイルルータ１１１は、まず、ＣｏＴＩメッセージ１８０１及びＨｏＴＩメッセージ１８０３を送信することによって、ＲＲ手順を開始する。ＨｏＴＩメッセージ１８０３の送信元アドレスには、モバイルルータ１１１のホームアドレスが使用されるので、ＨｏＴＩメッセージ１８０３は、双方向トンネルを通してホームエージェント１２０に転送される。ここまでの動作は、上述の図２に示すシーケンスにおけるモバイルルータ１１１からのＣｏＴＩメッセージ２０１及びＨｏＴＩメッセージ２０３の送信動作と同一である。
【０１６３】
コレスポンデントルータ１５０がＣｏＴＩメッセージ１８０１を受信した場合には、ＣｏＴメッセージ１８０２で応答を行う。ＣｏＴメッセージ１８０２の内容は、元のＲＲ手順のものとほぼ同一であるが、さらに、コレスポンデントルータ１５０が管理するコレスポンデントネットワーク１５５のネットワークプリフィックスが、付加情報として含まれている。すなわち、ＣｏＴメッセージ１８０２は、図２に示すシーケンスにおけるＣｏＴメッセージ２０２と、図１９に示すシーケンスにおけるＨｏＴＩメッセージ１７０１とを組み合わせたものと言える。
【０１６４】
モバイルルータ１１１がこのＣｏＴメッセージ１８０２を受信して、その付加情報（すなわち、コレスポンデントネットワーク１５５のネットワークプリフィックス）に気付くと、モバイルルータ１１１は、図１９に示すＨｏＴＩメッセージ１７０１と同種のものとして、このＣｏＴメッセージ１８０２を扱う。そして、モバイルルータ１１１は、ネットワークプリフィックスについて確認を行うために、特定のネットワークプリフィックスから選択されたアドレス宛てにＮＰＴメッセージ１８０５を送信する。このＮＰＴメッセージ１８０５には、ネットワークプリフィックスに基づいて暗号化により生成されたＮＰＫトークンが含まれている。なお、このＮＰＴメッセージ１８０５の送信前に、モバイルルータ１１１は、コレスポンデントルータ１５０に対して、モバイルルータ１１１が送信するＮＰＴメッセージ１８０５の数を通知するためのメッセージを送信してもよい。
【０１６５】
そして、コレスポンデントルータ１５０は、ＣｏＴメッセージ１８０２を送信するとタイマ（期間１８２５）を開始して、モバイルルータ１１１から送信されてくるＮＰＴメッセージ１８０５を受信する。
【０１６６】
また、コレスポンデントルータ１５０は、ＨｏＴＩメッセージ１８０３を受信した場合には、上述の図２に示すシーケンスにおける処理と同様に、ＨｏＴメッセージ１８０４及びＮＰＴメッセージ１８０６によって応答を行う。ＨｏＴメッセージ１８０４は、モバイルルータ１１１のホームアドレスに向けて送信され、その結果、ホームエージェント１２０においてトンネル化される。また、ＮＰＴメッセージ１８０６は、ＨｏＴＩメッセージ１８０３に記載されているネットワークプリフィックスを含むアドレスに送信されて、ホームエージェント１２０によってトンネル化される。
【０１６７】
モバイルルータ１１１は、ＨｏＴＩメッセージ１８０３の送信後にタイマ（期間１８２０）を開始し、コレスポンデントルータ１５０から送信されてくるＨｏＴメッセージ１８０４及びＮＰＴメッセージ１８０６を受信する。ＨｏＴメッセージ１８０４及びＮＰＴメッセージ１８０６の受信後、モバイルルータ１１１は、コレスポンデントルータ１５０に対してＢＵメッセージ１８０７を送信する。このＢＵメッセージ１８０７内には、ＨｏＴメッセージ１８０４、ＣｏＴメッセージ１８０２、ＮＰＴメッセージ１８０６から抽出されたＨｏＫトークン、ＣｏＫトークン、ＮＰＫトークンに基づいて暗号化によって生成されたチェックサムと、モバイルネットワークのネットワークプリフィックスに関する情報とが含まれる。コレスポンデントルータ１５０は、このチェックサムを独自に生成して、ＢＵメッセージ１８０７内のチェックサムの照合を行うことによって、ＢＵメッセージ１８０７の有効性に関する検証を行い、有効性が確認された場合には、モバイルルータ１１１のホームアドレス、気付アドレス、モバイルネットワーク１１０のネットワークプリフィックスの関連付けを行って、ＲＲ手順は完了となる。
【０１６８】
また、コレスポンデントルータ１５０は、ＢＵメッセージ１８０７の有効性を確認した場合、ＢＡメッセージ１８０８をモバイルルータ１１１に送信する。このＢＡメッセージ１８０８内には、ＮＰＴメッセージ１８０５から抽出されたＮＰＫトークンに基づいて暗号化によって生成されたチェックサムと、コレスポンデントルータ１５０が管理するコレスポンデントネットワーク１５５のネットワークプリフィックスに関する情報とが含まれる。これにより、モバイルルータ１１１は、チェックサムの照合によって、ＢＡメッセージ１８０８に記載されているネットワークプリフィックスの有効性を検証することが可能となり、有効性が確認された場合には、コレスポンデントルータ１５０のアドレスと、コレスポンデントネットワーク１５５のネットワークプリフィックスとの関連付けを行って、ＲＲ手順は完了となる。
【０１６９】
なお、図２０に示すシーケンスでは、コレスポンデントルータ１５０は、ＣｏＴメッセージ１８０２内に付加情報（コレスポンデントネットワーク１５５のネットワークプリフィックス）を含めているが、ＨｏＴメッセージ１８０４内に付加情報を含めても、本発明の目的は達成される。
【０１７０】
＜第３の実施の形態＞
次に、本発明の第３の実施の形態について説明する。なお、本発明の第３の実施の形態では、ＲＲ手順と関連付けて説明した上述の第１及び第２の実施の形態において示唆される本発明の基本的な概念について説明する。
【０１７１】
図２１（ａ）は、本発明の第３の実施の形態における通信システムの概要を示す図であり、図２１（ｂ）は、一方の通信ノードが、配下にモバイルネットワークを有するモバイルルータである場合を示す図であり、図２１（ｃ）は、一方の通信ノードが、所定のネットワークの代理ルータとして機能する固定ルータである場合を示す図であり、図２１（ｄ）は、複数の固定ルータによって固定ネットワークが管理されている場合を示す図である。なお、上記の代理ルータは、モバイルルータ、コレスポンデントルータ、あるいは任意のネットワークを管理する任意のルータのように、１つ以上のネットワークを代表することが可能である。したがって、代理ルータを、代表ルータ（designated router, delegated router, representative router）と呼ぶことも可能である。
【０１７２】
図２１（ａ）には、２つの通信ノード１１０００、１２０００が通信ネットワーク１００００を介して接続されており、相互に通信可能な状態にある様子が図示されている。ここで、通信ノード１１０００は、１つ又は複数のネットワークを管理する通信ノードである。すなわち、通信ノード１１０００は、１つ又は複数のネットワークのそれぞれに設定されているネットワークプリフィックスを管理し、通信ノード１１０００が管理するネットワークプリフィックスを含むアドレスを送信先アドレスとするすべてのパケットは、いったん通信ノード１１０００に到達した後、通信ノード１１０００によって、そのネットワークプリフィックスに対応する適切なネットワーク内に転送される。したがって、通信ノード１１０００が管理するネットワークプリフィックスを含むアドレスを送信先アドレスとするすべてのパケットは、通信ノード１１０００を経由する。
【０１７３】
この通信ノード１１０００は、例えば、図２１（ｂ）に図示されるモバイルルータ１１１００や、図２１（ｃ）に図示される固定ルータ１１２００などである。なお、図２１（ｂ）に図示されるモバイルルータ１１１００は、上述の第１の実施の形態で説明したモバイルルータ１１１（図１に図示）に対応しており、図２１（ｃ）に図示される固定ルータ１１２００は、上述の第２の実施の形態で説明したコレスポンデントルータ１５０（図１８に図示）に対応している。
【０１７４】
図２１（ｂ）に示すモバイルルータ１１１００は、その配下に１つ又は複数のモバイルネットワーク１１１１０（図２１（ｂ）では１つのみ図示）を有しており、任意の接続ポイントで通信ネットワーク１００００と接続可能なルータである。なお、上述の第１の実施の形態でも説明したように、モバイルルータ１１１００は、その配下の１つ又は複数のモバイルネットワーク１１１１０のネットワークプリフィックスを管理しており、モバイルネットワーク１１１１０内の任意のノードには、モバイルルータ１１１００が管理するネットワークプリフィックスを含むアドレス（ホームアドレス又は気付アドレス）が提供される。また、モバイルネットワーク１１１１０内の任意のノードと、モバイルネットワーク１１１１０外部の任意のノードとの間で送受信されるすべてのパケットは、モバイルルータ１１１００を経由する。
【０１７５】
図２１（ｃ）に示す固定ルータ１１２００は、１つ又は複数の固定ネットワーク１１２１０（図２１（ｃ）では１つのみ図示）内の任意のノードのプロキシとして機能するルータである。すなわち、固定ルータ１１２００は、１つ又は複数の固定ネットワーク１１２１０のネットワークプリフィックスを管理しており、固定ネットワーク１１２１０内の任意のノードには、固定ルータ１１２００が管理するネットワークプリフィックスを含むアドレス（ホームアドレス又は気付アドレス）が提供される。また、固定ネットワーク１１２１０内の任意のノードと、固定ネットワーク１１２１０外部の任意のノードとの間で送受信されるパケットは、固定ルータ１１２００を経由する。なお、図２１（ｃ）では、固定ルータ１１２００の直下に固定ネットワーク１１２１０が配置されているように図示されているが、固定ルータ１１２００と固定ネットワーク１１２１０との間に、中継ルータが介在してもよく、また、固定ルータ１１２００が任意の接続ポイントで通信ネットワーク１００００と接続していてもよい。また、固定ルータ１１２００が管理するネットワークは固定ネットワーク１１２１０以外にも、例えば、モバイルルータ１１１００に管理されているモバイルネットワーク１１１１０を更に管理してもよい。また、管理の形態として、固定ルータ１１２００が一元的に固定ネットワーク１１２１０を管理する以外に、図２１（ｄ）に図示されているように、固定ネットワーク１１２１０が、複数の固定ルータ１１２００（図２１（ｄ）では３つの固定ルータ１１２００ａ〜１１２００ｃを図示）により管理されている場合もある。この場合、それぞれの固定ルータ１１２００ａ〜１１２００ｃは、固定ネットワーク１１２１０内のノード、通信相手となる固定ネットワーク１１２１０外部のノード、各固定ルータ１１２００ａ〜１１２００ｃの処理負荷などの様々な条件に応じて、固定ネットワーク１１２１０を動的／静的に管理し、固定ネットワーク１１２１０と固定ネットワーク１１２１０外部との間で送受信されるパケットの処理を分担する場合もある。なお、図２１（ｄ）では、通信ノード１２０００ａと固定ネットワーク１１２１０内のノードとの通信に関しては、固定ルータ１１２００ａがプロキシとして機能しており、通信ノード１２０００ｂと固定ネットワーク１１２１０内のノードとの通信に関しては、固定ルータ１１２００ｂ及び／又は固定ルータ１１２００ｃがプロキシとして機能している状態が模式的に図示されている。
【０１７６】
次に、図２２を参照しながら、本発明の第３の実施の形態における動作について説明する。ここでは、１つ又は複数のネットワークを管理する通信ノード１１０００が、任意の通信ノード（ここでは、通信ノード１２０００）に対して、本当にネットワークを管理していることを示すとともに、自身が管理しているネットワークに係るネットワークプリフィックスを通知するための動作について説明する。なお、図２２に示される動作は、基本的に、上述の第１及び第２の実施の形態におけるＲＲ手順の動作から抽出可能である。
【０１７７】
まず、通信ノード１１０００は、通信ノード１２０００に対してメッセージＭ＿Ａ２００１を送信する。なお、通信ノード１１０００は、何らかのトリガ（例えば、通信ノード１２０００からの要求や、通信環境の変化など）に応じて、このメッセージＭ＿Ａ２００１を送信してもよく、また、通信ノード１１０００自身が自発的に送信決定を行ってもよい。
【０１７８】
このメッセージＭ＿Ａ２００１には、少なくとも通信ノード１１０００が管理する一部又はすべてのネットワークに係るネットワークプリフィックスが含まれる。なお、このメッセージＭ＿Ａ２００１は、上述の第１の実施の形態のＨｏＴＩメッセージ２０３や、上述の第２の実施の形態のＨｏＴＩメッセージ１７０１、１８０３、ＣｏＴメッセージ１８０２に対応している。
【０１７９】
このメッセージＭ＿Ａ２００１を受信した通信ノード１２０００は、メッセージＭ＿Ａ２００１に含まれるネットワークプリフィックスを取り出し、このネットワークプリフィックスに基づいて暗号トークンを生成する。この処理によって、メッセージＭ＿Ａ２００１に含まれるネットワークプリフィックスの数だけ、対応する暗号トークンが生成される。なお、このとき、通信ノード１２０００は、ネットワークプリフィックスの選別やネットワークプリフィックスの個数制限などを行うことも可能であり、特に、個数制限を行った場合には、通信ノード１１０００に対して、制限した個数の通知を行うことが望ましい。
【０１８０】
続いて、通信ノード１２０００は、各ネットワークプリフィックスに対応する暗号トークンを少なくとも含むメッセージＭ＿Ｂ２００２を生成する。このメッセージＭ＿Ｂ２００２の送信先アドレスには、上述の第１の実施の形態で説明したように、各ネットワークプリフィックスを含むアドレスが設定される。なお、ホスト部に設定される値に応じて、このメッセージＭ＿Ｂ２００２を受信した通信ノード１１０００では、異なる処理が行われるが、ここでは説明を省略する。
【０１８１】
通信ノード１２０００から送信された１つ又は複数のメッセージＭ＿Ｂ２００２はすべて、ネットワークプリフィックスに対応したネットワークに向けて運ばれるが、その途中で、必ず通信ノード１１０００を経由することになる。したがって、通信ノード１１０００は、パケットをスキャンすることによって、このメッセージＭ＿Ｂ２００２を受信（intercept）することが可能である。なお、このメッセージＭ＿Ｂ２００２は、上述の第１の実施の形態のＮＰＴメッセージ２０５や、上述の第２の実施の形態のＮＰＴメッセージ１７０３、１８０５、１８０６に対応している。
【０１８２】
通信ノード１１０００は、受信したメッセージＭ＿Ｂ２００２内から、各ネットワークプリフィックスに対応する暗号トークンを抽出し、すべての暗号トークンを結合した情報に基づいて、証明情報を生成する。そして、通信ノード１１０００は、受信したメッセージＭ＿Ｂ２００２に対応する１つ又は複数のネットワークプリフィックスと、上記の証明情報とを少なくとも含むメッセージＭ＿Ｃ２００３を生成し、通信ノード１２０００に送信する。なお、このメッセージＭ＿Ｃ２００３は、上述の第１の実施の形態のＢＵメッセージ２０６や、上述の第２の実施の形態のＢＵメッセージ１７０４、１８０７、ＢＡメッセージ１８０８に対応している。
【０１８３】
このメッセージＭ＿Ｃ２００３を受信した通信ノード１２０００は、メッセージＭ＿Ｃ２００３に含まれるネットワークプリフィックスを取り出し、再度、ネットワークプリフィックスに基づいて暗号トークンを生成し、すべての暗号トークンを結合した情報に基づいて、情報を生成する。そして、ここで生成された情報と、メッセージＭ＿Ｃ２００３に含まれる証明情報とを比較し、両者が一致している場合には、通信ノード１１０００によって、このネットワークプリフィックスが本当に管理されていることが把握される。
【０１８４】
なお、例えば、通信ノード１１０００が本当には管理していないネットワークのネットワークプリフィックスをメッセージＭ＿Ａ２００１に含めて、通信ノード１２０００に送信した場合には、通信ノード１１０００は、通信ノード１２０００から送信されるメッセージＭ＿Ｂ２００２を受信（intercept）することができず、通信ノード１１０００は、通信ノード１２０００に対して、正当な証明情報を含むメッセージＭ＿Ｃ２００３を送信することができない。したがって、上述した動作によって、通信ノード１２０００は、例えば、本当にネットワークを管理していることが証明できた通信ノード１１０００や、その管理下のネットワークノードとのみ通信を行い、本当には管理していないネットワークをあたかも管理しているかのように見せかけるなりすましを通信相手から排除することが可能となる。また、通信ノード１２０００は、通信ノード１１０００との間にトンネルを設定し、例えば、通信ノード１１０００が本当に管理しているネットワーク宛てのパケット（通信ノード１１０００が本当に管理しているネットワークプリフィックスを含む送信先アドレスのパケット）に関しては、このトンネルを経由するように転送することによって、ルートの最適化を行うことも可能である。
【０１８５】
なお、上述の第１〜第３の実施の形態の各箇所に記載されている詳細な動作及び詳細な説明は、それぞれの実施の形態に転用したり、組み合わせたりすることが可能であり、例えば、本発明の第１の実施の形態に記載されている詳細な動作は、本発明の第２及び第３の実施の形態における動作においても適用される。
【産業上の利用可能性】
【０１８６】
本発明は、ネットワークを管理している通信ノードが、別の通信ノードに対して、そのネットワークを実際に管理していることを証明できるようにするという効果や、コレスポンデントルータと通信を行っているモバイルルータが、代理を行うことを宣言しているコレスポンデントルータが実際にコレスポンデントネットワークを代理していることを確認できるようにするという効果を有し、インターネットプロトコルを利用した通信技術に適用可能であり、特に、モバイルルータの移動と共に移動するモバイルネットワークに係る通信技術に適用可能である。
【図１】
2011193475.tif 000003
【図２】
2011193475.tif 000004
【図３】
2011193475.tif 000005
【図４】
2011193475.tif 000006
【図５】
2011193475.tif 000007
【図６】
2011193475.tif 000008
【図７】
2011193475.tif 000009
【図８】
2011193475.tif 000010
【図９】
2011193475.tif 000011
【図１０】
2011193475.tif 000012
【図１１】
2011193475.tif 000013
【図１２】
2011193475.tif 000014
【図１３】
2011193475.tif 000015
【図１４】
2011193475.tif 000016
【図１５】
2011193475.tif 000017
【図１６】
2011193475.tif 000018
【図１７】
2011193475.tif 000019
【図１８】
2011193475.tif 000020
【図１９】
2011193475.tif 000021
【図２０】
2011193475.tif 000022
【図２１】
2011193475.tif 000023
【図２２】
2011193475.tif 000024