Selezione della rete Wi-Fi

In questa pagina vengono descritti gli algoritmi e le procedure utilizzati in Android 12 per selezionare e passare da una rete Wi-Fi all'altra. Android valuta costantemente 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.

  1. Il dispositivo ricerca le reti disponibili in uno dei seguenti modi, a seconda che lo schermo sia attivo o meno.

    • 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 prova a selezionare la rete migliore a cui connettersi.
    • Schermo spento (disconnesso): la CPU host programma il firmware con un elenco di reti preferite utilizzando l'offload di rete preferito (PNO) scansiona non appena lo schermo si spegne. Il firmware riattiva l'host se trova una delle reti preferite. AOSP presuppone che PNO sia supportato 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 su false, 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 continuano le analisi della connettività e la selezione della rete.

  2. 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 sia collegato a una connessione di 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 è sufficiente o se il dispositivo non è connesso a una rete, il framework chiama i nominatori della rete affinché generino un elenco di reti Wi-Fi candidate a cui connettersi, in base ai risultati della scansione filtrati. 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 e config_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 Blocco 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 overlay config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs e config_wifiHighMovementNetworkSelectionOptimizationRssiDelta, che configurano il requisito di stabilità nei risultati della scansione (variazione dell'RSSI nei risultati della scansione sufficientemente separati nel tempo).

  3. 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.

  4. 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.

  5. Il framework determina se il candidato vincente 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 vincente non corrisponde alla rete, il dispositivo viene associato al candidato vincente.

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 connessa 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:

  1. 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'overlayconfig_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 overlay config_wifiClientRssiMonitorThresholdDbm e config_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'overlay config_wifiClientRssiMonitorThresholdDbm).
  2. Il servizio Wi-Fi calcola un punteggio di connessione in base alle statistiche RSSI e del livello di collegamento.

  3. 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, come una rete cellulare.

Schermo disattivato

Il framework non avvia una valutazione sulla rete connessa, ma il processo di selezione della rete potrebbe comunque avvenire se le analisi 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 della connettività

Le scansioni vengono eseguite automaticamente a seconda che il dispositivo abbia lo schermo attivo, lo schermo spento e sia connesso al Wi-Fi oppure abbia lo schermo disattivato e non sia connesso al Wi-Fi.

Schermo acceso

Il framework attiva le decisioni di scansione a intervalli crescenti quando lo schermo è attivato. 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 del backoff esponenziale vengono reimpostati e riavviati dopo 20 secondi ogni volta che lo stato della schermata cambia, 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 RSSI 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 sovrapposizioneconfig_wifiConnectedHighRssiScanMinimumWindowSizeSec), e la rete è convalidata (connessa a internet) o approvata dall'utente per l'utilizzo senza accesso a internet.

Le soglie di 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 overlay config_wifi_framework_wifi_score_low_rssi_threshold_5GHz e config_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 viene stabilito che la qualità del Wi-Fi è scadente (come specificato di seguito) e il dispositivo supporta due stazioni simultanee, viene attivata una scansione. L'overlay config_wifiLowConnectedScoreThresholdToTriggerScanForMbb può essere utilizzato per configurare la soglia del punteggio che attiva la scansione. L'overlay config_wifiLowConnectedScoreScanPeriodSeconds può essere utilizzato per configurare il periodo di queste analisi.

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 scansioni 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 da cercare. 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 mobilità ridotta (il dispositivo è fermo), l'intervallo è di 60 secondi per le prime tre analisi (controllate dall'overlay config_wifiStationaryPnoScanIntervalMillis) e di 180 secondi (un moltiplicatore 3 volte fisso dell'overlay) per le analisi successive. In uno stato di mobilità elevata, l'intervallo è di 20 secondi per le prime tre analisi (controllate dall'overlay config_wifiMovingPnoScanIntervalMillis) e di 60 secondi (un moltiplicatore 3 volte fisso dell'overlay) per le analisi successive.

Nomination per la rete

I nominatori di reti trovano o creano configurazioni (WifiConfiguration) per reti che sono:

  • Disponibile (in base ai risultati della ricerca) o la rete connessa (che a volte non è presente nei risultati della ricerca inaffidabili).
  • 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 e config_wifiFrameworkScoreEntryRssiThreshold6ghz.
  • Non bloccato, 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 di rete suggerito: valuta tutte le reti fornite dalle app utilizzando l'API Suggestion (inclusi gli abbonamenti Passpoint suggeriti).
  • Nominatore della rete con punteggio esterno:meccanismo OEM per fornire opzioni di connettività di rete al dispositivo. Per maggiori informazioni, consulta la pagina Fornitore esterno di valutazione della rete.

Punteggiatori dei candidati

I 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 e config_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 e config_wifiFrameworkThroughputBonusDenominator ed è limitato a un valore massimo specificato utilizzando l'overlay config_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 e config_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 ha un punteggio più elevato rispetto a 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'overlayconfig_wifiFrameworkUnmeteredNetworkBonus.
  • Una rete salvata ha un punteggio più alto di una rete suggerita utilizzando l'API Recommendation. Il bonus viene configurato utilizzando l'overlayconfig_wifiFrameworkSavedNetworkBonus.
  • Le reti non attendibili (che possono essere richieste nell'ambito dell'API Suggestion) ricevono un punteggio inferiore a quello di qualsiasi altra rete.
  • Una rete per la quale in precedenza non è stata rilevata alcuna connessione a internet ottiene un punteggio pari a 0 se il dispositivo è attualmente connesso a un'altra rete che ha 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:

  1. Reti unmetered salvate
  2. Reti non a consumo suggerite
  3. Reti con limitazioni di consumo salvate
  4. 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 scorer possono essere usati per le metriche (per analizzare 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 conservando due contatori di errori, un contatore di errori continuo e un contatore di serie di errori, per tipo di errore specifico (vedi di seguito per un elenco dei tipi di errori). In caso di 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 dell'associazione, altri rifiuti generali dell'associazione: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold.
  • Timeout associazione: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold.
  • Errore di autenticazione, altri errori di autenticazione generali: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold.
  • Errore DHCP, provisioning non riuscito per DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold.
  • Disconnessione anomala, il dispositivo si è disconnesso dalla rete entro un breve periodo di tempo dalla connessione: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold. La finestra temporale è configurabile con config_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 quando viene raggiunta la durata del blocco.
  • Riavvia: tutte le liste bloccate sono state cancellate.
  • 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 numero di 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 dinamicamente 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 base* Disattiva tipo
DISABLED_DHCP_FAILURE Impossibile eseguire il provisioning di DHCP 5 5 minuti Temporanea
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 Temporanea
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 Temporanea
DISABLED_AUTHENTICATION_FAILURE Altri errori di autenticazione (diversi da una password errata o da un errore EAP) 5 5 minuti Temporanea
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 Temporanea
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 Temporanea

Una rete temporaneamente disattivata viene riattivata quando:

  • La durata della disattivazione è trascorsa.
  • L'utente seleziona manualmente la rete a cui connettersi.
  • L'utente attiva/disattiva il Wi-Fi.
  • Il sistema viene riavviato.
  • La rete è stata disattivata con un RSSI molto basso, ma in seguito viene rilevata di nuovo 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 una volta scaduta la durata della disattivazione.
  • L'utente seleziona manualmente la rete a cui connettersi.
  • Il sistema è stato riavviato.

Schede di valutazione

Le schede di valutazione, introdotte in Android 10, registrano sul dispositivo statistiche sui BSSID. I prospetti vengono resi persistenti utilizzando il servizio IpMemoryStore.

Le schede di valutazione non vengono utilizzate nella selezione della rete su Android 11.

Scelta connessione utente

Android utilizza un algoritmo di scelta della connessione utente che consente al processo di selezione di preferire le reti Wi-Fi a cui un utente si è esplicitamente connesso, 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 si verificano le seguenti condizioni:

  • L'ultima volta che è stata usata, la rete scelta dell'utente ha avuto accesso a internet
  • La scelta di Connessione utente ha un'intensità del segnale non inferiore a quella di quando era stata selezionata inizialmente con un margine di errore. Questo margine di errore può essere configurato utilizzando l'overlay config_wifiEstimateRssiErrorMarginDb.

La rete scelta dall'utente persiste dopo il 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.

Prima della pausa

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 cambio di rete "break-before-make", ovvero quando il dispositivo si disconnette dalla rete precedente prima di connettersi a quella 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 connessioni limitate 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 dei dispositivi per i produttori sono disponibili in Simultanea con restrizioni e connessione 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 per la rete Wi-Fi principale (che fornisce la connessione Internet alle normali app) avviene normalmente in parallelo.

Domande frequenti

  1. Le reti sicure hanno sempre la priorità sulle reti aperte?

    No. Salvati rispetto a suggeriti e a consumo rispetto a non a consumo sono le categorie principali in cui vengono valutate le reti. All'interno di ogni categoria, le reti sicure hanno una priorità rispetto alle reti aperte, ma viene data una ponderazione molto maggiore 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.

  2. Perché alle reti salvate viene assegnata la priorità rispetto alle 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.

  3. 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 perché sono stati scelti dopo un'attenta valutazione di diversi casi d'uso.