Japan QualNet Community Forums Japan QualNet Community Forums
Welcome Guest 
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
検索
メインメニュー
アクセスカウンター
2024/04/29:4/4
2024/04/28:16/23

2024/02/29より289/1375
人気モジュール
No.1: フォーラム 13
日曜日からの合計
人気Browser&OS
No.1:巡回ロボット20

No.1:どっかの巡回ロボット20

日曜日からの合計
メイン
   Miscellaneous: Architecture & Generic Development Questions
     ZigBeeでの隣接ノードへの通信について
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
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の方が
現実的なシチュエーションでしたため参考になります.
次のステップとして調査できればと思います.

ありがとうございます.
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ
Copyright c KOZO KEIKAKU ENGINEERING Inc. All Rights Reserved.
XOOPS Cube PROJECT