Visualizza l'origine su GitHub
Connected Dominating Set

Gli extender mesh devono formare un Connected Dominating Set (CDS), il che significa che:
- Esiste un percorso solo per gli extender mesh tra due extender mesh qualsiasi.
- Qualsiasi extender mesh in una rete Thread può raggiungere qualsiasi altro extender mesh rimanendo interamente all'interno dell'insieme di extender mesh.
- Ogni dispositivo finale in una rete Thread è collegato direttamente a un extender mesh.
Un algoritmo distribuito gestisce il CDS, che garantisce un livello minimo di ridondanza. Ogni dispositivo si connette inizialmente alla rete come dispositivo finale (figlio). Man mano che lo stato della rete Thread cambia, l'algoritmo aggiunge o rimuove gli extender mesh per mantenere il CDS.
Thread aggiunge extender mesh per:
- Aumentare la copertura se la rete è al di sotto della soglia di 16 extender mesh
- Aumentare la diversità dei percorsi
- Mantenere un livello minimo di ridondanza
- Estendere la connettività e supportare più figli
Thread rimuove gli extender mesh (passandoli a dispositivi in standby in grado di fungere da extender (ECD)) per:
- Mantenere lo stato di routing al di sotto del massimo di 32 extender mesh
- Consentire l'utilizzo di nuovi extender mesh in altre parti della rete, se necessario
Eseguire l'upgrade a un extender mesh
Dopo la connessione a una rete Thread, un dispositivo figlio in grado di fungere da extender può scegliere di diventare un extender mesh. Prima di avviare la procedura di richiesta di collegamento MLE, il figlio invia un messaggio di richiesta di indirizzo al leader, chiedendo un ID router. Se il leader accetta, risponde con un ID router e il figlio esegue l'upgrade a un extender mesh.
La procedura di richiesta di collegamento MLE viene quindi utilizzata per stabilire collegamenti extender mesh bidirezionali con gli extender mesh vicini.
- Il nuovo extender mesh invia una richiesta di collegamento multicast agli extender mesh vicini.
- Gli extender mesh rispondono con messaggi di accettazione e richiesta di collegamento.
- Il nuovo extender mesh risponde a ogni extender mesh con un'accettazione di collegamento unicast Link Accept per stabilire il collegamento extender mesh.
1. Richiesta di collegamento
Una richiesta di collegamento è una richiesta dell'extender mesh a tutti gli altri extender mesh nella rete Thread. Quando diventa un extender mesh per la prima volta, il dispositivo invia una richiesta di collegamento multicast a ff02::2. In seguito, dopo aver scoperto gli altri extender mesh tramite gli annunci MLE, i dispositivi inviano richieste di collegamento unicast.
| Contenuti del messaggio di richiesta di collegamento | |
|---|---|
| Versione | Versione del protocollo Thread |
| La sfida | Verifica la tempestività della risposta di collegamento per impedire attacchi di riproduzione |
| Indirizzo di origine | RLOC16 del mittente |
| Dati leader | Informazioni sul leader dell'extender mesh, memorizzate sul mittente (RLOC, ID partizione, peso partizione) |
2. Accettazione e richiesta di collegamento
Un'accettazione e una richiesta di collegamento sono una combinazione dei messaggi di accettazione e richiesta di collegamento. Thread utilizza questa ottimizzazione nella procedura di richiesta di collegamento MLE per ridurre il numero di messaggi da quattro a tre.
3. Accettazione di collegamento
Un'accettazione di collegamento è una risposta unicast a una richiesta di collegamento da un extender mesh vicino che fornisce informazioni su se stesso e accetta il collegamento all'extender mesh vicino.
| Contenuti del messaggio di accettazione di collegamento | |
|---|---|
| Versione | Versione del protocollo Thread |
| Risposta | Verifica la tempestività della risposta di collegamento per impedire attacchi di riproduzione |
| Contatore frame di collegamento | Contatore frame 802.15.4 sul mittente |
| Contatore frame MLE | Contatore frame MLE sul mittente |
| Indirizzo di origine | RLOC16 del mittente |
| Dati leader | Informazioni sul leader dell'extender mesh, memorizzate sul mittente (RLOC, ID partizione, peso partizione) |
Eseguire il downgrade a un dispositivo in standby in grado di fungere da extender
Quando un extender mesh esegue il downgrade a un dispositivo in standby in grado di fungere da extender, i relativi collegamenti extender mesh vengono disconnessi e il dispositivo avvia la procedura di connessione MLE per stabilire un collegamento figlio-genitore.
Per ulteriori informazioni sulla procedura di connessione MLE, consulta Connettersi a una rete esistente per ulteriori informazioni.
Collegamenti di ricezione unidirezionali
In alcuni scenari, potrebbe essere necessario stabilire un collegamento di ricezione unidirezionale.
Dopo il ripristino di un extender mesh, gli extender mesh vicini potrebbero comunque avere un collegamento di ricezione valido con l'extender mesh ripristinato. In questo caso, l'extender mesh ripristinato invia un messaggio di richiesta di collegamento per ristabilire il collegamento extender mesh esistente.
Un dispositivo finale potrebbe anche voler stabilire un collegamento di ricezione con gli extender mesh vicini non genitori per migliorare l'affidabilità del multicast. Scopriremo di più su questo argomento quando parleremo del routing multicast.
Riepilogo
Ecco cosa hai imparato:
- Gli extender mesh in una rete Thread devono formare un Connected Dominating Set (CDS)
- I dispositivi in grado di fungere da extender (ECD) possono essere sottoposti ad upgrade a extender mesh o a downgrade a ECD in standby per mantenere il CDS
- La procedura di richiesta di collegamento MLE viene utilizzata per stabilire i collegamenti extender mesh