La anatomía de la infraestructura de edge computing

En este artículo, explicaremos qué es el edge, dónde está ubicado, cómo funciona, su relación con el modelo serverless (sin servidor) y cómo Azion puede ayudarte a migrar al edge.

Mariana Bellorín Aguilera - Technical Researcher
La anatomía de la infraestructura de edge computing

Introducción

Recientemente, la edge computing ha surgido como el próximo paso, certero y natural, en el campo de la tecnología e innovación que busca impulsar una economía hiperconectada. Sin embargo, entender algunos conceptos abstractos como el edge o la serverless computing, puede ser difícil para algunas organizaciones, especialmente si la tecnología no es su negocio principal. Considerando este escenario, hemos iniciado una serie de artículos para explicar algunos conceptos básicos de la edge computing.

En otra publicación, hablamos sobre las diferencias entre la cloud computing y la edge computing, así como cuál es mejor para tu negocio. En este artículo, explicaremos qué es el edge, dónde está ubicado, cómo funciona, su relación con el modelo serverless (sin servidor) y cómo Azion puede ayudarte a migrar al edge.

¿Qué es el edge?

Para entenderlo mejor, vamos a hacer una analogía del edge con el proceso de comunicación. Cualquier proceso de comunicación necesita un emisor y un receptor, además de un mensaje y un canal para transmitirlo. Cada parte involucrada debería hablar el mismo lenguaje y proporcionar una respuesta (feedback) para completar este proceso. Para una comunicación efectiva, este ciclo se repite si es necesario. De igual manera, factores como ruidos, calidad del canal, entre otros, pueden afectar la comunicación.

Si entendemos el funcionamiento de las redes como un proceso de comunicación, podemos usar este modelo para explicar cómo funciona una solicitud en Internet. Por ejemplo, imaginemos que necesitas encontrar la letra de una nueva canción que te gusta. Seguramente, entrarás a un navegador, escribirás el nombre de la canción y enviarás la solicitud. Inmediatamente, recibirás una página de resultados. Suena rápido y fácil, ¿cierto? Bueno, se necesitan completar diversos procesos y usar ciertos equipos para completar esta tarea (o como preferimos llamarla, la jornada de la solicitud). De forma muy simplificada, esto es lo que sucede:

  • El usuario (emisor) realiza una solicitud o envía información a través de un dispositivo electrónico.
  • El mensaje es codificado y encriptado en un lenguaje que el dispositivo pueda entender.
  • El mensaje es recibido y procesado por un servidor (receptor), que crea una respuesta útil y la envía al usuario (feedback), que sigue el mismo camino en la dirección opuesta.
  • El usuario podría enviar una nueva solicitud, lo que reinicia el proceso.
  • Durante todo este proceso, factores como la latencia, una mala conexión, además de problemas con el tipo de dispositivo o con el proveedor de Internet, pueden afectar la fluidez de la comunicación.

En la infraestructura actual de Internet, los servidores están usualmente ubicados dentro de data centers. El principal problema es que estos data centers están centralizados y se encuentran geográficamente alejados de los usuarios finales. Esto genera una serie de problemas relacionados con la velocidad de la respuesta, que interfiere con la calidad de la experiencia del usuario, que necesita esperar para obtener su respuesta o completar cualquier tarea en línea, lo que resulta en un incremento en el riesgo de abandono.

Volviendo al concepto sobre comunicación, si el emisor y el receptor están más cerca, definitivamente mejorará este proceso, ya que se hará de manera más eficiente y rápida. Lo mismo sucede cuando los servidores están localizados físicamente más cerca de los usuarios finales y sus dispositivos: el tiempo de respuesta es más rápido, con un mínimo de problemas, mayor calidad y menos uso de ancho de banda. Esta es la diferencia entre la edge computing y la infraestructura tradicional de Internet.

En Edge Networking: An Introduction, Linux Foundation explica que el edge se refiere a un nuevo paradigma computacional, cuya principal característica es realizar el procesamiento y almacenamiento lo más cerca posible al lugar donde los datos son generados y recolectados. Para complementar esta idea, la Linux Foundation también define a la edge computing como “el suministro de recursos informáticos a los extremos lógicos de una red con el fin de mejorar el desempeño, el costo operacional y la confiabilidad de aplicaciones y servicios”. Si consideramos a los servidores y a los usuarios como nuestros extremos, esto nos lleva a la siguiente pregunta…

¿Dónde está el edge?

Físicamente, el edge podría estar en cualquier lugar: en un micro data center, en una torre celular, en un dispositivo especializado o en las instalaciones de una empresa… Lo que realmente interesa es dónde está localizado dentro de la infraestructura de la red. Para esto, debe cumplir tres principios:

  • estar al frente de la nube;
  • más cerca del usuario final, y
  • en una infraestructura descentralizada y distribuida geográficamente.

Vamos a intentar representarlo con una gráfica [1] [2]:

La anatomía de la infraestructura de edge computing

La primera capa incluye todos los dispositivos capaces de generar y procesar datos, así como de conectarse a la infraestructura de la edge computing. La capa de la edge network incluye todo el hardware y software implementados (explicaremos sobre esto más adelante). Los gateways (puertas de enlace) son todos los recursos que facilitan la comunicación de los dispositivos en el edge con servidores distantes o servicios en la nube, si es necesario. Por ejemplo, para confirmar alguna información que no está almacenada en el edge node porque incluye datos confidenciales, durante procesos de autenticación o cuando el caché del edge node ha sido purgado y necesita extraer los datos originales de la fuente de origen. Finalmente, la capa de la nube está compuesta por data centers centralizados y lejanos, con recursos para almacenar y procesar datos en grandes cantidades, un concepto con el que ya estamos más familiarizados.

¿Cómo funciona el Edge?

Un reporte reciente de Statista reveló que “se prevé que la cantidad total de datos creados, recolectados, copiados y consumidos a nivel mundial aumente rápidamente”. Después de alcanzar los 64,2 zettabytes en 2020, se espera que la cifra llegue a más de 180 zettabytes hasta 2025. Inicialmente, este contexto forzó a más aplicaciones y servicios web a migrar a la nube. Sin embargo, el creciente número de dispositivos disponibles y conectados, así como el volumen de datos generados por ellos, no puede ser gestionado eficientemente por el modelo centralizado tradicional. La edge computing surgió como una respuesta para resolver muchos de estos problemas y limitaciones, al proporcionar una mejor experiencia de usuario, desempeño, seguridad y servicios. Primero, vamos a conocer su infraestructura.

Una red de edge está compuesta por varios edge nodes distribuidos geográficamente. Cada edge node es implementado para recibir y suministrar contenido a medida que es solicitado; además, cuenta con hardware y software que habilitan sus funciones:

  • Hardware: usualmente, la infraestructura incluye racks o estantes en los que se colocan los servidores (de acuerdo con las capacidades de procesamiento y redes planificadas, así como con el volumen de tráfico que gestionará el nodo), capacidad de almacenamiento, además de switches y routers que permiten conectarse con otras redes. Este tipo de implementación es más pequeña y usa menos recursos si se compara con un data center en la nube.
  • Software: se refiere a todos los programas, protocolos, funciones, lo que incluye a la lógica de negocio, analítica de datos y parámetros de seguridad.

Al estar localizada en frente de la nube, la infraestructura de edge computing permite que los recursos de procesamiento y almacenamiento estén más cerca del usuario. ¿Recuerdas lo que comentamos sobre el proceso de comunicación? Ahora, este puede ser completado más rápido y de una manera más eficiente, ya que las solicitudes son resueltas en el edge —los datos deben hacer viajes más cortos— y no en la infraestructura de origen o en la nube.

¿Cómo SDN y NFV habilitan el edge?

Con el objetivo de ofrecer sus servicios, el modelo de edge computing usa dos importantes herramientas para administrar y organizar su infraestructura: Software-defined Networking (SDN, redes definidas por software) y Network Functions Virtualization (NFV, virtualización de funciones de red).

SDN es un enfoque que permite el control y la gestión de la red de forma inteligente y automatizada, a través de aplicaciones de software que usan API. Al ser definidas por software, las reglas son creadas para indicar lo que la red debería hacer en ciertas circunstancias automáticamente. Por ejemplo, para prevenir la sobrecarga de un edge node, crear una regla que dirija el tráfico al edge node disponible y sano, más cercano, puede ser una solución ideal, lo que proporciona resiliencia y escalabilidad. Este proceso de automatización ayuda a simplificar el aprovisionamiento de recursos y, al mismo tiempo, reduce los costos operativos y esfuerzos de los desarrolladores.

Por su parte, el Open Glossary of Edge Computing describe la NFV como “la migración de funciones de red integradas dentro de dispositivos de hardware patentados a Virtualized Network Functions (VNF, funciones de red virtualizadas) basadas en software”. En palabras más sencillas: al usar NFV, un desarrollador puede crear dispositivos de red que se ejecutan como elementos virtuales en servidores, tales como máquinas virtuales y contenedores, en lugar de tener que comprar e implementar nuevo hardware. Cada VNF tiene su propio propósito y está programada para funcionar como router, firewall, balanceador de carga u otros, dentro de un ambiente virtualizado definido por la NFV.

El modelo serverless

Con frecuencia, las empresas se quejan sobre las desventajas y limitaciones de los servicios tradicionales de computación. Los puntos de quejas más comunes a nivel corporativo son:

  • alta latencia;
  • infraestructura poco confiable e inflexible;
  • mal desempeño y experiencia de usuario;
  • servicios costosos, y
  • complejidad operativa.

Por tanto, el edge puede brindar mejoras para cada uno de estos tópicos. Debido a la proximidad del edge con los usuarios y la distribución de sus elementos, esta implementación ofrece los siguientes beneficios:

  • Baja latencia y menos uso de ancho de banda: respuesta más rápida debido a que los viajes necesarios para resolver las solicitudes son más cortos.
  • Resiliencia: inclusive cuando falla un nodo o un elemento específico, el sistema continúa en operación, al usar otros recursos de la red que garantizan una disponibilidad permanente.
  • Escalabilidad: la infraestructura se puede expandir o reducir automáticamente para responder al nivel de demanda, lo que reduce los costos relacionados con el aprovisionamiento o la falta de recursos.
  • Reducción de costos operativos: con menos viajes a la infraestructura de origen, disminuyen los costos por el uso de servicios en la nube.
  • Nuevos casos de uso: la infraestructura de edge computing facilita el desarrollo de proyectos con la tecnología moderna, como inteligencia artificial, realidad virtual, realidad aumentada, machine learning, IoT, transmisión de datos y videos, 5G y más.

Además, los servicios en el edge utilizan un modelo serverless que puede incrementar estos beneficios y agregar más ventajas. La Cloud Native Computing Foundation en su whitepaper sobre serverless describe a la computación serverless como “un modelo de implementación atomizado donde las aplicaciones, agrupadas como una o más funciones, son implementadas en la plataforma y luego son ejecutadas, escaladas y facturadas en respuesta a la demanda necesitada al momento”.

El origen de este concepto se remonta a 2012, cuando Ken Fromm lo usó por primera vez en su artículo Why The Future of Software and Apps Is Serverless. Fromm explicó que esto no significa que no haya servidores involucrados, sino que los desarrolladores no tienen que implementarlos y administrarlos, ni siquiera aprovisionar recursos, porque los proveedores asumen estas responsabilidades. También, afirmó que usar el modelo serverless “permite a los desarrolladores cambiar su enfoque de los servidores a las tareas”.

De esta manera, serverless es un modelo que abstrae el aprovisionamiento y gestión de la infraestructura de servidores, así como de las capacidades de procesamiento y escala, automáticamente, de acuerdo a la demanda. Esto significa que, como desarrollador u operador, no tienes que administrar, configurar, ejecutar o mantenerlos. Además, con los servicios serverless, solo pagas por los recursos que consumes. Al unir serverless con el modelo de edge, los servidores están disponibles “en cualquier lugar”, cerca de donde se necesitan sus servicios y listos para ser usados para desarrollar, construir o ejecutar aplicaciones y funciones, a un costo reducido y sin tener que administrar la infraestructura.

¿Cuáles son las ventajas del edge?

  • Descentralización: con los edge nodes distribuidos geográficamente, la red de edge abarca más territorios y puede estar presente en más lugares, comparada con los cloud data centers centralizados.
  • Escalabilidad: el tamaño de la red y los recursos usados se pueden adaptar automáticamente, de acuerdo con la demanda.
  • Virtualización: los recursos pueden ser virtualizados en el edge, mediante NFV, lo que reduce los costos, así como la necesidad de administrar una estructura física.
  • Orquestación: los desarrolladores pueden implementar, gestionar, controlar, monitorear y actualizar recursos en el edge en tiempo real, sin necesidad de aprovisionamiento, además de integrar otros servicios.
  • Automatización: el uso de SDN facilita estas capacidades, de forma que los desarrolladores solo deben preocuparse por crear y ejecutar los códigos y cargas de trabajo (workloads) en el edge; sin aprovisionamiento, mantenimiento o tareas operativas.
  • Transmisión de datos y observabilidad: el modelo de edge computing ofrece herramientas para hacer seguimientos y monitorear todos los eventos, así como los comportamientos registrados en las aplicaciones y redes. Esto permite obtener mejores perspectivas comerciales y entender mejor a los usuarios.
  • Seguridad: el proveedor es capaz de crear un plan que incluye un perímetro de seguridad multicapa, al usar recursos como Web Application Firewall, Network Layer y DDoS Protection.
  • Estándares abiertos: lo ideal es que una plataforma de edge sea compatible con diferentes recursos, lenguajes, equipos y pueda integrarse a soluciones de terceros.
  • Modelo serverless: el proveedor ejecuta y gestiona los servidores y toda la infraestructura, así como los recursos, lo que elimina las operaciones de escalabilidad, planificación y mantenimiento para los desarrolladores u operadores.

La Plataforma de Edge de Azion

La Plataforma de Edge de Azion está conformada por una amplia gama de productos y módulos que ofrecen la infraestructura serverless que los desarrolladores necesitan para construir, ejecutar y migrar sus aplicaciones en el edge, sin tener que preocuparse por la gestión. Tiene alta disponibilidad y es tolerante a fallos, abierta, extensible y fácil de conectar con cualquier servicio en la nube.

Plataforma de Edge Computing de Azion

Las funcionalidades de la plataforma incluyen todos los beneficios y ventajas de usar la edge computing:

  • Edge Network de Azion tiene más de 100 edge locations altamente distribuidas alrededor del mundo.
  • Con Edge Functions, los desarrolladores pueden construir, gestionar, configurar y ejecutar sus aplicaciones serverless en el edge de la red y permitir que Azion escale automáticamente los recursos necesarios.
  • A través de Load Balancer, puedes elegir entre diversos algoritmos de distribución y personalizar reglas para balancear el tráfico, lo que previene la congestión de la red y la sobrecarga de servidor.
  • Application Acceleration acelera el desempeño de tus aplicaciones y API, sin necesidad de cambiar tu infraestructura.
  • También puedes mejorar tus prácticas de observabilidad con nuestras herramientas: Data Stream, Edge Pulse, Real-Time Metrics, Real-Time Events.
  • Protege todas tus aplicaciones, servidores y recursos contra numerosos riesgos, desde amenazas OWASP Top 10 hasta bots maliciosos y sofisticados ataques de días cero con Edge Firewall.
  • Nuestro perímetro de seguridad multicapa y nuestro Security Response Team (SRT) son las herramientas adicionales que te ofrecemos para impulsar tu estrategia de seguridad.

¿Quieres probar los beneficios de la computación serverless ahora mismo? Todo lo que debes hacer es crear una cuenta gratuita en nuestra página web ¡y obtendrás 300 USD en créditos para usar cualquiera de los productos de Azion!

Referencias:

[1] Hopkins, B. & Staten, J. (2019) A Decoder Ring For Edge Computing: How To Interpret What “Edge Computing” Is And How It Creates Value. Cambridge, MA: Forrester Research.

[2] The LF Edge (2020) The New Open ”Edge”. San Francisco, CA: The Linux Foundation.

Suscríbete a nuestro boletín informativo