El protocolo Nv2 (Nstreme ver 2)
Repaso del protocolo Nv2
El protocolo Nv2 es un protocolo inalámbrico propietario desarrollado por MikroTik para usarse junto con los chips inalámbricos Atheros 802.11. Nv2 está basado en la tecnología de acceso al medio TDMA (Acceso Múltiple por División de Tiempo) en lugar de CSMA (Acceso Múltimple por Detección de Carrier), usado en los dispositivos regulares 802.11.
TDMA soluciona el problema del nodo oculto y hace más eficiente el uso del canal, además de mejorar el throughput y la latencia, especialmente en redes PtMP (Punto a Multipunto).
Nv2 es soportado por Atheros 802.11n y demás chipsets 802.11a/b/g partiendo desde el AR5212, pero no soportado en AR5210 ni en ningún otro chipset anterior al AR5211. Esto significa que ambos (802.11n y dispositivos estándar) pueden formar parte de la misma red sin la necesidad de actualizar el hardware para implementar Nv2.
El acceso al medio en redes Nv2 es controlado por el Access Point Nv2. Éste segmenta el tiempo en períodos de tamaño fijo (time slots) los cuales son dinámicamente divididos en porciones de downlink (datos enviados desde el AP a los clientes) y uplink (datos enviados desde los clientes al AP), basándose en estado de colas en el AP y clientes. El tiempo de Uplink es también dividido entre los clientes conectados, considerando sus requerimientos de ancho de banda. Al comienzo de cada período, el AP transmite su agenda (schedule) que indica a los clientes cuando deben transmitir y que cantidad de tiempo pueden usar.
Con el objeto de permitir a los clientes nuevos conectarse al AP, éste asigna periódicamente el tiempo de enlace ascendente para «clientes no especificados». Este intervalo de tiempo se utiliza por el los nuevos clientes para iniciar la registración. Luego el AP estima un retardo de propagación entre él mismo el cliente y comienza periódicamente la programación de tiempo de enlace ascendente para este cliente con el fin de completar la registración y recibir datos desde el cliente.
Nv2 implementa selección dinámica de la tasa de transmisión con base en cada cliente y ARQ para la transmisión de datos. Esto permite una comunicación confiable entre los links Nv2.
Para la QoS (Calidad de Servicio), Nv2 implementa un número variable de colas de prioridad ya incluídas por defecto, aunque también se puede ajustar la política de QoS con reglas de firewall o información de prioridad propagada a través de la red usando VLAN o los bits experimentales de MPLS.
Estado de la implementación del protocolo Nv2
En la versión 5.0rc1, Nv2 tiene las siguientes características:
- Acceso al medio por TDMA
- Soporte WDS
- Soporte de QoS con un numero variable de colas de prioridad
Desde la versión 5.0rc2:
- Encriptación de datos
Desde la version 5.0rc3:
- Características de autenticación de RADIUS
Desde la versión 5.0rc4:
- Se agregaron algunos campos estadísticos olvidados
Características que Nv2 AUN NO TIENE:
- Políticas de acceso al medio controladas por el administrador
- Sincronismo entre los AP Nv2
- Algunas otras características…
Compatibilidad y Coexistencia con otros protocolos inalámbricos
Nv2 no es compatible con (ni está basado en) cualquier otro protocolo inalámbrico ó implementaciones similares, ya sea basado en TDMA o cualquier otro tipo, incluyendo Motorola Canopy, Airmax Ubiquiti y la práctica TDMA de FreeBSD. Esto implica que sólo los dispositivos soportados y habilitados pueden participar en la red de NV2 .
Los demás dispositivos 802.11 no reconocerán ni podrán conectarse a un AP Nv2. Los equipos RouterOS que tengan el soporte para Nv2 (es decir – desde la versión 5.0rc1 para adelante) verán los AP Nv2 desde el comando SCAN, pero sólo se conectaran a ellos cuando estén debidamente configurados.
Como NV2 no utiliza la tecnología CSMA, puede interferir con cualquier otra red en el mismo canal. De la misma manera otras redes pueden perturbar la red NV2, ya que cualquier otra señal se considera ruido.
Puntos clave acerca de la compatibilidad y la coexistencia:
- Sólo los dispositivos RouterOS podrán participar en redes Nv2.
- Sólo los dispositivos RouterOS verán el AP NV2 al escanear.
- Una red Nv2 interferirá a otras redes en el mismo canal.
- Una red Nv2 puede verse afectada por cualquier otra red en el mismo canal (NV2 o no).
- Un dispositivo con Nv2 habilitado no se conectará a cualquier otra red basada en TDMA.
¿Cómo se compara Nv2 con Nstreme y 802.11
NV2 vs 802,11
Las diferencias clave entre NV2 y 802.11:
- El acceso al medio está controlado por el AP – esto elimina el problema del nodo oculto y permite aplicar una política centralizada de acceso al medio – El AP controla cuanto tiempo usa cada cliente y puede asignar más tiempo a los mismos de acuerdo con alguna política en lugar de cada dispositivo se pelee por el acceso al medio.
- Reducción en el retardo de propagación del encabezado – En Nv2 no hay confirmaciones (ACK) por cada frame – esto mejora significativamente el rendimiento, especialmente en enlaces de larga distancia donde el retardo de propagación de las tramas de datos y sus siguientes ACK reduce significativamente la eficacia del uso del canal.
- Reducción del encabezado por trama – NV2 implementa agregación de trama y fragmentación para maximizar el uso asignado del medio y reducir el encabezado por trama (espacios entre tramas, preámbulos).
NV2 vs Nstreme
Diferencias clave entre NV2 y Nstreme:
- Reducción del encabezado de polling – en lugar de sondear cada cliente, el AP NV2 transmite por broadcast su agenda, la cual asigna el tiempo a múltiples clientes, esto puede ser considerado «sondeo grupal» – no se pierde tiempo para el sondeo de cada cliente individual, dejando más tiempo para la transmisión de datos reales. Esto mejora el rendimiento, especialmente en configuraciones PtMP.
- Reducción del retardo de propagación del encabezado – NV2 no debe sondear a cada cliente individualmente, lo que permite crear una agenda basada en la distancia estimada a los clientes (retardo de propagación) de tal manera que el uso del canales más efectivo. Esto también mejora el rendimiento, especialmente en configuraciones PtMP.
- Más control sobre la latencia – sobrecarga reducida, tamaños de período ajustable y las características de QoS permite un mayor control sobre la latencia en la red.
Configuración de Nv2
A partir de la versión 5.0rc1, se ha introducido un nuevo parámetro en la sección Wireless, wireless-protocol . Esta opción controla qúe protocolo inalámbrico se selecciona y utiliza. Tenga en cuenta que el significado de este parámetro depende del rol de la interfaz (AP o cliente), que depende del parámetro modeo . Encontrará los posibles valores de wireless-protocol y su significado en el cuadro a continuación.
valor | AP | cliente |
---|---|---|
unspecified | establece redes 802.11 o nstreme basadas en parámetros antiguos de nstreme | conecta a redes 802.11 o nstreme basadas en parámetros antiguos de nstreme |
any | lo mismo que unspecified | escanea todas las redes, sin importar que protocolo y se conecta usando el protocolo de la red seleccionada |
802.11 | Establece una red 802.11 | Conecta solo a redes 802.11 |
nstreme | Establece una red nstreme | Conecta solo a redes nstreme |
Nv2 | Establece una red Nv2 | Conecta sólo a redes Nv2 |
Nv2-nstreme-802.11 | Establece una red Nv2 | Escanea redes Nv2, si encuentra una adecuada, se conecta; de lo contrario escanea redes Nstreme, si encuentra una red apropiada se conecta, por último escanea redes 802.11 y si encuentra una apropiada, se conecta. |
Nv2-nstreme | Establece redes Nv2 | Escanea redes Nv2, si encuentra una red adecuada – se conecta, de lo contrario escanea redes Nstreme y si encuentra una apropiada se conecta |
Nótese que los valores de wireless-protocol, Nv2-nstreme-802.11 y Nv2-nstreme, NO especifican algún tipo de protocolo especial ó híbrido – estos valores son implementados para simplificar la configuración del cliente, cuando el protocolo de la red a la que el cliente debe conectarse puede cambiar. El uso de estos valores puede ayudar a migrar una red común a Nv2.
Muchos de los parámetros de Nv2 son pertinentes solo a los AP Nv2 – el cliente Nv2 se adapta automáticamente a los parámetros del AP. Los siguientes parámetros son relevantos al AP nv2:
- Nv2-queue-count – especifica cuantas colas de prioridad son usadas en la red Nv2. Para más detalles, véase Manual:Nv2#QoS_in_Nv2_network
- Nv2-qos – Controla la política de asignación de prioridad de colas. Para más detalles, léase Manual:Nv2#QoS_in_Nv2_network
- Nv2-cell-radius – Especifica la distancia en Km al cliente más lejano de la red Nv2. Este parámetro afecta la cantidad de tiempos de contención que el AP reserva para los clientes que quieran iniciar una conexión y también el tamaño de los time slots usados para estimar la distancia al cliente. Si este parámetro es pequeño, los clientes muy lejanos tendrán problemas para conectarse y desconectarse acusando un error de alcance (ranging timeout). Por más que durante las operaciones normales, el efecto de este parámetro puede ser insignificante, para mantener una máxima performance, se recomienda no incrementar este valor mientras no sea necesario, para que el AP no reserve tiempos que no serán usados y así asignarlos en la transferencia actual de datos.
- tdma-period-size – Especifica el tamaño en ms del período de tiempo que el AP Nv2 usa para controlar el acceso al medio. Períodos pequeños puedes pueden bajar la latencia (porque el AP puede asignar rápidamente un tiempo a los clientes), pero incrementan el encabezado y por lo tanto degrada el ancho de banda efectivo. Por otro lado, períodos altos incrementarán el ancho de banda efectivo, pero también la latencia. Se requiere incrementar este valor en enlaces largos para lograr anchos de banda aceptables. Esta necesidad puede ser causada por el hecho de que existe una brecha de propagación entre los datos descendentes (del AP a los clientes) y ascendentes (desde los clientes al AP), en los que no hay transferencia de datos. Este espacio es necesario debido a que el cliente debe recibir la última trama desde el AP (esto sucede luego del retardo de propagación) para luego comenzar a transmitir – Cómo resultado, las tramas desde los clientes llegan al AP luego del retardo de propagación, por lo que la brecha es dos veces el tiempo de propagación. Mientras más grande sea la distancia, es necesario una mayor brecha de propagación en cada período. Si esta brecha toma una porción muy significante del período, el ancho de banda puede tornarse inaceptable y el tamaño del período debe incrementarse a costa de subir la latencia. Los valores básicos de estos parámetros deben ser cuidadosamente elegidos, para poder maximizar el ancho de banda efectivo, pero también mantener la latencia en niveles aceptables.
Los siguientes parámetros son importantes tanto en los AP como en los clientes Nv2:
- Nv2-security – Especifica la seguridad en Nv2, para más detalles léase Manual:Nv2#Security_in_Nv2_network
- Nv2-preshared-key – Especifica la clave compartida a usar, para más detalles léase Manual:Nv2#Security_in_Nv2_network
Migrando a Nv2
El uso de wireless-protocol sirve de ayuda para migrar ó evaluar el protocolo Nv2 en redes existentes de manera sencilla y reduce el tiempo sin servicio al menos posible. Estos son los pasos recomendados a seguir:
- Actualice el AP a alguna versión que soporte Nv2, pero no habilite aún Nv2.
- Actualice los clientes a una versión que soporte Nv2.
- Configure los clientes con wireless-protocol=Nv2-nstreme-802.11. Ellos se seguirán conectando al AP usando el protocolo anterior, ya que el AP no se ha cambiado a Nv2 aún.
- Configure los parámetros de Nv2 en el AP.
- En caso de ser necesaro usar encriptación y autenticación, configure los parámetros de seguridad Nv2 tanto en el AP como en los clientes (ver Manual:Nv2#Security_in_Nv2_network).
- Configure wireless-protocol=Nv2 en el AP. Esto hará que el AP cambie al protocolo Nv2. Los clientes ahora se conectarán usando el protocolo Nv2.
- En caso que ocurra algún problema, se puede simplemente volver al protocolo anterior cambiándolo en el AP.
- Haga un ajuste fino a los parámetros de Nv2 para conseguir anchos de banda y latencia aceptable.
- Implemente políticas de QoS para una mayor performance.
Guía básica de resolución de problemas:
- Si los clientes tiene problemas para conectarse o bien se desconectan acusando el error «ranging timeout» – Asegúrese que los parámetros de Nv2-cell-radius estén correctamente configurados.
- Bajo ancho de banda en enlaces de larga distancia, aunque los niveles de señal y rates son buenos – intente aumentar el parámetro de tdma-period-size.
QoS en redes Nv2
La QoS en Nv2 se implementa considerando un número de colas de prioridad . Una cola se considerará para transmitir, sólo si todas las colas de mayor prioridad están vacias, basándose en las recomendaciones de 802.1D-2004. En la práctica, esto significa que al principio se transmitirán todas las tramas de la cola con mayor prioridad, y sólo despues se considerará la próxima cola. Por lo tanto, las políticas de QoS deben designarse con cuidado, para que las colas de mayor prioridad nunca asfixien a las de menor prioridad.
La Qos en redes Nv2 es controlada por los AP; los clientes simplemente se adaptan a lo que ordenen los AP. La misma se configura con los parámetros de Nv2-queue-count y Nv2-qos. Nv2-queue-count especifica el número de colas de prioridad. La asignación de las tramas a las colas es controlada por el parámetro Nv2-qos.
Nv2-qos=default
Bajo este modo, cada trama saliente es inspeccionada por el algorítmo por defecto de las políticas de QoS, el cual elige las colas basándose en el tipo de paquete y tamaño. Si las reglas por defecto no concuerdan, entonces la cola se selecciona basándose en el campo de prioridad de la trama, en el modo Nv2-qos=frame-priority.
Nv2-qos=frame-priority
En este modo, la cola de QoS se selecciona según el campo de prioridad de trama. Nótese que éste campo no es un campo cualquiera del encabezado, por lo que sólo es válido mientras el paquete está siendo procesado por algún dispositivo. Dicho campo debe ser establecido tanto de manera explícita por reglas de firewall o implícitamente por la prioridad de ingreso del proceso de transmisión de tramas, por ejemplo, en los bits EXP de MPLS. Para más información del campo de prioridad de trama léase:
La cola es elegida según la prioridad de la trama, según la recomendación 802.1D sobre la asignación de clases de tráfico. Ésta asignación depende del número de colas disponibles del parámetro Nv2-queue-count. Por ejemplo, si el número de colas es 4, la asignación es como sigue (preste atención a cómo este mapeo se asemeja al de WMM):
- prioridad 0,3 -> cola 0
- prioridad 1,2 -> cola 1
- prioridad 4,5 -> cola 2
- prioridad 6,7 -> cola 3
Si el número de colas es 2 (por defecto), la asignación es la siguiente:
- prioridad 0,1,2,3 -> cola 0
- prioridad 4,5,6,7 -> cola 1
Si el número de colas es 8 (máximo posible), la asignación es la siguiente:
- prioridad 0 -> cola 2
- prioridad 1 -> cola 0
- prioridad 2 -> cola 1
- prioridad 3 -> cola 3
- prioridad 4 -> cola 4
- prioridad 5 -> cola 5
- prioridad 6 -> cola 6
- prioridad 7 -> cola 7
Para otrás técnicas de asignación, discusión sobre la justificación de estas asignaciones y prácticas recomendadas, léase 802.1D-2004.
Seguridad en redes Nv2
La implementación de la seguridad en redes Nv2 tiene las siguientes características:
- Encriptación de datos acelerada por hardware usando AES-CCM con llaves de 128 bits;
- Saludo a 4 vías para acordar la llave (similar al de 802.11i);
- Método de autenticación de llave compartida (similar al de 802.11i);
- Actualización periodica del grupo de llaves (Usadas para datos de broadcast y multicast).
Al ser Nv2 un protocolo propietario, no hace uso de los mecanismos de seguridad de 802.11, por lo tanto la configuración de la seguridad es diferente. La interfaz que usa el protocolo Nv2 ingora los parámetros de security-profile. En su lugar, la seguridad se configura desde los siguientes parámetros de la interfaz:
- Nv2-security – Este parámetro habilita/deshabilita el uso de la seguridad en redes Nv2. Nótese que cuando la seguridad esté habilitada en los AP, éste no aceptara clientes con seguridad deshabilitada. Del mismo modo, clientes con seguridad habiltada no podrán conectarse a un AP sin seguridad.
- Nv2-preshared-key – Llave pre-compartida que se usa para la autenticación. Las llaves para encriptar los datos son derivadas del intercambio a 4 vías. La llave pre-compartida debe ser la misma para que 2 dispositivos puedan establecer una comunicación. Si ésta es diferente, la conexión no se establecerá, porque la parte remota no podrá interpretar correctamente los mensajes de intercambio de claves.
Por: Mario Clep Fuente: Mikrotik Bajo Licencia CC 2.5 - Attribution-Noncommercial-No Derivative