(57)【要約】【課題】無線アドホックネットワーク環境におけるブロードキャストのデータ配送において、転送ノード数を削減しながらデータの転送カバー範囲を拡大できるデータ配信方法とシステム及び通信装置とプログラムを提供すること。【解決手段】データのブロードキャスト転送をするノードは、転送用タイマーが切れると、転送データ生成部１０８により転送ノードがパケット受信時の情報を転送データに付加して、送信処理部１０９でブロードキャスト転送する。既に同一データを受信し、かつ、転送タイマーがまだ切れていないノードが前回と異なる送信元ノードから転送されてきたデータを受信した場合、この受信ノードは受信済み同一データに関する自ノードの受信状態情報と転送データを送信したノードの受信状態情報を元にして、転送範囲拡大判定部１０３によりデータ転送が有効と判定した場合のみデータ転送処理を続行する。【選択図】図１
2010206613.tif 000002
【特許請求の範囲】
【請求項１】
無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間のデータ配信方法であって、
パケットを受信したノードは、受信した前記パケットのデータと同一データが未転送データとして存在する場合、前記パケット受信時の受信状態情報と、前記未転送データに関する受信状態情報とに基づき、前記未転送データと前記パケットの送信ノードの送信可能範囲と、前記パケットを受信したノードの送信可能範囲との差分領域を求め、前記パケットを受信したノードにおけるデータ転送の必要の有無を判断する、ことを特徴とするデータ配信方法。
【請求項２】
前記パケットを転送するノードは、前記パケット受信時の受信状態情報を転送データに付加したデータを作成しパケット化し転送先のノードに転送する、ことを特徴とする請求項１に記載のデータ配信方法。
【請求項３】
前記パケット受信時の受信状態情報が、前記パケットの送信元のノードと前記パケットを受信したノードとの間の距離を含む、ことを特徴とする請求項１又は２に記載のデータ配信方法。
【請求項４】
前記パケットを受信したノードは、データ転送の必要の有無を判断にあたり、
前記パケットに関する受信状態情報と、
前記パケットの転送データに付加された受信状態情報と、
前記未転送データに関する受信状態情報と、
を利用する、ことを特徴とする請求項１乃至３のいずれか１項に記載のデータ配信方法。
【請求項５】
ネットワークを構成する複数のノードのうちブロードキャスト・パケットを受信した一のノードは、
前記パケット受信時の前記受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得し、
前記一のノードは、さらに、
受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックし、
同一データが未転送データとして存在しない場合には、
受信した前記パケットのデータを未転送データとして前記受信距離情報とともに、前記記憶部に保存し、
同一データが未転送データとして存在する場合には、
前記記憶部から、前記未転送データに関する受信距離情報を取得し、
前記未転送データに関する受信距離情報と、
受信した前記パケットに関する受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項１記載のデータ配信方法。
【請求項６】
前記一のノードは、
前記未転送データに関する受信距離情報と、
受信した前記パケットに関する受信距離情報と、
が、ノードの送信可能距離の予め定められた所定割合以上の場合、データ転送処理続行は必要と判断する、請求項５記載のデータ配信方法。
【請求項７】
ネットワークを構成する複数のノードのうちブロードキャスト・パケットを受信した一のノードは、
前記パケット受信時の前記受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得し、
前記一のノードは、さらに、
受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックし、
同一データが未転送データとして存在しない場合には、
受信した前記パケットのデータを未転送データとして前記受信距離情報とともに前記記憶部に保存し、
同一データが未転送データとして存在する場合には、
前記記憶部から、前記未転送データに関する受信距離情報を取得し、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項１記載のデータ配信方法。
【請求項８】
前記一のノードは、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
から、
前記未転送データを前記一のノードに送信した第１の送信ノードと、前記一のノードとがなす辺と、
前記第１の送信ノードと、前記一のノードが受信した前記パケットを前記一のノードに送信した第２の送信ノードとがなす辺
との間の角度を導出し、
前記角度が予め定められた角度以上であり、且つ、
前記第１の送信ノードと前記一のノードとの間の受信距離が、ノードの送信可能距離の予め定められた所定割合以上の場合に、データ転送処理続行は必要と判断する、請求項７記載のデータ配信方法。
【請求項９】
前記一のノードにおいて、受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックした結果、
同一データが未転送データとして存在しない場合には、前記未転送データと受信距離情報を前記記憶部に保存するとともに、データ転送実行までの遅延時間を管理する転送用タイマーをスタートさせる、請求項１乃至８のいずれか１項に記載のデータ配信方法。
【請求項１０】
前記転送用タイマーは、送信元ノードから遠くにあるノードから先にタイムアウトとなるように設定される、請求項９記載のデータ配信方法。
【請求項１１】
前記一のノードは、転送処理において、
前記未転送データが存在し、且つ、前記転送用タイマーが動作中の場合、
前記転送用タイマーのタイムアウトを契機として、前記未転送データに受信状態情報を付加して転送データを作成し、パケットで転送し、
転送処理を行わない場合、前記転送用タイマーを停止させる、請求項９又は１０記載のデータ配信方法。
【請求項１２】
無線アドホックネットワーク上におけるマルチホップ通信機能を有する複数のノードを備えたデータ配信システムにおいて、
パケットを受信したノードは、前記パケット受信時、
前記ノード内に、受信した前記パケットのデータと同一データが未転送データとして存在する場合、
少なくとも、受信した前記パケットに関する受信状態情報と、前記未転送データに関する受信状態情報とに基づき、前記未転送データ及び前記パケットの送信ノードの送信可能範囲と、前記パケットを受信したノードの送信可能範囲との差分領域を求め、前記パケットを受信したノードにおけるデータ転送の必要の有無を判断する、ことを特徴とするデータ配信システム。
【請求項１３】
前記パケットを転送するノードは、前記パケットを受信した時の前記パケットの受信状態情報を転送データに付加しパケット化して転送先のノードに転送する、ことを特徴とする請求項１２に記載のデータ配信システム。
【請求項１４】
前記パケット受信時の受信状態情報が、前記パケットの送信元のノードと前記パケットを受信したノードとの間の距離を含む、ことを特徴とする請求項１２又は１３に記載のデータ配信システム。
【請求項１５】
前記パケットを受信したノードは、データ転送の必要の有無を判断にあたり、
受信した前記パケットに関する受信状態情報と、
受信した前記パケットの転送データに付加された受信状態情報と、
前記未転送データに関する受信状態情報と、
を利用する、ことを特徴とする請求項１２乃至１４のいずれか１項に記載のデータ配信システム。
【請求項１６】
ネットワークを構成する複数のノードのうちブロードキャスト・パケットを受信した一のノードは、
前記パケット受信時の前記受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得し、
前記一のノードは、さらに、
受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックし、
同一データが未転送データとして存在しない場合には、
受信した前記パケットのデータを未転送データとして前記受信距離情報とともに、前記記憶部に保存し、
同一データが未転送データとして存在する場合には、
前記記憶部から、前記未転送データに関する受信距離情報を取得し、
前記未転送データに関する受信距離情報と、
受信した前記パケットに関する受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項１２記載のデータ配信システム。
【請求項１７】
前記一のノードは、
前記未転送データに関する受信距離情報と、
受信した前記パケットに関する受信距離情報と、
が、ノードの送信可能距離の予め定められた所定割合以上の場合、データ転送処理続行は必要と判断する、請求項１６記載のデータ配信システム。
【請求項１８】
ネットワークを構成する複数のノードのうちブロードキャスト・パケットを受信した一のノードは、
前記パケット受信時の前記受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得し、
前記一のノードは、さらに、
受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックし、
同一データが未転送データとして存在しない場合には、
受信した前記パケットのデータを未転送データとして前記受信距離情報とともに、前記記憶部に保存し、
同一データが未転送データとして存在する場合には、
前記記憶部から、前記未転送データに関する受信距離情報を取得し、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項１２記載のデータ配信システム。
【請求項１９】
前記一のノードは、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、
前記未転送データを前記一のノードに送信した第１の送信ノードと前記一のノードとがなす辺と、
前記第１の送信ノードと、前記一のノードが受信した前記パケットを前記一のノードに送信した第２の送信ノードとがなす辺と、
の間の角度を導出し、
前記角度が予め定められた角度以上であり、且つ、
前記第１の送信ノードと前記一のノードとの間の距離が、ノードの送信可能距離の予め定められた所定割合以上の場合、データ転送処理続行は必要と判断する、請求項１８記載のデータ配信システム。
【請求項２０】
前記一のノードにおいて、受信した前記パケットのデータと同一データが未転送データとして前記一のノードの記憶部に存在するか否かをチェックした結果、同一データが未転送データとして存在しない場合には、前記未転送データと受信距離情報を前記記憶部に保存するとともに、
データ転送実行までの遅延時間を管理する転送用タイマーをスタートさせる、請求項１２乃至１９のいずれか１項に記載のデータ配信システム。
【請求項２１】
前記転送用タイマーは、送信元ノードから遠くにあるノードから先にタイムアウトとなるように設定される、請求項２０記載のデータ配信システム。
【請求項２２】
前記一のノードは、転送処理において、
前記未転送データが存在し、且つ、転送用タイマーが動作中の場合、
前記転送用タイマーのタイムアウトを契機として、前記未転送データに受信状態情報を付加して転送データを作成しパケットで転送し、
転送処理を行わない場合、前記転送用タイマーを停止させる、請求項２０又は２１記載のデータ配信システム。
【請求項２３】
無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間の通信を行う通信装置であって、
パケット受信時の受信状態情報を受信データと対応付けて管理する転送用データ管理手段と、
パケット受信時の受信状態情報を利用して、各ノードの送信可能範囲の差分領域を求めて、転送処理の必要性を判断する転送範囲拡大判定手段と、
データ転送実行開始までの時間を管理する転送用タイマー管理手段と、
を備える、ことを特徴とする通信装置。
【請求項２４】
転送データに受信時状態情報を付加する転送データ生成手段を備える、ことを特徴とする請求項２３に記載の通信装置。
【請求項２５】
無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間の通信を行うノードを構成する通信装置であって、
パケットを受信した時、前記パケットの受信状態より受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得する受信処理部と、
受信した前記パケットのデータと同一データが未転送データとして未転送データ管理部に存在するか否かをチェックするデータ検索部と、
前記データ検索部よる検索の結果、同一データが未転送データとして存在しない場合には、受信した前記パケットのデータを未転送データとして前記受信距離情報とともに保存する前記未転送データ管理部と、
同一データが未転送データとして存在する場合には、前記未転送データ管理部から、前記未転送データに関する受信距離情報を取得する転送判定用パラメータ取得部と、
取得された前記未転送データに関する受信距離情報と、受信した前記パケットの受信距離情報と、に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、転送範囲拡大判定部と、
を備えた通信装置。
【請求項２６】
前記転送範囲拡大判定部は、
前記未転送データに関する受信距離情報と、
受信した前記パケットに関する受信距離情報と、
が、ノードの送信可能距離の予め定められた所定割合以上の場合、データ転送処理続行は必要と判断する、請求項２５記載の通信装置。
【請求項２７】
前記転送範囲拡大判定部は、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項２５記載の通信装置。
【請求項２８】
前記転送範囲拡大判定部は、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、
前記未転送データを前記通信装置に送信した第１の送信ノードと前記通信装置とがなす辺と、
前記第１の送信ノードと、前記通信装置が受信した前記パケットを前記通信装置に送信した第２の送信ノードとがなす辺と、
の間の角度を導出し、
前記角度が予め定められた角度以上であり、且つ、前記第１の送信ノードと前記通信装置との間の距離が、ノードの送信可能距離の予め定められた所定割合以上の場合に、データ転送処理は必要と判断する、請求項２７記載の通信装置。
【請求項２９】
受信した前記パケットのデータと同一データが未転送データとして前記記憶部に存在するか否かをチェックした結果、同一データが未転送データとして存在しない場合には、データ転送実行までの遅延時間を管理する転送用タイマーをスタートさせる転送用タイマー設定部を備えた、請求項２５乃至２８のいずれか１項に記載の通信装置。
【請求項３０】
前記転送用タイマー設定部は、送信元ノードから遠くにあるノードから先にタイムアウトとなるように前記転送用タイマーを設定する、請求項２９記載の通信装置。
【請求項３１】
転送データ生成部と、
前記転送データをパケットで送信する送信処理部と、
を備え、
転送処理を続行する場合、前記未転送データが存在し、且つ、前記転送用タイマーが動作中であるとき、前記転送用タイマーのタイムアウトを契機として、
前記転送データ生成部は、前記未転送データに、前記未転送データに関する受信状態情報を付加して転送データを作成し、
転送処理を行わない場合、前記転送用タイマー設定部は、前記転送用タイマーを停止させる、請求項２９又は３０記載の通信装置。
【請求項３２】
無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間の通信を行うノードを構成するコンピュータに、
パケットを受信した時、前記パケットの受信状態より、前記パケットに関する受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得する受信処理と、
受信した前記パケットのデータと同一データが未転送データとして記憶部に存在するか否かをチェックするデータ検索処理と、
前記データ検索処理よる検索の結果、同一データが未転送データとして存在しない場合には、
受信した前記パケットのデータを未転送データとして前記受信距離情報とともに前記記憶部に保存する未転送データ管理処理と、
同一データが未転送データとして存在する場合に、
前記記憶部から、前記未転送データに関する受信距離情報を取得する転送判定用パラメータ取得処理と、
取得された前記未転送データに関する受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、転送範囲拡大判定処理と、
を実行させるプログラム。
【請求項３３】
前記転送範囲拡大判定処理は、前記未転送データに関する受信距離情報と、受信した前記パケットに関する受信距離情報が、ノードの送信可能距離の予め定められた所定割合以上の場合、データ転送処理続行は必要と判断する、請求項３２記載のプログラム。
【請求項３４】
前記転送範囲拡大判定処理は、
取得された前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、請求項３２記載のプログラム。
【請求項３５】
前記転送範囲拡大判定処理は、
前記未転送データに関する受信距離情報と、
受信した前記パケットの転送データに付加された受信距離情報と、
受信した前記パケットの受信距離情報と、
に基づき、
前記未転送データを前記通信装置に送信した第１の送信ノードと前記通信装置とがなす辺と、
前記第１の送信ノードと、前記通信装置が受信した前記パケットを前記通信装置に送信した第２の送信ノードとがなす辺と、
の間の角度を導出し、
前記角度が予め定められた角度以上であり、且つ、前記第１の送信ノードと前記通信装置との間の距離が、ノードの送信可能距離の予め定められた所定割合以上の場合に、データ転送処理続行は必要と判断する、請求項３４記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ配信方法とデータ配信システムと通信装置とプログラムに関し、特に、無線アドホックネットワーク環境におけるマルチホップ通信を利用したブロードキャスト等によるデータ転送に好適なデータ配信方法とデータ配信システムと通信装置とプログラムに関する。
【背景技術】
【０００２】
無線アドホックネットワークにおいて、ブロードキャストは例えばルーティングプロトコルで使用されるような制御パケットや管理パケットなどを特定のエリア内に配置された全てのノードに対して配送するのに有効な技術である。さらに、直接配送できないノードに対してはマルチホップ通信を組み合わせることは、効果的な配信方法として応用されている。
【０００３】
ブロードキャスト技術として、従来より、フラッディング（Ｆｌｏｏｄｉｎｇ）技術が知られている。図７にその動作例を示す（なお、図７は、関連技術のフラッディングの動作説明のため、本発明者により作成されたものである）。
【０００４】
図７を参照すると、フラッディング技術は、送信元ノード３００がブロードキャストしたパケットを受信した各ノード（３０１、３０２、３０３及び３０４）は、ブロードキャストで転送を行う。さらに、該パケットを受信した各ノードは、ブロードキャストによる再転送を行うが、その際、一度転送したものと同一データのパケットを受信した場合には、当該受信パケットを破棄するとともに、同一データの再転送を中止する。この処理を繰り返すことにより、エリア内の全ノードにパケットを配送する。全ノードは必ず１回ブロードキャストで転送を実行することになる。
【０００５】
フラッディング技術を改良したシステムとして例えば特許文献１（特開２００３−２８３５６０号公報（特許第３８９４４３２号公報（第９−１４頁））の記載が参照される。特許文献１に記載された発明おいては、ブロードキャストによるパケットを受信した各ノードは、送信元ノードからの距離情報をパラメータとして、送信元ノードから遠くにあるノードから先にタイマーが切れるように、転送用タイマーを設定する。そして、転送用タイマーが切れる前に、別ノードから同一データのパケットを受信した場合には、データの転送処理を中止することで、全体の転送回数の削減を可能としている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２８３５６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
以下に本発明による関連技術の分析を与える。
【０００８】
上記特許文献１に記載された発明においては、転送処理を中止したノードからしか配送ルートが存在しない位置にノードが配置されている場合、当該ノードに対しては、いつまでもパケットの転送が行われないことになる。これは、本発明者の分析により知見された問題点である。以下、図８を参照して説明する。なお、図８は、特許文献１に記載された発明の動作を説明するため、本発明者により作成されたものである。
【０００９】
図８において、最初の送信元ノード４００が送信したブロードキャスト・パケットを受信した受信ノード４０１と４０４と４０５のうち、受信ノード４０１が送信元ノード４００から見て一番遠くに位置しているため、ノード４０１は、ノード４０４及び４０５よりも、先に転送処理を開始するように転送用タイマーを設定する。
【００１０】
そして、ノード４０４と４０５は、自分が転送処理を開始する前に、ノード４０１からの転送パケットを受信すると、ともに転送処理を中止してしまう。その後、同様にして、ノード４０６は、ノード４０２又は４０３からの転送パケットを受信することにより、自らの転送処理を中止する。
【００１１】
このように、ノードの配置状況によっては、ブロードキャスト送信時に、データが転送されないノードが生じる場合がある。これは、以下の理由による。
【００１２】
すなわち、自ノードから１ホップで到達可能なノードの数が少数に限定された状態でノードが配置されている場合、他ノードからブロードキャスト送信されたデータの転送処理において、自ノードから１ホップで到達可能なノードの全てが転送処理の実行待ち状態中に、同一データの転送パケットを受信することで転送処理を中止してしまい、自ノードへの転送が行われない場合が発生し得るためである。
【００１３】
したがって、本発明の目的は、無線アドホックネットワーク環境におけるブロードキャストのデータ配送において、転送ノード数を削減しながら、データの転送カバー範囲を拡大できるデータ配信方法とデータ配信システムと通信装置とプログラムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明の１つの側面によれば、無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間のデータ配信方法であって、
パケットを受信したノードは、前記パケット受信時、前記ノード内に、前記受信したパケットのデータと同一データが未転送データとして存在する場合、少なくとも、前記受信したパケットに関する受信状態情報と、前記未転送データに関する受信状態情報とに基づき、前記未転送データ及び前記パケットの送信ノードの送信可能範囲と、前記パケットを受信したノードの送信可能範囲との差分領域を求め、前記パケットを受信したノードにおけるデータ転送の必要の有無を判断するデータ配信方法が提供される。
【００１５】
本発明の他の側面によれば、無線アドホックネットワーク上におけるマルチホップ通信機能を有する複数のノードを備えたデータ配信システムにおいて、パケットを受信したノードは、前記パケット受信時、前記受信したパケットのデータと同一データが未転送データとして存在する場合、少なくとも、前記受信したパケットに関する受信状態情報と、前記未転送データに関する受信状態情報とに基づき、前記未転送データ及び前記パケットの送信ノードの送信可能範囲と、前記パケットを受信したノードの送信可能範囲との差分領域を求め、前記パケットを受信したノードにおけるデータ転送の必要の有無を判断するデータ配信システムが提供される。
【００１６】
本発明のさらに他の側面によれば、無線アドホックネットワーク上におけるマルチホップ通信機能を有する通信装置間の通信を行う通信装置において、パケット受信時の受信状態情報を受信データと対応付けて管理する転送用データ管理手段と、パケット受信時の受信状態情報を利用して、各通信装置の送信可能範囲の差分領域を求めて、転送処理の必要性を判断する転送範囲拡大判定手段と、データ転送実行開始までの時間を管理する転送用タイマー管理手段と、を備えた通信装置が提供される。
【００１７】
本発明のさらに別の側面によれば、無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間の通信を行うノードとして機能する通信装置であって、ブロードキャスト・パケットを受信した時、前記パケットの受信状態より受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得する受信処理部と、前記受信したパケットのデータと同一データが未転送データとして未転送データ管理部に存在するか否かをチェックするデータ検索部と、前記データ検索部よる検索の結果、同一データが未転送データとして存在しない場合には、前記受信したパケットのデータを未転送データとして前記受信距離情報とともに保存する前記未転送データ管理部と、同一データが未転送データとして存在する場合には、前記未転送データ管理部から、前記未転送データに関する受信距離情報を取得する転送判定用パラメータ取得部と、取得された前記未転送データに関する受信距離情報と、前記受信パケットの受信距離情報と、に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する、転送範囲拡大判定部と、を備えた通信装置が提供される。本発明において、前記転送範囲拡大判定部は、前記未転送データに関する受信距離情報と、前記受信パケットの転送データに付加された受信距離情報と、前記受信パケットの受信距離情報と、に基づき、他ノードへのデータ転送処理続行の必要の有無を判断するようにしてもよい。
【００１８】
本発明によれば、無線アドホックネットワーク上におけるマルチホップ通信機能を有するノード間の通信を行うノードを構成するコンピュータに、
ブロードキャスト・パケットを受信した時、前記パケットの受信状態より受信状態情報として前記パケットの送信元ノードとの受信距離情報を取得する受信処理と、
受信した前記パケットのデータと同一データが未転送データとして記憶部に存在するか否かをチェックするデータ検索処理と、
前記データ検索処理よる検索の結果、同一データが未転送データとして存在しない場合には、受信した前記パケットのデータを未転送データとして前記受信距離情報とともに前記記憶部に保存する未転送データ管理処理と、
同一データが未転送データとして存在する場合に、
前記記憶部から、前記未転送データに関する受信距離情報を取得する転送判定用パラメータ取得処理と、
取得された前記未転送データに関する受信距離情報と、
前記受信パケットの転送データに付加された受信距離情報と、
前記受信パケットの受信距離情報と、
に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する転送範囲拡大判定処理と、を実行させるプログラムが提供される。本発明において、前記転送範囲拡大判定処理は、前記未転送データに関する受信距離情報と、前記受信パケットの転送データに付加された受信距離情報と、前記受信パケットの受信距離情報と、に基づき、他ノードへのデータ転送処理続行の必要の有無を判断するようにしてもよい。
【発明の効果】
【００１９】
本発明によれば、無線アドホックネットワーク環境におけるブロードキャストのデータ配送において、転送ノード数を削減しながらデータの転送カバー範囲を拡大できるデータ配信方法を提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態の通信ノードの構成例を示す図である。
【図２】本発明の第１の実施形態において転送範囲拡大の要否判定に使用するパラメータの関係を示す模式図である。
【図３】本発明の第１の実施形態におけるブロードキャスト・パケット受信処理の動作の一例を示す流れ図である。
【図４】本発明の第１の実施形態におけるブロードキャスト・パケット送信処理の動作の一例を示す流れ図である。
【図５】本発明の第２の実施形態におけるブロードキャスト・パケット受信処理の動作の一例を示す流れ図である。
【図６】本発明の第１の実施例におけるブロードキャストの転送動作を模式的に示す図である。
【図７】フラッディング技術によるブロードキャストの転送動作を模式的に示す図である。
【図８】特許文献１の方法によるブロードキャストの転送動作を模式的に示す図である。
【発明を実施するための形態】
【００２１】
本発明の実施の形態について説明する。本発明においては、複数の通信ノードを有し、各ノードは、他ノードから送信されたパケットを受信する受信処理部（図１の１０１）と、受信パケットと同一データ受信有無の状況を検索するデータ検索部（図１の１０２）と、未転送データと同一データを持つパケット受信時に転送処理実行の要否を判定する転送範囲拡大判定部（図１の１０３）と、パケット受信時に受信状態情報を用いて転送処理の実行開始までの待ち時間を設定する転送タイマー設定部（図１に１０４）と、転送範囲拡大判定部（１０３）の転送処理実行の要否判定に使用するパラメータをデータの受信状態情報から取得する転送判定用パラメータ取得部（図１の１０５）と、未転送データと対応する受信状態情報のデータを保存及び管理する未転送データ管理部（図１の１０６）と、未転送データの転送処理実行までのタイマーを管理するタイマー処理部（図１の１０７）と、データ転送時にデータ受信状態情報を付加する転送データ生成部（図１の１０８）と、データをブロードキャスト転送する送信処理部（図１の１０９）とを有する。
【００２２】
本発明においては、ブロードキャスト・パケットを受信した一のノード（例えば図２の１４０）は、該パケットの受信状態より、受信状態情報（例えば該パケットの送信元ノード（例えば図２の１３０）との受信距離情報）を取得し、さらに、前記一のノード（１４０）は、受信したパケットのデータと同一データが未転送データとして記憶部（未転送データ管理部）に存在するか否かをチェックする。前記一のノード（１４０）は、同一データが未転送データとして存在しない場合には、受信した前記パケットのデータを未転送データとして受信状態情報とともに、記憶部（未転送データ管理部）に保存する。前記一のノード（１４０）は、同一データが未転送データとして存在する場合には、記憶部（未転送データ管理部）から、前記未転送データに関する受信状態情報のパラメータ（受信距離情報）を取得する。一のノード（例えば図２の１４０）は、前記未転送データに関する受信距離情報（図２のｄ２）と、受信した前記パケットに関する受信距離情報（図２のｄ３）と、受信した前記パケットの転送データに付加された受信距離情報（図２のｄ１）とに基づき、他ノードへのデータ転送処理続行の必要の有無を判断する。あるいは、前記未転送データに関する受信距離情報（図２のｄ２）と受信した前記パケットに関する受信距離情報（ｄ３）と、に基づき、他ノードへのデータ転送処理続行の必要の有無を判断する。
【００２３】
本発明において、各ノードは、ブロードキャスト・パケット受信時に、同一データを受信済みであるか否かを確認し、初めての受信であれば、パケット受信時の電波強度等の受信状態情報から求めた受信距離をパラメータとして送信ノードから遠くに位置するノードから先に転送を開始するように転送用タイマーを設定し、受信したデータと、受信パケットに付加されている送信元ノードにおける受信状態情報と、を保存した後に、転送用タイマーを動作させる。一方、受信パケットと同一データが受信済みであれば（未転送データとして記憶保持されている場合）、受信済みのデータの送信元ノードにおける受信状態情報と、今回受信したノードでの受信状態情報と、を利用して、受信ノードの配信範囲内で、且つ、先に送信したノードの配信範囲と今回転送したノードの配信範囲のどちらにも含まれない領域の大きさが、転送処理中止による影響を受けると判断される場合には、転送処理を続行させることで、単純に同一データのパケット受信により転送処理を中止する場合に比べて転送可能なノードのカバー範囲拡大を実現することが可能となる。
【００２４】
このように、本発明においては、ブロードキャスト・パケットのデータ配信において、ブロードキャスト・パケット受信時の受信ノードにおける、受信状態情報（ブロードキャスト・パケットの送信元の通信ノード、ブロードキャスト・パケット受信時の電波強度又はブロードキャスト・パケット送信元の通信ノードとの受信距離等）を、転送パケットデータに付加して、ブロードキャスト転送を行い、受信ノード側では、ブロードキャスト転送されたパケットに付加されたこれらの受信状態情報と、以前に受信した同一データの受信状態情報から得られたパラメータと、を基にして、該当するデータの送信、及び、転送してきた各通信ノードの送信範囲と受信ノードの送信範囲との差分領域を判定する。本発明によれば、パケットを転送してきたノードの送信範囲とパケットを受信したノードの送信範囲の差分領域と、転送ノードによるパケット受信状態情報とを基に、転送処理の中止を判定することで、転送ノード数をある程度抑えつつ、特許文献１の方法に比べて転送可能なノードのカバー範囲を拡大できる。
【００２５】
本発明によれば、パケットを転送するノードは、転送先ノード側で転送処理中止の判定のために使用するパケット受信状態情報を、転送パケットに付加して転送するようにしたことで、パケット受信ノードが、パケットを転送するノードによるパケット受信状態情報を取得するための余分な通信トラフィックを不要としている。以下、具体的な実施形態に即して説明する。
【００２６】
＜実施形態１＞
図１は、本発明の第１の実施形態の通信ノード（通信装置）の構成を示す図である。本発明の第１の実施形態に係るシステムは、複数の通信ノードで構成され、各通信ノードの基本構成は同一とされる。各通信ノードは、図１に通信ノード１００として示すように、受信処理部１０１と、データ検索部１０２と、転送範囲拡大判定部１０３と、転送タイマー設定部１０４と、転送判定用パラメータ取得部１０５と、未転送データ管理部１０６と、タイマー処理部１０７と、転送データ生成部１０８と、送信処理部１０９と、を備えている。
【００２７】
受信処理部１０１は、通信ノード１００が、他の通信ノードとの間で無線による通信を行い、通信ノード１００との通信範囲内に位置する他の通信ノードが送信したブロードキャスト・パケットの受信を行う。
【００２８】
データ検索部１０２は、通信ノード１００が受信処理部１０１で受信したブロードキャスト・パケットを受け取り、他の通信ノードから、既に同一データを受信しているか否かを、未転送データ管理部１０６内を検索する。
【００２９】
データ検索部１０２は、未転送データ管理部１０６内を検索した結果、
他の通信ノードから同一データを受信済みでない場合には、未転送データ管理部１０６に、
受信したブロードキャスト・パケットと、
ブロードキャスト・パケットの送信元の通信ノードと、ブロードキャスト・パケット受信時の電波強度（又は電波強度から求めた、ブロードキャスト・パケット送信元の通信ノードからの受信距離）等を含む受信状態情報と、
を引き渡して、受信データの保存を依頼すると共に、転送タイマー設定部１０４に対して、転送用タイマー（不図示）の設定を依頼する。
【００３０】
一方、データ検索部１０２は、未転送データ管理部１０６内を検索した結果、他の通信ノードから同一データを受信済みである場合、
受信したブロードキャスト・パケットと、
ブロードキャスト・パケットの送信元の通信ノードと、ブロードキャスト・パケット受信時の電波強度（又は電波強度から求めたブロードキャスト・パケットの送信元の通信ノードからの受信距離）等の受信状態情報と、
を転送範囲拡大判定部１０３へ引き渡し、転送範囲拡大のための、データ転送処理の続行が必要か否かの判断処理を依頼する。
【００３１】
転送範囲拡大判定部１０３は、受信済みデータと同一データを受信したことの通知を、データ検索部１０２より受けると、以前の同一データ受信時に関する受信状態情報取得を転送判定用パラメータ取得部１０５に依頼する。
【００３２】
転送範囲拡大判定部１０３は、
・データ検索部１０２より取得した今回のデータ受信に関する受信状態情報と、
・転送判定用パラメータ取得部１０５経由で取得した、以前の同一データ受信に関する受信状態情報と、
を基に、転送範囲拡大のための転送処理の続行が必要か否かの判断処理を行う。
【００３３】
転送範囲拡大判定部１０３は、転送処理の続行の必要の有無を判断した結果、データ転送処理の続行が不要と判断されれば、転送タイマー設定部１０４を通じて転送用タイマーの停止処理を行う。
【００３４】
転送タイマー設定部１０４は、データ転送の実行開始までの遅延時間を管理する転送用タイマーの設定を行う。転送タイマー設定部１０４は、データ検索部１０２より初めて受信したブロードキャスト・パケットに関しては、受信時の電波強度より求めた、ブロードキャスト・パケット送信元の通信ノードからの受信距離をパラメータとして、該送信元の通信ノードから見て遠くにある通信ノードから先に、タイマーが切れるように（タイムアウトとなるように）、転送用タイマーの設定を行う。
【００３５】
既に同一データ受信済みであり、転送範囲拡大判定部１０３により、転送処理の続行不要との判断通知を受けた場合、転送タイマー設定部１０４は、未転送データ管理部１０６内で管理中の、該当する未送信データの転送用タイマーを停止させる。なお、未送信データが複数ある場合、それぞれに関連付けて複数の転送用タイマーが設けられる。
【００３６】
転送判定用パラメータ取得部１０５は、転送範囲拡大判定部１０３からの依頼を受け、未転送データ管理部１０６から、受信データと同一データに関する受信状態情報（ブロードキャスト・パケット送信元の通信ノードと、受信時の電波強度又はブロードキャスト・パケット送信元の通信ノードとの受信距離）を取得し、転送範囲拡大判定部１０３へ、当該受信状態情報を通知する。
【００３７】
未転送データ管理部１０６は、未転送データと、該当パケット受信時の受信状態情報（送信元、受信時の電波強度又は送信元ノードとの受信距離）と、転送用タイマーとを対応付けて管理を行う。また未転送データ管理部１０６は、データ検索部１０２に対して依頼を受けたデータと同一データが保存されているかの結果応答を行い、転送判定パラメータ取得部１０５に対しては該当するデータの受信状態情報を通知する。
【００３８】
未転送データ管理部１０６内で管理中の転送用タイマーは、タイマー処理部１０７により更新され、転送用タイマーが切れた場合（タイムアウト発生時）には、転送データ生成部１０８に対しては、転送データの生成に必要な情報を通知し、転送処理の実行開始の指示を行う。
【００３９】
タイマー処理部１０７は、一定周期でタイマーを管理し、未転送データ管理部１０６で管理中の未転送データに対応する転送用タイマーの更新処理を行う。タイマー処理部１０７は、転送用タイマーが切れた場合（タイムアウト発生時）には、未転送データ管理部１０６に対して、その旨通知を行う。例えば、転送タイマー設定部１０４で所定のカウント値が設定された転送用タイマーに対して、タイマー処理部１０７は一定周期で、転送用タイマーのカウント値をデクリメントし、転送用タイマーのカウント値が０となった時点で、未転送データ管理部１０６に対して転送用タイマーが切れた旨を通知する。
【００４０】
転送データ生成部１０８は、未転送データ部１０６からの転送処理の実行開始を通知されると、未転送データ管理部１０６から引き渡された未転送データに、受信状態情報を付加して、転送用データを生成し、送信処理部１０９に引き渡して、転送処理を依頼する。
【００４１】
送信処理部１０９は、転送用タイマーが切れて、転送処理の実行時において、転送データ生成部１０８から引き渡された転送用パケットをブロードキャスト転送する。
【００４２】
なお、図１の通信ノード１００（通信装置）における受信処理部１０１と、データ検索部１０２と、転送範囲拡大判定部１０３と、転送タイマー設定部１０４と、転送判定用パラメータ取得部１０５と、未転送データ管理部１０６と、タイマー処理部１０７と、転送データ生成部１０８と、送信処理部１０９の少なくとも１つのユニット（部）又は全てのユニット（部）の処理は、通信ノード１００（通信装置）を構成するコンピュータ（ＣＰＵ、プロセッサ）上で動作するプログラム制御によって実現するようにしてもよいことは勿論である。
【００４３】
図２は、本実施形態において、送受信における通信ノードの位置と転送範囲拡大判定処理で使用するパラメータの関係を示す図である。
【００４４】
図２において、通信ノード１２０、１３０、１４０の構成は、それぞれ図１に示した通信ノード１００と同一である。以下の説明では、図２において、ブロードキャスト・パケットの送信元ノードを通信ノード１２０とし、通信ノード１３０と１４０は双方とも通信ノード１２０から１ホップでの送信可能範囲内に位置しており、通信ノード１２０からの直線距離は通信ノード１３０の方が通信ノード１４０に比べて遠くに位置している。
【００４５】
図３は、本実施形態において、通信ノード１００のブロードキャスト・パケット受信時の動作を示す流れ図である。図１、図２及び図３を参照して、図２の通信ノード１４０におけるブロードキャスト・パケット受信時の動作を説明する。
【００４６】
通信ノード１４０は、受信処理部１０１により、他の通信ノード（通信ノード１２０又は１３０）より送信されたブロードキャスト・パケットを受信する（ステップＳ１００１）。
【００４７】
通信ノード１４０は、ブロードキャスト・パケットの受信時の電波強度等により、受信距離ｄを取得する（ステップＳ１００２）。ここで、受信距離ｄは、通信ノード１２０から送信されたブロードキャスト・パケット受信時においてはｄ２を、通信ノード１３０から転送されたブロードキャスト・パケット受信時においてはｄ３を示す。
【００４８】
通信ノード１４０は、データ検索部１０２により、未転送データ管理部１０６内を検索し、受信パケットと同一データが未転送データとして存在するかを調べる（ステップＳ１００３）。通信ノード１４０において、通信ノード１２０からのパケット受信時は、ステップＳ１００３のＮｏ分岐、通信ノード１３０からのパケット受信時はステップＳ１００３のＹｅｓ分岐である。
【００４９】
通信ノード１４０において、ステップＳ１００３の判定で、通信ノード１２０からの最初の受信時のように、未転送データ中に同一データが存在しない場合（ステップＳ１００３のＮｏ分岐）、データ検索部１０２は、未転送データ管理部１０６に、受信したブロードキャスト・パケットのデータと、受信状態情報（送信元、受信時の電波強度又は送信元ノードとの受信距離）を保存するよう依頼を行い（ステップＳ１００７）、続いて、データ検索部１２０は、転送タイマー設定部１０４に、転送用タイマーの設定依頼を行う（ステップＳ１００８）。
【００５０】
転送用タイマーは、パケットの受信距離ｄをパラメータとして、送信元ノードより遠くにあるノードから先にタイマーが切れるように、タイムアウト時間の設定を行う。
【００５１】
一方、ステップＳ１００３において、通信ノード１２０からのブロードキャスト・パケットを受信した後に、通信ノード１３０からの転送によるブロードキャスト・パケット受信時のように、未転送データ中に同一データが存在する場合（ステップＳ１００３のＹｅｓ分岐）、通信ノード１４０では、転送判定用パラメータ取得部１０５により、未転送データ管理部１０６より該当する未転送データに関する受信状態情報（送信元が１２０、受信距離がｄ２）を取得し、通信ノード１３０から受信したパケットに付加された受信状態情報（送信元が通信ノード１２０、受信距離ｄ１）とステップＳ１００２で取得した受信距離ｄ３とをパラメータとして、角度θを取得する（ステップＳ１００４）。
【００５２】
なお、角度θ（通信ノード１２０と１３０のなす辺（距離ｄ１）と、通信ノード１２０と１４０のなす辺（距離ｄ２）との間の角度）は、通信ノード１２０、１３０、１４０がなす三角形（３辺の長さｄ１、ｄ２、ｄ３）に関する余弦定理に従って次の式（１）により取得できる。
【００５３】
2010206613.tif 000003
【００５４】
通信ノード１４０は、ステップＳ１００４で取得した角度θと受信距離ｄ２を元に、転送範囲拡大判定部１０３により、通信ノード１４０でのデータ転送処理の続行が必要か否かの判定を行う（ステップＳ１００５）。
【００５５】
判定基準の例として、角度θが４５度以上で、且つ、受信距離ｄ２が通信ノードの送信可能距離の５０％以上であれば、データ転送処理の続行が必要であると定める。ただし、これらの判断基準値は、予め各通信ノードに設定するものであるが、値そのものはあくまで一例であり、他の値を設定しても構わない。なお、送信可能距離は、各通信ノードで同一（共通）とする。
【００５６】
通信ノード１４０において、ステップＳ１００５で、転送範囲拡大判定部１０３により、通信ノード１４０での転送処理の続行が不要と判断された場合（ステップＳ１００５のＮｏ）、転送タイマー設定部１０４に、転送用タイマー停止の処理を依頼して、転送処理を中止させる（ステップＳ１００６）。
【００５７】
一方、通信ノード１４０において、転送範囲拡大判定部１０３により、転送処理の続行が必要と判断された場合（ステップＳ１００５のＹｅｓ）、転送用タイマーはそのまま動作させてタイマーが切れた後に転送処理を実行させる。
【００５８】
図４は、通信ノード１００のブロードキャスト・パケット送信時（データ転送時）の動作を示す流れ図である。図１、図２、及び図４を参照し、通信ノード１４０におけるブロードキャスト・パケット送信時（データ転送処理時）の動作を説明する。なお、図２の通信ノード１３０においても転送処理は同様である。
【００５９】
通信ノード１４０に、未転送であり、転送用タイマーが動作中のデータ（未転送データ）が存在するかを確認し（ステップＳ２００１）、該当データが存在しない場合（ステップＳ２００１のＮｏ分岐）、その後の処理は実行しない（転送処理は終了する）。
【００６０】
一方、該当データが存在する場合には（ステップＳ２００１のＹｅｓ分岐）、通信ノード１４０に、転送用タイマーの期間が満了したか否かを確認する（ステップＳ２００２）。
【００６１】
通信ノード１４０において、転送用タイマーがまだ切れていない場合（ステップＳ２００２のＮｏ分岐）、タイマー処理部１０７により、タイマー処理の更新を行い（ステップＳ２００５）、ステップＳ２００１に処理を戻す。
【００６２】
通信ノード１４０において、ステップＳ２００２で、転送用タイマーが切れた場合（ステップＳ２００２のＹｅｓ分岐）、未転送データ管理部１０６より、転送データ生成部１０８に通知が行われ、未転送データに受信状態情報を付加して（ステップＳ２００３）、転送用データを生成する。
【００６３】
通信ノード１４０において、ステップＳ２００３により生成された転送用データは、通信処理部１０９に引き渡され、ブロードキャストによる転送処理を実行する（ステップＳ２００４）。
【００６４】
本実施形態においては、ブロードキャスト・パケットのデータ配送において、パケット受信時の受信ノードにおける受信状態情報（送信元、受信時の電波強度又は送信元ノードとの受信距離等）を、転送データに付加して、ブロードキャスト転送を行い、受信ノード側では、転送パケットに付加されたこれらの受信状態情報と、前に受信した同一データの受信状態情報から得られたパラメータとを基にして、該当するデータの送信、及び転送してきた各ノードの送信範囲と受信ノードの送信範囲との差分領域を判定しているため、パケット受信状態情報取得のための余分な通信トラフィックを必要とせずに、ブロードキャスト転送を実行する通信ノードの数をある程度抑えつつ、転送可能なノードのカバー範囲を拡大可能となる。
【００６５】
＜実施形態２＞
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。本発明の第２の実施形態においては、ブロードキャスト・パケット受信時における転送範囲拡大のためのデータ転送処理実行の要否判定に使用するパラメータ、及び判定方法が、第１の実施形態と相違している。通信ノードの構成は、図１に示した前記第１の実施形態と同じである。
【００６６】
また、ブロードキャスト・パケット送信時（データ転送時）の動作は、図４を参照して説明した第１の実施形態における動作と同じである。
【００６７】
図５は、本実施形態において、図２の通信ノード１４０におけるブロードキャスト・パケット受信時の動作を説明する流れ図である。図５において、図３と同一処理のステップは、同一の参照符号（ステップ番号）が付されている。すなわち、ステップＳ１００３における受信したブロードキャスト・パケットを受信済みパケットから検索するまでの処理、及び、その受信パケットが初めて受信したパケットであった場合の処理（ステップＳ１００３のＮｏ分岐以降）は、前記第１の実施形態における動作と同一である。図５に示すようにステップＳ１０１４、Ｓ１０１５が、図３のステップＳ１００４、Ｓ１００５に置き換えられている。
【００６８】
ステップＳ１００３で、通信ノード１２０からの受信後に通信ノード１３０からの転送での受信時のように、未転送データ中に同一データが存在する場合（ステップＳ１００３のＹｅｓ分岐）、転送判定用パラメータ取得部１０５により未転送データ管理部１０６より該当する未転送データに関する受信状態情報（送信元が通信１２０、受信距離がｄ２）を取得し、ステップＳ１００２で取得した受信距離ｄ３をパラメータとして取得する（ステップＳ１０１４）。
【００６９】
ステップＳ１０１４で取得した受信距離ｄ２とｄ３を基に、転送範囲拡大判定部１０３により、通信ノード１４０での転送処理の続行が必要か否かの判定を行う（ステップＳ１０１５）。
【００７０】
判断基準の例として、受信距離ｄ２とｄ３の両方が通信ノードの送信可能距離の５０％以上であれば転送処理の続行が必要であると定める。ただし、これらの判断基準値は、予め各通信ノードに設定するものであるが、値そのものはあくまで一例であり、他の値を設定してもよいことは勿論である。
【００７１】
ステップＳ１０１５において、通信ノード１４０での転送処理の続行が不要と判断された場合（ステップＳ１０１５のＮｏ）、転送タイマー設定部１０４に転送用タイマー停止の処理を依頼して、転送処理を中止させる（ステップＳ１００６）。
【００７２】
一方、転送処理の続行が必要と判断された場合（ステップＳ１０１５のＹｅｓ）、転送用タイマーはそのまま動作させてタイマーが切れた後に転送処理を実行させる。
【００７３】
＜一具体例＞
次に、図６を参照して、本発明を適用した具体的な実施例を説明する。図６において、各通信ノード２００、２０１、２０２、２０３、２０４、２０５、２０６、２０７は、図１乃至図４を参照して説明した前記第１の実施形態の通信ノードによって構成されている。図６に示すように、各通信ノード２００、２０１、２０２、２０３、２０４、２０５、２０６、２０７が同じ無線方式で通信を行っている。この領域での無線通信の伝搬特性は均一であり、各通信ノードの送信可能な最大距離は同一であるとする。
【００７４】
また、各通信ノードの位置関係は、図６に示すとおりであり、
通信ノード２００の１ホップでの通信可能な領域が２１０、
通信ノード２０１の１ホップでの通信可能な領域が２１１、
通信ノード２０２の１ホップでの通信可能な領域が２１２
であるものとする。
【００７５】
つまり、通信ノード２０１、２０２、２０３は、通信ノード２００から直接通信（１ホップでの通信）が可能である。通信ノード２００、２０２、２０４、２０５は、通信ノード２０１から直接通信（１ホップでの通信）が可能である。通信ノード２００、２０１、２０６、２０７は、通信ノード２０２から直接通信（１ホップでの通信）が可能である。
【００７６】
通信ノード２００が、マルチホップ通信を利用して、ブロードキャスト・パケットを送信する場合の転送動作について説明する。
【００７７】
通信ノード２００から送信されたブロードキャスト・パケットを、通信ノード２０１と２０２と２０３がそれぞれ受信する。
【００７８】
通信ノード２０１、２０２、２０３は、パケット受信時の電波強度に基づき、送信元（通信ノード２００）からの距離を算出し、データを未転送データ管理部１０６に保存すると共に、転送用タイマーの設定を行う。
【００７９】
図６を参照すると、通信ノード２０１は、通信ノード２０２に比べて、通信ノード２００から遠くに位置しているので（ｄ１＞ｄ２）、通信ノード２０１の転送用タイマーは、通信ノード２０２の転送用タイマーよりも先に切れる（タイムアウトする）ように設定される。
【００８０】
次に、通信ノード２０１は、通信ノード２０２より先にブロードキャストによる転送処理を実行する。ここで、通信ノード２０１が転送するパケットには、送信元が通信ノード２００であり、パケットの受信距離がｄ１であるという受信状態情報が、転送データ生成部１０８（図１参照）により付加される。
【００８１】
通信ノード２０１から転送されたパケットは、通信ノード２０２と２０４と２０５がそれぞれ受信する。
【００８２】
通信ノード２０２は、通信ノード２０１からの転送パケットを受信すると、通信ノード２０１からの受信距離ｄ３を同様に受信時の電波強度より求める。
【００８３】
次に、通信ノード２０２は、図１に示したデータ検索部１０２により未転送データ管理部１０６に保存されている未転送データを検索し、通信ノード２００から受信したデータと同一データであると判定する。
【００８４】
通信ノード２０２は、
未転送データ管理部１０６に保存されている受信距離ｄ２と、
通信ノード２０１からの転送パケットに付加された、通信ノード２００と２０１間の受信距離ｄ１（通信ノード２０１でのパケット受信時の該パケットの送信元モード２００との受信距離ｄ１）と、
通信ノード２０１からの転送パケット受信時に取得した受信距離ｄ３と、
を基に、通信ノード２００と２０１がなす辺と、通信ノード２００と２０２の辺の角度θを、式（１）により算出する。
【００８５】
通信ノード２０２において、角度θと受信距離ｄ２を基にして、予め設定されている判断基準、例えば、
角度θが４５度以上であり、且つ、
受信距離ｄ２が通信ノードの送信可能距離の５０％以上である、
という基準を満たすか否かを、転送範囲拡大判定部１０３により判定する。
【００８６】
図６における各ノードの位置関係の場合、この判断基準を満たすものであり、通信ノード２０２は、データ転送処理を続行する。すなわち、通信ノード２０２は、転送用タイマー（受信パケットのデータと同一データの未転送データに対応する転送用タイマー）を中止しない。
【００８７】
このため、通信ノード２０２では、転送用タイマーが切れることにより、データ転送処理を実行し、通信ノード２０６と２０７に対してのブロードキャスト転送が行われ、効率的に転送可能なノードのカバー範囲を拡大することが可能になる。
【産業上の利用可能性】
【００８８】
本発明によれば、無線アドホックネットワーク環境におけるルーティングプロトコルの制御パケットの配信といった用途に適用できる。また、特定エリア内における地域情報の広告配信といった用途にも適用できる。
【００８９】
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００９０】
１００，１２０，１３０，１４０，２００〜２０７，３００〜３０４，４００〜４０６    通信ノード
１０１    受信処理部
１０２    データ検索部
１０３    転送範囲拡大判定部
１０４    転送タイマー設定部
１０５    転送判定用パラメータ取得部
１０６    未転送データ管理部
１０７    タイマー処理部
１０８    転送データ生成部
１０９    送信処理部
２１０〜２１２，４１０〜４１３    １ホップでの通信可能範囲
【図１】
2010206613.tif 000004
【図２】
2010206613.tif 000005
【図３】
2010206613.tif 000006
【図４】
2010206613.tif 000007
【図５】
2010206613.tif 000008
【図６】
2010206613.tif 000009
【図７】
2010206613.tif 000010
【図８】
2010206613.tif 000011