Todo lo que quería saber sobre probar adaptadores de Wi-Fi, pero tenía miedo de preguntar

imagen

Uno de estos días nuestra empresa cumple 20 años. En los últimos 15 años, de estos 20, hemos estado haciendo programas para analizar redes Wi-Fi. Parte de este trabajo es el desarrollo de controladores para adaptadores Wi-Fi, y en este artículo describiré cómo el equipo de desarrollo prueba los productos de su trabajo y cómo el proceso de prueba ha evolucionado en los últimos 15 años junto con la evolución de los estándares y adaptadores. Habrá muchas fotos (lo que se llama "porno geek") y detalles técnicos.

¿Por qué escribir controladores especiales?

Cuando crea software para analizar redes Wi-Fi (y creamos un programa para inspeccionar y modelar redes y un analizador de paquetes de Wi-Fi), necesita recibir (leer, capturar, oler, atrapar ... de alguna manera, estos son sinónimos) Wi-Fi intercambiado entre puntos de acceso cercanos y clientes. Puede hacer esto en Windows solo creando un conjunto de sus propios controladores para conjuntos de chips específicos.

¿Qué hay de malo con los controladores estándar habituales que hace el fabricante del adaptador? Desde el punto de vista del usuario promedio, todo está bien con ellos. Solo hay un pequeño problema: no puede usarlo para leer paquetes de Wi-Fi en el modo de observador pasivo. Y sin esto, no puede crear software para análisis de red. En general, este es un gran tema para un artículo separado (y lo escribiré este año). Si está interesado en este momento, le contaré brevemente en el siguiente párrafo, y si el tema de la programación no está cerca de usted, simplemente omítalo.

Hace aproximadamente diez años, bajo Windows, apareció una nueva API para leer pasivamente paquetes de Wi-Fi, el llamado modo monitor. Siempre puede "oler" los paquetes en Windows, y nadie lo molesta para ejecutar Wireshark y ver los paquetes que llegan a través de su adaptador inalámbrico, pero el problema es que solo verá sus paquetes y solo los paquetes de datos. Toda otra información (paquetes de otras personas, paquetes del tipo Beacon, información sobre el nivel de señal en el paquete y su velocidad de datos, etc.) no está disponible. La nueva API fue diseñada para resolver este problema de una vez por todas. Pero él no decidió: casi ningún conjunto de chips de los principales proveedores lo admite normalmente, y la API en sí estaba desactualizada en el momento del nacimiento y Microsoft no se está desarrollando. En resumen, un completo desastre con él. Y si se topó con un software para analizar redes Wi-Fi en Windows, cuyos vendedores afirman que es compatible con cualquiera o casi todos los adaptadores Wi-Fi y no requiere un reemplazo del controlador, definitivamente obtendrá lo que llaman aceite de serpiente en inglés.

Escribir controladores especiales para monitorear Wi-Fi es difícil, largo y costoso. El número de empresas que hacen esto se puede calcular con los dedos de una mano.

¿Por qué probar un montón de adaptadores?

Un controlador es un programa para interactuar con hardware (hardware) específico de un hardware en particular. En el proceso de desarrollo del controlador, el programador debe asegurarse de que el controlador capta correctamente los paquetes, cambia los canales y rangos de frecuencia, responde correctamente a los sistemas de hibernación, calcula correctamente los niveles de señal y hace muchas cosas sin las cuales es imposible analizar una red Wi-Fi.

Parece que esta es una tarea bastante comprensible y simple: conecté el adaptador a la computadora, y luego desarrollé y probé su controlador todo lo que quisiera. En realidad, hay muchos matices de los que hablaremos.

¿Cuál debería ser la plataforma de prueba?

Para probar tecnológicamente los controladores, necesita un banco de pruebas determinado, es decir, una plataforma para trabajar con una variedad de hardware, que debe cumplir varios requisitos:

  • Desconexión simple de uno y conexión de otro adaptador.
  • Posibilidad de conectarse a interfaces informáticas modernas.
  • Baja interferencia de componentes electrónicos.
  • Movilidad Durante la prueba, debe poder mover el adaptador de Wi-Fi, cambiar la orientación de sus antenas en el espacio y cambiar la distancia al punto de acceso (de lo contrario, no podrá calibrar adecuadamente el nivel de señal).
  • Posibilidad de conectar múltiples adaptadores al mismo tiempo (para USB).

Además, puede ser extremadamente útil ver cómo funciona el controlador estándar, es decir vea la comunicación del controlador del adaptador con la computadora en el nivel del bus, pero por ahora dejamos este tema a un lado.

Arqueologia y modernidad

Ahora es el momento de hablar directamente sobre el hierro. Recuerde el pasado, a veces muy antiguo, y discuta lo nuevo.

2003

Comenzamos a hacer software de Wi-Fi en 2003 (antes de eso, solo creamos software para redes cableadas). El comienzo del cero fue el momento en que el Wi-Fi recién comenzaba a funcionar. El primero de una familia de estándares, 802.11, fue adoptado en 1997. Fue seguido por 802.11by 802.11a en 1999, pero la tecnología llegó a las masas mucho más tarde. La mayoría de las computadoras portátiles se vendieron sin Wi-Fi incorporado, pero puede comprar adaptadores para usted: externo, conectado al puerto CardBus (PCMCIA) para computadoras portátiles o estándares PCI internos. Una pequeña porción de computadoras portátiles de alta gama también se vende con adaptadores miniPCI incorporados.

Nuestro primer paso fue admitir los adaptadores CardBus 802.11b. Fueron tiempos bendecidos: casi todos estos adaptadores estaban en el chipset Intersil Prism, el código de fuente del controlador estaba disponible de forma gratuita para todos después de firmar el NDA, y la velocidad máxima de transferencia de datos en la capa física era de 11 Mbps, es decir era realmente posible transmitir datos a una velocidad de no más de 1 megabyte por segundo en condiciones ideales.


Adaptador Wi-Fi CardBus con antenas externas

Adaptador Wi-Fi CardBus con antenas externas

Debo decir que los adaptadores funcionaron bien, tenían buena sensibilidad, especialmente si era posible conectar antenas externas. Todo era muy simple e incontestable con la plataforma de prueba: casi todas las computadoras portátiles tenían uno o dos puertos CardBus.

Portátil vintage con puertos PCMCIA
¿Todavía recuerdas estos mamuts de 3-4 kilogramos?

Todo lo que nos quedaba era insertar el adaptador en dicho puerto externo.

Adaptador CardBus y ranura correspondiente de una máquina antigua
Adaptador CardBus y ranura correspondiente de una máquina antigua

2007

Lejos de los adaptadores en miniatura CardBus están siendo reemplazados por un estándar ExpressCard más elegante en el bus PCI Express. Los adaptadores Wi-Fi ExpressCard de 34 mm aparecen en el mercado, ya con 802.11gy 802.11a. Las velocidades aumentan, se aplican nuevos esquemas de modulación.

Adaptadores Wi-Fi ExpressCard
Adaptadores Wi-Fi ExpressCard

ExpressCard, como CardBus, es bastante conveniente para las pruebas. Las tarjetas son fáciles de cambiar, las computadoras portátiles son móviles, no hay escasez de modelos con puertos ExpressCard en el mercado.

Las computadoras de escritorio tampoco se quedan quietas, en 2007 se adoptó el estándar PCI Express 2.0, por lo que los adaptadores PCIe con antenas externas a menudo aparecen dentro de las computadoras de escritorio. No es tan conveniente probarlos (retire la cubierta de la caja, reemplace el adaptador PCIe, devuelva todo a su lugar).

2010

Estamos comenzando a admitir adaptadores Wi-Fi USB 2.0. Este es un factor de forma muy conveniente tanto para pruebas como para uso de usuarios finales. Todo lo que necesita es un puerto USB, o múltiples puertos si usa múltiples adaptadores.

El legendario adaptador Proxim ORiNOCO 8494 802.11n llega a la arena, basado en el chipset Atheros Communications, que aún no fue absorbido por Qualcomm. Este adaptador fue utilizado por todos los programas profesionales para encuestas de sitios Wi-Fi. Él tiene una excelente sensibilidad.

Adaptador USB legendario Proxim ORiNOCO 8494
Adaptador USB legendario Proxim ORiNOCO 8494

La capacidad de conectar múltiples adaptadores a la vez es una gran ventaja, acelera el tiempo de exploración de los canales cuando se trata de programas para la inspección del sitio y permite, por ejemplo, analizar el comportamiento de los clientes cuando están en roaming cuando se trata de analizadores de paquetes.

Sin embargo, no olvide que un adaptador USB Wi-Fi típico consume de 200 a 300 mA, y si usa un concentrador USB pasivo conectando tres adaptadores, puede ir más allá del límite para USB 2.0 500 mA .

Medidor PortaPow para determinar el consumo de corriente del adaptador
Medidor PortaPow para determinar el consumo de corriente del adaptador

Prácticamente no hay interferencia de RF de los concentradores USB 2.0, y además de la cuestión del consumo de corriente, lo único que debe tener en cuenta es la ubicación de los puertos en el concentrador. Los puertos deben ubicarse de manera que los adaptadores puedan insertarse en los puertos vecinos al mismo tiempo (si los puertos están demasiado cerca, insertar adaptadores simplemente no funcionará).

El siguiente problema en 2010 para nosotros fue la aparición de adaptadores MiniPCIe, que reemplazaron a MiniPCI en las computadoras portátiles. Comenzamos desmontando las computadoras portátiles para probar el nuevo adaptador. Qué dolor fue, probablemente no es necesario decirlo. Reemplazar el adaptador en una computadora portátil es un proceso rápido y tedioso, y puede tropezar con muchas trampas. En primer lugar, si había un adaptador con dos antenas en el adaptador "nativo" de la computadora portátil, y queríamos probar el modelo con tres antenas, no había una solución normal. En segundo lugar, algunos fabricantes de computadoras portátiles se dedican a la demolición total, flasheando rígidamente en el BIOS los modelos de adaptadores que admite la computadora portátil. Y si el nuevo adaptador no entra en una lista tan blanca, entonces simplemente no se reconoce. En tercer lugar, es posible que no tengas suerte y rompas algo dentro.

En algún momento, tuvimos que usar escritorios con una placa adaptadora PCIe <-> MiniPCIe. Pero la solución no fue perfecta: la movilidad del dispositivo sigue siendo importante. Los chicos taiwaneses de Bplus Technology , que, entre una gran variedad de soluciones de depuración muy interesantes, ofrecieron una placa tan excelente, encontraron la solución perfecta:

Placa de prueba con conector MiniPCIe
Tablero de prueba con el complemento MiniPCIe a través de ExpressCard

Este tablero fue solo una salvación por muchos años. El banco de pruebas resultó excelente: los adaptadores se pueden cambiar en dos cuentas, se preserva la movilidad, no hay interferencia y el tablero en sí es bastante económico. Todo lo que necesita es una computadora portátil con una ranura ExpressCard, pero en esos años no fue un problema.

Junta conectada
La placa está conectada, el adaptador ExpressCard está insertado en la computadora portátil

2013

Para 2013, el Wi-Fi había conquistado por completo el mundo. Todas las computadoras portátiles están totalmente equipadas con módulos Wi-Fi integrados, y estos módulos, a raíz de la miniaturización universal, están comenzando a lanzarse en un nuevo factor de forma, M.2 (también conocido como NGFF). Las tarjetas M.2 son más pequeñas que las MiniPCIe habituales y tienen un conector diferente.

Placa MiniPCIe, módulo MiniPCIe, módulo M.2
Placa MiniPCIe, módulo MiniPCIe, módulo M.2

Me gustaría seguir usando nuestro excelente kit de prueba, y Bplus Technologies viene al rescate nuevamente. Liberan el adaptador MiniPCIe <-> M.2, y hacemos fácilmente un sándwich tan grueso:

"Sandwich" de la placa MiniPCIe, adaptador MiniPCIe <-> M.2, adaptador Wi-Fi M.2 y antenas omnidireccionales conectadas
"Sandwich" de la placa MiniPCIe, adaptador MiniPCIe <-> M.2, adaptador Wi-Fi M.2 y antenas omnidireccionales conectadas

Casi no quedan computadoras portátiles con ExpressCard en el mercado, pero tenemos un stock de máquinas tan antiguas, aunque ya está claro que pronto tendremos que buscar una nueva solución. Pero más sobre eso a continuación.

2014

En diciembre de 2013, se ratificó el estándar 802.11ac, y en 2014, aparecieron en el mercado muchos adaptadores 802.11ac, con USB 3.0 ya. ¿Por qué los adaptadores USB 3.0? Porque la velocidad del bus 2.0 no es suficiente. Los adaptadores 802.11n de tres espacios (3 flujos espaciales) podrían proporcionar una velocidad máxima de 450 Mbps a nivel físico, pero los adaptadores 802.11ac ya pueden proporcionar 867 Mbps (dos flujos, ancho de canal de 80 MHz) o 1300 Mbps (tres flujos, ancho de canal de 80 MHz) e incluso en teoría 2340 Mbps (tres flujos, ancho de canal 160 MHz, solo que no hay ninguno en la naturaleza).

El único problema con USB 3.0 es que los dispositivos USB 3.0 (cables, conectores, circuitos) son capaces de generar un ruido de radiofrecuencia de banda ancha bastante potente, lo que hace que los adaptadores sean mucho menos sensibles a medida que disminuye la relación señal / ruido. En ausencia de un buen blindaje, este efecto se puede observar fácilmente. La captura de pantalla a continuación se tomó con TamoGraph Site Survey y el analizador de espectro Wi-Spy. La captura de pantalla muestra una imagen típica del funcionamiento de varias redes en el rango de 2,4 GHz (amplitudes en la parte superior y la llamada vista en cascada en la parte inferior). Se puede ver que el umbral de ruido está aproximadamente en el nivel de –95 dBm.

Sin interferencia de concentrador USB
Sin interferencia de concentrador USB

Ahora intentemos acercar Wi-Spy al concentrador o unidad USB 3.0 externa. La imagen está cambiando radicalmente:

Potente interferencia del concentrador USB
Potente interferencia del concentrador USB

Cerca del concentrador hay un ruido muy decente, a aproximadamente -77 dBm. Si tenemos en cuenta que la relación señal / ruido mínima a la que el wifi puede funcionar de alguna manera es de aproximadamente 4 dB, entonces con esta imagen, el adaptador no podrá conectarse a la red si la señal del punto de acceso está por debajo de -73 dBm. Para solucionar este problema, debe probar diferentes concentradores o utilizar cables USB adicionales que retiren el adaptador de las fuentes de ruido de RF.

Puede preguntar, ¿cómo viven los adaptadores USB 3.0 con tanta interferencia? Viven una vida muy interesante. Tomemos, por ejemplo, adaptadores basados ​​en el chipset Realtek: cuando el adaptador no está asociado, funciona en modo USB 2.0, escaneando canales y buscando redes cercanas. Cuando el adaptador se conecta a la red, el servicio especial del sistema de Windows reinicia el dispositivo y lo cambia al modo USB 3.0. En este modo, el adaptador permanece hasta que se disocia, luego de lo cual vuelve al modo USB 2.0 nuevamente. Estos son bailes tan locos.

2018

El tiempo pasa, y si no hay nuevos problemas al probar los adaptadores USB (los conectores USB tipo C no cuentan, un adaptador de un centavo resuelve el problema), entonces se está gestando una crisis para MiniPCIe y M.2. Seguir adelante con el viejo grupo de "laptop con ExpressCard + MiniPCIe ExpressCard" es insoportable. En primer lugar, las computadoras portátiles viejas ya no tienen Windows 10. En segundo lugar, pueden morir en cualquier momento, dejándonos perdidos, porque no tengo ganas de buscar computadoras portátiles de reemplazo en el mercado de pulgas.

Necesitamos encontrar una nueva solución. Móvil, preferiblemente bajo Windows y macOS, con una interfaz moderna para conectarse. Naturalmente, con capacidad de acceso directo a memoria (DMA). La forma más fácil es insertar la placa adaptadora PCIe <-> MiniPCIe en el escritorio, pero luego debe renunciar a la movilidad. Llevar un escritorio alrededor de su oficina es muy bueno para su salud, pero no muy productivo. Además, ahora generalmente nos estamos alejando de las computadoras de escritorio hacia computadoras portátiles e Intel NUC; Las computadoras de escritorio han perdido su significado en los últimos años.

Entonces, ¿qué nos queda? Por supuesto, no USB, porque, por desgracia, no puede hacer un puente PCIe <-> USB. Luego Thunderbolt: está en las nuevas computadoras portátiles y NUC, y debería hacer posible el puente PCIe <-> Thunderbolt. Bueno, la dirección de la búsqueda es un dispositivo para conectar un adaptador PCIe a través de Thunderbolt.

Buscamos, buscamos y encontramos al atractivo: Startech Thunderbolt 3 PCIe Expansion Chassis . Naturalmente, sus desarrolladores, incluso en las fantasías más violentas, no podrían haber pensado que alguien quisiera insertar una tarjeta Wi-Fi en este chasis. El sitio en realidad describe todas las fantasías que visitaron los desarrolladores: “El chasis Thunderbolt 3 PCIe facilita la expansión de su sistema con las capacidades que necesita para trabajar con la máxima productividad. "Puede agregar muchos tipos de tarjetas PCI Express, como una tarjeta PCIe USB 3.1 / 3.0 / 2.0 y USB-C, SSD, red, eSATA, FireWire o tarjetas de captura de video". Teóricamente, el Wi-Fi debería despegar. Prácticamente ... bueno, ya sabes cómo es prácticamente. Si un componente tiene al menos la menor posibilidad de no ganar dinero por algún motivo (controlador, firmware, microcircuitos), entonces no funcionará.

Escribimos un apoyo. El soporte, comprensiblemente, no estaba preparado para el problema de Wi-Fi. Dijeron que probaron los adaptadores Ethernet, pero que la conexión Wi-Fi nunca lo hizo. Bueno, lo intentaremos por ellos. El paquete llega rápidamente, y solo podemos quitar la carcasa externa e insertar una placa PCIe con un adaptador para M.2.

imagen
Inside Startech TB31PCIEX16

Inserte el adaptador de Wi-Fi en el adaptador y atorníllelo. Luego, conectamos las antenas a la placa (a través de conectores microscópicos, no podemos prescindir de una lupa), sujetamos las antenas al soporte de la placa PCIe para sacarlas y conectamos toda la unidad al puerto de alimentación y Thunderbolt de la computadora portátil.

imagen
Startech TB31PCIEX16 montado

Y funcionó. No inmediatamente, por supuesto, tales piezas de hierro generalmente no se rinden inmediatamente. Primero tuve que actualizar el firmware del controlador Thunderbolt en la computadora. Pero luego todo fue como un reloj.

El futuro

Estamos siguiendo de cerca el desarrollo de la industria. La siguiente interfaz en camino es M.2 CNVio, que se usa, por ejemplo, en los últimos adaptadores Intel 9560. El próximo estándar de Wi-Fi es 802.11ax. Resolveremos los problemas a medida que estén disponibles.

Source: https://habr.com/ru/post/es420415/


All Articles