(57)【要約】【課題】ユーザの操作するエンドノードから分散データベースを構成するリレーノードにアクセスして情報の登録や検索を行う場合に、ユーザの利便性を向上させる。【解決手段】情報登録検索システムは、分散データベースを構成するリレーノードと、エンドノード、プログラムを配信する配信ノードから構成される。エンドノードは、配信ノードからプログラムを取得して実行する。プログラムは、登録情報または検索条件をユーザから取得する入力機能と、ユーザからの入力に応答して登録情報または検索条件に基づいてリレーノードに対して要求を送信する送信機能と、送信機能による要求の送信の後に新たなリレーノードとの接続を検知した場合に、新たなリレーノードに対して要求を送信する再送機能と、を備える。プログラムはウェブコンテンツとして、ウェブブラウザ上で実行されることも好ましい。【選択図】図４
2015122029.tif 000002
【特許請求の範囲】
【請求項１】
エンドノードが分散データベースを構成するリレーノードに無線通信によりアクセスし情報の登録または検索を行う情報登録検索システムであって、
エンドノードと、分散データベースを構成する複数のリレーノードと、前記エンドノードに対してプログラムを配信する配信ノードと、から構成され、
前記複数のリレーノードのそれぞれは、情報を記憶する情報記憶手段と、前記エンドノードから要求を受信する受信手段と、前記エンドノードからの要求にしたがって前記情報記憶手段に対する処理を行う処理手段と、を備え、
前記配信ノードは、プログラムを記憶するプログラム記憶手段と、前記プログラムを前記エンドノードへ配信する配信手段と、を備え、
前記エンドノードは、前記プログラムを前記配信ノードから取得する取得手段と、前記プログラムを実行するプログラム実行手段と、を備え、
前記プログラムは、登録情報または検索条件をユーザから取得する入力機能と、ユーザからの入力に応答して前記登録情報または前記検索条件に基づいて前記リレーノードに対して要求を送信する送信機能と、前記送信機能による要求の送信の後に新たなリレーノードとの接続を検知した場合に、当該新たなリレーノードに対して前記要求を送信する再送機能と、を備える、
情報登録検索システム。
【請求項２】
前記配信ノードの配信手段はウェブサーバであり、前記プログラムをウェブコンテンツとして前記エンドノードへ配信する、
請求項１に記載の情報登録検索システム。
【請求項３】
前記プログラム実行手段は、ＨＴＭＬレンダリングエンジンである、
請求項２に記載の情報登録検索システム。
【請求項４】
前記配信ノードは、前記リレーノードを兼ねる、
請求項１から３のいずれか１項に記載の情報登録検索システム。
【請求項５】
前記複数のリレーノードは、同一のＥＳＳＩＤを用いて無線ＬＡＮアクセスを提供するものであり、前記受信手段は同一のＵＲＬによってアクセス可能なウェブサーバである、
請求項１から４のいずれか１項に記載の情報登録検索システム。
【請求項６】
前記プログラムは、前記再送機能による前記要求の送信に対する応答を前記リレーノードから受信して記憶しておき、ユーザから指示のあったタイミングで記憶しておいた前記応答をユーザに提示する、
請求項１から５のいずれか１項に記載の情報登録検索システム。
【請求項７】
エンドノードと、分散データベースを構成する複数のリレーノードと、前記エンドノードに対してプログラムの配信する配信ノードと、から構成され情報登録検索システムにおける情報登録検索方法であって、
前記エンドノードが、前記配信ノードから前記プログラムを取得する取得ステップと、
前記エンドノードが、前記プログラムを実行するプログラム実行ステップと、
前記エンドノードが実行する前記プログラムが、登録情報または検索条件をユーザから取得する入力ステップと、
前記エンドノードが実行する前記プログラムが、ユーザから入力された前記登録情報または前記検索条件に基づいて前記リレーノードに対して要求を送信する送信ステップと、
前記エンドノードが実行する前記プログラムが、前記送信ステップの後に新たなリレーノードとの接続を検知した場合に、当該新たなリレーノードに対して前記要求を送信する
再送ステップと、
を含む、情報登録検索方法。
【請求項８】
前記取得ステップでは、前記配信ノードのウェブサーバから、ウェブコンテンツとして前記プログラムを取得する、
請求項７に記載の情報登録検索方法。
【請求項９】
前記プログラム実行ステップでは、ＨＴＭＬレンダリングエンジンを用いて前記プログラムを実行する、
請求項８に記載の情報登録検索方法。
【請求項１０】
前記エンドノードの前記プログラムが、前記再送ステップにおける前記要求の送信に対する応答を前記リレーノードから受信して記憶するステップと、
前記エンドノードの前記プログラムが、ユーザからの指示のあったタイミングで記憶しておいた前記応答をユーザに提示するステップと、
をさらに含む、請求項７から９のいずれか１項に記載の情報登録検索方法。
【請求項１１】
分散データベースを構成するリレーノードに無線通信によりアクセスして情報の登録または検索を行うためのプログラムであって、
登録情報または検索条件をユーザから取得する入力ステップと、
ユーザから入力された前記登録情報または前記検索条件に基づいて前記リレーノードに対して要求を送信する送信ステップと、
前記送信ステップの後に新たなリレーノードとの接続を検知した場合に、当該新たなリレーノードに対して前記要求を送信する再送ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散データベースを構成するリレーノードにエンドノードがアクセスして情報の登録や検索を行う際の通信方法に関する。
【背景技術】
【０００２】
車載無線通信機のようなモバイルノードを複数用いて分散データベースを構築する技術が研究されている（特許文献１）。分散データベースを構成する各ノード（リレーノードと称する）は、保有するデータを周囲のノードと交換することで、あるノードに登録された情報を広く伝播させることができる。
【０００３】
携帯情報端末などのエンドノードは、リレーノードに対して情報を登録したり検索したりすることができる。情報検索の場合、全てのリレーノードが同一のデータを保有していれば、１つのリレーノードに対して検索をすれば完全な結果が得られる。しかしながら、リレーノードごとに保有するデータが異なる場合には、新しいリレーノードと通信可能になる度に検索を繰り返すことが望ましい。また、情報の登録についても、リレーノード間での情報の伝播が遅い場合には、新しいリレーノードと通信可能になる度に情報の登録を繰り返すことが望ましい。
【０００４】
しかし、新しいリレーノードと通信可能となる度に情報の登録や検索のための操作をユーザに行わせるのは、利便性がよくない。また、リレーノードにアクセスするためのプログラムをあらかじめエンドノードにインストールしておくと、未使用時にもリソースを消費したり、プログラムの更新時に対応できなかったりする。また、あらかじめプログラムがインストールされていないエンドノードは、インストールしてからリレーノードにアクセスする必要があるため、ユーザの利便性を損なう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１４６０３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、ユーザの操作するエンドノードから分散データベースを構成するリレーノードにアクセスして情報の登録や検索を行う場合に、ユーザの利便性を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、エンドノードが分散データベースを構成するリレーノードに無線通信によりアクセスし情報の登録または検索を行う情報登録検索システムであって、エンドノードと、分散データベースを構成する複数のリレーノードと、前記エンドノードに対してプログラムを配信する配信ノードと、から構成される。前記複数のリレーノードのそれぞれは、情報を記憶する情報記憶手段と、前記エンドノードから要求を受信する受信手段と、前記エンドノードからの要求にしたがって前記情報記憶手段に対する処理を行う処理手段と、を備える。前記配信ノードは、プログラムを記憶するプログラム記憶手段と、前記プログラムを前記エンドノードへ配信する配信手段と、を備える。前記エンドノードは、前記プログラムを前記配信ノードから取得する取得手段と、前記プログラムを実行するプログラム実行手段と、を備える。前記プログラムは、登録情報または検索条件をユーザから取得する入力機能と、ユーザからの入力に応答して前記登録情報または前記検索条件に基づい
て前記リレーノードに対して要求を送信する送信機能と、前記送信機能による要求の送信の後に新たなリレーノードとの接続を検知した場合に、当該新たなリレーノードに対して前記要求を送信する再送機能と、を備える。
【０００８】
このように、ユーザが登録情報や検索条件を一度入力した後にエンドノードが新しいリレーノードと接続した場合に、プログラムが自動的に新しいリレーノードに対して要求を送信するので、ユーザの手間を省けて利便性が向上する。
【０００９】
さらに、配信ノードからプログラムを取得して実行しているので、プログラムをあらかじめインストールしておく必要がなく、また常に最新のプログラムを実行することができる。
【００１０】
本発明において、前記配信ノードの配信手段はウェブサーバであり、前記プログラムをウェブコンテンツとして前記エンドノードへ配信する、ことも好ましい。また、エンドノードが有する前記プログラム実行手段は、ＨＴＭＬレンダリングエンジンである、ことも好ましい。
【００１１】
このようにすれば、エンドノードにおけるプログラムの取得と実行が簡単に行える。また、ＨＴＭＬレンダリングエンジン上でプログラムを実行することで、ハードやＯＳに依存せずに実行できるというメリットもある。
【００１２】
本発明において、配信ノードは、リレーノードと独立したノードである必要はなく、配信ノードがリレーノードを兼ねてもよい。なお、全てのリレーノードが配信ノードとしての機能を持ってもよく、一部のリレーノードのみが配信ノードとしての機能を持ってもよい。ただし、全てのリレーノードが配信ノードとしての機能を持つことで、リレーノードにアクセス可能な場合に常にプログラムを取得できることが担保される。
【００１３】
本発明において、前記複数のリレーノードは、同一のＥＳＳＩＤを用いて無線ＬＡＮアクセスを提供するものであり、前記受信手段は同一のＵＲＬによってアクセス可能なウェブサーバである、ことが好ましい。
【００１４】
このようにすれば、エンドノードのプログラムは、異なるリレーノードに対するアクセスであっても、仮想的に同一のノードにアクセスしているものと認識できる。すなわち、複数のリレーノードを１つのシステムと捉えることができる。
【００１５】
本発明において、前記プログラムは、前記再送機能による前記要求の送信に対する応答を前記リレーノードから受信して記憶しておき、ユーザから指示のあったタイミングで記憶しておいた前記応答をユーザに提示する、ことも好ましい。応答の提示として、検索条件に合致するデータの表示や、いくつのリレーノードに情報を登録できたかを表示することなどが考えられる。
【００１６】
このようにすれば、プログラムが自動的に行った処理の結果を、ユーザが望むタイミングで確認することができる。なお、再送機能による応答を得る度に、その応答をユーザに提示する構成を採用しても構わない。
【００１７】
本発明は、上記の手段の少なくとも一部を備える情報登録検索システムあるいはリレーノード、配信ノード、エンドノードとして捉えることもできる。また、本発明は、上記処理の少なくとも一部を実行する情報登録検索方法として捉えることもできる。また、本発明は、この方法をコンピュータに実行させるためのコンピュータプログラム、あるいはこのコンピュータプログラムを非一時的に記憶したコンピュータ可読記憶媒体として捉える
こともできる。上記手段および処理の各々は可能な限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【００１８】
本発明によれば、ユーザの操作するエンドノードから分散データベースを構成するリレーノードにアクセスして情報の登録や検索を行う場合の、ユーザの利便性が向上する。
【図面の簡単な説明】
【００１９】
【図１】安否情報伝達システムの概要を示す図である。
【図２】携帯情報端末（エンドノード）および車載端末（リレーノード）の機能構成を示す図である。
【図３】登録・検索プログラムの表示画面の例を示す図。
【図４】情報登録処理の概要を示す図。
【図５】情報登録処理のシーケンスを示す図。
【図６】情報検索処理の概要を示す図。
【図７】情報検索処理のシーケンスを示す図。
【発明を実施するための形態】
【００２０】
＜概要＞
本発明の実施形態は、車載無線通信装置（車載端末）をリレーノードとして用いる安否情報伝達システム（情報登録検索システム）である。図１に本実施形態にかかる安否情報伝達システムの概要を示す。例えば、災害地域にいる被災者は携帯情報端末１００から、車載端末２００に対してメッセージの登録や検索を行う。車載端末２００は、被災地域や避難所などを移動し、さらに保有しているメッセージを周囲の車載端末と交換することで、被災者が登録したメッセージが地理的に広い範囲に拡散する。被災者あるいはその他のユーザは車載端末にアクセスすることで、離れた被災地の被災者が登録したメッセージを取得することができる。なお、車載端末２００は携帯基地局３００や無線ＬＡＮアクセスポイントなど広域通信網（インターネット等）に接続可能になった場合には、保有しているメッセージをサーバにアップロードすることで、被災地域以外のユーザも被災情報を検索できるようになる。
【００２１】
本実施形態にかかる安否情報伝達システムは、携帯情報端末１００をエンドノード、車載端末２００をリレーノードとする分散型データベースシステムと捉えることができる。なお、エンドノードとは、情報の登録（情報の生成）や情報の検索（情報の利用）を行うノードを意味する。また、リレーノードは、情報の中継を行うノードを意味する。エンドノードとリレーノードの両方の役割を担うノードが存在してもよいが、以下では説明を簡略化するために、そのようなケースは考慮しない。
【００２２】
安否情報伝達システムにおいて、全ての車載端末２００（リレーノード）が保有している情報が常に同期されるならば、携帯情報端末１００（エンドノード）からの情報登録や検索は一回行えばよい。しかしながら、本実施形態の構成では全ての車載端末２００が保有している情報が即座に同期されることは期待できず、したがって、ユーザは、新しい車載端末２００と通信可能になる度に、携帯情報端末１００から情報の登録や検索を行うことが必要となる。
【００２３】
本実施形態は、エンドノード（携帯情報端末１００）からリレーノード（車載端末２００）と通信可能になる度に情報の登録や検索を行う際の、ユーザの手間を軽減させることを目的とする。ユーザの負担を軽減させることで、情報の登録および検索が有効に行え、システム内で多くの情報が流通することが期待される。
【００２４】
なお、以下の説明では、「エンドノード」と「携帯情報端末」の用語を互いに交換可能に用いる。同様に、「リレーノード」と「車載端末」の用語も互いに交換可能に用いる。
【００２５】
＜構成＞
［携帯情報端末（エンドノード）］
携帯情報端末１００は、携帯電話機、スマートフォン、ノート型パソコン、タブレット型パソコンなどの携帯可能なコンピュータ装置である。携帯情報端末１００の構成について図２（ａ）を参照して説明する。携帯情報端末１００は、無線通信部１１０、制御部１２０、記憶部１３０、入出力部１４０を備える。
【００２６】
無線通信部１１０は、車載端末２００と無線通信を行う機能部である。無線通信方式は任意であって構わないが、本実施形態では、無線ＬＡＮ（ＩＥＥＥ  ８０２．１１規格）による通信を行うことを想定する。
【００２７】
制御部１２０は、ＣＰＵやＭＰＵなどの汎用のプロセッサから構成され、メモリ等に記憶されたプログラムを実行することにより、無線ＬＡＮクライアント１２１やウェブブラウザ１２２などの機能を提供する。無線ＬＡＮクライアント１２１は車載端末２００の無線ＬＡＮアクセスポイント２２１と接続を確立し通信を行う機能を有する。ウェブブラウザ１２２はＨＴＭＬレンダリングエンジンを含み、ＨＴＭＬ５によって記述されたウェブコンテンツを取得および解釈して、表示すべき文字や画像などを計算するプログラムである。ＨＴＭＬレンダリングエンジンの例として、WebKit、Blink、Gecko、Tridentなどを
挙げることができる。ウェブブラウザ１２２は本発明における取得手段およびプログラム実行手段に相当する。
【００２８】
記憶部１３０には、入力情報記憶部１３１と応答結果記憶部１３２が含まれる。いずれもＨＴＭＬ５のWebStorage APIによって実現することができる。入力情報記憶部１３１は、車載端末２００に対する情報の登録や検索のためにユーザが入力した登録情報や検索条件を記憶する機能部である。また、応答結果記憶部１３２は、情報の登録や検索の要求に対する車載端末２００からの応答を記憶する機能部である。
【００２９】
入出力部１４０は、キーボードやタッチパネルなどの入力装置と、ディスプレイやスピーカーなどの出力装置から構成される。
【００３０】
なお、携帯情報端末１００は、上記の機能以外にも、車載端末２００が提供する機能に応じて、無線ＬＡＮ認証クライアント、ＤＨＣＰクライアント、ＤＮＳクライアントなどの機能を提供することも好ましい。
【００３１】
［車載端末（リレーノード）］
車載端末２００の構成について図２（ｂ）を参照して説明する。車載端末２００は、無線通信部２１０、制御部２２０、記憶部２３０、入出力部２４０を備える。
【００３２】
無線通信部２１０は、他の車載端末２００や携帯情報端末１００と無線通信を行う機能部である。本実施形態では、無線ＬＡＮ（ＩＥＥＥ  ８０２．１１規格）による通信を行うことを想定する。ただし、無線ＬＡＮ以外にも、ミリ波通信やＤＳＲＣ（専用境域通信）など任意の無線通信方式を採用可能であり、また、複数の方式を組み合わせたり、車車間通信と携帯情報端末との通信とで異なる方式を採用してもよい。さらに、ホワイトスペース通信などの利用可能な周波数帯を用いて通信を行うコグニティブ通信を採用することも好ましい。
【００３３】
制御部２２０は、ＣＰＵやＭＰＵなどの汎用のプロセッサから構成され、メモリ等に記
憶されたプログラムを実行することにより、無線ＬＡＮアクセスポイント２２１、無線ＬＡＮクライアント２２２、ウェブサーバ２２３、データベース管理部２２４、安否情報交換部２２５の機能を提供する。
【００３４】
無線ＬＡＮアクセスポイント２２１は、無線ＬＡＮのアクセスポイントを提供する機能であり、携帯情報端末１００や他の車載端末２００に対して接続を提供する。本実施形態においては無線ＬＡＮアクセスポイント２２１はソフトウェア（例えばhostapd）によっ
て実現される。
【００３５】
無線ＬＡＮクライアント２２２は、無線ＬＡＮアクセスポイントに対して接続するための機能であり、無線ＬＡＮアクセスポイントを提供している他の車載端末２００やその他のステーションノードと接続するために用いられる。この無線ＬＡＮクライアント２２２を介して、車載端末間でユーザが登録した情報を交換する。本実施形態では、無線ＬＡＮクライアントはソフトウェア（例えばwpa_supplicant）によって実現される。
【００３６】
ウェブサーバ２２３は、ＨＴＴＰアクセスするクライアント（携帯情報端末１００のウェブブラウザ等）に対して、ウェブコンテンツ記憶部２３１に記憶されたウェブコンテンツを提供する。なお、後述するように、ウェブコンテンツにはウェブブラウザ（ＨＴＭＬレンダリングエンジン）上で実行可能な安否情報登録・検索のためのプログラムが含まれる。ウェブサーバ２２３はソフトウェア（例えばhttpd）によって実現される。ウェブサ
ーバ２２３およびウェブコンテンツ記憶部２３１は、本発明における配信手段およびプログラム記憶手段にそれぞれ相当する。
【００３７】
データベース管理部２２４は、携帯情報端末１００から安否情報登録・検索用のプログラムを介して安否情報の登録や検索の要求を受信し、その要求に応じて安否情報記憶部２３２に対する操作を行う。データベース管理部２２４としては、既存の任意のデータベース管理システムを採用可能である。データベース管理部２２４は、本発明における受信手段および処理手段に相当する。
【００３８】
安否情報交換部２２５は、安否情報記憶部２３２に格納されている安否情報を他の車載端末との間で交換する機能部である。安否情報交換部２２５は、他の車載端末と通信可能になると、所定のアルゴリズムにしたがって、安否情報を選択して送信する。また、他の車載端末から安否情報を受信した場合に、安否情報記憶部２３２に格納する。安否情報記憶部２３２は、本発明における情報記憶手段に相当する。安否情報の交換方法は本発明においては特に限定されず従来の任意の手法を採用することができる。
【００３９】
なお、車載端末２００においては、上記の機能以外にも、無線ＬＡＮ認証サーバ、ＳＳＬデーモン、ＤＨＣＰサーバ、ＤＮＳサーバなどの機能を提供することも好ましい。無線ＬＡＮ認証サーバは、無線ＬＡＮ接続の認証と暗号化を行う機能であり、例えばradiusd
によって実現できる。また、ＳＳＬデーモンはウェブサーバへのアクセスの認証と暗号化を行う機能であり、例えばmod_sslによって実現できる。ＤＨＣＰサーバは、無線ＬＡＮ
アクセスポイント２２１に接続したエンドノードに対してローカルＩＰアドレスを割り当てる機能部であり、例えばdhcpdによって実現できる。ＤＮＳサーバは、エンドノードが
リレーノード内のウェブサーバをＵＲＬでアクセスする場合に、ＵＲＬをリレーノードのＩＰアドレスに変換する機能である。ＤＮＳサーバは例えばbindによって実現できる。
【００４０】
記憶部２３０には、ウェブコンテンツ記憶部２３１と安否情報記憶部２３２が含まれる。ウェブコンテンツ記憶部２３１は、ウェブサーバ２２３にアクセスしたウェブクライアントに提供する情報が格納される。また、ウェブコンテンツ記憶部２３１には、エンドノードのウェブブラウザ（ＨＴＭＬレンダリングエンジン）において実行されるプログラム
も含まれる。本実施形態では、ＨＴＭＬ５によって記述されたプログラムを用いる。このウェブコンテンツは、JavaScriptなどのスクリプト言語を含み、ユーザの入力に応じて動的なユーザインタフェースを提供する。なお、本明細書では、ＨＴＭＬ５の用語は、WebSocket API, WebStorage API, Geolocation API, XML HttpRequest Level 2なども含めた
広義の意味で用いる。
【００４１】
安否情報記憶部２３２には、ユーザから登録された安否情報が格納される。安否情報のデータフォーマットは任意であって構わない。例えば、安否情報は、ユーザ名（氏名）、電話番号、メッセージ内容（任意のテキスト）、登録日時などを含む。安否情報は、さらに、登録場所、受信日時、受信場所、直近の転送日時などの情報を含むことも、車載端末間での安否情報の交換を効率化するために好ましい。
【００４２】
入出力部２４０は、キーボードなどの入力装置と、ディスプレイやスピーカーなどの出力装置から構成される。
【００４３】
［ウェブコンテンツ（登録・検索プログラム）］
ウェブコンテンツ記憶部２３１に格納されるウェブコンテンツのうち、エンドノードからの情報登録や情報検索を行うためのウェブコンテンツについて説明する。このウェブコンテンツは、エンドノードのウェブブラウザ１２２によって実行され、リレーノードへの情報登録や情報検索のためのユーザインタフェース機能や、リレーノードへの登録要求や検索要求の送信機能および応答結果の受信機能などを提供する。以下、このウェブコンテンツのことを他のウェブコンテンツと区別するために、「登録・検索プログラム」とも称する。登録・検索プログラムはJavaScriptなどによるスクリプトを含むＨＴＭＬ５コンテンツであり、ウェブブラウザ（ＨＴＭＬレンダリングエンジン）が解釈・実行することで以下のような機能を提供する。
【００４４】
登録・検索プログラムは、図３に示すように、登録する情報の内容や情報検索の条件などをユーザが入力するためのインタフェースを提供する（入力機能）。情報登録の場合には、氏名８１、電話番号８２、メッセージ８３が入力可能であり、登録ボタン８４を選択することで、入力された情報の登録が実行される。なお、登録情報のフォーマットは任意であってよく、上記以外に例えば、年齢や現在地などの情報を入力するようにしてもよい。また、情報検索の場合には、氏名８５や電話番号８６を入力可能であり、検索ボタン８７を選択することで、入力された条件での検索が実行される。なお、図３のインタフェースは一例に過ぎず、例えば、入力項目や入力方式は図３に示す以外のものであってもよいし、情報登録と情報検索のためのページをそれぞれ異なるようにしてもよい。
【００４５】
登録ボタン８４が選択され情報登録が実行される場合には、登録・検索プログラムは、WebSocket APIを用いてリレーノードに対して情報登録要求を送信する（送信機能）。こ
の情報登録要求は、リレーノードのデータベース管理部２２４によって処理され、ユーザによって入力された登録情報が安否情報記憶部２３２に記憶される。登録・検索プログラムが、リレーノードから登録完了の通知を受けた場合には、登録が完了した旨の表示（例えば「登録完了」の表示）をユーザに提供する。また、ユーザによって入力された登録情報を、いくつのリレーノードに登録されたかを、WebStorage APIを用いてウェブブラウザ１２２環境内に記憶しておく。
【００４６】
検索ボタン８７が選択され情報検索が実行される場合には、登録・検索プログラムは、WebSocket APIを用いてリレーノードに対して情報検索要求を送信する（送信機能）。こ
のクエリ要求は、リレーノードのデータベース管理部２２４によって処理され、検索条件に合致する安否情報が安否情報記憶部２３２から抽出され、エンドノードに送信される。登録・検索プログラムが、リレーノードから検索結果の通知を受けた場合には、検索結果
の内容（例えば「山田太郎さん：避難所Ａにいます」）をユーザに提示することが好ましい。また、ユーザによって入力された検索条件を、検索結果とともにWebStorage APIを用いてウェブブラウザ１２２環境内に記憶しておく。
【００４７】
現在接続されているリレーノードとの接続が切断し、新しいリレーノードとの接続が検知された場合には、登録・検索プログラムは、WebStorage APIに記憶されている登録情報および検索条件についての登録要求および検索要求を新しいリレーノードに対して自動的に送信する（再送機能）。登録要求および検索要求に対するリレーノードからの応答は、WebStorage APIを用いてウェブブラウザ１２２環境内（ローカルデータベース）に記憶される。たとえば、登録済みリレーノード数や検索結果などがローカルデータベースに記憶される。
【００４８】
新しいリレーノードとの接続およびその検知方法について説明する。全てのリレーノードが共通のＥＳＳＩＤ（ネットワークＩＤ）を用いるようにすることで、携帯情報端末１００は一般に前回の実績を適用することで自動的に新しいリレーノードとの無線リンクを確立することが可能である。登録・検索プログラムは、定期的に無線リンクの確立有無を確認したり、無線リンクが確立した場合に携帯情報端末１００の制御部２２０からイベント通知を受け取ることで、新しい接続を検知可能である。新しい接続を検知した際に登録・検索プログラムがSystemInfo APIを用いてＥＳＳＩＤを調べて、ＥＳＳＩＤがリレーノードにおいて共通に用いられるものであれば、登録・検索プログラムは新しいリレーノードに接続したことを検知できる。
【００４９】
登録・検索プログラムは、ユーザからの指示によって情報登録に関する登録実績や情報検索に関する検索結果を表示する機能を有する。これは、WebStorage APIに登録情報や検索条件と関連づけられて記憶されている情報を表示することにより行える。登録実績は、例えば、いくつのリレーノードに対して情報登録が完了したかを表す情報である。検索結果は、例えば、検索条件に合致する登録情報である。また、いくつのリレーノードに対して情報検索を行ったかという情報などを表示してもよい。
【００５０】
登録・検索プログラムは、上記以外にも、既に入力された登録情報や検索条件の内容を変更するための機能や、情報得録や情報検索の自動実行を一時停止・再開・終了するための機能を提供することも好ましい。
【００５１】
＜ネットワークインタフェースの実装例＞
全てのリレーノード２００は、同一のＥＳＳＩＤおよび同一のＵＲＬを有するように設計することが好ましい。ＥＳＳＩＤを同一とすることにより、エンドノードは前回の接続実績を利用して自動的に接続することが可能となる。また、同一のＵＲＬ（より詳細には、スキームとドメインとポート番号からなるオリジン）によりアクセス可能とことで、エンドノードは同一のノードへのアクセスと認識でき、接続先のリレーノードが変更されてもセッションの継続が可能となる。また、WebStorage APIはオリジンによって名前空間が分けられるので、各リレーノードから取得した情報を同一のデータベース内に統一して管理できる。
【００５２】
また、リレーノード２００は、エンドノードからＨＴＴＰリクエストを受け、それが初回のアクセスである場合には、登録・検索プログラムのダウンロードを促すページへリダイレクトするように構成することも好ましい。こうすることで、ユーザが登録・検索プログラムを取得するためのアドレスを知らなくても、登録・検索プログラムを取得できるようになる。なお、リダイレクト先を登録・検索プログラムを配信するページとしても構わないが、ユーザビリティの観点から上記のようにしてユーザの確認を得てから登録・検索プログラムがダウンロードされる方が好ましい。
【００５３】
＜処理フロー＞
［情報登録処理］
以下、エンドノードからリレーノードに対して情報の登録や検索を行う際の処理の流れを図面を参照しながら説明する。まず情報登録処理について説明する。図４は情報登録処理の流れの概要を説明する図であり、図５は情報登録処理のシーケンスを示す図である。
【００５４】
エンドノードとリレーノードＡが接近すると、リレーノードＡの無線ＬＡＮアクセスポイント２２１とエンドノードの無線ＬＡＮクライアント１２１との間で接続が確立される（Ｓ１０１）。接続が確立されると、リレーノードＡのＤＨＣＰサーバが、エンドノードに対してＩＰアドレスを割り当てる（Ｓ１０２）。
【００５５】
ユーザがウェブブラウザ１２２を起動して、ＵＲＬを指定してリレーノードの登録・検索プログラムの配信ページにアクセスする（図４の処理１）と、図５のステップＳ１０４〜Ｓ１０７の処理が行われる。すなわち、ＤＮＳサーバでの名前解決によりＵＲＬに対応するＩＰアドレスが得られる（Ｓ１０４）。そして、ウェブブラウザ１２２がそのＩＰアドレスに対してＨＴＴＰ要求を送信し（Ｓ１０５）、ウェブサーバからのＨＴＴＰ応答を受信する（Ｓ１０６）。ＨＴＴＰ応答の中には登録・検索プログラムも含まれ、このプログラムコンテンツがエンドノードにダウンロードされる（Ｓ１０７、図４の処理２）。なお、登録・検索プログラムの配信ページへのアクセスは、ユーザがアドレスを直接入力してもよいし、ウェブブラウザ１２２がアドレスをあらかじめ記憶していてもよい。
【００５６】
なお、ここでは登録・検索プログラムの配信ページに対してＵＲＬを指定してアクセスする例を説明したが、エンドノードが無線ＬＡＮアクセスポイント２２１を介して初めてアクセスした場合には、リレーノードは、指定されたアドレスにかかわらず登録・検索プログラムのダウンロードページにリダイレクトすることが好ましい。この場合、ユーザがダウンロードの開始を選択することで、登録・検索プログラムのダウンロードが行われる。
【００５７】
ウェブブラウザ１２２が登録・検索プログラムを取得すると、その内容を解釈して、図３に示すような画面を提示する。ここではユーザがリレーノードに情報を登録するために、登録情報を入力して登録処理を開始したとする（Ｓ１０８、図４の処理３）。すると、登録・検索プログラムは、入力された登録情報をローカルデータベース（WebStorage API）に格納するとともに、この情報をリレーノードのデータベースに登録するための要求（登録要求）を、リレーノードＡに対して送信する（Ｓ１０９、図４の処理４）。この登録要求を受けて、リレーノードＡのデータベース管理部２２４は登録情報を安否情報記憶部２３２に登録（格納）する（図４の処理５）。
【００５８】
なお、図には示していないが、情報の登録が完了したらその旨の通知がリレーノードからエンドノードに送信され、エンドノードでは情報の登録が完了した旨の表示を行う。
【００５９】
ここで、リレーノードＡが移動するなどしてエンドノードとリレーノードＡの間の無線リンクが切断し（Ｓ１１０）、その後エンドノードとリレーノードＢが通信可能になる状況を想定する。エンドノードとリレーノードＢが接近すると、リレーノードＢの無線ＬＡＮアクセスポイント２２１とエンドノードの無線ＬＡＮクライアント１２１との間で接続が確立される（Ｓ１１１）。接続が確立されると、リレーノードＢのＤＨＣＰサーバが、エンドノードに対してＩＰアドレスを割り当てる（Ｓ１１２）。
【００６０】
登録・検索プログラムは、新しいリレーノードＢへの接続を検知すると、ステップＳ１０８においてユーザから入力された登録情報を、リレーノードＢに対してこの情報の登録
要求を自動的に（ユーザの明示的指示無しに）送信する（Ｓ１１４、図４の処理６）。リレーノードＢはこの登録要求を受けて、データベース管理部２２４を介して安否情報記憶部２３２に送信された情報を登録（格納）する（図４の処理７）。
【００６１】
このような処理を行うことで、ユーザは登録すべき情報を一度入力するだけで、新しいリレーノードとの接続が確立する度に、登録・検索プログラムが情報の登録を自動的に行うので、ユーザに負担を掛けることなく多くのリレーノードに対して情報を登録させることができる。
【００６２】
［情報検索処理］
次に、情報検索処理について説明する。図６は情報検索処理の流れの概要を説明する図であり、図７は情報検索処理のシーケンスを示す図である。無線ＬＡＮ接続を確立してからウェブコンテンツ（登録・検索プログラム）を取得するまでの処理（ステップＳ２０１〜Ｓ２０７、図６の処理１〜２）は情報登録処理の場合と同様であるので、説明を省略する。
【００６３】
ウェブブラウザ１２２が登録・検索プログラムを取得すると、その内容を解釈して、図３に示すような画面を提示する。ここではユーザがリレーノードから登録情報（安否情報）を取得するために、検索条件を入力して検索処理を開始したとする（Ｓ２０８、図６の処理３）。この場合、登録・検索プログラムは、入力された検索条件による検索要求をリレーノードに対して送信する（Ｓ２０９、図６の処理４）。この検索要求を受けて、リレーノードＡのデータベース管理部２２４は検索要求に含まれる条件で安否情報記憶部２３２を検索し、検索条件に合致するデータを取得してエンドノードへ送信する（Ｓ２１０。図６の処理５）。エンドノードは検索結果を受け取ると、その内容をローカルデータベース（WebStorage API）に格納する（図６の処理６）。また、ローカルデータベースに格納された検索結果を取得して、検索結果を表示するための画面をユーザに提示する（ステップＳ２１１、図６の処理７〜８）。
【００６４】
エンドノードとリレーノードＡの接続が切断してから、エンドノードがリレーノードＢと接続を開始するまでの処理（Ｓ２１２〜Ｓ２１５）は情報登録処理の場合と同様であるので説明を省略する。
【００６５】
登録・検索プログラムは、新しいリレーノードＢへの接続を検知すると、ステップＳ２０８においてユーザから入力された検索条件に基づく検索要求を、リレーノードＢに対して自動的に（ユーザの明示的指示無しに）送信する（Ｓ２１６、図６の処理９）。リレーノードＢはこの検索要求を受けて安否情報記憶部２３２を検索し、検索条件に合致するデータを取得してエンドノードへ送信する（Ｓ２１７、図６の処理１０）。エンドノードは検索結果を受け取ると、その内容をローカルデータベース（WebStorage API）に格納する（図６の処理１１）。
【００６６】
その後、ユーザが任意のタイミングで検索結果の表示を更新（リロード）するよう指示する（Ｓ２１８、図６の処理１２）と、登録・検索プログラムはローカルデータベースに登録されている情報を取得して、全ての検索結果を表示するための画面をユーザに提示する（Ｓ２１９、図６の処理１３〜１４）。
【００６７】
このような処理を行うことで、ユーザは検索条件を一度入力するだけで、新しいリレーノードとの接続が確立する度に、登録・検索プログラムが情報の検索を自動的に行うので、ユーザに負担を掛けることなく多くのリレーノードから情報検索を行える。
【００６８】
なお、ここで説明した処理は一例に過ぎない。例えば、登録・検索プログラムが既にウ
ェブブラウザ１２２に読み込まれているのであれば、リレーノードから登録・検索プログラムを取得せずに情報登録や情報検索の処理を開始すればよい。また、上記の説明では、情報登録あるいは情報検索のいずれか１つの処理のみが自動的に行われるものとして説明したが、複数の情報登録や複数の情報検索あるいは情報登録と情報検索の組合せを自動的に実行するようにしてもよい。すなわち、ユーザは登録・検索プログラムに対して登録処理や検索処理を複数依頼し、プログラムは新しいリレーノードと通信可能になる度にこれら複数の処理要求を新しいリレーノードに送信するようにしてもよい。また、それぞれの情報登録や情報検索について、ユーザが自動実行を一時停止したり再開したり終了したりするように指示可能とすることも好ましい。
【００６９】
また、エンドノードが登録・検索プログラムを介してリレーノードに要求を送信する際に、登録・検索プログラムのバージョンを通知することが好ましい。リレーノードでは、要求の送信元の登録・検索プログラムのバージョンを確認し、最新版でない場合にはエンドノードに対して最新版のプログラムを取得するよう促すことも好ましい。このようにすれば、常に最新のプログラムに基づいて情報の登録や検索が行える。なおここで、プログラムの更新とは、プログラム全体を更新すること以外にも、プログラムが参照する設定ファイルを更新することも含まれる。
【００７０】
＜実施形態の有利な効果＞
本実施形態によれば、ユーザが車載端末と通信可能になる度に情報登録や情報検索のための入力を行う必要がなくなり、ユーザの手間が軽減される。また、情報登録や情報検索のためのプログラムをあらかじめ携帯情報端末にインストールする必要がなく、単なるウェブアクセスによってこのプログラムを取得することができる。このようにユーザの手間を軽減することにより、ユーザの利用回数が増え、システム内により多くの情報が流通することが期待される。
【００７１】
また、情報登録や情報検索のためのプログラムを、ウェブブラウザ上で動作するウェブコンテンツの形式としているので、ＨＴＭＬ規格にしたがってプログラムを記述すれば、ハードウェアやＯＳに依存することなく任意の端末において実行が可能である。また、このようなプログラム配信形態を採用することで、プログラム未使用時には携帯情報端末のリソースを消費しないという利点もある。
【００７２】
＜変形例＞
上記の説明は、本発明の実施形態を例示的に説明したものであり、本発明は上記の実施形態に限定して解釈されるべきではなく、本発明の技術的思想の範囲内で種々の変形が可能である。
【００７３】
上記の実施形態では、全てのリレーノード（車載端末）が登録・検索プログラムを配信するための機能を有するものとして説明したが、一部のリレーノードのみがプログラム配信機能を有するようにしてもよい。また、分散データベースとして機能するリレーノードと、登録・検索プログラムを配信する配信ノードとを分離してもよい。すなわち、リレーノードは情報の登録や検索処理のみを行い、配信ノードは登録・検索プログラムの配信処理のみを行うようにしてもよい。このようにすると、エンドノードが登録・検索プログラムを取得できる機会が減ることが想定されるが、セキュリティが担保されたノードのみがプログラムを配信可能とできるので安全性が向上する。
【００７４】
また、上記の実施形態では、ウェブブラウザからウェブサーバへアクセスする際にＵＲＬを用いているが、ＩＰアドレスを指定してアクセスするようにしてもよい。この場合、ウェブブラウザ内のローカルデータベースはＩＰアドレスによって名前空間が分けられるので、全てのリレーノードを仮想的に同一の分散データベースとみなすためには、全ての
リレーノードが同一のＩＰアドレスを有するようにする必要がある。このようにしても、上記と同様の効果を得ることができる。
【００７５】
なお、配信ノードとリレーノードとを分離する場合は、少なくとも配信ノードについてはＥＳＳＩＤ（ネットワークＩＤ）を共通かつ固定とすることが望ましい。エンドノードがプログラム（ウェブコンテンツ）を取得する必要があるためである。配信ノードのプログラム配信アドレスのＵＲＬは、共通かつ固定であってもよいし、初回アクセス時にそのアドレスにリダイレクトされるようにしてもよい。また、リレーノードのＥＳＳＩＤやＵＲＬ（あるいはＩＰアドレス）も固定としてもよいが、これらは異なるようにし、リレーノードにアクセスする際のＥＳＳＩＤやＵＲＬ（あるいはＩＰアドレス）を配信ノードが配布するプログラム（群）内に記述しておいてもよい。このようにＥＳＳＩＤやＵＲＬ等をプログラムから指定することで、リレーノードが独立した複数の情報登録検索システムを併有する場合にも対応することができる。
【００７６】
また、上記の実施形態は災害時の安否情報伝達システムであるが、複数のリレーノードから構成される分散データベースシステムの応用は任意であって構わない。例えば、センサネットワークにおける情報中継や、センタ型データベースの負荷分散などを応用例として想定できる。どのようなシステムであっても、上記の実施形態で説明したエンドノードとリレーノードとの間の情報登録や情報検索のための仕組みは適用可能である。また、リレーノードは車載端末である必要はなく、任意の移動可能な無線通信装置であって構わない。移動可能な無線通信装置とは、車両や船舶や航空機などに備え付けられた無線通信装置や、ノート型コンピュータやスレート型コンピュータや携帯電話機などのようにユーザが持ち運び可能な無線通信機などである。もっとも、リレーノードが移動可能であることも必須ではなく固定の無線通信装置から構成されるシステム（センサネットワークなど）にも本発明は適用可能である。
【符号の説明】
【００７７】
１００：携帯情報端末（エンドノード）
１２０：制御部  １２１：ウェブブラウザ
１３０：記憶部  １３１：入力情報記憶部  １３２：応答結果記憶部
２００：車載端末（リレーノード）
２２０：制御部  ２２３：ウェブサーバ  ２２４：データベース管理部  ２２５：安否情報交換部
２３０：記憶部  ２３１：ウェブコンテンツ記憶部  ２３２：  安否情報記憶部
【図１】
2015122029.tif 000003
【図２】
2015122029.tif 000004
【図３】
2015122029.tif 000005
【図４】
2015122029.tif 000006
【図５】
2015122029.tif 000007
【図６】
2015122029.tif 000008
【図７】
2015122029.tif 000009