Selezione della rete Wi-Fi Android

Questa pagina descrive gli algoritmi e le procedure utilizzate in Android 12 per la selezione e il passaggio tra le reti Wi-Fi. Android valuta continuamente la qualità della rete connessa e valuta la qualità delle reti disponibili.

Vita di una connessione automatica

Descrive il processo di valutazione e connessione di un dispositivo Android alle reti Wi-Fi disponibili.

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

    • Schermo (collegato): Il sottosistema connettività Android valuta periodicamente se la connessione corrente è abbastanza buono per saltare la scansione (come definito nella schermata-on scansioni ). Se la connessione non è abbastanza buono per saltare la scansione, la connettività sottosistema innesca una scansione per rilevare le reti disponibili. Queste scansioni possono essere attivate anche da altri componenti del sistema come il sistema di localizzazione o un'app (inclusa l'app Impostazioni).
    • Schermo (scollegato): I problemi Android sottosistema connettività scansioni periodiche a seguito di un programma di backoff esponenziale. Il modulo valuta tutti i risultati di scansione ricevuti e cerca di selezionare la rete migliore a cui connettersi.
    • Schermo off (scollegato): I programmi di CPU host del firmware con una lista di reti preferite utilizzando offload rete preferita (PNO) esegue la scansione non appena lo schermo si spegne. Il firmware riattiva l'host se trova una delle reti preferite. AOSP presuppone che il PNO sia supportato sul dispositivo.

    Il WifiManager#allowAutojoinGlobal(boolean) metodo può essere utilizzato per connessioni automatiche disabili. Si tratta di un'API privilegiata che può essere utilizzata dai produttori di dispositivi in ​​circostanze limitate (ad esempio, un dispositivo non mobile e preconfigurato).

    Se il dispositivo è collegato e la config_wifi_framework_enable_associated_network_selection Sovrapposizione sono false , non vi sono immagini connettività sono eseguite ei risultati delle analisi non do selection rete di sgancio. Questa impostazione non ha effetto quando il dispositivo è disconnesso, il che significa che le scansioni della connettività e la selezione della rete continuano a verificarsi.

  2. I risultati della scansione vengono valutati.

    • Se il dispositivo è collegato a una rete Wi-Fi, le Esamina quadro se la rete attuale è abbastanza buono per saltare selezione della rete.

      Una rete è definita come abbastanza buono per saltare selezione della rete se uno dei seguenti requisiti:

      • Sono trascorsi meno di 10 secondi dall'ultima selezione della rete.
      • L'utente recentemente collegata manualmente alla rete (dove recentemente è configurabile usando l' config_wifiSufficientDurationAfterUserSelectionMilliseconds overlay).
      • Il dispositivo è connesso a una connessione di registrazione online (OSU).
      • Tutti i seguenti requisiti sono soddisfatti:

        • RSSI è superiore alla soglia RSSI necessaria o sufficiente traffico scorre sopra il collegamento (vedi screen-su scansioni per RSSI e soglie di traffico).
        • La rete è convalidata (collegata a Internet) o approvata dall'utente per l'utilizzo senza accesso a Internet.
    • Se la rete è sufficiente per saltare selezione della rete buona, non viene eseguita alcuna ulteriore azione.

    • Se la collegata rete Wi-Fi non è abbastanza buono o se il dispositivo non è connesso a una rete, il quadro chiama i designatori di rete per generare un elenco di reti Wi-Fi per connettersi a candidati in base ai risultati della scansione filtrati. I nominatori di rete trovano le configurazioni Wi-Fi esistenti o creano nuove configurazioni per le reti candidate.

    • I risultati della scansione vengono filtrati per rimuovere BSSID che hanno un RSSI sotto la voce RSSI (utilizzando i configurabile config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz , e config_wifiFrameworkScoreEntryRssiThreshold6ghz sovrapposizioni). Inoltre, i BSSID bloccati vengono filtrati. I BSSID possono essere bloccati in base a ripetuti errori di connessione, disconnessioni frequenti e richieste esplicite dall'AP di non tentare l'associazione per un certo periodo di tempo (MBO-OCE). BSSID blocco è descritto di seguito in SSID e BSSID blocco .

    • Quando il dispositivo si muove rapidamente, i risultati della scansione vengono facoltativamente ulteriormente filtrati per rimuovere i BSSID il cui RSSI varia rapidamente (indicazione che non si muovono insieme al dispositivo). Questa ottimizzazione è configurabile utilizzando config_wifiHighMovementNetworkSelectionOptimizationEnabled (abilitazione / disabilitazione di ottimizzazione), e le config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs e config_wifiHighMovementNetworkSelectionOptimizationRssiDelta sovrapposizioni, che configurano il requisito stabilità sui risultati della scansione (cambiamento RSSI sopra risultati di scansione sufficientemente separati nel tempo).

  3. Il quadro gestisce il marcatore candidato per generare un punteggio per ogni candidato Service Set Identifier (SSID). I candidati SSID possono includere più candidati identificativi del set di servizi di base (BSSID) (generati dai nominatori della rete). Il candidato con il punteggio più alto è il candidato vincente.

  4. Il quadro esegue la scelta di connessione dell'utente algoritmo, che potrebbe fare una rete selezionata dall'utente il nuovo candidato vincente invece di utilizzare il candidato vincente dal marcatore candidato.

  5. Il framework determina se il candidato vincente corrisponde alla rete attualmente connessa. Per essere considerata una corrispondenza, deve essere soddisfatta una delle seguenti condizioni:

    • Il candidato vincitore e la rete Wi-Fi connessa hanno lo stesso BSSID.
    • Se è disponibile il roaming del firmware (inclusa la funzionalità della lista nera BSSID), il candidato vincitore e la rete connessa hanno lo stesso SSID e lo stesso tipo di sicurezza.

    Se il candidato vincitore corrisponde alla rete attualmente connessa, non vengono eseguite ulteriori azioni. Se il candidato vincitore non corrisponde alla rete, il dispositivo viene associato al candidato vincitore.

Si noti che la connessione di rete automatico è disabilitato quando un'applicazione utilizza la richiesta API rete Wi-Fi , che sostituisce il sistema e crea un non-internet LAN, tranne che su dispositivi che supportano le stazioni simultanee dual.

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 è eseguita in aggiunta alla selezione della rete discusso sopra.

Schermo acceso

Il framework Android valuta la rete connessa nel modo seguente:

  1. I sondaggi Servizio Wi-Fi RSSI e link-layer statistiche ogni 3 secondi (configurabile mediante i config_wifiPollRssiIntervalMilliseconds overlay).
  2. Il servizio Wi-Fi calcola un punteggio connesso in base alle statistiche RSSI e del livello di collegamento.
  3. Il servizio Wi-Fi passa il punteggio al servizio di connettività, che utilizza il punteggio per determinare se connettersi a una rete Wi-Fi oa un altro tipo di rete disponibile, ad esempio una rete cellulare.

Schermo spento

Il quadro non avvia una valutazione sulla rete collegata, ma la selezione della rete processo potrebbe ancora verificarsi se le scansioni vengono avviate da altri componenti (ad esempio, servizi di localizzazione). Il firmware valuta la qualità della rete e se la qualità della rete è scadente, il firmware potrebbe eseguire il roaming o (eventualmente) disconnettersi dalla rete e riattivare l'host.

Scansioni di connettività

Le scansioni vengono eseguite automaticamente in base al fatto che il dispositivo abbia lo schermo acceso, lo schermo sia spento e sia connesso al Wi-Fi, oppure abbia lo schermo spento e non sia connesso al Wi-Fi.

Schermo acceso

Il framework attiva le decisioni di scansione a intervalli crescenti quando lo schermo è acceso. Gli intervalli di decisione di scansione sono configurati con la config_wifiDisconnectedScanIntervalScheduleSec , config_wifiConnectedScanIntervalScheduleSec e config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec sovrapposizioni (che sono array di interi). Per impostazione predefinita, le scansioni vengono eseguite utilizzando intervalli di backoff esponenziali di 20, 40, 80 e 160 secondi, con scansioni successive possibilmente eseguite a intervalli di 160 secondi (questi sono i valori predefiniti delle sovrapposizioni sopra).

Gli intervalli di scansione del backoff esponenziale vengono reimpostati e riavviano a 20 secondi ogni volta che lo stato dello schermo cambia, ovvero quando lo schermo viene attivato o disattivato.

Una decisione se eseguire o saltare una scansione si basa sul fatto che la connessione di rete attuale è abbastanza buono per saltare la scansione. Una connessione è abbastanza buono per saltare la scansione se uno dei seguenti requisiti:

  • Il dispositivo è connesso a una connessione di registrazione online (OSU).
  • Sulla connessione scorre traffico sufficiente (vedere le soglie di traffico di seguito).
  • RSSI è superiore alla soglia RSSI richiesto (vedi soglie RSSI sotto), e la selezione di rete è stata eseguita recentemente (10 minuti di default ma può essere configurato con il config_wifiConnectedHighRssiScanMinimumWindowSizeSec overlay), e sia la rete viene convalidato (collegato a Internet) o utente -approvato per l'uso senza accesso a Internet.

Le soglie RSSI e di traffico sono:

  • RSSI è al di sopra -73 dBm per la banda a 2,4 GHz, configurato con il config_wifi_framework_wifi_score_low_rssi_threshold_24GHz sovrapposizione, o -70 dBm per le bande 5 GHz e 6 GHz, configurato con le config_wifi_framework_wifi_score_low_rssi_threshold_5GHz e config_wifiFrameworkScoreLowRssiThreshold6ghz sovrapposizioni.
  • Traffico (trasmissione o ricezione) è superiore a 16 pacchetti al secondo (pps) configurate con il config_wifiFrameworkMinPacketPerSecondActiveTraffic sovrapposizione.

Schermo spento e connesso al Wi-Fi

Quando lo schermo è spento e il dispositivo è connesso a una rete Wi-Fi, il firmware (Wi-Fi SoC) esegue le scansioni in roaming. Il framework non esegue alcuna scansione quando lo schermo è spento.

Schermo spento e non connesso al Wi-Fi (stato disconnesso)

Quando lo schermo è spento e la connessione Wi-Fi è scollegato, sulle prestazioni del firmware Pno scansioni per SSID. Il framework configura il firmware con un elenco di SSID da cercare e un elenco di canali su cui eseguire la scansione. Se viene trovato un SSID configurato, il firmware riattiva il framework.

Il framework configura anche l'intervallo in cui il firmware deve eseguire le scansioni PNO, utilizzando lo stato di mobilità del dispositivo per selezionare diversi intervalli di scansione. In uno stato bassa mobilità (il dispositivo è fermo) l'intervallo è di 60 secondi per i primi tre scansioni (controllati dal config_wifiStationaryPnoScanIntervalMillis overlay), e 180 secondi (un moltiplicatore 3x fisso della sovrapposizione) per le scansioni successive. In uno stato di alta mobilità l'intervallo è di 20 secondi per i primi tre scansioni (controllati dal config_wifiMovingPnoScanIntervalMillis overlay), e 60 (un moltiplicatore 3x fisso della sovrapposizione) secondi per le scansioni successive.

Nominatori di rete

I designatori di rete trovare o creare configurazioni ( WifiConfiguration ) per le reti che sono:

  • Attualmente disponibile (basato sui risultati della scansione) o la rete attualmente connessa (che a volte non è presente nei risultati della scansione instabile).
  • Avere un RSSI minimo. Minimal RSSI è -80 dBm per la banda a 2,4 GHz e -77 dBm per le bande 5 GHz e 6 GHz, configurabile tramite i config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz e config_wifiFrameworkScoreEntryRssiThreshold6ghz sovrapposizioni.
  • Non bloccato, ad esempio, a causa di precedenti errori di connessione.
  • La rete non indica che è inutilizzabile (ad esempio, utilizzando MBO/OCE).
  • Può essere associato all'utilizzo delle credenziali disponibili sul dispositivo.

Vengono utilizzati i seguenti denominatori di rete:

  • Salvato nominator rete: reti valuta tutti salvati (compresi gli abbonamenti Passpoint salvati).
  • Suggerita nominator rete: valuta tutte le reti fornite dalle applicazioni utilizzando l' API Suggerimento (compresi abbonamenti Passpoint suggeriti).
  • Esternamente segnato nominator rete: meccanismo di OEM per fornire opzioni di connettività di rete al dispositivo. Per ulteriori informazioni, vedere fornitore di Valutazione della rete esterna .

Marcatori candidati

I candidati valutatori valutano e forniscono un punteggio per ciascun candidato. Il punteggio per ThroughputScorer (il miglior marcatore di default) si basa sui seguenti punti:

  • Un punteggio di base è calcolata sulla base di RSSI dove RSSI è limitato a -73 dBm per la banda 2,4 GHz o -70 dBm per le bande 5 GHz e 6 GHz (configurato con le config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , config_wifi_framework_wifi_score_low_rssi_threshold_5GHz e config_wifiFrameworkScoreLowRssiThreshold6ghz sovrapposizioni).
  • Viene calcolato un incremento del punteggio 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 flussi spaziali e da altri parametri. La spinta punteggio è configurabile utilizzando i config_wifiFrameworkThroughputBonusNumerator e config_wifiFrameworkThroughputBonusDenominator sovrapposizioni, ed è limitata ad un valore massimo specificato utilizzando il config_wifiFrameworkThroughputBonusLimit sovrapposizione.
  • Una rete candidato che è stato recentemente selezionato dall'utente o da un'applicazione ottiene un grande impulso punteggio per una durata configurabile utilizzando il config_wifiFrameworkLastSelectionMinutes sovrapposizione (per quella durata è garantita la rete di essere selezionati su reti non utilizzatore-selezionato).
  • Un candidato che corrisponde l'attuale rete riceve una spinta punteggio configurato dalle config_wifiFrameworkCurrentNetworkBonusMin e config_wifiFrameworkCurrentNetworkBonusPercent sovrapposizioni (si ottiene un bonus extra sulla base di una percentuale del suo RSSI e il throughput a base di punteggio, al minimo configurabile).
  • Una rete sicura ha un punteggio più alto di una rete aperta. Il bonus viene configurato utilizzando il config_wifiFrameworkSecureNetworkBonus sovrapposizione.
  • Una rete illimitata (gratuita) ha un punteggio più alto di una rete a consumo (a pagamento). Il bonus viene configurato utilizzando il config_wifiFrameworkUnmeteredNetworkBonus sovrapposizione.
  • Una rete salvata riceve un punteggio più alto di una rete suggerita utilizzando l'API dei suggerimenti. Il bonus viene configurato utilizzando il config_wifiFrameworkSavedNetworkBonus sovrapposizione.
  • Le reti non attendibili (che possono essere richieste come parte dell'API di suggerimento) hanno un punteggio inferiore rispetto a qualsiasi altra rete.
  • Una rete che è stata precedentemente rilevata come priva di Internet ottiene un punteggio di 0 se il dispositivo è attualmente connesso a un'altra rete con accesso a Internet.

Il bonus predefinito per i valori salvati rispetto a quelli suggeriti e non misurati rispetto a quelli misurati (ovvero i valori di sovrapposizione predefiniti) produce un rigoroso ordine di priorità per i valori salvati, suggeriti, misurati e non misurati:

  1. Reti illimitate salvate
  2. Reti illimitate suggerite
  3. Reti a consumo salvate
  4. Reti a consumo suggerite

Ciò significa che una rete a consumo salvata (gratuita) viene sempre selezionata prima di una rete a consumo salvata (a pagamento). Il bonus punteggio selezionato di recente (dall'utente o dall'app) può ignorare quella priorità rigorosa.

Il framework può avere più candidati scorer installati, ma solo uno può essere attivo alla volta. Gli altri punteggi possono essere utilizzati per le metriche (per studiare algoritmi alternativi). In Android 11, il miglior marcatore di default è ThroughputScorer .

Blocco SSID e BSSID

Il framework può bloccare SSID e/o BSSID, ovvero non considerarli per le connessioni temporaneamente o permanentemente.

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 sotto per un elenco dei tipi di errore). Quando si verifica un guasto:

  • Il contatore per il tipo di errore corrispondente viene incrementato.
  • Se viene raggiunta la soglia di errore per quel tipo di errore:
    • Il BSSID è bloccato.
    • Il contatore di serie per l'errore viene incrementato.

La durata di un BSSID è bloccato per inizia ad un valore (configurabile) base (indicato dalle config_wifiBssidBlocklistMonitorBaseBlockDurationMs o config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs sovrapposizioni, a seconda del RSSI), e aumenta esponenzialmente fino ad un limite superiore configurabile (specificato dal config_wifiBssidBlocklistMonitorFailureStreakCap overlay). La durata aumenta se si verificano continuamente errori sullo stesso BSSID. La durata è la durata base aumentata in modo esponenziale dalla serie di fallimenti, ovvero una serie di fallimenti di 2 implica una durata del blocco base 4x.

Le soglie per il blocco BSSID dipendono dal motivo dell'errore e sono personalizzabili utilizzando gli overlay:

  • AP rifiuta associazione utilizzando il MBO / OCE Impossibile gestire nuovo codice STA: config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold .
  • Validazione Internet attraverso questa rete non è riuscita: config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold .
  • Sbagliato password di autenticazione codice di errore: config_wifiBssidBlocklistMonitorWrongPasswordThreshold .
  • EAP codice di errore Errore di autenticazione per le reti EAP: config_wifiBssidBlocklistMonitorEapFailureThreshold .
  • Rifiuto associazione, altri rifiuti generale dell'associazione: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold .
  • Associazione timeout: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold .
  • Errore di autenticazione, altri errori di autenticazione generale: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold .
  • Fallimento DHCP, la mancata fornitura DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold .
  • Disconnessione anomala, il dispositivo è scollegato dalla rete entro un breve periodo dopo la connessione: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold . La finestra temporale è configurabile con config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs .

Condizioni di cancellazione della blocklist BSSID

Un BSSID viene cancellato dalla blocklist quando:

  • Il Wi-Fi è attivato: tutti i BSSID vengono rimossi dalla blocklist.
  • L'utente tocca una rete nel selettore Wi-Fi: tutti i BSSID della rete selezionata dall'utente vengono rimossi dalla blocklist.
  • Timeout: i BSSID vengono rimossi dalla blocklist quando viene raggiunta la durata del blocco.
  • Riavvia: tutte le liste bloccate vengono cancellate.
  • Rete rimossa: tutti i BSSID associati a questa rete vengono rimossi dalla blocklist.

Condizioni di azzeramento dei contatori di guasti e di serie:

  • Riavvia: ripristina tutti i BSSID.
  • Rete rimossa: ripristino per i BSSID associati alla rete.
  • Connessione L2 riuscita: Reset 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 (condizionatamente cancellata solo se l'ultima volta che il dispositivo collegato a questa BSSID era più di 3 ore fa)
    • REASON_NONLOCAL_DISCONNECT_CONNECTING
  • Convalida di rete riuscita: reimposta per il seguente codice di errore.

    • REASON_NETWORK_VALIDATION_FAILURE
  • Provisioning DHCP riuscito: reimposta per il seguente codice di errore.

    • REASON_DHCP_FAILURE

Blocco SSID

Il blocco SSID funziona in modo simile al blocco BSSID. Un contatore di 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 in modo permanente o temporaneo in base a una configurazione. La configurazione per ogni tipo di errore è codificato in WifiConfiguration.NetworkSelectionStatus.DISABLE_REASON_INFOS ed è riassunto qui di seguito.

* Per le reti temporaneamente disabilitate, la durata della disabilitazione 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 determina una durata della disattivazione doppia rispetto alla durata precedente. Ad esempio, una rete con cinque guasti consecutivi viene disabilitata per 5 minuti, quindi 10 minuti al sesto guasto, 20 minuti al settimo guasto e così via fino al limite massimo di 18 ore.

Codice di errore Descrizione Soglia Durata disabilitazione base* Disabilita tipo
DISABLED_DHCP_FAILURE Mancato 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 Al richiedente mancano le credenziali per connettersi alla rete 1 N / A Permanente
DISABLED_NO_INTERNET_PERMANENT Predefinito per errore di convalida della rete 1 N / A Permanente
DISABLED_BY_WIFI_MANAGER Deprecato e inutilizzato 1 N / A Permanente
DISABLED_BY_WRONG_PASSWORD La password non è corretta e questa rete non è mai stata collegata correttamente a 1 N / A Permanente
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION Guasto EAP in cui la carta SIM non è sottoscritta 1 N / A Permanente
DISABLED_ASSOCIATION_REJECTION Errori di rifiuto dell'associazione 5 5 minuti Temporaneo
DISABLED_AUTHENTICATION_FAILURE Altri errori di autenticazione (ovvero non una password errata o un errore EAP) 5 5 minuti Temporaneo
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR Errore EAP (privato) specifico del provider. 1 N / A Permanente
DISABLED_NETWORK_NOT_FOUND Il richiedente non è riuscito a trovare una rete nei risultati della scansione 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 cinque o più volte consecutive. Il tipo di errore per questi errori include ma non è limitato ai tipi di errore elencati in questa tabella.
5 5 minuti Temporaneo

Una rete temporaneamente disabilitata viene riattivata quando:

  • La durata della disattivazione è trascorsa.
  • L'utente seleziona manualmente la rete a cui connettersi.
  • L'utente attiva il Wi-Fi.
  • Il sistema viene riavviato.

Una rete disattivata in modo permanente viene riattivata quando:

  • L'utente seleziona manualmente la rete a cui connettersi.

I contatori di guasti per una rete vengono azzerati quando:

  • La rete viene rimossa.
  • Il dispositivo si è connesso correttamente 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 segnapunti

Le schede punteggio, introdotte in Android 10, registrano le statistiche sul dispositivo sui BSSID. Carte punteggio vengono mantenute utilizzando IpMemoryStore servizio.

Le schede punteggio non vengono utilizzate nella selezione della rete Android 11.

Scelta della connessione dell'utente

Android ha un algoritmo di scelta della connessione dell'utente che consente al processo di selezione di preferire le reti Wi-Fi a cui un utente si è esplicitamente connesso, ad esempio una rete domestica. Gli utenti potrebbero preferire tali reti alle reti pubbliche anche quando le prestazioni sono inferiori rispetto a una rete pubblica perché forniscono servizi aggiuntivi come la capacità di controllare i dispositivi domestici.

La preferenza dell'utente per una rete viene acquisita contrassegnando tutte le configurazioni Wi-Fi visibili e la loro potenza del segnale nel momento in cui l'utente seleziona una rete. Se una delle configurazioni Wi-Fi contrassegnate viene selezionata durante il processo di selezione automatica ed è disponibile una rete selezionata dall'utente, l'algoritmo di scelta della connessione dell'utente sovrascrive la selezione con la rete selezionata dall'utente se sono soddisfatte le seguenti condizioni:

  • La rete scelta dall'utente aveva accesso a Internet l'ultima volta che è stata utilizzata
  • La scelta della connessione dell'utente ha una potenza del segnale che non è peggiore di quando è stata originariamente selezionata con un margine di errore. Questo margine di errore può essere configurato utilizzando la sovrapposizione config_wifiEstimateRssiErrorMarginDb .

La rete scelta dall'utente per la connessione persiste dopo un riavvio. La scelta della connessione utente funziona per le reti salvate, le reti Passpoint e le reti di suggerimenti.

Doppie stazioni simultanee

Questa sezione descrive la selezione della rete Wi-Fi quando un dispositivo supporta la connessione a due reti Wi-Fi contemporaneamente.

Make-before-break

Se il make-before-break funzione è abilitata, i tentativi dispositivo di connettersi alla nuova rete prima di scollegare dalla vecchia rete. Il flusso make-before-break utilizza lo stesso algoritmo di selezione della rete della commutazione di rete break-before-make (ovvero quando il dispositivo si disconnette dalla vecchia rete prima di connettersi a quella nuova). Se l'algoritmo di selezione della rete sceglie una rete che non può essere commutata utilizzando make-before-break, il dispositivo torna automaticamente a break-before-make.

Connessione Internet limitata e simultanea

Se la ristretta e la connessione internet concomitante funzione è abilitata, il dispositivo può connettersi a una ristretta rete Wi-Fi secondario che è disponibile solo per selezionare le applicazioni configurate dal produttore del dispositivo. Le istruzioni per i produttori di dispositivi di configurare questo è in Concurrent limitato e connessione internet .

Quando l'algoritmo di selezione della rete rileva i risultati della scansione che corrispondono al suggerimento a pagamento/privato dell'OEM, si connette automaticamente ad esso come seconda rete. La selezione della rete per la rete Wi-Fi primaria (che fornisce la connessione Internet alle normali app) avviene normalmente in parallelo.

Domande frequenti (FAQ)

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

    No. Le categorie principali in cui vengono valutate le reti sono le categorie salvate rispetto a quelle suggerite e quelle a consumo rispetto a quelle non a consumo. All'interno di ciascuna categoria, le reti sicure hanno una certa priorità sulle reti aperte, ma viene attribuito un peso molto più elevato alla qualità della connessione.

    Il motivo è che l'effettiva sicurezza dei dati dell'utente è fornita dalla crittografia end-to-end (ad esempio, TLS). Le reti sicure crittografano solo la prima parte della comunicazione e, anche in questo caso, per le reti con chiavi precondivise, non garantiscono molta privacy.

  2. Perché le reti salvate hanno la priorità rispetto alle reti suggerite?

    Le reti gratuite salvate (non a consumo) hanno la priorità sulle reti gratuite suggerite e le reti a consumo salvate hanno la priorità sulle reti a consumo suggerite.

    Le reti salvate hanno la priorità sulle reti suggerite perché le reti salvate sono reti che l'utente ha aggiunto esplicitamente al dispositivo. Ciò implica una preferenza per connettersi a queste reti quando possibile.

    Si noti che gli utenti possono disabilitare 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 di rete modificando le sovrapposizioni bonus elencati nelle sezioni precedenti. Tuttavia, non è consigliabile modificare i valori predefiniti poiché sono stati scelti dopo un'attenta considerazione di più casi d'uso.