(57)【要約】【課題】ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除する。【解決手段】第１のネットワークから第２のネットワークへのハンドオーバを行う際に、端末１００が前記第２のネットワーク経由のパケット送受信のためのトンネルの新規設定後にホームエージェント２００へ第１のネットワークを介して応答要求メッセージを送信し、前記第１のネットワークを介して前記応答要求メッセージに対応する応答メッセージを受信したら、前記第１のネットワーク経由のパケット送受信のためのトンネルの設定が削除可能になったことを検知し、このトンネルの設定を削除する。【選択図】図５
2010050892.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、
前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する第１の応答メッセージを取得し、前記第１の応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１の応答メッセージに基づいて前記第１のネットワークを介して送信される応答要求メッセージを作成して前記第１のインタフェースへ与え、前記第１のインタフェースから前記応答要求メッセージに対応する第２の応答メッセージを取得し、前記第２の応答メッセージの取得に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
を備える移動端末。
【請求項２】
前記モビリティプロトコルモジュールは、
前記ハンドオーバ要求メッセージとしてＳビットを１に指定したＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｑｕｅｓｔメッセージを作成し、
前記第１の応答メッセージとしてＣｏｄｅフィールドが０であるＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｐｌｙメッセージを取得した場合は、前記応答要求メッセージとしてＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｑｕｅｓｔメッセージを作成し、
前記第１の応答メッセージとしてＣｏｄｅフィールドが１であるＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｐｌｙメッセージを取得した場合は、前記応答要求メッセージとしてＩＣＭＰ Ｅｃｈｏ Ｒｅｑｕｅｓｔメッセージを作成することを特徴とする請求項１に記載の移動端末。
【請求項３】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、
前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記されたメッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
を備える移動端末。
【請求項４】
前記パケット情報は、前記第１のインタフェースが受信する最後のパケットのＩＰヘッダ中のチェックサムフィールドの値であることを特徴とする請求項３に記載の移動端末。
【請求項５】
前記第１のインタフェースにより受信されるパケットが前記パケット情報に適合するか否か監視し、受信パケットが前記パケット情報に適合する場合に前記モビリティプロトコルモジュールへ通知するパケット監視モジュールをさらに備え、
前記モビリティプロトコルモジュールは前記通知に基づいて前記第１のネットワークの使用を停止させることを特徴とする請求項３又は４に記載の移動端末。
【請求項６】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、
前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記第１のインタフェースが受信したパケットに記されたシーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第２のインタフェースが最初に受信したパケットに記されたシーケンス番号から１を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
を備える移動端末。
【請求項７】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
前記移動端末は、
前記第１のネットワークを介して前記ホームエージェントとデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介して前記ホームエージェントとデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する第１の応答メッセージを取得し、前記第１の応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１の応答メッセージに基づいて前記第１のネットワークを介して送信される応答要求メッセージを作成して前記第１のインタフェースへ与え、前記第１のインタフェースから前記応答要求メッセージに対応する第２の応答メッセージを取得し、前記第２の応答メッセージの取得に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
を有し、
前記ホームエージェントは、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記第１の応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信し、前記第１のネットワークを介して受信した前記応答要求メッセージに基づいて前記第２の応答メッセージを作成し、前記第１のネットワークを介して前記第１のインタフェースへ送信することを特徴とする通信システム。
【請求項８】
前記ホームエージェントは前記第１の応答メッセージの作成前は前記第１のネットワークを介して前記第１のインタフェースへパケットを転送し、前記第１の応答メッセージの作成後は前記第２のネットワークを介して前記第２のインタフェースへパケットを転送することを特徴とする請求項７に記載の通信システム。
【請求項９】
前記モビリティプロトコルモジュールは、前記ハンドオーバ要求メッセージとしてＳビットを１に指定したＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｑｕｅｓｔメッセージを作成し、
前記ホームエージェントは、Ｓｉｍｕｌｔａｎｅｏｕｓ Ｒｅｇｉｓｔｒａｔｉｏｎに対応している場合は前記第１の応答メッセージとしてＣｏｄｅフィールドが０であるＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｐｌｙメッセージを作成し、Ｓｉｍｕｌｔａｎｅｏｕｓ Ｒｅｇｉｓｔｒａｔｉｏｎに対応していない場合は前記第１の応答メッセージとしてＣｏｄｅフィールドが１であるＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｐｌｙメッセージを作成することを特徴とする請求項７又は８に記載の通信システム。
【請求項１０】
前記モビリティプロトコルモジュールは、前記ホームエージェントが作成した前記Ｒｅｇｉｓｔｒａｔｉｏｎ ＲｅｐｌｙメッセージのＣｏｄｅフィールドが０であった場合は、前記応答要求メッセージとしてＩＰｖ４のＲｅｇｉｓｔｒａｔｉｏｎ Ｒｅｑｕｅｓｔメッセージを作成し、Ｃｏｄｅフィールドが１であった場合は、前記応答要求メッセージとしてＩＣＭＰ Ｅｃｈｏ Ｒｅｑｕｅｓｔメッセージを作成することを特徴とする請求項９に記載の通信システム。
【請求項１１】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
前記移動端末は、
前記第１のネットワークを介して前記ホームエージェントとデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介して前記ホームエージェントとデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記された通知メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
を有し、
前記ホームエージェントは、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信すると共に、前記移動端末とのパケット送受信に使用するネットワークを前記第１のネットワークから前記第２のネットワークへ変更し、前記通知メッセージを作成して、前記第２のネットワークを介して前記第２のインタフェースへ送信することを特徴とする通信システム。
【請求項１２】
前記ホームエージェントは、前記第１のネットワークを使用して前記移動端末へ送信した最後のパケットのＩＰヘッダ中のチェックサムフィールドの値を前記パケット情報として前記通知メッセージに記すことを特徴とする請求項１１に記載の通信システム。
【請求項１３】
第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
前記移動端末は、
前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、
前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、
前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第２のインタフェースで受信したパケットに付されたシーケンス番号に基づく番号を出力し、通知の受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、
前記第１のインタフェースで受信したパケットに付されたシーケンス番号と、前記モビリティプロトコルモジュールから出力された番号とを比較し、比較結果が一致した場合に前記モビリティプロトコルモジュールへ前記通知を出力するパケット監視モジュールと、
を有し、
前記ホームエージェントは、前記移動端末へ転送するパケットに対して転送順に連続するシーケンス番号を付加し、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信すると共に、前記移動端末へのパケット転送に使用するネットワークを前記第１のネットワークから前記第２のネットワークへ変更することを特徴とする通信システム。
【請求項１４】
前記モビリティプロトコルモジュールは前記第２のインタフェースで最初に受信したパケットに付されたシーケンス番号から１を減じた番号を前記パケット監視モジュールへ出力することを特徴とする請求項１３に記載の通信システム。
【請求項１５】
第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
前記移動端末及び前記ホームエージェントが前記第１のネットワークを使用してパケット送受信を行い、
前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて第１の応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記第２のネットワークを使用したパケット送受信を開始し、
前記移動端末が、前記第１の応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始し、前記第１のネットワークを使用して前記ホームエージェントへ応答要求メッセージを送信し、
前記ホームエージェントが、前記応答要求メッセージに基づいて第２の応答メッセージを作成して、前記第１のネットワークを使用して前記移動端末へ送信し、
前記移動端末が、前記第２の応答メッセージの受信に伴い、前記第１のネットワークの使用を停止することを特徴とする通信方法。
【請求項１６】
第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
前記移動端末及び前記ホームエージェントが前記第１のネットワークを使用してパケット送受信を行い、
前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替え、前記第１のネットワークを使用して前記移動端末へ送信した最後のパケットのパケット情報が記された通知メッセージを前記第２のネットワークを使用して前記移動端末へ送信し、
前記移動端末が、前記応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始して前記通知メッセージを受信し、前記第１のネットワークを使用した前記パケット情報に適合するパケットの受信に伴い、前記第１のネットワークの使用を停止することを特徴とする通信方法。
【請求項１７】
第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
前記ホームエージェントが送信順に連続するシーケンス番号をパケットに付加して、前記パケットを前記第１のネットワークを使用して前記移動端末へ送信し、
前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替え、前記第２のネットワークを使用して前記移動端末へ前記パケットを送信し、
前記移動端末が、前記応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始し、前記第２のネットワークを使用して最初に受信したパケットに付加されたシーケンス番号から１を減じた番号と、前記第１のネットワークを使用して受信したパケットに付加されたシーケンス番号とを比較し、比較結果の一致に伴い、前記第１のネットワークの使用を停止することを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動端末、通信システム、及び通信方法に関するものである。
【背景技術】
【０００２】
移動端末が、PHS、GPRS、CDMA、HSDPAなどのセルラー系アクセスネットワークや、802.11、802.16などのアクセスネットワークなどの、複数の異なるネットワークを必要に応じて切替えて使用するハンドオーバ技術が知られている（例えば特許文献１参照）。このハンドオーバ技術は一般にバーティカルハンドオーバ(vertical handover)と呼ばれている。
【０００３】
バーティカルハンドオーバは、Mobile IPv4、Mobile IPv6、MOBIKE(IKEv2 Mobility and Multihoming) Protocolなどのプロトコルを利用して実現される。また、端末がこれらのプロトコルを用いて、使用するネットワークを切替える際のパケットロスを低減するための技術として、ソフトハンドオーバと呼ばれる技術がある。
【０００４】
バーティカルハンドオーバ時におけるソフトハンドオーバ処理では、端末が切替え後のネットワークに接続した後もしばらくは切替え前のネットワークとの接続が維持される。これにより、ネットワークの切替え処理中に切替え前のネットワークを通過中であったパケット全てを、端末が確実に受信できる。
【０００５】
従来のMobile IPv4を用いたバーティカルハンドオーバ時のソフトハンドオーバ方法を説明する。なお、以降では特に断らない限り、バーティカルハンドオーバ時のソフトハンドオーバを単にハンドオーバと称する。ここでは一例として移動端末が、使用するネットワークをセルラーネットワークから無線ＬＡＮへ切り替える場合について説明する。
【０００６】
ハンドオーバ前は、移動端末とホームエージェントとの間にセルラーネットワークを経由したトンネルが確立されおり、移動端末のセルラーネットワーク用インタフェースが、通信相手機器から送信されたパケットを受信する。
【０００７】
移動端末は、例えば無線ＬＡＮ基地局から送信される電波の受信強度が十分強くなった場合などに、使用するネットワークを無線ＬＡＮに切り替えることを決定する。そして、移動端末の無線ＬＡＮ用インタフェースからホームエージェントへRegistration Requestメッセージが送信される。
【０００８】
ホームエージェントはRegistration Requestメッセージを受信することで、移動端末がネットワークの切り替えを要求していることを検知する。そして、ホームエージェントは移動端末の無線ＬＡＮ用インタフェースへネットワークの切替えを許可する旨が記されたRegistration Replyメッセージを送信する。
【０００９】
ホームエージェントはRegistration Requestメッセージの受信、又はRegistration Replyメッセージの送信に伴い、通信相手機器から送信されたパケットを移動端末の無線ＬＡＮ用インタフェースへ転送するように、トンネルの設定を変更する。
【００１０】
また、移動端末はRegistration Replyメッセージの受信に伴い、ホームエージェントから無線ＬＡＮ用インタフェースへ転送されたパケットを受信できるように、新規にトンネルを設定する。これにより端末は、セルラーネットワーク用インタフェースだけでなく、無線ＬＡＮ用インタフェースでも、ホームエージェントから転送されたパケットを受信できるようになる。
【００１１】
一般にパケット通信では、セルラーネットワークを経由した場合の通信遅延は、無線ＬＡＮを経由した場合の通信遅延よりも大きい。そのため、移動端末は、無線ＬＡＮ用インタフェースで最初にパケットを受信した時点では、ホームエージェントがセルラーネットワーク用インタフェース宛てに送信したパケットを受信し終えていない。
【００１２】
移動端末は、無線ＬＡＮを経由したトンネルを新規に設定した後も、セルラーネットワークを経由したトンネルの設定を保持しておき、十分な時間が経過した後に削除する。これにより、ホームエージェントからセルラーネットワーク用インタフェースへ送信されたパケットを、ハンドオーバ時のパケットロスを起こさず、全て受信することができる。
【００１３】
しかし、上記のような従来のハンドオーバ方法では、移動端末が、ホームエージェントからセルラーネットワーク（ハンドオーバ前のネットワーク）用インタフェースへ送信された全てのパケットを受信し終える時点を検知できないため、全てのパケットを受信した後もしばらくはトンネルの設定が削除されず、セルラーネットワーク用インタフェースに供給される電源を切ることができなかった。
【００１４】
また、その間、ホームエージェントから転送されたパケットをセルラーネットワーク用インタフェースで受信する設定を保持するためのメモリリソースを解放することができなかった。
【特許文献１】特開２００５−２４４５９０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
本発明は、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除できる移動端末、通信システム、及び検知方法を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の一態様による移動端末は、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する第１の応答メッセージを取得し、前記第１の応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１の応答メッセージに基づいて前記第１のネットワークを介して送信される応答要求メッセージを作成して前記第１のインタフェースへ与え、前記第１のインタフェースから前記応答要求メッセージに対応する第２の応答メッセージを取得し、前記第２の応答メッセージの取得に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
【００１７】
本発明の一態様による移動端末は、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記されたメッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
【００１８】
本発明の一態様による移動端末は、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末であって、前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記第１のインタフェースが受信したパケットに記されたシーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第２のインタフェースが最初に受信したパケットに記されたシーケンス番号から１を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
【００１９】
本発明の一態様による通信システムは、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第１のネットワークを介して前記ホームエージェントとデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介して前記ホームエージェントとデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する第１の応答メッセージを取得し、前記第１の応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１の応答メッセージに基づいて前記第１のネットワークを介して送信される応答要求メッセージを作成して前記第１のインタフェースへ与え、前記第１のインタフェースから前記応答要求メッセージに対応する第２の応答メッセージを取得し、前記第２の応答メッセージの取得に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記第１の応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信し、前記第１のネットワークを介して受信した前記応答要求メッセージに基づいて前記第２の応答メッセージを作成し、前記第１のネットワークを介して前記第１のインタフェースへ送信することを特徴とするものである。
【００２０】
本発明の一態様による通信システムは、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第１のネットワークを介して前記ホームエージェントとデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介して前記ホームエージェントとデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記された通知メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第１のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信すると共に、前記移動端末とのパケット送受信に使用するネットワークを前記第１のネットワークから前記第２のネットワークへ変更し、前記通知メッセージを作成して、前記第２のネットワークを介して前記第２のインタフェースへ送信することを特徴とするものである。
【００２１】
本発明の一態様による通信システムは、第１のネットワークと第２のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第１のネットワークを介してデータの送受信を行う第１のインタフェースと、前記第２のネットワークを介してデータの送受信を行う第２のインタフェースと、前記第１のネットワークから前記第２のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第２のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第２のインタフェースへ与え、前記第２のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第２のネットワークを使用したパケット送受信を開始させ、前記第２のインタフェースで受信したパケットに付されたシーケンス番号に基づく番号を出力し、通知の受信に伴い前記第１のネットワークの使用を停止させるモビリティプロトコルモジュールと、前記第１のインタフェースで受信したパケットに付されたシーケンス番号と、前記モビリティプロトコルモジュールから出力された番号とを比較し、比較結果が一致した場合に前記モビリティプロトコルモジュールへ前記通知を出力するパケット監視モジュールと、を有し、前記ホームエージェントは、前記移動端末へ転送するパケットに対して転送順に連続するシーケンス番号を付加し、前記第２のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第２のネットワークを介して前記第２のインタフェースへ送信すると共に、前記移動端末へのパケット転送に使用するネットワークを前記第１のネットワークから前記第２のネットワークへ変更することを特徴とするものである。
【００２２】
本発明の一態様による通信方法は、第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第１のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて第１の応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記第２のネットワークを使用したパケット送受信を開始し、前記移動端末が、前記第１の応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始し、前記第１のネットワークを使用して前記ホームエージェントへ応答要求メッセージを送信し、前記ホームエージェントが、前記応答要求メッセージに基づいて第２の応答メッセージを作成して、前記第１のネットワークを使用して前記移動端末へ送信し、前記移動端末が、前記第２の応答メッセージの受信に伴い、前記第１のネットワークの使用を停止することを特徴とするものである。
【００２３】
本発明の一態様による通信方法は、第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第１のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替え、前記第１のネットワークを使用して前記移動端末へ送信した最後のパケットのパケット情報が記された通知メッセージを前記第２のネットワークを使用して前記移動端末へ送信し、前記移動端末が、前記応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始して前記通知メッセージを受信し、前記第１のネットワークを使用した前記パケット情報に適合するパケットの受信に伴い、前記第１のネットワークの使用を停止することを特徴とするものである。
【００２４】
本発明の一態様による通信方法は、第１のネットワーク及び／又は第２のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記ホームエージェントが送信順に連続するシーケンス番号をパケットに付加して、前記パケットを前記第１のネットワークを使用して前記移動端末へ送信し、前記移動端末が、使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替えることを決定し、前記第２のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第２のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第１のネットワークから前記第２のネットワークへ切り替え、前記第２のネットワークを使用して前記移動端末へ前記パケットを送信し、前記移動端末が、前記応答メッセージに基づいて前記第２のネットワークを使用したパケット送受信を開始し、前記第２のネットワークを使用して最初に受信したパケットに付加されたシーケンス番号から１を減じた番号と、前記第１のネットワークを使用して受信したパケットに付加されたシーケンス番号とを比較し、比較結果の一致に伴い、前記第１のネットワークの使用を停止することを特徴とするものである。
【発明の効果】
【００２５】
本発明によれば、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除できる。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施の形態を図面に基づいて説明する。
【００２７】
（第１の実施形態）図１に本発明の第１の実施形態に係る通信システムの概略構成を示す。端末１００はインターネット上の通信相手機器３００と通信を行う。端末１００はセルラーネットワーク用インタフェース１１０を備え、セルラー基地局１０を介してセルラーネットワークに接続できる。また、端末１００は無線ＬＡＮ用インタフェース１２０を備え、無線ＬＡＮ基地局２０を介して無線ＬＡＮに接続できる。
【００２８】
ホームエージェント２００は端末１００に移動機能を提供する機器である。ホームエージェント２００は、IP-in-IPトンネリングプロトコルを利用して端末１００との間にセルラーネットワーク及び／又は無線ＬＡＮ経由のトンネルを確立し、そのトンネルを利用して通信相手機器３００と端末１００間の通信パケットを中継する。
【００２９】
ここで、端末１００のセルラーネットワーク用インタフェース１１０、無線ＬＡＮ用インタフェース１２０、ホームエージェント２００、通信相手機器３００に割り当てられるＩＰアドレスは、それぞれＣｏＡ１、ＣｏＡ２、ＨＡ、ＣＮとする。さらに、端末１００にはＩＰアドレスＨｏＡが割り当てられるとする。ただし、インターネット上のルータがパケットを転送するために解釈するＩＰヘッダ中の宛先アドレスがＨｏＡであるパケットは全てホームエージェント２００に受信されるように、ＩＰアドレスＨｏＡは選ばれる。
【００３０】
図２に端末１００の概略構成を示す。端末１００は、ネットワークスタック１０１、モビリティプロトコルモジュール１０２、アプリケーションモジュール１０３、トンネルデバイスモジュール１０４、ハンドオーバトリガモジュール１０５、記憶部１０６、セルラーネットワーク用インタフェース１１０、及び無線ＬＡＮ用インタフェース１２０を有する。
【００３１】
ネットワークスタック１０１は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポート
プロトコルやIPv4、IPv6などのネットワークプロトコル処理を行う。ネットワークスタック１０１は、セルラーネットワーク用インタフェース１１０と無線ＬＡＮ用インタフェース１２０から受信した、IP-in-IPプロトコルによりトンネリングされたパケットを、トンネルデバイスモジュール１０４へ出力する。
【００３２】
ネットワークスタック１０１はまた、トンネルデバイスモジュール１０４から受信したパケットのアプリケーションデータをアプリケーションモジュール１０３へ出力する。ネットワークスタック１０１はまた、セルラーネットワーク用インタフェース１１０と無線ＬＡＮ用インタフェース１２０から受信した、Registration ReplyメッセージのＩＰヘッダ、ＵＤＰヘッダ以外のデータ部分を、モビリティプロトコルモジュール１０２へ出力する。
【００３３】
ネットワークスタック１０１はまた、モビリティプロトコルモジュール１０２から受信したRegistration RequestメッセージにＵＤＰヘッダとＩＰヘッダを付与し、セルラーネットワーク用インタフェース１１０または無線ＬＡＮ用インタフェース１２０へ出力する。
【００３４】
モビリティプロトコルモジュール１０２は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック１０１へ出力する。また、モビリティプロトコルモジュール１０２は、ネットワークスタック１０１からRegistration Replyメッセージを受信して処理する。
【００３５】
Registration Requestメッセージはネットワークの切り替え（ハンドオーバ）を要求する旨が記されたメッセージ、Registration Replyメッセージはネットワーク切り替えの可否が記されたメッセージであり、詳しくは後述する。
【００３６】
モビリティプロトコルモジュール１０２はまた、ICMP Echo Requestメッセージを生成してネットワークスタック１０１へ出力する。モビリティプロトコルモジュール１０２はまた、ネットワークスタック１０１からICMP Echo Replyメッセージを受信して処理する。ICMP Echo Requestメッセージ、ICMP Echo Replyメッセージについては後述する。
【００３７】
アプリケーションモジュール１０３は、ネットワークスタック１０１から受信したアプリケーションデータを加工または解析する。また、アプリケーションモジュール１０３は、アプリケーションデータをネットワークスタック１０１へ送信する。
【００３８】
トンネルデバイスモジュール１０４は、ネットワークスタック１０１から受け取ったパケットにＩＰヘッダを付与して、ネットワークスタック１０１を介してセルラーネットワーク用インタフェース１１０又は無線ＬＡＮ用インタフェース１２０に渡し、前記パケットのトンネリングを行う。
【００３９】
ハンドオーバトリガモジュール１０５は、ハンドオーバを開始する契機を決定する。例えば、ハンドオーバトリガモジュール１０５は、セルラーネットワーク用インタフェース１１０または無線ＬＡＮ用インタフェース１２０から、セルラーネットワークや無線ＬＡＮにおける通信品質に関する情報（電波の受信強度等）を取得し、前記情報等に基づいてハンドオーバを開始する契機を決定し、モビリティプロトコルモジュール１０２に通知する。
【００４０】
記憶部１０６は、トンネルの設定を記憶する。
【００４１】
セルラーネットワーク用インタフェース１１０は、例えばCDMAや、HSDPA、PHSといった
セルラー系の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック１０１に出力する。また、セルラーネットワーク用インタフェース１１０は、ネットワークスタック１０１から出力されたデータを、セルラーネットワークを介してホームエージェント２００へ送信する。
【００４２】
無線ＬＡＮ用インタフェース１２０は、例えば802.11bや、802.11g, 802.11a, 802.11nといった802.11系のプロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック１０１に出力する。また、無線ＬＡＮ用インタフェース１２０は、ネットワークスタック１０１から出力されたデータを、無線ＬＡＮを介してホームエージェント２００へ送信する。
【００４３】
このような通信システムにおけるハンドオーバ時の処理フローを図３〜図５を用いて説明する。本実施形態では使用するネットワークをセルラーネットワークから無線ＬＡＮへ切り替える場合について説明する。
【００４４】
（ステップＳ１００）端末１００が、端末１００とホームエージェント２００との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器３００から送信されたパケットを受信している。このとき、端末１００の記憶部１０６には、セルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１と、ホームエージェント２００のＩＰアドレスＨＡとの組が、１つのトンネル設定として記憶されている。
【００４５】
ホームエージェント２００がIP-in-IPトンネリングプロトコルを用いて、通信相手機器３００から送信されたパケットを端末１００へ転送している。
【００４６】
通信相手機器３００から送信されるパケットの構成例を図６に示す。通信相手機器３００は、端末１００から直接、もしくは通信前になんらかの方法で端末１００のＩＰアドレスＨｏＡを取得しておき、ＩＰヘッダＨ１に含まれる送信先ＩＰアドレスをＨｏＡに指定して、パケットを送信する。
【００４７】
ホームエージェント２００が転送するパケットの構成例を図７に示す。ホームエージェント２００は、予めMobile IPv4の仕様に従って端末１００のセルラーネットワーク用インタフェース１００に割り当てられたＩＰアドレスＣｏＡ１を取得しておく。そして、ホームエージェント２００は、外側ＩＰヘッダＨ２中の送信先ＩＰアドレスをＣｏＡ１に指定し、この外側ＩＰヘッダＨ２をＩＰヘッダＨ１の前に付与してパケットを端末１００へ転送する。
【００４８】
端末１００のセルラーネットワーク用インタフェース１１０がホームエージェント２００から図７に示すようなパケットを受信すると、セルラーネットワーク用インタフェース１１０は受信パケットをネットワークスタック１０１へ出力する。
【００４９】
ネットワークスタック１０１は、パケットの外側ＩＰヘッダＨ２の上位のヘッダがＩＰヘッダであることを検知し、このパケットをトンネルデバイスモジュール１０４へ出力する。
【００５０】
トンネルデバイスモジュール１０４は、記憶部１０６からトンネルの設定を取得し、トンネルの設定に含まれる２つのＩＰアドレスの組と、外側ＩＰヘッダＨ２に指定された送信先ＩＰアドレス及び送信元ＩＰアドレスの組とを比較する。比較結果が一致すると、トンネルデバイスモジュール１０４はパケット正常なパケットであると判断し、外側ＩＰヘッダＨ２を削除して、ネットワークスタック１０１へ出力する。
【００５１】
ネットワークスタック１０１は、ＩＰヘッダＨ１の上位のヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行った後、アプリケーションモジュール１０３へパケットの中のアプリケーションデータを出力する。
【００５２】
アプリケーションモジュール１０３は、ネットワークスタック１０１から受け取ったアプリケーションデータを用いて、所定の処理を行う。
【００５３】
（ステップＳ１０１）端末１００のハンドオーバトリガモジュール１０５がハンドオーバ（セルラーネットワークから無線ＬＡＮへの切り替え）を開始することを決定する。
【００５４】
ハンドオーバトリガモジュール１０５は、常時セルラーネットワーク用インタフェース１１０や無線ＬＡＮ用インタフェース１２０からセルラーネットワークや無線ＬＡＮにおける通信品質に関する情報を取得している。
【００５５】
そして、ハンドオーバトリガモジュール１０５は前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティプロトコルモジュール１０２へ通知する。
【００５６】
なお、ハンドオーバトリガモジュール１０５がハンドオーバの開始を決定するアルゴリズムはどのようなものであってもよい。一例として、無線ＬＡＮ基地局２０からの受信電波の強度が十分強くなったことをハンドオーバの契機とする方法がある。
【００５７】
（ステップＳ１０２）Registration Requestメッセージが無線ＬＡＮを経由して端末１００からホームエージェント２００へ送信される。
【００５８】
端末１００のモビリティプロトコルモジュール１０２はハンドオーバトリガモジュール１０５から、ハンドオーバを開始する旨の通知を受けると、Registration Requestメッセージを生成する。
【００５９】
モビリティプロトコルモジュール１０２は、Registration RequestメッセージのＳｂｉｔに１、Lifetimeフィールドに０以外の値、Home Addressフィールドに端末１００に割り当てられたＩＰアドレスＨｏＡ、Home AgentフィールドにホームエージェントのＩＰアドレスＨＡ、Care-of Addressフィールドに無線ＬＡＮ用インタフェース１２０のＩＰアドレスＣｏＡ２を指定する。
【００６０】
モビリティプロトコルモジュール１０２により生成されたRegistration Requestメッセージがネットワークスタック１０１へ出力される。ネットワークスタック１０１は、例えば宛先ポート番号が４３４であるＵＤＰヘッダをRegistration Requestメッセージに付与する。なお、このときネットワークスタック１０１がＵＤＰヘッダの送信元ポート番号に指定する値をＵＰとする。
【００６１】
また、ネットワークスタック１０１は、送信先ＩＰアドレスがホームエージェント２００のＩＰアドレスＨＡであり、かつ送信元ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェースのＩＰアドレスＣｏＡ２であるＩＰヘッダをRegistration Requestメッセージに付与する。これにより、Registration Requestメッセージは図８に示すような構成となる。
【００６２】
ネットワークスタック１０１はこのようなRegistration Requestメッセージを無線ＬＡＮ用インタフェース１２０へ出力する。無線ＬＡＮ用インタフェース１２０は、受け取ったRegistration Requestメッセージを、無線ＬＡＮを介してホームエージェント２００へ送信する。
【００６３】
ステップＳ１０２以降のシーケンスはホームエージェント２００がSimultaneous registrationに対応しているか否かにより異なる。まず、ホームエージェント２００がSimultaneous registrationに対応している場合について図４を用いて説明する。
【００６４】
（ステップＳ１０３）Simultaneous registrationに対応しているホームエージェント２００は、端末１００からの要求を受け入れることを決定すると、図９に示すようなRegistration Replyメッセージを端末１００の無線ＬＡＮ用インタフェース１２０へ送信する。
【００６５】
Registration ReplyメッセージのCodeフィールドが０であり、Home Addressフィールドは端末１００のＩＰアドレスＨｏＡ、Home Agentフィールドはホームエージェント２００のＩＰアドレスＨＡである。
【００６６】
また、Registration Replyメッセージには、送信元ポート番号が４３４、送信先ポート番号がＵＰのＵＤＰヘッダ、及び送信元ＩＰアドレスがホームエージェント２００のＩＰアドレスＨＡ、送信先ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェース１２０のＩＰアドレスＣｏＡ２であるＩＰヘッダが付与されている。
【００６７】
（ステップＳ１０４）ホームエージェント２００が、端末１００のセルラーネットワーク用インタフェース１１０へパケットを転送するために設定していたトンネルを保持したまま、新たに無線ＬＡＮ用インタフェース１２０へパケットを転送するためのトンネルを設定する。
【００６８】
（ステップＳ１０５）端末１００が、無線ＬＡＮを介してホームエージェント２００から転送されたパケットを無線ＬＡＮ用インタフェース１２０で受信するためのトンネルの設定を新たに記憶部１０６に保存する。
【００６９】
端末１００の無線ＬＡＮ用インタフェース１２０は、受信したRegistration Replyメッセージをネットワークスタック１０１へ出力する。
【００７０】
ネットワークスタック１０１は、Registration ReplyメッセージのトランスポートプロトコルヘッダがＵＤＰであり、かつ送信先ポート番号がＵＰであることから、Registration Replyメッセージがモビリティプロトコルモジュール１０２宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール１０２へ出力する。
【００７１】
モビリティプロトコルモジュール１０２は、Registration ReplyメッセージのCodeフィールドが０であることから、ホームエージェント２００がRegistration Requestメッセージの内容を受け入れ、かつSimultaneous registrationに対応していることを検知する。また、モビリティプロトコルモジュール１０２は無線ＬＡＮ用インタフェース１２０のＩＰアドレスＣｏＡ２とホームエージェント２００のＩＰアドレスＨＡの組を新たなトンネルの設定として記憶部１０６に格納する。
【００７２】
この時、セルラーネットワークを介してホームエージェント２００から転送されたパケットをセルラーネットワーク用インタフェース１１０で受信するためのトンネルの設定は削除されず、保持されたままとなる。
【００７３】
（ステップＳ１０６）通信相手機器３００から送信されたパケットが、セルラーネットワーク用インタフェース１１０及び無線ＬＡＮ用インタフェース１２０に転送される。
【００７４】
ホームエージェント２００は、通信相手機器３００から送信された送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、このパケットをコピーする。そして、一方のパケットに、送信先ＩＰアドレスが端末１００のセルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１である外側ＩＰヘッダを付与し（図７参照）、セルラーネットワーク用インタフェース１１０へ転送する。
【００７５】
また、ホームエージェント２００は、コピーした他方のパケットに、図１０に示すような、送信先ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェース１２０に割り当てられたＩＰアドレスＣｏＡ２である外側ＩＰヘッダを付与し、無線ＬＡＮ用インタフェース１２０へ転送する。
【００７６】
（ステップＳ１０７）端末１００がRegistration Requestメッセージを生成し、ホームエージェント２００へ送信する。
【００７７】
モビリティプロトコルモジュール１０２は、ステップＳ１０５でホームエージェント２００がSimultaneous registrationに対応していることを検知した結果、Ｓｂｉｔに０、Lifetimeフィールドに０、Home Addressフィールドに端末１００のＩＰアドレスＨｏＡ、Home Agentフィールドにホームエージェント２００のＩＰアドレスＨＡ、Care-of Addressフィールドに端末１００のセルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１を指定したRegistration Requestメッセージを生成する。
【００７８】
Lifetimeフィールドが０であり、Home AgentフィールドとCare-of Addressフィールドの値が異なるため、Registration Requestメッセージはハンドオーバ前のトンネルの設定を削除するよう要請することを表すものとなる。
【００７９】
モビリティプロトコルモジュール１０２は、生成したRegistration Requestメッセージをネットワークスタック１０１へ出力する。ネットワークスタック１０１は、図１１に示すように、Registration Requestメッセージに宛先ポート番号が４３４、送信元ポート番号がＵＰであるＵＤＰヘッダを付与する。
【００８０】
また、ネットワークスタック１０１は、Registration Requestメッセージに、送信先ＩＰアドレスがホームエージェント２００のＩＰアドレスＨＡ、送信元ＩＰアドレスが端末１００のセルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１であるＩＰヘッダを付与する。
【００８１】
そして、ネットワークスタック１０１はRegistration Requestメッセージをセルラーネットワーク用インタフェース１１０へ出力する。セルラーネットワーク用インタフェース１１０は、受け取ったRegistration Requestメッセージをホームエージェント２００へ送信する。
【００８２】
端末１００は、このRegistration Requestメッセージの生成・送信を、トンネルを新たに設定（ステップＳ１０５）した直後、ホームエージェント２００から転送されてきたパケットの受信処理（ステップＳ１０６）と並行して行う。
【００８３】
（ステップＳ１０８）ホームエージェント２００はハンドオーバ前のトンネルの設定を削除することを受け入れると、Registration Replyメッセージを端末１００のセルラーネットワーク用インタフェース１１０へ送信する。このRegistration Replyメッセージは図９と同様の構成になっている。但し、ＩＰヘッダの送信先ＩＰアドレスはＣｏＡ１である。
【００８４】
（ステップＳ１０９）ホームエージェント２００は、ハンドオーバ前のトンネルの設定を削除する。これ以後、通信相手機器３００から送信先ＩＰアドレスがＨｏＡであるパケットを受信したホームエージェント２００は、送信先ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェース１２０のＩＰアドレスＣｏＡ２である外側ＩＰヘッダを前記パケットに付与し、端末１００の無線ＬＡＮ用インタフェース１２０のみに転送する。
【００８５】
（ステップＳ１１０）端末１００がステップＳ１０８でホームエージェント２００から送信されたRegistration Replyメッセージに基づいて、ハンドオーバ前のトンネルの設定を削除する。
【００８６】
端末１００のセルラーネットワーク用インタフェース１１０は、受信したRegistration Replyメッセージをネットワークスタック１０１へ出力する。Registration Replyメッセージは、ホームエージェント２００がステップＳ１０４以前に端末１００のセルラーネットワーク用インタフェース１１０に最後に転送したパケットよりも後にホームエージェント２００から送信されている。従って、セルラーネットワークにおいてパケットの転送順序が変わらない限り、セルラーネットワーク用インタフェース１１０は前記パケットよりも後にRegistration Replyメッセージを受信する。
【００８７】
ネットワークスタック１０１は、Registration ReplyメッセージのトランスポートプロトコルヘッダがＵＤＰであり、かつ送信先ポート番号がRegistration Requestメッセージで指定された送信元ポート番号と同じであることから、Registration Replyメッセージがモビリティプロトコルモジュール１０２宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール１０２へ出力する。
【００８８】
モビリティプロトコルモジュールは、Registration ReplyメッセージのCodeフィールドが０であることから、ホームエージェント２００がRegistration Requestメッセージの内容を受け入れたことを検知する。
【００８９】
そして、モビリティプロトコルモジュール１０２は、記憶部１０６から、セルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１とホームエージェント２００のＩＰアドレスＨＡの組に一致するトンネルの設定を削除する。
【００９０】
これにより、端末１００のセルラーネットワーク用インタフェース１１０が図７に示すようなパケットと同等のパケットを受信した場合、端末１００のトンネルデバイスモジュール１０４は、前記パケットの外側ＩＰヘッダの送信元ＩＰアドレスと送信先ＩＰアドレスに一致するトンネルの設定が、記憶部１０６に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
【００９１】
次に、ホームエージェント２００がSimultaneous registrationに対応していない場合について図５を用いて説明する。ステップＳ１１３が図３に示すステップＳ１０２に続くステップとなる。
【００９２】
（ステップＳ１１３）Simultaneous registrationに対応していないホームエージェント２００が端末１００からのトンネルを設定する要求を受け入れることを決定すると、図１２に示すようなRegistration Replyメッセージを端末１００の無線ＬＡＮ用インタフェース１２０へ送信する。
【００９３】
Registration Replyメッセージは、Codeフィールドが１であり、ホームエージェント２００がSimultaneous registrationに対応していないことが示されている。Home Addressフィールドは端末１００のＩＰアドレスＨｏＡ、Home Agentフィールドはホームエージェント２００のＩＰアドレスＨＡである。また、送信元ポート番号が４３４、送信先ポート番号がＵＰであるＵＤＰヘッダが付与される。
【００９４】
さらに、送信元ＩＰアドレスがホームエージェント２００のＩＰアドレスＨＡ、送信先ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェース１２０に割り当てられたＩＰアドレスＣｏＡ２であるＩＰヘッダが付与される。
【００９５】
（ステップＳ１１４）ホームエージェント２００が、無線ＬＡＮ用インタフェース１２０へパケットを転送するように、トンネルの設定を変更する。
【００９６】
（ステップＳ１１５）端末１００がRegistration Replyメッセージに基づいて、無線ＬＡＮを介してホームエージェント２００から転送されたパケットを無線ＬＡＮ用インタフェース１２０で受信するためのトンネルの設定を新たに行う。
【００９７】
端末１００の無線ＬＡＮ用インタフェース１２０は、受信したRegistration Replyメッセージをネットワークスタック１０１へ出力する。
【００９８】
ネットワークスタック１０１は、Registration ReplyメッセージのトランスポートプロトコルヘッダがＵＤＰでありかつ送信先ポート番号がＵＰであることから、Registration Replyメッセージがモビリティプロトコルモジュール１０２宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール１０２へ出力する。
【００９９】
モビリティプロトコルモジュール１０２は、Registration ReplyメッセージのCodeフィールドが１であることから、ホームエージェント２００がRegistration Requestメッセージによりトンネルの変更を受け入れたが、Simultaneous registrationに対応しないため、ステップＳ１１４以前に設定されていたトンネルの設定が削除されることを検知する。  また、記憶部１０６に、無線ＬＡＮ用インタフェース１２０のＩＰアドレスＣｏＡ２とホームエージェント２００のＩＰアドレスＨＡとの組が新たなトンネルの設定として格納される。
【０１００】
（ステップＳ１１６）ホームエージェント２００は、通信相手機器３００から送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、前記パケットに送信先ＩＰアドレスが端末１００の無線ＬＡＮ用インタフェース１２０に割り当てられたＩＰアドレスＣｏＡ２であるＩＰヘッダを付与して、無線ＬＡＮ用インタフェース１２０のみに転送する。
【０１０１】
なお、ホームエージェント２００がSimultaneous registrationに対応している場合と異なり、ホームエージェント２００は、セルラーネットワーク用インタフェース１１０へはパケットを転送しない。
【０１０２】
端末１００は、ホームエージェント２００から転送されたパケットをセルラーネットワーク用インタフェース１１０又は無線ＬＡＮ用インタフェース１２０で受信すると、パケット受信処理を行う。ただし、端末１００は、ホームエージェント２００がSimultaneous registrationに対応している場合と異なり、重複したパケットを受信しないため、端末１００のアプリケーションモジュール１０３とトンネルデバイスモジュール１０４は重複したパケットの破棄処理を行わない。
【０１０３】
（ステップＳ１１７）端末１００がホームエージェント２００へICMP Echo Requestメッセージを送信する。
【０１０４】
端末１００のモビリティプロトコルモジュール１０２は、Registration Replyメッセージからホームエージェント２００がSimultaneous registrationに対応していないことを検知しており、任意のデータからなるICMP bodyを含むICMP Echo Requestメッセージを生成する。モビリティプロトコルモジュール１０２は、生成したICMP Echo Requestメッセージをネットワークスタック１０１へ出力する。
【０１０５】
ネットワークスタック１０１は、受け取ったICMP Echo Requestメッセージに、図１３に示すように、送信先ＩＰアドレスがホームエージェント２００のＩＰアドレスＨＡ、送信元ＩＰアドレスが端末のセルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１であるＩＰヘッダを付与する。そして、ネットワークスタックはICMP Echo Requestメッセージをセルラーネットワーク用インタフェース１１０へ出力する。
【０１０６】
セルラーネットワーク用インタフェース１１０は、受け取ったICMP Echo Requestメッセージをホームエージェント２００へ送信する。
【０１０７】
端末１００は、このICMP Echo Requestメッセージの生成・送信を、トンネルを新たに設定（ステップＳ１１５）した直後、ホームエージェント２００から転送されてきたパケットの受信処理（ステップＳ１１６）と並行して行う。
【０１０８】
（ステップＳ１１８）ホームエージェント２００は、ICMP Echo Requestメッセージを受信すると、図１４に示すようなICMP Echo Replyメッセージを端末１００のセルラーネットワーク用インタフェース１１０へ送信する。
【０１０９】
（ステップＳ１１９）端末１００がホームエージェント２００から送信されたICMP Echo Replyメッセージの受信後、ハンドオーバ前のトンネルの設定を削除する。
【０１１０】
セルラーネットワーク用インタフェース１１０は受信したICMP Echo Replyメッセージをネットワークスタック１０１へ出力する。ICMP Echo Replyメッセージは、ホームエージェント２００がステップＳ１１４以前に端末１００のセルラーネットワーク用インタフェース１１０へ最後に転送したパケットよりも後にホームエージェント２００から送信されている。従って、セルラーネットワークにおいてパケットの転送順序が変わらない限り、端末１００は前記パケットよりも後にICMP Echo Replyメッセージを受信する。
【０１１１】
ネットワークスタック１０１は、ICMP Echo Replyメッセージをモビリティプロトコルモジュール１０２へ出力する。
【０１１２】
モビリティプロトコルモジュール１０２は、記憶部１０６から、セルラーネットワーク用インタフェース１１０のＩＰアドレスＣｏＡ１とホームエージェント２００のＩＰアドレスＨＡとの組に一致するトンネルの設定を削除する。
【０１１３】
これにより、端末１００のセルラーネットワーク用インタフェース１１０が図７に示すようなパケットと同等のパケットを受信した場合、トンネルデバイスモジュール１０４は、前記パケットの外側ＩＰヘッダの送信元ＩＰアドレスと送信先ＩＰアドレスに一致するトンネルの設定が、記憶部１０６に存在しないことから、前記パケットが不正なパケットであると判断し、破棄できるようになる。
【０１１４】
本実施形態に係る端末１００は、Ｓｂｉｔを１に指定したRegistration Requestメッセージをホームエージェント２００に送信し、ホームエージェント２００から受信したRegistration Replyメッセージ中のCodeフィールドを検査することでホームエージェント２００がSimultaneous registrationに対応しているか否かを検知する。
【０１１５】
そして、ホームエージェント２００がSimultaneous registrationに対応している場合は、Registration Requestメッセージをホームエージェント２００に送信した後、ハンドオーバ前に使用していたネットワーク経由でRegistration Replyメッセージを受信した時点をハンドオーバ前に使用していたトンネルが削除可能となる時点として検知する。
【０１１６】
一方、ホームエージェント２００がSimultaneous registrationに対応していない場合は、ICMP Echo Requestメッセージをホームエージェント２００へ送信した後、ハンドオーバ前に使用していたネットワーク経由でICMP Echo Replyメッセージを受信した時点をハンドオーバ前に使用していたトンネルが削除可能となる時点として検知する。
【０１１７】
このように、ホームエージェント２００がSimultaneous registrationに対応しているか否かによらず、端末１００は、ハンドオーバ前に使用していたトンネルを経由してホームエージェント２００から転送された全てのパケットを受信し終えて前記トンネルが削除可能となる時点を検知することができる。
【０１１８】
トンネルが削除可能となる時点を検知して、トンネルを削除することで、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
【０１１９】
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
【０１２０】
上記第１の実施形態におけるICMP Echo Requestメッセージの代わりとして、Ｓｂｉｔに０、Lifetimeフィールドに０以外の値、Home Addressフィールドに端末１００のＩＰアドレスＨｏＡ、Home Agentフィールドにホームエージェント２００のＩＰアドレスＨＡ、Care-of Addressフィールドに端末１００のセルラーネットワーク用インタフェース１１０に割り当てられたＩＰアドレスＣｏＡ１、ＵＤＰヘッダの送信先ポート番号に４３４、送信元ポート番号にＵＰ、送信元ＩＰアドレスに端末１００の無線ＬＡＮ用インタフェース１２０に割り当てられたＩＰアドレスＣｏＡ２、送信先ＩＰアドレスにホームエージェント２００のＩＰアドレスＨＡを指定したRegistration Requestメッセージを端末１００が送信してもよい。
【０１２１】
この場合、端末１００は、前記Registration Requestメッセージに対するRegistration Replyメッセージを受信した後、ハンドオーバ前のトンネルの設定を削除する。
【０１２２】
また、ICMP Echo Requestメッセージの代わりに、ホームエージェント２００が返信メッセージを送信できるようなメッセージを使用してもよい。
【０１２３】
上記の第１の実施形態では、端末１００およびホームエージェント２００はモビリティプロトコルとしてMobile IPv4を搭載しているが、Mobile IPv4の代わりにMobile IPv6を搭載していてもよい。
【０１２４】
端末１００およびホームエージェント２００がMobile IPv6を利用する場合、端末およびホームエージェントが標準化中のMultiple Care-of Address Registration機能に対応し、Registration Requestメッセージの代わりにMobile IPv6のBinding Updateメッセージを利用し、Registration Replyメッセージの代わりにBinding Acknowledgementメッセージを利用してもよい。
【０１２５】
Binding Updateメッセージを端末が利用する場合、Binding Updateメッセージ中のBinding Identifier Mobility Option内のC flagフィールドを1に指定し、Binding Acknowledgmentメッセージ中のStatusフィールドを検査することで、ホームエージェントがMultiple Care-of Address Registration機能に対応していない場合にICMP Echo Requestメッセージなどのメッセージを送信してもよい。
【０１２６】
上記の第１の実施形態では、端末１００はステップＳ１００、ステップＳ１０６、ステップＳ１１６においてトンネリングしたパケットをホームエージェント２００に送信することで、通信相手機器３００にパケットを送信してもよい。
【０１２７】
また、上記第１の実施形態では、少なくともステップＳ１０２以前に、ホームエージェント２００がSimultaneous registrationに対応していないことを端末１００が検知するか、もしくは端末１００に設定された場合は、ステップＳ１０２においてＳｂｉｔを０に指定したRegistration requestメッセージをホームエージェント２００に送信するようにしてもよい。
【０１２８】
このRegistration requestメッセージに対して端末１００がホームエージェント２００から受信したRegistration replyメッセージ中のCodeフィールドが０である場合に、端末１００はICMP Echo requestメッセージなどをステップＳ１１７において送信し、ICMP Echo replyメッセージなどをステップＳ１１８において受信した直後、ステップＳ１１９においてハンドオーバ前のトンネルの設定を削除するようにしてもよい。
【０１２９】
また、上記第１の実施形態では、端末１００はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０１３０】
また、上記第１の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０１３１】
また、上記第１の実施形態では、端末１００のトンネルデバイスモジュール１０４は、IP-in-IPトンネリングプロトコルの代わりにGREトンネルやその他のトンネリングプロトコルを利用してもよい。
【０１３２】
（第２の実施形態）図１５に本発明の第２の実施形態に係る通信システムの概略構成を示す。端末４００はインターネット上の通信相手機器６００と通信を行う。端末４００はセルラーネットワーク用インタフェース４１０を備え、セルラー基地局１０を介してセルラーネットワークに接続できる。また、端末４００は無線ＬＡＮ用インタフェース４２０を備え、無線ＬＡＮ基地局２０を介して無線ＬＡＮに接続できる。
【０１３３】
ホームエージェント５００は端末４００に移動機能を提供する機器である。ホームエージェント５００は、IP-in-IPトンネリングプロトコルを利用して端末４００との間にセルラーネットワークまたは無線ＬＡＮ経由のトンネルを確立し、そのトンネルを利用して通信相手機器６００と端末４００間の通信パケットを中継する。
【０１３４】
上記第１の実施形態と同様に、端末４００のセルラーネットワーク用インタフェース４１０、無線ＬＡＮ用インタフェース４２０、ホームエージェント５００、通信相手機器６００に割り当てられるＩＰアドレスは、それぞれＣｏＡ１、ＣｏＡ２、ＨＡ、ＣＮとする。さらに、端末４００にはＩＰアドレスＨｏＡが割り当てられるとする。
【０１３５】
図１６に端末４００の概略構成を示す。端末４００は、ネットワークスタック４０１、モビリティプロトコルモジュール４０２、アプリケーションモジュール４０３、トンネルデバイスモジュール４０４、ハンドオーバトリガモジュール４０５、記憶部４０６、パケット監視モジュール４０７、セルラーネットワーク用インタフェース４１０、及び無線ＬＡＮ用インタフェース４２０を有する。
【０１３６】
ネットワークスタック４０１は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポート
プロトコルやIPv4、IPv6などのネットワークプロトコル処理を行うものであり、セルラーネットワーク用インタフェース４１０と無線ＬＡＮ用インタフェース４２０から受信した、IP-in-IPプロトコルによりトンネリングされたパケットをパケット監視モジュール４０７へ出力する。
【０１３７】
また、ネットワークスタック４０１はパケット監視モジュール４０７から受信したパケットをトンネルデバイスモジュール４０４へ出力する。
【０１３８】
また、ネットワークスタック４０１は、トンネルデバイスモジュール４０４から受信したパケットのアプリケーションデータをアプリケーションモジュール４０３へ出力する。  また、ネットワークスタック４０１は、セルラーネットワーク用インタフェース４１０と無線ＬＡＮ用インタフェースから受信したRegistration ReplyメッセージのＩＰヘッダ、ＵＤＰヘッダ以外のデータ部分をモビリティプロトコルモジュール４０２へ出力する。
【０１３９】
また、ネットワークスタック４０１は、モビリティプロトコルモジュール４０２から受信したRegistration RequestメッセージにＵＤＰヘッダとＩＰヘッダを付与し、セルラーネットワーク用インタフェース４１０または無線ＬＡＮ用インタフェース４２０へ出力する。
【０１４０】
モビリティプロトコルモジュール４０２は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック４０１へ出力する。また、モビリティプロトコルモジュール４０２は、ネットワークスタック４０１からRegistration Replyメッセージを受信して、処理する。
【０１４１】
また、モビリティプロトコルモジュール４０２は、ネットワークスタック４０１から通知メッセージを受信し、前記通知メッセージに記されたパケットの特徴をパケット監視モジュール４０７に通知する。
【０１４２】
また、モビリティプロトコルモジュール４０２は、パケット監視モジュール４０７から前記特徴に該当するパケットを検知したことを示す通知を受信した場合、記憶部４０６に格納されたハンドオーバ前に使用していたトンネルの設定を削除する。
【０１４３】
アプリケーションモジュール４０３は、ネットワークスタック４０１から受信したアプリケーションデータを加工または解析する。また、アプリケーションモジュール４０３はネットワークスタック４０１へアプリケーションデータを送信する。
【０１４４】
トンネルデバイスモジュール４０４は、ネットワークスタック４０１からトンネリングされたパケットを受信し、このパケットのＩＰヘッダを取り除いて、ネットワークスタック４０１へ出力する。
【０１４５】
ハンドオーバトリガモジュール４０５は、ハンドオーバを開始する契機を決定するモジュールであり、セルラーネットワーク用インタフェース４１０または無線ＬＡＮ用インタフェース４２０からセルラーネットワークや無線ＬＡＮにおける通信品質に関する情報を取得し、前記情報やその他の情報からハンドオーバを開始する契機を決定し、モビリティモジュール４０２に通知する。
【０１４６】
記憶部４０６は、トンネルの設定を記憶するものである。記憶部４０６はまた、パケット監視モジュール４０７から出力されたパケットの特徴を示すデータを記憶する。
【０１４７】
パケット監視モジュール４０７は、モビリティプロトコルモジュール４０２から出力されたパケットの特徴を示すデータを記憶部４０６に格納する。また、パケット監視モジュール４０７は、ネットワークスタック４０１から出力されたパケットが、記憶部４０６に格納されたパケットの特徴に該当するか否かを判定し、該当する場合はモビリティプロトコルモジュール４０２に通知し、前記パケットをネットワークスタック４０１へ出力する。
【０１４８】
セルラーネットワーク用インタフェース４１０及び無線ＬＡＮ用インタフェース４２０は、上記第１の実施形態におけるセルラーネットワーク用インタフェース４１０及び無線ＬＡＮ用インタフェース４２０と同様であり、説明を省略する。
【０１４９】
図１７にホームエージェント５００の概略構成を示す。ホームエージェント５００は、ネットワークスタック５０１、モビリティプロトコルモジュール５０２、トンネルデバイスモジュール５０３、記憶部５０４、及びネットワークインタフェース５１０を有する。
【０１５０】
ネットワークスタック５０１は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポートプロトコルやIPv4、IPv6などのネットワークプロトコル処理を行うものであり、ネットワークインタフェース５１０から受信したパケットをトンネルデバイスモジュール５０３へ出力する。
【０１５１】
また、ネットワークスタック５０１は、トンネルデバイスモジュール５０３がIP-in-IPプロトコルでトンネリングしたパケットをネットワークインタフェース５１０へ出力する。
【０１５２】
また、ネットワークスタック５０１は、ネットワークインタフェース５１０から出力されたRegistration RequestメッセージのＩＰヘッダ、ＵＤＰヘッダ以外のデータ部分をモビリティプロトコルモジュール５０２へ出力する。
【０１５３】
また、ネットワークスタック５０１は、モビリティプロトコルモジュール５０２から出力されたRegistration Replyメッセージ及び通知メッセージに、ＵＤＰヘッダ及びＩＰヘッダを付与して、ネットワークインタフェース５１０へ出力する。
【０１５４】
モビリティプロトコルモジュール５０２は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック５０１からRegistration Requestメッセージを受信して処理する。
【０１５５】
モビリティプロトコルモジュール５０２は、Registration Replyメッセージを生成してネットワークスタック５０１へ出力し、前記Registration Requestメッセージの内容に従ったトンネルの設定を記憶部５０４に格納する。
【０１５６】
また、モビリティプロトコルモジュール５０２は、トンネルデバイスモジュール５０３がネットワークスタック５０１へ出力したパケットにＩＰヘッダを付与したパケットの内容を、トンネルデバイスモジュール５０３から取得する。
【０１５７】
トンネルデバイスモジュール５０３は、ネットワークスタック５０１から出力されたパケットに、記憶部５０４に格納されたトンネルの設定に従ったＩＰヘッダを付与してネットワークスタック５０１へ出力する。
【０１５８】
また、トンネルデバイスモジュール５０３は、ハンドオーバの前に使用していたネットワーク経由で端末４００へ転送する最後のパケットの内容をモビリティプロトコルモジュール５０２へ出力する。
【０１５９】
記憶部５０４は、トンネルの設定を記憶する。
【０１６０】
ネットワークインタフェース５１０は、例えばEthernet（登録商標）等の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック５０１へ出力する。また、ネットワークインタフェース５１０は、ネットワークスタック５０１から出力されたパケットを送信する。
【０１６１】
このような通信システムにおけるハンドオーバ時の処理フローを図１８を用いて説明する。本実施形態では、使用するネットワークをセルラーネットワークから無線ＬＡＮへ切り替える場合について説明する。
【０１６２】
（ステップＳ１８００）端末４００が、端末４００とホームエージェント５００との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器６００から送信されたパケットを受信している。このとき、端末４００の記憶部４０６には、セルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１と、ホームエージェント５００のＩＰアドレスＨＡとの組が、１つのトンネル設定として記憶されている。
【０１６３】
ホームエージェント５００がIP-in-IPトンネリングプロトコルを用いて、通信相手機器６００から送信されたパケットを端末４００へ転送している。
【０１６４】
端末４００のセルラーネットワーク用インタフェース４１０がホームエージェント５００から転送された、例えば図７に示すようなパケットを受信すると、セルラーネットワーク用インタフェース４１０はネットワークスタック４０１へパケットを出力する。
【０１６５】
ネットワークスタック４０１は、パケットの外側ＩＰヘッダの上位ヘッダがＩＰヘッダであることを検知し、パケットをトンネルデバイスモジュール４０４へ出力する
トンネルデバイスモジュール４０４は記憶部４０６からトンネルの設定を取得し、トンネルの設定に含まれる２つのＩＰアドレスの組と、外側ＩＰヘッダで指定された送信先ＩＰアドレス及び送信元ＩＰアドレスの組とを比較する。比較結果が一致すると、トンネルデバイスモジュール４０４はパケットが正常であると判断し、パケットの外側ＩＰヘッダを削除し、ネットワークスタック４０１へパケットを出力する
端末４００のネットワークスタック４０１はＩＰヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール４０３へパケットの中のアプリケーションデータを出力する。
【０１６６】
アプリケーションモジュール４０３は、受信したアプリケーションデータを用いて所定の処理を行う。
【０１６７】
また、ホームエージェント５００は、通信相手機器６００から受信した、送信先ＩＰアドレスがＨｏＡであるパケットをトンネリングしたパケットを、端末４００のセルラーネットワーク用インタフェース４１０へ転送している。
【０１６８】
この時、ホームエージェント５００の記憶部５０４には、端末４００のＩＰアドレスＨｏＡ、ホームエージェント５００のＩＰアドレスＨＡ、端末４００のセルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１の３つのＩＰアドレスの組が、トンネルの設定として格納されている。
【０１６９】
ホームエージェント５００のネットワークインタフェース５１０が、通信相手機器６００から、図６に示すような送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、ネットワークインタフェース５１０はこのパケットをネットワークスタック５０１へ出力する。
【０１７０】
ネットワークスタック５０１は、パケットの送信先ＩＰアドレスがＨｏＡであることから、このパケットがトンネルデバイスモジュール５０３へ出力すべきパケットであることを検知し、トンネルデバイスモジュール５０３へ出力する。
【０１７１】
トンネルデバイスモジュール５０３は、記憶部５０４からＩＰアドレスＨｏＡを含むトンネルの設定を取得する。そして、トンネルデバイスモジュール５０３は、前記トンネルの設定に含まれる端末４００のセルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１を送信先ＩＰアドレスに指定し、前記トンネルの設定に含まれるホームエージェント５００のＩＰアドレスＨＡを送信元ＩＰアドレスとして指定した外側ＩＰヘッダをパケットに付与することで、図７に示すようなパケットを生成する。
【０１７２】
そして、トンネルデバイスモジュール５０３はこのようなパケットをネットワークスタック５０１へ出力する。
【０１７３】
ネットワークスタック５０１は、トンネルデバイスモジュール５０３から受け取ったパケットをネットワークインタフェース５１０へ出力する。ネットワークインタフェース５１０は、ネットワークスタック５０１から受け取ったパケットを外部へ送信する。
【０１７４】
（ステップＳ１８０１）端末４００のハンドオーバトリガモジュール４０５がハンドオーバ（セルラーネットワークから無線ＬＡＮへの切り替え）を開始することを決定する。
【０１７５】
ハンドオーバトリガモジュール４０５は、常時セルラーネットワーク用インタフェース４１０または無線ＬＡＮ用インタフェース４２０からセルラーネットワークや無線ＬＡＮにおける通信品質に関する情報を取得している。
【０１７６】
そして、ハンドオーバトリガモジュール４０５は前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティモジュール４０２に通知する。
【０１７７】
なお、ハンドオーバトリガモジュール４０５がハンドオーバの開始を決定するアルゴリズムはどのようなものであってもよい。一例として、無線ＬＡＮ基地局２０から受信できる電波の強度が十分強くなったことをハンドオーバの契機とする方法がある。
【０１７８】
（ステップＳ１８０２）Registration Requestメッセージが無線ＬＡＮを経由して端末４００からホームエージェント５００へ送信される。
【０１７９】
端末４００のモビリティモジュール４０２は、ハンドオーバトリガモジュール４０５から、ハンドオーバを開始する旨の通知を受けると、Registration Requestメッセージを生成する。
【０１８０】
但し、モビリティプロトコルモジュール４０２は、図１９に示すように、Registration RequestメッセージのＳｂｉｔに０、Lifetimeフィールドに０以外の値、Home Addressフィールドに端末４００に割り当てられたＩＰアドレスＨｏＡ、Home Agentフィールドにホームエージェント５００のＩＰアドレスＨＡ、Care-of Addressフィールドに端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２を指定する。
【０１８１】
モビリティプロトコルモジュール４０２は、生成したRegistration Requestメッセージをネットワークスタック４０１へ出力する。
【０１８２】
ネットワークスタック４０１は、Registration Requestメッセージに送信先ポート番号が４３４であるＵＤＰヘッダを付与する。なお、ネットワークスタック４０１がＵＤＰヘッダの送信元ポート番号に指定した値をＵＰとする。
【０１８３】
ネットワークスタック４０１はまた、Registration Requestメッセージに、送信先ＩＰアドレスがホームエージェント５００のＩＰアドレスＨＡであり、かつ送信元ＩＰアドレスが端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２であるＩＰヘッダを付与し、図１９に示すようなRegistration Requestメッセージを生成する。
【０１８４】
ネットワークスタック４０１はRegistration Requestメッセージを無線ＬＡＮ用インタフェース４２０へ出力する。無線ＬＡＮ用インタフェース４２０は、受け取ったRegistration Requestメッセージをホームエージェント５００へ送信する。
【０１８５】
端末４００から送信されたRegistration Requestメッセージは、無線ＬＡＮを経由してホームエージェント５００のネットワークインタフェース５１０に受信される。ネットワークインタフェース５１０は、受信したRegistration Requestメッセージをネットワークスタック５０１へ出力する。
【０１８６】
ネットワークスタック５０１は、Registration RequestメッセージのトランスポートプロトコルヘッダがＵＤＰであり、かつ送信先ポート番号が４３４であることから、Registration Requestメッセージがモビリティプロトコルモジュール５０２宛であることを検知し、モビリティプロトコルモジュールへ出力する。
【０１８７】
モビリティプロトコルモジュールは、Registration Requestメッセージの内容を検査する。
【０１８８】
（ステップＳ１８０３）ホームエージェント５００がRegistration Requestメッセージの内容を受け入れる場合、ホームエージェント５００はRegistration Replyメッセージを端末４００の無線ＬＡＮ用インタフェース４２０へ送信する。
【０１８９】
ホームエージェント５００のモビリティプロトコルモジュール５０２は、Registration Replyメッセージを生成する。但し、モビリティプロトコルモジュール５０２は、図２０に示すように、Registration ReplyメッセージのCodeフィールドに０、Home Addressフィールドに端末４００に割り当てられたＩＰアドレスＨｏＡ、Home Agentフィールドにホームエージェント５００のＩＰアドレスＨＡを指定する。
【０１９０】
そして、ホームエージェント５００のモビリティプロトコルモジュール５０２は、生成したRegistration Replyメッセージをネットワークスタック５０１へ出力する。
【０１９１】
ネットワークスタック５０１は、Registration Replyメッセージに、送信元ポート番号が４３４、送信先ポート番号がＵＰであるＵＤＰヘッダを付与する。
【０１９２】
また、ネットワークスタック５０１は、Registration Replyメッセージに、送信先ＩＰアドレスが端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２であり、かつ送信元ＩＰアドレスがホームエージェントのＩＰアドレスＨＡであるＩＰヘッダを付与する。
【０１９３】
そして、ネットワークスタック５０１はRegistration Replyメッセージをネットワークインタフェース５１０へ出力する。ネットワークインタフェース５１０は、受け取ったRegistration Replyメッセージを端末４００の無線ＬＡＮ用インタフェース４２０へ送信する。
【０１９４】
（ステップＳ１８０４）ホームエージェント５００がトンネルの設定を変更する。
【０１９５】
ホームエージェント５００のモビリティプロトコルモジュール５０２は、Registration RequestメッセージのCare-of Addressフィールドに指定された端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２と、Home Agentフィールドに指定されたホームエージェント５００のＩＰアドレスＨＡと、Home Addressフィールドに指定された端末４００のＩＰアドレスＨｏＡとの組を、新たなトンネルの設定として記憶部５０４に格納する。
【０１９６】
そして、モビリティプロトコルモジュール５０２は、記憶部５０４に格納された、端末４００のＩＰアドレスＨｏＡと、ホームエージェント５００のＩＰアドレスＨＡと、端末４００のセルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１の３つのＩＰアドレスの組で構成されたトンネルの設定を削除する。
【０１９７】
（ステップＳ１８０５）端末４００が、無線ＬＡＮを介してホームエージェント５００から転送されたパケットを無線ＬＡＮ用インタフェース４２０で受信するためのトンネルの設定を新たに行う。
【０１９８】
端末４００の無線ＬＡＮ用インタフェース４２０は、受信したRegistration Replyメッセージをネットワークスタック４０１へ出力する。
【０１９９】
ネットワークスタック４０１は、Registration ReplyメッセージのトランスポートプロトコルヘッダがＵＤＰであり、かつ送信先ポート番号がＵＰであることから、Registration Replyメッセージがモビリティプロトコルモジュール４０２宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール４０２へ出力する。
【０２００】
モビリティプロトコルモジュール４０２は、Registration ReplyメッセージのCodeフィールドが０であることから、ホームエージェント５００がRegistration Requestメッセージの内容を受け入れたことを検知する。また、モビリティプロトコルモジュール４０２は無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２とホームエージェント５００のＩＰアドレスＨＡの組を新たなトンネルの設定として記憶部４０６に格納する。
【０２０１】
（ステップＳ１８０６）ホームエージェント５００が、無線ＬＡＮを経由して端末４００の無線ＬＡＮ用インタフェース４２０へ通知メッセージを送信する。
【０２０２】
ホームエージェント５００のモビリティプロトコルモジュール５０２は、ステップＳ１８０４以前にホームエージェント５００が端末４００のセルラーネットワーク用インタフェース４１０に送信した最後のパケットをトンネルデバイスモジュール５０３から取得する。そして、モビリティプロトコルモジュール５０２は通知メッセージを生成する。
【０２０３】
通知メッセージには、ステップＳ１８０４以前にホームエージェント５００が端末４００のセルラーネットワーク用インタフェース４１０に送信した最後のパケットに関するデータが含まれる。
【０２０４】
前記データは、例えばパケットのＩＰヘッダ中のチェックサムフィールドの値であってもよいし、パケット自体であってもよい。
【０２０５】
次に、モビリティプロトコルモジュール５０２は、通知メッセージをネットワークスタック５０１へ出力する。
【０２０６】
ネットワークスタック５０１は、受け取った通知メッセージに、図２１に示すように、送信元ポート番号が４３４であり、送信先ポート番号がＵＰであるＵＤＰヘッダを付与する。また、ネットワークスタック５０１は、送信元ＩＰアドレスがホームエージェント５００のＩＰアドレスＨＡであり、送信先ＩＰアドレスが端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２であるＩＰヘッダを付与する。
【０２０７】
ネットワークスタック５０１はこの通知メッセージをネットワークインタフェース５１０へ出力する。ネットワークインタフェースは受け取った通知メッセージを無線ＬＡＮ用インタフェース４２０へ送信する。
【０２０８】
なお、図２１は、ステップＳ１８０４以前にホームエージェント５００が端末４００のセルラーネットワーク用インタフェース４１０に送信した最後のパケットに関するデータが、チェックサムフィールドの値である場合の通知メッセージの例を示している。
【０２０９】
端末４００の無線ＬＡＮ用インタフェース４２０は、受信した通知メッセージをネットワークスタック４０１へ出力する。
【０２１０】
ネットワークスタック４０１は、受け取った通知メッセージの送信先ポート番号がＵＰであることから、通知メッセージがモビリティプロトコルモジュール４０２宛であることを検知し、通知メッセージのＩＰヘッダとＵＤＰヘッダを除くデータをモビリティプロトコルモジュール４０２へ出力する。
【０２１１】
モビリティプロトコルモジュール４０２は、受け取った前記データに記された、ステップＳ１８０４以前にホームエージェント５００が端末４００のセルラーネットワーク用インタフェース４１０に送信した最後のパケットの特徴を表すデータを、パケット監視モジュール４０７へ出力する。例えば、前記データがパケットのＩＰヘッダの中のチェックサムフィールドの値の場合は、前記チェックサムの値をパケット監視モジュール４０７へ出力する。
【０２１２】
パケット監視モジュール４０７は、受け取ったデータを記憶部４０６に格納する。パケット監視モジュール４０７は、ネットワークスタック４０１に、これ以降受信する全てのパケットをパケット監視モジュール４０７へ出力するよう通知する。
【０２１３】
（ステップＳ１８０７）ホームエージェント５００は、通信相手機器６００から送信された送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、端末４００の無線ＬＡＮ用インタフェース４２０へ転送する。
【０２１４】
ホームエージェント５００のネットワークインタフェース５１０が、通信相手機器６００から、図６に示すような送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、ネットワークインタフェース５１０はこのパケットをネットワークスタック５０１へ出力する。
【０２１５】
ネットワークスタック５０１は、パケットの送信先ＩＰアドレスがＨｏＡであることから、パケットがトンネルデバイスモジュール５０３に渡すべきパケットであることを検知し、このパケットをトンネルデバイスモジュール５０３へ出力する。
【０２１６】
トンネルデバイスモジュール５０３は記憶部５０４からＩＰアドレスＨｏＡを含むトンネルの設定を取得する。記憶部５０４に記憶されている、ＩＰアドレスＨｏＡを含むトンネルの設定は、ＩＰアドレスＨｏＡと、端末４００の無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２と、ホームエージェント５００のＩＰアドレスＨＡで構成される設定である。
【０２１７】
従って、トンネルデバイスモジュール５０３は、送信先ＩＰアドレスをＣｏＡ２に指定し、送信元ＩＰアドレスをＨＡに指定した外側ＩＰヘッダをパケットに付与し、図１０に示すようなパケットを生成する。
【０２１８】
トンネルデバイスモジュール５０３はこのようなパケットをネットワークスタック５０１へ出力し、ネットワークスタック５０１は受け取ったパケットをネットワークインタフェース５１０へ出力する。ネットワークインタフェース５１０は、受け取ったパケットを無線ＬＡＮ用インタフェース４２０へ送信する。
【０２１９】
端末４００は、ホームエージェント５００が無線ＬＡＮ用インタフェース４２０へ転送したパケット、及び、ホームエージェント５００がステップＳ１８０４以前にセルラーネットワーク用インタフェース４１０へ転送したパケットを受信する。
【０２２０】
端末４００のセルラーネットワーク用インタフェース４１０がホームエージェント５００から転送されたパケットを受信すると、セルラーネットワーク用インタフェース４１０はネットワークスタック４０１へこのパケットを出力する。
【０２２１】
ネットワークスタック４０１は、受け取ったパケットをパケット監視モジュール４０７へ出力する。
【０２２２】
そして、パケット監視モジュール４０７は、記憶部４０６に格納された、ホームエージェント５００がステップＳ１８０４以前にセルラーネットワーク用インタフェース４１０へ最後に転送したパケットの特徴（例えばＩＰヘッダ内のチェックサムフィールドの値）と、ネットワークスタック４０１から受け取ったパケットの特徴とを比較する。
【０２２３】
比較後、パケット監視モジュール４０７はこのパケットをネットワークスタック４０１へ出力する。
【０２２４】
ネットワークスタック４０１は、パケットの外側ＩＰヘッダの上位ヘッダがＩＰヘッダであることを検知し、パケットをトンネルデバイスモジュール４０４へ出力する。
【０２２５】
トンネルデバイスモジュール４０４は記憶部４０６からトンネルの設定を取得し、トンネルの設定に含まれる２つのＩＰアドレスの組と、ＩＰヘッダで指定された送信先ＩＰアドレス及び送信元ＩＰアドレスの組とを比較する。
【０２２６】
ＩＰアドレスの組の比較結果が一致すると、トンネルデバイスモジュール４０４はパケットが正常なパケットであると判断し、パケットの外側ＩＰヘッダを削除し、ネットワークスタック４０１へパケットを出力する。
【０２２７】
端末４００のネットワークスタック４０１は、ＩＰヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール４０３にパケットの中のアプリケーションデータを出力する。
【０２２８】
アプリケーションモジュール４０３は、受け取ったアプリケーションデータを用いて、所定の処理を行う。
【０２２９】
（ステップＳ１８０８）記憶部４０６に格納された、ホームエージェント５００がステップＳ１８０４以前にセルラーネットワーク用インタフェース４１０へ最後に転送したパケットの特徴と、パケット監視モジュール４０７がネットワークスタック４０１から受け取ったパケットの特徴とが一致する場合、パケット監視モジュール４０７はモビリティプロトコルモジュール４０２へ一致したことを通知する。
【０２３０】
（ステップＳ１８０９）モビリティプロトコルモジュール４０２が、パケット監視モジュール４０７から受け取った通知に基づいて、記憶部４０６から、セルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１とホームエージェント５００のＩＰアドレスＨＡの組に一致するトンネルの設定（ハンドオーバ前のトンネル設定）を削除する。
【０２３１】
これにより、端末４００のセルラーネットワーク用インタフェース４１０が図７に示すようなパケットを受信した場合、端末４００のトンネルデバイスモジュール４０４は、前記パケットの外側ＩＰヘッダの送信元ＩＰアドレスと送信先ＩＰアドレスに一致するトンネルの設定が、記憶部４０６に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
【０２３２】
このように、本実施形態では、ホームエージェントが、ハンドオーバ処理前に端末へ転送した最後のトンネリングされたパケットの内容を示す通知メッセージを、ハンドオーバ後に使用するネットワーク経由で、ハンドオーバ直後に送信している。また、端末は、前記通知メッセージを受信し、前記通知メッセージが示すパケットの内容に該当するパケットを、ハンドオーバ前に使用していたネットワーク経由で受信した時点をハンドオーバ前に使用していたトンネルを削除可能となる時点として検知する。
【０２３３】
そのため、ハンドオーバ前に端末が使用していたネットワーク上でパケットロスが発生する可能性があっても、端末が、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えて前記トンネルを削除可能となる時点を検知可能となる。
【０２３４】
トンネルを削除可能となる時点を検知して、トンネルを削除することで、パケットロスを起こさずに、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
【０２３５】
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
【０２３６】
上記第２の実施形態では、端末およびホームエージェントはモビリティプロトコルとしてMobile IPv4を搭載しているが、Mobile IPv4の代わりにMobile IPv6を搭載していてもよい。
【０２３７】
端末およびホームエージェントがMobile IPv6を利用する場合、端末およびホームエージェントが標準化中のMultiple Care-of Address Registration機能に対応し、Registration Requestの代わりにMobile IPv6のBinding Updateメッセージを利用し、Registration Replyの代わりにBinding Acknowledgementメッセージを利用してもよい。
【０２３８】
Binding Updateメッセージを端末が利用する場合、Binding Updateメッセージ中のBinding Identifier Mobility Option内のC flagフィールドを1に指定し、Binding Acknowledgmentメッセージ中のStatusフィールドを検査することで、ホームエージェントがMultiple Care-of Address Registration機能に対応していない場合にICMP Echo Requestメッセージなどのメッセージを送信してもよい。
【０２３９】
上記第２の実施形態では、端末はステップＳ１８００、ステップＳ１８０７、ステップＳ１８０８においてトンネリングしたパケットをホームエージェント５００に送信することで、通信相手機器３００にパケットを送信してもよい。
【０２４０】
また、上記第２の実施形態では、端末はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０２４１】
また、上記第２の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０２４２】
また、上記第２の実施形態では、端末のトンネルデバイスモジュール４０４は、IP-in-IPトンネリングプロトコルの代わりにGREトンネルやその他のトンネリングプロトコルを利用してもよい。
【０２４３】
また、上記第２の実施形態では、端末およびホームエージェントはIP-in-IPトンネリングプロトコルの代わりにGREトンネルやESP、AHといったシーケンスナンバーフィールドをプロトコルヘッダにもつプロトコルを利用し、かつＩＰヘッダのチェックサムフィールドの値の代わりに前記シーケンスナンバーフィールドの値を利用してもよく、さらに端末は前記シーケンスナンバーフィールドの値よりも小さい値のシーケンスナンバーフィールド値をもつパケットを全て受信した時点をハンドオーバ前に使用していたトンネルを削除可能となる時点として検知してもよい。
【０２４４】
この場合、端末は、ハンドオーバ前に使用していたネットワーク上で、パケットの転送順が入れ替わっても、端末がハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えて前記トンネルを削除可能となる時点を検知可能となる。
【０２４５】
また、上記第２の実施形態においては、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。モビリティプロトコルがMobile IPv4でない場合は、Mobile IPv4のRegistration RequestおよびRegistration Replyの代わりにMobile IPv6やMOBIKEの仕様、その他のモビリティプロトコルの仕様に規定されている、ハンドオーバに必要なメッセージを端末とホームエージェントが送受信する。
【０２４６】
（第３の実施形態）本発明の第３の実施形態に係る通信システムは図１５に示す上記第２の実施形態に係る通信システムと同様であるため、説明を省略する。
【０２４７】
また、本実施形態に係る端末は図１６に示す上記第２の実施形態に係る端末と同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール４０２、トンネルデバイスモジュール４０４、パケット監視モジュール４０７に搭載される機能は上記第２の実施形態と異なる。
【０２４８】
本実施形態に係る端末４００のモビリティプロトコルモジュール４０２は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック４０１へ出力する。
【０２４９】
また、モビリティプロトコルモジュール４０２は、ネットワークスタック４０１からRegistration Replyメッセージを受信して処理する。
【０２５０】
また、モビリティプロトコルモジュール４０２は、ハンドオーバ直後に使用するネットワーク経由でホームエージェント５００から転送された最初のパケットのヘッダに指定されたシーケンスナンバーを監視モジュール４０７から受信する。
【０２５１】
モビリティプロトコルモジュール４０２はまた、前記シーケンスナンバーから１を引いた値、およびハンドオーバ前に使用していたネットワークに対応するインタフェースのＩＰアドレスをパケット監視モジュール４０７へ出力する。
【０２５２】
モビリティプロトコルモジュール４０２はまた、パケット監視モジュール４０７から通知を受けたときに記憶部４０６に格納されたハンドオーバ前に使用していたトンネルの設定を削除する。
【０２５３】
トンネルデバイスモジュール４０４は、GREなどの、シーケンスナンバーをプロトコルヘッダに指定可能なトンネリングプロトコルを用いて、ネットワークスタック４０１から受け取ったトンネリングされたパケットのトンネリングプロトコルのヘッダとＩＰヘッダを取り除いてネットワークスタック４０１へ出力する。
【０２５４】
パケット監視モジュール４０７は、モビリティプロトコルモジュール４０２から受け取ったシーケンスナンバーを記憶部４０６に格納する。また、パケット監視モジュール４０７は、ネットワークスタック４０１から受け取った、トンネリングされたパケットが記憶部４０６に格納されたシーケンスナンバーに一致するか否かを判定し、一致する場合はモビリティプロトコルモジュール４０２に通知する。
【０２５５】
また、パケット監視モジュール４０７は、前記判定の後、前記パケットをネットワークスタック４０１へ出力する。
【０２５６】
本実施形態に係るホームエージェントは図１７に示す上記第２の実施形態に係るホームエージェントと同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール５０２およびトンネルデバイスモジュール５０３に搭載される機能は上記第２の実施形態と異なる。
【０２５７】
モビリティプロトコルモジュール５０２は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック５０１からRegistration Requestメッセージを受信して処理する。
【０２５８】
モビリティプロトコルモジュール５０２は、Registration Replyメッセージを生成して、ネットワークスタック５０１へ出力する。またモビリティプロトコルモジュール５０２は、前記Registration Requestメッセージの内容に従ったトンネルの設定を記憶部５０４に格納する。
【０２５９】
モビリティプロトコルモジュール５０２は、トンネルデバイスモジュール５０３がネットワークスタック５０１から受け取ってＩＰヘッダを付与したパケットの内容を、トンネルデバイスモジュール５０３から取得する機能を搭載しなくてもよい。
【０２６０】
トンネルデバイスモジュール５０３は、ネットワークスタック５０１から受け取ったパケットに、記憶部５０４に格納されたトンネルの設定に従ったＩＰヘッダを付与し、ネットワークスタック５０１へ出力する。
【０２６１】
トンネルデバイスモジュール５０３は、ハンドオーバの前に使用していたネットワーク経由で端末４００へ転送する最後のパケットの内容をモビリティプロトコルモジュール５０２へ出力する機能を搭載しなくてもよい。
【０２６２】
このような通信システムにおけるハンドオーバ時の処理フローを図２２を用いて説明する。本実施形態では、使用するネットワークをセルラーネットワークから無線ＬＡＮへ切り替える場合について説明する。
【０２６３】
（ステップＳ２２００）端末４００が、端末４００とホームエージェント５００との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器６００から送信されたパケットを受信している。
【０２６４】
このとき、端末４００の記憶部４０６には、セルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１と、ホームエージェント５００のＩＰアドレスＨＡとの組が、１つのトンネル設定として記憶されている。
【０２６５】
ホームエージェント５００は、通信相手機器６００から受信した、送信先ＩＰアドレスがＨｏＡであるパケットをトンネリングしたパケットを、端末４００のセルラーネットワーク用インタフェース４１０へ転送している。
【０２６６】
つまり、ホームエージェント５００のネットワークインタフェース５１０が、通信相手機器６００から、図６に示すような送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、ネットワークインタフェース５１０はこのパケットをネットワークスタック５０１へ出力する。
【０２６７】
ネットワークスタック５０１は受け取ったパケットの送信先ＩＰアドレスがＨｏＡであることから、パケットがトンネルデバイスモジュール５０３宛であることを検知し、このパケットをトンネルデバイスモジュール５０３へ出力する。
【０２６８】
トンネルデバイスモジュール５０３は記憶部５０４からＩＰアドレスＨｏＡを含むトンネルの設定を取得する。そして、トンネルデバイスモジュール５０３は、Protocol typeフィールドが０８００であるGREヘッダをパケットに付与する。
【０２６９】
但し、GREヘッダのシーケンスナンバーフィールドには、直前にトンネリングし転送した、端末４００宛のパケットのGREヘッダ中のシーケンスナンバーフィールドの値に１を足した値を指定する。
【０２７０】
前記直前に転送したパケット中のシーケンスナンバーフィールドの値が１６進数で0xffffffffである場合は、GREヘッダのシーケンスナンバーフィールドを１に指定する。
【０２７１】
前記トンネルの設定に含まれる端末のセルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１を送信先ＩＰアドレスに指定し、前記トンネルの設定に含まれるホームエージェント５００のＩＰアドレスＨＡを送信元ＩＰアドレスとして指定した外側ＩＰヘッダをパケットに付与することで、例えば図２３に示すようなパケットを生成する。
【０２７２】
トンネルデバイスモジュール５０３はこのパケットをネットワークスタック５０１へ出力し、ネットワークスタック５０１は、受け取ったパケットをネットワークインタフェース５０１へ出力する。
【０２７３】
ネットワークインタフェース５１０は、受け取ったパケットをセルラーネットワーク用インタフェース４１０へ送信する。
【０２７４】
端末４００のセルラーネットワーク用インタフェース４１０がホームエージェント５００から転送された、図２３に示すようなパケットを受信すると、セルラーネットワーク用インタフェース４１０はネットワークスタック４０１へパケットを出力する。
【０２７５】
ネットワークスタック４０１は、パケットの外側ＩＰヘッダの上位ヘッダがGREヘッダであることを検知し、パケットをトンネルデバイスモジュール４０４へ出力する。
【０２７６】
トンネルデバイスモジュール４０４は記憶部４０６からトンネルの設定を取得し、トンネルの設定に含まれる２つのＩＰアドレスの組と、外側ＩＰヘッダに指定された送信先ＩＰアドレス及び送信元ＩＰアドレスの組とを比較する。
【０２７７】
前記比較の結果が一致すると、トンネルデバイスモジュール４０４はパケットが正常なパケットであると判断し、パケットの外側ＩＰヘッダ及びGREヘッダを削除し、ネットワークスタック４０１へ出力する。
【０２７８】
端末４００のネットワークスタック４０１はＩＰヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール４０３へパケットの中のアプリケーションデータを出力する。
【０２７９】
アプリケーションモジュール４０３は受け取ったアプリケーションデータを用いて、所定の処理を行う。
【０２８０】
ステップＳ２２０１〜ステップＳ２２０４は、上記第２の実施形態におけるステップＳ１８０１〜ステップＳ１８０４と同様であるため、説明を省略する。但し、モビリティプロトコルモジュール４０２がRegistration RequestメッセージのＳｂｉｔに１を指定する点が異なる。
【０２８１】
（ステップＳ２２０５）端末４００は、上記第２の実施形態におけるステップＳ１８０５と同様の処理を行うことで、新たなトンネルの設定を記憶部４０６に格納する。
【０２８２】
さらに、端末４００のモビリティプロトコルモジュール４０２は、パケット監視モジュール４０７に対し、GREプロトコルによりトンネリングされ、かつ外側ＩＰヘッダの送信先ＩＰアドレスが無線ＬＡＮ用インタフェース４２０のＩＰアドレスＣｏＡ２である最初のパケットを検知したときにモビリティプロトコルモジュール４０２へ通知するよう、通知する。
【０２８３】
（ステップＳ２２０６）ホームエージェント５００は、通信相手機器６００から送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、以下の処理でトンネリングし端末４００の無線ＬＡＮ用インタフェース４２０へ転送する。
【０２８４】
ホームエージェント５００のネットワークインタフェース５１０が、通信相手機器６００から、図６に示すような送信先ＩＰアドレスがＨｏＡであるパケットを受信すると、ネットワークインタフェース５１０はこのパケットをネットワークスタック５０１へ出力する。
【０２８５】
ネットワークスタック５０１はパケットの送信先ＩＰアドレスがＨｏＡであることから、トンネルデバイスモジュール５０３へ出力すべきパケットであることを検知し、このパケットをトンネルデバイスモジュール５０３へ出力する。
【０２８６】
トンネルデバイスモジュール５０３は、記憶部５０４からＩＰアドレスＨｏＡを含むトンネルの設定を取得する。記憶部５０４には、ＩＰアドレスＨｏＡを含むトンネルの設定は、ＩＰアドレスＨｏＡと、端末４００の無線ＬＡＮ用インタフェースのＩＰアドレスＣｏＡ２と、ホームエージェント５００のＩＰアドレスＨＡで構成される設定である。
【０２８７】
トンネルデバイスモジュール５０３は、Protocol typeが０８００であるGREヘッダを付与する。但し、GREヘッダのシーケンスナンバーフィールドには、直前にトンネリングして転送した、端末４００宛のパケットのGREヘッダ中のシーケンスナンバーフィールドの値に１を足した値を指定する。
【０２８８】
前記直前に転送したパケット中のシーケンスナンバーフィールドの値が１６進数で0xffffffffである場合は、GREヘッダのシーケンスナンバーフィールドを１に指定する。
【０２８９】
そしてトンネルデバイスモジュール５０３は、記憶部５０４から取得したトンネルの設定に従い、送信先ＩＰアドレスにＣｏＡ２、送信元ＩＰアドレスにＨＡを指定したＩＰヘッダをパケットに付与することで、図２４に示すようなパケットを生成する。
【０２９０】
トンネルデバイスモジュール５０３はこのパケットをネットワークスタック５０１へ出力し、ネットワークスタック５０１は、受け取ったパケットをネットワークインタフェース５１０へ出力する。
【０２９１】
ネットワークインタフェース５１０は、受け取ったパケットを端末４００の無線ＬＡＮ用インタフェース４２０へ送信する。
【０２９２】
端末４００の無線ＬＡＮ用インタフェース４２０がホームエージェント５００から転送された初めてのパケットを受信すると、無線ＬＡＮ用インタフェース４２０はネットワークスタック４１０へパケットを出力する。
【０２９３】
次に、ネットワークスタック４０１は、パケットをパケット監視モジュール４０７へ出力する。
【０２９４】
パケット監視モジュール４０７は、パケットがGREでトンネリングされており、かつ外側ＩＰヘッダの送信先ＩＰアドレスがステップＳ２２０５においてモビリティプロトコルモジュール４０２から通知されたＩＰアドレスＣｏＡ２であるか否かを判定する。
【０２９５】
パケットの外側ＩＰヘッダの送信元ＩＰアドレスはＣｏＡ２であるため、前記判定の結果は真になる。そのためパケット監視モジュール４０７は、パケットのGREヘッダに指定されたシーケンスナンバーの値をモビリティプロトコルモジュール４０２に通知し、パケットをネットワークスタック４０１へ出力する。
【０２９６】
次に、ネットワークスタック４０１はパケットの外側ＩＰヘッダの上位ヘッダがGREヘッダであることを検知し、パケットをトンネルデバイスモジュール４０４へ出力する。
【０２９７】
トンネルデバイスモジュール４０４は記憶部４０６からトンネルの設定を取得し、トンネルの設定に含まれる２つのＩＰアドレスの組と、ＩＰヘッダに指定された送信先ＩＰアドレス、送信元ＩＰアドレスの組とを比較する。
【０２９８】
前記比較の結果が一致することから、トンネルデバイスモジュール４０４はパケットが正常なパケットであると判断し、パケットの外側ＩＰヘッダおよびGREヘッダを削除したパケットをネットワークスタック４０１へ出力する。
【０２９９】
次に、ネットワークスタック４０１は前記パケットのＩＰヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行った後、アプリケーションモジュール４０３へパケットの中のアプリケーションデータを出力する。
【０３００】
アプリケーションモジュール４０３は受け取ったアプリケーションデータを用いて所定の処理を行う。
【０３０１】
また、端末４００のセルラーネットワーク用インタフェース４１０がホームエージェント５００から転送された、例えば図２３に示すようなパケットを受信すると、セルラーネットワーク用インタフェース４１０はネットワークスタック４０１へパケットを出力する。
【０３０２】
ネットワークスタック４０１は、このパケットをパケット監視モジュール４０７へ出力する。
【０３０３】
パケット監視モジュールは、パケットがGREでトンネリングされており、かつ外側ＩＰヘッダの送信先ＩＰアドレスがステップＳ２２０５においてモビリティプロトコルモジュール４０２から通知されたＩＰアドレスＣｏＡ２であるか否かを判定する。
【０３０４】
パケットの外側ＩＰヘッダの送信元ＩＰアドレスはＣｏＡ１であるため、前記判定の結果は偽になる。そのためパケット監視モジュール４０７はパケットをネットワークスタック４０１へ出力する。
【０３０５】
以降の動作は、上述した無線ＬＡＮ用インタフェース４２０がホームエージェント５００から転送されたパケットを受信した場合と同様であるので、説明を省略する。
【０３０６】
（ステップＳ２２０７）ステップＳ２２０６において、端末４００のモビリティプロトコルモジュール４０２がパケット監視モジュール４０７からシーケンスナンバーを通知されると、端末４００は以下の処理を行う。
【０３０７】
モビリティプロトコルモジュール４０２は、無線ＬＡＮ用インタフェース４２０で受信したパケットの監視を停止するよう、パケット監視モジュール４０７に通知する。
【０３０８】
次に、モビリティプロトコルモジュール４０２は、パケット監視モジュール４０７から通知されたシーケンスナンバーから１を引いた値と、セルラーネットワーク用インタフェース４１０のＩＰアドレスをパケット監視モジュール４０７に与える。
【０３０９】
但し、パケット監視モジュール４０７から通知されたシーケンスナンバーが１である場合は、１６進数で0xffffffffをシーケンスナンバーとしてパケット監視モジュール４０７に与える。
【０３１０】
これにより、パケット監視モジュール４０７は、セルラーネットワーク用インタフェース４１０で受信した全てのパケットを監視する。
【０３１１】
（ステップＳ２２０８）ステップＳ２２０４以前にホームエージェント５００から端末４００のセルラーネットワーク用インタフェース４１０へ送信された最後のパケットが受信される。
【０３１２】
端末４００のセルラーネットワーク用インタフェース４１０は受信したパケットをネットワークスタック４０１へ出力する。
【０３１３】
ネットワークスタック４０１は、このパケットをパケット監視モジュール４０７へ出力する。
【０３１４】
次に、パケット監視モジュール４０７は、モビリティプロトコルモジュール４０２から通知されたシーケンスナンバーの値をGREヘッダ内のシーケンスナンバーと比較する。このパケットは、ステップＳ２２０４以前にホームエージェント５００から端末４００のセルラーネットワーク用インタフェース４１０へ送信された最後のパケットであるため、前記比較の結果は真になる。
【０３１５】
そして、パケット監視モジュール４０７は、前記比較の結果は真になったことをモビリティプロトコルモジュール４０２に通知する。
【０３１６】
次に、パケット監視モジュール４０７はパケットをネットワークスタック４０１へ出力する。ネットワークスタック４０１はパケットの外側ＩＰヘッダの上位ヘッダがGREヘッダであることを検知し、このパケットをトンネルデバイスモジュール４０４へ出力する。  以降の処理は、ステップＳ２２０６におけるトンネルモジュールデバイス４０４、ネットワークスタック４０１、アプリケーションモジュール４０３の処理と同じであるため、説明を省略する。
【０３１７】
なお、ステップＳ２２０７からステップＳ２２０８までの間に、パケット監視モジュール４０７が保持するシーケンスナンバーと一致しないシーケンスナンバーがGREヘッダ内に指定されたパケットをセルラーネットワーク用インタフェース４１０が受信した場合の処理は、パケット監視モジュール４０７がモビリティプロトコルモジュール４０２への通知を行わないこと以外は、ステップＳ２２０８において端末４００が行う処理と同じである。
【０３１８】
（ステップＳ２２０９）端末４００のモビリティプロトコルモジュール４０２がパケット監視モジュール４０７から通知を受けると、モビリティプロトコルモジュール４０２は記憶部４０６から、セルラーネットワーク用インタフェース４１０のＩＰアドレスＣｏＡ１とホームエージェント５００のＩＰアドレスＨＡの組に一致するトンネルの設定を削除する。
【０３１９】
これにより、端末４００のセルラーネットワーク用インタフェース４１０が図２３に示すようなパケットを受信した場合、端末４００のトンネルデバイスモジュール４０４は、前記パケットの外側ＩＰヘッダの送信元ＩＰアドレスと送信先ＩＰアドレスに一致するトンネルの設定が、記憶部４０６に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
【０３２０】
このように、本実施形態では、ホームエージェントは、トンネリングプロトコルとしてシーケンスナンバーをトンネルのヘッダに記すプロトコルを使用して通信相手機器から受信したパケットを端末に転送する。
【０３２１】
また、端末は、ハンドオーバ後に端末が利用するネットワーク経由でホームエージェントから受信した最初のパケットの内容から、このパケットの直前に、端末がハンドオーバ前に利用していたネットワーク経由でホームエージェントが転送したパケットの特徴を予測し、記憶する。
【０３２２】
そして、端末がハンドオーバ前に利用していたネットワーク経由でホームエージェントから受信したパケットが前記記憶しておいたパケットの特徴に一致した時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知する。
【０３２３】
従って、特別なメッセージを端末とホームエージェントが送受信しなくても、端末が、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えた時点で、即時に前記トンネルを削除可能となる。
【０３２４】
トンネルを削除可能となる時点を検知して、トンネルを削除することで、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
【０３２５】
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
【０３２６】
端末４００はステップＳ２２００、ステップＳ２２０６、ステップＳ２２０８においてトンネリングしたパケットをホームエージェント５００に送信することで、通信相手機器６００にパケットを送信してもよい。
【０３２７】
また、上記第３の実施形態では、端末はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０３２８】
また、上記第３の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
【０３２９】
また、上記第３の実施形態では、端末のトンネルデバイスモジュールは、GREプロトコルの代わりにシーケンスナンバーをプロトコルヘッダに記載可能な例えばESPやAHといったトンネリングプロトコルを利用してもよい。
【０３３０】
また、上記第３の実施形態では、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。
【０３３１】
モビリティプロトコルがMobile IPv4でない場合は、Mobile IPv4のRegistration RequestおよびRegistration Replyの代わりにMobile IPv6やMOBIKEの仕様、その他のモビリティプロトコルの仕様に規定されている、ハンドオーバに必要なメッセージを端末とホームエージェントが送受信する。
【０３３２】
なお、上記第１〜第３の全ての実施形態においては、セルラーネットワーク用インタフェースおよび無線ＬＡＮ用インタフェースは、例えば有線のEthernetに対応したインタフェースでも、802.16、802.16eに対応したインタフェースでも、Bluetoothや赤外線通信に対応したインタフェースであってもよい。
【０３３３】
また、上記第１の実施形態においては、セルラーネットワーク用インタフェースおよび無線ＬＡＮ用インタフェースの代わりに、異なるアクセスネットワークに接続される、同一プロトコルに対応した複数のネットワークインタフェースを搭載している端末であってもよい。
【０３３４】
さらに、上記第１〜第３の全ての実施形態においては、端末は、２つ以上のネットワークインタフェースを搭載していてもよく、端末に搭載されたネットワークインタフェースのうち、２つのネットワークインタフェースを用いて、通信相手機器との通信に使用するネットワークを切替えるために本発明を適用可能である。
【０３３５】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【０３３６】
【図１】本発明の第１の実施形態に係る通信システムの概略構成図である。
【図２】同第１の実施形態に係る通信システムにおける端末の概略構成図である。
【図３】同第１の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。
【図４】同第１の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。
【図５】同第１の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。
【図６】同第１の実施形態に係る通信システムにおける通信相手機器からの送信パケットの構成例を示す図である。
【図７】同第１の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。
【図８】Registration Requestメッセージの構成例を示す図である。
【図９】Registration Replyメッセージの構成例を示す図である。
【図１０】同第１の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。
【図１１】Registration Requestメッセージの構成例を示す図である。
【図１２】Registration Replyメッセージの構成例を示す図である。
【図１３】ICMP Echo Requestメッセージの構成例を示す図である。
【図１４】ICMP Echo Replyメッセージの構成例を示す図である。
【図１５】本発明の第２の実施形態に係る通信システムの概略構成図である。
【図１６】同第２の実施形態に係る通信システムにおける端末の概略構成図である。
【図１７】同第２の実施形態に係る通信システムにおけるホームエージェントの概略構成図である。
【図１８】同第２の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。
【図１９】Registration Requestメッセージの構成例を示す図である。
【図２０】Registration Replyメッセージの構成例を示す図である。
【図２１】通知メッセージの構成例を示す図である。
【図２２】本発明の第３の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。
【図２３】同第３の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。
【図２４】同第３の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。
【符号の説明】
【０３３７】
１０  セルラー基地局
２０  無線ＬＡＮ基地局
１００  端末
１１０  セルラーネットワーク用インタフェース
１２０  無線ＬＡＮ用インタフェース
２００  ホームエージェント
３００  通信相手機器
【図１】
2010050892.tif 000003
【図２】
2010050892.tif 000004
【図３】
2010050892.tif 000005
【図４】
2010050892.tif 000006
【図５】
2010050892.tif 000007
【図６】
2010050892.tif 000008
【図７】
2010050892.tif 000009
【図８】
2010050892.tif 000010
【図９】
2010050892.tif 000011
【図１０】
2010050892.tif 000012
【図１１】
2010050892.tif 000013
【図１２】
2010050892.tif 000014
【図１３】
2010050892.tif 000015
【図１４】
2010050892.tif 000016
【図１５】
2010050892.tif 000017
【図１６】
2010050892.tif 000018
【図１７】
2010050892.tif 000019
【図１８】
2010050892.tif 000020
【図１９】
2010050892.tif 000021
【図２０】
2010050892.tif 000022
【図２１】
2010050892.tif 000023
【図２２】
2010050892.tif 000024
【図２３】
2010050892.tif 000025
【図２４】
2010050892.tif 000026