以下、本発明の実施の形態について、図面を参照して詳細に説明する。なお、各図において同一の構成または機能を有する構成要素及び相当部分には、同一の符号を付してその説明は繰り返さない。
(実施の形態1)
図1は、本発明の実施の形態1に係る通信システムの構成を示すブロック図である。
図1に示すように、本例の通信システム100においては、宅内にプライベートネットワーク114が構成されている。
プライベートネットワーク114には、プレゼンス機能を持つ宅内機器である固定端末118や、プレゼンス機能を持たない家電機器117、また、プレゼンス機能を持つ移動可能な携帯電話やノートPC等の移動端末115が接続されている。
ここでいうプレゼンスとは、装置(または、人)の状態とコミュニケーション能力を示すものであり、プレゼンス機能は、プレゼンスを他の装置に見せたり、他の装置のプレゼンスを見たりする機能をいう。
このプレゼンスを実現する技術としては、SIP(Session Initiation Protocol)/SIMPLE(SIP for Instant Messaging and Presence Leveraging Extensions)があり、基本的には次のように動作する。
すなわち、これらの技術においては、プレゼンスを見せる人(プレゼンティティ)がプレゼンスサーバにプレゼンスを登録(以下、これを「状態登録」という)し、プレゼンスを見たい人(ウォッチャー)がプレゼンスサーバに、プレゼンスの変更を通知するように依頼する(以下、これを「状態通知依頼」という)。
プレゼンティティのプレゼンスが変更され、プレゼンスサーバにプレゼンティティが状態登録した場合には、プレゼンスサーバは、通知を依頼したウォッチャーにプレゼンスを通知(以下、これを「状態通知」という)する。
プライベートネットワーク114を構成する宅内機器は、NAPT機能とプレゼンスサーバ機能を持っているゲートウェイ(以下、これを「ホームGW」という)120を介して、ISP(Internet Service Provider)123の通信網に接続され、さらにインターネット113に接続されている。
また、移動端末115は、宅外に移動した際に、構内ネットワークやホットスポット(Hot-Spot)等の別のプライベートネットワーク121に参加可能であり、その際には、NAPT機能を有している宅外のゲートウェイ122を介してインターネット113に接続される。
宅外のゲートウェイ122には、UPnP IGD(Universal Plug & play Internet Gateway Device)が実装されている。
これにより、移動端末115は、プライベートネットワーク121に移動した際に、UPnP IGDによって、ゲートウェイ122のグローバルIPアドレスやグローバルポート番号を取得することができる。
UPnP IGDは、ネットワーク上に接続された通信端末のプラグアンドプレイ(Plug & Play)を実現するプロトコルであり、通信端末がネットワーク上のNAPT搭載ルーターを検出し、検出したNAPT搭載ルーターに対して、通信端末がプライベートポート番号とグローバルポート番号のポートマッピングを生成する等の制御を実施する。
次に、本例の通信システム100におけるホームGW120の構成について説明する。図2は、本発明の実施の形態1に係る通信システムにおけるホームゲートウェイの構成を示すブロック図である。
図2に示すように、本例の通信システム100におけるホームGW120は、ISP123の通信網に接続されているインターネット側ネットワークインタフェース(NIC:Network Interface Card)201、宅内側に接続されているプライベートネットワーク側ネットワークインタフェース202を備えている。
また、ホームGW120は、アドレス−ポート番号変換テーブル203、アドレス−ポート番号変換処理部204、ポートマッピング処理部205、アドレス取得部206、アドレス割当部207、ネットワーク情報管理部208、ネットワーク情報管理テーブル209、プレゼンスサーバ機能部210を備えている。
アドレス−ポート番号変換テーブル203は、図3に示すように、プライベートIPアドレス/ポート番号と、グローバルIPアドレス/ポート番号がマッピングされている。
アドレス−ポート番号変換処理部204は、アドレス−ポート番号変換テーブル203を基に、NAPT変換を実施する。
ポートマッピング処理部205は、宅内機器のUPnP IGDによるポートマッピング要求を受信して、プライベートIPアドレスとプライベートポート番号に対するグローバルポート番号を割り当てる。
アドレス取得部206は、ISP123からホームGW120のグローバルIPアドレスを取得する。
アドレス割当部207は、DHCP(Dynamic Host Control Protocol)等で宅内の各ネットワーク端末にプライベートIPアドレスを割り当てる。
ネットワーク情報管理部208は、ネットワーク情報管理テーブル209を管理する。
図2において、ポートマッピング処理部205、アドレス取得部206、アドレス割当部207は、取得または割り当てたネットワーク情報を、ネットワーク情報管理部208へ通知する。
ネットワーク情報管理部208は、ネットワーク情報管理テーブル209のネットワーク情報の更新と、プレゼンスサーバ機能部210へのネットワーク情報の通知を行う。
図4は、本発明の実施の形態1に係る通信システムにおけるホームゲートウェイのネットワーク情報管理部の処理を示すフローチャートである。
図4に示すように、ネットワーク情報管理部208の処理がスタートすると、ネットワーク情報管理部208は、まず、ポートマッピング処理部205、アドレス取得部206、アドレス割当部207等の他処理部からネットワーク情報が通知されたか否かを判断する(ステップST401)。
そして、ステップST401において、他処理部からネットワーク情報が通知された場合には、ネットワーク情報とともに通知されたネットワーク端末の名前やMACアドレスを基に、ネットワーク情報管理テーブル209内の対応するネットワーク端末のネットワーク情報を変更する(ステップST402)。
その後、ネットワーク端末の名前と変更したネットワーク情報をプレゼンスサーバ機能部210へ通知する(ステップST403)。
図5は、本発明の実施の形態1に係る通信システムにおけるホームゲートウェイのネットワーク情報管理テーブルの一例を示す図である。
図5に示すように、ネットワーク情報管理テーブル209には、宅外または宅内に存在していたネットワーク端末のIPアドレスやポート番号、名前やMACアドレス等が記載されている。
ホームGW120のプレゼンスサーバ機能部210は、状態変更検出部211、通知依頼管理部212、状態通知依頼管理テーブル213、プレゼンスメッセージ処理部214を備えている。
状態変更検出部211は、状態が変更されたことを検出する。
通知依頼管理部212は、状態通知依頼管理テーブル213を用いて各ネットワーク端末からの状態通知依頼を管理する。
プレゼンスメッセージ処理部214は、通知依頼メッセージ、状態登録メッセージ、状態通知メッセージ等のプレゼンスメッセージを送受信するとともに、プレゼンスメッセージ内のネットワーク情報をネットワーク情報管理部208に通知する。
プレゼンスサーバ機能部210の状態通知依頼管理テーブル213は、図6に示すように、依頼元の名前とIPアドレス、依頼元が状態の変更を通知してもらいたいネットワーク端末の名前、及び依頼元に対して状態登録か状態通知かのフラグ(以下、これを「登録/通知フラグ」という)をリストとして持つ。
なお、本例の通信システム100における状態通知依頼管理テーブル213は、ネットワーク端末の名前をリストとして持っているが、ネットワーク端末を一意に特定できれば、例えばMACアドレス等の名前以外のものでもよい。
ここで、プレゼンスサーバ機能部210の状態登録/状態通知処理について説明する。図7は、本発明の実施の形態1に係る通信システムにおけるホームゲートウェイのプレゼンスサーバ機能部の状態登録/状態通知処理を示すフローチャートである。
図7に示すように、プレゼンスサーバ機能部210の状態登録/状態通知処理がスタートすると、プレゼンスサーバ機能部210は、状態変更検出部211でネットワーク情報管理部208からネットワーク情報が通知されたか否かを判断する(ステップST701)。
そして、ステップST701において、ネットワーク情報が通知されたと判断された場合には、通知依頼管理部212で、状態通知依頼管理テーブル213にネットワーク情報が変更されたネットワーク端末(以下、これを「対象端末」という)に対して通知依頼したネットワーク端末(以下、これを「依頼元端末」という)が登録されていないかどうかを検索する(ステップST702)。
ここで、依頼元端末が登録されていなかった場合には、ステップST701に戻って、ネットワーク情報管理部208からの変更通知を待機する。
一方、ステップST702において、依頼元端末が登録されていた場合には、登録/通知フラグを参照する(ステップST703)。
そして、ステップST703において、登録/通知フラグが登録の場合には、プレゼンスメッセージ処理部214で依頼元端末に変更されたネットワーク情報を含む状態登録メッセージを送信する(ステップST704)。
また、ステップST703において、登録/通知フラグが通知の場合には、プレゼンスメッセージ処理部213で依頼元端末に変更されたネットワーク情報を含む状態通知メッセージを送信する(ステップST705)。
このような状態登録/状態通知処理を、状態通知依頼管理テーブル213に登録されている依頼元端末全てに対して実施した後、ネットワーク情報管理部208からのネットワーク情報の変更通知に対して待機する(ステップST701)。
ここで、状態登録メッセージと状態通知メッセージは、ネットワーク情報が変わったネットワーク端末の名前と、変更されたネットワーク情報を情報要素として含む。
また、アドレス−ポート番号変換処理部204は、NAPTを実施する以外に、ポートフィルタリングを実施する。ポートフィルタリングは、割り当てていないグローバルポート番号宛のIPパケットを検出し、検出した場合には、当該パケットを廃棄する機能である。これより、宅内機器への外部からの不正アクセスを遮断する。
次に、本例の通信システム100における移動端末115の構成について説明する。図8は、本発明の実施の形態1に係る通信システムにおける移動端末の構成を示すブロック図である。
図8に示すように、本例の通信システム100における移動端末115は、ネットワークインタフェース(NIC)801、アドレス取得部802、ポートマッピング処理部803、パケット生成部804、ネットワーク情報管理部805、ネットワーク情報管理テーブル806、プレゼンス機能部807を備えている。
移動端末115は、ネットワークインタフェース801を介して、プライベートネットワーク114(または121)に接続される。
アドレス取得部802は、DHCP等によりプライベートIPアドレス(もしくは、グローバルIPアドレス)を取得する。
ポートマッピング処理部803は、UPnP IGDによってホームGW120またはゲートウェイ122にポートマッピング生成を要求して、ポートマッピング情報を取得する。
パケット生成部804は、ネットワーク情報管理テーブル806を参照してパケットを生成する。
ネットワーク情報管理部805は、ネットワーク情報管理テーブル806を管理し、ネットワーク情報管理テーブル806のネットワーク情報の更新と、プレゼンス機能部807へのネットワーク情報の通知を実施する。ネットワーク情報管理部805の詳細は、ホームGW120におけるネットワーク情報管理部208の処理と同様である。
ネットワーク情報管理テーブル806には、ホームGW120のネットワーク情報管理テーブル209と同様、各ネットワーク端末の名前、MACアドレス、IPアドレス、ポート番号等のネットワーク情報が記載されている。
プレゼンス機能部807は、状態変更検出部808、通知依頼管理部809、状態通知依頼管理テーブル810、プレゼンスメッセージ処理部811を備えている。
状態変更検出部808は、ネットワーク情報の変更を検出する。
通知依頼管理部809は、図6に示した状態通知依頼管理テーブル213と同様の状態通知依頼管理テーブル810を用いて、宅内機器からの状態通知依頼を管理する。
プレゼンスメッセージ処理部811は、プレゼンスメッセージを処理する。
プレゼンス機能部807での状態登録/状態通知処理は、ホームGW120のプレゼンスサーバ機能部210と同様である。
図8において、移動端末115が保持する状態通知依頼管理テーブル810には、依頼元がホームGW120で、対象が移動端末(自装置)115であり、登録/通知フラグが登録フラグである依頼通知が登録されている。これは、ユーザが事前に状態通知依頼管理テーブル810に設定するか、もしくはホームGW120から登録依頼メッセージを受信して登録されてもよい。
なお、宅内の固定端末118は、移動端末115と同様の内部構成を有している。また、宅内の家電機器117は、プレゼンス機能部807を除いた移動端末115と同様の内部構成を有している。
次に、宅外の移動端末115から宅内機器へ、また、宅内機器から宅外の移動端末115へ接続する際のホームGW120と移動端末115の内部処理について説明する。
ユーザは、宅外の移動端末115から宅内機器、または宅内機器から宅外の移動端末115へ接続するにあたり、使用する宅内機器にプレゼンスサーバとしてホームGW120を設定し、接続したい宅内機器を登録する。この際、宅内機器のネットワーク情報等の設定は不要である。
まず、宅外の移動端末から宅内機器への接続処理について説明する。
図9は、本発明の実施の形態1に係る通信システムにおいて宅内から宅外に移動した移動端末が宅内の家電機器に接続する場合の処理を示すシーケンス図である。
図9のステップST901に示すように、まず、宅内の移動端末115は、ホームGW120、固定端末118、家電機器117のネットワーク情報が変わる毎に、そのネットワーク情報をホームGW120から通知してもらうように通知依頼メッセージをプレゼンスメッセージ処理部811で生成し、ホームGW120へ送信する。
通知依頼メッセージは、依頼元端末の名前と、ネットワーク情報の変更を知りたい宅内機器(ネットワーク端末)の名前を情報要素として含む。
ホームGW120では、受信した通知依頼メッセージに基づいてプレゼンスメッセージ処理部214で情報要素を抽出し、抽出した情報要素を、通知依頼管理部212を介して状態通知依頼管理テーブル213に登録する。
その後、ホームGW120は、プレゼンスメッセージ処理部214で通知依頼応答メッセージを生成し、移動端末115に送信する(ステップST901)。
図9のステップST902は、移動端末115が、宅内からプライベートネットワーク121に移動した時のシーケンスを示している。
図9のステップST902に示すように、移動端末115が宅内から宅外に移動した際には、DHCP等を用いて、アドレス取得部802でゲートウェイ122からプライベートIPアドレスを取得する。
また、移動端末115、UPnP IGDを用いて、ポートマッピング処理部803でゲートウェイ122からグローバルIPアドレス情報と、プライベートポート番号に対応するグローバルポート番号を取得する。
この際、移動端末115は、サービスを提供したい全プライベートポート番号に対して、グローバルポート番号を取得する。
そして、アドレス取得部802とポートマッピング処理部803は、取得したIPアドレス、ポート番号をネットワーク情報管理部805へ通知する。
ネットワーク情報管理部805は、ネットワーク情報管理テーブル806のネットワーク情報を変更して、プレゼンス機能部807に変更したネットワーク情報を通知する。
その後、プレゼンス機能部807で状態登録/状態通知処理を実施する。状態通知依頼管理テーブル810には、対象端末が移動端末115、依頼元端末がホームGW120、登録/通知フラグが登録フラグである通知依頼が登録されている。
このため、プレゼンスメッセージ処理部811は、ゲートウェイ122のグローバルIPアドレスと、プライベートポート番号とグローバルポート番号のマッピングリストを含む状態登録メッセージを生成し、ホームGW120に送信する。
ホームGW120では、プレゼンスメッセージ処理部214で状態登録メッセージを受信し、移動端末115のネットワーク情報を抽出して、当該ネットワーク情報をネットワーク情報管理部208に通知し、状態登録応答メッセージを移動端末115に送信する。
ネットワーク情報管理部208は、ネットワーク情報管理テーブル209内の移動端末115のネットワーク情報を受信した情報に変更する。
図9のステップST903は、ホームGW120がISP123からグローバルIPアドレスを再取得した時のシーケンスを示している。
ステップST903では、ホームGW120がISP123からグローバルIPアドレスを再取得した時、ネットワーク情報管理部208でネットワーク情報管理テーブル209内のホームGW120のネットワーク情報を変更するとともに、プレゼンスサーバ機能部210にネットワーク情報を通知する。プレゼンスサーバ機能部210では、状態登録/状態通知処理を実施する。
状態通知依頼管理テーブル213には、図9のステップST901で、移動端末115から、ホームGW120のネットワーク情報に対する通知依頼が登録されている。
このため、プレゼンスメッセージ処理部214は、ホームGW120のグローバルIPアドレスを含む状態通知メッセージを生成して、移動端末115に通知する。
このとき、プレゼンスメッセージ処理部214は、ネットワーク情報管理テーブル209内の移動端末115のネットワーク情報を参照して、状態通知メッセージの宛先アドレスにゲートウェイ122のグローバルIPアドレスを、宛先ポート番号に移動端末115のグローバルポート番号を設定する。
ゲートウェイ122では、宛先アドレスとポート番号を、プライベートIPアドレスとプライベートポート番号に変換して、状態通知メッセージを移動端末115に転送する。
状態通知メッセージを受信した移動端末115は、プレゼンスメッセージ処理部811でホームGW120のネットワーク情報を状態通知メッセージから抽出して、ネットワーク情報管理部805に通知し、状態通知応答メッセージをホームGW120へ送信する。
ネットワーク情報管理部805は、ネットワーク情報管理テーブル806内のホームGW120のネットワーク情報を変更する。
図9のステップST904は、宅内の家電機器117が、ホームGW120からプライベートIPアドレスやグローバルポート番号を取得した時のシーケンスを示している。
家電機器117は、ホームGW120から、DHCP等によりプライベートIPアドレスを、UPnP IGDを用いてプライベートポート番号に対応するグローバルポート番号を取得する。
このとき、ホームGW120のポートマッピング処理部205は、割り当てたプライベートポート番号とグローバルポート番号のマッピング情報を、アドレス−ポート番号変換テーブル203に追加する。
また、アドレス割当部207とポートマッピング処理部205は、ネットワーク情報管理部208に割り当てたプライベートIPアドレスと、プライベートポート番号とグローバルポート番号のマッピング情報を通知する。
ネットワーク情報管理部208は、ネットワーク情報管理テーブル209内の家電機器117のネットワーク情報を、通知されたネットワーク情報に変更するとともに、プレゼンスサーバ機能部210に通知する。
プレゼンスサーバ機能部210では、状態変更検出部211でネットワーク情報管理部208の情報を基に、家電機器117のネットワーク情報の変更を検出する。
そして、通知依頼管理部212にて、移動端末115によって、状態通知依頼管理テーブル213に、家電機器117のネットワーク情報の変更に対する通知依頼が登録されていることを確認する。
その後、プレゼンスメッセージ処理部214で、家電機器117のグローバルポート番号を含む状態通知メッセージを生成して移動端末115に送信する。
プレゼンスメッセージ処理部214では、状態通知メッセージを、ネットワーク情報管理テーブル209内の移動端末115のネットワーク情報に基づいて生成する。
状態通知メッセージを受信した移動端末115は、プレゼンスメッセージ処理部811にて、家電機器117のネットワーク情報を抽出し、ネットワーク情報管理部805に通知してネットワーク情報管理テーブル806内の家電機器117のネットワーク情報を抽出した情報に変更し、状態通知応答メッセージをホームGW120へ送信する。
図9のステップST903、もしくはステップST904の手順は、各ネットワーク端末のネットワーク情報が変わる毎に実施する。
また、図9のステップST904の手順では、グローバルポート番号が割り当てられた場合に、ホームGW120が各ネットワーク端末に通知することを示したが、各ネットワーク端末に割り当てられていたグローバルポートが、ある一定期間使用されずに、ホームGW120によって閉ざされた場合にも、使用できなくなったことを状態通知メッセージで各ネットワーク端末に通知してもよい。
このとき、当該グローバルポート番号宛のIPパケットは廃棄される。
上述の処理により、移動端末115は、宅内の各ネットワーク端末のネットワーク情報を把握することができる。
図9において、移動端末115が宅内の家電機器117に接続する場合には、パケット生成部804は、ネットワーク情報管理テーブル806を参照して、IPパケットの宛先アドレスをホームGW120のグローバルIPアドレス、宛先ポート番号を家電機器117のグローバルポート番号に設定して、ホームGW120へ送信する。
また、SIPやFTP(File Transfer Protocol)等のIPパケットのペイロード部にネットワーク情報を記載しなければならないアプリケーションの場合には、ネットワーク情報管理テーブル806を参照して、当該ネットワーク情報を記載する。
ホームGW120では、アドレス−ポート番号変換処理部204で、IPパケットの宛先アドレスと宛先ポート番号を、アドレス−ポート番号変換テーブル203を参照して、家電機器117のプライベートIPアドレスとプライベートポート番号に変換し、家電機器117へ当該IPパケットを転送する(図9のステップST905)。
次に、図10を参照して、ホームGW120が、インターネット側ネットワークインタフェース(NIC)201からIPパケットを受信したときのアドレス−ポート番号変換処理部204におけるアドレス−ポート番号変換処理について説明する。
図10は、本発明の実施の形態1に係る通信システムにおけるホームゲートウェイがインターネット側ネットワークインタフェースからIPパケットを受信したときのアドレス−ポート番号変換処理を示すフローチャートである。
図10において、アドレス−ポート番号変換処理がスタートすると、ホームGW120のアドレス−ポート番号変換処理部204は、アドレス−ポート番号変換テーブル203を参照(ステップST1001)し、受信したIPパケットの宛先グローバルポート番号が登録されているかどうかを判定する(ステップST1002)。
ステップST1002において、宛先グローバルポート番号が登録されていないと判定された場合には、パケットを廃棄(ステップST1007)して処理を終了する。
また、ステップST1002において、宛先グローバルポート番号が登録されていると判定された場合には、宛先IPアドレスと宛先ポート番号を、対応するプライベートIPアドレスとプライベートポート番号に変換する(ステップST1003)。
次に、送信元IPアドレスが、アドレス−ポート番号変換テーブルのグローバルIPアドレスに登録されているかどうかを判定する(ステップST1004)。
ステップST1004において、登録されていないと判定された場合には、プライベートネットワーク側インタフェース(NIC)202へIPパケットを送信(ステップST1006)して処理を終了する。
ステップST1004において、登録されていると判定された場合には、送信元IPアドレスとポート番号を、対応するプライベートIPアドレスとプライベートポート番号に変換(ステップST1005)して、プライベートネットワーク側インタフェース202を介してIPパケットを送信し、アドレス−ポート番号変換処理を終了する。
上述の処理により、ホームGW120が、宅内機器のネットワーク情報の変更を移動端末115に通知することによって、宅外へ移動した移動端末115が、プレゼンス機能を持たない宅内の家電機器117に接続できる。
また、上述の処理により、プレゼンス機能を持つ宅内の固定端末118への接続についても、同様の手順で宅外の移動端末115が接続できる。
次に、宅内のネットワーク端末から宅外の移動端末115への接続処理について説明する。
図11は、本発明の実施の形態1に係る通信システムにおいて宅内のプレゼンス機能を持つ固定端末から宅外に移動した移動端末に接続する場合の処理を示すシーケンス図である。
図11において、まず、移動端末115は、プレゼンスメッセージ処理部811で、ホームGW120と固定端末118のネットワーク情報が変更された場合に通知するようホームGW120へ通知依頼メッセージを送信する。
同様に、宅内の固定端末118は、移動端末115のネットワーク情報が変更された場合に通知するようホームGW120に通知依頼する。
通知依頼メッセージを受信したホームGW120は、通知依頼メッセージの情報を、通知依頼管理部212を介して状態通知依頼管理テーブル213に登録する(図11のステップST1101)。
次いで、移動端末115がプライベートネットワーク121へ移動したとき、移動端末115は、アドレス取得部802やポートマッピング処理部803で、DHCPやUPnP IGD等を用いて、ゲートウェイ122から、プライベートIPアドレスと、ゲートウェイ122のグローバルIPアドレス情報、プライベートポート番号に対応するグローバルポート番号を取得し、取得した情報をネットワーク情報管理部805に通知する。
通知を受けたネットワーク情報管理部805は、ネットワーク情報管理テーブル806内の移動端末115のネットワーク情報を変更し、当該ネットワーク情報をプレゼンス機能部807へ通知する。
その後、移動端末115は、状態登録/状態通知処理を実施し、プレゼンスメッセージ処理部811で、ゲートウェイ122のグローバルIPアドレスと、プライベートポート番号とグローバルポート番号のマッピング情報を状態登録メッセージに含めてホームGW120へ送信する。
ホームGW120は、ネットワーク情報管理部208でネットワーク情報管理テーブル209内の移動端末115のネットワーク情報を状態登録メッセージの内容に変更し、プレゼンスメッセージ処理部214で状態登録応答メッセージを移動端末115に送信する。
また、プレゼンスサーバ機能部210では、状態変更検出部211でネットワーク情報管理部208から移動端末115のネットワーク情報の変更を受信し、固定端末118から移動端末115のネットワーク情報変更に対する通知依頼を受けているため、プレゼンスメッセージ処理部214で移動端末115のネットワーク情報を含む状態通知メッセージを生成して固定端末118に通知する。
状態通知メッセージを受信した固定端末118は、固定端末118が保持するネットワーク情報管理テーブル内の移動端末115のネットワーク情報を状態通知メッセージの内容に変更し、状態通知応答メッセージを送信する(図11のステップST1102)。
また、固定端末118が移動端末115と接続したい場合には、移動端末115のネットワーク情報が、固定端末118の内部のネットワーク情報管理テーブルで管理されているため、その情報を基に、IPパケットの宛先アドレスをゲートウェイ122のグローバルIPアドレス、宛先ポート番号を移動端末115のグローバルポート番号に設定し、IPパケットを送信する。
また、IPパケットのペイロード部にネットワーク情報を記載しなければならないアプリケーションの場合には、ネットワーク情報管理テーブル806を参照して、当該ネットワーク情報を記載する。
ホームGW120は、当該IPパケットの送信元アドレスと送信元ポート番号を、アドレス−ポート番号変換し、ゲートウェイ122へ送信する(図11のステップST1103)。
ここで、ホームGW120が、プライベートネットワーク側ネットワークインタフェース202からIPパケットを受信したときのアドレス−ポート番号変換処理部204におけるアドレス−ポート番号変換処理について説明する。
図12は、本発明の実施形態1に係る通信システムにおけるホームゲートウェイのアドレス−ポート番号変換処理部のアドレス−ポート番号変換処理を示すフローチャートである。
ホームGW120のアドレス−ポート番号変換処理部204は、図12に示すように、まず、宛先IPアドレスがプライベートIPアドレスかどうかを判定する(ステップST1201)。
ステップST1201で、宛先IPアドレスがプライベートIPアドレスでない場合は、アドレス−ポート番号変換テーブルを参照(ステップST1202)し、次のステップST1203に移る。
ステップST1201で、宛先IPアドレスがプライベートIPアドレスの場合は、アドレス−ポート番号変換テーブルを参照(ステップST1204)して、対応するグローバルIPアドレスがホームGW120以外のIPアドレスかどうかを判定する(ステップST1205)。
ステップST1205で、対応するグローバルIPアドレスがホームGW120のIPアドレスと一致した場合には、プライベートネットワーク側ネットワークインタフェース202を介してIPパケットを送信(ステップST1206)し、処理を終了する。
ステップST1205で、対応するグローバルIPアドレスがホームGW120以外のIPアドレスの場合には、宛先IPアドレスと宛先ポート番号を、対応するグローバルIPアドレスと、グローバルポート番号に変換(ステップST1207)し、次のステップST1203に移る。
ステップST1203では、送信元IPアドレスとポート番号情報をIPパケットから抽出し、抽出した送信元IPアドレス/ポート番号がアドレス−ポート番号変換テーブル203に登録されているかどうかを判定する。
ステップST1203で、送信元IPアドレス/ポート番号がアドレス−ポート番号変換テーブル203に登録されている場合には、対応するグローバルIPアドレスとグローバルポート番号に変換する(ステップST1208)。
そして、インターネット側ネットワークインタフェース201を介して、IPパケットを送信(ステップST1209)し、処理を終了する。
ステップST1203で、送信元IPアドレス/ポート番号がアドレス−ポート番号変換テーブル203に登録されていない場合には、アドレス−ポート番号変換テーブル203に割り当てられていない(登録されていない)グローバルポート番号を選択する(ステップST1210)。
そして、IPパケットのプライベートIPアドレスとプライベートポート番号、割り当てたグローバルポート番号、ホームGW120のグローバルIPアドレスを、アドレス−ポート番号変換テーブル203に登録する(ステップST1211)。
その後、送信元IPアドレスと送信元ポート番号を、対応するグローバルIPアドレスとグローバルポート番号に変換(ステップST1212)し、インターネット側ネットワークインタフェース201を介して、変換したIPパケットを送信(ステップST1209)し、処理を終了する。
このようにして、ホームGW120からのIPパケットを受信したゲートウェイ122では、IPパケットの宛先アドレスと宛先ポート番号を、プライベートIPアドレスとプライベートポート番号に変換して、移動端末115に転送する(図11のステップST1103)。
これにより、移動端末115のネットワーク情報が、固定端末118の内部のネットワーク情報管理テーブルで管理され、そのネットワーク情報が変更された場合には、逐次、ホームGW120から通知されるため、そのネットワーク情報を基にプレゼンス機能を持つ固定端末118が移動端末115と接続できるようになる。
次に、図1に示した本例の通信システム100の構成において、宅内のプレゼンス機能を持たない家電機器117から、宅外に移動した移動端末115に接続する場合の処理について説明する。
図13は、本発明の実施の形態1に係る通信システムにおいて宅内のプレゼンス機能を持たない家電機器から宅外に移動した移動端末に接続する場合の処理を示すシーケンス図である。
ここでは、移動端末115が宅外へ移動する前に、宅内にて、家電機器117が移動端末115と通信し、家電機器117が移動端末115のプライベートIPアドレス情報を保持しているとする。
図13において、まず、移動端末115は、図11に示した処理と同様に、ホームGW120に通知依頼メッセージでネットワーク情報変更時の通知を依頼する(図13のステップST1301)。
プライベートネットワーク121へ移動した移動端末115は、ゲートウェイ122から、プライベートIPアドレスと、ゲートウェイ122のグローバルIPアドレス情報、プライベートポート番号に対応するグローバルポート番号をアドレス取得部802とポートマッピング処理部803で取得し、取得情報をネットワーク情報管理部805に通知する。
この取得情報を受け取ったネットワーク情報管理部805は、ネットワーク情報管理テーブル806内の移動端末115のネットワーク情報を変更する。
プレゼンス機能部807では、ネットワーク情報管理部805からネットワーク情報を受信して、状態登録/状態通知処理を実施し、ホームGW120へ移動端末115のネットワーク情報を含む状態登録メッセージを送信する。
一方、ホームGW120は、プレゼンスメッセージ処理部214で、状態登録メッセージのネットワーク情報を抽出して、抽出したネットワーク情報をネットワーク情報管理部208に通知する。
このネットワーク情報を受け取ったネットワーク情報管理部208は、ネットワーク情報管理テーブル209内の移動端末115のネットワーク情報を変更し、状態登録応答メッセージを移動端末115に送信する。
また、ホームGW120は、アドレス−ポート番号変換テーブル203に、図3のa,b行のように、状態登録メッセージ内のゲートウェイのグローバルIPアドレスと、移動端末115が移動する前に割り当てられていたプライベートIPアドレス及び、プライベートポート番号とグローバルポート番号のマッピング情報を追加する(図13のステップST1302)。
ここで、家電機器117が移動端末115と接続したい場合は、家電機器117が保持していた移動端末115のプライベートIPアドレスをIPパケットの宛先アドレスとして設定し、ホームGW120へ送信する。
ホームGW120では、アドレス−ポート番号処理変換処理部204で、アドレス−ポート番号変換テーブル203を参照して、受信したIPパケットの送信元アドレスとポート番号を変換する。
また、ホームGW120では、受信したIPパケットの宛先アドレス(移動前の移動端末115のプライベートIPアドレス)がアドレス−ポート番号変換テーブル203に登録されているため、宛先アドレスを対応するグローバルIPアドレス(ゲートウェイ122のグローバルIPアドレス)に変換し、さらに宛先ポート番号を対応するグローバルポート番号に変換する。アドレス−ポート番号変換処理の詳細については、図12を参照して説明したとおりである。
その後、ホームGW120は、IPパケットをゲートウェイ122へ転送する。
ゲートウェイ122では、宛先アドレスと宛先ポート番号をプライベートIPアドレスとプライベートポート番号に変換し、移動端末115へ転送する(図13のステップST1303)。
これにより、ホームGW120が、プレゼンス機能を持たないネットワーク機器からのIPパケットに対して、移動端末115が状態登録したネットワーク情報を基に、宛先アドレスと宛先ポート番号を変換することによって、宅内のプレゼンス機能を持たない家電機器117から、移動した移動端末115への接続が可能となる。
なお、本例の通信システム100においては、移動端末115がプライベートネットワーク121内に移動した場合を示したが、図14に示すように、移動端末115がインターネット113のようなグローバルネットワークに移動した場合でも、移動端末115がホームGW120に、移動端末115に割り当てられたグローバルIPアドレスをプレゼンスメッセージで登録することにより、宅外の移動端末115から宅内機器へ、または、宅内機器から宅外の移動端末115への接続が可能である。
(実施の形態2)
次に、本発明の実施の形態2に係る通信システムについて説明する。図15は、本発明の実施の形態2に係る通信システムの構成を示すブロック図である。図16は、本発明の実施の形態2に係る通信システムにおけるホームゲートウェイの構成を示すブロック図である。図17は、本発明の実施の形態2に係る通信システムにおける移動端末の構成を示すブロック図である。
実施の形態1に係る通信システム100は、ゲートウェイ122がUPnP IGDを実装しており、移動端末115がプライベートネットワーク121へ移動した際に、移動端末115は、ゲートウェイ122のグローバルIPアドレスと、グローバルポート番号をゲートウェイ122から取得している。
これにより、実施の形態1に係る通信システム100では、移動端末115が取得した情報をホームGW120へ状態登録することによって、宅内機器から宅外の移動端末115へのゲートウェイ122のNAT越えを実現している。
図15に示す本例の通信システム1500は、ゲートウェイ1501にUPnP IGDが実装されていない場合に、宅内機器から宅外の移動端末115へ、または宅外の移動端末115から宅内機器への接続を実現する方法を提供するものである。
図15に示すように、本例の通信システム1500におけるゲートウェイ1501は、UPnP IGDを実装していない。
また、図16に示すように、本例の通信システム1500におけるホームGW1600は、図2に示した実施の形態1に係る通信システム100におけるホームGW120の構成に加えて、ポート情報取得処理部1601を有している。
また、図17に示すように、本例の通信システム1500における移動端末1700は、図8に示した実施の形態1に係る通信システム100における移動端末115のポートマッピング処理部803の代わりにポート情報取得処理部1701が設けられており、また構成の異なるアドレス取得部1702を有している。
これ以外は、本例の通信システム1500は、図1に示した実施の形態1に係る通信システム100と同様の構成を有している。
図16に示すように、本例の通信システム1500におけるホームGW1600のポート情報取得処理部1601は、移動端末1700から受信したUDPパケットのヘッダ部から、ゲートウェイのグローバルIPアドレスとグローバルポート番号を取得し、ペイロード部から移動端末1700のプライベートポート番号を取得し、ネットワーク情報管理部208に移動端末1700のネットワーク情報を通知する。
また、図17に示すように、本例の通信システム1500における移動端末1700のアドレス取得部1702は、DHCP等を用いて、ゲートウェイ1501からプライベートIPアドレスを取得するとともに、アドレスを取得した時点で、ポート情報取得処理部1701にIPアドレスを取得したことを通知する。
これにより、ポート情報取得処理部1701は、アドレス取得部1702からのIPアドレスの取得通知を受信した時点で、ネットワーク情報管理テーブル806内のホームGW1600のネットワーク情報を参照して、ホームGW1600宛にUDPパケットを送信する。
UDPパケットの送信元ポート番号は、移動端末1700がサービスを提供したいプライベートポート番号が設定され、ペイロード部には、移動端末1700の名前、プライベートポート番号等の情報が含まれる。
この際、移動端末1700は、サービスを提供したい全プライベートポート番号に対応するUDPパケットをホームGW1600へ送信する。
次に、本例の通信システム1500において、宅外の移動端末1700から宅内機器へ、また、宅内機器から宅外の移動端末1700へ接続する際のホームGW1600と移動端末1700の内部処理について説明する。
本例の通信システム1500においては、実施の形態1と同様に、宅外の移動端末1700から宅内機器、または宅内機器から宅外の移動端末1700へ接続するにあたり、ユーザは、使用する宅内機器にプレゼンスサーバとしてホームGW1600を設定し、接続したい宅内機器を登録する。この際、宅内機器のネットワーク情報等の設定は不要である。
まず、本例の通信システム1500における宅外の移動端末1700から宅内機器への接続について説明する。
図18は、本発明の実施の形態2に係る通信システムにおいて宅内から宅外に移動した移動端末が宅内機器に接続する場合の処理を示すシーケンス図である。
この場合、移動端末1700は、図18のステップST1801に示すように、まず、実施の形態1に係る通信システム100の移動端末115と同様に、プレゼンスメッセージ処理部811で、ホームGW1600、家電機器117、及び固定端末118のネットワーク情報に対する通知依頼メッセージをホームGW1600へ送信する。
通知依頼メッセージを受信したホームGW1600は、通知依頼管理部212を介して、この通知依頼メッセージを状態通知依頼管理テーブル213に登録する。
図18のステップST1802は、移動端末1700が、宅内からプライベートネットワーク121に移動した時のシーケンスを示している。
ステップST1802においては、移動端末1700が移動した際、DHCP等を用いて、移動端末1700のアドレス取得部1702がゲートウェイ1501からIPアドレスを取得する。
アドレス取得部1702は、IPアドレスを取得した時点で、ポート情報取得処理部1701にIPアドレスを取得したことを通知する。
その後、ポート情報取得処理部1701は、ネットワーク情報管理テーブル806内のホームGW1600のネットワーク情報を参照して、ホームGW1600宛に、移動端末1700の名前とプライベートポート番号の情報を含むUDPパケットを送信する。
この際、移動端末1700は、サービスを提供したい全プライベートポート番号に対応するUDPパケットをホームGW1600へ送信する。
一方、ゲートウェイ1501は、移動端末1700から受信したUDPパケットの送信元IPアドレスとポート番号を、ゲートウェイ1501のグローバルIPアドレスと、グローバルポート番号に変換する。
ホームGW1600は、UDPパケットを受信した際、ポート情報取得処理部1601で、UDPパケットのヘッダから、ゲートウェイ1501のグローバルIPアドレスとグローバルポート番号の情報を取得する。
また、ホームGW1600は、ペイロード部分から移動端末1700の名前、プライベートポート番号の情報を取得し、ネットワーク情報管理部208に通知してネットワーク情報管理テーブル209内の移動端末1700のネットワーク情報を取得した情報に変更する。
その後、ホームGW1600は、UDPパケットのペイロード部分に、取得したグローバルIPアドレスとグローバルポート番号の情報を付与する。
また、ホームGW1600は、ヘッダ部分にも同様に、取得したグローバルIPアドレスとグローバルポート番号を設定し、移動端末1700に送信する。
なお、ここでは、ホームGW1600がUDPパケットを返信することになっているが、UDPパケットは特に返信しなくてもよい。
これにより、ホームGW1600は、移動端末1700のネットワーク情報を取得することができる。
図18のステップST1803は、ホームGW1600がISPからグローバルIPアドレスを再取得した時のシーケンスを示している。
また、図18のステップST1804は、宅内の家電機器117が、ホームGW1600からプライベートIPアドレスやグローバルポート番号を取得した時のシーケンスを示している。
図18のステップST1803と、図18のステップST1804のシーケンスにおけるホームGW1600と移動端末1700の処理は、実施の形態1に係る通信システム100における、図9のステップST903と、図9のステップST904のシーケンスで示した処理内容と同様であるので、ここでの説明は省略する。
上述の処理により、移動端末1700は、宅内機器(各ネットワーク端末)のネットワーク情報を把握することができる。
ここで、移動端末1700が宅内の家電機器117に接続する場合には、移動端末1700のパケット生成部804は、ネットワーク情報管理テーブル806を参照して、IPパケットの宛先アドレスをホームGW1600のグローバルIPアドレス、宛先ポート番号を家電機器117のグローバルポート番号に設定して、ホームGW1600へ送信する。
ホームGW1600では、アドレス−ポート番号変換処理部204で、IPパケットの宛先アドレスと宛先ポート番号を、アドレス−ポート番号変換テーブル203を参照して、家電機器117のプライベートIPアドレスとプライベートポート番号に変換し、家電機器117へ当該IPパケットを転送する(図18のステップ1805)。
図18のステップST1805において、ホームGW1600が、インターネット側ネットワークインタフェース201からIPパケットを受信した時のアドレス−ポート番号変換処理は、実施の形態1に係る通信システム100の場合と同様である。
次に、本例の通信システム1500における宅内機器から宅外の移動端末1700への接続について説明する。
図19は、本発明の実施の形態2に係る通信システムにおいて宅内のプレゼンス機能を持つ固定端末から宅外に移動した移動端末に接続する場合の処理を示すシーケンス図である。
この場合、移動端末1700は、図19のステップST1901に示すように、まず、プレゼンスメッセージ処理部811で、ホームGW1600と固定端末118のネットワーク情報が変更された場合に通知するようホームGW1600へ通知依頼メッセージを送信する。
同様に、宅内の固定端末118は、移動端末1700のネットワーク情報が変更された場合に通知するようホームGW1600に通知依頼する。
通知依頼メッセージを受信したホームGW1600は、通知依頼管理部212を介して状態通知依頼管理テーブル213に登録する(図19のステップST1901)。
移動端末1700は、プライベートネットワーク121へ移動したとき、アドレス取得部1702で、ゲートウェイ1501からプライベートIPアドレスを取得して、ポート情報取得処理部1701で、ホームGW1600へUDPパケットを送信する。
ホームGW1600は、UDPパケットを受信し、ポート情報取得処理部1601で、移動端末1700(またはゲートウェイ1501)のグローバルIPアドレスと、プライベートポート番号とグローバルポート番号の情報を取得し、ネットワーク情報管理部208に通知する。
また、ホームGW1600のネットワーク情報管理部208は、ネットワーク情報管理テーブル209内の移動端末1700のネットワーク情報を変更し、プレゼンスサーバ機能部210へ通知する。
その後、プレゼンスサーバ機能部210では、状態登録/状態通知処理を実施して、固定端末118から移動端末1700のネットワーク情報変更に対する通知依頼を受けているので、プレゼンスメッセージ処理部214で、移動端末1700のネットワーク情報を含む状態通知メッセージを生成して固定端末118に通知する。
状態通知メッセージを受信した固定端末118は、固定端末118が保持するネットワーク情報管理テーブル内の移動端末1700のネットワーク情報を状態通知メッセージの内容に変更し、状態通知応答メッセージを送信する(図19のステップST1902)。
ここで、固定端末118が移動端末1700と接続したい場合には、移動端末1700のネットワーク情報が、固定端末118の内部のネットワーク情報管理テーブルで管理されているので、その情報を基に、IPパケットの宛先アドレスをゲートウェイ1501のグローバルIPアドレス、宛先ポート番号を移動端末1700のグローバルポート番号に設定し、IPパケットを送信する。
ホームGW1600は、当該IPパケットの送信元アドレスと送信元ポート番号を、アドレス−ポート番号変換し、ゲートウェイ1501へ送信する。
ホームGW1600が、プライベートネットワーク側ネットワークインタフェース202からIPパケットを受信したときのアドレス−ポート番号変換処理は、実施の形態1に係る通信システム100の場合と同様である。
ホームGW1600からのIPパケットを受信したゲートウェイ1501では、IPパケットの宛先アドレスと宛先ポート番号を、プライベートIPアドレスとプライベートポート番号に変換して、移動端末1700に転送する(図19のステップST1903)。
これにより、移動端末1700のネットワーク情報が、固定端末118の内部のネットワーク情報管理テーブルで管理され、そのネットワーク情報が変更された場合には、逐次、ホームGW1600から通知されるので、そのネットワーク情報を基にプレゼンス機能を持つ固定端末118が移動端末1700と接続できる。
図20は、本発明の実施の形態2に係る通信システムにおいて宅内のプレゼンス機能を持たない宅内機器から宅外に移動した移動端末に接続する場合の処理を示すシーケンス図である。
なお、ここでは、宅内の家電機器117は、移動端末1700が宅外へ移動する前に、宅内において移動端末1700と通信して、移動端末1700のプライベートIPアドレス情報を保持しているものとする。
この場合、移動端末1700は、図18のステップST1801と同様に、ホームGW1600に通知依頼メッセージでネットワーク情報変更時の通知を依頼する(図20のステップST2001)。
また、移動端末1700は、プライベートネットワーク121へ移動したとき、アドレス取得部1702で、ゲートウェイ1501からプライベートIPアドレスを取得して、ポート情報取得処理部1701で、ホームGW1600へUDPパケットを送信する。
ホームGW1600は、UDPパケットを受信し、ポート情報取得処理部1601で、移動端末1700(またはゲートウェイ1501)のグローバルIPアドレスと、プライベートポート番号とグローバルポート番号の情報を取得し、ネットワーク情報管理部208に通知してネットワーク情報管理テーブル209内の移動端末1700のネットワーク情報を変更する。
また、ホームGW1600は、アドレス−ポート番号変換テーブル203に、図3のa,b行と同様に、状態登録メッセージ内のゲートウェイ1501のグローバルIPアドレスと、移動端末1700が移動する前に割り当てられていたプライベートIPアドレス及び、プライベートポート番号とグローバルポート番号のマッピング情報を追加する(図20のステップST2002)。
ここで、家電機器117が移動端末1700と接続したい場合は、家電機器117が保持していた移動端末1700のプライベートIPアドレスをIPパケットの宛先アドレスとして設定し、ホームGW1600へ送信する。
ホームGW1600では、アドレス−ポート番号処理変換処理部204で、アドレス−ポート番号変換テーブル203を参照して、受信したIPパケットの送信元アドレスとポート番号を変換する。
また、ホームGW1600、受信したIPパケットの宛先アドレス(移動前の移動端末1700のプライベートIPアドレス)がアドレス−ポート番号変換テーブル203に登録されているので、宛先アドレスを対応するグローバルIPアドレス(ゲートウェイ1501のグローバルIPアドレス)に変換し、さらに宛先ポート番号を対応するグローバルポート番号に変換する。アドレス−ポート番号変換処理の詳細については、図12で説明したとおりである。
その後、IPパケットをゲートウェイ1501へ転送する。ゲートウェイ1501では、宛先アドレスと宛先ポート番号をプライベートIPアドレスとプライベートポート番号に変換し、移動端末1700へ転送する(図20のステップST2003)。
上述の処理により、ホームGW1600が、プレゼンス機能を持たない宅内機器からのIPパケットに対して、移動端末1700が状態登録したネットワーク情報を基に、宛先アドレスと宛先ポート番号を変換することによって、例えば、宅内のプレゼンス機能を持たない家電機器117から宅外に移動した移動端末1700への接続が可能となる。
(実施の形態3)
ところで、実施の形態1に係る通信システム100では、宅内から移動した移動端末115と宅内機器との接続方法を示したが、本発明は、宅内から宅外に移動したネットワーク端末(通信端末)同士についても適用できる。
図21は、本発明の実施の形態3に係る通信システムの構成を示すブロック図である。
図21に示すように、本例の通信システム2100は、宅内に、家電機器117、固定端末118、移動端末115A、移動端末115Bが接続されたプライベートネットワーク114が構築されている。
プライベートネットワーク114に接続された宅内機器は、ホームGW120及びISP123を介して、インターネット113に接続されている。
また、移動端末115Aは、プライベートネットワーク121Aに接続可能であり、移動端末115Bは、プライベートネットワーク121Bに接続可能である。
そして、移動端末115Aは、プライベートネットワーク121Aに移動後、ゲートウェイ122Aを介して、インターネット113に接続される。
また、移動端末115Bは、プライベートネットワーク121Bに移動後、ゲートウェイ122Bを介して、インターネット113に接続される。
ここで、ホームGW120の内部構成は、図2に示したホームGW120と同様であり、また、移動端末115A,115Bの内部構成は、図8に示した移動端末115と同様である。
次に、本例の通信システム2100において、宅外に移動した移動端末115Aと移動端末115Bとが接続するPeer to Peer(P2P)通信時の接続手順について説明する。
図22は、本発明の実施の形態3に係る通信システムにおいて宅外に移動した移動端末同士のP2P通信時の接続手順を示すシーケンス図である。
図22に示すように、まず、各移動端末115A,115Bは、接続対象となる移動端末115A,115Bのネットワーク情報が変更された場合に、各移動端末115A,115Bのプレゼンスメッセージ処理部811で、そのネットワーク情報を通知するようにホームGW120に通知依頼をする(図22のステップST2201)。
図21において、移動端末115Aがプライベートネットワーク121Aへ移動したとき、移動端末115Aは、アドレス取得部802とポートマッピング処理部803で、ゲートウェイ122AからプライベートIPアドレス、グローバルIPアドレス情報、プライベートポート番号に対応するグローバルポート番号を取得し、ネットワーク情報管理部805に通知する。
ネットワーク情報管理部805は、ネットワーク情報管理テーブル806内の移動端末115Aのネットワーク情報を変更するとともに、プレゼンス機能部807に当該ネットワーク情報を通知する。
プレゼンス機能部807で、状態登録/状態通知処理を実施して、移動端末115Aのネットワーク情報を含む状態登録メッセージをホームGW120に登録する。
ホームGW120では、プレゼンスメッセージ処理部214で、状態登録メッセージから移動端末115Aのネットワーク情報を抽出して、ネットワーク情報管理部208に通知する。
ネットワーク情報管理部208は、ネットワーク情報管理テーブル209内の移動端末115Aのネットワーク情報を変更し、プレゼンスサーバ機能部210に通知する。
プレゼンスサーバ機能部210は、移動端末115Bが移動端末115Aのネットワーク情報変更に対する通知依頼をしているので、変更されたネットワーク情報を状態通知メッセージで移動端末115Bに送信する。
移動端末115Bでは、プレゼンス機能部807で、ネットワーク情報管理テーブル806内の移動端末115Aのネットワーク情報を、受信した状態通知メッセージの内容に変更する(図22のステップST2202)。
移動端末115Bがプライベートネットワーク121Bへ移動したとき、前述した移動端末115Aの場合と同様に、移動端末115Bは、ゲートウェイ122BからIPアドレスとポートマッピング情報を取得し、ホームGW120へ状態登録する。
ホームGW120は、状態登録メッセージから移動端末115Bのネットワーク情報を抽出して、ネットワーク情報管理テーブル209内の移動端末115Bのネットワーク情報を変更する。
また、ホームGW120は、プレゼンスサーバ機能部210で、状態登録/状態通知処理を実施して、変更されたネットワーク情報を状態通知メッセージで移動端末115Aに送信する。
移動端末115Aは、プレゼンス機能部807で移動端末115Bのネットワーク情報を通知されたネットワーク情報に変更する(図22のステップST2203)。
上述の手順を実施することにより、移動端末115Aは、移動端末115Bのネットワーク情報を保持し、また、移動端末115Bは、移動端末115Aのネットワーク情報を保持するので、移動端末115Aと移動端末115Bとの接続が可能になる(図22のステップST2204)。
なお、ここでは、移動端末115A,115Bがプライベートネットワーク121A,121Bに移動した場合を示しているが、移動端末115A,115Bがインターネット113等のグローバルネットワークに移動した場合も、同様の手順で移動端末115Aと移動端末115Bとの接続が可能である。
なお、上述の各実施の形態においては、プライベートネットワーク114を宅内ネットワークとしているが、プライベートネットワーク114は企業や大学などの構内ネットワークでもよい。
また、上述の各実施の形態におけるホームGW120,1600は、構内ネットワークとプライベートネットワーク114間のゲートウェイ装置でもよい。
また、上述の各実施の形態では、プレゼンスの送受信を実現する技術として、SIP/SIMPLEを使用しているが、プレゼンスの登録、プレゼンスの通知依頼、プレゼンスの通知が実現可能であれば、これに限定されるものではない。
また、上述の各実施の形態においては、セキュアなプレゼンスメッセージの送受信を実現するために、TLSなどを適用し、宅内機器の機器認証やユーザ認証、及びメッセージの暗号化を実施してもよい。