(57)【要約】【課題】ネットワーク負荷を考慮した上で、すべてのノード装置にデータが届いたか否かをより簡単に確認することができ、より信頼性の高い通信を提供する。【解決手段】第１の本発明の通信装置は、ネットワークを構成する複数のノード装置に対して１又は複数の同一データを送信する通信装置において、複数のノード装置に各同一データを送信する１対多通信手段と、複数のノード装置のうち各同一データ転送に係る１又は複数の末端ノード装置に関する情報を記憶する末端ノード装置情報記憶手段と、各末端ノード装置から受信情報を収集する受信情報収集手段と、末端ノード装置情報記憶手段の末端ノード装置情報を参照し、末端ノード装置のすべてから受信情報を受け取ることにより、ネットワークを構成するすべてのノード装置も各同一データを受信したものとする末端ノード装置調査手段とを備えることを特徴とする。【選択図】      図１
2006135912.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを構成する複数のノード装置に対して１又は複数の同一データを送信する通信装置において、
上記複数のノード装置に上記各同一データを送信する１対多通信手段と、
上記複数のノード装置のうち上記各同一データ転送に係る１又は複数の末端ノード装置に関する情報を記憶する末端ノード装置情報記憶手段と、
上記各末端ノード装置から受信情報を収集する受信情報収集手段と、
上記末端ノード装置情報記憶手段の末端ノード装置情報を参照し、上記末端ノード装置のすべてから受信情報を受け取ることにより、上記ネットワークを構成するすべての上記ノード装置も上記各同一データを受信したものとする末端ノード装置調査手段と
を備えることを特徴とする通信装置。
【請求項２】
上記受信情報収集手段は、上記各末端ノード装置と個別通信により上記受信情報を収集することを特徴とする請求項１に記載の通信装置。
【請求項３】
上記末端ノード装置情報記憶手段は、ネットワーク構築時に決定した末端ノード装置から受信した末端ノード装置情報を記憶することを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
ネットワークを構成する複数のノード装置に１又は複数の同一データを送信する通信装置から、上記データを受信するノード装置において、
上記通信装置が送信したデータを受信するデータ通信手段と、
少なくとも当該ノード装置がデータ転送に係る末端ノード装置である場合に、上記データ通信手段によるデータ受信をしたとき、上記通信装置に受信情報を送信する受信情報送信手段と
を備えることを特徴とするノード装置。
【請求項５】
上記受信情報送信手段は、上記データ通信手段を監視し、上記データ通信手段がデータ転送しないとき、当該ノード装置が上記末端ノード装置であると判断することを特徴とする請求項４に記載のノード装置。
【請求項６】
通信装置と、複数のノード装置とを備え、上記通信装置が上記複数のノード装置に対して１又は複数の同一データを送信するネットワークシステムにおいて、
上記通信装置が、請求項１〜３のいずれかに記載の通信装置に対応し、上記ノード装置が、請求項４又は５に記載のノード装置に対応することを特徴とするネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、ノード装置及びネットワークシステムに関し、例えば、１対多通信を実現するネットワークシステム及びそのネットワークを構成する装置に適用し得る。
【背景技術】
【０００２】
近年、自然環境やビルなどの環境測定、人物観察等を行う手法として、センサネットワークが研究されている。
【０００３】
センサネットワークとは、センサ機能と無線通信機能を持った小さなデバイス（以下、ノード）を測定場所に多数設置し、これらノードからのセンサ情報を収集することで、環境測定、人物観察等を行なうネットワーク技術である。
【０００４】
センサネットワークにおいて、各ノードは、アドホックネットワークを形成させ、無線マルチホップ通信を利用することで、センシングしたデータをネットワーク内の他ノードに中継しあい、最終的にデータ収集するサーバ側に与えるようにしている。
【０００５】
ところで、センサネットワークにおいて、サーバが、マルチホップ通信を利用して各ノードにデータをブロードキャストする際、データ受信した各ノードはサーバに対してＡＣＫを返信しない。これは、センサネットワークを構成するノードの数は非常に大量であるので、サーバ側がすべてのノードからＡＣＫを受信することは負担が大きすぎるためすべてを受信しきれないからである。
【０００６】
しかし、ＡＣＫの返信がないと、すべてのノードにデータが届いたか否かを確認することができず、例えば無線リンクの通信環境が悪い場合にはノードに対してまったくデータが届かないことになる。
【０００７】
この問題を解決するために、例えば、特許文献１に示すようなＴＣＰなどの信頼性の高いトランスポートプロトコルを用いて、サーバからノード１つ１つに対して個別にデータ通信を行なう方法などがある。
【０００８】
特許文献１は、ＴＣＰプロトコルをアドホックネットワークに適用した場合の通信技術が開示されている。具体的に、送信局は、データ受信した受信局からの確認応答信号（ＡＣＫ）の受信を、所定のＡＣＫ受信待機時間（タイムアウト時間）をもって確認することで確実なデータ送信を保証しているが、通信経路の断絶により通信がうまくいかなかった場合に、特許文献１では、ネットワーク輻輳を軽減して伝送特性の劣化防止のために、通信局が、自局を通過する通信量に応じてタイムアウト時間を設定する技術が開示されている。
【０００９】
【特許文献１】特開２００４−１５７４６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、ノード１つ１つに対してＴＣＰ通信をおこなうと、センサネットワークのようにノード数が非常に多量である場合は、すべてのノードにデータを送信し終わるまでに時間が非常にかかるので現実的ではない。
【００１１】
また、マルチホップ通信方式などを採用したブロードキャストの場合、データを転々と転送していくことによりネットワークシステム内の全ノードにデータを行き渡らせるものである。
【００１２】
そのため、１対多通信において、ネットワーク負荷を考慮した上で、データ転送の性質を利用して、すべての通信装置（ノード）にデータが届いたか否かをより簡単に確認することができ、より信頼性の高い通信を提供し得る通信装置及びネットワークシステムが求められている。
【課題を解決するための手段】
【００１３】
かかる課題を解決するために、第１の本発明の通信装置は、ネットワークを構成する複数のノード装置に対して１又は複数の同一データを送信する通信装置において、（１）複数のノード装置に各同一データを送信する１対多通信手段と、（２）複数のノード装置のうち各同一データ転送に係る１又は複数の末端ノード装置に関する情報を記憶する末端ノード装置情報記憶手段と、（３）各末端ノード装置から受信情報を収集する受信情報収集手段と、（４）末端ノード装置情報記憶手段の末端ノード装置情報を参照し、末端ノード装置のすべてから受信情報を受け取ることにより、ネットワークを構成するすべてのノード装置も各同一データを受信したものとする末端ノード装置調査手段とを備えることを特徴とする。
【００１４】
また、第２の本発明のノード装置は、ネットワークを構成する複数のノード装置に１又は複数の同一データを送信する通信装置から、データを受信するノード装置において、（１）通信装置が送信したデータを受信するデータ通信手段と、（２）少なくとも当該ノード装置がデータ転送に係る末端ノード装置である場合に、データ通信手段によるデータ受信をしたとき、通信装置に受信情報を送信する受信情報送信手段とを備えることを特徴とする。
【００１５】
さらに、第３の本発明のネットワークシステムは、通信装置と、複数のノード装置とを備え、通信装置が複数のノード装置に対して１又は複数の同一データを送信するネットワークシステムにおいて、通信装置が、第１の本発明の通信装置に対応し、ノード装置が、第２の本発明のノード装置に対応することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、１対多通信において、ネットワーク負荷を考慮した上で、データ転送の性質を利用して、すべての通信装置（ノード）にデータが届いたか否かをより簡単に確認することができ、より信頼性の高い通信できる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の通信装置、ノード装置及びネットワークシステムの実施形態について図面を参照して説明する。
【００１８】
（Ａ）実施形態
本実施形態は、無線マルチホップ通信方式を用いて全てのノードにブロードキャストするアドホックネットワークに、本発明の通信装置、ノード装置及びネットワークシステムを適用した場合について説明する。なお、マルチキャスト通信採用のブロードキャストに限定されずＦｌｏｏｄｉｎｇも適用し得る。
【００１９】
（Ａ−１）実施形態の構成
図１は、本実施形態のネットワークシステムの概略的なイメージ構成図である。図１において、本実施形態のネットワークシステム１は、サーバ２０１と、５個のノード３０１（３０１Ａ〜３０１Ｅ）とを備えるものとする。勿論、ノード３０１の数は特に限定されない。
【００２０】
サーバ２０１は、ネットワークシステム１を管理する通信装置であり、ネットワークシステム１を構成する全てのノード３０１のアドレス情報を管理しているものである。また、サーバ２０１は、マルチホップ通信を利用して各ノード３０１Ａ〜３０１Ｅにデータをブロードキャストで送信した際に、ネットワークシステム１を構成する末端ノードからのノード情報に基づいてノード３０１にデータが届いたか否かを判断するものである。
【００２１】
つまり、サーバ２０１は、末端ノードにデータが届いたことで、データを中継するシステム１内の他のノード３０１にもデータが行き渡っているとものと判断する。
【００２２】
ここで、図１において、末端ノードはノード３０１Ｃ〜３０１Ｅが該当する。従って、本実施形態では、サーバ２０１は、ノード３０１Ｃ〜３０１Ｅのノード情報に基づいてデータが届いたことを確認する。
【００２３】
また、サーバ２０１は、データ受信していないノード３０１Ａ〜３０１Ｅの存在を確認した場合、そのデータ受信していないノード３０１Ａ〜３０１Ｅに対して、受信していないデータを送信するものである。なお、このデータ再送する場合、例えばＰ２Ｐ（ピア・ツゥー・ピア）通信で個別に送信する方法を適用してもよいし、又はブロードキャスト送信でデータを再送してもよい。
【００２４】
また、各ノード３０１は、データ転送の際、自装置のアドレス情報を付与したデータを転送する。そして、末端ノード３０１Ｃ〜３０１Ｅは、中継ノードのアドレス情報に応じた経路情報をサーバ２０１に与えることで、サーバ２０１は、どのノード３０１にデータが届き、どのノード３０１にデータが届いていないかを判断することができるのでデータ再送が容易になる。
【００２５】
図２は、サーバ２０１は、末端ノード情報調査部２０２、ブロードキャスト送信部２０３、データ記憶部２０４を少なくとも備える。
【００２６】
末端ノード情報調査部２０２は、末端ノード３０１Ｃ〜３０１Ｅに関する情報を管理しており、末端ノード３０１Ｃ〜３０１Ｅからノード情報を受信し、その受信したノード情報に基づいて、末端ノード３０１Ｃ〜３０１Ｅにデータが届いたか否かを調査するものである。
【００２７】
ここで、末端ノード情報調査部２０２がノード情報を収集する方法は、種々考えられるが、例えば次のような方法が考えられる。
【００２８】
例えば、末端ノード情報調査部２０２に末端ノード３０１Ｃ〜３０１Ｅのアドレス情報があらかじめ入力されており、各末端ノード３０１Ｃ〜３０１ＥとＰ２Ｐ通信により個別にノード情報を収集する方法がある。この場合、末端ノード情報調査部２０２は、Ｐ２Ｐ通信機能を備えることが必要であり、また末端ノード３０１Ｃ〜３０１ＥもＰ２Ｐ通信機能を備える必要がある。
【００２９】
また例えば、ネットワークツリー構築時に、末端ノード３０１Ｃ〜３０１Ｅがサーバ２０１の末端ノード情報調査部２０２に対して、自装置が末端ノードであることを示す情報を通知し、サーバ２０１がその通知情報に基づいて末端ノード３０１Ｃ〜３０１Ｅを自動的に設定し、各末端ノード３０１Ｃ〜３０１ＥとＰ２Ｐ通信により個別にノード情報を収集する方法がある。この場合も、末端ノード情報調査部２０２は、Ｐ２Ｐ通信機能を備えることが必要であり、また末端ノード３０１Ｃ〜３０１ＥもＰ２Ｐ通信機能を備える必要がある。
【００３０】
さらに例えば、末端ノード情報調査部２０２と予め決められた末端ノード３０１Ｃ〜Ｅとが有線接続し、有線通信によりノード情報を収集する方法がある。
【００３１】
図２に戻り、ブロードキャスト送信部２０３は、データ記憶部２０４に記憶されているデータを読み出し、そのデータをシステム１内のノードに対してブロードキャストで送信するものである。
【００３２】
データ記憶部２０４は、送信データを記憶する記憶領域であり、ブロードキャスト送信部２０３からの要求に応じた送信データを与えるものである。
【００３３】
次に、ノード３０１（３０１Ａ〜３０１Ｅ）について説明する。図３はノード３０１の内部構成を示す機能ブロック図である。
【００３４】
図３に示すように、ノード３０１は、ノード情報送信部３０２、データ転送部３０３、ブロードキャストデータ受信部３０４、データ記憶部３０５を少なくとも備える。
【００３５】
ノード情報送信部３０２は、データ転送部３０３と接続し、データ転送部３０３の動作に基づいて自装置が末端ノードであるか否かを判断し、末端ノードであると判断したときに、正しくデータ受信できたか否かを示すノード情報を所定の通信方法によりサーバ２０１に送信するものである。ここで、ノード情報をサーバ２０１に送信する方法は、上述したノード情報の収集方法に応じた通信方法が採用される。また、自装置が末端ノードであるか否かの判定は、例えば、ノード情報送信部３０２がデータ転送部３０３の転送動作を監視することで判定する方法がある。また、ノード情報とは、少なくとも当該ノード（つまり末端ノード）がデータを正しく受信した旨を知らせることができる情報である。
【００３６】
また、ノード情報送信部３０２が、正しくデータ受信できているか否かを判断する方法として、次のような方法が考えられる。
【００３７】
例えば、ブロードキャストデータが、ある大きさ単位に分割され、単位毎にシーケンスナンバが付与されたものとする場合、そのシーケンス番号に基づいて欠落データがあるか否かを判断することで、正しくデータを受信できているか否かを判断する方法がある。
【００３８】
また例えば、受信したデータに基づいてデータダイジェストを生成し、そのデータダイジェストと、サーバ２０１内部のデータダイジェストとを比較し、同じなら正しくデータが届いているとする方法がある。
【００３９】
データ転送部３０３は、ブロードキャストデータ受信部３０４のデータ受信時の動作により自ノード３０１が末端ノードであるか否かを判断し、末端ノードでないと判断したときに、データを転送するものである。また、データ転送部３０３は、自ノード３０１が末端ノードであると判断したときに、その旨をノード情報送信部３０２に通知するものである。
【００４０】
また、データ転送部３０３として、例えば、ＩＥＥＥ８０２．１５．４準拠のＺｉｇＢｅｅ（登録商標）などの近距離無線通信装置を適用できる。例えば、データ転送部３０２にＺｉｇＢｅｅ（登録商標）を用いた場合に、自ノードが末端ノードであるか否かの判定として次のような方法が考えられる。
【００４１】
例えば、ＺｉｇＢｅｅ（登録商標）の通信プロトコルはツリー構造マルチホップ通信プロトコルである。ＺｉｇＢｅｅ（登録商標）のプロトコルでは、データ転送部３０３が、ネットワークに参加している全ノード３０１は、ブロードキャスト時のデータ転送先として、１ＨＯＰ内（自ノード自身が無線通信可能な範囲内）の下流ノード（例えば、図１において、ノード３０１Ｂに対しての下流ノードはノード３０１Ｄ及び３０１Ｅとなる）のアドレス情報を管理しており、データ転送部３０３にアドレス情報が無ければ自ノードを末端ノードと判断する方法がある。
【００４２】
ブロードキャストデータ受信部３０４は、到来したブロードキャストデータを受信し、その受信したブロードキャストデータをデータ記憶部３０５に記憶させるものである。
【００４３】
データ記憶部３０５は、ブロードキャスト受信部３０４から与えられたブロードキャストデータを記憶する記憶領域である。
【００４４】
（Ａ−２）実施形態の動作
以下、本実施形態のネットワークシステムの動作について図面を参照して説明する。
【００４５】
図４は、サーバ２０１がマルチホップ通信方式を採用したブロードキャストをする際の動作フローチャートである。
【００４６】
図４において、まず、データ記憶部２０４の送信データがブロードキャスト送信部２０３により読み出され、ブロードキャスト送信部２０３がブロードキャストでデータ送信する（Ｓ１）。
【００４７】
ブロードキャストによりデータが送信されると、末端ノード情報調査部２０２は、末端ノード３０１Ｃ〜Ｅに対しノード情報を要求して、各末端ノード３０１Ｃ〜Ｅからノード情報を収集する（Ｓ２）。
【００４８】
末端ノード情報調査部２０２に末端ノードのノード情報が与えられると、末端ノード情報調査部２０２は、各ノード情報に基づいて各末端ノード３０１Ｃ〜３０１Ｅに正しくデータが届いているか否かを調査する（Ｓ３）。
【００４９】
そして、全ての末端ノード３０１Ｃ〜３０１Ｅについて、正しくデータが届いている場合、ネットワーク全体のノード３０１にデータが正しく届いているものと判断する（Ｓ４）。
【００５０】
一方、いずれかの末端ノード３０１Ｃ〜３０１Ｅについて正しくデータが届いていない場合、ネットワーク上でのいずれかのノードにデータが正しくデータが届いていないと判断することができる（Ｓ４）。
【００５１】
この場合、サーバ２０１は、末端ノード３０１Ｃ〜３０１Ｅからのノード情報に基づいてデータが届いていないノード３０１に対してデータを再送する（Ｓ５）。
【００５２】
（Ａ−３）実施形態の効果
以上、本実施形態によれば、サーバ２０１はブロードキャストをした後、末端ノードの情報を調べるだけで、ネットワークシステム全体にデータが届いているかどうかを確認することができる。
【００５３】
（Ｂ）他の実施形態
（Ｂ−１）上述した実施形態では、末端ノードからのノード情報によりネットワーク全体にデータが届いているか否かを判断する方法を中心に説明したが、次に、サーバ２０１による判断結果に基づくデータ再送方法について説明する。
【００５４】
例えば、各ノード３０１は、ブロードキャストデータを転送する際、自ノード３０１の固有情報をブロードキャストデータに付与して転送するようにする。
【００５５】
これにより、末端ノードは、末端ノードに到達するまでの経路情報を含むブロードキャストデータを受信することになるので、どのノードを中継してきたかを把握することができる。
【００５６】
そして、サーバ２０１は、この経路情報を末端ノードから収集し、その経路情報に含まれているノード情報と、サーバ２０１が予め備えるネットワークを構成するノード情報とを比較することで、どのノードがどのデータを受信していないかを解析することができる。
【００５７】
これにより、サーバ２０１は、データ受信していないノードに対して、対応するデータを個別に再送するようにする。これにより、効率的にデータ再送することができるので信頼性を高めることができ、かつ、ネットワーク上の通信量を軽減することができる。
【００５８】
（Ｂ−２）上述した実施形態では、末端ノードは、ノード情報を送信するものとして説明したが、ＡＣＫ（データ受信確認応答信号）をサーバ２０１に返信するものとしてもよい。これにより、サーバ２０１は、ＡＣＫを末端ノードのみから受信することになるので、ネットワーク上の通信量を軽減することができ、かつ末端ノードのみからのＡＣＫによりネットワーク全体のノードにデータが行き渡ったかを判断することができる。
【００５９】
なお、特許請求の範囲に記載の受信情報は、ノード情報だけでなくＡＣＫも含むものとする。
【００６０】
（Ｂ−３）上述した実施形態において、サーバ２０１のブロードキャスト送信部２０３、末端ノード情報調査部２０２を別の構成として説明したが、同じ通信手段としてもよい。同様に、ノード３０１のノード情報送信部３０２、データ転送部３０３、ブロードキャストデータ受信部３０４を別の構成として説明したが、同じ通信手段としもよい。
【００６１】
（Ｂ−４）上述した実施形態で説明したネットワークシステムは、センサネットワークシステムに適用可能である。従って、実施形態における各ノードは、図示しないが、所定情報を観測または感知するセンサ機能を備え、またそのデータをマルチホップ通信でサーバ側に送信する送信機能を備えるものである。また、サーバは、ノードから受信したセンサ情報の収集機能などを備えるものである。
【００６２】
（Ｂ−５）上述した実施形態では、ブロードキャスト通信するネットワークシステムに適用した場合について説明したが、１対多通信であれば、例えば、他の特定装置と通信するマルチキャスト通信をするシステムにも適用可能である。
【図面の簡単な説明】
【００６３】
【図１】実施形態のネットワークシステムの全体構成図である。
【図２】実施形態のサーバの内部構成を示す機能ブロック図である。
【図３】実施形態のノードの内部構成を示す機能ブロック図である。
【図４】実施形態のサーバの動作フローチャートである。
【図５】実施形態のサーバとノードとの間のシーケンス図である。
【符号の説明】
【００６４】
１…ネットワークシステム、
２０１…サーバ、２０２…末端ノード情報調査部、２０３…ブロードキャスト送信部、２０４…データ記憶部、
３０１…ノード、３０２…ノード情報送信部、３０３…データ転送部、３０４…ブロードキャストデータ受信部、３０５…データ記憶部。
【図１】
2006135912.tif 000003
【図２】
2006135912.tif 000004
【図３】
2006135912.tif 000005
【図４】
2006135912.tif 000006
【図５】
2006135912.tif 000007