RECAP es un proyecto de I+D+I financiado por la Comisión Europea a través del programa marco Horizonte 2020 (https://recap-project.eu/). En el proyecto trabajan diez socios de seis países de la UE: tres universidades (Universitaet Ulm, Umea Universitet y Dublin City University); dos centros de investigación (Fundación Imdea Networks y Certh); dos pymes (Teito Sweden Support Services y Linknovate Science) y tres grandes empresas (Intel Research and Development, British Telecomunications Public Limited y SATEC).
El nombre RECAP corresponde al título “REliable CAPacity provisioning and enhanced remediation for distributed cloud applications” (en español “Aprovisionamiento de Capacidad Fiable y Remediación Mejorada para Aplicaciones Distribuidas en la Nube”), pero más allá del título, RECAP nace con el objetivo general de desarrollar una nueva generación de sistemas de provisión y soporte que aseguren la disponibilidad de los nuevos servicios TIC (Tecnologías de la Información y las comunicaciones) que serán desplegados en modelos de computación Cloud (nube) y Edge (procesamiento en el borde de las redes) altamente distribuidos.
Desde el punto de vista de la investigación se buscan avances centrados en optimización de aplicaciones y sistemas, simulación de los mismos, y entornos de automatización IT y de orquestación de software. Dichos avances son, entre otros, el modelado de aplicaciones en arquitecturas mixtas edge/cloud; el modelado automático de cargas de trabajo de los sistemas; los sistemas de optimización de infraestructuras de centros de datos; la simulación de escenarios edge/cloud a gran escala y la rehabilitación de sistemas y redes distribuidas complejas. En definitiva, el reto de la parte investigadora es allanar el camino para un concepto radicalmente novedoso en la provisión de servicios en las nuevas redes Edge/Cloud, donde los servicios son instanciados elásticamente y desplegados cerca de los usuarios que realmente los necesitan a través de sistemas de computación auto-configurables.
Las compañías privadas que trabajan en este proyecto, con una visión más cercana al mercado, abordan tres áreas clave para los entornos de computación en la nube y en el borde (Cloud/Edge computing), y sus arquitecturas heterogéneas y redes subyacentes: (i) soporte para el despliegue de componentes de aplicaciones complejas y altamente distribuidas; (ii) ayudas a la gestión de la infraestructura, y (iii) soporte a las operaciones de la infraestructura (en tiempo de ejecución). Estas áreas se aplican a través del desarrollo de cuatro casos de uso:
- Sistema de gestión de infraestructuras y redes, liderado por Tieto.
- Motor complejo para analítica Big Data, liderado por Linknovate.
- Virtualización de funciones de red (NFV) y gestión de la calidad de servicio (QoS) y remediación, liderado por British Telecom.
- Sistemas Edge/Cloud a gran escala para soporte a ciudades inteligentes, liderado por SATEC.
El caso de uso desarrollado por SATEC se ha centrado en el área de IoT (Internet of Things) y en una prueba de concepto para los entornos de ciudades digitales.
El objetivo inicial relativo a IoT consistía en el desarrollo de un conjunto de componentes software que permitan adaptar las actuales plataformas o frameworks de IoT a las nuevas necesidades identificadas por los investigadores, en particular las nuevas arquitecturas mixtas Edge/Cloud y los sistemas automáticos de provisión y remediación.
Los componentes propuestos y desarrollados por SATEC son:
- Colector de flujos IoT: es un componente ligero, pero de altas prestaciones que no solo es capaz de realizar la adquisición de flujos de datos de un sistema IoT (entendiendo como flujo un conjunto de datos que son enviados por un mismo dispositivo, por ejemplo una central meteorológica, un vehículo, etc. que envían varios datos relacionados o no), sino que, además, es capaz de realizar su pre-proceso (filtrado, calidad de dato, etc.).
- Sistema de almacenamiento distribuido de datos IoT: que asegura la disponibilidad y la coherencia de los datos recogidos desde cualquier dispositivo incluso cuando este cambia su localización y, por lo tanto, su nodo de acceso a la red (caso de los dispositivos móviles).
- Sistema de distribución de datos IoT: que permite el acceso a los datos recolectados por un sistema IoT, en forma de suscripción y tanto on-line como en modo batch, por parte a usuarios y a aplicaciones.
En lo que se refiere a la prueba de concepto, SATEC ha desarrollado un demostrador que implementa un sistema IoT para ciudades digitales y una aplicación para la monitorización de tráfico en una ciudad y para el cálculo de rutas de vehículos.
Finalmente, SATEC ha extendido el alcance del proyecto y ha conseguido los siguientes resultados:
- Desarrollo de los componentes inicialmente propuestos: colector de flujos, sistema de almacenamiento distribuido y sistema de suscripción a datos IoT.
- Desarrollo de un nuevo componente de visualización automática para IoT: compuesto por un sistema que visualiza automáticamente cualquier despliegue realizado en la plataforma de IoT (topología de procesamiento, red, flujos de datos, etc.), y otro sistema que permite la definición rápida de cuadros de mando de datos y aplicaciones y su despliegue y ejecución automática.
- Desarrollo de un sistema para la definición de topologías lógicas de procesamiento: que permite definir una red virtual como un grafo y que permite modificar las conexiones físicas (por ejemplo, para convertir una red física en forma de malla en una red en forma de árbol más adaptada a las necesidades de ciertos sistemas IoT desplegados geográficamente).
- Desarrollo de una aplicación de monitorización de tráfico en la ciudad alemana de Colonia: que muestra diversos cuadros de mando tanto de aplicación (datos de tráfico, mapas de calor de concentración de vehículos, rutas, etc.) como de sistema (red, nodos de procesamiento, topología lógica, flujos de datos, etc.).
- Definición de nuevos conceptos sobre IoT y especificación de un nuevo modelo de arquitectura para plataformas avanzadas de IoT conforme a los recientes estándares que se están publicando (ISO y UNE por ejemplo): este trabajo se ha documentado en un artículo técnico que ha sido aceptado y publicado en la 5ª edición del congreso IEEE World Forum on IoT y al que SATEC fue invitado para presentar en el congreso estos resultados publicados.
- Integración de sistemas de desarrollo DevOps como el modelo de Integración continua y despliegue continuo (CI/CD), así como el uso de herramientas de automatización IT y orquestación de software.