¿Los dispositivos Android realizan un escaneo activo o pasivo cuando buscan WiFi AP?

9

Me gustaría saber si los dispositivos Android realizan un escaneo activo o pasivo cuando buscan el AP para conectarse. Ya hice una prueba con Wireshark y wifi sniffer y parece que mientras un iPhone envía marcos de solicitud de sonda para descubrir AP disponibles (escaneo activo), mi dispositivo Android a veces envía un marco de solicitud de sonda, pero la mayoría de las veces no se envía La solicitud solicita marcos en absoluto, pero espera a que el AP envíe un marco Beacon (exploración pasiva).

He estado buscando información / documentación oficial sobre este tema, pero aún no he encontrado nada útil. Estaría muy agradecido si alguien pudiera darme la respuesta a esta pregunta.

fragon
fuente
1
Cuando un teléfono móvil está buscando activamente un AP, debe enviar una solicitud de sonda, no un marco de baliza. El teléfono móvil debe estar buscando una respuesta de baliza o sonda.
mattm
@mattm Tienes razón. He editado la pregunta, para que sea correcta en este momento.
fragon

Respuestas:

7

La única explicación "oficial" que encontré está en este comentario (con fecha de julio de 2009) en los repositorios de Git en Android:

wifi: WifiManager.startScan () ahora realizará exploraciones pasivas de forma predeterminada .

Los escaneos activos solo sucederán si se está utilizando un AP oculto, o si se llama al nuevo método WifiManager.startScanActive () .

La existencia de una función oculta para iniciar un escaneo activo (reportado aquí ) sugiere que la función de escaneo normal es de hecho pasiva. Sin embargo, esto debe tomarse con un grano de sal, ya que la documentación de Android no dice explícitamente si la función WifiManager.startScan () es pasiva o no.

También relacionado: estas dos publicaciones en SO ( publicación 1 , publicación 2 ) informan que la actividad de exploración es pasiva (publicación 1) y que desde Android 4.3 ni siquiera es posible llamar al método de exploración activa (publicación 2), pero no hay enlace a fuentes oficiales.

Comunidad
fuente
0

También he estado buscando el documento oficial para obtener una respuesta exacta. Pero no pude encontrar ninguno. Por lo tanto, estoy escribiendo esta base mi propia suposición. Creo que un dispositivo cliente (móvil en este caso) realiza el escaneo activo y pasivo. Mis razones son las siguientes:

  1. Cuando un móvil activa la interfaz WiFi, necesita buscar las balizas por AP cercano para que los SSID disponibles se enumeren para la conexión. Este es un modo de escaneo pasivo.
  2. Un dispositivo móvil que se haya conectado a varios SSID antes reventará las tramas de solicitud de la sonda (con todos los SSID) al AP cercano y, si el SSID coincide, el AP responderá a la solicitud de la sonda y comenzará el proceso de conexión / autenticación. Este es un modo de escaneo activo.
  3. Caso especial para el AP con SSID oculto. Cuando el usuario se conecta manualmente al SSID oculto, el dispositivo móvil generará una solicitud de sonda y la transmitirá al AP cercano. Cuando el SSID coincida con cualquiera de los AP, seguirá el proceso de conexión / autenticación. Este es un modo de escaneo activo también.
bohbian
fuente