(57)【要約】【課題】複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる、データ集約装置（通信制御装置）を提供すること。【解決手段】通信制御方法は、複数の端末のそれぞれにおいて取得されたデータを、ネットワークを介して受信して情報記録媒体に蓄積し、複数の端末のそれぞれにおいてデータが取得されてから通信ネットワークを介してデータが受信されるまでの、伝達に要する最大時間の推定値である、網内伝達時間を取得し、端末においてデータが取得された取得時刻から現在時刻までの時間が、取得された網内伝達時間よりも短いデータを判定し、蓄積されたデータのうち、網内伝達時間よりも短いと判定されたデータを所定の処理に用いるデータの対象から除外し、蓄積されたデータのうち、網内伝達時間よりも短いと判定されたデータを除外したデータを用いて所定の処理を実行する。【選択図】図１Ａ
2015207996.tif 000002
【特許請求の範囲】
【請求項１】
通信制御装置の通信制御方法であって、
複数の端末のそれぞれにおいて取得されたデータを、通信ネットワークを介して受信する受信ステップと、
前記受信されたデータを情報記録媒体に蓄積するデータ蓄積ステップと、
前記複数の端末のそれぞれにおいて前記データが取得されてから前記通信ネットワークを介して前記データが受信されるまでの、伝達に要する最大時間の推定値である、網内伝達時間を取得する網内伝達時間取得ステップと、
前記情報記録媒体に蓄積されたデータのうち、前記端末において前記データが取得された取得時刻から現在時刻までの時間が、前記網内伝達時間よりも短い前記データを判定するデータ判定ステップと、
前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを所定の処理に用いるデータの対象から除外する処理対象除外ステップと、
前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを除外したデータを用いて前記所定の処理を実行する処理実行ステップと、を有する、
通信制御方法。
【請求項２】
前記複数の端末のそれぞれは、所定の状態量を検出し、
前記受信されるデータは、前記複数の端末のそれぞれから送信され、
前記受信されるデータは、前記データを送信した端末において検出された前記所定の状態量の検出結果を含む、
請求項１に記載の通信制御方法。
【請求項３】
前記データには、前記取得時刻として、前記端末において所定の状態量を検出した時刻を示す時刻情報が付随しており、
前記所定の処理は、
前記時刻情報が示す時刻の順序に沿って前記データを集約する処理を含む、
請求項１に記載の通信制御方法。
【請求項４】
前記通信ネットワークは、無線通信のネットワークを含み、
前記網内伝達時間の取得において、
前記所定の処理が行われる毎に、前記通信ネットワークの通信状況を取得し、前記取得された通信状況に基づいて前記網内伝達時間を算出する、
請求項１に記載の通信制御方法。
【請求項５】
前記データの受信では、
前記複数の端末のうちの一の端末において取得されたデータを前記複数の端末のうちの他の端末を介して受信し、
前記複数の端末のそれぞれから送信されるデータは、前記複数の端末のそれぞれの前記通信ネットワークにおける死活状況を示す死活情報を含み、
前記所定の処理は、前記死活情報に基づいて前記通信ネットワークにおける前記データの伝送経路を制御する処理を含む、
請求項４に記載の通信制御方法。
【請求項６】
前記データは、パケットに格納されて前記通信ネットワークを介して伝送され、
前記データの受信において、
欠落したパケットを検知し、
前記欠落したパケットを検知した場合、前記欠落した前記パケットの再送を前記欠落したパケットの送信元である前記端末に対して要求し、
前記網内伝達時間の取得において、前記データの再送時間に要する時間を含めた、前記データの伝達に要する最大時間の推定値を算出することにより、前記網内伝達時間を取得する
請求項４に記載の通信制御方法。
【請求項７】
前記通信制御方法は、更に
前記通信ネットワーク内に構築された伝送経路上に位置する各端末における通信状況を示す通信状況情報を、前記通信ネットワークから取得し、
前記網内伝達時間の取得において、
前記取得された通信状況情報に基づいて、前記網内伝達時間を算出する、
請求項６に記載の通信制御方法。
【請求項８】
前記データの受信、前記データの蓄積、前記網内伝達時間の取得、前記網内伝達時間よりも短いデータの判定、前記網内伝達時間よりも短いと判定されたデータの除外、前記所定の処理の実行の少なくとも１つはプロセッサを用いて行われる、
請求項１に記載の通信制御方法。
【請求項９】
通信システムに用いる通信制御装置であって、
複数の端末のそれぞれにおいて取得されたデータを、通信ネットワークを介して受信するデータ受信部と、
前記受信されたデータを情報記録媒体に蓄積するデータ蓄積部と、
前記複数の端末のそれぞれにおいて前記データが取得されてから前記通信ネットワークを介して前記データが受信されるまでの、伝達に要する最大時間の推定値である、網内伝達時間を取得する網内伝達時間取得部と、
前記情報記録媒体に蓄積されたデータのうち、前記複数の端末のそれぞれにおける前記データの取得時刻から現在時刻までの時間が前記網内伝達時間よりも短い前記データを判定し、前記網内伝達時間よりも短いと判定されたデータを所定の処理に用いるデータの対象から除外する処理対象制御部と、
前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを除外した前記データを用いて前記所定の処理を実行する処理実行部と、を有する、
通信制御装置。
【請求項１０】
前記データ受信部、前記データ蓄積部、前記網内伝達時間取得部、前記処理対象制御部、前記処理実行部の少なくとも１つはプロセッサを含む、
請求項９に記載の通信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、複数の端末から受信したデータに基づいて所定の処理を行う通信制御方法および通信制御装置に関する。
【背景技術】
【０００２】
複数の端末のそれぞれで取得される、時々刻々と変化するデータを収集し、収集されたデータに基づいて所定の処理を行う装置（以下「データ集約装置」という）は、様々な分野で採用されている（例えば、特許文献１参照）。
【０００３】
特許文献１に記載の技術（以下「従来技術」）という）は、水道メータ等の複数のセンシング端末のそれぞれで取得されたセンサ情報を、無線通信により収集し、収集されたセンサ情報に基づいて、一覧表示等の処理を行う。このような従来技術によれば、多数の端末で取得されたデータに基づく処理を、簡単に行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−３３０６２８号公報
【非特許文献】
【０００５】
【非特許文献１】Sirish Chandrasekaran、他１０名、"TelegraphCQ: Continuous Dataflow Processing for an Uncertain World"、 [online]、２００３年１月５日、CIDR(Conference on Innovative Data Systems Research)、[平成２６年４月４日検索]、インターネット<URL:http://www-db.cs.wisc.edu/cidr/cidr2003/program/p24.pdf>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ある時点までに複数の端末で取得された一まとまりのデータ群に基づいて行われるべき処理が、存在する。例えば、マルチホップ通信ネットワークを構成する各端末の死活状況を示すデータに基づいて、データ伝送経路（トポロジー）を設定し直す処理である。
【０００７】
一方で、特に無線通信によりデータ収集を行う場合、データが端末で取得されてからデータ集約装置に到達するまで時間（以下「伝達時間」という）には、ばらつきが生じ得る。すると、各データがデータ集約装置で受信される時刻（以下「受信時刻」という）の順序が、各データが端末で取得された時刻（以下「取得時刻」という）の順序と異なることがある。
【０００８】
従来技術を上記処理に適用した場合、タイミングによっては、必要なデータが欠落した状態で、処理が行われてしまうおそれがある。すなわち、従来技術では、処理の結果に、一意性や一貫性が保たれないおそれがある。
【０００９】
本発明の目的は、複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる、データ集約装置およびデータ集約方法（通信制御装置および通信制御方法）を提供することである。
【課題を解決するための手段】
【００１０】
本開示の通信制御方法は、通信制御装置の通信制御方法であって、複数の端末のそれぞれにおいて取得されたデータを、通信ネットワークを介して受信する受信ステップと、前記受信されたデータを情報記録媒体に蓄積する蓄積ステップと、前記複数の端末のそれぞれにおいて前記データが取得されてから前記通信ネットワークを介して前記データが受信されるまでの、伝達に要する最大時間の推定値である、網内伝達時間を取得する網内伝達時間取得ステップと、前記情報記録媒体に蓄積されたデータのうち、前記端末において前記データが取得された取得時刻から現在時刻までの時間が、前記網内伝達時間よりも短いデータを判定するデータ判定ステップと、前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを所定の処理に用いるデータの対象から除外する処理対象除外ステップと、前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを除外した前記データを用いて前記所定の処理の実行を行う処理実行ステップと、を有する。
【００１１】
なお、これらの包括的または具体的な側面は、システム、装置、方法、および、コンピュータプログラムで実現されてもよく、システム、装置、方法、およびコンピュータプログラムの任意な組み合わせで実現されてもよい。
【発明の効果】
【００１２】
本発明によれば、複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる。
【図面の簡単な説明】
【００１３】
【図１Ａ】図１Ａは、本実施の形態１に係るデータ集約装置の機能構成の一例を示すブロック図である。
【図１Ｂ】図１Ｂは、本実施の形態１に係るデータ集約装置のハードウェア構成の一例を示すブロック図である。
【図２】図２は、本実施の形態２に係るデータ集約装置が適用される通信システムの構成の一例を示すシステム構成図である。
【図３】図３は、本実施の形態２に係るデータ集約装置の構成の一例を示すブロック図である。
【図４】図４は、本実施の形態２に係るデータ集約装置の動作の一例を示すフローチャートである。
【図５】図５は、本実施の形態２における下流側における死活状況の変化の一例を示す図である。
【図６】図６は、本実施の形態２における処理の様子の一例を示す図である。
【図７】図７は、本実施の形態２における処理の結果の一例を示す図である。
【図８】図８は、網内伝達時間を考慮しない場合における処理の様子の一例を示す図である。
【図９】図９は、網内伝達時間を考慮しない場合における処理の結果の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本開示の各実施の形態について、図面を参照して詳細に説明する。
なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施の形態において、各々の内容を組み合わせることもできる。
【００１５】
（実施の形態１）
本開示の実施の形態１は、本開示の基本的態様の一例である。
【００１６】
図１Ａは、本実施の形態に係るデータ集約装置３００の機能構成の一例を示すブロック図である。
【００１７】
図１Ａにおいて、通信制御装置に対応するデータ集約装置３００は、データ受信部に対応するデータ収集部３２０、データ蓄積部３２１、処理実行部に対応する集約処理部３４０、網内伝達時間取得部３３１、および処理対象制御部３３２を有する。
【００１８】
データ収集部３２０は、複数の端末のそれぞれから、通信ネットワークを介して当該端末において取得されたデータを受信する。
【００１９】
通信ネットワークとは、例えば、データ集約装置３００と複数の端末のうちのいずれかとの間に構築されたデータの伝送経路（またはデータ伝送経路ともいう）、または複数の端末間に構築された伝送経路を含む。
【００２０】
データ蓄積部３２１は、受信されたデータを蓄積する。データ蓄積部３２１は、例えば、受信されたデータをデータ集約装置３００が備える書き込み可能な情報記録媒体に蓄積する。書き込み可能な情報記録媒体とは、例えば、ハードディスクまたは書き込み可能なメモリなどである。
【００２１】
集約処理部３４０は、データ蓄積部３２１（より具体的には、情報記録媒体）に蓄積されたデータに基づいて所定の処理の実行を行う。
【００２２】
網内伝達時間取得部３３１は、例えば、複数の端末のそれぞれにおいてデータが取得されてからデータ収集部３２０において、このデータが受信されるまでの、データの伝達に要する最大時間の推定値である、網内伝達時間を取得する。
【００２３】
処理対象制御部３３２は、例えば、端末における取得時刻から所定の処理が行われるまでの時間が、取得された網内伝達時間よりも短いデータを、所定の処理の対象から除外する。
【００２４】
図１Ｂは、本実施の形態１に係るデータ集約装置のハードウェア構成の一例を示すブロック図である。
【００２５】
データ集約装置３００は、例えば、プロセッサに対応するＣＰＵ（Central Processing Unit）３００ａ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスク等の記憶媒体３００ｂ、ＲＡＭ（Random Access Memory）等の作業用メモリ３００ｃ、および通信回路３００ｄを有するコンピュータである。
【００２６】
例えば、記憶媒体３００ｂには、制御プログラムが格納されている。制御プログラムは、例えば、データ集約装置３００に対応するコンピュータの製造時に予め記憶媒体に格納される。
【００２７】
または、制御プログラムは、コンピュータ読み取り可能な記録媒体から読み出されて記憶媒体３００ｂに格納されても良い。
【００２８】
または、制御プログラムは、この制御プログラムを蓄積する装置からネットワークを介してダウンロードされ、記憶媒体３００ｂに格納されても良い。
【００２９】
制御プログラムは、例えばデータ収集部３２０、データ蓄積部３２１、集約処理部３４０、網内伝達時間取得部３３１、および処理対象制御部３３２のうちの少なくとも一つを機能させるためのプログラムを含む。
【００３０】
本実施の形態では、制御プログラムは、データ収集部３２０、データ蓄積部３２１、集約処理部３４０、網内伝達時間取得部３３１、および処理対象制御部３３２を機能させるためのプログラムを含むものを例に説明をする。
【００３１】
例えばＣＰＵ３００ａに制御プログラムを実行させることで、コンピュータは、データ集約装置として機能する。
【００３２】
この場合、上記した各部（つまり、データ収集部３２０、データ蓄積部３２１、集約処理部３４０、網内伝達時間取得部３３１、および処理対象制御部３３２）の機能は、ＣＰＵが制御プログラムを実行することにより実現される。
【００３３】
なお、データ収集部３２０、データ蓄積部３２１、集約処理部３４０、網内伝達時間取得部３３１、および処理対象制御部３３２のうちのいずれかの機能は、図示しない専用の信号処理回路（または、ハードウェア回路）に組み込んでもよい。
【００３４】
この信号処理回路は、例えばＡＳＩＣ（Application-Specific Integrated Circuit）またはＦＰＧＡ（Field Programmable Gate Arrays）等を含む。
【００３５】
このようなデータ集約装置３００は、受信データに対する所定の処理行う場合、端末におけるデータの取得時刻から所定の処理が行われるまでの時間が網内伝達時間よりも短いデータを除外して、行うことができる。すなわち、ある時点までに取得されたデータ群に基づいて所定の処理を行うべき場合に、かかるデータ群に欠落が生じた状態で所定の処理が行われるのを回避することができる。
【００３６】
これにより、データ集約装置３００は、複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる。
【００３７】
（実施の形態２）
本開示の実施の形態２は、本開示をデータ伝送経路の制御の処理に適用した場合の、具体的態様の一例である。
【００３８】
＜通信システムの構成＞
まず、本実施の形態に係るデータ集約装置が適用される通信システムの構成について説明する。
【００３９】
図２は、本実施の形態に係るデータ集約装置が適用される通信システムの構成の一例を示すシステム構成図である。
【００４０】
図２において、通信システム１００は、上流端末２００、通信制御装置の一例としてのデータ集約装置３００、および第１〜第４の下流端末４００１〜４００４を有する。
【００４１】
上流端末２００、およびデータ集約装置３００との間は、例えば、有線または無線の通信ネットワークを介して接続されている。
【００４２】
また、データ集約装置３００、および第１〜第４の下流端末４００１〜４００４との間は、例えば、無線通信のネットワークを含む通信ネットワークを介して接続されている。
【００４３】
データ集約装置３００、および第１〜第４の下流端末４００１〜４００４とは、例えば、通信ネットワーク内に構築されたデータ伝送経路を介してデータの伝送が行われる。
【００４４】
データ集約装置３００は、例えば、受信したデータを用いて、第１〜第４の下流端末４００１〜４００４のそれぞれからデータを受信するために用いるデータ伝送経路を決定する。
【００４５】
データ集約装置３００は、例えば、受信したデータを用いてデータ伝送経路を所定時間毎に決定する。
【００４６】
これにより、データ集約装置３００は、例えば、上述の通信ネットワーク内に構築されたデータ伝送経路を、適宜切り替える（または、再構築する）ことができる。
【００４７】
図２に示す例では、第１〜第４の下流端末４００１〜４００４のそれぞれにおいて取得されたデータは例えば、図２に示されたデータ伝送経路を介してデータ集約装置３００へ送信される。
【００４８】
図２に示す例では、データ集約装置３００と第１の下流端末４００１との間にデータ伝送経路が構築されている。また、第１の下流端末４００１と第２の下流端末４００２との間にデータ伝送経路が構築されている。
【００４９】
また、第２の下流端末４００２と第３の下流端末４００３との間、および第２の下流端末４００２と第４の下流端末４００４との間にそれぞれデータ伝送経路が構築されている。
【００５０】
第１〜第４の下流端末４００１〜４００４からのデータは、上述のデータ伝送経路上に沿って（または、上述のデータ伝送経路上に位置する下流端末４００を介して）データ集約装置３００へ送られる。
【００５１】
図２に示す例では、第１の下流端末４００１から送信されたデータは、データ集約装置３００が受信する。
【００５２】
第２の下流端末４００２から送信されたデータは、第１の下流端末４００１を介してデータ集約装置３００が受信する。
【００５３】
第３の下流端末４００３から送信されたデータは、第１の下流端末４００１および第２の下流端末４００２を介してデータ集約装置３００が受信する。
【００５４】
第４の下流端末４００４から送信されたデータは、第１の下流端末４００１および第２の下流端末４００２を介してデータ集約装置３００が受信する。
【００５５】
なお、第１〜第４の下流端末４００１〜４００４は、同一の構成を有するため、適宜、「下流端末４００」としてまとめて説明を行う。また、適宜、第１〜第４の下流端末４００１〜４００４は、この順に、端末Ａ〜Ｄと表現するものとする。
【００５６】
端末Ａ〜Ｄは、それぞれ、例えば、建物の中などに設置されていてもよい。または、端末Ａ〜Ｄは、それぞれ、例えば移動体に搭載されていてもよい。移動体としては、例えば、それぞれ航空機（例えば、ヘリコプタなど）、車（例えば、自動車、トラックなど）などの輸送機器がある。移動体は、無人で自動運転できるものであっても、人が運転するものであってもよい。
【００５７】
また、通信システム１００のうち、少なくともデータ集約装置３００および各下流端末４００は、無線通信部を有し、無線通信によりデータの送受信を行うものとする。かかる無線通信の通信方式としては、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、無線ＬＡＮ（Local Area Network）、ＤＥＣＴ（Digital Enhanced Cordless Telecommunications）、ＩＳＡ１００、あるいはＩＥＥＥ８０２.１５.４、ＺｉｇＢｅｅ（登録商標）を採用することができる。
【００５８】
上流端末２００は、有線通信あるいは無線通信を介してデータ集約装置３００と接続されており、データ集約装置３００に対して所定の処理の実行を指示する。かかる指示は、例えば、所定の制御パケットの送信により行われる。
【００５９】
本実施の形態において、所定の処理とは、死活情報を含むデータを各下流端末４００から受信し、受信した死活情報に基づいて、できるだけ多くの下流端末４００からデータ収集を行えるように、データ伝送経路を最適な状態に適宜切り替える（またはデータ伝送経路を再構築する）処理である。かかる処理は、以下、「伝送経路制御処理」という。
【００６０】
また、死活情報とは、下流端末４００がデータの取得、送信、および転送の機能（以下「端末機能」という）を発揮できるか否かの状態（死活状況）を示す情報である。死活情報には、データの取得、送信、および転送の機能を発揮できない状態に移行したこと（離脱）を示すイベントデータと、データの取得、送信、および転送の機能を発揮できる状態に移行したこと（復帰）を示すイベントデータとが含まれる。
【００６１】
データ集約装置３００は、第１〜第４の下流端末４００１〜４００４から送信されたデータを受信し、蓄積する。そして、データ集約装置３００は、上流端末２００からの上記指示に従って、蓄積されたデータに含まれる各下流端末４００の死活情報に基づいて、上述の伝送経路制御処理を行う。
【００６２】
かかる伝送経路制御処理において、データ集約装置３００は、例えば、マルチホップのデータ伝送経路を決定し、決定されたデータ伝送経路でデータ伝送を行うように指示するパケットを、各下流端末４００へと送信する処理を含む。かかるパケットの送信は、例えば、無線搬送波の電力量を強くした電波により行われてもよいし、データ伝送に用いられる周波数帯域とは別の周波数帯域の無線通信により行われてもよい。
【００６３】
下流端末４００は、データを取得し、取得したデータをデータ集約装置３００へ送信する。また、下流端末４００からデータ集約装置３００へ送信するデータには、下流端末４００が、このデータを取得した時刻（取得時刻）を示す時刻情報が付随しても良い。
【００６４】
より具体的には、下流端末４００は、例えば、所定の状態量を検出するセンサを含み、検出結果とその検出された時刻（取得時刻）を示す時刻情報（例えば、タイムスタンプ）とを、上記データの少なくとも一部として含め、データ集約装置３００へ送信する。下流端末４００は、例えば上記データをパケットに格納し、このパケットをデータ集約装置３００へ通信ネットワークに構築されたデータ伝送経路を介して送信する。
【００６５】
ここで、所定の状態量には、例えば、気温、湿度、加速度、位置、あるいは時刻等が含まれる。また、所定の状態量には、特定スイッチのオンオフ状態およびその切り替わりを示すもの、または、近隣の他の下流端末４００または基地局との間の無線通信の通信状況（例えば、電波強度の変遷、変復調方式の変更の度合い、受信信号の誤り率等）が含まれる。
【００６６】
また、近隣の他の下流端末４００の死活状態が変化するイベントが発生したとき、自身の下流端末４００が検出する所定の状態量（または、自身の下流端末４００が検出した検出結果）には、例えば自身と接続する当該他の下流端末４００の死活情報（離脱あるいは復帰のイベントデータ）が含まれる。
【００６７】
また、下流端末４００は、データ集約装置３００からのデータ伝送経路の制御を受けて、他の下流端末４００で取得されたデータを受信して転送する、マルチホップ通信の機能を有する。すなわち、各下流端末４００は、取得したデータをパケット化し、直接に、あるいは、他の下流端末４００を介したマルチホップ通信により、データ集約装置３００へ送信する。なお、各下流端末４００は、送信したパケットの消失または欠損を検知して、かかるパケット（欠落したパケット）を再送する機能を有する。
【００６８】
また、各下流端末４００は、他の下流端末４００から通信ネットワーク（または通信ネットワーク内に構築されたデータ伝送経路）を介して受信したパケットの欠落を検知し、欠落したパケットの再送を送信元である他の下流端末４００へ要求する機能を有する。
【００６９】
また、データ集約装置３００は、下流端末４００から通信ネットワークを介して受信したパケットの欠落を検知し、欠落したパケットの再送を送信元である下流端末４００へ要求する機能を有する。
【００７０】
なお、各下流端末４００は、データ集約装置３００による経路制御とは別に、近隣の下流端末４００やデータ集約装置３００との間の通信状況に応じて、マルチホップ伝送におけるデータ伝送経路を変更する機能を有していてもよい。かかる機能は、例えば、ＯＬＳＲ（Optimized Link State Routing）プロトコルやＡＯＤＶ（Ad hoc On-Demand Distance Vector）プロトコル等により実現可能である。
【００７１】
ここで、時刻ｔ＝ｔ０における初期状態のデータ伝送経路は、例えば、図２に示す状態にあるものとする。すなわち、端末Ａ（または、下流端末４００１）は、データ集約装置３００に直接に（他の下流端末４００を介さずに）接続し、端末Ｂ（または、下流端末４００２）は、端末Ａに直接に接続しているものとする。そして、端末Ｃ（または、下流端末４００３）、端末Ｄ（または、下流端末４００４）は、それぞれ、端末Ｂに直接接続し、端末Ａ、Ｂを介してデータ集約装置３００に接続しているものとする。
【００７２】
以上のような構成を有する通信システム１００は、複数の下流端末４００から死活情報を含むデータを収集し、収集されたデータに基づいて、データ伝送経路を制御することができる。
【００７３】
ところで、データ伝送経路は、ある時点における下流側の実際の死活状況に基づいて、決定されることが望ましい。実際の死活状況は、その時点までに下流側で取得された全ての死活情報を、取得時刻の順序（以下「取得順序」という）に従って処理することにより、高精度に判定することができる。
【００７４】
データ集約装置３００は、ある時点までに下流側で取得された全ての死活情報を取得順序に従って処理することにより、上記時点における下流側の実際の死活状況に対応した、適切なデータ伝送経路を設定することができる。
【００７５】
ここで、データ集約装置３００での受信時刻の順序（以下「受信順序」という）が取得順序と一致する場合を想定する。この場合、どのタイミングで伝送経路制御処理が行われたとしても、最後に受信された死活情報の取得時刻までに下流側で取得された、全ての死活情報が、既に受信されていることになる。すなわち、適切なデータ伝送経路を設定するのに必要な一まとまりのデータ群が揃った状態で、伝送経路制御処理を行うことができる。
【００７６】
ところが、通信システム１００では、受信順序が取得順序と一致しない場合がある。この場合、タイミングによっては、最後に受信された死活情報の取得時刻までに下流側で取得された、全ての死活情報が揃ってはいない状態で、伝送経路制御処理が開始され得る。すなわち、データ集約装置３００は、適切なデータ伝送経路を設定するのに必要な一まとまりのデータ群に欠落が生じた状態で、伝送経路制御処理を行うおそれがある。そして、かかる欠落が生じた状態で伝送経路制御処理が行われると、不適切なデータ伝送経路が決定されてしまうおそれがある。
【００７７】
そこで、データ集約装置３００は、網内伝達時間を考慮して伝送経路制御処理の実行を行うことにより、適切なデータ伝送経路を設定するのに必要な一まとまりのデータ群に欠落が生じた状態で伝送経路制御処理が行われるのを回避する。
【００７８】
より具体的には、データ集約装置３００は、下流端末４００における取得時刻から現在時刻までの時間が、取得された網内伝達時間よりも短いデータを除外して、伝送経路制御処理を行う。ここで、網内伝達時間とは、各下流端末４００において取得されてからデータ集約装置３００において受信されるまでの、データの伝達に要する最大時間の推定値である。
【００７９】
なお、以下の説明において、通信システム１００のうちデータ集約装置３００から見て上流端末２００の側の通信ネットワークは、適宜、「上流側」という。また、通信システム１００のうちデータ集約装置３００から見て第１〜第４の下流端末４００１〜４００４の側の通信ネットワークは、適宜、「下流側」という。
【００８０】
＜データ集約装置の構成＞
次に、データ集約装置３００の構成について説明する。
【００８１】
図３は、データ集約装置３００の構成の一例を示すブロック図である。
【００８２】
図３において、データ集約装置３００は、通信状況監視部３１０、データ収集部３２０、指示受付部３３０、および集約処理部３４０を含む。
【００８３】
通信状況監視部３１０は、通信ネットワークにおける下流側の各所（例えば、ある時点において、通信ネットワーク内に既に構築がなされている伝送経路上に位置する下流端末４００）におけるパケットロス率およびパケット往復時間等の、通信状況を示す情報（以下「通信状況情報」という）を、定期的に下流側から取得する。そして、通信状況監視部３１０は、取得した通信状況情報を記録すると共に、記録された複数の時刻における通信状況情報（つまり、通信状況の変動を示す時系列データ）を統計処理する。
【００８４】
通信状況監視部３１０は、統計処理された結果を例えば、データ集約装置３００が備える書き込み可能な情報記録媒体に保持する。また、通信状況監視部３１０は、後述の指示受付部３３０から最新の通信状況情報を要求されたとき、情報記録媒体に保持された通信状況情報のうち最新のものを、指示受付部３３０へ出力する。
【００８５】
通信状況情報の定期的な取得は、通信状況監視部３１０から各下流端末４００に対して通信状況情報の取得および送信を要求することにより行われてもよいし、各下流端末４００が能動的に通信状況情報の取得および送信を行うことにより行われてもよい。また、パケットロス率の取得手法としては、例えば、ＲＦＣ３５５０に規定されている受信者レポートを採用することができる。
【００８６】
また、通信状況情報の統計処理としては、例えば、パケットロス率および往復時間のそれぞれに対して、指数加重移動平均を用いて平滑化を行う処理や、更に、平滑化した値に対して観測値の分散値のＮ倍（Ｎは０以上の値）を加える処理を、採用することができる。
【００８７】
データ収集部３２０は、通信ネットワーク（または、通信ネットワーク内に構築されたデータの伝送経路）を介して第１〜第４の下流端末４００１〜４００４のそれぞれから、当該下流端末４００において取得されたデータを受信する。データ収集部３２０は、データ蓄積部３２１を有する。
【００８８】
データ蓄積部３２１は、受信されたデータを、当該データに付随する時刻情報が示す取得時刻の順序に並べた状態（キュー）で蓄積する。また、データ蓄積部３２１は、後述の指示受付部３３０から取得時刻の範囲を指定してデータを要求されたとき、蓄積されたデータのうち該当するものを、指示受付部３３０へ出力する。
【００８９】
指示受付部３３０は、上流端末２００から、上述の伝送経路制御処理の実行を指示する制御パケットを受信すると、後述の集約処理部３４０に対して、伝送経路制御処理を実行させる。但し、指示受付部３３０は、データの網内伝達時間を考慮して、伝送経路制御処理が行われるようにする。指示受付部３３０は、網内伝達時間取得部３３１および処理対象制御部３３２を有する。
【００９０】
なお、以下の説明において、伝送経路制御処理は、データ蓄積部３２１に蓄積されているイベントデータを、単位時間ｄｔ毎に取得時刻の古いものから順に１つずつ抽出するクエリを実行し、抽出したイベントデータに応じてデータ伝送経路を再構築する処理とする。かかる処理は、結果的に、時刻情報が示す時刻の順序に沿って、イベントデータを集約する処理と考えることができる。また、データ集約装置３００は、データ蓄積部３２１から抽出され、データ伝送経路を再構築する処理に用いたイベントデータを、データ伝送経路の再構築の後、データ蓄積部３２１から削除するものとする。
【００９１】
網内伝達時間取得部３３１は、通信状況監視部３１０から最新の通信状況情報を取得し、かかる通信状況情報に基づいて、下流側の網内伝達時間を取得する。例えば、網内伝達時間取得部３３１は、下流側の各所におけるパケットロス率およびパケット往復時間に基づいて、網内伝達時間を算出する。そして、網内伝達時間取得部３３１は、算出された網内伝達時間を、処理対象制御部３３２へ出力する。
【００９２】
処理対象制御部３３２は、集約処理部３４０に対して、下流端末４００における取得時刻から現在時刻までの時間が、入力された網内伝達時間よりも短いデータを、伝送経路制御処理の対象から除外させる。より具体的には、処理対象制御部３３２は、現在時刻から網内伝達時間だけ遡った時刻から、現在時刻までの時間範囲を、データ不確定時間範囲として算出する。そして、処理対象制御部３３２は、算出したデータ不確定時間範囲を示す時間範囲情報を、集約処理部３４０へ出力する。データ不確定時間範囲は、つまり、未受信のデータが存在し得る時間範囲である。
【００９３】
集約処理部３４０は、時間範囲情報を入力される毎に、データ蓄積部３２１に蓄積されたデータを取得し、取得されたデータに基づいて伝送経路制御処理を行う。つまり、集約処理部３４０が、伝送経路制御処理を行う毎に、時間範囲情報の入力がなされる、つまり、通信ネットワーク内の下流側の各所における通信状況の取得、取得した通信状況に基づく網内伝達時間の算出がなされることを意味する。
【００９４】
但し、集約処理部３４０は、入力された時間範囲情報が示すデータ不確定時間範囲に取得時刻が含まれるデータについては、データ蓄積部３２１から取得しない。すなわち、集約処理部３４０は、下流端末４００における取得時刻から現在時刻までの時間が、入力された網内伝達時間よりも短いデータについては、伝送経路制御処理の対象としない。
【００９５】
なお、データ集約装置３００は、図１Ｂに示したように、例えば、ＣＰＵ３００ａ、制御プログラムを格納した記憶媒体３００ｂ、作業用メモリ３００ｃ、および通信回路３００ｄを有する。この場合、上記した各部の機能は、ＣＰＵ３００ａが制御プログラムを実行することにより実現される。
【００９６】
このようなデータ集約装置３００は、各下流端末４００からデータを収集し、収集したデータに基づく伝送経路制御処理を、取得時刻から当該処理が行われるまでの時間が網内伝達時間よりも短いデータを除外して行うことができる。
【００９７】
＜データ集約装置の動作＞
次に、データ集約装置３００の動作について説明する。
【００９８】
図４は、データ集約装置３００の動作の一例を示すフローチャートである。
【００９９】
まず、ステップＳ１１００において、通信状況監視部３１０は、下流側の通信状況の監視、つまり、通信状況情報の受信、蓄積、および統計処理を開始する。また、データ収集部３２０は、各下流端末４００からのデータの受信および蓄積を開始する。
【０１００】
そして、ステップＳ１２００において、指示受付部３３０は、伝送経路制御処理（所定の処理）を行う旨の指示を受けたか否かを判断する。指示受付部３３０は、かかる指示を受けていない場合（Ｓ１２００：ＮＯ）、処理を後述のステップＳ１７００へ進める。また、指示受付部３３０は、かかる指示を受けた場合（Ｓ１２００：ＹＥＳ）、処理をステップＳ１３００へ進める。
【０１０１】
例えば、上流端末２００は、伝送経路制御処理（所定の処理）を行う旨を指示する制御パケットを送信する。指示受付部３３０は、例えば、上流端末２００から送信された制御パケットを受けたか否かを判断することで、伝送経路制御処理（所定の処理）を行う旨の指示を受けたか否かの判断を行う。
【０１０２】
なお、上流端末２００は、伝送経路制御処理を行う旨の指示を、例えば、単位時間ｄｔ毎に送信する。つまり、例えば、伝送経路制御処理を行う旨の指示の制御パケットが指示受付部３３０に単位時間ｄｔ毎に入力される。
【０１０３】
ステップＳ１３００において、網内伝達時間取得部３３１は、下流端末４００毎に、通信状況監視部３１０に保持されたパケットロス率およびパケット往復時間（好ましくは、統計処理後の値）に基づいて、必要伝達時間ＲＳ−Ｔを算出する。なお、記号Ｓは、データ集約装置３００に対応し、記号Ｔは、第Ｔの下流端末４００Ｔに対応するものとする。また、記号ｉ，ｊは、リンクにより互いに接続された隣接する通信端末（データ集約装置３００あるいは下流端末４００）を示す。
【０１０４】
第Ｔの下流端末４００Ｔの必要伝達時間ＲＳ−Ｔは、例えば、以下のようにして算出される。
【０１０５】
なお、データ集約装置３００と第Ｔの下流端末４００Ｔとの間の往復時間ＲＴＴＳ−Ｔは、データ集約装置３００と第Ｔの下流端末４００Ｔとの間に存在する全てのリンクの往復時間ＲＴＴｉ−ｊを合計した値となる。
【０１０６】
すなわち、図２に示すデータ伝送経路の場合、データ集約装置３００と端末Ｂとの間の往復時間ＲＴＴＳ−Ｂは、以下の式（１）で表される。ここで、ＲＴＴＳ−Ａは、データ集約装置３００と端末Ａとの間のパケット往復時間を表し、ＲＴＴＡ−Ｂは、端末Ａと端末Ｂとの間のパケット往復時間を表す。
ＲＴＴＳ−Ｂ＝ ＲＴＴＳ−Ａ＋ＲＴＴＡ−Ｂ      ・・・（１）
【０１０７】
また、データ集約装置３００と第Ｔの下流端末４００Ｔとの間のパケットロス率ＰＬＲＳ−Ｔも、データ集約装置３００と第Ｔの下流端末４００Ｔとの間に存在する全てのリンクのパケットロス率ＰＬＲｉ−ｊを合計した値となる。
【０１０８】
すなわち、図２に示すデータ伝送経路の場合、データ集約装置３００と端末Ｂとの間のパケットロス率ＰＬＲＳ−Ｂは、以下の式（２）で表される。ここで、ＰＬＲＳ−Ａは、データ集約装置３００と端末Ａとの間のパケットロス率を表し、ＰＬＲＡ−Ｂは、端末Ａと端末Ｂとの間のパケットロス率を表す。
ＰＬＲＳ−Ｂ＝ １−｛（１−ＰＬＲＳ−Ａ）×（１−ＰＬＲＡ−Ｂ）｝・・・（２）
【０１０９】
網内伝達時間取得部３３１は、下流端末（Ｔ）毎に、以下の式（３）を満たす最小のパケット再送回数ｎＳ−Ｔを、算出する。
Ｑ ＜ （１−ＰＬＲS−Ｔ＾ｎS−Ｔ）      ・・・（３）
【０１１０】
ここで、Ｑは、０以上１以下の実数を取る信頼度であり、通信システム１００においてデータ伝送を保証すべき度合いを表すシステム設定値である。信頼度Ｑは、例えば、１に近い値が設定されることが望ましく、固定値であってもよいし、可変値であってもよい。信頼度Ｑとして値０.９９９９が設定される場合、通信システム１００において、９９.９９％のデータ伝送の成功が保証されることを意味する。つまり、データ集約装置３００とそれぞれの下流端末４００Ｔの間で再送により要求される信頼度Ｑを確保するシステムとするわけである。
【０１１１】
網内伝達時間取得部３３１は、以下のように必要伝達時間ＲＳ−Ｔを算出する。ここで、必要伝達時間ＲＳ−Ｔとは、データが第Ｔの下流端末４００Ｔにおいて取得されてからデータ収集部３２０において受信されるまでに要する、最大時間の推定値である。
【０１１２】
まず各端末のパケット再送回数ｎｉ−ｊから、以下の式（４）を用いて、各端末の最大のパケット往復時間Ｒｉ−ｊを算出する。
Ｒｉ−ｊ＝ ＲＴＴｉ−ｊ×ｎｉ−ｊ      ・・・（４）
【０１１３】
そして、算出された各端末の最大のパケット往復時間Ｒｉ−ｊの合計値の半分を必要伝達時間ＲＳ−Ｔとする。すなわち、図２に示すデータ伝送経路の場合、例えば、データ集約装置３００と端末Ｃとの間の必要伝達時間ＲＳ−Ｃは、以下の式（５）で表される。
ＲＳ−Ｃ＝ （ＲＳ−Ａ＋ＲＡ−Ｂ＋ＲＢ−Ｃ）／２      ・・・（５）
【０１１４】
なお、上述の必要伝達時間ＲＳ−Ｔの算出手法は、データ集約装置３００と第Ｔの下流端末４００Ｔとの間での再送機構として、各リンクの再送機構いわゆるＬａｙｅｒ２での再送機構を採用した場合を前提としたが、これに限定されない。例えば、データ集約装置３００は、データ集約装置３００と第Ｔの下流端末４００Ｔとの間のエンドツーエンド（End to End）の再送機構、つまり、Ｌａｙｅｒ４での再送機構を前提として、必要伝達時間ＲＳ−Ｔを算出してもよい。
【０１１５】
そして、ステップＳ１４００において、網内伝達時間取得部３３１は、データ収集の対象となる全ての下流端末４００、つまり、第１〜第４の下流端末４００１〜４００４の全てにおける、必要伝達時間ＲＳ−Ａ〜ＲＳ−Ｄの最大値（網最大値）を特定する。そして、網内伝達時間取得部３３１は、算出された値を、上述の網内伝達時間Ｒとする。
【０１１６】
網内伝達時間Ｒは、式（１）〜（５）（特に式（３）〜（５））を用いて算出するので、データの再送時間に要する時間を含めた、データの伝達に要する最大時間の推定値であると考えられる。
【０１１７】
網内伝達時間Ｒは、例えば、以下のようにして特定される。網内伝達時間取得部３３１は、第１〜第４の下流端末４００１〜４００４に対して、順に必要伝達時間ＲＴＴを算出していく。そして、網内伝達時間取得部３３１は、直前の算出値と最新の算出値とを比較してより大きい値を選択する処理を繰り返し、最終的に残った値を、網内伝達時間Ｒとして採用する。
【０１１８】
なお、データ集約端末３００と各下流端末４００とが、ＧＰＳ（Global Positioning System）やＮＴＰ（Network Time Protocol）ブロードキャスト等により、特定の誤差Ｅの範囲で時刻同期することが保障されている場合がある。この場合、網内伝達時間取得部３３１は、上述の網最大値に誤差Ｅを加えた値を、網内伝達時間Ｒとしてもよい。
【０１１９】
そして、ステップＳ１５００において、処理対象制御部３３２は、現在時刻から網内伝達時間Ｒだけ遡った時刻から、現在時刻までの時間を、データ不確定時間範囲として決定する。
【０１２０】
そして、ステップＳ１６００において、集約処理部３４０は、データ蓄積部３２１（または情報記録媒体）に蓄積されたデータを用いて、伝送経路制御処理（所定の処理）を行う。
【０１２１】
但し、集約処理部３４０は、データ蓄積部３２１に蓄積されたデータのそれぞれについて、データ不確定時間範囲にデータ収集部３２０において受信されたデータであるか否かを、判定する。
【０１２２】
そして、集約処理部３４０は、データ不確定時間範囲にデータ収集部３２０において受信されたデータを、伝送経路制御処理に用いるデータの対象から除外する。すなわち、集約処理部３４０は、データ蓄積部３２１に蓄積されたデータのうち、伝送経路制御処理が開始される時刻から網内伝達時間Ｒだけ遡った時刻よりも前に受信されたデータのみを、伝送経路制御処理に用いるデータの対象とする。
【０１２３】
このとき、ステップＳ１５００において、データ不確定時間範囲の決定に用いた現在時刻と、ステップＳ１６００において、伝送経路制御処理が開始される時刻との差は０または０とみなせる程度に短い時間間隔であるとする。
【０１２４】
また、データ蓄積部３２１に蓄積されたデータのうち、伝送経路制御処理に用いたデータは、データ蓄積部３２１から必要に応じて削除する。
【０１２５】
そして、ステップＳ１７００において、指示受付部３３０は、ユーザ操作等により動作の終了を指示されたか否かを判断する。指示受付部３３０は、動作の終了を指示されていない場合（Ｓ１７００：ＮＯ）、処理をステップ１２００へ戻す。また、指示受付部３３０は、動作の終了を指示された場合（Ｓ１７００：ＹＥＳ）、一連の処理を終了する。
【０１２６】
このような動作により、データ集約装置３００は、蓄積されたデータのうち信頼度Ｑにより到着順が保証されたデータのみを対象として、伝送経路制御処理を行うことができる。これにより、データ集約装置３００は、現在時刻から網内伝達時間Ｒだけ遡った時点における下流側の実際の死活状況を、信頼度Ｑに対応する精度で把握するのに必要なデータが揃った状態で、上記時点に対応する伝送経路制御処理を行うことができる。したがって、データ集約装置３００は、伝送経路制御処理の結果に、一意性および一貫性を保つことができる。
【０１２７】
＜処理過程の具体例＞
以下、データ集約装置３００における伝送経路制御処理の結果に、一意性および一貫性が保たれる様子について、具体例を挙げて説明する。
【０１２８】
図５は、以下の説明において用いる、下流側における死活状況の変化の一例を示す図である。
【０１２９】
図５において、上段５１１は、時刻ｔの経過を示し、中段５１２は、各時刻ｔにおける下流側のデータ伝送経路および各下流端末４００のイベントデータを示し、下段５１３は、各時刻ｔにおいて下流端末４００で取得されるイベントデータを示す。また、図中、破線部分は、端末機能が発揮されていない状況にあることを示す。
【０１３０】
例えば、時刻ｔ１の直前に、端末Ｂが端末機能を発揮できない状態に移行（離脱）したとする。すると、時刻ｔ１に端末Ｂが離脱したことを示す第１のイベントデータ５１４１が、例えば端末Ａで時刻ｔ１に取得され、データ集約装置３００へ送信される。なお、このように端末Ｂが離脱した場合、データ伝送経路は、例えば、端末Ｃおよび端末Ｄが端末Ａに直接に接続された状態に変更されることが望ましい。
【０１３１】
そして、時刻ｔ２の直前に、更に端末Ｃが端末機能を発揮できない状態に移行（離脱）したとする。すると、時刻ｔ２に端末Ｃが離脱したことを示す第２のイベントデータ５１４２が、例えば端末Ａで時刻ｔ２に取得され、データ集約装置３００へ送信される。
【０１３２】
そして、時刻ｔ３の直前に、端末Ｂが端末機能を発揮できる状態に移行（復帰）したとする。すると、端末Ｂが復帰したことを示す第３のイベントデータ５１４３が、例えば端末Ａで時刻ｔ３に取得され、データ集約装置３００へ送信される。なお、このように端末Ｂが復帰した場合、データ伝送経路は、例えば、端末Ｂが端末Ｄに接続された状態に変更されることが望ましい。
【０１３３】
第１〜第３のイベントデータ５１４１〜５１４３は、理想的な状況下ではこの順序で下流側において取得される。しかしながら、実際には、下流側の局所的な通信状況の悪化やこれに伴うパケット再送処理等により、第１〜第３のイベントデータ５１４１〜５１４３のデータ集約装置３００への到達順序は、第１〜第３のイベントデータ５１４１〜５１４３の取得順序とは、違ったものと成る場合もある。
【０１３４】
データ集約装置３００は、上述の通り、網内伝達時間Ｒを考慮して受信データに基づく処理を行う。
【０１３５】
図６は、データ集約装置３００による、網内伝達時間Ｒを考慮した場合における処理の様子の一例を示す図である。
【０１３６】
図６において、上段５２１は、時刻ｔの経過を示す。中段５２２は、時刻ｔ４、ｔ５、ｔ６、ｔ７、ｔ８のそれぞれにおけるデータ蓄積部３２１が蓄積するイベントデータを示す。下段５２３は、時刻ｔ４、ｔ５、ｔ６、ｔ７、ｔ８のそれぞれにおける伝送経路制御処理の対象を示す。また、図中、破線部分は、過去の時刻に格納が既に完了されたイベントデータが保持されている状況を示す。
【０１３７】
また、時刻ｔ＝ｔ０、ｔ１、ｔ２・・・の時間間隔が、単位時間ｄｔであるとき、網内伝達時間Ｒは、４.５ｄｔ（つまり、単位時間ｄｔの４．５倍の時間）であるものとする。網内伝達時間Ｒ＝４.５ｄｔは、例えば、時刻ｔ１に端末Ｂが離脱したことを示す第１のイベントデータ５１４１が、高い確率で、遅くとも、時刻ｔ５.５（時刻ｔ５の直後から時刻ｔ６の直前までの間の時刻であって、時刻ｔ１から単位時間ｄｔの４．５倍の時間の経過後）までにデータ集約装置３００に到着することを示す。
【０１３８】
例えば、図６に示すように、時刻ｔ４に、時刻ｔ２に端末Ｃが離脱したことを示す第２のイベントデータ５１４２と、時刻ｔ３に端末Ｂが復帰したことを示す第３のイベントデータ５１４３とが、データ集約装置３００に到着し、蓄積される。そして、例えば、時刻ｔ４よりも後の時刻ｔ５.５（時刻ｔ６の直前）に、時刻ｔ１に端末Ｂが離脱したことを示す第１のイベントデータ５１４１が、データ集約装置３００に到着し、蓄積される。すなわち、第１〜第３のイベントデータ５１４１〜５１４３には、伝送順序の入れ替えが生じている。なお、時刻ｔ０〜ｔ３には、イベントデータの受信および蓄積はないものとする。
【０１３９】
時刻ｔ５の時点におけるデータ不確定時間範囲は、網内伝達時間Ｒ＝４.５ｄｔであることから、時刻ｔ０の直後から時刻ｔ５までである。第２および第３のイベントデータ５１４２、５１４３の取得時刻（イベントの発生時刻）ｔ２、ｔ３は、時刻ｔ０の直後〜時刻ｔ５というデータ不確定時間範囲に含まれる。したがって、データ集約装置３００は、時刻ｔ５の時点において、第２および第３のイベントデータ５１４２、５１４３を蓄積しているが、これらを伝送経路制御処理の対象としない。また、データ不確定時間範囲よりも過去の時刻に受信されて蓄積されたイベントデータは存在しない。このため、イベントデータの抽出結果は、Ｎｕｌｌとなる。
【０１４０】
一方、時刻ｔ６の時点におけるデータ不確定時間範囲は、時刻ｔ１の直後から時刻ｔ６までである。データ集約装置３００は、時刻ｔ６の時点において、第１〜第３のイベントデータ５１４１〜５１４３を蓄積している。第２および第３のイベントデータ５１４２、５１４３の取得時刻ｔ２、ｔ３は、時刻ｔ１の直後〜時刻ｔ６というデータ不確定時間範囲に含まれる。しかしながら、第１のイベントデータ５１４１の取得時刻ｔ１、時刻ｔ１の直後〜時刻ｔ６というデータ不確定時間範囲に含まれない。したがって、第１のイベントデータ５１４１のみが、伝送経路制御処理の対象として抽出されることになる。データ集約装置３００は、例えば、第１のイベントデータ５１４１を用いて伝送経路制御処理を行う。
【０１４１】
ここで、第１のイベントデータ５１４１は、時刻ｔ１に端末Ｂが離脱したことを示すイベントデータである。よってデータ集約装置３００は、例えば、端末Ａ、Ｃ、Ｄが、それぞれ端末Ｂを介さずデータ集約装置３００へデータを伝送するための通信ネットワーク内のデータ伝送経路の再構築を行う。
【０１４２】
また、第１のイベントデータ５１４１は、伝送経路制御処理（つまり、通信ネットワーク内のデータ伝送経路の再構築の処理）に用いられた後、データ蓄積部３２１（または、情報記録媒体）から削除される。
【０１４３】
次いで、時刻ｔ７におけるデータ不確定時間範囲である時刻ｔ２の直後〜時刻ｔ７には、第２のイベントデータ５１４２の取得時刻ｔ２は含まれなくなるため、第２のイベントデータ５１４２が抽出される。
【０１４４】
データ集約装置３００は、例えば、第２のイベントデータ５１４２を用いて伝送経路制御処理を行う。
【０１４５】
ここで、第２のイベントデータ５１４２は、時刻ｔ２に端末Ｃが離脱したことを示すイベントデータである。
【０１４６】
よってデータ集約装置３００は、例えば、端末Ａ、Ｄが、それぞれ端末Ｂ、Ｃを介さずデータ集約装置３００へデータを伝送するための通信ネットワーク内のデータ伝送経路の再構築を行う。
【０１４７】
また、第２のイベントデータ５１４２は、伝送経路制御処理に用いられた後、データ蓄積部３２１（または、情報記録媒体）から削除される。
【０１４８】
そして、時刻ｔ８におけるデータ不確定時間範囲である時刻ｔ３の直後〜時刻ｔ８には、第３のイベントデータ５１４３の取得時刻ｔ３は含まれなくなるため、第３のイベントデータ５１４３が抽出される。
【０１４９】
データ集約装置３００は、例えば、第３のイベントデータ５１４３を用いて伝送経路制御処理を行う。
【０１５０】
ここで、第３のイベントデータ５１４２は、時刻ｔ３に端末Ｂが復帰したことを示すイベントデータである。
【０１５１】
よってデータ集約装置３００は、例えば、端末Ｂが、データ集約装置３００へデータを伝送するための通信ネットワーク内のデータ伝送経路の再構築を行う。
【０１５２】
また、第３のイベントデータ５１４３は、伝送経路制御処理に用いられた後、データ蓄積部３２１（または、情報記録媒体）から削除される。
【０１５３】
このように、データ集約装置３００は、時刻ｔ６〜ｔ８のそれぞれにおいて、第１〜第３のイベントデータ５１４１〜５１４３のそれぞれに基づいて、順次、伝送経路制御処理を行うことになる。
【０１５４】
図７は、データ集約装置３００による、網内伝達時間Ｒを考慮した場合における処理の結果の一例を示す図である。
【０１５５】
図７において、上段５３１は、時刻ｔの経過を示し、中段５３２は、各時刻ｔにおける伝送経路制御処理に用いられるイベントデータを示し、下段５３３は、各時刻ｔにおける伝送経路制御処理の結果（下流側のデータ伝送経路）を示す。また、図中、破線部分は、端末機能が発揮されていない状況を示し、太線は、新たに設定されたデータ伝送路を示す。
【０１５６】
図７に示すように、時刻ｔ６において、処理対象制御部３３２は、時刻ｔ１に端末Ｂが離脱したことを示す第１のイベントデータ５１４１を抽出して、伝送経路制御処理を行う。この結果、端末Ｂが端末Ａから切断され、例えば、端末Ｃ、Ｄが端末Ａに接続される。
【０１５７】
そして、時刻ｔ７において、処理対象制御部３３２は、時刻ｔ２に端末Ｃが離脱したことを示す第２のイベントデータ５１４２を抽出して、伝送経路制御処理を行う。この結果、端末Ｃが端末Ａから切断される。
【０１５８】
更に、時刻ｔ８において、処理対象制御部３３２は、時刻ｔ３に端末Ｂが復帰したことを示す第３のイベントデータ５１４３を抽出して、伝送経路制御処理を行う。この結果、例えば、端末Ｂが端末Ｄに接続される。
【０１５９】
このように、データ集約装置３００による伝送経路制御処理の結果は、端末Ｂが端末Ｄに接続された状態という、図５で説明した望ましいデータ伝送経路の状態となる。
【０１６０】
通信状況の悪化およびパケット再送処理等によって、受信時刻の順序が取得時刻の順序と異なったとしても、各データが網内伝達時間Ｒを超えて遅延して受信されることはほとんどない。したがって、以上のように網内伝達時間Ｒを考慮して伝送経路制御処理の対象を決定することにより、適切なデータ量に基づいて伝送経路制御処理を行うことができ、処理結果に一意性および一貫性を保つことができる。
【０１６１】
ここで、比較のため、網内伝達時間を考慮しない場合に、伝送経路制御処理の結果に、一意性および一貫性が保たれない様子について、説明する。
【０１６２】
図８は、網内伝達時間Ｒを考慮しない場合における処理の様子の一例を示す図であり、図６に対応するものである。図６と対応する部分には同一符号を付し、これについての説明を省略する。
【０１６３】
網内伝達時間Ｒを考慮しない場合、時刻ｔ４に第２のイベントデータ５１４２に基づいて伝送経路制御処理が行われ、時刻ｔ５に第３のイベントデータ５１４３に基づいて伝送経路制御処理が行われる。そして、その後の時刻ｔ６に、第１のイベントデータ５１４１に基づいて伝送経路制御処理が行われる。すなわち、第２のイベントデータ５１４２、第３のイベントデータ５１４３、第１のイベントデータ５１４１という順序で、伝送経路制御処理が行われる。
【０１６４】
図９は、網内伝達時間Ｒを考慮しない場合における処理の結果の一例を示す図であり、図７に対応するものである。図７と対応する部分には同一符号を付し、これについての説明を省略する。
【０１６５】
図９に示すように、時刻ｔ４において、処理対象制御部３３２は、時刻ｔ２に端末Ｃが離脱したことを示す第２のイベントデータ５１４２を抽出して、伝送経路制御処理を行う。この結果、端末Ｃが端末Ｂから切断される。
【０１６６】
そして、時刻ｔ５において、処理対象制御部３３２は、時刻ｔ３に端末Ｂが復帰したことを示す第３のイベントデータ５１４３を抽出して、伝送経路制御処理を行う。しかしながら、端末Ｂは端末機能を発揮している状況である。このため、処理対象制御部３３２は、かかる第３のイベントデータ５１４３を、誤りデータとみなして無視する。
【０１６７】
更に、時刻ｔ６において、処理対象制御部３３２は、時刻ｔ１に端末Ｂが離脱したことを示す第１のイベントデータ５１４１を抽出して、伝送経路制御処理を行う。この結果、端末Ｂが端末Ａ、Ｄから切断され、例えば、端末Ｄが端末Ａに接続される。
【０１６８】
このように、網内伝達時間Ｒを考慮しない場合、伝送経路制御処理の結果は、端末Ｂが離脱したままの状態という、図５で説明した望ましいデータ伝送経路とは異なった状態となる。
【０１６９】
以上のように、網内伝達時間Ｒを考慮しない伝送経路制御処理の場合、処理結果は、各イベントデータの受信時刻に影響され、更に、不適切なものとなり得る。これに対し、データ集約装置３００による網内伝達時間Ｒを考慮した伝送経路制御処理の場合、処理結果は、各イベントデータの受信時刻に影響されず、かつ、適切なものとなる。
【０１７０】
一般的に、無線通信端末は、孤立状態となった場合、タイムアウトを検知した後に、接続のための初期化シーケンスを実行し、新たな接続を探索するフェーズへ移行して、下位レイヤのシーケンスや下流端末４００の認証処理などを実行する。これら一連の動作には、時間を要する。したがって、データ集約装置３００のほうが、より早期に、データ伝送経路の最適化を完了する（処理結果を収束させる）ことができる。
【０１７１】
＜本開示の効果＞
以上のように、本実施の形態に係るデータ集約装置３００は、伝送経路制御処理を、死活状況を示すイベントデータの取得時刻（イベントの発生時刻）から伝送経路制御処理が行われるまでの時間が網内伝達時間Ｒよりも短いイベントデータを除外して行う。これにより、本実施の形態に係るデータ集約装置３００は、伝送経路制御処理の結果に、一意性および一貫性を保つことができ、データ伝送経路の最適化を短時間で完了させることができる。
【０１７２】
＜変形例＞
なお、指示受付部３３０は、処理対象となる受信データが、非常に古いデータなど、データ不確定時間範囲を含まないことが明らかである場合、データ不確定時間範囲の特定およびデータの除外を行わなくてもよい。
【０１７３】
また、指示受付部３３０は、図４のステップＳ１２００において、上流端末２００から指示された処理が実行可能なものであるかどうかを判断してもよい。
【０１７４】
例えば、上流端末２００からの指示が、構造化問い合わせ言語（ＳＱＬ：Structured Query Language）による、データの抽出処理、合計値算出処理、あるいは、平均値算出処理の実行であったとする（例えば、非文献参照）。この場合、例えば、指示受付部３３０は、構文チェックや変数チェック等の、かかるＳＱＬの処理系が通常に具備するチェックを、集約処理部３４０に実施させる。そして、指示受付部３３０は、チェックの結果に応じて、伝送経路制御処理の実行の可否を判定し、判定結果を上流端末２００へ送信する。
【０１７５】
＜他の応用例＞
また、上述の伝送経路制御処理は、ある時点までに複数の端末で取得された一まとまりのデータ群に基づいて行われるべき、他の各種処理に置き換えることができる。
【０１７６】
かかる処理としては、複数の電力メータからの消費量を集計して、ピークカットや低消費電力運転指示を行う、デマンドレスポンス処理が挙げられる。例えば、各家庭の消費電力量のデータは、冷蔵庫、エアコン、乾燥機、便座保温機、ＩＨ（Induction Heating）調理器などの家電の稼働状況によって、時々刻々と変化する。このようなデマンドレスポンス処理では、電力消費量を計測するセンサからの情報を用いて制御を行う方法と各装置の電源のオンオフの状態変化の事象を用いながら判断を行う方法がある。本願手法を用いれば、どちらの手法でも一貫性を保った制御が可能となる。
【０１７７】
また、上記処理としては、例えば、下流端末を搭載するトラックが複数で隊列を形成しながら自動運転を行うシステムにおける隊列自動運転制御処理や、下流端末を搭載する無人自動運転小型ヘリコプタによる宅配荷物の配送システムにおける伝送経路制御処理が挙げられる。
【０１７８】
また、有線通信のみによってデータ伝送が行われる場合でも、データの受信順序は入れ替わり得るため、上述の効果を得ることができる。
【０１７９】
本開示の通信制御方法は、通信制御装置の通信制御方法であって、複数の端末のそれぞれにおいて取得されたデータを、通信ネットワークを介して受信する受信ステップと、前記受信されたデータを情報記録媒体に蓄積する蓄積ステップと、前記複数の端末のそれぞれにおいて前記データが取得されてから前記通信ネットワークを介して前記データが受信されるまでの、伝達に要する最大時間の推定値である、網内伝達時間を取得する網内伝達時間取得ステップと、前記情報記録媒体に蓄積されたデータのうち、前記端末において前記データが取得された取得時刻から現在時刻までの時間が、前記網内伝達時間よりも短いデータを判定するデータ判定ステップと、前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを所定の処理に用いるデータの対象から除外する処理対象除外ステップと、前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを除外した前記データを用いて前記所定の処理を実行する処理実行ステップと、を有する。
【０１８０】
このように構成することにより、複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる。
【０１８１】
なお、上記通信制御方法において、前記複数の端末のそれぞれは、所定の状態量を検出し、前記受信されるデータは、前記複数の端末のそれぞれから送信され、前記受信されるデータは、前記データを送信した端末において検出された前記所定の状態量の検出結果を含んでもよい。
【０１８２】
また、上記通信制御方法において、前記データには、前記取得時刻として、前記端末において所定の状態量を検出した時刻を示す時刻情報が付随しており、前記所定の処理は、前記時刻情報が示す時刻の順序に沿って前記データを集約する処理を含んでもよい。
【０１８３】
また、上記通信制御方法において、前記通信ネットワークは、少なくとも一部に無線通信のネットワークを含み、前記網内伝達時間の取得において、前記所定の処理が行われる毎に、前記通信ネットワークの通信状況を取得し、前記取得された通信状況に基づいて前記網内伝達時間を算出してもよい。
【０１８４】
また、上記通信制御方法において、前記データの受信では、前記複数の端末のうちの一の端末において取得されたデータを前記複数の端末のうちの他の端末を介して受信し、前記複数の端末のそれぞれから送信されるデータは、前記端末の前記通信ネットワークにおける死活状況を示す死活情報を含み、前記所定の処理は、前記死活情報に基づいて前記通信ネットワークにおける前記データの伝送経路を制御する処理を含んでもよい。
【０１８５】
また、上記通信制御方法において、前記データは、パケットに格納されて前記通信ネットワークを介して伝送され、前記データの受信において、欠落したパケットを検知し、前記欠落したパケットを検知した場合、前記欠落したパケットの再送を当該パケットの送信元である前記端末に対して要求し、前記網内伝達時間の取得において、前記網内伝達時間は、前記データの再送時間に要する時間を含めた、前記データの伝達に要する最大時間の推定値を算出することにより、前記網内伝達時間を取得するのでもよい。
【０１８６】
また、上記通信制御方法において、前記通信ネットワーク内に構築された伝送経路上に位置する各端末における通信状況を示す通信状況情報を、前記通信ネットワークから取得し、前記取得された通信状況情報に基づいて、前記網内伝達時間を算出してもよい。
【０１８７】
また、上記通信方法において、前記データの受信、前記データの蓄積、前記網内伝達時間の取得、前記データの判定、前記データの除外および前記所定の処理の実行うちの少なくとも１つはプロセッサを用いて行ってもよい。
【０１８８】
本開示の通信制御装置は、通信システムに用いる通信制御装置であって、複数の端末のそれぞれにおいて取得されたデータを、通信ネットワークを介して受信するデータ受信部と、前記受信されたデータを情報記録媒体に蓄積するデータ蓄積部と、前記複数の端末のそれぞれにおいて前記データが取得されてから前記通信ネットワークを介して前記データが受信されるまでの、前記データの伝達に要する最大時間の推定値である、網内伝達時間を取得する網内伝達時間取得部と、前記情報記録媒体に蓄積されたデータのうち、前記複数の端末のそれぞれにおける前記データの取得時刻から現在時刻までの時間が前記網内伝達時間よりも短い前記データを判定し、前記網内伝達時間よりも短いと判定されたデータを前記所定の処理に用いるデータの対象から除外する処理対象制御部と、前記情報記録媒体に蓄積されたデータのうち、前記網内伝達時間よりも短いと判定されたデータを除外したデータを用いて前記所定の処理を実行する処理実行部と、を有する。
【０１８９】
また、上記通信制御装置において、前記データ受信部、前記データ蓄積部、前記網内伝達時間取得部、前記処理対象制御部、前記処理実行部の少なくとも１つはプロセッサを含む。
【産業上の利用可能性】
【０１９０】
本開示は、複数の端末からの受信データに基づいて行われる処理の結果に、一意性および一貫性を保つことができる、通信制御方法および通信制御装置として有用である。
【符号の説明】
【０１９１】
１００  通信システム
２００  上流端末
３００  データ集約装置
３１０  通信状況監視部
３２０  データ収集部
３２１  データ蓄積部
３３０  指示受付部
３３１  網内伝達時間取得部
３３２  処理対象制御部
３４０  集約処理部
４００  下流端末
【図１Ａ】
2015207996.tif 000003
【図１Ｂ】
2015207996.tif 000004
【図２】
2015207996.tif 000005
【図３】
2015207996.tif 000006
【図４】
2015207996.tif 000007
【図５】
2015207996.tif 000008
【図６】
2015207996.tif 000009
【図７】
2015207996.tif 000010
【図８】
2015207996.tif 000011
【図９】
2015207996.tif 000012