En la actualidad vivimos en una sociedad donde las redes de comunicación están creciendo aceleradamente, cada vez existen más usuarios conectados a Internet y por consiguiente el tráfico que circula sobre esta red, ha producido nuevas demandas de infraestructura para difundir y acceder a documentos Web. Las redes de distribución de contenido (CDN, Content Delivery Networks) surgieron como un medio de reducir el tiempo de respuesta experimentado por los usuarios de Internet al disponer de múltiples servidores distribuidos en las cercanías de los clientes. En este artículo se describe el comportamiento de una CDN desde un punto de vista general, se detalla su funcionamiento, arquitectura, ventajas y beneficios que aporta a los proveedores de contenidos, las técnicas utilizadas para redireccionar las peticiones de los clientes y los desafíos a los que deben enfrentarse este tipo de redes.
Distribución Escalable de Contenidos: Content Delivery Networks CDN
1. Distribución Escalable de Contenidos: Content Delivery Networks CDN
Diana Yacchirema Vargas
Facultad de Ingeniería en Sistemas Informáticos y de Computación
Escuela Politécnica Nacional
Ladrón de Guevara E11 - 253. Quito, Ecuador
diana.yacchirema@epn.edu.ec
Resumen
En la actualidad vivimos en una sociedad donde las redes de comunicación están creciendo aceleradamente,
cada vez existen más usuarios conectados a Internet y por consiguiente el tráfico que circula sobre esta red, ha
producido nuevas demandas de infraestructura para difundir y acceder a documentos Web. Las redes de
distribución de contenido (CDN, Content Delivery Networks) surgieron como un medio de reducir el tiempo de
respuesta experimentado por los usuarios de Internet al disponer de múltiples servidores distribuidos en las
cercanías de los clientes. En este artículo se describe el comportamiento de una CDN desde un punto de vista
general, se detalla su funcionamiento, arquitectura, ventajas y beneficios que aporta a los proveedores de
contenidos, las técnicas utilizadas para redireccionar las peticiones de los clientes y los desafíos a los que deben
enfrentarse este tipo de redes.
Palabras Claves: Red de distribución de contenidos, CDN, redireccionamiento DNS, servidores de réplica
Abstract
Today we live in a society where communication networks are growing rapidly, more and more users are
connected to the Internet and therefore the traffic flowing on the network, has produced new demands for
infrastructure to disseminate and access to Web documents. The content distribution networks (CDN, Content
Delivery Networks) emerged as a means of reducing the response time experienced by Internet users to have
multiple distributed servers near the clients. This article describes the behavior of a CDN from a general point of
view, detailing its performance, architecture, advantages and benefits of content providers, the techniques used to
redirect requests from customers and the challenges must confront this type of network.
Key words: Content Distribution Network, DNS redirection CDN, surrogates.
2. 1. Introducción Alejamiento de los proveedores de los
contenidos de los usuarios.- El costo de
Internet permite distribuir contenido de todo acceder a un servidor que se encuentra
tipo, que cada vez adquiere un formato más cercano no es lo mismo que el costo en el
interactivo y que es demandado por una población de que se incurre al acceder a un servidor que se
usuarios en aumento. La necesidad de escalar ha encuentra a largas distancias por que supone
conducido al despliegue de clusters [1], redes globales un mayor número de saltos para acceder a
de distribución de contenido [2] y, más recientemente, este servicio.
estructuras P2P [3].
Aumento de la latencia percibida por los
Las redes de distribucion de contenido usuarios.- Fundamentalmente debido a
(CDNs, Content Delivery Networks) son redes de situaciones de congestión y de tráfico.
capa de aplicación formadas por un conjunto dedicado
de servidores (surrogates), distribuidos en las Mala calidad de servicio debido a una falta
cercanías de los clientes, los cuales proporcionan de gestión centralizada.- Por la propia
contenido con unos valores reducidos de latencia [4]. naturaleza de internet no se puede realizar
una gestión centralizada, sin embargo al tener
Los servicios proporcionados por una CDN una gestión centralizada se podría mejorar la
mejoran el acceso a contenido especializado al calidad del servicio.
abordar tres áreas básicas en el ámbito del
networking: velocidad, fiabilidad y escalabilidad. 3. Soluciones para mejorar las
El presente artículo está estructurado de la
prestaciones del servicio Web
siguiente manera: en la primera sección se describen
los problemas en la distribución de contenidos en los Para mejorar las prestaciones del servicio
servicios web tradicionales; en la segunda sección, se Web se pueden establecer varias soluciones, tales
explican las posibles soluciones para mejorar las como:
prestaciones del servicio web en la distribución de
contenidos, así como también los problemas que estas Clustering local.- Si con un servidor web no
soluciones introducen; en la tercera sección, se realiza se tiene buenas prestaciones se va
una conceptualización de las CDNs, se explica su incrementando de forma gradual el número
funcionamiento, los componentes de su arquitectura, de servidores, con la finalidad de repartir el
la relación de cada uno de ellos, así como también las tráfico entre los diferentes servidores de
ventajas y los beneficios que aportan a los forma interna. Esta es una solución local de
proveedores de contenidos; en la cuarta sección se mejorar el servicio.
indica las técnicas de enrutamiento de peticiones de
clientes utilizadas dentro de las CDNs, detallando la Multihoming.- Consiste en conectar el
técnica de direccionamiento DNS por ser la técnica servidor web a dos ISPs, balanceando la
más utilizada en la actualidad. Finalmente, se carga entre dos conexiones, Es una manera
presentan algunas conclusiones sobre el tema tratado. de mejorar el servicio de forma local.
2. Servicios Web Mirroring.- Los contenidos de mi servidor
web los copio en n servidores repartidos por
Los servicios web tradicionales tienen una varias partes. Esta solución no es automática
serie de problemas en la distribución de contenidos. por que el mirror tengo que seleccionarlo.
Los principales problemas son:
Estas tres soluciones introducen problemas
adicionales. En el caso de los Clustering es difícil
Servidores y objetos populares.- Se tienen
crear y mantener clusters de miles de servidores,
servidores de objetos excesivamente
no es una solución muy escalable. En
populares o muy populares, estos servidores
multihoming la convergencia de rutas es un
pueden encontrarse con problemas de tipo
problema. En mirroring se requiere sincronizar
flash-crowds que consiste en un acceso
un sitio con todas las réplicas, es decir se necesita
masivo al servidor en un instante de tiempo
mantener una consistencia entre las réplicas.
determinado.
3. Las tres soluciones requieren un exceso de servidores por todo el mundo. Actualmente todo el
capacidad. En los Clustering exceso de servidores. En mercado de CDN está en manos de AKAMAI.
multihoming si se cae un enlace, cada conexión por
si sola debería ser capaz de soportar todo el tráfico. En Las CDN aparecen por que prestar
Mirroring cada replica debe ser capaz de soportar toda contenidos desde un único lugar no es escalable, no
la carga del servidor. es fiable y tiene problemas de prestaciones.
4. Content Delivery Network 4.1 Ventajas de las CDNs
Las primeras definiciones de CDNs nace en Las principales ventajas de las CDNs son:
un principio de los primeros documentos de
AKAMAI [5]. La idea del concepto de CDN es que Sirve peticiones desde más de un sitio,
los contenidos estén más cerca del cliente, de una balanceando la carga, distribuyendo los
forma automatizada para que la latencia percibida por accesos, distribuyendo el riesgo y aumento
el cliente sea menor. en fiabilidad.
El objetivo de la CDN es direccionar las Reduce el contenido servido desde el sitio
peticiones de los clientes al servidor disponible más origen, sirve mas contenidos desde los
cercano (surrogate o servidor de replica) que servidores de cache que desde el servidor de
mantenga los contenidos con mayor probabilidad. contenidos origen.
En las CDN los servidores de cache o Se proporciona un servicio más rápido a los
surrogate son controlados por los proveedores de usuarios porque la latencia percibida por el
contenidos, es decir los proveedores de contenidos usuario es mucho menor.
deciden cuales son los contenidos más populares que
se almacenaran en los servidores de cache. Los Los tipos de contenidos servidos por las CDNs
diferentes clientes acceden a los servidores de cache son los Objetos web estáticos y streaming de audio y
cuando accedan a los contenidos más populares y vídeo.
acceden al servidor origen cuando los contenidos son
menos populares. 4.2 Beneficios de las CDNs a los proveedores de
contenidos
Uno de los problemas que se presentan en la
CDNs es la resolución de nombres ya que los clientes La CDN ofrece varios beneficios a los proveedores
al realizar la resolución de nombres van acceder al de contenido:
servidor origen de contenidos, por lo que se debe Alcance global con baja latencia, la
gestionar para que las peticiones de los clientes vayan posibilidad de tener repartido miles de
al servidor más cercano, mas disponible y que con servidores por todo el mundo supone una
más probabilidad tenga el contenido, es decir se debe baja latencia.
intervenir para que las peticiones de los clientes se
distribuyan entre los diferentes servidores de cache Protección ante eventos puntuales y muy
gestionados por el origen, en función de la ubicación populares (previstos y no previstos),
geográfica para conseguir balanceo de carga y una distribuye los accesos cuando se produce un
mayor disponibilidad. flash-crowds
Actualmente existen varias empresas que 4.3 Arquitectura de una CDN
ofrecen el servicio de CDN, es decir son empresas que
venden a los diferentes proveedores de contenidos Los componentes que debe poseer toda CDN son:
pequeñas parcelas o espacios en sus servidores, de
manera que con esos servidores hacen el cache a partir Clientes: Son aquellos que quieren acceder
del origen. La ventaja de esto es que una misma a la información distribuida por el servidor
infraestructura de CDN presta servicios a una multitud origen a través de la CDN
de empresas, por lo que los proveedores de contenidos
no tienen que incurrir en los costos que con lleva la Servidores de réplica: Replican toda o parte
instalación y mantenimiento de los diferentes de la información.
4. Servidores origen: Son los propietarios de la
información. 4. El cliente solicita objetos de lo que cree es el
servidor origen. Debido a la delegación del
Tarificación: Servidor que contabiliza y espacio de nombres las peticiones se
cuadra información entre cliente, CDN y redireccionan al subsistema de enrutamiento.
proveedores de contenidos.
5. El subsistema de enrutamiento encamina las
Subsistema de enrutamiento de peticiones: Es peticiones al mejor servidor de réplica de la
el más importante, se encarga de tomar las CDN para ese cliente.
peticiones de los clientes, procesarlas y
enviarlas al servidor de réplica más 6. El servidor de réplica seleccionado
adecuado de una manera suficientemente suministra el contenido al cliente.
rápida para que los clientes perciban una Adicionalmente el servidor de réplica envía
latencia menor. En la actualidad el información de auditoría al subsistema de
mecanismo de enrutamiento de peticiones auditoría y monitorización.
que se utiliza es el DNS.
7. El subsistema de auditoría y monitorización,
Subsistema de distribución: Traslada los resume y procesa la información para el
contenidos desde los servidores origen a los servidor origen y la tarificación. Las
servidores de réplica o surrogate. estadísticas también son empleadas por el
subsistema de enrutamiento de peticiones.
Subsistema de auditoría y monitorización:
Controla y resume la información de 8. La organización de tarificación cuadra las
auditoría y monitorización en estadísticas. cuentas entre los actores envueltos en el
proceso de distribución de contenidos
En la Figura 1, se indica las relaciones de estos
componentes. Cada uno de estos elementos puede ser 5. Técnicas de enrutamiento de clientes
sustituido por una red, un router, etc
Existen varias técnicas utilizadas por las
CDNs para enrutar las peticiones de los clientes a
los servidores de cache más óptimos. Las
principales técnicas son:
Multiplexación de cliente, se suministran
varias opciones al cliente y él selecciona.
Redirección HTTP, se utiliza los campos de
cabecera.
Redireccionamiento DNS, es una técnica
transparente al usuario y es la más utilizada
Figura 1. Arquitectura de una CDN actualmente. En éste artículo se dará a
conocer su funcionamiento.
1. El servidor origen delega el espacio de
nombres de los objetos a distribuir por la
CDN al subsistema de enrutamiento de
6. Redireccionamiento DNS
peticiones.
La redirección DNS es básica en la operación
de las CDNs.
2. El servidor origen publica contenido que será
distribuido por la CDN en el subsistema de
En el redireccionamiento DNS, los
distribución.
servidores DNS autoritativos son controlados por
3. El subsistema de distribución desplaza los la infraestructura CDN. Cuando un cliente solicita
contenidos hasta los servidores de réplica. un recurso se redirecciona la petición al surrogate
Además interactúa con el subsistema de mas cercano, éste surrogate a su vez pregunta al
enrutamiento de peticiones para ayudar en la CDN Manager cuál es el mejor surrogate para
selección del servidor. servir al contenido solicitado, el CDN Manager
contesta y distribuye las peticiones a los
5. servidores CDN según diferentes políticas (al usuarios y la carga en los servidores origen
menos cargado, al que se encuentra más de contenidos.
“próximo” al cliente (topología o
geograficamente), finalmente el contenido es En este artículo se identificaron los
entregado al cliente. componentes principales que toda CDNs
debe poseer para poder distribuir de una
La redirección DNS no funciona siempre de manera más eficiente los contenidos a los
forma correcta. clientes.
Los principales enemigos de la redirección Si bien en cierto las CDNs aporta grandes
DNS son: ventajas en la distribución de contenidos pero
Técnicas de caching de las respuestas también hay que tomar en cuenta que el costo
DNS. de explotación es muy alto en la actualidad.
Problema del originador.
Factor de carga oculto. 9. Referencias
Problema de enmascaramiento del
cliente DNS. [1] A. Vakali and G. Pallis, Content delivery
networks: status and trends, 2003.
7. Desafíos técnicos de las CDNs
[2] D. Verma, Content Distribution Networks, an
Las CDNs deben enfrentar varios desafíos engineering approach, 2002
técnicos. Los principales son:
[3] K.L. Johnson, J.F. Carr, M.S. Day and M.F.
Escalabilidad del sistema Kaashoek, The measured performance of
Las CDNs deben monitorizar las condiciones content distribution networks, 2000.
de la red y un número elevado de servidores,
deben ser capaces de tratar con información [4] B. Molina M., C.E. Palau, Member, IEEE,
incompleta y desactualizada, deben M. Esteve, Estudio y Modelado de una Red
reaccionar rápidamente a condiciones de Distribución de Contenido, 2005.
cambiantes de la red, deben ajustar las
peticiones de los clientes a condiciones del [5] Akamai, http://www.akamai.com
entorno, deben aislar los clientes
perjudiciales para la red, deben capturas logs [6] Z. Mao, C. Cranor, F. Douglis and M.
e información de auditoría. Rabinovich, A precise and efficient
evaluation of the proximity of web clients
Fiabilidad del sistema and their local DNS servers, 2002.
Las CDNs deben ser tolerante a fallos y
detectar rápidamente los fallos que se [7] J. Kangasharju, K.W. Ross, and J.W.
puedan producir dentro del sistema. Roberts, Performance Evaluation of
Redirection Schemes in Content Distribution
Visibilidad y control de contenidos Networks,2000
Las CDNs deben mantener la consistencia de
la información almacenada en cache, deben
ser capaces de controlar y gestionar el tiempo
de vida de los contenidos, deben mantener un
control de la integridad para que las
peticiones de los clientes sean completas y
las respuestas no sean incompletas.
8. Conclusiones
Las redes de distribución de contenidos
redireccionan cada petición que solicita un
cliente al surrogate mas cercano reduciendo
de esta manera la latencia percibida por los