MÉTODO Y SISTEMA DE ALMACENAMIENTO EN CACHÉ DE WEB PARA UNA RED DE DISTRIBUCIÓN DE CONTENIDO (CDN).

Método y sistema de almacenamiento en caché de web para una red de distribución de contenido

(CDN).

La red de distribución comprende una pluralidad de nodos de almacenamiento en caché y en el que el contenido web se ha identificado estáticamente como contenido que no puede almacenarse en caché y originado en un servidor de origen y en el que el método establece un valor de periodo de tiempo de vida, TTL, para dicho contenido que no puede almacenarse en caché basándose en peticiones de usuarios y responde a dichas peticiones de usuarios enviando a al menos un usuario de CDN dicho contenido que no puede almacenarse en caché dentro de dicho valor de periodo de TTL. Cada uno de dicha pluralidad de nodos de almacenamiento en caché en dicha red de distribución incluye un gestor de almacenamiento en caché de contenido y un predictor de TTL de contenido pseudodinámico y realiza las siguientes etapas:

a) poner en contacto cada uno de dicha pluralidad de nodos con un repositorio centralizado, con el fin de descargar el archivo de configuración de una pluralidad de dichos usuarios de CDN.

b) identificar, por parte de dicho gestor de almacenamiento en caché de contenido de cada nodo de almacenamiento en caché, el contenido que no puede almacenarse en caché como contenido pseudodinámico;

c) predecir, por parte de un predictor de TTL de contenido pseudodinámico de dicho nodo de almacenamiento en caché, dicho valor de periodo de TTL en el que no se modificará el contenido que no puede almacenarse en caché; y

d) almacenar en caché, por parte de cada uno de dicha pluralidad de nodos, el contenido que no puede almacenarse en caché durante dicho valor de periodo de TTL predicho.

El sistema de la invención está dispuesto para implementar el método de la invención.

Tipo: Patente de Invención. Resumen de patente/invención. Número de Solicitud: P201231263.

Solicitante: TELEFONICA, S.A..

Nacionalidad solicitante: España.

Inventor/es: RODRIGUEZ RODRIGUEZ,PABLO, XIAOYUAN,Yang, ASTIZ LEZAUN,Eguzki, MARTÍN,Iván Levi, ACOSTA OJEDA,Carmelo Alexis, GARCIA SANCHEZ MENDOZA,Armando Antonio.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE IMAGENES, p. ej. TELEVISION > H04N21/00 (Distribución selectiva de contenido, p. ej. televisión interactiva, VBD [Video Bajo Demanda] (difusión (boradcast) H04H; disposiciones, aparatos, circuitos o sistemas para el control de comunicaciones caracterizado por un protocolo H04L 29/06; transmisión bidireccional en tiempo real de datos de vídeo en movimiento H04N 7/14))
google+ twitter facebookPin it
MÉTODO Y SISTEMA DE ALMACENAMIENTO EN CACHÉ DE WEB PARA UNA RED DE DISTRIBUCIÓN DE CONTENIDO (CDN).

Fragmento de la descripción:

Método y sistema de almacenamiento en caché de web para una red de distribución de contenido (CDN)

Campo de la técnica La presente invención se refiere, en general, al almacenamiento en caché de contenido de páginas web en Internet, y más específicamente, en un primer aspecto, a un método de almacenamiento en caché de web para una red de distribución de contenido.

Un segundo aspecto de la invención se refiere a un sistema dispuesto para implementar el método del primer aspecto.

Estado de la técnica anterior

La entrega del contenido web complejo actual a los usuarios finales es un desafío y a este respecto las redes de distribución de contenido (CDN) han desempeñado un papel clave. Mediante replicación/almacenamiento en caché de contenido web en nodos distribuidos geográficamente, las CDN permiten que aplicaciones en línea accedan a contenido web mucho más rápido, proporcionando una experiencia de mayor calidad a sus usuarios. Las CDN también constituyen una clave para que la infraestructura de Internet evite congestiones en enlaces críticos aislando el tráfico de red en múltiples áreas locales separadas. Esta última característica de las CDN es extremadamente importante para el crecimiento de la infraestructura de conexión en red, donde el coste de nuevos enlaces físicos es significativo.

Lo buena que sea una CDN en aceleración de acceso a contenido y aislamiento de tráfico de red depende considerablemente de la capacidad de almacenar en caché el contenido web. Si un contenido web no puede almacenarse en caché, todas las peticiones tendrán que cruzar necesariamente enlaces críticos de vuelta al origen, introduciendo retardos adicionales y consumiendo mayores recursos de red.

La mala noticia es que la baja capacidad de almacenar en caché es una de las características naturales de la web 2.0. Por ejemplo, el 55% del contenido web ya se indicó potencialmente como sin posibilidad de almacenarse en caché en 2011. Los usuarios de Twitter y Facebook están accediendo a páginas web con información generada de manera constante por otros usuarios en su propia red social en línea. En este escenario, el contenido para cada usuario tiene que etiquetarse como sin posibilidad de almacenarse en caché, puesto que es imposible que los back-end prevean las interacciones de los usuarios finales. Los minoristas en línea tales como eBay [6] cambian el precio del producto según un mecanismo de subasta en el que cada usuario final puede aumentar/reducir el precio final. Como es imposible anticiparse a las subastas en línea, el precio del producto tiene que indicarse como sin posibilidad de almacenarse en caché y los usuarios finales tienen que actualizar constantemente la página web con los detalles del producto para obtener el precio final.

Sin embargo, un objeto web etiquetado como sin posibilidad de almacenarse en caché, no genera necesariamente un contenido diferente en cada petición de usuario. En el caso de eBay, por ejemplo, el precio del producto no cambia si no hay ningún otro usuario que suba el precio durante la subasta. En el caso de Facebook, el muro del usuario no cambia si ningún amigo escribe un mensaje. Además, el 46% del contenido potencialmente que no puede almacenarse en caché no cambia durante 14 días, según algunos estudios.

El contenido pseudodinámico puede definirse como todo aquel contenido web que no puede almacenarse en caché que sólo cambia en periodos no determinísticos, dada un área geográfica específica. Sin embargo, no todo el contenido que no puede almacenarse en caché es necesariamente contenido pseudodinámico.

Estudios han demostrado que partes significativas del contenido actual que no puede almacenarse en caché es contenido realmente estático. Este contenido se etiqueta como sin posibilidad de almacenarse en caché debido a una mala configuración en el servidor web o a una falta de conocimiento de impacto de rendimiento de los administradores del sistema web. Ya existen soluciones muy buenas para contenido estático que no puede almacenarse en caché en CDN. En la mayoría de las CDN, los clientes pueden especificar valores de TTL fijos para este tipo de contenido. Una vez que un nodo de CDN descarga el contenido del origen, se almacenará en caché durante el periodo de TTL especificado. También existen propuestas como el documento US 2003/0187917 A1 para maximizar la utilidad del contenido almacenado en caché seleccionando la mejor fuente de contenido que se espera que esté actualizado durante más tiempo. El método propuesto en el documento US 2003/0187917 A1 requiere la existencia de múltiples fuentes, por ejemplo múltiples proxys y sin embargo, sólo es aplicable para contenido que puede almacenarse en caché.

También existe contenido que no puede almacenarse en caché que es contenido dinámico realmente puro. Por ejemplo, un contador que indica el número de visitantes de la página web es claramente un contenido dinámico puro. Para cada petición, el contador se incrementará. A pesar de que gran cantidad de contenido que no puede almacenarse en caché es estático o dinámico puro, una parte significativa de este contenido es contenido pseudodinámico cuyo evento de cambio no puede anticiparse.

Como respuesta a la explosión de contenido web que no puede almacenarse en caché, se ha propuesto un conjunto de nuevas técnicas de aceleración web. Existen técnicas significativas que suponen que todo el contenido que no puede almacenarse en caché es dinámico puro y contienen diferentes mecanismos de optimización para reducir el tiempo de comunicación con el servidor de origen. Según la característica de mecanismos de optimización, todas las técnicas existentes pueden clasificarse en 3 grupos.

El primer grupo contiene las técnicas que reducen el tráfico de red. Técnicas tales como minimización JS/CSS, optimización de estructura HTML y compresión sobre la marcha pertenecen a esta categoría. En el mismo grupo están aquellas técnicas que pueden detectar duplicidades de contenido web parciales y eliminar parte del tráfico de red enviando sólo mensajes de control.

El segundo grupo incluye todas las técnicas asociadas con la optimización de canales de transmisión, tales como optimización TCP [1], conexiones TCP persistentes [2] y optimización de encaminamiento. El objetivo de estas técnicas es mejorar el rendimiento global de los canales TCP: 1) reduciendo el inicio lento, 2) evitando el retardo de toma de contacto, 3) proporcionando la estabilidad de canal y 4) mejorando el rendimiento global de TCP.

En el tercer grupo están todas aquellas técnicas basadas en la captura previa de contenido del origen. La idea, en este caso, es que los nodos de CDN capturan contenido del servidor de origen al mismo tiempo que se entrega otro contenido al usuario final.

También existen otras técnicas que pueden complementar a todas las técnicas mencionadas anteriormente. La optimización DNS, por ejemplo, forma parte de todas las soluciones de aceleración web, tanto para contenido que puede almacenarse en caché como para el que no. Los administradores web también desempeñan un papel importante en la aceleración de páginas aplicando diferentes técnicas, tales como simplificación DOM y HTML/JS, haciendo que las peticiones AJAX puedan almacenarse en caché, etc.

También existen trabajos en marcha para cambiar el protocolo TCP/HTTP, tal como el protocolo SPDY que incluye una gran cantidad de características para la aceleración de sitios web. También existen técnicas específicas para el espacio móvil. Soluciones tales como Bytemobile proporcionan una transformación de contenido sobre la marcha para adaptar imágenes a pantallas de dispositivos.

Problemas con las soluciones existentes:...

 


Reivindicaciones:

1. Método de almacenamiento en caché de web para una red de distribución de contenido (CDN) , comprendiendo dicha red de distribución una pluralidad de nodos de almacenamiento en caché y en el que el contenido web se ha identificado estáticamente como contenido que no puede almacenarse en caché y originado en un servidor de origen, comprendiendo el método:

- establecer un valor de periodo de tiempo de vida, TTL, para dicho contenido que no puede almacenarse en caché basándose en peticiones de usuarios; y

- responder a dichas peticiones de usuarios enviando a al menos un usuario de CDN dicho contenido que no puede almacenarse en caché dentro de dicho valor de periodo de TTL,

caracterizado porque cada uno de dicha pluralidad de nodos de almacenamiento en caché en dicha red de distribución incluye un gestor de almacenamiento en caché de contenido y un predictor de TTL de contenido pseudodinámico y porque dicho método comprende las siguientes etapas:

a) poner en contacto cada uno de dicha pluralidad de nodos con un repositorio centralizado, con el fin de descargar el archivo de configuración de una pluralidad de dichos usuarios de CDN.

b) identificar, por parte de dicho gestor de almacenamiento en caché de contenido de cada nodo de almacenamiento en caché, el contenido que no puede almacenarse en caché como contenido pseudodinámico;

c) predecir, por parte de un predictor de TTL de contenido pseudodinámico de dicho nodo de almacenamiento en caché, dicho valor de periodo de TTL en el que no se modificará el contenido que no puede almacenarse en caché; y

d) almacenar en caché, por parte de cada uno de dicha pluralidad de nodos, el contenido que no puede almacenarse en caché durante dicho valor de periodo de TTL predicho.

2. Método de almacenamiento en caché de web según la reivindicación 1, caracterizado porque dicha etapa c) se realiza para cada uno de dicha pluralidad de usuarios de CDN.

3. Método de almacenamiento en caché de web según la reivindicación 2, caracterizado porque comprende dar servicio a todas de dichas peticiones de dichos usuarios de dicho contenido pseudodinámico usando una copia local del archivo de configuración en dicho repositorio centralizado.

4. Método de almacenamiento en caché de web según cualquiera de las reivindicaciones anteriores, caracterizado porque comprende retransmitir dicho contenido que no puede almacenarse en caché a dicho usuario de CDN sin almacenarlo en dicho repositorio centralizado si dicho contenido que no puede almacenarse en caché no es pseudodinámico.

5. Método de almacenamiento en caché de web según la reivindicación 1 ó 3, caracterizado porque comprende además generar, por parte de un gestor de peticiones de contenido diferidas, una petición diferida para dicho servidor de origen para cada petición de usuario de dicho contenido pseudodinámico con el fin de separar la descarga de contenido pseudodinámico.

6. Método de almacenamiento en caché de web según la reivindicación 5, caracterizado porque comprende además planificar de manera independiente dichas peticiones diferidas y fusionar múltiples de dichas peticiones diferidas en una única petición diferida de vuelta para dicho servidor de origen.

7. Método de almacenamiento en caché de web según la reivindicación 6, caracterizado porque comprende usar el resultado de dichas peticiones diferidas generadas para entrenar dicho predictor de TTL de contenido pseudodinámico.

8. Método de almacenamiento en caché de web según la reivindicación 7, caracterizado porque comprende entrenar el predictor de TTL de contenido pseudodinámico con los últimos valores de TTL de dichas peticiones diferidas generadas.

9. Método de almacenamiento en caché de web según las reivindicaciones anteriores, caracterizado porque para cada predicción de TTL comprende además descargar el contenido que no puede almacenarse en caché para determinar si dicho contenido que no puede almacenarse en caché es realmente estable, y compararlo con la copia local para determinar el último resultado de predicción de TTL.

10. Método de almacenamiento en caché de web según la reivindicación 1, caracterizado porque comprende establecer dicho valor de TTL dependiendo de las peticiones de los proveedores de contenido.

11. Método de almacenamiento en caché de web según la reivindicación 1, caracterizado porque define etiquetas de versión con el fin de representar diferentes versiones del mismo contenido que no puede almacenarse en caché.

12. Sistema de almacenamiento en caché de web para una red de distribución de contenido (CDN) , comprendiendo dicha red de distribución una pluralidad de nodos de almacenamiento en caché y en el que un contenido web se identifica estáticamente como contenido que no puede almacenarse en caché y origina en un servidor de origen, comprendiendo dicho sistema:

- un repositorio centralizado, para descargar el archivo de configuración de una pluralidad de usuarios de CDN; y

- medios para establecer un valor de periodo de tiempo de vida (TTL) para dicho contenido que no puede almacenarse en caché basándose en peticiones de usuarios de dicha pluralidad de usuarios de CDN,

caracterizado porque cada nodo de almacenamiento en caché de dicha pluralidad de nodos de almacenamiento en caché en dicha red de distribución comprende:

- un gestor (1) de almacenamiento en caché de contenido dispuesto para identificar dicho contenido que no puede almacenarse en caché como contenido pseudodinámico; y

- un predictor (3) de TTL de contenido pseudodinámico dispuesto para predecir dicho valor de periodo de TTL en el que no se modificará el contenido que no puede almacenarse en caché,

en el que el contenido que no puede almacenarse en caché se almacena en caché durante dicho valor de periodo de TTL predicho para cada nodo de almacenamiento en caché.

13. Sistema de almacenamiento en caché de web según la reivindicación 12, caracterizado porque comprende un gestor (4) de peticiones de contenido diferidas dispuesto para enviar una petición diferida a dicho servidor de origen para cada petición de usuario de dicho contenido pseudodinámico.

14. Sistema de almacenamiento en caché de web según la reivindicación 13, caracterizado porque comprende un elemento (11) de contracción de cola dispuesto para fusionar múltiples de dichas peticiones diferidas en una única petición diferida.

15. Sistema de almacenamiento en caché de web según la reivindicación 14, caracterizado porque comprende además un colector (22) de resultados dispuesto para validar el contenido pseudodinámico una vez que dicha petición diferida se ha descargado desde dicho servidor de origen.

Figura 1

Figura 2 Figura 3 Figura 4 Figura 5

Figura 7 Figura 8

Figura 9 Figura 10