定期的な保護者による検索

GitHub でソースを見る

Thread ネットワークに存在するエンドデバイス(ED)が、ネットワークに接続されている状態で現在のルーターよりも優れた親ルーターに切り替えられるようにするには、定期的な保護者向け検索機能を有効にします。

この機能は、ルーターが ED に適した親であるかどうかを判断するために、次のようなさまざまなルーター属性をチェックします。

  • RSSI(受信信号強度インジケーター)
  • リンクの品質
  • ルーターと他のルーターの接続
  • ルーターの既存の子の数

これにより、ED はリンク品質や接続性の低いルーターに接続されたままではなく、可能な限り最良のルーターに接続できます。この機能は、特に新しいルーターを既存の Thread ネットワークに追加する場合に役立ちます。

仕組み

  1. ED は、構成されたチェック間隔(OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL)に従って、現在の親ルーターの平均 RSSI 値をチェックします。
  2. ED の現在の親ルーターの平均 RSSI 値が構成済みのしきい値(OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD)を下回っている場合、親検索が開始されます。
    1. 親検索により適切な親ルーターが見つかると、ED は現在の現在の子と親のリンクを解決し、新しいルーターで MLE 接続プロセスを開始します。
    2. 親検索でより適切な親ルーターが見つからない場合、既存の [子 - 親] リンクは残ります。
  3. 親検索の試行後、ED は構成されたバックオフ間隔(OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL)に従って、現在の親ルーターの平均 RSSI 値を確認します。このバックオフは、親検索の結果に関係なく発生します。

この機能と併せて、[In Previous Parent on Reattach] 機能を有効にすることをおすすめします。

有効にする方法

この機能はデフォルトでは無効になっています。

定期的な親検索を有効にするには、OpenThread をビルドする前に、/src/core/config/parent_search.h ファイルで OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE1 として定義します。

#ifndef OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE
#define OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE 1
#endif

パラメータ

この機能をカスタマイズするには、/src/core/config/parent_search.h の次のパラメータを使用します。

パラメータ
OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL
デフォルト値
540 秒(9 分)
説明
子が親の条件を実行するトリガー条件を確認する間隔を秒単位で指定します。
OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL
デフォルト値
36,000 秒(10 時間)
説明
子が親検索をトリガーした後、バックオフ間隔を秒単位で指定します。
OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD
デフォルト値
-65
説明
親検索のトリガーに使用される RSSI しきい値を指定します。

API

この機能には公開 API はありません。

CLI

この機能に関連する CLI コマンドはありません。