Wireless Mesh Networking
En este post haremos referencia a un término más que conocido en el mundo de las comunicaciones. El vocablo en cuestión es Mesh, por Mesh hacemos referencia a una comunicación en malla (donde todos los dispositivos están conectados entre si).
Redes Mesh Inalámbricas
Si analizamos el número de enlaces que son necesarios para conectar un número N de dispositivos, el número de conexiones necesarias tiene una complejidad cuadrática, en concreto, el número de enlaces necesarios es N*(N-1)/2.
Este elevado número de enlaces implica que una arquitectura mallada no sea viable en redes cableadas, sin embargo las redes inalámbricas nos proporcionan un medio idóneo para implementarla.
Las redes Mesh inalámbricas nos ofrecen un poderoso método para encaminar datos, además de permitir expandir la red de forma sencilla sin necesidad de tener que desplegar un elevado número de conexiones por cada nuevo elemento, y la habilidad de crear rutas alternativas ante el fallo o pérdida de conexión de algún elemento intermedio.
Un protocolo muy popular que utiliza la estructura en malla es el denominado ZigBee, que está específicamente diseñado para aplicaciones de bajo consumo y de baja tasa de envío de información. Digi International ofrece varios productos basados en ZigBee, pero además ha desarrollado un protocolo alternativo que también incorpora la funcionalidad de encaminamiento malla, cuyo nombre es DigiMesh. Ambos protocolos ofrecen ventajas únicas que iremos detallando a lo largo de este post.
Todos estos protocolos junto con los protocolos Digi ofrecen, en su factor, de forma unificada XBee.
La Red Zigbee
El protocolo ZigBee ofrece tres tipos de elementos: Coordinador, Router y End Device.
Coordinador: Es el nodo de la red con mayor funcionalidad de entre los tres tipos existentes. Hay exactamente un único coordinador en cada red y su función principal es establecer la red inicialmente. Es el que almacena la información sobre la red así como la seguridad.
Routers: Son dispositivos que actúan como elementos intermedios, cuya funcionalidad principal es retransmitir los datos a otros nodos.
End Devices: Se trata de elementos que pueden ser alimentados por baterías, tienen un consumo muy reducido. Son nodos con funcionalidad muy reducida que sólo necesitan tener la capacidad de hablar con su «padre» ya sea un router o un coordinador.
Las principales ventajas del ZigBee son:
– Estándar abierto con interoperabilidad entre diferentes proveedores.
– Opción de bajo costo, funcionalidad reducida de los dispositivos finales.
XBee Serie 2 (Protocolo ZigBee)
La Red DigiMesh
El protocolo DigiMesh dispone de un único tipo de nodo, como resultado tenemos una red homogénea, donde todos los nodos pueden enviar, enrutar la información y pueden ser intercambiables. No tenemos una relación «padre-hijo» como en el caso de ZigBee. Todos los nodos se pueden alimentar por baterías ya que todos soportan configuración en bajo consumo.
DigiMesh ofrece las siguientes ventajas:
– Configuración de la red más sencilla
– Más flexibilidad a la hora de expandir la red
– Mayor fiabilidad en entornos ruidosos o duros donde los routers pueden aparecer o desaparecer por daño o interferencias
XBee Serie 1 con DigiMesh
Red ZigBee vs DigiMesh
El hecho de que los nodos se puedan dormir es especialmente útil en aplicaciones donde se requiera que todos los elementos estén alimentados por baterías. Actualmente ZigBee sólo permite que los dispositivos End Devices se puedan dormir.
Algunos sistemas requieren de un gateway o un coordinador para establecer el periodo de sincronización, para, por ejemplo, configurar el tiempo que los dispositivos tienen que estar dormidos. DigiMesh incluye una significante ventaja ya que establece el mecanismo de sincronización en un método basado en nominación y en un proceso de elección que se puede configurar de forma manual o automática.
Sin embargo el principal inconveniente que lleva la utilización de DigiMesh es que se trata de un protocolo propietario a diferencia de ZigBee, que es un estándar abierto. ZigBee define diferentes perfiles para aplicaciones comunes como gestión de energía o control de iluminación, además de una amplia selección de herramientas para configuración y diagnóstico. Por otro lado, DigiMesh, al ser un protocolo propietario permite tener un control más preciso del código y optimizado, lo que a su vez ofrece una mejor optimización del payload de los datos enviados obteniendo un rendimiento mayor que en ZigBee.
Tanto DigiMesh como ZigBee son excelentes protocolos con funcionalidad de Mesh, pero, ¿cuál es mejor? Esta pregunta no se puede contestar en reglas generales ya que dependiendo de la aplicación puede ser más recomendable utilizar una tecnología u otra. La principal ventaja de los módulos XBee es que con el mismo factor de forma Digi International se proporcione ambos stacks y que gracias a esto, para evaluar las prestaciones simplemente tengamos que utilizar una referencia u otra sin necesidad de tener que cambiar nuestro hardware.
En una nueva entrega analizaremos la herramienta de configuración proporcionada por Digi International XCTU-NG y podremos comparar con un mayor detalle ambos protocolos.