Visualizza l'origine su GitHub
Per consentire ai dispositivi finali in una rete Thread di passare a un genitore migliore di quello attuale, pur rimanendo collegati alla rete, attiva la funzionalità Ricerca periodica del genitore.
Per determinare se un genitore candidato è migliore per il dispositivo finale, questa funzionalità controlla una serie di attributi, tra cui:
- RSSI (indicatore di intensità del segnale ricevuto)
- Qualità del collegamento
- Connettività del genitore candidato ad altri Mesh Extender
- Numero di figli esistenti per il genitore candidato
In questo modo, i dispositivi finali si connettono al miglior genitore possibile anziché rimanere collegati a un genitore con scarsa qualità del collegamento o connettività. Questa funzionalità è particolarmente utile quando viene aggiunto un nuovo Mesh Extender a una rete Thread esistente.
Come funziona
- Il dispositivo finale controlla il valore RSSI medio del genitore attuale,
in base all'intervallo di controllo configurato
(
OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL). - Se il valore RSSI medio del genitore attuale del dispositivo finale è inferiore alla
soglia configurata
(
OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD), viene avviata una ricerca del genitore:- Se la ricerca del genitore rileva un genitore migliore, il dispositivo finale scioglie il collegamento figlio-genitore attuale e avvia la procedura di collegamento MLE con il nuovo genitore.
- Se la ricerca del genitore non rileva un genitore migliore, il collegamento figlio-genitore esistente rimane.
- Dopo il tentativo di ricerca del genitore, il dispositivo finale attende di controllare il valore RSSI
medio del genitore attuale in base all'intervallo di backoff
configurato
(
OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL). Questo backoff si verifica indipendentemente dal risultato della ricerca del genitore.
Ti consigliamo di attivare la funzionalità Informa il genitore precedente al ricollegamento insieme a questa funzionalità.
Come attivare
Questa funzionalità è disattivata per impostazione predefinita.
Per attivare la ricerca periodica del genitore, definisci
OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE come 1 nel
/src/core/config/parent_search.h
file, prima di creare OpenThread:
#ifndef OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE
#define OPENTHREAD_CONFIG_PARENT_SEARCH_ENABLE 1
#endif
Parametri
Utilizza i seguenti parametri in
/src/core/config/parent_search.h
per personalizzare questa funzionalità:
| Parametri | |||||
|---|---|---|---|---|---|
| OPENTHREAD_CONFIG_PARENT_SEARCH_CHECK_INTERVAL |
|
||||
| OPENTHREAD_CONFIG_PARENT_SEARCH_BACKOFF_INTERVAL |
|
||||
| OPENTHREAD_CONFIG_PARENT_SEARCH_RSS_THRESHOLD |
|
||||
API
Non esiste un'API pubblica per questa funzionalità.
CLI
Non esistono comandi dell'interfaccia a riga di comando correlati a questa funzionalità.