(57)【特許請求の範囲】
【請求項１】
他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントするデータ記憶端末数カウント手段と、
前記データ記憶端末数カウント手段のカウント結果と、前記自通信端末および前記他の通信端末に予め設定され、それぞれ同時にデータを送信できる数と、前記自通信端末と通信可能な全ての他の通信端末を示す隣接通信端末数とに基づいて、各データを送信するデータ通信端末数を推定して、推定された前記データ通信端末数と前記隣接通信端末数とに基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する通信端末数推定手段と、
前記通信端末数推定手段が推定した通信端末の数と予め設定された、同じタイミングでデータ送信を行う最多の送信先通信端末数とに基づいて、送信確率を算出する送信確率算出手段と、
前記送信確率算出手段が算出した前記送信確率に基づいて、前記記憶手段に記憶されているデータの送信を許可するか否かを決定する決定手段と、
前記決定手段が前記データの送信を許可した場合に、前記データが記憶されていない通信端末に前記データを送信するデータ送信手段とを備える
ことを特徴とする通信端末。
【請求項２】
前記決定手段は、各タイムスロットにおける前記データの送信を許可するか否かを決定し、
前記データ送信手段は、前記決定手段が前記データの送信を許可したタイムスロットにおいて、前記データを送信する
請求項１に記載の通信端末。
【請求項３】
前記データには予め優先度が段階づけられて設定され、
前記決定手段は、所定の段階未満の優先度が設定された前記データの送信を許可するか否かを決定し、
前記データ送信手段は、前記決定手段が送信を許可した前記データ、または前記所定の段階以上の優先度が設定されたデータを送信する
請求項１または請求項２に記載の通信端末。
【請求項４】
前記送信確率は、前記通信端末数推定手段によって推定された通信端末の数に対する前記最多の送信先通信端末数の割合である
請求項１から請求項３のうちいずれかに記載の通信端末。
【請求項５】
前記通信端末数推定手段は、
前記データ情報によって、他の通信端末に、さらに他の通信端末および自通信端末に記憶されていない新たなデータが記憶されたことが示された場合に、互いに同じタイミングで前記データを送信する通信端末の数を推定し、
各通信端末から送信されたデータ情報によって、前記データが前記各通信端末に記憶されたことが示された場合に、互いに同じタイミングで前記データを送信する通信端末の数が０であるとする
請求項１から請求項４のうちいずれかに記載の通信端末。
【請求項６】
前記通信端末数推定手段は、
前記データ情報によって、他の通信端末に、さらに他の通信端末および自通信端末に記憶されていない新たなデータが記憶されたことが示された場合に、互いに同じタイミングで前記データを送信する通信端末の数を推定し、
前記さらに他の通信端末および自通信端末への前記データの送信が完了するタイミングを推定し、前記タイミングが到来したときに、互いに同じタイミングで前記データを送信する通信端末の数が０であるとする
請求項１から請求項４のうちいずれかに記載の通信端末。
【請求項７】
他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントし、
前記カウントの結果と、前記自通信端末および前記他の通信端末に予め設定され、それぞれ同時にデータを送信できる数と、前記自通信端末と通信可能な全ての他の通信端末を示す隣接通信端末数とに基づいて、各データを送信するデータ通信端末数を推定して、推定した前記データ通信端末数と前記隣接通信端末数とに基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定し、
前記推定した通信端末の数と予め設定された、同じタイミングでデータ送信を行う最多の送信先通信端末数とに基づいて、送信確率を算出し、
前記算出した前記送信確率に基づいて、前記記憶手段に記憶されているデータの送信を許可するか否かを決定し、
前記データの送信を許可した場合に、前記データが記憶されていない通信端末に前記データを送信する
ことを特徴とする通信方法。
【請求項８】
コンピュータに、
他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントするデータ記憶端末数カウント処理と、
前記データ記憶端末数カウント処理におけるカウント結果と、前記自通信端末および前記他の通信端末に予め設定され、それぞれ同時にデータを送信できる数と、前記自通信端末と通信可能な全ての他の通信端末を示す隣接通信端末数とに基づいて、各データを送信するデータ通信端末数を推定して、推定した前記データ通信端末数と前記隣接通信端末数とに基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する通信端末数推定処理と、
前記通信端末数推定処理で推定した通信端末の数と予め設定された、同じタイミングでデータ送信を行う最多の送信先通信端末数とに基づいて、送信確率を算出する送信確率算出処理と、
前記送信確率算出処理で算出した前記送信確率に基づいて、前記記憶手段に記憶されているデータの送信を許可するか否かを決定する決定処理と、
前記決定処理で前記データの送信を許可した場合に、前記データが記憶されていない通信端末に前記データを送信するデータ送信処理とを実行させる
ための通信用プログラム。
【請求項９】
請求項１から請求項６のうちいずれかに記載の前記通信端末を複数含む
ことを特徴とする通信システム。
【請求項１０】
前記通信端末間の通信を中継するアクセスポイントを含む
請求項９に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信端末、通信方法、通信用プログラムが記憶された記憶媒体、および通信システムに関し、特に、通信ネットワークを利用する通信端末、通信方法、通信用プログラムが記憶された記憶媒体、および通信システムに関する。
【背景技術】
【０００２】
近年、スマートフォンやタブレット型通信端末等の無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、Ｗｉ−Ｆｉ（登録商標、Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）ともいう）機能を有する通信端末の急速な普及によって、無線ＬＡＮの利用が広まっている。無線ＬＡＮには、ＩＥＥＥ（Ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｏｎｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ，  Ｉｎｃ．）によって仕様が策定されて、広く普及したＩＥＥＥ８０２．１１ａ、ｂ、ｇ、ｎ等の規格がある。【０００３】
ＩＥＥＥ８０２．１１ａ、ｂ、ｇ、ｎ等の無線ＬＡＮの規格では、フレームの衝突（Ｃｏｌｌｉｓｉｏｎ）を検出するための動作は規定されていない。そのため、無線ＬＡＮの通信端末は、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）層において、ＣＳＭＡ／ＣＡ（Ｃａｒｒｉｅｒ  Ｓｅｎｓｅ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ  ｗｉｔｈ  Ｃｏｌｌｉｓｉｏｎ  Ａｖｏｉｄａｎｃｅ：搬送波感知多重アクセス／衝突回避方式）というアクセス制御方法を用いている。無線ＬＡＮに接続されている通信端末は、使用する伝送媒体（無線周波数）の信号を受信して、データ送信を開始する前に現在通信を行っている他の通信端末が存在するか否かを確認（Ｃａｒｒｉｅｒ  Ｓｅｎｓｅ）する。【０００４】
無線ＬＡＮに接続されている各通信端末は、使用しようとしている無線周波数帯を使用して現在通信を行っている他の通信端末が存在せず、通信可能であると判断した場合に、生成した乱数に応じた待ち時間が経過した後に通信を開始（Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）することで、送信したフレーム（データ）の衝突を回避している（Ｃｏｌｌｉｓｉｏｎ  Ａｖｏｉｄａｎｃｅ）。【０００５】
ここで、各通信端末が生成した乱数が互いに近い値になるとデータの送信タイミングが近くなり、データの衝突が発生する。各通信端末はＡＣＫ（ＡＣＫｎｏｗｌｅｄｇｅｍｅｎｔ：肯定応答）を受信することによってデータの着信を確認しているが、このような衝突が発生した場合、ＡＣＫは送信されない。したがって、データを送信してから所定時間を経過してもＡＣＫを受信しなかった各通信端末は、再度乱数を生成し、乱数に応じた待ち時間が経過してからデータを再送する。【０００６】
特許文献１には、近隣の通信端末の動作状態や動作タイミングを示す状態通知信号を受信し、近隣の通信端末の通信状況に基づいて自通信端末のタイムスロット幅や通信タイミング等を制御して、無線通信における衝突を回避する方法が記載されている。【０００７】
また、特許文献２には、データ送信をランダムに遅延させ、パケット衝突確率を減少させる方法が記載されている。【０００８】
非特許文献１には、移動により通信端末同士が接近した際に、エピデミック（Ｅｐｉｄｅｍｉｃ）法に基づいて記憶内容を示す情報を交換し、記憶内容を同期させる方法について開示されている。図２１は、エピデミック法によって記憶内容を同期させる通信システムの例を示す説明図である。図２１に示すように、通信端末１，２は、自身が記憶しているコンテンツのリストであるサマリーベクタ（Ｓｕｍｍａｒｙ  Ｖｅｃｔｏｒ）を含む制御メッセージを隣接する他の通信端末２，１と周期的に送受信して、サマリーベクタを交換する。そして、各通信端末１，２は、他の通信端末２，１から受信したサマリーベクタに基づいて、制御メッセージの送信元の他の通信端末２，１に記憶されているコンテンツと自通信端末１，２が記憶しているコンテンツとの差分を検出する。図２１に示す例では、通信端末１にコンテンツＡ，Ｂ，Ｃが記憶され、通信端末２にコンテンツＡ，Ｂが記憶されている。したがって、通信端末１に記憶されているコンテンツと通信端末２に記憶されているコンテンツとの差分はコンテンツＣである。通信端末２は、その差分を無くすように制御メッセージの送信元の通信端末１にコンテンツＣの送信を要求する。通信端末１は、要求に応じてコンテンツＣを通信端末２に送信する。以上のような処理によって、図２１に示す通信システムにおける通信端末１と通信システム２との間で差分のコンテンツが送受信される。そして、各通信端末１，２に記憶されているコンテンツが互いに同一になり、記憶内容が同期される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００５−２５３０１２号公報
【特許文献２】特開２００７−１８４９３７号公報
【非特許文献】
【００１０】
【非特許文献１】Ａ. Ｖａｈｄａｔ, Ｄ. Ｂｅｃｋｅｒ, “Ｅｐｉｄｅｍｉｃ Ｒｏｕｔｉｎｇ ｆｏｒ Ｐａｒｔｉａｌｌｙ−Ｃｏｎｎｅｃｔｅｄ Ａｄ Ｈｏｃ Ｎｅｔｗｏｒｋｓ, ” Ｔｅｃｈ. Ｒｅｐｏｒｔ ＣＳ−２００００６, Ｄｕｋｅ Ｕｎｉｖｅｒｓｉｔｙ, Ａｐｒ. ２０００
【発明の概要】
【発明が解決しようとする課題】
【００１１】
無線ＬＡＮの同じ無線周波数帯を利用して互いに記憶内容を同期する通信端末が少ない場合には、データの衝突はほとんど発生しないが、通信端末数が増加するとデータの衝突が発生する確率が上昇し、データの衝突が発生する回数が増加する。その結果、各通信端末間の通信でスループットが低下し、無線ＬＡＮの利用が困難になるという問題が生じる。【００１２】
この問題を解決するため、例えば、無線ＬＡＮに接続されている全通信端末（ノードともいう）を複数個ずつにクラスタ化する。また、全ノードで統一されたタイムスロット（一定の時間間隔に区切られたデータ伝送用のチャネルである通信時間帯）に基づいて各ノードが動作するようにそれぞれ制御する。そして、データを送信する機会（タイムスロット）をクラスタ毎に各ノードへ割り当てるという方法が考えられる。【００１３】
データを送信する機会（タイムスロット）をクラスタ毎に各ノードへ割り当てるためには、全てのノードでタイムスロットの開始時刻等を同期させる必要がある。しかし、各ノードの時刻を同期させることは非常に困難であるという問題がある。つまり、通信端末数が増加するとデータの衝突が発生する確率が上昇し、データの衝突が発生する回数が増加するという問題を容易に解決することはできない。【００１４】
そこで、本発明は、通信ネットワークに接続されている通信端末数が増加してもデータの衝突回数の増加を良好に抑制することができる通信端末、通信方法、通信用プログラムが記憶された記憶媒体、および通信システムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明による通信端末は、他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントするデータ記憶端末数カウント手段と、データ記憶端末数カウント手段のカウント結果に基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する通信端末数推定手段と、通信端末数推定手段が推定した通信端末の数を予め設定された許容数以下に制限するための調整基準値を算出する調整基準値算出手段と、調整基準値算出手段が算出した調整基準値に基づいて、記憶手段に記憶されているデータの送信を許可するか否かを決定する決定手段と、決定手段がデータの送信を許可した場合に、データが記憶されていない通信端末にデータを送信するデータ送信手段とを備えることを特徴とする。
【００１６】
本発明による通信方法は、他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントするデータ記憶端末数カウントステップと、データ記憶端末数カウントステップにおけるカウント結果に基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する通信端末数推定ステップと、通信端末数推定ステップで推定した通信端末の数を予め設定された許容数以下に制限するための調整基準値を算出する調整基準値算出ステップと、調整基準値算出ステップで算出した調整基準値に基づいて、記憶手段に記憶されているデータの送信を許可するか否かを決定する決定ステップと、決定ステップでデータの送信を許可した場合に、データが記憶されていない通信端末にデータを送信するデータ送信ステップとを含むことを特徴とする。【００１７】
本発明による通信用プログラムが記憶された記憶媒体は、コンピュータに、他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントするデータ記憶端末数カウント処理と、データ記憶端末数カウント処理におけるカウント結果に基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する通信端末数推定処理と、通信端末数推定処理で推定した通信端末の数を予め設定された許容数以下に制限するための調整基準値を算出する調整基準値算出処理と、調整基準値算出処理で算出した調整基準値に基づいて、記憶手段に記憶されているデータの送信を許可するか否かを決定する決定処理と、決定処理でデータの送信を許可した場合に、データが記憶されていない通信端末にデータを送信するデータ送信処理とを実行させることを特徴とする通信用プログラムが記憶されている。【００１８】
本発明による通信システムは、いずれかの態様の通信端末を複数含むことを特徴とする。
【発明の効果】
【００１９】
本発明によれば、通信ネットワークに接続されている通信端末数が増加してもデータの衝突回数の増加を良好に抑制することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態の通信端末を含む無線通信システムの構成例を示すブロック図である。
【図２】本発明の第１の実施形態の通信端末の構成例を示すブロック図である。
【図３】第１の実施形態の通信端末情報の構成例を示す説明図である。
【図４】第１の実施形態の記憶部に記憶されるコンテンツ情報の構成例を示す説明図である。
【図５】本発明の第１の実施形態の通信端末の送信権調整部の構成例を示すブロック図である。
【図６】本発明の第１の実施形態の通信端末のデータ蓄積部の構成例を示すブロック図である。
【図７】本発明の第１の実施形態の通信端末が制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【図８】第１の実施形態の通信端末が制御メッセージ、またはコンテンツを送信する動作を示すフローチャートである。
【図９】本発明の第１の実施形態の通信端末がデータを送信する動作を示すフローチャートである。
【図１０】第１の実施形態の通信端末数の推移を示す説明図である。
【図１１】本発明の第２の実施形態の通信端末の構成例を示すブロック図である。
【図１２】第２の実施形態の記憶部に記憶されるコンテンツ情報の構成例を示す説明図である。
【図１３】本発明の第２の実施形態の通信端末が制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【図１４】第２の実施形態の通信端末数の推移を示す説明図である。
【図１５】本発明の第３の実施形態の通信端末の構成例を示すブロック図である。
【図１６】第３の実施形態の記憶部に記憶されるコンテンツ情報の構成例を示す説明図である。
【図１７】本発明の第３の実施形態の通信端末が制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【図１８】第３の実施形態の通信端末数の推移を示す説明図である。
【図１９】各通信端末がアクセスポイントを介して通信を行うように構成された無線通信システムの例を示すブロック図である。
【図２０】本発明の第４の実施形態の通信端末の構成例を示すブロック図である。
【図２１】エピデミック法によって記憶内容を同期させる通信システムの例を示す説明図である。
【発明を実施するための形態】
【００２１】
実施形態１．
本発明の第１の実施形態の通信端末１００について、図面を参照して説明する。図１は、本発明の第１の実施形態の通信端末１００を含む無線通信システム５００の構成例を示すブロック図である。図１には、通信端末１００の例として通信端末１００ａ〜１００ｈが示されているが、本例では、通信端末１００ａ〜１００ｈは互いに同じ構成を有しているとして、通信端末１００と総称する。通信端末１００は、無線通信機能を有する。そして、無線通信機能は、例えば、無線ＬＡＮ接続機能であり、本実施形態では、無線通信システム５００に含まれている各通信端末１００は、例えば、アドホックモードで互いの間の通信が可能であるとする。なお、各通信端末１００ａ〜１００ｈは、有線通信ネットワークに接続され、当該有線通信ネットワークを介して互いの間の通信を行うように構成されていてもよい。
【００２２】
図２は、本発明の第１の実施形態の通信端末１００の構成例を示すブロック図である。図２に示すように、本発明の第１の実施形態の通信端末１００は、情報配信制御部１２０、記憶部１３０、送信権調整部１４０、データ蓄積部１５０、および通信部１６０を含む。
【００２３】
情報配信制御部１２０、送信権調整部１４０、およびデータ蓄積部１５０は、例えば、プログラム制御に従って処理を実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。具体的には、情報配信制御部１２０および送信権調整部１４０は、例えば、通信端末１００に搭載されたＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）に基づいて動作するアプリケーションソフトウェアの制御に従って処理を実行するＣＰＵである。記憶部１３０は、例えば、メモリである。通信部１６０は、例えば、ＯＳのカーネルによって制御される無線ＬＡＮ通信モジュールである。
【００２４】
記憶部１３０には、通信端末情報１３１およびコンテンツ情報１３２が記憶されている。また、記憶部１３０には、コンテンツが記憶されている。なお、コンテンツは、テキストファイル、画像データファイル、および音声データファイルのいずれであってもよいし、テキスト、画像、および音声のうちいずれか２つ以上が混在したマルチメディアデータのファイルであってもよい。また、通信端末１００の記憶部１３０に記憶されていることを、単に、通信端末１００に記憶されている、ということがある。
【００２５】
図３は、通信端末情報１３１の構成例を示す説明図である。各通信端末１００は、所定の周期で、記憶部１３０に記憶されているコンテンツの識別子のリストであるコンテンツリストと、送信元の通信端末１００を示す通信端末識別子とを含む制御メッセージを互いに送受信する。そして、図３に示すように、通信端末情報１３１は、他の通信端末１００から受信した制御メッセージに含まれる当該制御メッセージの送信元を示す通信端末識別子と、当該通信端末情報１３１の有効期限を示す有効期限情報とを含むように生成される。
【００２６】
通信端末識別子は、例えば、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスや、ユーザ名、通信端末名などによって、制御メッセージの送信元を示す。通信端末１００（例えば、通信端末１００ａ）の記憶部１３０には、アドホックモードで通信可能な他の通信端末１００（例えば、通信端末１００ｂ〜１００ｈ）を示す通信端末識別子を含む通信端末情報１３１がそれぞれ記憶されている。
【００２７】
有効期限情報は、例えば、制御メッセージを受信した日時から時間Ｔ経過後の日時を示す情報である。有効期限情報によって示される日時が到来すると、通信端末情報１３１は失効したものとして取り扱われる。具体的には、例えば、通信端末情報１３０は、有効期限情報によって示される日時が到来した後に記憶部１３０から消去される。
【００２８】
時間Ｔを長くし過ぎると、例えば、通信端末識別子によって示される通信端末１００ｈが通信端末１００ａとアドホックモードで互いの間の通信が不可能な場所に移動した後も通信端末情報が通信端末１００ａの記憶部１３０に記憶され続けることになる。また、時間Ｔを短くし過ぎると、例えば、通信端末識別子によって示される通信端末１００ｈが通信端末１００ａとアドホックモードで互いの間の通信が可能であっても、通信端末情報が通信端末１００ａの記憶部１３０から消去されることになる。したがって、時間Ｔは、制御メッセージの送信周期よりも長い時間が適切である。
【００２９】
図４は、記憶部１３０に記憶されるコンテンツ情報１３２の構成例を示す説明図である。図４に示すように、コンテンツ情報１３２は、例えば、コンテンツ識別子と保有フラグと保有通信端末数情報とを含む。
【００３０】
コンテンツ識別子は、無線通信システム５００においてコンテンツを識別するために予め決められた識別子である。保有フラグは、自通信端末１００にコンテンツ識別子によって示されるコンテンツが記憶されているか否かを示すフラグである。具体的には、例えば、コンテンツ識別子によって示されるコンテンツが記憶部１３０に記憶されていれば保有フラグの値が１にセットされ、記憶されていなければ保有フラグの値が０にセットされる。
【００３１】
保有通信端末数情報は、記憶部１３０に記憶されている有効な（有効期限が未だ到来していない）通信端末情報１３１の通信端末識別子に示されている通信端末１００のうち、当該コンテンツを記憶している通信端末１００の数を示す情報である。
【００３２】
例えば、保有フラグの値が１にセットされ、保有通信端末情報によって示される値（例えば、９９）と記憶部１３０に記憶されている有効な通信端末情報１３１の通信端末識別子に示されている通信端末１００の数（例えば、９９）とが同じである場合に、以下のことが示される。
【００３３】
すなわち、自通信端末１００（例えば、通信端末１００ａ）および自通信端末１００に隣接する通信端末１００（例えば、通信端末１００ｂ，１００ｃ）がいずれもコンテンツ識別子によって示されるコンテンツを記憶していることが示される。つまり、各通信端末１００（例えば、通信端末１００ａ〜１００ｃ）の記憶内容は、コンテンツ識別子によって示されるコンテンツについて互いに同期されていることが示される。なお、隣接する通信端末１００とは、通信部１６０による無線ＬＡＮのアドホックモードで直接に通信できる他の通信端末１００のことである。
【００３４】
情報配信制御部１２０は、制御メッセージ送受信部１２３と、コンテンツ管理部１２１と、送信端末数推定部１２２とを含む。
【００３５】
制御メッセージ送受信部１２３は、データ蓄積部１５０、および通信部１６０を介して隣接する通信端末１００と互いに制御メッセージを送受信する。制御メッセージ送受信部１２３は、制御メッセージを送信する所定のタイミングが到来した場合に、制御メッセージを生成してブロードキャスト送信する。なお、制御メッセージ送受信部１２３は、例えば、記憶部１３０に記憶されているコンテンツ情報によって示されるコンテンツ識別子および保有フラグに基づいて、制御メッセージに含まれるコンテンツリストを作成する。
【００３６】
制御メッセージ送受信部１２３は、所定の周期、または必要に応じて、繰り返し制御メッセージを送信する。制御メッセージ送受信部１２３は、自通信端末１００の記憶部１３０に複数のコンテンツが記憶されている場合、例えば、以下に示すような制御メッセージを生成して送信する。すなわち、制御メッセージ送受信部１２３は、例えば、記憶部１３０に記憶されている全てのコンテンツのコンテンツ識別子によるコンテンツリストを含む制御メッセージを生成する。また、制御メッセージ送受信部１２３は、例えば、当該複数のコンテンツのコンテンツ識別子のうち一部のコンテンツ識別子によるコンテンツリストを含む制御メッセージと残部のコンテンツ識別子によるコンテンツリストを含む制御メッセージとをそれぞれ生成する。
【００３７】
つまり、制御メッセージ送受信部１２３は、コンテンツリストを分割し、分割後のコンテンツリストを含む制御メッセージをそれぞれ生成して送信してもよい。なお、制御メッセージ送受信部１２３は、分割したコンテンツリストを含む制御メッセージを送信する場合に、以下に示す情報を当該制御メッセージに含ませる。すなわち、コンテンツリストが分割されていることを示す情報や、当該制御メッセージに含まれているコンテンツリストが、いくつに分割されたうちの何番目であるのかをそれぞれ示す情報等である。制御メッセージ送受信部１２３が制御メッセージにそのような情報を含ませることにより、複数の制御メッセージに含まれるコンテンツリストによって、自通信端末１００の記憶部１３０に記憶されている全コンテンツが示されることを送信先に通知することができる。
【００３８】
制御メッセージ送受信部１２３は、制御メッセージを受信した場合に、当該制御メッセージから送信元の通信端末識別子を抽出する。そして、制御メッセージ送受信部１２３は、抽出した通信端末識別子と前述した有効期限情報とを含む通信端末情報１３１を生成して記憶部１３０に記憶させる。
【００３９】
なお、制御メッセージ送受信部１２３は、新たに生成した通信端末情報１３１と同じ通信端末識別子の通信端末情報１３１が記憶部１３０に記憶されている場合には、以下の処理を行ってもよい。すなわち、制御メッセージ送受信部１２３は、既に記憶されている古い通信端末情報１３１の内容を新たな通信端末情報１３１の内容に更新してもよい。
【００４０】
また、制御メッセージ送受信部１２３は、有効期限情報によって示される日時が到来した通信端末情報１３１を記憶部１３０から消去するように構成されていてもよい。
【００４１】
制御メッセージ送受信部１２３は、制御メッセージに含まれているコンテンツリストに、記憶部１３０に記憶されているコンテンツ情報に含まれているコンテンツ識別子以外のコンテンツ識別子が含まれている場合に、以下の処理を行う。すなわち、制御メッセージ送受信部１２３は、当該コンテンツ識別子を含み、保有フラグの値を０にセットしたコンテンツ情報を生成して記憶部１３０に記憶させる。
【００４２】
対応するコンテンツ情報１３２が記憶部１３０に記憶されているコンテンツが、制御メッセージの送信元に新たに記憶されたり、送信元から消去されたりした場合に、制御メッセージ送受信部１２３は以下の処理を行う。すなわち、制御メッセージ送受信部１２３は、当該コンテンツに対応するコンテンツ情報１３２に含まれる保有通信端末数情報が示す値を更新する。具体的には、制御メッセージ送受信部１２３は、対応するコンテンツ情報１３２が記憶部１３０に記憶されているコンテンツが制御メッセージの送信元に新たに記憶された場合には、当該コンテンツ情報１３２に含まれる保有通信端末数情報が示す値を増加させる。また、制御メッセージ送受信部１２３は、対応するコンテンツ情報１３２が記憶部１３０に記憶されているコンテンツが制御メッセージの送信元から消去された場合には、当該コンテンツ情報１３２に含まれる保有通信端末数情報が示す値を減少させる。
【００４３】
なお、制御メッセージ送受信部１２３は、各コンテンツが記憶されている通信端末１００の数の増減を検出するために、例えば、以下のような処理を行う。すなわち、制御メッセージ送受信部１２３は、例えば、記憶部１３０に各コンテンツが記憶されている通信端末１００のリストを記憶させて制御メッセージに含まれるコンテンツリストと比較し、各コンテンツが記憶されている通信端末１００の数の増減を検出する。また、例えば、制御メッセージ送受信部１２３は、他の通信端末１００から順次送信される制御メッセージのコンテンツリストの最新のものを記憶しておき、当該通信端末１００から新たな制御メッセージを受信すると制御メッセージのコンテンツリストを互いに比較する。そして、制御メッセージ送受信部１２３は、各コンテンツリストに記載されたコンテンツ識別子に基づいて当該通信端末１００に記憶されているコンテンツの変化を検出することにより、当該コンテンツが記憶されている通信端末１００の数の増減を検出する。
【００４４】
コンテンツ管理部１２１は、データ蓄積部１５０や通信部１６０を介して、コンテンツを他の通信端末１００との間で送受信するための機能や、記憶部１３０に記憶されているコンテンツの管理を行う機能を有する。コンテンツ管理部１２１は、他の通信端末１００が送信した制御メッセージを制御メッセージ送受信部１２３が受信すると、当該制御メッセージに含まれているコンテンツリストに基づいて、以下の処理を行う。すなわち、コンテンツ管理部１２１は、その制御メッセージの送信元の通信端末１００に記憶されているコンテンツと自通信端末１００に記憶されているコンテンツとの差分を検出する。具体的には、コンテンツ管理部１２１は、例えば、その制御メッセージに含まれているコンテンツリストのコンテンツ識別子と、記憶部１３０において保有フラグの値が１にセットされているコンテンツ情報１３２に含まれているコンテンツ識別子とを比較する。そして、コンテンツ管理部１２１は、両者に差異があると判定した場合に、当該差異に応じたコンテンツをその制御メッセージの送信元の通信端末１００と送受信して、記憶部１３０の記憶内容と当該通信端末１００における記憶内容とを同期させる。具体的には、コンテンツ管理部１２１は、当該差異となったコンテンツ識別子のコンテンツを送受信して、記憶部１３０の記憶内容と当該通信端末１００の記憶内容とを同期させる。
【００４５】
コンテンツを送信する場合に、コンテンツ管理部１２１は、当該差異に応じた当該コンテンツを記憶部１３０から読み出して、その制御メッセージの送信元の通信端末１００に、データ蓄積部１５０、および通信部１６０を介して送信する。また、他の通信端末１００からコンテンツを受信する場合に、コンテンツ管理部１２１は、通信部１６０を介して受信したコンテンツのデータをコンテンツに組み立てて、記憶部１３０に記憶させる。
【００４６】
ここで、コンテンツ管理部１２１は、記憶部１３０の記憶内容と他の通信端末１００における記憶内容とを同期させるためにコンテンツのデータを送受信する場合に、プッシュ方式、およびプル方式のいずれか一方、または両方を用いる。いずれの方法を用いるかについては、コンテンツ毎に予め設定されており、例えば、制御メッセージに含まれるコンテンツリストにコンテンツ毎に指定されているものとする。
【００４７】
プッシュ方式は、他の通信端末１００から制御メッセージを受信した際に、当該通信端末１００は保有していないが自通信端末１００は保有しているコンテンツのデータを自ら送信する場合に用いられる。すなわち、プッシュ方式では、コンテンツ管理部１２１は、記憶部１３０に記憶されているコンテンツのうち他の通信端末１００から受信した制御メッセージにおけるコンテンツリストに含まれていないコンテンツ識別子のコンテンツを記憶部１３０から読み出す。そして、コンテンツ管理部１２１は、読み出したコンテンツのデータを含むメッセージを当該通信端末１００へユニキャスト送信する。
【００４８】
また、プル方式は、他の通信端末１００から制御メッセージを受信した際に、当該通信端末１００は保有しているが自通信端末１００は保有していないコンテンツのデータを当該通信端末１００から受信する場合に用いられる。プル方式では、コンテンツ管理部１２１は、他の通信端末１００から受信した制御メッセージにおけるコンテンツリストに含まれているコンテンツ識別子のコンテンツのうち、記憶部１３０に記憶されていないコンテンツの送信を当該他の通信端末１００に要求する。具体的には、コンテンツ管理部１２１は、例えば、当該他の通信端末１００に、データ蓄積部１５０、および通信部１６０を介して、当該コンテンツの送信を要求する要求メッセージをユニキャスト送信する。そして、コンテンツ管理部１２１は、当該要求メッセージに応じて当該他の通信端末１００からユニキャスト送信されたメッセージからコンテンツのデータを抽出してコンテンツに組み立てて、記憶部１３０に記憶させる。コンテンツ管理部１２１は、コンテンツを新たに受信して記憶部１３０に記憶させた場合に、コンテンツ情報１３２の保有フラグの値を１にセットする更新処理を行う。
【００４９】
通信端末１００は上述した方法でコンテンツのデータを送信することがあるが、多数の通信端末に同時にコンテンツのデータを送信すると処理負荷が高くなり、通信端末１００の性能に影響を及ぼす可能性がある。そこで、通信端末１００には、コンテンツを同時に送信可能な通信端末数ｋ（ｋは１以上の整数）が予め設定されているものとする。なお、コンテンツのデータを送信または受信することを、単に、コンテンツを送信または受信するともいう。
【００５０】
送信端末数推定部１２２は、制御メッセージ送受信部１２３が受信した他の通信端末１００からの制御メッセージに含まれるコンテンツリストに基づいて、以下の処理を行う。すなわち、送信端末数推定部１２２は、自通信端末１００の記憶部１３０の記憶内容である各コンテンツに対して、自通信端末１００、および有効な通信端末情報１３１の通信端末識別子によって示される全ての通信端末を同期させるために当該コンテンツを送信する通信端末数を推定する機能を有する。
【００５１】
そして、送信端末数推定部１２２は、各コンテンツについて推定した通信端末数の和、および自通信端末１００と有効な通信端末情報１３１の通信端末識別子によって示される通信端末数との和のうち、小さい方の値を示す推定通信端末数情報を送信権調整部１４０に入力する。
【００５２】
送信権調整部１４０は、自通信端末１００がデータ送信可能な時間（これを、送信権と呼ぶ）を制御する機能を有する。具体的には、自通信端末１００において予め設定された時間間隔に区切られたタイムスロットごとに、コンテンツの送信可否を制御する。
【００５３】
図５は、本発明の第１の実施形態の通信端末１００の送信権調整部１４０の構成例を示すブロック図である。送信権調整部１４０は、送信確率算出部１４１と、送信権決定部１４２とを含む。
【００５４】
送信確率算出部１４１は、送信端末数推定部１２２が入力した推定通信端末数情報によって示される数（値）の通信端末１００に送信されるデータの衝突をＭＡＣ層におけるＣＳＭＡ／ＣＡで抑制可能であるように調整するために用いられる送信確率を算出する。ここで、送信確率とは、全通信端末数に対して、データを送信する通信端末の所定の許容数の割合である。具体的には、送信確率算出部１４１は、送信端末数推定部１２２が入力した推定通信端末数情報が示す値と、同じタイミングでデータ送信を行うことが許容される最多の通信端末数とに基づいて送信確率を算出する。そして、送信確率算出部１４１は、算出した送信確率を送信権決定部１４２に通知する。
【００５５】
送信権決定部１４２は、送信確率算出部１４１が算出した送信確率に基づいて、所定期間におけるデータ送信を許可するか否かを決定する。具体的には、送信権決定部１４２は、送信確率算出部１４１が算出した送信確率に基づいて、所定のタイムスロットのうちからデータを送信可能なタイムスロットを決定する。すなわち、送信権決定部１４２は、送信確率算出部１４１から通知された送信確率と、予め設定されたタイムスロットの時間間隔の情報とに基づいて、次のタイムスロットでデータ送信を許可するか否かを確率的に求める。そして、送信権決定部１４２は、送信を許可するタイムスロットにおける時間帯において、データ蓄積部１５０に送信許可を通知する。
【００５６】
データ蓄積部１５０は、情報配信制御部１２０の制御メッセージ送受信部１２３、およびコンテンツ管理部１２１から他の通信端末１００へ送信される制御メッセージやコンテンツのデータを蓄積する。そして、データ蓄積部１５０は、送信権調整部１４０の指示に従って、蓄積したデータを通信部１６０に入力する。
【００５７】
図６は、本発明の第１の実施形態の通信端末１００のデータ蓄積部１５０の構成例を示すブロック図である。データ蓄積部１５０は、データ分割部１５１と、データブロック記憶部１５２と、データブロック送信部１５３とを含む。
【００５８】
データ分割部１５１は、情報配信制御部１２０から入力された制御メッセージやアプリケーションプログラムのデータ（例えば、送信するコンテンツのデータ）を、予め設定されたサイズのデータブロックに分割する。そして、データ分割部１５１は、先頭のデータブロックから順にデータブロック記憶部１５２に記憶させる。
【００５９】
データブロック記憶部１５２は、メモリ等の記憶媒体であり、データ分割部１５１から受け取ったデータブロックを記憶する。
【００６０】
データブロック送信部１５３は、送信権調整部１４０が送信を許可した期間（タイムスロット）に、データブロック記憶部１５２に記憶されているデータブロックを順に読み出し、通信部１６０に入力する。なお、データブロック記憶部１５２からデータブロックを読み出す順序は、データブロック記憶部１５２に当該データブロックを記憶させた順序と同じであるとする。
【００６１】
通信部１６０は、物理層（ＰＨＹ：ＰＨＹｓｉｃａｌ  Ｌａｙｅｒ）やＭＡＣ層、ＩＰ層、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）やＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）といったトランスポート層のネットワーク処理を行う。
【００６２】
次に、本発明の第１の実施形態の通信端末１００の動作について説明する。図７は、本発明の第１の実施形態の通信端末１００が、制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【００６３】
通信部１６０は、物理層（ＰＨＹ）において、フレーム（データ）の受信を検知すると（ステップＳ１０１）、ＭＡＣ層や、ＩＰ層、トランスポート層などのネットワークプロトコル処理に従い、情報配信制御部１２０にデータを入力する。
【００６４】
情報配信制御部１２０は、通信部１６０が受信したデータを組み立てて、当該データが制御メッセージに応じたデータであるか否かを確認する（ステップＳ１０２）。情報配信制御部１２０は、アプリケーションデータが制御メッセージに応じたデータでなければ（ステップＳ１０２のＮ）、つまり、アプリケーションデータがコンテンツのデータであれば、ステップＳ１０３の処理に移行する。また、情報配信制御部１２０は、アプリケーションデータが制御メッセージに応じたデータであれば（ステップＳ１０２のＹ）、ステップＳ１０６の処理に移行する。
【００６５】
情報配信制御部１２０のコンテンツ管理部１２１は、コンテンツのデータの受信が完了するまで、データの受信、および受信途中のデータを管理する受信処理を行う（ステップＳ１０１，Ｓ１０２のＮ，Ｓ１０３，Ｓ１０４のＮ）。
【００６６】
コンテンツ管理部１２１は、コンテンツのデータの受信を完了した場合に（ステップＳ１０４のＹ）、ステップＳ１０３の処理で受信したデータに基づくコンテンツを記憶部１３０に記憶させ、ステップＳ１０５の処理に移行する。
【００６７】
コンテンツ管理部１２１は、ステップＳ１０５の処理で、受信したデータに基づく新たなコンテンツに応じて、記憶部１３０に記憶されているコンテンツ情報１３２を更新する（ステップＳ１０５）。具体的には、コンテンツ管理部１２１は、当該コンテンツのコンテンツ情報１３２の保有フラグの値を更新する。より具体的には、コンテンツ管理部１２１は、例えば、保有フラグの値を、コンテンツを記憶していないことを示す０から記憶していることを示す１に更新する。
【００６８】
なお、上述したように、プル型でコンテンツのデータを受信するためには、以前に当該コンテンツのコンテンツ識別子を含むコンテンツリストを含む制御メッセージの受信が必要である。したがって、制御メッセージ送受信部１２３は、受信した制御メッセージに応じて、当該コンテンツのコンテンツ情報１３２を既に生成して、記憶部１３０に記憶させているとする。
【００６９】
また、プッシュ型で当該コンテンツを受信した場合、当該コンテンツのコンテンツ情報１３２が生成されていない可能性がある。そこで、コンテンツ管理部１２１は、当該コンテンツのコンテンツ情報１３２が記憶部１３０に記憶されているか否かを確認する。コンテンツ管理部１２１は、当該コンテンツのコンテンツ情報１３２が記憶部１３０に記憶されていなければ、自通信端末１００が記憶していることを示す値（例えば、１）に保有フラグをセットし、保有通信端末数情報に１（当該制御メッセージの送信元の通信端末１００が保有）を設定したコンテンツ情報１３２を新たに生成する。そして、コンテンツ管理部１２１は、記憶部１３０に、生成したコンテンツ情報１３２を記憶させる。なお、コンテンツ管理部１２１は、当該コンテンツのコンテンツ情報１３２が記憶部１３０に既に記憶されていれば、プル型の場合と同様に、保有フラグの値を更新する。
【００７０】
制御メッセージ送受信部１２３は、制御メッセージを受信した場合に（ステップＳ１０２のＹ）、当該制御メッセージの送信元の通信端末１００の通信端末情報１３１を生成、または通信端末情報１３１における有効期限情報の更新を行う。また、制御メッセージ送受信部１２３は、当該制御メッセージに含まれるコンテンツリストと、記憶部１３０に記憶されているコンテンツ情報１３２とを比較して、必要に応じてコンテンツ情報１３２の更新や生成を行う（ステップＳ１０６）。
【００７１】
具体的には、当該制御メッセージに含まれるコンテンツリストにコンテンツ情報１３２にないコンテンツ識別子が含まれていた場合に、制御メッセージ送受信部１２３は、当該コンテンツに応じたコンテンツ情報１３２を新たに生成する。この際、制御メッセージ送受信部１２３は、当該コンテンツのコンテンツ識別子を含むコンテンツ情報１３２を生成する。そして、当該コンテンツ情報１３２において、制御メッセージ送受信部１２３は、保有フラグに自通信端末が保有していないことを示す値（例えば、０）をセットし、保有通信端末数情報に１（当該制御メッセージの送信元の通信端末１００が保有）を設定する。
【００７２】
また、コンテンツ情報１３２にあるコンテンツ識別子が、受信した制御メッセージに含まれるコンテンツリストに含まれ、当該制御メッセージによって当該コンテンツ識別子のコンテンツが送信元の通信端末１００に記憶されていることが新たに示された場合に、以下の処理が行われる。
【００７３】
すなわち、制御メッセージ送受信部１２３は、当該コンテンツ識別子を含むコンテンツ情報１３２における保有通信端末数情報の値に１を加算する。制御メッセージの送信元の通信端末１００からコンテンツが消去された場合には、当該コンテンツのコンテンツ識別子を含むコンテンツ情報１３２の保有通信端末数情報の値から１を減算する。なお、制御メッセージ送受信部１２３が、各コンテンツが記憶されている通信端末１００の数の増減を検出する方法については上述したので省略する。
【００７４】
ステップＳ１０５，Ｓ１０６の処理でコンテンツ情報１３２が更新または生成されなかった場合に（ステップＳ１０７のＮ）、通信端末１００は、処理を終了する。ステップＳ１０５，Ｓ１０６の処理でコンテンツ情報１３２が更新または生成された場合に（ステップＳ１０７のＹ）、送信端末数推定部１２２は、更新されたコンテンツ情報１３２に応じたコンテンツを自通信端末１００、および有効な通信端末情報１３１の通信端末識別子によって示される全ての通信端末で同期させるために当該コンテンツを送信する通信端末数を推定する処理を行う（ステップＳ１０８）。
【００７５】
具体的には、送信端末数推定部１２２は、下記の式（１）を用いて、当該コンテンツ情報１３２に応じたコンテンツｉ（ｉはコンテンツ識別子）を送信する場合の通信端末数Ｃｉの推定処理を行う。
【００７６】
Ｃｉ＝ｍｉｎ（Ｎｉ×ｋ，Ｎ−Ｎｉ）・・・（１）
式（１）において、Ｎｉは、コンテンツｉを記憶している通信端末数である。ｋは、通信端末１００が同時にコンテンツ送信を行うことが可能な宛先通信端末数である。Ｎは、自通信端末１００と、有効な通信端末情報１３１の数によって示される自通信端末１００に隣接する通信端末１００（隣接通信端末１００ともいう）とを合わせた通信端末数である。
【００７７】
式（１）における「Ｎｉ×ｋ」によって、コンテンツｉを記憶しているＮｉ個の通信端末１００の全てがｋ個の他の通信端末１００へコンテンツを送信する場合の送信先通信端末数であって、それらの通信端末１００がさらにコンテンツｉを送信する場合の送信元通信端末数が示される。また、「Ｎ−Ｎｉ」によって、自通信端末１００と隣接通信端末１００とのうち、コンテンツｉが記憶されていない通信端末数が示される。
【００７８】
したがって、式（１）に示すように、自通信端末１００と全ての隣接通信端末１００がコンテンツｉを記憶するように、当該コンテンツｉを保有する通信端末１００が当該コンテンツｉを送信する場合の通信端末数Ｃｉの値は、「Ｎｉ×ｋ」と「Ｎ−Ｎｉ」とのうちいずれか小さい方の値となる。
【００７９】
そして、送信端末数推定部１２２は、全てのコンテンツｉについて通信端末数Ｃｉを算出する。そうすると、全てのコンテンツｉについて通信端末数Ｃｉの和、および自通信端末１００と隣接通信端末１００との和である通信端末数Ｎのうち小さい方の値が、全てのコンテンツｉについて、各通信端末の記憶内容を互いに同期させるために必要な通信端末数Ｃである。また、通信端末数Ｃは、各通信端末の記憶内容を互いに同期させるために同時に通信を行う可能性がある通信端末数でもある。
【００８０】
すなわち、通信端末数Ｃは、下記の式（２）で表される。
【００８１】
Ｃ＝ｍｉｎ（ΣｉＣｉ，Ｎ）・・・（２）
送信端末数推定部１２２は、式（１），（２）を用いて算出した値を同時に通信を行う可能性がある通信端末数Ｃであると推定する。そして、送信端末数推定部１２２は、推定した通信端末数Ｃを示す推定通信端末数情報を送信権調整部１４０の送信確率算出部１４１に入力する。
【００８２】
なお、例えば、自通信端末１００が無線通信システム５００に参加したが隣接通信端末１００から制御メッセージを受信していない場合、以下のような値を通信端末数Ｃとして送信権調整部１４０の送信確率算出部１４１に入力してもよい。具体的には、例えば、送信端末数推定部１２２は通信端末数Ｃの初期値として０を示す推定通信端末数情報を送信権調整部１４０の送信確率算出部１４１に入力してもよい。通信端末数Ｃの初期値として０を示す推定通信端末数情報を送信確率算出部１４１に入力した場合には、多数の隣接通信端末１００が同時にデータを送信していても、自通信端末１００は、必要に応じて自由にデータを送信することができる。
【００８３】
また、送信端末数推定部１２２は通信端末数Ｃの初期値として通信端末１００が通信し得る最多の隣接通信端末数を送信権調整部１４０の送信確率算出部１４１に入力してもよい。通信端末数Ｃの初期値として通信端末１００が通信し得る最多の隣接通信端末数を送信権調整部１４０の送信確率算出部１４１に入力した場合、状況（例えば、隣接通信端末数の多寡）に応じてデータの送信が制御されるので衝突を抑制することができる。
【００８４】
なお、通信端末数Ｃは、式（１），（２）を用いて算出する場合に限られず、データの送信が同時に行われる可能性がある通信端末数を算出できれば、他の方法で算出されてもよい。
【００８５】
送信確率算出部１４１は、送信端末数推定部１２２がステップＳ１０８の処理で推定した通信端末数Ｃと、予め設定されている、同じタイミングでデータ送信を行う最多の送信先通信端末数Ｎｓとを用いて送信確率ｐを算出する（ステップＳ１０９）。
【００８６】
具体的には、送信確率算出部１４１は、例えば、下記の式（３）を用いて送信確率ｐを算出する。
【００８７】
ｐ＝Ｎｓ／Ｃ・・・（３）
なお、送信確率ｐは他の方法で算出されてもよい。
【００８８】
送信確率算出部１４１は、式（３）を用いて算出した送信確率ｐを送信権決定部１４２に通知する。
【００８９】
送信権決定部１４２は、送信確率算出部１４１が通知した送信確率ｐを記憶手段（図示せず。記憶部１３０であってもよい）に記憶させる。そして、送信権決定部１４２は、現在時刻が、予め設定されたタイムスロットＴｓに応じた時刻になるときに、記憶手段に記憶された送信確率ｐに基づいて、データを送信する権利である送信権を発生させるか否かを決定する（ステップＳ１１０）。
【００９０】
例えば、ステップＳ１０８の処理で推定された通信端末数Ｃが１００であり、予め設定されている、同じタイミングでデータ送信を行う最多の送信先通信端末数Ｎｓが１０である場合に、送信確率算出部１４１が算出する送信確率ｐ＝１０／１００＝０．１である。
【００９１】
そうすると、送信権決定部１４２は、予め設定されたタイムスロットＴｓに応じた時刻になるときに、１０パーセントの確率で、タイムスロットＴｓにおける送信権を発生させると決定する。
【００９２】
送信権決定部１４２は、送信権を発生させると決定した場合に、その旨をデータ蓄積部１５０に通知する。データ蓄積部１５０は、ステップＳ１１０の処理で発生した送信権をデータの送信制御に用いる。つまり、データ蓄積部１５０は、送信権決定部１４２から送信権を発生させると決定したことを通知された場合に、データを送信する。
【００９３】
なお、送信権決定部１４２は、予め設定されたＭ個のタイムスロットにおける送信権を同時に決定してもよい。そして、送信権決定部１４２は、それらのタイムスロットを識別するタイムスロット識別子（タイムスロットＩＤ）、タイムスロット開始時刻、および送信権の有無を記憶手段に記憶させる。送信権決定部１４２は、記憶手段における記憶内容に基づいて、各タイムスロットの開始時刻に応じたタイミングで、送信可否をデータ蓄積部１５０に通知してもよい。
【００９４】
次に、本発明の第１の実施形態の通信端末１００が制御メッセージ、またはコンテンツを送信する動作について説明する。図８は、第１の実施形態の通信端末１００が制御メッセージ、またはコンテンツを送信する動作を示すフローチャートである。
【００９５】
情報配信制御部１２０の制御メッセージ送受信部１２３は、例えば、タイマなどを用いて、所定の周期で到来する、制御メッセージを送信する所定のタイミングであるか否かを判断する（ステップＳ２０１）。制御メッセージ送受信部１２３は、所定のタイミングであると判断した場合に（ステップＳ２０１のＹ）、制御メッセージをブロードキャスト送信する（ステップＳ２０２）。
【００９６】
具体的には、制御メッセージ送受信部１２３は、ステップＳ２０２の処理で、記憶部１３０からコンテンツ情報１３２を読み出して保有フラグを参照し、記憶部１３０に記憶されているコンテンツのコンテンツ識別子のリストであるコンテンツリストを作成する。制御メッセージ送受信部１２３は、作成したコンテンツリストと自通信端末１００の識別子とを含む制御メッセージを生成する。そして、制御メッセージ送受信部１２３は、生成した制御メッセージをデータ蓄積部１５０へ入力し、ステップＳ２０４の処理に移行する。
【００９７】
制御メッセージ送受信部１２３が、所定のタイミングでないと判断した場合に（ステップＳ２０１のＮ）、情報配信制御部１２０のコンテンツ管理部１２１が、送信要求があるか否かを判断する（ステップＳ２０３）。なお、送信要求には、他の通信端末１００からあるコンテンツを送信するための送信要求（上述したプル方式に相当）と、他の通信端末１００へコンテンツを送信する場合の送信要求（上述したプッシュ方式に相当）とがある。プル方式の場合には、他の通信端末１００から例えば要求メッセージを受信し、プッシュ方式の場合は、他の通信端末１００から受信した制御メッセージに含まれるコンテンツリストを参照することで判断する。
【００９８】
そして、コンテンツ管理部１２１は、送信要求がないと判断した場合に（ステップＳ２０３のＮ）、処理を終了する。
【００９９】
コンテンツ管理部１２１は、送信要求があると判断した場合に（ステップＳ２０３のＹ）、以下の処理を行う。すなわち、コンテンツ管理部１２１は、送信要求に応じて記憶部１３０からコンテンツのデータを読み出す。そして、コンテンツ管理部１２１は、読み出したデータをアプリケーションデータと呼ばれる予め設定されたサイズに分割してデータ蓄積部１５０に入力する（ステップＳ２０４）。ここで、データ単位に分割されたアプリケーションデータをアプリケーションデータユニットという。
【０１００】
データ分割部１５１は、ステップＳ２０４の処理で分割されたアプリケーションデータユニットを、予め設定されたサイズのデータ単位にさらに分割する（ステップＳ２０５）。予め設定されたサイズに分割されたデータを、データブロックという。
【０１０１】
データ分割部１５１は、データブロックに分割されたデータをデータブロック記憶部１５２に記憶させる（ステップＳ２０６）。
【０１０２】
次に、本発明の第１の実施形態の通信端末１００がデータを送信する動作について説明する。図９は、本発明の第１の実施形態の通信端末１００がデータを送信する動作を示すフローチャートである。
【０１０３】
まず、データ蓄積部１５０のデータブロック記憶部１５２にデータブロックが記憶された場合に（ステップＳ３０１）、データブロック送信部１５３は、送信権決定部１４２から送信権を発生させることに決定したことが通知されたか否かを判断する（ステップＳ３０２）。そして、データブロック送信部１５３は、送信権決定部１４２から送信権を発生させることに決定したことが通知されていない場合に（ステップＳ３０２のＮ）、送信権を発生させることに決定したことが通知されるまで待つ。また、データブロック送信部１５３は、送信権決定部１４２から送信権を発生させることに決定したことが通知された場合に（ステップＳ３０２のＹ）、以下の処理を行う。すなわち、データブロック送信部１５３は、データブロック記憶部１５２に送信すべきデータブロックが記憶されているか否かを確認する（ステップＳ３０３）。
【０１０４】
データブロック送信部１５３は、データブロック記憶部１５２に送信すべきデータブロックが記憶されていない場合に（ステップＳ３０３のＮ）、処理を終了する。また、データブロック送信部１５３は、データブロック記憶部１５２に送信すべきデータブロックが記憶されている場合に（ステップＳ３０３のＹ）、データブロック記憶部１５２から当該データブロックを読み出す。そして、データブロック送信部１５３は、読み出したデータブロックを通信部１６０に入力する。
【０１０５】
通信部１６０は、データブロックが入力されると送信処理を行い（ステップＳ３０４）、ステップＳ３０２の処理に移行する。そして、送信すべきデータブロックが全て送信されるまで、ステップＳ３０２〜Ｓ３０４の処理が繰り返される。なお、データ（データブロック）の送信処理は、ＴＣＰ、またはＵＤＰなどのトランスポート層におけるネットワーク処理、ＩＰ層におけるネットワーク処理、ＭＡＣ層におけるネットワーク処理を行い、物理層（ＰＨＹ）の処理に従って行われる。なお、通信部１６０におけるデータの送信処理は、一般的な物理層からトランスポート層におけるネットワーク処理と同様であるため、詳細な説明は省略する。
【０１０６】
次に、図７に示すステップＳ１０８の処理で推定した通信端末数の推移について説明する。図１０は、通信端末数の推移を示す説明図である。
【０１０７】
なお、コンテンツ識別子がＡであるコンテンツＡと、コンテンツ識別子がＢであるコンテンツＢと、コンテンツ識別子がＣであるコンテンツＣとがあるとする。また、自通信端末１００と９９個の隣接通信端末１００とで、合計して１００個の通信端末１００があるとする。そして、各通信端末１００は、それぞれ同時にコンテンツを送信できる数ｋ＝４に設定されているとする。また、同じタイミングでデータ送信を行うことが可能な通信端末数をＮｓ＝１０とする。
【０１０８】
図１０に示す時刻ｔ１において、自通信端末１００の記憶部１３０には、以下に示すコンテンツ情報１３２が記憶されているとする。すなわち、コンテンツ情報１３２には、コンテンツ識別子がＡであるコンテンツＡについてのコンテンツ情報と、コンテンツ識別子がＢであるコンテンツＢについてのコンテンツ情報とが含まれている。そして、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有フラグは１にセットされている。つまり、自通信端末１００の記憶部１３０には、コンテンツＡ，Ｂがいずれも記憶されている。また、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有通信端末数情報の値は９９である。つまり、９９個の隣接通信端末１００にはいずれもコンテンツＡ，Ｂが記憶されており、自通信端末１００を含めると、１００個の通信端末１００にはいずれもコンテンツＡ，Ｂが記憶されている。
【０１０９】
そうすると、コンテンツＡ，Ｂのいずれについても、時刻ｔ１において、式（１）におけるＮ＝１００であり、ＮＡ，ＮＢ＝１００であるので、ＣＡの値およびＣＢの値は、いずれも０である。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＝０である。
【０１１０】
時刻ｔ２において、一の通信端末１００に、コンテンツ識別子がＣであるコンテンツＣが記憶され、制御メッセージによってコンテンツＣが通知されたとする。そうすると、コンテンツＣについて、式（１）におけるＮ＝１００であり、ＮＣ＝１であるので、ＣＣ＝ｍｉｎ（１×４，１００−１）＝４になる。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＝４である。
【０１１１】
時刻ｔ２以降に一の通信端末１００から直接に、または他の通信端末１００を介して間接的に各通信端末１００がコンテンツＣのデータを受信して記憶したとする。そして、時刻ｔ３において、コンテンツＣが自通信端末１００を含む１０個の通信端末１００に記憶されたことが制御メッセージによって判明したとする。そうすると、コンテンツＣについてのコンテンツ情報の保有通信端末数情報の値は９であるので、ＣＣ＝ｍｉｎ（（９＋１）×４，１００−（９＋１））＝４０になる。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＝４０である。
【０１１２】
時刻ｔ３を経過するとコンテンツＣを一の通信端末１００から直接に、または他の通信端末１００を介して間接的に受信して記憶した通信端末１００の数が多くなり通信端末数ＣＣの値が徐々に減少する。よって、図１０に示すように、通信端末数Ｃの値も徐々に減少する。
【０１１３】
そして、時刻ｔ４になると、コンテンツＣは全ての通信端末１００に記憶され、コンテンツＣについてのコンテンツ情報の保有通信端末数情報の値は、１００個の通信端末１００から自通信端末１００を除いた９９になる。すると、コンテンツＣについても、時刻ｔ４において、式（１）におけるＮ＝１００であり、ＮＣ＝１００であるので、ＣＣの値も０になる。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＝０になる。
【０１１４】
本実施形態によれば、通信端末１００は、受信した制御メッセージと記憶部１３０における記憶内容とに基づいて、コンテンツの送信先の通信端末数Ｃを推定する。そして、通信端末１００は、推定した通信端末数Ｃとデータ送信が同時に可能な通信端末数Ｎｓとに基づいて、送信確率ｐを算出する。通信端末１００は、算出した送信確率ｐに基づいて、自通信端末が独自に管理している各タイムスロットについて、データ送信可能であると判断した場合に、コンテンツのデータを送信する。したがって、無線通信システム５００に多数の通信端末１００がある場合に、同時にデータ送信を行う通信端末１００の数を確率に基づいて制御する。
【０１１５】
よって、通信端末が増加して、多数の通信端末がお互いの通信範囲内に密集するような環境になり、ＭＡＣ層におけるＣＳＭＡ／ＣＡで衝突が頻繁に発生して通常ではスループットが低下するような場合においても、データの衝突回数の増加を良好に抑制することができる。そして、スループットの低下を良好に抑制し、効率的なデータ送信を可能にすることができる。また、確実なデータ配信を可能にすることができる。
【０１１６】
また、本実施形態によれば、各通信端末１００が独立に予め設定された時間間隔に区切られたタイムスロットを管理し、そのタイムスロットに応じて送信可否を決定する。つまり、無線通信システム５００における通信端末１００のそれぞれは、クラスタ化や時刻同期を行う必要がない。したがって、非常に困難な各通信端末１００の時刻同期を行うことなく、データの衝突回数の増加を良好に抑制することができる。そして、スループットの低下を良好に抑制し、効率的なデータ送信を可能にすることができる。
【０１１７】
実施形態２．
次に、本発明の第２の実施形態の通信端末２００について説明する。図１１は、本発明の第２の実施形態の通信端末２００の構成例を示すブロック図である。図１１に示すように、本発明の第２の実施形態の通信端末２００は、情報配信制御部２２０および記憶部２３０を含む。その他の構成は、図２に示す第１の実施形態の通信端末１００における構成と同様なため、対応する構成要素には図２と同じ符号を付して説明を省略する。
【０１１８】
本発明の第２の実施形態の通信端末２００の情報配信制御部２２０は、送信端末数推定部２２２を含む。第１の実施形態における送信端末数推定部１２２は、上述した式（１），（２）を用いて算出した値を示す推定通信端末数情報を送信権調整部１４０に入力する。
【０１１９】
それに対して、本実施形態の送信端末数推定部２２２は、自通信端末２００および隣接通信端末２００（以下、隣接通信端末２００等という）に記憶されていない新規なコンテンツが隣接通信端末２００等に記憶された場合に、当該コンテンツを全ての通信端末２００に送信するために通信を行う通信端末数を推定する。そして、送信端末数推定部２２２は、当該コンテンツが全ての隣接通信端末２００等に記憶されたときに、当該コンテンツを送信するために通信を行う通信端末数が０になったと判断する。本実施形態の送信端末数推定部２２２は、このような推定方法により、通信端末数を推定し、推定結果を示す通信端末情報を送信権調整部１４０に入力する。なお、隣接通信端末２００等に記憶されていない新規なコンテンツを新規コンテンツともいう。
【０１２０】
記憶部２３０には、コンテンツ情報２３２が記憶される。図１２は、記憶部２３０に記憶されるコンテンツ情報２３２の構成例を示す説明図である。図１２に示すように、コンテンツ情報２３２は、第１の実施形態におけるコンテンツ情報１３２の構成に加えて、推定通信端末数情報を含む。
【０１２１】
制御メッセージ送受信部１２３は、新規コンテンツに応じて、推定通信端末数情報を含むコンテンツ情報２３２を新たに生成する。本実施形態において、推定通信端末数情報は、新規コンテンツを全ての隣接端末２００等に送信するために同時に通信する可能性のある通信端末数の推定値を示す情報である。
【０１２２】
次に、本発明の第２の実施形態の通信端末２００の動作について説明する。図１３は、本発明の第２の実施形態の通信端末２００が制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【０１２３】
図１３に示す例において、ステップＳ５０１〜Ｓ５０６，Ｓ５０９，Ｓ５１０における処理は、図７に示すステップＳ１０１〜Ｓ１０６，Ｓ１０９，Ｓ１１０における処理とそれぞれ同様なため、説明を省略する。
【０１２４】
なお、第１の実施形態の通信端末１００がデータを受信する動作におけるステップＳ１０５，Ｓ１０６に対応するステップＳ５０５，Ｓ５０６の処理でコンテンツ情報２３２を生成する場合に限り、コンテンツ管理部１２１は、以下の処理を行ってもよい。すなわち、コンテンツ管理部１２１は、コンテンツ情報２３２に含まれる推定通信端末数情報が示す値を０としてもよいし、空欄やその他の数字としてもよい。推定通信端末数情報は、ステップＳ５０８の処理で更新される。
【０１２５】
コンテンツ管理部１２１は、ステップＳ５０５，Ｓ５０６の処理で必要に応じてコンテンツ情報２３２を更新する。そして、新規コンテンツが隣接通信端末２００等に記憶された場合、または一のコンテンツが全ての隣接通信端末２００等に記憶された場合に（ステップＳ５０７のＹ）、ステップＳ５０８の処理に移行する。そうでない場合に（ステップＳ５０７のＮ）、処理を終了する。
【０１２６】
なお、新規コンテンツが隣接通信端末２００等に記憶されたか否かは、コンテンツ管理部１２１が新たなコンテンツ情報２３２を作成したか否かによって判断される。また、ステップＳ５０６の処理で一のコンテンツのコンテンツ情報２３２の保有通信端末数情報が示す値が隣接通信端末２００の数と等しくなった場合に、一のコンテンツが全ての隣接通信端末２００等に記憶されたと判断可能である。
【０１２７】
送信端末数推定部２２２は、新規コンテンツが隣接通信端末２００等に記憶された場合に（ステップＳ５０７のＹ）、以下の処理を行う。すなわち、送信端末数推定部２２２は、ステップＳ５０８の処理で、当該新規コンテンツについて通信端末数の推定を行い、推定した値をコンテンツ情報２３２の推定通信端末数に設定する（ステップＳ５０８）。具体的には、送信端末数推定部２２２は、例えば、下記の式（４）を用いて新規コンテンツｉ（ｉはコンテンツ識別子）を全ての通信端末２００へ送信するための通信端末数Ｃｉを算出する。
【０１２８】
Ｃｉ＝ｍｉｎ（ｋｊ，Ｎ−ｋｊ）・・・（４）
ここで、ｋは、通信端末２００が同時にコンテンツ送信を行うことが可能な宛先通信端末数である。Ｎは、有効な通信端末情報１３１の数によって示される、自通信端末２００と自通信端末２００に隣接する通信端末２００とを合わせた通信端末数である。ｊは、ｋｊ≧Ｎ−ｋｊを満たす最小の正の整数である。
【０１２９】
式（４）によって、新規コンテンツｉを全ての通信端末２００へ送信するための通信端末数Ｃｉの値が、「ｋｊ」と「Ｎ−ｋｊ」とのうちいずれか小さい方の値であることが示されている。なお、「ｋｊ」は、コンテンツｉを最初に記憶した通信端末２００がｋ個の他の通信端末２００へコンテンツｉを送信し、当該コンテンツｉを受信した通信端末２００がさらにコンテンツｉを送信していくと想定した場合の送信通信端末数である。また、「Ｎ−ｋｊ」は、コンテンツｉを最初に記憶した通信端末２００がｋ個の他の通信端末２００へコンテンツｉを送信し、当該コンテンツｉを受信した通信端末２００がさらにコンテンツｉを送信していくと想定した場合のコンテンツｉを記憶していない通信端末数である。コンテンツｉを全ての通信端末２００へ送信するための通信端末数Ｃｉの最大値は、式（４）に示す通り、コンテンツｉを保有する通信端末２００がｋ個の他の通信端末２００へコンテンツｉを送信する「ｋｊ」と、コンテンツｉを保有していない通信端末２００がコンテンツｉを保有している通信端末２００からコンテンツｉを受信する「Ｎ−ｋｊ」とのいずれか小さい方として推定する。
【０１３０】
送信端末数推定部２２２は、新たなコンテンツｉを検知すると検知した全ての新規コンテンツｉに対して通信端末Ｃｉを算出し、各新規コンテンツｉに対応するコンテンツ情報２３２の推定通信端末数情報に記憶させる。そうすると、記憶部２３０に記憶されている全てのコンテンツｉに対応するコンテンツ情報２３２の推定通信端末数情報が示す通信端末数Ｃｉの和、および自通信端末２００と隣接通信端末２００との和である通信端末数Ｎのうち小さい方の値が、全てのコンテンツｉについて各通信端末２００の記憶内容を互いに同期させるために必要な通信端末数Ｃである。Ｃを算出するための式はコンテンツｉに対する通信端末数Ｃｉとして、対応するコンテンツ情報２３２の推定通信端末数情報の値を用いること以外は第１の実施形態における動作で説明した式（２）と同様であるので、説明を省略する。
【０１３１】
一のコンテンツが全ての隣接通信端末２００等に記憶された場合、当該コンテンツの送信先の通信端末２００の数は０になる。したがって、コンテンツ管理部１２１は、コンテンツ情報２３２の推定通信端末数情報が示す値を０に更新するとともに、改めて式（２）を用いて通信端末数Ｃの値を更新する（ステップＳ５０８）。
【０１３２】
なお、本実施形態では、新規コンテンツが記憶部２３０に記憶されたときに、コンテンツ情報２３２の推定通信端末数情報に、ステップＳ５０８の処理で推定された通信端末数Ｃｉを設定する。そして、当該コンテンツが全ての隣接通信端末２００等に記憶されたときに、推定通信端末数情報の値を０に設定する。
【０１３３】
図１４は、本実施形態において算出した通信端末数の推移を示す説明図である。
【０１３４】
なお、コンテンツ識別子がＡであるコンテンツＡと、コンテンツ識別子がＢであるコンテンツＢと、コンテンツ識別子がＣであるコンテンツＣと、コンテンツ識別子がＤであるコンテンツＤとがあるとする。また、自通信端末２００と９９個の隣接通信端末２００とで、合計して１００個の通信端末２００があるとする。そして、各通信端末２００は、それぞれ同時にコンテンツを送信できる数ｋ＝４に設定されているとする。また、同じタイミングでデータ送信を行うことが可能な通信端末数をＮｓ＝１０とする。
【０１３５】
図１４に示す時刻ｔ１において、自通信端末２００の記憶部２３０には、以下に示すコンテンツ情報２３２が記憶されているとする。すなわち、コンテンツ情報２３２には、コンテンツ識別子がＡであるコンテンツＡについてのコンテンツ情報と、コンテンツ識別子がＢであるコンテンツＢについてのコンテンツ情報とが含まれている。そして、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有フラグは１にセットされている。つまり、自通信端末２００の記憶部２３０には、コンテンツＡ，Ｂがいずれも記憶されている。また、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有通信端末数情報の値は９９である。つまり、９９個の隣接通信端末２００にはいずれもコンテンツＡ，Ｂが記憶されており、自通信端末２００を含めると、１００個の通信端末２００にはいずれもコンテンツＡ，Ｂが記憶されている。
【０１３６】
そうすると、時刻ｔ１では、コンテンツＡ，Ｂのいずれのコンテンツも全ての通信端末２００に記憶されており、コンテンツＡ，Ｂに対応するコンテンツ情報２３２の推定通信端末数情報の値は０であるため、ＣＡの値およびＣＢの値は、いずれも０である。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＝０である。
【０１３７】
時刻ｔ２において、一の通信端末２００から受信した制御メッセージによって、当該通信端末２００にコンテンツ識別子がＣであるコンテンツＣが記憶されたと検知したとする。そうすると、式（４）より、コンテンツＣについての通信端末数ＣＣ＝ｍｉｎ（４３，１００−４３）＝ｍｉｎ（６４，３６）＝３６である。よって、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＝３６である。なお、本例において式（４）のｊ＝２とすると４２＜１００−４２であり、ｊ＝３とすると４３＞１００−４３である。したがって、ｊ＝３が採用される。
【０１３８】
また、時刻ｔ３において、一の通信端末２００にから受信した制御メッセージによって、当該通信端末２００にコンテンツ識別子がＤであるコンテンツＤが記憶されたと検知したとする。そうすると、式（４）より、コンテンツＤについての通信端末数ＣＤ＝ｍｉｎ（４３，１００−４３）＝ｍｉｎ（６４，３６）＝３６である。よって、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝７２である。なお、本例では上述したように、ｊ＝３が採用される。
【０１３９】
そして、時刻ｔ４に、コンテンツＣは全ての隣接通信端末２００等に記憶されたとする。そうすると、コンテンツＣについてのコンテンツ情報２３２の推定通信端末数情報の値は、従前の３６から０に更新される。よって、ＣＣ＝０であるため、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝３６である。
【０１４０】
また、時刻ｔ５に、コンテンツＤは全ての隣接通信端末２００等に記憶されたとする。そうすると、コンテンツＤについてのコンテンツ情報２３２の推定通信端末数情報の値は、従前の３６から０に更新される。よって、ＣＤ＝０であるため、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝０である。
【０１４１】
本実施形態によれば、自通信端末２００に新規コンテンツｉを追加したとき、または、他の隣接通信端末２００から受信した制御メッセージによって新規コンテンツｉが通知されたときに、送信端末数推定部２２２が、当該新規コンテンツｉを全ての隣接通信端末２００等に送信するときの通信端末数Ｃｉを推定し、全てのコンテンツの推定通信端末数情報の値から通信端末数Ｃを推定する。これにより、送信確率算出部１４１は、あるコンテンツｉに対して推定された通信端末数Ｃｉの値を、当該コンテンツｉを隣接通信端末２００等に送信し終えるまで送信確率ｐの算出に使用することになる。したがって、予め最多の通信端末数Ｃｉを推定し、それをコンテンツの送信が完了するまで使用するので、実際の通信状況に合致した通信制御が可能になると考えられる。
【０１４２】
また、本実施形態によれば、通信端末数Ｃの推定、および送信確率ｐの算出の頻度を低減させることができるので、通信端末２００の処理負荷を軽減させることができる。
【０１４３】
実施形態３．
次に、本発明の第３の実施形態の通信端末３００について説明する。図１５は、本発明の第３の実施形態の通信端末３００の構成例を示すブロック図である。図１５に示すように、本発明の第３の実施形態の通信端末３００は、情報配信制御部３２０および記憶部３３０を含む。その他の構成は、図１１に示す第２の実施形態の通信端末２００における構成と同様なため、対応する構成要素には図１１と同じ符号を付して説明を省略する。
【０１４４】
本発明の第３の実施形態の通信端末３００の情報配信制御部３２０は、送信端末数推定部３２２を含む。
【０１４５】
第２の実施形態の送信端末数推定部２２２は、新規なコンテンツが隣接通信端末２００等に記憶されたことを検知した場合に、当該コンテンツを送信するために通信を行う通信端末数を推定する。そして、送信端末数推定部２２２は、当該コンテンツが全ての隣接通信端末２００等に記憶されたと判断したときに、当該コンテンツを送信するために通信を行う通信端末数が０になったと判断する。
【０１４６】
本実施形態の送信端末数推定部３２２は、第２の実施形態における送信端末推定部２２２と同様な処理を行う。具体的には、送信端末数推定部３２２は、自通信端末３００および隣接通信端末３００（以下、隣接通信端末３００等という）に記憶されていない新規なコンテンツが隣接通信端末３００等に記憶されたことを検知した場合に、当該コンテンツを送信するために通信を行う通信端末数を推定する。
【０１４７】
そして、本実施形態の送信端末数推定部３２２は、さらに、通信端末数を推定したときに、コンテンツのサイズに応じてデータの送信が完了する時刻を推定し、その時刻が到来したときに、当該コンテンツについての通信端末数が０になったと判断する。そして、送信端末数推定部３２２は、推定結果を送信権調整部１４０に通知する。
【０１４８】
記憶部３３０には、コンテンツ情報３３２が記憶される。図１６は、記憶部３３０に記憶されるコンテンツ情報３３２の構成例を示す説明図である。図１６に示すように、コンテンツ情報３３２は、第２の実施形態におけるコンテンツ情報２３２の構成に加えて、送信完了時刻情報を含む。
【０１４９】
制御メッセージ送受信部１２３は、新規コンテンツを検知すると、送信完了時刻情報を含むコンテンツ情報３３２を新たに生成する。制御メッセージ送受信部１２３は、当該新規コンテンツを全ての隣接通信端末３００に送信するために要する送信所要時間を推定する。そして、制御メッセージ送受信部１２３は、現在時刻に、推定した送信所要時間を加えた時刻である送信完了時刻を算出する。送信完了時刻情報は、制御メッセージ送受信部１２３によって算出された送信完了時刻を示す情報である。
【０１５０】
次に、本発明の第３の実施形態の通信端末３００の動作について説明する。図１７は、本発明の第３の実施形態の通信端末３００が制御メッセージ、またはコンテンツを受信して、データを送信するタイミングを決定する場合の動作を示すフローチャートである。
【０１５１】
図１７に示す例において、ステップＳ６０１〜Ｓ６０６，Ｓ６０８，Ｓ６１０，Ｓ６１１における処理は、図１３に示す第２の実施形態のステップＳ５０１〜Ｓ５０６，Ｓ５０８〜Ｓ５１０における処理とそれぞれ同様なため、説明を省略する。
【０１５２】
コンテンツ管理部１２１は、ステップＳ６０５，Ｓ６０６の処理で必要に応じてコンテンツ情報３３２を更新する。そして、受信した制御メッセージにより新規コンテンツが隣接通信端末３００等に記憶されたことを検知した場合、または当該新規コンテンツの送信完了時刻が到来した場合に（ステップＳ６０７のＹ）、ステップＳ６０８の処理に移行する。そうでない場合に（ステップＳ６０７のＮ）、処理を終了する。
【０１５３】
なお、新規コンテンツが隣接通信端末３００等に記憶されたか否かの判断は、第２の実施形態における処理と同様なため説明を省略する。
【０１５４】
ステップＳ６０７の処理で新規コンテンツが隣接通信端末３００等のいずれかに記憶されたと判断された場合（ステップＳ６０７のＹ）、送信端末数推定部３２２は、第２の実施形態の送信端末数推定部２２２によるステップＳ５０８における処理と同様な処理を行って、当該新規コンテンツについて通信端末数の推定を行い、推定した値をコンテンツ情報３３２の推定通信端末数に設定する（ステップＳ６０８）。
【０１５５】
そして、送信端末数推定部３２２は、当該新規コンテンツを最初に記憶した隣接通信端末３００等が、他の全ての隣接通信端末３００等への当該コンテンツの送信に要する送信所要時間を推定する。
【０１５６】
この送信所要時間の推定は、具体的には、以下のような方法で行われる。例えば、制御メッセージのコンテンツリストに当該コンテンツのサイズを示す情報を追加するとともに、既に受信したコンテンツの送信所要時間を記憶手段（図示せず）に記憶させるようにする。そして、記憶手段に記憶されている送信所要時間とコンテンツリストにおけるコンテンツのサイズを示す情報とに基づいて、データの送信レートを見積もる。当該コンテンツのサイズを、見積もった送信レートで除算した商が、ある通信端末が他の通信端末へ当該コンテンツを送信するために必要となる送信時間として推定することができる。さらに、この推定した送信時間に、ステップＳ６０８の通信端末数の推定で用いたｊの値に予め設定した定数Ｈを加えた数を掛けることで、当該コンテンツを全通信端末に送信するための送信所要時間として推定することができる。このようなデータの送信レートの見積もりについては、既存の技術を用いるため、詳細な説明は省略する。
【０１５７】
なお、推定した送信時間に、ｊとＨとの和を乗じた積を送信所要時間として推定する理由について説明する。本例では、（同一通信端末か否かに関わらず）コンテンツ保有通信端末は、他の通信端末の記憶内容を同期させるために、ｊ＋１回の送信を行う必要がある。しかし、実際にはさらにオーバーヘッドを要するので、ｊ＋１以上の送信回数に応じた時間が必要になると考えられる。そこで、この差をＨとして設定することで、推定する送信所要時間を現実の送信所要時間により近づけることができる。
【０１５８】
コンテンツ管理部１２１は、現在時刻に、このような方法で推定した送信所要時間を加えた時刻を新規コンテンツのコンテンツ情報３３２の送信完了時刻情報として設定する（ステップＳ６０９）。
【０１５９】
また、一のコンテンツの送信完了時刻になった、または送信完了時刻を過ぎた場合（つまり、送信完了時刻が到来した場合）に（ステップＳ６０７のＹ）、コンテンツ管理部１２１は、以下の処理を行う。すなわち、コンテンツ管理部１２１は、一のコンテンツのコンテンツ情報３３２の送信完了時刻情報が示す時刻から、次に送信完了時刻となる他のコンテンツを検索する。そして、当該他のコンテンツのコンテンツ情報３３２の送信完了時刻情報が示す時刻が到来したことを検知するために、当該時刻を示す送信完了時刻情報を記憶部３３０に記憶させる（ステップＳ６０９）。そして、ステップＳ６１０の処理に移行する。
【０１６０】
図１８は、本実施形態において算出した通信端末数の推移を示す説明図である。
【０１６１】
なお、コンテンツ識別子がＡであるコンテンツＡと、コンテンツ識別子がＢであるコンテンツＢと、コンテンツ識別子がＣであるコンテンツＣと、コンテンツ識別子がＤであるコンテンツＤとがあるとする。また、自通信端末３００と９９個の隣接通信端末３００とで、合計して１００個の通信端末３００があるとする。そして、各通信端末３００は、それぞれ同時にコンテンツを送信できる数ｋ＝４に設定されているとする。また、同じタイミングでデータ送信を行うことが可能な通信端末数をＮｓ＝１０であるとする。
【０１６２】
図１８に示す時刻ｔ１において、自通信端末３００の記憶部３３０には、以下に示すコンテンツ情報３３２が記憶されているとする。すなわち、コンテンツ情報３３２には、コンテンツ識別子がＡであるコンテンツＡについてのコンテンツ情報と、コンテンツ識別子がＢであるコンテンツＢについてのコンテンツ情報とが含まれている。そして、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有フラグは１にセットされている。つまり、自通信端末３００の記憶部３３０には、コンテンツＡ，Ｂがいずれも記憶されている。また、コンテンツＡ，Ｂについてのいずれのコンテンツ情報においても保有通信端末数情報の値は９９である。つまり、９９個の隣接通信端末３００にはいずれもコンテンツＡ，Ｂが記憶されており、自通信端末３００を含めると、１００個の通信端末３００にはいずれもコンテンツＡ，Ｂが記憶されている。
【０１６３】
そうすると、時刻ｔ１では、コンテンツＡ，Ｂのいずれのコンテンツも全ての通信端末３００に記憶されており、コンテンツＡ，Ｂに対応するコンテンツ情報３３２の推定通信端末数情報の値は０であるため、ＣＡの値およびＣＢの値は、いずれも０である。よって、通信端末数Ｃ＝ＣＡ＋ＣＢ＝０である。
【０１６４】
時刻ｔ２において、一の通信端末３００に、コンテンツ識別子がＣであるコンテンツＣが記憶されたことを検知したとする。そうすると、式（４）より、コンテンツＣについての通信端末数ＣＣ＝ｍｉｎ（４３，１００−４３）＝ｍｉｎ（６４，３６）＝３６である。よって、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＝３６である。なお、本例において式（４）のｊ＝２とすると４２＜１００−４２であり、ｊ＝３とすると４３＞１００−４３である。したがって、ｊ＝３が採用される。また、送信端末数推定部３２２が、コンテンツＣのデータの送信が完了する時刻を推定し、推定結果を示す送信完了時刻情報をコンテンツ情報３３２の一部として記憶部３３０に記憶させる。また、送信端末数推定部３２２は、推定結果を、最先に到来する送信完了時刻を示す送信完了時刻情報として記憶部３３０に記憶させる。
【０１６５】
時刻ｔ３において、一の通信端末３００に、コンテンツ識別子がＤであるコンテンツＤが記憶されたとする。そうすると、式（４）より、コンテンツＤについての通信端末数ＣＤ＝ｍｉｎ（４３，１００−４３）＝ｍｉｎ（６４，３６）＝３６である。よって、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝７２である。なお、本例では上述したように、ｊ＝３が採用される。また、送信端末数推定部３２２が、コンテンツＤのデータの送信が完了する時刻を推定し、推定結果を示す送信完了時刻情報をコンテンツ情報３３２の一部として記憶部３３０に記憶させる。本例では、コンテンツＤのデータの送信が完了する時刻は、コンテンツＣのデータの送信が完了する時刻よりも後であるとする。この場合、最先に到来する送信完了時刻として記憶部３３０に記憶する送信完了時刻情報はコンテンツＣの送信完了時刻情報のままである。
【０１６６】
そして、時刻ｔ４に、コンテンツＣについての送信完了時刻情報が示す時刻が到来すると、コンテンツＣについてのコンテンツ情報３３２の推定通信端末数情報の値は、従前の３６から０に設定される。よって、ＣＣ＝０であるため、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝３６である。そして、最先に到来する送信完了時刻として記憶部３３０に記憶する送信完了時刻情報はコンテンツＣの送信完了時刻情報からコンテンツＤの送信完了時刻情報に更新する。
【０１６７】
さらに、時刻ｔ５に、コンテンツＤについてのコンテンツ情報３３２の推定通信端末数情報の値は、従前の３６から０に設定される。よって、ＣＤ＝０であるため、Ｃ＝ＣＡ＋ＣＢ＋ＣＣ＋ＣＤ＝０である。
【０１６８】
本実施形態によれば、第１の実施形態における効果、および第２の実施形態における効果に加えて、例えば各コンテンツが全ての通信端末３００に保有されたことを検知するための制御メッセージをロスした場合でも、各コンテンツが全ての通信端末３００に保有される時刻を推定することが可能となり、より厳密に通信端末数Ｃを推定することができる。
【０１６９】
以上に述べた各実施形態では、各通信端末１００，２００，３００は、アドホックモードで互いの間の通信を行う。しかし、各通信端末１００，２００，３００は、無線ＬＡＮのアクセスポイントを介して互いの間の通信を行うように構成されてもよい。図１９は、各通信端末がアクセスポイント４００を介して通信を行うように構成された無線通信システム５０１の例を示すブロック図である。図１９に示す例では、通信端末１００，２００，３００の例として、通信端末１００ａ〜１００ｈがアクセスポイント４００を介して互いの間の通信を行っている。
【０１７０】
そのような構成によれば、各通信端末１００，２００，３００間で直接に通信を行うことができない場合であっても、無線ＬＡＮのアクセスポイント４００を介して互いの間の通信を行い、第１〜第３の実施形態における効果と同様な効果を奏することができる。
【０１７１】
なお、以上に述べた各実施形態における通信端末１００，２００，３００の各構成要素は、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）を含む半導体処理部品が用いられて実現されてもよい。また、これらの構成要素は、少なくとも１つのプロセッサ（例えば、 マイクロプロセッサ（ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ））、やＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ））を含むコンピュータシステムにプログラムを実行させることによって実現されてもよい。具体的には、第１の実施形態における情報配信制御部１２０、送信権調整部１４０、データ蓄積部１５０、および記憶部１３０と、第２の実施形態における情報配信制御部２２０、送信権調整部１４０、データ蓄積部１５０、および記憶部２３０と、第３の実施形態における情報配信制御部３２０、送信権調整部１４０、データ蓄積部１５０、および記憶部３３０とが行う送信信号処理または受信信号処理に関するアルゴリズムをコンピュータシステムに行わせるための命令群を含む１または複数のプログラムを作成し、当該プログラムをコンピュータに実行させればよい。
【０１７２】
当該プログラムは、様々な種類の非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）に格納されて、コンピュータに提供可能である。非一時的なコンピュータ可読媒体は、様々な種類の記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体は、例えば、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスク）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅｃｏｒｄａｂｌｅ）、ＣＤ−Ｒ／Ｗ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅｗｒｉｔａｂｌｅ）、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、およびＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））である。また、プログラムは、様々な種類の一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに提供されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、および電磁波を含む。一時的なコンピュータ可読媒体は、電線や光ファイバ等の有線通信路、または無線通信路を介して、プログラムをコンピュータに提供できる。
【０１７３】
なお、以上に述べた各実施形態は、上記に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【０１７４】
例えば、上述した各実施形態では、送信確率算出部１４１が、通信端末数Ｃと、同じタイミングでデータ送信が可能な予め設定された通信端末数Ｎｓとを用いて、式（３）に示す計算方法により、調整基準値である送信確率ｐを算出した。
【０１７５】
しかし、独立な試行Ｃ回（通信端末数Ｃに相当）、および各試行における成功確率ｐ（タイムスロットで送信権を得る確率ｐに相当）の二項分布Ｂ（Ｃ、ｐ）に基づいて算出した成功回数によって、上述した各実施形態において送信権を得た通信端末数を近似できる。
【０１７６】
したがって、同じタイミングでデータ送信を行うことが可能な通信端末数がＮｓとなる確率αを設定し、同じタイミングでデータ送信を行う通信端末数が確率αでＮｓ個以下となる確率ｐを送信確率として求めて使用する方法も考えられる。この場合、確率変数Ｘ＝ｋ（ｋ＝０、１、・・・、Ｃ）となる確率は式（５）で与えられる。
0006540699.tif 000002
【０１７７】
よって、下記の式（６）を満たす確率ｐを求めて用いることで、より効果的な制御が可能となると考えられる。なお、送信確率ｐは、式（６）を満たす確率ｐのうち、最大の値であることが好ましい。
0006540699.tif 000003
【０１７８】
また、ポアソン分布や正規分布を用いて、各実施形態において送信権を得た通信端末数を近似することも可能である。
【０１７９】
上述した第１の実施形態では、送信端末数推定部１２２は、ステップＳ１０７、Ｓ１０８の処理で、コンテンツ情報１３２が更新される度に通信端末数Ｃを推定し、推定結果を送信確率算出部１４１に入力する。しかし、送信端末数推定部１２２は、予め設定された送信端末数更新時間ごとにステップＳ１０８の処理を行って通信端末数を推定し、推定結果を送信確率算出部１４１に入力するように構成されていてもよい。
【０１８０】
ここで、送信確率算出部１４１は、送信端末数推定部１２２から通信端末数を通知されたことを契機にステップＳ１０９の送信確率算出処理を開始する。しかし、以前の通知時から通信端末数Ｃおよび隣接通信端末１００の数が変化していなければ、送信確率算出部１４１は、今回の通知に基づく送信確率算出処理を行わず、前回算出した送信確率を利用するように構成されていてもよい。
【０１８１】
同様に、第２の実施形態のステップＳ５０８の処理、および第３の実施形態のＳ６０８の処理において、送信端末数推定部は、予め設定された送信端末数更新時間ごとに通信端末数Ｃを推定した推定結果を送信確率算出部１４１に通知するように構成されていてもよい。
【０１８２】
そして、送信確率算出部１４１は、当該推定結果に応じたステップＳ５０９，Ｓ６１０の処理で、以前の通知時から通信端末数Ｃおよび隣接通信端末１００の数が変化していなければ、前回算出した送信確率を利用するように構成されていてもよい。
【０１８３】
以上に述べた各実施形態では、データブロック送信部１５３は、ステップＳ３０２の処理で、送信権決定部１４２による通知に応じて通信部１６０にデータを入力する処理を実行している。しかし、データブロック送信部１５３は、データブロック記憶部１５２に送信すべきデータブロックが記憶されている場合に、データブロック毎に送信権決定部１４２に送信可否を問い合わせるように構成されていてもよい。そして、データブロック送信部１５３は、送信権決定部１４２から送信許可を通知されたことに応じて、データブロックを通信部１６０に入力するように構成されていてもよい。
【０１８４】
なお、送信権決定部１４２は送信不可である場合に、データブロック送信部１５３に、次回の問い合わせ時刻と送信不許可であることとを併せて通知してもよい。次回の問い合わせ時刻は、例えば、今回送信不許可を通知されたタイムスロットの終了時刻に応じた時刻である。つまり、次回の問い合わせ時刻は、例えば、次に送信権を発生させるか否かを決定するタイムスロットの開始時刻に応じた時刻である。また、送信権決定部１４２が、例えば、Ｍ個のタイムスロットの送信権を同時に決定するように構成されている場合には、次回の問い合わせ時刻はＭ個目のタイムスロットの終了時刻に応じた時刻である。
【０１８５】
なお、送信権決定部１４２によるデータブロック送信部１５３への送信可否の通知には様々な方法やタイミングが考えられる。送信確率算出部１４１が算出した送信確率に基づいて、送信権決定部１４２がタイムスロット毎に送信可否を決定し、決定した送信可否に基づきデータブロック送信部１５３がデータを送信することが可能であれば、その方法を適宜変更することが可能である。
【０１８６】
また、以上に述べた各実施形態では、情報配信制御部から通信部１６０に入力されるデータは、全てデータ蓄積部１５０によって送信確率に基づいて送信制御される。
【０１８７】
しかし、データの種別やサイズ、コンテンツ等に応じて送信の優先度が設定されてもよい。そして、情報配信制御部が、高い段階の優先度が設定されたデータを直接通信部１６０に入力して、データ蓄積部１５０による送信確率に基づく送信制御を行わせずに、送信させるように構成されていてもよい。なお、データ蓄積部１５０のデータ分割部１５１がデータをデータブロックに分割した後に、直接通信部１６０に当該データブロックを入力してもよい。そのような構成によれば、優先度に基づいて送信制御を行うことができる。
【０１８８】
上述した各実施形態は本件発明者により得られた技術思想の適用に関する例に過ぎない。すなわち、当該技術思想は、上述した実施形態のみに限定されるものではなく、種々の変更が可能であることは勿論である。
【０１８９】
実施形態４．
次に、本発明の第４の実施形態の通信端末１０について、図面を参照して説明する。図２０は、本発明の第４の実施形態の通信端末１０の構成例を示すブロック図である。図２０に示すように、本発明の第４の実施形態の通信端末１０は、データ記憶端末数カウント部２１、通信端末数推定部２２、調整基準値算出部４１、決定部４２、およびデータ送信部６０を含む。
【０１９０】
なお、データ記憶端末数カウント部２１は、図２，１１，１５に示すコンテンツ管理部１２１に相当する。送信端末数推定部２２は、図２，１１，１５に示す送信端末数推定部１２２，２２２，３２２に相当する。調整基準値算出部４１は、図５に示す送信確率算出部１４１に相当する。決定部４２は、図５に示す送信権決定部１４２に相当する。データ送信部６０は、図２，１１，１５に示すデータ蓄積部１５０に相当する。
【０１９１】
データ記憶端末数カウント部２１は、他の通信端末からそれぞれ送信され、当該他の通信端末に記憶されているデータを示すそれぞれのデータ情報と、自通信端末の記憶手段における記憶内容とに基づいて、データごとに、記憶されている通信端末の数をカウントする。
【０１９２】
通信端末数推定部２２は、データ記憶端末数カウント部２１のカウント結果に基づいて、互いに同じタイミングでデータを送信する通信端末の数を推定する。
【０１９３】
調整基準値算出部４１は、通信端末数推定部２２が推定した通信端末の数を予め設定された許容数以下に制限するための調整基準値を算出する。
【０１９４】
決定部４２は、調整基準値算出部４１が算出した調整基準値に基づいて、記憶手段に記憶されているデータの送信を許可するか否かを決定する。
【０１９５】
データ送信部６０は、決定部４２がデータの送信を許可した場合に、データが記憶されていない通信端末にデータを送信する。
【０１９６】
本実施形態によれば、通信ネットワークに接続されている通信端末数が増加してもデータの衝突回数の増加を良好に抑制することができる。
【０１９７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１９８】
この出願は、２０１４年７月１日に出願された日本出願特願２０１４−１３５８１６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１９９】
１０、１００、２００、３００    通信端末
２１    データ記憶端末数カウント部
２２    通信端末数推定部
４１    調整基準値算出部
４２    決定部
６０    データ送信部
１２０、２２０、３２０    情報配信制御部
１２１    コンテンツ管理部
１２２、２２２、３２２    送信端末数推定部
１２３    制御メッセージ送受信部
１３０、２３０、３３０    記憶部
１３１    通信端末情報
１３２、２３２、３３２    コンテンツ情報
１４０    送信権調整部
１４１    送信確率算出部
１４２    送信権決定部
１５０    データ蓄積部
１５１    データ分割部
１５２    データブロック記憶部
１５３    データブロック送信部
１６０    通信部
４００    アクセスポイント
【図１】
0006540699.tif 000004
【図２】
0006540699.tif 000005
【図３】
0006540699.tif 000006
【図４】
0006540699.tif 000007
【図５】
0006540699.tif 000008
【図６】
0006540699.tif 000009
【図７】
0006540699.tif 000010
【図８】
0006540699.tif 000011
【図９】
0006540699.tif 000012
【図１０】
0006540699.tif 000013
【図１１】
0006540699.tif 000014
【図１２】
0006540699.tif 000015
【図１３】
0006540699.tif 000016
【図１４】
0006540699.tif 000017
【図１５】
0006540699.tif 000018
【図１６】
0006540699.tif 000019
【図１７】
0006540699.tif 000020
【図１８】
0006540699.tif 000021
【図１９】
0006540699.tif 000022
【図２０】
0006540699.tif 000023
【図２１】
0006540699.tif 000024