(57)【特許請求の範囲】
【請求項１】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する通信情報転送手段とを備え、
前記転送判断手段は、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、前記ローカル・デバイスと前記外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、他の中継装置に転送するか否かを判断する
ことを特徴とする中継装置。
【請求項２】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する通信情報転送手段と、
外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するアドレス解決手段とを備えた
ことを特徴とする中継装置。
【請求項３】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する通信情報転送手段とを備え、
前記通信情報転送手段は、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する
ことを特徴とする中継装置。
【請求項４】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信システムであって、
第１の中継装置と、第２の中継装置とを備え、
前記第１の中継装置は、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、
少なくとも前記転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する上り通信情報転送手段と、
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、前記ローカル・デバイスに送信するデバイス側中継処理手段とを含み、
前記第２の中継装置は、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、
他の中継装置より転送された情報を受信する転送情報受信手段と、
前記転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段と、
少なくとも外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する下り通信情報転送手段とを含む
ことを特徴とする通信システム。
【請求項５】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、前記ローカル・デバイスと前記外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、
他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する
ことを特徴とする通信情報転送方法。
【請求項６】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、
他の中継装置に転送する旨が決定されると、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するとともに、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する
ことを特徴とする通信情報転送方法。
【請求項７】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた第１の中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、
他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送し、
前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースを備えた第２の中継装置が、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する
ことを特徴とする通信情報転送方法。
【請求項８】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、前記ローカル・デバイスと前記外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および
他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する処理
を実行させるための通信情報転送プログラム。
【請求項９】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および
他の中継装置に転送する旨が決定されると、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するとともに、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、前記他の中継装置に転送する処理
を実行させるための通信情報転送プログラム。
【請求項１０】
ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、
前記ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、前記外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、
配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、
他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する処理、および
外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する処理
を実行させるための通信情報転送プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ローカルネットワークによって接続されるセンサデバイスやアクチュエータデバイスなどのデバイス（ローカル・デバイス）と、外部のサーバとの通信を実現させるための中継装置、通信システム、通信情報転送方法および通信情報転送プログラムに関する。
【背景技術】
【０００２】
近年、スマートグリッドやホームネットワークなどの分野において、センサデバイスやアクチュエータデバイスなどの活躍の注目が集まっている。スマートグリッドやホームネットワークにおいては、各ローカルエリア（例えば、オフィス、工場、家庭、自動車など）において刻々と変化する多量の情報（例えば、電力情報、温度情報、振動情報、音情報などの環境情報）を取得するために、センサデバイスや特定の環境情報測定機器を用いる。
【０００３】
これら通信機能を備えたセンサデバイスなどから得られた情報は、該デバイスの接続先であるローカルエリアに接続しているサーバなどの情報処理装置において扱われるほか、インターネット網や３Ｇ網（または将来的には４Ｇ網）などを介して接続される外部のサーバにおいて処理することが想定されている。例えば、各家庭において得られた消費電力情報は、各家庭が備える情報処理装置によって保存や処理されるほか、電力供給を行う会社（発電会社、送電会社、配電会社）などに配備されているサーバに送信され、サーバ内のアプリケーションによって処理されることが考えられている。
【０００４】
また、各ローカルエリアに設置されたアクチュエータ（環境を変化させる動作を行う機器）も同様に、各ローカルエリアに接続されたサーバにおいて動作制御されるほか、インターネット網などを介して接続される外部のサーバーから制御されることもありうる。
【０００５】
ローカルエリア内のセンサデバイスなどが取得する情報をインターネット網などを介して外部のサーバが入手したり、ローカルエリア内のアクチュエータをインターネット網越しのサーバから制御するにあたり、そのセンサデバイスやアクチュエータデバイスと外部のサーバ間の通信が問題となる。センサデバイスやアクチュエータデバイスには様々な形態が存在するが、これらのデバイスの配置において、通信配線が不必要となる利点上、無線通信モジュールを利用する形態が多く存在する。
【０００６】
例えば、これらのデバイスの無線通信には、ＺｉｇｂｅｅやＺ−ｗａｖｅなどの通信プロトコルが用いられてきた。ＺｉｇｂｅｅまたはＺ−ｗａｖｅは、センサデバイスやアクチュエータデバイスをターゲットにして規格されたプロトコルである。また、プロトコルスタックの簡易性や消費電力の省エネ化などの観点より、現状、インターネットを実現するプロトコルとして公知のＴＣＰ／ＩＰのスタックを採用せず、独自のプロトコルスタックを用いている。このため、ＺｉｇｂｅｅやＺ−ｗａｖｅ通信プロトコルを実装したデバイスは、ＴＣＰ／ＩＰのスタックを採用する多くのサーバと直接に通信することができない。また、インターネット網もＴＣＰ／ＩＰによって構築されているため、ＺｉｇｂｅｅやＺ−ｗａｖｅを実装したデバイスの通信をサポートすることができない。したがって、センサデバイスやアクチュエータデバイスとインターネット網越しの外部サーバとは直接通信を行うことができない。
【０００７】
センサデバイスやアクチュエータデバイスといったＴＣＰ／ＩＰ以外の通信プロトコルを実装した通信デバイスと、インターネット網等を介した外部サーバとの通信を実現する方法として、ｘＧＷといった中継装置を間に設けて、これにより通信を中継処理する方法がある。ローカルエリアに設置されるｘＧＷは、ＺｉｇｂｅｅやＺ−ｗａｖｅなど通信デバイスが実装している通信プロトコルをサポートするとともに、ＴＣＰ／ＩＰスタックを実装した装置である。また、ｘＧＷの実施形態としては、ルータ（特にＢＢＲ：Broad Band Router ）や、サーバ装置などがある。ｘＧＷは、センサデバイスからの情報を入手し、入手した情報をＴＣＰ／ＩＰの通信方法によって外部のサーバに送信する。また、外部サーバからのアクチュエータ制御通信を受けると、そのアクチュエータデバイスが実装しているプロトコル（ＺｉｇｂｅｅやＺ−ｗａｖｅなど）を使って制御先であるアクチュエータに制御情報を送信する。
【０００８】
ｘＧＷでは、デバイスからの通信情報（センサ情報などに加え、デバイスのＭＡＣアドレスや固有の識別コードなどが含まれる）を入手すると、通信情報のヘッダ解析、ペイロード解析などの中継処理を行う。そして、中継処理した通信情報（パケットヘッダ、ペイロードなどの情報）を外部サーバが処理できるメッセージフォーマットに変換した上で、外部サーバに向けてそのメッセージを外部ネットワーク上に送信する。なお、外部サーバからデバイスへの通信は、上述と逆の順序で中継処理が行われ、デイバスが処理できるメッセージフォーマットに変換された上で、そのデバイスに向けてローカルネットワーク上に送信されることによって行われる。
【０００９】
このように、ｘＧＷがローカルネットワークによって接続されるデバイス（以下、ローカル・デバイスという。）と、インターネット網等の外部ネットワーク越しの外部サーバとの通信を中継処理することで、ローカル・デバイスと外部サーバとの通信が実現される。
【００１０】
ローカル・デバイスと外部サーバとの通信を実現させるｘＧＷでは、ローカル・デバイスとの間でアプリケーション通信をサポートする必要があるとともに、外部サーバとの間でアプリケーション通信をサポートする必要がある。すなわち、ｘＧＷは、ＺｉｇｂｅｅやＺ−ｗａｖｅなどの通信プロトコルにおけるアプリケーション処理を行うことでセンサデバイスからの情報、またはアクチュエータデバイスへの情報を扱うことができる。一方、外部サーバとは、外部サーバが扱うＴＣＰ／ＩＰ上のアプリケーション通信において、センサやアクチュエータに関する情報をやり取りしなければならない。
【００１１】
外部サーバはそれぞれ独自のアプリケーション通信を扱うことが考えられる。このため、多くの外部サーバとローカル・デバイスとの通信をサポートするには、ｘＧＷは、特に、外部サーバとの間のアプリケーション通信の多様性をサポートする必要性がある。
【００１２】
ところで、ｘＧＷによって実現されるローカル・デバイスと外部サーバとの通信において、ローカル・デバイスが他のローカルネットワークに移動すると、ｘＧＷの中継処理が正常に動作しない問題が生じる可能性がある。
【００１３】
上述したように、ローカル・デバイスは、外部サーバと通信を行うためには、ｘＧＷなどの中継装置を必要とする。このようなローカル・デバイスがネットワークを移動する場合、移動先のローカルエリアに設置されているｘＧＷによる中継処理が動作することによってはじめて外部サーバとの通信が実現される。しかし、移動先のローカルエリアに設置されているｘＧＷは、移動してきたこれらのデバイスと外部サーバとの通信の中継処理を行わない、または行えない可能性がある。
【００１４】
ｘＧＷが中継処理を行わない理由として、以下のようなｘＧＷの運用ポリシーが考えられる。
・すべての移動デバイスと外部サーバとの通信を中継しない。
・特定の移動デバイスと外部サーバとの通信を中継しない。
・特定の外部サーバの通信アプリケーションを必要とする移動デバイスと外部サーバとの通信を中継しない。
【００１５】
また、ｘＧＷが中継処理を行えない理由としては、ｘＧＷの仕様（以下、スペックという。）の問題に加え、同様に以下のようなｘＧＷの運用ポリシーが考えられる。
・運用上サポートしていない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、外部サーバとの通信を中継できない。
・スペック上サポートできない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、外部サーバとの通信を中継できない。
【００１６】
また、ｘＧＷから外部サーバまでの通信経路に通信障害が生じた場合にもｘＧＷは中継処理を行えない。
【００１７】
このように、通常の中継処理を行うｘＧＷでは、移動してきたローカル・デバイスと外部サーバとの通信の中継処理を行わない、あるいは行えない可能性があるため、ローカル・デバイスは、自身が動作するエリアを移動した際に、外部サーバとの通信が行えない可能性がある。
【００１８】
通信端末の移動に関する技術としては、例えば、非特許文献１や非特許文献２に示すＭＩＰ（Mobile IP ）が広く知られている。しかし、ＭＩＰは、ＩＰデバイスの移動サポートを対象としており、センサデバイスやアクチュエータデバイスなど非ＩＰデバイスの移動サポートまでは考慮されていない。特に、上記のようなｘＧＷによりアプリケーションレベルでの通信の中継処理を必要とするネットワーク通信上におけるデバイスの移動サポートはできない。
【００１９】
特許文献１には、Ｚｉｇｂｅｅネットワークのようなパーソナル・エリア・ネットワーク（ＰＡＮ）と、インターネット・プロトコル（ＩＰ）・ネットワークとの間の通信を可能にするためのメッセージ送信方法が記載されている。特許文献１に記載されているメッセージ送信方法では、ＰＡＮ内のＰＡＮクライアントに対して、ＩＰインタフェース上のポートを割り当てるとともに、ポートと関係付けるためのルーティングテーブルをメモリに格納し、そのルーティングテーブルに基づいてＰＡＮクライアントとＩＰネットワークとの間でメッセージを運ぶ。例えば、ＩＰネットワークにおいて発せられたメッセージを、どのポートでメッセージが受け取られたかに基づいて、ＰＡＮ内の対応するクライアントに運ぶ。
【００２０】
また、特許文献１に記載されているメッセージ送信方法では、ＩＰスタック上にＺｉｇｂｅｅスタックを実装して、ＩＰネットワーク上でＺｉｇｂｅｅメッセージをカプセル化して送信することによって、ＩＰネットワーク上でＺｉｇｂｅｅプロトコルによるＺｉｇｂｅｅクライアントへの通信を可能にしている。
【先行技術文献】
【特許文献】
【００２１】
【特許文献１】特表４１０−５０３２７６号公報
【非特許文献】
【００２２】
【非特許文献１】”ＩＰ  Ｍｏｂｉｌｉｔｙ  Ｓｕｐｐｏｒｔ  ｆｏｒ  ＩＰｖ４”，ＩＥＴＦ  ＲＦＣ３３４４，２００２年８月
【非特許文献２】”Ｍｏｂｉｌｉｔｙ  Ｓｕｐｐｏｒｔ  ｉｎ  ＩＰｖ６”，ＩＥＴＦ  ＲＦＣ３７７５，２００４年６月
【発明の概要】
【発明が解決しようとする課題】
【００２３】
しかし、特許文献１に記載されている方法は、予め自身が管理しているＰＡＮ内のローカル・デバイスと外部サーバとの間の通信を行うことは可能であっても、ローカル・デバイスが移動した際に、移動先のネットワークにおいても引き続き外部サーバとの間の通信を行うことについては何ら考慮されていない。例えば、どのような中継装置にカプセル化したパケットを転送するかについては、何ら開示されていない。
【００２４】
上述したように、ｘＧＷなどの中継装置が通信の中継処理、特にアプリケーションレベルでの中継処理を行うことによってローカル・デバイスとインターネット網越しの外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した際に、移動先のローカルネットワークでの中継処理を行うｘＧＷが、そのｘＧＷの運用ポリシー上の問題やスペック上の問題などにより、移動してきたデバイスと外部サーバとの通信の中継処理を行えないまたは行わない場合は、移動したローカル・デバイスと外部サーバとの通信が不可能になる。
【００２５】
そこで、本発明は、中継装置によってローカル・デバイスとインターネット等の外部ネットワーク上の外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した場合にも、移動先のローカルネットワークにおいて外部サーバとの通信を行うことを可能にする中継装置、通信システム、通信情報転送方法および通信情報転送プログラムを提供することを目的とする。
【課題を解決するための手段】
【００２６】
本発明による中継装置は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する通信情報転送手段とを備え、転送判断手段は、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、ローカル・デバイスと外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、他の中継装置に転送するか否かを判断するたことを特徴とする。
また、本発明による中継装置は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する通信情報転送手段と、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するアドレス解決手段とを備えるよう構成されていてもよい。
また、本発明による中継装置は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための中継装置であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する通信情報転送手段とを備え、通信情報転送手段は、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の前記他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送するよう構成されていてもよい。
【００２７】
また、本発明による通信システムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信システムであって、第１の中継装置と、第２の中継装置とを備え、第１の中継装置は、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する転送判断手段と、少なくとも転送判断手段により他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する上り通信情報転送手段と、他の中継装置より転送された情報を受信する転送情報受信手段と、転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、ローカル・デバイスに送信するデバイス側中継処理手段とを含み、第２の中継装置は、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースと、他の中継装置より転送された情報を受信する転送情報受信手段と、転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段と、少なくとも外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する下り通信情報転送手段とを含むことを特徴とする。
【００２８】
また、本発明による通信情報転送方法は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、ローカル・デバイスと外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送することを特徴とする。
また、本発明による通信情報転送方法は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、他の中継装置に転送する旨が決定されると、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するとともに、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送してもよい。
また、本発明による通信情報転送方法は、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送方法であって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた第１の中継装置が、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断し、他の中継装置に転送する旨が決定されると、受信した情報に対して、転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送し、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースを備えた第２の中継装置が、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送してもよい。
【００２９】
また、本発明による通信情報転送プログラムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、当該中継装置のＣＰＵ処理能力、メモリ容量、当該中継装置を構成するチップセットの能力、ローカル・デバイスと外部サーバとの通信処理に関するソフトウェア機能の能力、および運用上サポートしていない外部サーバの通信アプリケーションを必要とする場合は他の中継装置に転送する旨を少なくとも含む運用ポリシ−のうち、少なくとも１つ以上の要素に基づいて、当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する処理を実行させることを特徴とする。
また、本発明による通信情報転送プログラムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、および他の中継装置に転送する旨が決定されると、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するとともに、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、他の中継装置に転送する処理を実行させるよう構成されていてもよい。
また、本発明による通信情報転送プログラムは、ローカルネットワーク上のデバイスであるローカル・デバイスと、外部ネットワーク上のサーバである外部サーバとの通信を実現させるための通信情報転送プログラムであって、ローカルネットワーク上の装置と通信を行うための通信インタフェースであるデバイス接続インタフェースと、外部ネットワーク上の装置と通信を行うための通信インタフェースである外部接続インタフェースとを備えた中継装置のコンピュータに、配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する処理、他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する処理、および外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、当該他の中継装置に転送する処理を実行させるよう構成されていてもよい。
【発明の効果】
【００３０】
本発明によれば、中継装置によってローカル・デバイスとインターネット等の外部ネットワーク上の外部サーバとの通信を実現するネットワークにおいて、ローカル・デバイスが別のローカルネットワークに移動した場合にも、移動先のローカルネットワークにおいて外部サーバとの通信を行うことができる。
【図面の簡単な説明】
【００３１】
【図１】第１の実施形態におけるネットワークの概観を示す説明図である。
【図２】第１の実施形態のデバイス移動サポート転送装置の構成例を示すブロック図である。
【図３】第１の実施形態のデバイス移動サポート受入装置の構成例を示すブロック図である。
【図４】デバイス移動サポート転送装置の動作の一例を示すフローチャートである。
【図５】デバイス移動サポート受入装置の動作の一例を示すフローチャートである。
【図６】第１の実施形態における装置間の通信の流れを示す説明図である。
【図７】第２の実施形態のデバイス移動サポート装置の構成例を示すブロック図である。
【図８】本発明の概要を示すブロック図である。
【発明を実施するための形態】
【００３２】
以下、本発明の実施形態を図面を参照して説明する。
【００３３】
実施形態１．
図１は、本発明の第１の実施形態におけるネットワークの概観を示す説明図である。図１では、本実施形態におけるネットワーク構成として、センサデバイスやアクチュエータデバイスなどのローカル・デバイス５２（以下、単にデバイス５２という。）の移動元のネットワークであるローカルネットワーク４１と、移動先のネットワークであるローカルネットワーク４２と、外部のネットワークであるインターネット１とが示されている。
【００３４】
ここで、デバイス５２がネットワークを移動する前は、ローカルネットワーク４１に接続されていたとする。すなわち、デバイス５２とデバイス移動サポート受入装置３とはそれぞれローカルネットワーク４１を介して通信可能に接続されていたとする。なお、図１では、デバイス移動サポート受入装置３は、ローカルネットワーク４１内に配備されたローカル・デバイスと外部のサーバとの間の通信を中継するための中継装置として示しているが、デバイス移動サポート受入装置３は、デバイス５２と外部サーバ５１の通信の中継処理を行うことができる装置であれば、このような条件に限定されない。例えば、公共施設にある公のｘＧＷといった中継装置であってもよい。
【００３５】
また、インターネット１には、外部サーバ５１と、デバイス移動サポート受入装置３と、デバイス移動サポート転送装置２と、アドレス管理サーバ５３とがそれぞれ接続されている。なお、デバイス移動サポート転送装置２は、ローカル・デバイスと外部のサーバとの間の通信を中継するための中継装置である。なお、ローカルネットワーク４１、４２は、有線であっても無線であってもよい。また、外部ネットワークもインターネット１に限られず、有線であっても無線であってもよい。
【００３６】
本実施形態では、移動先のローカルネットワーク４２における中継装置である移動サポート転送装置２が、移動してきたデバイス５２と外部サーバ５１との通信の中継処理を行えないまたは行わないと判断した場合に、該デバイス５２と外部サーバ５１の通信の中継処理を行うことができるデバイス移動サポート受入装置３に対して通信を転送し、デバイス移動サポート受入装置３が、そのようなデバイス移動サポート転送装置２からの通信の転送を受けて、移動していったデバイス５２と外部サーバ５１との通信の中継処理（特に、外部サーバ側の中継処理）を代わりに行うことによって、移動先のローカルネットワークにおいてもローカル・デバイスと外部のサーバとの通信を可能にする。
【００３７】
より簡単には、本実施形態は、デバイス移動サポート転送装置２が、移動デバイス５２と外部サーバ５１の通信の中継処理を行わないまたは行えないと判断した場合に、移動デバイス５２と外部サーバ５１の通信の中継処理を行うことができるデバイス移動サポート受入装置３に対して、通信を転送することを特徴とするものである。
【００３８】
デバイス移動サポート転送装置２は、移動してきたデバイス５２からの情報を入手した際、デバイス移動サポート受入装置３に通信を転送するか否かを判断し、転送するとした場合に転送処理を行う。
【００３９】
図２は、デバイス移動サポート転送装置２の構成例を示すブロック図である。なお、図２において矢印線の方向は、本発明における特徴を説明するための各構成要素間の詳細な制御や参照、情報の流れを示している。図２に示すように、本実施形態のデバイス移動サポート転送装置２は、外部サーバアプリ処理部２１と、デバイスアプリ処理部２２と、外部接続インターフェース２３と、デバイス接続インターフェース２４と、通信転送判断部２５と、転送先アドレス解決部２６と、通信転送処理部２７とを備えている。
【００４０】
外部接続インターフェース２３は、当該デバイス移動サポート転送装置２と外部ネットワーク１上の他の装置（本例では、デバイス移動サポート受入装置３、外部サーバ５１、アドレス管理サーバ５３など）との通信インタフェースを提供する。
【００４１】
デバイス接続インターフェース２４は、当該デバイス移動サポート転送装置２が外部ネットワークとの中継処理を行う対象であるローカルネットワーク４２上のローカル・デバイス（本例では、デバイス５２）との通信インタフェースを提供する。
【００４２】
外部サーバアプリ処理部２１は、基本的には、外部サーバ５１からデバイス５２への通信情報およびデバイス５２から外部サーバ５１への通信情報に対して接続先の外部サーバに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、外部サーバアプリ処理部２１は、外部接続インターフェース２３を介して外部サーバ５１からデバイス５２への通信情報を受信した場合には、受信した通信情報を次の処理機能であるデバイスアプリ処理部２２が扱える（処理可能な）形式に変換して、デバイスアプリ処理部２２に渡す。また、外部サーバアプリ処理部２１は、通信転送判断部２５が受け取った外部サーバ５１への通信情報について当該デバイス移動サポート転送装置２が直接外部サーバ５１に送信すると判断した場合には、該通信情報に対してパケットヘッダフォーマットやペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先である外部サーバ５１が処理可能かつ該外部サーバ５１に転送可能な形式に変換し、外部接続インターフェース２３を介して外部サーバ５１に送信する。
【００４３】
なお、本実施形態では、通信を実現するにあたり必要とするあらゆる情報を総称して「通信情報」という表現を用いている。通信情報には、実際にアプリケーションが必要とするデータ（例えば、センサデバイスからのセンサ情報やアクチュエータデバイスへの制御情報）だけでなく、それらデータを通信するためのパケットのヘッダ情報（ＭＡＣアドレス、ネットワークアドレス、固有の識別コード、その他様々な制御情報）や、データ通信を確立するまでに必要とする制御メッセージなどに含まれる情報や、初期化時に取得されるような情報を含んでいてもよい。
【００４４】
デバイスアプリ処理部２２は、基本的には、デバイス５２から外部サーバ５１への通信情報および外部サーバ５１からデバイス５２への通信情報に対して接続先のローカル・デバイスに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、デバイスアプリ処理部２２は、デバイス接続インターフェース２４を介してデバイス５２から外部サーバ５１への通信情報を受信した場合には、受信した通信情報を一旦通信転送判断部２５に渡す。なお、その後通信転送判断部２５により当該デバイス移動サポート転送装置２が直接外部サーバ５１に送信すると決定された場合には、受信した通信情報を次の処理機能である外部サーバアプリ処理部２１が扱える形式に変換して外部サーバアプリ処理部２１に渡す。また、デバイスアプリ処理部２２は、外部サーバアプリ処理部２１または情報転送処理部２７からデバイス５２への通信情報を受け取ると、受け取った通信情報に対して、パケットヘッダフォーマット、ペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先であるデバイス５２が処理可能かつ該デバイス５２に転送可能な形式に変換して、デバイス接続インターフェース２４を介してデバイス５２に送信する。
【００４５】
通信転送判断部２５は、デバイスアプリ処理部２２から外部サーバ５１への通信情報を受け取ると、該通信情報について、デバイス移動サポート受入装置３に転送することで外部サーバ５１に中継してもらうか、または当該デバイス移動サポート転送装置２から直接に外部サーバ５１に送信するかを判断する。なお、デバイス移動サポート受入装置３に転送する場合には、外部サーバ５１に対応した中継処理はデバイス移動サポート受入装置３が行う。
【００４６】
通信転送判断部２５は、当該デバイス移動サポート転送装置２のスペックや運用ポリシーに基づいて、受信した外部サーバ５１への通信情報を、デバイス移動サポート受入装置３によって転送するか直接送信するかを決定する。なお、スペックは、例えば、ＣＰＵ処理能力、メモリ容量、その他デバイス移動サポート転送装置２を構成するチップセットの能力、ローカル・デバイスと外部サーバとの通信処理に関するソフトウェア機能の能力（ソフトウェア名、バージョン）などである。以下に、判断基準の一例を示す。なお、下記の判断基準は、全てを備えてもよいし、一部だけを備えてもよい。また、判断基準は容易に拡張可能である。
【００４７】
・（判断基準１−１）すべての移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置３に転送する。
・（判断基準１−２）特定の移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置３に転送する。
・（判断基準１−３）特定の外部サーバの通信アプリケーションを必要とする移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置３に転送する。
・（判断基準１−４）運用上サポートしていない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、それらの移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置３に転送する。
・（判断基準１−５）スペック上サポートできない外部サーバの通信アプリケーションを必要とする移動デバイスであるため、それらの移動デバイスと外部サーバとの通信をデバイス移動サポート受入装置３に転送する。
・（判断基準１−６）なんらかの障害により外部サーバと通信ができないため、その外部サーバと移動デバイスとの通信をデバイス移動サポート受入装置３に転送する。
【００４８】
通信転送判断部２５は、受信した外部サーバ５１への通信情報をデバイス移動サポート受入装置３に転送すると決定した場合、転送先であるデバイス移動サポート受入装置３のネットワークアドレスを解決するために、受け取った通信情報を転送先アドレス解決部２６に渡し、その後解決されたネットワークアドレスとともに通信転送処理部２７に渡す。一方、当該デバイス移動サポート転送装置２から直接に外部サーバ５１に送信すると決定した場合、受け取った通信情報を外部サーバアプリ処理部２１に渡す。
【００４９】
転送先アドレス解決部２６は、通信転送判断部２５よりデバイス移動サポート受入装置３のネットワークアドレス解決を依頼された場合に、受け取った通信情報に含まれているローカル・デバイス（送信元）のＭＡＣアドレスやデバイス特有の識別コード（アドレス）などに基づいて、転送先であるデバイス移動サポート受入装置３のネットワークアドレスを解決する。具体的には、外部接続インターフェース２３を介して、デバイス移動サポート受入装置３のネットワークアドレスをアドレス管理サーバ５３に問い合わせる。その結果、アドレス管理サーバ５３からの応答を外部接続インターフェース２３を介して受け取り、受け取った応答により解決した転送先デバイス移動サポート受入装置３のネットワークアドレスを通信転送判断部２５に渡す。
【００５０】
通信転送処理部２７は、通信転送判断部２５より受け取った外部サーバ５１への通信情報をデバイス移動サポート受入装置３に転送可能にするための中継処理（パケットヘッダフォーマット、ペイロードフォーマットの変換など）を行う。そして、通信転送処理部２７は、変換した通信情報を、外部接続インターフェース２３を介してデバイス移動サポート受入装置３に転送する。また、通信転送処理部２７は、外部接続インターフェース２３を介してデバイス移動サポート受入装置３から転送されてきた通信情報（外部サーバ５１から送信され、デバイス移動サポート受入装置３が転送したデバイス５２への通信情報）を外部サーバアプリ処理部２１に代わって受信し、受信した通信情報を次の処理機能であるデバイスアプリ処理部２２に渡す。このとき、通信転送処理部２７は、転送元であるデバイス移動サポート受入装置３に対応したアプリケーションレベルでの中継処理を行ってもよい。
【００５１】
また、デバイス移動サポート受入装置３は、デバイス移動サポート転送装置２から通信情報を受信した際、受け入れ可能か否かを判断し受け入れると判断した場合に、外部サーバへの通信情報の中継処理を行う。
【００５２】
図３は、デバイス移動サポート受入装置３の構成例を示すブロック図である。なお、図３において矢印線の方向は、本発明における特徴を説明するための各構成要素間の詳細な制御や参照、情報の流れを示している。図３に示すように、本実施形態のデバイス移動サポート受入装置３は、外部サーバアプリ処理部３１と、通信転送処理部３２と、転送受入判断部３３と、外部接続インターフェース３４とを備えている。
【００５３】
外部接続インターフェース３４は、当該デバイス移動サポート受入装置３と外部ネットワーク１上の他の装置（本例では、デバイス移動サポート転送装置２、外部サーバ５１、アドレス管理サーバ５３など）との通信インタフェースを提供する。
【００５４】
外部サーバアプリ処理部３１は、基本的には、外部サーバ５１からデバイス５２への通信情報およびデバイス５２から外部サーバ５１への通信情報に対して接続先の外部サーバに対応したアプリケーションレベルでの中継処理を行う。本実施形態では、外部サーバアプリ処理部３１は、通信転送処理部３２から通信情報の外部サーバ５１への送信を指示された場合に、その通信情報（デバイス移動サポート転送装置２によって転送されたローカルネットワーク４２配下のデバイス５２から外部サーバ５１への通信情報）を最終宛先である外部サーバ５１が処理可能かつ該外部サーバ５１に転送可能な形式に変換する中継処理を行い、外部接続インターフェース２３を介して外部サーバ５１に送信する。
【００５５】
また、外部サーバアプリ処理部３１は、外部接続インターフェース２３を介して外部サーバ５１からデバイス５２への通信情報を受信した場合には、受信した通信情報に対して次の処理機能（ここでは、転送先であるデバイス移動サポート転送装置２の通信転送処理部２７やデバイスアプリ処理部２２）が扱える形式に変換する中継処理を行い、中継処理後の通信情報を該デバイス移動サポート転送装置２に転送するために通信転送処理部３２に渡す。
【００５６】
通信転送処理部３２は、外部接続インターフェース３４を介してデバイス移動サポート転送装置２によって転送された通信情報（配下のローカル・ネットワークから移動していったローカル・デバイスより送信され、デバイス移動サポート転送装置２によって転送された外部サーバ５１への通信情報）を受信した場合、受信した通信情報を転送受入判断部３３に渡して、転送受け入れ可能か否かを転送受入判断部３３に問い合わせる。また、通信転送処理部３２は、転送受入判断部３３より受け入れ許可の旨の応答を受け取った場合、受信した通信情報を外部サーバアプリ処理部３１に渡す。その際、その通信情報の外部サーバへの送信を指示する。
【００５７】
転送受入判断部３３は、通信転送処理部３２から受け取った通信情報を元に、転送されてきた通信情報を受け入れるか否かを判断する。判断基準としては、本デバイス移動サポート受入装置３のスペックや運用ポリシーに従い、例えば下記のようなものが考えられる。下記の判断基準は、全てを備えてもよいし、一部だけを備えてもよい。また、判断基準は容易に拡張可能である。
【００５８】
・（判断基準２−１）すべての転送されてきた通信情報を受け入れるまたは拒否する。
・（判断基準２−２）任意に指定した特定の移動デバイスからの通信情報であれば受け入れるまたは拒否する。
・（判断基準２−３）任意に指定した特定の外部サーバの通信アプリケーション向けの通信情報であれば受け入れるまたは拒否する。
・（判断基準２−４）スペック上サポートできない外部サーバの通信アプリケーション向けの通信情報であれば拒否する。
・（判断基準２−５）障害の理由により転送されてきた通信情報を受け入れる。
【００５９】
これらの判断基準において、特定デバイスの任意の指定方法は、アドレス単位やデバイス固有の識別コード単位の指定、サブネット単位の指定、本デバイス移動サポート受入装置３が本来サポートする移動デバイス単位の指定、協力関係にあるデバイス移動サポート転送装置２が本来サポートする移動デバイス単位の指定などがあり、柔軟に拡張できる。
【００６０】
次に、本実施形態の動作について説明する。まず、デバイス移動サポート転送装置２の動作について説明する。図４は、デバイス移動サポート転送装置２の動作の一例を示すフローチャートである。図４に示す例では、デバイス移動サポート転送装置２は、デバイス５２から通信情報を受信した場合、送信元であるデバイス５２に対応したアプリケーション処理を行うためにステップＳ１０１に進む（ステップＳ１００のＹｅｓ）。また、受信していない場合、外部サーバからの受信を判断するためにステップＳ１０７に進む（ステップＳ１００のＮｏ）。
【００６１】
ステップＳ１０１では、デバイスアプリ処理部２２が、受信した通信情報に対して、送信元であるデバイス５２に対応したアプリケーション処理（中継処理）を行う。デバイスアプリ処理部２２は、ここでの中継処理として、例えば、デバイス５２より受信したバイナリデータ（バイナリ、テキストいずれもありうる）を次の処理機能となる外部サーバアプリ処理部（ここでは、当該装置の外部サーバアプリ処理部２１または転送先のデバイス移動サポート受入装置３の外部サーバアプリ処理部３１）が理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、デバイス５２より受信したデバイス固有のデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、次の処理機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。
【００６２】
デバイス５２に対応したアプリケーション処理が完了した通信情報を受け取った通信転送判断部２５は、受け取った通信情報をデバイス移動サポート受入装置３に転送するか、または直接外部サーバ５１に送信するかを判断する（ステップＳ１０２）。
【００６３】
デバイス移動サポート受入装置３に転送する場合には（ステップＳ１０２のＹｅｓ）、デバイス移動サポート受入装置３への転送処理を行うためにステップＳ１０３に進む。一方、本デバイス移動サポート転送装置２から直接外部サーバに通信情報を送信する場合には（ステップＳ１０２のＮｏ）、本装置における外部サーバアプリ処理部２１による、送信先である外部サーバに対応した中継処理を行うためにステップＳ１０５に進む。
【００６４】
ステップＳ１０３では、転送先アドレス解決部２６が、転送する通信情報を元に、転送先装置であるデバイス移動サポート受入装置３のネットワークアドレスをアドレス管理サーバへ問い合わせ、転送先装置のアドレス解決を行う。
【００６５】
なお、転送先となるデバイス移動サポート受入装置３の情報は、例えば、移動してきた移動デバイスより転送先のデバイス移動サポート受入装置３の宛先アドレス（ＩＰアドレス等）を入手してもよい。他の例としては、デバイス移動サポート転送装置２、デバイス移動サポート受入装置３らのＩＰアドレス情報を管理するアドレス管理サーバを設置し、移動デバイスの固有識別情報（例えば、ＭＡＣアドレス）と移動デバイスの必要とする転送処理機能を備えたデバイス移動サポート受入装置３のＩＰアドレスを紐付けたデータベースの管理をし、デバイス移動サポート転送装置２が、移動してきた移動デバイスの固有識別情報を用いてアドレス管理サーバへ問い合わせをすることでデバイス移動サポート受入装置３の宛先アドレスを入手してもよい。なお、ＩＰアドレスの管理と、移動デバイスと転送先装置の情報との紐付けとを、別々のデータベースで行うことも可能である。また、移動デバイスと転送先装置の情報とを紐付ける代わりに、送信先である外部サーバまたはそのアプリケーションと転送先装置の情報とを紐付けて管理しておいてもよい。
【００６６】
デバイス移動サポート受入装置３のアドレスが解決すると、通信転送処理部２７は、転送用に中継処理された通信情報を外部接続インタフェース２３を介してデバイス移動サポート受入装置３に転送する（ステップＳ１０４）。
【００６７】
一方、ステップＳ１０５では、デバイスアプリ処理部２２によるアプリケーション処理が完了した通信情報を受け取った外部サーバアプリ処理部２１が、送信先である外部サーバ５１に対応したアプリケーション処理（中継処理）を行う。外部サーバアプリ処理部２１は、ここでの中継処理として、例えば、デバイスアプリ処理部２２により中継処理されたバイナリデータ（バイナリ、テキストいずれもありうる）を次の処理機能となる外部サーバ５１のアプリケーションが理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、デバイスアプリ処理部２２により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、外部の特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、外部サーバが扱うアプリケーションプロトコルや通信プロトコル（独自なもの、標準化されたものいずれもありうる）に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報を外部サーバ５１に外部接続インタフェース２３を介して送信する（ステップＳ１０６）。
【００６８】
また、デバイス移動サポート転送装置２では、外部サーバ５１から通信情報を受信した場合（ステップＳ１０７のＹｅｓ）、送信元である外部サーバ５１に対応したアプリケーション処理を行うためにステップＳ１０８に進む。また、受信していない場合（ステップＳ１０７のＮｏ）、デバイス移動サポート受入装置３からの受信を判断するためにステップＳ１１１に進む。
【００６９】
ステップＳ１０８では、外部サーバアプリ処理部２１が、外部サーバ５１より受信した通信情報に対して、送信元である外部サーバ５１に対応したアプリケーション処理（中継処理）を行う。外部サーバアプリ処理部２１は、ここでの中継処理として、例えば、外部サーバ５１より受信したバイナリデータ（バイナリ、テキストいずれもありうる）を次の処理機能となるデバイスアプリ処理部２２が理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、外部サーバ５１より受信した外部サーバのデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス移動サポート転送装置２内の他の処理機能（デバイスアプリ処理部２２など）が理解可能なデータフォーマットに変換する処理を行ってもよい。
【００７０】
外部サーバアプリ処理部２１によるアプリケーション処理が完了した通信情報を受け取ったデバイスアプリ処理部２２は、送信先であるデバイス５２に対応したアプリケーション処理（中継処理）を行う（ステップＳ１０９）。デバイスアプリ処理部２２は、ここでの中継処理として、例えば、外部サーバアプリ処理部２１により中継処理されたバイナリデータ（バイナリ、テキストいずれもありうる）を、次の処理機能となるデバイス５２のアプリケーションが理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、外部サーバアプリ処理部２１により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、デバイス５２が扱うアプリケーションプロトコルや通信プロトコル（独自なもの、標準化されたものいずれもありうる）に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報をデバイス接続インタフェース２４を介してデバイス５２に送信する（ステップＳ１１０）。
【００７１】
また、デバイス移動サポート転送装置２では、デバイス移動サポート受入装置３から通信情報を受信した場合（ステップＳ１１１のＹｅｓ）、送信先であるデバイス５２に対応したアプリケーション処理を行うためにステップＳ１１２に進む。なお、本実施形態では、デバイス移動サポート受入装置３から転送されてきた通信情報には、既にデバイス移動サポート受入装置３において送信元である外部サーバ５１に対応したアプリケーション処理（転送処理）が行われていることを前提としている。
【００７２】
ステップＳ１１２では、デバイスアプリ処理部２２が、送信先であるデバイス５２に対応したアプリケーション処理（中継処理）を行う。ここでの中継処理は、基本的には、ステップＳ１０９で行う中継処理と同様である。すなわち、デバイスアプリ処理部２２は、ここでの中継処理として、例えば、デバイス移動サポート受入装置３の外部サーバアプリ処理部３１により中継処理されたバイナリデータ（バイナリ、テキストいずれもありうる）を、次の処理機能となるデバイス５２のアプリケーションが理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、外部サーバアプリ処理部２１により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、デバイス５２が扱うアプリケーションプロトコルや通信プロトコル（独自なもの、標準化されたものいずれもありうる）に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報をデバイス接続インタフェース２４を介してデバイス５２に送信する（ステップＳ１１３）。
【００７３】
なお、装置内で完結する外部サーバアプリ処理部２１からデバイスアプリ処理部２２への中継処理と、装置をまたぐデバイス移動サポート受入装置３の外部サーバアプリ処理部３１からデバイスアプリ処理部２２への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部３２と通信転送処理部２７とによって吸収させることも可能である。
【００７４】
最後に、配下のデバイス５２、外部サーバ５１およびデバイス移動サポート受入装置３のいずれからも通信情報を受信していない場合には、次の受信待ちを行うために処理を終了する（ステップＳ１１１のＮｏ）。このように、デバイス移動サポート転送装置２では、デバイス移動サポート転送装置２では、前の処理機能である各送信元／転送元と次の処理機能である各送信先／転送先に応じた中継処理を行うことによって必要な情報を最終宛先である外部サーバ５１およびデバイス５２に届ける。
【００７５】
次に、デバイス移動サポート受入装置３の動作について説明する。図５は、デバイス移動サポート受入装置３の動作の一例を示すフローチャートである。図５に示す例では、デバイス移動サポート受入装置３は、デバイス移動サポート転送装置から通信情報を受信した場合（ステップＳ２００のＹｅｓ）、転送されてきた通信情報を受け入れるか否かを判断するためにステップＳ２０１に進む。また、受信していない場合には（ステップＳ２００のＮｏ）、外部サーバからの受信を判断するためにステップＳ２０４に進む。
【００７６】
ステップＳ２０１では、転送受入判断部３３が、転送されてきた通信情報を受け入れるか否かを判断する。受け入れると判断した場合には（ステップＳ２０１のＹｅｓ）、外部サーバ５１に対応したアプリケーション処理を行うためにステップＳ２０２に進む。なお、本実施形態では、デバイス移動サポート転送装置２から転送されてきた通信情報には、既にデバイス移動サポート転送装置２において送信元であるデバイス５２に対応したアプリケーション処理が行われていることを前提としている。一方、拒否すると判断した場合には（ステップＳ２０１のＮｏ）、そのまま処理を終了する。
【００７７】
ステップＳ２０２では、外部サーバアプリ処理部３１が、送信先である外部サーバ５１に対応したアプリケーション処理（中継処理）を行う。ここでの中継処理は、基本的には、図５のステップＳ１０５で行う中継処理と同様である。すなわち、外部サーバアプリ処理部３１は、ここでの中継処理として、例えば、デバイス移動サポート転送装置２のデバイスアプリ処理部２２により中継処理されたバイナリデータ（バイナリ、テキストいずれもありうる）を次の処理機能となる外部サーバ５１のアプリケーションが理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、デバイスアプリ処理部２２により中継処理されたデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、外部の特有のアプリケーション機能が理解可能なデータフォーマットに変換する処理を行うことも考えられる。ここでは、外部サーバが扱うアプリケーションプロトコルや通信プロトコル（独自なもの、標準化されたものいずれもありうる）に従ったデータフォーマットへのデータ変換を含む。そして、中継処理した通信情報を外部接続インタフェース３３を介して外部サーバ５１に送信する（ステップＳ２０３）。
【００７８】
なお、装置内で完結するデバイスアプリ処理部２２から外部サーバアプリ処理部２１への中継処理と、装置をまたぐデバイス移動サポート転送装置２のデバイスアプリ処理部２２からデバイス移動サポート受入装置３の外部サーバアプリ処理部３１への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部３２と通信転送処理部２７とによって吸収させることも可能である。
【００７９】
また、デバイス移動サポート受入装置３は、外部サーバ５１から通信情報を受信した場合（ステップＳ２０４のＹｅｓ）、送信元である外部サーバ５１に対応したアプリケーション処理を行うためにステップＳ２０５に進む。なお、デバイス移動サポート転送装置２および外部サーバ５１のいずれからも通信情報を受信していない場合には、次の受信待ちを行うために処理を終了する（ステップＳ２０４のＮｏ）。
【００８０】
ステップＳ２０５では、外部サーバアプリ処理部３１が、外部サーバ５１から受信した通信情報に対して、送信元である外部サーバ５１に対応したアプリケーション処理（中継処理）を行う。ここでの中継処理は、基本的には、ステップＳ１０８で行う中継処理と同様である。すなわち、外部サーバアプリ処理部３１は、ここでの中継処理として、例えば、外部サーバ５１より受信したバイナリデータ（バイナリ、テキストいずれもありうる）を次の処理機能となるデバイス移動サポート転送装置２のデバイスアプリ処理部２２が理解可能なテキストデータ（バイナリ、テキストいずれもありうる）に変換する処理を行う。また、例えば、外部サーバ５１より受信した外部サーバのデータに含まれるアドレス情報、各種制御情報、データ情報などを、情報の配列を整理しなおしたり、付加情報を加えることによって、デバイス移動サポート転送装置２内の処理機能（通信転送処理部２７およびデバイスアプリ処理部２２など）が理解可能なデータフォーマットに変換する処理を行ってもよい。そして、中継処理した通信情報を外部接続インタフェース３４を介してデバイス移動サポート転送装置２に転送する（ステップＳ２０６）。
【００８１】
なお、装置内で完結する外部サーバアプリ処理部２１からデバイスアプリ処理部２２への中継処理と、装置をまたぐデバイス移動サポート受入装置３の外部サーバアプリ処理部３１からデバイス移動サポート転送装置２のデバイスアプリ処理部２２への中継処理とでは、必要とするデータが異なることも考えられる。このような場合には、経路別に異なるデータフォーマットを規定してそれに応じた変換処理を行わせてもよい。なお、異なるデータフォーマットを規定した上でこの差を通信転送処理部３２と通信転送処理部２７とによって吸収させることも可能である。
【００８２】
なお、本実施形態では、通信情報を受け取った処理機能が次の処理機能が扱える形に通信情報を変換する処理の総称を「中継処理」と呼んでいる。例えば、外部サーバアプリ処理部２１におけるアプリケーション処理や、デバイスアプリ処理部１２におけるパケット変換処理は、具体的な処理内容は異なるが、いずれも次の処理機能が扱える形に変換する処理であるため、いずれも中継処理となる。なお、次の処理機能は、物理的に他の装置であってもかまわない。例えば、デバイス移動サポート転送装置２またはデバイス移動サポート４における処理を行えた後、次の処理をデバイス移動サポート受入装置３またはデバイス移動サポート４に任せるといったことが可能である。
【００８３】
次に、図６を用いて本実施形態における装置間の通信の流れを説明する。図６は、本実施形態のネットワークの概観と通信の流れを示す説明図である。図６では、図１に示した場合と同様、デバイス５２が、本来自身のサポートを行ってくれるデバイス移動サポート受入装置３（例えば、ＨＧＷのようなもの）が管理するローカルエリアから、デバイス移動サポート転送装置２が管理するローカルエリアへ移動した場合を示している。符合６１〜６８までの矢印線は、通信情報の流れおよびアドレス情報の問い合わせと応答を示している。図６に示す一連の通信情報の送受信においては、デバイス移動サポート転送装置２とデバイス移動サポート受入装置３とが通信情報の中継処理を行っている。
【００８４】
すなわち、ローカル・ネットワーク４２に移動したデバイス５２が、外部サーバ５１に届けたい通信情報を、現在の接続先であるデバイス移動サポート転送装置２に送信すると（ステップＳ６１）、デバイス移動サポート転送装置２では、受け取った通信情報を直接外部サーバ５１に送信するか、デバイス移動サポート受入装置３を介して転送するかを判断する。本例では、上記で示した判断基準１−１〜１−６のような判断基準に従って、デバイス移動サポート受入装置３に転送することを決定したとする。
【００８５】
すると、デバイス移動サポート転送装置２は、アドレス管理サーバ５３にデバイス移動サポート受入装置３のネットワークアドレスの問い合わせを行い（ステップＳ６２）、アドレス管理サーバ５３からの応答を受け取ると（ステップＳ６３）、送信元であるデバイス５２に対応したアプリケーション処理を行った上で、デバイス移動サポート受入装置３にその通信情報を転送する（ステップＳ６４）。その際、デバイス移動サポート転送装置２は、受信した通信情報に対して、送信元であるデバイス５２に対応したアプリケーション処理を行った上で、転送先であるデバイス移動サポート受入装置３に送信する。
【００８６】
デバイス移動サポート転送装置２から通信情報を受信したデバイス移動サポート受入装置３では、受信した通信情報の転送受け入れを行うか否かを判断し、転送受け入れを行う場合には、通信情報を外部サーバ５１に送信する（ステップＳ６５）。その際、デバイス移動サポート受入装置３は、受信した通信情報に対して、送信先である外部サーバ５１に対応したアプリケーション処理を行い、外部サーバ５１への中継処理を完了させた上で、デバイス移動サポート受入装置３に転送する。
【００８７】
外部サーバ５１は、受け取った通信情報を処理する。その際、必要に応じてデバイス５２（同じローカルエリア内の他のローカル・デバイスを含む。）への制御情報などを含む通信情報を、デバイス移動サポート受入装置３に送信する（ステップＳ６６）。
【００８８】
外部サーバ５１から通信情報を受け取ったデバイス移動サポート受入装置３は、送信先であるデバイス５２の情報からデバイス移動をサポートしているローカル・デバイス宛ての通信情報であることを認識し、そのローカル・デバイスが接続しているローカル・ネットワークの現在の接続先であるデバイス移動サポート転送装置２に転送する（ステップＳ６７）。その際、デバイス移動サポート受入装置３は、受信した通信情報に対して、送信元である外部サーバ５１に対応したアプリケーション処理を行った上で、転送先であるデバイス移動サポート転送装置２に送信する。
【００８９】
デバイス移動サポート受入装置３から通信情報を受信したデバイス移動サポート転送装置２では、受信した通信情報を、配下のデバイス５２に送信する（ステップＳ６８）。その際、デバイス移動サポート転送装置２は、受信した通信情報に対して、送信先であるデバイス５２に対応したアプリケーション処理を行い、デバイス５２への中継処理を完了させた上で、デバイス５２に送信する。
【００９０】
以上のように、デバイス移動サポート転送装置２が、配下のローカル・デバイスであるデバイス５２からの通信情報をデバイス移動サポート受入装置３に転送し、デバイス移動サポート受入装置３が外部サーバ５１に送信することで、例え移動先のローカルネットワークでの中継処理を行うデバイス移動サポート転送装置２が運用ポリシー上の問題やスペック上の問題などにより移動してきたデバイス５２と外部サーバ５１との通信の中継処理を行えないまたは行わない場合であっても、当該デバイス５２からの通信情報を、デバイス移動サポート転送装置２、デバイス移動サポート受入装置３内で適切に中継処理し、最終宛先である外部サーバ５１に送信することができる。
【００９１】
特に、移動したローカル・デバイスが必要とする外部サーバの扱うアプリケーション通信をサポートする装置を通信の中継処理先とすることができるので、ローカル・デバイスが移動した場合にも、これらローカル・デバイスと外部サーバとの通信が可能となる。
【００９２】
また、デバイス移動サポート受入装置３が、外部サーバからの通信情報をデバイス移動サポート転送装置２に転送し、デバイス移動サポート転送装置２が配下のローカル・デバイスであるデバイス５２に送信することで、同様に、当該外部サーバ５１からの通信情報を、デバイス移動サポート受入装置３、デバイス移動サポート転送装置２内で適切に中継処理して、最終宛先であるデバイス５２に送信することができる。すなわち、ローカル・デバイスが移動した際にも、移動先の中継装置（本例では、デバイス移動サポート転送装置２）が、そのローカルデバイスから外部サーバ宛ての通信情報を、当該通信情報を転送可能な他の中継装置（本例では、デバイス移動サポート受入装置３）に転送することで、移動したローカル・デバイスと外部サーバとの通信ができなくなる問題を解決することが可能となる。
【００９３】
実施形態２．
次に、本発明の第２の実施形態について説明する。第１の実施形態では、デバイス移動サポート転送装置２とデバイス移動サポート受入装置３とをその機能により異なる構成の装置として示したが、デバイス移動サポート転送装置２とデバイス移動サポート受入装置３とは、その両方の機能を備える中継装置（以下、デバイス移動サポート装置という。）に置き換わっても同様の動作が可能となる。
【００９４】
図７は、本実施形態のデバイス移動サポート装置の構成例を示すブロック図である。図７に示すデバイス移動サポート装置４は、外部サーバアプリ処理部４１と、デバイスアプリ処理部４２と、外部接続インタフェース４３と、デバイス接続インタフェース４４と、通信転送判断部４５と、転送先アドレス解決部４６と、通信転送処理部４７と、転送受入判断部４８とを備える。
【００９５】
デバイス移動サポート装置４の一実装例は、ｘＧＷである。よって、ローカル・デバイスが移動した際にも、移動先のデバイス移動サポート装置４であるｘＧＷが、通信情報を転送可能な他のｘＧＷ（例えば、移動元のデバイス移動サポート装置４）へローカル・デバイスからの通信情報を転送することで、移動したローカル・デバイスと外部サーバとの通信ができなくなる問題を解決することが可能となる。
【００９６】
デバイス移動サポート装置４は、デバイス移動サポート転送装置２およびデバイス移動サポート受入装置３のいずれの動作も行う。すなわち、デバイス移動サポート装置４を複数備えることで、デバイス移動サポート装置４は、お互いに移動デバイスの通信情報の転送も受け入れも行うことができる。
【００９７】
外部サーバアプリ処理部４１は、デバイス移動サポート転送装置２の外部サーバアプリ処理部２１の機能と、デバイス移動サポート受入装置３の外部サーバアプリ処理部３１の機能とを合わせた形をとる。すなわち、外部サーバアプリ処理部４１は、外部接続インターフェース４３を介して外部サーバ５１からデバイス５２への通信情報を受信した場合には、受信した通信情報を次の処理機能であるデバイスアプリ処理部４２が扱える（処理可能な）形式に変換して、デバイスアプリ処理部４２に渡す。また、外部サーバアプリ処理部４１は、通信転送判断部４５が受け取ったデバイス５２から外部サーバ５１への通信情報について当該デバイス移動サポート装置４が直接外部サーバ５１に送信すると判断した場合には、該通信情報に対してパケットヘッダフォーマットやペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先である外部サーバ５１が処理可能かつ該外部サーバ５１に転送可能な形式に変換し、外部接続インターフェース４３を介して外部サーバ５１に送信する。
【００９８】
また、外部サーバアプリ処理部４１は、通信転送処理部４２から他のデバイス移動サポート装置４より転送されてきた通信情報の外部サーバ５１への送信を指示された場合に、その通信情報を最終宛先である外部サーバ５１が処理可能かつ該外部サーバ５１に転送可能な形式に変換する中継処理を行い、外部接続インターフェース４３を介して外部サーバ５１に送信する。また、外部サーバアプリ処理部４１は、外部接続インターフェース４３を介して外部サーバ５１から他のバイス移動サポート装置４配下のデバイス５２への通信情報を受信した場合には、受信した通信情報に対して次の処理機能（すなわち、転送先である他のデバイス移動サポート装置４の通信転送処理部４７やデバイスアプリ処理部４２）が扱える形式に変換する中継処理を行い、中継処理後の通信情報を該デバイス移動サポート装置４に転送するために本装置の通信転送処理部４２に渡す。
【００９９】
デバイスアプリ処理部４２は、デバイス移動サポート転送装置２のデバイスアプリ処理部２２と同様である。すなわち、デバイス接続インターフェース４４を介してデバイス５２から外部サーバ５１への通信情報を受信した場合には、受信した通信情報を一旦通信転送判断部４５に渡す。なお、その後通信転送判断部４５により当該デバイス移動サポート装置４が直接外部サーバ５１に送信すると決定された場合には、受信した通信情報を次の処理機能である当該装置の外部サーバアプリ処理部４１が扱える形式に変換して該外部サーバアプリ処理部４１に渡す。また、デバイスアプリ処理部４２は、外部サーバアプリ処理部４１または情報転送処理部４７からデバイス５２への通信情報を受け取ると、受け取った通信情報に対して、パケットヘッダフォーマット、ペイロードフォーマットの変換などの中継処理を行って当該通信情報を最終宛先であるデバイス５２が処理可能かつ該デバイス５２に転送可能な形式に変換して、デバイス接続インターフェース４４を介してデバイス５２に送信する。
【０１００】
外部接続インターフェース４３は、デバイス移動サポート転送装置２の外部接続インターフェース２３の機能と、デバイス移動サポート受入装置３の外部接続インターフェース３４の機能とを合わせた形をとる。すなわち、外部接続インターフェース４３は、当該デバイス移動サポート装置４と外部ネットワーク上の他の装置（本例では、他のデバイス移動サポート装置４、外部サーバ５１、アドレス管理サーバ５３など）との通信インタフェースを提供する。
【０１０１】
デバイス接続インターフェース４４は、デバイス移動サポート転送装置２のデバイス接続インターフェース２４と同様である。すなわち、当該デバイス移動サポート装置４が外部ネットワークとの中継処理を行う対象であるローカルネットワーク上のローカル・デバイス（本例では、デバイス５２）との通信インタフェースを提供する。
【０１０２】
通信転送判断部４５は、デバイス移動サポート転送装置２の通信転送判断部２５と同様である。すなわち、デバイスアプリ処理部４２から外部サーバ５１への通信情報を受け取ると、該通信情報について、他のデバイス移動サポート装置４に転送することで外部サーバ５１に中継してもらうか、または当該デバイス移動サポート装置４から直接に外部サーバ５１に送信するかを判断する。
【０１０３】
転送先アドレス解決部４６は、デバイス移動サポート転送装置２の転送先アドレス解決部２６と同様である。すなわち、通信転送判断部４５より転送先となる他のデバイス移動サポート装置４のネットワークアドレス解決を依頼された場合に、受け取った通信情報に含まれているローカル・デバイス（送信元）のＭＡＣアドレスやデバイス特有の識別コード（アドレス）などに基づいて、転送装置のネットワークアドレスを解決する。
【０１０４】
通信転送処理部４７は、デバイス移動サポート転送装置２の通信転送処理部２７の機能と、デバイス移動サポート受入装置３の通信転送処理部３２の機能を合わせた形をとる。すなわち、通信転送判断部４５より受け取った外部サーバ５１への通信情報を転送先である他のデバイス移動サポート装置４に転送可能にするための中継処理（パケットヘッダフォーマット、ペイロードフォーマットの変換など）を行う。そして、外部接続インターフェース４３を介して転送先である他のデバイス移動サポート装置４に転送する。また、通信転送処理部４７は、外部接続インターフェース４３を介して他のデバイス移動サポート装置４から転送されてきた通信情報（外部サーバ５１から送信され、他のデバイス移動サポート装置４によって転送されたデバイス５２への通信情報）を外部サーバアプリ処理部４１に代わって受信し、受信した通信情報を次の処理機能であるデバイスアプリ処理部４２に渡す。このとき、通信転送処理部４７は、受信した通信情報をデバイスアプリ処理部４２が処理できる形に変換する等のアプリケーションレベルでの中継処理を行ってもよい。
【０１０５】
また、通信転送処理部４７は、外部接続インターフェース４４を介して他のデバイス移動サポート装置４により転送された通信情報（他のデバイス移動サポート装置４配下のローカル・ネットワークから外部サーバ５１への通信情報）を受信した場合には、受信した通信情報を一旦転送受入判断部４８に渡して、転送受け入れ可能か否かを転送受入判断部４８に問い合わせる。また、通信転送処理部４７は、転送受入判断部４８より受け入れ許可の旨の応答を受け取った場合、受信した通信情報を外部サーバアプリ処理部４１に渡す。その際、その通信情報の外部サーバへの送信を指示する。このとき、通信転送処理部４７は、受信した通信情報を外部サーバアプリ処理部４１が処理できる形に変換する等のアプリケーションレベルでの中継処理を行ってもよい。
【０１０６】
転送受入判断部４８は、デバイス移動サポート受入装置３の転送受入判断部３３と同様である。すなわち、通信転送処理部４７から受け取った通信情報を元に、本デバイス移動サポート受入装置３のスペックや運用ポリシーに従い、転送されてきた通信情報を受け入れるか否かを判断する。
【０１０７】
なお、本実施形態の動作は、第１の実施形態のデバイス移動サポート転送装置２と、デバイス移動サポート受入装置３とを、それぞれ第１のデバイス移動サポート装置４と、第２のデバイス移動サポート受入装置４とに置き換えたものと同様である。
【０１０８】
また、上記各実施形態では、転送制御を行う対象を移動デバイスとする場合の例を説明したが、転送制御を行う対象は、移動デバイスに限らない。例えば、中継装置が稼働し始めた当初よりローカル・ネットワーク配下にいたデバイスであっても、当該中継装置が対応していない外部サーバを送信先としたり、配下のデバイスのバージョンが上がったことにより送信元のデバイスが当該中継装置が対応していないソフトウェアによって駆動するデバイスとなった場合などには、そのようなデバイスと外部サーバとの通信を転送制御の対象にすることも可能である。
【０１０９】
次に、本発明の概要について説明する。図８は、本発明の概要を示すブロック図である。図８に示す中継装置１００は、ローカルネットワーク上のデバイスであるローカル・デバイス２００と、外部ネットワーク上のサーバである外部サーバ３００との通信を実現させるための中継装置であって、デバイス接続インタフェース１０１と、外部接続インタフェースと１０２と、転送判断手段１０３と、通信情報転送手段１０４とを備えている。
【０１１０】
デバイス接続インタフェース１０１（例えば、デバイス接続インタフェース２４、４４）は、ローカルネットワーク上の装置（例えば、ローカル・デバイス２００）と通信を行うための通信インタフェースである。
【０１１１】
外部接続インタフェース１０２（例えば、外部接続インタフェース２３、３４、４３）は、外部ネットワーク上の装置（例えば、外部サーバ２００、他の中継装置４００）と通信を行うための通信インタフェースである。
【０１１２】
転送判断手段１０３（例えば、通信転送判断部２５、４５）は、配下のローカル・デバイス（例えば、ローカル・デバイス２００）から外部サーバ（例えば、外部サーバ３００）宛ての情報を受信した場合に、受信した情報を当該情報の中継処理が可能な外部ネットワーク上の他の中継装置に転送するか否かを判断する。
【０１１３】
通信情報転送手段１０４（例えば、通信転送処理部２７、３２、４７）は、転送判断手段１０３により他の中継装置に転送する旨が決定されると、受信した情報に対して転送先の他の中継装置（例えば、中継装置４００）が処理可能な形に変換する中継処理を行った上で、該他の中継装置に転送する。
【０１１４】
転送判断手段１０４は、例えば、当該中継装置１００の仕様または運用ポリシーに基づいて当該中継装置において受信した情報の中継処理が可能か否かを判断することによって、他の中継装置に転送するか否かを判断してもよい。
【０１１５】
また、通信情報転送手段１０４は、例えば、外部サーバから配下のローカル・デバイス宛て以外の情報を受信した場合に、最終宛先のローカル・デバイスが接続している他の中継装置を転送先にして、受信した情報に対して送信元である外部サーバに対応した所定の中継処理であって転送先の他の中継装置が処理可能な形に変換する中継処理を行った上で、該他の中継装置に転送してもよい。
【０１１６】
また、図示省略しているが、中継装置１００は、外部ネットワーク上のアドレスを管理する所定のアドレス管理サーバに、転送先とされた他の装置の外部ネットワーク上のアドレスの問い合わせを行って、転送時の宛先アドレスを解決するアドレス解決手段を備えていてもよい。
【０１１７】
また、中継装置１００は、他の中継装置より転送された情報を受信する転送情報受信手段を備えていてもよい。そのような場合には、さらに転送情報受信手段によって他の中継装置の配下のローカル・デバイスから外部サーバ宛ての情報を受信した場合に、受信した情報に対して最終宛先である外部サーバに対応した所定の中継処理を行った上で、該外部サーバに送信する外部サーバ側中継処理手段を備えていてもよい。
【０１１８】
また、転送情報受信手段が受信した情報を受け入れるか否かを、当該中継装置の仕様または運用ポリシーに基づいて判断する転送受入判断手段を備えていてもよい。
【０１１９】
また、転送情報受信手段によって他の中継装置より転送された外部サーバから当該中継装置の配下のローカル・デバイス宛ての情報を受信した場合に、受信した情報に対して最終宛先であるローカル・デバイスに対応した所定の中継処理を行った上で、該ローカル・デバイスに送信するデバイス側中継処理手段とを備えていてもよい。
【産業上の利用可能性】
【０１２０】
本発明は、センサデバイスやアクチュエータデバイスなどのローカル・デバイスと、該ローカル・デバイスの情報を扱うサーバとの通信を実現するための用途に好適に適用可能である。
【符号の説明】
【０１２１】
１  インターネット（外部ネットワーク）
２  デバイス移動サポート転送装置
３  デバイス移動サポート受入装置
４  デバイス移動サポート装置
５１  外部サーバ
５２  ローカル・デバイス
５３  アドレス管理サーバ
２１、３１、４１  外部サーバアプリ処理部
２２、４２  デバイスアプリ処理部
２３、３４、４３  外部接続インタフェース
２４、４４  デバイス接続インタフェース
２５、４５  通信転送判断部
２６、４６  転送先アドレス解決部
２７、３２、４７  通信転送処理部
３３、４８  転送受入判断部
１００  中継装置
１０１  デバイス接続インタフェース
１０２  外部接続インタフェース
１０３  転送判断手段
１０４  通信情報転送手段
２００  ローカル・デバイス
３００  外部サーバ
４００  他の中継装置
【図１】
0005678630.tif 000002
【図２】
0005678630.tif 000003
【図３】
0005678630.tif 000004
【図４】
0005678630.tif 000005
【図５】
0005678630.tif 000006
【図６】
0005678630.tif 000007
【図７】
0005678630.tif 000008
【図８】
0005678630.tif 000009