Cómo detectar la disociación mediante el reinicio de AP dentro de la estación en modo PS

Estoy escribiendo un controlador de nivel bastante bajo para una tarjeta inalámbrica, y aunque la mayor parte de las especificaciones son bastante sencillas, todavía no he comprendido una sola pregunta:

Si mi estación está en modo de ahorro de energía y su receptor se apaga durante un período prolongado (digamos, 10 segundos) entre tramas DTIM, y el punto de acceso se reinicia mientras tanto, por lo que mi asociación se pierde, ¿cómo puedo detectar esto?

Soy consciente de que el caso más común será que la sincronización se pierda lo suficiente como para perder una serie de balizas y simplemente volver a la búsqueda de AP después, pero si por suerte puedo ver balizas, ¿hay alguna ¿Cómo saber que se trata de una nueva "instancia" del mismo AP?

Puedo pensar en

  • un campo TIM más corto (más); sin embargo, creo que los AP pueden acortar la información TIM si no hay tráfico en espera
  • la marca de tiempo AP cambia inesperadamente.
  • el campo "número de balizas para el próximo DTIM" cambia inesperadamente.

Siendo un perfeccionista, me gustaría saber si existe una forma completamente confiable de detectar que el AP se ha reiniciado, en lugar de simplemente juntar pistas.

preguntado el 10 de mayo de 11 a las 12:05

Problema realmente genial. Apostaría la granja a que la mayoría de los fabricantes siguen su "caso más común". Probablemente no puedas decirlo, pero yo amarán para saber para quién trabajas para poder comprar tus productos. ¡Buena suerte obteniendo una respuesta! -

Además, no pondría demasiado peso en una solución que priorice el cumplimiento estricto del estándar, o de la misma manera, una que aproveche las tendencias sobre cómo los fabricantes ignoran el estándar. Después de haber trabajado en este campo antes, es sorprendente cuántas esquinas recortarán los fabricantes para ahorrar algunos dólares en un producto de envoltura retráctil. -

2 Respuestas

Le sugiero que mire la TSF en las tramas de baliza recibidas y si difiere demasiado de la TSF que esperaba, envíe una trama de datos NULL al AP. Si el AP se reinició, debería responder con una trama de desautenticación con el motivo "Trama de clase 2 recibida de STA no autenticada".

contestado el 30 de mayo de 11 a las 19:05

No tengo ningún conocimiento de tarjetas inalámbricas a ese nivel, pero tomaría una ruta práctica y analizaría la comunicación desde el AP que acaba de conducir a la desconexión en busca de un patrón que coincida con una secuencia de apagado típica; por ejemplo, "no más tráfico, una pérdida repentina de sincronización DTIM y luego un anuncio de AP".

En la parte superior de mi cabeza: tal vez busque en el código de análisis y detección de AP de Kismet para una idea o dos. Apuesto a que alguien más ha encontrado este problema antes.

¡Aclamaciones!

contestado el 20 de mayo de 11 a las 07:05

El problema en cuestión es que la estación está en modo de ahorro de energía, por lo que no puede ver el patrón, se despierta justo antes de la trama DTIM, recibe la trama y cualquier tráfico de transmisión y vuelve a dormir. En algún punto intermedio, debe decidir si el AP todavía es consciente de que la estación existe, volver a asociarla si no, e idealmente guardar silencio si lo es. Así que básicamente se reduce a "mirando este marco DTIM, creo que he perdido mi asociación". - Simon Richter

No creo que sea posible detectar cuál será el futuro a partir de un solo cuadro DTIM. Supongo que debe mantener un historial de N número de fotogramas o mantener estadísticas sobre la recepción de esos fotogramas para adivinar si el AP se ha reiniciado. Una cadena de Markov podría ser útil para las estadísticas aquí. - jmkeyes

Sin embargo, todo lo que obtendría de esto sería un valor de probabilidad, aunque en realidad es algo poco probable que el AP se reinicie de una manera que me permita recibir balizas. Se trata de eliminar la última duda. :) - Simon Richter

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.