Desde su surgimiento en la década de 1990, las CDN se han presentado como una solución para reducir la latencia y mejorar la disponibilidad de una página web —factores que tienen un impacto directo en sus resultados—. De acuerdo con el reporte de Deloitte Milliseconds Make Millions, de 2020, una reducción de la latencia en hasta 0,1 segundos incrementa las conversiones 8,4 % en promedio en el sector retail, el valor promedio de los pedidos en 9,2 %, la tasa de rebote en 5,7 % y el engagement del cliente en 5,2 %.
Sin embargo, las actualizaciones frecuentes y el contenido dinámico de las páginas web actuales son un problema para las CDN heredadas (legacy CDN, en inglés), que solo pueden almacenar caché de contenido estático y deben enviar solicitudes a los servidores de origen cada vez que se elimina contenido desactualizado de la memoria caché.
Como una alternativa a esta situación, ha surgido un nuevo tipo de plataforma de red distribuida, capaz de suministrar contenido con la agilidad del Internet de hoy en día. Este artículo explicará qué son las CDN y cómo funcionan, los factores que afectan su desempeño, la evolución y transformación de las CDN, cómo la edge computing está cambiando el mercado y los beneficios de usar productos de edge computing de Azion como Edge Application, Edge Functions y Edge Cache como solución para las aplicaciones modernas.
¿Qué es una CDN?
Una Content Delivery Network (CDN), o red de distribución de contenido, en español, es un tipo de servicio de computación que almacena contenido en ubicaciones ampliamente distribuidas alrededor del mundo y más cerca de los usuarios de lo que lo hacen los data centers centralizados. De esta manera, las CDN reducen la carga en los servidores de origen y facilitan que los usuarios más distantes reciban contenido más rápido.
Las CDN usan servidores de caché, también conocidos como servidores proxy de reenvío, para almacenar temporalmente copias de archivos a los que se ha accedido con anterioridad por un determinado periodo, o time-to-live (TTL). El proceso de almacenar temporalmente el contenido se llama caching o almacenamiento en caché.
Cuando la memoria caché es depurada, o cuando nuevo contenido es solicitado, los servidores de caché reenvían esas solicitudes a los servidores de origen de la página web.
- Servidor de origen: un servidor que es actualizado y mantenido por un negocio digital con el contenido más actualizado de su página web.
- Servidor de caché: servidores altamente distribuidos geográficamente que almacenan el contenido en caché y reenvían las solicitudes por nuevo contenido al servidor de origen del sitio web.
- Caché: copias de archivos almacenadas en el servidor de caché por un determinado periodo, después de ser recuperadas desde el servidor de origen de un sitio web.
- TTL: el periodo que los archivos permanecen en la memoria caché antes de ser purgados.
Además de almacenar contenido en caché, las CDN de mayor tamaño ofrecen servicios de seguridad, tales como protección contra ataques DDoS o Web Application Firewalls. Como las CDN funcionan como proxies ubicados entre los usuarios de una página web y los servidores de origen, también pueden servir como primera línea de defensa contra ataques de ciberseguridad, filtrando el tráfico malicioso antes de que llegue a los servidores de origen.
Evolución de las CDN
Las CDN fueron introducidas por primera vez a finales de la década de los 90 para aliviar los llamados “cuellos de botella” causados por el aumento de tráfico en Internet y para mejorar la confiabilidad de los servicios de misión crítica. Desde entonces, el tráfico, contenido e infraestructura de Internet han cambiado considerablemente, lo que ha generado un aumento de:
- La necesidad de proporcionar contenido de manera confiable y con alta velocidad en tiempo real.
- Expectativas por el servicio y la necesidad de una mayor calidad de experiencia.
- Páginas web que comparten contenido en video y rich media.
- La demanda por baja latencia para videojuegos y streaming de video.
- Uso de Internet y adopción de dispositivos móviles.
Este escenario ha provocado un cambio en el mercado de las CDN con la llegada de las plataformas de edge computing que ejecutan su trabajo en el edge (borde de la red), mediante el uso de tecnologías serverless. Tanto la edge computing como las tecnologías serverless son mercados con un rápido crecimiento al superar el 14.1% de la tasa de crecimiento anual compuesto (CAGR, por sus siglas en inglés) de las CDN, con un crecimiento de serverless en una CAGR de 22,7 % y la edge computing creciendo con un asombroso 34,1 % entre 2020 y 2025, de acuerdo con las predicciones recientes de MarketsandMarkets. Por otra parte, las CDN han tenido que evolucionar con el tiempo, con mayor capacidad, ofertas de servicios y mejores tecnologías subyacentes.
Capacidad
El uso de Internet ha aumentado sustancialmente desde que Akamai presentó la primera CDN en 1999. En ese momento, los teléfonos celulares aún usaban redes 2G, el smartphone no había sido lanzado y el término IoT acababa de ser acuñado. Desde entonces, la proliferación de dispositivos conectados a Internet se disparó, lo que exigió capacidad adicional para atender los miles de millones de dispositivos y zettabytes de datos. Además, el contenido de las aplicaciones web se ha tornado más pesado al incorporar videos e imágenes en alta definición. Como consecuencia, las CDN han tenido que expandir su capacidad de cientos de megabytes por segundo y millones de solicitudes a decenas de terabyte por segundo y trillones de solicitudes al día.
Servicios
Con la llegada de IoT y los dispositivos móviles, las CDN tuvieron que empezar a ofrecer una variedad más amplia de servicios. El aumento en el uso de diversos dispositivos y pantallas con diferentes tamaños, en conjunto con el incremento de imágenes de alta calidad en las páginas web, han creado la necesidad de servicios de optimización de imágenes. Al mismo tiempo, el auge de IoT, que a menudo tiene capacidades de seguridad menos estrictas que las PC, y las superficies de ataque más amplias de las aplicaciones modernas han impulsado el desarrollo de las CDN que sean capaces de mitigar ataques DDoS y proteger las aplicaciones web. Este auge de IoT también ha hecho fundamental contar con data centers distribuidos con capacidad de analítica y procesamiento en tiempo real, lo que generó que se considera, tal vez, el mayor paso en la evolución de las CDN hasta ahora: la transición de las CDN tradicionales a la edge computing.
Tecnología
La infraestructura de las CDN ha evolucionado desde PoP (puntos de presencia) formados por servidores de caché hasta los edge data center capaces de analizar y procesar datos en tiempo real. Esta transición se ha vuelto cada vez más necesaria a medida que aumenta la automatización, reemplazando la velocidad humana por la velocidad de máquinas. Como se destaca en la versión más reciente del reporte State of the Edge: “Actualmente, la velocidad de Internet —aunque es lo suficientemente veloz para la mayoría de los humanos—, parece no ser suficiente cuando las máquinas hablan con otras máquinas (…) A medida que más y más máquinas están en línea, las empresas buscarán aplicar el poder del procesamiento del lado del servidor a sus comportamientos. Esto requerirá habilitar Internet en el edge para que funcione a la velocidad de una máquina”.
Además, las aplicaciones de baja latencia, como realidad virtual (VR), realidad aumentada (AR), videoconferencias y servicios de baja latencia ultra confiables habilitados por las redes 5G, requieren cada vez más de recursos de procesamiento más potentes en el edge, al reemplazar los PoP de las CDN con edge data centers. El Open Glossary of Edge Computing, de LFE, explica que los edge data centers son “capaces de realizar las mismas funciones que los data centers centralizados, aunque a una escala menor individualmente”, una característica que es habilitada por la “operación autónoma, multi-tenancy, resiliencia distribuida y local y estándares abiertos”.
Anatomía de una CDN
PoP
Los PoP son confundidos a menudo con data centers, por lo que ambos términos son usados como sinónimos. Sin embargo, para una CDN tradicional, los PoP son generalmente más pequeños y menos complejos que los data centers. El Open Glossary of Edge Computing, de LFE, ofrece las siguientes definiciones:
- PoP: un punto en la infraestructura de la red donde el proveedor de servicios permite la conectividad de la red con sus usuarios o socios.
- Data center: una estructura diseñada específicamente para alojar múltiples nodos de procesamiento y almacenamiento de datos de alto rendimiento, de manera que una gran cantidad de recursos de red, almacenamiento de datos y procesamiento estén ubicados en un mismo lugar. Usualmente, implica tener racks especializados y sistemas de cerramiento, pisos especialmente diseñados para estas estructuras, así como sistemas adecuados de calefacción, enfriamiento, ventilación, seguridad, extinción de incendios y suministro de energía.
En palabras más simples, un PoP es un punto de acceso a la red; puede ser tan pequeño como un servidor único con recursos limitados. Incluso algunos dispositivos de gama alta y equipos de red pueden servir como PoP. Por otro lado, los data centers alojan múltiples servidores que pueden traducirse en miles de PoP en una ubicación centralizada.
Debido a su tamaño y escala, los data centers pueden gestionar muchísimo más tráfico que un PoP y son capaces de ejecutar funciones más complejas. Un PoP está diseñado para realizar tareas más simples, tales como almacenar contenido en la memoria caché, entregar contenido en caché y reenviar solicitudes que no están almacenadas en la memoria caché.
Servidores de caché
Cada PoP está conformado por uno o más servidores de caché. Los servidores de caché almacenan temporalmente archivos con su TTL, que le indica al servidor por cuánto tiempo estos archivos deben permanecer en la memoria caché antes de ser eliminados. Esto garantiza que el contenido pueda ser depurado para remover los archivos más antiguos, crear espacio para contenido nuevo y asegurarse que cualquier problema con la carga de contenido no ocurra indefinidamente. Cuando el TTL expira o cuando el dueño de un sitio web purga manualmente la memoria caché, estos archivos son borrados. La próxima vez que el contenido es solicitado por el servidor de caché, tendrá que enviar una solicitud al servicios de origen para buscar el ese contenido y ofrecer contenido actualizado, pero con mayor latencia.
Recursos del servidor
Existen dos tipos de recursos del servidor: persistentes y en memoria. La memoria RAM (Random Access Memory) es usada para almacenamiento en memoria, a la cual la CPU puede acceder rápidamente al mismo tiempo que los archivos están en uso. Sin embargo, la memoria RAM también es volátil, lo que significa que los archivos no permanecen en la memoria cuando no se necesitan o cuando la máquina se apaga. En contraste, el almacenamiento persistente tiene una mayor capacidad y no es volátil, por lo que los archivos almacenados permanecen en su lugar hasta cuando el servidor no está funcionando. Aunque toma más tiempo para acceder al almacenamiento persistente, el tiempo total depende del tipo de almacenamiento que la máquina esté usando.
Los servidores más antiguos usan discos duros tradicionales (HDD) para almacenamiento persistente, que realizan un proceso mecánico similar a un tocadiscos para leer y escribir datos. En consecuencia, son más lentos y frágiles que los discos de estado sólido (SSD), una tecnología más moderna que almacena datos en chips de memoria flash interconectados. Como no tienen partes móviles, los SSD son más rápidos y confiables que los HDD. También son mejores para acceder a archivos fragmentados, que se almacenan en diferentes ubicaciones de un disco. La Plataforma de Edge de Azion usa SSD para mejorar el rendimiento y la confiabilidad.
- RAM: almacenamiento en memoria que guarda archivos temporalmente mientras están en uso, así que pueden ser accesados rápidamente por la CPU.
- HDD: un método de almacenamiento persistente que usa un dispositivo mecánico para leer y escribir archivos en un disco magnético giratorio.
- SSD: un nuevo método de almacenamiento persistente que almacena y accede a datos vía chips.
Virtualización
Las CDN almacenan datos para diferentes clientes, por lo que cada uno debe aislar sus informaciones para prevenir filtraciones de datos o problemas de seguridad. Además, recursos como CPU o ancho de banda deben ser segmentados para asegurar un acceso equitativo y evitar que el tráfico de un solo cliente pueda sobrecargar un servidor. Una manera de hacer esto es al segmentar un servidor en máquinas virtuales, es decir, al separar ambientes virtualizados independientes para que cada uno tenga su propia interfaz de red y su parte de CPU, memoria y almacenamiento. Esto también facilita que los proveedores de CDN puedan ofrecer recursos más flexibles, ya que las máquinas virtuales se pueden activar en cuestión de minutos para satisfacer el aumento de la demanda.
Sin embargo, hoy en día, los usuarios no esperarán minutos hasta que cargue una página; al contrario, el usuario promedio abandonará una página web lenta en segundos. Para obtener mayor flexibilidad, los recursos pueden ser divididos en diferentes contenedores, con propiedades de aislamiento laxas que les permiten compartir el kernel del sistema operativo, en vez de exigir que cada contenedor incluya su propio sistema operativo, como sí lo hacen las VM. De esta manera, los nuevos contenedores se pueden implementar y activar en medio segundo, aproximadamente.
Factores que afectan el desempeño de una CDN
Aunque el objetivo de todas las CDN es el mismo —acelerar el suministro de contenido, reducir el uso de recursos y mejorar la confiabilidad—, su habilidad para ejecutar estas tareas puede variar considerablemente. En primer lugar, el desempeño de una CDN depende en buena medida de su ubicación, distribución y el número de PoP. Si se toma en cuenta que las CDN mejoran el desempeño al reducir la distancia entre los usuarios y el contenido que están solicitando, los PoP deben estar ubicados tan cerca como sea posible del lugar en donde se concentran los usuarios finales.
También hay que tomar en cuenta que los PoP no son creados de la misma manera. Un servidor ubicado en un gabinete en un edificio de oficinas no tendrá la misma confiabilidad o seguridad que uno ubicado en un data center que cuenta con redundancias integradas, equipo en el local para resolver problemas técnicos y de seguridad, así como sistemas diseñados específicamente para control de temperatura, humedad y flujo de aire.
El desempeño también depende de la calidad y capacidad del equipo usado. Los HDD no son tan rápidos o confiables como los SSD y consumen más energía. La capacidad del servidor también hace una diferencia, ya que los servidores con mayor almacenamiento y memoria tendrán menos fallas al momento de almacenar caché, lo que resulta en una menor latencia.
El desempeño de una CDN depende de muchos factores:
- La ubicación y el número de PoP
- La cobertura geográfica o regional
- La calidad del servicio (QoS), capacidad de Internet Book eXchange (IBX) y data centers
- La calidad y capacidad del equipo
Beneficios de Edge Application
Edge Application de Azion sustituye los servicios de CDN heredados con los recursos de la edge computing, incluidos los módulos para Edge Cache, aceleración de aplicaciones, optimización de imágenes y balanceo de cargas. Además, con Edge Application puedes ampliar la seguridad y la analítica en tiempo real usando nuestros productos Edge Firewall y Edge Analytics, así como crear contenido personalizado y aplicaciones edge-native con Edge Functions.
Edge Cache ofrece servicios de almacenamiento de caché diseñados para la realidad de Internet de hoy en día. Nuestra red definida por software monitorea y procesa solicitudes en tiempo real, asegurándose siempre de que la conexión sea segura y que los usuarios serán atendidos por el nodo más cercano y con mejor capacidad. Con nuestra plataforma serverless, los clientes de Azion pueden crear códigos, reglas empresariales, lógica de agrupación de clústeres y categorizar los datos almacenados en la memoria caché en el edge para atender grandes cantidades de solicitudes y suministro de contenido dinámico.
Con Edge Cache, los clientes de Azion obtienen:
- Primera línea de defensa contra ataques
- Carga de páginas más rápida
- Procesamiento de API optimizado
- Gestión de tráfico optimizada
- Jurisdicción local y conformidad
- Control y flexibilidad gestionados
- Mejor experiencia de usuario
Para conocer de primera mano los beneficios de Edge Cache y obtener acceso total a todos los productos y funcionalidades de Azion, puedes crear una cuenta gratis, ahora mismo.