(57)【特許請求の範囲】
【請求項１】
表示手段を備えた位置情報表示サーバにおいて，ネットワークに接続された複数のノードの位置を表示する，ノードの位置表示方法であって，
前記位置情報表示サーバが，
前記複数のノードが備える，他のノードと互いに通信するための経路情報を取得し，
前記複数のノードのうち，自ノードの位置取得手段をもつノードの位置情報および／または予め位置が確定しているノードの位置情報を取得し，
前記経路情報と，自ノードの位置取得手段をもつノードの前記位置情報および／または予め位置が確定しているノードの前記位置情報と，前記複数のノードのうち自ノードの位置取得手段をもたないノードの，ランダムに決定されたか，または算出された表示位置と，を用いて，
自ノードの位置取得手段をもたない前記ノードについて，
ホップ数が１の他のノードとの距離に比例する，引力による移動量と，他のいずれかのノードとの距離に反比例する，反発力による移動量と，を算出し，
前記引力による移動量と反発力による移動量とに基づき，新たな表示位置を算出して前記表示位置を更新し，
取得した前記位置情報と，更新した前記表示位置と，に基づき，ネットワークに接続された前記複数のノードを，前記表示手段に表示する
ことを特徴とするノードの位置表示方法。
【請求項２】
請求項１に記載のノードの位置表示方法であって，
前記位置情報表示サーバは，
前記ネットワークに接続された，自ノードの位置取得手段をもつノード，または，予め位置が確定しているノードであって，
前記表示手段に，当該位置情報表示サーバを含めて表示する
ことを特徴とするノードの位置表示方法。
【請求項３】
請求項１または２に記載のノードの位置表示方法であって，
前記位置情報表示サーバは，
自ノードの位置取得手段をもたない前記ノードについて，
取得した前記経路情報から，ホップ数が２以上の他のノードを特定し，
前記引力による移動量を，
前記ホップ数が１の他のノードとの距離に比例する，引力による移動量と，ホップ数に合わせて変化させた係数を用いる，ホップ数が２以上の他のノードとの距離に比例する，引力による移動量と，を足し合わせて算出する
ことを特徴とするノードの位置表示方法。
【請求項４】
請求項１ないし３いずれか一に記載のノードの位置表示方法であって，
前記位置情報表示サーバは，
前記引力による移動量の算出に際し，
自ノードの位置取得手段をもたない前記ノードが備える無線通信手段の，他のノードと１ホップで通信可能な距離に反比例するように，前記係数を変化させる
ことを特徴とするノードの位置表示方法。
【請求項５】
請求項１ないし４いずれか一に記載のノードの位置表示方法であって，
前記位置表示サーバは，
前記引力による移動量（ｄｘａ，ｄｙａ）が，前記ホップ数が１の他のノードとの距離に正比例し，前記反発力による移動量（ｄｘｒ，ｄｙｒ）が，前記他のいずれかのノードとの距離に正反比例するものとして，
ｄｘｒ＝Ｒ（Ｐｘ１−Ｐｘ２）／（Ｌ×Ｌ）
ｄｙｒ＝Ｒ（Ｐｙ１−Ｐｙ２）／（Ｌ×Ｌ）
ｄｘａ＝Ａ（Ｐｘ２−Ｐｘ１）
ｄｙａ＝Ａ（Ｐｙ２−Ｐｙ１）
ただし，
ノードの描画位置：（Ｐｘ１，Ｐｙ１），他のノードの描画位置：（Ｐｘ２，Ｐｙ２），
Ｒ，Ａ：任意の正数，Ｌ：当該ノードと他のノードとの描画位置の距離で算出する
ことを特徴とするノードの位置表示方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、無線通信を利用したネットワークに接続されるノードの位置情報を提供する技術に関する。
【０００２】
【従来の技術】
近年、無線通信技術の発展にともない、オフィス通信環境の無線化や公共の場における無線通信サービスが普及している。これらの無線通信環境では、無線LANのアクセスポイントを設置し、そのアクセスポイントを介して既存のネットワークに接続、通信を行うことを目的とする。一方、アクセスポイント等の通信インフラを必要とせず、ノード間同士でネットワークを構築して通信するという、いわゆるアドホックネットワークの議論が標準化団体等において盛んになされている。
【０００３】
アドホックネットワークは、PDA（Portable Digital Assistant）、携帯電話、ノートPC等の無線通信機能をもつ様々なノードによって形成される、その場限りのネットワークである。通信を行うノード同士は、互いに無線通信が可能である領域内、即ちパケットを運ぶ無線通信波が到達可能な領域内にいる場合に通信できるのみならず、直接無線通信波が到達できない領域にいる場合でも他のノードがパケットを中継することで通信が可能となる。
【０００４】
アドホックネットワークでは、パケットを中継するために経路情報の交換を行わなければならない。アドホックネットワークにおいて、ノードA、B、Cの３つのノードがある場合について説明する。ノードAとノードBは無線通信機能を用いて互いに直接通信が可能とし、同様に、ノードBとノードCは直接通信が可能であるとする。これに反して、ノードAとノードCは互いに無線通信波の到達範囲外におり直接通信できないとする。この場合、ノードAとノードCが互いに通信を行うためには、ノードBが中継する必要があるということをノードA及びノードCが知らなければならないため、ノードBは定期的もしくはノードAやノードCの要求に応じ、ノードA、ノードCと直接通信が可能であることをノードA及びノードCに通知する。
【０００５】
このようにしてアドホックネットワーク内では経路情報が交換され、無線通信波の到達範囲外にいるノードとの通信ができるようになる。
【０００６】
上記の経路情報の交換が定期的に行われるものをプロアクティブなアドホックネットワークと呼び、データ通信を始めるときに初めて経路情報を交換するものをリアクティブなアドホックネットワークと呼ぶ。プロアクティブなアドホックネットワークでは、定期的にネットワークの経路情報を交換するため、各ノードは互いのノードへの経路情報を予め保持する。
【０００７】
アドホックネットワークでは、上記のような仕組みを用いて通信が行われるノード同士の経路情報を取得することが可能であるが、物理的な位置を把握することができない。しかしながら、ネットワークの構成管理および通信状態を管理するためには、ノードの物理的位置を把握することが必要である。ノードの物理位置を把握できれば、例えば、あるノードの動作不良が原因でネットワークの通信状態に異常があるとわかった場合に、当該箇所にあるノードの復旧作業を行うことで、ネットワークの通信状態を復旧することができる。
【０００８】
従来の位置情報管理方法には、特許文献１に記載の位置情報提供システムがある。このシステムは、通路上に設置された物理的手段により通路ネットワークを構成し、通路ネットワークのノード及びターミナルポイントには無線通信アクセスを可能にする通信手段を具備して旅行者に情報提供を行うシステムを得るものである。より具体的には、旅行者の位置を検出するために複数の無線通信装置をあるエリアに設置し、埋め込まれた無線通信装置が無線通信波を送信し、旅行者が持つ情報通信端末が応答し、その応答を検出することで端末の位置を同定する方法が示されている。
【０００９】
【特許文献１】
特開2002-109679号公報
【００１０】
【発明が解決しようとする課題】
上記の従来技術では、無線通信波を送信する複数の無線通信装置を固定的に設置する必要があり、また、位置が検出できる範囲が無線通信装置を固定的に設置した近隣に制限される。このようなシステムでは、位置情報を取得するための範囲が広がるに従い、多くの無線通信装置を固定的に配置しなければならないため、コストがかさむという問題がある。
【００１１】
【課題を解決するための手段】
本発明はアドホックネットワークを利用し、無線通信装置を固定的に設置することなく、ノードの位置情報を提供する。
【００１２】
本発明ではアドホックネットワークに接続されたノードの位置を図示する方法において、GPS（Global Positioning System）受信デバイス等の位置情報検出デバイスをもつノードや予め位置が確定しているノードについては、当該デバイスにより与えられる位置情報を用いて図示するともに、自ノードの位置情報を検出する手段をもたないノードについても、位置を図示する方法を提供する。
【００１３】
本発明は、自ノードの位置情報を検出する手段をもたないノードの位置を図示するために、アドホックネットワークに接続されたノード同士が交換する経路情報を利用する技術を提供する。経路情報には、あるノードから別のノードまでの論理的な距離を示す数値（メトリックという）が含まれている。メトリックの一例はホップ数であり、あるノードから近くにいるノードまではホップ数が少なく、遠くにあるノードまではホップ数が大きいことが期待できる。そのため、位置情報検出デバイスをもたないノードが位置情報検出デバイスをもつノードからどれだけ離れているかをホップ数により推測でき、その凡その位置を図示することができる。
【００１４】
【発明の実施の形態】
以下、本発明の一実施形態について図面に基づき説明する。図１は、本発明の一実施形態であるアドホックネットワーク構成例の図である。
【００１５】
図１において、PDA1(201)、PDA2(202) 、PDA3(203)、 PDA4(204)、 PDA5(205)は無線通信デバイスを持ち、アドホックネットワークに参加するPDAなどのノード（以下PDAと称す）である。201wはPDA1(201)に接続または内蔵されている無線LANデバイスである。同様に、202w、203w、204w、はそれぞれPDA2(202)、PDA3(203)、PDA4(204)に接続または内蔵されている無線LANデバイスである。203bはPDA3(203)に接続または内蔵されている近距離無線通信デバイスである。同様に205bはPDA5(205)に接続または内蔵されている近距離無線通信デバイスである。202gはPDA2(202)に接続または内蔵されており、GPS衛星からの電波を受けて地理的位置情報を取得するGPS受信デバイスである。同様に、204g、205gはそれぞれPDA4(204)、PDA5(205)に接続または内蔵されているGPS受信デバイスである。また、210は無線LANデバイス210w、GPS受信デバイス210gが接続または内蔵された位置情報表示サーバ装置（以下、位置情報表示サーバという）である。220はGPS信号を送信する複数のGPS衛星を表す。
【００１６】
このとき、PDA1(201)は無線LANデバイス201wを用いてPDA2(202)と直接通信可能である。同様に、PDA1(201)とPDA4(204)、PDA1(201)と位置情報表示サーバ210、PDA2(202)とPDA3(203)、PDA2(202)と位置情報表示サーバ210、PDA3(203)と位置情報表示サーバ210は、それぞれ無線LANデバイスを用いて互いに直接通信可能であるとする。PDA3(203)とPDA5(205)は近距離無線通信デバイスを用いて直接通信可能であるとする。GPS受信デバイス202g、204g、205g、210gは地理的位置を特定するためのGPS信号を、複数のGPS衛星220から受信できるとする。
【００１７】
PDA201〜205の内部構造を図２に示す。PDA201〜205の内部にはCPU301、メモリ302、無線通信デバイス303及び304、表示デバイス305があり、それぞれがバスなどの内部通信線(バスという)で接続されている。無線通信デバイス303、304は無線LANデバイス、GPS受信デバイス、近距離無線通信デバイスのいずれかかを示すが、いずれか一つのデバイスだけでも良い。
【００１８】
また、位置情報表示サーバ210の内部構造を図１１に示す。位置表示サーバの内部にはCPU1201、メモリ1202、無線通信デバイス1203及び1204、ビデオカード1205があり、それぞれがバスなどの内部通信線(バスという)で接続されている。無線通信デバイス303、304は無線LANデバイス、GPS受信デバイス、近距離無線通信デバイスのいずれかを示すが、いずれか一つのデバイスだけでも良い。また、ビデオカード1205は、有線または無線でディスプレイ1206と接続されている。
【００１９】
以下に述べる各装置における処理は、個々の装置のメモリに格納されたプログラムがCPUによって実行されることにより、それぞれの装置上で実現されるものである。各プログラムは、あらかじめメモリに格納されていても良いし、必要に応じて、各装置が利用可能な、着脱可能な記憶媒体やネットワークまたはネットワーク上を伝搬する搬送波を介して、メモリに導入されても良い。
【００２０】
図１で互いの経路情報を交換した場合に、PDA1(201)上のメモリに保持される経路情報の一部を図３に示す。図３は経路情報から生成されたルーティングテーブル400である。図３では、PDA1(201)から各ノードに通信を行うために通るべき通信経路を例示している。401はPDA1(201)の通信相手となるべきノード識別子である。ここにはノードのIPアドレスもしくはノードのIPアドレスとDNS（Domain Name System）によって得られるIPアドレスに対応するノード名称が記載される。402は401に記載されたノードと通信するためには、次にどのノードに対してパケットを送信すればよいかを示すゲートウェイである。ゲートウェイ402にも401と同様にノードのIPアドレスもしくはノードのIPアドレスとDNS（Domain Name System）によって得られるIPアドレスに対応するノード名称が記載される。この欄に記載がないレコード、図３では410、420、440、は直接通信できることを示す。403は401に記載されたノードとの論理的な距離を示す数値、すなわちメトリックである。本実施例では、メトリックがホップ数で表されている場合を例示する。404はその401に記載されたノードと通信するためには、どのデバイスからパケットを送信すればよいかを示すインターフェースである。この欄には、PDA1(201)が保持する無線通信デバイスのいずれかの識別子が登録される。
【００２１】
図３において、410はPDA1(201)が位置情報表示サーバ210と通信するためのルーティングエントリである。このエントリ410では、ノード識別子401として位置情報表示サーバ210が登録されており、ゲートウェイ402は登録されておらず、メトリックとして１が登録されており、インターフェースとしてwlan0が登録されている。このwlan0とは、PDA1(201)内部で無線LANデバイス201wを指している。また、ルーティングエントリ420には、ノード識別子401としてPDA2が、ゲートウェイ402は無し、メトリック403として1が、インターフェース404としてwlan0が登録されている。ルーティングエントリ430には、ノード識別子401としてPDA3が、ゲートウェイ402としてPDA2が、メトリック403として2が、インターフェース404としてwlan0が登録されている。ルーティングエントリ440には、ノード識別子401としてPDA4が、ゲートウェイ402は無し、メトリック403として1が、インターフェース404としてwlan0が登録されている。ルーティングエントリ450には、ノード識別子401としてPDA5が、ゲートウェイ402としてPDA2が、メトリック403として3が、インターフェース404としてwlan0が登録されている。
【００２２】
図３のルーティングテーブル400から、PDA1(201)は位置情報表示サーバ210、PDA2(202)、PDA4(204)に対しては直接通信することができることがわかり、PDA3(203)、PDA5(205)に対しては、PDA2(202)を介して通信できることがわかる。
【００２３】
以下に、ルーティングテーブル400を利用して、直接通信できる相手の情報から位置情報を図示する場合について説明する。
【００２４】
図４は本発明の一実施形態での経路情報送信プロセスのフロー図である。このプロセスは、図１におけるPDA1(201)、PDA2(202)、PDA3(203)、PDA4(204)、PDA5(205)、位置情報表示サーバ210の各ノード上にそれぞれ具現化されて、個々に動作する。
【００２５】
本プロセスは開始(501)した後、経路情報の送信リクエストの受信待ち(502)を行う。送信リクエストを受信すると、自ノードで保持する経路情報読み込み(503)を行う。このとき読み込む経路情報510は、ルーティングテーブル400である。もしくは、アドホックルーティングプロセスが生成した別の経路情報であってもよい。
【００２６】
ルーティングテーブル400の読み込みが終わった後に、送信情報選択処理(504)を行う。ここでは、位置情報表示サーバ210において、位置情報を図示するために必要となる情報の取捨選択を行う。本実施例では、直接通信可能な端末の情報（ホップ数が１）の情報を用いて図示する場合について説明する。このとき、ルーティングテーブル400からゲートウェイ402として登録がないレコード、つまり当該ノードと直接通信可能であるノードのレコードを検索し、ルーティングエントリ410、420、440を選出する。
【００２７】
ホップ数が１の端末に加え、ホップ数が２以上の端末の情報を用いて図示してもよい。この場合には、ルーティングエントリ430、450も選出する。
【００２８】
次に、選出したルーティングエントリを、位置情報表示サーバ210に送信する(505)。送信する情報を図５に示す。また、当該ノードが自身の位置情報測定デバイスを持っており、自身の位置情報がわかる場合、位置情報604をデータとして送信する。位置情報測定デバイスを持たないノードは、この位置情報604を送信しない。
【００２９】
経路情報を送信(504)した後、送信リクエスト受信待ち(505)に入り、位置情報表示サーバ210からの送信リクエストの受信を待つ。位置情報表示サーバ210から送信リクエストを受け取ると、再び経路情報読込み502に戻り、上記処理を繰り返す。
【００３０】
図５は上記ステップ504において位置情報表示サーバ210に送られるパケット600のフォーマットである。先頭はIP/UDPヘッダ601である。次にデータ長602がある。このパケット600を受信する位置情報表示サーバ210では、このデータ長から後述するルーティングエントリがいくつ入っているかが判断できる。
【００３１】
図６は位置情報表示サーバ210で動作するプログラムの処理フローを示す図である。このプログラムでは、図５に示したパケットを受信し、それを描画する機能をもつ。本プログラムでは、ユーザからの起動要求によって開始(701)した後、2つのプロセスへの分岐(フォーク)(702)を行う。一つは各ノードから経路情報を受信するためのプロセスであり、もう一つは位置情報を図示するためのプロセスである。
【００３２】
ノードから経路情報を受信するプロセスでは、まず、各ノードに対して経路情報の送信リクエストを送信する(706)。送信リクエストを送信する宛先となるノードは、自身のルーティングテーブル400から、アドホックネットワークに参加するノードを検索し、該当した全てのノードである。このようにすることで、アドホックネットワークに参加する全てのノードに対して、経路情報の送信リクエストを通知することができる。
【００３３】
送信リクエストのパケットフォーマット800を図７に示す。本パケットはIP/UDPヘッダ801及び経路情報送信リクエスト802からなる。経路情報送信リクエスト802には、当該パケットが位置情報表示サーバ210から送信された経路情報の送信のリクエストであることが記載されている。これを受信したノードは、図５に示したパケット600を位置情報表示サーバ210に送信する。
【００３４】
位置情報表示サーバ210では、送信リクエスト(706)の後、パケットの受信待ち(707)を行い、パケット600が各ノードから返信されるまで待つ。受信後、各ノードから送られてきたルーティングエントリに基づいた情報を図９に示すリンク情報テーブル1000に登録するリンク情報登録と、図５に示した位置情報に基づいた情報を図8に示す位置情報テーブル900に登録する位置情報登録とを行う(708)。これらのテーブルの内容は、共有メモリ710に書き込む。
【００３５】
共有メモリ710とは、経路情報を受信するプロセスから書き込みでき、かつ位置情報を図示するプロセスから読み込むことができるメモリ302上の領域である。リンク情報を登録した後、このプロセスは予め設定された時間スリープ(709)する。スリープ時間の設定は、本プログラムが起動するときの引数として渡される。予め設定された時間スリープした後、本プロセスは706に戻り、処理を繰り返す。
【００３６】
ステップ706〜709のプロセスと並行して、位置情報を図示するプロセスが動作する。
【００３７】
本プロセスでは、まず、リンク情報と、位置情報を共有メモリ710から読み込む(703)。ここで、自らの位置を検出できるノードの位置情報と、各ノードが直接通信を行うことができるノードの情報が得られる。例えば、図１で示したネットワーク構成におけるPDA2(202)の情報として、PDA2(202)の位置情報および、PDA2(202)がPDA1(201)、PDA3(203)、位置情報表示サーバ210と直接通信ができることがわかる。また、自らの位置を検出できないノードについても、位置情報は得られないがどのノードと直接通信ができるかの情報が得られる。例えば、図１で示したネットワーク構成におけるPDA1(201)の情報として、位置情報は得られないが、PDA2(202)、PDA4(204)、位置情報表示サーバ210と直接通信できることがわかる。
【００３８】
これらの情報を基にして、描画位置の計算を行う(704)。この描画位置の計算でははじめに、位置情報を送信してきたノードの描画位置を決定する。図８に各ノードから受け取った情報を基に、共有メモリ上に作成された位置情報テーブル900を示す。この位置情報テーブル900には、ノード識別子901と、その位置情報902が登録されている。レコード910には位置情報表示サーバ210の位置情報(X、Y)が登録されている。同様にレコード930、950、960には、PDA2(202)、PDA4(204)、PDA5(205)の位置情報としてそれぞれ(X2、Y2)、(X4、Y4)、(X5、Y5)が登録されている。また、レコード920のノード識別子としてPDA1(201)が登録されているが、PDA1(201)は自らの位置を検出できないため、位置情報表示サーバ210に位置情報を送信しておらず、位置情報902は登録されていない。同様に、レコード940もPDA3(203)が自らの位置を検出できないため、位置情報902が登録されていない。
【００３９】
描画位置の計算(704)では、これらのX軸の最大値Mx、最小値mx、Y軸の最大値My、最小値myから描画位置を計算する。例えば、位置情報リストに位置情報が登録された全てのノードを、画面サイズ(Sx、Sy)に上下左右20%のマージンを設けて描画する場合、位置情報(Gx、Gy)の描画位置(Px、Py)は以下のようになる。
【００４０】
Px=[0.2+(1-0.2×2){(Gxmx)/(Mxmx)}]×Sx
Py=[0.2+(1-0.2×2){(Gymy)/(Mymy)}]×Sy
次に、リンク情報を元に、位置情報を送信していないノードの描画位置を決定する。図８からわかるように、PDA1(201)およびPDA3(203)が位置情報を持っていないため、これらに対して描画位置の計算を行う。描画位置の計算は例えば、以下の規則に従って行う。
（１）描画位置の初期値はランダムに決まるものとする。
（２）直接通信可能な（すなわちホップ数が１の）ノードは互いに近くにあることが想定されるため、引力が働くものとし、距離に比例した値だけノードの描画位置が近づく。
（３）全てのノード間には反発力が働き、互いに離れるように移動するものとし、距離に反比例した値だけ互いのノードの描画位置が移動する。
端末間に引力が作用して互いのノード位置が近づくと、ノードが重なって図示されて見づらくなることがある。これを避けるために、反発力の概念を導入している。
【００４１】
PDA1(201)の描画計算を例に説明する。現在のPDA1(201)の描画位置を(Px1、Py1)、PDA2(202)の描画位置を(Px2、Py2)として、反発による描画位置の移動量(dxr、dyr)と引力による描画位置の移動量(dxa、dya)を下式で計算する。ここでR、Aは任意の正数、LはPDA1とPDA2の描画位置の距離である。
【００４２】
dxr = R (Px1 - Px2) / L×L
dyr = R (Py1 - Py2) / L×L
他のノード、すなわちPDA3(203)、PDA4(204)、PDA5(205)、位置情報表示サーバ(210)、との反発による移動量の計算を同様に行う。
【００４３】
また、引力を計算する場合、まず直接通信可能なノードを図９に示すリンク情報テーブル1000を参照して決定する。図９において、1001、1002はリンク情報情報登録708によって共有メモリ710に書き込まれたリンク情報とインターフェースである。1010はPDA1(201)がPDA2(202)に直接通信可能であることを示すレコードである。1020はPDA1(201)がPDA4(204)に直接通信可能であることを示すレコードである。1030はPDA1(202)がPDA4(204)に直接通信可能であることを示すレコードである。レコード1010、1020、1030ではPDA1から各ノードへの直接通信がwlan0を介して行えることが記されている。これらのレコードからPDA1(202)への引力による移動量の計算はPDA2(202)、PDA4(204)、位置情報表示サーバ(210)に対して行えばよいことがわかる。引力によるPDA1(201)の移動量の計算例をPDA2との直接通信について計算する場合、下式で計算される。
【００４４】
dxa = A (Px2 - Px1)
dya = A (Py2 - Py1)
他の直接通信可能なノード、すなわち、PDA4、位置情報表示サーバ210、との引力による移動量の計算を同様に行う。引力による移動量を計算する場合、ルーティングテーブル400に記録されているインターフェース情報404によって係数Aを変えることで、より現実の位置に近い描画を行うことが可能である。例えば、インターフェースが近距離無線通信である場合、近距離無線通信は無線LANに比べ、無線通信の到達距離が短いため、直接通信できるノードと当該ノードの位置が現実において非常に近い距離にあることが期待される。そのため、そのような無線通信の到達距離が短いインターフェースに対しては、係数Aの値を大きくし、無線到達距離が長いインターフェースに対しては、係数Aの値を小さくすることで、位置情報表示サーバ210における描画が現実のものと近くなるように調整できる。
【００４５】
また、引力の計算に、前述したようにホップ数が２以上の端末間の情報を用いても良い。その場合、ホップ数に合わせて係数Aを変化させて引力を計算し、描画位置の移動量を求める際に各ホップ数の端末間の引力を足し合わせればよい。
【００４６】
反発による移動量と引力による移動量の全て足し合わせたものをPDA1(201)の描画位置の移動量とする。移動量の総計を（dxsum、dysum）とすると、PDA1(201)の新しい描画位置(Px1new、Px2new)は下式で表される。
Px1new = Px + dxsum
Py1new = Py + dysum
以上の計算を、他の位置情報を持っていないノードについても同様に行う。
【００４７】
最後に、求めた新しい描画位置に基づき再描画(705)を行い、一定時間スリープ(711)する。その後、本プロセスは再びリンク情報および位置情報読込み(703)に戻り、以降処理を繰り返す。
【００４８】
位置情報表示サーバ210のビデオカード1205は、上記の処理によって得られた結果に基づき、各ノードの表示位置をディスプレイ1206に表示する。図１０に、表示画面イメージ1100を示す。各ノードについて、その位置だけでなく他のノードと接続する線によって当該他のノードと直接通信できるかどうかを示している。
【００４９】
本実施形態の位置情報表示方法を用いることで、PDA2(202)、PDA4(204)、PDA5(205)、位置情報表示サーバ(210) のようにGPS（Global Positioning System）等の位置情報検出デバイスをもつノードについては、画面イメージ1100内において1102、1104、1105、1110当該デバイスにより与えられる位置情報に基づいた位置が図示され、自デバイスの位置を検出できないノードPDA1(201)、PDA3(203)についても、アドホックネットワークの経路情報を用いることによって、1101、1103のように現実に倣った位置が図示することが可能となる。
【００５０】
なお、本実施例は、上述のプロアクティブなアドホックネットワーク、リアクティブなアドホックネットワークのいずれにも適用可能である。
【００５１】
【発明の効果】
本発明によれば、ネットワークに接続されたノードの位置を図示する方法において、自デバイスの位置を検出できないノードについても、ネットワークの経路情報を用いることによって、位置を図示できるようになる。
【図面の簡単な説明】
【図１】実施形態の位置情報管理方法を適用するアドホックネットワークの構成図である。
【図２】アドホックネットワークを構成するPDAのハードウェア構成図である。
【図３】PDA上の経路情報から生成されたルーティングテーブル400を示す図である。
【図４】実施形態の位置情報管理方法のための経路情報送信プロセスのフロー図である。
【図５】実施形態の経路情報送信プロセスから送信されるパケット600のフォーマットである。
【図６】実施形態の位置情報表示プログラムの処理フローを示す図である。
【図７】実施形態の位置情報表示プログラムから送信される送信リクエストパケット800のフォーマットを示す図である。
【図８】実施形態の位置情報表示プログラムによって共有メモリ上に作成される位置情報テーブル900を示す図である。
【図９】実施形態の位置情報表示プログラムによって共有メモリ上に作成されるリンク情報テーブル1000を示す図である。
【図１０】実施形態の位置情報表示プログラムによって得られる画面イメージ図である。
【図１１】実施形態の位置情報表示サーバのハードウェア構成図である。
【符号の説明】
201・・・PDA1, 201w・・・PDA1に接続された無線LANデバイス, 202・・・PDA2, 202w・・・PDA2に搭載された無線LANデバイス, 202g・・・PDA2に接続されたGPS受信デバイス,  203・・・PDA3, 203w・・・PDA3に搭載された無線LANデバイス, 203b・・・PDA3に搭載された近距離無線通信デバイス, 204・・・PDA4, 204w・・・PDA4に搭載された無線LANデバイス, 204g・・・PDA4に接続されたGPS受信デバイス, 205・・・PDA5, 205b・・・PDA5に搭載された近距離無線通信デバイス, 205g・・・PDA5に接続されたGPS受信デバイス, 210・・・位置情報表示サーバ, 210w・・・位置情報サーバに搭載された無線LANデバイス, 210g・・・位置情報表示サーバに接続されたGPS受信デバイス,  220・・・複数のGPS衛星
【図１】
0004251018.tif 000002
【図２】
0004251018.tif 000003
【図３】
0004251018.tif 000004
【図４】
0004251018.tif 000005
【図５】
0004251018.tif 000006
【図６】
0004251018.tif 000007
【図７】
0004251018.tif 000008
【図８】
0004251018.tif 000009
【図９】
0004251018.tif 000010
【図１０】
0004251018.tif 000011
【図１１】
0004251018.tif 000012