Selección de red Wi-Fi de Android

Esta página describe los algoritmos y procedimientos utilizados en Android 12 para seleccionar y cambiar entre redes Wi-Fi. Android evalúa continuamente la calidad de la red conectada y evalúa la calidad de las redes disponibles.

Vida de una conexión automática

Esto describe el proceso de cómo un dispositivo Android evalúa y se conecta a las redes Wi-Fi disponibles.

  1. El dispositivo busca redes disponibles de una de las siguientes maneras dependiendo de si la pantalla está encendida o apagada.

    • Pantalla encendida (conectada): el subsistema de conectividad de Android evalúa regularmente si la conexión actual es lo suficientemente buena como para omitir el escaneo (como se define en los escaneos de pantalla ). Si la conexión no es lo suficientemente buena como para omitir la exploración, el subsistema de conectividad activa una exploración para detectar las redes disponibles. Estos escaneos también pueden ser activados por otros componentes del sistema, como el sistema de ubicación o una aplicación (incluida la aplicación Configuración).
    • Pantalla encendida (desconectada): el subsistema de conectividad de Android emite escaneos periódicos siguiendo un programa de interrupción exponencial. El módulo evalúa todos los resultados de escaneo recibidos e intenta seleccionar la mejor red para conectarse.
    • Pantalla apagada (desconectada): la CPU del host programa el firmware con una lista de redes preferidas utilizando escaneos de descarga de red preferida (PNO) tan pronto como la pantalla se apaga. El firmware activa el host si encuentra alguna de las redes preferidas. AOSP asume que PNO es compatible con el dispositivo.

    El WifiManager#allowAutojoinGlobal(boolean) se puede utilizar para deshabilitar las conexiones automáticas. Esta es una API privilegiada que pueden usar los fabricantes de dispositivos en circunstancias limitadas (por ejemplo, un dispositivo preconfigurado no móvil).

    Si el dispositivo está conectado y la superposición config_wifi_framework_enable_associated_network_selection se establece en false , no se realizan exploraciones de conectividad y los resultados de la exploración no activan la selección de red. Esta configuración no tiene efecto cuando el dispositivo está desconectado, lo que significa que aún se realizan escaneos de conectividad y selección de red.

  2. Se evalúan los resultados del escaneo.

    • Si el dispositivo está conectado a una red Wi-Fi, el marco evalúa si la red actual es lo suficientemente buena como para omitir la selección de red .

      Una red se define como lo suficientemente buena para omitir la selección de red si se cumple alguno de los siguientes requisitos:

      • Han transcurrido menos de 10 segundos desde la última selección de red.
      • El usuario se conectó manualmente recientemente a la red (donde recientemente se puede configurar mediante la superposición config_wifiSufficientDurationAfterUserSelectionMilliseconds ).
      • El dispositivo está conectado a una conexión de registro en línea (OSU).
      • Se cumplen todos los siguientes requisitos:

        • El RSSI está por encima del umbral de RSSI requerido o fluye suficiente tráfico a través de la conexión (consulte los escaneos en pantalla para RSSI y los umbrales de tráfico).
        • La red está validada (conectada a Internet) o aprobada por el usuario para su uso sin acceso a Internet.
    • Si la red es lo suficientemente buena como para omitir la selección de red , no se realiza ninguna otra acción.

    • Si la red Wi-Fi conectada no es lo suficientemente buena o si el dispositivo no está conectado a una red, el marco llama a los nominadores de red para generar una lista de redes Wi-Fi candidatas a las que conectarse en función de los resultados de escaneo filtrados . Los nominadores de red encuentran configuraciones Wi-Fi existentes o crean nuevas configuraciones para las redes candidatas.

    • Los resultados del análisis se filtran para eliminar los BSSID que tienen un RSSI debajo del RSSI de entrada (configurable mediante las config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz y config_wifiFrameworkScoreEntryRssiThreshold6ghz ). Además, se filtran los BSSID bloqueados. Los BSSID se pueden bloquear en función de fallas de conexión repetidas, desconexiones frecuentes y solicitudes explícitas del AP para no intentar la asociación durante un cierto período de tiempo (MBO-OCE). El bloqueo de BSSID se describe a continuación en Bloqueo de SSID y BSSID .

    • Cuando el dispositivo se mueve rápidamente, los resultados del escaneo se filtran opcionalmente para eliminar los BSSID cuyo RSSI varía rápidamente (indicación de que no se mueven junto con el dispositivo). Esta optimización se puede configurar mediante config_wifiHighMovementNetworkSelectionOptimizationEnabled (habilitar/deshabilitar la optimización) y las superposiciones config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs y config_wifiHighMovementNetworkSelectionOptimizationRssiDelta , que configuran el requisito de estabilidad en los resultados del escaneo (RSSI cambia sobre los resultados del escaneo suficientemente separados en el tiempo).

  3. El marco ejecuta el marcador de candidatos para generar una puntuación para cada candidato de identificador de conjunto de servicios (SSID). Los candidatos de SSID pueden incluir múltiples candidatos de identificador de conjunto de servicios básicos (BSSID) (generados por los nominadores de red). El candidato con la puntuación más alta es el candidato ganador .

  4. El marco ejecuta el algoritmo de elección de conexión del usuario , que podría convertir una red seleccionada por el usuario en el nuevo candidato ganador en lugar de utilizar el candidato ganador del marcador de candidatos.

  5. El marco determina si el candidato ganador coincide con la red conectada actualmente. Para ser considerado un partido, se debe cumplir con uno de los siguientes:

    • El candidato ganador y la red Wi-Fi conectada tienen el mismo BSSID.
    • Si la itinerancia de firmware está disponible (incluida la capacidad de lista negra BSSID), el candidato ganador y la red conectada tienen el mismo SSID y tipo de seguridad.

    Si el candidato ganador coincide con la red conectada actualmente, no se realiza ninguna otra acción. Si el candidato ganador no coincide con la red, el dispositivo se asocia al candidato ganador.

Tenga en cuenta que la conexión de red automática está deshabilitada mientras una aplicación usa la API de solicitud de red Wi-Fi , que anula el sistema y crea una LAN sin Internet, excepto en dispositivos que admiten estaciones duales simultáneas.

Evaluación de una red conectada

El marco o firmware de Android evalúa periódicamente la calidad de la red conectada. Esta sección describe cómo se evalúa la red conectada cuando la pantalla está encendida o apagada.

Esta evaluación se realiza además de la selección de red discutida anteriormente.

Pantalla en

El framework de Android evalúa la red conectada de la siguiente manera:

  1. El servicio Wi-Fi sondea RSSI y las estadísticas de la capa de enlace cada 3 segundos (configurable mediante la superposición config_wifiPollRssiIntervalMilliseconds ).
  2. El servicio Wi-Fi calcula una puntuación de conexión en función del RSSI y las estadísticas de la capa de enlace.
  3. El servicio Wi-Fi pasa la puntuación al servicio de conectividad, que usa la puntuación para determinar si se conecta a una red Wi-Fi oa otro tipo de red disponible, como una red celular.

Pantalla apagada

El marco no inicia una evaluación en la red conectada, pero el proceso de selección de red aún puede ocurrir si otros componentes (por ejemplo, servicios de ubicación) inician escaneos. El firmware evalúa la calidad de la red y, si la calidad de la red es mala, el firmware puede moverse o (eventualmente) desasociarse de la red y reactivar el host.

Exploraciones de conectividad

Los escaneos se realizan automáticamente en función de si el dispositivo tiene la pantalla encendida, tiene la pantalla apagada y está conectado a Wi-Fi, o tiene la pantalla apagada y no está conectado a Wi-Fi.

Pantalla en

El marco desencadena decisiones de escaneo a intervalos crecientes cuando la pantalla está encendida. Los intervalos de decisión de exploración se configuran con las config_wifiDisconnectedScanIntervalScheduleSec , config_wifiConnectedScanIntervalScheduleSec y config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec (que son matrices de números enteros). De forma predeterminada, los escaneos se realizan utilizando intervalos de retroceso exponenciales de 20, 40, 80 y 160 segundos, y los escaneos posteriores posiblemente se realicen a intervalos de 160 segundos (estos son los valores predeterminados de las superposiciones anteriores).

Los intervalos de exploración de retroceso exponencial se restablecen y se reinician a los 20 segundos cada vez que cambia el estado de la pantalla, es decir, cuando la pantalla se enciende o se apaga.

La decisión de ejecutar u omitir un escaneo se basa en si la conexión de red actual es lo suficientemente buena para omitir el escaneo . Una conexión es lo suficientemente buena como para omitir el escaneo si se cumple alguno de los siguientes requisitos:

  • El dispositivo está conectado a una conexión de registro en línea (OSU).
  • Fluye suficiente tráfico a través de la conexión (consulte los umbrales de tráfico a continuación).
  • El RSSI está por encima del umbral de RSSI requerido (consulte los umbrales de RSSI a continuación), y la selección de red se realizó recientemente (10 minutos de forma predeterminada, pero se puede configurar mediante la superposición config_wifiConnectedHighRssiScanMinimumWindowSizeSec ), y la red está validada (conectada a Internet) o el usuario -aprobado para su uso sin acceso a internet.

Los umbrales de RSSI y de tráfico son:

  • RSSI está por encima de -73 dBm para la banda de 2,4 GHz, configurada con la superposición config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , o -70 dBm para las bandas de 5 GHz y 6 GHz, configurada con la superposición config_wifi_framework_wifi_score_low_rssi_threshold_5GHz y config_wifiFrameworkScoreLowRssiThreshold6ghz .
  • El tráfico (transmitir o recibir) supera los 16 paquetes por segundo (pps) configurado con la superposición config_wifiFrameworkMinPacketPerSecondActiveTraffic .

Pantalla apagada y conectada a Wi-Fi

Cuando la pantalla está apagada y el dispositivo está conectado a una red Wi-Fi, el firmware (Wi-Fi SoC) realiza exploraciones en roaming. El marco no realiza ningún escaneo cuando la pantalla está apagada.

Pantalla apagada y no conectada a Wi-Fi (estado desconectado)

Cuando la pantalla está apagada y Wi-Fi desconectado, el firmware realiza escaneos PNO para SSID. El marco configura el firmware con una lista de SSID para escanear y una lista de canales en los que escanear. Si se encuentra un SSID configurado, el firmware activa el marco.

El marco también configura el intervalo en el que el firmware debe realizar escaneos PNO, usando el estado de movilidad del dispositivo para seleccionar diferentes intervalos de escaneo. En un estado de baja movilidad (el dispositivo está estacionario), el intervalo es de 60 segundos para los primeros tres escaneos (controlados por la superposición config_wifiStationaryPnoScanIntervalMillis ) y 180 segundos (un multiplicador fijo de 3x de la superposición) para las exploraciones posteriores. En un estado de alta movilidad, el intervalo es de 20 segundos para los primeros tres escaneos (controlados por la superposición config_wifiMovingPnoScanIntervalMillis ) y 60 segundos (un multiplicador fijo de 3x de la superposición) para los escaneos posteriores.

nominadores de red

Los nominadores de red encuentran o crean configuraciones ( WifiConfiguration ) para redes que son:

  • Actualmente disponible (basado en los resultados del escaneo) o la red conectada actualmente (que a veces no se encuentra en los resultados del escaneo escamoso).
  • Tener un RSSI mínimo. El RSSI mínimo es de -80 dBm para la banda de 2,4 GHz y de -77 dBm para las bandas de 5 GHz y 6 GHz, configurable mediante la config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz y config_wifiFrameworkScoreEntryRssiThreshold6ghz .
  • No bloqueado, por ejemplo, debido a fallas de conexión anteriores.
  • La red no indica que no se pueda usar (por ejemplo, usando MBO/OCE).
  • Se puede asociar al uso de las credenciales disponibles en el dispositivo.

Se utilizan los siguientes nominadores de red:

  • Nominador de red guardada: evalúa todas las redes guardadas (incluidas las suscripciones de Passpoint guardadas).
  • Nominador de red sugerida: evalúa todas las redes proporcionadas por las aplicaciones que utilizan la API de sugerencias (incluidas las suscripciones de Passpoint sugeridas).
  • Nominador de red puntuado externamente: mecanismo OEM para proporcionar opciones de conectividad de red al dispositivo. Para obtener más información, consulte Proveedor de calificación de red externa .

Candidatos a goleadores

Los evaluadores de candidatos evalúan y proporcionan una puntuación para cada candidato. La puntuación de ThroughputScorer (el marcador predeterminado) se basa en lo siguiente:

  • Se calcula una puntuación base en función del RSSI, donde el RSSI tiene un tope de -73 dBm para la banda de 2,4 GHz o de -70 dBm para las bandas de 5 GHz y 6 GHz (configurado con config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , config_wifi_framework_wifi_score_low_rssi_threshold_5GHz y config_wifiFrameworkScoreLowRssiThreshold6ghz ).
  • Se calcula un aumento de puntuación en función de una estimación de rendimiento derivada de la tecnología, la frecuencia del canal, el ancho de banda, RSSI, las condiciones del canal, la cantidad máxima de flujos espaciales y otros parámetros. El aumento de puntaje se puede configurar mediante las superposiciones config_wifiFrameworkThroughputBonusNumerator y config_wifiFrameworkThroughputBonusDenominator , y está limitado a un valor máximo especificado mediante la superposición config_wifiFrameworkThroughputBonusLimit .
  • Una red candidata que fue seleccionada recientemente por el usuario o por una aplicación obtiene un gran aumento de puntaje por una duración configurable usando la superposición config_wifiFrameworkLastSelectionMinutes (durante esa duración se garantiza que la red será seleccionada sobre redes no seleccionadas por el usuario).
  • Un candidato que coincida con la red actual obtiene un aumento de puntuación configurado por las superposiciones config_wifiFrameworkCurrentNetworkBonusMin y config_wifiFrameworkCurrentNetworkBonusPercent (obtiene una bonificación adicional basada en un porcentaje de su RSSI y la puntuación basada en el rendimiento, hasta el mínimo configurable).
  • Una red segura obtiene una puntuación más alta que una red abierta. La bonificación se configura mediante la superposición config_wifiFrameworkSecureNetworkBonus .
  • Una red sin medidor (gratuita) recibe una puntuación más alta que una red con medidor (de pago). La bonificación se configura mediante la superposición config_wifiFrameworkUnmeteredNetworkBonus .
  • Una red guardada recibe una puntuación más alta que una red sugerida mediante la API de sugerencias. La bonificación se configura mediante la superposición config_wifiFrameworkSavedNetworkBonus .
  • Las redes que no son de confianza (que se pueden solicitar como parte de la API de sugerencias) obtienen una puntuación más baja que cualquier otra red.
  • Una red que se detectó previamente que no tiene Internet obtiene una puntuación de 0 si el dispositivo está actualmente conectado a otra red que tiene acceso a Internet.

La bonificación predeterminada para guardado frente a sugerencia y no medido frente a medido (es decir, los valores de superposición predeterminados) produce un orden de prioridad estricto para guardado, sugerido, medido y no medido:

  1. Redes no medidas guardadas
  2. Redes no medidas sugeridas
  3. Redes medidas guardadas
  4. Redes medidas sugeridas

Esto significa que siempre se selecciona una red no medida (gratuita) guardada antes que una red medida (paga) guardada. La bonificación de puntaje seleccionada recientemente (por usuario o aplicación) puede anular esa prioridad estricta.

El marco puede tener instalados varios marcadores candidatos, pero solo uno puede estar activo a la vez. Los otros anotadores se pueden usar para métricas (para investigar algoritmos alternativos). En Android 11, el marcador predeterminado es ThroughputScorer .

Bloqueo de SSID y BSSID

El marco puede bloquear los SSID y/o BSSID, es decir, no considerarlos para las conexiones, ya sea de forma temporal o permanente.

Bloqueo de BSSID

El bloqueo de BSSID funciona al mantener dos contadores de fallas, un contador de fallas continuas y un contador de rachas, por tipo de falla específico (consulte a continuación una lista de tipos de fallas). Cuando ocurre una falla:

  • El contador para el tipo de falla correspondiente se incrementa.
  • Si se alcanza el umbral de falla para ese tipo de falla:
    • El BSSID está bloqueado.
    • El contador de rachas para la falla se incrementa.

La duración de bloqueo de un BSSID comienza en un valor base (configurable) (especificado por las superposiciones config_wifiBssidBlocklistMonitorBaseBlockDurationMs o config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs , según el RSSI) y aumenta exponencialmente hasta un límite superior configurable (especificado por la superposición config_wifiBssidBlocklistMonitorFailureStreakCap ). La duración aumenta si ocurren fallas continuamente en el mismo BSSID. La duración es la duración base incrementada exponencialmente por la racha de fallas, es decir, una racha de fallas de 2 implica 4 veces la duración del bloque base.

Los umbrales para el bloqueo de BSSID dependen del motivo de la falla y cada uno se puede personalizar mediante superposiciones:

  • El AP rechaza la asociación mediante MBO/OCE No se puede manejar el nuevo código STA : config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold .
  • La validación de Internet a través de esta red falló: config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold .
  • Código de falla de autenticación de contraseña incorrecta: config_wifiBssidBlocklistMonitorWrongPasswordThreshold .
  • Código de falla de autenticación de falla EAP para redes EAP: config_wifiBssidBlocklistMonitorEapFailureThreshold .
  • Rechazo de asociación, otros rechazos de asociación general: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold .
  • Tiempo de espera de asociación: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold .
  • Error de autenticación, otros errores de autenticación generales: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold .
  • Error de DHCP, error al aprovisionar DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold .
  • Desconexión anormal, el dispositivo se ha desconectado de la red en un período muy corto después de conectarse: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold . La ventana de tiempo se puede configurar con config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs .

Condiciones de limpieza de la lista de bloqueo BSSID

Un BSSID se borra de la lista de bloqueo cuando:

  • Wi-Fi está activado: todos los BSSID se eliminan de la lista de bloqueo.
  • El usuario toca una red en el selector de Wi-Fi: todos los BSSID de la red seleccionada por el usuario se eliminan de la lista de bloqueo.
  • Tiempo de espera: los BSSID se eliminan de la lista de bloqueo cuando se alcanza la duración del bloqueo.
  • Reiniciar: se borran todas las listas de bloqueo.
  • Red eliminada: todos los BSSID asociados con esta red se eliminan de la lista de bloqueo.

Condiciones de restablecimiento de los contadores de fallas y rachas:

  • Reiniciar: restablecer para todos los BSSID.
  • Red eliminada: restablecimiento para BSSID asociados con la red.
  • Éxito de la conexión L2: restablecimiento para los siguientes códigos de error.

    • 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 (borrado condicionalmente solo si la última vez que el dispositivo se conectó a este BSSID fue hace más de 3 horas)
    • REASON_NONLOCAL_DISCONNECT_CONNECTING
  • Éxito en la validación de la red: restablecimientos para el siguiente código de error.

    • REASON_NETWORK_VALIDATION_FAILURE
  • Éxito en el aprovisionamiento de DHCP: restablecimientos para el siguiente código de error.

    • REASON_DHCP_FAILURE

Bloqueo de SSID

El bloqueo de SSID funciona de manera similar al bloqueo de BSSID. Un contador de fallas por tipo de falla por red se incrementa cuando ocurren fallas de conexión (de ese tipo). Cuando el conteo de fallas de un tipo en particular excede un umbral, el SSID se bloquea de forma permanente o temporal según una configuración. La configuración para cada tipo de falla está codificada en WifiConfiguration.NetworkSelectionStatus.DISABLE_REASON_INFOS y se resume a continuación.

* Para las redes deshabilitadas temporalmente, la duración de la deshabilitación cambia dinámicamente según la cantidad de fallas de conexión consecutivas experimentadas en la red. Después de que una red falla consecutivamente al conectarse cinco veces, cada falla subsiguiente da como resultado una duración de desactivación dos veces mayor que la duración anterior. Por ejemplo, una red con cinco fallas consecutivas se deshabilita durante 5 minutos, luego 10 minutos en la sexta falla, 20 minutos en la séptima falla y así sucesivamente hasta el límite máximo de 18 horas.

Código de falla Descripción Límite Duración de inhabilitación básica* Deshabilitar tipo
DISABLED_DHCP_FAILURE Error al aprovisionar DHCP 5 5 minutos Temporal
DISABLED_NO_INTERNET_TEMPORARY La validación de la red falló, pero el usuario afirma que quiere seguir conectándose a esta red en el futuro 1 10 minutos Temporal
DISABLED_AUTHENTICATION_NO_CREDENTIALS El solicitante carece de credenciales para conectarse a la red 1 N / A Permanente
DISABLED_NO_INTERNET_PERMANENT Predeterminado para falla de validación de red 1 N / A Permanente
DISABLED_BY_WIFI_MANAGER En desuso y sin usar 1 N / A Permanente
DISABLED_BY_WRONG_PASSWORD La contraseña es incorrecta y esta red nunca se ha conectado con éxito 1 N / A Permanente
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION Falla de EAP donde la tarjeta SIM no está suscrita 1 N / A Permanente
DISABLED_ASSOCIATION_REJECTION Fallos de rechazo de asociación 5 5 minutos Temporal
DISABLED_AUTHENTICATION_FAILURE Otras fallas de autenticación (es decir, no una contraseña incorrecta o una falla de EAP) 5 5 minutos Temporal
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR Error de EAP específico del proveedor (privado). 1 N / A Permanente
DISABLED_NETWORK_NOT_FOUND El solicitante no pudo encontrar una red en los resultados del escaneo que coincida con la red solicitada por el marco para la conexión (incluidas las capacidades de red). 2 5 minutos Temporal
DISABLED_CONSECUTIVE_FAILURES La red no pudo conectarse cinco o más veces consecutivas. El tipo de falla para estas fallas incluye, entre otros, los tipos de falla enumerados en esta tabla.
5 5 minutos Temporal

Una red deshabilitada temporalmente se vuelve a habilitar cuando:

  • La duración de la desactivación ha pasado.
  • El usuario selecciona manualmente la red para conectarse.
  • El usuario alterna Wi-Fi.
  • El sistema se reinicia.

Una red deshabilitada permanentemente se vuelve a habilitar cuando:

  • El usuario selecciona manualmente la red para conectarse.

Los contadores de fallas de una red se restablecen cuando:

  • Se elimina la red.
  • El dispositivo se ha conectado correctamente a la red.
  • La red se ha vuelto a habilitar después de que se agotó el tiempo de inhabilitación.
  • El usuario selecciona manualmente la red para conectarse.
  • El sistema se reinicia.

tarjetas de puntuación

Las tarjetas de puntuación, introducidas en Android 10, registran estadísticas en el dispositivo sobre los BSSID. Las tarjetas de puntuación se conservan mediante el servicio IpMemoryStore .

Las tarjetas de puntuación no se usan en la selección de red de Android 11.

Elección de conexión del usuario

Android tiene un algoritmo de elección de conexión del usuario que permite que el proceso de selección prefiera las redes Wi-Fi a las que un usuario se ha conectado explícitamente, por ejemplo, una red doméstica. Los usuarios pueden preferir este tipo de redes a las redes públicas, incluso cuando el rendimiento es inferior al de una red pública, ya que brindan servicios adicionales, como la capacidad de controlar dispositivos domésticos.

La preferencia del usuario por una red se captura marcando todas las configuraciones Wi-Fi visibles y sus intensidades de señal en el momento en que el usuario selecciona una red. Si se selecciona una de las configuraciones Wi-Fi marcadas durante el proceso de selección automática y hay disponible una red seleccionada por el usuario, el algoritmo de elección de conexión del usuario anula la selección con la red seleccionada por el usuario si se cumplen las siguientes condiciones:

  • La red de elección de conexión del usuario tenía acceso a Internet la última vez que se usó
  • La opción de conexión del usuario tiene una intensidad de señal que no es peor que cuando se seleccionó originalmente con un margen de error. Este margen de error se puede configurar mediante la superposición config_wifiEstimateRssiErrorMarginDb .

La red de elección de conexión del usuario persiste después de un reinicio. La elección de conexión del usuario funciona para redes guardadas, redes de Passpoint y redes de sugerencias.

Estaciones duales concurrentes

Esta sección describe la selección de la red Wi-Fi cuando un dispositivo admite la conexión a dos redes Wi-Fi al mismo tiempo.

Hacer antes de romper

Si la función de hacer antes de interrumpir está habilitada, el dispositivo intenta conectarse a la nueva red antes de desconectarse de la red anterior. El flujo de hacer antes de romper utiliza el mismo algoritmo de selección de red que la conmutación de red de romper antes de hacer (que es cuando el dispositivo se desconecta de la red anterior antes de conectarse a la nueva). Si el algoritmo de selección de red elige una red que no se puede cambiar usando la función de hacer antes de romper, el dispositivo automáticamente recurre a la función de hacer antes de hacer.

Conexión a internet y restringida concurrente

Si la función de conexión a Internet y restringida simultánea está habilitada, el dispositivo puede conectarse a una red Wi-Fi restringida secundaria que solo está disponible para aplicaciones seleccionadas configuradas por el fabricante del dispositivo. Las instrucciones para que los fabricantes de dispositivos configuren esto se encuentran en Conexión concurrente restringida y a Internet .

Cuando el algoritmo de selección de red detecta resultados de escaneo que coinciden con la sugerencia privada/pagada del OEM, se conecta automáticamente a ella como una segunda red. La selección de red para la red Wi-Fi principal (que proporciona conexión a Internet a las aplicaciones regulares) normalmente ocurre en paralelo.

Preguntas frecuentes (FAQ)

  1. ¿Las redes seguras siempre tienen prioridad sobre las redes abiertas?

    No. Guardado frente a sugerido y medido frente a no medido son categorías principales en las que se evalúan las redes. Dentro de cada categoría, las redes seguras tienen cierta prioridad sobre las redes abiertas, pero se da mucha más importancia a la calidad de la conexión.

    El motivo es que la seguridad real de los datos del usuario la proporciona el cifrado de extremo a extremo (por ejemplo, TLS). Las redes seguras encriptan solo el primer tramo de la comunicación, e incluso entonces, para las redes con claves previamente compartidas, no brindan mucha privacidad.

  2. ¿Por qué se priorizan las redes guardadas sobre las redes sugeridas?

    Las redes gratuitas (sin medidor) guardadas tienen prioridad sobre las redes gratuitas sugeridas y las redes medidas guardadas tienen prioridad sobre las redes medidas sugeridas.

    Las redes guardadas tienen prioridad sobre las redes sugeridas porque las redes guardadas son redes que el usuario agregó explícitamente al dispositivo. Eso implica una preferencia por conectarse a estas redes cuando sea posible.

    Tenga en cuenta que los usuarios pueden deshabilitar el comportamiento de conexión automática para redes guardadas individuales, es decir, indicar que estas redes solo deben usarse manualmente y no ser consideradas automáticamente por el dispositivo.

  3. ¿Puedo cambiar el orden de prioridad estricto o eliminarlo por completo?

    El fabricante del dispositivo puede modificar las decisiones de selección de red modificando las superposiciones adicionales enumeradas en las secciones anteriores. Sin embargo, no se recomienda cambiar los valores predeterminados, ya que se eligieron después de una cuidadosa consideración de múltiples casos de uso.