Análisis comparativo entre arquitecturas de sistemas IoT
Comparative analysis between IoT systems architectures
Revista de Investigación en Tecnologías de la Información
Universitat Politècnica de Catalunya, España
ISSN-e: 2387-0893
Periodicidad: Bianual
vol. 10, núm. 21, Esp., 2022
Recepción: Junio 06, 2022
Aprobación: Agosto 12, 2022
Resumen: Los sistemas IoT son una de las soluciones actuales para la automatización de procesos. Su desarrollo permite presentar soluciones que se adapten a las nuevas tecnologías. Sin embargo, pese a su grado de utilización no se cuenta con una única arquitectura o modelo de referencia estandarizado, que facilite el desarrollo e implementación de un sistema IoT. El desarrollo de un sistema IoT puede resultar complicado aún más cuando no se posee una única guía. El presente articulo realiza un estudio comparativo de dos arquitecturas y un modelo de referencia utilizados para el desarrollo de sistemas IoT. Se presentan las características y funcionalidades de los casos seleccionados y se comparan los mismos para conocer las ventajas y desventajas de su uso. El objetivo es obtener una guía para la elección de una arquitectura o modelo cuando se necesite implementar un sistema IoT, mismo que cuente con un respaldo para su uso; es decir que ya muestre un determinado nivel de madurez.
Palabras clave: Sistemas IoT, Arquitecturas, Modelos de Referencia, Aplicaciones IoT.
Abstract: IoT systems are one of the current solutions for process automation. Its development is important to present solutions that adapt to new technologies. Despite its degree of use, there is not a unique architecture or reference model standardized that allows the development of an IoT system in a simple way. Developing an IoT system can be even more complicated when you don't have a unique guide. The present article makes a comparative study of two architectures and one reference model used for the development of IoT systems. The characteristics and functionalities of the selected cases will be exposed, and they will be compared to know the advantages and disadvantages of their use. The goal is to obtain a guide for the choice of an architecture or model for the realization of an IoT system, which has a support for its use; that is, it has already been used.
Keywords: IoT Systems, Architectures, Reference Models, IoT Applications.
1. Introducción
Debido a la rápida evolución de los sistemas IoT (Internet of Things), ha surgido una gran variedad de arquitecturas y modelos referenciales para el desarrollo e implementación de dichos sistemas. Hecho que ha vuelto bastante difícil que todos los componentes puedan interactuar entre si al ser implementados en una aplicación o sistema IoT que use un modelo o arquitectura para el cual no fue diseñado dicho componente. Por lo cual es necesario disponer de una arquitectura o modelo referencial que permita interoperabilidad de los componentes en un sistema IoT [1].
Este artículo presenta el estudio de arquitecturas y/o modelos de referencia utilizados al momento de implementar un sistema IoT, para que futuros proyectos puedan usar una arquitectura o modelos de referencia de forma sencilla, así como un conocimiento íntegro de los problemas futuros en cuanto a compatibilidad de código o trabajo se refiere [2]. Con ello se plantea obtener una base o guía para la elección de un modelo de desarrollo para la puesta en marcha de un sistema IoT.
El primer paso para plantear esta guía es la recolección de información sobre arquitecturas y modelos de referencia IoT propuestos en los últimos 5 años. En base a dicha información se elegirán 3 arquitecturas a estudiarse en el presente trabajo, de las cuales se explicará brevemente su estructura y forma de trabajo.
En la sección 2 se presenta una breve introducción a los sistemas IoT, sus componentes y áreas de aplicación a considerarse para el desarrollo. Posteriormente, en la sección 3 se explica cómo fue realizada la investigación y elección de las arquitecturas, para proceder con el estudio de estas. Cabe señalar que se expondrán algunos casos de éxito donde fueron aplicadas las arquitecturas estudiadas. La sección 4 se exponen los resultados obtenidos del análisis comparativo realizado. Finalmente, en la sección 5 se muestran las conclusiones y trabajos futuros del presente trabajo.
2. Marco Teórico
Los sistemas IoT nacen como una solución para la automatización de ciertas tareas que resultan repetitivas o que requieren de un control preciso. Estos sistemas ofrecen una gran cantidad de soluciones para una misma tarea, gracias a la facilidad de implementación, hecho que hace posible que cada usuario plantee un sistema que específicamente se ajuste a sus necesidades. Sin embargo, esta facilidad no implica que la implementación de dicha solución sea sencilla, más aún cuando no se cuenta con una guía si la solución es nueva o considera parámetros que antes no eran tomados en cuenta.
El no poseer un estándar definido puede provocar que una implementación sencilla se complique y en el caso de los sistemas más difíciles, este grado de complejidad puede ser mucho más grande. Debido al rápido avance de la tecnología IoT, la estandarización no es un trabajo sencillo. Existe una gran cantidad de posibles arquitecturas y modelos para la implementación de un sistema, por ello hallar un estándar es difícil.
Varios investigadores a la par de desarrolladores han propuesto varias arquitecturas y/o modelos para el desarrollo de sistemas y aplicaciones IoT. Por otro lado, instituciones como la ITU (International Telecommunication Union) han publicado documentos llamados recomendaciones a modo de guía para el desarrollo de aplicativos de la tecnología IoT, dividiéndoles por áreas de aplicación, arquitecturas o tecnologías a implementarse.
Muchas de las soluciones propuestas no abarcan una única arquitectura, o en su defecto plantean el uso de alguna arquitectura o modelo previamente expuesto. Cada desarrollador es libre de proponer una arquitectura, pero en ciertas ocasiones dicha propuesta solo fue pensada para un sistema especifico, contemplando ciertos usos a la par de componentes utilizables.
La interoperabilidad entre componentes en los sistemas IoT no es un problema que se aborde abiertamente, al no existir un único estándar para el desarrollo, los fabricantes producen componentes que funcionan bajo ciertas tecnologías, mismas que pueden o no ser utilizadas por ciertas arquitecturas o modelos.
En este punto, se intenta obtener un estándar único, ya sea una arquitectura o modelo referencial, para que cualquier tipo de implementación de un sistema IoT, no tenga problemas de interoperabilidad y pueda así trabajar con componentes heterogéneos [3].
Otro punto importante es la gran cantidad de componentes existentes para el desarrollo de los sistemas IoT. Sumándole la enorme velocidad de la producción tecnológica, la lista de nuevos componentes disponibles se incrementa cada día. La presentación de un estándar común lograría que al menos dichos componentes trabajen bajo un mismo esquema, logrando disminuir el problema antes mencionado.
2.1. Elementos de los Sistemas IoT
Dentro de un sistema IoT existen ciertos elementos que son necesarios para su funcionamiento, de los cuales es importante conocer su funcionalidad. Este tipo de sistemas está generalmente conformado por: (Figura 1).
Dispositivos o Componentes: cualquier objeto o cosa que puedan conectarse a la Internet y pueda comunicarse con otros objetos puede considerarse un dispositivo IoT.
Comunicaciones: para envío o recepción de datos, los sistemas IoT usan diversas tecnologías. Como ejemplos tenemos: redes celulares, redes satelitales, Wifi, Bluetooth, Zigbee, etc.
Computación y almacenamiento: necesarios para una mejora futura y el mejor desempeño del sistema IoT. La computación de los datos puede darse de manera local o se puede utilizar mediante los servicios en la Nube. Por otro lado, para almacenar los datos, se usan almacenamientos locales o en la nube.
Servicios: son todas las aplicaciones para las cuales fueron creados los sistemas IoT. Dentro de estos se tienen los servicios de entrega, agregación o recolección de información (Smart grid), casas y ciudades inteligentes, el transporte inteligente y la automatización de procesos industriales, etc. [5]
2.2. Aplicaciones de los Sistemas IoT
Entre las áreas de aplicación para un sistema IoT se tienen [6]:
Casas Inteligentes: una de las mayores áreas de aplicación, donde se puede evidenciar la existencia de sistemas complejos o simples. Entre los posibles servicios de estos sistemas se tiene el abrir o cerrar puertas, ventanas, tuberías; control de la temperatura, control lumínico, etc. [5]. Los componentes utilizados para la domótica pueden llegar a tener problemas de interoperabilidad. Sin un estándar definido, aumentar servicios en un sistema puede ser bastante complejo o imposible si la arquitectura utilizada no contemplo las tecnologías necesarias. En los tiempos actuales, donde la seguridad y la facilidad van de la mano, un sistema que no es adaptable tiende a ser reemplazado por uno más eficiente, más aún si el costo no es muy elevado.
Ciudades Inteligentes: se conoce como ciudad inteligente al ambiente que posee en conjunto la tecnología de automatización e IoT [5]. Logrando una mejora significativa en los servicios cotidianos que la ciudad brinda a sus habitantes y visitantes. Sistemas como el transporte Inteligente y el control de los servicios de agua son considerados servicios de vital importancia dentro de una ciudad inteligentes.
Agricultura y Ambiente: Gracias a componentes como los sensores, el obtener datos del medioambiente se puede estimar variables del clima como: la temperatura, humedad, radiación solar, etc. [7] Llevando la idea a una escala mayor, es posible predecir el clima para las futuras siembras o como protección antes desastres naturales. También es posible automatizar el proceso de riego, generando mayores beneficios [8].
Cuidado de la Salud: gracias a los sensores y el procesamiento de datos se puede obtener un diagnóstico de una manera más rápida. El uso de este tipo de tecnología no es exclusivo de centros hospitalarios o de personal estrictamente calificado. Hoy en día es común el uso de aplicaciones para la correcta realización y monitoreo de actividades físicas, en este caso el uso de sensores se aplica al control de las actividades realizadas a modo de un historial para conocer la cantidad de ejercicio realizado [8].
Transporte y Logística: Los servicios de movilidad, donde se contemplan las entregas a domicilio, sistemas de transporte tanto público como privado, pueden hacer uso de tecnología IoT para mejorar la circulación vehicular. La conexión entre vehículos y las redes vehiculares son consideradas importantes para mejorar la eficiencia del transporte público y privado [9]. Esta área es importante debido al constante incremento de medios de transporte, hecho que se refleja en las largas colas de tráfico.
3. Metodología
Para seleccionar las 3 arquitecturas, se procedió a recolectar información para un análisis documental teórico exploratorio. La investigación incluye la búsqueda y revisión de documentos científicos (artículos publicados en revistas o conferencias, libros, etc.) con información relevante para el tema. Haciendo uso de fuentes académicas como: IEEE Explorer, ACM, MPDI, Schoolar Google e ITU-T.
Los documentos considerados tienen como fecha límite de publicación los últimos 5 años. Para facilitar la búsqueda, en las fuentes se usarán palabras como: IoT, Architecture, Reference Model, Applications IoT, o una combinación de estas, para obtener documentos con información relevante.
Tras la revisión de la información se procede con la categorización de la información sobre IoT y sus Arquitecturas. Con las referencias revisadas, se procede a la elección de las 3 arquitecturas más populares, basándose en el número de apariciones y el grado de explicación dentro de los documentos.
Una vez seleccionadas las tres arquitecturas o modelos referenciales, se expondrá cada una. Para cada arquitectura/modelo se usará una referencia central de donde partirá la explicación. Complementando dicha información con conocimiento publicado en otras referencias no principales. Tras ello se procederá con el análisis comparativo, donde se evidencie su utilidad en base a sus ventajas y desventajas.
3.1. Estudio de las arquitecturas y modelo seleccionados
Se eligieron las arquitecturas de: 3 capas, 5 capas y el modelo de referencia ITU Y.4000/2060 como objetivo de estudio del presente trabajo.
3.1.1. Arquitectura de 3 Capas
Existen una gran cantidad de arquitecturas propuestas en pro de ayudar a comprender el concepto de IoT de una manera más precisa, de entre ellas una de las más usadas es la arquitectura de 3 capas.
Dentro de la arquitectura de 3 capas se definen las capas como: capa física denominada capa de Percepción, capa de Red (Network), y capa de Aplicación [10], Figura 2. Una vez definidos los nombres se procede a explicar con mayor detalle cada una de las capas que componen esta arquitectura.
Capa de Percepción: cumple con la función de obtener la información del ambiente utilizando varios sensores (temperatura, humedad, gas, IR, movimiento, etc.) [10] o con el uso de objetos inteligentes. Por otro lado, otra de las funcionalidades de esta capa es la identificación de los dispositivos que forman parte del sistema IoT. Para la arquitectura de 3 capas, el principal componente de la capa de percepción son los dispositivos y sensores, es por ello que la identificación y descubrimiento de los estos son consideradas funcionalidades de esta capa. En la Figura 3 se observan los objetos encargados de la obtención de datos del medio ambiente que pueden verse involucrados en la primera capa de la arquitectura. En [12], se indica que la primera capa también puede encargarse del control, ya que si bien la capa recoleta datos con los dispositivos antes indicados; además, recibe órdenes de las capas superiores para controlar acciones de los actuadores y preparar los datos para su transmisión.
Capa de Red: encargada de la conexión de los dispositivos inteligentes, los dispositivos de red y los servidores [10]. Sus funciones recaen en transmitir y procesar los datos obtenidos de sensores ubicados en el medio ambiente. En [13], se menciona que el transporte de los datos, que llegan a la capa de Red, puede ser transmitidos por medio de las redes de comunicación cableadas o inalámbricas, utilizando protocolos como IP, UDP y TCP. Por otro lado, en [11] se indica que también debe ser capaz de soportar tecnologías de comunicación como lo son: Ethernet, Wifi, Wifi-Max, Zigbee y BLE, entre otras. En la Figura 4 se listan algunas de las tecnologías de comunicación que pueden ser utilizadas por la capa de Red. Cabe mencionar que también esta capa puede incluir otras funcionalidades, como pueden ser la computación en la nube, Big Data, etc. Ya que generalmente esta capa debe proveer a la capa superior de información ya analizada para su presentación a los usuarios.
Capa de Aplicación: en [10] se define como aquella donde se ubican todos los servicios que el sistema brindará a sus usuarios, definiendo de esta manera el área de aplicación para la cual fue creada (casas inteligentes, ciudades inteligentes, transporte inteligente, etc.) Esta es la única capa a la cual el usuario final tiene acceso y que conoce casi en su totalidad, siendo el resto de la estructura (capa de Percepción y Red) un proceso desconocido. Además, es la responsable de la interacción entre el sistema y los usuarios finales, esto gracias a que dicha capa provee a los usuarios de los servicios solicitados. El sistema IoT necesita de soporte de las tecnologías de procesamiento y manejo de información, como pueden ser el uso de la computación en la nube, bases de datos, minería de datos, etc., ver Figura 5.
3.1.2. Arquitectura de 5 Capas
La arquitectura de 5 capas tiene una estructura similar a la arquitectura de 3 capas. Si bien se aumenta el número de capas, hecho que permite distribuir de mejor manera las tareas, el grado de complejidad que esta arquitectura posee es aún mayor. Cabe señalar que esta propuesta plantea nuevas tareas que podría realizar un sistema IoT, por lo que se la puede ver como una propuesta para sistemas específicos.
Según [10], la arquitectura de 5 capas separa la capa de Red en 2 nuevas capas e incorpora una capa nueva al final. Como se muestra en la Figura 6(a), la estructura de la arquitectura se compone de: Capa de Percepción, Capa de Transporte, Capa de Procesamiento, Capa de Aplicación y Capa de Negocio.
Por otro lado, en [11] se la presenta como la capa de gestión de los servicios (Figura 6(b)), similar a la capa de Procesamiento. Este cambio de nombre se utiliza para indicar la agregación de ciertas funcionalidades, manteniendo la capacidad de procesamiento.
Capa de Percepción: La funcionalidad principal de esta capa es la adquisición de datos del medio ambiente o área de trabajo mediante el uso de componentes como los sensores. Esta funcionalidad se mantiene igual a la arquitectura de 3 capas, ya que generalmente la capa inicial de las arquitecturas se encarga de la obtención de los datos. La capa de Percepción también puede definirse como el conjunto de objetos usado por el sistema para la obtención de datos del medio [11]. Otra de las funcionalidades propuesta para esta capa es el reconocimiento e identificación de los componentes del Sistema IoT. Según [10] y [11], las tecnologías de comunicación usadas en esta capa pueden ser (Figura 7): Sigfox, Redes 2G/3G/4G/5G, LoRaWAN, Wifi, BLE, Zigbee, Z-wave, etc.
Capa de Transporte: se encarga de la comunicación y transmisión de los datos obtenidos por la capa de Percepción, funcionalidad semejante a la expuesta en la capa de Red de la arquitectura de 3 capas. Otra de las funcionalidades planteadas es la implementación del control de la energía utilizada, para optimizar su consumo. La capa de Transporte hace uso de las tecnologías indicadas en la Figura 8; así como los protocolos UDP y TCP. Es oportuno mencionar que se hace referencia a protocolo de red como: IPv4, IPv6, RPL (Radio Link Protocol), 6LoWPAN (IPv6 para redes WPAN), MIPv4 (IPv4 para redes Móviles), etc.
Capa de Gestión de Servicios: según [11] esta capa actúa como intermediaria entre la capa Aplicación y las capas inferiores, hecho que le ha otorgado el nombre de Middleware. La principal función es el procesamiento de los datos a la par de la gestión de los servicios que brindará el sistema. La variedad de datos se debe a la heterogeneidad de los sensores y componentes, ya que aspectos como el rango de medida, sensibilidad o las escalas varían según el fabricante. El trabajo con dispositivos heterogéneos es abordado gracias a la existencia de esta capa, misma que busca facilitar el uso de cualquier componente en un sistema IoT. Por otro lado, en [11] se menciona que la capa puede tener la posibilidad de admitir la inclusión de nuevas librerías que le otorguen nuevas funcionalidades, volviéndola adaptable a la tecnología usada por las capas superiores.
Capa de Aplicación: es la responsable de proveer servicios a los usuarios finales del sistema IoT [11]. La cantidad y tipo de servicio a brindar depende directamente del sistema IoT implementado, llegando a brindar servicios complejos o una simple vista de reporte de desempeño. En [15] se mencionan algunos protocolos que se usan en las aplicaciones desarrolladas por los sistemas IoT. Protocolos como: MQTT (Message Queuing Telemetry Transport), CoAP (Constrained Application Protocol), HTTP (Hypertext Transfer Protocol), XMPP (Extensible Messaging and Presence Protocol), Websocket, etc. son algunos de los ejemplos de tecnología usada por la capa de aplicación, ver Figura 9.
Capa de Negocio: puede llegar a confundirse con la capa de aplicación. Sin embargo, esta capa se encarga de la supervisión de los sistemas IoT y de sus servicios desde un punto de vista orientado a la administración del negocio para el cual fue diseñado el sistema IoT [11]. La principal función es el manejo del negocio, la creación de modelos del negocio, diagramas de flujo y gráficos en base a los datos obtenidos de las capas inferiores [11]. Gracias a esta capa es posible gestionar y monitorizar todo el sistema creado. Por otro lado, la toma de decisiones es otra de las actividades primarias que se desenvuelven en esta capa (Figura 10).
3.1.3. Modelo de Referencia ITU Y.4000/Y.2060 [14]
El modelo de referencia propuesto por la ITU fue creado en el año 2012, bajo el nombre de la recomendación Y.2060, y luego actualizado en el 2006 a Y.4000. Generalmente, dentro de las investigaciones y trabajos, este modelo de referencia es llamado Y.4000/2060 (Figura 11).
El modelo Y.4000/2060 está compuesto por 4 capas. Estas son similares a las propuestas en las otras arquitecturas ya estudiadas. Sin embargo, la ITU ha sido más clara respecto al objetivo que cada capa posee en su modelo. De manera adicional y paralela, el modelo propone capacidades para la gestión y la seguridad. Las capas del modelo son: capa de Dispositivos, capa de Red, capa para el Soporte de las Aplicaciones y Servicios (SSAS), y la capa de Aplicación.
Capa de Dispositivos: se encarga de la gestión de dispositivos que forman parte del sistema IoT, mismos que deben recolectar la información del medio. Las funcionalidades se clasifican en 2 grupos: las capacidades de dispositivos y de Gateway.
Capacidad de dispositivos indica la posibilidad de interactuar con la red de comunicaciones de manera directa e indirecta. La interacción directa ocurre si el dispositivo hace uso directo de la red; mientras que la interacción indirecta usa un gateway para el proceso de comunicaciones. Un dispositivo para ser considerado como apto para este modelo debe cumplir con al menos una de las capacidades de dispositivos. Es decir que debe poder interactuar directa o indirectamente con la red de comunicaciones. Los dispositivos deben tener la capacidad de formar redes Ad-Hoc para mejorar las capacidades del sistema y la velocidad de despliegue. Así como un correcto manejo de la energía (Figura 12).
Capacidad de gateway, la principal característica es el soporte a múltiples interfaces para admitir una mayor cantidad de tecnologías de comunicación, ya sean de tipo alámbricas o inalámbricas. La ITU menciona tecnologías como: CAN (Controller Area Network), ZigBee, Bluetooth o Wi-Fi para el caso de los dispositivos. Para el servicio o comunicación con la capa de Red, se indica que se deben soportar comunicaciones como la red telefónica pública conmutada (PSTN), las redes de telefonía celular 2G o 3G, las redes LTE, Ethernet o DSL (Figura 13).
Capa de Red: permite la comunicación entre la capa de Dispositivos y las capas superiores, para la transmisión de los datos obtenidos y envío de órdenes a los dispositivos. Las funcionalidades de esta capa se presentan en la Figura 14, las cuales se dividen en dos grupos: red y transporte.
Capacidades de red: deben abordar funciones como el control de acceso, control de recursos de transporte, gestión de la movilidad, autenticación, autorización y accounting.
Capacidad de transporte, ésta debe ser capaz de suministrar conectividad para que sea posible el envío y recepción de datos o información de gestión y control.
Capa de Apoyo a Servicios y Aplicaciones (SSAS) [14]: tiene como función el soportar a los servicios y aplicaciones para los cuales el sistema IoT fue implementado. Debe ser capaz de cumplir con dos grupos de capacidades: soporte genérico y soporte específico.
Capacidades de soporte genéricas están pensadas para solventar necesidades comunes de cualquier tipo de aplicación o servicio.
Capacidades especificas permiten atender las necesidades únicas que presentan los servicios o aplicaciones.
La ITU no menciona casos explícitos de las capacidades y al no proponer una lista, el modelo indica que puede ser utilizado en cualquier tipo de área de aplicación, pues como tal puede admitir cualquier tipo de funcionalidad.
Capa de Aplicación: permite la interacción del sistema IoT con sus usuarios finales y poder así cumplir con el propósito para el cual fue diseñado. Similar al caso de la capa SSAS, el modelo no realiza ninguna mención a tecnologías admitidas en su modelo. Simplemente indica que la capa de aplicación es aquella que contiene las aplicaciones IoT.
Capacidades de Gestión y Seguridad: como se observa en la Figura 15 el modelo contempla capacidades adicionales que involucran a las capas antes definidas. Estas capacidades cubren las áreas de gestión y seguridad para los sistemas IoT. Las capacidades de gestión IoT acorde con el modelo abarcan: gestión de fallos, configuración, el rendimiento y seguridad. Estas mismas capacidades pueden clasificarse en genéricas y específicas.
Capacidades genéricas, permiten manejar los dispositivos (control remoto, diagnóstico, actualizaciones, etc.), gestionar la topología y el tráfico. Mientras que las capacidades específicas vienen ligadas a los requisitos específicos de las distintas aplicaciones.
Capacidades de la seguridad, se definen capacidades genéricas y específicas. Dentro de las capacidades genéricas, el modelo indica ciertas capacidades según las capas a las cuales será aplicada la seguridad. En la capa de aplicación, se debe otorgar seguridad por medio de la autorización, autenticación, confidencialidad, integridad, privacidad, auditorías y antivirus. Las capacidades específicas dependen estrictamente de los requerimientos de la aplicación.
3.1.4. Casos de Estudio Exitosos
Adaptación para Hábitats Inteligentes: En [15], se utiliza la arquitectura referencial de 3 capas para proponer una adaptación que sirva para el desarrollo de los hábitats inteligentes. En [15] se realiza una exposición sencilla de la arquitectura para fundamentarse en las 3 capas base (Percepción, Red y Aplicación) y proponer su uso dentro de esta área de aplicación. Un hábitat inteligente es un espacio donde se pueden obtener datos, tratarlos y presentarlos a los usuarios de este. La arquitectura planteada está pensada para ser usada dentro del dominio de la medicina. La propuesta agrega una capa de Penetración, misma que se comunica con la capa de Red IoT y con la capa de Aplicación, permitiendo el uso de dispositivos móviles para la obtención y manejo de datos médicos (Figura 16).
Una Adaptación para la Agronomía Urbana se presenta en [16], que usan directamente la arquitectura referencial de 3 capas. El sistema propuesto plantea crear una solución para mejorar la agricultura en zonas urbanas y así fomentar el cuidado del planeta. Se propone usar las redes definidas por software (SDN) con la tecnología IoT, para crear granjas en las zonas urbanas. Se busca obtener alimentos más saludables ya que los cultivos a gran escala generalmente están llenos de pesticidas y abonos químicos. Usando la Tecnología de Comunicación (ICT) mediante la tecnología SDN [29]. Se planea centralizar el control de toda una infraestructura de la granja, facilitando la administración y el trabajo entre máquinas. Si se mantiene un mejor control del cultivo, es posible mejorar el desempeño de las granjas y así plantear la posibilidad de la creación de estas zonas a grandes escalas. La propuesta usa el mismo sistema planteado en la Figura 2.
Kumar en [17] propone la adaptación para Sistemas de Transporte, que modifica la arquitectura referencial de 5 capas, cambiando el orden de las capas. El nuevo orden propuesto es: Capa Aplicación, Capa Sensor (Sensing), Capa Comunicación, Capa Servicios y la capa Infraestructura.
La adaptación se plantea para aprovechar las oportunidades que IoT posee en el área del transporte y logística [17]. Es posible monitorear los vehículos (ubicación, velocidad y posibles riesgos) cuando viajan por una determinada carretera. Es importante señalar que la capa Sensor no es la primera capa de la arquitectura, aun cuando obtiene los datos del ambiente. Esto gracias al uso de las tecnologías viales existentes (por ejemplo, GIS) en conjunto con los datos obtenidos en tiempo real, para guiar de mejor manera a los conductores).
En [18], se presenta una arquitectura para la integración de IoT en conjunto con la Tecnología Blockchain (Figura 17). Aquí se propone una arquitectura en base al caso de 5 capas que permita adaptar la tecnología IoT con la red Blockchain. Sin embargo, el uso de esta tecnología posee fallos de seguridad que se propone mitigar [18]. La propuesta cambia la capa de red normal, por la red Blockchain. La capa Blockchain introduce las funciones de una red de bloques para combinar la misma con la tecnología IoT, se habla explícitamente del consenso, almacenamiento y compartición de datos [18].
El Framework para BoT (Blockchain of Things) propone una arquitectura que aproveche al máximo las redes de bloques (Figura 18). La ITU en 2020 propuso una arquitectura para BoT, que es la combinación de Blockchain con IoT. En base al modelo Y.4000/2060, el framework para BoT se plantea con capacidades comunes, manteniendo las funcionalidades antes estudiadas. Se agregan nuevas capacidades para el trabajo con BoT, se pueden destacar:
El control del acceso, debido a la descentralización.
El consenso propio de BoT.
Soporte para crypto.
Almacenamiento y computación, característicos de una red BoT.
La ITU plantea un Framework para VLC (Visible Light Communications) en conjunto a un modelo adaptado a las comunicaciones VLC para IoT, ver Figura 19. Esta tecnología permite el envío de datos mediante luz IR (infrarrojo) y UV (ultravioleta). Se destacan 2 componentes importantes: la gestión de los dispositivos VLC en conjunto con la terminal del usuario y las capacidades necesarias para que las aplicaciones de IoT puedan ejecutarse en la terminal del usuario. Se deben cumplir con las siguientes funcionalidades [19]:
Inicialización de los dispositivos, descubrimiento y registro.
Transporte de datos mediante VLC desde los dispositivos de iluminación hacia la terminal de usuario y viceversa.
Control de luz.
Monitoreo.
4. Resultados
Iniciando por el modelo más simple se tiene la arquitectura de 3 capas. Prosiguiendo con el modelo de referencia Y.4000/2060 de la ITU que propone 4 capas. Si bien se mantiene la estructura del primer caso, la agregación de una nueva capa para el apoyo a los servicios la vuelve un modelo más complejo y que trata de abordar el trabajo con dispositivos heterogéneos. Por otro lado, la arquitectura de 5 capas tratar de dividir de mejor manera las funcionalidades del sistema IoT, siendo el caso con el mayor número de capas. La clara ventaja que este caso posee es su orientación a la gestión del sistema desde un punto de vista de negocio.
Desde un punto de vista funcional, todos los casos son perfectamente viables para el desarrollo de un sistema IoT. Sin embargo, se debe tener en cuenta que cada modelo permite agregar más funcionalidades al sistema en cuestión. Si bien las arquitecturas de 3 y 5 capas pueden fácilmente sostener a un sistema IoT, si se quiere dar seguridad al mismo ninguna de las dos arquitecturas propone un camino viable para la inclusión de dichas seguridades. Como se observan en la Tabla 1 y la Tabla 2, la utilización de cada modelo posee cierta ventajas y desventajas. Algunas funcionalidades están contempladas por una arquitectura especifica, siendo no aplicables en las otras en su defecto difíciles de implementar.
Para otorgar seguridad, el modelo de la ITU tiene ciertos lineamientos que sirve como guía para la inclusión de seguridad en el sistema, además de otras funcionalidades de gestión. Aunque si el sistema quiere orientarse más a un nivel de negocio, la mejor opción es la arquitectura de 5 capas que considera al negocio como parte del sistema, hecho que no es considerado por los otros casos.
Caso | Ventajas | Desventajas |
3 capas | · Arquitectura simple. · Adquiere, transporta y presenta datos. · Posibilidad de incluir otras tecnologías. | · Poca definición en cuanto a sus funcionalidades y tecnologías. · No abarcar el problema de heterogeneidad. |
5 capas | · División de Funcionalidades. · Mejor explicación en cuanto a tecnologías admitidas. · Abarca el problema de la heterogeneidad. · Propone una vista del sistema para el negocio. · Permite obtener, transportar, presentar datos y gestionar el sistema. | · Mayor grado de complejidad. · La visión del negocio no siempre puede ser usada. |
Y.4000/2060 | · Respaldo de la ITU. · Gran explicación de las capacidades. · Abarca el problema de la heterogeneidad. · Obtiene, transporta y presenta datos. · Capacidades de Gestión y Seguridad. | · Bajo grado de explicación en la nueva capa propuesta y la capa de aplicación. · Deja abierta la interpretación de las capacidades, lo cual pude llevar a confusiones. |
5. Conclusiones
Con el análisis comparativo se enumeraron las características en común que poseen los casos estudiados, así como las características agregadas que cada caso aumenta al desarrollo de los distintos sistemas IoT. Además, se mostró que la arquitectura de 3 Capas y el modelo la ITU compiten en usabilidad, pese a que el primero es un modelo mucho más simple.
De los casos estudiados y contrastados, el modelo de la ITU Y.4000/2060 propone se una de las mejores guías para la implementación de un sistema IoT. No solo por la explicación y el respaldo que da la ITU, sino por la libertad que da el modelo para la inclusión de nuevas tecnologías en desarrollos futuros.
Para sistemas IoT que tienen un enfoque más orientado al negocio, la arquitectura de 5 capas es una opción clara. El control y monitoreo es necesario para observar el crecimiento y tomar decisiones acertadas cuando se desarrolla un negocio.
Se demostró que cada caso estudiado posee ciertas ventajas y desventajas, unos con respecto a los otros. Es importante conocer dichas características al momento de seleccionar una arquitectura o modelo para el despliegue de un sistema IoT.
El modelo propuesto por la ITU es el que posee mayor cantidad de características y funcionalidades para la implementación; sin embargo, muchas de estas características no están del todo definidas. Si bien la libertad para el desarrollo es importante, dejar que las funcionalidades sean abiertas puede provocar que no se respete como tal la estructura del modelo.
6. Referencias
[1] Suman, S., Perumal, T., Mustapha, N., Yaakob, R. (2019). Device Verification and Compatibility for Heterogeneous Semantic IoT Systems. 4th International Conference and Workshops on Recent Advances and Innovations in Engineering: Thriving Technologies, Kedah, Malaysia. https://doi.org/10.1109/ICRAIE47735.2019.9037767
[2] Sharaf, M., Abusair, M., Muccini, H., Eleiwi, R., Shanaa, Y., Saleh, I. (2019). Generating heterogeneous codes for IoT systems based on CAPS. ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), Munich, Germany. https://doi.org/10.1109/MODELS-C.2019.00113
[3] Rodríguez González, D. (2013). Arquitectura y Gestión de la IoT. RevistaTelemática, 12 (3), 49–60. https://revistatelematica.cujae.edu.cu/index.php/tele/article/view/119
[4] Sinche Maita, S. L. (2020). New models of reliability in the new generation of Internet of Things [Tesis de Doctorado]. Universidad de Coimbra. http://hdl.handle.net/10316/91095
[5] Al-Fuqaha, A., Guizani, M., Mohammadi, M., Aledhari, M., Ayyash, M. (2015). Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications. IEEE Communications Surveys and Tutorials, 17 (4), 2347–2376. https://doi.org/10.1109/COMST.2015.2444095
[6] Lea, P. (2020). IoT and Edge Computing for Architects (2nd Ed.). Packt Publishing.
[7] Silvestre, S., Salazar, J. (2019). Modernisation of VET through Collaboration with the Industry. https://comtel.fel.cvut.cz/en/projects/modernisation-vet-through-collaboration-industry
[8] Pérez, M. R., Mendoza, M. A., Suarez, M. J. (2019). IoT paradigm: from its concept towards its application in agriculture. Revista Espacios, 40 (18), 6–6. https://www.revistaespacios.com/a19v40n18/a19v40n18p06.pdf
[9] Chen, S., Xu, H., Liu, D., Hu, B., Wang, H. (2014). A vision of IoT: Applications, challenges, and opportunities with China Perspective. IEEE Internet of Things Journal, 1 (4), 349–359. https://doi.org/10.1109/JIOT.2014.2337336
[10] Jabraeil Jamali, M. A., Bahrami, B., Heidari, A., Allahverdizadeh, P., Norouzi, F. (2020). IoT Architecture. In M. A. Jabraeil Jamali, B. Bahrami, A. Heidari, P. Allahverdizadeh, F. Norouzi (Eds.) Towards the Internet of Things (pp.9–31). https://doi.org/10.1007/978-3-030-18468-1_2
[11] Swamy, S. N., Kota, S. R. (2020). An empirical study on system level aspects of Internet of Things (IoT). IEEE Access, 8, 188082–188134. https://doi.org/10.1109/ACCESS.2020.3029847
[12] Zhong, C. L., Zhu, Z., Huang, R. G. (2017l). Study on the IOT Architecture and Access Technology. 16th International Symposium on Distributed Computing and Applications to Business, Engineering and Science (DCABES), Anyang, China. https://doi.org/10.1109/DCABES.2017.32
[13] Aksu, D., Aydin, M. A. (2019). A Survey of IoT Architectural Reference Models. 16th International Multi-Conference on Systems, Signals & Devices (SSD), Istanbul, Turkey. https://doi.org/10.1109/SSD.2019.8893170
[14] ITU-T. (2016). ITU-T Rec. Y.2060 (06/2012)- Y.4000 (02/2016) Overview of the Internet of things.https://www.itu.int/rec/T-REC-Y.2060-201206-I
[15] Ruiz-Zafra, A., Benghazi, K., Mavromoustakis, C., Noguera, M. (2018). An IoT-Aware Architectural Model for Smart Habitats. 16th International Conference on Embedded and Ubiquitous Computing (EUC), Bucharest, Romania. https://doi.org/10.1109/EUC.2018.00022
[16] Ordoñez García, A., Siller, M., Begovich, O. (2017). IoT Architecture for Urban Agronomy and Precision Applications. IEEE International Autumn Meeting on Power, Electronics and Computing (ROPEC), Ixtapa, Mexico. https://doi.org/10.1109/ROPEC.2017.8261582
[17] Manoj Kumar, N., Dash, A. (2017). Internet of Things: An Opportunity for Transportation and Logistics. International Conference on Inventive Computing and Informatics (ICICI), Coimbatore, India. https://ssrn.com/abstract=3213883
[18] Lao, L., Li, Z., Hou, S., Xiao, B., Guo, S., Yang, Y. (2020). A survey of IoT applications in blockchain. systems: Architecture, consensus, and traffic modeling. ACM Computing Surveys, 53 (1), 1-32. https://doi.org/10.1145/3372136]
[19 ]ITU-T. (2020). ITU-T Rec. Y.4464 (01/2020) Framework of blockchain of things as decentralized service platform. http://handle.itu.int/11.1002/1000/11