(57)【特許請求の範囲】
【請求項１】
移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信し、
前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得し、
前記代表装置へ前記移動端末の位置情報を問い合わせる通信を中継するリレー装置に、前記代表装置から取得された前記移動端末の位置情報を送信し、
前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送する、
処理を中継サーバ装置に実行させることを特徴とする制御プログラム。
【請求項２】
過去に取得した移動端末の位置情報を記憶部に格納し、
前記配信要求が受信された場合に、前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されているか否かを判定することを情報処理装置に実行させ、
前記移動端末の位置情報を取得する処理は、前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されていないと判定された場合に、前記代表装置に問い合わせる処理を中継サーバ装置に実行させることを特徴とする請求項１に記載の制御プログラム。
【請求項３】
移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を受信し、
アプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信する中継サーバ装置から、前記移動端末の位置情報を受信し、
前記代表装置から受信した位置情報と前記中継サーバ装置から受信した位置情報とを比較し、
比較した結果、前記代表装置から受信した位置情報の方が新しい情報である場合に、前記代表装置から受信した位置情報を前記中継サーバ装置に送信し、前記移動端末の位置情報の更新を指示する
処理をリレー装置に実行させることを特徴とする制御プログラム。
【請求項４】
移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信する配信要求受信部と、
前記配信要求受信部によって前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得する位置情報取得部と、
前記代表装置へ前記移動端末の位置情報を問い合わせる通信を中継するリレー装置に、前記位置情報取得部によって代表装置から取得された前記移動端末の位置情報を送信する位置情報送信部と、
前記位置情報送信部によって、前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送する配信要求転送部と
を有することを特徴とする中継サーバ装置。
【請求項５】
移動端末の位置情報を保持する位置管理サーバに接続される代表装置と、前記移動端末と接続される中継サーバ装置と、前記中継サーバ装置と前記代表装置との間に位置するリレー装置とを有するシステムに適した中継制御方法であって、
前記中継サーバ装置が、
前記移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信するステップと、
前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得するステップと、
前記リレー装置に、取得された前記移動端末の位置情報を送信するステップと、
前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送するステップとを含み、
前記リレー装置が、
前記代表装置から前記移動端末の位置情報を受信するステップと、
前記中継サーバ装置から、前記移動端末の位置情報を受信するステップと、
前記代表装置から受信した位置情報と前記中継サーバ装置から受信した位置情報とを比較するステップと、
比較した結果、前記代表装置から受信した位置情報の方が新しい情報である場合に、前記代表装置から受信した位置情報を前記中継サーバ装置に送信し、前記移動端末の位置情報の更新を指示するステップと
を含んだことを特徴とする中継制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラム、中継サーバ装置及び中継制御方法に関する。
【背景技術】
【０００２】
従来、移動端末の利用者が配信サーバに格納されたアプリケーションなどを利用する場合、移動端末は、中継システムを利用して、自装置に一番近い配信サーバへアプリケーション等の配信を要求する。
【０００３】
かかる中継システムは、移動端末と、配信サーバと、位置管理サーバと、中継ノードとがインターネットなどを介して相互に接続される。移動端末は、例えば携帯電話であり、アプリケーションを配信サーバから取得して実行する。配信サーバは、例えばアプリケーションを格納しており、移動端末からの配信要求に応じて、格納しているアプリケーションを移動端末に配信する。位置管理サーバは、例えば基地局を介して端末の位置情報を取得する。中継ノードは、移動端末から受信した配信要求メッセージを受信し、移動端末に近い位置に存在する配信サーバへ配信要求メッセージを転送する。
【０００４】
このようなシステムにおいて、移動端末が配信サーバからアプリケーションを取得する流れを説明する。中継ノードは、移動端末から、移動端末に対して個別に割り当てられたユーザＩＤが格納された配信要求メッセージを受信する。続いて、中継ノードは、受信した配信要求メッセージに格納されたユーザＩＤを位置管理サーバへ送信して移動端末の位置情報を取得し、取得した位置情報に基づいて移動端末に一番近い配信サーバへ配信要求メッセージを転送する。
【０００５】
配信サーバは、中継ノードを介して受信した配信要求メッセージに応答して、移動端末にアプリケーションを配信する。したがって、このような中継システムを利用することによって、移動端末は、自装置に一番近い配信サーバへアプリケーションの配信を要求し、要求したアプリケーションを取得することができる。
【０００６】
ところで、このようにして配信要求メッセージを中継する中継ノードにおいて、複数の中継ノードが同時に位置管理サーバへ移動端末の位置情報の取得を要求した場合、位置管理サーバへの負荷が増大する。この結果、利用者へのアプリケーション配信に時間がかかったり、正しい配信サーバへ配信要求メッセージが転送されなくなる。
【０００７】
かかる場合に生じる位置管理サーバへの負荷の増大に対して、中継ノードは、位置管理サーバとの間に中継制御ノードを設けることで位置管理サーバへの負荷を軽減させてきた。図４５に示す具体例を用いて説明する。
【０００８】
図４５は、中継制御ノードを設けることで位置管理サーバへの負荷を軽減させる中継システムの一例を示す図である。図４５に示すように、中継システムは、移動端末Ａ〜Ｃと中継ノードと中継制御ノードと位置管理サーバとを有する。このうち、移動端末Ａ〜Ｃと位置管理サーバは、上述した移動端末と位置管理サーバと同様の機能を有する。そして、中継制御ノードは、代表ノードとリレーノードとを有し、これらをツリー状に構成する。代表ノードは、位置管理サーバに移動端末の位置情報を問い合わせることができる。リレーノードは、中継ノードから移動端末の位置情報の問い合わせを受付けた場合、代表ノードへ移動端末の位置情報を問い合わせる。
【０００９】
例えば、中継ノードＡが位置管理サーバへ位置情報を問い合わせる場合、リレーノードＡ、リレーノードＢ、代表ノードＡの順に位置情報を問い合わせる。また、中継ノードＢが位置管理サーバへ位置情報を問い合わせる場合、リレーノードＣ、代表ノードＡの順に位置情報を問い合わせる。また、中継ノードＣが位置管理サーバへ位置情報を問い合わせる場合、リレーノードＤ、代表ノードＢの順に位置情報を問い合わせる。すなわち、中継システムは、位置管理サーバへのアクセスを代表ノードＡ及び代表ノードＢに限定することで、位置管理サーバの負荷を軽減することができる。
【００１０】
また、中継システムは、リレーノードに位置情報のキャッシュを持たせ、下流ノードからの問い合わせを受付けた場合、該当する移動端末の情報があれば応答することで、位置管理サーバの負荷を軽減することも行われている。図４６に示す具体例を用いて説明する。
【００１１】
図４６は、リレーノードに位置情報のキャッシュを持たせることで位置管理サーバへの負荷を軽減させる一例を示す図である。図４６に示すように、リレーノードは、キャッシュを有し、位置情報を記憶しておくことができる。例えば、リレーノードＡは、中継ノードＡから移動端末の位置情報の問い合わせを受付けた場合、キャッシュに移動端末の位置情報があれば、キャッシュから位置情報を取得して中継ノードＡへ通知する。また、リレーノードＡは、キャッシュに移動端末の位置情報がなければ、リレーノードＢへ移動端末の位置情報を問い合わせる。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００６−１９６００８号公報
【特許文献２】国際公開第２００２／０３１４４１号
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上述した従来の技術では、アプリケーションの配信を要求する移動端末の正確な位置情報を短時間で取得をすることができないという課題があった。具体的には、中継システムは、代表ノードとリレーノードとをツリー状に構成した場合、ノード数の増加に従って、経由するルートが増えるので、移動端末の位置情報を問い合わせる時間が長くなる。
【００１４】
同様に、中継システムは、リレーノードに端末の位置情報をキャッシュさせた場合、いずれのリレーノードのキャッシュにも端末の位置情報が存在しなければ、位置管理サーバから端末の位置情報を取得しなければならない。この場合、端末の位置情報を取得するまでの待ち時間は、キャッシュを設けなかった場合とかわらない。
【００１５】
また、このような中継システムでは、移動端末の位置情報を取得してから、取得した移動端末の位置情報によって特定された配信サーバへ配信要求メッセージを転送するまでの間に、移動端末が移動する場合がある。この場合、中継システムは、移動した後の移動端末の位置情報によって特定された配信サーバではなく、移動する前の移動端末の位置情報によって特定された配信サーバへ配信要求メッセージを転送する。すなわち、移動前の位置情報に基づいて特定される配信サーバと、移動後の位置情報に基づいて特定される配信サーバとは異なる場合には、転送するべき配信サーバへ配信要求メッセージを転送することができない。この結果、移動端末にアプリケーションが配信されない等の異常状況が発生する。
【００１６】
１つの側面では、本発明は、アプリケーションの配信を要求する移動端末の正確な位置情報を短時間で取得をすることができる制御プログラム、中継サーバ装置及び中継制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１７】
第１の案では、制御プログラムは、移動端末にアプリケーションを提供する配信サーバ装置への配信要求を移動端末から受信する処理を中継サーバ装置に実行させる。制御プログラムは、配信要求を移動端末からした場合に、移動端末の位置情報を保持する位置管理サーバに接続される代表装置から移動端末の位置情報を取得させる処理を中継サーバ装置に実行させる。制御プログラムは、代表装置へ前記移動端末の位置情報を問い合わせる通信を中継するリレー装置に、代表装置から取得された移動端末の位置情報を送信する処理を中継サーバ装置に実行させる。制御プログラムは、移動端末の位置情報をリレー装置から受信した場合には、代表装置から取得した位置情報をリレー装置から受信した位置情報で更新させる処理を中継サーバ装置に実行させる。制御プログラムは、更新した位置情報に基づいて特定される配信サーバ装置に、受信された配信要求を転送する処理を中継サーバ装置に実行させる。
【００１８】
第２の案では、制御プログラムは、移動端末の位置情報を保持する位置管理サーバに接続される代表装置から移動端末の位置情報を受信する処理をリレー装置に実行させる。制御プログラムは、アプリケーションを提供する配信サーバ装置への配信要求を移動端末から受信する中継サーバ装置から、移動端末の位置情報を受信する処理をリレー装置に実行させる。制御プログラムは、代表装置から受信した位置情報と前記中継サーバ装置から受信した位置情報とを比較する処理をリレー装置に実行させる。制御プログラムは、比較した結果、代表装置から受信した位置情報の方が新しい情報であると判定された場合に、代表装置から受信した位置情報を中継サーバ装置に送信し、移動端末の位置情報の更新を指示する処理をリレー装置に実行させる。
【発明の効果】
【００１９】
制御プログラム、中継サーバ装置及び中継制御方法の一つの態様によれば、アプリケーションの配信を要求する移動端末の正確な位置情報を短時間で取得をすることができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、実施例１に係る中継システムの構成を示す図である。
【図２】図２は、実施例１に係る位置管理サーバの構成を示すブロック図である。
【図３】図３は、実施例１に係る中継ノードの構成を示すブロック図である。
【図４】図４は、実施例１に係る位置情報キャッシュテーブルとして格納される情報の一例を示す図である。
【図５】図５は、実施例１に係る上位ノード記憶テーブルとして格納される情報の一例を示す図である。
【図６】図６は、実施例１に係る振り分け先サーバ記憶テーブルとして格納される情報の一例を示す図である。
【図７】図７は、実施例１に係る配信要求メッセージ受信部が携帯端末から受信する配信要求メッセージの一例を示す図である。
【図８】図８は、実施例１に係る代表ノードの構成を示すブロック図である。
【図９】図９は、実施例１に係る問い合わせ元記憶テーブルとして格納される情報の一例を示す図である。
【図１０】図１０は、実施例１に係る位置情報キャッシュテーブルとして格納される情報の一例を示す図である。
【図１１】図１１は、実施例１に係る上位ノード記憶テーブルとして格納される情報の一例を示す図である。
【図１２】図１２は、実施例１に係る中継ノードによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【図１３】図１３は、実施例１に係る代表ノードによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【図１４】図１４は、実施例２に係る中継システムの構成を示す図である。
【図１５】図１５は、実施例２に係る中継ノードの構成を示すブロック図である。
【図１６】図１６は、実施例２に係る代表ノードの構成を示すブロック図である。
【図１７】図１７は、実施例２に係る中継ノードによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【図１８】図１８は、実施例２に係る代表ノードによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【図１９】図１９は、実施例２に係る代表ノードによる位置情報更新要求処理の処理手順を説明するフローチャートである。
【図２０】図２０は、実施例２に係る代表ノードによる位置情報更新通知受信処理の処理手順を説明するフローチャートである。
【図２１】図２１は、実施例２に係る中継ノードによる位置情報更新通知受信処理の処理手順を説明するフローチャートである。
【図２２】図２２は、実施例３に係る中継システムの構成を示す図である。
【図２３】図２３は、実施例３に係る中継ノードの構成を示すブロック図である。
【図２４】図２４は、実施例３に係る代表ノードの構成を示すブロック図である。
【図２５】図２５は、実施例３に係る中継ノードによるリレーノード変更処理の処理手順を説明するフローチャートである。
【図２６】図２６は、実施例３に係る代表ノードによる位置更新通知停止メッセージ受信処理の処理手順を説明するフローチャートである。
【図２７】図２７は、実施例４に係る中継システムの構成を示す図である。
【図２８】図２８は、実施例４に係る中継ノードの構成を示すブロック図である。
【図２９】図２９は、実施例４に係る位置情報キャッシュテーブルとして格納される情報の一例を示す図である。
【図３０】図３０は、実施例４に係る動作設定記憶テーブルとして格納される情報の一例を示す図である。
【図３１】図３１は、実施例４に係る中継ノードによる配信要求メッセージ転送処理の処理手順を説明するフローチャートである。
【図３２】図３２は、実施例４に係る中継ノードによる位置情報廃棄判定処理の処理手順を説明するフローチャートである。
【図３３】図３３は、実施例５に係る中継システムの構成を示す図である。
【図３４】図３４は、実施例５に係る中継ノードの構成を示すブロック図である。
【図３５】図３５は、実施例５に係る上位ノード記憶テーブルとして格納される情報の一例を示す図である。
【図３６】図３６は、実施例５に係る代表ノードの構成を示すブロック図である。
【図３７】図３７は、実施例５に係る中継ノードによる配信要求メッセージ転送処理の処理手順を説明するフローチャートである。
【図３８】図３８は、実施例６に係る中継システムの構成を示す図である。
【図３９】図３９は、実施例６に係る中継ノードの構成を示すブロック図である。
【図４０】図４０は、実施例６に係る代表ノードの構成を示すブロック図である。
【図４１】図４１は、実施例６に係る代表ノードによる携帯端末情報削除処理の処理手順を説明するフローチャートである。
【図４２】図４２は、実施例６に係る中継ノードによる携帯端末情報削除処理の処理手順を説明するフローチャートである。
【図４３】図４３は、中継サーバ制御プログラムを実行するコンピュータシステムを示す図である。
【図４４】図４４は、リレーノード制御プログラムを実行するコンピュータシステムを示す図である。
【図４５】図４５は、中継制御ノードを設けることで位置管理サーバへの負荷を軽減させる一例を示す図である。
【図４６】図４６は、リレーノードに位置情報のキャッシュを持たせることで位置管理サーバへの負荷を軽減させる一例を示す図である。
【発明を実施するための形態】
【００２１】
以下に、本願の開示する制御プログラム、中継サーバ装置及び中継制御方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００２２】
［実施例１に係るシステムの構成］
まず、実施例１に係る中継装置を含んだ中継システム１のシステム構成を説明する。図１は、実施例１に係る中継装置を含んだ中継システム１のシステム構成を示す図である。図１に示すように、中継システム１は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と中継制御サーバ群４０とをネットワークを介して接続する。
【００２３】
携帯端末１０は、利用者からアプリケーションの実行を受付けた場合、中継制御サーバ群４０を介して配信サーバ２０へ配信要求メッセージを送信する端末である。この携帯端末１０は、例えば、スマートフォン、パーソナルコンピュータ、ＰＤＡ（Personal  Digital  Assistant）、ＰＨＳ（Personal  Handy-phone  System）あるいは携帯電話の如き移動体通信端末である。
【００２４】
配信サーバ２０は、アプリケーション等を格納するサーバ装置であり、通信事業者から割り当てられた公開アドレスを入手した利用者が利用する端末からのアクセスを受付けて、要求されるアプリケーションを当該端末に配信する。
【００２５】
位置管理サーバ３０は、例えば、無線ネットワークにおける基地局や、有線ネットワークにおけるＡＤＳＬ（Asymmetric  Digital  Subscriber  Line）モデム等のネットワーク設備の位置情報を記憶する。この位置管理サーバ３０は、ネットワーク設備に接続された携帯端末１０のアドレス及びユーザ名の通知をネットワーク設備から受付ける。そして、位置管理サーバ３０は、ネットワーク設備の位置情報によって携帯端末１０の位置、言い換えると、携帯端末１０が利用している基地局の位置を特定し、携帯端末１０のアドレス及びユーザ名と位置情報とを対応付けて記憶する。
【００２６】
この位置管理サーバ３０は、中継制御サーバ群４０からユーザＩＤをキーとして携帯端末１０の位置情報の問い合わせを受付けると、ユーザＩＤに対応付けて記憶している位置情報を中継制御サーバ群４０へ通知する。また、位置管理サーバ３０は、中継制御サーバ群４０からユーザＩＤをキーとして携帯端末１０の位置が変更したことを通知する要求を送信するように受付けると、該当するユーザＩＤに位置情報が変わる毎に中継制御サーバ群４０に位置更新通知を送信する。
【００２７】
中継制御サーバ群４０は、携帯端末１０がアプリケーションの取得を要求する際に送信する配信要求メッセージを受信し、受信したメッセージからユーザＩＤを特定する。そして、中継制御サーバ群４０は、特定したユーザＩＤを用いて位置管理サーバ３０から携帯端末１０の位置情報を取得し、取得した携帯端末１０の位置に近い配信サーバ２０へ配信要求メッセージを転送する。
【００２８】
［実施例１に係る位置管理サーバの構成］
次に、実施例１に係る位置管理サーバ３０の構成を説明する。図２は、実施例１に係る位置管理サーバの構成を示すブロック図である。図２に示すように、位置管理サーバ３０は、インターフェース部３１と記憶部３２と制御部３３とを有する。
【００２９】
インターフェース部３１は、ネットワークを介して中継制御サーバ群４０との通信を制御するインターフェースである。インターフェース部３１は、例えば、中継制御サーバ群４０から携帯端末１０の位置情報の問い合わせを受付け、受付けた携帯端末１０の位置情報を中継制御サーバ群４０に通知する。
【００３０】
記憶部３２は、例えば、半導体メモリ素子、又はハードディスクなどの記憶装置であり、位置情報キャッシュテーブル３２ａと問い合わせ元記憶テーブル３２ｂとを有する。位置情報キャッシュテーブル３２ａは、携帯端末１０のユーザＩＤと、携帯端末１０が接続されたネットワーク設備の位置とを対応付けて記憶する。また、問い合わせ元記憶テーブル３２ｂは、携帯端末名と携帯端末１０の位置情報を問い合わせた中継装置のアドレスとを対応付けて記憶する。
【００３１】
制御部３３は、受信部３３ａと位置情報更新部３３ｂと位置情報検索部３３ｃと送信部３３ｄとを有する。受信部３３ａは、基地局などのネットワーク設備から携帯端末１０の位置が更新されたことを示す通知を受付け、受付けた通知からユーザＩＤと位置情報を抽出する。また、受信部３３ａは、代表ノード２００ａから携帯端末１０の位置情報の問い合わせメッセージを受付け、受付けた問い合わせメッセージに格納されたユーザＩＤを抽出する。
【００３２】
位置情報更新部３３ｂは、受信部３３ａによって抽出されたユーザＩＤと位置情報とを受付けた場合、これらを位置情報キャッシュテーブル３２ａに格納して携帯端末１０の位置情報を更新する。また、位置情報更新部３３ｂは、携帯端末１０の位置情報を更新した場合、ユーザＩＤをキーとして問い合わせ元記憶テーブル３２ｂを検索し、問い合わせ元アドレスを取得する。そして、位置情報更新部３３ｂは、取得したアドレスを宛先にして、位置情報を格納した位置情報更新通知を生成する。
【００３３】
位置情報検索部３３ｃは、代表ノード２００ａから問い合わせを受付けた場合、ユーザＩＤをキーにして位置情報キャッシュテーブル３２ａを検索し、携帯端末１０の位置情報を取得する。そして、位置情報検索部３３ｃは、取得した携帯端末１０の位置情報を格納した位置情報応答通知を生成する。送信部３３ｄは、位置情報更新部３３ｂが生成した位置情報更新通知又は位置情報検索部３３ｃが生成した位置情報応答通知を中継ノード１００ａ又は中継ノード１００ｂへ送信する。
【００３４】
［実施例１に係る中継制御サーバ群の構成］
次に、図１に示した中継制御サーバ群４０の構成を説明する。中継制御サーバ群４０は、図１に示すように、サーバロードバランサー４１と中継ノード１００ａと中継ノード１００ｂと代表ノード２００ａとリレーノード２００ｂとリレーノード２００ｃとを有する。なお、ここでは、中継制御サーバ群４０を構成する各ノードについて簡単に説明した後、各ノードの具体的な構成について説明する。
【００３５】
サーバロードバランサー４１は、携帯端末１０から受信した配信要求メッセージを、中継ノードの負荷状況に応じて振り分ける。例えば、サーバロードバランサー４１は、携帯端末１０の配信要求メッセージを受信した場合に、中継ノード１００ａと中継ノード１００ｂとの負荷状況を取得し、負荷が少ない中継ノードに振り分ける。
【００３６】
中継ノード１００ａと中継ノード１００ｂは、サーバロードバランサー４１を介して、携帯端末１０から配信要求メッセージを受信し、受信した配信要求メッセージから携帯端末１０の位置情報が登録されているかを判定するサーバである。中継ノード１００ａと中継ノード１００ｂは、携帯端末１０の位置情報が登録されている場合、携帯端末１０の位置に近い配信サーバ２０へ配信要求メッセージを転送する。また、中継ノード１００ａと中継ノード１００ｂは、携帯端末１０の位置情報が登録されていない場合には、代表ノード２００ａに位置情報を問い合わせて取得した携帯端末１０の位置に近い配信サーバ２０へ配信要求メッセージを転送する。
【００３７】
代表ノード２００ａは、中継ノード１００ａによる携帯端末１０の位置情報の問い合わせを受付けると、携帯端末１０の位置情報が登録されているかを判定するサーバである。ここで、代表ノード２００ａは、携帯端末１０の位置情報が登録されている場合、中継ノード１００ａへ位置情報を送信する。また、代表ノード２００ａは、携帯端末１０の位置情報が登録されていない場合には、位置管理サーバ３０に位置情報を問い合わせて取得した携帯端末１０の位置情報を中継ノード１００ａに送信する。同様に、代表ノード２００ａは、中継ノード１００ｂによる携帯端末１０の位置情報の問い合わせを受付ける。
【００３８】
リレーノード２００ｂは、中継ノード１００ａと代表ノード２００ａとの通信を制御する。また、リレーノード２００ｃは、中継ノード１００ｂと代表ノード２００ａとの通信を制御する。ここで、代表ノード２００ａは、リレーノード２００ｂ及びリレーノード２００ｃの上位ノードであり、位置管理サーバ３０の下位ノードである。また、リレーノード２００ｂ及びリレーノード２００ｃは、それぞれ中継ノード１００ａ及び中継ノード１００ｂの経路制御ノードであり、代表ノード２００ａの下位ノードである。
【００３９】
なお、中継制御サーバ群４０が有する代表ノード、リレーノード及び中継ノードは、図１に示したものに限定されない。例えば、中継制御サーバ群４０は、代表ノードを複数有していてもよく、また、リレーノードを介さずに中継ノードと代表ノードとを接続してもよい。
【００４０】
（実施例１に係る中継ノードの構成）
次に、図３を用いて、実施例１に係る中継ノードの構成を示す。なお、中継ノード１００ａと中継ノード１００ｂとは同様の構成を有するので、ここでは中継ノード１００ａについてのみ説明する。図３は、実施例１に係る中継ノード１００ａの構成を示すブロック図である。図３に示すように、中継ノード１００ａは、インターフェース部１１０と、記憶部１２０と、制御部１３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。
【００４１】
インターフェース部１１０は、ネットワークを介して携帯端末１０と配信サーバ２０と代表ノード２００ａ及びリレーノード２００ｂとの間の各通信を制御する。例えば、インターフェース部１１０は、携帯端末１０から受信した配信要求メッセージを配信要求メッセージ受信部１３１へ転送する。また、インターフェース部１１０は、代表ノード問い合わせ部１３３が生成した位置情報問い合わせメッセージを代表ノード２００ａに送信する。
【００４２】
記憶部１２０は、例えば、半導体メモリ素子、又はハードディスクなどの記憶装置であり、位置情報キャッシュテーブル１２１と上位ノード記憶テーブル１２２と振り分け先サーバ記憶テーブル１２３とを有する。
【００４３】
位置情報キャッシュテーブル１２１には、携帯端末１０の位置情報が格納される。図４は、位置情報キャッシュテーブル１２１として格納される情報の一例を示す図である。例えば、図４に示すように、位置情報キャッシュテーブル１２１には、「ユーザＩＤ」と「位置」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子である。また、「位置」は、携帯端末１０がどのネットワーク設備と接続されているかを示す。すなわち、「位置」は、携帯端末１０の位置情報を示す。
【００４４】
具体的には、図４の場合、ユーザＩＤが「Ａｌｉｃｅ」である携帯端末１０は、「ＡｒｅａＡ」に位置することを示す。また、ユーザＩＤが「Ｂｏｂ」である携帯端末１０は、「ＡｒｅａＢ」に位置することを示す。
【００４５】
上位ノード記憶テーブル１２２は、中継ノード１００ａと接続された上位のノード情報が格納される。図５は、上位ノード記憶テーブル１２２として格納される情報の一例を示す図である。例えば、図５に示すように、上位ノード記憶テーブル１２２には、「ユーザＩＤ」と「ノード種別」と「アドレス」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子である。「ノード種別」は、中継ノード１００ａと接続された上位ノードの種別が代表ノードであるか、リレーノードであるかを示す。「アドレス」は中継ノード１００ａと接続された上位ノードのアドレスを示す。
【００４６】
具体的には、図５の場合、ユーザＩＤが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０の代表ノード２００ａのアドレスが「１０．１０」であることを示す情報が格納される。また、ユーザＩＤが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０のリレーノード２００ｂのアドレスが「１０．１１」であることを示す情報が格納される。
【００４７】
振り分け先サーバ記憶テーブル１２３には、携帯端末１０の位置情報に対応した配信サーバ２０のアドレスが格納される。図６は、振り分け先サーバ記憶テーブル１２３として格納される情報の一例を示す図である。例えば、図６に示すように、振り分け先サーバ記憶テーブル１２３には、「メッセージの宛先」と「位置」と「配信サーバアドレス」とを対応付けた情報が格納される。「メッセージの宛先」は、配信サーバ名を示す。「位置」は、携帯端末１０の位置情報を示す。「配信サーバアドレス」は、携帯端末１０の位置情報に応じたメッセージの宛先のアドレスを示す。
【００４８】
具体的には、図６の場合、携帯端末１０が「ＡｒｅａＡ」に位置する場合、配信サーバ「ｃｓ．ｆｊ．ｊｐ」に、配信サーバアドレス「ｈｏｓｔ１．ｆｊ．ｃｏｍ」宛てに配信要求メッセージを送信することを示す。また、携帯端末１０が「ＡｒｅａＢ」に位置する場合、配信サーバ「ｃｓ．ｆｊ．ｊｐ」に、配信サーバアドレス「ｈｏｓｔ２２．ｆｊ．ｃｏｍ」宛てに配信要求メッセージを送信することを示す。
【００４９】
制御部１３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部１３０は、配信要求メッセージ受信部１３１と位置情報検索部１３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４とを有する。例えば、制御部１３０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路、又は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。
【００５０】
配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信する。例えば、配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信した場合、配信要求メッセージに格納されたユーザＩＤと宛先サーバ名を抽出する。
【００５１】
具体例として、配信要求メッセージ受信部１３１が図７に示す配信要求メッセージを受信した場合を用いて説明する。図７は、配信要求メッセージ受信部１３１が携帯端末１０から受信する配信要求メッセージの一例を示す図である。図７に示すように、配信要求メッセージは、リクエスト行７１とヘッダ部７２とを有する。
【００５２】
リクエスト行７１は、メソッドを有する。図７に示す例では、メソッドは、サーバに対してページの取得を要求することを示す「ＧＥＴ」である。ヘッダ部７２は、ヘッダ名とヘッダ値とを有する。「ユーザＩＤ」を示すヘッダ名「Ｃｏｏｋｉｅ：ｕｓｅｒｉｄ」に対応するヘッダ値は「Ｔｏｍ」である。また、「メッセージの宛先」を示すヘッダ名「Ｈｏｓｔ」に対応するヘッダ値は「ｃｓ．ｆｊ．ｊｐ」である。例えば、図７に示す配信要求メッセージを受信した場合、配信要求メッセージ受信部１３１は、ユーザＩＤ「Ｔｏｍ」とメッセージの宛先「ｃｓ．ｆｊ．ｊｐ」を抽出する。なお、配信要求メッセージ受信部１３１は、請求項４における配信要求受信部に対応する。
【００５３】
位置情報検索部１３２は、配信要求メッセージ受信部１３１から通知を受付けた場合、配信要求メッセージを受信した携帯端末１０の位置情報が位置情報キャッシュテーブル１２１に格納されているか否かを判定する。例えば、位置情報検索部１３２は、配信要求メッセージ受信部１３１が抽出したユーザＩＤをキーにして位置情報キャッシュテーブル１２１を検索し、端末の位置情報が位置情報キャッシュテーブル１２１に格納されているか否かを判定する。
【００５４】
そして、位置情報検索部１３２は、端末の位置情報が位置情報キャッシュテーブル１２１に格納されていると判定した場合、配信要求メッセージ転送部１３４へ通知する。一方、位置情報検索部１３２は、端末の位置情報が位置情報キャッシュテーブル１２１に格納されていないと判定した場合、代表ノード問い合わせ部１３３へ通知する。
【００５５】
例えば、図７に示した配信要求メッセージを受信した場合、位置情報検索部１３２は、抽出したユーザＩＤ「Ｔｏｍ」をキーにして位置情報キャッシュテーブル１２１を検索し、ユーザＩＤ「Ｔｏｍ」に対応する位置情報が格納されていないと判定する。そして、位置情報検索部１３２は、代表ノード問い合わせ部１３３へ通知する。なお、位置情報検索部１３２は、請求項４における位置情報取得部に対応する。
【００５６】
代表ノード問い合わせ部１３３は、位置情報検索部１３２が携帯端末１０の位置情報が位置情報キャッシュテーブル１２１に格納されていないと判定した場合、代表ノード２００ａに携帯端末１０の位置情報を問い合わせる。
【００５７】
例えば、代表ノード問い合わせ部１３３は、ユーザＩＤ「Ｔｏｍ」をキーとして図５に示した上位ノード記憶テーブル１２２を検索し、代表ノード２００ａのアドレスが「１０．１０」であると判定する。そして、代表ノード問い合わせ部１３３は、ユーザＩＤ「Ｔｏｍ」を格納した位置情報問い合わせメッセージを生成し、生成した位置情報問い合わせメッセージをアドレス「１０．１０」宛てに送信する。
【００５８】
また、代表ノード問い合わせ部１３３は、代表ノード２００ａから位置情報問い合わせメッセージの応答を受信した場合、応答メッセージに格納された位置情報を抽出し、抽出した位置情報を位置情報キャッシュテーブル１２１に格納する。代表ノード問い合わせ部１３３は、抽出した位置情報を位置情報キャッシュテーブル１２１に格納した後、配信要求メッセージ転送部１３４に通知する。
【００５９】
例えば、代表ノード問い合わせ部１３３は、応答メッセージに「ＡｒｅａＡ」が格納されていた場合、位置情報キャッシュテーブル１２１の「ユーザＩＤ」に「Ｔｏｍ」、「位置」に「ＡｒｅａＡ」を格納する。なお、代表ノード問い合わせ部１３３は、請求項４における位置情報取得部に対応する。
【００６０】
配信要求メッセージ転送部１３４は、携帯端末１０の位置情報から最も近い配信サーバ２０を検索し、携帯端末１０から受信した配信要求メッセージを配信サーバ２０へ転送する。例えば、配信要求メッセージ転送部１３４は、「メッセージの宛先」として「ｃｓ．ｆｊ．ｊｐ」、「位置」として「ＡｒｅａＡ」をキーに、図６に示した振り分け先サーバ記憶テーブル１２３を検索する。そして、配信要求メッセージ転送部１３４は、配信サーバアドレス「ｈｏｓｔ１．ｆｊ．ｃｏｍ」を取得し、取得したアドレスの配信サーバ２０へ配信要求メッセージを転送する。なお、配信要求メッセージ転送部１３４は、請求項４における配信要求転送部に対応する。
【００６１】
（実施例１に係る代表ノードの構成）
次に、図８を用いて、実施例１に係る代表ノード２００ａの構成を示す。なお、代表ノード２００ａとリレーノード２００ｂ及び２００ｃとは同様の構成を有するので、ここでは代表ノード２００ａについてのみ説明する。図８は、実施例１に係る代表ノード２００ａの構成を示すブロック図である。実施例１にかかる代表ノード２００ａは、インターフェース部２１０と、記憶部２２０と、制御部２３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。
【００６２】
インターフェース部２１０は、ネットワークを介して下位ノード又は上位ノードとの通信を制御するインターフェースである。例えば、インターフェース部２１０は、中継ノードから位置情報問い合わせメッセージを受信した場合、受信した位置情報問い合わせメッセージを下位ノードメッセージ受信部２３１へ転送する。また、例えば、インターフェース部２１０は、位置管理サーバ３０から携帯端末１０の位置情報を取得した場合、取得した位置情報を位置情報処理部２３４に転送する。
【００６３】
記憶部２２０は、例えば、半導体メモリ素子、又はハードディスクなどの記憶装置であり、問い合わせ元記憶テーブル２２１と位置情報キャッシュテーブル２２２と上位ノード記憶テーブル２２３とを有する。
【００６４】
問い合わせ元記憶テーブル２２１には、位置情報問い合わせメッセージを送信した中継ノード１００が有するアドレスである「問い合わせ元アドレス」と位置情報を問い合わせた携帯端末１０の「ユーザＩＤ」とを対応付けた情報が格納される。図９は、問い合わせ元記憶テーブル２２１として格納される情報の一例を示す図である。
【００６５】
例えば、問い合わせ元記憶テーブル２２１には、図９に示すように、「ユーザＩＤ」と「問い合わせ元アドレス」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子を示す。「問い合わせ元アドレス」は、携帯端末１０の位置情報を問い合わせた下位ノードのアドレスを示す。具体的には、図９に示す問い合わせ元記憶テーブル２２１には、ユーザＩＤが「Ａｌｉｃｅ」で識別される携帯端末１０の位置情報を問い合わせた下位ノードのアドレスが「１０．２」であることを示す情報が格納される。
【００６６】
位置情報キャッシュテーブル２２２には、携帯端末の位置情報が格納される。図１０は、位置情報キャッシュテーブル２２２として格納される情報の一例を示す図である。例えば、位置情報キャッシュテーブル２２２には、図１０に示すように、「ユーザＩＤ」と「位置」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子を示す。「位置」は、携帯端末１０の位置情報を示す。具体的には、図１０の場合、ユーザＩＤが「Ａｌｉｃｅ」である携帯端末１０は、「ＡｒｅａＡ」に位置することを示す。
【００６７】
上位ノード記憶テーブル２２３には、代表ノード２００ａと接続された上位ノード情報が格納される。図１１は、上位ノード記憶テーブル２２３として格納される情報の一例を示す図である。例えば、上位ノード記憶テーブル２２３には、図１１に示すように、「ユーザＩＤ」と「ノード種別」と「アドレス」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子を示す。「ノード種別」は、代表ノード２００ａと接続された上位ノードの種別を示す。「アドレス」は代表ノード２００ａと接続された上位ノードのアドレスを示す。
【００６８】
具体的には、図１１に示す上位ノード記憶テーブル２２３には、ユーザが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０の位置管理サーバのアドレスが「１１．１０」であることを示す情報が格納される。また、上位ノード記憶テーブル２２３には、ユーザが「Ｂｏｂ」である携帯端末１０のリレーノードのアドレスが「１０．１２」であることを示す情報が格納される。
【００６９】
制御部２３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部２３０は、下位ノードメッセージ受信部２３１と位置情報検索部２３２と位置情報要求部２３３と位置情報処理部２３４と下位ノードメッセージ送信部２３５とを有する。例えば、制御部２３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【００７０】
下位ノードメッセージ受信部２３１は、下位ノードからメッセージを受信した場合、受信したメッセージを解析する。例えば、下位ノードメッセージ受信部２３１は、中継ノード１００ａから位置情報問い合わせメッセージを受信した場合、位置情報問い合わせメッセージに格納された送信元アドレスとユーザＩＤとを抽出する。そして、下位ノードメッセージ受信部２３１は、抽出した送信元アドレスとユーザＩＤとを問い合わせ元記憶テーブル２２１に格納する。
【００７１】
下位ノードメッセージ受信部２３１は、アドレスが「１０．２」の中継ノード１００ａからユーザＩＤが「Ａｌｉｃｅ」で識別される携帯端末１０の位置情報問い合わせメッセージを受信した場合、問い合わせ元記憶テーブル２２１に図９に示した情報を格納する。
【００７２】
位置情報検索部２３２は、下位ノードメッセージ受信部２３１から通知を受付けた場合、位置情報問い合わせメッセージに格納された携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されているか否かを判定する。例えば、位置情報検索部２３２は、下位ノードメッセージ受信部２３１が抽出したユーザＩＤをキーにして位置情報キャッシュテーブル２２２を検索し、携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されているか否かを判定する。
【００７３】
そして、位置情報検索部２３２は、携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されていると判定した場合、下位ノードメッセージ送信部２３５へ通知する。一方、位置情報検索部２３２は、携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されていないと判定した場合、位置情報要求部２３３へ通知する。
【００７４】
具体的には、位置情報検索部２３２は、位置情報問い合わせメッセージを受信した場合、抽出したユーザＩＤ「Ｔｏｍ」をキーにして図１０に示した位置情報キャッシュテーブル２２２を検索する。そして、位置情報検索部２３２は、ユーザＩＤ「Ｔｏｍ」に対応する位置情報が格納されていないと判定し、位置情報要求部２３３へ通知する。
【００７５】
位置情報要求部２３３は、位置情報検索部２３２から通知を受付けた場合、上位ノードへ位置情報を問い合わせる。例えば、位置情報要求部２３３は、位置情報検索部２３２が携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されていないと判定した場合、ユーザＩＤをキーにして、上位ノード記憶テーブル２２３を検索する。そして、位置情報要求部２３３は、ノード種別とアドレスとを取得し、取得したアドレスに位置情報問い合わせメッセージを送信する。具体的には、位置情報要求部２３３は、位置管理サーバ３０へ位置情報を要求する。
【００７６】
位置情報処理部２３４は、上位ノードから応答メッセージを受信し、応答メッセージに格納された携帯端末１０の位置情報を抽出する。そして、位置情報処理部２３４は、抽出した位置情報を位置情報キャッシュテーブル２２２に格納する。また、位置情報処理部２３４は、下位ノードメッセージ送信部２３５へ応答メッセージから抽出した位置情報を通知する。
【００７７】
具体的には、位置情報処理部２３４は、応答メッセージからユーザＩＤが「Ａｌｉｃｅ」である携帯端末１０の位置情報として「ＡｒｅａＡ」を抽出した場合、図１０に示すような情報を位置情報キャッシュテーブル２２２に格納する。
【００７８】
下位ノードメッセージ送信部２３５は、下位ノードに位置情報を送信する。例えば、下位ノードメッセージ送信部２３５は、ユーザＩＤをキーにし、問い合わせ元記憶テーブル２２１を検索して、問い合わせ元のアドレスを取得する。そして、下位ノードメッセージ送信部２３５は、取得した下位ノードのアドレスへ携帯端末１０の位置情報を格納した応答メッセージを送信する。
【００７９】
具体的には、下位ノードメッセージ送信部２３５は、図９に示した問い合わせ元記憶テーブル２２１を検索した場合、取得した中継ノード１００ａのアドレス「１０．２」へ携帯端末１０の位置情報を送信する。
【００８０】
［実施例１にかかる中継システムによる処理の処理手順］
（実施例１にかかる中継ノードによる位置問い合わせ処理の処理手順）
次に、図１２を用いて、実施例１にかかる中継ノード１００ａによる位置問い合わせ処理の処理手順を説明する。図１２は、実施例１にかかる中継ノード１００ａによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【００８１】
配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信した場合（ステップＳ１０１、Ｙｅｓ）、配信要求メッセージからユーザＩＤを抽出する（ステップＳ１０２）。続いて、位置情報検索部１３２は、配信要求メッセージ受信部１３１が抽出したユーザＩＤをキーに位置情報キャッシュテーブル１２１を検索し、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ１０３）。
【００８２】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ１０３、Ｎｏ）、代表ノード問い合わせ部１３３は、代表ノード２００ａに携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ１０４）。続いて、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送し（ステップＳ１０５）処理を終了する。
【００８３】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ１０３、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送し（ステップＳ１０５）処理を終了する。
【００８４】
（実施例１にかかる代表ノードによる位置問い合わせ処理の処理手順）
次に、図１３を用いて、実施例１にかかる代表ノード２００ａによる位置問い合わせ処理の処理手順を説明する。図１３は、実施例１にかかる代表ノード２００ａによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【００８５】
下位ノードメッセージ受信部２３１は、中継ノード１００ａから問い合わせメッセージを受信した場合（ステップＳ２０１、Ｙｅｓ）、ステップＳ２０２の処理を実行する。すなわち、下位ノードメッセージ受信部２３１は、問い合わせメッセージからユーザＩＤと中継ノードのアドレスを抽出し、抽出したユーザＩＤと中継ノードのアドレスを問い合わせ元記憶テーブル２２１に格納する（ステップＳ２０２）。続いて、位置情報検索部２３２は、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ２０３）。
【００８６】
位置情報検索部２３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ２０３、Ｎｏ）、位置情報要求部２３３は、ステップＳ２０４の処理を実行する。すなわち、位置情報要求部２３３は、位置管理サーバ３０に携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ２０４）。続いて、下位ノードメッセージ送信部２３５は、携帯端末１０の位置を中継ノード１００ａに送信し（ステップＳ２０５）処理を終了する。
【００８７】
位置情報検索部２３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ２０３、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、携帯端末１０の位置を中継ノード１００ａに送信し（ステップＳ２０５）処理を終了する。
【００８８】
［実施例１の効果］
上述してきたように、本実施例１では、中継ノード１００ａは、代表ノード２００ａへ直接携帯端末１０の位置情報を問い合わせる。したがって、アプリケーションの配信を要求する携帯端末１０の位置情報を短時間で取得することができる。
【実施例２】
【００８９】
実施例１では、中継ノード１００ａが代表ノード２００ａに携帯端末１０の位置情報を問い合わせる例について説明した。ところが、中継システムにおいて、中継ノードが位置情報を取得した後に、携帯端末が移動する場合がある。そこで、実施例２では、携帯端末が移動した場合に、中継ノードが上位ノードから携帯端末の位置情報の通知を受ける例について説明する。
【００９０】
［実施例２に係る中継システムの構成］
まず、実施例２に係る中継システム２のシステム構成を説明する。図１４は、実施例２に係る中継システム２のシステム構成を示す図である。図１４に示すように、中継システム２は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と中継制御サーバ群５０とをネットワークを介して接続する。
【００９１】
［実施例２に係る中継制御サーバ群の構成］
次に、実施例２に係る中継制御サーバ群５０の構成を説明する。中継制御サーバ群５０は、図１４に示すように、サーバロードバランサー４１と中継ノード３００ａと中継ノード３００ｂと代表ノード４００ａとリレーノード４００ｂとリレーノード４００ｃとを有する。
【００９２】
（実施例２に係る中継ノードの構成）
次に、実施例２にかかる中継ノードの構成を説明する。なお、中継ノード３００ａと中継ノード３００ｂとは同様の構成を有するので、ここでは中継ノード３００ａについてのみ説明する。図１５は、実施例２にかかる中継ノード３００ａの構成を示すブロック図である。実施例２にかかる中継装置の中継ノード３００ａは、インターフェース部１１０と記憶部１２０と制御部３３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。また、ここでは、図３に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【００９３】
制御部３３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部３３０は、配信要求メッセージ受信部１３１と位置情報検索部１３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４と更新通知要求部３３５と位置情報処理部３３６とを有する。例えば、制御部３３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【００９４】
更新通知要求部３３５は、携帯端末１０の位置情報が変化した場合に、位置更新時の通知を受付ける要求をする。例えば、更新通知要求部３３５は、代表ノード問い合わせ部１３３が携帯端末１０の位置情報を取得した場合、ユーザＩＤをキーにし、上位ノード記憶テーブル１２２を検索してリレーノードのアドレスを取得する。そして、更新通知要求部３３５は、取得したアドレスの上位ノードに、ユーザＩＤと位置情報とを格納した更新通知要求を送信する。
【００９５】
具体的には、更新通知要求部３３５は、ユーザＩＤ「Ｔｏｍ」をキーにして上位ノード記憶テーブル１２２を検索し、リレーノードのアドレス「１０．１１」を取得する。そして、更新通知要求部３３５は、取得したアドレス「１０．１１」に、ユーザＩＤ「Ｔｏｍ」と位置情報「ＡｒｅａＡ」とを格納した更新通知要求を送信する。なお、更新通知要求部３３５は、請求項４における位置情報送信部に対応する。
【００９６】
位置情報処理部３３６は、リレーノードから更新通知要求部３３５が要求した更新通知要求に対する応答を受信し、受信した応答種別を判定する。例えば、位置情報処理部３３６は、リレーノードから「ｕｐｄａｔｅ」を示す応答を受信した場合、受信した応答に格納された位置情報を位置情報キャッシュテーブル１２１へ格納する。続いて、位置情報処理部３３６は、配信要求メッセージ転送部１３４に通知する。一方、位置情報処理部３３６は、リレーノードから「ＯＫ」を示す応答を受信した場合、配信要求メッセージ転送部１３４に通知する。
【００９７】
また、位置情報処理部３３６は、リレーノードから位置更新通知を受信し、受信した位置更新通知に格納されたユーザＩＤと位置情報を抽出して、抽出した位置情報を位置情報キャッシュテーブル１２１へ格納する。
【００９８】
（実施例２に係る代表ノードの構成）
次に、図１６を用いて、実施例２にかかる代表ノード４００ａの構成を説明する。なお、代表ノード４００ａとリレーノード４００ｂ及び４００ｃとは同様の構成を有するので、ここでは代表ノード４００ａについてのみ説明する。図１６は、実施例２にかかる代表ノード４００ａの構成を示すブロック図である。実施例２に係る代表ノード４００ａは、インターフェース部２１０と記憶部２２０と制御部４３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図８に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【００９９】
制御部４３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部４３０は、下位ノードメッセージ受信部２３１と位置情報検索部２３２と位置情報要求部４３３と位置情報処理部４３４と下位ノードメッセージ送信部２３５とを有する。例えば、制御部４３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１００】
位置情報要求部４３３は、実施例１で説明した位置情報要求部２３３が有する機能に加えて以下の機能をさらに有する。位置情報要求部４３３は、携帯端末１０の位置情報が更新された場合に上位ノードから通知を受付ける要求を上位ノードに送信する。例えば、位置情報要求部４３３は、ユーザＩＤをキーにして上位ノード記憶テーブル２２３を検索し、位置管理サーバ又はリレーノードのアドレスを取得する。そして、位置情報要求部４３３は、アドレスを取得した位置管理サーバ３０又は上位ノードへユーザＩＤと位置情報とを格納した更新通知要求を送信する。
【０１０１】
位置情報処理部４３４は、実施例１で説明した位置情報処理部２３４が有する機能に加えて以下の機能をさらに有する。位置情報処理部４３４は、上位ノードから位置情報の問い合わせに対する応答を受信し、受信した応答種別を判定する。例えば、位置情報処理部４３４は、位置情報要求部４３３が送信した位置情報問い合わせ要求に対する応答を位置管理サーバ３０から受信し、受信した応答種別を判定する。
【０１０２】
例えば、位置情報処理部４３４は、携帯端末１０の位置情報が更新されたことを示す「ｕｐｄａｔｅ」応答を位置管理サーバ３０から受信した場合、受信した応答に格納された位置情報を位置情報キャッシュテーブル２２２へ格納する。続いて、位置情報処理部４３４は、下位ノードメッセージ送信部２３５に通知する。一方、位置情報処理部４３４は、携帯端末１０の位置情報が更新されていないことを示す「ＯＫ」応答を位置管理サーバ３０から受信した場合、下位ノードメッセージ送信部２３５に通知する。
【０１０３】
また、位置情報処理部４３４は、下位ノードから位置情報の更新通知要求メッセージを受信し、受信した位置情報と位置情報キャッシュテーブル２２２の格納された位置情報とを比較する。例えば、位置情報処理部４３４は、リレーノード４００ｂの位置情報要求部４３３が送信した更新通知要求メッセージからユーザＩＤと位置情報とを抽出する。そして、位置情報処理部４３４は、抽出した携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されているか否かを判定する。
【０１０４】
ここで、位置情報処理部４３４は、抽出した携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されていないと判定した場合、位置情報要求部４３３に更新通知要求メッセージを送信させる。一方、位置情報処理部４３４は、抽出した携帯端末１０の位置情報が位置情報キャッシュテーブル２２２に格納されていると判定した場合、以下の処理を実行する。すなわち、位置情報処理部４３４は、抽出した携帯端末１０の位置情報と位置情報キャッシュテーブル２２２に格納されている位置情報が一致するか否かを判定する。
【０１０５】
位置情報処理部４３４は、位置情報が一致すると判定した場合には、下位ノードメッセージ送信部２３５に通知し「ＯＫ」応答を下位ノードへ送信させる。位置情報処理部４３４は、位置情報が一致しないと判定した場合には、受信した応答に格納された位置情報を位置情報キャッシュテーブル２２２へ格納する。続いて、位置情報処理部４３４は、下位ノードメッセージ送信部２３５に通知し「ｕｐｄａｔｅ」応答を下位ノードへ送信させる。
【０１０６】
また、位置情報処理部４３４は、上位ノードから位置更新通知を受信した場合、位置更新通知に格納された位置情報を位置情報キャッシュテーブル２２２に格納し、下位ノードメッセージ送信部２３５に通知する。
【０１０７】
例えば、位置情報処理部４３４は、位置管理サーバ３０から位置更新通知を受信した場合、位置更新通知に格納されたユーザＩＤと位置情報とを抽出し、抽出した位置情報を位置情報キャッシュテーブル２２２に格納する。そして、位置情報処理部４３４は、問い合わせ元記憶テーブル２２１からリレーノード４００ｂのアドレスを検索する。ここでアドレスが登録されていた場合、位置情報処理部４３４は、下位ノードメッセージ送信部２３５に通知し、検索したアドレスに位置情報更新通知を送信させる。一方、アドレスが登録されていなかった場合、位置情報処理部４３４は、エラーログを生成する。
【０１０８】
［実施例２にかかる中継システムによる処理の処理手順］
（実施例２にかかる中継ノードによる位置問い合わせ処理の処理手順）
次に、図１７を用いて、実施例２にかかる中継ノード３００ａによる位置問い合わせ処理の処理手順を説明する。図１７は、実施例２にかかる中継ノード３００ａによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【０１０９】
配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信した場合（ステップＳ３０１、Ｙｅｓ）、配信要求メッセージからユーザＩＤを抽出する（ステップＳ３０２）。続いて、位置情報検索部１３２は、配信要求メッセージ受信部１３１が抽出したユーザＩＤをキーに位置情報キャッシュテーブル１２１を検索し、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ３０３）。
【０１１０】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ３０３、Ｎｏ）、代表ノード問い合わせ部１３３は、代表ノードに携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ３０４）。続いて、更新通知要求部３３５は、リレーノードに位置情報更新通知を登録する（ステップＳ３０５）。そして、位置情報処理部３３６は、リレーノードから応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ３０６）。
【０１１１】
位置情報処理部３３６は、受信した応答が「ＯＫ」ではないと判定した場合（ステップＳ３０６、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録する（ステップＳ３０７）。続いて、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送し（ステップＳ３０８）処理を終了する。
【０１１２】
位置情報処理部３３６によって受信した応答が「ＯＫ」であると判定された場合（ステップＳ３０６、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送し（ステップＳ３０８）処理を終了する。
【０１１３】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ３０３、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送し（ステップＳ３０８）処理を終了する。
【０１１４】
（実施例２にかかる代表ノードによる位置問い合わせ処理の処理手順）
次に、図１８を用いて、実施例２にかかる代表ノード４００ａによる位置問い合わせ処理の処理手順を説明する。図１８は、実施例２にかかる代表ノード４００ａによる位置問い合わせ処理の処理手順を説明するフローチャートである。
【０１１５】
下位ノードメッセージ受信部２３１は、中継ノード３００ａから問い合わせメッセージを受信した場合（ステップＳ４０１、Ｙｅｓ）、ステップＳ４０２の処理を実行する。すなわち、下位ノードメッセージ受信部２３１は、問い合わせメッセージからユーザＩＤと中継ノードのアドレスを抽出し、抽出したユーザＩＤと中継ノードのアドレスを問い合わせ元記憶テーブル２２１に格納する（ステップＳ４０２）。続いて、位置情報検索部２３２は、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ４０３）。
【０１１６】
位置情報検索部２３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ４０３、Ｎｏ）、位置情報要求部４３３は、ステップＳ４０４の処理を実行する。すなわち、位置情報要求部４３３は、位置管理サーバ３０に携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ４０４）。続いて、位置情報要求部４３３は、上位ノードに位置情報更新通知を登録する（ステップＳ４０５）。そして、位置情報処理部４３４は、上位ノードから応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ４０６）。
【０１１７】
位置情報処理部４３４は、受信した応答が「ＯＫ」ではないと判定した場合（ステップＳ４０６、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録する（ステップＳ４０７）。続いて、下位ノードメッセージ送信部２３５は、携帯端末１０の位置を問い合わせ元に送信し（ステップＳ４０８）処理を終了する。
【０１１８】
位置情報処理部４３４によって受信した応答が「ＯＫ」であると判定された場合（ステップＳ４０６、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、携帯端末１０の位置を問い合わせ元に送信し（ステップＳ４０８）処理を終了する。
【０１１９】
位置情報検索部２３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ４０３、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、携帯端末１０の位置を問い合わせ元に送信し（ステップＳ４０８）処理を終了する。
【０１２０】
（実施例２にかかる代表ノードによる位置情報更新要求処理の処理手順）
次に、図１９を用いて、実施例２にかかる代表ノード４００ａによる位置情報更新要求処理の処理手順を説明する。図１９は、実施例２にかかる代表ノード４００ａによる位置情報更新要求処理の処理手順を説明するフローチャートである。
【０１２１】
下位ノードメッセージ受信部２３１は、中継ノード３００ａ又は下位のリレーノードから更新通知要求を受信した場合（ステップＳ５０１、Ｙｅｓ）、ステップＳ５０２の処理を実行する。すなわち、下位ノードメッセージ受信部２３１は、更新通知要求メッセージからユーザＩＤと下位ノードのアドレスと位置情報を抽出し、抽出したユーザＩＤと下位ノードのアドレスを問い合わせ元記憶テーブル２２１に格納する（ステップＳ５０２）。続いて、位置情報検索部２３２は、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ５０３）。
【０１２２】
位置情報検索部２３２は、携帯端末１０の位置情報が登録されていると判定した場合（ステップＳ５０３、Ｙｅｓ）、位置情報が一致するか否かを判定する（ステップＳ５０４）。位置情報検索部２３２によって位置情報が一致すると判定された場合（ステップＳ５０４、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、「ＯＫ」を応答し（ステップＳ５０５）、処理を終了する。一方、位置情報検索部２３２によって位置情報が一致しないと判定された場合（ステップＳ５０４、Ｎｏ）、下位ノードメッセージ送信部２３５は、「ｕｐｄａｔｅ」を応答し（ステップＳ５０６）、処理を終了する。
【０１２３】
位置情報検索部２３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ５０３、Ｎｏ）、位置情報要求部４３３は、上位ノードに更新通知要求メッセージを送信する（ステップＳ５０７）。続いて、位置情報処理部４３４は、上位ノードから応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ５０８）。
【０１２４】
位置情報処理部４３４は、受信した応答が「ＯＫ」であると判定した場合（ステップＳ５０８、Ｙｅｓ）、位置情報を登録し（ステップＳ５０９）、ステップＳ５０５の処理へ移行する。一方、位置情報処理部４３４は、受信した応答が「ＯＫ」ではないと判定した場合（ステップＳ５０８、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録し（ステップＳ５１０）、ステップＳ５０６の処理へ移行する。
【０１２５】
（実施例２にかかる代表ノードによる位置情報更新通知受信処理の処理手順）
次に、図２０を用いて、実施例２にかかる代表ノード４００ａによる位置情報更新通知受信処理の処理手順を説明する。図２０は、実施例２にかかる代表ノード４００ａによる位置情報更新通知受信処理の処理手順を説明するフローチャートである。
【０１２６】
位置情報処理部４３４は、位置管理サーバ３０又は上位ノードから位置更新通知を受信した場合（ステップＳ６０１、Ｙｅｓ）、位置更新通知からユーザＩＤと位置情報とを抽出する（ステップＳ６０２）。続いて、位置情報処理部４３４は、抽出した位置情報を登録する（ステップＳ６０３）。
【０１２７】
そして、位置情報処理部４３４は、問い合わせ元記憶テーブル２２１を検索し、問い合わせ元のアドレスを取得し（ステップＳ６０４）、アドレスが登録されているか否かを判定する（ステップＳ６０５）。ここで、位置情報処理部４３４によってアドレスが登録されていると判定された場合（ステップＳ６０５、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、取得したアドレスに位置情報更新通知を送信する（ステップＳ６０６）。一方、位置情報処理部４３４によってアドレスが登録されていないと判定された場合（ステップＳ６０５、Ｎｏ）、下位ノードメッセージ送信部２３５は、エラーログを生成し、出力する（ステップＳ６０７）。
【０１２８】
（実施例２にかかる中継ノードによる位置情報更新通知受信処理の処理手順）
次に、図２１を用いて、実施例２にかかる中継ノード３００ａによる位置情報更新通知受信処理の処理手順を説明する。図２１は、実施例２にかかる中継ノード３００ａによる位置情報更新通知受信処理の処理手順を説明するフローチャートである。
【０１２９】
位置情報処理部３３６は、上位ノードから位置更新通知を受信した場合（ステップＳ７０１、Ｙｅｓ）、位置更新通知からユーザＩＤと位置情報とを抽出する（ステップＳ７０２）。続いて、位置情報処理部３３６は、抽出した位置情報を登録する（ステップＳ７０３）。
【０１３０】
［実施例２の効果］
上述してきたように、本実施例２では、中継ノード３００ａが取得した位置情報と上位ノードが記憶する位置情報とを比較することで、携帯端末１０の位置情報を取得後に携帯端末１０の位置が変更しても正確な位置情報を取得することができる。
【実施例３】
【０１３１】
実施例２では、中継システムが位置情報を取得し、取得した位置情報に変更があれば、更新通知を受付ける例について説明した。ところが、中継システムにおいて、上位ノードに変更がある場合がある。そこで、実施例３では、中継システムにおいて、上位ノードに変更がある場合に、中継ノードがリレーノードに配信停止要求と配信要求を送信する例について説明する。
【０１３２】
［実施例３にかかる中継システムの構成］
次に、実施例３にかかる中継システム３の構成を説明する。図２２は、実施例３にかかる中継システムの構成を示す図である。実施例３にかかる中継システム３は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と監視システム３９と中継制御サーバ群６０とを有する。なお、ここでは、図２に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１３３】
監視システム３９は、中継システム３を監視するサーバである。例えば、監視システム３９は、複数のリレーノードが存在するにもかかわらず、特定のリレーノードだけに中継ノードが接続されているか否かを判定することで、中継システム３の負荷状況を監視する。また、監視システム３９は、監視者から中継システム３における中継ノードとリレーノードの接続関係を変更する通知を受け付けた場合、中継ノード５００ａ及び５００ｂにリレーノード変更メッセージを送信する。
【０１３４】
［実施例３に係る中継制御サーバ群の構成］
実施例３にかかる中継制御サーバ群６０は、サーバロードバランサー４１と中継ノード５００ａと中継ノード５００ｂと代表ノード６００ａとリレーノード６００ｂとリレーノード６００ｃとを有する。
【０１３５】
（実施例３に係る中継ノードの構成）
次に、実施例３にかかる中継ノードの構成を説明する。なお、中継ノード５００ａと中継ノード５００ｂとは同様の構成を有するので、ここでは中継ノード５００ａについてのみ説明する。図２３は、実施例３にかかる中継ノード５００ａの構成を示すブロック図である。実施例３にかかる中継ノード５００ａは、インターフェース部１１０と記憶部１２０と制御部５３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図３及び図１５に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１３６】
制御部５３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部５３０は、配信要求メッセージ受信部５３１と位置情報検索部１３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４と更新通知要求部５３５と位置情報処理部３３６とを有する。例えば、制御部５３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１３７】
配信要求メッセージ受信部５３１は、実施例１で説明した配信要求メッセージ受信部１３１が有する機能に加えて以下の機能をさらに有する。例えば、配信要求メッセージ受信部５３１は、監視システム３９からリレーノード変更メッセージを受信し、受信したリレーノード変更メッセージからユーザＩＤとリレーノードアドレスとを抽出する。
【０１３８】
更新通知要求部５３５は、実施例２で説明した更新通知要求部３３５が有する機能に加えて以下の機能をさらに有する。例えば、更新通知要求部５３５は、ユーザＩＤと位置情報とを格納した位置更新通知要求メッセージを生成し、生成した位置更新通知要求メッセージを変更後のアドレスへ送信する。
【０１３９】
（実施例３に係る代表ノードの構成）
次に、図２４を用いて、実施例３にかかる代表ノード６００ａの構成を説明する。なお、代表ノード６００ａとリレーノード６００ｂとリレーノード６００ｃとは同様の構成を有するので、ここでは代表ノード６００ａについてのみ説明する。図２４は、実施例３にかかる代表ノード６００ａの構成を示すブロック図である。実施例３に係る代表ノード６００ａは、インターフェース部２１０と記憶部２２０と制御部６３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図８及び図１６に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１４０】
制御部６３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部６３０は、下位ノードメッセージ受信部６３１と位置情報検索部２３２と位置情報要求部６３３と位置情報処理部４３４と下位ノードメッセージ送信部２３５とを有する。例えば、制御部６３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１４１】
下位ノードメッセージ受信部６３１は、実施例１で説明した下位ノードメッセージ受信部２３１が有する機能に加えて以下の機能をさらに有する。下位ノードメッセージ受信部６３１は、位置更新要求を下位ノードから受信し、受信した位置更新要求からユーザＩＤを抽出する。そして、下位ノードメッセージ受信部６３１は、問い合わせ元記憶テーブル２２１からユーザＩＤとアドレスとが一致するエントリを検索し、ユーザＩＤとアドレスとが一致するエントリを問い合わせ元記憶テーブル２２１から削除する。
【０１４２】
位置情報要求部６３３は、実施例２で説明した位置情報要求部４３３が有する機能に加えて以下の機能をさらに有する。位置情報要求部６３３は、ユーザＩＤをキーとして上位ノード記憶テーブル２２３を検索して上位ノードのアドレスを取得する。位置情報要求部６３３は、アドレスを取得した上位ノードに更新通知停止メッセージを送信する。
【０１４３】
［実施例３に係る中継システムによる処理の処理手順］
（実施例３に係る中継ノードによるリレーノード変更処理の処理手順）
図２５を用いて、実施例３に係る中継ノードによるリレーノード変更処理の処理手順を説明する。図２５は、実施例３に係る中継ノードによるリレーノード変更処理の処理手順を説明するフローチャートである。
【０１４４】
配信要求メッセージ受信部５３１は、監視システム３９からリレーノード変更メッセージを受信した場合（ステップＳ８０１、Ｙｅｓ）、受信したリレーノード変更メッセージからユーザＩＤとアドレスを抽出する（ステップＳ８０２）。続いて、位置情報検索部１３２は、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ８０３）。
【０１４５】
この結果、位置情報検索部１３２によって位置情報が登録されていると判定された場合（ステップＳ８０３、Ｙｅｓ）、更新通知要求部５３５は、変更後のアドレスに配信要求メッセージを送信する（ステップＳ８０４）。続いて、位置情報処理部３３６は、応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ８０５）。
【０１４６】
位置情報処理部３３６は、応答が「ＯＫ」ではないと判定した場合（ステップＳ８０５、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録し（ステップＳ８０６）、変更前のリレーノードのアドレスを取得する（ステップＳ８０７）。一方、位置情報処理部３３６は、応答が「ＯＫ」であると判定した場合（ステップＳ８０５、Ｙｅｓ）、変更前のリレーノードのアドレスを取得する（ステップＳ８０７）。
【０１４７】
続いて、更新通知要求部５３５は、変更前のリレーノードに位置更新通知停止メッセージを送信し（ステップＳ８０８）、上位ノード記憶テーブル１２２のユーザかつリレーノードに対応するアドレスを変更して（ステップＳ８０９）、処理を終了する。
【０１４８】
一方、位置情報検索部１３２によって位置情報が登録されていないと判定された場合（ステップＳ８０３、Ｎｏ）、更新通知要求部５３５は、上位ノード記憶テーブル１２２のユーザかつリレーノードに対応するアドレスを変更して（ステップＳ８０９）、処理を終了する。
【０１４９】
（実施例３に係る代表ノードによる位置更新通知停止メッセージ受信処理の処理手順）
図２６を用いて、実施例３に係る代表ノード６００ａによる位置更新通知停止メッセージ受信処理の処理手順を説明する。図２６は、実施例３に係る代表ノード６００ａによる位置更新通知停止メッセージ受信処理の処理手順を説明するフローチャートである。
【０１５０】
下位ノードメッセージ受信部６３１は、中継ノード５００ａ又は下位ノードから更新通知停止メッセージを受信した場合（ステップＳ９０１、Ｙｅｓ）、更新通知停止メッセージからユーザＩＤを抽出する（ステップＳ９０２）。続いて、下位ノードメッセージ受信部６３１は、問い合わせ元記憶テーブル２２１を検索し、アドレスを削除する（ステップＳ９０３）。そして、下位ノードメッセージ受信部６３１は、問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが存在するか否かを判定する（ステップＳ９０４）。
【０１５１】
下位ノードメッセージ受信部６３１によって問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが存在しないと判定された場合（ステップＳ９０４、Ｎｏ）、位置情報要求部６３３は、ステップＳ９０５の処理を実行する。すなわち、位置情報要求部６３３は、上位ノードに更新通知停止メッセージを送信する（ステップＳ９０５）。続いて、下位ノードメッセージ送信部２３５は、中継ノード５００ａ又は下位ノードに「ＯＫ」を応答して（ステップＳ９０６）、処理を終了する。
【０１５２】
下位ノードメッセージ受信部６３１によって問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが存在すると判定された場合（ステップＳ９０４、Ｙｅｓ）、下位ノードメッセージ送信部２３５は、ステップＳ９０６の処理を実行する。すなわち、下位ノードメッセージ送信部２３５は、中継ノード５００ａ又は下位ノードに「ＯＫ」を応答して（ステップＳ９０６）、処理を終了する。
【０１５３】
［実施例３の効果］
上述してきたように、本実施例３では、複数のリレーノードが存在するにもかかわらず、特定のリレーノードだけに中継ノードが接続されている場合に、監視システム３９は、中継ノード５００ａ及び５００ｂにリレーノード変更メッセージを送信する。したがって、本実施例３では、リレーノード６００ｂ及び６００ｃを有効に使用することが出来る。
【実施例４】
【０１５４】
ところで、中継システムにおいて、ある携帯端末から一定時間以上配信リクエストがない場合がある。かかる場合、中継システムは、携帯端末の位置情報を無駄に記憶することになる。そこで、実施例４では、中継システムにおいて、一定時間以上配信リクエストがない携帯端末が存在する場合に、この携帯端末の位置情報を削除し、上位のリレーノードに配信停止要求を送信する例について説明する。
【０１５５】
［実施例４にかかる中継システムの構成］
次に、実施例４にかかる中継システム４の構成を説明する。図２７は、実施例４にかかる中継システム４の構成を示す図である。実施例４にかかる中継システム４は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と中継制御サーバ群７０とを有する。なお、ここでは、図１に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１５６】
[実施例４に係る中継制御サーバ群の構成]
実施例４にかかる中継制御サーバ群７０は、サーバロードバランサー４１と中継ノード７００ａと中継ノード７００ｂと代表ノード４００ａとリレーノード４００ｂとリレーノード４００ｃとを有する。
【０１５７】
（実施例４にかかる中継ノードの構成）
次に、実施例４にかかる中継ノードの構成を説明する。なお、中継ノード７００ａと中継ノード７００ｂとは同様の構成を有するので、ここでは中継ノード７００ａについてのみ説明する。図２８は、実施例４にかかる中継ノード７００ａの構成を示すブロック図である。実施例４にかかる中継ノード７００ａは、インターフェース部１１０と、記憶部７２０と、制御部７３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図３及び図１５に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１５８】
記憶部７２０は、位置情報キャッシュテーブル７２１と上位ノード記憶テーブル１２２と振り分け先サーバ記憶テーブル１２３と動作設定記憶テーブル７２４とを有する。
【０１５９】
位置情報キャッシュテーブル７２１には、携帯端末１０の位置情報が格納される。図２９は、位置情報キャッシュテーブル７２１として格納される情報の一例を示す図である。例えば、位置情報キャッシュテーブル７２１には、図２９に示すように、「ユーザＩＤ」と「位置」と「参照時間」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子を示す。「位置」は、携帯端末１０の位置情報を示す。「参照時間」は、位置情報を参照した時刻を示す。具体的には、図２９の場合、ユーザＩＤが「Ａｌｉｃｅ」である携帯端末１０は、「ＡｒｅａＡ」に位置することを「１３：１０：１１」に参照したことを示す。また、図２９の場合、ユーザＩＤが「Ｂｏｂ」である携帯端末１０は、「ＡｒｅａＢ」に位置することを「１３：３１：２３」に参照したことを示す。
【０１６０】
動作設定記憶テーブル７２４には、位置情報キャッシュテーブル７２１に格納された情報を廃棄するか否かを判定する所定の設定時間が格納される。図３０は、例えば、動作設定記憶テーブル７２４には、図３０に示すように、「パラメータ」と「値」とが対応付けられて格納される。「パラメータ」は、予め設定された動作を示す。また、「値」は、所定の時間を示す。具体的には、図３０の場合、「１時間」以上配信要求がない携帯端末１０に対しては、キャッシュ廃棄時間を超えたと判定し、携帯端末１０の位置情報を位置情報キャッシュテーブル７２１から削除することを示す。
【０１６１】
制御部７３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部７３０は、配信要求メッセージ受信部１３１と位置情報検索部７３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４と更新通知要求部７３５と位置情報処理部３３６とを有する。また、制御部７３０は、所定の時間を経過した場合には、位置情報検索部７３２に通知する機能を持たせてもよい。例えば、制御部７３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１６２】
位置情報検索部７３２は、実施例１で説明した位置情報検索部１３２が有する機能に加えて以下の機能をさらに有する。位置情報検索部７３２は、予め設定された所定の時間を経過したことの通知を受けた場合に、位置情報キャッシュテーブル７２１を検索し、キャッシュ廃棄時間「１時間」を超えて配信要求メッセージを送信していない携帯端末１０が存在するか否かを判定する。
【０１６３】
位置情報検索部７３２が図２９及び図３０を「１４：２０：３４」に参照した場合を例に用いて説明する。位置情報検索部７３２は、ユーザＩＤ「Ａｌｉｃｅ」が前回の参照時刻から１時間以上経過していると判定する。すなわち、位置情報検索部７３２は、ユーザＩＤ「Ａｌｉｃｅ」がキャッシュ廃棄時間「１時間」を超えたと判定する。一方、位置情報検索部７３２は、ユーザＩＤ「Ｂｏｂ」が前回の参照時刻から１時間以上経過していないと判定する。すなわち、位置情報検索部７３２は、ユーザＩＤ「Ｂｏｂ」がキャッシュ廃棄時間を超えていないと判定する。
【０１６４】
また、位置情報検索部７３２は、キャッシュ廃棄時間を超えた携帯端末１０のエントリを削除する。例えば、位置情報検索部７３２は、図２９に示したユーザＩＤ「Ａｌｉｃｅ」のエントリを位置情報キャッシュテーブル７２１から削除する。位置情報検索部７３２は、位置情報キャッシュテーブル７２１からキャッシュ廃棄時間を超えた携帯端末１０のエントリ削除終了後に、更新通知要求部７３５へ通知する。
【０１６５】
更新通知要求部７３５は、実施例２で説明した更新通知要求部３３５が有する機能に加えて以下の機能をさらに有する。更新通知要求部７３５は、携帯端末１０がキャッシュ廃棄時間を超えた場合、この携帯端末１０の位置情報を通知する上位ノードに対して更新通知停止メッセージを送信する。
【０１６６】
例えば、更新通知要求部７３５は、位置情報検索部７３２から携帯端末１０がキャッシュ廃棄時間を超えたと通知を受付けると、ユーザＩＤをキーとして上位ノード記憶テーブル１２２を検索し、上位ノードのアドレスを取得する。そして、更新通知要求部７３５は、取得したアドレスの上位ノードにユーザＩＤを格納した更新通知停止メッセージを送信する。
【０１６７】
具体的には、更新通知要求部７３５は、位置情報検索部７３２からユーザＩＤ「Ａｌｉｃｅ」がキャッシュ廃棄時間を超えたと通知を受付けると、図５に示した上位ノード記憶テーブル１２２を検索する。そして、更新通知要求部７３５は、ユーザＩＤ「Ａｌｉｃｅ」を格納した更新通知停止メッセージを検索したアドレス「１０．１１」へ送信する。
【０１６８】
［実施例４にかかる中継システムによる処理の処理手順］
（実施例４にかかる中継ノードによる配信要求メッセージ転送処理の処理手順）
次に、図３１を用いて、実施例４にかかる中継ノード７００ａによる配信要求メッセージ転送処理の処理手順を説明する。図３１は、実施例４にかかる中継ノード７００ａによる配信要求メッセージ転送処理の処理手順を説明するフローチャートである。
【０１６９】
配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信した場合（ステップＳ１００１、Ｙｅｓ）、配信要求メッセージからユーザＩＤを抽出する（ステップＳ１００２）。続いて、位置情報検索部７３２は、配信要求メッセージ受信部１３１が抽出したユーザＩＤをキーに位置情報キャッシュテーブル７２１を検索し、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ１００３）。
【０１７０】
位置情報検索部７３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ１００３、Ｎｏ）、代表ノード問い合わせ部１３３は、代表ノード４００ａに携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ１００４）。続いて、更新通知要求部７３５は、リレーノードに位置情報更新通知を登録する（ステップＳ１００５）。そして、位置情報処理部３３６は、リレーノードから応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ１００６）。
【０１７１】
位置情報処理部３３６は、受信した応答が「ＯＫ」ではないと判定した場合（ステップＳ１００６、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録する（ステップＳ１００７）。続いて、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１００８）。
【０１７２】
位置情報処理部３３６によって受信した応答が「ＯＫ」であると判定された場合（ステップＳ１００６、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１００８）。
【０１７３】
位置情報検索部７３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ１００３、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１００８）。
【０１７４】
配信要求メッセージ転送部１３４が配信要求メッセージを送信した後に、位置情報検索部７３２は、位置情報キャッシュテーブル７２１の参照時刻を現在の時刻に更新し（ステップＳ１００９）、処理を終了する。
【０１７５】
（実施例４にかかる中継ノードによる位置情報廃棄判定処理の処理手順）
次に、図３２を用いて、実施例４にかかる中継ノード７００ａによる位置情報廃棄判定処理の処理手順を説明する。図３２は、実施例４にかかる中継ノード７００ａによる位置情報廃棄判定処理の処理手順を説明するフローチャートである。
【０１７６】
位置情報廃棄判定時間に達した場合（ステップＳ１１０１、Ｙｅｓ）、位置情報検索部７３２は、キャッシュ廃棄時間を超えた携帯端末１０が存在するか否かを判定する（ステップＳ１１０２）。位置情報検索部７３２は、キャッシュ廃棄時間を超えた携帯端末１０が存在すると判定した場合（ステップＳ１１０２、Ｙｅｓ）、キャッシュ廃棄時間を超えた携帯端末１０のエントリを削除する（ステップＳ１１０３）。
【０１７７】
続いて更新通知要求部７３５は、更新通知停止メッセージを送信して（ステップＳ１１０４）、処理を終了する。一方、位置情報検索部７３２は、キャッシュ廃棄時間を超えた携帯端末１０が存在しないと判定した場合（ステップＳ１１０２、Ｎｏ）、処理を終了する。
【０１７８】
［実施例４の効果］
上述してきたように、本実施例４では、配信要求メッセージ転送部１３４が配信要求メッセージを送信した後に、位置情報検索部７３２は、位置情報キャッシュテーブル７２１の参照時刻を現在の時刻に更新する。また、本実施例４では、所定の時間ごとに、所定の時間以上配信要求メッセージを送信していない携帯端末１０の位置情報を位置情報キャッシュテーブル７２１から検索する。そして、本実施例４では、所定の時間以上配信要求メッセージを送信していない携帯端末１０の位置情報を位置情報キャッシュテーブル７２１から廃棄することでメモリを有効に使用することができる。
【実施例５】
【０１７９】
中継システムにおいて、リレーノードに障害が生じる場合がある。かかる場合、中継システムは、携帯端末からの配信要求を配信サーバへ転送することができない。そこで、中継システムにおいて、メインのリレーノードとサブのリレーノードとを設定し、メインのリレーノードで障害が生じた場合に、サブのリレーノードに切り替える例について説明する。
【０１８０】
［実施例５にかかる中継システムの構成］
次に、実施例５にかかる中継システム５の構成を説明する。図３３は、実施例５にかかる中継システム５の構成を示す図である。実施例５にかかる中継システム５は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と中継制御サーバ群８０とを有する。なお、ここでは、図１に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１８１】
［実施例５に係る中継制御サーバ群の構成］
実施例５にかかる中継制御サーバ群８０は、サーバロードバランサー４１と中継ノード９００ａと中継ノード９００ｂと代表ノード１０００ａとリレーノード１０００ｂとリレーノード１０００ｃとを有する。
【０１８２】
（実施例５に係る中継ノードの構成）
まず、実施例５に係る中継ノードの構成を説明する。なお、中継ノード９００ａと中継ノード９００ｂとは同様の構成を有するので、ここでは中継ノード９００ａについてのみ説明する。図３４は、実施例５にかかる中継ノード９００ａの構成を示すブロック図である。実施例５にかかる中継ノード９００ａは、インターフェース部１１０と、記憶部９２０と、制御部９３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図３及び図１５に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１８３】
記憶部９２０は、例えば、半導体メモリ素子、又はハードディスクなどの記憶装置であり、位置情報キャッシュテーブル１２１と上位ノード記憶テーブル９２２と振り分け先サーバ記憶テーブル１２３とを有する。
【０１８４】
上位ノード記憶テーブル９２２には、中継ノード９００ａと接続された上位のノード情報が格納される。図３５は、上位ノード記憶テーブル９２２として格納される情報の一例を示す図である。例えば、図３５に示すように、上位ノード記憶テーブル９２２には、「ユーザＩＤ」と「ノード種別」と「系」と「アドレス」とを対応付けた情報が格納される。「ユーザＩＤ」は、携帯端末１０を一意に識別する識別子である。「ノード種別」は、中継ノード９００ａと接続された上位ノードの種別が代表ノードであるか、リレーノードであるかを示す。「系」は、中継ノード９００ａと接続されたリレーノードがメインであるかサブであるかを示す。「アドレス」は中継ノード９００ａと接続された上位ノードのアドレスを示す。
【０１８５】
具体的には、図３５の場合、ユーザＩＤが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０の代表ノード１０００ａのアドレスが「１０．１０」であることを示す情報が格納される。また、ユーザＩＤが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０のメインのリレーノード１０００ｂのアドレスが「１０．１１」であることを示す情報が格納される。また、ユーザＩＤが「Ａｌｉｃｅ」及び「Ｔｏｍ」である携帯端末１０のサブのリレーノード１０００ｃのアドレスが「１０．４０」であることを示す情報が格納される。
【０１８６】
制御部９３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部９３０は、配信要求メッセージ受信部１３１と位置情報検索部１３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４と更新通知要求部９３５と位置情報処理部３３６とを有する。例えば、制御部９３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１８７】
更新通知要求部９３５は、実施例２で説明した更新通知要求部３３５が有する機能に加えて以下の機能をさらに有する。更新通知要求部９３５は、配信要求メッセージ転送部１３４が配信要求メッセージを転送した後に、サブのリレーノード１０００ｃに位置情報更新通知の登録を要求する。
【０１８８】
（実施例５に係る代表ノードの構成）
次に、実施例５に係る代表ノード１０００ａの構成を説明する。なお、代表ノード１０００ａとリレーノード１０００ｂ及び１０００ｃとは同様の構成を有するので、ここでは代表ノード１０００ａについてのみ説明する。図３６は、実施例５にかかる代表ノード１０００ａの構成を示すブロック図である。実施例５にかかる代表ノード１０００ａは、インターフェース部２１０と、記憶部２２０と、制御部１０３０とを有する。また、なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図８及び図１６に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０１８９】
制御部１０３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部１０３０は、下位ノードメッセージ受信部６３１と位置情報検索部２３２と位置情報要求部１０３３と位置情報処理部４３４と下位ノードメッセージ送信部２３５とを有する。例えば、制御部１０３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０１９０】
位置情報要求部１０３３は、実施例２で説明した位置情報要求部４３３が有する機能に加えて以下の機能をさらに有する。位置情報要求部１０３３は、携帯端末１０の位置情報が更新された場合に上位ノードから通知を受付ける要求をサブのリレーノードに送信する。例えば、位置情報要求部１０３３は、ユーザＩＤをキーにして上位ノード記憶テーブル２２３を検索し、サブのリレーノードのアドレスを取得する。そして、位置情報要求部１０３３は、アドレスを取得したサブのリレーノードへユーザＩＤと位置情報とを格納した更新通知要求を送信する。
【０１９１】
［実施例５に係る中継システムによる処理の処理手順］
（実施例５に係る中継ノードによる配信要求メッセージ転送処理の処理手順）
次に、図３７を用いて、実施例５に係る中継ノード９００ａによる配信要求メッセージ転送処理の処理手順を説明する。図３７は、実施例５に係る中継ノード９００ａによる配信要求メッセージ転送処理の処理手順を説明するフローチャートである。
【０１９２】
配信要求メッセージ受信部１３１は、携帯端末１０から配信要求メッセージを受信した場合（ステップＳ１２０１、Ｙｅｓ）、配信要求メッセージからユーザＩＤを抽出する（ステップＳ１２０２）。続いて、位置情報検索部１３２は、配信要求メッセージ受信部１３１が抽出したユーザＩＤをキーに位置情報キャッシュテーブル１２１を検索し、携帯端末１０の位置情報が登録されているか否かを判定する（ステップＳ１２０３）。
【０１９３】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていないと判定された場合（ステップＳ１２０３、Ｎｏ）、代表ノード問い合わせ部１３３は、代表ノードに携帯端末１０の位置情報を問い合わせ、取得した位置情報を登録する（ステップＳ１２０４）。続いて、更新通知要求部９３５は、メインのリレーノードに位置情報更新通知を登録する（ステップＳ１２０５）。そして、位置情報処理部３３６は、メインのリレーノードから応答を受信し、受信した応答が「ＯＫ」であるか否かを判定する（ステップＳ１２０６）。
【０１９４】
位置情報処理部３３６は、受信した応答が「ＯＫ」ではないと判定した場合（ステップＳ１２０６、Ｎｏ）、「ｕｐｄａｔｅ」応答に格納されている位置情報を登録する（ステップＳ１２０７）。続いて、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１２０８）。
【０１９５】
位置情報処理部３３６によって受信した応答が「ＯＫ」であると判定された場合（ステップＳ１２０６、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１２０８）。
【０１９６】
位置情報検索部１３２によって携帯端末１０の位置情報が登録されていると判定された場合（ステップＳ１２０３、Ｙｅｓ）、配信要求メッセージ転送部１３４は、配信サーバ２０のアドレスを検索し、配信要求メッセージを転送する（ステップＳ１２０８）。
【０１９７】
更新通知要求部９３５は、サブのリレーノードに位置情報更新通知を登録し（ステップＳ１２０９）、処理を終了する。
【０１９８】
［実施例５の効果］
上述してきたように、本実施例５では、リレーノード１０００ｂ及び１０００ｃを冗長化することで、リレーノード１０００ｂ又は１０００ｃのいずれかに障害が生じても、中継ノード９００ａ及び９００ｂは、短時間で位置情報を取得することができる。
【実施例６】
【０１９９】
中継システムにおいて、配信サーバは、例えば、特定サービスの契約者である携帯端末に、アプリケーションを配信する。しかし、携帯端末の利用者が契約を解除した場合、中継システムは、携帯端末へアプリケーションを配信しないように、携帯端末の位置情報を削除した方がよい。そこで、中継装置において、管理者からの指示により、位置管理サーバから代表ノードへ携帯端末の位置情報を位置情報キャッシュテーブルから削除する通知である「ユーザ削除メッセージ」を送信する例について説明する。
【０２００】
［実施例６にかかる中継システムの構成］
次に、実施例６にかかる中継システム６の構成を説明する。図３８は、実施例６にかかる中継システム６の構成を示す図である。実施例６にかかる中継システム６は、携帯端末１０と配信サーバ２０と位置管理サーバ３０と中継制御サーバ群９０とを有する。なお、ここでは、図１に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０２０１】
［実施例６に係る中継制御サーバ群の構成］
実施例６にかかる中継制御サーバ群９０は、サーバロードバランサー４１と中継ノード１１００ａと中継ノード１１００ｂと代表ノード１２００ａとリレーノード１２００ｂとリレーノード１２００ｃとを有する。
【０２０２】
（実施例６に係る中継ノードの構成）
まず、実施例６に係る中継ノードの構成を説明する。なお、中継ノード１１００ａと中継ノード１１００ｂとは同様の構成を有するので、ここでは中継ノード１１００ａについてのみ説明する。図３９は、実施例６にかかる中継ノード１１００ａの構成を示すブロック図である。実施例６にかかる中継ノード１１００ａは、インターフェース部１１０と、記憶部１２０と、制御部１１３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図３及び図１５に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０２０３】
制御部１１３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部１１３０は、配信要求メッセージ受信部１３１と位置情報検索部１３２と代表ノード問い合わせ部１３３と配信要求メッセージ転送部１３４と更新通知要求部３３５と位置情報処理部１１３６とを有する。例えば、制御部１１３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０２０４】
位置情報処理部１１３６は、経路制御ノードであるリレーノード１２００ｂからユーザ削除メッセージを受信した場合、ユーザ削除メッセージからユーザＩＤを抽出する。そして、位置情報処理部１１３６は、位置情報キャッシュテーブル１２１、上位ノード記憶テーブル１２２からユーザのエントリを削除し、処理を終了する。
【０２０５】
（実施例６に係る代表ノードの構成）
次に、実施例６に係る代表ノード１２００ａの構成を説明する。なお、代表ノード１２００ａとリレーノード１２００ｂ及び１２００ｃとは同様の構成を有するので、ここでは代表ノード１２００ａについてのみ説明する。図４０は、実施例６にかかる代表ノード１２００ａの構成を示すブロック図である。実施例６にかかる代表ノード１２００ａは、インターフェース部２１０と、記憶部２２０と、制御部１２３０とを有する。なお、これらの機能以外にも、キーボードやマウスなどの入力部や、モニタやスピーカーなどの出力部を有していてもよい。なお、ここでは、図８に示した各部と同様の役割を果たす機能部については、同一符号を付すことにしてその詳細な説明を省略する。
【０２０６】
制御部１２３０は、制御プログラム、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有する。制御部１２３０は、下位ノードメッセージ受信部６３１と位置情報検索部２３２と位置情報要求部１２３３と位置情報処理部１２３４と下位ノードメッセージ送信部１２３５とを有する。例えば、制御部１２３０は、ＡＳＩＣやＦＰＧＡなどの集積回路、又は、ＣＰＵやＭＰＵなどの電子回路である。
【０２０７】
位置情報要求部１２３３は、実施例２で説明した位置情報要求部４３３が有する機能に加えて以下の機能をさらに有する。位置情報要求部１２３３は、位置情報処理部１２３４が位置管理サーバ３０からユーザ削除メッセージを受信した場合、更新通知停止メッセージを位置管理サーバ３０に送信する。
【０２０８】
位置情報処理部１２３４は、実施例２で説明した位置情報処理部４３４が有する機能に加えて以下の機能をさらに有する。位置情報処理部１２３４は、位置管理サーバ３０からユーザ削除メッセージを受信した場合、ユーザ削除メッセージからユーザＩＤを抽出する。例えば、位置情報処理部１２３４は、ユーザＩＤが一致するエントリが存在すると判定した場合には、下位ノードメッセージ送信部１２３５に通知する。また、位置情報処理部１２３４は、位置情報キャッシュテーブル２２２、問い合わせ元記憶テーブル２２１、上位ノード記憶テーブル２２３から該当する携帯端末のエントリを削除する。また、位置情報処理部１２３４は、位置管理サーバ３０からユーザ削除メッセージを受信した場合、位置情報要求部１２３３に通知する。
【０２０９】
下位ノードメッセージ送信部１２３５は、実施例１で説明した下位ノードメッセージ送信部２３５が有する機能に加えて以下の機能をさらに有する。下位ノードメッセージ送信部１２３５は、位置情報処理部１２３４から通知を受付けた場合、問い合わせ元ノードにユーザ削除メッセージを送信する。
【０２１０】
[実施例６に係る代表ノードによる携帯端末情報削除処理の処理手順]
次に、図４１を用いて、実施例６に係る代表ノード１２００ａによる携帯端末情報削除処理の処理手順を説明する。図４１は、実施例６に係る代表ノード１２００ａによる携帯端末情報削除処理の処理手順を説明するフローチャートである。
【０２１１】
位置情報処理部１２３４は、上位ノードからユーザ削除メッセージを受信した場合（ステップＳ１３０１、Ｙｅｓ）、ユーザ削除メッセージからユーザＩＤを抽出する（ステップＳ１３０２）。続いて、位置情報要求部１２３３は、上位ノードが位置管理サーバ３０であった場合、更新通知停止メッセージを送信する（ステップＳ１３０３）。
【０２１２】
位置情報処理部１２３４は、問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが登録されているか否かを判定する（ステップＳ１３０４）。この結果、位置情報処理部１２３４によって問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが登録されていると判定された場合（ステップＳ１３０４、Ｙｅｓ）、下位ノードメッセージ送信部１２３５は、ステップＳ１３０５の処理を実行する。すなわち、下位ノードメッセージ送信部１２３５は、問い合わせ元ノードにユーザ削除メッセージを送信する（ステップＳ１３０５）。続いて、位置情報処理部１２３４は、位置情報キャッシュテーブル２２２、問い合わせ元記憶テーブル２２１、上位ノード記憶テーブル２２３からユーザのエントリを削除し（ステップＳ１３０６）、処理を終了する。
【０２１３】
一方、位置情報処理部１２３４は、問い合わせ元記憶テーブル２２１にユーザＩＤが一致するエントリが登録されていないと判定した場合（ステップＳ１３０４、Ｎｏ）、ステップＳ１３０６の処理を実行する。すなわち、位置情報処理部１２３４は、位置情報キャッシュテーブル２２２、問い合わせ元記憶テーブル２２１、上位ノード記憶テーブル２２３からユーザのエントリを削除し（ステップＳ１３０６）、処理を終了する。
【０２１４】
[実施例６に係る中継ノードによる携帯端末情報削除処理の処理手順]
次に、図４２を用いて、実施例６に係る中継ノード１１００ａによる携帯端末情報削除処理の処理手順を説明する。図４２は、実施例６に係る中継ノード１１００ａによる携帯端末情報削除処理の処理手順を説明するフローチャートである。
【０２１５】
位置情報処理部１１３６は、経路制御ノードからユーザ削除メッセージを受信した場合（ステップＳ１４０１、Ｙｅｓ）、ユーザ削除メッセージからユーザＩＤを抽出する（ステップＳ１４０２）。そして、位置情報処理部１１３６は、位置情報キャッシュテーブル１２１、上位ノード記憶テーブル１２２からユーザのエントリを削除し（ステップＳ１４０３）、処理を終了する。
【０２１６】
[実施例６の効果]
上述してきたように、本実施例６では、サービス提供者からの通知を受付けた位置管理サーバ３０が、サービスを解約した携帯端末の位置情報を速やかに消去するように通知するので、位置情報キャッシュテーブルを有効に使用することができる。
【実施例７】
【０２１７】
ところで、本願の開示する中継システムは、上述した実施例以外にも、種々の異なる形態にて実施されてよい。そこで、実施例７では、本願の開示する中継システムの他の実施例について説明する。
【０２１８】
（システム構成等）
本実施例において説明した各処理のうち自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文章中や図面中で示した処理手順、制御手順、具体的名称については、特記する場合を除いて任意に変更することができる。また、図示した記憶部が格納する情報は一例に過ぎず、必ずしも図示のごとく情報が格納される必要はない。
【０２１９】
また、図示した各構成部は、機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。例えば、中継ノード３００ａにおいては、更新通知要求部３３５と位置情報処理部３３６とは統合されてもよい。また、実施例６では、位置管理サーバ３０が代表ノード１２００ａへ「ユーザ削除メッセージ」を送信するものとして説明したがこれに限定されるものではない。例えば、監視システム３９が代表ノード１２００ａへ「ユーザ削除メッセージ」を送信してもよい。
【０２２０】
さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０２２１】
（プログラム）
ところで、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
【０２２２】
図４３は、中継サーバ制御プログラムを実行するコンピュータシステム２０００を示す図である。図４３に示すように、コンピュータシステム２０００は、ＲＡＭ２０１０と、ＣＰＵ２０２０とＲＯＭ２０３０と、入力装置２０４０と出力装置２０５０と媒体読取装置２０６０とネットワークインターフェース２０７０とを有する。ここで、ＲＯＭ２０３０には、上記実施例と同様の機能を発揮するプログラムを予め記憶されている。つまり、図４３に示すように、ＲＯＭ２０３０には、配信要求受信プログラム２０３１と代表ノード情報取得プログラム２０３２と位置情報取得プログラム２０３３と配信要求転送プログラム２０３４とが予め記憶されている。
【０２２３】
そして、ＣＰＵ２０２０は、配信要求受信プログラム２０３１と代表ノード情報取得プログラム２０３２と位置情報取得プログラム２０３３と配信要求転送プログラム２０３４とを読み出してＲＡＭ２０１０に展開する。そして、ＣＰＵ２０２０は、これらのプログラム２０３１〜２０３４を読み出して実行することで、図４３に示すように、各プロセスとなる。つまり、プログラム２０３１〜２０３４は、配信要求受信プロセス２０２１、代表ノード情報取得プロセス２０２２、位置情報取得プロセス２０２３、配信要求転送プロセス２０２４となる。なお、配信要求受信プロセス２０２１は、図１５に示した配信要求メッセージ受信部１３１に対応し、代表ノード情報取得プロセス２０２２は、位置情報検索部１３２に対応する。同様に、位置情報取得プロセス２０２３は、代表ノード問い合わせ部１３３に対応し、配信要求転送プロセス２０２４は、配信要求メッセージ転送部１３４に対応する。
【０２２４】
図４４は、リレーノード制御プログラムを実行するコンピュータシステム３０００を示す図である。図４４に示すように、コンピュータシステム３０００は、ＲＡＭ３０１０と、ＣＰＵ３０２０とＲＯＭ３０３０と、入力装置３０４０と出力装置３０５０と媒体読取装置３０６０とネットワークインターフェース３０７０とを有する。ここで、ＲＯＭ３０３０には、上記実施例と同様の機能を発揮するプログラムを予め記憶されている。つまり、図４４に示すように、ＲＯＭ３０３０には、第一取得プログラム３０３１と第二取得プログラム３０３２と情報比較プログラム３０３３と更新指示プログラム３０３４とが予め記憶されている。
【０２２５】
そして、ＣＰＵ３０２０は、第一取得プログラム３０３１と第二取得プログラム３０３２と情報比較プログラム３０３３と更新指示プログラム３０３４とを読み出してＲＡＭ３０１０に展開する。そして、ＣＰＵ３０２０は、これらのプログラム３０３１〜３０３４を読み出して実行することで、図４４に示すように、各プロセスとなる。つまり、プログラム３０３１〜３０３４は、第一取得プロセス３０２１、第二取得プロセス３０２２、情報比較プロセス３０２３、更新指示プロセス３０２４となる。なお、第一取得プロセス３０２１と第二取得プロセス３０２２と情報比較プロセス３０２３とは、図１６に示した位置情報処理部４３４に対応し、更新指示プロセス３０２４は、下位ノードメッセージ送信部２３５に対応する。
【０２２６】
ところで、上記したプログラム２０３１〜２０３４は、必ずしもＲＯＭ２０３０に記憶させておく必要はない。また、上記したプログラム３０３１〜３０３４も、必ずしもＲＯＭ３０３０に記憶させておく必要はない。例えば、コンピュータシステム２０００又は３０００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータシステム２０００の内外に備えられるハードディスクドライブ（ＨＤＤ）などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）などを介してコンピュータシステム２０００又は３０００に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータシステム２０００又は３０００がこれらからプログラムを読み出して実行するようにしてもよい。
【０２２７】
すなわち、このプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記憶されるものである。そして、コンピュータシステム２０００又は３０００は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム２０００又は３０００によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【０２２８】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０２２９】
（付記１）移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信し、
前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得し、
前記代表装置へ前記移動端末の位置情報を問い合わせる通信を中継するリレー装置に、前記代表装置から取得された前記移動端末の位置情報を送信し、
前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送する、
処理を中継サーバ装置に実行させることを特徴とする制御プログラム。
【０２３０】
（付記２）過去に取得した移動端末の位置情報を記憶部に格納し、
前記配信要求が受信された場合に、前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されているか否かを判定することを情報処理装置に実行させ、
前記移動端末の位置情報を取得する処理は、前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されていないと判定された場合に、前記代表装置に問い合わせる処理を中継サーバ装置に実行させることを特徴とする付記１に記載の制御プログラム。
【０２３１】
（付記３）前記記憶部に位置情報が格納される移動端末から、前記配信要求を所定期間受信しなかった場合には、当該移動端末の位置情報を前記記憶部から削除する処理を中継サーバ装置に実行させることを特徴とする付記２に記載の制御プログラム。
【０２３２】
（付記４）前記リレー装置が他のリレー装置に変更された場合には、変更前のリレー装置に対して前記移動端末の位置情報の配信停止を指示し、変更後のリレー装置に対して前記移動端末の位置情報の配信を要求する処理を中継サーバ装置に実行させることを特徴とする付記１〜３のいずれか１つに記載の制御プログラム。
【０２３３】
（付記５）移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を受信し、
アプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信する中継サーバ装置から、前記移動端末の位置情報を受信し、
前記代表装置から受信した位置情報と前記中継サーバ装置から受信した位置情報とを比較し、
比較した結果、前記代表装置から受信した位置情報の方が新しい情報である場合に、前記代表装置から受信した位置情報を前記中継サーバ装置に送信し、前記移動端末の位置情報の更新を指示する
処理をリレー装置に実行させることを特徴とする制御プログラム。
【０２３４】
（付記６）移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信する配信要求受信部と、
前記配信要求受信部によって前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得する位置情報取得部と、
前記代表装置へ前記移動端末の位置情報を問い合わせる通信を中継するリレー装置に、前記位置情報取得部によって代表装置から取得された前記移動端末の位置情報を送信する位置情報送信部と、
前記位置情報送信部によって、前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送する配信要求転送部と
を有することを特徴とする中継サーバ装置。
【０２３５】
（付記７）過去に取得した移動端末の位置情報を記憶する記憶部と、
前記配信要求受信部によって前記配信要求が受信された場合に、前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されているか否かを判定する判定部とを有し、
前記位置情報取得部は、前記判定部によって前記配信要求を送信した移動端末の位置情報が前記記憶部に記憶されていないと判定された場合に、前記代表装置に問い合わせることを特徴とする付記６に記載の中継サーバ装置。
【０２３６】
（付記８）前記判定部は、前記記憶部に位置情報が記憶される移動端末から、前記配信要求を所定期間受信しなかった場合には、当該移動端末の位置情報を前記記憶部から削除することを特徴とする付記７に記載の中継サーバ装置。
【０２３７】
（付記９）前記位置情報送信部は、自装置と接続されるリレー装置が他のリレー装置に変更された場合には、変更前のリレー装置に対して前記移動端末の位置情報の配信停止を指示し、
前記配信要求転送部は、変更後のリレー装置に対して前記移動端末の位置情報の配信を要求することを特徴とする付記６〜８のいずれか１つに記載の中継サーバ装置。
【０２３８】
（付記１０）移動端末の位置情報を保持する位置管理サーバに接続される代表装置から送信された、前記移動端末の位置情報を受信する第１受信部と、
アプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信する中継サーバ装置から、前記移動端末の位置情報を受信する第２受信部と、
前記第１受信部によって受信した位置情報と前記第２受信部によって受信した位置情報とを比較する情報比較部と、
前記情報比較部によって前記第１受信部によって受信した位置情報の方が新しい情報と判定された場合に、前記第１受信部によって受信した位置情報を前記中継サーバ装置に送信し、前記移動端末の位置情報の更新を指示する更新指示部と
を有することを特徴とするリレー装置。
【０２３９】
（付記１１）移動端末の位置情報を保持する位置管理サーバに接続される代表装置と、前記移動端末と接続される中継サーバ装置と、前記中継サーバ装置と前記代表装置との間に位置するリレー装置とを有するシステムに適した中継制御方法であって、
前記中継サーバ装置が、
前記移動端末にアプリケーションを提供する配信サーバ装置への配信要求を前記移動端末から受信するステップと、
前記配信要求が受信された場合に、前記移動端末の位置情報を保持する位置管理サーバに接続される代表装置から前記移動端末の位置情報を取得するステップと、
前記リレー装置に、取得された前記移動端末の位置情報を送信するステップと、
前記移動端末の位置情報を前記リレー装置から受信した場合には、前記代表装置から取得した位置情報を前記リレー装置から受信した位置情報で更新し、更新した位置情報に基づいて特定される配信サーバ装置に、前記受信された配信要求を転送するステップとを含み、
前記リレー装置が、
前記代表装置から前記移動端末の位置情報を受信するステップと、
前記中継サーバ装置から、前記移動端末の位置情報を受信するステップと、
前記代表装置から受信した位置情報と前記中継サーバ装置から受信した位置情報とを比較するステップと、
比較した結果、前記代表装置から受信した位置情報の方が新しい情報である場合に、前記代表装置から受信した位置情報を前記中継サーバ装置に送信し、前記移動端末の位置情報の更新を指示するステップと
を含んだことを特徴とする中継制御方法。
【符号の説明】
【０２４０】
１〜６  中継システム
１０  携帯端末
２０  配信サーバ
３０  位置管理サーバ
３１  インターフェース部
３２  記憶部
３２ａ  位置情報キャッシュテーブル
３２ｂ  問い合わせ元記憶テーブル
３３  制御部
３３ａ  受信部
３３ｂ  位置情報更新部
３３ｃ  位置情報検索部
３３ｄ  送信部
３９  監視システム
４０、５０、６０、７０、８０、９０  中継制御サーバ群
４１  サーバロードバランサー
１００ａ、１００ｂ  中継ノード
１１０  インターフェース部
１２０  記憶部
１２１  位置情報キャッシュテーブル
１２２  上位ノード記憶テーブル
１２３  振り分け先サーバ記憶テーブル
１３０  制御部
１３１  配信要求メッセージ受信部
１３２  位置情報検索部
１３３  代表ノード問い合わせ部
１３４  配信要求メッセージ転送部
２００ａ  代表ノード
２００ｂ、２００ｃ  リレーノード
２１０  インターフェース部
２２０  記憶部
２２１  問い合わせ元記憶テーブル
２２２  位置情報キャッシュテーブル
２２３  上位ノード記憶テーブル
２３０  制御部
２３１  下位ノードメッセージ受信部
２３２  位置情報検索部
２３３  位置情報要求部
２３４  位置情報処理部
２３５  下位ノードメッセージ送信部
３００ａ、３００ｂ  中継ノード
３３０  制御部
３３５  更新通知要求部
３３６  位置情報処理部
４００ａ  代表ノード
４００ｂ、４００ｃ  リレーノード
４３０  制御部
４３３  位置情報要求部
４３４  位置情報処理部
５００ａ、５００ｂ  中継ノード
５３０  制御部
５３１  配信要求メッセージ受信部
５３５  更新通知要求部
６００ａ  代表ノード
６００ｂ、６００ｃ  リレーノード
６３０  制御部
６３１  下位ノードメッセージ受信部
６３３  位置情報要求部
７００ａ、７００ｂ  中継ノード
７２０  記憶部
７２１  位置情報キャッシュテーブル
７２４  動作設定記憶テーブル
７３０  制御部
７３２  位置情報検索部
７３５  更新通知要求部
９００ａ、９００ｂ  中継ノード
９２０  記憶部
９２２  上位ノード記憶テーブル
９３０  制御部
９３５  更新通知要求部
１０００ａ  代表ノード
１０００ｂ、１０００ｃ  リレーノード
１０３０  制御部
１０３３  位置情報要求部
１１００ａ、１１００ｂ  中継ノード
１１３０  制御部
１１３６  位置情報処理部
１２００ａ  代表ノード
１２００ｂ、１２００ｃ  リレーノード
１２３０  制御部
１２３３  位置情報要求部
１２３４  位置情報処理部
１２３５  下位ノードメッセージ送信部
２０００  コンピュータシステム
２０１０  ＲＡＭ
２０２０  ＣＰＵ
２０２１  配信要求プロセス
２０２２  代表ノード情報取得プロセス
２０２３  位置情報取得プロセス
２０２４  配信要求転送プロセス
２０３０  ＲＯＭ
２０３１  配信要求プログラム
２０３２  代表ノード情報取得プログラム
２０３３  位置情報取得プログラム
２０３４  配信要求転送プログラム
２０４０  入力装置
２０５０  出力装置
２０６０  媒体読取装置
２０７０  ネットワークインターフェース
３０００  コンピュータシステム
３０１０  ＲＡＭ
３０２０  ＣＰＵ
３０２１  第一取得プロセス
３０２２  第二取得プロセス
３０２３  情報比較プロセス
３０２４  更新指示プロセス
３０３０  ＲＯＭ
３０３１  第一取得プログラム
３０３２  第二取得プログラム
３０３３  情報比較プログラム
３０３４  更新指示プログラム
３０４０  入力装置
３０５０  出力装置
３０６０  媒体読取装置
３０７０  ネットワークインターフェース
【図１】
0005488321.tif 000002
【図２】
0005488321.tif 000003
【図３】
0005488321.tif 000004
【図４】
0005488321.tif 000005
【図５】
0005488321.tif 000006
【図６】
0005488321.tif 000007
【図７】
0005488321.tif 000008
【図８】
0005488321.tif 000009
【図９】
0005488321.tif 000010
【図１０】
0005488321.tif 000011
【図１１】
0005488321.tif 000012
【図１２】
0005488321.tif 000013
【図１３】
0005488321.tif 000014
【図１４】
0005488321.tif 000015
【図１５】
0005488321.tif 000016
【図１６】
0005488321.tif 000017
【図１７】
0005488321.tif 000018
【図１８】
0005488321.tif 000019
【図１９】
0005488321.tif 000020
【図２０】
0005488321.tif 000021
【図２１】
0005488321.tif 000022
【図２２】
0005488321.tif 000023
【図２３】
0005488321.tif 000024
【図２４】
0005488321.tif 000025
【図２５】
0005488321.tif 000026
【図２６】
0005488321.tif 000027
【図２７】
0005488321.tif 000028
【図２８】
0005488321.tif 000029
【図２９】
0005488321.tif 000030
【図３０】
0005488321.tif 000031
【図３１】
0005488321.tif 000032
【図３２】
0005488321.tif 000033
【図３３】
0005488321.tif 000034
【図３４】
0005488321.tif 000035
【図３５】
0005488321.tif 000036
【図３６】
0005488321.tif 000037
【図３７】
0005488321.tif 000038
【図３８】
0005488321.tif 000039
【図３９】
0005488321.tif 000040
【図４０】
0005488321.tif 000041
【図４１】
0005488321.tif 000042
【図４２】
0005488321.tif 000043
【図４３】
0005488321.tif 000044
【図４４】
0005488321.tif 000045
【図４５】
0005488321.tif 000046
【図４６】
0005488321.tif 000047