Thread-Netzwerke
Thread-Netzwerke werden durch drei eindeutige IDs identifiziert:
- 2-Byte-PAN-ID (Personal Area Network ID)
- 8-Byte-XPAN-ID (Extended Personal Area Network ID)
- Ein menschenlesbarer Netzwerkname
Ein Thread-Netzwerk kann beispielsweise die folgenden IDs haben:
| ID | Wert |
|---|---|
| PAN-ID | 0xBEEF |
| XPAN-ID | 0xBEEF1111CAFE2222 |
| Netzwerkname | yourThreadCafe |
Wenn ein neues Thread-Netzwerk erstellt oder nach einem vorhandenen Netzwerk gesucht wird, dem beigetreten werden soll, führt ein Thread-Gerät einen aktiven Scan nach 802.15.4-Netzwerken im Funkbereich durch:
- Das Gerät sendet eine 802.15.4-Beacon-Anfrage auf einem bestimmten Kanal.
- Im Gegenzug senden alle ECDs (Extender-Capable Devices) im Bereich ein Beacon, das ihre Thread-Netzwerk-PAN-ID, XPAN-ID und den Netzwerknamen enthält.
- Das Gerät wiederholt die beiden vorherigen Schritte für jeden Kanal.
Sobald ein Thread-Gerät alle Netzwerke im Bereich gefunden hat, kann es sich entweder mit einem vorhandenen Netzwerk verbinden oder ein neues erstellen, wenn keine Netzwerke gefunden wurden.
Mesh Link Establishment
Thread verwendet das MLE-Protokoll (Mesh Link Establishment), um Links zu konfigurieren und Informationen über das Netzwerk an Thread-Geräte zu verteilen.
Bei der Linkkonfiguration wird MLE für Folgendes verwendet:
- Links zu benachbarten Geräten finden
- Die Qualität von Links zu benachbarten Geräten bestimmen
- Links zu benachbarten Geräten herstellen
- Linkparameter (Gerätetyp, Frame-Zähler, Zeitlimit) mit Peers aushandeln
MLE verteilt die folgenden Arten von Informationen an Geräte, die Links herstellen möchten:
- Leader-Daten (Leader-RLOC, Partitions-ID, Partitionsgewicht)
- Netzwerkdaten (On-Mesh-Präfixe, automatische Adresskonfiguration, spezifischere Routen)
- Routenweitergabe
Die Routenweitergabe in Thread funktioniert ähnlich wie das RIP (Routing Information Protocol), ein Distance-Vector-Routing-Protokoll.
Neues Netzwerk erstellen
Wenn das Gerät ein neues Netzwerk erstellt, wählt es den am wenigsten ausgelasteten Kanal und eine PAN-ID aus, die nicht von anderen Netzwerken verwendet wird. Anschließend wird es zu einem Mesh Extender und wählt sich selbst als Leader aus. Dieses Gerät sendet MLE-Werbenachrichten an andere 802.15.4-Geräte, um sie über seinen Linkstatus zu informieren. Außerdem antwortet es auf Beacon-Anfragen anderer Thread-Geräte, die einen aktiven Scan durchführen.
Vorhandenem Netzwerk beitreten
Wenn das Gerät einem vorhandenen Netzwerk beitreten möchte, konfiguriert es seinen Kanal, seine PAN-ID, seine XPAN-ID und seinen Netzwerknamen so, dass sie mit dem Zielnetzwerk übereinstimmen. Anschließend durchläuft es den MLE-Anfügungsprozess, um sich als untergeordnetes Gerät (Endgerät) anzufügen. Dieser Prozess wird für untergeordnete/übergeordnete Links verwendet.
- Das untergeordnete Gerät sendet eine Multicast-Anfrage an alle benachbarten ECDs im Zielnetzwerk.
- Alle benachbarten Mesh Extender (und Standby-ECDs, wenn die Scan-Maske für die übergeordnete Anfrage Standby-ECDs enthält) senden Antworten mit Informationen zu sich selbst.
- Das untergeordnete Gerät wählt ein übergeordnetes Gerät aus und sendet eine Anfrage für die untergeordnete ID an dieses Gerät.
- Das übergeordnete Gerät sendet eine Antwort für die untergeordnete ID, um die Link herstellung zu bestätigen.
1. Übergeordnete Anfrage
Eine übergeordnete Anfrage ist eine Multicast-Anfrage des anfügenden Geräts, mit der benachbarte ECDs im Zielnetzwerk gefunden werden.
| Inhalt der Nachricht für die übergeordnete Anfrage | |
|---|---|
| Modus | Beschreibt das anfügende Gerät |
| Challenge | Testet die Aktualität der Antwort des übergeordneten Geräts, um Wiederholungsangriffe zu verhindern |
| Scan-Maske | Beschränkt die Anfrage auf Mesh Extender oder auf alle ECDs |
2. Antwort des übergeordneten Geräts
Eine Antwort des übergeordneten Geräts ist eine Unicast-Antwort auf eine übergeordnete Anfrage, die dem anfügenden Gerät Informationen über ein ECD liefert.
| Inhalt der Antwort des übergeordneten Geräts | |
|---|---|
| Version | Thread-Protokollversion |
| Antwort | Kopie der Challenge der übergeordneten Anfrage |
| Link-Frame Zähler | 802.15.4-Frame-Zähler auf dem ECD |
| MLE-Frame Zähler | MLE-Frame-Zähler auf dem ECD |
| Quell Adresse | RLOC16 des ECD |
| Link Margin | Qualität des Empfangssignals des ECD |
| Konnektivität | Beschreibt den Konnektivitätsgrad des ECD |
| Leader Daten | Informationen zum Leader des ECD |
| Challenge | Testet die Aktualität der Anfrage für die untergeordnete ID, um Wiederholungsangriffe zu verhindern |
3. Anfrage für die untergeordnete ID
Eine Anfrage für die untergeordnete ID ist eine Unicast-Anfrage des anfügenden Geräts (untergeordnetes Gerät), die an das ECD (übergeordnetes Gerät) gesendet wird, um einen untergeordneten/übergeordneten Link herzustellen. Wenn die Anfrage an ein Standby-ECD gesendet wird, wird es zu einem Mesh Extender, bevor es die Anfrage akzeptiert.
| Inhalt der Nachricht für die Anfrage für die untergeordnete ID | |
|---|---|
| Version | Thread-Protokollversion |
| Antwort | Kopie der Challenge der Antwort des übergeordneten Geräts |
| Link-Frame Zähler | 802.15.4-Frame-Zähler auf dem untergeordneten Gerät |
| MLE-Frame Zähler | MLE-Frame-Zähler auf dem untergeordneten Gerät |
| Modus | Beschreibt das untergeordnete Gerät |
| Zeitlimit | Dauer der Inaktivität, bevor das übergeordnete Gerät das untergeordnete Gerät entfernt |
| Adress registrierung (nur MEDs und SEDs) | IPv6-Adressen registrieren |
4. Antwort für die untergeordnete ID
Eine Antwort für die untergeordnete ID ist eine Unicast-Antwort des übergeordneten Geräts, die an das untergeordnete Gerät gesendet wird, um zu bestätigen, dass ein untergeordneter/übergeordneter Link hergestellt wurde.
| Inhalt der Antwort für die untergeordnete ID | |
|---|---|
| Quelladresse | RLOC16 des übergeordneten Geräts |
| Address16 | RLOC16 des untergeordneten Geräts |
| Leader-Daten | Informationen zum Leader des übergeordneten Geräts (RLOC, Partitions-ID, Partitions gewicht) |
| Netzwerkdaten | Informationen zum Thread-Netzwerk (On-Mesh-Präfixe, automatische Adress konfiguration, spezifischere Routen) |
| Route (nur Standby-ECDs) | Routenweitergabe |
| Zeitlimit | Dauer der Inaktivität, bevor das übergeordnete Gerät das untergeordnete Gerät entfernt |
| Adressregistrierung (nur MEDs und SEDs) | Registrierte Adressen bestätigen |
Zusammenfassung
Das haben Sie gelernt:
- Ein Thread-Gerät führt einen aktiven Scan nach vorhandenen Netzwerken durch.
- Thread verwendet MLE (Mesh Link Establishment), um Links zu konfigurieren und Informationen über Netzwerkgeräte zu verteilen.
- MLE-Werbenachrichten informieren andere Thread-Geräte über den Netzwerk- und Linkstatus eines Geräts.
- Der MLE-Anfügungsprozess stellt untergeordnete/übergeordnete Links her.