ZigBeeネットワークでの自動リンク障害検出方法


8

複数のノードを含むZigBeeメッシュネットワークがあるとします。ルーターノードを介して各ノード間に確立されたリンクがあります。

ノードAが初めてノードZにメッセージを送信する場合、ノードAはルート探索を実行して、メッセージを転送する中間ノードを決定する必要があります。

ここでは、ルート検出メカニズムについて説明します。それによると、最もコストの低いルートがノードのルーティングテーブルに格納されます。

これまでのところすべてが問題なく、すべてのノードは何をすべきかを知っており、お互いに到達できます。


これで、ノードAノードBの間の中間ノードが故障し、現在保存されているルートが使用できなくなります。

この場合はどうなりますか?ノードAがメッセージを送信しようとすると、リンクが途切れて行き詰まってしまうところまで移動すると思います。ルートの最後のノードは、ノードAによる新しいルートディスカバリをトリガーする障害に関するメッセージを送り返します。その後、新しいルートが見つかり、すべてが再び正常になります。

一般的には問題ありません(私が正しかった場合)。ネットワークが回復します。しかし、ルーティングテーブルに表示されているリンクの状態を継続的にチェックするネットワーク監視機能を提供するアルゴリズムや方法があるかどうか疑問に思っています。したがって、ノードAは、ノードZに別のメッセージを送信する前に、障害について通知され、行き止まりに陥るのではなく、一度にルートディスカバリを開始できます。基本的に私が考えているのは、定期的にリンクをチェックするサービスです。


ZigBeeは通常、バッテリー駆動の低電力デバイスで使用されるため、このようなメカニズムはエネルギー効率が良くないことを理解しています。

では、一般的に、低電力のワイヤレスセンサーネットワーク、特にZigBeeメッシュネットワークで使用できる最も効果的なリンク障害検出メカニズムは何でしょうか。

回答:


4

私が見つけたものから、いくつかの実装(たとえばTIのZ-STACK)は、「デッド」ノードを回避するためにルーティングテーブルを頻繁に更新することを推奨しているようです

はい、5〜10分待ちました。「いつか」とは何ですか?回復に数分かかる場合を見てきました。たとえば、ゲートウェイの電源を入れ直すと、最も近いノードが接続するまでに1〜2分かかり、その後、連続する各レベルにさらに1〜2分かかります。しかし、メッシュがこのルーティング変更から回復するまで、私はこれよりはるかに長い間待機しました。


はい、数分かかる場合があります。それで、もしあなたが5分または5分が欲しいなら、あなたのデバイスは戻ってきますか?ルーティングテーブルを維持するために、NLME_RouteDiscoveryRequest()を定期的に呼び出すことをお勧めします。

詳細についてNLME_RouteDiscoveryRequest()は、開発者ガイド(11/12ページを参照)をご覧ください。

次の図は、多対1のルート検出手順の例を示しています。多対1のルート検出を開始するために、コンセントレータは多対1のルート要求をネットワーク全体にブロードキャストします。ルート要求を受信すると、すべてのデバイスはコンセントレータのルートテーブルエントリを追加し、要求を次のホップアドレスとして中継する1ホップのネイバーを格納します。ルート応答は生成されません。

多対1のルート要求コマンドは、同じコマンドIDとペイロードフレーム形式のユニキャストルート要求コマンドに似ています。ルート要求のオプションフィールドは多対1で、宛先アドレスは0xFFFCです。次のZ-Stack APIは、コンセントレーターが多対1のルート要求を送信するために使用できます。このAPIの詳細な使用法については、ZStack APIのドキュメントを参照してください。

ZStatus_t NLME_RouteDiscoveryRequest( uint16 DstAddress, byte options, uint8 radius )

ZigBeeワイヤレスセンサーネットワークのフォールトトレランスは、ZigBeeネットワークがノード障害をどのように許容するかについての詳細な情報を含む興味深い論文です。そこで使用された実装は、ノードの1つが削除されたときにネットワークを再構築したようです(これの正確な方法は残念ながら明確ではありません)。そのため、誤動作しているノードはメッシュに含まれなくなりました。場合によっては、別のルートを介してメッシュネットワークへの再参加を要求する前に、センサーが「孤立」することがあります。

要約すると、私が見つけたリソースから:それは実装に依存しますが、ほとんどの場合、壊れたノードがネットワークに害を及ぼすのを避けるために、ルーティングテーブルを適度に頻繁に再評価します。特定のZigBee実装のベンダーに問い合わせると、正確な操作が異なるため、より正確な応答が得られると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.