Rilevamento e creazione di reti

Visualizza l'origine su GitHub

Reti Thread

Le reti Thread sono identificate da tre identificatori univoci:

  • ID PAN (Personal Area Network) di 2 byte
  • ID XPAN (Extended Personal Area Network) di 8 byte
  • Un nome di rete leggibile

Ad esempio, una rete Thread potrebbe avere i seguenti identificatori:

Identificatore Valore
ID PAN 0xBEEF
ID XPAN 0xBEEF1111CAFE2222
Nome rete yourThreadCafe
OT Active Scan

Quando crei una nuova rete Thread o cerchi una rete esistente a cui connetterti, un dispositivo Thread esegue una scansione attiva delle reti 802.15.4 nel raggio di copertura radio:

  1. Il dispositivo trasmette una richiesta di beacon 802.15.4 su un canale specifico.
  2. In cambio, tutti i dispositivi con funzionalità di estensione (ECD) nel raggio di copertura trasmettono un beacon che contiene l'ID PAN, l'ID XPAN e il nome della rete Thread.
  3. Il dispositivo ripete i due passaggi precedenti per ogni canale.

Una volta che un dispositivo Thread ha rilevato tutte le reti nel raggio di copertura, può connettersi a una rete esistente o crearne una nuova se non ne viene rilevata alcuna.

Thread utilizza il protocollo MLE (Mesh Link Establishment) per configurare i link e diffondere informazioni sulla rete ai dispositivi Thread.

Nella configurazione dei link, MLE viene utilizzato per:

  • Rilevare i link ai dispositivi vicini
  • Determinare la qualità dei link ai dispositivi vicini
  • Stabilire link ai dispositivi vicini
  • Negoziare i parametri dei link (tipo di dispositivo, contatori di frame, timeout) con i peer

MLE diffonde i seguenti tipi di informazioni ai dispositivi che vogliono stabilire link:

  • Dati del leader (RLOC del leader, ID partizione, peso della partizione)
  • Dati di rete (prefissi on-mesh, configurazione automatica degli indirizzi, route più specifiche)
  • Propagazione delle route

La propagazione delle route in Thread funziona in modo simile al protocollo RIP (Routing Information Protocol), un protocollo di routing distance-vector.

Crea una nuova rete

Se il dispositivo sceglie di creare una nuova rete, seleziona il canale meno occupato e un ID PAN non in uso da altre reti, quindi diventa un extender mesh e si elegge come leader. Questo dispositivo invia messaggi di annuncio MLE ad altri dispositivi 802.15.4 per informarli sul suo stato del link e risponde alle richieste di beacon di altri dispositivi Thread che eseguono una scansione attiva.

Connettiti a una rete esistente

Se il dispositivo sceglie di connettersi a una rete esistente, configura il canale, l'ID PAN, l'ID XPAN e il nome della rete in modo che corrispondano a quelli della rete di destinazione tramite il provisioning di Thread, quindi esegue la procedura di connessione MLE per connettersi come dispositivo secondario (dispositivo finale). Questa procedura viene utilizzata per i link secondario-principale.

  1. Il dispositivo secondario invia una richiesta principale multicast Parent Request a tutti i dispositivi con funzionalità di estensione vicini nella rete di destinazione.
  2. Tutti gli extender mesh vicini (e gli ECD in standby, se la maschera di scansione della richiesta principale include gli ECD in standby) inviano risposte principali con informazioni su se stessi.
  3. Il dispositivo secondario sceglie un dispositivo principale e gli invia una richiesta di ID secondario.
  4. Il dispositivo principale invia una risposta di ID secondario per confermare la creazione del link.

1. Richiesta principale

Una richiesta principale è una richiesta multicast del dispositivo di connessione utilizzata per rilevare i dispositivi con funzionalità di estensione vicini nella rete di destinazione.

OT MLE Attach Parent Request
Contenuti del messaggio di richiesta principale
Modalità Descrive il dispositivo di connessione
La sfida Verifica la tempestività della risposta principale per impedire attacchi di replay
Maschera di scansione Limita la richiesta solo agli extender mesh o a tutti i dispositivi con funzionalità di estensione

2. Risposta principale

Una risposta principale è una risposta unicast a una richiesta principale che fornisce informazioni su un dispositivo con funzionalità di estensione al dispositivo di connessione.

OT MLE Attach Parent Response
Contenuti del messaggio di risposta principale
Versione Versione del protocollo Thread
Risposta Copia della sfida della richiesta principale
Contatore di frame del link Contatore di frame 802.15.4 sul dispositivo con funzionalità di estensione
Contatore di frame MLE Contatore di frame MLE sul dispositivo con funzionalità di estensione
Indirizzo di origine RLOC16 del dispositivo con funzionalità di estensione
Margine del link Qualità del segnale di ricezione del dispositivo con funzionalità di estensione
Connettività Descrive il livello di connettività del dispositivo con funzionalità di estensione
Dati del leader Informazioni sul leader del dispositivo con funzionalità di estensione
La sfida Verifica la tempestività della richiesta di ID secondario per impedire attacchi di replay

3. Richiesta di ID secondario

Una richiesta di ID secondario è una richiesta unicast del dispositivo di connessione (secondario) inviata al dispositivo con funzionalità di estensione (principale) allo scopo di stabilire un link secondario-principale. Se la richiesta viene inviata a un dispositivo con funzionalità di estensione in standby, questo esegue l'upgrade a un extender mesh prima di accettare la richiesta.

OT MLE Attach Child ID Request
Contenuti del messaggio di richiesta di ID secondario
Versione Versione del protocollo Thread
Risposta Copia della sfida della risposta principale
Contatore di frame del link Contatore di frame 802.15.4 sul dispositivo secondario
Contatore di frame MLEContatore di frame MLE sul dispositivo secondario
Modalità Descrive il dispositivo secondario
Timeout Durata di inattività prima che il dispositivo principale rimuova il dispositivo secondario
Registrazione dell'indirizzo (solo MED e SED) Registra gli indirizzi IPv6

4. Risposta di ID secondario

Una risposta di ID secondario è una risposta unicast del dispositivo principale inviata al dispositivo secondario per confermare che è stato stabilito un link secondario-principale.

OT MLE Attach Child ID Response
Contenuti del messaggio di risposta di ID secondario
Indirizzo di origine RLOC16 del dispositivo principale
Address16 RLOC16 del dispositivo secondario
Dati del leader Informazioni sul leader del dispositivo principale (RLOC, ID partizione, peso della partizione )
Dati di rete Informazioni sulla rete Thread (prefissi on-mesh, configurazione automatica degli indirizzi route più specifiche)
Route (solo ECD in standby) Propagazione delle route
Timeout Durata di inattività prima che il dispositivo principale rimuova il dispositivo secondario
Registrazione dell'indirizzo (solo MED e SED) Conferma gli indirizzi registrati

Riepilogo

Ecco cosa hai imparato:

  • Un dispositivo Thread esegue una scansione attiva delle reti esistenti
  • Thread utilizza MLE (Mesh Link Establishment) per configurare i link e diffondere informazioni sui dispositivi di rete
  • I messaggi di annuncio MLE informano gli altri dispositivi Thread sullo stato della rete e dei link di un dispositivo
  • La procedura di connessione MLE stabilisce i link secondario-principale

Mettiti alla prova

Quale identificatore non viene utilizzato per identificare una rete Thread?
Un ID PAN (Personal Area Network) di 2 byte.
Sbagliato. Una rete Thread è identificata, in parte, da un ID PAN.
Un ID XPAN (Extended Personal Area Network) di 8 byte.
Sbagliato. Una rete Thread è identificata, in parte, da un ID XPAN.
Un nome di rete leggibile.
Sbagliato. Una rete Thread è identificata, in parte, da un nome di rete leggibile.
Un SSID di 32 caratteri.
Risposta esatta. A differenza di una rete Wi-Fi 802.11, gli identificatori di rete Thread non utilizzano un SSID.
A cosa serve una richiesta principale?
Per rilevare i dispositivi con funzionalità di estensione vicini nella rete di destinazione.
Risposta esatta. Una richiesta principale viene emessa da un dispositivo che vuole connettersi a una rete.
Per annunciare che un dispositivo con funzionalità di estensione sta diventando un dispositivo principale.
Sbagliato. Un extender mesh non avvia una relazione principale-secondario con un altro dispositivo di rete. Un dispositivo di rete seleziona invece un dispositivo con funzionalità di estensione per farlo diventare il dispositivo principale.
Per richiedere che un dispositivo con funzionalità di estensione venga promosso a extender mesh.
Sbagliato.
Che tipo di indirizzo utilizza una richiesta principale?
unicast
Sbagliato.
anycast
Sbagliato.
multicast
Risposta esatta.
annuncio
Sbagliato.
Quando un dispositivo si connette inizialmente a una rete Thread, qual è la sua classificazione?
Dispositivo secondario (dispositivo finale)
Risposta esatta. Un dispositivo che si connette a una rete Thread inizia sempre come un dispositivo finale della rete.
FTD (Full Thread Device)
Sbagliato.
Extender mesh
Sbagliato.