Un cloudlet es un centro de datos en la nube a pequeña escala con movilidad mejorada que se encuentra en el borde de Internet. El objetivo principal del cloudlet es dar soporte a aplicaciones móviles interactivas y que consumen muchos recursos al proporcionar recursos informáticos potentes a dispositivos móviles con menor latencia. Es un nuevo elemento arquitectónico que extiende la infraestructura de computación en la nube actual . Representa el nivel medio de una jerarquía de 3 niveles: dispositivo móvil - cloudlet - nube . Un cloudlet puede verse como un centro de datos en una caja cuyo objetivo es acercar la nube . El término cloudlet fue acuñado por primera vez por M. Satyanarayanan , Victor Bahl , Ramón Cáceres y Nigel Davies, [1] y la Universidad Carnegie Mellon desarrolla una implementación prototipo como proyecto de investigación. [2] El concepto de cloudlet también se conoce como nube sígueme, [3] y micronube móvil. [4]
Motivación
Muchos servicios móviles dividen la aplicación en un programa cliente front-end y un programa servidor back-end siguiendo el modelo tradicional cliente-servidor . La aplicación móvil front-end descarga su funcionalidad a los servidores back-end por diversas razones, como acelerar el procesamiento. Con la llegada de la computación en la nube, el servidor back-end normalmente se aloja en el centro de datos en la nube . Aunque el uso de un centro de datos en la nube ofrece varios beneficios, como escalabilidad y elasticidad, su consolidación y centralización conducen a una gran separación entre un dispositivo móvil y su centro de datos asociado. La comunicación de extremo a extremo implica muchos saltos de red y da como resultado altas latencias y bajo ancho de banda.
Por razones de latencia, algunas aplicaciones móviles emergentes requieren que la infraestructura de descarga en la nube esté cerca del dispositivo móvil para lograr un tiempo de respuesta bajo. [5] En el caso ideal, está a solo un salto inalámbrico de distancia. Por ejemplo, la infraestructura de descarga podría estar ubicada en una estación base celular o podría estar conectada por LAN a un conjunto de estaciones base Wi-Fi. Los elementos individuales de esta infraestructura de descarga se denominan cloudlets.
Aplicaciones
Los cloudlets tienen como objetivo dar soporte a aplicaciones móviles que consumen muchos recursos y son interactivas. Las aplicaciones de realidad aumentada que utilizan sistemas de seguimiento de la cabeza requieren latencias de extremo a extremo de menos de 16 ms. [6] Los juegos en la nube con renderizado remoto también requieren latencias bajas y un gran ancho de banda. [7] Los sistemas de asistencia cognitiva ponibles combinan dispositivos como Google Glass con procesamiento basado en la nube para guiar a los usuarios a través de tareas complejas. Este género futurista de aplicaciones se caracteriza como "asombrosamente transformador" en el informe del Taller de la NSF de 2013 sobre direcciones futuras en redes inalámbricas. [8] Estas aplicaciones utilizan recursos de la nube en la ruta crítica de la interacción del usuario en tiempo real. En consecuencia, no pueden tolerar latencias de operación de extremo a extremo de más de unas pocas decenas de milisegundos. Apple Siri y Google Now , que realizan reconocimiento de voz de alto consumo de recursos en la nube, son otros ejemplos en este espacio emergente.
Nube pequeña vs.Nube
Existe una superposición significativa entre los requisitos de la nube y los cloudlets. En ambos niveles, se necesita: (a) un fuerte aislamiento entre los cálculos a nivel de usuario que no son de confianza; (b) mecanismos de autenticación, control de acceso y medición; (c) asignación dinámica de recursos para los cálculos a nivel de usuario; y (d) la capacidad de soportar una amplia gama de cálculos a nivel de usuario, con restricciones mínimas en su estructura de proceso, lenguajes de programación o sistemas operativos. En un centro de datos en la nube, estos requisitos se cumplen hoy en día utilizando la abstracción de la máquina virtual (VM). Por las mismas razones por las que se utilizan en la computación en la nube hoy, las VM se utilizan como una abstracción para los cloudlets. Mientras tanto, hay algunos diferenciadores importantes entre la nube y el cloudlet.
Aprovisionamiento rápido
A diferencia de los centros de datos en la nube, que están optimizados para lanzar imágenes de máquinas virtuales existentes en su nivel de almacenamiento, los cloudlets deben ser mucho más ágiles en su aprovisionamiento. Su asociación con dispositivos móviles es muy dinámica, con una considerable rotación debido a la movilidad del usuario. Un usuario que está lejos puede aparecer inesperadamente en un cloudlet (por ejemplo, si acaba de bajar de un vuelo internacional) e intentar usarlo para una aplicación, como un traductor de idiomas personalizado. Para ese usuario, la demora en el aprovisionamiento antes de que pueda usar la aplicación afecta la usabilidad. [9]
Transferencia de VM entre cloudlets
Si un usuario de un dispositivo móvil se aleja del cloudlet que está utilizando en ese momento, la respuesta interactiva se degradará a medida que aumenta la distancia lógica de la red. Para abordar este efecto de la movilidad del usuario, los servicios descargados en el primer cloudlet deben transferirse al segundo cloudlet manteniendo la calidad de la red de extremo a extremo. [10] Esto se parece a la migración en vivo en la computación en la nube, pero difiere considerablemente en el sentido de que la transferencia de la máquina virtual ocurre en una red de área amplia (WAN).
OpenStack++
Dado que el modelo cloudlet requiere una reconfiguración o una implementación adicional de hardware/software, es importante proporcionar una forma sistemática de incentivar la implementación. Sin embargo, puede enfrentar un problema clásico de arranque. Los cloudlets necesitan aplicaciones prácticas para incentivar la implementación de cloudlets. Sin embargo, los desarrolladores no pueden depender en gran medida de la infraestructura de cloudlets hasta que se implemente ampliamente. Para romper este punto muerto y arrancar la implementación de cloudlets, los investigadores de la Universidad Carnegie Mellon propusieron OpenStack++ que extiende OpenStack para aprovechar su ecosistema abierto. [2] OpenStack++ proporciona un conjunto de API específicas de cloudlets como extensiones de OpenStack. [11]
Implementaciones comerciales y esfuerzos de estandarización
En 2015, las aplicaciones basadas en cloudlets ya estaban disponibles comercialmente. [12]
En 2017, el Instituto Nacional de Estándares y Tecnología publicó un borrador de estándares para la computación en la niebla en el que los cloudlets se definieron como nodos en la arquitectura de la niebla. [13]
Véase también
- Computación en la nube móvil
- Proyecto de nubecilla de Elías
Referencias
- ^ Satyanarayanan, M.; Bahl, P.; Caceres, R.; Davies, N. (2009). "El caso de los Cloudlets basados en máquinas virtuales en la informática móvil". IEEE Pervasive Computing . 8 (4). IEEE: 14–23. doi :10.1109/MPRV.2009.82. S2CID 946976.
- ^ ab "Elijah: Computación móvil basada en cloudlets". Universidad Carnegie Mellon.
- ^ "Follow Me Cloud: interconexión de nubes federadas y redes móviles distribuidas". Revista IEEE Network.
- ^ "Estudio basado en emulación de la colocación dinámica de servicios en micronubes móviles" (PDF) . IEEE MILCOM 2015.
- ^ Kiryong Ha; Pillai, P.; Lewis, G.; Simanta, S.; Clinch, S.; Davies, N.; Satyanarayanan, M. (2013). "El impacto de las aplicaciones multimedia móviles en la consolidación de centros de datos". Conferencia internacional IEEE de 2013 sobre ingeniería de la nube (IC2E) . IEEE. págs. 166–176. doi :10.1109/IC2E.2013.17. ISBN . 978-0-7695-4945-3.S2CID 7290622 .
- ^ "Generalización de la detección de latencia en una variedad de entornos virtuales".
- ^ "Outatime: uso de la especulación para permitir una interacción continua de baja latencia para juegos en la nube" (PDF) . Microsoft.
- ^ Banerjee, Suman; Wu, Dapeng Oliver (octubre de 2013). "Informe final del taller de la NSF sobre futuras direcciones en redes inalámbricas". Fundación Nacional de Ciencias.
- ^ Ha, Kiryong; Pillai, Padmanabhan; Richter, Wolfgang; Abe, Yoshihisa; Satyanarayanan, Mahadev (2013). "Aprovisionamiento justo a tiempo para búsqueda cibernética". Actas de la 11.ª conferencia internacional anual sobre sistemas, aplicaciones y servicios móviles . ACM. págs. 153–166. doi :10.1145/2462456.2464451. ISBN. 9781450316729.S2CID 2995875 .
- ^ "Migración dinámica de servicios en nubes móviles de borde" (PDF) . IFIP Networking 2015.
- ^ "Repositorio de código abierto para Elijah-cloudlet". GitHub .
- ^ Pang, Z.; Sun, L.; Wang, Z.; Tian, E.; Yang, S. (2015). "Un estudio de computación móvil basada en cloudlets". Conferencia internacional sobre computación en la nube y big data (CCBD) de 2015. págs. 268–275. doi :10.1109/CCBD.2015.54. ISBN 978-1-4673-8350-9.ID S2C 15255805.
- ^ "La definición del NIST de computación en la niebla" (PDF) . nist.gov .