(57)【要約】  モバイルノードおよびホームエージェントの間の通信を確立する方法および装置を提供する。ホームエージェントは、レジストレーションリクエストパケットをモバイルノードから受け取り、このレジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む。ホームエージェントはそれからＩＰ送信元アドレスのネットワークアドレス変換が実行されたことをレジストレーションリクエストパケットから検出する。ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、ホームエージェントアドレスおよびＩＰ送信元アドレスの間にトンネルがセットアップされる。
2005514868.tif 000002
【特許請求の範囲】
【請求項１】
モバイルＩＰをサポートするホームエージェントにおいて、モバイルノードおよびホームエージェントの間の通信を確立する方法であって、
レジストレーションリクエストパケットをモバイルノードから受け取ることであって、前記レジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む、レジストレーションリクエストパケットを受け取ること、
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出すること、および
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップすること
を含む方法。
【請求項２】
請求項１に記載の方法であって、前記レジストレーションリクエストパケットは気付けアドレスをさらに含み、前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出することは、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しいかを決定すること
を含み、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しくないとき、ネットワークアドレス変換は実行されている
方法。
【請求項３】
請求項１に記載の方法であって、前記レジストレーションリクエストパケットは、直接カプセル化ビットおよび気付けアドレスをさらに含み、前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出することは、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しいかを決定すること、および
前記直接カプセル化ビットがセットされていることを決定すること
を含み、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しくないとき、かつ前記直接カプセル化ビットがセットされているとき、ネットワークアドレス変換は実行されている
方法。
【請求項４】
請求項１に記載の方法であって、前記レジストレーションリクエストパケットは、直接カプセル化ビットを含み、
前記モバイルノードがコロケートされた気付けアドレスを有するかを前記直接カプセル化ビットから決定すること
をさらに含み、
前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップすることは、前記モバイルノードがコロケートされた気付けアドレスを有するときに実行される
方法。
【請求項５】
請求項１に記載の方法であって、
前記レジストレーションリクエストパケットはフォーリンエージェントから受け取られたかを決定すること
をさらに含み、
前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップすることは、前記レジストレーションリクエストパケットがフォーリンエージェントから受け取られていないときに実行される
方法。
【請求項６】
請求項１に記載の方法であって、前記レジストレーションリクエストパケットは、気付けアドレスをさらに含み、
ネットワークアドレス変換が実行されていないことが検出されたとき、前記ホームエージェントアドレスおよび前記気付けアドレスの間にトンネルをセットアップすること
をさらに含む方法。
【請求項７】
請求項１に記載の方法であって、前記レジストレーションリクエストパケットは、気付けアドレスをさらに含み、前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出することは、
前記気付けアドレスがプライベートアドレスであるかを決定すること
を含み、
前記気付けアドレスがプライベートアドレスであるとき、ネットワークアドレス変換が実行されている
方法。
【請求項８】
請求項７に記載の方法であって、前記気付けアドレスがプライベートアドレスであるかを決定することは、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しいかを決定すること
を含み、
前記ＩＰ送信元アドレスが前記気付けアドレスに等しくないとき、ネットワークアドレス変換が実行されている
方法。
【請求項９】
請求項７に記載の方法であって、前記ＩＰ送信元アドレスはパブリックアドレスである方法。
【請求項１０】
請求項１に記載の方法であって、
前記モバイルノードを前記トンネルに関連付けるエントリーでモビリティバインディングテーブルをアップデートすること
をさらに含む方法。
【請求項１１】
請求項１に記載の方法であって、
レジストレーション応答パケットを生成することであって、前記レジストレーション応答パケットはＩＰ宛先アドレスを含み、前記ＩＰ宛先アドレスは前記レジストレーションリクエストパケットの前記ＩＰ送信元アドレスに等しい、レジストレーション応答パケットを生成すること、および
前記レジストレーション応答パケットを前記ＩＰ宛先アドレスに送ること
をさらに含む方法。
【請求項１２】
モバイルノードおよびモバイルＩＰをサポートするホームエージェントの間で通信を確立するコンピュータで読み取り可能な命令をその上に記憶するコンピュータで読み取り可能な媒体であって、
レジストレーションリクエストパケットをモバイルノードから受け取る命令であって、前記レジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む、レジストレーションリクエストパケットを受け取る命令、
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出する命令、および
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップする命令
を含むコンピュータで読み取り可能な媒体。
【請求項１３】
モバイルＩＰをサポートするホームエージェントであって、前記ホームエージェントは、モバイルノードおよび前記ホームエージェントの間の通信を確立するよう適応され、
レジストレーションリクエストパケットをモバイルノードから受け取る手段であって、前記レジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む、レジストレーションリクエストパケットを受け取る手段、
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出する手段、および
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップする手段
を備えるホームエージェント。
【請求項１４】
モバイルＩＰをサポートするホームエージェントであって、前記ホームエージェントは、モバイルノードおよび前記ホームエージェントの間の通信を確立するよう適応され、
プロセッサ、および
メモリを備え、前記プロセッサおよび前記メモリのうちの少なくとも１つは、
レジストレーションリクエストパケットをモバイルノードから受け取ることであって、前記レジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む、レジストレーションリクエストパケットを受け取ること、
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたことを前記レジストレーションリクエストパケットから検出すること、および
前記ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、前記ホームエージェントアドレスおよび前記ＩＰ送信元アドレスの間にトンネルをセットアップすること
に適応されているホームエージェント。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モバイルＩＰネットワーク技術に関する。より具体的には本発明は、ホームエージェントが、ホームエージェントおよびプライベート気付けアドレスの間のトンネルをセットアップできるようにすることに関する。
【背景技術】
【０００２】
モバイルＩＰは、ラップトップコンピュータまたは他のモバイルコンピュータユニット（ここでは「モバイルノード」と呼ぶ）がさまざまなサブネットワーク間でさまざまな場所でローミングできる−インターネットおよび／またはＷＡＮ接続を維持しつつ−ようにするプロトコルである。モバイルＩＰまたは関連したプロトコルなしでは、モバイルノードは、さまざまなサブネットワークを通してローミングしながら接続されたままでいることはできない。これは、あるノードがインターネット上で通信するために必要とされるＩＰアドレスは場所に特定のものだからである。それぞれのＩＰアドレスは、ノードが常駐する特定のサブネットワークを特定するフィールドを有する。もしユーザがあるノードにふだん接続されたコンピュータを持って、それを異なるサブネットワークを通してローミングさせようとするなら、それはそのホームベースＩＰアドレスを使うことができない。その結果、国内を旅行するビジネスマンは、インターネット上で接続された状態を維持しつつ、自分のコンピュータで地理的に離れたネットワークセグメントまたはワイヤレスノードにわたってローミングすることができない。これはポータブルコンピューティングデバイスの時代としては受け入れられる状況ではない。
【０００３】
この問題に対処するため、モバイルＩＰプロトコルが開発され、実現されてきた。モバイルＩＰのインプリメンテーションは、IP Routing for Wireless/Mobile Hosts Working Group, C. Perkins, Ed., October 1996のＲＦＣ２００２に記載されている。モバイルＩＰはまた、Prentice HallのJ.Solomonによる「Mobile IP Unplugged」というテキストに記載される。これらの参考文献はその全体が全ての目的のためにここで参照によって援用される。
【０００４】
モバイルＩＰプロセスおよび環境は図１に示される。ここで示されるように、モバイルＩＰ環境２は、モバイルノード６がホームエージェント８およびフォーリンエージェント１０の仲介で遠隔で通信できるインターネット（またはＷＡＮ）４を含む。典型的にはホームエージェントおよびフォーリンエージェントは、ソフトウェア、ハードウェア、および／またはファームウェアによって適切なモバイルＩＰ機能を実行するルータまたは他のネットワーク接続デバイスである。そのホームネットワークセグメントにつながれた特定のモバイルノード（例えばラップトップコンピュータ）は、その指定されたホームエージェントを通してインターネットと接続する。モバイルノードがローミングするとき、それはインターネットを介して利用可能なフォーリンエージェントを通して通信する。広く散らばったインターネット接続をモバイルＩＰプロトコルを介して可能にするために、地理的に離れた場所において利用可能な多くのフォーリンエージェントがおそらくは存在する。モバイルノードがそのホームエージェントに直接にレジストレーションすることもできることに注意されたい。
【０００５】
図１に示されるように、モバイルノード６はふつう、そのネットワークエンティティがインターネット４上でホームエージェント８（Ｒ２と示された適切に構成されたルータ）を通して通信することを可能にするネットワークセグメント１２上に常駐する（つまりそこに「ベースを置く」）。ホームエージェント８は直接にインターネットに接続する必要はないことに注意されたい。例えば図１に示されるように、それは他のルータ（この場合、ルータＲ１）を通して接続されえる。ルータＲ１はこんどは１つ以上の他のルータ（例えば、ルータＲ３）をインターネットに接続しえる。
【０００６】
こんどはモバイルノード６がそのホームベースネットワークセグメント１２から取り除かれ、リモートネットワークセグメント１４にローミングすると想定する。ネットワークセグメント１４は、ＰＣ１６のようなさまざまな他のノードを含みえる。ネットワークセグメント１４上のノードは、フォーリンエージェント１０として二重になる（double）ルータを通してインターネットと通信する。モバイルノード６は、モバイルＩＰプロトコルの一部を形成するさまざまなエージェントソリシテーション（agent solicitations）およびエージェントアドバタイズメント（agent advertisements）を通してフォーリンエージェント１０を認識しえる。モバイルノード６がネットワークセグメント１４とやりとりするとき、それは、モバイルノードの現在位置をそのホーム位置とバインドするためにホームエージェント８へのレジストレーションリクエストを作る。フォーリンエージェント１０はそれからレジストレーションリクエストをホームエージェント８にリレーする（点線「レジストレーション」で示されるように）。レジストレーションプロセスのあいだ、ホームエージェントおよびモバイルノード６はそれから、モバイルノードがフォーリンエージェント１０にアタッチする条件をネゴシエートする。例えば、モバイルノード６は、５時間のレジストレーションライフタイムをリクエストしえるが、ホームエージェント８は３時間の期間しか認めないかもしれない。したがってアタッチメントは、ある期間だけに限定されえる。ネゴシエーションが成功して完了するとき、ホームエージェント８は、モバイルノードの現在位置を、その気付けアドレス（例えばコロケートされた気付けアドレスまたはフォーリンエージェントのＩＰアドレス）を介してモバイルノード６のアイデンティティ（例えばホームアドレス）にリンクする内部「モビリティバインディングテーブル」をアップデートする。さらにもしモバイルノード６がフォーリンエージェントを介してレジストレーションしたなら、フォーリンエージェント１０は、モバイルノードアドレス、ホームエージェントアドレスなどを特定する内部「ビジターテーブル」をアップデートする。実際、モバイルノードのホームベースＩＰアドレス（セグメント１２と関連付けられている）は、フォーリンエージェントのＩＰアドレス（セグメント１４と関連付けられている）のような気付けアドレスにバインドされている。
【０００７】
こんどはモバイルノード６がコレスポンデントノード１８にその新しい位置からメッセージを送りたいと想定する。モバイルノードからの出力メッセージはそれからパケタイズされ、標準的なインターネットプロトコルによってフォーリンエージェント１０を通してインターネット４上をコレスポンデントノード１８へ転送される（点線「ＭＮからのパケット」によって示されるように）。もしコレスポンデントのノード１８がメッセージをモバイルノードに送りたいならーモバイルノードからのメッセージに応答するか、または他の理由でー、それはそのメッセージを、サブネットワーク１２上のモバイルノード６のＩＰアドレスにアドレス設定する。そのメッセージのパケット群はそれからインターネット４上を転送され、ルータＲ１へ転送され、最終的にはホームエージェント８へ点線によって示されるように転送される（「ＭＮ（１）へのパケット」）。そのモビリティバインディングテーブルから、ホームエージェント８は、モバイルノード６がもはやネットワークセグメント１２にアタッチされていないことを認識する。それはそれからコレスポンデントノード１８からのパケット（ネットワークセグメント１２上のモバイルノード６にアドレス設定されている）をモバイルＩＰプロトコルに基づいてカプセル化し、点線によって示されるように（「ＭＮ（２）へのパケット」）、これらのカプセル化されたパケットをモバイルノード６のための「気付け」アドレスに転送する。気付けアドレスは例えば、フォーリンエージェント１０のＩＰアドレスでありえる。フォーリンエージェント１０はそれからカプセル化をストリップし、メッセージをサブネットワーク１４上のモバイルノード６へ転送する。ホームおよびフォーリンエージェントによってインプリメントされるパケット転送メカニズムは、しばしば「トンネリング」と呼ばれる。
【０００８】
上述のようにさまざまなモバイルノードは指定されたホームエージェントを有する。ＲＦＣ２００２に規定されるように、モバイルノードは、そのホームエージェントを特定する情報で予めコンフィギャされる。さらにモバイルノードおよびそのホームエージェントの両方はまた、共有キーおよびふつうセキュリティアソシエーションと呼ばれるその共有キーのためのセキュリティパラメータインデックス（ＳＰＩ）とともに予めコンフィギャされる。同様にそれぞれのホームエージェントは、その対応するセキュリティアソシエーションと併せて、それがサポートするモバイルノードを特定する情報とともに予めコンフィギャされる。このようにしてモバイルノードは、特定のホームエージェントに「アンカーされる」ことによって、それがあとでそのホームエージェントにレジスタし、そのホームエージェントを介してメッセージをコレスポンデントノードから受け取ることができる。
【０００９】
上述のようにモバイルノードがローミングするとき、それは典型的にはコレスポンデントノードによってモバイルＩＰトンネルを介してそれに送られたパケットを受け取る。典型的にはモバイルノードがそのホームエージェントにレジスタするとき、トンネルはモバイルノードの気付けアドレス（ＣＯＡ）およびホームエージェントの間で作られる。しかしホームエージェントがＣＯＡに到達するためには、ＣＯＡはパブリックアドレスでなければならない。よってモバイルノードがプライベートネットワーク内からレジスタしようと試みるときに問題が起きる。
【００１０】
モバイルオペレータおよびサービスプロバイダは、プライベートＩＰアドレスをそのサブスクライバにアサインする。具体的にはモバイルオペレータは世界的に典型的には、ＩＰアドレスの欠如のために、プライベートダイナミックホストコンフィギュレーションプロトコル（ＤＨＣＰ）またはＰＰＰ  ＩＰコントロールプロトコル（ＩＰＣＰ）アドレスアサインメントをそのモバイルユーザに使う。ユーザがインターネットにアクセスするとき、ユーザにアサインされたプライベートＩＰアドレスは、パケットがインターネットを介して送られる前にプライベートネットワークのエッジにおけるパブリックアドレスへ変換される。この機能は典型的にはネットワークアドレス変換（ＮＡＴ）と呼ばれる。
【００１１】
モバイルＩＰクライアントがモバイルＩＰセッションをプライベートアドレスから作ろうと試みるとき、ＮＡＴシステムはモバイルＩＰセッションが成功して確立されることを防ぐが、これはホームエージェントはそのプライベートアドレス、ＣＯＡへのトンネルを終了しなければならないからである。フォーリンエージェントのＣＯＡまたはモバイルノードのコロケートされた気付けアドレスのいずれであろうと、ＣＯＡがプライベートアドレスであるとき、ＮＡＴシステムはモバイルＩＰセッションが確立されることを防ぐ。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述を鑑み、もしモバイルＩＰセッションがモバイルノードからプライベートＩＰアドレスを介して成功して効率よく確立されるなら望ましいだろう。さらにもしそのようなメカニズムがモバイルノードまたはモバイルノードおよびホームエージェントの両方のためのカプセル化スキームへの変更を必要とすることなく利用できれば有用だろう。
【課題を解決するための手段】
【００１３】
本発明は、プライベートネットワークにローミングしたモバイルノードとそのホームエージェントとの間でモバイルＩＰセッションが確立されることを可能にする。より具体的には、モバイルＩＰセッションは、気付けアドレスがパブリックアドレスではなくプライベートアドレスであっても確立されえる。これは部分的には、レジストレーションリクエストパケットのネットワークアドレス変換トラバーサルを検出することを通して達成される。このようにしてモバイルＩＰセッションは、モバイルノードを変えることなく確立されえる。
【００１４】
モバイルノードおよびホームエージェントの間の通信を確立する方法および装置が開示される。ホームエージェントは、レジストレーションリクエストパケットをモバイルノードから受け取り、このレジストレーションリクエストパケットはＩＰ送信元アドレスおよびホームエージェントアドレスを含む。ホームエージェントはそれからＩＰ送信元アドレスのネットワークアドレス変換が実行されたことをレジストレーションリクエストパケットから検出する。ＩＰ送信元アドレスのネットワークアドレス変換が実行されたと検出されたとき、ホームエージェントアドレスおよびＩＰ送信元アドレスの間に単一のトンネルがセットアップされる。
【００１５】
さまざまなネットワークデバイスは、開示されたプロセスを実行するよう構成または適応されえる。これらネットワークデバイスはこれに限定されないがルータを含む。さらに開示されたプロセッサのための機能はハードウェアと共にソフトウェアでもインプリメントされえる。本発明のさらに他の局面は、ここで説明された方法および手法を全体として、またはその一部をインプリメントするためのプログラム命令がその上に提供される機械で読み取り可能な媒体を含むコンピュータプログラム製造物に関する。本発明の方法の任意のものは全体として、または一部が、そのような機械で読み取り可能な媒体上に提供されえるプログラム命令として表現されえる。
【００１６】
本発明のこれらおよび他の特徴は、添付図面と併せて本発明の詳細な説明においてより詳細に以下に説明される。
【発明を実施するための最良の形態】
【００１７】
以下の記載において、多くの特定の詳細が述べられているが、それは本発明の完全な理解のためである。しかし本発明はこれら特定の詳細の一部または全部なしに実施できることは当業者には明らかである。あるいはよく知られたプロセスステップは、本発明の趣旨を不必要にぼかさないために詳細には記載されていない。
【００１８】
図２は、プライベートネットワーク内のモバイルノードによってホームエージェントからパブリックネットワークを介してパケットを受け取ることに付随する問題を示すブロック図である。示されるようにモバイルノード２０２がプライベートネットワーク２０４にローミングするとき、典型的にはそのホームエージェント２０６にフォーリンエージェント（不図示）を介してレジストレーションする。しかしモバイルノード２０２はコロケートされた気付けアドレスを介してレジストレーションできるが、フォーリンエージェントを介してはできない。いずれの場合も気付けアドレスはしばしばパブリックアドレスである。したがってトンネル２０８は典型的には、パブリック気付けアドレスおよびホームエージェントアドレスの間に確立される。
【００１９】
残念ながら上述のように、モバイルノードがプライベートネットワーク２０４にローミングするとき、ＩＰアドレスの欠如によりプライベートアドレスがしばしばアサインされる。よってモバイルノード２１０がコロケートされた気付けアドレスを得るとき、気付けアドレスは、パブリックアドレスではなくプライベートアドレスでありえる。この場合、気付けアドレスはプライベートアドレスであり、レジストレーションリクエストのＩＰ送信元アドレスもまたプライベートアドレスである。その結果、ネットワークアドレス変換（ＮＡＴ）２１２は、ＩＰ送信元アドレスをパブリックアドレスに変換するよう実行される。よってレジストレーションリクエストがインターネット２１４を介して送信されるとき、ホームエージェント２０６は、適切な到達できる（legitimate reachable）ＩＰ送信元アドレスに出会い、それによってレジストレーションリプライをＩＰ送信元アドレスに送ることができる。残念ながらホームエージェントはプライベート気付けアドレスを認識せず、したがってホームエージェントおよびプライベート気付けアドレスの間にトンネルを確立することはできない。
【００２０】
本発明のさまざまな実施形態によれば、ホームエージェント２０６は、ＮＡＴが実行されたときを検出する。ＮＡＴが実行されるとき、トンネル２１６はＩＰ送信元アドレスおよびホームエージェントアドレスの間で確立される。このようにしてモバイルＩＰセッションは、ホームエージェントおよびパブリックＩＰアドレスの間にトンネルを作ることによって成功して確立される。
【００２１】
ホームエージェントによって実行されるプロセスをよりよく示すために、レジストレーションリクエストパケットのフィールドを示すのが有用である。図３は、従来のレジストレーションリクエストパケットを示す図である。示されるようにレジストレーションリクエストパケット３００は、典型的には、ＩＰ送信元アドレス３０２およびＩＰ宛先アドレス３０４を含む。さらにホームエージェントアドレス３０６、気付けアドレス３０８、およびモバイルノード識別子３１０（例えばＩＰアドレス）もまた一般にはレジストレーションリクエストパケット内に与えられる。
【００２２】
図４は、本発明のさまざまな実施形態によってプライベートネットワークにローミングしたモバイルノードによって送られたモバイルＩＰレジストレーションリクエストを処理する方法を示す制御フロー図である。モバイルノード、ＮＡＴモジュール、およびホームエージェントは、対応する垂直のライン４０２、４０４、および４０６によってそれぞれ表され、これらのエンティティ間のインタラクションは水平の線によって表される。示されるようにモバイルノード４０２は、プライベート気付けアドレスを４０８において得て、レジストレーションリクエストを４１０において作る。言い換えれば、フォーリンエージェントを介してレジストレーションするのではなく、モバイルノード４０２はコロケートされた気付けアドレス（collocated care-of address）を介してレジストレーションをする。モバイルノード４０２はそれからレジストレーションリクエストを４１２においてＮＡＴモジュール４０４に送る。この例では、モバイルノードがコロケートされた気付けアドレスを得て、それがプライベートネットワークにローミングしているので、ＩＰ送信元アドレスはプライベート気付けアドレスに等しい。ＩＰ宛先アドレスはホームエージェントアドレスに等しい。
【００２３】
ＮＡＴモジュール４０４がレジストレーションリクエストを受け取るとき、それはＩＰ送信元アドレス（プライベート気付けアドレスに等しい）をパブリックアドレスに４１４において変換する。レジストレーションリクエストはそれから４１６においてホームエージェント４０６に送られる。この時点で、ＩＰ送信元アドレスはパブリックアドレスであり、気付けアドレスはプライベートアドレスである。
【００２４】
ホームエージェント４０６がレジストレーションリクエストパケットを受け取るとき、ホームエージェント４０６は、４１８において示されるようにＩＰ送信元アドレスのネットワークアドレス変換が実行されたことをレギュレータリクエストパケットから検出する。ＩＰ送信元アドレスのネットワークアドレス変換が実行されたときは、４２０においてトンネルがホームエージェントアドレスおよびＩＰ送信元アドレス（今はパブリックアドレスである）の間にセットアップされる。言い換えれば、ＩＰ送信元アドレスは以前はプライベート気付けアドレスに等しかったので、変換されたＩＰ送信元アドレスは、プライベート気付けアドレスの変換である。このように、トンネルはホームエージェントおよび気付けアドレスの間にセットアップされる。標準モバイルＩＰ処理が４２２において実行される。ホームエージェント４０６によって実行されるこれら処理は、図５を参照してより詳細に説明される。例えばモビリティバインディングテーブルは、ホームエージェントおよびパブリックＩＰ送信元アドレスの間にセットアップされたトンネルを含むモバイルノードについてのバインディングでアップデートされる。
【００２５】
ホームエージェントはそれからレジストレーション応答パケットを４２４においてＮＡＴモジュール４０４に送る。言い換えると、レジストレーション応答パケットのＩＰ送信元アドレスはホームエージェントアドレスに等しく、一方、ＩＰ宛先アドレスはレジストレーションリクエストパケットのパブリックＩＰ送信元アドレス（変換された気付けアドレス）に等しい。ＮＡＴモジュールはそれからＩＰ宛先アドレスをプライベート気付けアドレスに４２６において変換し、レジストレーション応答パケットを４２８においてモバイルノード４０２に送る。示されるようにレジストレーション応答パケットのＩＰ宛先アドレスは今度はプライベート気付けアドレスに等しく、一方、ＩＰ送信元アドレスはホームエージェントアドレスに等しい。
【００２６】
図４について上述のようにホームエージェントは、ＮＡＴ変換を検出し、それにしたがってトンネルを確立する。図５は、本発明のさまざまな実施形態によるホームエージェントによってレジストレーションリクエストを処理する方法である。示されるようにブロック５０２において、ホームエージェントはレジストレーションリクエストを受け取る。それからホームエージェントは、ＮＡＴ変換が実行されたかを判定する。ある実施形態によれば、ホームエージェントは、レジストレーションリクエストパケットのＩＰ送信元アドレスがレジストレーションリクエストパケット内で特定された気付けアドレスに等しいかをブロック５０４において判定することによって、ＮＡＴ変換が実行されたかを判定する。もしそれらが等しいなら、ブロック５０６に示されるようにＮＡＴは実行されなかったことになる。言い換えればＩＰ送信元アドレスおよび気付けアドレスは両方ともパブリックアドレスである。したがってトンネルは、ブロック５０８においてパブリック気付けアドレスおよびホームエージェントアドレスの間に従来の方法で作られる。
【００２７】
ブロック５０４においてレジストレーションリクエストパケット内で特定されたＩＰ送信元アドレスがレジストレーションリクエストパケット内で特定された気付けアドレスにもはや等しくないとき、これは５１０において示されるようにＮＡＴが実行されたことを意味する。言い換えれば、ＩＰ送信元アドレスはパブリックアドレスであり、気付けアドレスはプライベートアドレスである。したがってトンネルは、この気付けアドレスおよびホームエージェントアドレスの間で確立されえない。
【００２８】
本発明のさまざまな実施形態によれば、ホームエージェントはまた、モバイルノードがフォーリンエージェントを介してではなく、コロケートされた気付けアドレスを介して登録されたかを検出する。これは、レジストレーションリクエストパケットの直接カプセル化ビット（Ｄビット）がブロック５１２において示されるようにセットされているかを判定することによって達成されえる。それからブロック５１４においてトンネルがホームエージェントアドレスおよびパブリックＩＰ送信元アドレスの間にセットアップされる。もしＤビットがセットされていないなら、ブロック５０８においてトンネルはホームエージェントアドレスおよび気付けアドレスの間にセットアップされる。
【００２９】
図６は、図４および図５を参照して上述のトンネルの構築の後の、プライベートネットワークにローミングしたモバイルノードおよびパブリックネットワーク内の対応するノードの間のデータのフローを示すデータフロー図である。示されるようにモバイルノードがデータパケットを送るとき、それはデータパケットを６０２においてモバイルノードのホームエージェントに等しいＩＰ送信元アドレス、および対応するノード６００のＩＰアドレスに等しいＩＰ宛先アドレスと共に送る。それからデータパケットは６０４においてトンネルされることによってパケットは、コロケートされた気付けアドレスに等しいＩＰ送信元アドレス、およびホームエージェントアドレスに等しいＩＰ宛先アドレスと共にカプセル化される。６０６においてＮＡＴモジュールは、ＩＰ送信元アドレスをプライベート気付けアドレスからパブリックアドレスに変換する。パケットはそれから６０８においてホームエージェントに送られる。ホームエージェントは、６１０において標準モバイルＩＰ処理を実行し、パケットをデカプセル化する。ホームエージェントはそれからデータパケットを６１２において対応するノードに送る。示されるようにＩＰ送信元アドレスはモバイルノードのホームアドレスであり、ＩＰ宛先アドレスは対応するノードのＩＰアドレスである。
【００３０】
対応するノードがデータパケットをモバイルノードに送るとき、対応するノードは、対応するノードのＩＰアドレスに等しいＩＰ送信元アドレス、およびモバイルノードのホームアドレスに等しいＩＰ宛先アドレスを有するデータパケットを作る。それから対応するノードはデータパケットを６１４において送り、これはホームエージェントによってインターセプトされる。ホームエージェントは、標準モバイルＩＰ処理を６１６において実行する。それからホームエージェントはデータパケットを６１８において以前に確立されたトンネル（モビリティバインディングテーブルに記憶されている）に対応させてトンネルする。より具体的にはデータパケットは、ホームエージェントアドレスに等しいＩＰ送信元アドレスおよびパブリックアドレスに等しい宛先ＩＰアドレスでカプセル化される（以前にＮＡＴモジュールによって変換されている）。それからＮＡＴモジュールはパブリックＩＰ宛先アドレスをプライベート気付けアドレスに６２０において変換する。それからＮＡＴモジュールは、６２２におけるパケットをプライベート気付けアドレスに６２２においてトンネルする。パケットはそれからデカプセル化され、６２４においてモバイルノードのホームアドレスに送られる。
【００３１】
他の実施形態
一般に本発明の手法は、ソフトウェアおよび／またはハードウェア上でインプリメントされえる。例えば本手法は、オペレーティングシステムカーネル内で、別個のユーザプロセス内で、ネットワークアプリケーションに結合されたライブラリパッケージ内で、特別に構成された機械で、またはネットワークインタフェースカード上でインプリメントされえる。本発明の特定の実施形態においては、本発明の手法はオペレーティングシステムのようなソフトウェア内で、あるいはオペレーティングシステム上で走るアプリケーション内でインプリメントされる。
【００３２】
本発明の手法のソフトウェアまたはソフトウェア／ハードウェアハイブリッドインプリメンテーションは、メモリに記憶されたコンピュータプログラムによって選択的にアクティベートされる、または再コンフィギャされる汎用プログラマブルマシン上でインプリメントされえる。このようなプログラマブルマシンは、例えばルータまたはスイッチのようなネットワークトラフィックを扱うよう設計されたネットワークデバイスでありえる。このようなネットワークデバイスは、フレームリレーおよびＩＳＤＮインタフェースを例えば含む複数のネットワークインタフェースを含みえる。このようなネットワークデバイスの具体的な例はルータおよびスイッチを含む。例えば、本発明のホームエージェントは、カリフォルニア州サンノゼのシスコシステムズから入手可能な特別に構成されたルータモデル１６００、２５００、２６００、３６００、４５００、４７００、７２００、７５００、および１２０００のような特別に構成されたルータまたはサーバにおいてインプリメントされえる。これらマシンの一部の一般的アーキテクチャは、以下の説明に現れる。代替の実施形態においては、本発明の手法は、パーソナルコンピュータまたはワークステーションのような汎用ネットワークホストマシン上でインプリメントされえる。さらに本発明は、ネットワークデバイスまたは汎用コンピューティングデバイスのためのカード（例えばインタフェースカード）上で少なくとも部分的にはインプリメントされえる。
【００３３】
今度は図７を参照し、本発明の手法をインプリメントするのに適するネットワークデバイス１５６０は、マスター中央処理装置（ＣＰＵ）１５６２、インタフェース１５６８、およびバス１５６７（例えばＰＣＩバス）を含む。適切なソフトウェアまたはファームウェアの制御のもとで機能するとき、ＣＰＵ１５６２は、所望のネットワークデバイスの機能に関連付けられた特定の機能をインプリメントする役割を担う。例えば、中間ルータとして構成されるとき、ＣＰＵ１５６２は、パケットを分析し、パケットをカプセル化し、かつセットトップボックスに送信するためにパケットを転送する役割を果たす。ＣＰＵ１５６２は好ましくは、オペレーティングシステム（例えばウィンドウズＮＴ）を含むソフトウェア、および適切なアプリケーションソフトウェアを含むソフトウェアの制御のもとでこれら全ての機能を実現する。
【００３４】
ＣＰＵ１５６２は、マイクロプロセッサのモトローラファミリーまたはマイクロプロセッサのＭＩＰＳファミリーからのプロセッサのような１つ以上のプロセッサ１５６３を含みえる。代替実施形態においてプロセッサ１５６３は、ネットワークデバイス１５６０の動作を制御するよう特別に設計されたハードウェアである。具体的な実施形態においてメモリ１５６１（不揮発性ＲＡＭおよび／またはＲＯＭのような）もＣＰＵ１５６２の一部を形成する。しかしメモリがシステムに結合されえる多くの異なる方法が存在する。メモリブロック１５６１は、例えばキャッシングおよび／またはデータ、プログラム命令などの記憶のようなさまざまな目的のために用いられえる。
【００３５】
インタフェース１５６７は典型的にはインタフェースカード（「ラインカード」と呼ばれることもある）として提供される。一般にこれらは、ネットワーク上でのデータパケットの送受信を制御し、ときにはネットワークデバイス１５６０と共に用いられる他の周辺機器をサポートする。提供されえるインタフェースの中には、イーサネットインタフェース、フレームリレーインタフェース、ケーブルインタフェース、ＤＳＬインタフェース、トークンリングインタフェースなどがある。さらに高速イーサネットインタフェース、ギガビットイーサネットインタフェース、ＡＴＭインタフェース、ＨＳＳＩインタフェース、ＰＯＳインタフェース、ＦＤＤＩインタフェース、ＡＳＩインタフェース、ＤＨＥＩインタフェースなどのさまざまな非常に高速のインタフェースが提供されえる。一般にこれらインタフェースは、適切な媒体との通信に適切なポートを含みえる。ある場合にはこれらは独立したプロセッサを含みえ、場合によっては揮発性ＲＡＭを含みえる。独立したプロセッサは、パケットスイッチング、メディアコントロールおよびマネージメントのような通信集約的なタスクを制御しえる。別個のプロセッサを通信集約的なタスクに与えることによってこれらインタフェースは、マスターマイクロプロセッサ１５６２が効率よくルーティング計算、ネットワーク分析、セキュリティ機能などを実行できるようにする。
【００３６】
図７に示されるシステムは本発明のある具体的なネットワークデバイスを示すが、これは本発明がインプリメントされえる唯一のネットワークデバイスでは決してない。例えば、ルーティング計算などと共に通信も扱う単一のプロセッサを有するアーキテクチャもしばしば用いられる。さらに他のタイプのインタフェースおよび媒体もこのネットワークデバイスと共に用いられえる。
【００３７】
ネットワークデバイスの構成に関わらず、データ、汎用ネットワーク操作のためのプログラム命令、および／またはここで記載された手法の機能に関する他の情報を記憶するよう構成された１つ以上のメモリまたはメモリモジュール（例えばメモリブロック１５６５のような）をこのネットワークデバイスは採用しえる。プログラム命令は、例えばオペレーティングシステムおよび／または１つ以上のアプリケーションの動作を制御しえる。
【００３８】
このような情報およびプログラム命令は、ここで説明されたシステム／方法をインプリメントするために利用されえるので、本発明は、ここで説明されたさまざまな動作を実行するためのプログラム命令、状態情報などを含む機械で読み取り可能な媒体に関する。機械で読み取り可能な媒体の例は以下に限定されないが、ハードディスク、フロッピーディスク、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭディスクのような光学媒体、フロプティカルディスクのような光磁気媒体、および読み出し専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）のようなプログラム命令を記憶し実行するよう特別に構成されるハードウェアデバイスを含む。本発明はまた、空間波、光ケーブル、電線などのような適切な媒体上を伝搬する搬送波として実現されえる。プログラム命令の例は、コンパイラによって作られるような機械コード、およびインタープリタを用いてコンピュータによって実行されえる高級コードを含むファイルを含む。
【００３９】
本発明の例示的実施形態および応用例がここでは示され、説明されているが、多くの改変および変更が可能であり、これらは本発明の概念、範囲、および精神の中に含まれ、これら改変は本願を吟味した当業者には明らかになるだろう。しかし本発明はこのような実現例に限定されず、むしろ実現されるコンテキストおよびシステムに関わりなく等しく応用できる。よって大まかに言えば、上述の操作は、フォーリンエージェントのような他のモビリティエージェントについて用いられてもよい。さらに上述の本発明は、ディスクドライブ、ハードドライブ、フロッピーディスク、サーバコンピュータ、またはリモートにネットワーキングされたコンピュータ上に記憶されえる。したがって本発明は例示的であって限定的ではなく、本発明はここで与えられた詳細に限定されるべきではなく、添付の特許請求の範囲および等価物の範囲内で変更されえる。
【図面の簡単な説明】
【００４０】
【図１】モバイルＩＰネットワークセグメントおよび関連する環境の図である。
【図２】プライベートネットワーク内でホームエージェントからパブリックネットワークを介してモバイルノードによってパケットを受信することに付随する問題を示すブロック図である。
【図３】従来のレジストレーションリクエストパケットを示す図である。
【図４】本発明のさまざまな実施形態によってプライベートネットワークにローミングしたモバイルノードによって送られるモバイルＩＰレジストレーションリクエストを処理する方法を示す制御フロー図である。
【図５】本発明のさまざまな実施形態によってホームエージェントによってレジストレーションリクエストを処理する方法の図である。
【図６】図４および図５を参照して上述のトンネルが作られた後のプライベートネットワークにローミングしたモバイルノードおよびパブリックネットワーク内の対応するノードの間のデータフロー図である。
【図７】本発明の実施形態がインプリメントされえる例示的なネットワークデバイスを示す図である。
【図１】
2005514868.tif 000003
【図２】
2005514868.tif 000004
【図３】
2005514868.tif 000005
【図４】
2005514868.tif 000006
【図５】
2005514868.tif 000007
【図６】
2005514868.tif 000008
【図７】
2005514868.tif 000009
【国際調査報告】
2005514868.tif 000010
2005514868.tif 000011