JP2010050900A - ホームエージェント、通信システム、及び通信方法 - Google Patents

ホームエージェント、通信システム、及び通信方法 Download PDF

Info

Publication number
JP2010050900A
JP2010050900A JP2008215479A JP2008215479A JP2010050900A JP 2010050900 A JP2010050900 A JP 2010050900A JP 2008215479 A JP2008215479 A JP 2008215479A JP 2008215479 A JP2008215479 A JP 2008215479A JP 2010050900 A JP2010050900 A JP 2010050900A
Authority
JP
Japan
Prior art keywords
network
packet
home agent
interface
request message
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
JP2008215479A
Other languages
English (en)
Other versions
JP4945530B2 (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 JP2008215479A priority Critical patent/JP4945530B2/ja
Priority to US12/546,901 priority patent/US8509182B2/en
Publication of JP2010050900A publication Critical patent/JP2010050900A/ja
Application granted granted Critical
Publication of JP4945530B2 publication Critical patent/JP4945530B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/14Reselecting a network or an air interface
    • H04W36/144Reselecting a network or an air interface over a different radio air interface technology
    • H04W36/1446Reselecting a network or an air interface over a different radio air interface technology wherein at least one of the networks is unlicensed

Landscapes

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

Abstract

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

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のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのデータ受信を行うネットワークインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを要求するハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第2のネットワークを介して送信される前記切り替えを受け入れることを記した第1の応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のネットワークを介して送信される応答要求メッセージを作成して前記ネットワークインタフェースへ与え、前記ネットワークインタフェースから前記応答要求メッセージに対応する第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様によるホームエージェントは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末とデータの送受信を行うホームエージェントであって、前記第1のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのデータ受信を行うネットワークインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを要求するハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第2のネットワークを介して送信される前記切り替えを受け入れることを記した応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記ネットワークインタフェースからパケット情報が記されたメッセージを取得し、前記ネットワークインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様によるホームエージェントは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末とデータの送受信を行うホームエージェントであって、前記第1のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのシーケンス番号の記されたパケットの受信を行うネットワークインタフェースと、前記ネットワークインタフェースが受信したパケットに記された前記シーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを要求するハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第2のネットワークを介して送信される前記切り替えを受け入れることを記した応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記ネットワークインタフェースが前記第2のネットワークを介して最初に受信したパケットに記されたシーケンス番号から1を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第1のネットワークの使用を停止させるモビリティプロトコルモジュールと、を備えるものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末及び前記移動端末とのデータ送受信を行うホームエージェントを備える通信システムであって、前記移動端末は、前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する第1の応答メッセージを取得し、前記第1の応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のインタフェースから応答要求メッセージを取得し、前記応答要求メッセージの取得に伴い第2の応答メッセージを作成して前記第1のインタフェースに与える第1のモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第1のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのデータ受信を行うネットワークインタフェースと、前記ハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第1の応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記第1のネットワークを介して送信される前記応答要求メッセージを作成して前記ネットワークインタフェースへ与え、前記ネットワークインタフェースから前記第2の応答メッセージを取得し、前記第2の応答メッセージの取得に伴い前記第1のネットワークの使用を停止させる第2のモビリティプロトコルモジュールと、を有することを特徴とするものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末及び前記移動端末とのデータ送受信を行うホームエージェントを備える通信システムであって、前記移動端末は、前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行う第1のインタフェースと、前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行う第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させ、パケット情報を記した通知メッセージを作成して前記第1のインタフェースへ与える第1のモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第1のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのデータ受信を行うネットワークインタフェースと、前記ハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第2のネットワークを介して送信される前記応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記ネットワークインタフェースから前記通知メッセージを取得し、前記ネットワークインタフェースによる前記パケット情報に適合するパケットの受信に伴い前記第1のネットワークの使用を停止させる第2のモビリティプロトコルモジュールと、を有することを特徴とするものである。
本発明の一態様による通信システムは、第1のネットワークと第2のネットワークとの間でハンドオーバを行う移動端末及び前記移動端末とのデータ送受信を行うホームエージェントを備える通信システムであって、前記移動端末は、前記第1のネットワークを介して前記ホームエージェントとデータの送受信を行い、前記ホームエージェントへ送信順にシーケンス番号が記されたパケットを送信する第1のインタフェースと、前記第2のネットワークを介して前記ホームエージェントとデータの送受信を行い、前記ホームエージェントへ送信順にシーケンス番号が記されたパケットを送信する第2のインタフェースと、前記第1のネットワークから前記第2のネットワークへの使用ネットワークの切り替えを決定するハンドオーバトリガモジュールと、前記決定に基づいて前記第2のネットワークを介して送信されるハンドオーバ要求メッセージを作成して前記第2のインタフェースへ与え、前記第2のインタフェースから前記ハンドオーバ要求メッセージに対応する応答メッセージを取得し、前記応答メッセージの取得に伴い前記第2のネットワークを使用したパケット送受信を開始させる第1のモビリティプロトコルモジュールと、を有し、前記ホームエージェントは、前記第1のネットワーク又は前記第2のネットワークを介して、前記移動端末へのデータ送信及び前記移動端末からのデータ受信を行うネットワークインタフェースと、前記ネットワークインタフェースが受信したパケットに記された前記シーケンス番号と最終シーケンス番号とを比較し、比較結果が一致した場合に通知を行うパケット監視モジュールと、前記ハンドオーバ要求メッセージを前記ネットワークインタフェースから取得し、前記ハンドオーバ要求メッセージの取得に伴い、前記第2のネットワークを介して送信される前記応答メッセージを作成して前記ネットワークインタフェースへ与え、前記第2のネットワークを使用したパケット送受信を開始させ、前記ネットワークインタフェースが前記第2のネットワークを介して最初に受信したパケットに記されたシーケンス番号から1を減じた値を前記最終シーケンス番号として前記パケット監視モジュールに与え、前記パケット監視モジュールからの前記通知に基づいて前記第1のネットワークの使用を停止させる第2のモビリティプロトコルモジュールと、を有することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて第1の応答メッセージを作成し、前記第2のネットワークを使用して前記移動端末へ前記第1の応答メッセージを送信し、前記第2のネットワークを使用したパケット送受信を開始し、前記第1のネットワークを使用して前記移動端末へ応答要求メッセージを送信し、前記移動端末が、前記第1の応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記応答要求メッセージに基づいて第2の応答メッセージを作成し、前記第1のネットワークを使用して前記ホームエージェントへ前記第2の応答メッセージを送信し、前記ホームエージェントが、前記第2の応答メッセージの受信に伴い、前記第1のネットワークの使用を停止することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末及び前記ホームエージェントが前記第1のネットワークを使用してパケット送受信を行い、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成し、前記第2のネットワークを使用して前記移動端末へ前記応答メッセージを送信し、前記第2のネットワークを使用したパケット送受信を開始し、前記移動端末が、前記応答メッセージに基づいて前記第2のネットワークを使用したパケット送受信を開始し、前記第1のネットワークを使用して前記ホームエージェントへ送信した最後のパケットのパケット情報が記された通知メッセージを前記第2のネットワークを使用して前記ホームエージェントへ送信し、前記ホームエージェントが、前記通知メッセージを受信し、前記第1のネットワークを介した前記パケット情報に適合するパケットの受信に伴い、前記第1のネットワークの使用を停止することを特徴とするものである。
本発明の一態様による通信方法は、第1のネットワーク及び/又は第2のネットワークを使用して移動端末とホームエージェントハンドとの間でパケット送受信を行う通信方法であって、前記移動端末が、送信順に連続するシーケンス番号をパケットに付加して、前記パケットを前記第1のネットワークを使用して前記ホームエージェントへ送信し、前記移動端末が、使用ネットワークを前記第1のネットワークから前記第2のネットワークへ切り替えることを決定し、前記第2のネットワークを使用して前記ホームエージェントへハンドオーバ要求メッセージを送信し、前記ホームエージェントが、前記ハンドオーバ要求メッセージに基づいて応答メッセージを作成し、前記第2のネットワークを使用して前記移動端末へ前記応答メッセージを送信し、前記第2のネットワークを使用したパケット送受信を開始し、前記移動端末が、前記応答メッセージの受信に伴い、前記第2のネットワークを使用した前記パケットの送信を開始し、前記第1のネットワークの使用を停止し、前記ホームエージェントが、前記第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にホームエージェント200の概略構成を示す。ホームエージェント200はネットワークスタック201、モビリティプロトコルモジュール202、トンネルデバイスモジュール203、記憶部204、及びネットワークインタフェース210を有する。
ネットワークスタック201は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポートプロトコルやIPv4、IPv6などのネットワークプロトコル処理を行う。ネットワークスタック201はまた、ネットワークインタフェース210から受信したパケットのうちトンネリングされたパケットをトンネルデバイスモジュール203へ出力する。
ネットワークスタック201はまた、トンネリングされ、トンネルデバイスモジュール203により外側IPヘッダを削除されたパケットを、ネットワークインタフェース210へ出力する。
ネットワークスタック201はまた、ネットワークインタフェース210から受け取ったRegistration Requestメッセージの内容をモビリティプロトコルモジュール202へ出力する。ネットワークスタック201はまた、モビリティプロトコルモジュール202から出力されたRegistration ReplyメッセージにUDPヘッダ及びIPヘッダを付与して、ネットワークインタフェース210へ出力する。
Registration Requestメッセージ及びRegistration Replyメッセージについては後述する。
ネットワークスタック201はまた、モビリティプロトコルモジュール202から出力されたICMP Echo RequestメッセージにICMPヘッダとIPヘッダを付与し、ネットワークインタフェース210へ出力する。
ネットワークスタック201はまた、ネットワークインタフェース210から受け取ったICMP Echo Replyメッセージの内容をモビリティプロトコルモジュール202へ出力する。
ICMP Echo Requestメッセージ及びICMP Echo Replyメッセージについては後述する。
モビリティプロトコルモジュール202は、Mobile IPv4のメッセージの作成又は処理を行う。モビリティプロトコルモジュール202は、ネットワークスタック201からRegistration Requestメッセージの内容を受信して処理する。また、モビリティプロトコルモジュール202は、Registration Replyメッセージを生成してネットワークスタック201へ出力する。
モビリティプロトコルモジュール202はまた、トンネルデバイスモジュール203へトンネルの設定やトンネルの削除を通知する。
モビリティプロトコルモジュール202はまた、ネットワークスタック201へのICMP Echo Requestメッセージの内容の出力、ネットワークスタック201からのICMP Echo Replyメッセージの内容の取得を行う。
トンネルデバイスモジュール203は、モビリティプロトコルモジュール202から出力されたトンネルの設定を記憶部204に格納する。
トンネルデバイスモジュール203はまた、モビリティプロトコルモジュール202からトンネルの設定を削除する通知を受けた場合に、記憶部204から該当するトンネルの
設定を削除する。
トンネルデバイスモジュール203はまた、ネットワークスタック201から受け取った、トンネリングされたパケットが、記憶部204に格納されたトンネルの設定に従っているか否かを検査し、従っている場合は外側IPヘッダを削除してネットワークスタック201へ出力し、従っていない場合は破棄する。
記憶部204は、トンネルの設定を記憶する。
ネットワークインタフェース210は、例えばEthernet(登録商標)等の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック201へ出力する。
ネットワークインタフェース210はまた、ネットワークスタック201から出力されたパケットを、通信相手機器300や移動端末100へ送信する。
このような通信システムにおけるハンドオーバ時の処理フローを図3を用いて説明する。本実施形態では使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
(ステップS100)端末100が、端末100とホームエージェント200との間に確立されたセルラーネットワーク経由のトンネルを用いて、ホームエージェント200へパケットを送信している。ホームエージェント200は端末100から受信したパケットを通信相手機器300へ転送している。
このとき、ホームエージェント200の記憶部204には、端末100のセルラーネットワーク用インタフェース110のIPアドレスCoA1と、端末100のIPアドレスHoAと、ホームエージェント200のIPアドレスHAとの組が、1つのトンネル設定として記憶されている。
端末100のセルラーネットワーク用インタフェース110からホームエージェント200へ送信されるパケットの構成例を図4に示す。このパケットは、外側IPヘッダの送信元IPアドレスがセルラーネットワーク用インタフェース110のIPアドレスCoA1、送信先IPアドレスがホームエージェント200のIPアドレスHAである、IP−in−IPトンネリングプロトコルでトンネリングされたパケットである。
ホームエージェント200のネットワークインタフェース210は、図4に示すようなパケットを受信すると、このパケットをネットワークスタック201へ出力する。
ネットワークスタック201は、受け取ったパケットがIP−in−IPトンネリングプロトコルでトンネリングされたパケットであることから、このパケットをトンネルデバイスモジュール203へ出力する。
トンネルデバイスモジュール203は記憶部204から、IPアドレスCoA1を含むトンネル設定を取得する。上述の通り、記憶部204にはIPアドレスCoA1、HoA、及びHAからなる組がトンネルの設定として記憶されており、トンネルデバイスモジュール203はこの組を取得する。
次に、トンネルデバイスモジュール203は、取得したIPアドレスHoAとパケットの内側のIPヘッダの送信元IPアドレスを比較し、一致した場合、外側IPヘッダを削除し、図5に示すようなパケットを作成する。そして、トンネルデバイスモジュール203は、作成したパケットをネットワークスタック201へ出力する。
なお、前記の比較でIPアドレスが一致しない場合、トンネルデバイスモジュール203はパケットを破棄する。
次に、トンネルデバイスモジュール203から図5に示すような外側IPヘッダが削除されたパケットを受信したネットワークスタック201は、受信したパケットの送信先IPアドレスがホームエージェント200に割り当てられたIPアドレスHAではないことから他の機器(通信相手機器300)へ転送すべきパケットであることを検知し、ネットワークインタフェース210へ出力する。
ネットワークインタフェース210は、ネットワークスタック201から受け取ったパケットを通信相手機器300へ転送する。
(ステップS101)端末100が使用するネットワークをセルラーネットワークから無線LANへ切り替えることを決定する。例えば端末100は無線LAN基地局20から送信される電波の受信強度が十分強くなったこと検知するなどして、無線LANへの切替えを決定する。
(ステップS102)端末100の無線LAN用インタフェース120からホームエージェント200へRegistration Requestメッセージが送信される。
Registration Requestメッセージの具体的な構成例を図6に示す。Registration RequestメッセージはIPヘッダ、UDPヘッダ、及びデータ部分で構成される。
IPヘッダの送信元IPアドレスは端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2であり、送信先IPアドレスはホームエージェントのIPアドレスHAである。
また、UDPヘッダの送信先ポート番号は434である。また、Registration Requestメッセージのデータ部分には、Sbitに0、Home Addressフィールドに端末100のIPアドレスHoA、Home Agentフィールドにホームエージェント200のIPアドレスHA、Care-of Addressフィールドに端末100の無線LAN用インタフェース120に割り当てられたIPアドレスCoA2が指定される。
なお、Registration Requestメッセージの送信元UDPポート番号はUPとする。
ホームエージェント200のネットワークインタフェース210はRegistration Requestメッセージを受信すると、ネットワークスタック201へ出力する。
ネットワークスタック201は、Registration RequestメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号が434であることから、Registration Requestメッセージがモビリティプロトコルモジュール202宛であることを検知し、このRegistration Requestメッセージをモビリティプロトコルモジュール202へ出力する。
モビリティプロトコルモジュール202は、ネットワークスタック201から受け取ったRegistration Requestメッセージの内容を検査する。
(ステップS103)ホームエージェント200は、ステップS102で受信したRegistration Requestメッセージの内容を受け入れる場合、Registration Replyメッセージを端末100の無線LAN用インタフェース120へ送信する。
モビリティプロトコルモジュール202は、Registration Replyメッセージのデータ部分を生成し、ネットワークスタック201へ出力する。ここで、モビリティプロトコルモジュール202は、Registration ReplyメッセージのCodeフィールドに0、Home Addressフィールドに端末100のIPアドレスHoA、Home Agentフィールドにホームエージェント200のIPアドレスHAを指定する。
ネットワークスタック201は、モビリティプロトコルモジュール202から受け取ったRegistration Replyメッセージのデータ部分に、送信元ポート番号が434であり、送信先ポート番号がUPであるUDPヘッダと、送信先IPアドレスが端末100の無線LAN用インタフェース120のIPアドレスCoA2、送信元IPアドレスがホームエージェント200のIPアドレスHAであるIPヘッダとを付与し、図7に示すようなRegistration Replyメッセージを作成する。
ネットワークスタック201は作成したRegistration Replyメッセージをネットワークインタフェース210へ出力する。ネットワークインタフェース210は、ネットワークスタック201から受け取ったRegistration Replyメッセージを端末100の無線LAN用インタフェース120へ送信する。
(ステップS104)ホームエージェント200が端末100の無線LAN用インタフェース120から送信されたパケットを受信するためのトンネルを新規に設定する。
ホームエージェント200のモビリティプロトコルモジュール202は、Registration RequestメッセージのCare-of Addressフィールドに指定された端末100の無線LAN用インタフェース120のIPアドレスCoA2と、Home Addressフィールドに指定されたIPアドレスHoAと、Home Agentフィールドに指定されたIPアドレスHAの組を、新たなトンネルの設定としてトンネルデバイスモジュール203へ出力する。
トンネルデバイスモジュール203は、モビリティプロトコルモジュール202から受け取った新たなトンネルの設定を記憶部204に格納する。
なお、ホームエージェント200は、この新規トンネルの設定をステップS103の前に実行してもよい。
ホームエージェント200は、新規トンネルの設定前から使用していた、端末100のセルラーネットワーク用インタフェース110から送信されたパケットを受信するためのトンネルの設定を削除せずに保持する。
(ステップS105)端末100は、ホームエージェント200から送信されたRegistration Replyメッセージを無線LAN用インタフェース120で受信すると、無線LAN用インタフェース120からホームエージェント200へパケットを送信するためのトンネルを新規に設定する。
なお、端末100は、ステップS105以前に使用していた、セルラーネットワーク用インタフェース110からホームエージェント200へパケットを送信するためのトンネルの設定を削除せずに保持する。
(ステップS106)端末100は、無線LAN用インタフェース120からパケットを送信し、セルラーネットワーク用インタフェース110からはパケットを送信しない。
無線LAN用インタフェース120から送信されるパケットの構成例を図8に示す。
送信パケットの外側IPヘッダの送信元IPアドレスは無線LAN用インタフェース120のIPアドレスCoA2である。
無線LAN用インタフェース120からパケットを受信したホームエージェント200は、パケットの外側IPヘッダを削除して通信相手機器300へ転送する。具体的には以下のような処理が行われる。
まず、無線LAN用インタフェース120から送信されたパケットをネットワークインタフェース210が受信する。ネットワークインタフェース210は受信したパケットをネットワークスタック201へ出力する。
ネットワークスタック201は、受け取ったパケットがIP-in-IPトンネリングプロトコルでトンネリングされたパケットであることから、このパケットをトンネルデバイスモジュール203へ出力する。
トンネルデバイスモジュール203は、パケットの外側IPヘッダの送信元IPアドレスCoA2を含むトンネルの設定を記憶部204から取得する。
前述のとおり、記憶部204にはステップS104においてIPアドレスCoA2、HoA、及びHAの組がトンネルの設定として記憶されており、トンネルデバイスモジュール203はこの組を取得する。
そして、トンネルデバイスモジュール203は、取得したIPアドレスHoAとパケットの内側IPヘッダの送信元IPアドレスを比較し、一致した場合、外側IPヘッダを削除し、ネットワークスタック201へ出力する。一方、前記の比較でIPアドレスが一致しない場合、トンネルデバイスモジュール203はパケットを破棄する。
次に、ネットワークスタック201は、トンネルデバイスモジュール203から受け取ったパケットの送信先IPアドレスがホームエージェント200に割り当てられたIPアドレスHAではないことから、他の機器へ転送すべきパケットであることを検知し、ネットワークインタフェース210へパケットを出力する。
ネットワークインタフェース210はネットワークスタック201から受け取ったパケットを通信相手機器300へ転送する。
(ステップS107)ホームエージェント200が端末100のセルラーネットワーク用インタフェース110へICMP Echo Requestメッセージ(応答要求メッセージ)を送信する。具体的にはホームエージェント200は以下のような処理を行う。
まず、モビリティプロトコルモジュール202が、ICMP Echo Requestメッセージのデータを作成し、ネットワークスタック201へ出力する。
次に、ネットワークスタック201は、受け取ったデータにICMPヘッダ及びIPヘッダを付与し、図9に示すようなICMP Echo Requestメッセージを作成する。ネットワークスタック201は、ICMPヘッダのICMP typeに8、ICMP codeに0を指定する。
また、ネットワークスタック201は、IPヘッダの送信元IPアドレスにホームエージェント200のIPアドレスHA、送信先IPアドレスに端末100のセルラーネットワーク用インタフェース110のIPアドレスCoA1を指定する。
ネットワークスタック201は作成したICMP Echo Requestメッセージをネットワークインタフェース210へ出力する。ネットワークインタフェース210はこのICMP Echo Requestメッセージを端末100のセルラーネットワーク用インタフェース110へ送信する。
なお、この処理はステップS104の処理の直後に行われる。
(ステップS108)端末100は、ICMP Echo Requestメッセージを受信すると、図10に示すようなICMP Echo Replyメッセージを作成し、セルラーネットワーク用インタフェース110からホームエージェント200へ送信する。
ICMP Echo Replyメッセージは、ステップS105以降にセルラーネットワーク用インタフェース110からホームエージェント200へ送信される。つまり、ICMP Echo Replyメッセージは、ステップS105以前にセルラーネットワーク用インタフェース110からホームエージェント200へ送信された最後のパケットよりも後に、セルラーネットワーク用インタフェース110からホームエージェント200へ送信されることになる。
従って、ホームエージェント200はICMP Echo Replyメッセージの受信後は、端末100のセルラーネットワーク用インタフェース110から送信されたパケットを受信することがないことを検知できる。
(ステップS109)ホームエージェントは、ICMP Echo Replyメッセージの受信に伴い、端末100のセルラーネットワーク用インタフェース110から送信されるパケットを受信するためのトンネルの設定を削除する。具体的には以下のような処理が行われる。
ネットワークインタフェース210は、ICMP Echo Replyメッセージを受信すると、このICMP Echo Replyメッセージをネットワークスタック201へ出力する。
次に、ネットワークスタックは、ICMP Echo Replyメッセージの内容をモビリティプロトコルモジュール202へ出力する。
モビリティプロトコルモジュール202は、ICMP Echo Replyメッセージのデータ部分がICMP Echo Requestメッセージのデータ部分と一致するか否かを検査し、一致しない場合はICMP Echo Replyメッセージを破棄する。
一致する場合、モビリティプロトコルモジュール202は、ICMP Echo Replyメッセージの送信元IPアドレスCoA1が含まれるトンネルの設定を削除するよう、トンネルデバイスモジュール203に通知する。
トンネルデバイスモジュール203は、通知されたIPアドレスCoA1を含むトンネルの設定を記憶部204から削除する。記憶部204には、IPアドレスCoA1、HoA、HAの組がトンネルの設定として記憶されており、この組が記憶部204から削除される。
これにより、ホームエージェント200が端末100以外の機器から、外側IPヘッダの送信元IPアドレスがCoA1で、かつ内側IPヘッダの送信元IPアドレスがHoAである、詐称されたパケットを受信しても、ホームエージェント200はこの詐称されたパケットを破棄できるようになる。
(ステップS110)端末100が、ハンドオーバ前に使用していた、セルラーネットワーク用インタフェース110からホームエージェント200へパケットを送信するためのトンネルの設定を削除する。この処理はステップS108のICMP Echo Replyメッセージの送信後に行われる。
ホームエージェント200は、ハンドオーバ処理直後に、端末100が返信可能なメッセージをハンドオーバ前に使用していたネットワークを介して端末100へ送信し、前記メッセージに対する返信のメッセージを端末から受信した時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知している。
そのため、端末100が特別なメッセージをホームエージェント200へ送信する機能を搭載していなくても、ホームエージェント200はハンドオーバ前に使用していたトンネルを経由した端末100からの全てのパケットを受信し終えて、前記トンネルが削除可能となる時点を検知することができる。
これにより、ハンドオーバ前に使用していたトンネルを速やかに削除できるため、メモリリソースを効率的に使用することができる。
なお、本実施形態におけるホームエージェント200は、ICMP Echo Requestメッセージの代わりとして、端末100がセルラーネットワーク用インタフェース110から返信可能なメッセージであればどの様なメッセージを送信してもよい。
本実施形態では、端末100およびホームエージェント200はモビリティプロトコルとしてMobile IPv4を搭載しているが、Mobile IPv4の代わりにMobile IPv6を搭載していてもよい。端末100およびホームエージェント200がMobile IPv6を利用する場合、ホームエージェント200はICMP Echo Requestメッセージの代わりに、ICMPv6 Echo Requestメッセージを端末100のセルラーネットワーク用インタフェース110へ送信する。
また、端末100およびホームエージェント200は、IP-in-IPトンネリングプロトコルの代わりにGREトンネルやその他のトンネリングプロトコルを利用してもよい。
(第2の実施形態)図11に本発明の第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が割り当てられるとする。
図12に端末400の概略構成を示す。端末400はネットワークスタック401、モビリティプロトコルモジュール402、アプリケーションモジュール403、トンネルデバイスモジュール404、ハンドオーバトリガモジュール405、記憶部406、セルラーネットワーク用インタフェース410、及び無線LAN用インタフェース420を有する。
セルラーネットワーク用インタフェース410は、例えばCDMAや、HSDPA、PHSといったセルラー系の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック401へ出力する。セルラーネットワーク用インタフェース410はまた、ネットワークスタック401から受け取ったパケットを送信する。
無線LAN用インタフェース420は、例えば802.11bや、802.11g, 802.11a, 802.11nといった802.11系のプロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタックへ出力する。無線LAN用インタフェース420はまた、ネットワークスタック401から受け取ったパケットを送信する。
ネットワークスタック401は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポートプロトコルやIPv4、IPv6などのネットワークプロトコル処理を行うものであり、アプリケーションモジュール403から受け取ったアプリケーションデータにトランスポートヘッダとIPヘッダを付与し、トンネルデバイスモジュール404へ出力する。
ネットワークスタック401はまた、トンネルデバイスモジュール404から受信したIP-in-IPトンネリングプロトコルでトンネリングされたパケットを、セルラーネットワーク用インタフェース410または無線LAN用インタフェース420へ出力する。
ネットワークスタック401はまた、セルラーネットワーク用インタフェース410又は無線LAN用インタフェース420で受信したRegistration Replyメッセージの内容をモビリティプロトコルモジュール402へ出力する。
ネットワークスタック401はまた、モビリティプロトコルモジュール402から出力されたRegistration RequestメッセージにUDPヘッダとIPヘッダを付与し、セルラーネットワーク用インタフェース410又は無線LANインタフェース420へ出力する。
モビリティプロトコルモジュール402は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック401へ出力する。また、モビリティプロトコルモジュール402はネットワークスタック401からRegistration Replyメッセージを受信して処理する。
モビリティプロトコルモジュール402はまた、ハンドオーバ前に使用していたトンネルの設定を用いてトンネルデバイスモジュール404が作成した最後のパケットの内容を、トンネルデバイスモジュール404から取得する。
モビリティプロトコルモジュール402はまた、前記パケットの特徴を示す通知メッセージを生成し、ネットワークスタック401へ出力する。
モビリティプロトコルモジュール402はまた、トンネルデバイスモジュール404にトンネルの設定又は削除を通知する。
アプリケーションモジュール403は、アプリケーションデータを生成し、ネットワークスタック401にアプリケーションデータを出力する。
トンネルデバイスモジュール404は、ネットワークスタック401から受け取ったパケットにIPヘッダを付与してネットワークスタック401へ出力する。また、トンネルデバイスモジュール403は、最後にIPヘッダを付与してネットワークスタック401へ出力したパケットの内容を記憶部406に格納する。
トンネルデバイスモジュール404は、以前記憶部406に格納していたパケットのうち送信元IPアドレスと送信先IPアドレスが一致するパケットの内容を削除する。
トンネルデバイスモジュール404はまた、記憶部406に格納したパケットの内容をモビリティプロトコルモジュール402へ出力する。
トンネルデバイスモジュール404はまた、モビリティプロトコルモジュール402から通知されたトンネルの設定を記憶部406に格納し、モビリティプロトコルモジュール402から通知されたトンネルの設定を記憶部406から削除する。
ハンドオーバトリガモジュール405は、ハンドオーバを開始する契機を決定するモジュールであり、セルラーネットワーク用インタフェース410または無線LAN用インタフェース420からセルラーネットワークや無線LANにおける通信品質に関する情報を取得し、前記情報やその他の情報からハンドオーバを開始する契機を決定し、モビリティモジュール402へ通知する。
記憶部406は、トンネルの設定を記憶する。記憶部406はまた、トンネルデバイスモジュール404が作成した最後のパケットの内容を記憶する。
図13にホームエージェント500の概略構成を示す。ホームエージェント500は、ネットワークスタック501、モビリティプロトコルモジュール502、トンネルデバイスモジュール503、パケット監視モジュール504、記憶部505、及びネットワークインタフェース510を有する。
ネットワークインタフェース510は、例えばEthernet等の通信プロトコルに対応したネットワークインタフェースであり、受信したパケットをネットワークスタック501へ出力する。ネットワークインタフェース510はまた、ネットワークスタック501から受け取ったパケットを端末400又は通信相手機器600へ送信する。
ネットワークスタック501は、TCP、UDP、SCTP、DCCP、ICMPなどのトランスポートプロトコルやIPv4、IPv6などのネットワークプロトコル処理を行う。
ネットワークスタック501はまた、ネットワークインタフェース510から受信したパケットをパケット監視モジュール504へ出力する。
ネットワークスタック501はまた、パケット監視モジュール504から受け取ったパケットのうち、トンネリングされたパケットをトンネルデバイスモジュール503へ出力する。
ネットワークスタック501はまた、外側IPヘッダが削除されたパケットをネットワークインタフェース510へ出力する。
ネットワークスタック501はまた、ネットワークインタフェース510から受け取ったRegistration Requestメッセージの内容をモビリティプロトコルモジュール502へ出力する。
ネットワークスタック501はまた、モビリティプロトコルモジュール502から出力されたRegistration ReplyメッセージにUDPヘッダ及びIPヘッダを付与し、ネットワークインタフェース510へ出力する。
ネットワークスタック501はまた、ネットワークインタフェース510から受け取った通知メッセージの内容をモビリティプロトコルモジュール502へ出力する。
モビリティプロトコルモジュール502は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック501からRegistration Requestメッセージを受信して処理し、Registration Replyメッセージを作成してネットワークスタック501へ出力する。
モビリティプロトコルモジュール502はまた、トンネルデバイスモジュール503にトンネルの設定や削除を通知するものである。
モビリティプロトコルモジュール502はまた、通知メッセージをネットワークスタック501から受け取り、前記通知メッセージに記されたパケットの特徴をパケット監視モジュール504へ通知し、パケット監視モジュールから前記特徴に該当するパケットを検知したことを示す通知を受信する。
トンネルデバイスモジュール503は、モビリティプロトコルモジュール502から受け取ったトンネルの設定を記憶部505に格納する。
トンネルデバイスモジュール503はまた、モビリティプロトコルモジュール502からトンネルの設定を削除する通知を受けた場合に記憶部505から該当するトンネルの設定を削除する。
トンネルデバイスモジュール503はまた、ネットワークスタック501から受け取ったトンネリングされたパケットが、記憶部505に格納されたトンネルの設定に従っているかを検査し、外側IPヘッダを削除してネットワークスタック501へ出力する。
パケット監視モジュール504は、モビリティプロトコルモジュール502から受け取ったパケットの特徴を示すデータを記憶部505に格納する。
パケット監視モジュール504はまた、ネットワークスタック501から受け取ったパケットが、記憶部505に格納されたパケットの特徴に該当するか否かを判定し、該当した場合はモビリティプロトコルモジュール502に通知し、前記判定後に前記パケットをネットワークスタック501へ出力する。
パケット監視モジュール504は、トンネルデバイスモジュール503と同一のモジュールに実装されてもよい。
記憶部505は、トンネルの設定を記憶する。記憶部505はまた、パケット監視モジュール504から出力された、パケットの特徴を示すデータを記憶する。
このような通信システムにおけるハンドオーバ時の処理フローを図14を用いて説明する。本実施形態では使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。
(ステップS1400)端末400及びホームエージェント500は、セルラーネットワークを経由したトンネルを確立しており、端末400はホームエージェント500を介してパケットを通信相手機器600へ送信している。
端末400では具体的には以下のような処理が行われている。ここで、端末400の記憶部406には、セルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1と、ホームエージェント500のIPアドレスHAの組が、一つのトンネルの設定として記憶されている。
アプリケーションモジュール403は、送信データを作成し、ネットワークスタック401へ出力する。
ネットワークスタック401はアプリケーションモジュール403から受け取った送信データにトランスポートヘッダとIPヘッダを付与し、トンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404はネットワークスタック401から受け取ったパケットに外側IPヘッダを付与し、図4に示すようなパケットを生成する。トンネルデバイスモジュール404は、この生成したパケットの内容を記憶部406に格納する。
そして、トンネルデバイスモジュール404は、パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスの組が同一である、ステップS1400以前に記憶部406に格納されたパケットの内容を削除する。
続いて、トンネルデバイスモジュール404は、生成したパケットをネットワークスタック401へ出力する。
ネットワークスタック401はトンネルデバイスモジュール404から受け取ったトンネリングされたパケットをセルラーネットワーク用インタフェース410へ出力する。セルラーネットワーク用インタフェース410は、ネットワークスタック401から受け取ったパケットをホームエージェント500へ送信する。
ホームエージェント500では具体的に以下のような処理が行われる。ここで、ホームエージェント500の記憶部505には、端末400のセルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1と、端末400のIPアドレスHoAと、ホームエージェント500のIPアドレスHAとの組が、一つのトンネルの設定として記憶されている。
ネットワークインタフェース510は、端末400から、図4に示すような、IP-in-IPトンネリングプロトコルでトンネリングされたパケットを受信すると、この受信したパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、ネットワークインタフェース510から受け取ったパケットをパケット監視モジュール504へ出力する。
パケット監視モジュール504は、記憶部505からパケットの特徴を示すデータを取得し、そのデータに、ネットワークスタック501から受け取ったパケットが該当するか否かを判定する。ステップS1400では、記憶部505にパケットの特徴を示すデータは何も格納されていないため、該当しないと判定される。
該当しないと判定した場合、パケット監視モジュール504はパケットをネットワークスタック501へ出力する。なお、該当すると判定した場合の処理についてはステップS1508にて説明する。
ネットワークスタック501は、パケット監視モジュール504から受け取ったパケットがIP-in-IPトンネリングでトンネリングされたパケットであることから、このパケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、外側IPヘッダの送信元IPアドレスであるIPアドレスCoA1を含むトンネルの設定を記憶部505から取得する。前述のとおり、記憶部にはIPアドレスCoA1、HoA、及びHAの組がトンネルの設定として記憶されているため、トンネルデバイスモジュール503はこの組を取得する。
トンネルデバイスモジュール503は、取得したIPアドレスHoAとパケットの内側IPヘッダの送信元IPアドレスを比較し、一致した場合、パケットの外側IPヘッダを削除して図5に示すようなパケットを生成し、ネットワークスタック501へ出力する。一方、前記の比較でIPアドレスが一致しない場合、トンネルデバイスモジュール503はパケットを破棄する。
トンネルデバイスモジュール503からパケットを受け取ったネットワークスタック501は、パケットの送信先IPアドレスがホームエージェント500に割り当てられたIPアドレスHAではないことから、他の機器へ転送すべきパケットであることを検知し、このパケットをネットワークインタフェース510へ出力する。
ネットワークインタフェース510は、ネットワークスタック501から受け取ったパケットを通信相手機器600へ送信する。
(ステップS1401)端末400が使用するネットワークをセルラーネットワークから無線LANへ切り替えることを決定する。
端末400のハンドオーバトリガモジュール405は、常時セルラーネットワーク用インタフェース410または無線LAN用インタフェース420からセルラーネットワークや無線LANにおける通信品質に関する情報を取得している。
そして、ハンドオーバトリガモジュール405は、前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティプロトコルモジュール402に通知する。
なお、ハンドオーバトリガモジュール405がハンドオーバの開始を決定するアルゴリズムはどのようなものであってもよい。一例として、無線LAN基地局20から受信できる電波の強度が十分強くなったことをハンドオーバの契機とする方法がある。
(ステップS1402)端末400がホームエージェント500へRegistration Requestメッセージを送信する。
端末400は具体的には以下のような処理を行う。端末400のモビリティプロトコルモジュール402は、Registration Requestメッセージのデータ部分を生成する。
モビリティプロトコルモジュール402は、生成したRegistration Requestメッセージのデータ部分をネットワークスタック401へ出力する。
ネットワークスタック401は、モビリティプロトコルモジュール402から受け取ったRegistration Requestメッセージのデータ部分に、宛先ポート番号が434であるUDPヘッダと、送信先IPアドレスがホームエージェント500のIPアドレスHAであり、かつ送信元IPアドレスが端末400の無線LAN用インタフェース420のIPアドレスCOA2であるIPIPヘッダを付与する。なお、ネットワークスタックがUDPヘッダの送信元ポート番号に指定した値をUPとする。
これにより、図6に示すような上記第1の実施形態と同様のRegistration Requestメッセージが作成される。
ネットワークスタック401はRegistration Requestメッセージを無線LAN用インタフェース420へ出力する。無線LAN用インタフェース420は、ネットワークスタック401から受け取ったRegistration Requestメッセージをホームエージェント500へ送信する。
端末400から送信されたRegistration Requestメッセージをホームエージェント500が受信すると、ホームエージェント500は以下のような処理を行う。
ホームエージェント500のネットワークインタフェース510が、Registration Requestメッセージを受信し、ネットワークスタック501へ出力する。
ネットワークスタック501は、Registration RequestメッセージのトランスポートプロトコルヘッダがUDPであり、かつ送信先ポート番号が434であることから、Registration Requestメッセージがモビリティプロトコルモジュール502宛であることを検知し、Registration Requestメッセージをモビリティプロトコルモジュール502へ出力する。
モビリティプロトコルモジュール502は、ネットワークスタック501から受け取ったRegistration Requestメッセージの内容を検査する。
(ステップS1403)ホームエージェント500は、ステップS1402で受信したRegistration Requestメッセージの内容を受け入れる場合、Registration Replyメッセージを無線LAN用インタフェース420へ送信する。
ホームエージェント500は具体的には以下のような処理を行う。まず、ホームエージェント500のモビリティプロトコルモジュール502は、Registration Replyメッセージのデータ部分を生成し、ネットワークスタック501へ出力する。
ネットワークスタック501は、Registration Replyメッセージのデータ部分に、送信元ポート番号が434であり、送信先ポート番号がUPであるUDPヘッダと、送信先IPアドレスが端末の無線LAN用インタフェース420のIPアドレスCoA2、送信元IPアドレスがホームエージェント500のIPアドレスHAであるIPヘッダとを付与し、図7に示すようなRegistration Replyメッセージを作成する。
ネットワークスタック501は、生成したRegistration Replyメッセージをネットワークインタフェース510へ出力する。ネットワークインタフェース510は、ネットワークスタック501から受け取ったRegistration Replyメッセージを無線LAN用インタフェース420へ送信する。
(ステップS1404)ホームエージェント500は、Registration Requestメッセージの内容を受け入れる場合、無線LANを介したトンネルを新規に設定する。
すなわち、ホームエージェント500のモビリティプロトコルモジュール502は、Registration RequestメッセージのCare-of Addressフィールドに指定された端末400の無線LAN用インタフェース420のIPアドレスCoA2と、Home Agentフィールドに指定されたホームエージェントのIPアドレスHAと、Home Addressフィールドに指定されたIPアドレスHoAとの組を、新たなトンネルの設定としてトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、モビリティプロトコルモジュール502から受け取ったトンネルの設定を記憶部505に格納する。
なお、ホームエージェント500は、このトンネルの新規設定をRegistration Replyメッセージの送信(ステップS1403)前に実行してもよい。
ホームエージェント500は、ステップS1404以前に使用していた、端末400のセルラーネットワーク用インタフェース410からパケットを受信するためのトンネルの設定を削除せずに保持する。
(ステップS1405)端末400はRegistration Replyメッセージの受信に伴い、無線LANを介したトンネルを新規に設定する。
端末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の組を新たなトンネルの設定としてトンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は、モビリティプロトコルモジュールから受け取ったトンネルの設定を記憶部406に格納する。
なお、端末400はステップS1405以前に使用していた、セルラーネットワーク用インタフェース410からパケットを送受信するためのトンネルの設定を削除せずに、保持する。
(ステップS1406)端末400の無線LAN用インタフェース420から無線LANを介してホームエージェント500へ通知メッセージが送信される。
まず、端末400のモビリティプロトコルモジュール402が、トンネルデバイスモジュール404に、セルラーネットワーク用インタフェース410のIPアドレスCoA1およびホームエージェント500のIPアドレスHAを通知する。
トンネルデバイスモジュール404は、送信元IPアドレスがCoA1であり、かつ送信先IPアドレスがホームエージェント500のIPアドレスHAであるパケットを記憶部406から取得する。
ステップS1400で述べた通り、トンネルデバイスモジュール404は、外側IPヘッダを付与したパケットをネットワークスタック401へ出力するたびに、前記パケットの内容を記憶部406に格納し、以前格納していた、送信元IPアドレス及び送信先IPアドレスが同じであるパケットを削除する。
つまり、常に最新のトンネリングされた送信パケットが記憶406部に格納されている。
また、ステップS1405以降、端末400は通信相手機器600へホームエージェント500を介してパケットを送信する場合、セルラーネットワーク用インタフェース410を使用せず、無線LAN用インタフェース420を使用する。
つまり、ステップS1406において記憶部406に格納された、送信元IPアドレスがCoA1であるパケットは、端末400がセルラーネットワーク用インタフェース410から送信した、最後のトンネリングされたパケットである。
トンネルデバイスモジュール404は、セルラーネットワーク用インタフェース410から送信された最後のトンネリングされたパケットを記憶部406から取得し、モビリティプロトコルモジュールへ出力する。
モビリティプロトコルモジュール402は、トンネルデバイスモジュール404から受け取ったパケットの特徴を表すデータを生成し、ネットワークスタック401へ出力する。
前記データの具体的な構成は、例えば図15に示す通知メッセージのデータ部分である。図15に示す例では、データ部分のcsumフィールドにパケットのIPヘッダ中のチェックサムフィールドと同じ値が指定される。
なお、チェックサムに加え、セルラーネットワーク用インタフェース410に付与されたIPアドレスCoA1や、端末400のIPアドレスHoAをデータ部分に指定してもよい。また、チェックサムの代わりにパケット自体を通知メッセージのデータ部分に指定してもよいし、その他パケットを特定もしくはほぼ特定可能なデータを指定してもよい。
次に、ネットワークスタック401は、モビリティプロトコルモジュール402から受け取ったデータに、送信元ポート番号がUPであり、送信先ポート番号が434であるUDPヘッダを付与する。
また、ネットワークスタック401は、送信元IPアドレスが無線LAN用インタフェース420のIPアドレスCoA2であり、かつ送信先IPアドレスがホームエージェント500のIPアドレスHAであるIPヘッダを付与することで、図15に示すような通知メッセージを作成する。
ネットワークスタック401は、通知メッセージを無線LAN用インタフェース420へ出力する。無線LAN用インタフェース420は受け取った通知メッセージをホームエージェント500へ送信する。
通知メッセージは、無線LANを経由してホームエージェント500に受信される。
なお、一般に、無線LANにおけるネットワーク遅延は、セルラーネットワークにおけるネットワーク遅延よりも小さい。そのため、通知メッセージは、セルラーネットワークを介して送信された最後のトンネリングされたパケットよりも先にホームエージェント500に到着する。
ホームエージェント500のネットワークインタフェース510は、通知メッセージを受信すると、ネットワークスタック501へ出力する。
ネットワークスタック501は、受け取った通知メッセージの送信先ポート番号が434であることから、通知メッセージがモビリティプロトコルモジュール502宛であることを検知し、通知メッセージの内容をモビリティプロトコルモジュール502へ出力する。
モビリティプロトコルモジュール502は、通知メッセージに記されたデータ部分を、検知対象のパケットの特徴を表すデータとしてパケット監視モジュール504へ出力する。例えば、前記データが端末400からセルラーネットワークを介して送信された最後のトンネリングされたパケットのIPヘッダの中のチェックサムフィールドの値の場合は、前記チェックサムの値をパケット監視モジュール504へ出力する。
パケット監視モジュール504は前記チェックサムの値を記憶部505に格納する。
(ステップS1407)ホームエージェント500は、端末400の無線LAN用インタフェース420から無線LANを介してトンネリングされたパケットを受信するか、または端末400のセルラーネットワーク用インタフェース410からセルラーネットワークを介してトンネリングされたパケットを受信すると、受信したパケットの外側IPヘッダを削除したパケットを通信相手機器600へ転送する。
また、ホームエージェントのパケット監視モジュール504が、記憶部505から検知対象のパケットの特徴を示すデータを取得し、セルラーネットワークを介して受信したパケットがこのデータに該当するか否か判定する。
(ステップS1408)パケット監視モジュール504は、セルラーネットワークを介して受信したパケットが、記憶部505から取得した検知対象のパケットの特徴を示すデータに該当すると判定した場合、該当するパケットを受信したことをモビリティプロトコルモジュール502に通知する。
これにより、モビリティプロトコルモジュール502は、ハンドオーバ前に使用していたセルラーネットワーク経由で最後のトンネリングされたパケットを受信したことを検知することができる。
(ステップS1409)端末400がハンドオーバ前に使用していたトンネルの設定を削除する。
端末400のモビリティプロトコルモジュール402は、セルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1とホームエージェント500のIPアドレスHAとの組をトンネルデバイスモジュール404に通知する。
そして、トンネルデバイスモジュール404は、記憶部406からIPアドレスCoA1及びHAの組で表されるトンネルの設定を削除する。
この処理は、端末400が無線LANを介したトンネルを新規に設定(ステップS1405)した後の任意のタイミングで行われる。
(ステップS1410)ホームエージェント500は、ハンドオーバ前のトンネルの設定を削除する。
すなわち、ホームエージェント500のモビリティプロトコルモジュール502は、端末400のセルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1と、端末400のIPアドレスHoAと、ホームエージェント500のIPアドレスHAの組をトンネルデバイスモジュール503に通知する。
そして、トンネルデバイスモジュール503が、記憶部505からIPアドレスCoA1、HoA、及びHAの組で表されるトンネルの設定を削除する。
ホームエージェント500はステップS1410を実行することにより、図4に示すようなパケットを受信した場合、ホームエージェント500のトンネルデバイスモジュール503は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部505に存在しないことから、前記パケットが不正なパケットであると判断し、破棄できるようになる。
このように、本実施形態に係る通信システムによれば、ハンドオーバ前に使用していたネットワークを介して端末がホームエージェントへ送信した最後のトンネリングされたパケットの内容を示す通知メッセージを、ハンドオーバ後に使用するネットワークを介して、端末がホームエージェントへ送信し、前記通知メッセージを受信したホームエージェントが、前記通知メッセージの示すパケットの内容に該当するパケットを受信した時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知可能となる。
また、端末は前記通知メッセージをハンドオーバ後に使用するネットワーク経由で送信するため、ハンドオーバ前に使用していたネットワーク上でパケットロスが発生しても、ホームエージェントはハンドオーバ前に使用していたトンネルを削除可能となる時点を検知可能となる。
このように、ハンドオーバ前に使用していたトンネルを速やかに削除できるため、メモリリソースを効率的に使用することができる。
上記第2の実施形態の一例においては、ホームエージェント500は、ステップS1400、ステップS1407、ステップS1408において送信先IPアドレスがHoAであるパケットを受信し、前記パケットをトンネリングしたパケットを端末400に転送してもよい。
また、上記第2の実施形態の一例においては、端末400およびホームエージェント500はIP-in-IPトンネリングプロトコルの代わりにGREトンネルやESP、AHといったシーケンスナンバーフィールドをプロトコルヘッダにもつプロトコルを利用し、かつIPヘッダのチェックサムフィールドの値の代わりに前記シーケンスナンバーフィールドの値を利用してもよい。
また、ホームエージェント500は前記シーケンスナンバーフィールドの値よりも小さい値のシーケンスナンバーフィールド値をもつパケットを全て受信した時点をハンドオーバ前に使用していたトンネルを削除可能となる時点として検知してもよい。
この場合、端末400は、ハンドオーバ前に使用していたネットワーク上で、パケットの転送順が入れ替わっても、ホームエージェント500がハンドオーバ前に使用していたトンネルを経由して端末からの全てのパケットを受信し終えて前記トンネルを削除可能となる時点を検知可能となる。
また、上記第2の実施形態の一例においては、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。
(第3の実施形態)本発明の第3の実施形態に係る通信システムは図11に示す上記第2の実施形態に係る通信システムと同様であるため、説明を省略する。
また、本実施形態に係る端末400は図12に示す上記第2の実施形態に係る端末と同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール402及びトンネルデバイスモジュール404に搭載される機能は上記第2の実施形態と異なる。
モビリティプロトコルモジュール402は、Mobile IPv4のメッセージを作成または処理するモジュールであり、Registration Requestメッセージを生成してネットワークスタック401へ出力し、また、ネットワークスタック401からRegistration Replyメッセージを受信して処理する。
モビリティプロトコルモジュール402はまた、トンネルデバイスモジュール404にトンネルの設定や削除を通知する。
モビリティプロトコルモジュール402は、ハンドオーバ前に使用していたトンネルの設定を用いてトンネルデバイスモジュール404が作成した最後のパケットの内容を、トンネルデバイスモジュール404から取得し、前記パケットの特徴を示す通知メッセージを生成し、ネットワークスタック401へ出力するという機能を搭載する必要がない。
トンネルデバイスモジュール404は、ネットワークスタック401から受け取ったパケットに記憶部406に格納されたトンネルの設定に従った外側IPヘッダを付与してネットワークスタック401へ出力する。
トンネルデバイスモジュール404はまた、モビリティプロトコルモジュール402から通知されたトンネルの設定を記憶部406に格納し、モビリティプロトコルモジュール402から通知されたトンネルの設定を記憶部406から削除する。
トンネルデバイスモジュール404は、最後に外側IPヘッダを付与しネットワークスタック401へ出力したパケットの内容を記憶部406に格納し、以前記憶部406に格納していたパケットのうち送信元IPアドレスと送信先IPアドレスが一致するパケットの内容を削除し、記憶部406に格納したパケットの内容をモビリティプロトコルモジュール402へ出力する機能を搭載しなくてもよい。
本実施形態に係るホームエージェント500は図13に示す上記第2の実施形態に係るホームエージェントと同様の構成であるため、説明を省略する。但し、モビリティプロトコルモジュール502、トンネルデバイスモジュール503、及びパケット監視モジュール504に搭載される機能は上記第2の実施形態と異なる。
モビリティプロトコルモジュール502は、Mobile IPv4のメッセージを作成または処理するモジュールであり、ネットワークスタック501からRegistration Requestメッセージを受信して処理し、またRegistration Replyメッセージを生成してネットワークスタック501へ出力する。
モビリティプロトコルモジュール502はまた、トンネルデバイスモジュール503にトンネルの設定や削除を通知する。
モビリティプロトコルモジュール502はまた、ハンドオーバ後に使用するネットワーク経由で端末400から受信した最初のパケットのトンネリングプロトコルヘッダに指定されたシーケンスナンバーをパケット監視モジュール504から受信する。
モビリティプロトコルモジュール502はまた、前記シーケンスナンバーから1を引いた値、および端末400がハンドオーバ前に使用していたネットワークインタフェースのIPアドレスをパケット監視モジュール504へ出力する。
モビリティプロトコルモジュール502は、通知メッセージをネットワークスタック501から受信し、前記通知メッセージに記されたパケットの特徴をパケット監視モジュール504に通知する機能を搭載しなくてもよい。
トンネルデバイスモジュール503は、モビリティプロトコルモジュール502から受け取ったトンネルの設定を記憶部505に格納する。
トンネルデバイスモジュール503はまた、モビリティプロトコルモジュール502からトンネルの設定を削除する通知を受けた場合に記憶部505から該当するトンネルの設定を削除する。
トンネルデバイスモジュール503はまた、ネットワークスタック501から渡された、トンネリングされたパケットが、記憶部に格納されたトンネルの設定に従っているか否かを検査し、外側IPヘッダおよびトンネリングプロトコルヘッダを削除してネットワークスタック501へ出力する。
パケット監視モジュール504は、モビリティプロトコルモジュール502から渡されたプロトコル番号とIPアドレスの組を記憶部505に格納する。
パケット監視モジュール504はまた、モビリティプロトコルモジュール502から前記の組を削除するよう通知を受けたときに、前記の組を記憶部505から削除する。
パケット監視モジュール504はまた、前記の組のプロトコル番号に該当するトランスポートプロトコルヘッダを含み、かつ前記の組のIPアドレスが送信元IPアドレスと一致するパケットを検知したときに、モビリティプロトコルモジュール502へ通知する。
パケット監視モジュール504はまた、ハンドオーバ後にホームエージェント500が使用するネットワークを介して端末400から最初に受信したパケットのトンネリングプロトコルヘッダに含まれるシーケンスナンバーを、モビリティプロトコルモジュール502へ出力する。
パケット監視モジュール504はまた、モビリティプロトコルモジュール502から受け取ったシーケンスナンバーを記憶部505に格納する。
パケット監視モジュール504はまた、ネットワークスタック501から受け取ったパケットのトンネリングプロトコルヘッダに含まれるシーケンスナンバーが、記憶部505に格納されたシーケンスナンバーに一致するか否かを判定し、一致した場合はモビリティプロトコルモジュール502に通知し、前記の判定後前記パケットをネットワークスタック501へ出力する。
このような通信システムにおけるハンドオーバ時の処理フローを図16を用いて説明する。本実施形態では使用するネットワークをセルラーネットワークから無線LANへ切り替える場合について説明する。また、端末400とホームエージェント500はトンネリングプロトコルとしてGRE(Generic Routing Encapsulation)を使用するものとする。
(ステップS1600)端末400とホームエージェント500はセルラーネットワークを介してトンネルを確立済みであり、端末400はホームエージェント500を介してパケットを通信相手機器600へ送信している。
端末400は以下のような処理を行っている。ここで、端末400の記憶部406には、セルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1及びホームエージェント500のIPアドレスHAの組が、1つのトンネルの設定として記憶されている。
端末400のアプリケーションモジュール403は、送信データを生成し、ネットワークスタック401へ出力する。
ネットワークスタック401はアプリケーションモジュール403から受け取った送信データにトランスポートヘッダとIPヘッダを付与してパケットを作成し、トンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は、記憶部406からIPアドレスCoA1およびIPアドレスHAの組をトンネルの設定として取得し、取得したトンネルの設定に従って
Protocol typeフィールドが0800であるGREヘッダおよび外側IPヘッダを付与し、図17に示すようなパケットを作成する。
但し、GREヘッダのシーケンスナンバーフィールド(図示せず)には、直前にトンネリングして送信した、ホームエージェント500宛のパケットのGREヘッダ中のシーケンスナンバーフィールドの値に1を足した値を指定する。
直前に送信したパケット中のシーケンスナンバーフィールドの値が16進数で0xffffffffの場合は、GREヘッダのシーケンスナンバーフィールドに1を指定する。
そして、トンネルデバイスモジュール404は、パケットをネットワークスタック401へ出力する。
ネットワークスタック401はトンネルデバイスモジュール404から受け取ったトンネリングされたパケットをセルラーネットワーク用インタフェース410へ出力する。セルラーネットワーク用インタフェース410は、ネットワークスタック401から受け取ったパケットをホームエージェント500へ送信する。
端末400から送信されたパケットを受信したホームエージェント500は以下のような処理を行う。ここで、ホームエージェント500の記憶部505には、端末400のセルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1、端末400のIPアドレスHoA、及びホームエージェント500のIPアドレスHAの組が、1つのトンネルの設定として記憶されている。
ホームエージェント500のネットワークインタフェース510は、端末400から図17に示すようなパケットを受信すると、受信したパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、パケットをパケット監視モジュール504へ出力する。
パケット監視モジュール504は、記憶部505からパケットの特徴を示すデータを
取得し、そのデータにパケットが該当するか否かを判定する。ステップS1600では、記憶部505にパケットの特徴を示すデータは何も格納されていないため、該当しないという判定結果になる。
該当しない場合、パケット監視モジュール504はパケットをネットワークスタック501へ出力する。該当するという判定結果の場合の処理は、ステップS1606及びS1607で説明する。
ネットワークスタック501は、パケット監視モジュール504から受け取ったパケットがGREでトンネリングされたパケットであることから、パケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、記憶部505からIPアドレスCoA1を含むトンネルの設定を取得する。前述のとおり、記憶部505にはIPアドレスCoA1及びIPアドレスHoAの組がトンネルの設定として記憶されているため、トンネルデバイスモジュール503はIPアドレスHoAを取得する。
トンネルデバイスモジュールは、取得したIPアドレスHoAとパケットの内側IPヘッダの送信元IPアドレスを比較し、一致した場合、パケットの外側IPヘッダおよびGREヘッダを削除し、図5に示すようなパケットを作成し、ネットワークスタック501へ出力する。
前記の比較でアドレスが一致しない場合、トンネルデバイスモジュール503はパケットを破棄する。
トンネルデバイスモジュール503からパケットを受信したネットワークスタック501は、パケットの送信先IPアドレスがホームエージェント500に割り当てられたIPアドレスHAではないことから他の機器へ転送すべきパケットであることを検知し、パケットをネットワークインタフェース510へ出力する。
ネットワークインタフェース510は、受け取ったパケットを通信相手機器600へ送信する。
(ステップS1601)端末400が使用するネットワークをセルラーネットワークから無線LANへ切り替えることを決定する。
ハンドオーバトリガモジュール405は、常時セルラーネットワーク用インタフェース410または無線LAN用インタフェース420からセルラーネットワークや無線LANにおける通信品質に関する情報を取得している。
そして、ハンドオーバトリガモジュール405は、前記情報やその他の情報が一定の条件を満たすと、ハンドオーバを開始することを決定し、モビリティプロトコルモジュール402に通知する。
(ステップS1602)端末400の無線LAN用インタフェース420からホームエージェントへRegistration Requestメッセージが送信される。端末400及びホームエージェント500で行われる処理は、上記第2の実施形態におけるステップS1402と同様である。
(ステップS1603)ホームエージェント500から端末400の無線LAN用インタフェース420へRegistration Replyメッセージが送信される。端末400及びホームエージェント500で行われる処理は、上記第2の実施形態におけるステップS1403と同様である。
(ステップS1604)ホームエージェント500がRegistration Requestメッセージの内容を受け入れる場合、ホームエージェントは上記第2の実施形態におけるステップS1404と同様の処理を行うことで、新規のトンネルを設定する。
また、ホームエージェント500のモビリティプロトコルモジュール502は、GREのプロトコル番号47および送信元IPアドレスCoA2の組を、検知対象のパケットの特徴を示すデータとしてパケット監視モジュール504へ出力する。
パケット監視モジュール504は、GREプロトコルのプロトコル番号47及びIPアドレスCoA2を記憶部505に格納する。
(ステップS1605)端末400は、上記第2の実施形態におけるステップS1405と同様の処理を行うことで、新たなトンネルを設定する。
(ステップS1606)端末400は、無線LANとホームエージェント500を介してパケットを通信相手機器600へ送信する。
端末400のアプリケーションモジュール403は、送信データを生成し、ネットワークスタック401へ出力する。
ネットワークスタック401はアプリケーションモジュール403から受け取った送信データにトランスポートヘッダとIPヘッダを付与し、トンネルデバイスモジュール404へ出力する。
トンネルデバイスモジュール404は、記憶部406から無線LAN用インタフェース420のIPアドレスCoA2およびホームエージェント500のIPアドレスHAの組をトンネルの設定として取得する。
そして、トンネルデバイスモジュール404は、取得したトンネルの設定に従い、ネットワークスタック401から受け取ったパケットに、Protocol typeフィールドが0800であるGREヘッダおよび外側IPヘッダを付与し、図18に示すようなパケットを作成する。
但し、GREヘッダのシーケンスナンバーフィールドには、直前にトンネリングしてホームエージェント500へ送信したパケットのGREヘッダ中のシーケンスナンバーフィールドの値に1を足した値を指定する。
直前に送信したパケット中のシーケンスナンバーフィールドの値が16進数で0xffffffffである場合は、GREヘッダのシーケンスナンバーフィールドに1を指定する。
トンネルデバイスモジュール404は、生成したパケットをネットワークスタック401へ出力する。
ネットワークスタック401は、トンネルデバイスモジュール404から受け取った、
トンネリングされたパケットを無線LAN用インタフェース420へ出力する。無線LAN用インタフェース420は、ネットワークスタック401から受け取ったパケットをホームエージェント500へ送信する。
ホームエージェント500は、端末400から無線LAN又はセルラーネットワークを介してトンネリングされたパケットを受信すると、以下のような処理を行う。
ホームエージェント500のネットワークインタフェース510は、受信したパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、前記パケットをパケット監視モジュール504へ出力する。
パケット監視モジュール504は、記憶部505に検知対象のパケットの特徴を示すデータがあれば取得する。ステップS1604において、記憶部505にはGREのプロトコル番号47、及び送信元IPアドレスCoA2の組が前記データとして格納されているため、パケット監視モジュール504は前記の組を取得することになる。
パケット監視モジュール504は、前記パケットが取得したデータに該当するか否かを判定する。
前記パケットがセルラーネットワークを介して端末400から受信したパケットである場合、トランスポートヘッダはGREであるが、送信元IPアドレスがCoA1であるため、取得したデータに該当しない。該当しない場合、パケット監視モジュール504は前記パケットをネットワークスタック501へ出力する。
一方、前記パケットが端末400の無線LAN用インタフェース420から無線LANを介して初めて受信した、トンネリングされたパケットである場合、前記パケットは取得したデータに該当する。該当する場合、パケット監視モジュール504は該当するパケットのGREプロトコルヘッダに含まれるシーケンスナンバーをモビリティプロトコルモジュール502に通知し、ネットワークスタック501へ前記パケットを出力する。
ネットワークスタック501は、パケット監視モジュール503から受け取った前記パケットがGREでトンネリングされたパケットであることから、前記パケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、記憶部505から前記パケットの送信元IPアドレスを含むトンネルの設定を取得する。前述のとおり、記憶部505にはIPアドレスCoA1及びIPアドレスHoAの組と、IPアドレスCoA2及びIPアドレスHoAの組が、トンネルの設定として記憶されているため、トンネルデバイスモジュール503はIPアドレスHoAを取得する。
トンネルデバイスモジュールは、取得したIPアドレスHoAと前記パケットの内側IPヘッダの送信元IPアドレスを比較し、一致した場合、外側IPヘッダおよびGREヘッダを削除して、図5に示すようなパケットを作成し、ネットワークスタック501へ出力する。
一方、前記の比較でIPアドレスが一致しない場合、トンネルデバイスモジュール503は前記パケットを破棄する。
トンネルデバイスモジュール503からパケットを受信したネットワークスタック501は、パケットの送信先IPアドレスがホームエージェント500に割り当てられたIPアドレスHAではないことから他の機器へ転送すべきパケットであることを検知し、パケットをネットワークインタフェース510へ出力する。
ネットワークスタック501からパケットを受け取ったネットワークインタフェース510は、パケットを通信相手機器600へ送信する。
なお、一般に、無線LANにおけるネットワーク遅延は、セルラーネットワークにおけるネットワーク遅延よりも小さい。従って、無線LANを介して端末400から受信する最初のトンネリングされたパケットは、セルラーネットワークを介して端末400から受信する最後のトンネリングされたパケットよりも先にホームエージェント500に到着する。
(ステップS1607)ホームエージェント500のモビリティプロトコル502がステップS1606においてシーケンスナンバーを受信すると、ホームエージェント500は以下の処理を行うことで、端末400からセルラーネットワークを介して最後に送信されたパケットの検知を開始する。
ホームエージェント500のモビリティプロトコルモジュール502は、パケット監視モジュール504に、GREプロトコル番号47および送信元IPアドレスCoA2の組を出力することで、ステップS1604において記憶部505に格納したパケットの特徴を表すデータを削除するよう、通知する。
パケット監視モジュール504は、GREプロトコル番号47および送信元IPアドレスCoA2の組を記憶部505から削除する。
モビリティプロトコルモジュール502は、ステップS1606でパケット監視モジュール504から受け取ったシーケンスナンバーから1を引いた値と、GREのプロトコル番号47をパケット監視モジュール504に通知する。
なお、前記シーケンスナンバーの値が1である場合は16進数0xffffffffとGREのプロトコル番号47を通知する。
そして、パケット監視モジュール504は、通知されたシーケンスナンバーとGREのプロトコル番号47の組を検知対象のパケットの特徴として記憶部505に格納する。なお、以降の説明において、パケット監視モジュール504が記憶部505に格納したシーケンスナンバーをSとする。このシーケンスナンバーSはセルラーネットワークを介して端末400からトンネリングされた最後のパケットのシーケンスナンバー(最終シーケンス番号)を示す。
(ステップS1608)セルラーネットワークを介して端末400からトンネリングされた最後のパケットを受信すると、ホームエージェント500は以下の処理を行う。
ホームエージェント500のネットワークインタフェース510は、受信パケットをネットワークスタック501へ出力する。
次に、ネットワークスタック501は、前記パケットをパケット監視モジュール504へ出力する。
次に、パケット監視モジュール504は、記憶部505に検知対象のパケットの特徴を示すデータがあれば取得する。ステップS1607において、記憶部505にはGREのプロトコル番号47と、シーケンスナンバーSが前記データとして格納されている。従って、パケット監視モジュール504は前記の組を取得することになる。
パケット監視モジュール504は、ネットワークスタック501から受け取ったパケットが前記の組に該当するか否かを判定する。このパケットはセルラーネットワークを介して端末400からトンネリングされた最後のパケットであるため、前記の組に該当し、パケット監視モジュール504は該当パケットを検知したことをモビリティプロトコルモジュール502に通知する。
そして、パケット監視モジュール504はこのパケットをネットワークスタック501へ出力する。
ネットワークスタック501は、パケット監視モジュール504から受け取ったパケットがGREでトンネリングされたパケットであることから、パケットをトンネルデバイスモジュール503へ出力する。
トンネルデバイスモジュール503は、記憶部505からパケットの送信元IPアドレスCoA1を含むトンネルの設定を取得する。前述のとおり、記憶部にはIPアドレスCCoA1とIPアドレスHoAの組が、トンネルの設定として記憶されているため、トンネルデバイスモジュール503はIPアドレスHoAを取得する。
トンネルデバイスモジュール503は、取得したIPアドレスHoAと前記パケットの内側IPヘッダの送信元IPアドレスを比較し、一致した場合、前記パケットの外側IPヘッダおよびGREヘッダを削除し、図5に示すようなパケットを作成し、ネットワークスタック501へ出力する。
一方、前記の比較でIPアドレスが一致しない場合、トンネルデバイスモジュール503は前記パケットを破棄する。
トンネルデバイスモジュール503からパケットを受け取ったネットワークスタック501は、パケットの送信先IPアドレスがホームエージェント500に割り当てられたIPアドレスではないことから他の機器へ転送すべきパケットであることを検知し、このパケットをネットワークインタフェース501へ出力する。
ネットワークインタフェース510は、ネットワークスタック501から受け取ったパケットを通信相手機器600へ送信する。
ステップS1608においてホームエージェント500が無線LANを介してトンネリングされたパケットを受信した場合は、記憶部505に格納されたシーケンスナンバーSが前記パケットのGREプロトコルヘッダに含まれるシーケンスナンバーに一致しない。
従って、パケット監視モジュール504がモビリティプロトコルモジュール502に通知しないこと以外は、上述した処理と同様の処理が行われる。
このような処理により、ホームエージェント500は、ハンドオーバ前に使用していたネットワークを介して受信した最後のトンネリングされたパケットを検知することが可能となる。
(ステップS1609)端末400が、ハンドオーバ前に使用していたトンネルの設定を削除する。
まず、端末400のモビリティプロトコルモジュール402が、セルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1及びホームエージェント500のIPアドレスHAの組をトンネルデバイスモジュール404に通知する。
そして、トンネルデバイスモジュール404が、記憶部406からIPアドレスCoA1及びHAの組で表されるトンネルの設定を削除する。
この処理は新規トンネルの設定(ステップS1605)後の任意のタイミングで行われる。
(ステップS1610)ホームエージェント500のモビリティプロトコルモジュール502がパケット監視モジュール504から通知を受けると、ホームエージェント500は以下のような処理を行うことでハンドオーバ前に使用していたトンネルの設定を削除する。
ホームエージェント500のモビリティプロトコルモジュール502は、パケット監視モジュール504に、シーケンスナンバーS及びプロトコル番号47の組を出力することで、ステップS1607において記憶部505に格納したパケットの特徴を表すデータを削除するよう、通知する。
パケット監視モジュール504は、GREプロトコル番号47および送信元IPアドレスCoA2の組を記憶部505から削除する。
そして、モビリティプロトコルモジュール502は、端末400のセルラーネットワーク用インタフェース410に割り当てられたIPアドレスCoA1、端末400のIPアドレスHoA、及びホームエージェント500のIPアドレスHAの組をトンネルデバイスモジュール504に通知する。
次に、トンネルデバイスモジュール504は、記憶部505からCoA1、HoA、及びHAの組で表されるトンネルの設定を削除する。
このような処理を行うことで、ホームエージェント500が図17に示すようなパケットを受信した場合、トンネルデバイスモジュール503は、前記パケットの外側IPヘッダの送信元IPアドレスと送信先IPアドレスに一致するトンネルの設定が、記憶部505に存在しないことから、前記パケットが不正なパケットであると判断し、前記パケットを破棄できるようになる。
このように、本実施形態では、端末400は、シーケンスナンバーをトンネル用のヘッダに記すトンネリングプロトコルでホームエージェント500を介して通信相手機器600にパケットを送信する。また、ホームエージェント500は、ハンドオーバ後に使用するネットワーク経由で端末400から受信した最初のパケットの内容から、ハンドオーバ前に使用していたネットワーク経由で受信する最後のパケットの特徴を予測し、ハンドオーバ前に利用していたネットワーク経由で端末から受信したパケットが予測した特徴に一致した時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知する。
従って、ホームエージェント500は、ハンドオーバ前に使用していたトンネルを介して端末から全てのパケットを受信し終えた時点で即時に前記トンネルを削除可能となり、メモリリソースを効率的に使用することができる。
また、本実施形態に係る端末400およびホームエージェント500は、Mobile IPv4の仕様に適合しない特殊なメッセージを送受信する機能を保持する必要がなく、ホームエージェント500が端末400に対し相互接続性を担保できる。
また、上記第3の実施形態において、端末400およびホームエージェント500のトンネルデバイスモジュール404、503は、GREプロトコルの代わりにシーケンスナンバーをプロトコルヘッダに記載可能な例えばESPやAHといったトンネリングプロトコルを利用してもよい。
また、上記第3の実施形態においては、記憶部505に格納されたシーケンスナンバーSから決められた範囲内のシーケンスナンバーを含むパケット全てをホームエージェント500が受信し終えた時点を、ハンドオーバ前に使用していたトンネルを削除可能となる時点として検知してもよい。
この場合、ハンドオーバ前に使用していたネットワーク上で、パケットの転送順が入れ替わっても、ホームエージェント500は、ハンドオーバ前に使用していたトンネルを削除可能となる時点を検知可能となる。なお、前記範囲は一定である必要はなく、ハンドオーバのたびに変化させてもよい。
また、上記第3の実施形態においては、Mobile IPv4をモビリティプロトコルとした場合の例を説明したが、モビリティプロトコルがMobile IPv6 であっても、MOBIKEであっても、その他のプロトコルであってもよい。モビリティプロトコルがMobile IPv4でない場合は、Mobile IPv4のRegistration RequestおよびRegistration Replyの代わりにMobile IPv6やMOBIKEの仕様、その他のモビリティプロトコルの仕様に規定されている、ハンドオーバに必要なメッセージを端末とホームエージェントが送受信する。
なお、本発明の第1〜第3の実施形態においては、セルラーネットワーク用インタフェース110、410および無線LAN用インタフェース120、420は、例えば有線のEthernetに対応したインタフェースでも、802.16、802.16eに対応したインタフェースでも、Bluetoothや赤外線通信に対応したインタフェースであってもよい。
また、本発明の第1の実施形態においては、セルラーネットワーク用インタフェース110および無線LAN用インタフェース120の代わりに、異なるアクセスネットワークに接続される、同一プロトコルに対応した複数のネットワークインタフェースを搭載している端末であってもよい。
さらに、本発明の第1〜第3の実施形態においては、端末100、400は、2つ以上のネットワークインタフェースを搭載していてもよく、端末に搭載されたネットワークインタフェースのうち、2つのネットワークインタフェースを用いて、通信相手機器との通信に使用するネットワークを切替えるために本発明を適用可能である。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明の第1の実施形態に係る通信システムの概略構成図である。 同第1の実施形態に係るホームエージェントの概略構成図である。 同第1の実施形態に係る通信システムにおけるハンドオーバ時の処理フローである。 端末から送信されるパケットの構成例である。 ホームエージェントから通信相手機器へ送信されるパケットの構成例である。 Registration Requestメッセージの一例を示す図である。 Registration Replyメッセージの一例を示す図である。 端末から送信されるパケットの構成例である。 ICMP Echo Requestメッセージの一例を示す図である。 ICMP Echo Replyメッセージの一例を示す図である。 本発明の第2の実施形態に係る通信システムの概略構成図である。 同第2の実施形態に係る端末の概略構成図である。 同第2の実施形態に係るホームエージェントの概略構成図である。 同第2の実施形態に係る通信システムにおけるハンドオーバ時の処理フローである。 通知メッセージの一例を示す図である。 本発明の第3の実施形態に係る通信システムにおけるハンドオーバ時の処理フローである。 端末から送信されるパケットの構成例である。 端末から送信されるパケットの構成例である。
符号の説明
10 セルラー基地局
20 無線LAN基地局
100 端末
110 セルラーネットワーク用インタフェース
120 無線LAN用インタフェース
200 ホームエージェント
300 通信相手機器

Claims (16)

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

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008215479A JP4945530B2 (ja) 2008-08-25 2008-08-25 ホームエージェント、通信システム、及び通信方法
US12/546,901 US8509182B2 (en) 2008-08-25 2009-08-25 Home agent

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008215479A JP4945530B2 (ja) 2008-08-25 2008-08-25 ホームエージェント、通信システム、及び通信方法

Publications (2)

Publication Number Publication Date
JP2010050900A true JP2010050900A (ja) 2010-03-04
JP4945530B2 JP4945530B2 (ja) 2012-06-06

Family

ID=41696316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008215479A Expired - Fee Related JP4945530B2 (ja) 2008-08-25 2008-08-25 ホームエージェント、通信システム、及び通信方法

Country Status (2)

Country Link
US (1) US8509182B2 (ja)
JP (1) JP4945530B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012156796A (ja) * 2011-01-26 2012-08-16 Nec Corp 通信システム、通信端末、ゲートウェイ、通信方法及びプログラム
JP2013197633A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 携帯型端末装置及び携帯型端末装置の制御方法
JP2014510485A (ja) * 2011-03-08 2014-04-24 アルカテル−ルーセント 疎結合アーキテクチャにおける技術間ハンドオフを実行する方法
JP2015050698A (ja) * 2013-09-03 2015-03-16 古河電気工業株式会社 ネットワークシステム、ブランチルータ、および、その制御方法
WO2019175935A1 (ja) * 2018-03-12 2019-09-19 株式会社Nttドコモ 通信端末および通信方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009212606A (ja) * 2008-02-29 2009-09-17 Fujitsu Ltd 音声呼通信切替システム
US8411683B2 (en) * 2009-09-04 2013-04-02 Comcast Cable Communications, Llc Method and apparatus for providing connectivity in a network with multiple packet protocols
US9094864B2 (en) * 2011-03-02 2015-07-28 Qualcomm Incorporated Architecture for WLAN offload in a wireless device
CN103947249B (zh) * 2011-09-30 2018-04-27 英特尔公司 通过多个无线网络同时地传送因特网业务的方法
US10044612B2 (en) * 2013-11-06 2018-08-07 Citrix Systems, Inc. Systems and methods for port allocation
US11394580B2 (en) * 2016-02-18 2022-07-19 Alcatel Lucent Data transmission
CN106302248B (zh) * 2016-08-31 2021-10-12 新华三技术有限公司 一种邻居建立方法及装置
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 (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336720A (ja) * 1997-05-28 1998-12-18 Nec Corp Cdmaハンドオフ方式及びそれを用いた移動通信セルラーシステムとその基地局
JP2003153327A (ja) * 2001-11-12 2003-05-23 Matsushita Electric Ind Co Ltd 無線通信システム及びそれに用いられるハンドオーバを実施する方法及び無線通信端末
WO2004077870A1 (ja) * 2003-02-26 2004-09-10 Fujitsu Limited 移動通信におけるダイバーシチハンドオーバー方法及び制御局並びに移動端末装置
JP2005311702A (ja) * 2004-04-21 2005-11-04 Mitsubishi Electric Corp ハンドオーバ方法
JP2006261902A (ja) * 2005-03-16 2006-09-28 Nec Corp アドホックネットワークにおけるアドホックルータの移動管理方法
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 モバイルネットワーク通信における切換の方法と装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985463B1 (en) * 2001-03-08 2006-01-10 Ipr Licensing, Inc. Resource utilization efficiency during hand-off in mobile communication systems
JP4161782B2 (ja) * 2002-04-18 2008-10-08 松下電器産業株式会社 モバイルノードおよび移動通信方法
JP2005244590A (ja) 2004-02-26 2005-09-08 Samsung Yokohama Research Institute Co Ltd マルチサービス端末、ハンドオフ方法、ハンドオフプログラム
US8630645B2 (en) * 2006-02-09 2014-01-14 Cisco Technology, Inc. Fast handoff support for wireless networks
KR100965676B1 (ko) * 2006-09-08 2010-06-24 삼성전자주식회사 프락시 모바일 아이피를 지원하는 이동통신 시스템에서 이동 노드의 핸드오프 방법 및 시스템
WO2008089781A1 (en) * 2006-12-14 2008-07-31 Telefonaktiebolaget Lm Ericsson (Publ) Network-based handover control mechanism

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10336720A (ja) * 1997-05-28 1998-12-18 Nec Corp Cdmaハンドオフ方式及びそれを用いた移動通信セルラーシステムとその基地局
JP2003153327A (ja) * 2001-11-12 2003-05-23 Matsushita Electric Ind Co Ltd 無線通信システム及びそれに用いられるハンドオーバを実施する方法及び無線通信端末
WO2004077870A1 (ja) * 2003-02-26 2004-09-10 Fujitsu Limited 移動通信におけるダイバーシチハンドオーバー方法及び制御局並びに移動端末装置
JP2005311702A (ja) * 2004-04-21 2005-11-04 Mitsubishi Electric Corp ハンドオーバ方法
JP2006261902A (ja) * 2005-03-16 2006-09-28 Nec Corp アドホックネットワークにおけるアドホックルータの移動管理方法
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 (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012156796A (ja) * 2011-01-26 2012-08-16 Nec Corp 通信システム、通信端末、ゲートウェイ、通信方法及びプログラム
JP2014510485A (ja) * 2011-03-08 2014-04-24 アルカテル−ルーセント 疎結合アーキテクチャにおける技術間ハンドオフを実行する方法
JP2013197633A (ja) * 2012-03-15 2013-09-30 Fujitsu Ltd 携帯型端末装置及び携帯型端末装置の制御方法
JP2015050698A (ja) * 2013-09-03 2015-03-16 古河電気工業株式会社 ネットワークシステム、ブランチルータ、および、その制御方法
WO2019175935A1 (ja) * 2018-03-12 2019-09-19 株式会社Nttドコモ 通信端末および通信方法

Also Published As

Publication number Publication date
JP4945530B2 (ja) 2012-06-06
US20100046474A1 (en) 2010-02-25
US8509182B2 (en) 2013-08-13

Similar Documents

Publication Publication Date Title
JP4945530B2 (ja) ホームエージェント、通信システム、及び通信方法
CN101946542B (zh) 用于多模式移动站的技术间切换的方法和装置
KR102293786B1 (ko) 릴레이 가능 사용자 장비(ue)를 통하여 원격 ue 및 통신 네트워크 사이의 접속을 확립하는 방법 및 시스템
JP5437406B2 (ja) ソースアクセスシステムおよびターゲットアクセスシステム間のハンドオフのための方法および装置
CN109565729B (zh) 用于5g与lte之间的移动性的端标记处理
US20050083885A1 (en) Movement detection method and a mobile terminal
US8000297B2 (en) Access router based mobile IPv6 fast handover method
KR101521886B1 (ko) 이동통신 시스템에서 지티피 처리를 위한 장치 및 방법
US20110096660A1 (en) Handover processing method, and mobile terminal used in the method
US20120157102A1 (en) Handover Method and Handover Device
US9832695B2 (en) Method, device, network element and system for switching a network
JP2009218929A (ja) 基地局、移動端末および通信プログラム
EP2369892A1 (en) Improved Utilization of Radio Interface Resources for Wireless Relays
CN111200851A (zh) 一种数据通信方法以及装置
CN1961537B (zh) 通信系统、移动终端和接入路由器
JP4945529B2 (ja) 移動端末、通信システム、及び通信方法
WO2010111873A1 (zh) Hrpd系统中非3gpp2消息传输的方法和系统
CN1926823B (zh) 通信系统、移动终端和接入路由器
Liebsch et al. Transient binding for proxy mobile IPv6
US8077660B2 (en) Base station apparatus, access gateway apparatus, communication control system and communication control method
WO2022185942A1 (ja) リレーノード及び基地局
US8077661B2 (en) Access gateway apparatus, base station apparatus, communication control system and communication control method
Le et al. Preliminary binding: An extension to proxy mobile IPv6 for inter-technology handover
WO2016161551A1 (zh) 用于多流汇聚的方法和装置
Muhanna et al. RFC 6058: Transient Binding for Proxy Mobile IPv6

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110324

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: 20120207

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120208

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