Questa pagina illustra gli algoritmi e le procedure utilizzati in Android 12 per selezionare e passare da una rete Wi-Fi all'altra. Android valuta continuamente la qualità della rete collegata e delle reti disponibili.
Durata di una connessione automatica
Questa pagina descrive la procedura di valutazione e connessione a reti Wi-Fi disponibili da parte di un dispositivo Android.
Il dispositivo cerca le reti disponibili in uno dei seguenti modi, a seconda che lo schermo sia acceso o spento.
- Schermo attivo (connesso): il sottosistema di connettività di Android valuta regolarmente se la connessione attuale è sufficiente per saltare la scansione (come definito nelle scansioni con lo schermo attivo). Se la connessione non è sufficientemente buona per saltare la scansione, il sottosistema di connettività attiva una scansione per rilevare le reti disponibili. Queste ricerche possono essere attivate anche da altri componenti di sistema, come il sistema di geolocalizzazione o un'app (inclusa l'app Impostazioni).
- Schermo acceso (disconnesso): il sottosistema di connettività di Android esegue scansioni periodiche seguendo una pianificazione di backoff esponenziale. Il modulo valuta tutti i risultati della scansione ricevuti e tenta di selezionare la migliore rete a cui connettersi.
- Schermo spento (disconnesso): la CPU host programma il firmware con un elenco di reti preferite utilizzando le scansioni di offload della rete preferita (PNO) non appena lo schermo si spegne. Il firmware riattiva l'host se rileva una delle reti preferite. AOSP presuppone che la PNO sia supportata sul dispositivo.
Il metodo
WifiManager#allowAutojoinGlobal(boolean)
può essere utilizzato per disattivare le connessioni automatiche. Si tratta di un'API privilegiata che può essere utilizzata dai produttori di dispositivi in circostanze limitate (ad esempio un dispositivo preconfigurato non mobile).Se il dispositivo è connesso e il riquadro
config_wifi_framework_enable_associated_network_selection
è impostato sufalse
, non vengono eseguite scansioni di connettività e i risultati della scansione non attivano la selezione della rete. Questa impostazione non ha effetto quando il dispositivo è disconnesso, il che significa che le ricerche di connettività e la selezione della rete continuano a verificarsi.I risultati della scansione vengono valutati.
Se il dispositivo è connesso a una rete Wi-Fi, il framework valuta se la rete attuale è sufficientemente buona da saltare la selezione della rete.
Una rete è definita sufficientemente buona da saltare la selezione della rete se è soddisfatto uno dei seguenti requisiti:
- Sono trascorsi meno di 10 secondi dall'ultima selezione della rete.
- L'utente si è connesso manualmente alla rete di recente (dove di recente è configurabile utilizzando l'overlay
config_wifiSufficientDurationAfterUserSelectionMilliseconds
). - Il dispositivo è connesso a una registrazione online (OSU).
Sono soddisfatti tutti i seguenti requisiti:
- L'RSSI è superiore alla soglia RSSI richiesta o è in corso un traffico sufficiente sulla connessione (consulta le scansioni con lo schermo attivo per le soglie di RSSI e traffico).
- La rete è convalidata (connessa a internet) o è approvata dall'utente per l'utilizzo senza accesso a internet.
- La rete non è misurata.
Se la rete è sufficientemente buona da saltare la selezione della rete, non viene intrapresa alcuna ulteriore azione.
Se la rete Wi-Fi connessa non è sufficientemente buona o se il dispositivo non è connesso a una rete, il framework chiama i nominati della rete per generare un elenco di reti Wi-Fi candidate a cui connettersi in base ai risultati della ricerca filtrata. I nominatori delle reti trovano configurazioni Wi-Fi esistenti o creano nuove configurazioni per le reti candidate.
I risultati della ricerca vengono filtrati per rimuovere i BSSID con un RSSI inferiore all'RSSI di entrata (configurabile utilizzando gli overlay
config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz
,config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz
econfig_wifiFrameworkScoreEntryRssiThreshold6ghz
). Inoltre, i BSSID bloccati vengono filtrati. I BSSID possono essere bloccati in base a ripetuti errori di connessione, disconnessioni frequenti e richieste esplicite dell'AP di non tentare l'associazione per un determinato periodo di tempo (MBO-OCE). Il blocco BSSID è descritto di seguito in Bloccare SSID e BSSID.Quando il dispositivo si muove rapidamente, i risultati della ricerca possono essere filtrati ulteriormente per rimuovere i BSSID il cui RSSI varia rapidamente (un'indicazione che non si muovono con il dispositivo). Questa ottimizzazione è configurabile utilizzando
config_wifiHighMovementNetworkSelectionOptimizationEnabled
(per attivare/disattivare l'ottimizzazione) e gli overlayconfig_wifiHighMovementNetworkSelectionOptimizationScanDelayMs
econfig_wifiHighMovementNetworkSelectionOptimizationRssiDelta
, che configurano il requisito di stabilità nei risultati della scansione (variazione dell'RSSI nei risultati della scansione sufficientemente separati nel tempo).
Il framework esegue il punteggio dei candidati per generare un punteggio per ogni candidato Service Set Identifier (SSID). Gli SSID candidati possono includere più identificatori di set di servizi di base (BSSID) candidati (generati dai nominatori di rete). Il candidato con il punteggio più alto è il candidato vincente.
Il framework esegue l'algoritmo di scelta di connessione dell'utente, che potrebbe rendere una rete selezionata dall'utente il nuovo candidato migliore anziché utilizzare il candidato migliore del punteggio del candidato.
Il framework determina se il candidato migliore corrisponde alla rete attualmente collegata. Affinché una corrispondenza venga considerata tale, deve essere soddisfatta una delle seguenti condizioni:
- Il candidato migliore e la rete Wi-Fi collegata hanno lo stesso BSSID.
- Se il roaming del firmware è disponibile (inclusa la funzionalità di lista nera BSSID), il candidato migliore e la rete collegata hanno lo stesso SSID e lo stesso tipo di sicurezza.
Se il candidato migliore corrisponde alla rete attualmente connessa, non viene intrapresa alcuna ulteriore azione. Se il candidato migliore non corrisponde alla rete, il dispositivo viene associato al candidato migliore.
Tieni presente che la connessione di rete automatica viene disattivata quando un'app utilizza l'API Wi-Fi Network Request, che sostituisce il sistema e crea una LAN senza internet, tranne sui dispositivi che supportano due stazioni simultanee.
Valutazione di una rete connessa
Il framework o il firmware Android valuta periodicamente la qualità della rete connessa. Questa sezione descrive come viene valutata la rete collegata quando lo schermo è acceso o spento.
Questa valutazione viene eseguita oltre alla selezione della rete discussa sopra.
Schermo acceso
Il framework Android valuta la rete connessa nel seguente modo:
Il servizio Wi-Fi esegue il polling delle statistiche RSSI e del livello di collegamento ogni 3 secondi (configurabile utilizzando l'overlay
config_wifiPollRssiIntervalMilliseconds
).Se l'aggiustamento dell'intervallo dinamico è abilitato utilizzando l'overlay
config_wifiAdjustPollRssiIntervalEnabled
, l'intervallo di polling cambia dinamicamente in base allo stato di mobilità del dispositivo e all'RSSI.- L'intervallo di polling viene esteso a 6 secondi (configurato dall'overlay
config_wifiPollRssiLongIntervalMilliseconds
) quando il dispositivo è fermo e l'RSSI è superiore a -68 dBm (configurato dagli overlayconfig_wifiClientRssiMonitorThresholdDbm
econfig_wifiClientRssiMonitorHysteresisDb
). - L'intervallo di polling viene ridotto nuovamente a 3 secondi (configurato dall'overlay
config_wifiPollRssiIntervalMilliseconds
) quando il dispositivo non è stazionario o l'RSSI è inferiore a -73 dBm (configurato dall'overlayconfig_wifiClientRssiMonitorThresholdDbm
).
- L'intervallo di polling viene esteso a 6 secondi (configurato dall'overlay
Il servizio Wi-Fi calcola un punteggio di connessione in base alle statistiche RSSI e del livello di collegamento.
Il servizio Wi-Fi passa il punteggio al servizio di connettività, che lo utilizza per determinare se connettersi a una rete Wi-Fi o a un altro tipo di rete disponibile, ad esempio una rete mobile.
Schermo disattivato
Il framework non avvia una valutazione sulla rete connessa, ma la procedura di selezione della rete potrebbe comunque verificarsi se le scansioni vengono avviate da altri componenti (ad esempio i servizi di geolocalizzazione). Il firmware valuta la qualità della rete e, se la qualità della rete è scarsa, il firmware potrebbe eseguire il roaming o (eventualmente) disattarsi dalla rete e riattivare l'host.
Scansioni di connettività
Le ricerche vengono eseguite automaticamente a seconda che lo schermo del dispositivo sia acceso, spento e connesso al Wi-Fi o spento e non connesso al Wi-Fi.
Schermo acceso
Il framework attiva le decisioni di scansione a intervalli crescenti quando lo schermo è attivo. Gli intervalli di decisione della scansione vengono configurati con gli overlay
config_wifiDisconnectedScanIntervalScheduleSec
,
config_wifiConnectedScanIntervalScheduleSec
e
config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec
(che sono array di interi). Per impostazione predefinita, le ricerche vengono eseguite utilizzando intervalli di backoff esponenziali di 20, 40, 80 e 160 secondi, con eventuali ricerche successive eseguite a intervalli di 160 secondi (questi sono i valori predefiniti di questi overlay).
Gli intervalli di scansione con riduzione esponenziale vengono reimpostati e riavviati ogni 20 secondi ogni volta che cambia lo stato dello schermo, ovvero quando lo schermo viene attivato o disattivato.
(Android 13 e versioni successive) Se sono necessari intervalli di scansione diversi in fase di esecuzione, un'app con privilegi OEM può chiamare l'API WifiManager#setScreenOnScanSchedule(screenOnScanSchedule)
per impostare dinamicamente la pianificazione della scansione con lo schermo attivo.
La decisione di eseguire o saltare una ricerca si basa sul fatto che la connessione di rete corrente sia sufficientemente buona per saltare la ricerca. Una connessione è sufficientemente buona per saltare la scansione se è soddisfatto uno dei seguenti requisiti:
- Il dispositivo è connesso a una registrazione online (OSU).
- La connessione deve supportare un volume di traffico sufficiente (vedi le soglie di traffico riportate di seguito).
- Il valore RSSI è superiore alla soglia richiesta (vedi le soglie RSSI di seguito),
e la selezione della rete è stata eseguita di recente (10 minuti per impostazione predefinita, ma
puoi essere configurato utilizzando il sovrapposizione
config_wifiConnectedHighRssiScanMinimumWindowSizeSec
), e la rete è convalidata (connessa a internet) o approvata dall'utente per l'utilizzo senza accesso a internet.
Le soglie RSSI e di traffico sono:
- L'RSSI è superiore a -73 dBm per la banda a 2,4 GHz, configurata con l'overlay
config_wifi_framework_wifi_score_low_rssi_threshold_24GHz
, o a -70 dBm per le bande a 5 GHz e 6 GHz, configurate con gli overlayconfig_wifi_framework_wifi_score_low_rssi_threshold_5GHz
econfig_wifiFrameworkScoreLowRssiThreshold6ghz
. - Il traffico (trasmissione o ricezione) è superiore a 16 pacchetti al secondo (pps)
configurato con l'overlay
config_wifiFrameworkMinPacketPerSecondActiveTraffic
.
Quando il dispositivo è connesso e lo schermo è acceso. Un punteggio collegato monitora periodicamente la qualità del Wi-Fi esaminando indicatori come l'RSSI e il numero di pacchetti trasferiti. Se la qualità del Wi-Fi viene considerata scarsa (come specificato di seguito) e il dispositivo supporta due stazioni simultanee, verrà attivata una ricerca. L'overlay config_wifiLowConnectedScoreThresholdToTriggerScanForMbb
può essere utilizzato per configurare la soglia di punteggio che attiva la scansione. L'overlay config_wifiLowConnectedScoreScanPeriodSeconds
può essere utilizzato per configurare il periodo di queste scansioni.
Schermo spento e connesso al Wi-Fi
Quando lo schermo è spento e il dispositivo è connesso a una rete Wi-Fi, il firmware (SoC Wi-Fi) esegue ricerche in roaming. Il framework non esegue ricerche quando lo schermo è spento.
Schermo spento e non connesso al Wi-Fi (stato disconnesso)
Quando lo schermo è spento e il Wi-Fi è disconnesso, il firmware esegue ricerche di SSID con PNO. Il framework configura il firmware con un elenco di SSID da cercare e un elenco di canali su cui eseguire la ricerca. Se viene rilevato un SSID configurato, il firmware riattiva il framework.
Il framework configura anche l'intervallo in cui il firmware deve eseguire le ricerche PNO, utilizzando lo stato di mobilità del dispositivo per selezionare intervalli di ricerca diversi.
In uno stato di bassa mobilità (il dispositivo è fermo), l'intervallo è di 60 secondi per le prime tre scansioni (controllate dall'overlay config_wifiStationaryPnoScanIntervalMillis
) e di 180 secondi (un moltiplicatore fisso di 3 volte dell'overlay) per le scansioni successive. In uno stato di alta
mobilità, l'intervallo è di 20 secondi per le prime tre scansioni (controllate
dall'overlay config_wifiMovingPnoScanIntervalMillis
) e di 60 (un moltiplicatore fisso di 3 volte
l'overlay) per le scansioni successive.
Nominatori della rete
I nominatori di reti trovano o creano configurazioni
(WifiConfiguration
)
per reti che sono:
- Disponibile (in base ai risultati della scansione) o la rete connessa (che a volte non è presente nei risultati della scansione inaffidabile).
- Avere un RSSI minimo. L'RSSI minimo è -80 dBm per la banda a 2,4 GHz e -77 dBm per le bande a 5 GHz e 6 GHz, configurabile utilizzando gli overlay
config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz
,config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz
econfig_wifiFrameworkScoreEntryRssiThreshold6ghz
. - Non bloccata, ad esempio a causa di errori di connessione precedenti.
- La rete non indica che non è utilizzabile (ad esempio, utilizzando MBO/OCE).
- Può essere associato all'utilizzo delle credenziali disponibili sul dispositivo.
Vengono utilizzati i seguenti nominatori di rete:
- Nominatore delle reti salvate:valuta tutte le reti salvate (inclusi gli abbonamenti Passpoint salvati).
- Nominatore della rete suggerita:valuta tutte le reti fornite dalle app utilizzando l'API Suggestion (inclusi gli abbonamenti Passpoint suggeriti).
Punteggiatori dei candidati
I valutatori dei candidati valutano e assegnano un punteggio a ciascun candidato. Il
punteggio per ThroughputScorer
(lo scorer predefinito) si basa su quanto segue:
- Viene calcolato un punteggio di base in base al valore RSSI, che ha un limite di -73 dBm per la banda a 2,4 GHz o -70 dBm per le bande a 5 GHz e 6 GHz (configurate con gli overlay
config_wifi_framework_wifi_score_low_rssi_threshold_24GHz
,config_wifi_framework_wifi_score_low_rssi_threshold_5GHz
econfig_wifiFrameworkScoreLowRssiThreshold6ghz
). - Un aumento del punteggio viene calcolato in base a una stima del throughput derivata dalla tecnologia, dalla frequenza del canale, dalla larghezza di banda, dall'RSSI, dalle condizioni del canale, dal numero massimo di stream spaziali e da altri parametri. Il miglioramento del punteggio è configurabile utilizzando gli overlay
config_wifiFrameworkThroughputBonusNumerator
econfig_wifiFrameworkThroughputBonusDenominator
ed è limitato a un valore massimo specificato utilizzando l'overlayconfig_wifiFrameworkThroughputBonusLimit
. - Una rete candidata selezionata di recente dall'utente o da un'app beneficia di un notevole aumento del punteggio per una durata configurabile utilizzando l'overlay
config_wifiFrameworkLastSelectionMinutes
(per la durata in questione, la rete viene selezionata in modo da avere la precedenza sulle reti non selezionate dall'utente). - Un candidato che corrisponde alla rete attuale riceve un aumento del punteggio configurato
dagli overlay
config_wifiFrameworkCurrentNetworkBonusMin
econfig_wifiFrameworkCurrentNetworkBonusPercent
(riceve un bonus extra in base a una percentuale del suo RSSI e del suo punteggio in base al throughput, fino al minimo configurabile). - Una rete sicura riceve un punteggio più alto di una rete aperta. Il bonus viene configurato utilizzando l'overlay
config_wifiFrameworkSecureNetworkBonus
. - Una rete non a consumo (senza costi) riceve un punteggio più alto di una rete a consumo (a pagamento).
Il bonus viene configurato utilizzando l'overlay
config_wifiFrameworkUnmeteredNetworkBonus
. - Una rete salvata ha un punteggio più alto di una rete suggerita utilizzando l'API Recommendation. Il bonus viene configurato utilizzando l'overlay
config_wifiFrameworkSavedNetworkBonus
. - Le reti non attendibili (che possono essere richieste nell'ambito dell'API Suggestion) vengono valutate in modo inferiore rispetto a qualsiasi altra rete.
- Una rete per cui in precedenza è stato rilevato che non ha accesso a internet riceve un punteggio pari a 0 se il dispositivo è attualmente connesso a un'altra rete con accesso a internet.
Il bonus predefinito per gli annunci salvati rispetto ai suggerimenti e per quelli non misurati rispetto a quelli misurati (ovvero i valori di overlay predefiniti) produce un ordine di priorità rigoroso per gli annunci salvati, suggeriti, misurati e non misurati:
- Reti non a consumo salvate
- Reti non a consumo suggerite
- Reti con limitazioni di consumo salvate
- Reti a consumo consigliate
Ciò significa che una rete non conteggiata (senza costi) salvata viene sempre selezionata prima di una rete conteggiata (a pagamento) salvata. Il bonus del punteggio selezionato di recente (da utente o app) può override questa priorità rigorosa.
Il framework può avere installati diversi valutatori candidati, ma solo uno può essere attivo alla volta. Gli altri assegnatori di punteggi possono essere utilizzati per le metriche (per esaminare algoritmi alternativi). In Android 11,
il punteggio predefinito è
ThroughputScorer
.
Blocco di SSID e BSSID
Il framework potrebbe bloccare gli SSID o i BSSID, ovvero non tenerli conto per le connessioni temporaneamente o definitivamente.
Blocco BSSID
Il blocco BSSID funziona mantenendo due contatori di errori, un contatore di errori continui e un contatore di serie, per tipo di errore specifico (vedi di seguito per un elenco dei tipi di errori). Quando si verifica un errore:
- Il contatore per il tipo di errore corrispondente viene incrementato.
- Se viene raggiunta la soglia di errore per quel tipo di errore:
- L'BSSID è bloccato.
- Il contatore della serie per l'errore viene incrementato.
La durata del blocco di un BSSID inizia da un valore di base (configurabile) (specificato dagli overlay config_wifiBssidBlocklistMonitorBaseBlockDurationMs
o config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs
, a seconda dell'RSSI) e aumenta esponenzialmente fino a un limite superiore configurabile (specificato dall'overlay config_wifiBssidBlocklistMonitorFailureStreakCap
). La durata aumenta se si verificano continuamente errori sullo stesso BSSID. La durata è la durata di base aumentata esponenzialmente dalla serie di errori, ovvero una serie di errori di 2 implica una durata del blocco di base quadruplicata.
Le soglie per il blocco del BSSID dipendono dal motivo dell'errore e sono ciascuna personalizzabile utilizzando gli overlay:
- L'AP rifiuta l'associazione utilizzando il codice Impossibile gestire la nuova STA MBO/OCE:
config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold
. - Convalida di internet tramite questa rete non riuscita:
config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold
. - Codice di errore di autenticazione della password errato:
config_wifiBssidBlocklistMonitorWrongPasswordThreshold
. - Codice di errore di autenticazione EAP per le reti EAP:
config_wifiBssidBlocklistMonitorEapFailureThreshold
. - Rifiuto di associazione, altri rifiuti di associazione generali:
config_wifiBssidBlocklistMonitorAssociationRejectionThreshold
. - Timeout associazione:
config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold
. - Errore di autenticazione, altri errori di autenticazione generali:
config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold
. - Errore DHCP, impossibile eseguire il provisioning di DHCP:
config_wifiBssidBlocklistMonitorDhcpFailureThreshold
. - Disconnessione anomala, il dispositivo si è disconnesso dalla rete in un breve periodo di tempo dopo la connessione:
config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold
. La finestra temporale è configurabile conconfig_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs
.
Condizioni di eliminazione della lista bloccata BSSID
Un BSSID viene rimosso dalla lista bloccata quando:
- Il Wi-Fi è attivato: tutti i BSSID vengono rimossi dalla lista bloccata.
- L'utente tocca una rete nel selettore Wi-Fi: tutti i BSSID della rete selezionata dall'utente vengono rimossi dalla lista bloccata.
- Timeout: i BSSID vengono rimossi dalla lista bloccata al termine della durata del blocco.
- Riavvio: tutte le liste bloccate vengono svuotate.
- Rete rimossa: tutti i BSSID associati a questa rete vengono rimossi dalla lista bloccata.
Condizioni di reimpostazione dei contatori di errori e serie:
- Riavvia: reimpostazione per tutti i BSSID.
- Rete rimossa: reimposta i BSSID associati alla rete.
Connessione L2 riuscita: reimposta per i seguenti codici di errore.
REASON_AP_UNABLE_TO_HANDLE_NEW_STA
REASON_WRONG_PASSWORD
REASON_EAP_FAILURE
REASON_ASSOCIATION_REJECTION
REASON_ASSOCIATION_TIMEOUT
REASON_AUTHENTICATION_FAILURE
REASON_ABNORMAL_DISCONNECT
(selezionato in modo condizionale solo se l'ultima volta che il dispositivo si è connesso a questo BSSID è trascorsa più di 3 ore)REASON_NONLOCAL_DISCONNECT_CONNECTING
Convalida della rete riuscita: viene reimpostato per il seguente codice di errore.
REASON_NETWORK_VALIDATION_FAILURE
Eseguire il provisioning DHCP riuscito: reimposta il seguente codice di errore.
REASON_DHCP_FAILURE
Blocco SSID
Il blocco dell'SSID funziona in modo simile al blocco del BSSID. Un contatore degli errori per tipo di errore per rete viene incrementato quando si verificano errori di connessione (di quel tipo).
Quando il conteggio degli errori di un determinato tipo supera una soglia, l'SSID viene bloccato definitivamente o temporaneamente in base a una configurazione. La configurazione per ogni tipo di errore è codificata in WifiConfiguration.NetworkSelectionStatus.DISABLE_REASON_INFOS
ed è riassunta di seguito.
* Per le reti disattivate temporaneamente, la durata della disattivazione cambia in modo dinamico in base al numero di errori di connessione consecutivi riscontrati sulla rete. Dopo che una rete non riesce a connettersi consecutivamente cinque volte, ogni errore successivo comporta una durata della disattivazione doppia rispetto alla durata precedente. Ad esempio, una rete con cinque errori consecutivi viene disattivata per 5 minuti, poi per 10 minuti al sesto errore, per 20 minuti al settimo errore e così via fino al limite massimo di 18 ore. |
||||
Codice di errore | Descrizione | Soglia | Durata della disattivazione di base* | Tipo di disattivazione |
---|---|---|---|---|
DISABLED_DHCP_FAILURE |
Impossibile eseguire il provisioning del DHCP | 5 | 5 minuti | Temporaneo |
DISABLED_NO_INTERNET_TEMPORARY |
La convalida della rete non è riuscita, ma l'utente dichiara di voler continuare a connettersi a questa rete in futuro | 1 | 10 minuti | Temporaneo |
DISABLED_AUTHENTICATION_NO_CREDENTIALS |
L'utente non dispone delle credenziali per connettersi alla rete | 1 | NA | Definitiva |
DISABLED_NO_INTERNET_PERMANENT |
Valore predefinito per l'errore di convalida della rete | 1 | NA | Definitiva |
DISABLED_BY_WIFI_MANAGER |
Obsoleti e inutilizzati | 1 | NA | Definitiva |
DISABLED_BY_WRONG_PASSWORD |
La password non è corretta e non è mai stata eseguita una connessione riuscita a questa rete | 1 | NA | Definitiva |
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION |
Errore EAP quando la scheda SIM non è sottoscritta | 1 | NA | Definitiva |
DISABLED_ASSOCIATION_REJECTION |
Mancata associazione | 5 | 5 minuti | Temporaneo |
DISABLED_AUTHENTICATION_FAILURE |
Altri errori di autenticazione (diversi da una password errata o da un errore EAP) | 5 | 5 minuti | Temporaneo |
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR |
Errore EAP (privato) specifico del provider. | 1 | NA | Definitiva |
DISABLED_NETWORK_NOT_FOUND |
Il supplicant non è riuscito a trovare una rete nei risultati della ricerca che corrisponda alla rete richiesta dal framework per la connessione (incluse le funzionalità di rete). | 2 | 5 minuti | Temporaneo |
DISABLED_CONSECUTIVE_FAILURES |
La rete non è riuscita a connettersi per cinque o più volte consecutive. Il tipo di errore per questi errori include, a titolo esemplificativo, i tipi di errore elencati in questa tabella. |
5 | 5 minuti | Temporaneo |
Una rete temporaneamente disattivata viene riattivata quando:
- La durata della disattivazione è trascorsa.
- L'utente seleziona manualmente la rete a cui connettersi.
- L'utente attiva e disattiva il Wi-Fi.
- Il sistema viene riavviato.
- La rete è stata disattivata a un RSSI molto basso, ma in seguito viene nuovamente rilevata a un RSSI moderato o superiore.
Una rete disattivata definitivamente viene riattivata quando:
- L'utente seleziona manualmente la rete a cui connettersi.
I contatori degli errori per una rete vengono reimpostati quando:
- La rete viene rimossa.
- Il dispositivo si è connesso alla rete.
- La rete è stata riattivata dopo il timeout della durata della disattivazione.
- L'utente seleziona manualmente la rete a cui connettersi.
- Il sistema viene riavviato.
Schede di valutazione
Le schede di valutazione, introdotte in Android 10, registrano statistiche sul dispositivo relative ai BSSID. Le schede di valutazione vengono mantenute utilizzando il servizio
IpMemoryStore
.
Le schede di valutazione non vengono utilizzate nella selezione della rete su Android 11.
Scelta di connessione dell'utente
Android ha un algoritmo di scelta della connessione dell'utente che consente al processo di selezione di dare la preferenza alle reti Wi-Fi a cui un utente si è connesso esplicitamente, ad esempio una rete di casa. Gli utenti potrebbero preferire queste reti alle reti pubbliche anche se il rendimento è inferiore a quello di una rete pubblica perché forniscono servizi aggiuntivi come la possibilità di controllare i dispositivi di casa.
La preferenza dell'utente per una rete viene acquisita contrassegnando tutte le configurazioni Wi-Fi visibili e le relative intensità del segnale al momento in cui l'utente seleziona una rete. Se durante la procedura di selezione automatica viene selezionata una delle configurazioni Wi-Fi contrassegnate ed è disponibile una rete selezionata dall'utente, l'algoritmo di scelta della connessione dell'utente sostituisce la selezione con la rete selezionata dall'utente se sono soddisfatte le seguenti condizioni:
- La rete scelta dall'utente per la connessione aveva accesso a internet l'ultima volta che è stata utilizzata
- La scelta di connessione dell'utente ha un'intensità del segnale non peggiore di quella selezionata inizialmente con un margine di errore. Questo margine di errore può essere configurato utilizzando l'overlay
config_wifiEstimateRssiErrorMarginDb
.
La rete scelta dall'utente per la connessione persiste dopo un riavvio. La scelta di connessione dell'utente funziona per le reti salvate, le reti Passpoint e le reti suggerite.
Due stazioni simultanee
Questa sezione descrive la selezione della rete Wi-Fi quando un dispositivo supporta la connessione a due reti Wi-Fi contemporaneamente.
Fai prima dell'interruzione
Se la funzione make-before-break è attivata, il dispositivo tenta di connettersi alla nuova rete prima di disconnettersi dalla vecchia rete. Il flusso make-before-break utilizza lo stesso algoritmo di selezione della rete del passaggio di rete break-before-make (ovvero quando il dispositivo si disconnette dalla vecchia rete prima di connettersi alla nuova). Se l'algoritmo di selezione della rete sceglie una rete che non può essere commutata utilizzando la modalità Fai prima di rompere, il dispositivo passa automaticamente alla modalità Rompe prima di fare.
Connessione a internet e con limitazioni contemporaneamente
Se la funzione di connessione con limitazioni e a internet contemporaneamente è attiva, il dispositivo può connettersi a una rete Wi-Fi secondaria con limitazioni, disponibile solo per alcune app configurate dal produttore del dispositivo. Le istruzioni per la configurazione da parte dei produttori di dispositivi sono riportate in Connessione contemporaneamente limitata e a internet.
Quando l'algoritmo di selezione della rete rileva risultati di scansione corrispondenti al suggerimento pagato o privato dell'OEM, si connette automaticamente come seconda rete. La selezione della rete Wi-Fi principale (che fornisce la connessione a internet alle app normali) avviene normalmente in parallelo.
Domande frequenti
Le reti sicure hanno sempre la priorità sulle reti aperte?
No. Salvati e suggeriti e a consumo e non a consumo sono le categorie principali in cui vengono valutate le reti. All'interno di ogni categoria, le reti sicure hanno una certa priorità rispetto alle reti aperte, ma viene data molta più importanza alla qualità della connessione.
Il motivo è che la sicurezza effettiva dei dati utente è fornita dalla crittografia end-to-end (ad esempio TLS). Le reti sicure criptano solo la prima parte della comunicazione e, anche in questo caso, per le reti con chiavi predefinite, non offrono molta privacy.
Perché le reti salvate hanno la priorità sulle reti suggerite?
Le reti senza costi (senza limiti di consumo) salvate hanno la priorità sulle reti senza costi suggerite e le reti a consumo salvate hanno la priorità sulle reti a consumo suggerite.
Le reti salvate hanno la priorità rispetto alle reti suggerite perché sono quelle aggiunte dall'utente al dispositivo in modo esplicito. Ciò implica una preferenza per la connessione a queste reti, se possibile.
Tieni presente che gli utenti possono disattivare il comportamento di connessione automatica per le singole reti salvate, ovvero indicare che queste reti devono essere utilizzate solo manualmente e non devono essere considerate automaticamente dal dispositivo.
Posso modificare l'ordine di priorità rigoroso o rimuoverlo completamente?
Il produttore del dispositivo può modificare le decisioni di selezione della rete modificando gli overlay bonus elencati nelle sezioni precedenti. Tuttavia, non è consigliabile modificare i valori predefiniti, in quanto sono stati scelti dopo un'attenta considerazione di più casi d'uso.