ルーターの選択

GitHub でソースを見る

コネクテッド ドミネーション セット

OT 接続ドミネーション セット
コネクテッド ドミネーション セットの例

ルーターは、ネットワーク接続ドミネーション セット(CDS)を形成する必要があります。つまり、次のようになります。

  1. 2 つの Router 間に Router 専用パスがあります。
  2. Thread ネットワーク内のすべての Router は、一連の Router に完全に対応することで、他の Router にアクセスできます。
  3. Thread ネットワーク内のすべてのエンドデバイスは、Router に直接接続されます。

分散アルゴリズムは CDS を維持し、最小の冗長性を確保します。すべてのデバイスは、最初にエンドデバイス(子)としてネットワークに接続します。Thread ネットワークの状態が変化すると、アルゴリズムは CDS を維持するために Router を追加または削除します。

Thread は以下に Router を追加します。

  • ネットワークがルーターのしきい値の 16 を下回っている場合は、カバレッジを拡大する
  • パスの多様性を高める
  • 最小限の冗長性レベルを維持
  • 接続を拡張してより多くの子どもをサポートする

Thread は以下を実現するために Router を削除します。

  • Router のルーティング状態を最大 32 台に減らす
  • 必要な場合は、ネットワークの他の部分で新しい Router を許可する

Router にアップグレードする

Thread ネットワークに接続した後、子デバイスはルーターになることを選択できます。MLE リンク リクエスト プロセスを開始する前に、子はアドレス要求メッセージをリーダーに送信し、ルーター ID を要求します。リーダーが受け入れると、Router ID で応答し、子は自身を Router にアップグレードします。

MLE リンク リクエスト プロセスを使用して、隣接する Router との双方向 Router-Router リンクが確立されます。

  1. 新しいルーターは、マルチキャスト リンク リクエストを隣接するルーターに送信します。
  2. ルーターは、リンクの承諾とリクエストのメッセージを返します。
  3. 新しい Router はユニキャスト Link Accept で Router に応答し、Router-Router リンクを確立します。

リンク リクエストは、Router から Thread ネットワーク内の他のすべての Router へのリクエストです。最初にルーターになると、デバイスはマルチキャスト リンク リクエストを ff02::2 に送信します。その後、MLE アドバタイズを介して他の Router を検出したら、デバイスからユニキャスト リンク リクエストが送信されます。

OT MLE リンク リクエスト
リンク リクエストのメッセージ コンテンツ
バージョン スレッド プロトコル バージョン
チャレンジ リンク レスポンスの適時性をテストして、リプレイ攻撃を防止
送信元アドレス 送信者の RLOC16
リーダーのデータ 送信者(RLOC、パーティション ID、パーティションの重み)に保存される Router のリーダーに関する情報

リンクの承諾とリクエストは、リンクの受け入れメッセージとリンク リクエストのメッセージを組み合わせたものです。Thread は、この最適化を MLE リンク リクエスト プロセスで使用して、メッセージの数を 4 から 3 に減らします。

OT MLE リンクの承認とリクエスト

リンク承認は、隣接ルーターからのリンク リクエストへのユニキャスト レスポンスで、自己に関する情報を提供し、隣接ルーターへのリンクを承認します。

OT MLE リンクの承認
リンク: メッセージを受け入れる
バージョン スレッド プロトコル バージョン
レスポンス リンク レスポンスの適時性をテストして、リプレイ攻撃を防止
リンクフレーム カウンタ 802.15.4 送信者のフレーム カウンタ
MLE フレーム カウンタ 送信元の MLE フレーム カウンタ
送信元アドレス 送信者の RLOC16
リーダーのデータ 送信者(RLOC、パーティション ID、パーティションの重み)に保存される Router のリーダーに関する情報

REED にダウングレードする

Router が REED にダウングレードされると、Router-Router リンクは切断され、デバイスは MLE 接続プロセスを開始して子 / 親リンクを確立します。

MLE 接続プロセスの詳細については、既存のネットワークへの参加をご覧ください。

状況によっては、一方向の受信リンクの確立が必要になることがあります。

Router のリセット後も、隣接する Router には、リセットされた Router との有効な受信リンクが残っていることがあります。この場合、リセットされた Router は、Router - Router リンクを再確立するためのリンク リクエスト メッセージを送信します。

エンドデバイスは、マルチキャストの信頼性を改善するために、隣接する親以外のルーターとの受信リンクの確立が必要になる場合があります。これについては、マルチキャスト ルーティングについて詳しく説明します。

まとめ

学習した内容:

  • Thread ネットワーク内のルーターは、Connected Dominating Set(CDS)を形成する必要がある
  • CDS を維持するために、Thread デバイスは Router にアップグレードされるか、End Device にダウングレードされます
  • MLE リンク リクエスト プロセスは Router-Router リンクの確立に使用されます

理解度をチェックする

コネクテッド ドミネーション セット(CDS)で適用されないルールは次のうちどれですか。
2 つの Router 間に Router 専用パスがあります。
不正解です。
Thread ネットワーク内の 1 つの Router は、一連の Router に完全にとどまることで他の Router にアクセスできます。
不正解です。
Thread ネットワーク内のすべてのエンドデバイスは、Router に直接接続されます。
不正解です。
Thread ネットワーク内の Router は 1 つだけです。
正解です。Thread ネットワークには複数のボーダー ルーターが含まれる場合があります。
Router を Thread ネットワークから削除する理由
ルーティング状態をルーターの最大数 32 以下に減らす。
正解です。Thread ネットワークは、最適な数の Router の維持に努めます。Thread ネットワークに必要な Router の最大数は 32 です。
チャンネルを解放する。
不正解です。ルーターの数は、チャネルの使用状況や容量とは関係ありません。
必要に応じて、ネットワークの他の部分における新しい Router の選出を許可する。
正解です。Thread ネットワークのある部分でアクティブな Router の数を減らすと、他の場所でルーティング容量を増やすことができます。
Router を試行する REED が他の Router との直接リンクを確立するには、どうすればよいですか。
REED がアドレス要求メッセージをネットワーク リーダーに送信する必要があります。
正解です。
リーダーが REED にルーター ID を付与する必要があります。
正解です。ルーター ID がない場合、REED は子デバイスのままになります。
REED が MLE リンク リクエストを送信する必要があります。
残念ながら違います。MLE リンク リクエストを使用すると、デバイスは Router になったときに他の Router へのリンクを確立します。
Router がダウングレードした場合の影響を正確に説明している文は次のうちどれですか。
デバイスは自動的にネットワーク上に残りますが、子(REED)として残ります。
残念ながら違います。Router がダウングレードされる場合は、より多くの手順が必要になります。
デバイスは、ネットワークへの新しい接続を確立するために MLE 接続プロセスを開始する必要があります。
正解です。Router から REED にダウングレードされたデバイスは切断され、ネットワークへの接続を再ネゴシエートする必要があります。
Router と Router のリンクを確立するためにどのようなプロセスを使用していますか?
MLE のリンク リクエスト プロセスです。
正解です。
リンクの同意とリクエストの手続き。
不正解です。リンクの承認やリクエストなどの処理はありません。 MLE リンク リクエスト プロセスの一環として、リンク リクエスト メッセージに応答して、Router がリンク承認リクエストとリクエスト メッセージを送信します。
MLE のアタッチ プロセス
不正解です。MLE 接続プロセスは、デバイスが既存の Thread ネットワークに接続するプロセスです。