martes, 12 de julio de 2016

COMPUTACIÓN EN LA NIEBLA Y LA RELEVANCIA PARA EL IoT

COMPUTACIÓN EN LA NIEBLA Y LA RELEVANCIA PARA EL IoT

Es innegable como el Internet de las Cosas constituye una de las mega tendencias mas relevantes de las TICs, y su rápido despliegue traerá una explosión de nuevos servicios y productos que se soportaran sobre esta tecnología y otras aliadas como el Big data, la computación en la nube y la computación móvil.

Grandes promesas = Grandes desafíos
IoT promete llevar la conectividad a todos los niveles, invadiendo cada hogar, vehículo, y lugares de trabajo con dispositivos inteligentes conectados a internet, sin embargo a medida que se incremente nuestra dependencia de estos nuevos dispositivos conectados junto con los beneficios que estos nos aportan, la demanda de conexiones, puertas de enlace y controladores mas confiables sera mas critico para los diseños de las infraestructuras de red.
Considerando el ritmo de despliegue del IoT, a corto plazo electrodomésticos, puertas, e incluso piezas de ropa tendrán habilitadas conexiones a Internet que a medida que crezcan los servicios que proveen estarán siempre conectadas, sometiendo la infraestructura de conectividad y los centros de datos a mayor estress, los expertos predicen que el IoT puede incluir 26 millones de unidades conectadas para el 2020.

bbva-openmind-banafa-iot-fog-1 

El enfoque popular de muchos de los primeros diseños de IoT es centralizar el procesamiento de los datos en la nube, con los que según este enfoque se reducen los costos y se fortalece la seguridad de las aplicaciones. Sin embargo al tener cantidades puras de entradas de datos que serán recibidas desde fuentes globalmente distribuidas, que demandaran respaldos en disco y que son la base de sistemas que depende de una respuesta en tiempo real, hacen que este enfoque no sea del todo eficiente y escalable. La alternativa es acercar cierto nivel de procesamiento de forma inteligente a los lugares donde la información que resulta de este procesamiento de los datos masivos sea mas relevante.
Para ilustrar la necesidad de un procesamiento local de cierto tipo de datos, IDC (Industrial Design Consultancy) estima que la cantidad de datos analizadas en dispositivos que están físicamente mas cerca de los controladores IoT debe de aproximarse a un 40%, lo cual sustenta la necesidad de un urgente cambio de enfoque para el despliegue del IoT.

bbva-openmind-banafa-iot-fog-2
Para tratar con este desafío la computación en la niebla es la respuesta
La computación en la niebla permite que el procesamiento relevante para la toma se decisiones que disparen acciones se ejecute tan cerca como se  posible del controlador IoT y solamente los datos relevantes pre-procesados localmente pasen a la nube, Cisco acuño el termino computación en la niebla ("Fog Computing") y le dio una definición brillante: "La niebla extiende la nube para acercarse a las cosas que producen y actúan sobre los datos. Estos dispositivos llamados nodos en la niebla pueden desplegarse en cualquier lugar con una conexión de red: en pisos de fabricas, en la cima de las torres de potencia, a lo largo de las lineas ferroviarias, en un vehículo o en plataformas de petroleo. Cualquier dispositivo con capacidad de procesamiento, almacenamiento y conectividad puede ser un potencial nodo en la niebla..."

bbva-openmind-banafa-iot-fog-3 
Para comprender el concepto de computación en la niebla observemos las siguientes acciones que este modelo posibilita:
  • Analiza los datos mas sensibles a retrasos en el borde de la red, cerca de donde se generan o se requieren para tomar acciones.
  • Toma accionen en los datos de IoT en milisegundos, basado en un conjunto de reglas conocidas como políticas.
  • Envía datos selectivamente a la nube para un análisis histórico o almacenamiento. 
Beneficios del procesamiento en la niebla
  • Minimiza la latencia.
  • Conserva el ancho de banda.
  • Enfoque de la seguridad en todos los niveles de la red (un gran desafío por si mismo).
  • Operación confiable con decisiones rápidas.
  • Colecta y asegura un amplio rango de datos.
  • Mueve los datos al lugar mas idóneo para su procesamiento.
  • Menor gasto de energía al usar la computación de alto nivel solo cuando es necesario y menos uso de ancho de banda.
  • Mejor análisis y visión mas local de los datos.
Es importante entender que la computación en la niebla no reemplaza la computación en la nube, sino que trabaja en conjunto con esta optimizando el uso de los recursos disponibles; pero esta resulto de la necesidad de solventar desafíos como: el procesamiento en tiempo real, la acción sobre datos entrantes, la limitación de recursos (Ancho de banda, poder de computación) y el aprovechamiento de las ventajas derivadas de los recursos de TI virtualizados. Esta mejora de la jerarquía de ruta de datos es posible gracias al aumento de la capacidad de procesamiento que los fabricantes están incorporando en sus routers y switches de borde.

El Dinamismo de la computación en la niebla
El concepto del procesamiento en la niebla de "acercar a la tierra la nube", implica que un enorme numero de dispositivos con capacidad de procesamiento se acoplaran a esta con asimetrías en cuanto a velocidad y características, lo que plantea retos relacionados con la seguridad, la gestión del almacenamiento de datos, la administración de la infraestructuras de red adaptativas entre otros, lo que implicara un replanteamiento de los modelos de gestión de la infraestructura de TI, que sean mas pro-activos, colaborativos y con una extensión que sobrepase las fronteras de las organizaciones.
Para el manejo de muchos de los desafíos que plantea un futuro despliegue masivo de IoT, la computación en la niebla ofrece soluciones funcionales. Los proveedores de equipos de red están proponiendo plataformas base que incluyen enrutadores con fortalezas industriales y confiables, que ejecutan una combinación de sistemas operativos abiertos como Linux, maquinas virtuales Java embebidas con sistemas operativos propietarios; para garantizar la portabilidad de las aplicaciones sobre la infraestructura usando entornos de programación que son familiares y soportados por múltiples fabricantes. Bajo este modelo, dispositivos de borde inteligentes pueden procesar o direccionar paquetes de tareas resultantes de los datos de sensores y controladores IoT, transmitiendo solo datos resumidos y excepciones a la nube, es decir conocimiento resultado del procesamiento local de volúmenes de datos.
 
bbva-openmind-banafa-iot-fog-4

El éxito de la computación en la niebla, se resume en la capacidad de recuperación (Resiliencia) que aporta a la infraestructura de red, la cual es critica para asegurar la continuidad de las operaciones de cualquier negocio y requiere de las siguientes tareas para garantizar su éxito:
  • Redundancia
  • Seguridad
  • Monitoreo de la potencia y enfriamiento de los centros de datos
  • Soluciones de Failover localizados para maximizar la disponibilidad.
Es evidente que sin el despliegue de la computación en la niebla la garantía de la escalabilidad de las infraestructuras y su eficiencia no serán posibles, por lo que cualquier diseño de solución IoT debe considerar un profundo análisis de los datos y procesos que deben ejecutarse en la niebla y tomar este análisis como referencias para el dimensionamiento del hardware para los controladores IoT.