ES2441968T3 - Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos - Google Patents

Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos Download PDF

Info

Publication number
ES2441968T3
ES2441968T3 ES09845607.2T ES09845607T ES2441968T3 ES 2441968 T3 ES2441968 T3 ES 2441968T3 ES 09845607 T ES09845607 T ES 09845607T ES 2441968 T3 ES2441968 T3 ES 2441968T3
Authority
ES
Spain
Prior art keywords
caching
content
node
nodes
cached
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES09845607.2T
Other languages
English (en)
Inventor
Kling LARS-ÖRJAN
Nyström KJELL
Thomas Johansson
Stefan Hellkvist
Hareesh Puthalath
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2441968T3 publication Critical patent/ES2441968T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/263Network storage, e.g. SAN or NAS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories
    • G06F2212/284Plural cache memories being distributed

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Un método para almacenar en caché contenido en una red de entrega de contenidos (CDN) que comprendeuna pluralidad de nodos de almacenamiento en caché, los nodos de almacenamiento en caché que estánconectados con enlaces de comunicación que tienen un coste de comunicación a otros nodos de almacenamientoen caché en la CDN, el método que comprende los siguientes pasos: - definir (310) un nodo virtual que representa de manera lógica un conjunto de nodos de almacenamiento en caché,en donde el conjunto de nodos de almacenamiento en caché se define en base a un coste de comunicación internoentre los nodos de almacenamiento en caché; - recoger (315) las estadísticas con respecto a peticiones de contenido en cada uno de los nodos dealmacenamiento en caché representados por el nodo virtual; - determinar (320), en base a las estadísticas recopiladas de todos los nodos de almacenamiento en cachérepresentados por el nodo virtual, si va a ser almacenado en caché o no un contenido específico en el nodo virtual;y, si se determina almacenar en caché dicho contenido específico; - hacer (325) que el contenido específico sea almacenado en caché en uno o más de los nodos de almacenamientoen caché representados por el nodo virtual.

Description

Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos
Campo técnico
La presente invención se refiere de manera general a redes de comunicaciones, y en particular, a un método y nodo para distribuir eficientemente contenido electrónico en una red de distribución de contenidos.
Antecedentes
Las redes de entrega de contenidos (CDN) proporcionan una infraestructura de almacenamiento en caché en redes IP para soportar servicios multimedia. Los métodos y sistemas existentes usados en CDN no tienen en cuenta los diferentes factores posibles que afectan a la colocación óptima de contenidos en nodos de almacenamiento en caché. Como resultado, la distribución de contenidos hace un uso ineficiente de los recursos de red.
En las soluciones actuales, cuando se solicita contenido desde diversas partes de la red, el contenido se migra a los nodos de almacenamiento en caché donde más se necesita. Tradicionalmente esto se hace de una forma codiciosa donde los nodos de almacenamiento en caché almacenan cada parte de contenido que pasa a través de ellos suponiendo que el contenido tiene una demanda alta, presente y futura. En otras soluciones el proveedor de contenidos da una indicación inicial de la demanda prevista del contenido. En todas estas soluciones el cliente es redirigido siempre a su nodo de almacenamiento en caché más cercano, con independencia de si el nodo de almacenamiento en caché tiene o no el contenido. El nodo de almacenamiento en caché, tras recibir la petición del cliente del contenido, comprobará si tiene el contenido solicitado y, si es así, responderá al cliente. Si el contenido no está disponible en el nodo de almacenamiento en caché, éste provocará un error de caché y la petición se redirigirá al nodo de almacenamiento en caché más adecuado que almacena en caché el contenido solicitado. Esta redirección se realiza mediante un nodo de asignación (también llamado nodo de localización), que es el nodo responsable de redirigir a los clientes a los nodos de almacenamiento en caché adecuados en la CDN, y a partir de entonces el contenido se almacenará en caché en el nodo de almacenamiento en caché más cercano al cliente y de esta manera en el nodo de almacenamiento en caché que recibió la petición inicial del contenido. Si el primer nodo de asignación que recibió la petición no conoce dónde está almacenado en caché el contenido, el primer nodo de asignación puede enviar una redirección a un segundo nodo de asignación y así sucesivamente hasta que se pueda encontrar un nodo de asignación que conoce dónde está almacenado el contenido y se puede enviar la decisión de redirección final a un nodo de almacenamiento en caché. Los nodos de almacenamiento en caché tienen una capacidad de almacenamiento máxima y cuando los nodos de almacenamiento en caché están llenos se debe tomar alguna decisión sobre qué contenido mantener y qué contenido sustituir. Dependiendo de los requisitos hay numerosos algoritmos para seleccionar qué mantener tal como el Usado Menos Recientemente (LRU), Usado Más Recientemente (MRU) y Usado Menos Frecuentemente (LFU). De esta manera, un contenido con una frecuencia baja de peticiones con respecto a otro contenido se borrará del nodo de almacenamiento en caché para dejar espacio para nuevo contenido para el que en la práctica puede no ser de una demanda alta.
Una solución para un mecanismo de almacenamiento en caché distribuido se describe por el documento de la técnica anterior US 6167438.
Además, en una CDN los nodos de almacenamiento en caché se colocan normalmente en el borde de una red deagregación. Éste es un lugar ideal ya que está suficientemente cerca de los usuarios finales y al mismo tiempo tiene buen ancho de banda simétrico entre nodos de almacenamiento en caché dentro de la red de agregación. Un error de almacenamiento en caché puede hacer no obstante que una petición de contenido sea reenviada a un nodo de almacenamiento en caché situado fuera de la red de agregación lo cual puede provocar que la traída del contenido tenga que ser procesada a través de la red central más costosa. Esto es inoportuno y puede provocar gran impacto de la red y un uso ineficiente de la misma, y se debería evitar de esta manera tanto como sea posible.
Compendio
Un objeto de la presente invención es por lo tanto proporcionar un método y nodo que use más eficientemente los recursos de una red de entrega de contenidos.
Según una realización de la presente invención se proporciona un método para almacenar en caché contenido en una red de entrega de contenidos (CDN). El método define un nodo virtual que representa de manera lógica un conjunto de nodos de almacenamiento en caché. El conjunto de nodos de almacenamiento en caché se define a su vez en base a un coste de comunicación interno entre los nodos de almacenamiento en caché. En cada uno de los nodos de almacenamiento en caché representados por el nodo virtual se recogen estadísticas con respecto a las peticiones de contenido, y en base a estas estadísticas se determina si un contenido específico tiene que ser almacenado en caché o no en el nodo virtual. Si se determina almacenar en caché un contenido específico en el nodo virtual, se puede hacer que el contenido específico sea almacenado en caché en uno o más de los nodos de almacenamiento en caché representados por el nodo virtual.
Una ventaja con este método es que se puede distribuir más óptimamente contenido en la red dado que la decisión
de almacenar en caché se basa en la demanda real de un conjunto de nodos de almacenamiento en caché.
En otra realización, la presente invención se dirige a una entidad de decisión de almacenamiento en caché para almacenar contenido en una red de entrega de contenidos. La red tiene una pluralidad de nodos de almacenamiento en caché de contenidos a los cuales se distribuye contenido. La entidad comprende medios para definir un conjunto de nodos de almacenamiento en caché en base a un coste de comunicación interno entre los nodos de almacenamiento en caché y medios para definir un nodo virtual que representa de manera lógica dicho conjunto de nodos de almacenamiento en caché. La entidad además comprende un contador para recoger estadísticas con respecto a las peticiones de contenido en cada uno de los nodos de almacenamiento en caché que se representan por el nodo virtual. Se incluye un procesador para determinar si va a ser almacenado en caché o no un contenido específico en el nodo virtual. Esta determinación se basa en las estadísticas recopiladas desde todos los nodos de almacenamiento en caché representados por el nodo virtual. La entidad también incluye un transmisor para hacer que un contenido específico, enviando una propuesta a los nodos de almacenamiento en caché afectados, sea almacenado en caché en uno o más de los nodos de almacenamiento en caché representados por el nodo virtual.
Una ventaja con tal entidad comparado con entidades conocidas para almacenar en caché contenido es que se puede distribuir más óptimamente contenido en la red dado que la entidad está configurada para basar una decisión de almacenamiento en caché en la demanda real de un conjunto de nodos de almacenamiento en caché.
Breve descripción de los dibujos
Ahora se hará referencia, a modo de ejemplo, a los dibujos anexos, en los que:
La Figura 1 ilustra una versión simplificada de red de entrega de contenidos;
La Figura 2 también ilustra un diagrama de bloques simplificado de una red de entrega de contenidos;
La Figura 3 es un diagrama de flujo que ilustra los pasos de definición de nodos virtuales y que usa estadísticas según la presente invención;
La Figura 4 ilustra una red donde se han definido nodos virtuales según la presente invención;
La Figura 5 es un diagrama de flujo que ilustra los pasos de distribución de contenido en una CDN según las enseñanzas de la presente invención;
La Figura 6 ilustra un ejemplo de una entrada en un nodo virtual; y
La Figura 7 ilustra esquemáticamente un nodo de asignación según una realización de la presente invención.
Descripción detallada
La presente invención es un método y nodo de control de redes de distribución de contenidos para proporcionar contenido en ubicaciones óptimas en la red. La Figura 1 ilustra esquemáticamente un ejemplo de una CDN 100. La red comprende un número de nodos de borde, también llamados nodos de almacenamiento en caché 101-106 representados por círculos rellenos en donde un contenido, por ejemplo ficheros de datos se almacena en caché solamente en los nodos de borde. En este ejemplo un ordenador de usuario final 107, también llamado cliente, está conectado solamente a un nodo de borde 104. Este ejemplo un fichero de datos específico 108 está almacenado en dos nodos de borde 102, 103. Los círculos no rellenos representan nodos intermedios 109 en la red que conecta los nodos de borde unos con otros. Las líneas entre los círculos representan enlaces 110 entre los nodos. Los nodos intermedios 109 son por ejemplo encaminadores y conmutadores. Cada enlace representa un coste de comunicación, indicado por la letra “c”. El coste para diferentes enlaces puede variar significativamente dependiendo por ejemplo de la conexión y la distancia entre los nodos. En aras de la claridad los números de referencia c, 109 y 110 se muestran solamente una vez en la figura. El coste es una medida del coste de comunicación, y puede incluir por ejemplo capacidad, restricciones de ancho de banda, fluctuación, retardo, y tasa de pérdida de paquetes media.
Según la presente invención se toman decisiones con respecto a cuándo va a ser almacenado en caché o no un contenido particular en un nodo de almacenamiento en caché sobre estadísticas recopiladas durante un período de tiempo. El trabajo de recopilación de estas estadísticas se realiza preferiblemente por los nodos de asignación 120 que pueden estudiar todas las peticiones hechas en la red y mantener contadores de ganancia especiales de contenido particular para cada nodo de almacenamiento en caché. Un nodo de asignación 120 es un nodo que determinar en qué nodos de almacenamiento en caché colocar y migrar contenido usando diferentes estadísticas. El nodo de asignación también pueden tomar el papel de un nodo de localización y entonces, tras la petición de una parte de contenido particular, puede redirigir al nodo de almacenamiento en caché adecuado que tiene esa parte de contenido y devolver la dirección de ese nodo de almacenamiento en caché como una respuesta de redirección. El nodo de asignación y el nodo de localización son dos papeles de una entidad de búsqueda/decisión de almacenamiento en caché y son complementarios. Se pueden incluir en la misma entidad y se pueden incluir en entidades separadas también. Incluso si un contenido aún no está colocado en un nodo de almacenamiento en caché puede haber todavía un contador de ganancia para ese contenido en el nodo de almacenamiento en caché
para hacer posible, después de un cierto período de tiempo, comparar la ganancia de almacenamiento de un contenido particular en el nodo de almacenamiento en caché con la ganancia de almacenamiento de otro contenido en el mismo nodo de almacenamiento en caché. El hecho de que se recopilen primero estadísticas antes de que se tome la decisión de almacenamiento en caché hace posible hacer cálculos más avanzados sobre el valor de almacenamiento en caché de un contenido particular. Esto produce menor riesgo de expulsar contenidos que son valiosos y es posible evitar una transferencia de datos y escritura en la caché innecesarias.
En este método de almacenamiento en caché diferido, las estadísticas con respecto a las peticiones de contenidos se mantienen preferiblemente por un nodo de asignación. Para cada petición de un una cierta parte de contenido, se aumenta la ganancia de almacenamiento de ese contenido en todos los contadores relevantes para todos los nodos de almacenamiento en caché relevantes. La cantidad real a aumentar por cada contador se determina por una cierta función de ganancia que se puede interpretar de muchas maneras dependiendo de qué le gustaría optimizar al sistema. La función de ganancia por ejemplo podría tener en cuenta la información de la topología para mejorar la utilización de la red o mediciones de ancho de banda/latencia para disminuir la latencia de los clientes. Cuando se toma una decisión de almacenamiento en caché la ganancia de almacenamiento de un fichero particular se puede comparar con la ganancia almacenamiento de otros ficheros en la caché particular. Los ficheros más óptimos, según las estadísticas recopiladas, se almacenan. La forma más simple de función de ganancia sería expresar meramente que la ganancia para almacenar en caché una parte particular de contenido es igual al número de peticiones de la parte particular de contenido, es decir solamente basar la función de ganancia en la demanda de contenido. Una alternativa preferida es expresar que la ganancia es igual al número de peticiones por el coste para recuperar el contenido. De esta manera, el contenido que se trae desde una ubicación alejada ganará prioridad sobre contenido almacenado en caché en los nodos de almacenamiento en caché ubicados cercanos.
En la presente invención, hay de esta manera dos factores principales que se usan para determinar si va a ser almacenado en caché o no un contenido: el factor de coste y el factor de demanda de contenido, es decir el número de peticiones. Señalar no obstante que se pueden usar factores adicionales, por ejemplo un factor de negocio y/o un factor abstracto.
El factor de coste es dependiente de la topología física de la red y también de las condiciones de los enlaces que conectan los diversos nodos de almacenamiento en caché. En una red de acceso, se usa información sobre el ancho de banda disponible en los enlaces para determinar el coste. El factor de coste se puede configurar dinámicamente para reaccionar al entorno de red dinámico. El modelo de Internet, se usa preferiblemente el SLA de coste de tránsito. En un escenario Internet, se pueden hacer dos planteamientos básicos para recopilar más información acerca de la red física: sondeo activo y pasivo. Un sondeo activo ocurre cuando los nodos de almacenamiento en caché envían paquetes unos a otros y monitorizan ciertos parámetros tales como ancho de banda, fluctuación, retardo, número de saltos y pérdida de paquetes media. Un sondeo pasivo aprovecha los paquetes que están siendo enviados entre los nodos de almacenamiento en caché y extrae información de los paquetes.
El factor de demanda de contenido se basa en la información observada y esperada. La información observada se deriva de una medida de popularidad del contenido basada en una medición en tiempo real de la demanda del contenido. Según se hacen más peticiones de usuario de un contenido particular, lo más probable es que el contenido sea almacenado en caché por un conjunto de nodos de almacenamiento en caché. La información esperada se usa para predecir qué nodos de almacenamiento en caché llenar con qué contenido antes de que el contenido haya sido solicitado realmente por el usuario. La información esperada puede tener origen en el conocimiento de que un contenido particular será de demanda alta, por ejemplo el lanzamiento de una superproducción de Hollywood. El historial de los hábitos de visionado del usuario se puede usar también para crear esta información. El contenido que se espera sea solicitado se puede almacenar previamente en caché en nodos de almacenamiento en caché estratégicos cercanos a los usuarios potenciales que pueden solicitar el contenido.
El factor de negocio es una decisión de almacenamiento en caché que se basa en pagos de un proveedor de contenidos o servicios. El interés de los proveedores de contenidos/servicios es proporcionar contenido almacenado en caché a ser situado más cerca al espectador. Este almacenamiento en caché más localizado disminuye el retardo y la fluctuación, mejorando por ello la experiencia del espectador. En particular, la distribución de contenidos en HD (difusión en forma continua o descarga) está afectada por la ubicación del contenido. Para contenido de difusión en forma continua, el problema es la experiencia de visionado degradada basada en la pérdida de paquetes. Para descarga, es el tiempo que está afectado entre la petición de contenido y el estado del sistema preparado para reproducir.
El factor abstracto determina el nivel de almacenamiento en caché del contenido si se usa un método de almacenamiento en caché jerárquico. Como el nombre implica, éste es un concepto abstracto. Se usa para tomar una decisión de si el contenido se debería mover más cerca del usuario o mover lejos del usuario hacia la cabecera con el servidor de cola larga (o auxiliar).
Todos o algunos de estos factores se pueden tener en cuenta y expresar en la forma adecuada para determinar la función de ganancia y de esta manera controlar una entidad de decisión de almacenamiento en caché tal como un nodo de asignación. Según lo anterior, se puede almacenar en caché contenido solamente si hay un valor definitivo
en almacenarlo en caché. En otras palabras, un contenido con una frecuencia baja de peticiones con respecto a otro contenido solicitado en el área de cobertura del nodo de almacenamiento en caché no será almacenado en caché. Con referencia de nuevo la Figura 1, en caso que el contenido 108 se solicite por el nodo de almacenamiento en caché 104, el nodo de asignación 120 puede determinar si el contenido 108 es adecuado para ser almacenado en caché en un nodo de almacenamiento en caché 104 o meramente traído desde uno de los nodos de almacenamiento en caché 102, 103 o 105 que contienen el contenido. El nodo de asignación 120 puede basar esta decisión en la demanda del contenido y el coste, pero por ejemplo también en el factor abstracto y de negocio.
La Figura 2 es un diagrama de bloques simplificado de una red de entrega de contenidos 100. La CDN 100 representada en la Figura 2 incluye una red de una red troncal 14, una red central 16, una red de agregación 18, una red de derivación 20 que proporciona comunicaciones entre los servicios 22 y los terminales 24. La red troncal 14 incluye una pluralidad de encaminadores troncales 26. Entre la red troncal y la red central 16 está una pasarela de frontera 28 que incluye los emplazamientos de borde de frontera 30. La red central 16 incluye una pluralidad de encaminadores centrales 32. Entre la red central 16 y la red de agregación 18 está una pasarela de borde de acceso 34 y los emplazamientos de borde de acceso 36. La red de agregación 18 incluye una pluralidad de conmutadores de agregación 38. Entre la red agregación y la red de derivación están los emplazamientos de nodo de acceso 40, tales como un Multiplexor de Acceso de Línea de Abonado Digital (DSLAM) 42 y una pasarela 44. La red de derivación 20 puede incluir los emplazamientos de armario 46. Los servicios pueden incluir una amplia variedad de nodos, tal como un ordenador personal 50, un servidor 52, etc. Los terminales 24 puede incluir estaciones móviles 54, ordenadores personales 56, etc.
La red 100 ilustrada en la Figura 2 utiliza una pluralidad de almacenamientos en caché jerárquicos para almacenar contenido. La parte superior ilustra una pluralidad de nodos de almacenamiento en caché en diferentes niveles de la CDN 100. Como se representa la Figura 2, la pluralidad de nodos de almacenamiento en caché incluye un primer nivel (raíz) 60 de almacenamientos en caché situados más cercanos a los servicios. A continuación, entre la red central 16 y la red de agregación 18 está un segundo nivel 62 de nodos de almacenamiento en caché. Entre la red de agregación y la red de derivación 16 esta un tercer nivel 64 de nodos de almacenamiento en caché. En el nivel de terminales está situado un cuarto nivel 66 de nodos de almacenamiento en caché. Aunque la Figura 2 representa un sistema completamente distribuido, la presente invención también se puede aplicar a un modelo de red solamente de equipos. Además, aunque se muestran varios tipos diferentes de redes y nodos, se debería entender que la presente invención se puede implementar con cualquier número y tipo de nodos y redes.
En la mayoría de las redes de banda ancha típicas, la red se categoriza normalmente en la red de acceso, la red de agregación o metropolitana y finalmente la red central. Desde una perspectiva puramente de tráfico, la red de acceso es normalmente la más congestionada y tiene normalmente un enlace asimétrico a la red agregación. Los nodos en la red agregación normalmente tienen un ancho de banda de reserva significativo en los enlaces entre ellos que probablemente con un nodo en la red central que está más congestionada. Además, cualquier tráfico generado desde la red de acceso/agregación hacia la central es normalmente más costoso que el tráfico terminado dentro de la red de agregación. Esto es debido a que el coste de los enlaces hacia la central normalmente es más costoso que los enlaces de agregación.
Un sistema de almacenamiento en caché que se superpone a tal red colocará normalmente sus nodos dealmacenamiento en caché en el borde de la red de agregación. Éste es un lugar ideal ya que está suficientemente cerca de los usuarios finales y al mismo tiempo tiene buen ancho de banda simétrico entre los nodos de almacenamiento en caché también. El sistema almacenamiento en caché intentará terminar las peticiones de contenido en el límite de la red de agregación e impedirlo que sea reenviado hacia arriba. No obstante, un error de almacenamiento en caché en tal sistema causará que una petición sea reenviada hacia arriba a un nodo de almacenamiento en caché de nivel más alto o servidor de origen (es decir, moverse más hacia el centro de la red). Esto introducirá tráfico adicional en los enlaces que van hacia arriba.
La arquitectura CDN según la presente invención tiene la capacidad de recoger información de la red entera. Específicamente el nodo de asignación, es decir el nodo responsable de redirigir clientes a los almacenamientos en caché adecuados, está recogiendo estadísticas acerca de las peticiones que se reciben sobre un contenido particular. Él usa esta información para decidir cuál es el mejor contenido a ser almacenado en caché en un nodo de almacenamiento en caché dado, o viceversa, el mejor nodo de almacenamiento en caché para almacenar en caché un contenido particular. Esto se puede hacer dando periódicamente el conjunto entero de contenido que se sirve por el nodo de almacenamiento en caché. Un efecto secundario de este diseño es que un nodo de asignación tiene una imagen global de todas las peticiones de un contenido particular. Esto permite capturar la demanda regional/global de una parte particular de contenido. La presente invención proporciona un método al nodo de asignación para usar esta información en sus decisiones de almacenamiento en caché y de esta manera reducir posiblemente el tráfico central y de esta manera ahorrar costes de comunicación. La presente invención proporciona un método al nodo de asignación para proponer nodos de almacenamiento en caché para almacenar en caché contenido incluso aunque no haya demanda local relativa de él. Esto es debido a que este objeto es popular a un nivel regional y hay un valor para almacenarlo en caché en una región.
Para identificar la demanda de contenido en una región, debería haber formas para definir las regiones. Un método para definir y usar las estadísticas recogidas por el nodo de asignación que distribuye contenido en la CDN se
describirá más adelante con referencia a la Figura 3. El esquema comienza con el paso 305 en el que se recoge información con respecto al coste entre los nodos de almacenamiento en caché en la red. Una forma de hacer esto es usando una tabla de distancia, también llamada tabla de coste, que es una tabla que comprende una matriz de entradas cada una que mantiene la distancia/coste entre todos los pares de nodos de almacenamiento en caché. En el paso 310 la información recogida en el paso 305 se usa para definir los nodos virtuales. Un nodo virtual se puede ver como una representación lógica de uno o más nodos de almacenamiento en caché. Preferiblemente los nodos de almacenamiento en caché representados por el nodo virtual se eligen en base al coste de comunicación entre estos nodos de almacenamiento en caché. Por ejemplo se eligen todos los nodos de almacenamiento en caché que están dentro de un cierto coste de comunicación, es decir que tienen un coste de comunicación interno que está por debajo de un cierto valor umbral. De esta manera un nodo virtual puede representar una multitud de nodos de almacenamiento en caché o sólo unos pocos nodos almacenamiento caché. El valor del coste de comunicación interno para decidir qué nodos de almacenamiento en caché constituyen un nodo virtual puede variar, por ejemplo dependiendo de lo densa que es la población nodos de almacenamiento en caché dentro de una región específica y/o el tamaño de un una red de agregación específica. Por ejemplo el valor para el coste de comunicación interno que tiene que estar por debajo de un umbral a fin de que los nodos de almacenamiento en caché sean representados por el mismo nodo virtual, se puede modificar dinámicamente en base a la región y/o proximidad geográfica de los nodos almacenamiento en caché y/o criterios técnicos, tales como potencia y capacidad de procesamiento, así como en base a la demanda de contenidos a través de una región. Por ejemplo en una cierta región el valor umbral se puede fijar de manera que todos o una cantidad adecuada de nodos de almacenamiento en caché dentro de la región se puedan representar por el nodo virtual.
Según una realización de la invención se pueden definir nodos virtuales adicionales que comprenden una pluralidad de nodos virtuales como se describió anteriormente. Estos nodos virtuales adicionales se pueden ver como que representan estos nodos virtuales los cuales a su vez están representando un conjunto de nodos de almacenamiento en caché. En este sentido los nodos virtuales adicionales tienen una visión incluso mejor de la situación de almacenamiento en caché en los nodos de almacenamiento en caché que su nodos virtuales representan. Por ejemplo un nodo virtual adicional puede determinar almacenar en caché contenido en un nodo de almacenamiento en caché representado por un nodo virtual diferente que en un nodo de almacenamiento en caché incluido en el nodo virtual desde el que se originó una petición de contenido. La razón para esto puede ser por ejemplo las pocas peticiones de contenido de origen o espacio de almacenamiento en caché libre.
En el paso 315, el nodo virtual recogerá y mantendrá estadísticas con relación al contenido almacenado en caché en los nodos de almacenamiento en caché representados por el nodo virtual. También puede recoger y mantener preferiblemente estadísticas con relación al contenido solicitado, pero no almacenado en caché en los nodos de almacenamiento en caché representados por el nodo virtual. Como el nodo virtual no es un nodo real, está manteniendo básicamente una suma total de todo el contenido solicitado por los nodos de almacenamiento en caché que está representando. De esta manera, puede ver la demanda regional de contenido en lugar de la demanda local. En el paso 320 se determina si un contenido solicitado desde uno de los nodos de almacenamiento en caché en el nodo virtual va a ser almacenado en caché o no en el nodo virtual, es decir en uno de los nodos de almacenamiento en caché. Y si se determina que el contenido va a ser almacenado en caché en el nodo virtual, el contenido se puede hacer que lo haga así en el paso 325 enviando una propuesta al nodo de almacenamiento en caché adecuado. En qué nodo de almacenamiento en caché en el nodo virtual va a ser almacenado en caché el contenido se puede seleccionar también arbitrariamente; o en el nodo de almacenamiento en caché que solicitó el contenido particular; o en el nodo de almacenamiento en caché que tiene el número más alto de peticiones del contenido particular. Una alternativa es tener los nodos de almacenamiento en caché en un nodo virtual para compartir un porcentaje del espacio en caché del nodo virtual. De esta manera, aunque de manera lógica el almacenamiento en caché está ocurriendo en el nodo virtual, en realidad se almacena en caché por un nodo de almacenamiento en caché real.
La Figura 4 ilustra una red que comprende una pluralidad de nodos de almacenamiento en caché 401-410 donde se han definido los nodos virtuales 420, 430, 440. El nodo virtual 420 representa de manera lógica un conjunto de nodos de almacenamiento en caché 401-406, el nodo virtual 430 representa los nodos de almacenamiento en caché 407-409 y finalmente el nodo virtual 440 representa el nodo de almacenamiento en caché 410. El nodo virtual 450 representa los tres nodos virtuales 420, 430 y 440. Todos los nodos de almacenamiento en caché 401-410 tienen un coste de camino más bajo entre sí y todos los nodos de almacenamiento en caché están conectados por los enlaces 411, 412. Dentro del nodo virtual 420 el par de nodos de almacenamiento en caché que tienen el coste de camino más bajo más alto entre ellos tienen un coste de camino más bajo que está por debajo del valor umbral que se fija como un criterio a ser incluido en el nodo virtual 420. Los enlaces internos 411 dentro de los nodos virtuales son preferiblemente enlaces de coste bajo, mientras que los inter enlaces 412 entre los nodos virtuales definidos son preferiblemente enlaces de coste alto. No obstante, los nodos virtuales 420, 430, 440 se pueden definir con mayor sensibilidad, por lo cual el coste para los enlaces 412 sería meramente ligeramente más grande que el coste para los enlaces 411. El nodo virtual 450 se puede definir de una manera similar en base al coste de camino para los enlaces 412 entre los nodos virtuales 420, 430 y 440. Todos los nodos virtuales que tienen un coste inter enlace 412 que es menor que un cierto valor (presumiblemente mucho más alto que el coste de enlaces internos 411) se pueden incluir en un nodo virtual adicional 450, que se puede ver como un nodo virtual dispuesto en una capa más alta. Esto puede continuar con nodos virtuales adicionales que están dispuestos en capas más altas hasta una
estructura en árbol con nodos virtuales que están dispuestos en capas superiores y con los nodos de almacenamiento en caché que están dispuestos en la capa más baja. Cuando se determina el coste para los enlaces 412 entre un primer y un segundo nodo virtual esto se puede hacer por ejemplo eligiendo el coste entre un nodo de almacenamiento en caché arbitrario en el primer nodo virtual y un nodo de almacenamiento en caché arbitrario en el segundo nodo virtual. Otra alternativa es elegir el coste más bajo entre los nodos de almacenamiento en caché en el primer nodo virtual y los nodos de almacenamiento en caché en el segundo nodo virtual. Una alternativa adicional es determinar una distancia media entre los nodos de almacenamiento en caché en un primer nodo virtual y los nodos de almacenamiento en caché en un segundo nodo virtual. El mismo método se puede aplicar para determinar los costes entre nodos virtuales en capas más altas.
La Figura 5 es un diagrama de flujo que ilustra los pasos, realizados preferiblemente por un nodo de asignación, de distribución de contenido en una CDN según las enseñanzas de la presente invención. El esquema comienza en el paso 505 cuando un cliente envía una petición de un contenido particular. La petición se reenvía a un nodo de localización en el paso 510. El nodo de localización preferiblemente mantiene la información con respecto a todos los nodos de almacenamiento en caché en la red y al menos algo de su contenido. En una CDN puede haber una pluralidad de nodos de localización que contienen información de diferentes categorías de contenido. Un primer nodo de localización puede por ejemplo contener información de en qué nodos de almacenamiento en caché están almacenadas en caché películas, mientras que un segundo nodo de localización puede contener información de en qué nodos de almacenamiento en caché están almacenados en caché juegos, etc. El nodo de localización comprobará si el contenido se puede encontrar en cualquiera de los nodos de almacenamiento en caché, y si no redirigir la petición al nodo de localización adecuado. Una vez que la petición ha alcanzado el nodo de localización adecuado, el contenido solicitado se recuperará o traerá en el paso 515. El paso 520 un nodo de asignación, que puede ser la misma entidad que el nodo de localización, puede determinar si el contenido solicitado también se debería almacenar en caché en el nodo de almacenamiento en caché que envió la petición o si se debería mover desde su nodo de almacenamiento en caché presente o si solamente se debería traer sin que sea además almacenado en caché o si se debería almacenar en caché en un nodo de almacenamiento en caché diferente. El contenido también se puede mover desde un nodo de almacenamiento en caché representado por el nodo virtual a un nodo de almacenamiento en caché diferente representado por el nodo virtual. La decisión se puede enviar entonces a los nodos de almacenamiento en caché adecuados en el paso 525 y los nodos de almacenamiento en caché pueden devolver una confirmación al nodo de asignación en el paso 530. La decisión y/o migración de contenido se puede realizar según la estrategia de almacenamiento en caché diferida mencionada anteriormente.
La Figura 6 ilustra un ejemplo de lo que puede parecer una entrada para un nodo virtual en un nodo de asignación. El nodo virtual 430 en la Figura 4 se elige como ejemplo. En su versión más simple el nodo virtual meramente incluye entradas para los nodos de almacenamiento en caché 407-409, el contenido que se almacena en caché en cada uno de estos nodos y el número de peticiones recibidas para este contenido. También se incluye para cada contenido información preferiblemente con respecto al coste más bajo para recuperar el contenido desde otros nodos de almacenamiento en caché. Preferiblemente, la misma información se mantiene en el nodo para un contenido que no está almacenado en caché en el nodo, pero para el que se han recibido peticiones de contenido.
La Figura 7 ilustra esquemáticamente una entidad de decisión de almacenamiento en caché 700, la cual preferiblemente es un nodo de asignación, según una realización de la presente invención. El nodo de asignación 700 incluye los medios 710 para definir un nodo virtual que representa de manera lógica un conjunto de nodos de almacenamiento en caché, en donde el conjunto de nodos de almacenamiento en caché está definido en base a un coste de comunicación interno entre los nodos de almacenamiento en caché, según las realizaciones de la presente invención. El nodo asignación 700 además incluye un receptor 720 para recibir peticiones de contenido desde los nodos de almacenamiento en caché y clientes en la red y un contador 730 para contar todas las peticiones de contenido desde todos los nodos de almacenamiento en caché. Todas las estadísticas recopiladas y la información con respecto a los costes entre los nodos de almacenamiento en caché se almacenan preferiblemente en la memoria 740. Un procesador o una unidad central de proceso (CPU) 750 se incluye, entre otras cosas, para determinar, en base a las estadísticas recopiladas desde todos los nodos de almacenamiento en caché representados por el nodo virtual, si un contenido específico va a ser almacenado en caché en el nodo virtual o no. Los medios de definición 710 están estrechamente vinculados con el procesador 750 y también se pueden incluir en el procesador. El nodo de asignación 700 además incluye un transmisor 720 para hacer que el contenido solicitado sea almacenado en caché en un nodo de almacenamiento en caché por ejemplo enviando una propuesta al nodo de almacenamiento en caché.
La presente invención proporciona un número de ventajas sobre los sistemas de la técnica anterior para almacenar en caché/distribuir contenido en una red. Tomando una decisión basada en estadísticas con respecto a las peticiones de contenido, y preferiblemente el coste para recuperar el contenido, produce una alta probabilidad de tomar una buena decisión de almacenamiento en caché, lo cual produce ahorros de tráfico. Recogiendo las estadísticas de cada nodo de almacenamiento en caché en un conjunto de nodos de almacenamiento en caché produce una visión más general de la situación de almacenamiento en caché en una región y una mejor distribución del contenido que además reduce tráfico de red, y tráfico central en particular.
La presente invención puede por supuesto, ser llevada a cabo en otras formas específicas distintas de aquéllas expuestas en la presente memoria sin apartarse de las características esenciales de la invención. Las realizaciones presentes tienen, por lo tanto, que ser consideradas en todos los aspectos como ilustrativas y no restrictivas y todos los cambios que quedan dentro del significado y el intervalo de equivalencia de las reivindicaciones adjuntas se pretende que esté abarcado dentro de la misma.

Claims (12)

  1. REIVINDICACIONES
    1. Un método para almacenar en caché contenido en una red de entrega de contenidos (CDN) que comprende una pluralidad de nodos de almacenamiento en caché, los nodos de almacenamiento en caché que están conectados con enlaces de comunicación que tienen un coste de comunicación a otros nodos de almacenamiento en caché en la CDN, el método que comprende los siguientes pasos:
    -
    definir (310) un nodo virtual que representa de manera lógica un conjunto de nodos de almacenamiento en caché, en donde el conjunto de nodos de almacenamiento en caché se define en base a un coste de comunicación interno entre los nodos de almacenamiento en caché;
    -
    recoger (315) las estadísticas con respecto a peticiones de contenido en cada uno de los nodos de almacenamiento en caché representados por el nodo virtual;
    -
    determinar (320), en base a las estadísticas recopiladas de todos los nodos de almacenamiento en caché representados por el nodo virtual, si va a ser almacenado en caché o no un contenido específico en el nodo virtual; y, si se determina almacenar en caché dicho contenido específico;
    -
    hacer (325) que el contenido específico sea almacenado en caché en uno o más de los nodos de almacenamiento en caché representados por el nodo virtual.
  2. 2.
    El método según la reivindicación 1, en donde el método se realiza por una entidad de decisión de almacenamiento en caché, tal como un nodo de asignación.
  3. 3.
    El método según cualquiera de las reivindicaciones 1-2, en donde la decisión de almacenamiento en caché se determina además en base a un coste de comunicación para recuperar el contenido específico.
  4. 4.
    El método según cualquiera de las reivindicaciones 1-3, en donde el contenido solicitado se almacena en caché en el nodo de almacenamiento en caché que recibió la mayoría de peticiones del contenido solicitado.
  5. 5.
    El método según cualquiera de las reivindicaciones 1-4, que además incluye el paso de mover un contenido desde un nodo de almacenamiento en caché representado por el nodo virtual a un nodo de almacenamiento en caché diferente representado por el nodo virtual.
  6. 6.
    El método según cualquiera de las reivindicaciones 1-4, que además incluye el paso de almacenar en caché un contenido en una pluralidad de nodos de almacenamiento en caché representados por el nodo virtual.
  7. 7.
    El método según cualquiera de las reivindicaciones 1-6, que además incluye el paso de definir nodos virtuales adicionales que representan de manera lógica un conjunto de nodos virtuales.
  8. 8.
    El método según la reivindicación 7, que además incluye los pasos de:
    -
    determinar, en base a las estadísticas recopiladas de todos los nodos de almacenamiento en caché representados por los nodos virtuales representados por el nodo virtual adicional, si va a ser almacenado en caché o no un contenido específico en el nodo virtual adicional; y, si se determina almacenar en caché dicho contenido específico;
    -
    hacer que el contenido específico sea almacenado en caché en uno o más de los nodos de almacenamiento en caché representados por los nodos virtuales representados por el nodo virtual adicional.
  9. 9. Una entidad de decisión de almacenamiento en caché (700) para almacenar contenido en una red de entrega de contenidos que tiene una pluralidad de nodos de almacenamiento en caché de contenido a los que se distribuye contenido, la entidad que comprende:
    -
    medios (710) para definir un conjunto de nodos de almacenamiento en caché en base a un coste de comunicación interno entre los nodos de almacenamiento en caché y para definir un nodo virtual que representa de manera lógica dicho conjunto de nodos de almacenamiento en caché;
    -
    un contador (730) para recoger las estadísticas con respecto a las peticiones de contenido en cada uno de los nodos de almacenamiento en caché representados por el nodo virtual;
    -
    un procesador (750) para determinar, en base a las estadísticas recopiladas de todos los nodos de almacenamiento en caché representados por el nodo virtual, si va a ser almacenado en caché o no un contenido específico en el nodo virtual; y
    -
    un transmisor (720) para hacer que un contenido específico sea almacenado en caché en uno o más de los nodos de almacenamiento en caché representados por el nodo virtual.
  10. 10.
    La entidad de decisión de almacenamiento en caché según la reivindicación 9, en donde la entidad de decisión de almacenamiento en caché es un nodo de asignación.
  11. 11.
    La entidad de decisión de almacenamiento en caché según cualquiera de las reivindicaciones 9 o 10, en donde la memoria (740) está configurada para almacenar información con respecto a los nodos de almacenamiento en caché representados por un nodo virtual, y para cada nodo de almacenamiento en caché representado por el nodo virtual, almacenar información con respecto a:
    5 cada contenido almacenado en caché en el nodo de almacenamiento en caché;
    el coste menor para recuperar cada contenido almacenado en caché en el nodo de almacenamiento en caché desde otro nodo en la red; y
    el número de peticiones recibidas de cada contenido.
  12. 12. La entidad de decisión de almacenamiento en caché según la reivindicación 11, en donde la memoria (740) está
    10 configurada además, para cada nodo de almacenamiento en caché representado por el nodo virtual, para almacenar información con respecto a:
    el contenido no almacenado en caché en el nodo de almacenamiento en caché, pero para el que se han recibido peticiones;
    el coste menor para recuperar dicho contenido no almacenado en caché en el nodo de almacenamiento en caché 15 desde otro nodo en la red; y
    el número de peticiones recibidas de dicho contenido no almacenado en caché en el nodo de almacenamiento en caché.
ES09845607.2T 2009-06-03 2009-06-03 Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos Active ES2441968T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/SE2009/050658 WO2010140938A1 (en) 2009-06-03 2009-06-03 Method and node for distributing electronic content in a content distribution network

Publications (1)

Publication Number Publication Date
ES2441968T3 true ES2441968T3 (es) 2014-02-07

Family

ID=43297926

Family Applications (1)

Application Number Title Priority Date Filing Date
ES09845607.2T Active ES2441968T3 (es) 2009-06-03 2009-06-03 Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos

Country Status (4)

Country Link
US (1) US9065809B2 (es)
EP (2) EP2438742B1 (es)
ES (1) ES2441968T3 (es)
WO (1) WO2010140938A1 (es)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11076189B2 (en) 2009-03-30 2021-07-27 Time Warner Cable Enterprises Llc Personal media channel apparatus and methods
US9215423B2 (en) 2009-03-30 2015-12-15 Time Warner Cable Enterprises Llc Recommendation engine apparatus and methods
ES2441968T3 (es) * 2009-06-03 2014-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos
US8813124B2 (en) 2009-07-15 2014-08-19 Time Warner Cable Enterprises Llc Methods and apparatus for targeted secondary content insertion
US8701138B2 (en) 2010-04-23 2014-04-15 Time Warner Cable Enterprises Llc Zone control methods and apparatus
US20140032702A1 (en) * 2011-04-22 2014-01-30 Nec Corporation Content distribution system, control apparatus, and content distribution method
WO2012144584A1 (ja) * 2011-04-22 2012-10-26 日本電気株式会社 コンテンツ配信システム、制御装置およびコンテンツ配信方法
JP5892164B2 (ja) * 2011-06-14 2016-03-23 日本電気株式会社 コンテンツ配信システム、制御装置およびコンテンツ配信方法
CN104025553B (zh) * 2011-07-14 2018-04-10 瑞典爱立信有限公司 移动云加速器中的优化引擎及相关方法
WO2012163055A1 (zh) * 2011-11-18 2012-12-06 华为技术有限公司 一种媒体内容的传输方法以及相关装置
US9426123B2 (en) 2012-02-23 2016-08-23 Time Warner Cable Enterprises Llc Apparatus and methods for content distribution to packet-enabled devices via a network bridge
US20130227283A1 (en) * 2012-02-23 2013-08-29 Louis Williamson Apparatus and methods for providing content to an ip-enabled device in a content distribution network
US8838149B2 (en) 2012-04-02 2014-09-16 Time Warner Cable Enterprises Llc Apparatus and methods for ensuring delivery of geographically relevant content
US9467723B2 (en) 2012-04-04 2016-10-11 Time Warner Cable Enterprises Llc Apparatus and methods for automated highlight reel creation in a content delivery network
US9479552B2 (en) * 2012-05-30 2016-10-25 Verizon Patent And Licensing, Inc. Recommender system for content delivery networks
WO2013189038A1 (zh) * 2012-06-20 2013-12-27 华为技术有限公司 内容处理的方法和网络侧设备
US8612450B1 (en) 2012-11-20 2013-12-17 Limelight Networks, Inc. Content tagging using multi-node hierarchical content assignments
US9722882B2 (en) * 2012-12-13 2017-08-01 Level 3 Communications, Llc Devices and methods supporting content delivery with adaptation services with provisioning
US9037791B2 (en) 2013-01-22 2015-05-19 International Business Machines Corporation Tiered caching and migration in differing granularities
US9712412B2 (en) * 2013-01-30 2017-07-18 Cisco Technology, Inc. Aggregating status to be used for selecting a content delivery network
US9369541B2 (en) * 2013-03-14 2016-06-14 Massachusetts Institute Of Technology Method and apparatus for implementing distributed content caching in a content delivery network
EP3053055B1 (en) * 2013-09-30 2018-07-18 Northeastern University System and method for joint dynamic forwarding and caching in content distribution networks
WO2015104583A1 (en) * 2014-01-08 2015-07-16 Telefonaktiebolaget L M Ericsson (Publ) Method, node and distributed system for configuring a network of cdn caching nodes
US20150271072A1 (en) * 2014-03-24 2015-09-24 Cisco Technology, Inc. Method and apparatus for rate controlled content streaming from cache
EP2940967B1 (en) * 2014-04-30 2018-02-14 Alcatel Lucent Content-centric networking
US20160204916A1 (en) * 2015-01-08 2016-07-14 Ngoc-Dung DAO System and method for joint optimization of source selection and traffic engineering
US10116676B2 (en) 2015-02-13 2018-10-30 Time Warner Cable Enterprises Llc Apparatus and methods for data collection, analysis and service modification based on online activity
US10298713B2 (en) * 2015-03-30 2019-05-21 Huawei Technologies Co., Ltd. Distributed content discovery for in-network caching
US11212593B2 (en) 2016-09-27 2021-12-28 Time Warner Cable Enterprises Llc Apparatus and methods for automated secondary content management in a digital network
US10652128B2 (en) 2017-07-13 2020-05-12 Avago Technologies International Sales Pte. Limited Apparatus and method for performance measurements using local timestamp and sequency number insertion at intermediate nodes
WO2019217380A1 (en) * 2018-05-08 2019-11-14 Northeastern University Distributing cached content in a network
WO2021003422A1 (en) 2019-07-02 2021-01-07 Northeastern University Network and method for servicing a computation request
CN110990483B (zh) * 2019-11-26 2023-05-30 上海莉莉丝科技股份有限公司 分布式缓存中的缓存节点的数据访问和控制方法及系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6167438A (en) * 1997-05-22 2000-12-26 Trustees Of Boston University Method and system for distributed caching, prefetching and replication
US6317778B1 (en) * 1998-11-23 2001-11-13 International Business Machines Corporation System and method for replacement and duplication of objects in a cache
FR2788352B1 (fr) * 1999-01-13 2001-11-02 France Telecom Interfonctionnement et systeme de caches cooperants et caches repartis
US6502175B1 (en) * 1999-03-31 2002-12-31 Lucent Technologies Inc. Method and apparatus for locating caches in a network to optimize performance
US7219160B1 (en) * 1999-08-27 2007-05-15 At&T Corp. Method for fast network-aware clustering
JP4146720B2 (ja) * 2000-08-04 2008-09-10 アバイア テクノロジー コーポレーション コネクションオリエンテッドトランザクションにおけるurlオブジェクトのインテリジェントな需要に基づく認識
US7117262B2 (en) * 2000-11-01 2006-10-03 Inktomi Corporation Cooperative management of distributed network caches
US20020184403A1 (en) * 2001-04-06 2002-12-05 Dahlin Michael D. Methods for near-optimal bandwidth-constrained placement in a wide-area network
US6996674B2 (en) * 2001-05-07 2006-02-07 International Business Machines Corporation Method and apparatus for a global cache directory in a storage cluster
US20030115346A1 (en) * 2001-12-13 2003-06-19 Mchenry Stephen T. Multi-proxy network edge cache system and methods
JP4017065B2 (ja) 2002-03-25 2007-12-05 学校法人金沢工業大学 キャッシュ制御方法およびキャッシュシステム
US6868439B2 (en) * 2002-04-04 2005-03-15 Hewlett-Packard Development Company, L.P. System and method for supervising use of shared storage by multiple caching servers physically connected through a switching router to said shared storage via a robust high speed connection
US7076544B2 (en) 2002-04-08 2006-07-11 Microsoft Corporation Caching techniques for streaming media
US20040167981A1 (en) * 2003-02-25 2004-08-26 Douglas Christopher Paul Method and system for monitoring relationships between content devices in a content delivery network
EP2274676A1 (en) * 2008-01-31 2011-01-19 Oracle International Corporation System and method for transactional cache
ES2441968T3 (es) * 2009-06-03 2014-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos
US8443376B2 (en) * 2010-06-01 2013-05-14 Microsoft Corporation Hypervisor scheduler
GB201116737D0 (en) * 2011-09-28 2011-11-09 Ericsson Telefon Ab L M Caching in mobile networks
US9479552B2 (en) * 2012-05-30 2016-10-25 Verizon Patent And Licensing, Inc. Recommender system for content delivery networks

Also Published As

Publication number Publication date
US20120072526A1 (en) 2012-03-22
EP2438742A1 (en) 2012-04-11
EP2704402B1 (en) 2015-08-12
WO2010140938A1 (en) 2010-12-09
EP2438742B1 (en) 2013-12-18
US9065809B2 (en) 2015-06-23
EP2438742A4 (en) 2013-01-09
EP2704402A1 (en) 2014-03-05

Similar Documents

Publication Publication Date Title
ES2441968T3 (es) Método y nodo para distribuir contenido electrónico en una red de distribución de contenidos
KR101567385B1 (ko) 콘텐츠 중심 네트워크에 대한 협동 캐싱 방법
Suksomboon et al. PopCache: Cache more or less based on content popularity for information-centric networking
ES2833042T3 (es) Facturación en redes de telecomunicaciones
US8537835B2 (en) Methods and apparatus for self-organized caching in a content delivery network
US20090254661A1 (en) Handling long-tail content in a content delivery network (cdn)
CN102647357B (zh) 一种处理内容路由方法及装置
US20150172354A1 (en) Content-delivery transfer for cooperative delivery systems
KR20140067881A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
US20150172135A1 (en) Dynamic bandwidth allocation for cooperative delivery systems
Lee et al. Cache capacity-aware CCN: Selective caching and cache-aware routing
JP5880547B2 (ja) コンテンツ配信システム、制御装置およびコンテンツ配信方法
CN103780482B (zh) 一种获取内容方法及用户设备、缓存节点
Hu et al. Orchestrating caching, transcoding and request routing for adaptive video streaming over icn
Nguyen et al. Adaptive caching for beneficial content distribution in information-centric networking
US8769047B1 (en) Delivery control for cooperative delivery systems
Siris et al. Exploiting mobility prediction for mobility & popularity caching and DASH adaptation
KR20130057232A (ko) 에지 노드를 포함한 컨텐츠 분배 네트워크 시스템 및 에지 노드의 컨텐츠 캐싱 및 관리방법
Noh et al. Progressive caching system for video streaming services over content centric network
Abuhadra et al. Proactive in-network caching for mobile on-demand video streaming
Mishra et al. A review on content centric networking and caching strategies
Yan et al. Assessing the energy consumption of 5G wireless edge caching
Hsu et al. DiffServ‐based bandwidth‐constrained anycast routing in a mobile IPv6 network
Wei et al. A novel dynamic adaptive video streaming solution in content-centric mobile network
Khan et al. Lochip: A distributed collaborative cache management scheme at the network edge