ネットワークの発見と形成

GitHub 上のソースを見る

Thread ネットワーク

スレッド ネットワークは、次の 3 つの固有の ID で識別されます。

  • 2 バイトのパーソナル エリア ネットワーク ID(PAN ID)
  • 8 バイトの拡張パーソナル エリア ネットワーク ID(XPAN ID)
  • 人が読める形式のネットワーク名

たとえば、Thread ネットワークには次の識別子があります。

識別子
PAN ID 0xBEEF
XPAN ID 0xBEEF1111CAFE2222
ネットワーク名 yourThreadCafe
OT アクティブ スキャン

新しい Thread ネットワークを作成するとき、または参加する既存のネットワークを検索するとき、Thread デバイスは無線範囲内の 802.15.4 ネットワークのアクティブ スキャンを実行します。

  1. デバイスは、特定のチャネルで 802.15.4 ビーコン リクエストをブロードキャストします。
  2. 範囲内の Extender-Capable Devices(ECD)は、Thread ネットワークの PAN ID、XPAN ID、ネットワーク名を含むビーコンをブロードキャストします。
  3. デバイスは、各チャンネルに対して前の 2 つの手順を繰り返します。

Thread デバイスは、範囲内のすべてのネットワークを検出すると、既存のネットワークに接続するか、ネットワークが検出されなかった場合は新しいネットワークを作成します。

Thread は、Mesh Link Establishment(MLE)プロトコルを使用してリンクを構成し、ネットワークに関する情報を Thread デバイスに配信します。

リンク構成では、MLE は次の目的で使用されます。

  • 近隣のデバイスへのリンクを検出する
  • 近隣デバイスへのリンクの品質を判断する
  • 近隣デバイスへのリンクを確立する
  • ピアとのリンク パラメータ(デバイスタイプ、フレーム カウンタ、タイムアウト)をネゴシエートする

MLE は、リンクの確立を希望するデバイスに次の種類の情報を配信します。

  • リーダーデータ(リーダー RLOC、パーティション ID、パーティションの重み)
  • ネットワーク データ(オンメッシュ プレフィックス、アドレス自動構成、より具体的なルート)
  • ルートの伝播

Thread のルート伝播は、距離ベクトル ルーティング プロトコルである Routing Information Protocol(RIP)と同様に機能します。

ネットワークの新規作成

デバイスが新しいネットワークを作成することを選択した場合、最も使用率の低いチャネルと、他のネットワークで使用されていない PAN ID を選択し、メッシュ エクステンダになってリーダーに選出されます。このデバイスは、MLE アドバタイズメント メッセージを他の 802.15.4 デバイスに送信して、リンク状態を通知します。また、アクティブ スキャンを実行している他の Thread デバイスからのビーコン リクエストに応答します。

既存のネットワークに参加する

デバイスが既存のネットワークに参加することを選択した場合、Thread Commissioning を介してターゲット ネットワークと一致するようにチャネル、PAN ID、XPAN ID、ネットワーク名を構成し、MLE Attach プロセスを経て Child(エンドデバイス)としてアタッチします。このプロセスは、親子リンクに使用されます。

  1. 子デバイスは、ターゲット ネットワーク内のすべての近隣の Extender-Capable Device にマルチキャスト Parent Request を送信します。
  2. すべての近隣のメッシュ エクステンダ(親リクエスト スキャン マスクにスタンバイ ECD が含まれている場合はスタンバイ ECD も含む)は、自身の情報を含む親レスポンスを送信します。
  3. 子どもは親デバイスを選択し、それに子 ID リクエストを送信します。
  4. ペア設定の確立を確認するため、Parent は Child ID Response を送信します。

1. 保護者からのリクエスト

親リクエストは、ターゲット ネットワーク内の近隣の Extender 対応デバイスを検出するために使用される、接続デバイスからのマルチキャスト リクエストです。

OT MLE Attach Parent Request
保護者からのリクエスト メッセージの内容
Mode 接続デバイスを説明します
設問 リプレイ攻撃を防ぐために、親レスポンスのタイムリーさをテストします
スキャン マスク リクエストをメッシュ エクステンダーのみに制限するか、すべてのエクステンダー対応デバイスに制限します

2. 保護者の回答

親レスポンスは、エクステンダー対応デバイスに関する情報を接続デバイスに提供する親リクエストに対するユニキャスト レスポンスです。

OT MLE Attach Parent Response
保護者の返信メッセージの内容
バージョン Thread プロトコルのバージョン
レスポンス 保護者リクエスト チャレンジのコピー
Link Frame Counter 拡張機能対応デバイスの 802.15.4 フレーム カウンタ
MLE フレーム カウンタ Extender 対応デバイスの MLE フレーム カウンタ
送信元アドレス Extender-Capable Device の RLOC16
リンク マージン Extender-Capable Device の信号品質を受信する
接続 Extender-Capable Device の接続レベルを記述します
リーダーデータ Extender-Capable Device のリーダーに関する情報
設問 リプレイ攻撃を防ぐために、Child ID Request のタイムリーさをテストします

3. 子 ID リクエスト

Child ID Request は、Child-Parent リンクを確立する目的で、接続デバイス(子)から Extender-Capable Device(親)に送信されるユニキャスト リクエストです。リクエストがスタンバイ状態の Extender-Capable Device に送信された場合、リクエストを受け入れる前にメッシュ エクステンダにアップグレードします。

OT MLE Attach Child ID Request
子 ID リクエスト メッセージの内容
バージョン Thread プロトコルのバージョン
レスポンス 保護者からの回答チャレンジのコピー
Link Frame Counter 子デバイスの 802.15.4 フレーム カウンタ
MLE フレーム カウンタ子での MLE フレーム カウンタ
Mode 子を説明する
タイムアウト 親が子を削除するまでの非アクティブ期間
住所の登録(MED と SED のみ) IPv6 アドレスを登録する

4. 子 ID レスポンス

Child ID Response は、Child-Parent リンクが確立されたことを確認するために、Parent から Child に送信されるユニキャスト レスポンスです。

OT MLE Attach Child ID レスポンス
子 ID のレスポンス メッセージの内容
移行元の住所 Parent's RLOC16
Address16 Child's RLOC16
リーダーデータ 親のリーダーに関する情報(RLOC、パーティション ID、パーティションの重み)
ネットワーク データ Thread ネットワークに関する情報(オンメッシュ プレフィックス、アドレス自動構成、より具体的なルート)
ルート(スタンバイ ECD のみ) ルートの伝播
タイムアウト 親が子を削除するまでの非アクティブ期間
住所の登録(MED と SED のみ) 登録済み住所を確認する

内容のまとめ

学習した内容:

  • Thread デバイスが既存のネットワークのアクティブ スキャンを実行する
  • Thread はメッシュリンク確立を使用してリンクを構成し、ネットワーク デバイスに関する情報を伝播します
  • MLE アドバタイズメント メッセージは、デバイスのネットワークとリンクの状態を他の Thread デバイスに通知します。
  • MLE Attach プロセスで親子リンクが確立される

理解度をチェックしましょう

Thread ネットワークの識別に使用されない識別子はどれですか?
2 バイトのパーソナル エリア ネットワーク ID(PAN ID)。
不正解です。Thread ネットワークは、PAN ID によって識別されます。
8 バイトの拡張パーソナル エリア ネットワーク ID(XPAN ID)。
不正解です。スレッド ネットワークは、XPAN ID などによって識別されます。
人が読める形式のネットワーク名。
不正解です。スレッド ネットワークは、人間が読めるネットワーク名によって識別されます。
32 文字の SSID。
正解です。802.11 Wi-Fi ネットワークとは異なり、Thread ネットワーク識別子では SSID は使用されません。
Parent Request の用途
対象ネットワーク内の近隣の拡張機能対応デバイスを検出するため。
正解です。親リクエストは、ネットワークへの接続を試みるデバイスによって発行されます。
エクステンダー対応デバイスが親になることをアナウンスします。
不正解です。メッシュ エクステンダは、別のネットワーク デバイスとの親子関係を開始しません。代わりに、ネットワーク デバイスが親となる Extender-Capable Device を選択します。
エクステンダー対応デバイスをメッシュ エクステンダーに昇格させるリクエスト。
不正解です。
保護者リクエストではどのようなアドレスが使用されますか?
ユニキャスト
不正解です。
エニーキャスト
不正解です。
マルチキャスト
正解です。
ブロードキャスト
不正解です。
デバイスが最初に Thread ネットワークに接続されたときのデバイス分類は何ですか?
子(エンドデバイス)
正解です。Thread ネットワークに参加するデバイスは、常にそのネットワークのエンドデバイスとして開始されます。
FTD(Full Thread Device)
不正解です。
メッシュ エクステンダー
不正解です。