![]() ![]() ![]() | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
y_suzuki | 投稿日時: 2016/12/2 3:17 |
新米 ![]() ![]() 登録日: 2016/11/30 居住地: 投稿: 5 |
ZigBeeでの隣接ノードへの通信について こんにちは.お世話になります.
どちらのフォーラムに投稿するのが妥当か判断に迷い,こちらに投稿いたしました. 研究でQualNet6.1のsensor_networksライブラリを使用し,ZigBeeのシミュレーションを行っております. ZigBeeアプリケーションにおいて,あるノードのAPP層から全ての隣接ノードのAPP層へ, つまり無線が届いて1ホップで通信できるノード全体に同一の内容を送信したいと考えております. 現在予定しているシナリオでは,送信ノードが隣接ノード全体に向けて送信するにあたり, ・ブロードキャスト半径を1としてZigBeeブロードキャストを行う ・近隣ノード一覧を何らかの形で取得し,それぞれのノードへ向けたユニキャストを複数回行う などのいずれでも構わないものとなっております. ZigBeeの設定を確認しましたところブロードキャストに関する設定は無いようでしたため, 目的を達成するための機能を直接実装することを考えております. 今回のような場合ですとどのような方針でソースコードのどの辺りに手を付けて行くのが良さそうか等,アドバイスいただけると幸いです. 近隣ノードに該当する配列を取得できたらと解決するのではないかと考え,まずはデバッガを交えつつネットワーク層を中心として 該当する部分を探したのですが適切なものを見つけられなかったため,相談をしたくこちらにてお伺いいたしました. よろしくお願いいたします. |
hiro | 投稿日時: 2016/12/2 17:40 |
長老 ![]() ![]() 登録日: 2005/7/16 居住地: 投稿: 452 |
Re: ZigBeeでの隣接ノードへの通信について 念のため、私の理解が正しいのか確認です。
> ZigBeeアプリケーションにおいて,あるノードのAPP層 > から全ての隣接ノードのAPP層へ, > つまり無線が届いて1ホップで通信できるノード全体に > 同一の内容を送信したいと考えております. この『ZigBeeアプリケーション』は、ZIGBEEAPPのこと でしょうか。それとも普通のCBRのようなもの? ホップ数って本来は中継する数なので、 送信側Node ⇒ 中継Node ⇒ 受信側Node という理解でよい? それとも、隣接なので 送信側Node ⇒ 受信側Node という理解でよい? > 現在予定しているシナリオでは,送信ノードが隣接ノー > ド全体に向けて送信するにあたり, > ・ブロードキャスト半径を1としてZigBeeブロードキャ > ストを行う ここでのZigBeeとはZigBeeのPHY/MACのこと? > ・近隣ノード一覧を何らかの形で取得し,それぞれのノ > ードへ向けたユニキャストを複数回行う > などのいずれでも構わないものとなっております. これは、自分が(送信側が)自分の隣接を調べるということ? まずここまでで、気がついたこと。 Nodeが移動するとややこしいのでまずNode固定で考えます。 Nodeが移動するとさっきは届いたのに、今度は届かない ということがありうるからです。もちろんその逆も。 実際には、Node固定でも届くか届かないギリギリの状態だと 確実に届くとことは保証できないです。 ということで、 送信側が受信側に必ず届くという保証は実際に通信して 見ないとわからない。確実なのは受信側から届いたよ、 と返事をもらうことですが、それは考えてないですよね。 そうすると、 実際のアプリケーション送信を行う前に何らかの ルーティングプロトコルによりルーティングが 確立しているという前提でよければ、 ルーティング情報を参照する方法が考えられます。 ルーティングプロトコルがめんどくさい情報交換を やってくれるから。 一旦、ここまでです。 |
y_suzuki | 投稿日時: 2016/12/3 12:49 |
新米 ![]() ![]() 登録日: 2016/11/30 居住地: 投稿: 5 |
Re: ZigBeeでの隣接ノードへの通信について hiroさん 返答ありがとうございます.
まず,Nodeについてですが,Nodeは移動を行わないシナリオであり, Node固定として考えていただいて構わないものとなっています. > この『ZigBeeアプリケーション』は、ZIGBEEAPPのこと > でしょうか。それとも普通のCBRのようなもの? ZigBeeの1つのネットワークのみで構成されたシナリオの事を 「ZigBeeアプリケーション」と表記したというものでした. 文意が定まりづらい表現でした...すみません. > ホップ数って本来は中継する数なので、 > 送信側Node ⇒ 中継Node ⇒ 受信側Node という理解でよい? > それとも、隣接なので > 送信側Node ⇒ 受信側Node という理解でよい? 隣接の方が私の意図していたものでした. 用語を正しく使用できておりませんでした. ありがとうございますm(_ _)m >> 現在予定しているシナリオでは,送信ノードが隣接ノー >> ド全体に向けて送信するにあたり, >> ・ブロードキャスト半径を1としてZigBeeブロードキャ >> ストを行う > ここでのZigBeeとはZigBeeのPHY/MACのこと? ZigBeeでのブロードキャストを行う,という意図で「ZigBeeブロードキャスト」と記載したものでした. ブロードキャスト半径などの取り扱いを含めるとブロードキャストは ZigBeeのネットワーク層まで関与があるため, レイヤとしてはネットワーク層から物理層までということになるように思います. >> ・近隣ノード一覧を何らかの形で取得し,それぞれのノ >> ードへ向けたユニキャストを複数回行う >> などのいずれでも構わないものとなっております. > これは、自分が(送信側が)自分の隣接を調べるということ? はい.送信側が隣接を調べ,それぞれに個別に送信していく,というイメージで間違えありません. 例えば,hiroさんが最後に提案してくださった方法はこちらに該当するものだと思います. > そうすると、 > 実際のアプリケーション送信を行う前に何らかの > ルーティングプロトコルによりルーティングが > 確立しているという前提でよければ、 > ルーティング情報を参照する方法が考えられます。 > ルーティングプロトコルがめんどくさい情報交換を > やってくれるから。 AODVをルーティングプロトコルとして使用しておりますため,今回の場合ならば 予め隣接ノードに送信を行いたいノードが(極論ですが)全ノードへのルーティングを確立しておけば, AODVのルーティング情報を参照することで中継無しで届けられるノードの 一覧が手に入りそうですね...全く思いつきませんでした. 実装量としましてもシンプルにできるものに感じます.ありがとうございます. |
hiro | 投稿日時: 2016/12/3 17:31 |
長老 ![]() ![]() 登録日: 2005/7/16 居住地: 投稿: 452 |
Re: ZigBeeでの隣接ノードへの通信について いわゆるルーティングテーブル情報ですが、
QualNetでは ./libraries/developer/src/network_ip.h にある、 NetworkForwardingTable を使うことが多いです。 ただAODVの場合は自前で ./libraries/wireless/src/routing_aodv.h にある、 AodvRoutingTable を使っているので、ご注意。 試してはいませんが、 ./libraries/wireless/src/routing_aodv.cpp にある、 #define AODV_DEBUG_ROUTE_TABLE 0 を1にすると、情報を把握しやすいかもしれません。 またあえて1にしなくても、 AODV_DEBUG_ROUTE_TABLE を参照している関数をよく見ると ヒントになるかもしれません。 |
y_suzuki | 投稿日時: 2016/12/4 18:43 |
新米 ![]() ![]() 登録日: 2016/11/30 居住地: 投稿: 5 |
Re: ZigBeeでの隣接ノードへの通信について hiroさん
具体的な部分まで回答していただき,ありがとうございます! 早速試してみたいと思います. |
Sekiguchi | 投稿日時: 2016/12/5 16:05 |
新米 ![]() ![]() 登録日: 2006/4/11 居住地: 投稿: 10 |
Re: ZigBeeでの隣接ノードへの通信について こんにちは
802.15.4をnon beaconモード(BO=SO=15)で動かしているとして、 AODVでルートが確立できているということは Route Requestがbroadcastされているということ。 Route Requestは転送されますが、転送しなければ 1hop のみの broadcast。 ・・・もしかしたら、broadcastアプリを作れば普通に 1hopブロードキャストアプリが動いたりしませんか? # AODVのテーブル見て隣接見つけてUnicast通信、というのが問題というわけではないですが。 |
y_suzuki | 投稿日時: 2016/12/15 1:23 |
新米 ![]() ![]() 登録日: 2016/11/30 居住地: 投稿: 5 |
Re: ZigBeeでの隣接ノードへの通信について Sekiguchiさん
返信遅れてしまい大変申し訳ありません… AODVルーティングの過程でbroadcastをしている以上, QualNetのプログラム内にbroadcastに関する 実装があるのは確かですよね. (今回の場合はとりあえずどちらでも大丈夫, という状況でしたが)unicastよりもbroadcastの方が 現実的なシチュエーションでしたため参考になります. 次のステップとして調査できればと思います. ありがとうございます. |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |