Visualizza l'origine su GitHub
Reti Thread
Le reti Thread sono identificate da tre identificatori univoci:
- ID rete area personale di 2 byte (PAN ID)
- ID rete area estesa di 8 byte (ID XPAN)
- Un nome di rete leggibile
Ad esempio, una rete Thread può avere i seguenti identificatori:
Identificatore | Valore |
---|---|
ID PAN | 0xBEEF |
ID XPAN | 0xBEEF1111CAFE2222 |
Nome della rete | yourThreadCafe |
Quando crei una nuova rete Thread o ne cerchi una esistente da far parte, un dispositivo Thread esegue una scansione attiva per le reti 802.15.4 nell'intervallo radio:
- Il dispositivo trasmette una richiesta di beacon 802.15.4 su un canale specifico.
- In cambio, eventuali router o dispositivi finali idonei per router (REED) nel raggio d'azione trasmettono un beacon che contiene l'ID PAN, l'ID XPAN e il nome della rete Thread.
- Il dispositivo ripete i due passaggi precedenti per ogni canale.
Una volta che un dispositivo Thread ha rilevato tutte le reti nella portata, può collegarsi a una rete esistente o crearne una nuova se non vengono rilevate reti.
Creazione link mesh
Thread utilizza il protocollo Mesh Link Stabilisci (MLE) per configurare i link e diffondere le informazioni sulla rete ai dispositivi Thread.
Nella configurazione dei link, lo standard MLE viene utilizzato per:
- Scopri i link ai dispositivi vicini
- Determina la qualità dei link ai dispositivi vicini
- Stabilisci link a dispositivi vicini
- Negoziare i parametri del link (tipo di dispositivo, contatori frame, timeout) con i peer
MLE divulga i seguenti tipi di informazioni ai dispositivi che vogliono stabilire link:
- Dati leader (Leader RLOC, ID partizione, ponderazione della partizione)
- Dati di rete (prefissi on-mesh, configurazione automatica degli indirizzi, route più specifiche)
- Propagazione route
La propagazione delle route in Thread funziona in modo simile al protocollo Routing Information Protocol (RIP), un protocollo di routing a distanza.
Crea una nuova rete
Se il dispositivo sceglie di creare una nuova rete, seleziona il canale meno affollato e un ID PAN non in uso da altre reti, quindi diventa un router e sceglie il leader. Questo dispositivo invia messaggi di pubblicità MLE ad altri dispositivi 802.15.4 per informarli del suo stato di collegamento e risponde alle richieste di beaconing da altri dispositivi Thread che eseguono una scansione attiva.
Collegati a una rete esistente
Se il dispositivo sceglie di collegarsi a una rete esistente, configura il relativo canale, l'ID PAN, l'ID XPAN e il nome della rete in modo che corrispondano a quelli della rete di destinazione tramite Thread Commissioning, quindi completa il processo di collegamento MLE per il collegamento come secondario (dispositivo finale). Questa procedura viene utilizzata per i link bambino-genitore.
- Il publisher secondario invia una richiesta padre multicast a tutti i router e REED vicini della rete di destinazione.
- Tutti i router e gli REED adiacenti (se la maschera di scansione delle richieste padre include gli EDED) inviano le risposte principali con le relative informazioni.
- Il publisher secondario sceglie un dispositivo principale e vi invia una richiesta di ID figlio.
- Il publisher principale invia una risposta di ID secondario per confermare lo stato del collegamento.
1. Richiesta genitore
Una richiesta principale è una richiesta multicast proveniente dal dispositivo di collegamento utilizzata per rilevare i router vicini e i dispositivi finali idonei per i router nella rete di destinazione.
Contenuti del messaggio di richiesta genitori | |
---|---|
Modalità | Descrive il dispositivo che collega |
Sfida | Testa la tempestività della risposta dei genitori per evitare attacchi di riproduzione |
Scan Mask | Limita la richiesta solo ai router o ai router e ai REED |
2. Risposta genitore
Una risposta padre è una risposta unicast a una richiesta genitore che fornisce informazioni su un router o REED al dispositivo di collegamento.
Contenuti dei messaggi di risposta dei genitori | |
---|---|
Versione | Versione protocollo Thread |
Risposta | Copia della richiesta di verifica genitori |
Contatore frame link | Contatore frame 802.15.4 sul router/REED |
Contatore MLE Frame | Contatore MLE sul router/REED |
Indirizzo di origine | RLOC16 del router/REED |
Margine del link | Ricevi la qualità del segnale del router/REED |
Connettività | Descrive il livello di connettività del router/REED |
Dati dei leader | Informazioni sul router/responsabile REED |
Sfida | Testa la tempestività della richiesta di ID figlio per impedire gli attacchi di riproduzione |
3. Richiesta ID figlio
Una richiesta di ID secondario è una richiesta unicast del dispositivo di collegamento (secondario) inviata al router o a REED (principale) allo scopo di stabilire un collegamento secondario-principale. Se la richiesta viene inviata a un REED, ne esegue l'upgrade a un router prima dell'accettazione.
Contenuti del messaggio di richiesta ID secondario | |
---|---|
Versione | Versione protocollo Thread |
Risposta | Copia della richiesta di verifica dei genitori |
Contatore frame link | 802.15.4 Contatore frame sul bambino |
Contatore MLE Frame | Contatore MLE sul publisher secondario |
Modalità | Descrive il bambino |
Timeout. | Durata dell'inattività prima che il genitore rimuova il bambino |
Registrazione dell'indirizzo (solo MED e SED) | Registra indirizzi IPv6 |
4. Risposta ID figlio
Una risposta di ID secondario è una risposta unicast della risorsa principale inviata al publisher secondario per confermare che è stato stabilito un link di tipo secondario-principale.
Contenuti del messaggio di risposta dell'ID bambino | |
---|---|
Indirizzo di origine | RLOC 16 del genitore |
Indirizzo 16 | RLOC 16 bambini |
Dati dei leader | Informazioni sulla leadership del genitore (RLOC, ID partizione, ponderazione della partizione) |
Dati di rete | Informazioni sulla rete Thread (prefissi on-mesh, configurazione automatica degli indirizzi, route più specifiche) |
Route (solo REED) | Propagazione route |
Timeout. | Durata dell'inattività prima che il genitore rimuova il bambino |
Registrazione dell'indirizzo (solo MED e SED) | Conferma gli indirizzi registrati |
Riepilogo
Che cosa hai imparato:
- Un dispositivo Thread esegue una scansione attiva per rilevare la presenza di reti esistenti
- Thread utilizza Mesh Link Establishment per configurare i link e diffondere informazioni sui dispositivi di rete
- I messaggi pubblicitari MLE informano gli altri dispositivi Thread della rete e di uno stato dei link
- La procedura di collegamento MLE stabilisce i link Child-Parent