(57)【特許請求の範囲】
【請求項１】
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワークを構成するノードであって、
前記ネットワークを構成する自ノードを含むノードの総数を推定する推定手段と、
１つ又は複数の情報を出力するためのスロットを、前記自ノードとは異なるノードから独立して設定するスロット設定手段と、
前記ノードの総数に基づいて、前記自ノードが情報を出力する確率を算出する確率算出手段と、
前記確率で、前記スロットにおいて情報を出力する出力手段と、
を備えるノード。
【請求項２】
情報を出力するときの出力時刻を、出力される情報に付加する付加手段と、
情報を受信したときの受信時刻を計測する第１計測手段と、
受信された情報の前記出力時刻と、前記受信時刻とから、情報送達遅延時間を算出する遅延時間算出手段と、
最新の前記受信時刻からの経過時間を計測する第２計測手段と、
情報を受信する際の実効スループットを計測する第３計測手段と、
を備え、
前記推定手段は、
前記情報送達遅延時間、前記経過時間、及び前記実効スループットの少なくともいずれかに基づいて、前記ネットワークを構成するノードの総数を推定する請求項１に記載のノード。
【請求項３】
前記推定手段は、前記経過時間が閾値を超えた場合に、直近に推定した前記ノードの総数よりも多い前記ノードの総数を推定する請求項２に記載のノード。
【請求項４】
前記推定手段は、前記情報送達遅延時間が閾値を超えた場合に、直近に推定した前記ノードの総数よりも多い前記ノードの総数を推定する請求項２又は３に記載のノード。
【請求項５】
前記推定手段は、前記実効スループットが閾値を下回った場合に、直近に推定した前記ノードの総数よりも少ない前記ノードの総数を推定する請求項２乃至４のいずれか一項に記載のノード。
【請求項６】
前記自ノードとは異なるノードと時刻を同期する同期手段を更に備える請求項１乃至５のいずれか一項に記載のノード。
【請求項７】
所定の時間内に情報を受信した回数をカウントする第１カウント手段と、
前記所定の時間内に情報の受信に失敗した回数をカウントする第２カウント手段と、
を備え、
前記推定手段は、
前記カウント手段のカウント結果に基づいて、前記ネットワークを構成するノードの総数を推定する請求項１に記載のノード。
【請求項８】
前記推定手段は、前記第１カウント手段によってカウントされた回数をａ、前記第２カウント手段によってカウントされた回数をｂとしたときに、演算式ａ／（ａ＋ｂ）による演算結果が閾値を下回った場合に、直近に推定した前記ノードの総数よりも多い前記ノードの総数を推定する請求項７に記載のノード。
【請求項９】
前記所定の時間内に受信した情報を送信したノードの数をカウントする第３カウント手段を更に備える請求項７に記載のノード。
【請求項１０】
前記推定手段は、前記第１カウント手段によってカウントされた回数をａ、前記第２カウント手段によってカウントされた回数をｂ、前記第３カウント手段によってカウントされた数をｃとしたときに、演算式ａ／（ａ＋ｂ）による演算結果が閾値以下のとき、演算式ｃ×（ａ＋ｂ）／ａを用いて、前記ノードの総数を推定する請求項９に記載のノード。
【請求項１１】
受信された情報には、情報を受信した前記ノードのアプリケーション部が、情報を送信した前記ノードを識別するための識別情報が含まれる請求項７乃至１０のいずれか一項に記載のノード。
【請求項１２】
受信された情報には、情報を受信した前記ノードのネットワーク部が、情報を送信した前記ノードを識別するための識別情報が含まれる請求項７乃至１１のいずれか一項に記載のノード。
【請求項１３】
受信された情報には、情報を受信した前記ノードのメディア部が、情報を送信した前記ノードを識別するための識別情報が含まれる請求項７乃至１２のいずれか一項に記載のノード。
【請求項１４】
情報を受信する際に、受信エラーを検出する受信エラー検出手段と、
情報を受信する際の実効スループットを計測する計測手段と、
を備え、
前記推定手段は、
前記受信エラー、及び前記実効スループットの少なくともいずれかに基づいて、前記ネットワークを構成するノードの総数を推定する請求項１に記載のノード。
【請求項１５】
前記推定手段は、前記受信エラーが検出された場合に、直近に推定した前記ノードの総数よりも多い前記ノードの総数を推定する請求項１４に記載のノード。
【請求項１６】
前記推定手段は、前記実効スループットが閾値を下回った場合に、直近に推定した前記ノードの総数よりも少ない前記ノードの総数を推定する請求項１４又は１５に記載のノード。
【請求項１７】
送信される情報を保管するデータメモリに保管された、残存送信情報数を計測する第１計測手段と、
情報を受信する際の実効スループットを計測する第２計測手段と、
を備え、
前記推定手段は、
前記残存送信情報数、及び前記実効スループットの少なくともいずれかに基づいて、前記ネットワークを構成するノードの総数を推定する請求項１に記載のノード。
【請求項１８】
前記推定手段は、前記残存送信情報数が閾値を上回った場合に、直近に推定した前記ノードの総数よりも多い前記ノードの総数を推定する請求項１７に記載のノード。
【請求項１９】
前記推定手段は、前記実効スループットが閾値を下回った場合に、直近に推定した前記ノードの総数よりも少ない前記ノードの総数を推定する請求項１７又は１８に記載のノード。
【請求項２０】
前記推定手段によって推定されたノードの総数が、所定の範囲に収まるように補正する補正手段を更に備える請求項１乃至１９のいずれか一項に記載のノード。
【請求項２１】
送信される情報の優先度合いによって、前記確率を調整する調整手段を更に備える請求項１乃至２０のいずれか一項に記載のノード。
【請求項２２】
請求項１乃至２１のいずれか一項に記載のノードを複数含む通信システム。
【請求項２３】
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワークを構成する通信ノードの制御装置に、
前記ネットワークを構成する前記通信ノードを含むノードの総数を推定する手順と、
１つ又は複数の情報を出力するためのスロットを、前記通信ノードとは異なるノードから独立して設定する手順と、
前記ノードの総数に基づいて、前記通信ノードが情報を出力する確率を算出する手順と、
前記確率で、前記スロットにおいて情報を出力する手順と、
を実行させるためのプログラム。
【請求項２４】
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワーク内でノードが通信を行うための通信方法であって、
前記ネットワークを構成する自ノードを含むノードの総数を推定する工程と、
１つ又は複数の情報を出力するためのスロットを、前記自ノードとは異なるノードから独立して設定する工程と、
前記ノードの総数に基づいて、前記自ノードが情報を出力する確率を算出する工程と、
前記確率で、前記スロットにおいて情報を出力する工程と、
を含む通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ノード、通信システム、プログラム及び通信方法に関し、更に詳しくは、ネットワークを構成するノード、前記ノードを含む通信システム、前記ノードに用いられるプログラム、及び情報の通信を行うための通信方法に関する。
【背景技術】
【０００２】
近年、携帯電話や携帯ゲーム機相互間の情報交換、センサネットワークにおけるセンサデータの収集など、通信デバイスを有する情報端末（ノード）と、不特定多数のノードとの間で、情報の交換や、情報を共有するためのサービスが注目を集めている。また、道路交通情報サービスの分野においても、車車間通信を利用した通信システムの研究開発が盛んに行われている。この種の通信システムでは、各車両が走行中に収集した情報を、車車間通信によって他車に送信することで、情報の共有化が実現される。【０００３】
しかしながら、ノード同士が通信可能な時間は限られるうえに、通信を行う通信デバイスによる情報の伝送速度には、一定の限界がある。そのため、蓄積した情報の受け渡しを、限られた時間内に行うためには、一定の限界がある伝送速度を各々のノードが最大限に利用して、情報を送信するとともに、他のノードからの情報を受信する必要がある。このためには、まず、実効スループットを高めることが不可欠である。そこで、実効スループットを高めるための技術が種々提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４００４５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載のシステムでは、システムを構成する通信機は、他の通信機から送信された通信タイミング信号に基づいて、自機の近傍にある通信機の数を測定する。そして、測定結果を含む情報を送信する。当該情報を受信した通信機は、受信した情報に基づいて、自機から情報を送信するためのスロットを決定する。【０００６】
しかしながら、上述したシステムでは、自機近傍の通信機の数に関する情報が、複数の送信機から送信された場合は、送信されたすべての情報を勘案して、自機近傍の通信機の数を決定する必要がある。このため、自機近傍の通信機の数を特定するための手法が複雑化する。その結果、情報の送信開始までに長時間を要し、結果的に通信のスループットが低下してしまう。【０００７】
また、このシステムでは、自機近傍の通信機の数を決定するために、別途通信を行う必要もある。このため、通信帯域を無駄に占有してしまう懸念もある。【０００８】
本発明は、上述の事情の下になされたもので、複数のノード間の通信における情報の衝突を回避し、通信のスループットを向上させることを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の第１の観点に係るノードは、
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワークを構成するノードであって、
前記ネットワークを構成する自ノードを含むノードの総数を推定する推定手段と、
１つ又は複数の情報を出力するためのスロットを、前記自ノードとは異なるノードから独立して設定するスロット設定手段と、
前記ノードの総数に基づいて、前記自ノードが情報を出力する確率を算出する確率算出手段と、
前記確率で、前記スロットにおいて情報を出力する出力手段と、
を備える。
【００１０】
本発明の第２の観点に係る通信システムは、本発明のノードを複数含む。【００１１】
本発明の第３の観点に係るプログラムは、
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワークを構成する通信ノードの制御装置に、
前記ネットワークを構成する前記通信ノードを含むノードの総数を推定する手順と、
１つ又は複数の情報を出力するためのスロットを、前記通信ノードとは異なるノードから独立して設定する手順と、
前記ノードの総数に基づいて、前記通信ノードが情報を出力する確率を算出する手順と、
前記確率で、前記スロットにおいて情報を出力する手順と、
を実行させる。
【００１２】
本発明の第４の観点に係る通信方法は、
一のノードと、該一のノードからシングルホップで通信可能な領域に含まれる他のノードとからなるネットワーク内でノードが通信を行うための通信方法であって、
前記ネットワークを構成する自ノードを含むノードの総数を推定する工程と、
１つ又は複数の情報を出力するためのスロットを、前記自ノードとは異なるノードから独立して設定する工程と、
前記ノードの総数に基づいて、前記自ノードが情報を出力する確率を算出する工程と、
前記確率で、前記スロットにおいて情報を出力する工程と、
を含む。
【発明の効果】
【００１３】
本発明によれば、スロットごとに、ノードの総数に基づいて算出された確率によって、情報を出力するか否かが決定される。これにより、情報出力時の情報衝突を軽減することができ、結果的に通信のスループットが向上する。
【図面の簡単な説明】
【００１４】
【図１】実施形態の通信システムのブロック図である。
【図２】通信端末のブロック図である。
【図３】ノード総数推定部のブロック図である。
【図４】スロットと、通信端末から出力されるパケットを模式的に示す図である。
【図５】第２の実施形態に係る通信端末のブロック図である。
【図６】通信端末の動作を説明するためのフローチャート（その１）である。
【図７】第３の実施形態に係る情報受信部のブロック図である。
【図８】通信端末から送信されるパケットを模式的に示す図（その１）である。
【図９】通信端末から送信されるパケットを模式的に示す図（その２）である。
【図１０】第５の実施形態に係る情報受信部のブロック図である。
【図１１】通信端末の動作を説明するためのフローチャート（その２）である。
【図１２】第６の実施形態に係る情報送信部のブロック図である。
【図１３】通信端末の動作を説明するためのフローチャート（その３）である。
【図１４】通信端末の動作を説明するためのフローチャート（その４）である。
【図１５】通信端末の総数と、受信成功率及びスループットとの関係を示す図である。
【発明を実施するための形態】
【００１５】
《第１の実施形態》
以下、本発明の第１の実施形態を、図面を参照しつつ説明する。図１は本実施形態に係る通信システム１０を模式的に示す図である。図１を参照するとわかるように、通信システム１０は、通信エリアＮＡにある通信端末２０によって構成される。
【００１６】
通信エリアＮＡは、車両が通行する道路を含むように規定された領域である。この通信エリアＮＡは、例えば緯度及び経度で規定される４つの点Ｐ１，Ｐ２，Ｐ３，Ｐ４によって規定される長方形の領域である。
【００１７】
通信端末２０は、例えば車両などに搭載されている。そして、車両に搭載されたカーナビゲーションシステムから、当該車両が通信エリアＮＡに進入したことが通知されると、通信端末２０は、通信システム１０を構成する１つの通信端末として機能する。また、カーナビゲーションシステムから、当該車両が、通信エリアから退出したことが通知されると、通信端末２０は、通信システム１０としての機能を停止する。このように、通信端末２０が、通信エリアＮＡに出入りすることで、通信システム１０を構成する通信端末２０が経時的に変化し、通信システム１０の形態は逐次変化する。
【００１８】
通信端末２０は、当該通信端末２０から、距離Ｄ離れた円周によって規定される通信可能領域ＣＡに含まれる通信端末２０と通信を行うことができる。距離Ｄは、通信エリアＮＡの長辺の長さに比べて十分に大きい。したがって、通信エリアＮＡにある通信端末２０は、通信エリアＮＡにある他の通信端末２０それぞれと通信を行うことができる。
【００１９】
また、本実施形態では、通信端末２０それぞれは、搭載した通信メディアの規格に基づいて、シングルホップ通信を行う。そして、各通信端末２０は、通信エリアＮＡに進入すると、当該通信端末２０を搭載した車両が備える情報機器によって収集された交通情報を、複数のパケットに分割した状態で、他の通信端末２０に対して発信する。この交通情報は、例えば、所定のエリアにおける車両の平均速度等を含む情報である。以下、例えば通信端末２０の通信メディアをＩＥＥＥ８０２．１１ｂ規格の無線ＬＡＮであり、伝送速度を１Ｍｂｐｓ、分割したパケットサイズを１５００ｂｙｔｅとする。
【００２０】
図２は、通信端末２０のブロック図である。図２に示されるように、通信端末２０は、情報受信部２１、ノード総数推定部２２、補正部２３、確率設定部２４、スロット規定部２５、抽選部２６、送信時刻記憶部２７、情報送信部２８を有している。
【００２１】
情報送信部２８は、送信を開始する時刻（送信時刻）に関する送信時刻情報が関連付けられたパケットを、後述する手順で送信する。以下、情報送信部２８が送信しようとするパケットを送信パケットという。
【００２２】
情報受信部２１は、他の通信端末２０から発信されたパケットを受信する。そして、受信したパケットをノード総数推定部２２へ出力する。以下、当該パケットを受信パケットという。
【００２３】
ノード総数推定部２２は、通信エリアＮＡにあると思われる通信端末２０の総数を推定する。図３は、ノード総数推定部２２のブロック図である。図３に示されるように、ノード総数推定部２２は、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃ、スループット測定部２２ｄ、ノード総数算出部２２ｅを有している。
【００２４】
受信時刻記録部２２ａは、情報受信部２１から受信パケットが出力されると、受信パケットが受信された受信時刻に関する情報を、当該受信パケットに関連付ける。そして、受信時刻に関する情報が関連付けられた受信パケットを、連続無受信時間計測部２２ｂ、及び遅延時間計測部２２ｃへ出力する。
【００２５】
連続無受信時間計測部２２ｂは、受信パケットに関連付けられた情報から、当該受信パケットが受信された時刻を特定する。そして、直近に受信された受信パケットについての受信時刻との時間差に関する情報を、連続無受信時間情報として、ノード総数算出部２２ｅへ出力する。
【００２６】
遅延時間計測部２２ｃは、受信パケットに関連付けられた情報から、送信時刻と受信時刻との時間差を遅延時間情報として、ノード総数算出部２２ｅへ出力する。
【００２７】
スループット測定部２２ｄは、単位時間Ｔ１が経過する間に受信したパケットを順次カウントする。そして、カウント結果をスループットとして、ノード総数算出部２２ｅへ出力する。なお、単位時間Ｔ１は、システムによって予め定められた値、もしくは他の通信端末或いは他のシステムから何らかの通信手段を介して指示された値である。
【００２８】
ノード総数算出部２２ｅは、通信エリアＮＡに存在する通信端末２０の総数の初期値Ｍ０或いは、初期値Ｍ０に基づいて算出した総数Ｍに基づいて、最新の総数ＭＮを算出する。
【００２９】
ノード総数算出部２２ｅは、連続無受信時間情報を受信すると、連続無受信時間が閾値を超えているか否かを確認する。そして、連続無受信時間が閾値を超えている場合は、直近に推定した総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。本実施形態における通信では、閾値は４００ｍｓｅｃ程度とすることが考えられる。
【００３０】
また、連続無受信時間が閾値以下の場合には、遅延時間に基づいて、最新の総数ＭＮを算出する。例えば、ノード総数算出部２２ｅは、遅延時間情報を受信すると、遅延時間が閾値を超えているか否かを確認する。そして、遅延時間が閾値を超えている場合は、直近に推定した総数Ｍの例えば２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。本実施形態では、１パケットの情報を送信するのに要する時間は１３ｍｓｅｃ程度であり、閾値は２倍の２６ｍｓｅｃとすることが考えられる。
【００３１】
また、連続無受信時間が閾値以下で、かつ、遅延時間が閾値以下の場合には、スループットに基づいて、最新の総数ＭＮを算出する。例えば、ノード総数算出部２２ｅは、スループットが閾値を下回る場合には、次式（１）に基づいて、最新の総数ＭＮを算出し、新たに算出した総数ＭＮを通信端末２０の総数とする。
【００３２】
ＭＮ＝Ｍ（β／（α×γ））  …（１）
【００３３】
αは、総数ＭＮが実際のノード総数と等しくなったときに単位時間Ｔ１が経過する間に受信される理想的なパケット数である。このαの値は設計で定められる。βは、単位時間Ｔ１が経過する間に自機が実際に受信したパケット数である。γは、状況に応じてαの値を調整するための調整係数である。特に調整の必要がないときは１とする。なお、αは０より大きい整数である。また、βが０であった場合は、βを１とする。
【００３４】
また、上述の閾値は、例えば通信メディアの理論的な伝送速度の６０％とすることができる。したがって、伝送速度から算出した受信パケット数の理論値が３０だとすると、閾値は１８となる。この場合、単位時間Ｔ１が経過する間に受信したパケット数が１８を下回ったときに、上記（１）式に基づいて、新たな総数ＭＮが算出される。
【００３５】
ノード総数算出部２２ｅは、上述した手順で通信エリアＮＡに存在する通信端末の最新の総数ＭＮを算出すると、算出した総数ＭＮに関する情報を、総数情報として、補正部２３へ出力する。一方、スループットが閾値以上の場合は、ノード総数算出部２２ｅは、既存の総数Ｍを補正部２３へ出力する。
【００３６】
図２に戻り、補正部２３は、ノード総数推定部２２から出力された総数情報を受信すると、総数Ｍの値が所定の範囲内であるか否かを確認する。補正部２３は、総数Ｍのとりうる範囲を、最大値ＭＭＡＸを上限とし、最小値ＭＭＩＮを下限として設定することができる。補正部２３は、ノード総数推定部２２によって推定された総数ＭＮが、最大値ＭＭＡＸを超えている場合には、推定された総数ＭＮの値を最大値ＭＭＡＸに補正して、確率設定部２４へ出力する。また、ノード総数推定部２２によって推定された総数ＭＮが、最小値ＭＭＩＮより小さい意場合には、推定された総数ＭＮの値を最小値ＭＭＩＮに補正して、確率設定部２４へ出力する。
【００３７】
一方、補正部２３は、ノード総数推定部２２によって推定された総数ＭＮが、最小値ＭＭＩＮ以上で最大値ＭＭＡＸ以下の場合は、ノード総数推定部２２から出力された総数情報を、補正処理を実行することなく確率設定部２４へ出力する。
【００３８】
確率設定部２４は、総数情報に基づいて、スロット規定部２５の規定するスロット内において、自ノードが情報（＝パケット）を送信する確率Ｐを算出する。確率Ｐは次式（２）を用いて算出される。ここで、ｎは、スロット規定部２５の規定するスロット内において パケットを送信することが望まれるノードの数である。このｎの値は、システムによって予め定められた値、もしくは他ノード或いは他のシステムから何らかの通信手段を介して指示された値であり、すべての通信端末２０に共通して与えられる。
【００３９】
Ｐ＝ｍｉｎ（ｎ，Ｍ）／Ｍ  …（２）
【００４０】
図４は、本実施形態にかかる通信端末２０の通信メディアにＩＥＥＥ８０２．１１規格を使用した場合のスロットと、図１における通信端末２０１〜２０３から出力されるパケット（情報）を模式的に示す図である。例えば、図１に示されるように、通信エリアＮＡに３つの通信端末２０１〜２０３が存在すると推定され、スロットが３つのパケットを含む場合には、確率設定部２４は、上記式（２）に基づいて、確率３／３（＝１）を算出する。また、例えば通信エリアＮＡに５つの通信端末２０１〜２０５が存在すると推定され、同様にスロットが３つのパケットを含む場合には、確率設定部２４は、上記式（２）に基づいて、確率３／５を算出する。そして、確率設定部２４は、算出した確率Ｐに関する情報を、抽選部２６へ出力する。
【００４１】
スロット規定部２５は、情報を出力するためのスロットを、通信エリアＮＡ内に存在する通信端末２０それぞれから独立して順次規定する。そして、規定したスロットに関する情報を抽選部２６へ出力する。図４に示されるスロットのスロット長ＴＳは、パケット長のｎ倍に、ｎ個の分散制御用フレーム間隔ＤＩＦＳと、コンテンションウインドウの送信待ち時間とを加えた大きさとなる。なお、ここではｎの値を３、コンテンションウインドウの数を３とする。
【００４２】
抽選部２６は、生成されたスロット内において、パケットを送信するか否かを、確率Ｐに基づいて決定する。例えば、確率Ｐが３／３である場合には、抽選部２６は、規定されたスロットで常に情報を送信することを決定する。また、確率Ｐが３／５である場合には、抽選部２６は、６０％の確率で、規定されたスロット内で情報を送信することを決定する。抽選方法としては、例えば、１から１００までの数値をランダムに出力し、１から６０までの数値が出力された場合に、規定されたスロット内で情報を送信することを決定する方法が考えられる。
【００４３】
抽選部２６は、抽選により規定されたスロット内で情報を送信することを決定した場合は、パケットを、送信時刻記憶部２７へ出力する。
【００４４】
送信時刻記憶部２７は、前記パケットを受信すると、現在の時刻を送信時刻情報として送信パケットと関連付ける。そして、送信時刻情報が関連付けられた送信パケットを、情報送信部２８へ出力する。
【００４５】
情報送信部２８は、まず、他の通信端末２０が情報の送信を実行しているか否かを確認する。そして、他の通信端末２０による情報の送信が確認されなかった場合には、送信パケットの送信を開始する。
【００４６】
一方、他の通信端末２０による情報の送信が確認された場合には、情報送信部２８は、まず、情報の送信が終了するのを待つ。次に、分散制御用フレーム間隔ＤＩＦＳ相当の時間が経過した後、割り当てられたコンテンションウインドウの待ち時間に、他の通信端末２０が情報の送信を実行しているか否かを確認する。そして、他の通信端末２０による情報の送信が確認されなかった場合に、送信パケットの送信を開始する。もし、コンテンションウインドウの待ち時間に、他の通信端末２０が情報の送信を実行した場合は、それまでの経過時間を初期の待ち時間から差し引いた残りの時間を、次回のコンテンションウインドウの待ち時間として保持する。
【００４７】
図１に示されるように、上述のように構成された３つの通信端末２０１〜２０３から構成される通信システム１０では、通信エリアＮＡに存在する通信端末２０の数が正確に推定された場合には、各スロット内において、通信端末２０１〜２０３それぞれから１回ずつ送信パケットの送信が実行される。
【００４８】
以上説明したように、本実施形態では、通信エリアＮＡにある通信端末２０の総数に基づく確率で、各通信端末２０から送信パケットの送信が実行される。したがって、簡易な演算で送信タイミングを決定し、迅速に情報の送信を実行することができる。
【００４９】
また、本実施形態では、簡易な演算で送信タイミングを決定することができる。このため、例えば通信端末２０を車両に搭載した場合には、時々刻々と変化する交通状況に合わせて、迅速に送信タイミングを決定することができ、通信システム１０におけるスループットを高い次元に維持することができる。
【００５０】
なお、本実施形態における通信端末２０それぞれは、通信システム１０を構成する通信端末同士で時刻を同期するための同期手段を備えていてもよい。
【００５１】
本実施形態では、連続無受信時間、及び遅延時間に基づいて最新の総数ＭＮを推定する際に、直近に推定した総数Ｍを２倍した。これに限らず、直近に推定した総数Ｍをｋ倍（ｋは１より大きい数）することとしてもよい。要するに、通信エリアＮＡの大きさ、進入及び退出する通信端末２０の単位時間あたりの個数などに応じて、適当な通信端末２０の総数が推定されればよい。
【００５２】
本実施形態では、規定されたスロット内においてパケットの送信を行うか否かを決定する確率Ｐを、ノード総数に基づいて決定した。これに限らず、送信する情報の種類や、優先度に応じて確率Ｐを調整してもよい。
【００５３】
例えば、事故の発生を意味する事故情報、急ブレーキ等により車両が急減速をしたことを意味する急減速情報、渋滞の有無を意味する渋滞情報、燃費に関する燃費情報の４つの情報が、送信すべき情報である場合には、緊急性を要する順に各情報に優先度を設定する。そして、優先度に応じて、それぞれの情報の送信を行うか否かを決定する確率に重み付けを行う。例えば、確率設定部２４が算出した確率Ｐに、４を乗じた確率４Ｐを、事故情報を送信するか否かを決定する確率とし、２を乗じた確率２Ｐを、急減速情報を送信するか否かを決定する確率とし、０．５を乗じた確率０．５Ｐを、渋滞情報を送信するか否かを決定する確率とし、０．２５を乗じた確率０．２５Ｐを、燃費情報を送信するか否かを決定する確率とすることが考えられる。
【００５４】
これによれば、通信端末２０から、緊急性の高い情報を優先的に出力されるため、通信システム１０全体としての利便性及び有用性の向上が実現される。
【００５５】
《第２の実施形態》
次に、本発明の第２の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【００５６】
本実施形態に係る通信端末２０は、一般的なコンピュータ、又はマイクロコンピュータなどの装置と同様の構成によって実現されている点で、第１の実施形態に係る通信端末２０と相違している。
【００５７】
図５は、通信端末２０の物理的な構成を示すブロック図である。図５に示されるように、通信端末２０は、ＣＰＵ（Central Processing Unit）２０ａ、主記憶部２０ｂ、補助記憶部２０ｃ、表示部２０ｄ、入力部２０ｅ、インターフェイス２０ｆ、及び上記各部を相互に接続するシステムバス２０ｇを含んで構成されている。
【００５８】
ＣＰＵ２０ａは、補助記憶部２０ｃに記憶されているプログラムに従って、交通情報の送信及び受信を行う。
【００５９】
主記憶部２０ｂは、ＲＡＭ（Random Access Memory）等を含んで構成され、ＣＰＵ２０ａの作業領域として用いられる。
【００６０】
補助記憶部２０ｃは、ＲＯＭ（Read Only Memory）、磁気ディスク、半導体メモリ等の不揮発性メモリを含んで構成されている。この補助記憶部２０ｃは、ＣＰＵ２０ａが実行するプログラム、及び各種パラメータなどを記憶している。また、インターフェイス２０ｆを介して受信された情報を逐次記憶する。
【００６１】
表示部２０ｄは、ＬＣＤ（Liquid Crystal Display）などを含んで構成され、ＣＰＵ２０ａの処理結果などを表示する。
【００６２】
入力部２０ｅは、タッチパネル、ジョイスティック、入力キー等から構成されている。オペレータの指示は、この入力部２０ｅを介して入力され、システムバス２０ｇを経由してＣＰＵ２０ａに通知される。
【００６３】
インターフェイス２０ｆは、ＩＥＥＥ８０２．１１規格に基づく、シングルホップ通信を行う無線ＬＡＮ（Local Area Network）インターフェイスである。
【００６４】
図６のフローチャートは、ＣＰＵ２０ａによって実行されるプログラムの一連の処理アルゴリズムに対応している。以下、図６を参照しつつ、通信端末２０の動作について説明する。この処理は、通信端末２０を搭載する車両のカーナビゲーションシステムから、当該車両が通信エリアＮＡに進入したことが、ＣＰＵ２０ａに通知されることで開始される。そして、この処理は、通信端末２０を搭載する車両のカーナビゲーションシステムから、当該車両が通信エリアＮＡから退出したことが、ＣＰＵ２０ａに通知されることで中止される。また、前提として通信エリアＮＡ内の通信端末の総数は、初期値としてＮ０が設定されているものとする。
【００６５】
最初のステップＳ１０１では、ＣＰＵ２０ａは、他の通信端末２０からパケットが出力されるまで待機する。そして、パケットを受信すると（ステップＳ１０１：Ｙｅｓ）、次のステップＳ１０２へ移行する。
【００６６】
ステップＳ１０２では、ＣＰＵ２０ａは、受信パケットに関連付けられた情報から、当該受信パケットが受信された時刻を特定する。次に、直近に受信された受信パケットについての受信時刻と現在時刻との時間差を、連続無受信時間として算出する。そして、ＣＰＵ２０ａは、連続無受信時間が閾値を超えているか否かを確認する。
【００６７】
ＣＰＵ２０ａは、連続無受信時間が閾値を超えていると判断した場合は（ステップＳ１０２：Ｙｅｓ）、ステップＳ１０４に移行する。また、連続無受信時間が閾値を超えていないと判断した場合は（ステップＳ１０２：Ｎｏ）、ステップＳ１０３へ移行する。
【００６８】
ステップＳ１０３では、ＣＰＵ２０ａは、受信パケットに関連付けられた情報から、送信時刻と受信時刻との時間差を遅延時間として算出する。そして、遅延時間が閾値を超えているか否かを確認する。
【００６９】
ＣＰＵ２０ａは、遅延時間が閾値を超えていると判断した場合は（ステップＳ１０３：Ｙｅｓ）、ステップＳ１０４に移行する。また、連続無受信時間が閾値を超えていないと判断した場合は（ステップＳ１０３：Ｎｏ）、ステップＳ１０５へ移行する。
【００７０】
ステップＳ１０４では、ＣＰＵ２０ａは、通信エリアＮＡに存在する通信端末２０の総数の初期値Ｍ０或いは、初期値Ｍ０に基づいて算出した総数Ｍに基づいて、最新の総数ＭＮを算出する。具体的には、ＣＰＵ２０ａは、直近に推定した総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。
【００７１】
一方、ステップＳ１０５では、ＣＰＵ２０ａは、単位時間Ｔ１が経過する間に受信したパケットを順次カウントすることで、スループットを計測する。そして、スループットが閾値を下回るか否かを確認する。
【００７２】
ＣＰＵ２０ａは、スループットが閾値を下回ると判断した場合は（ステップＳ１０５：Ｙｅｓ）、ステップＳ１０６へ移行する。また、スループットが閾値以上であると判断した場合は（ステップＳ１０５：Ｎｏ）、ステップＳ１０９へ移行する。
【００７３】
ステップＳ１０６では、ＣＰＵ２０ａは、上記式（１）に基づいて、最新の総数ＭＮを算出し、新たに算出した総数ＭＮを通信端末２０の総数とする。
【００７４】
ステップＳ１０７では、ＣＰＵ２０ａは、総数Ｍの値が適正であるか、すなわち最小値ＭＭＩＮ以上で、最大値ＭＭＡＸ以下であるか否かを確認する。そして、ＣＰＵ２０ａは、総数Ｍの値が適正であると判断した場合は（ステップＳ１０７：Ｙｅｓ）、ステップＳ１０９へ移行する。また、総数Ｍの値が適正でないと判断した場合は（ステップＳ１０７：Ｎｏ）、ステップＳ１０８へ移行する。
【００７５】
ステップＳ１０８では、ＣＰＵ２０ａは、総数Ｍが、最大値ＭＭＡＸを超えている場合には、総数Ｍを最大値ＭＭＡＸに補正する。また、総数Ｍが、最小値ＭＭＩＮより小さい場合には、総数ＭＮの値を最小値ＭＭＩＮに補正する。
【００７６】
ステップＳ１０９では、ＣＰＵ２０ａは、総数Ｍの値に基づいて、確率Ｐを算出する。
【００７７】
ステップＳ１１０では、ＣＰＵ２０ａは、情報を出力するためのスロットを、通信エリアＮＡ内に存在する通信端末２０それぞれから独立して規定する。
【００７８】
ステップＳ１１１では、ＣＰＵ２０ａは、生成されたスロットにおいて、パケットを送信するか否かを、確率Ｐに基づいて決定する。
【００７９】
ステップＳ１１２では、ＣＰＵ２０ａは、生成されたスロットにおいて、パケットを送信することを決定した時刻（送信時刻）に関する情報を、送信パケットと関連付ける。
【００８０】
ステップＳ１１３では、ＣＰＵ２０ａは、他の通信端末２０が情報の送信を実行しているか否かを確認する。そして、他の通信端末２０による情報の送信が確認されなかった場合には、送信パケットの送信を開始する。
【００８１】
一方、他の通信端末２０による情報の送信が確認された場合には、情報送信部２８は、まず、情報の送信が終了するのを待つ。次に、分散制御用フレーム間隔ＤＩＦＳ相当の時間が経過した後、他の通信端末２０が情報の送信を実行しているか否かの確認を、コンテンションウインドウのフレーム長に相当する時間だけ行う。そして、他の通信端末２０による情報の送信が確認されなかった場合には、送信パケットの送信を開始する。
【００８２】
送信が終了すると、ＣＰＵ２０ａはステップＳ１０１へ戻り、以降ステップＳ１０１〜ステップＳ１１３までの処理を繰り返し実行する。
【００８３】
以上説明したように、本実施形態では、通信エリアＮＡにある通信端末２０の総数に基づく確率で、各通信端末２０から送信パケットの送信が実行される。したがって、簡易な演算で送信タイミングを決定し、迅速に情報の送信を実行することができる。
【００８４】
また、本実施形態では、簡易な演算で送信タイミングを決定することができる。このため、例えば通信端末２０を車両に搭載した場合には、時事刻々と変化する交通状況に合わせて、迅速に送信タイミングを決定することができ、通信システム１０におけるスループットを高い次元に維持することができる。
【００８５】
《第３の実施形態》
次に、本発明の第３の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【００８６】
本実施形態に係る通信端末２０は、パケットの受信成功回数と、パケットの受信失敗回数とを用いた演算結果に応じて、通信端末の総数Ｍを推定する点で、第１の実施形態に係る通信端末２０と相違している。なお、本実施形態に係る通信端末２０は、第１の実施形態に係る通信端末２０における送信時刻記憶部２７、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃ、スループット測定部２２ｄを有していてもよいが、特に必要としない。
【００８７】
図７は、情報受信部２１のブロック図である。図７に示されるように、情報受信部２１は、アンテナ２１ａ、信号処理回路２１ｂ、受信管理回路２１ｃ、及びデータメモリ２１ｄを有している。
【００８８】
信号処理回路２１ｂは、アンテナ２１ａを介して、他の通信端末２０から送信される信号を受信する。そして、受信した信号をビット単位のデジタル信号に変換（復調）することにより得たデータをデータメモリ２１ｄに出力する。
【００８９】
受信管理回路２１ｃは、信号処理回路２１ｂをモニタし、単位時間Ｔ１あたりの、信号の変換が成功した回数（受信成功回数）ａと、信号の変換が失敗した回数（受信失敗回数）ｂとを順次ノード総数推定部２２へ出力する。
【００９０】
図８は一例として、通信システム１０が１１台の通信端末２０によって構成されたときに、各通信端末２０１〜２０１１から送信されるパケットを模式的に示す図である。例えば自機としての通信端末２０１１は、スロット長の６倍の長さの単位時間Ｔ１が経過する間に、通信端末２０１〜２０１１それぞれから送信されたパケットを順次受信する。なお、ここでは説明の便宜上、通信端末２０１１は、自機が送信したパケットも受信するものとする。
【００９１】
通信端末２０１１の受信管理回路２１ｃは、信号処理回路２１ｂでの処理が完了するごとに、パケットの受信成功回数ａを１ずつ更新する（ａ←ａ＋１）。一方、３つめのスロットで通信端末２０１から出力されたパケットと、通信端末２０７から出力されたパケットとが衝突した場合は、信号処理回路２１ｂでの処理が不能となる。受信管理回路２１ｃは、信号処理回路２１ｂでの処理が不能となるごとに、パケットの受信失敗回数ｂを１ずつ更新する（ｂ←ｂ＋１）。
【００９２】
図８に示されるように、各通信端末２０１〜２０１１から、パケットが送信された場合には、各通信端末２０１１の受信管理回路２１ｃによってカウントされた受信成功回数ａは１７となり、受信失敗回数ｂは１となる。このカウント結果としての受信成功回数ａと、受信失敗回数ｂとは、ノード総数推定部２２へ出力される。
【００９３】
ノード総数推定部２２は、受信成功回数ａと受信失敗回数ｂとを用いた演算結果に基づいて、通信エリアＮＡに存在する通信端末２０の最新の総数ＭＮを算出する。
【００９４】
例えば、ノード総数推定部２２は、受信成功回数ａ及び受信失敗回数ｂについて、演算式ａ／（ａ＋ｂ）を用いた演算を行う。そして、演算結果が閾値を下回った場合に、直近に推定した前記通信端末の総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。
【００９５】
上述の演算式の演算結果は、受信成功率と等価であり、受信成功回数ａが１７で、受信失敗回数ｂが１のときの演算結果は０．９４４となる。このとき、例えば閾値が９５％であり、直近に推定した通信端末の総数Ｍが１０であるとすると、ノード総数推定部２２は、最新の通信端末２０の総数ＭＮの値として２０（＝１０×２）を推定することになる。
【００９６】
一方、ノード総数推定部２２は、演算結果が閾値以上の場合は、受信成功回数ａに基づいて、最新の総数ＭＮを算出する。例えば、ノード総数推定部２２は、受信成功回数ａが閾値を下回る場合には、単位時間Ｔ１が経過する間に受信すべきパケットの数αと、単位時間Ｔ１が経過する間に実際に受信が成功したパケットの数βとから、次式（３）に基づいて最新の総数ＭＮを算出する。
【００９７】
ＭＮ＝Ｍ（β／（α×γ））  …（３）
【００９８】
なお、γは、状況に応じてαの値を調整するための調整係数である。特に調整の必要がないときは１とする。また、αは０より大きい整数である。βが０であった場合は、βを１とする。
【００９９】
一方、ノード総数推定部２２は、演算結果が閾値以上の場合は、既存の総数Ｍを補正部２３へ出力する。
【０１００】
以上説明したように、本実施形態では、情報の受信が成功した受信成功回数ａ、及び情報の受信が失敗した受信失敗回数ｂに基づいて、通信エリアＮＡに存在する通信端末の最新の総数Ｍが算出される。
【０１０１】
このため、通信システム１０を構成する通信端末２０相互間で、通信端末固有の時刻が同期していなくても、精度よく通信エリアＮＡに存在する通信端末の最新の総数Ｍを推定することができる。
【０１０２】
また、本実施形態では、最新の総数ＭＮを推定する際に、直近に推定した総数Ｍを２倍した。これに限らず、直近に推定した総数Ｍをｋ倍（ｋは１より大きい数）することとしてもよい。要するに、通信エリアＮＡの大きさ、進入及び退出する通信端末２０の単位時間あたりの個数などに応じて、適当な通信端末２０の総数が推定されればよい。
【０１０３】
《第４の実施形態》
次に、本発明の第４の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【０１０４】
本実施形態に係る通信端末２０は、パケットの受信成功回数ａと、パケットの受信失敗回数ｂと、更に通信端末２０に情報が受信された通信端末の成功台数ｃを用いた演算結果に基づいて、通信端末の総数Ｍを推定する点で、第３の実施形態に係る通信端末２０と相違している。なお、本実施形態に係る通信端末２０は、第１の実施形態に係る通信端末２０における送信時刻記憶部２７、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃ、スループット測定部２２ｄを有していてもよいが、特に必要としない。
【０１０５】
本実施形態に係る情報受信部２１の信号処理回路２１ｂは、アンテナ２１ａを介して、他の通信端末２０から送信される信号を受信する。そして、受信した信号をビット単位のデジタル信号に変換することにより得たデータをデータメモリ２１ｄに出力する。
【０１０６】
受信管理回路２１ｃは、信号処理回路２１ｂをモニタし、単位時間Ｔ１あたりの、信号の復調が成功した受信成功回数ａと、信号の復調が失敗した受信失敗回数ｂとを順次ノード総数推定部２２へ出力する。また、信号の変換に成功した情報を送信した通信端末２０を、例えばパケットとともに送信される識別ＩＤに基づいて、特定する。そして、特定した通信端末２０の数を成功台数ｃとして、順次ノード総数推定部２２へ出力する。
【０１０７】
例えば図８の例では、受信成功回数ａは１７となり、受信失敗回数ｂは１となる。また、特定された通信端末２０の台数は、通信端末２０１〜２０１１から通信端末２０７を除いた、１０となる。これらのカウント結果は、ノード総数推定部２２へ出力される。
【０１０８】
ノード総数推定部２２は、まず、第１演算式ａ／（ａ＋ｂ）を用いた演算を行う。そして、演算結果が第１閾値を下回った場合に、第２演算式ｃ×（ａ＋ｂ）／ａを用いた演算を行い、演算結果を、最新の通信端末の総数ＭＮとする。
【０１０９】
例えば受信成功回数ａが１７、受信失敗回数ｂが１、成功台数ｃが１０の場合には、第１演算式による演算結果は０．９４４となる。この場合、第１閾値が９５％であるとすると、第１演算式による演算結果が第１閾値以下となる。したがって、ノード総数推定部２２は、第２演算式を用いた演算を行い、演算結果としての値１１（≒１０．６）を得る。ノード総数推定部２２は、この値１１を通信端末２０の最新の総数ＭＮと推定する。
【０１１０】
これにより、通信端末２０の総数Ｍによって規定される確率の値が低くなる。その結果、パケットの衝突が回避され、通信システム１０におけるスループットが向上する。
【０１１１】
また、第１演算式による演算結果が第１閾値を上回った場合は、ノード総数推定部２２は、成功台数ｃの値を、通信端末２０の最新の総数ＭＮと推定する。したがって、ここでは、ノード総数推定部２２は、値１０を通信端末２０の最新の総数ＭＮと推定する。
【０１１２】
なお、この場合において、第１演算式による演算結果が閾値を上回るとともに、スロット長ＴＳ、単位時間Ｔ１、及びスロットに含まれるパケットの個数ｎを変数とする第３演算式ａ／（Ｔ１／ＴＳ×ｎ）による演算結果が第２閾値を上回ったときには、既存の総数Ｍを補正部２３へ出力することとしてもよい。
【０１１３】
図９は一例として、通信システム１０が５台の通信端末２０によって構成されたときに、各通信端末２０１〜２０５から送信されるパケットを模式的に示す図である。図９に示されるように、単位時間Ｔ１に、１０個のパケットが発信された場合には、通信端末２０の受信管理回路２１ｃから出力される受信成功回数ａ、受信失敗回数ｂ、及び成功台数ｃそれぞれの値は、１０、０、及び５となる。ここで、例えば第２閾値を６０％とすると、第３演算式の演算結果は０．５５６となり、第２閾値を下回る。この場合は、ノード総数推定部２２は、成功台数ｃの値５を通信端末２０の最新の総数ＭＮと推定する。そして、最新の総数ＭＮを補正部２３へ出力する。
【０１１４】
一方、第２閾値を５０％とすると、第３演算式の演算結果は第２閾値を上回る。この場合は、ノード総数推定部２２は、ノードの総数として既存の総数Ｍを補正部２３へ出力する。
【０１１５】
以上説明したように、本実施形態では、受信成功回数ａ、受信失敗回数ｂ、及び成功台数ｃに基づいて、通信エリアＮＡに存在する通信端末の最新の総数Ｍが算出される。
【０１１６】
このため、通信システム１０を構成する通信端末２０相互間で、通信端末固有の時刻が同期していなくても、精度よく通信エリアＮＡに存在する通信端末の最新の総数Ｍを推定することができる。
【０１１７】
《第５の実施形態》
次に、本発明の第５の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【０１１８】
本実施形態に係る通信端末２０は、パケットの受信エラーを検出し、通信端末の総数Ｍを推定する点で、第１の実施形態に係る通信端末２０と相違している。なお、本実施形態に係る通信端末２０は、第１の実施形態に係る通信端末２０における送信時刻記憶部２７、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃを有していてもよいが、特に必要としない。
【０１１９】
図１０は、情報受信部２１のブロック図である。図１０に示されるように、情報受信部２１は、アンテナ２１ａ、信号処理回路２１ｂ、データメモリ２１ｄ、及び受信エラー検出回路２１ｅを有している。
【０１２０】
受信エラー検出回路２１ｅは、信号処理回路２１ｂをモニタし、信号の変換が失敗したことを、受信エラー検出結果としてノード総数推定部２２へ出力する。
【０１２１】
ノード総数推定部２２は、受信エラー検出結果に基づいて、通信エリアＮＡに存在する通信端末２０の最新の総数ＭＮを算出する。
【０１２２】
例えば、ノード総数推定部２２は、受信エラー検出結果を受け取ると、直近に推定した前記通信端末の総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。
【０１２３】
一方、ノード総数推定部２２は、受信エラーが検出されなかった場合は、スループットに基づいて、最新の総数ＭＮを算出する。例えば、ノード総数推定部２２は、スループットが閾値を下回る場合には、次式（４）に基づいて、最新の総数ＭＮを算出し、新たに算出した総数ＭＮを通信端末２０の総数とする。
【０１２４】
ＭＮ＝Ｍ（β／（α×γ）)  …（４）
【０１２５】
αは、総数ＭＮが実際のノード総数と等しくなったときに単位時間Ｔ１が経過する間に受信される理想的なパケット数である。このαの値は設計で定められる。βは、単位時間Ｔ１が経過する間に自機が実際に受信したパケット数である。γは、状況に応じてαの値を調整するための調整係数である。特に調整の必要がないときは１とする。なお、αは０より大きい整数である。また、βが０であった場合は、βを１とする。
【０１２６】
また、上述の閾値は、例えば通信メディアの理論的な伝送速度の６０％とすることができる。したがって、伝送速度から算出した受信パケット数の理論値が３０だとすると、閾値は１８となる。この場合、単位時間Ｔ１が経過する間に受信したパケット数が１８を下回ったときに、上記（４）式に基づいて、新たな総数ＭＮが算出される。
【０１２７】
ノード総数推定部２２は、上述した手順で通信エリアＮＡに存在する通信端末の最新の総数ＭＮを算出すると、算出した総数ＭＮに関する情報を、総数情報として、補正部２３へ出力する。一方、スループットが閾値以上の場合は、ノード総数推定部２２は、既存の総数Ｍを補正部２３へ出力する。
【０１２８】
以上説明したように、本実施形態では、情報の受信エラー検出結果に基づいて、通信エリアＮＡに存在する通信端末の最新の総数Ｍが算出される。
【０１２９】
このため、通信システム１０を構成する通信端末２０相互間で、通信端末固有の時刻が同期していなくても、精度よく通信エリアＮＡに存在する通信端末の最新の総数Ｍを推定することができる。
【０１３０】
また、本実施形態に係る通信端末２０は、図１１のフローチャートに示される処理を実行するコンピュータ等を含んで構成されていてもよい。図１１に示されるように、当該通信端末２０のＣＰＵ２０ａは、図６におけるフローチャートのステップＳ１０２の処理及びステップＳ１０３の処理の代わりに、ステップＳ１２０の処理を実行する。
【０１３１】
具体的には、ＣＰＵ２０ａは、信号の変換に失敗したと判断した場合に（ステップＳ１２０：Ｙｅｓ）、ステップＳ１０５へ移行する。また、信号の変換に成功したと判断した場合に（ステップＳ１２０：Ｎｏ）、ステップＳ１０３へ移行する。
【０１３２】
また、本実施形態では、最新の総数ＭＮを推定する際に、直近に推定した総数Ｍを２倍した。これに限らず、直近に推定した総数Ｍをｋ倍（ｋは１より大きい数）することとしてもよい。要するに、通信エリアＮＡの大きさ、進入及び退出する通信端末２０の単位時間あたりの個数などに応じて、適当な通信端末２０の総数が推定されればよい。
【０１３３】
《第６の実施形態》
次に、本発明の第６の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【０１３４】
本実施形態に係る通信端末２０は、送信待ちパケット数から、通信端末の総数Ｍを推定する点で、第１の実施形態に係る通信端末２０と相違している。なお、本実施形態に係る通信端末２０は、第１の実施形態に係る通信端末２０における送信時刻記憶部２７、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃを有していてもよいが、特に必要としない。
【０１３５】
図１２は、情報送信部２８のブロック図である。図１２に示されるように、情報送信部２８は、アンテナ２８ａ、信号処理回路２８ｂ、データメモリ２８ｃ、及びメモリ監視回路２８ｄを有している。
【０１３６】
メモリ監視回路２８ｄは、データメモリ２８ｃをモニタし、データメモリ２８ｃに残存している送信パケット数に関する情報を、ノード総数推定部２２へ出力する。
【０１３７】
ノード総数推定部２２は、データメモリ２８ｃに残存している送信パケット数（以下、残存送信パケット数という）に基づいて、通信エリアＮＡに存在する通信端末２０の最新の総数ＭＮを算出する。
【０１３８】
例えば、ノード総数推定部２２は、残存送信パケット数が閾値を超えているか否かを確認する。そして、残存送信パケット数が閾値を超えていると判断した場合は、直近に推定した前記通信端末の総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。本実施形態の通信では、閾値は２とすることが考えられる。
【０１３９】
一方、ノード総数推定部２２は、残存送信パケット数が閾値を超えていないと判断した場合は、スループットに基づいて、最新の総数ＭＮを算出する。例えば、ノード総数推定部２２は、スループットが閾値を下回る場合には、次式（５）に基づいて、最新の総数ＭＮを算出し、新たに算出した総数ＭＮを通信端末２０の総数とする。
【０１４０】
ＭＮ＝Ｍ（β／（α×γ）)  …（５）
【０１４１】
αは、総数ＭＮが実際のノード総数と等しくなったときに単位時間Ｔ１が経過する間に受信される理想的なパケット数である。このαの値は設計で定められる。βは、単位時間Ｔ１が経過する間に自機が実際に受信したパケット数である。γは、状況に応じてαの値を調整するための調整係数である。特に調整の必要がないときは１とする。なお、αは０より大きい整数である。また、βが０であった場合は、βを１とする。
【０１４２】
なお、上述の閾値は、例えば通信メディアの理論的な伝送速度の６０％とすることができる。したがって、伝送速度から算出した受信パケット数の理論値が３０だとすると、閾値は１８となる。この場合、単位時間Ｔ１が経過する間に受信したパケット数が１８を下回ったときに、上記（５）式に基づいて、新たな総数ＭＮが算出される。
【０１４３】
ノード総数推定部２２は、上述した手順で通信エリアＮＡに存在する通信端末の最新の総数ＭＮを算出すると、算出した総数ＭＮに関する情報を、総数情報として、補正部２３へ出力する。一方、スループットが閾値以上の場合は、ノード総数推定部２２は、既存の総数Ｍを補正部２３へ出力する。
【０１４４】
以上説明したように、本実施形態では、残存送信パケット数（残存送信情報数）に基づいて、通信エリアＮＡに存在する通信端末の最新の総数Ｍが算出される。
【０１４５】
このため、通信システム１０を構成する通信端末２０相互間で、通信端末固有の時刻が同期していなくても、精度よく通信エリアＮＡに存在する通信端末の最新の総数Ｍを推定することができる。
【０１４６】
また、本実施形態に係る通信端末２０は、図１３のフローチャートに示される処理を実行するコンピュータ等を含んで構成されていてもよい。図１３に示されるように、当該通信端末２０のＣＰＵ２０ａは、図６におけるフローチャートのステップＳ１０２の処理及びステップＳ１０３の処理の代わりに、ステップＳ１２１の処理を実行する。
【０１４７】
具体的には、ＣＰＵ２０ａは、残存送信パケット数が閾値を超えていると判断した場合に（ステップＳ１２１：Ｎｏ）、ステップＳ１０５へ移行する。また、残存送信パケット数が閾値を超えていないと判断した場合に（ステップＳ１２１：Ｙｅｓ）、ステップＳ１０４へ移行する。
【０１４８】
また、本実施形態では、最新の総数ＭＮを推定する際に、直近に推定した総数Ｍを２倍した。これに限らず、直近に推定した総数Ｍをｋ倍（ｋは１より大きい数）することとしてもよい。要するに、通信エリアＮＡの大きさ、進入及び退出する通信端末２０の単位時間あたりの個数などに応じて、適当な通信端末２０の総数が推定されればよい。
【０１４９】
《第７の実施形態》
次に、本発明の第７の実施形態を、図面を参照しつつ説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
【０１５０】
本実施形態に係る通信端末２０は、一般的なコンピュータ、又はマイクロコンピュータなどの装置と同様の構成によって実現されている点で、第４の実施形態に係る通信端末２０と相違している。なお、本実施形態に係る通信端末２０は、第１の実施形態に係る通信端末２０における送信時刻記憶部２７、受信時刻記録部２２ａ、連続無受信時間計測部２２ｂ、遅延時間計測部２２ｃ、スループット測定部２２ｄを有していてもよいが、特に必要としない。
【０１５１】
本実施形態に係る通信端末２０は、図５に示されるように、ＣＰＵ２０ａ、主記憶部２０ｂ、補助記憶部２０ｃ、表示部２０ｄ、入力部２０ｅ、インターフェイス２０ｆ、及び上記各部を相互に接続するシステムバス２０ｇを含んで構成されている。
【０１５２】
ＣＰＵ２０ａは、補助記憶部２０ｃに記憶されているプログラムに従って、交通情報の送信及び受信を行う。
【０１５３】
以下、図１４に示されるフローチャートを参照しつつ通信端末２０の動作を説明する。本実施形態に係る通信端末２０は、情報の送信処理と並行して、単位時間Ｔ１ごとに、通信システム１０を構成する通信端末２０の総数Ｍを更新する。この処理は、通信端末２０を搭載する車両のカーナビゲーションシステムから、当該車両が通信エリアＮＡに進入したことが、ＣＰＵ２０ａに通知されることで開始される。そして、この処理は、通信端末２０を搭載する車両のカーナビゲーションシステムから、当該車両が通信エリアＮＡから退出したことが、ＣＰＵ２０ａに通知されることで中止される。また、前提として、通信エリアＮＡでは、常時いずれかの通信端末２０から情報が送信されているものとする。
【０１５４】
ＣＰＵ２０ａは、車両が通信エリアＮＡに進入すると、まずステップＳ２０１での処理を実行する。ステップＳ２０１では、ＣＰＵ２０ａは、経過時間をカウントするタイマの値を０にリセットする。
【０１５５】
次のステップＳ２０２では、ＣＰＵ２０ａは、受信成功回数ａ及び受信失敗回数ｂをカウントするカウンタの値をリセットする。以下、受信成功回数ａ及び受信失敗回数ｂそれぞれをカウンタ値ａ、カウンタ値ｂともいう。
【０１５６】
次のステップＳ２０３では、ＣＰＵ２０ａは、他の通信端末２０から送信された信号を受信する。そして、受信した信号をビット単位のデジタル信号に変換する。
【０１５７】
次のステップＳ２０４では、ＣＰＵ２０ａは、ステップＳ２０３での変換処理ができたか、或いは不能であったかを確認する。ＣＰＵ２０ａは、変換処理ができたときは（ステップＳ２０４：Ｎｏ）、次のステップＳ２０５へ移行し、カウンタ値ａを１インクリメントする。また、ＣＰＵ２０ａは、変換処理が不能であったときは、次のステップＳ２０６へ移行し、カウンタ値ｂを１インクリメントする。
【０１５８】
次のステップＳ２０７では、ＣＰＵ２０ａは、タイマのカウント値を参照して、単位時間Ｔ１が経過したか否かを確認する。そして、単位時間Ｔ１が経過していないと判断した場合は（ステップＳ２０７：Ｎｏ）、ステップＳ２０３へ戻り、以降ステップＳ２０７での判断が肯定されるまで、ステップＳ２０３〜ステップＳ２０７までの処理を繰り返し実行する。一方、単位時間Ｔ１が経過したと判断した場合は（ステップＳ２０７：Ｙｅｓ）、次のステップＳ２０８へ移行する。
【０１５９】
ステップＳ２０８では、ＣＰＵ２０ａは、カウンタ値ａ、及びカウンタ値ｂを変数とする演算式ａ／（ａ＋ｂ）を用いた演算を行う。
【０１６０】
次のステップＳ２０９では、ＣＰＵ２０ａは、演算式による演算結果が、閾値を下回るか否かを確認する。そして、演算結果が閾値を下回らなかった場合は（ステップＳ２０９：Ｎｏ）、ステップＳ２０１に戻り、以降ステップＳ２０９での判断が肯定されるまで、ステップＳ２０１〜Ｓ２０９までの処理を繰り返し実行する。一方、演算結果が閾値を下回った場合は（ステップＳ２０９：Ｙｅｓ）、次のステップＳ２１０へ移行する。
【０１６１】
ステップＳ２１０では、通信端末２０の総数Ｍを更新する。具体的には、直近に推定した前記通信端末の総数Ｍの２倍の値を、最新の総数ＭＮ（＝２Ｍ）として算出する。以降、ＣＰＵ２０ａは、ステップＳ２０１に戻り、ステップＳ２０１〜ステップＳ２１０までの処理を繰り返し実行する。
【０１６２】
またＣＰＵ２０ａは、上述の処理と並行して、通信端末２０の総数に基づいて確率Ｐを算出するとともに、この確率でパケットを送信する処理を実行する。
【０１６３】
以上説明したように、本実施形態では、受信成功回数ａ、受信失敗回数ｂに基づいて、通信エリアＮＡに存在する通信端末の最新の総数Ｍが算出される。
【０１６４】
このため、通信システム１０を構成する通信端末２０相互間で、通信端末固有の時刻が同期していなくても、精度よく通信エリアＮＡに存在する通信端末の最新の総数Ｍを推定することができる。
【０１６５】
また、本実施形態では、ＣＰＵ２０ａは、受信成功回数ａ、受信失敗回数ｂに基づいて、通信エリアＮＡに存在する通信端末の総数Ｍを算出した。これに限らず、ＣＰＵ２０ａは、受信成功回数ａ、受信失敗回数ｂに加えて、成功台数ｃを用い、第４の実施形態に係る通信端末２０と同様に、通信エリアＮＡに存在する通信端末の最新の総数Ｍを算出してもよい。
【０１６６】
以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。
【０１６７】
例えば、上記第１の実施形態では、通信エリアＮＡに３つの通信端末２０が存在する場合について説明した。これに限らず、通信エリアＮＡには、４つ以上の通信端末が存在していてもよい。同様に、第１の実施形態以外の実施形態においても、通信システムは、実施形態中に示された通信端末の数に限定されるものではない。
【０１６８】
図１５は、例えば通信エリアＮＡに５０台の通信端末が存在するときの、通信端末２０によって推定された通信端末の総数Ｍと、受信成功率及びスループットとの関係を示す図である。図１５における曲線Ｓ１は、総数Ｍと受信成功率との関係を示している。また、曲線Ｓ２は、総数Ｍとスループットとの関係を示している。
【０１６９】
曲線Ｓ１に示されるように、受信成功率は、推定された総数Ｍが、通信エリアＮＡに実在する通信端末の数（５０台）以上のところでは、高く維持される。一方、推定された総数Ｍが、通信エリアＮＡに実在する通信端末の数（５０台）以下のところでは、総数Ｍが小さくなるにつれて徐々に低下する。この理由は、総数Ｍが、通信エリアＮＡに実在する通信端末の数（５０台）以下のところでは、確率Ｐが高くなり、パケット衝突が起こる頻度が高くなるためである。
【０１７０】
また、曲線Ｓ２に示されるように、スループットは、推定された総数Ｍが、通信エリアＮＡに実在する通信端末の数（５０台）と一致するあたりで最も高くなる。そして、総数Ｍが実在する通信端末の数から乖離するほど、低下する。
【０１７１】
したがって、曲線Ｓ１及び曲線Ｓ２を参照するとわかるように、通信エリアＮＡに４台以上の通信端末が存在する場合にも、これらの通信端末の個数を精度よく推定することで、通信システム１０における通信効率を高水準に維持することができる。
【０１７２】
上記第３の実施形態、及び第４の実施形態では、信号処理回路２１ｂによって、受信した信号がビット単位のデジタル信号に変換され、受信管理回路２１ｃは、パケットごとに、受信成功回数及び受信失敗回数をカウントした。これに限らず、通信端末２０は、バイト単位、或いはビット単位で、受信成功回数及び受信失敗回数をカウントしてもよい。
【０１７３】
上記第４の実施形態では、受信管理回路２１ｃは、パケットとともに送信される識別ＩＤに基づいて、成功台数ｃをカウントした。識別ＩＤとしては、例えば、通信端末２０のアプリケーション部が識別可能な識別情報、ネットワーク部が識別可能な識別情報、或いはメディア部が識別可能な識別情報が考えられる。
【０１７４】
上記第３の実施形態、及び第４の実施形態では、算出した通信端末２０の総数を、確率の算出に用いた。これに限らず、算出した通信端末２０の総数に基づいて、情報の送信する際の送信パワーを調整してもよい。例えば、通信端末２０の総数が多い場合は、送信パワーを少なくして、自機近傍の通信端末２０にのみ情報を送信することとしてもよい。これにより、ネットワーク全体として、パケット衝突の発生回数を低減することができる。
【０１７５】
また、算出した通信端末２０の総数に基づいて、情報の送信する際の指向性を調整することとしてもよい。これにより、例えば、通信端末２０が密集する方向へ情報を送信することが可能となり、通信のスループットが向上する。
【０１７６】
上記各実施形態では、通信システム１０が、通信端末２０によって構成されている場合について説明した。これに限らず、通信システム１０を構成するノードとしては、例えば通信端末２０とともに車両に搭載される計測装置、カーナビゲーション装置そのものであってもよい。
【０１７７】
上記各実施形態では、車車間通信を例にした説明を行った。本発明はこれに限定されるものではなく、例えば携帯電話をノードとする通信システムにも適用することができる。具体的には、通信システムは、移動中（例えば歩行中）のユーザが所持する携帯電話から構成されていてもよい。また、ノードは例えばセンサーノードであってもよい。センサーノードとしては、農場における土壌の状態、水量、気温等を通信するセンサが考えられる。
【０１７８】
第２の実施形態において通信端末２０の補助記憶部２０ｃに記憶されているプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータで読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理を実行する装置を構成することとしてもよい。
【０１７９】
本発明に係る通信端末は、情報を受信したときの受信時刻を計測する第１計測手段を備えている。この、第１計測手段は、少なくともネットワークを構成する他のノードによって送信された情報を受信したときの受信時刻を計測するものであればよい。また、所定の時間内に情報を受信した回数をカウントする第１カウント手段は、少なくともネットワークを構成する他のノードによって送信された情報を受信した回数をカウントするものであればよい。
【０１８０】
本発明の通信端末は、ネットワークを構成し、前記ネットワークを構成するノードの総数を推定する推定手段と、１つ又は複数の情報を出力するためのスロットを他のノードから独立して設定するスロット設定手段と、前記ノードの総数に基づいて確率を算出する算出手段と、前記確率で、情報を出力する出力手段と、を備えている。
【０１８１】
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。
【０１８２】
本出願は、２０１０年１月１４日に出願された、日本国特許出願２０１０−６３２１号に基づく。本明細書中に日本国特許出願２０１０−６３２１号の明細書、特許請求の範囲、図面全体を参照して取り込むものとする。
【産業上の利用可能性】
【０１８３】
本発明のノード、通信システム、プログラム及び通信方法は情報の通信に適している。
【符号の説明】
【０１８４】
１０  通信システム
２０  通信端末
２０ａ  ＣＰＵ
２０ｂ  主記憶部
２０ｃ  補助記憶部
２０ｄ  表示部
２０ｅ  入力部
２０ｆ  インターフェイス
２０ｇ  システムバス
２１  情報受信部
２１ａ  アンテナ
２１ｂ  信号処理回路
２１ｃ  受信管理回路
２１ｄ  データメモリ
２１ｅ  受信エラー検出回路
２２  ノード総数推定部
２２ａ  受信時刻記録部
２２ｂ  連続無受信時間計測部
２２ｃ  遅延時間計測部
２２ｄ  スループット測定部
２２ｅ  ノード総数算出部
２３  補正部
２４  確率設定部
２５  スロット規定部
２６  抽選部
２７  送信時刻記憶部
２８  情報送信部
２８ａ  アンテナ
２８ｂ  信号処理回路
２８ｃ  データメモリ
２８ｄ  メモリ監視回路
ＣＡ  通信可能領域
ＮＡ  通信エリア
Ｐ１〜Ｐ４  点
【図１】
0005607656.tif 000002
【図２】
0005607656.tif 000003
【図３】
0005607656.tif 000004
【図４】
0005607656.tif 000005
【図５】
0005607656.tif 000006
【図６】
0005607656.tif 000007
【図７】
0005607656.tif 000008
【図８】
0005607656.tif 000009
【図９】
0005607656.tif 000010
【図１０】
0005607656.tif 000011
【図１１】
0005607656.tif 000012
【図１２】
0005607656.tif 000013
【図１３】
0005607656.tif 000014
【図１４】
0005607656.tif 000015
【図１５】
0005607656.tif 000016