Protocolos de gestión de dispositivos IoT: LwM2M, OMA-DM y TR-069
Uno de los problemas a los que más se suele hacer referencia en el mundo del IoT (Internet of Things) es a la ingestión de datos cuya solución para el nivel industrial parecía ayer el Big Data y hoy el pre-procesamiento en el “Edge”. Uno de los problemas más grandes que están afrontando las compañías a la hora de implantar dispositivos IoT es su gestión.
¿Por qué? Actualmente cada fabricante utiliza su propio software de gestión de su ecosistema y solo a través de él se pueden realizar las tareas de mantenimiento y monitorización de los dispositivos de forma segura: actualización de software, configuración remota, etc. La clave es la utilización de dispositivos que utilicen protocolos estándar o herramientas como la plataforma de Muutech que permitan interactuar con las plataformas de gestión de diferentes fabricantes, permitiendo el seguir utilizando dispositivos no estándar de diferentes fabricantes en combinación con dispositivos que si usan protocolos estándar, evitando el vendor-locking.
El protocolo estándar que mayor impacto está teniendo en IoT está siendo MQTT (y su variante MQTT-SN), ya que es ligero, robusto y carente de overhead. Para los que no lo conozcáis funciona por un modelo de suscripción-publicación, muy similar conceptualmente al funcionamiento de muchas herramientas de chat. Este protocolo está orientado a la comunicación, pero no sirve para la gestión de dispositivos de IoT, aunque en alguna plataforma lo que se ha hecho es construir un protocolo de gestión por encima de MQTT, por ejemplo en IBM Watson IoT Platform:
https://console.bluemix.net/ Para cubrir esta necesidad de estandarización nos encontramos con los siguientes protocolos:
- OMA Lightweight M2M (LwM2M), creado por la Open Mobile Alliance es un protocolo rápido, ligero y estructurado, ideal para dispositivos de baja capacidad.
- OMA-DM, creado también por la Open Mobile Alliance, pero orientado a aplicaciones móviles. Es ideal para cosas en movimiento (que cambian de IP, por ejemplo). Es más complejo y estructurado que LwM2M.
- TR-069, creado por el Broadband Forum (la primera versión es de 2004) y usado en cientos de millones de dispositivos en el mundo, al ser un protocolo ampliamente utilizado por los operadores de telecomunicaciones para provisionar routers, etc. Por ello, es muy complejo, pesado y estructurado, pero funciona muy bien para gateways y equipamiento de telecomunicaciones. Como curiosidad, casi ningún producto TR069 está certificado: http://www.broadband-forum.org/implementation/certified-products/tr-069-certified-products Tras algunos años de trabajo, ha salido una versión más orientada a IoT de este protocolo, User Service Platform: https://usp.technology/ muy reciente y con pocas implementaciones todavía.
En las siguientes dos tablas (via
https://walt-tech.com.au/) se pueden ver una comparativa: