説明

中継装置、通信システム、通信情報転送方法および通信情報転送プログラム

【課題】ローカル・デバイスが別のローカルネットワークに移動した場合にも、移動先のローカルネットワークにおいて外部サーバとの通信を行うことを可能にする。
【解決手段】中継装置100は、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェース101と、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェース102と、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段103と、転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する通信情報転送手段103とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ローカルネットワークによって接続されるセンサデバイスやアクチュエータデバイスなどのデバイス(ローカル・デバイス)と、外部のサーバとの通信を実現させるための中継装置、通信システム、通信情報転送方法および通信情報転送プログラムに関する。
【背景技術】
【0002】
近年、スマートグリッドやホームネットワークなどの分野において、センサデバイスやアクチュエータデバイスなどの活躍の注目が集まっている。スマートグリッドやホームネットワークにおいては、各ローカルエリア(例えば、オフィス、工場、家庭、自動車など)において刻々と変化する多量の情報(例えば、電力情報、温度情報、振動情報、音情報などの環境情報)を取得するために、センサデバイスや特定の環境情報測定機器を用いる。
【0003】
これら通信機能を備えたセンサデバイスなどから得られた情報は、該デバイスの接続先であるローカルエリアに接続しているサーバなどの情報処理装置において扱われるほか、インターネット網や3G網(または将来的には4G網)などを介して接続される外部のサーバにおいて処理することが想定されている。例えば、各家庭において得られた消費電力情報は、各家庭が備える情報処理装置によって保存や処理されるほか、電力供給を行う会社(発電会社、送電会社、配電会社)などに配備されているサーバに送信され、サーバ内のアプリケーションによって処理されることが考えられている。
【0004】
また、各ローカルエリアに設置されたアクチュエータ(環境を変化させる動作を行う機器)も同様に、各ローカルエリアに接続されたサーバにおいて動作制御されるほか、インターネット網などを介して接続される外部のサーバーから制御されることもありうる。
【0005】
ローカルエリア内のセンサデバイスなどが取得する情報をインターネット網などを介して外部のサーバが入手したり、ローカルエリア内のアクチュエータをインターネット網越しのサーバから制御するにあたり、そのセンサデバイスやアクチュエータデバイスと外部のサーバ間の通信が問題となる。センサデバイスやアクチュエータデバイスには様々な形態が存在するが、これらのデバイスの配置において、通信配線が不必要となる利点上、無線通信モジュールを利用する形態が多く存在する。
【0006】
例えば、これらのデバイスの無線通信には、ZigbeeやZ−waveなどの通信プロトコルが用いられてきた。ZigbeeまたはZ−waveは、センサデバイスやアクチュエータデバイスをターゲットにして規格されたプロトコルである。また、プロトコルスタックの簡易性や消費電力の省エネ化などの観点より、現状、インターネットを実現するプロトコルとして公知のTCP/IPのスタックを採用せず、独自のプロトコルスタックを用いている。このため、ZigbeeやZ−wave通信プロトコルを実装したデバイスは、TCP/IPのスタックを採用する多くのサーバと直接に通信することができない。また、インターネット網もTCP/IPによって構築されているため、ZigbeeやZ−waveを実装したデバイスの通信をサポートすることができない。したがって、センサデバイスやアクチュエータデバイスとインターネット網越しの外部サーバとは直接通信を行うことができない。
【0007】
センサデバイスやアクチュエータデバイスといったTCP/IP以外の通信プロトコルを実装した通信デバイスと、インターネット網等を介した外部サーバとの通信を実現する方法として、xGWといった中継装置を間に設けて、これにより通信を中継処理する方法がある。ローカルエリアに設置されるxGWは、ZigbeeやZ−waveなど通信デバイスが実装している通信プロトコルをサポートするとともに、TCP/IPスタックを実装した装置である。また、xGWの実施形態としては、ルータ(特にBBR:Broad Band Router )や、サーバ装置などがある。xGWは、センサデバイスからの情報を入手し、入手した情報をTCP/IPの通信方法によって外部のサーバに送信する。また、外部サーバからのアクチュエータ制御通信を受けると、そのアクチュエータデバイスが実装しているプロトコル(ZigbeeやZ−waveなど)を使って制御先であるアクチュエータに制御情報を送信する。
【0008】
xGWでは、デバイスからの通信情報(センサ情報などに加え、デバイスのMACアドレスや固有の識別コードなどが含まれる)を入手すると、通信情報のヘッダ解析、ペイロード解析などの中継処理を行う。そして、中継処理した通信情報(パケットヘッダ、ペイロードなどの情報)を外部サーバが処理できるメッセージフォーマットに変換した上で、外部サーバに向けてそのメッセージを外部ネットワーク上に送信する。なお、外部サーバからデバイスへの通信は、上述と逆の順序で中継処理が行われ、デイバスが処理できるメッセージフォーマットに変換された上で、そのデバイスに向けてローカルネットワーク上に送信されることによって行われる。
【0009】
このように、xGWがローカルネットワークによって接続されるデバイス(以下、ローカル・デバイスという。)と、インターネット網等の外部ネットワーク越しの外部サーバとの通信を中継処理することで、ローカル・デバイスと外部サーバとの通信が実現される。
【0010】
ローカル・デバイスと外部サーバとの通信を実現させるxGWでは、ローカル・デバイスとの間でアプリケーション通信をサポートする必要があるとともに、外部サーバとの間でアプリケーション通信をサポートする必要がある。すなわち、xGWは、ZigbeeやZ−waveなどの通信プロトコルにおけるアプリケーション処理を行うことでセンサデバイスからの情報、またはアクチュエータデバイスへの情報を扱うことができる。一方、外部サーバとは、外部サーバが扱うTCP/IP上のアプリケーション通信において、センサやアクチュエータに関する情報をやり取りしなければならない。
【0011】
外部サーバはそれぞれ独自のアプリケーション通信を扱うことが考えられる。このため、多くの外部サーバとローカル・デバイスとの通信をサポートするには、xGWは、特に、外部サーバとの間のアプリケーション通信の多様性をサポートする必要性がある。
【0012】
ところで、xGWによって実現されるローカル・デバイスと外部サーバとの通信において、ローカル・デバイスが他のローカルネットワークに移動すると、xGWの中継処理が正常に動作しない問題が生じる可能性がある。
【0013】
上述したように、ローカル・デバイスは、外部サーバと通信を行うためには、xGWなどの中継装置を必要とする。このようなローカル・デバイスがネットワークを移動する場合、移動先のローカルエリアに設置されているxGWによる中継処理が動作することによってはじめて外部サーバとの通信が実現される。しかし、移動先のローカルエリアに設置されているxGWは、移動してきたこれらのデバイスと外部サーバとの通信の中継処理を行わない、または行えない可能性がある。
【0014】
xGWが中継処理を行わない理由として、以下のようなxGWの運用ポリシーが考えられる。
・すべての移動デバイスと外部サーバとの通信を中継しない。
・特定の移動デバイスと外部サーバとの通信を中継しない。
・特定の外部サーバの通信アプリケーションを必要とする移動デバイスと外部サーバとの通信を中継しない。
【0015】
また、xGWが中継処理を行えない理由としては、xGWの仕様(以下、スペックという。)の問題に加え、同様に以下のようなxGWの運用ポリシーが考えられる。
・運用上サポートしていない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、外部サーバとの通信を中継できない。
・スペック上サポートできない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、外部サーバとの通信を中継できない。
【0016】
また、xGWから外部サーバまでの通信経路に通信障害が生じた場合にもxGWは中継処理を行えない。
【0017】
このように、通常の中継処理を行うxGWでは、移動してきたローカル・デバイスと外部サーバとの通信の中継処理を行わない、あるいは行えない可能性があるため、ローカル・デバイスは、自身が動作するエリアを移動した際に、外部サーバとの通信が行えない可能性がある。
【0018】
通信端末の移動に関する技術としては、例えば、非特許文献1や非特許文献2に示すMIP(Mobile IP )が広く知られている。しかし、MIPは、IPデバイスの移動サポートを対象としており、センサデバイスやアクチュエータデバイスなど非IPデバイスの移動サポートまでは考慮されていない。特に、上記のようなxGWによりアプリケーションレベルでの通信の中継処理を必要とするネットワーク通信上におけるデバイスの移動サポートはできない。
【0019】
特許文献1には、Zigbeeネットワークのようなパーソナル・エリア・ネットワーク(PAN)と、インターネット・プロトコル(IP)・ネットワークとの間の通信を可能にするためのメッセージ送信方法が記載されている。特許文献1に記載されているメッセージ送信方法では、PAN内のPANクライアントに対して、IPインタフェース上のポートを割り当てるとともに、ポートと関係付けるためのルーティングテーブルをメモリに格納し、そのルーティングテーブルに基づいてPANクライアントとIPネットワークとの間でメッセージを運ぶ。例えば、IPネットワークにおいて発せられたメッセージを、どのポートでメッセージが受け取られたかに基づいて、PAN内の対応するクライアントに運ぶ。
【0020】
また、特許文献1に記載されているメッセージ送信方法では、IPスタック上にZigbeeスタックを実装して、IPネットワーク上でZigbeeメッセージをカプセル化して送信することによって、IPネットワーク上でZigbeeプロトコルによるZigbeeクライアントへの通信を可能にしている。
【先行技術文献】
【特許文献】
【0021】
【特許文献1】特表410−503276号公報
【非特許文献】
【0022】
【非特許文献1】”IP Mobility Support for IPv4”,IETF RFC3344,2002年8月
【非特許文献2】”Mobility Support in IPv6”,IETF RFC3775,2004年6月
【発明の概要】
【発明が解決しようとする課題】
【0023】
しかし、特許文献1に記載されている方法は、予め自身が管理しているPAN内のローカル・デバイスと外部サーバとの間の通信を行うことは可能であっても、ローカル・デバイスが移動した際に、移動先のネットワークにおいても引き続き外部サーバとの間の通信を行うことについては何ら考慮されていない。例えば、どのような中継装置にカプセル化したパケットを転送するかについては、何ら開示されていない。
【0024】
上述したように、xGWなどの中継装置が通信の中継処理、特にアプリケーションレベルでの中継処理を行うことによってローカル・デバイスとインターネット網越しの外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した際に、移動先のローカルネットワークでの中継処理を行うxGWが、そのxGWの運用ポリシー上の問題やスペック上の問題などにより、移動してきたデバイスと外部サーバとの通信の中継処理を行えないまたは行わない場合は、移動したローカル・デバイスと外部サーバとの通信が不可能になる。
【0025】
そこで、本発明は、中継装置によってローカル・デバイスとインターネット等の外部ネットワーク上の外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した場合にも、移動先のローカルネットワークにおいて外部サーバとの通信を行うことを可能にする中継装置、通信システム、通信情報転送方法および通信情報転送プログラムを提供することを目的とする。
【課題を解決するための手段】
【0026】
本発明による中継装置は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する通信情報転送手段とを備えたことを特徴とする。
【0027】
また、本発明による通信システムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信システムであって、第1の中継装置と、第2の中継装置とを備え、第1の中継装置は、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、少なくとも転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する上り通信情報転送手段と、他の中継装置より転送された情報を受信する転送情報受信手段と、転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、ローカル・デバイスに送信するデバイス側中継処理手段とを含み、第2の中継装置は、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、他の中継装置より転送された情報を受信する転送情報受信手段と、転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段と、少なくとも外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する下り通信情報転送手段とを含むことを特徴とする。
【0028】
また、本発明による通信情報転送方法は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送することを特徴とする。
【0029】
また、本発明による通信情報転送プログラムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する処理を実行させることを特徴とする。
【発明の効果】
【0030】
本発明によれば、中継装置によってローカル・デバイスとインターネット等の外部ネットワーク上の外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した場合にも、移動先のローカルネットワークにおいて外部サーバとの通信を行うことができる。
【図面の簡単な説明】
【0031】
【図1】第1の実施形態におけるネットワークの概観を示す説明図である。
【図2】第1の実施形態のデバイス移動サポート転送装置の構成例を示すブロック図である。
【図3】第1の実施形態のデバイス移動サポート受入装置の構成例を示すブロック図である。
【図4】デバイス移動サポート転送装置の動作の一例を示すフローチャートである。
【図5】デバイス移動サポート受入装置の動作の一例を示すフローチャートである。
【図6】第1の実施形態における装置間の通信の流れを示す説明図である。
【図7】第2の実施形態のデバイス移動サポート装置の構成例を示すブロック図である。
【図8】本発明の概要を示すブロック図である。
【発明を実施するための形態】
【0032】
以下、本発明の実施形態を図面を参照して説明する。
【0033】
実施形態1.
図1は、本発明の第1の実施形態におけるネットワークの概観を示す説明図である。図1では、本実施形態におけるネットワーク構成として、センサデバイスやアクチュエータデバイスなどのローカル・デバイス52(以下、単にデバイス52という。)の移動元のネットワークであるローカルネットワーク41と、移動先のネットワークであるローカルネットワーク42と、外部のネットワークであるインターネット1とが示されている。
【0034】
ここで、デバイス52がネットワークを移動する前は、ローカルネットワーク41に接続されていたとする。すなわち、デバイス52とデバイス移動サポート受入装置3とはそれぞれローカルネットワーク41を介して通信可能に接続されていたとする。なお、図1では、デバイス移動サポート受入装置3は、ローカルネットワーク41内に配備されたローカル・デバイスと外部のサーバとの間の通信を中継するための中継装置として示しているが、デバイス移動サポート受入装置3は、デバイス52と外部サーバ51の通信の中継処理を行うことができる装置であれば、このような条件に限定されない。例えば、公共施設にある公のxGWといった中継装置であってもよい。
【0035】
また、インターネット1には、外部サーバ51と、デバイス移動サポート受入装置3と、デバイス移動サポート転送装置2と、アドレス管理サーバ53とがそれぞれ接続されている。なお、デバイス移動サポート転送装置2は、ローカル・デバイスと外部のサーバとの間の通信を中継するための中継装置である。なお、ローカルネットワーク41、42は、有線であっても無線であってもよい。また、外部ネットワークもインターネット1に限られず、有線であっても無線であってもよい。
【0036】
本実施形態では、移動先のローカルネットワーク42における中継装置である移動サポート転送装置2が、移動してきたデバイス52と外部サーバ51との通信の中継処理を行えないまたは行わないと判断した場合に、該デバイス52と外部サーバ51の通信の中継処理を行うことができるデバイス移動サポート受入装置3に対して通信を転送し、デバイス移動サポート受入装置3が、そのようなデバイス移動サポート転送装置2からの通信の転送を受けて、移動していったデバイス52と外部サーバ51との通信の中継処理(特に、外部サーバ側の中継処理)を代わりに行うことによって、移動先のローカルネットワークにおいてもローカル・デバイスと外部のサーバとの通信を可能にする。
【0037】
より簡単には、本実施形態は、デバイス移動サポート転送装置2が、移動デバイス52と外部サーバ51の通信の中継処理を行わないまたは行えないと判断した場合に、移動デバイス52と外部サーバ51の通信の中継処理を行うことができるデバイス移動サポート受入装置3に対して、通信を転送することを特徴とするものである。
【0038】
デバイス移動サポート転送装置2は、移動してきたデバイス52からの情報を入手した際、デバイス移動サポート受入装置3に通信を転送するか否かを判断し、転送するとした場合に転送処理を行う。
【0039】
図2は、デバイス移動サポート転送装置2の構成例を示すブロック図である。なお、図2において矢印線の方向は、本発明における特徴を説明するための各構成要素間の詳細な制御や参照、情報の流れを示している。図2に示すように、本実施形態のデバイス移動サポート転送装置2は、外部サーバアプリ処理部21と、デバイスアプリ処理部22と、外部接続インターフェース23と、デバイス接続インターフェース24と、通信転送判断部25と、転送先アドレス解決部26と、通信転送処理部27とを備えている。
【0040】
外部接続インターフェース23は、当該デバイス移動サポート転送装置2と外部ネットワーク1上の他の装置(本例では、デバイス移動サポート受入装置3、外部サーバ51、アドレス管理サーバ53など)との通信インタフェースを提供する。
【0041】
デバイス接続インターフェース24は、当該デバイス移動サポート転送装置2が外部ネットワークとの中継処理を行う対象であるローカルネットワーク42上のローカル・デバイス(本例では、デバイス52)との通信インタフェースを提供する。
【0042】
外部サーバアプリ処理部21は、基本的には、外部サーバ51からデバイス52への通信情報およびデバイス52から外部サーバ51への通信情報に対して接続先の外部サーバに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、外部サーバアプリ処理部21は、外部接続インターフェース23を介して外部サーバ51からデバイス52への通信情報を受信した場合には、受信した通信情報を次の処理機能であるデバイスアプリ処理部22が扱える(処理可能な)形式に変換して、デバイスアプリ処理部22に渡す。また、外部サーバアプリ処理部21は、通信転送判断部25が受け取った外部サーバ51への通信情報について当該デバイス移動サポート転送装置2が直接外部サーバ51に送信すると判断した場合には、該通信情報に対してパケットヘッダフォーマットやペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先である外部サーバ51が処理可能かつ該外部サーバ51に転送可能な形式に変換し、外部接続インターフェース23を介して外部サーバ51に送信する。
【0043】
なお、本実施形態では、通信を実現するにあたり必要とするあらゆる情報を総称して「通信情報」という表現を用いている。通信情報には、実際にアプリケーションが必要とするデータ(例えば、センサデバイスからのセンサ情報やアクチュエータデバイスへの制御情報)だけでなく、それらデータを通信するためのパケットのヘッダ情報(MACアドレス、ネットワークアドレス、固有の識別コード、その他様々な制御情報)や、データ通信を確立するまでに必要とする制御メッセージなどに含まれる情報や、初期化時に取得されるような情報を含んでいてもよい。
【0044】
デバイスアプリ処理部22は、基本的には、デバイス52から外部サーバ51への通信情報および外部サーバ51からデバイス52への通信情報に対して接続先のローカル・デバイスに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、デバイスアプリ処理部22は、デバイス接続インターフェース24を介してデバイス52から外部サーバ51への通信情報を受信した場合には、受信した通信情報を一旦通信転送判断部25に渡す。なお、その後通信転送判断部25により当該デバイス移動サポート転送装置2が直接外部サーバ51に送信すると決定された場合には、受信した通信情報を次の処理機能である外部サーバアプリ処理部21が扱える形式に変換して外部サーバアプリ処理部21に渡す。また、デバイスアプリ処理部22は、外部サーバアプリ処理部21または情報転送処理部27からデバイス52への通信情報を受け取ると、受け取った通信情報に対して、パケットヘッダフォーマット、ペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先であるデバイス52が処理可能かつ該デバイス52に転送可能な形式に変換して、デバイス接続インターフェース24を介してデバイス52に送信する。
【0045】
通信転送判断部25は、デバイスアプリ処理部22から外部サーバ51への通信情報を受け取ると、該通信情報について、デバイス移動サポート受入装置3に転送することで外部サーバ51に中継してもらうか、または当該デバイス移動サポート転送装置2から直接に外部サーバ51に送信するかを判断する。なお、デバイス移動サポート受入装置3に転送する場合には、外部サーバ51に対応した中継処理はデバイス移動サポート受入装置3が行う。
【0046】
通信転送判断部25は、当該デバイス移動サポート転送装置2のスペックや運用ポリシーに基づいて、受信した外部サーバ51への通信情報を、デバイス移動サポート受入装置3によって転送するか直接送信するかを決定する。なお、スペックは、例えば、CPU処理能力、メモリ容量、その他デバイス移動サポート転送装置2を構成するチップセットの能力、ローカル・デバイスと外部サーバとの通信処理に関するソフトウェア機能の能力(ソフトウェア名、バージョン)などである。以下に、判断基準の一例を示す。なお、下記の判断基準は、全てを備えてもよいし、一部だけを備えてもよい。また、判断基準は容易に拡張可能である。
【0047】
・(判断基準1−1)すべての移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置3に転送する。
・(判断基準1−2)特定の移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置3に転送する。
・(判断基準1−3)特定の外部サーバの通信アプリケーションを必要とする移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置3に転送する。
・(判断基準1−4)運用上サポートしていない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、それらの移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置3に転送する。
・(判断基準1−5)スペック上サポートできない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、それらの移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置3に転送する。
・(判断基準1−6)なんらかの障害により外部サーバと通信ができないため、その外部サーバと移動デバイスとの通信をデバイス移動サポート受入装置3に転送する。
【0048】
通信転送判断部25は、受信した外部サーバ51への通信情報をデバイス移動サポート受入装置3に転送すると決定した場合、転送先であるデバイス移動サポート受入装置3のネットワークアドレスを解決するために、受け取った通信情報を転送先アドレス解決部26に渡し、その後解決されたネットワークアドレスとともに通信転送処理部27に渡す。一方、当該デバイス移動サポート転送装置2から直接に外部サーバ51に送信すると決定した場合、受け取った通信情報を外部サーバアプリ処理部21に渡す。
【0049】
転送先アドレス解決部26は、通信転送判断部25よりデバイス移動サポート受入装置3のネットワークアドレス解決を依頼された場合に、受け取った通信情報に含まれているローカル・デバイス(送信元)のMACアドレスやデバイス特有の識別コード(アドレス)などに基づいて、転送先であるデバイス移動サポート受入装置3のネットワークアドレスを解決する。具体的には、外部接続インターフェース23を介して、デバイス移動サポート受入装置3のネットワークアドレスをアドレス管理サーバ53に問い合わせる。その結果、アドレス管理サーバ53からの応答を外部接続インターフェース23を介して受け取り、受け取った応答により解決した転送先デバイス移動サポート受入装置3のネットワークアドレスを通信転送判断部25に渡す。
【0050】
通信転送処理部27は、通信転送判断部25より受け取った外部サーバ51への通信情報をデバイス移動サポート受入装置3に転送可能にするための中継処理(パケットヘッダフォーマット、ペイロードフォーマットの変換など)を行う。そして、通信転送処理部27は、変換した通信情報を、外部接続インターフェース23を介してデバイス移動サポート受入装置3に転送する。また、通信転送処理部27は、外部接続インターフェース23を介してデバイス移動サポート受入装置3から転送されてきた通信情報(外部サーバ51から送信され、デバイス移動サポート受入装置3が転送したデバイス52への通信情報)を外部サーバアプリ処理部21に代わって受信し、受信した通信情報を次の処理機能であるデバイスアプリ処理部22に渡す。このとき、通信転送処理部27は、転送元であるデバイス移動サポート受入装置3に対応したアプリケーションレベルでの中継処理を行ってもよい。
【0051】
また、デバイス移動サポート受入装置3は、デバイス移動サポート転送装置2から通信情報を受信した際、受け入れ可能か否かを判断し受け入れると判断した場合に、外部サーバへの通信情報の中継処理を行う。
【0052】
図3は、デバイス移動サポート受入装置3の構成例を示すブロック図である。なお、図3において矢印線の方向は、本発明における特徴を説明するための各構成要素間の詳細な制御や参照、情報の流れを示している。図3に示すように、本実施形態のデバイス移動サポート受入装置3は、外部サーバアプリ処理部31と、通信転送処理部32と、転送受入判断部33と、外部接続インターフェース34とを備えている。
【0053】
外部接続インターフェース34は、当該デバイス移動サポート受入装置3と外部ネットワーク1上の他の装置(本例では、デバイス移動サポート転送装置2、外部サーバ51、アドレス管理サーバ53など)との通信インタフェースを提供する。
【0054】
外部サーバアプリ処理部31は、基本的には、外部サーバ51からデバイス52への通信情報およびデバイス52から外部サーバ51への通信情報に対して接続先の外部サーバに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、外部サーバアプリ処理部31は、通信転送処理部32から通信情報の外部サーバ51への送信を指示された場合に、その通信情報(デバイス移動サポート転送装置2によって転送されたローカルネットワーク42配下のデバイス52から外部サーバ51への通信情報)を最終宛先である外部サーバ51が処理可能かつ該外部サーバ51に転送可能な形式に変換する中継処理を行い、外部接続インターフェース23を介して外部サーバ51に送信する。
【0055】
また、外部サーバアプリ処理部31は、外部接続インターフェース23を介して外部サーバ51からデバイス52への通信情報を受信した場合には、受信した通信情報に対して次の処理機能(ここでは、転送先であるデバイス移動サポート転送装置2の通信転送処理部27やデバイスアプリ処理部22)が扱える形式に変換する中継処理を行い、中継処理後の通信情報を該デバイス移動サポート転送装置2に転送するために通信転送処理部32に渡す。
【0056】
通信転送処理部32は、外部接続インターフェース34を介してデバイス移動サポート転送装置2によって転送された通信情報(配下のローカル・ネットワークから移動していったローカル・デバイスより送信され、デバイス移動サポート転送装置2によって転送された外部サーバ51への通信情報)を受信した場合、受信した通信情報を転送受入判断部33に渡して、転送受け入れ可能か否かを転送受入判断部33に問い合わせる。また、通信転送処理部32は、転送受入判断部33より受け入れ許可の旨の応答を受け取った場合、受信した通信情報を外部サーバアプリ処理部31に渡す。その際、その通信情報の外部サーバへの送信を指示する。
【0057】
転送受入判断部33は、通信転送処理部32から受け取った通信情報を元に、転送されてきた通信情報を受け入れるか否かを判断する。判断基準としては、本デバイス移動サポート受入装置3のスペックや運用ポリシーに従い、例えば下記のようなものが考えられる。下記の判断基準は、全てを備えてもよいし、一部だけを備えてもよい。また、判断基準は容易に拡張可能である。
【0058】
・(判断基準2−1)すべての転送されてきた通信情報を受け入れるまたは拒否する。
・(判断基準2−2)任意に指定した特定の移動デバイスからの通信情報であれば受け入れるまたは拒否する。
・(判断基準2−3)任意に指定した特定の外部サーバの通信アプリケーション向けの通信情報であれば受け入れるまたは拒否する。
・(判断基準2−4)スペック上サポートできない外部サーバの通信アプリケーション向けの通信情報であれば拒否する。
・(判断基準2−5)障害の理由により転送されてきた通信情報を受け入れる。
【0059】
これらの判断基準において、特定デバイスの任意の指定方法は、アドレス単位やデバイス固有の識別コード単位の指定、サブネット単位の指定、本デバイス移動サポート受入装置3が本来サポートする移動デバイス単位の指定、協力関係にあるデバイス移動サポート転送装置2が本来サポートする移動デバイス単位の指定などがあり、柔軟に拡張できる。
【0060】
次に、本実施形態の動作について説明する。まず、デバイス移動サポート転送装置2の動作について説明する。図4は、デバイス移動サポート転送装置2の動作の一例を示すフローチャートである。図4に示す例では、デバイス移動サポート転送装置2は、デバイス52から通信情報を受信した場合、送信元であるデバイス52に対応したアプリケーション処理を行うためにステップS101に進む(ステップS100のYes)。また、受信していない場合、外部サーバからの受信を判断するためにステップS107に進む(ステップS100のNo)。
【0061】
ステップS101では、デバイスアプリ処理部22が、受信した通信情報に対して、送信元であるデバイス52に対応したアプリケーション処理(中継処理)を行う。デバイスアプリ処理部22は、ここでの中継処理として、例えば、デバイス52より受信したバイナリデータ(バイナリ、テキストいずれもありうる)を次の処理機能となる外部サーバアプリ処理部(ここでは、当該装置の外部サーバアプリ処理部21または転送先のデバイス移動サポート受入装置3の外部サーバアプリ処理部31)が理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、デバイス52より受信したデバイス固有のデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、次の処理機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。
【0062】
デバイス52に対応したアプリケーション処理が完了した通信情報を受け取った通信転送判断部25は、受け取った通信情報をデバイス移動サポート受入装置3に転送するか、または直接外部サーバ51に送信するかを判断する(ステップS102)。
【0063】
デバイス移動サポート受入装置3に転送する場合には(ステップS102のYes)、デバイス移動サポート受入装置3への転送処理を行うためにステップS103に進む。一方、本デバイス移動サポート転送装置2から直接外部サーバに通信情報を送信する場合には(ステップS102のNo)、本装置における外部サーバアプリ処理部21による、送信先である外部サーバに対応した中継処理を行うためにステップS105に進む。
【0064】
ステップS103では、転送先アドレス解決部26が、転送する通信情報を元に、転送先装置であるデバイス移動サポート受入装置3のネットワークアドレスをアドレス管理サーバへ問い合わせ、転送先装置のアドレス解決を行う。
【0065】
なお、転送先となるデバイス移動サポート受入装置3の情報は、例えば、移動してきた移動デバイスより転送先のデバイス移動サポート受入装置3の宛先アドレス(IPアドレス等)を入手してもよい。他の例としては、デバイス移動サポート転送装置2、デバイス移動サポート受入装置3らのIPアドレス情報を管理するアドレス管理サーバを設置し、移動デバイスの固有識別情報(例えば、MACアドレス)と移動デバイスの必要とする転送処理機能を備えたデバイス移動サポート受入装置3のIPアドレスを紐付けたデータベースの管理をし、デバイス移動サポート転送装置2が、移動してきた移動デバイスの固有識別情報を用いてアドレス管理サーバへ問い合わせをすることでデバイス移動サポート受入装置3の宛先アドレスを入手してもよい。なお、IPアドレスの管理と、移動デバイスと転送先装置の情報との紐付けとを、別々のデータベースで行うことも可能である。また、移動デバイスと転送先装置の情報とを紐付ける代わりに、送信先である外部サーバまたはそのアプリケーションと転送先装置の情報とを紐付けて管理しておいてもよい。
【0066】
デバイス移動サポート受入装置3のアドレスが解決すると、通信転送処理部27は、転送用に中継処理された通信情報を外部接続インタフェース23を介してデバイス移動サポート受入装置3に転送する(ステップS104)。
【0067】
一方、ステップS105では、デバイスアプリ処理部22によるアプリケーション処理が完了した通信情報を受け取った外部サーバアプリ処理部21が、送信先である外部サーバ51に対応したアプリケーション処理(中継処理)を行う。外部サーバアプリ処理部21は、ここでの中継処理として、例えば、デバイスアプリ処理部22により中継処理されたバイナリデータ(バイナリ、テキストいずれもありうる)を次の処理機能となる外部サーバ51のアプリケーションが理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、デバイスアプリ処理部22により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、外部の特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、外部サーバが扱うアプリケーションプロトコルや通信プロトコル(独自なもの、標準化されたものいずれもありうる)に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報を外部サーバ51に外部接続インタフェース23を介して送信する(ステップS106)。
【0068】
また、デバイス移動サポート転送装置2では、外部サーバ51から通信情報を受信した場合(ステップS107のYes)、送信元である外部サーバ51に対応したアプリケーション処理を行うためにステップS108に進む。また、受信していない場合(ステップS107のNo)、デバイス移動サポート受入装置3からの受信を判断するためにステップS111に進む。
【0069】
ステップS108では、外部サーバアプリ処理部21が、外部サーバ51より受信した通信情報に対して、送信元である外部サーバ51に対応したアプリケーション処理(中継処理)を行う。外部サーバアプリ処理部21は、ここでの中継処理として、例えば、外部サーバ51より受信したバイナリデータ(バイナリ、テキストいずれもありうる)を次の処理機能となるデバイスアプリ処理部22が理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、外部サーバ51より受信した外部サーバのデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス移動サポート転送装置2内の他の処理機能(デバイスアプリ処理部22など)が理解可能なデータフォーマットに変換する処理を行ってもよい。
【0070】
外部サーバアプリ処理部21によるアプリケーション処理が完了した通信情報を受け取ったデバイスアプリ処理部22は、送信先であるデバイス52に対応したアプリケーション処理(中継処理)を行う(ステップS109)。デバイスアプリ処理部22は、ここでの中継処理として、例えば、外部サーバアプリ処理部21により中継処理されたバイナリデータ(バイナリ、テキストいずれもありうる)を、次の処理機能となるデバイス52のアプリケーションが理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、外部サーバアプリ処理部21により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、デバイス52が扱うアプリケーションプロトコルや通信プロトコル(独自なもの、標準化されたものいずれもありうる)に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報をデバイス接続インタフェース24を介してデバイス52に送信する(ステップS110)。
【0071】
また、デバイス移動サポート転送装置2では、デバイス移動サポート受入装置3から通信情報を受信した場合(ステップS111のYes)、送信先であるデバイス52に対応したアプリケーション処理を行うためにステップS112に進む。なお、本実施形態では、デバイス移動サポート受入装置3から転送されてきた通信情報には、既にデバイス移動サポート受入装置3において送信元である外部サーバ51に対応したアプリケーション処理(転送処理)が行われていることを前提としている。
【0072】
ステップS112では、デバイスアプリ処理部22が、送信先であるデバイス52に対応したアプリケーション処理(中継処理)を行う。ここでの中継処理は、基本的には、ステップS109で行う中継処理と同様である。すなわち、デバイスアプリ処理部22は、ここでの中継処理として、例えば、デバイス移動サポート受入装置3の外部サーバアプリ処理部31により中継処理されたバイナリデータ(バイナリ、テキストいずれもありうる)を、次の処理機能となるデバイス52のアプリケーションが理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、外部サーバアプリ処理部21により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、デバイス52が扱うアプリケーションプロトコルや通信プロトコル(独自なもの、標準化されたものいずれもありうる)に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報をデバイス接続インタフェース24を介してデバイス52に送信する(ステップS113)。
【0073】
なお、装置内で完結する外部サーバアプリ処理部21からデバイスアプリ処理部22への中継処理と、装置をまたぐデバイス移動サポート受入装置3の外部サーバアプリ処理部31からデバイスアプリ処理部22への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部32と通信転送処理部27とによって吸収させることも可能である。
【0074】
最後に、配下のデバイス52、外部サーバ51およびデバイス移動サポート受入装置3のいずれからも通信情報を受信していない場合には、次の受信待ちを行うために処理を終了する(ステップS111のNo)。このように、デバイス移動サポート転送装置2では、デバイス移動サポート転送装置2では、前の処理機能である各送信元/転送元と次の処理機能である各送信先/転送先に応じた中継処理を行うことによって必要な情報を最終宛先である外部サーバ51およびデバイス52に届ける。
【0075】
次に、デバイス移動サポート受入装置3の動作について説明する。図5は、デバイス移動サポート受入装置3の動作の一例を示すフローチャートである。図5に示す例では、デバイス移動サポート受入装置3は、デバイス移動サポート転送装置から通信情報を受信した場合(ステップS200のYes)、転送されてきた通信情報を受け入れるか否かを判断するためにステップS201に進む。また、受信していない場合には(ステップS200のNo)、外部サーバからの受信を判断するためにステップS204に進む。
【0076】
ステップS201では、転送受入判断部33が、転送されてきた通信情報を受け入れるか否かを判断する。受け入れると判断した場合には(ステップS201のYes)、外部サーバ51に対応したアプリケーション処理を行うためにステップS202に進む。なお、本実施形態では、デバイス移動サポート転送装置2から転送されてきた通信情報には、既にデバイス移動サポート転送装置2において送信元であるデバイス52に対応したアプリケーション処理が行われていることを前提としている。一方、拒否すると判断した場合には(ステップS201のNo)、そのまま処理を終了する。
【0077】
ステップS202では、外部サーバアプリ処理部31が、送信先である外部サーバ51に対応したアプリケーション処理(中継処理)を行う。ここでの中継処理は、基本的には、図5のステップS105で行う中継処理と同様である。すなわち、外部サーバアプリ処理部31は、ここでの中継処理として、例えば、デバイス移動サポート転送装置2のデバイスアプリ処理部22により中継処理されたバイナリデータ(バイナリ、テキストいずれもありうる)を次の処理機能となる外部サーバ51のアプリケーションが理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、デバイスアプリ処理部22により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、外部の特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、外部サーバが扱うアプリケーションプロトコルや通信プロトコル(独自なもの、標準化されたものいずれもありうる)に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報を外部接続インタフェース33を介して外部サーバ51に送信する(ステップS203)。
【0078】
なお、装置内で完結するデバイスアプリ処理部22から外部サーバアプリ処理部21への中継処理と、装置をまたぐデバイス移動サポート転送装置2のデバイスアプリ処理部22からデバイス移動サポート受入装置3の外部サーバアプリ処理部31への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部32と通信転送処理部27とによって吸収させることも可能である。
【0079】
また、デバイス移動サポート受入装置3は、外部サーバ51から通信情報を受信した場合(ステップS204のYes)、送信元である外部サーバ51に対応したアプリケーション処理を行うためにステップS205に進む。なお、デバイス移動サポート転送装置2および外部サーバ51のいずれからも通信情報を受信していない場合には、次の受信待ちを行うために処理を終了する(ステップS204のNo)。
【0080】
ステップS205では、外部サーバアプリ処理部31が、外部サーバ51から受信した通信情報に対して、送信元である外部サーバ51に対応したアプリケーション処理(中継処理)を行う。ここでの中継処理は、基本的には、ステップS108で行う中継処理と同様である。すなわち、外部サーバアプリ処理部31は、ここでの中継処理として、例えば、外部サーバ51より受信したバイナリデータ(バイナリ、テキストいずれもありうる)を次の処理機能となるデバイス移動サポート転送装置2のデバイスアプリ処理部22が理解可能なテキストデータ(バイナリ、テキストいずれもありうる)に変換する処理を行う。また、例えば、外部サーバ51より受信した外部サーバのデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス移動サポート転送装置2内の処理機能(通信転送処理部27およびデバイスアプリ処理部22など)が理解可能なデータフォーマットに変換する処理を行ってもよい。そして、中継処理した通信情報を外部接続インタフェース34を介してデバイス移動サポート転送装置2に転送する(ステップS206)。
【0081】
なお、装置内で完結する外部サーバアプリ処理部21からデバイスアプリ処理部22への中継処理と、装置をまたぐデバイス移動サポート受入装置3の外部サーバアプリ処理部31からデバイス移動サポート転送装置2のデバイスアプリ処理部22への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部32と通信転送処理部27とによって吸収させることも可能である。
【0082】
なお、本実施形態では、通信情報を受け取った処理機能が次の処理機能が扱える形に通信情報を変換する処理の総称を「中継処理」と呼んでいる。例えば、外部サーバアプリ処理部21におけるアプリケーション処理や、デバイスアプリ処理部12におけるパケット変換処理は、具体的な処理内容は異なるが、いずれも次の処理機能が扱える形に変換する処理であるため、いずれも中継処理となる。なお、次の処理機能は、物理的に他の装置であってもかまわない。例えば、デバイス移動サポート転送装置2またはデバイス移動サポート4における処理を行えた後、次の処理をデバイス移動サポート受入装置3またはデバイス移動サポート4に任せるといったことが可能である。
【0083】
次に、図6を用いて本実施形態における装置間の通信の流れを説明する。図6は、本実施形態のネットワークの概観と通信の流れを示す説明図である。図6では、図1に示した場合と同様、デバイス52が、本来自身のサポートを行ってくれるデバイス移動サポート受入装置3(例えば、HGWのようなもの)が管理するローカルエリアから、デバイス移動サポート転送装置2が管理するローカルエリアへ移動した場合を示している。符合61〜68までの矢印線は、通信情報の流れおよびアドレス情報の問い合わせと応答を示している。図6に示す一連の通信情報の送受信においては、デバイス移動サポート転送装置2とデバイス移動サポート受入装置3とが通信情報の中継処理を行っている。
【0084】
すなわち、ローカル・ネットワーク42に移動したデバイス52が、外部サーバ51に届けたい通信情報を、現在の接続先であるデバイス移動サポート転送装置2に送信すると(ステップS61)、デバイス移動サポート転送装置2では、受け取った通信情報を直接外部サーバ51に送信するか、デバイス移動サポート受入装置3を介して転送するかを判断する。本例では、上記で示した判断基準1−1〜1−6のような判断基準に従って、デバイス移動サポート受入装置3に転送することを決定したとする。
【0085】
すると、デバイス移動サポート転送装置2は、アドレス管理サーバ53にデバイス移動サポート受入装置3のネットワークアドレスの問い合わせを行い(ステップS62)、アドレス管理サーバ53からの応答を受け取ると(ステップS63)、送信元であるデバイス52に対応したアプリケーション処理を行った上で、デバイス移動サポート受入装置3にその通信情報を転送する(ステップS64)。その際、デバイス移動サポート転送装置2は、受信した通信情報に対して、送信元であるデバイス52に対応したアプリケーション処理を行った上で、転送先であるデバイス移動サポート受入装置3に送信する。
【0086】
デバイス移動サポート転送装置2から通信情報を受信したデバイス移動サポート受入装置3では、受信した通信情報の転送受け入れを行うか否かを判断し、転送受け入れを行う場合には、通信情報を外部サーバ51に送信する(ステップS65)。その際、デバイス移動サポート受入装置3は、受信した通信情報に対して、送信先である外部サーバ51に対応したアプリケーション処理を行い、外部サーバ51への中継処理を完了させた上で、デバイス移動サポート受入装置3に転送する。
【0087】
外部サーバ51は、受け取った通信情報を処理する。その際、必要に応じてデバイス52(同じローカルエリア内の他のローカル・デバイスを含む。)への制御情報などを含む通信情報を、デバイス移動サポート受入装置3に送信する(ステップS66)。
【0088】
外部サーバ51から通信情報を受け取ったデバイス移動サポート受入装置3は、送信先であるデバイス52の情報からデバイス移動をサポートしているローカル・デバイス宛ての通信情報であることを認識し、そのローカル・デバイスが接続しているローカル・ネットワークの現在の接続先であるデバイス移動サポート転送装置2に転送する(ステップS67)。その際、デバイス移動サポート受入装置3は、受信した通信情報に対して、送信元である外部サーバ51に対応したアプリケーション処理を行った上で、転送先であるデバイス移動サポート転送装置2に送信する。
【0089】
デバイス移動サポート受入装置3から通信情報を受信したデバイス移動サポート転送装置2では、受信した通信情報を、配下のデバイス52に送信する(ステップS68)。その際、デバイス移動サポート転送装置2は、受信した通信情報に対して、送信先であるデバイス52に対応したアプリケーション処理を行い、デバイス52への中継処理を完了させた上で、デバイス52に送信する。
【0090】
以上のように、デバイス移動サポート転送装置2が、配下のローカル・デバイスであるデバイス52からの通信情報をデバイス移動サポート受入装置3に転送し、デバイス移動サポート受入装置3が外部サーバ51に送信することで、例え移動先のローカルネットワークでの中継処理を行うデバイス移動サポート転送装置2が運用ポリシー上の問題やスペック上の問題などにより移動してきたデバイス52と外部サーバ51との通信の中継処理を行えないまたは行わない場合であっても、当該デバイス52からの通信情報を、デバイス移動サポート転送装置2、デバイス移動サポート受入装置3内で適切に中継処理し、最終宛先である外部サーバ51に送信することができる。
【0091】
特に、移動したローカル・デバイスが必要とする外部サーバの扱うアプリケーション通信をサポートする装置を通信の中継処理先とすることができるので、ローカル・デバイスが移動した場合にも、これらローカル・デバイスと外部サーバとの通信が可能となる。
【0092】
また、デバイス移動サポート受入装置3が、外部サーバからの通信情報をデバイス移動サポート転送装置2に転送し、デバイス移動サポート転送装置2が配下のローカル・デバイスであるデバイス52に送信することで、同様に、当該外部サーバ51からの通信情報を、デバイス移動サポート受入装置3、デバイス移動サポート転送装置2内で適切に中継処理して、最終宛先であるデバイス52に送信することができる。すなわち、ローカル・デバイスが移動した際にも、移動先の中継装置(本例では、デバイス移動サポート転送装置2)が、そのローカルデバイスから外部サーバ宛ての通信情報を、当該通信情報を転送可能な他の中継装置(本例では、デバイス移動サポート受入装置3)に転送することで、移動したローカル・デバイスと外部サーバとの通信ができなくなる問題を解決することが可能となる。
【0093】
実施形態2.
次に、本発明の第2の実施形態について説明する。第1の実施形態では、デバイス移動サポート転送装置2とデバイス移動サポート受入装置3とをその機能により異なる構成の装置として示したが、デバイス移動サポート転送装置2とデバイス移動サポート受入装置3とは、その両方の機能を備える中継装置(以下、デバイス移動サポート装置という。)に置き換わっても同様の動作が可能となる。
【0094】
図7は、本実施形態のデバイス移動サポート装置の構成例を示すブロック図である。図7に示すデバイス移動サポート装置4は、外部サーバアプリ処理部41と、デバイスアプリ処理部42と、外部接続インタフェース43と、デバイス接続インタフェース44と、通信転送判断部45と、転送先アドレス解決部46と、通信転送処理部47と、転送受入判断部48とを備える。
【0095】
デバイス移動サポート装置4の一実装例は、xGWである。よって、ローカル・デバイスが移動した際にも、移動先のデバイス移動サポート装置4であるxGWが、通信情報を転送可能な他のxGW(例えば、移動元のデバイス移動サポート装置4)へローカル・デバイスからの通信情報を転送することで、移動したローカル・デバイスと外部サーバとの通信ができなくなる問題を解決することが可能となる。
【0096】
デバイス移動サポート装置4は、デバイス移動サポート転送装置2およびデバイス移動サポート受入装置3のいずれの動作も行う。すなわち、デバイス移動サポート装置4を複数備えることで、デバイス移動サポート装置4は、お互いに移動デバイスの通信情報の転送も受け入れも行うことができる。
【0097】
外部サーバアプリ処理部41は、デバイス移動サポート転送装置2の外部サーバアプリ処理部21の機能と、デバイス移動サポート受入装置3の外部サーバアプリ処理部31の機能とを合わせた形をとる。すなわち、外部サーバアプリ処理部41は、外部接続インターフェース43を介して外部サーバ51からデバイス52への通信情報を受信した場合には、受信した通信情報を次の処理機能であるデバイスアプリ処理部42が扱える(処理可能な)形式に変換して、デバイスアプリ処理部42に渡す。また、外部サーバアプリ処理部41は、通信転送判断部45が受け取ったデバイス52から外部サーバ51への通信情報について当該デバイス移動サポート装置4が直接外部サーバ51に送信すると判断した場合には、該通信情報に対してパケットヘッダフォーマットやペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先である外部サーバ51が処理可能かつ該外部サーバ51に転送可能な形式に変換し、外部接続インターフェース43を介して外部サーバ51に送信する。
【0098】
また、外部サーバアプリ処理部41は、通信転送処理部42から他のデバイス移動サポート装置4より転送されてきた通信情報の外部サーバ51への送信を指示された場合に、その通信情報を最終宛先である外部サーバ51が処理可能かつ該外部サーバ51に転送可能な形式に変換する中継処理を行い、外部接続インターフェース43を介して外部サーバ51に送信する。また、外部サーバアプリ処理部41は、外部接続インターフェース43を介して外部サーバ51から他のバイス移動サポート装置4配下のデバイス52への通信情報を受信した場合には、受信した通信情報に対して次の処理機能(すなわち、転送先である他のデバイス移動サポート装置4の通信転送処理部47やデバイスアプリ処理部42)が扱える形式に変換する中継処理を行い、中継処理後の通信情報を該デバイス移動サポート装置4に転送するために本装置の通信転送処理部42に渡す。
【0099】
デバイスアプリ処理部42は、デバイス移動サポート転送装置2のデバイスアプリ処理部22と同様である。すなわち、デバイス接続インターフェース44を介してデバイス52から外部サーバ51への通信情報を受信した場合には、受信した通信情報を一旦通信転送判断部45に渡す。なお、その後通信転送判断部45により当該デバイス移動サポート装置4が直接外部サーバ51に送信すると決定された場合には、受信した通信情報を次の処理機能である当該装置の外部サーバアプリ処理部41が扱える形式に変換して該外部サーバアプリ処理部41に渡す。また、デバイスアプリ処理部42は、外部サーバアプリ処理部41または情報転送処理部47からデバイス52への通信情報を受け取ると、受け取った通信情報に対して、パケットヘッダフォーマット、ペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先であるデバイス52が処理可能かつ該デバイス52に転送可能な形式に変換して、デバイス接続インターフェース44を介してデバイス52に送信する。
【0100】
外部接続インターフェース43は、デバイス移動サポート転送装置2の外部接続インターフェース23の機能と、デバイス移動サポート受入装置3の外部接続インターフェース34の機能とを合わせた形をとる。すなわち、外部接続インターフェース43は、当該デバイス移動サポート装置4と外部ネットワーク上の他の装置(本例では、他のデバイス移動サポート装置4、外部サーバ51、アドレス管理サーバ53など)との通信インタフェースを提供する。
【0101】
デバイス接続インターフェース44は、デバイス移動サポート転送装置2のデバイス接続インターフェース24と同様である。すなわち、当該デバイス移動サポート装置4が外部ネットワークとの中継処理を行う対象であるローカルネットワーク上のローカル・デバイス(本例では、デバイス52)との通信インタフェースを提供する。
【0102】
通信転送判断部45は、デバイス移動サポート転送装置2の通信転送判断部25と同様である。すなわち、デバイスアプリ処理部42から外部サーバ51への通信情報を受け取ると、該通信情報について、他のデバイス移動サポート装置4に転送することで外部サーバ51に中継してもらうか、または当該デバイス移動サポート装置4から直接に外部サーバ51に送信するかを判断する。
【0103】
転送先アドレス解決部46は、デバイス移動サポート転送装置2の転送先アドレス解決部26と同様である。すなわち、通信転送判断部45より転送先となる他のデバイス移動サポート装置4のネットワークアドレス解決を依頼された場合に、受け取った通信情報に含まれているローカル・デバイス(送信元)のMACアドレスやデバイス特有の識別コード(アドレス)などに基づいて、転送装置のネットワークアドレスを解決する。
【0104】
通信転送処理部47は、デバイス移動サポート転送装置2の通信転送処理部27の機能と、デバイス移動サポート受入装置3の通信転送処理部32の機能を合わせた形をとる。すなわち、通信転送判断部45より受け取った外部サーバ51への通信情報を転送先である他のデバイス移動サポート装置4に転送可能にするための中継処理(パケットヘッダフォーマット、ペイロードフォーマットの変換など)を行う。そして、外部接続インターフェース43を介して転送先である他のデバイス移動サポート装置4に転送する。また、通信転送処理部47は、外部接続インターフェース43を介して他のデバイス移動サポート装置4から転送されてきた通信情報(外部サーバ51から送信され、他のデバイス移動サポート装置4によって転送されたデバイス52への通信情報)を外部サーバアプリ処理部41に代わって受信し、受信した通信情報を次の処理機能であるデバイスアプリ処理部42に渡す。このとき、通信転送処理部47は、受信した通信情報をデバイスアプリ処理部42が処理できる形に変換する等のアプリケーションレベルでの中継処理を行ってもよい。
【0105】
また、通信転送処理部47は、外部接続インターフェース44を介して他のデバイス移動サポート装置4により転送された通信情報(他のデバイス移動サポート装置4配下のローカル・ネットワークから外部サーバ51への通信情報)を受信した場合には、受信した通信情報を一旦転送受入判断部48に渡して、転送受け入れ可能か否かを転送受入判断部48に問い合わせる。また、通信転送処理部47は、転送受入判断部48より受け入れ許可の旨の応答を受け取った場合、受信した通信情報を外部サーバアプリ処理部41に渡す。その際、その通信情報の外部サーバへの送信を指示する。このとき、通信転送処理部47は、受信した通信情報を外部サーバアプリ処理部41が処理できる形に変換する等のアプリケーションレベルでの中継処理を行ってもよい。
【0106】
転送受入判断部48は、デバイス移動サポート受入装置3の転送受入判断部33と同様である。すなわち、通信転送処理部47から受け取った通信情報を元に、本デバイス移動サポート受入装置3のスペックや運用ポリシーに従い、転送されてきた通信情報を受け入れるか否かを判断する。
【0107】
なお、本実施形態の動作は、第1の実施形態のデバイス移動サポート転送装置2と、デバイス移動サポート受入装置3とを、それぞれ第1のデバイス移動サポート装置4と、第2のデバイス移動サポート受入装置4とに置き換えたものと同様である。
【0108】
また、上記各実施形態では、転送制御を行う対象を移動デバイスとする場合の例を説明したが、転送制御を行う対象は、移動デバイスに限らない。例えば、中継装置が稼働し始めた当初よりローカル・ネットワーク配下にいたデバイスであっても、当該中継装置が対応していない外部サーバを送信先としたり、配下のデバイスのバージョンが上がったことにより送信元のデバイスが当該中継装置が対応していないソフトウェアによって駆動するデバイスとなった場合などには、そのようなデバイスと外部サーバとの通信を転送制御の対象にすることも可能である。
【0109】
次に、本発明の概要について説明する。図8は、本発明の概要を示すブロック図である。図8に示す中継装置100は、ローカルネットワーク上のデバイスであるローカル・デバイス200と、外部ネットワーク上のサーバである外部サーバ300との通信を実現させるための中継装置であって、デバイス接続インタフェース101と、外部接続インタフェースと102と、転送判断手段103と、通信情報転送手段104とを備えている。
【0110】
デバイス接続インタフェース101(例えば、デバイス接続インタフェース24、44)は、ローカルネットワーク上の装置(例えば、ローカル・デバイス200)と通信を行うための通信インタフェースである。
【0111】
外部接続インタフェース102(例えば、外部接続インタフェース23、34、43)は、外部ネットワーク上の装置(例えば、外部サーバ200、他の中継装置400)と通信を行うための通信インタフェースである。
【0112】
転送判断手段103(例えば、通信転送判断部25、45)は、配下のローカル・デバイス(例えば、ローカル・デバイス200)から外部サーバ(例えば、外部サーバ300)宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する。
【0113】
通信情報転送手段104(例えば、通信転送処理部27、32、47)は、転送判断手段103により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置(例えば、中継装置400)が処理可能な形に変換する中継処理を行った上で、該他の中継装置に転送する。
【0114】
転送判断手段104は、例えば、当該中継装置100の仕様または運用ポリシーに基づいて当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、他の中継装置に転送するか否かを判断してもよい。
【0115】
また、通信情報転送手段104は、例えば、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、該他の中継装置に転送してもよい。
【0116】
また、図示省略しているが、中継装置100は、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するアドレス解決手段を備えていてもよい。
【0117】
また、中継装置100は、他の中継装置より転送された情報を受信する転送情報受信手段を備えていてもよい。そのような場合には、さらに転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段を備えていてもよい。
【0118】
また、転送情報受信手段が受信した情報を受け入れるか否かを、当該中継装置の仕様または運用ポリシーに基づいて判断する転送受入判断手段を備えていてもよい。
【0119】
また、転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、該ローカル・デバイスに送信するデバイス側中継処理手段とを備えていてもよい。
【産業上の利用可能性】
【0120】
本発明は、センサデバイスやアクチュエータデバイスなどのローカル・デバイスと、該ローカル・デバイスの情報を扱うサーバとの通信を実現するための用途に好適に適用可能である。
【符号の説明】
【0121】
1 インターネット(外部ネットワーク)
2 デバイス移動サポート転送装置
3 デバイス移動サポート受入装置
4 デバイス移動サポート装置
51 外部サーバ
52 ローカル・デバイス
53 アドレス管理サーバ
21、31、41 外部サーバアプリ処理部
22、42 デバイスアプリ処理部
23、34、43 外部接続インタフェース
24、44 デバイス接続インタフェース
25、45 通信転送判断部
26、46 転送先アドレス解決部
27、32、47 通信転送処理部
33、48 転送受入判断部
100 中継装置
101 デバイス接続インタフェース
102 外部接続インタフェース
103 転送判断手段
104 通信情報転送手段
200 ローカル・デバイス
300 外部サーバ
400 他の中継装置

【特許請求の範囲】
【請求項1】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する通信情報転送手段とを備えた
ことを特徴とする中継装置。
【請求項2】
転送判断手段は、当該中継装置の仕様または運用ポリシーに基づいて当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、他の中継装置に転送するか否かを判断する
請求項1に記載の中継装置。
【請求項3】
外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するアドレス解決手段を備えた
請求項1または請求項2に記載の中継装置。
【請求項4】
通信情報転送手段は、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する
請求項1から請求項3のうちのいずれか1項に記載の中継装置。
【請求項5】
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段とを備えた
請求項1から請求項4のうちのいずれか1項に記載の中継装置。
【請求項6】
転送情報受信手段が受信した情報を受け入れるか否かを、当該中継装置の仕様または運用ポリシーに基づいて判断する転送受入判断手段を備えた
請求項5に記載の中継装置。
【請求項7】
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、前記ローカル・デバイスに送信するデバイス側中継処理手段とを備えた
請求項1から請求項6のうちのいずれか1項に記載の中継装置。
【請求項8】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信システムであって、
第1の中継装置と、第2の中継装置とを備え、
前記第1の中継装置は、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
少なくとも前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する上り通信情報転送手段と、
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、前記ローカル・デバイスに送信するデバイス側中継処理手段とを含み、
前記第2の中継装置は、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段と、
少なくとも外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する下り通信情報転送手段とを含む
ことを特徴とする通信システム。
【請求項9】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、
他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する
ことを特徴とする通信情報転送方法。
【請求項10】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および
他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する処理
を実行させるための通信情報転送プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−124758(P2012−124758A)
【公開日】平成24年6月28日(2012.6.28)
【国際特許分類】
【出願番号】特願2010−274656(P2010−274656)
【出願日】平成22年12月9日(2010.12.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ZIGBEE
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】