JP2010050892A - 移動端末、通信システム、及び通信方法 - Google Patents

移動端末、通信システム、及び通信方法 Download PDF

Info

Publication number
JP2010050892A
JP2010050892A JP2008215404A JP2008215404A JP2010050892A JP 2010050892 A JP2010050892 A JP 2010050892A JP 2008215404 A JP2008215404 A JP 2008215404A JP 2008215404 A JP2008215404 A JP 2008215404A JP 2010050892 A JP2010050892 A JP 2010050892A
Authority
JP
Japan
Prior art keywords
network
packet
interface
home agent
mobile terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008215404A
Other languages
English (en)
Other versions
JP4945529B2 (ja
Inventor
Yasuyuki Kosakai
堺 康 之 小
Seijiro Yoneyama
山 清二郎 米
Haruna Tsuchino
野 春 菜 土
Masahiro Ishiyama
山 政 浩 石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008215404A priority Critical patent/JP4945529B2/ja
Priority to US12/546,870 priority patent/US8355381B2/en
Publication of JP2010050892A publication Critical patent/JP2010050892A/ja
Application granted granted Critical
Publication of JP4945529B2 publication Critical patent/JP4945529B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/34Reselection control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

【課題】ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除する。
【解決手段】第1のネットワークから第2のネットワークへのハンドオーバを行う際に、端末100が前記第2のネットワーク経由のパケット送受信のためのトンネルの新規設定後にホームエージェント200へ第1のネットワークを介して応答要求メッセージを送信し、前記第1のネットワークを介して前記応答要求メッセージに対応する応答メッセージを受信したら、前記第1のネットワーク経由のパケット送受信のためのトンネルの設定が削除可能になったことを検知し、このトンネルの設定を削除する。
【選択図】図5

Description

本発明は、移動端末、通信システム、及び通信方法に関するものである。
移動端末が、PHS、GPRS、CDMA、HSDPAなどのセルラー系アクセスネットワークや、802.11、802.16などのアクセスネットワークなどの、複数の異なるネットワークを必要に応じて切替えて使用するハンドオーバ技術が知られている(例えば特許文献1参照)。このハンドオーバ技術は一般にバーティカルハンドオーバ(vertical handover)と呼ばれている。
バーティカルハンドオーバは、Mobile IPv4、Mobile IPv6、MOBIKE(IKEv2 Mobility and Multihoming) Protocolなどのプロトコルを利用して実現される。また、端末がこれらのプロトコルを用いて、使用するネットワークを切替える際のパケットロスを低減するための技術として、ソフトハンドオーバと呼ばれる技術がある。
バーティカルハンドオーバ時におけるソフトハンドオーバ処理では、端末が切替え後のネットワークに接続した後もしばらくは切替え前のネットワークとの接続が維持される。これにより、ネットワークの切替え処理中に切替え前のネットワークを通過中であったパケット全てを、端末が確実に受信できる。
従来のMobile IPv4を用いたバーティカルハンドオーバ時のソフトハンドオーバ方法を説明する。なお、以降では特に断らない限り、バーティカルハンドオーバ時のソフトハンドオーバを単にハンドオーバと称する。ここでは一例として移動端末が、使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
ハンドオーバ前は、移動端末とホームエージェントとの間にセルラーネットワークを経由したトンネルが確立されおり、移動端末のセルラーネットワーク用インタフェースが、通信相手機器から送信されたパケットを受信する。
移動端末は、例えば無線LAN基地局から送信される電波の受信強度が十分強くなった場合などに、使用するネットワークを無線LANに切り替えることを決定する。そして、移動端末の無線LAN用インタフェースからホームエージェントへRegistration Requestメッセージが送信される。
ホームエージェントはRegistration Requestメッセージを受信することで、移動端末がネットワークの切り替えを要求していることを検知する。そして、ホームエージェントは移動端末の無線LAN用インタフェースへネットワークの切替えを許可する旨が記されたRegistration Replyメッセージを送信する。
ホームエージェントはRegistration Requestメッセージの受信、又はRegistration Replyメッセージの送信に伴い、通信相手機器から送信されたパケットを移動端末の無線LAN用インタフェースへ転送するように、トンネルの設定を変更する。
また、移動端末はRegistration Replyメッセージの受信に伴い、ホームエージェントから無線LAN用インタフェースへ転送されたパケットを受信できるように、新規にトンネルを設定する。これにより端末は、セルラーネットワーク用インタフェースだけでなく、無線LAN用インタフェースでも、ホームエージェントから転送されたパケットを受信できるようになる。
一般にパケット通信では、セルラーネットワークを経由した場合の通信遅延は、無線LANを経由した場合の通信遅延よりも大きい。そのため、移動端末は、無線LAN用インタフェースで最初にパケットを受信した時点では、ホームエージェントがセルラーネットワーク用インタフェース宛てに送信したパケットを受信し終えていない。
移動端末は、無線LANを経由したトンネルを新規に設定した後も、セルラーネットワークを経由したトンネルの設定を保持しておき、十分な時間が経過した後に削除する。これにより、ホームエージェントからセルラーネットワーク用インタフェースへ送信されたパケットを、ハンドオーバ時のパケットロスを起こさず、全て受信することができる。
しかし、上記のような従来のハンドオーバ方法では、移動端末が、ホームエージェントからセルラーネットワーク(ハンドオーバ前のネットワーク)用インタフェースへ送信された全てのパケットを受信し終える時点を検知できないため、全てのパケットを受信した後もしばらくはトンネルの設定が削除されず、セルラーネットワーク用インタフェースに供給される電源を切ることができなかった。
また、その間、ホームエージェントから転送されたパケットをセルラーネットワーク用インタフェースで受信する設定を保持するためのメモリリソースを解放することができなかった。
特開2005−244590号公報
本発明は、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除できる移動端末、通信システム、及び検知方法を提供することを目的とする。
本発明の一態様による移動端末は、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する第1の応答メッセージを取得し、前記第1の応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1の応答メッセージに基づいて前記第1のネットワークを介して送信される応答要求メッセージを作成して前記第1のインタフェースへ与え、前記第1のインタフェースから前記応答要求メッセージに対応する第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様による移動端末は、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記されたメッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様による移動端末は、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記第1のインタフェースが受信したパケットに記されたシーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第2のインタフェースが最初に受信したパケットに記されたシーケンス番号から1を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する第1の応答メッセージを取得し、前記第1の応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1の応答メッセージに基づいて前記第1のネットワークを介して送信される応答要求メッセージを作成して前記第1のインタフェースへ与え、前記第1のインタフェースから前記応答要求メッセージに対応する第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記第1の応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信し、前記第1のネットワークを介して受信した前記応答要求メッセージに基づいて前記第2の応答メッセージを作成し、前記第1のネットワークを介して前記第1のインタフェースへ送信することを特徴とするものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記された通知メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信すると共に、前記移動端末とのパケット送受信に使用するネットワークを前記第1のネットワークから前記第2のネットワークへ変更し、前記通知メッセージを作成して、前記第2のネットワークを介して前記第2のインタフェースへ送信することを特徴とするものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、前記移動端末は、前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第2のインタフェースで受信したパケットに付されたシーケンス番号に基づく番号を出力し、通知の受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、前記第1のインタフェースで受信したパケットに付されたシーケンス番号と、前記モビリティプロトコルモジュールから出力された番号とを比較し、比較結果が一致した場合に前記モビリティプロトコルモジュールへ前記通知を出力するパケット監視モジュールと、を有し、前記ホームエージェントは、前記移動端末へ転送するパケットに対して転送順に連続するシーケンス番号を付加し、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信すると共に、前記移動端末へのパケット転送に使用するネットワークを前記第1のネットワークから前記第2のネットワークへ変更することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて第1の応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記第2のネットワークを使用したパケット送受信を開始し、前記移動端末が、前記第1の応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記第1のネットワークを使用して前記ホームエージェントへ応答要求メッセージを送信し、前記ホームエージェントが、前記応答要求メッセージに基づいて第2の応答メッセージを作成して、前記第1のネットワークを使用して前記移動端末へ送信し、前記移動端末が、前記第2の応答メッセージの受信に伴い、前記第1のネットワークの使用を停止することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替え、前記第1のネットワークを使用して前記移動端末へ送信した最後のパケットのパケット情報が記された通知メッセージを前記第2のネットワークを使用して前記移動端末へ送信し、前記移動端末が、前記応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始して前記通知メッセージを受信し、前記第1のネットワークを使用した前記パケット情報に適合するパケットの受信に伴い、前記第1のネットワークの使用を停止することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記ホームエージェントが送信順に連続するシーケンス番号をパケットに付加して、前記パケットを前記第1のネットワークを使用して前記移動端末へ送信し、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替え、前記第2のネットワークを使用して前記移動端末へ前記パケットを送信し、前記移動端末が、前記応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記第2のネットワークを使用して最初に受信したパケットに付加されたシーケンス番号から1を減じた番号と、前記第1のネットワークを使用して受信したパケットに付加されたシーケンス番号とを比較し、比較結果の一致に伴い、前記第1のネットワークの使用を停止することを特徴とするものである。
本発明によれば、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終える時点を検知し、このトンネルの設定を速やかに削除できる。
以下、本発明の実施の形態を図面に基づいて説明する。
(第1の実施形態)図1に本発明の第1の実施形態に係る通信システムの概略構成を示す。端末100はインターネット上の通信相手機器300と通信を行う。端末100はセルラーネットワーク用インタフェース110を備え、セルラー基地局10を介してセルラーネットワークに接続できる。また、端末100は無線LAN用インタフェース120を備え、無線LAN基地局20を介して無線LANに接続できる。
ホームエージェント200は端末100に移動機能を提供する機器である。ホームエージェント200は、IP-in-IPトンネリングプロトコルを利用して端末100との間にセルラーネットワーク及び/又は無線LAN経由のトンネルを確立し、そのトンネルを利用して通信相手機器300と端末100間の通信パケットを中継する。
ここで、端末100のセルラーネットワーク用インタフェース110、無線LAN用インタフェース120、ホームエージェント200、通信相手機器300に割り当てられるIPアドレスは、それぞれCoA1、CoA2、HA、CNとする。さらに、端末100にはIPアドレスHoAが割り当てられるとする。ただし、インターネット上のルータがパケットを転送するために解釈するIPヘッダ中の宛先アドレスがHoAであるパケットは全てホームエージェント200に受信されるように、IPアドレスHoAは選ばれる。
図2に端末100の概略構成を示す。端末100は、ネットワークスタック101、モビリティプロトコルモジュール102、アプリケーションモジュール103、トンネルデバイスモジュール104、ハンドオーバトリガモジュール105、記憶部106、セルラーネットワーク用インタフェース110、及び無線LAN用インタフェース120を有する。
ネットワークスタック101は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポート
プロトコルやIPv4、IPv6などのネットワークプロトコル処理を行う。ネットワークスタック101は、セルラーネットワーク用インタフェース110と無線LAN用インタフェース120から受信した、IP-in-IPプロトコルによりトンネリングされたパケットを、トンネルデバイスモジュール104へ出力する。
ネットワークスタック101はまた、トンネルデバイスモジュール104から受信したパケットのアプリケーションデータをアプリケーションモジュール103へ出力する。ネットワークスタック101はまた、セルラーネットワーク用インタフェース110と無線LAN用インタフェース120から受信した、Registration ReplyメッセージのIPヘッダ、UDPヘッダ以外のデータ部分を、モビリティプロトコルモジュール102へ出力する。
ネットワークスタック101はまた、モビリティプロトコルモジュール102から受信したRegistration RequestメッセージにUDPヘッダとIPヘッダを付与し、セルラーネットワーク用インタフェース110または無線LAN用インタフェース120へ出力する。
モビリティプロトコルモジュール102は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック101へ出力する。また、モビリティプロトコルモジュール102は、ネットワークスタック101からRegistration Replyメッセージを受信して処理する。
Registration Requestメッセージはネットワークの切り替え(ハンドオーバ)を要求する旨が記されたメッセージ、Registration Replyメッセージはネットワーク切り替えの可否が記されたメッセージであり、詳しくは後述する。
モビリティプロトコルモジュール102はまた、ICMP Echo Requestメッセージを生成してネットワークスタック101へ出力する。モビリティプロトコルモジュール102はまた、ネットワークスタック101からICMP Echo Replyメッセージを受信して処理する。ICMP Echo Requestメッセージ、ICMP Echo Replyメッセージについては後述する。
アプリケーションモジュール103は、ネットワークスタック101から受信したアプリケーションデータを加工または解析する。また、アプリケーションモジュール103は、アプリケーションデータをネットワークスタック101へ送信する。
トンネルデバイスモジュール104は、ネットワークスタック101から受け取ったパケットにIPヘッダを付与して、ネットワークスタック101を介してセルラーネットワーク用インタフェース110又は無線LAN用インタフェース120に渡し、前記パケットのトンネリングを行う。
ハンドオーバトリガモジュール105は、ハンドオーバを開始する契機を決定する。例えば、ハンドオーバトリガモジュール105は、セルラーネットワーク用インタフェース110または無線LAN用インタフェース120から、セルラーネットワークや無線LANにおける通信品質に関する情報(電波の受信強度等)を取得し、前記情報等に基づいてハンドオーバを開始する契機を決定し、モビリティプロトコルモジュール102に通知する。
記憶部106は、トンネルの設定を記憶する。
セルラーネットワーク用インタフェース110は、例えばCDMAや、HSDPA、PHSといった
セルラー系の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック101に出力する。また、セルラーネットワーク用インタフェース110は、ネットワークスタック101から出力されたデータを、セルラーネットワークを介してホームエージェント200へ送信する。
無線LAN用インタフェース120は、例えば802.11bや、802.11g, 802.11a, 802.11nといった802.11系のプロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック101に出力する。また、無線LAN用インタフェース120は、ネットワークスタック101から出力されたデータを、無線LANを介してホームエージェント200へ送信する。
このような通信システムにおけるハンドオーバ時の処理フローを図3〜図5を用いて説明する。本実施形態では使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
(ステップS100)端末100が、端末100とホームエージェント200との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器300から送信されたパケットを受信している。このとき、端末100の記憶部106には、セルラーネットワーク用インタフェース110のIPアドレスCoA1と、ホームエージェント200のIPアドレスHAとの組が、1つのトンネル設定として記憶されている。
ホームエージェント200がIP-in-IPトンネリングプロトコルを用いて、通信相手機器300から送信されたパケットを端末100へ転送している。
通信相手機器300から送信されるパケットの構成例を図6に示す。通信相手機器300は、端末100から直接、もしくは通信前になんらかの方法で端末100のIPアドレスHoAを取得しておき、IPヘッダH1に含まれる送信先IPアドレスをHoAに指定して、パケットを送信する。
ホームエージェント200が転送するパケットの構成例を図7に示す。ホームエージェント200は、予めMobile IPv4の仕様に従って端末100のセルラーネットワーク用インタフェース100に割り当てられたIPアドレスCoA1を取得しておく。そして、ホームエージェント200は、外側IPヘッダH2中の送信先IPアドレスをCoA1に指定し、この外側IPヘッダH2をIPヘッダH1の前に付与してパケットを端末100へ転送する。
端末100のセルラーネットワーク用インタフェース110がホームエージェント200から図7に示すようなパケットを受信すると、セルラーネットワーク用インタフェース110は受信パケットをネットワークスタック101へ出力する。
ネットワークスタック101は、パケットの外側IPヘッダH2の上位のヘッダがIPヘッダであることを検知し、このパケットをトンネルデバイスモジュール104へ出力する。
トンネルデバイスモジュール104は、記憶部106からトンネルの設定を取得し、トンネルの設定に含まれる2つのIPアドレスの組と、外側IPヘッダH2に指定された送信先IPアドレス及び送信元IPアドレスの組とを比較する。比較結果が一致すると、トンネルデバイスモジュール104はパケット正常なパケットであると判断し、外側IPヘッダH2を削除して、ネットワークスタック101へ出力する。
ネットワークスタック101は、IPヘッダH1の上位のヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行った後、アプリケーションモジュール103へパケットの中のアプリケーションデータを出力する。
アプリケーションモジュール103は、ネットワークスタック101から受け取ったアプリケーションデータを用いて、所定の処理を行う。
(ステップS101)端末100のハンドオーバトリガモジュール105がハンドオーバ(セルラーネットワークから無線LANへの切り替え)を開始することを決定する。
ハンドオーバトリガモジュール105は、常時セルラーネットワーク用インタフェース110や無線LAN用インタフェース120からセルラーネットワークや無線LANにおける通信品質に関する情報を取得している。
そして、ハンドオーバトリガモジュール105は前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティプロトコルモジュール102へ通知する。
なお、ハンドオーバトリガモジュール105がハンドオーバの開始を決定するアルゴリズムはどのようなものであってもよい。一例として、無線LAN基地局20からの受信電波の強度が十分強くなったことをハンドオーバの契機とする方法がある。
(ステップS102)Registration Requestメッセージが無線LANを経由して端末100からホームエージェント200へ送信される。
端末100のモビリティプロトコルモジュール102はハンドオーバトリガモジュール105から、ハンドオーバを開始する旨の通知を受けると、Registration Requestメッセージを生成する。
モビリティプロトコルモジュール102は、Registration RequestメッセージのSbitに1、Lifetimeフィールドに0以外の値、Home Addressフィールドに端末100に割り当てられたIPアドレスHoA、Home AgentフィールドにホームエージェントのIPアドレスHA、Care-of Addressフィールドに無線LAN用インタフェース120のIPアドレスCoA2を指定する。
モビリティプロトコルモジュール102により生成されたRegistration Requestメッセージがネットワークスタック101へ出力される。ネットワークスタック101は、例えば宛先ポート番号が434であるUDPヘッダをRegistration Requestメッセージに付与する。なお、このときネットワークスタック101がUDPヘッダの送信元ポート番号に指定する値をUPとする。
また、ネットワークスタック101は、送信先IPアドレスがホームエージェント200のIPアドレスHAであり、かつ送信元IPアドレスが端末100の無線LAN用インタフェースのIPアドレスCoA2であるIPヘッダをRegistration Requestメッセージに付与する。これにより、Registration Requestメッセージは図8に示すような構成となる。
ネットワークスタック101はこのようなRegistration Requestメッセージを無線LAN用インタフェース120へ出力する。無線LAN用インタフェース120は、受け取ったRegistration Requestメッセージを、無線LANを介してホームエージェント200へ送信する。
ステップS102以降のシーケンスはホームエージェント200がSimultaneous registrationに対応しているか否かにより異なる。まず、ホームエージェント200がSimultaneous registrationに対応している場合について図4を用いて説明する。
(ステップS103)Simultaneous registrationに対応しているホームエージェント200は、端末100からの要求を受け入れることを決定すると、図9に示すようなRegistration Replyメッセージを端末100の無線LAN用インタフェース120へ送信する。
Registration ReplyメッセージのCodeフィールドが0であり、Home Addressフィールドは端末100のIPアドレスHoA、Home Agentフィールドはホームエージェント200のIPアドレスHAである。
また、Registration Replyメッセージには、送信元ポート番号が434、送信先ポート番号がUPのUDPヘッダ、及び送信元IPアドレスがホームエージェント200のIPアドレスHA、送信先IPアドレスが端末100の無線LAN用インタフェース120のIPアドレスCoA2であるIPヘッダが付与されている。
(ステップS104)ホームエージェント200が、端末100のセルラーネットワーク用インタフェース110へパケットを転送するために設定していたトンネルを保持したまま、新たに無線LAN用インタフェース120へパケットを転送するためのトンネルを設定する。
(ステップS105)端末100が、無線LANを介してホームエージェント200から転送されたパケットを無線LAN用インタフェース120で受信するためのトンネルの設定を新たに記憶部106に保存する。
端末100の無線LAN用インタフェース120は、受信したRegistration Replyメッセージをネットワークスタック101へ出力する。
ネットワークスタック101は、Registration ReplyメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号がUPであることから、Registration Replyメッセージがモビリティプロトコルモジュール102宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール102へ出力する。
モビリティプロトコルモジュール102は、Registration ReplyメッセージのCodeフィールドが0であることから、ホームエージェント200がRegistration Requestメッセージの内容を受け入れ、かつSimultaneous registrationに対応していることを検知する。また、モビリティプロトコルモジュール102は無線LAN用インタフェース120のIPアドレスCoA2とホームエージェント200のIPアドレスHAの組を新たなトンネルの設定として記憶部106に格納する。
この時、セルラーネットワークを介してホームエージェント200から転送されたパケットをセルラーネットワーク用インタフェース110で受信するためのトンネルの設定は削除されず、保持されたままとなる。
(ステップS106)通信相手機器300から送信されたパケットが、セルラーネットワーク用インタフェース110及び無線LAN用インタフェース120に転送される。
ホームエージェント200は、通信相手機器300から送信された送信先IPアドレスがHoAであるパケットを受信すると、このパケットをコピーする。そして、一方のパケットに、送信先IPアドレスが端末100のセルラーネットワーク用インタフェース110のIPアドレスCoA1である外側IPヘッダを付与し(図7参照)、セルラーネットワーク用インタフェース110へ転送する。
また、ホームエージェント200は、コピーした他方のパケットに、図10に示すような、送信先IPアドレスが端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2である外側IPヘッダを付与し、無線LAN用インタフェース120へ転送する。
(ステップS107)端末100がRegistration Requestメッセージを生成し、ホームエージェント200へ送信する。
モビリティプロトコルモジュール102は、ステップS105でホームエージェント200がSimultaneous registrationに対応していることを検知した結果、Sbitに0、Lifetimeフィールドに0、Home Addressフィールドに端末100のIPアドレスHoA、Home Agentフィールドにホームエージェント200のIPアドレスHA、Care-of Addressフィールドに端末100のセルラーネットワーク用インタフェース110のIPアドレスCoA1を指定したRegistration Requestメッセージを生成する。
Lifetimeフィールドが0であり、Home AgentフィールドとCare-of Addressフィールドの値が異なるため、Registration Requestメッセージはハンドオーバ前のトンネルの設定を削除するよう要請することを表すものとなる。
モビリティプロトコルモジュール102は、生成したRegistration Requestメッセージをネットワークスタック101へ出力する。ネットワークスタック101は、図11に示すように、Registration Requestメッセージに宛先ポート番号が434、送信元ポート番号がUPであるUDPヘッダを付与する。
また、ネットワークスタック101は、Registration Requestメッセージに、送信先IPアドレスがホームエージェント200のIPアドレスHA、送信元IPアドレスが端末100のセルラーネットワーク用インタフェース110のIPアドレスCoA1であるIPヘッダを付与する。
そして、ネットワークスタック101はRegistration Requestメッセージをセルラーネットワーク用インタフェース110へ出力する。セルラーネットワーク用インタフェース110は、受け取ったRegistration Requestメッセージをホームエージェント200へ送信する。
端末100は、このRegistration Requestメッセージの生成・送信を、トンネルを新たに設定(ステップS105)した直後、ホームエージェント200から転送されてきたパケットの受信処理(ステップS106)と並行して行う。
(ステップS108)ホームエージェント200はハンドオーバ前のトンネルの設定を削除することを受け入れると、Registration Replyメッセージを端末100のセルラーネットワーク用インタフェース110へ送信する。このRegistration Replyメッセージは図9と同様の構成になっている。但し、IPヘッダの送信先IPアドレスはCoA1である。
(ステップS109)ホームエージェント200は、ハンドオーバ前のトンネルの設定を削除する。これ以後、通信相手機器300から送信先IPアドレスがHoAであるパケットを受信したホームエージェント200は、送信先IPアドレスが端末100の無線LAN用インタフェース120のIPアドレスCoA2である外側IPヘッダを前記パケットに付与し、端末100の無線LAN用インタフェース120のみに転送する。
(ステップS110)端末100がステップS108でホームエージェント200から送信されたRegistration Replyメッセージに基づいて、ハンドオーバ前のトンネルの設定を削除する。
端末100のセルラーネットワーク用インタフェース110は、受信したRegistration Replyメッセージをネットワークスタック101へ出力する。Registration Replyメッセージは、ホームエージェント200がステップS104以前に端末100のセルラーネットワーク用インタフェース110に最後に転送したパケットよりも後にホームエージェント200から送信されている。従って、セルラーネットワークにおいてパケットの転送順序が変わらない限り、セルラーネットワーク用インタフェース110は前記パケットよりも後にRegistration Replyメッセージを受信する。
ネットワークスタック101は、Registration ReplyメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号がRegistration Requestメッセージで指定された送信元ポート番号と同じであることから、Registration Replyメッセージがモビリティプロトコルモジュール102宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール102へ出力する。
モビリティプロトコルモジュールは、Registration ReplyメッセージのCodeフィールドが0であることから、ホームエージェント200がRegistration Requestメッセージの内容を受け入れたことを検知する。
そして、モビリティプロトコルモジュール102は、記憶部106から、セルラーネットワーク用インタフェース110のIPアドレスCoA1とホームエージェント200のIPアドレスHAの組に一致するトンネルの設定を削除する。
これにより、端末100のセルラーネットワーク用インタフェース110が図7に示すようなパケットと同等のパケットを受信した場合、端末100のトンネルデバイスモジュール104は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部106に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
次に、ホームエージェント200がSimultaneous registrationに対応していない場合について図5を用いて説明する。ステップS113が図3に示すステップS102に続くステップとなる。
(ステップS113)Simultaneous registrationに対応していないホームエージェント200が端末100からのトンネルを設定する要求を受け入れることを決定すると、図12に示すようなRegistration Replyメッセージを端末100の無線LAN用インタフェース120へ送信する。
Registration Replyメッセージは、Codeフィールドが1であり、ホームエージェント200がSimultaneous registrationに対応していないことが示されている。Home Addressフィールドは端末100のIPアドレスHoA、Home Agentフィールドはホームエージェント200のIPアドレスHAである。また、送信元ポート番号が434、送信先ポート番号がUPであるUDPヘッダが付与される。
さらに、送信元IPアドレスがホームエージェント200のIPアドレスHA、送信先IPアドレスが端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2であるIPヘッダが付与される。
(ステップS114)ホームエージェント200が、無線LAN用インタフェース120へパケットを転送するように、トンネルの設定を変更する。
(ステップS115)端末100がRegistration Replyメッセージに基づいて、無線LANを介してホームエージェント200から転送されたパケットを無線LAN用インタフェース120で受信するためのトンネルの設定を新たに行う。
端末100の無線LAN用インタフェース120は、受信したRegistration Replyメッセージをネットワークスタック101へ出力する。
ネットワークスタック101は、Registration ReplyメッセージのトランスポートプロトコルヘッダがUDPでありかつ送信先ポート番号がUPであることから、Registration Replyメッセージがモビリティプロトコルモジュール102宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール102へ出力する。
モビリティプロトコルモジュール102は、Registration ReplyメッセージのCodeフィールドが1であることから、ホームエージェント200がRegistration Requestメッセージによりトンネルの変更を受け入れたが、Simultaneous registrationに対応しないため、ステップS114以前に設定されていたトンネルの設定が削除されることを検知する。 また、記憶部106に、無線LAN用インタフェース120のIPアドレスCoA2とホームエージェント200のIPアドレスHAとの組が新たなトンネルの設定として格納される。
(ステップS116)ホームエージェント200は、通信相手機器300から送信先IPアドレスがHoAであるパケットを受信すると、前記パケットに送信先IPアドレスが端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2であるIPヘッダを付与して、無線LAN用インタフェース120のみに転送する。
なお、ホームエージェント200がSimultaneous registrationに対応している場合と異なり、ホームエージェント200は、セルラーネットワーク用インタフェース110へはパケットを転送しない。
端末100は、ホームエージェント200から転送されたパケットをセルラーネットワーク用インタフェース110又は無線LAN用インタフェース120で受信すると、パケット受信処理を行う。ただし、端末100は、ホームエージェント200がSimultaneous registrationに対応している場合と異なり、重複したパケットを受信しないため、端末100のアプリケーションモジュール103とトンネルデバイスモジュール104は重複したパケットの破棄処理を行わない。
(ステップS117)端末100がホームエージェント200へICMP Echo Requestメッセージを送信する。
端末100のモビリティプロトコルモジュール102は、Registration Replyメッセージからホームエージェント200がSimultaneous registrationに対応していないことを検知しており、任意のデータからなるICMP bodyを含むICMP Echo Requestメッセージを生成する。モビリティプロトコルモジュール102は、生成したICMP Echo Requestメッセージをネットワークスタック101へ出力する。
ネットワークスタック101は、受け取ったICMP Echo Requestメッセージに、図13に示すように、送信先IPアドレスがホームエージェント200のIPアドレスHA、送信元IPアドレスが端末のセルラーネットワーク用インタフェース110のIPアドレスCoA1であるIPヘッダを付与する。そして、ネットワークスタックはICMP Echo Requestメッセージをセルラーネットワーク用インタフェース110へ出力する。
セルラーネットワーク用インタフェース110は、受け取ったICMP Echo Requestメッセージをホームエージェント200へ送信する。
端末100は、このICMP Echo Requestメッセージの生成・送信を、トンネルを新たに設定(ステップS115)した直後、ホームエージェント200から転送されてきたパケットの受信処理(ステップS116)と並行して行う。
(ステップS118)ホームエージェント200は、ICMP Echo Requestメッセージを受信すると、図14に示すようなICMP Echo Replyメッセージを端末100のセルラーネットワーク用インタフェース110へ送信する。
(ステップS119)端末100がホームエージェント200から送信されたICMP Echo Replyメッセージの受信後、ハンドオーバ前のトンネルの設定を削除する。
セルラーネットワーク用インタフェース110は受信したICMP Echo Replyメッセージをネットワークスタック101へ出力する。ICMP Echo Replyメッセージは、ホームエージェント200がステップS114以前に端末100のセルラーネットワーク用インタフェース110へ最後に転送したパケットよりも後にホームエージェント200から送信されている。従って、セルラーネットワークにおいてパケットの転送順序が変わらない限り、端末100は前記パケットよりも後にICMP Echo Replyメッセージを受信する。
ネットワークスタック101は、ICMP Echo Replyメッセージをモビリティプロトコルモジュール102へ出力する。
モビリティプロトコルモジュール102は、記憶部106から、セルラーネットワーク用インタフェース110のIPアドレスCoA1とホームエージェント200のIPアドレスHAとの組に一致するトンネルの設定を削除する。
これにより、端末100のセルラーネットワーク用インタフェース110が図7に示すようなパケットと同等のパケットを受信した場合、トンネルデバイスモジュール104は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部106に存在しないことから、前記パケットが不正なパケットであると判断し、破棄できるようになる。
本実施形態に係る端末100は、Sbitを1に指定したRegistration Requestメッセージをホームエージェント200に送信し、ホームエージェント200から受信したRegistration Replyメッセージ中のCodeフィールドを検査することでホームエージェント200がSimultaneous registrationに対応しているか否かを検知する。
そして、ホームエージェント200がSimultaneous registrationに対応している場合は、Registration Requestメッセージをホームエージェント200に送信した後、ハンドオーバ前に使用していたネットワーク経由でRegistration Replyメッセージを受信した時点をハンドオーバ前に使用していたトンネルが削除可能となる時点として検知する。
一方、ホームエージェント200がSimultaneous registrationに対応していない場合は、ICMP Echo Requestメッセージをホームエージェント200へ送信した後、ハンドオーバ前に使用していたネットワーク経由でICMP Echo Replyメッセージを受信した時点をハンドオーバ前に使用していたトンネルが削除可能となる時点として検知する。
このように、ホームエージェント200がSimultaneous registrationに対応しているか否かによらず、端末100は、ハンドオーバ前に使用していたトンネルを経由してホームエージェント200から転送された全てのパケットを受信し終えて前記トンネルが削除可能となる時点を検知することができる。
トンネルが削除可能となる時点を検知して、トンネルを削除することで、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
上記第1の実施形態におけるICMP Echo Requestメッセージの代わりとして、Sbitに0、Lifetimeフィールドに0以外の値、Home Addressフィールドに端末100のIPアドレスHoA、Home Agentフィールドにホームエージェント200のIPアドレスHA、Care-of Addressフィールドに端末100のセルラーネットワーク用インタフェース110に割り当てられたIPアドレスCoA1、UDPヘッダの送信先ポート番号に434、送信元ポート番号にUP、送信元IPアドレスに端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2、送信先IPアドレスにホームエージェント200のIPアドレスHAを指定したRegistration Requestメッセージを端末100が送信してもよい。
この場合、端末100は、前記Registration Requestメッセージに対するRegistration Replyメッセージを受信した後、ハンドオーバ前のトンネルの設定を削除する。
また、ICMP Echo Requestメッセージの代わりに、ホームエージェント200が返信メッセージを送信できるようなメッセージを使用してもよい。
上記の第1の実施形態では、端末100およびホームエージェント200はモビリティプロトコルとしてMobile IPv4を搭載しているが、Mobile IPv4の代わりにMobile IPv6を搭載していてもよい。
端末100およびホームエージェント200が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メッセージなどのメッセージを送信してもよい。
上記の第1の実施形態では、端末100はステップS100、ステップS106、ステップS116においてトンネリングしたパケットをホームエージェント200に送信することで、通信相手機器300にパケットを送信してもよい。
また、上記第1の実施形態では、少なくともステップS102以前に、ホームエージェント200がSimultaneous registrationに対応していないことを端末100が検知するか、もしくは端末100に設定された場合は、ステップS102においてSbitを0に指定したRegistration requestメッセージをホームエージェント200に送信するようにしてもよい。
このRegistration requestメッセージに対して端末100がホームエージェント200から受信したRegistration replyメッセージ中のCodeフィールドが0である場合に、端末100はICMP Echo requestメッセージなどをステップS117において送信し、ICMP Echo replyメッセージなどをステップS118において受信した直後、ステップS119においてハンドオーバ前のトンネルの設定を削除するようにしてもよい。
また、上記第1の実施形態では、端末100はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第1の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第1の実施形態では、端末100のトンネルデバイスモジュール104は、IP-in-IPトンネリングプロトコルの代わりにGREトンネルやその他のトンネリングプロトコルを利用してもよい。
(第2の実施形態)図15に本発明の第2の実施形態に係る通信システムの概略構成を示す。端末400はインターネット上の通信相手機器600と通信を行う。端末400はセルラーネットワーク用インタフェース410を備え、セルラー基地局10を介してセルラーネットワークに接続できる。また、端末400は無線LAN用インタフェース420を備え、無線LAN基地局20を介して無線LANに接続できる。
ホームエージェント500は端末400に移動機能を提供する機器である。ホームエージェント500は、IP-in-IPトンネリングプロトコルを利用して端末400との間にセルラーネットワークまたは無線LAN経由のトンネルを確立し、そのトンネルを利用して通信相手機器600と端末400間の通信パケットを中継する。
上記第1の実施形態と同様に、端末400のセルラーネットワーク用インタフェース410、無線LAN用インタフェース420、ホームエージェント500、通信相手機器600に割り当てられるIPアドレスは、それぞれCoA1、CoA2、HA、CNとする。さらに、端末400にはIPアドレスHoAが割り当てられるとする。
図16に端末400の概略構成を示す。端末400は、ネットワークスタック401、モビリティプロトコルモジュール402、アプリケーションモジュール403、トンネルデバイスモジュール404、ハンドオーバトリガモジュール405、記憶部406、パケット監視モジュール407、セルラーネットワーク用インタフェース410、及び無線LAN用インタフェース420を有する。
ネットワークスタック401は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポート
プロトコルやIPv4、IPv6などのネットワークプロトコル処理を行うものであり、セルラーネットワーク用インタフェース410と無線LAN用インタフェース420から受信した、IP-in-IPプロトコルによりトンネリングされたパケットをパケット監視モジュール407へ出力する。
また、ネットワークスタック401はパケット監視モジュール407から受信したパケットをトンネルデバイスモジュール404へ出力する。
また、ネットワークスタック401は、トンネルデバイスモジュール404から受信したパケットのアプリケーションデータをアプリケーションモジュール403へ出力する。 また、ネットワークスタック401は、セルラーネットワーク用インタフェース410と無線LAN用インタフェースから受信したRegistration ReplyメッセージのIPヘッダ、UDPヘッダ以外のデータ部分をモビリティプロトコルモジュール402へ出力する。
また、ネットワークスタック401は、モビリティプロトコルモジュール402から受信したRegistration RequestメッセージにUDPヘッダとIPヘッダを付与し、セルラーネットワーク用インタフェース410または無線LAN用インタフェース420へ出力する。
モビリティプロトコルモジュール402は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック401へ出力する。また、モビリティプロトコルモジュール402は、ネットワークスタック401からRegistration Replyメッセージを受信して、処理する。
また、モビリティプロトコルモジュール402は、ネットワークスタック401から通知メッセージを受信し、前記通知メッセージに記されたパケットの特徴をパケット監視モジュール407に通知する。
また、モビリティプロトコルモジュール402は、パケット監視モジュール407から前記特徴に該当するパケットを検知したことを示す通知を受信した場合、記憶部406に格納されたハンドオーバ前に使用していたトンネルの設定を削除する。
アプリケーションモジュール403は、ネットワークスタック401から受信したアプリケーションデータを加工または解析する。また、アプリケーションモジュール403はネットワークスタック401へアプリケーションデータを送信する。
トンネルデバイスモジュール404は、ネットワークスタック401からトンネリングされたパケットを受信し、このパケットのIPヘッダを取り除いて、ネットワークスタック401へ出力する。
ハンドオーバトリガモジュール405は、ハンドオーバを開始する契機を決定するモジュールであり、セルラーネットワーク用インタフェース410または無線LAN用インタフェース420からセルラーネットワークや無線LANにおける通信品質に関する情報を取得し、前記情報やその他の情報からハンドオーバを開始する契機を決定し、モビリティモジュール402に通知する。
記憶部406は、トンネルの設定を記憶するものである。記憶部406はまた、パケット監視モジュール407から出力されたパケットの特徴を示すデータを記憶する。
パケット監視モジュール407は、モビリティプロトコルモジュール402から出力されたパケットの特徴を示すデータを記憶部406に格納する。また、パケット監視モジュール407は、ネットワークスタック401から出力されたパケットが、記憶部406に格納されたパケットの特徴に該当するか否かを判定し、該当する場合はモビリティプロトコルモジュール402に通知し、前記パケットをネットワークスタック401へ出力する。
セルラーネットワーク用インタフェース410及び無線LAN用インタフェース420は、上記第1の実施形態におけるセルラーネットワーク用インタフェース410及び無線LAN用インタフェース420と同様であり、説明を省略する。
図17にホームエージェント500の概略構成を示す。ホームエージェント500は、ネットワークスタック501、モビリティプロトコルモジュール502、トンネルデバイスモジュール503、記憶部504、及びネットワークインタフェース510を有する。
ネットワークスタック501は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポートプロトコルやIPv4、IPv6などのネットワークプロトコル処理を行うものであり、ネットワークインタフェース510から受信したパケットをトンネルデバイスモジュール503へ出力する。
また、ネットワークスタック501は、トンネルデバイスモジュール503がIP-in-IPプロトコルでトンネリングしたパケットをネットワークインタフェース510へ出力する。
また、ネットワークスタック501は、ネットワークインタフェース510から出力されたRegistration RequestメッセージのIPヘッダ、UDPヘッダ以外のデータ部分をモビリティプロトコルモジュール502へ出力する。
また、ネットワークスタック501は、モビリティプロトコルモジュール502から出力されたRegistration Replyメッセージ及び通知メッセージに、UDPヘッダ及びIPヘッダを付与して、ネットワークインタフェース510へ出力する。
モビリティプロトコルモジュール502は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック501からRegistration Requestメッセージを受信して処理する。
モビリティプロトコルモジュール502は、Registration Replyメッセージを生成してネットワークスタック501へ出力し、前記Registration Requestメッセージの内容に従ったトンネルの設定を記憶部504に格納する。
また、モビリティプロトコルモジュール502は、トンネルデバイスモジュール503がネットワークスタック501へ出力したパケットにIPヘッダを付与したパケットの内容を、トンネルデバイスモジュール503から取得する。
トンネルデバイスモジュール503は、ネットワークスタック501から出力されたパケットに、記憶部504に格納されたトンネルの設定に従ったIPヘッダを付与してネットワークスタック501へ出力する。
また、トンネルデバイスモジュール503は、ハンドオーバの前に使用していたネットワーク経由で端末400へ転送する最後のパケットの内容をモビリティプロトコルモジュール502へ出力する。
記憶部504は、トンネルの設定を記憶する。
ネットワークインタフェース510は、例えばEthernet(登録商標)等の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック501へ出力する。また、ネットワークインタフェース510は、ネットワークスタック501から出力されたパケットを送信する。
このような通信システムにおけるハンドオーバ時の処理フローを図18を用いて説明する。本実施形態では、使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
(ステップS1800)端末400が、端末400とホームエージェント500との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器600から送信されたパケットを受信している。このとき、端末400の記憶部406には、セルラーネットワーク用インタフェース410のIPアドレスCoA1と、ホームエージェント500のIPアドレスHAとの組が、1つのトンネル設定として記憶されている。
ホームエージェント500がIP-in-IPトンネリングプロトコルを用いて、通信相手機器600から送信されたパケットを端末400へ転送している。
端末400のセルラーネットワーク用インタフェース410がホームエージェント500から転送された、例えば図7に示すようなパケットを受信すると、セルラーネットワーク用インタフェース410はネットワークスタック401へパケットを出力する。
ネットワークスタック401は、パケットの外側IPヘッダの上位ヘッダがIPヘッダであることを検知し、パケットをトンネルデバイスモジュール404へ出力する
トンネルデバイスモジュール404は記憶部406からトンネルの設定を取得し、トンネルの設定に含まれる2つのIPアドレスの組と、外側IPヘッダで指定された送信先IPアドレス及び送信元IPアドレスの組とを比較する。比較結果が一致すると、トンネルデバイスモジュール404はパケットが正常であると判断し、パケットの外側IPヘッダを削除し、ネットワークスタック401へパケットを出力する
端末400のネットワークスタック401はIPヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール403へパケットの中のアプリケーションデータを出力する。
アプリケーションモジュール403は、受信したアプリケーションデータを用いて所定の処理を行う。
また、ホームエージェント500は、通信相手機器600から受信した、送信先IPアドレスがHoAであるパケットをトンネリングしたパケットを、端末400のセルラーネットワーク用インタフェース410へ転送している。
この時、ホームエージェント500の記憶部504には、端末400のIPアドレスHoA、ホームエージェント500のIPアドレスHA、端末400のセルラーネットワーク用インタフェース410のIPアドレスCoA1の3つのIPアドレスの組が、トンネルの設定として格納されている。
ホームエージェント500のネットワークインタフェース510が、通信相手機器600から、図6に示すような送信先IPアドレスがHoAであるパケットを受信すると、ネットワークインタフェース510はこのパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、パケットの送信先IPアドレスがHoAであることから、このパケットがトンネルデバイスモジュール503へ出力すべきパケットであることを検知し、トンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、記憶部504からIPアドレスHoAを含むトンネルの設定を取得する。そして、トンネルデバイスモジュール503は、前記トンネルの設定に含まれる端末400のセルラーネットワーク用インタフェース410のIPアドレスCoA1を送信先IPアドレスに指定し、前記トンネルの設定に含まれるホームエージェント500のIPアドレスHAを送信元IPアドレスとして指定した外側IPヘッダをパケットに付与することで、図7に示すようなパケットを生成する。
そして、トンネルデバイスモジュール503はこのようなパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、トンネルデバイスモジュール503から受け取ったパケットをネットワークインタフェース510へ出力する。ネットワークインタフェース510は、ネットワークスタック501から受け取ったパケットを外部へ送信する。
(ステップS1801)端末400のハンドオーバトリガモジュール405がハンドオーバ(セルラーネットワークから無線LANへの切り替え)を開始することを決定する。
ハンドオーバトリガモジュール405は、常時セルラーネットワーク用インタフェース410または無線LAN用インタフェース420からセルラーネットワークや無線LANにおける通信品質に関する情報を取得している。
そして、ハンドオーバトリガモジュール405は前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティモジュール402に通知する。
なお、ハンドオーバトリガモジュール405がハンドオーバの開始を決定するアルゴリズムはどのようなものであってもよい。一例として、無線LAN基地局20から受信できる電波の強度が十分強くなったことをハンドオーバの契機とする方法がある。
(ステップS1802)Registration Requestメッセージが無線LANを経由して端末400からホームエージェント500へ送信される。
端末400のモビリティモジュール402は、ハンドオーバトリガモジュール405から、ハンドオーバを開始する旨の通知を受けると、Registration Requestメッセージを生成する。
但し、モビリティプロトコルモジュール402は、図19に示すように、Registration RequestメッセージのSbitに0、Lifetimeフィールドに0以外の値、Home Addressフィールドに端末400に割り当てられたIPアドレスHoA、Home Agentフィールドにホームエージェント500のIPアドレスHA、Care-of Addressフィールドに端末400の無線LAN用インタフェース420のIPアドレスCoA2を指定する。
モビリティプロトコルモジュール402は、生成したRegistration Requestメッセージをネットワークスタック401へ出力する。
ネットワークスタック401は、Registration Requestメッセージに送信先ポート番号が434であるUDPヘッダを付与する。なお、ネットワークスタック401がUDPヘッダの送信元ポート番号に指定した値をUPとする。
ネットワークスタック401はまた、Registration Requestメッセージに、送信先IPアドレスがホームエージェント500のIPアドレスHAであり、かつ送信元IPアドレスが端末400の無線LAN用インタフェース420のIPアドレスCoA2であるIPヘッダを付与し、図19に示すようなRegistration Requestメッセージを生成する。
ネットワークスタック401はRegistration Requestメッセージを無線LAN用インタフェース420へ出力する。無線LAN用インタフェース420は、受け取ったRegistration Requestメッセージをホームエージェント500へ送信する。
端末400から送信されたRegistration Requestメッセージは、無線LANを経由してホームエージェント500のネットワークインタフェース510に受信される。ネットワークインタフェース510は、受信したRegistration Requestメッセージをネットワークスタック501へ出力する。
ネットワークスタック501は、Registration RequestメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号が434であることから、Registration Requestメッセージがモビリティプロトコルモジュール502宛であることを検知し、モビリティプロトコルモジュールへ出力する。
モビリティプロトコルモジュールは、Registration Requestメッセージの内容を検査する。
(ステップS1803)ホームエージェント500がRegistration Requestメッセージの内容を受け入れる場合、ホームエージェント500はRegistration Replyメッセージを端末400の無線LAN用インタフェース420へ送信する。
ホームエージェント500のモビリティプロトコルモジュール502は、Registration Replyメッセージを生成する。但し、モビリティプロトコルモジュール502は、図20に示すように、Registration ReplyメッセージのCodeフィールドに0、Home Addressフィールドに端末400に割り当てられたIPアドレスHoA、Home Agentフィールドにホームエージェント500のIPアドレスHAを指定する。
そして、ホームエージェント500のモビリティプロトコルモジュール502は、生成したRegistration Replyメッセージをネットワークスタック501へ出力する。
ネットワークスタック501は、Registration Replyメッセージに、送信元ポート番号が434、送信先ポート番号がUPであるUDPヘッダを付与する。
また、ネットワークスタック501は、Registration Replyメッセージに、送信先IPアドレスが端末400の無線LAN用インタフェース420のIPアドレスCoA2であり、かつ送信元IPアドレスがホームエージェントのIPアドレスHAであるIPヘッダを付与する。
そして、ネットワークスタック501はRegistration Replyメッセージをネットワークインタフェース510へ出力する。ネットワークインタフェース510は、受け取ったRegistration Replyメッセージを端末400の無線LAN用インタフェース420へ送信する。
(ステップS1804)ホームエージェント500がトンネルの設定を変更する。
ホームエージェント500のモビリティプロトコルモジュール502は、Registration RequestメッセージのCare-of Addressフィールドに指定された端末400の無線LAN用インタフェース420のIPアドレスCoA2と、Home Agentフィールドに指定されたホームエージェント500のIPアドレスHAと、Home Addressフィールドに指定された端末400のIPアドレスHoAとの組を、新たなトンネルの設定として記憶部504に格納する。
そして、モビリティプロトコルモジュール502は、記憶部504に格納された、端末400のIPアドレスHoAと、ホームエージェント500のIPアドレスHAと、端末400のセルラーネットワーク用インタフェース410のIPアドレスCoA1の3つのIPアドレスの組で構成されたトンネルの設定を削除する。
(ステップS1805)端末400が、無線LANを介してホームエージェント500から転送されたパケットを無線LAN用インタフェース420で受信するためのトンネルの設定を新たに行う。
端末400の無線LAN用インタフェース420は、受信したRegistration Replyメッセージをネットワークスタック401へ出力する。
ネットワークスタック401は、Registration ReplyメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号がUPであることから、Registration Replyメッセージがモビリティプロトコルモジュール402宛であることを検知し、Registration Replyメッセージをモビリティプロトコルモジュール402へ出力する。
モビリティプロトコルモジュール402は、Registration ReplyメッセージのCodeフィールドが0であることから、ホームエージェント500がRegistration Requestメッセージの内容を受け入れたことを検知する。また、モビリティプロトコルモジュール402は無線LAN用インタフェース420のIPアドレスCoA2とホームエージェント500のIPアドレスHAの組を新たなトンネルの設定として記憶部406に格納する。
(ステップS1806)ホームエージェント500が、無線LANを経由して端末400の無線LAN用インタフェース420へ通知メッセージを送信する。
ホームエージェント500のモビリティプロトコルモジュール502は、ステップS1804以前にホームエージェント500が端末400のセルラーネットワーク用インタフェース410に送信した最後のパケットをトンネルデバイスモジュール503から取得する。そして、モビリティプロトコルモジュール502は通知メッセージを生成する。
通知メッセージには、ステップS1804以前にホームエージェント500が端末400のセルラーネットワーク用インタフェース410に送信した最後のパケットに関するデータが含まれる。
前記データは、例えばパケットのIPヘッダ中のチェックサムフィールドの値であってもよいし、パケット自体であってもよい。
次に、モビリティプロトコルモジュール502は、通知メッセージをネットワークスタック501へ出力する。
ネットワークスタック501は、受け取った通知メッセージに、図21に示すように、送信元ポート番号が434であり、送信先ポート番号がUPであるUDPヘッダを付与する。また、ネットワークスタック501は、送信元IPアドレスがホームエージェント500のIPアドレスHAであり、送信先IPアドレスが端末400の無線LAN用インタフェース420のIPアドレスCoA2であるIPヘッダを付与する。
ネットワークスタック501はこの通知メッセージをネットワークインタフェース510へ出力する。ネットワークインタフェースは受け取った通知メッセージを無線LAN用インタフェース420へ送信する。
なお、図21は、ステップS1804以前にホームエージェント500が端末400のセルラーネットワーク用インタフェース410に送信した最後のパケットに関するデータが、チェックサムフィールドの値である場合の通知メッセージの例を示している。
端末400の無線LAN用インタフェース420は、受信した通知メッセージをネットワークスタック401へ出力する。
ネットワークスタック401は、受け取った通知メッセージの送信先ポート番号がUPであることから、通知メッセージがモビリティプロトコルモジュール402宛であることを検知し、通知メッセージのIPヘッダとUDPヘッダを除くデータをモビリティプロトコルモジュール402へ出力する。
モビリティプロトコルモジュール402は、受け取った前記データに記された、ステップS1804以前にホームエージェント500が端末400のセルラーネットワーク用インタフェース410に送信した最後のパケットの特徴を表すデータを、パケット監視モジュール407へ出力する。例えば、前記データがパケットのIPヘッダの中のチェックサムフィールドの値の場合は、前記チェックサムの値をパケット監視モジュール407へ出力する。
パケット監視モジュール407は、受け取ったデータを記憶部406に格納する。パケット監視モジュール407は、ネットワークスタック401に、これ以降受信する全てのパケットをパケット監視モジュール407へ出力するよう通知する。
(ステップS1807)ホームエージェント500は、通信相手機器600から送信された送信先IPアドレスがHoAであるパケットを受信すると、端末400の無線LAN用インタフェース420へ転送する。
ホームエージェント500のネットワークインタフェース510が、通信相手機器600から、図6に示すような送信先IPアドレスがHoAであるパケットを受信すると、ネットワークインタフェース510はこのパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、パケットの送信先IPアドレスがHoAであることから、パケットがトンネルデバイスモジュール503に渡すべきパケットであることを検知し、このパケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は記憶部504からIPアドレスHoAを含むトンネルの設定を取得する。記憶部504に記憶されている、IPアドレスHoAを含むトンネルの設定は、IPアドレスHoAと、端末400の無線LAN用インタフェース420のIPアドレスCoA2と、ホームエージェント500のIPアドレスHAで構成される設定である。
従って、トンネルデバイスモジュール503は、送信先IPアドレスをCoA2に指定し、送信元IPアドレスをHAに指定した外側IPヘッダをパケットに付与し、図10に示すようなパケットを生成する。
トンネルデバイスモジュール503はこのようなパケットをネットワークスタック501へ出力し、ネットワークスタック501は受け取ったパケットをネットワークインタフェース510へ出力する。ネットワークインタフェース510は、受け取ったパケットを無線LAN用インタフェース420へ送信する。
端末400は、ホームエージェント500が無線LAN用インタフェース420へ転送したパケット、及び、ホームエージェント500がステップS1804以前にセルラーネットワーク用インタフェース410へ転送したパケットを受信する。
端末400のセルラーネットワーク用インタフェース410がホームエージェント500から転送されたパケットを受信すると、セルラーネットワーク用インタフェース410はネットワークスタック401へこのパケットを出力する。
ネットワークスタック401は、受け取ったパケットをパケット監視モジュール407へ出力する。
そして、パケット監視モジュール407は、記憶部406に格納された、ホームエージェント500がステップS1804以前にセルラーネットワーク用インタフェース410へ最後に転送したパケットの特徴(例えばIPヘッダ内のチェックサムフィールドの値)と、ネットワークスタック401から受け取ったパケットの特徴とを比較する。
比較後、パケット監視モジュール407はこのパケットをネットワークスタック401へ出力する。
ネットワークスタック401は、パケットの外側IPヘッダの上位ヘッダがIPヘッダであることを検知し、パケットをトンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は記憶部406からトンネルの設定を取得し、トンネルの設定に含まれる2つのIPアドレスの組と、IPヘッダで指定された送信先IPアドレス及び送信元IPアドレスの組とを比較する。
IPアドレスの組の比較結果が一致すると、トンネルデバイスモジュール404はパケットが正常なパケットであると判断し、パケットの外側IPヘッダを削除し、ネットワークスタック401へパケットを出力する。
端末400のネットワークスタック401は、IPヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール403にパケットの中のアプリケーションデータを出力する。
アプリケーションモジュール403は、受け取ったアプリケーションデータを用いて、所定の処理を行う。
(ステップS1808)記憶部406に格納された、ホームエージェント500がステップS1804以前にセルラーネットワーク用インタフェース410へ最後に転送したパケットの特徴と、パケット監視モジュール407がネットワークスタック401から受け取ったパケットの特徴とが一致する場合、パケット監視モジュール407はモビリティプロトコルモジュール402へ一致したことを通知する。
(ステップS1809)モビリティプロトコルモジュール402が、パケット監視モジュール407から受け取った通知に基づいて、記憶部406から、セルラーネットワーク用インタフェース410のIPアドレスCoA1とホームエージェント500のIPアドレスHAの組に一致するトンネルの設定(ハンドオーバ前のトンネル設定)を削除する。
これにより、端末400のセルラーネットワーク用インタフェース410が図7に示すようなパケットを受信した場合、端末400のトンネルデバイスモジュール404は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部406に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
このように、本実施形態では、ホームエージェントが、ハンドオーバ処理前に端末へ転送した最後のトンネリングされたパケットの内容を示す通知メッセージを、ハンドオーバ後に使用するネットワーク経由で、ハンドオーバ直後に送信している。また、端末は、前記通知メッセージを受信し、前記通知メッセージが示すパケットの内容に該当するパケットを、ハンドオーバ前に使用していたネットワーク経由で受信した時点をハンドオーバ前に使用していたトンネルを削除可能となる時点として検知する。
そのため、ハンドオーバ前に端末が使用していたネットワーク上でパケットロスが発生する可能性があっても、端末が、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えて前記トンネルを削除可能となる時点を検知可能となる。
トンネルを削除可能となる時点を検知して、トンネルを削除することで、パケットロスを起こさずに、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
上記第2の実施形態では、端末およびホームエージェントはモビリティプロトコルとして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メッセージなどのメッセージを送信してもよい。
上記第2の実施形態では、端末はステップS1800、ステップS1807、ステップS1808においてトンネリングしたパケットをホームエージェント500に送信することで、通信相手機器300にパケットを送信してもよい。
また、上記第2の実施形態では、端末はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第2の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第2の実施形態では、端末のトンネルデバイスモジュール404は、IP-in-IPトンネリングプロトコルの代わりにGREトンネルやその他のトンネリングプロトコルを利用してもよい。
また、上記第2の実施形態では、端末およびホームエージェントはIP-in-IPトンネリングプロトコルの代わりにGREトンネルやESP、AHといったシーケンスナンバーフィールドをプロトコルヘッダにもつプロトコルを利用し、かつIPヘッダのチェックサムフィールドの値の代わりに前記シーケンスナンバーフィールドの値を利用してもよく、さらに端末は前記シーケンスナンバーフィールドの値よりも小さい値のシーケンスナンバーフィールド値をもつパケットを全て受信した時点をハンドオーバ前に使用していたトンネルを削除可能となる時点として検知してもよい。
この場合、端末は、ハンドオーバ前に使用していたネットワーク上で、パケットの転送順が入れ替わっても、端末がハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えて前記トンネルを削除可能となる時点を検知可能となる。
また、上記第2の実施形態においては、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。モビリティプロトコルがMobile IPv4でない場合は、Mobile IPv4のRegistration RequestおよびRegistration Replyの代わりにMobile IPv6やMOBIKEの仕様、その他のモビリティプロトコルの仕様に規定されている、ハンドオーバに必要なメッセージを端末とホームエージェントが送受信する。
(第3の実施形態)本発明の第3の実施形態に係る通信システムは図15に示す上記第2の実施形態に係る通信システムと同様であるため、説明を省略する。
また、本実施形態に係る端末は図16に示す上記第2の実施形態に係る端末と同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール402、トンネルデバイスモジュール404、パケット監視モジュール407に搭載される機能は上記第2の実施形態と異なる。
本実施形態に係る端末400のモビリティプロトコルモジュール402は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック401へ出力する。
また、モビリティプロトコルモジュール402は、ネットワークスタック401からRegistration Replyメッセージを受信して処理する。
また、モビリティプロトコルモジュール402は、ハンドオーバ直後に使用するネットワーク経由でホームエージェント500から転送された最初のパケットのヘッダに指定されたシーケンスナンバーを監視モジュール407から受信する。
モビリティプロトコルモジュール402はまた、前記シーケンスナンバーから1を引いた値、およびハンドオーバ前に使用していたネットワークに対応するインタフェースのIPアドレスをパケット監視モジュール407へ出力する。
モビリティプロトコルモジュール402はまた、パケット監視モジュール407から通知を受けたときに記憶部406に格納されたハンドオーバ前に使用していたトンネルの設定を削除する。
トンネルデバイスモジュール404は、GREなどの、シーケンスナンバーをプロトコルヘッダに指定可能なトンネリングプロトコルを用いて、ネットワークスタック401から受け取ったトンネリングされたパケットのトンネリングプロトコルのヘッダとIPヘッダを取り除いてネットワークスタック401へ出力する。
パケット監視モジュール407は、モビリティプロトコルモジュール402から受け取ったシーケンスナンバーを記憶部406に格納する。また、パケット監視モジュール407は、ネットワークスタック401から受け取った、トンネリングされたパケットが記憶部406に格納されたシーケンスナンバーに一致するか否かを判定し、一致する場合はモビリティプロトコルモジュール402に通知する。
また、パケット監視モジュール407は、前記判定の後、前記パケットをネットワークスタック401へ出力する。
本実施形態に係るホームエージェントは図17に示す上記第2の実施形態に係るホームエージェントと同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール502およびトンネルデバイスモジュール503に搭載される機能は上記第2の実施形態と異なる。
モビリティプロトコルモジュール502は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック501からRegistration Requestメッセージを受信して処理する。
モビリティプロトコルモジュール502は、Registration Replyメッセージを生成して、ネットワークスタック501へ出力する。またモビリティプロトコルモジュール502は、前記Registration Requestメッセージの内容に従ったトンネルの設定を記憶部504に格納する。
モビリティプロトコルモジュール502は、トンネルデバイスモジュール503がネットワークスタック501から受け取ってIPヘッダを付与したパケットの内容を、トンネルデバイスモジュール503から取得する機能を搭載しなくてもよい。
トンネルデバイスモジュール503は、ネットワークスタック501から受け取ったパケットに、記憶部504に格納されたトンネルの設定に従ったIPヘッダを付与し、ネットワークスタック501へ出力する。
トンネルデバイスモジュール503は、ハンドオーバの前に使用していたネットワーク経由で端末400へ転送する最後のパケットの内容をモビリティプロトコルモジュール502へ出力する機能を搭載しなくてもよい。
このような通信システムにおけるハンドオーバ時の処理フローを図22を用いて説明する。本実施形態では、使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
(ステップS2200)端末400が、端末400とホームエージェント500との間に確立されたセルラーネットワーク経由のトンネルを用いて、通信相手機器600から送信されたパケットを受信している。
このとき、端末400の記憶部406には、セルラーネットワーク用インタフェース410のIPアドレスCoA1と、ホームエージェント500のIPアドレスHAとの組が、1つのトンネル設定として記憶されている。
ホームエージェント500は、通信相手機器600から受信した、送信先IPアドレスがHoAであるパケットをトンネリングしたパケットを、端末400のセルラーネットワーク用インタフェース410へ転送している。
つまり、ホームエージェント500のネットワークインタフェース510が、通信相手機器600から、図6に示すような送信先IPアドレスがHoAであるパケットを受信すると、ネットワークインタフェース510はこのパケットをネットワークスタック501へ出力する。
ネットワークスタック501は受け取ったパケットの送信先IPアドレスがHoAであることから、パケットがトンネルデバイスモジュール503宛であることを検知し、このパケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は記憶部504からIPアドレスHoAを含むトンネルの設定を取得する。そして、トンネルデバイスモジュール503は、Protocol typeフィールドが0800であるGREヘッダをパケットに付与する。
但し、GREヘッダのシーケンスナンバーフィールドには、直前にトンネリングし転送した、端末400宛のパケットのGREヘッダ中のシーケンスナンバーフィールドの値に1を足した値を指定する。
前記直前に転送したパケット中のシーケンスナンバーフィールドの値が16進数で0xffffffffである場合は、GREヘッダのシーケンスナンバーフィールドを1に指定する。
前記トンネルの設定に含まれる端末のセルラーネットワーク用インタフェース410のIPアドレスCoA1を送信先IPアドレスに指定し、前記トンネルの設定に含まれるホームエージェント500のIPアドレスHAを送信元IPアドレスとして指定した外側IPヘッダをパケットに付与することで、例えば図23に示すようなパケットを生成する。
トンネルデバイスモジュール503はこのパケットをネットワークスタック501へ出力し、ネットワークスタック501は、受け取ったパケットをネットワークインタフェース501へ出力する。
ネットワークインタフェース510は、受け取ったパケットをセルラーネットワーク用インタフェース410へ送信する。
端末400のセルラーネットワーク用インタフェース410がホームエージェント500から転送された、図23に示すようなパケットを受信すると、セルラーネットワーク用インタフェース410はネットワークスタック401へパケットを出力する。
ネットワークスタック401は、パケットの外側IPヘッダの上位ヘッダがGREヘッダであることを検知し、パケットをトンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は記憶部406からトンネルの設定を取得し、トンネルの設定に含まれる2つのIPアドレスの組と、外側IPヘッダに指定された送信先IPアドレス及び送信元IPアドレスの組とを比較する。
前記比較の結果が一致すると、トンネルデバイスモジュール404はパケットが正常なパケットであると判断し、パケットの外側IPヘッダ及びGREヘッダを削除し、ネットワークスタック401へ出力する。
端末400のネットワークスタック401はIPヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行ったあと、アプリケーションモジュール403へパケットの中のアプリケーションデータを出力する。
アプリケーションモジュール403は受け取ったアプリケーションデータを用いて、所定の処理を行う。
ステップS2201〜ステップS2204は、上記第2の実施形態におけるステップS1801〜ステップS1804と同様であるため、説明を省略する。但し、モビリティプロトコルモジュール402がRegistration RequestメッセージのSbitに1を指定する点が異なる。
(ステップS2205)端末400は、上記第2の実施形態におけるステップS1805と同様の処理を行うことで、新たなトンネルの設定を記憶部406に格納する。
さらに、端末400のモビリティプロトコルモジュール402は、パケット監視モジュール407に対し、GREプロトコルによりトンネリングされ、かつ外側IPヘッダの送信先IPアドレスが無線LAN用インタフェース420のIPアドレスCoA2である最初のパケットを検知したときにモビリティプロトコルモジュール402へ通知するよう、通知する。
(ステップS2206)ホームエージェント500は、通信相手機器600から送信先IPアドレスがHoAであるパケットを受信すると、以下の処理でトンネリングし端末400の無線LAN用インタフェース420へ転送する。
ホームエージェント500のネットワークインタフェース510が、通信相手機器600から、図6に示すような送信先IPアドレスがHoAであるパケットを受信すると、ネットワークインタフェース510はこのパケットをネットワークスタック501へ出力する。
ネットワークスタック501はパケットの送信先IPアドレスがHoAであることから、トンネルデバイスモジュール503へ出力すべきパケットであることを検知し、このパケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、記憶部504からIPアドレスHoAを含むトンネルの設定を取得する。記憶部504には、IPアドレスHoAを含むトンネルの設定は、IPアドレスHoAと、端末400の無線LAN用インタフェースのIPアドレスCoA2と、ホームエージェント500のIPアドレスHAで構成される設定である。
トンネルデバイスモジュール503は、Protocol typeが0800であるGREヘッダを付与する。但し、GREヘッダのシーケンスナンバーフィールドには、直前にトンネリングして転送した、端末400宛のパケットのGREヘッダ中のシーケンスナンバーフィールドの値に1を足した値を指定する。
前記直前に転送したパケット中のシーケンスナンバーフィールドの値が16進数で0xffffffffである場合は、GREヘッダのシーケンスナンバーフィールドを1に指定する。
そしてトンネルデバイスモジュール503は、記憶部504から取得したトンネルの設定に従い、送信先IPアドレスにCoA2、送信元IPアドレスにHAを指定したIPヘッダをパケットに付与することで、図24に示すようなパケットを生成する。
トンネルデバイスモジュール503はこのパケットをネットワークスタック501へ出力し、ネットワークスタック501は、受け取ったパケットをネットワークインタフェース510へ出力する。
ネットワークインタフェース510は、受け取ったパケットを端末400の無線LAN用インタフェース420へ送信する。
端末400の無線LAN用インタフェース420がホームエージェント500から転送された初めてのパケットを受信すると、無線LAN用インタフェース420はネットワークスタック410へパケットを出力する。
次に、ネットワークスタック401は、パケットをパケット監視モジュール407へ出力する。
パケット監視モジュール407は、パケットがGREでトンネリングされており、かつ外側IPヘッダの送信先IPアドレスがステップS2205においてモビリティプロトコルモジュール402から通知されたIPアドレスCoA2であるか否かを判定する。
パケットの外側IPヘッダの送信元IPアドレスはCoA2であるため、前記判定の結果は真になる。そのためパケット監視モジュール407は、パケットのGREヘッダに指定されたシーケンスナンバーの値をモビリティプロトコルモジュール402に通知し、パケットをネットワークスタック401へ出力する。
次に、ネットワークスタック401はパケットの外側IPヘッダの上位ヘッダがGREヘッダであることを検知し、パケットをトンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は記憶部406からトンネルの設定を取得し、トンネルの設定に含まれる2つのIPアドレスの組と、IPヘッダに指定された送信先IPアドレス、送信元IPアドレスの組とを比較する。
前記比較の結果が一致することから、トンネルデバイスモジュール404はパケットが正常なパケットであると判断し、パケットの外側IPヘッダおよびGREヘッダを削除したパケットをネットワークスタック401へ出力する。
次に、ネットワークスタック401は前記パケットのIPヘッダの上位ヘッダがトランスポートプロトコルヘッダであることを検知し、トランスポートプロトコルの仕様に沿った受信処理を行った後、アプリケーションモジュール403へパケットの中のアプリケーションデータを出力する。
アプリケーションモジュール403は受け取ったアプリケーションデータを用いて所定の処理を行う。
また、端末400のセルラーネットワーク用インタフェース410がホームエージェント500から転送された、例えば図23に示すようなパケットを受信すると、セルラーネットワーク用インタフェース410はネットワークスタック401へパケットを出力する。
ネットワークスタック401は、このパケットをパケット監視モジュール407へ出力する。
パケット監視モジュールは、パケットがGREでトンネリングされており、かつ外側IPヘッダの送信先IPアドレスがステップS2205においてモビリティプロトコルモジュール402から通知されたIPアドレスCoA2であるか否かを判定する。
パケットの外側IPヘッダの送信元IPアドレスはCoA1であるため、前記判定の結果は偽になる。そのためパケット監視モジュール407はパケットをネットワークスタック401へ出力する。
以降の動作は、上述した無線LAN用インタフェース420がホームエージェント500から転送されたパケットを受信した場合と同様であるので、説明を省略する。
(ステップS2207)ステップS2206において、端末400のモビリティプロトコルモジュール402がパケット監視モジュール407からシーケンスナンバーを通知されると、端末400は以下の処理を行う。
モビリティプロトコルモジュール402は、無線LAN用インタフェース420で受信したパケットの監視を停止するよう、パケット監視モジュール407に通知する。
次に、モビリティプロトコルモジュール402は、パケット監視モジュール407から通知されたシーケンスナンバーから1を引いた値と、セルラーネットワーク用インタフェース410のIPアドレスをパケット監視モジュール407に与える。
但し、パケット監視モジュール407から通知されたシーケンスナンバーが1である場合は、16進数で0xffffffffをシーケンスナンバーとしてパケット監視モジュール407に与える。
これにより、パケット監視モジュール407は、セルラーネットワーク用インタフェース410で受信した全てのパケットを監視する。
(ステップS2208)ステップS2204以前にホームエージェント500から端末400のセルラーネットワーク用インタフェース410へ送信された最後のパケットが受信される。
端末400のセルラーネットワーク用インタフェース410は受信したパケットをネットワークスタック401へ出力する。
ネットワークスタック401は、このパケットをパケット監視モジュール407へ出力する。
次に、パケット監視モジュール407は、モビリティプロトコルモジュール402から通知されたシーケンスナンバーの値をGREヘッダ内のシーケンスナンバーと比較する。このパケットは、ステップS2204以前にホームエージェント500から端末400のセルラーネットワーク用インタフェース410へ送信された最後のパケットであるため、前記比較の結果は真になる。
そして、パケット監視モジュール407は、前記比較の結果は真になったことをモビリティプロトコルモジュール402に通知する。
次に、パケット監視モジュール407はパケットをネットワークスタック401へ出力する。ネットワークスタック401はパケットの外側IPヘッダの上位ヘッダがGREヘッダであることを検知し、このパケットをトンネルデバイスモジュール404へ出力する。 以降の処理は、ステップS2206におけるトンネルモジュールデバイス404、ネットワークスタック401、アプリケーションモジュール403の処理と同じであるため、説明を省略する。
なお、ステップS2207からステップS2208までの間に、パケット監視モジュール407が保持するシーケンスナンバーと一致しないシーケンスナンバーがGREヘッダ内に指定されたパケットをセルラーネットワーク用インタフェース410が受信した場合の処理は、パケット監視モジュール407がモビリティプロトコルモジュール402への通知を行わないこと以外は、ステップS2208において端末400が行う処理と同じである。
(ステップS2209)端末400のモビリティプロトコルモジュール402がパケット監視モジュール407から通知を受けると、モビリティプロトコルモジュール402は記憶部406から、セルラーネットワーク用インタフェース410のIPアドレスCoA1とホームエージェント500のIPアドレスHAの組に一致するトンネルの設定を削除する。
これにより、端末400のセルラーネットワーク用インタフェース410が図23に示すようなパケットを受信した場合、端末400のトンネルデバイスモジュール404は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部406に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
このように、本実施形態では、ホームエージェントは、トンネリングプロトコルとしてシーケンスナンバーをトンネルのヘッダに記すプロトコルを使用して通信相手機器から受信したパケットを端末に転送する。
また、端末は、ハンドオーバ後に端末が利用するネットワーク経由でホームエージェントから受信した最初のパケットの内容から、このパケットの直前に、端末がハンドオーバ前に利用していたネットワーク経由でホームエージェントが転送したパケットの特徴を予測し、記憶する。
そして、端末がハンドオーバ前に利用していたネットワーク経由でホームエージェントから受信したパケットが前記記憶しておいたパケットの特徴に一致した時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知する。
従って、特別なメッセージを端末とホームエージェントが送受信しなくても、端末が、ハンドオーバ前に使用していたトンネルを経由してホームエージェントから転送された全てのパケットを受信し終えた時点で、即時に前記トンネルを削除可能となる。
トンネルを削除可能となる時点を検知して、トンネルを削除することで、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースに供給される電源を速やかに切ることができるため、消費電力を低減できる。
また、ホームエージェントから転送されたパケットを、ハンドオーバ前に使用していたネットワークに対応する端末のインタフェースで受信する設定を保持するためのメモリリソースを速やかに解放することができるため、メモリリソースを有効利用できる。
端末400はステップS2200、ステップS2206、ステップS2208においてトンネリングしたパケットをホームエージェント500に送信することで、通信相手機器600にパケットを送信してもよい。
また、上記第3の実施形態では、端末はハンドオーバ前のトンネルの設定を削除後、もしくは削除する直前にハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第3の実施形態では、端末はハンドオーバ前のトンネルの設定を削除する代わりに、ハンドオーバ前に使用していたネットワークインタフェースの動作を停止させるか電源供給を止めてもよい。
また、上記第3の実施形態では、端末のトンネルデバイスモジュールは、GREプロトコルの代わりにシーケンスナンバーをプロトコルヘッダに記載可能な例えばESPやAHといったトンネリングプロトコルを利用してもよい。
また、上記第3の実施形態では、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。
モビリティプロトコルがMobile IPv4でない場合は、Mobile IPv4のRegistration RequestおよびRegistration Replyの代わりにMobile IPv6やMOBIKEの仕様、その他のモビリティプロトコルの仕様に規定されている、ハンドオーバに必要なメッセージを端末とホームエージェントが送受信する。
なお、上記第1〜第3の全ての実施形態においては、セルラーネットワーク用インタフェースおよび無線LAN用インタフェースは、例えば有線のEthernetに対応したインタフェースでも、802.16、802.16eに対応したインタフェースでも、Bluetoothや赤外線通信に対応したインタフェースであってもよい。
また、上記第1の実施形態においては、セルラーネットワーク用インタフェースおよび無線LAN用インタフェースの代わりに、異なるアクセスネットワークに接続される、同一プロトコルに対応した複数のネットワークインタフェースを搭載している端末であってもよい。
さらに、上記第1〜第3の全ての実施形態においては、端末は、2つ以上のネットワークインタフェースを搭載していてもよく、端末に搭載されたネットワークインタフェースのうち、2つのネットワークインタフェースを用いて、通信相手機器との通信に使用するネットワークを切替えるために本発明を適用可能である。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明の第1の実施形態に係る通信システムの概略構成図である。 同第1の実施形態に係る通信システムにおける端末の概略構成図である。 同第1の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。 同第1の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。 同第1の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。 同第1の実施形態に係る通信システムにおける通信相手機器からの送信パケットの構成例を示す図である。 同第1の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。 Registration Requestメッセージの構成例を示す図である。 Registration Replyメッセージの構成例を示す図である。 同第1の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。 Registration Requestメッセージの構成例を示す図である。 Registration Replyメッセージの構成例を示す図である。 ICMP Echo Requestメッセージの構成例を示す図である。 ICMP Echo Replyメッセージの構成例を示す図である。 本発明の第2の実施形態に係る通信システムの概略構成図である。 同第2の実施形態に係る通信システムにおける端末の概略構成図である。 同第2の実施形態に係る通信システムにおけるホームエージェントの概略構成図である。 同第2の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。 Registration Requestメッセージの構成例を示す図である。 Registration Replyメッセージの構成例を示す図である。 通知メッセージの構成例を示す図である。 本発明の第3の実施形態に係る通信システムにおけるハンドオーバ時の処理フロー図である。 同第3の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。 同第3の実施形態に係る通信システムにおけるホームエージェントが転送するパケットの構成例を示す図である。
符号の説明
10 セルラー基地局
20 無線LAN基地局
100 端末
110 セルラーネットワーク用インタフェース
120 無線LAN用インタフェース
200 ホームエージェント
300 通信相手機器

Claims (17)

  1. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、
    前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する第1の応答メッセージを取得し、前記第1の応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1の応答メッセージに基づいて前記第1のネットワークを介して送信される応答要求メッセージを作成して前記第1のインタフェースへ与え、前記第1のインタフェースから前記応答要求メッセージに対応する第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    を備える移動端末。
  2. 前記モビリティプロトコルモジュールは、
    前記ハンドオーバ要求メッセージとしてSビットを1に指定したIPv4のRegistration Requestメッセージを作成し、
    前記第1の応答メッセージとしてCodeフィールドが0であるIPv4のRegistration Replyメッセージを取得した場合は、前記応答要求メッセージとしてIPv4のRegistration Requestメッセージを作成し、
    前記第1の応答メッセージとしてCodeフィールドが1であるIPv4のRegistration Replyメッセージを取得した場合は、前記応答要求メッセージとしてICMP Echo Requestメッセージを作成することを特徴とする請求項1に記載の移動端末。
  3. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、
    前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記されたメッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    を備える移動端末。
  4. 前記パケット情報は、前記第1のインタフェースが受信する最後のパケットのIPヘッダ中のチェックサムフィールドの値であることを特徴とする請求項3に記載の移動端末。
  5. 前記第1のインタフェースにより受信されるパケットが前記パケット情報に適合するか否か監視し、受信パケットが前記パケット情報に適合する場合に前記モビリティプロトコルモジュールへ通知するパケット監視モジュールをさらに備え、
    前記モビリティプロトコルモジュールは前記通知に基づいて前記第1のネットワークの使用を停止させることを特徴とする請求項3又は4に記載の移動端末。
  6. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末であって、
    前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記第1のインタフェースが受信したパケットに記されたシーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第2のインタフェースが最初に受信したパケットに記されたシーケンス番号から1を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    を備える移動端末。
  7. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
    前記移動端末は、
    前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する第1の応答メッセージを取得し、前記第1の応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1の応答メッセージに基づいて前記第1のネットワークを介して送信される応答要求メッセージを作成して前記第1のインタフェースへ与え、前記第1のインタフェースから前記応答要求メッセージに対応する第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    を有し、
    前記ホームエージェントは、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記第1の応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信し、前記第1のネットワークを介して受信した前記応答要求メッセージに基づいて前記第2の応答メッセージを作成し、前記第1のネットワークを介して前記第1のインタフェースへ送信することを特徴とする通信システム。
  8. 前記ホームエージェントは前記第1の応答メッセージの作成前は前記第1のネットワークを介して前記第1のインタフェースへパケットを転送し、前記第1の応答メッセージの作成後は前記第2のネットワークを介して前記第2のインタフェースへパケットを転送することを特徴とする請求項7に記載の通信システム。
  9. 前記モビリティプロトコルモジュールは、前記ハンドオーバ要求メッセージとしてSビットを1に指定したIPv4のRegistration Requestメッセージを作成し、
    前記ホームエージェントは、Simultaneous Registrationに対応している場合は前記第1の応答メッセージとしてCodeフィールドが0であるIPv4のRegistration Replyメッセージを作成し、Simultaneous Registrationに対応していない場合は前記第1の応答メッセージとしてCodeフィールドが1であるIPv4のRegistration Replyメッセージを作成することを特徴とする請求項7又は8に記載の通信システム。
  10. 前記モビリティプロトコルモジュールは、前記ホームエージェントが作成した前記Registration ReplyメッセージのCodeフィールドが0であった場合は、前記応答要求メッセージとしてIPv4のRegistration Requestメッセージを作成し、Codeフィールドが1であった場合は、前記応答要求メッセージとしてICMP Echo Requestメッセージを作成することを特徴とする請求項9に記載の通信システム。
  11. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
    前記移動端末は、
    前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージ及びパケット情報が記された通知メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    を有し、
    前記ホームエージェントは、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信すると共に、前記移動端末とのパケット送受信に使用するネットワークを前記第1のネットワークから前記第2のネットワークへ変更し、前記通知メッセージを作成して、前記第2のネットワークを介して前記第2のインタフェースへ送信することを特徴とする通信システム。
  12. 前記ホームエージェントは、前記第1のネットワークを使用して前記移動端末へ送信した最後のパケットのIPヘッダ中のチェックサムフィールドの値を前記パケット情報として前記通知メッセージに記すことを特徴とする請求項11に記載の通信システム。
  13. 第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末と前記移動端末へのパケットの転送を行うホームエージェントとを備える通信システムであって、
    前記移動端末は、
    前記第1のネットワークを介してデータの送受信を行う第1のインタフェースと、
    前記第2のネットワークを介してデータの送受信を行う第2のインタフェースと、
    前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、
    前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第2のインタフェースで受信したパケットに付されたシーケンス番号に基づく番号を出力し、通知の受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、
    前記第1のインタフェースで受信したパケットに付されたシーケンス番号と、前記モビリティプロトコルモジュールから出力された番号とを比較し、比較結果が一致した場合に前記モビリティプロトコルモジュールへ前記通知を出力するパケット監視モジュールと、
    を有し、
    前記ホームエージェントは、前記移動端末へ転送するパケットに対して転送順に連続するシーケンス番号を付加し、前記第2のネットワークを介して受信した前記ハンドオーバ要求メッセージに基づいて前記応答メッセージを作成し、前記第2のネットワークを介して前記第2のインタフェースへ送信すると共に、前記移動端末へのパケット転送に使用するネットワークを前記第1のネットワークから前記第2のネットワークへ変更することを特徴とする通信システム。
  14. 前記モビリティプロトコルモジュールは前記第2のインタフェースで最初に受信したパケットに付されたシーケンス番号から1を減じた番号を前記パケット監視モジュールへ出力することを特徴とする請求項13に記載の通信システム。
  15. 第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
    前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、
    前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
    前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて第1の応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記第2のネットワークを使用したパケット送受信を開始し、
    前記移動端末が、前記第1の応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記第1のネットワークを使用して前記ホームエージェントへ応答要求メッセージを送信し、
    前記ホームエージェントが、前記応答要求メッセージに基づいて第2の応答メッセージを作成して、前記第1のネットワークを使用して前記移動端末へ送信し、
    前記移動端末が、前記第2の応答メッセージの受信に伴い、前記第1のネットワークの使用を停止することを特徴とする通信方法。
  16. 第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
    前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、
    前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
    前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替え、前記第1のネットワークを使用して前記移動端末へ送信した最後のパケットのパケット情報が記された通知メッセージを前記第2のネットワークを使用して前記移動端末へ送信し、
    前記移動端末が、前記応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始して前記通知メッセージを受信し、前記第1のネットワークを使用した前記パケット情報に適合するパケットの受信に伴い、前記第1のネットワークの使用を停止することを特徴とする通信方法。
  17. 第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、
    前記ホームエージェントが送信順に連続するシーケンス番号をパケットに付加して、前記パケットを前記第1のネットワークを使用して前記移動端末へ送信し、
    前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、
    前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成して、前記第2のネットワークを使用して前記移動端末へ送信し、前記応答メッセージの送信に伴い使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替え、前記第2のネットワークを使用して前記移動端末へ前記パケットを送信し、
    前記移動端末が、前記応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記第2のネットワークを使用して最初に受信したパケットに付加されたシーケンス番号から1を減じた番号と、前記第1のネットワークを使用して受信したパケットに付加されたシーケンス番号とを比較し、比較結果の一致に伴い、前記第1のネットワークの使用を停止することを特徴とする通信方法。
JP2008215404A 2008-08-25 2008-08-25 移動端末、通信システム、及び通信方法 Expired - Fee Related JP4945529B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008215404A JP4945529B2 (ja) 2008-08-25 2008-08-25 移動端末、通信システム、及び通信方法
US12/546,870 US8355381B2 (en) 2008-08-25 2009-08-25 Mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008215404A JP4945529B2 (ja) 2008-08-25 2008-08-25 移動端末、通信システム、及び通信方法

Publications (2)

Publication Number Publication Date
JP2010050892A true JP2010050892A (ja) 2010-03-04
JP4945529B2 JP4945529B2 (ja) 2012-06-06

Family

ID=41696315

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008215404A Expired - Fee Related JP4945529B2 (ja) 2008-08-25 2008-08-25 移動端末、通信システム、及び通信方法

Country Status (2)

Country Link
US (1) US8355381B2 (ja)
JP (1) JP4945529B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101501964B1 (ko) * 2010-12-01 2015-03-12 후아웨이 테크놀러지 컴퍼니 리미티드 터널 방향전환 방법 및 상호연동 기능 엔티티

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012203231A1 (de) * 2012-03-01 2013-09-05 Continental Automotive Gmbh Verfahren zur Mobilfunkkommunikation und Kommunikationsgerät
US10630507B2 (en) * 2016-11-29 2020-04-21 Ale International System for and method of establishing a connection between a first electronic device and a second electronic device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003153327A (ja) * 2001-11-12 2003-05-23 Matsushita Electric Ind Co Ltd 無線通信システム及びそれに用いられるハンドオーバを実施する方法及び無線通信端末
WO2007045280A1 (en) * 2005-10-17 2007-04-26 Telefonaktiebolaget Lm Ericsson (Publ.) Method for performing handoff in a packet-switched cellular communications system
JP2007116690A (ja) * 2005-10-17 2007-05-10 Hitachi Ltd モバイルネットワーク通信における切換の方法と装置
JP2008530942A (ja) * 2005-02-18 2008-08-07 エルジー エレクトロニクス インコーポレイティド マルチモード移動端末のハンドオーバー遂行後におけるリンク解除方法及び移動端末

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7245917B2 (en) * 2003-09-08 2007-07-17 Research Foundation Of The State University Of New York System and method for IP handoff
JP2005244590A (ja) 2004-02-26 2005-09-08 Samsung Yokohama Research Institute Co Ltd マルチサービス端末、ハンドオフ方法、ハンドオフプログラム
WO2006025677A1 (en) * 2004-08-30 2006-03-09 Samsung Electronics Co., Ltd. Handoff system and method between a wireless lan and a mobile communication network
DE102005001123A1 (de) * 2005-01-10 2006-07-20 Infineon Technologies Ag Kommunikationssystem, Verfahren zum Steuern eines Kommunikationssystems, Netzzugangsvorrichtung und Verfahren zum Steuern einer Netzzugangsvorrichtung

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003153327A (ja) * 2001-11-12 2003-05-23 Matsushita Electric Ind Co Ltd 無線通信システム及びそれに用いられるハンドオーバを実施する方法及び無線通信端末
JP2008530942A (ja) * 2005-02-18 2008-08-07 エルジー エレクトロニクス インコーポレイティド マルチモード移動端末のハンドオーバー遂行後におけるリンク解除方法及び移動端末
WO2007045280A1 (en) * 2005-10-17 2007-04-26 Telefonaktiebolaget Lm Ericsson (Publ.) Method for performing handoff in a packet-switched cellular communications system
JP2007116690A (ja) * 2005-10-17 2007-05-10 Hitachi Ltd モバイルネットワーク通信における切換の方法と装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101501964B1 (ko) * 2010-12-01 2015-03-12 후아웨이 테크놀러지 컴퍼니 리미티드 터널 방향전환 방법 및 상호연동 기능 엔티티
US9191986B2 (en) 2010-12-01 2015-11-17 Huawei Technologies Co., Ltd. Tunnel redirection method and interworking function entity

Also Published As

Publication number Publication date
JP4945529B2 (ja) 2012-06-06
US8355381B2 (en) 2013-01-15
US20100046473A1 (en) 2010-02-25

Similar Documents

Publication Publication Date Title
JP4945530B2 (ja) ホームエージェント、通信システム、及び通信方法
TWI431982B (zh) 在行動通訊系統中用於預先組態ip位址的方法
JP5012799B2 (ja) 通信装置、通信装置による無線通信装置の接続先切替制御方法およびプログラム
JP4344745B2 (ja) 動的ネットワーク管理システム及び動的ネットワーク管理装置
JP2005143086A (ja) 移動検知方法および移動端末
CA2637025A1 (en) Method and apparatus for effecting a handoff in a mobile internet protocol communication system
JP2009218929A (ja) 基地局、移動端末および通信プログラム
US20080031183A1 (en) Communication Network Management Method, Access Router, And Mobile Communication Device
JP4945529B2 (ja) 移動端末、通信システム、及び通信方法
US8761119B2 (en) Handover method, and mobile terminal and home agent used in the method
EP1513289A1 (en) Radio communication system
US8077660B2 (en) Base station apparatus, access gateway apparatus, communication control system and communication control method
JP4664965B2 (ja) 通信システム及び通信ノード
US20070086385A1 (en) Method and apparatus for supporting handover in transport layer
JP4120607B2 (ja) ルータ装置および通信方法
JP2006229831A (ja) 異種網間接続切替方法及び異種網間接続システム
JP2006115514A (ja) 無線ネットワーク装置及びそれを用いた通信方法
WO2007138652A1 (ja) 通信装置、通信システム及びハンドオーバ方法
JP2006093756A (ja) 無線lanシステム
US20100309882A1 (en) Handover method for mobile wireless network
Le et al. Preliminary binding: An extension to proxy mobile IPv6 for inter-technology handover
JP4667981B2 (ja) 移動体通信方法
US8107453B2 (en) Mobile communication control method, mobile terminal, and access router
KR101275341B1 (ko) 이동 아이피를 사용하는 무선 통신 시스템에서 핸드오프방법 및 그 시스템
CN118102494A (zh) 用于支持集成到直接链路建立程序中的发现的方法和设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120131

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120210

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120305

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150309

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees