KR20100084179A - Method for caching content data packages in caching nodes - Google Patents

Method for caching content data packages in caching nodes Download PDF

Info

Publication number
KR20100084179A
KR20100084179A KR1020107011472A KR20107011472A KR20100084179A KR 20100084179 A KR20100084179 A KR 20100084179A KR 1020107011472 A KR1020107011472 A KR 1020107011472A KR 20107011472 A KR20107011472 A KR 20107011472A KR 20100084179 A KR20100084179 A KR 20100084179A
Authority
KR
South Korea
Prior art keywords
content data
caching
node
nodes
data package
Prior art date
Application number
KR1020107011472A
Other languages
Korean (ko)
Inventor
안드레이 키셀
데이비드 세실 로빈슨
Original Assignee
알까뗄 루슨트
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 알까뗄 루슨트 filed Critical 알까뗄 루슨트
Publication of KR20100084179A publication Critical patent/KR20100084179A/en

Links

Images

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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/288Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/2885Hierarchically arranged intermediate devices, e.g. for hierarchical 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
    • 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/564Enhancement of application control based on intercepted application data
    • 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/5681Pre-fetching or pre-delivering data based on network characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A method for caching content data packages in caching nodes 2 of a network 1 comprising a plurality of nodes 2,8 and a plurality of data lines 5 that extend between adjacent of said nodes 2,8, wherein content data traffic is to be routed on traffic connections between a content data library server 7 and user nodes 8 is proposed. The method is comprising the steps of assigning a popularity value of each content data package to each caching node 2 having at least one user node 8 as an adjacent node, calculating a weighted request probability for each content data package at each caching node 2, preferably by combining each popularity value with a distance from the respective caching node 2 to the caching node to which the respective popularity value is assigned to, deciding which of the weighted request probabilities of the content data packages are fulfilling a predefined condition, and caching the respective content data packages in the caching nodes at which the weighted request probability of the content data package fulfils said predefined condition.

Description

컨텐츠 데이터 패키지를 캐싱하는 방법{METHOD FOR CACHING CONTENT DATA PACKAGES IN CACHING NODES}How to cache content data packages {METHOD FOR CACHING CONTENT DATA PACKAGES IN CACHING NODES}

본 발명은 복수의 노드 및 인접하는 상기 노드들 간에 연장되는 복수의 데이터 라인을 포함하는 네트워크의 캐싱 노드(수퍼피어(superpeers))에서 컨텐츠 데이터 패키지를 캐싱하는 방법에 관한 것으로서, 컨텐츠 데이터 트래픽은 컨텐츠 데이터 라이브러리 서버와 사용자 노드(피어) 사이의 트래픽 접속을 통해 전달된다.
The present invention relates to a method of caching a content data package at a caching node (superpeers) of a network comprising a plurality of nodes and a plurality of data lines extending between adjacent nodes, wherein the content data traffic is content. Passed through a traffic connection between the data library server and the user node (peer).

통상적인 인터넷 프로토콜 텔레비전(IPTV) 시스템에서, 모든 컨텐츠는 전형적으로 중앙 라이브러리 서버에 위치하며, 즉, 컨텐츠 데이터 패키지로서 라이브러리 서버에 저장되거나, 또는 중앙 인제스트 지점(cnetralised ingest point)에서 인제스트된다. 컨텐츠 분배 네트워크(Content Distribution Network : CDN)는 라이브러리 서버로부터 네트워크 에지에 근접하여 위치하는 스트리밍 서버로 컨텐츠를 분배하도록 사용된다. 사용자가 에지 스트리밍 서버에서 이용 불가능한 컨텐츠를 뷰잉하고자 원하면, 요청은 라이브러리 서버에 의해 서빙되거나 또는 거부된다.In a typical Internet Protocol Television (IPTV) system, all content is typically located on a central library server, ie stored as a content data package on the library server or ingested at a centralized ingest point. A Content Distribution Network (CDN) is used to distribute content from a library server to a streaming server located near the network edge. If the user wants to view content not available at the edge streaming server, the request is either served or rejected by the library server.

2개의 알려진 분배 모델, 즉, 컨텐츠 에브리웨어(content everywhere) 및 동적 재분배가 존재한다. 제 1 모델에서, 사전 선택된 컨텐츠, 즉, 라이브러리 서버로부터의 컨텐츠 데이터 패키지는 미리 모든 스트리밍 서버에 분배된다. 컨텐츠는 주기적으로 회전된다. 제 2 모델에서, 컨텐츠는 미리 모든 스트리밍 서버에 분배된다. 그러나, 라이브러리 서버는 사용 통계치에 근거하여 컨텐츠를 재분배할 수 있다. 예를 들어, 컨텐츠가 이용 가능하지 않는 에지 스트리밍 서버에 대해 다수의 요청이 수신되면, 중앙 서버는 컨텐츠를 스트리밍 서버에 푸시하고 그로부터 다음의 요청이 서빙된다.There are two known distribution models, content everywhere and dynamic redistribution. In the first model, the preselected content, i.e. the content data package from the library server, is distributed in advance to all streaming servers. The content is rotated periodically. In the second model, the content is distributed to all streaming servers in advance. However, the library server may redistribute the content based on the usage statistics. For example, if a number of requests are received for an edge streaming server for which no content is available, the central server pushes the content to the streaming server from which the next request is served.

산업적인 관심을 끄는 실시간 IPTV 스트리밍에 대한 현재의 다른 접근법은 피어 투 피어(P2P) 분배 네트워크에 근거한다. P2P 분배 네트워크가 분배 품질을 향상시키도록 캐싱 오버레이에 의해 증대되는 경우, 수퍼 P2P라 지칭된다. 현재의 P2P 네트워크 및 현재의 수퍼 P2P(SP2P) 네트워크는 실시간 매체, 예를 들어, 비디오 데이터 전송을 위해 충분한 품질을 제공하지 않는다.Another current approach to industrial IPTV streaming is based on peer-to-peer (P2P) distribution networks. When a P2P distribution network is augmented by a caching overlay to improve distribution quality, it is referred to as super P2P. Current P2P networks and current super P2P (SP2P) networks do not provide sufficient quality for real-time media, for example video data transmission.

통상적인 IPTV 컨텐츠 분배 모델을 위해 가장 잘 알려진 해결책은 컨텐츠 라이브러리 서버로부터 스트리밍 서버로의 실시간 컨텐츠 분배 기법을 사용한다. 이 기법은 '스트림 스루(stream through)'라 지칭된다. 상기 기법에 따르면, 컨텐츠가 스트리밍 서버(스트리머 어레이)에서 이용 가능하지 않으면, 스트리머 어레이는 라이브러리 서버(볼트 어레이(vault array))로부터 실시간 컨텐츠 세그먼트를 요청한다. 그 다음에 스트리머는 컨텐츠를 셋 탑 박스(STB)로 즉시 전송하고 캐시로부터 서빙되는 후속의 요청에 대해 이를 캐싱한다. 몇몇 최적화가, 예를 들어, 미리 캐시를 채워서 적용된다.The best known solution for the conventional IPTV content distribution model uses a real-time content distribution technique from the content library server to the streaming server. This technique is referred to as 'stream through'. According to the above technique, if the content is not available at the streaming server (streamer array), the streamer array requests a real-time content segment from the library server (vault array). The streamer then immediately transfers the content to the set top box (STB) and caches it for subsequent requests served from the cache. Some optimizations are applied, for example, by filling the cache in advance.

다른 알려진 CDN 구현은 에지 스트리밍 서버로의 탄력 있는 매체 전송을 위해 동적 경로 재수립에 의해 최적화된 소유자 오버레이 분배 네트워크에 근거한다.Another known CDN implementation is based on an owner overlay distribution network optimized by dynamic path reestablishment for elastic media delivery to the edge streaming server.

수퍼 P2P 비디오 전송을 위해 가장 잘 알려진 해결책은 에지 위치에 근접하는 캐싱 노드를 전개하는 것에 근거하며 실시간 뷰잉 경험에 대해 적합하지 않다. 이 기법에 따르면, 캐싱 노드는 높은 대역폭을 갖는 네트워크에서 가장 인기 있는 데이터에 대해 액세스 가능한 저장 장치를 제공함으로써 P2P 분배를 향상시키도록 사용된다.The best known solution for super P2P video transmission is based on deploying caching nodes close to the edge location and is not suitable for real time viewing experience. According to this technique, a caching node is used to improve P2P distribution by providing storage accessible for the most popular data in networks with high bandwidth.

제 1 해결책은 실시간 비디오 컨텐츠를 위해 라이브러리와 스트리밍 서버 사이이 실시간 분배를 가능하게 하도록 고 품질 코어 네트워크에 의존한다. 분배 지연은 전형적으로 수백 밀리초를 초과해서는 안 되며, 이는 고 품질을 필요로 하여 고가의 코어 네트워크를 초래한다. 해당 코어 네트워크는 몇몇 경우에서 이용 불가능할 수 있다. 제 2 단점은 사용자 요구에 응답하여 캐시가 채워지며, 이는 긴 길이의 컨텐츠 및 큰 요구 변화에 대한 병목을 생성하며, 예를 들어, 다수의 새로운 매우 인기 있는 자산은 컨텐츠가 모든 에지 상에서 캐싱될 때까지 초기 서비스 거부를 초래할 수 있다는 것이다. 컨텐츠 첨(chum)의 볼륨은 로드될 때 모든 컨텐츠를 분배하는데 불충분한 네트워크 대역폭이 존재하는 것을 의미한다. 해결책은 고가이며, 주요 비용 기여자는 앞서 기술된 바와 같이, 소유자 소프트에어 및 고 품질 코어 네트워크를 이용하는 볼트 어레이/스트리머의 비용이다. The first solution relies on a high quality core network to enable real time distribution between the library and the streaming server for real time video content. Distribution delays should typically not exceed hundreds of milliseconds, which requires high quality resulting in expensive core networks. The core network may be unavailable in some cases. The second drawback is that the cache is filled in response to user demand, which creates a bottleneck for long length content and large demand changes, for example, many new highly popular assets are when the content is cached on all edges. Until the initial denial of service. The volume of content chums means that there is insufficient network bandwidth to distribute all content when loaded. The solution is expensive and the main cost contributor is the cost of the bolt array / streamer using owner software and high quality core network, as described above.

제 1 해결책의 비용 단점은 제 2 해결책, 즉, 수퍼 P2P에 의해 해결된다. SP2P는 상대적으로 저가의 장비로 공용 인터넷 네트워크 상에서 작동한다. 그러나, 현재의 SP2P의 주요한 단점은 그들이 실시간 컨텐츠를 전송할 수 없고 실시간 서비스 요건을 고려하도록 설계되어 있지 않다는 점이다. 또한, (길이가 긴) 컨텐츠의 볼륨은 모든 컨텐츠를 모든 장소에 저장할 수 없다는 것을 의미한다.
The cost disadvantage of the first solution is solved by the second solution, namely super P2P. SP2P is a relatively inexpensive device that runs on a public Internet network. However, the major disadvantage of current SP2Ps is that they cannot deliver real-time content and are not designed to take into account real-time service requirements. In addition, the volume of content (long length) means that not all content can be stored in every place.

따라서, 본 발명의 목적은 관련 기술과 연관된 문제점 중 적어도 하나를 해소하는, 특히 라이브 비디오 및 실시간 서비스의 전송을 가능하게 하는 SP2P 네트워크의 효율을 향상시키는 캐싱 노드에서의 컨텐츠 데이터 패키지를 캐싱하는 방법을 제공하는 것이다.
Accordingly, an object of the present invention is a method of caching content data packages at a caching node that solves at least one of the problems associated with the related art, in particular to improve the efficiency of the SP2P network which enables the delivery of live video and real-time services. To provide.

본 발명에 따르면, 이 목적은 복수의 노드 및 인접하는 상기 노드들 간에 연장되는 복수의 데이터 라인을 포함하는 네트워크의 캐싱 노드에서 컨텐츠 데이터 패키지를 캐싱하는 방법에 의해 달성되며, 컨텐츠 데이터 트래픽이 컨텐츠 데이터 라이브러리 서버, 캐싱 노드 및 사용자 노드 사이의 트래픽 접속을 통해 전달된다.According to the invention, this object is achieved by a method of caching a content data package at a caching node of a network comprising a plurality of nodes and a plurality of data lines extending between adjacent nodes, wherein the content data traffic is cached. Passed through a traffic connection between the library server, caching node, and user node.

즉, 컨텐츠 데이터 트래픽은 컨텐츠 데이터 라이브러리 서버와 사용자 노드 사이의 트래픽 접속을 통해 라우팅되며, 이는 용어 "루트"의 통상적인 의미로서 단지 이해되는 것이 아니며, 데이터를 전송하도록 네트워크에서 루트를 선택한다. 용어는 물리적 전송과 연관된다. 본 발명의 경우에, 용어 "루트"는 다음과 같은 기능, 즉, 트래픽을 향상시키기 위해 네트워크 내에 캐시 층이 존재한다고 가정하며, 네트워크 사용을 최적화하기 위해 이 캐시 층을 어떻게 파퓰레이트할지의 기능을 커버한다. 푸시 앤드 풀(push and pull) 전송이 가능하다. 풀 모드에서 컨텐츠 부분을 필요로 하는 캐시 또는 피어는 캐싱 노드로부터 이를 요청한다.That is, content data traffic is routed through a traffic connection between the content data library server and the user node, which is not merely understood in the conventional sense of the term “root” and selects a route in the network to transmit data. The term is associated with physical transmission. In the case of the present invention, the term "root" assumes that a cache layer exists in the network to enhance traffic, and how to populate this cache layer to optimize network usage. Cover it. Push and pull transmission is possible. In pull mode, a cache or peer that requires a piece of content requests it from a caching node.

본 발명의 방법은 다음과 같은 단계를 포함한다. 즉, The method of the present invention includes the following steps. In other words,

- 적어도 하나의 사용자 노드를 인접 노드로서 갖는 각각의 캐싱 노드에 각각의 컨텐츠 데이터 패키지, 세그먼트 또는 부분의 파퓰래리티 값을 할당하는 단계. 이에 따라 노드가 위치하는 상이한 영역에서의 상이한 파퓰래리티가 할당될 파퓰래리티 값을 정의하기 위해 고려될 수 있다. 본 발명의 방법의 경우에 넓은 의미의 "패키지"가 사용된다. 통상적으로 패키지는 소량의 데이터, 예를 들어, UDP 패킷과 연관된다. 이것은 파퓰래리티 밀도를 구축하는 소형 유닛이며, 이와 달리 보다 큰 세그먼트 또는 전체 부분이 파퓰래리티를 위해 평가되고 캐싱될 수 있다.Assigning a population value of each content data package, segment or part to each caching node having at least one user node as an adjacent node. Accordingly, different populations in different areas where nodes are located may be considered to define the population values to be assigned. In the case of the method of the invention a broader "package" is used. Typically a package is associated with a small amount of data, for example a UDP packet. This is a small unit that builds population density, whereas larger segments or entire portions can be evaluated and cached for populationity.

- 바람직하게 파퓰래리티 값을 각각의 캐싱 노드로부터 상기 각각의 파퓰래리티 값이 할당되는 상기 캐싱 노드까지의 거리와 결합함으로써 각각의 캐싱 노드에서 각각의 컨텐츠 데이터 패키지에 대해 가중치 요청 확률을 계산하는 단계. 상기 요청 확률은 상기 할당된 파퓰래리티 값에 비례한다.Preferably calculate the weighted request probability for each content data package at each caching node by combining the populationity value with the distance from each caching node to the caching node to which each respective population value is assigned. step. The request probability is proportional to the assigned population value.

- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률 중 어느 것이 사전 정의된 조건을 수행하는지를 결정하는 단계. 따라서, 캐싱 결정이, 예를 들어, 사전 정의된 공식에 따라 행해진다.Determining which of the weight request probabilities of the content data package performs a predefined condition. Thus, caching decisions are made, for example, according to a predefined formula.

- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률이 상기 사전 정의된 조건을 수행하는 상기 캐싱 노드에서 상기 각각의 컨텐츠 데이터 패키지가 캐싱하는 단계.Caching by each of the content data packages at the caching node where the weight request probability of the content data package performs the predefined condition.

본 발명의 방법은 파퓰래리티 군집으로 층을 도입하고 상이한 '파퓰래리티' 층 상에서 지능적으로 캐싱함으로써 컨텐츠 데이터 패키지로서 라이브 비디오 및 실시간 서비스의 전송을 가능하게 하도록 SP2P 네트워크의 효율을 향상시킨다. 따라서, 파퓰래리티 군집으로 층을 도입하고 상이한 계층 상에서 지능적으로 캐싱함으로써 관리된 주문형 컨텐츠 전송 네트워크, 바람직하게 수퍼 피어 투 피어 네트워크(SP2P) 또는 캐싱 오버레이 네트워크의 효율이 향상된다. The method of the present invention improves the efficiency of the SP2P network to enable the delivery of live video and real-time services as content data packages by introducing layers into population clusters and intelligent caching on different 'popularity' layers. Thus, the efficiency of a managed on-demand content delivery network, preferably a super peer to peer network (SP2P) or caching overlay network, is improved by introducing layers into the population clusters and intelligently caching on different layers.

본 발명의 방법은 다음과 같은 2개의 개념의 구현을 초래한다.The method of the present invention results in the implementation of two concepts as follows.

제 1 개념은 수평적 메시 상호 접속으로 계층적 파퓰래리티 층을 매체 또는 매체 세그먼트 캐싱에 도입하고 파퓰래리티 군집 층(오버레이 네트워크)에 캐싱 노드를 위치시키는 것이다. 다음의 단계는 이하 기술된 바와 같이 매체(또는 매체 세그먼트)가 캐싱되어야 하는지 및 어느 층에서 캐싱되는지를 결정하도록 파퓰래리티 밀도를 적용하는 것이다. 전형적으로 가중치 최상 파퓰래리티 밀도를 갖는 사용자 캐싱 노드에 가장 근접한 것이 캐싱하거나 캐싱을 위해 선택되어야 하는 것이다.The first concept is to introduce hierarchical population layers into media or media segment caching with horizontal mesh interconnection and to place caching nodes in the population cluster layer (overlay network). The next step is to apply the population density to determine which medium (or medium segment) should be cached and in which layer as described below. Typically the one closest to the user caching node with the weighted highest population density should be cached or chosen for caching.

제 2 개념은 제 1 개념 동안에 발견된 파퓰래리티 토폴로지에 근거하여 캐시를 미리 채움으로써 제 1 개념에서 암시된 오버레이 네트워크를 진전시키는 것이다. 설명을 위해 제공된 일 실시예에서, 주어진 장르에 대한 파퓰래리티 토폴로지는 자체 조정된 캐싱 토폴로지로부터 도출될 수 있다. 그 다음에 장르 파퓰래리티 토폴로지는 동일한 장르 및 높은 추정 파퓰래리티로부터 캐시를 매체로 미리 채우도록 사용될 수 있다.The second concept is to advance the overlay network implied in the first concept by pre-populating the cache based on the population topology topology found during the first concept. In one embodiment provided for illustrative purposes, the population topology for a given genre may be derived from a self-tuning caching topology. The genre population topology can then be used to pre-populate the cache with media from the same genre and high estimated population.

본 발명의 방법은 다음과 같은 장점을 갖는다. 즉, The method of the present invention has the following advantages. In other words,

- 공용 인터넷 네트워크 상에서 컨텐츠 전송의 효율을 향상시킨다.Improve the efficiency of content delivery on public Internet networks.

- 실시간 서비스를 위해 최적화된 SP2P 네트워크를 초래한다.Results in an SP2P network optimized for real-time services.

- 공용 인터넷 네트워크 또는 SP2P 네트워크 상에서 주문형 비디오, 브로드캐스트 TV, 네트워크 PVR, 라이브 일시정지(live-pause) TV와 같은 통상적인 IPTV 서비스를 허용한다.Allows conventional IPTV services such as video on demand, broadcast TV, network PVR, live-pause TV on public Internet networks or SP2P networks.

- IPTV 서비스로부터 분배된 비디오 서버 및 고 품질 코어 네트워크의 비용을 제거한다.Eliminate the cost of distributed video servers and high quality core networks from IPTV services.

- 효율적인 컨텐츠 전송을 위해 매체 특성을 고려한다. -Consider media characteristics for efficient content delivery.

- 이들이 대부분 요청되고 가치를 갖는 매체 자산 및/또는 세그먼트로서 리소스를 배치한다.Arrange resources as media assets and / or segments, most of which are requested and valued;

- 차세대의 IPTV 서비스를 위한 자본 및 운용 비용을 감소시킨다.Reduce capital and operating costs for next generation IPTV services.

- 폭넓게 이용 가능한 인터넷 네트워크에 근거한다.Based on widely available Internet networks.

- 컨텐츠 소유자가 엔드 유저에 직접 도달하도록 한다.Allow content owners to reach end users directly.

- NGN 릴리스 2에 대한 표준화 포텐셜을 제공한다.Provides standardization potential for NGN Release 2.

- 본 발명의 방법은 실시간의 통상적인 IPTV 서비스에 대한 SP2P 및/또는 개방 인터넷 네트워크를 최적화하고 IPTV 판매자 뿐만 아니라 IPTV 시장으로 확장하는 케이블 회사에 대해 중요하다.
The method of the present invention is important for cable companies that optimize SP2P and / or open Internet networks for real-time conventional IPTV services and expand into IPTV markets as well as IPTV vendors.

본 발명의 바람직한 변형Preferred Modifications of the Invention

본 발명의 방법의 특히 바람직한 변형은 소정의 시간 구간 이후에 상기 파퓰래리티 값이 새로운 파퓰래리티 값에 의해 재할당되며, 상기 새로운 파퓰래리티 값은 상기 시간 구간 동안 상기 컨텐츠 데이터 패키지의 사용 빈도에 비례하여 평가되는 것을 특징으로 하는 것이다. 따라서 실제의 사용 데이터에 근거하여 초기에 할당된 파퓰래리티 값의 재평가가 달성될 수 있다.A particularly preferred variant of the method of the present invention is that after a predetermined time period, the population value is reassigned by a new population value, the new population value being used for the content data package during the time period. It is characterized in that it is evaluated in proportion to. Thus, reassessment of the initially assigned population value can be achieved based on actual usage data.

바람직하게, 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률은 상이한 캐싱 노드 및/또는 사용자 노드에 대한 상기 결합의 결과를 합산함으로써 계산된다. 따라서 앞서 리스트된 상기 개념에 따라 적절한 방식으로 인접 피어 없이 데이터가 노드에서 캐싱될 수 있다. 네트워크의 임의의 노드가 캐싱 노드로서 사용될 수 있다. 캐싱 노드는 네트워크의 피어 중 적어도 하나로의 전송을 위해 이들이 상기 컨텐츠 데이터 패키지를 캐싱하고 있다는 사실에 의해 정의된다. 앞에서 기술된 바와 같이 푸시 또는 풀 모드에서 전송이 행해질 수 있다.Advantageously, said weight request probability of said content data package is calculated by summing the results of said combining for different caching nodes and / or user nodes. Thus, data can be cached at a node without an adjacent peer in an appropriate manner in accordance with the above-listed concepts. Any node in the network can be used as the caching node. Caching nodes are defined by the fact that they are caching the content data package for transmission to at least one of the peers in the network. As described above, the transmission may be done in push or pull mode.

각각의 컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률은 각각의 캐싱 노드에 의해 계산되며 상기 결정은 상기 요청 확률을 계산한 상기 캐싱 노드에 의해 행해지면 네트워크의 탈중앙화(decentralized) 관리가 가능하게 된다. The weight request probability for each content data package is calculated by each caching node and the determination is made by the caching node that calculated the request probability to enable decentralized management of the network.

바람직하게, 컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률, 즉, 매체를 캐싱하는 가중치 요청 확률 임계치가 외부 소스로부터, 바람직하게 상기 데이터 라이브러리 서버(라이브러리 노드)로부터 요청되고/되거나 업데이트된다. 따라서, 새로운 높은 파퓰래리티 컨텐츠가 추가되는 경우, 캐시로부터 보다 인기가 적은 매체를 푸시할 수 있다.Advantageously, said weight request probability for a content data package, ie a weight request probability threshold for caching media, is requested and / or updated from an external source, preferably from the data library server (library node). Thus, when new high population content is added, less popular media can be pushed out of the cache.

본 발명의 방법은 바람직하게 라이브 비디오 데이터 및/또는 실시간 서비스 데이터를 포함하고 있는 컨텐츠 데이터 패키지를 캐싱하도록 사용된다.The method of the present invention is preferably used to cache a content data package containing live video data and / or real time service data.

본 발명의 방법의 바람직한 변형에서 상기 컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률은 데이터 분배 노드에 의해 계산되고 상기 결정은 상기 데이터 분배 노드에 의해 행해지며, 상기 각각의 컨텐츠 데이터 패키지, 즉, 새로운 멀티미디어 자산이 상기 각각의 컨텐츠 데이터 패키지 중 적어도 하나를 요청한 사용자 노드에 대해 라우팅되고/되거나 전송되기 이전에 상기 컨텐츠 데이터 패키지는 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률이 상기 사전 정의된 조건을 수행하는 상기 캐싱 노드에 대해 푸시된다. 따라서 컨텐츠 데이터 패키지의 사전 캐싱이 가능하게 된다.In a preferred variant of the method of the present invention the weight request probability for the content data package is calculated by a data distribution node and the determination is made by the data distribution node and the respective content data package, i.e. a new multimedia asset. Before being routed and / or transmitted for a user node that has requested at least one of each of the respective content data packages, the content data package is configured for the caching node in which the weight request probability of the content data package performs the predefined condition. Is pushed against. Thus, precaching of content data packages is possible.

후자의 경우에서 상기 데이터 분배 노드가 상기 컨텐츠 데이터 라이브러리 서버를 포함하고 있다. 따라서, 컨텐츠 데이터 라이브러리 서버는 네트워크를 관리하는 중앙 노드로서 작용할 수 있다.In the latter case, the data distribution node includes the content data library server. Thus, the content data library server can act as a central node for managing the network.

바람직하게, 상기 사용자 노드 중 사용자 노드에 대해 전송될 상기 캐싱 노드 중 적어도 2개의 노드에서 캐싱된 컨텐츠 데이터 패키지에 대한 요청 시에, 상기 요청된 컨텐츠 데이터 패키지는 병렬적으로 또는 순차적으로 양 캐싱 노드로부터 상기 사용자 노드에 대해 푸시 또는 풀 모드에서 전송된다. 따라서, 다수의 소스로부터의 컨텐츠 데이터 패키지에 대한 서비스 요청이 가능하며, 이는 캐시 사용자의 그룹과 부분적으로 중첩하여 각각 서빙하는 2개의 캐싱 노드가 존재하는 경우에 유용하다. 그룹의 중첩하지 않는 부분은 상이한 피크 시간에서 피크 로드를 생성할 수 있다. 상이한 캐싱 노드 상에서 매체 세그먼트, 즉, 컨텐츠 데이터 패키지를 구비하면, 최소 현재의 피크 로드로 노드를 선택하도록 허용한다. 이와 달리, 노드 중 하나가 분주하게 되면 다른 캐싱 노드로의 분배를 전송하고, 예를 들어, 네트워크의 피어로부터 컨텐츠 데이터 패키지에 대한 새로운 요청에 포커싱할 수 있다.Advantageously, upon request for a content data package cached at at least two of the caching nodes to be transmitted to a user node of the user nodes, the requested content data package is from both caching nodes in parallel or sequentially. Sent in push or pull mode for the user node. Thus, a service request for content data packages from multiple sources is possible, which is useful when there are two caching nodes each serving partially overlapping with a group of cache users. Non-overlapping portions of the group may produce peak loads at different peak times. Having media segments, ie content data packages, on different caching nodes allows selection of nodes with a minimum current peak load. Alternatively, when one of the nodes is busy, it can send distributions to other caching nodes and, for example, focus on new requests for content data packages from peers in the network.

또한 컴퓨터 시스템 상에서 실행되고/되거나 저장될 때 본 발명의 방법을 수행하는 수단을 포함하는 컴퓨터 프로그램이 본 발명의 범위 내에 있다. Also within the scope of the present invention is a computer program comprising means for performing the method of the present invention when executed and / or stored on a computer system.

본 발명의 방법은 범용 컴퓨터(하드웨어) 상에서 구현될 뿐만 아니라 에지 장비, 예를 들어, DSLAM/ISAM 및 라우터와 같은 에지 및 군집된 캐신 노드에 통합될 수 있다.The method of the invention can be implemented on a general purpose computer (hardware) as well as integrated into edge equipment such as edge and clustered cache nodes such as DSLAM / ISAM and routers.

또한 상세한 설명 및 개시된 도면으로부터 장점이 취득될 수 있다. 상기 및 이하 언급된 특징은 임의의 조합으로 본 발명에 따라 개별적으로 또는 집합적으로 사용될 수 있다. 언급된 실시예는 완전한 열거로서 이해되는 것은 아니며 본 발명의 설명을 위해 예시적인 의미를 갖는다.
Advantages can also be obtained from the description and the disclosed drawings. The features mentioned above and below can be used individually or collectively in accordance with the invention in any combination. The examples mentioned are not to be understood as complete enumerations and have exemplary meanings for the purposes of the present description.

본 발명이 도면에 도시되며,
도 1은 본 발명의 방법을 수행하도록 구성되는 캐싱에 대한 다수의 군집 레벨을 갖는 관리된 컨텐츠 분배 네트워크를 도시하는 도면이고,
도 2는 본 발명의 바람직한 실시예에 따른 다수의 소스로부터 몇몇 요청의 서비스를 도시하는 도면이다.
The invention is shown in the drawings,
1 is a diagram illustrating a managed content distribution network having multiple cluster levels for caching configured to perform the method of the present invention;
2 is a diagram illustrating services of several requests from multiple sources according to a preferred embodiment of the present invention.

도 1은 네트워크(3)의 캐싱 노드(2)에서 컨텐츠 데이터 패키지를 캐싱하는 본 발명의 방법을 수행하도록 설계되는 네트워크(1)를 도시한다. 네트워크(1)는 복수의 노드 및 인접하는 상기 노드들 간에 연장되는 복수의 데이터 라인(5)을 포함하고 있다. 컨텐츠 데이터 트래픽은 컨텐츠 데이터 라이브러리 서버(7)와 사용자 노드(8), 즉 클라이언트 노드 또는 피어 사이의 트래픽 접속을 통해 라우팅된다. 본 발명의 방법을 설명하기 위해 샘플 알고리즘이 설명될 것이다. 제안된 알고리즘은 파퓰래리티 토폴로지 생성 또는 캐싱을 위한 특정의 알고리즘보다 일반적인 해결책을 제공하는 것을 목적으로 한다.1 shows a network 1 designed to carry out the method of the invention for caching content data packages at a caching node 2 of the network 3. The network 1 comprises a plurality of nodes and a plurality of data lines 5 extending between adjacent nodes. Content data traffic is routed through a traffic connection between the content data library server 7 and the user node 8, i. E. A client node or a peer. A sample algorithm will be described to illustrate the method of the present invention. The proposed algorithm aims to provide a more general solution than a specific algorithm for population topology generation or caching.

클라이언트 노드 또는 피어의 도면에서, STB의 일례는 캐싱 노드 사우스 CN_S, 이스트 CN_E, 웨스트 CN_W 및 노스 CN_N이라 지칭되는 에지 캐싱 노드에 접속된다. 이들 캐싱 노드는 차례대로 보다 높은 군집 층 CA_1, CA_2,...CA_N 상에서의 캐싱 노드에 접속된다.In the drawing of a client node or peer, one example of an STB is connected to edge caching nodes referred to as caching nodes South CN_S, East CN_E, West CN_W, and North CN_N. These caching nodes are in turn connected to caching nodes on higher cluster layers CA_1, CA_2, ... CA_N.

매체 자산은 초기에 중앙 매체 스토어, 즉, 단일의 위치이거나 또는 다중 위치 상에서 분배될 수 있는 컨텐츠 데이터 라이브러리에서 컨텐츠 데이터 패키지로서 저장된다. Media assets are initially stored as content data packages in a central media store, ie, a content data library that can be distributed in a single location or in multiple locations.

앞서 기술된 제 1 개념에 따르면, 컨텐츠 데이터가 피어에 전송될 때 다른 노드로부터의 세그먼트를 군집화하는 각각의 수퍼피어 분배 노드는 파퓰래리티 값, 즉, 예를 들어, 적어도 하나의 사용자 노드를 인접 노드로서 갖는 각각의 캐싱 노드 및 요청된 피어에 대한 거리에 할당된 각각의 컨텐츠 데이터 패키지의 컨텐츠 데이터 패키지에 대해 도입된 다수의 파퓰래리티 레벨로부터 도출된 컨텐츠 파퓰래리티 레벨에 근거하여 컨텐츠를 캐싱하도록 결정을 행한다.According to the first concept described above, each super peer distribution node that clusters segments from other nodes when content data is transmitted to a peer has a population value, i.e., for example, at least one user node adjacent to it. Caching content based on the content population level derived from the multiple population levels introduced for each content data package of each content data package assigned to each caching node and the distance to the requested peer as a node. The decision is made to

"파퓰래리티 밀도"의 정의 중 하나는 사용자의 수 당 파퓰래리티이다. 예를 들어, 무비 A는 영역 A에 대해 100회 요청되고 영역 B에 대해 100회 요청되었다. 영역 A에 1000의 사용자가 존재하고 영역 B에 10000의 사용자가 존재한다. 이 예에서, 동일한 수의 요청을 기록함에도 불구하고, 파퓰래리티 밀도는 영역 B보다 영역 A에서 10배 높다.One of the definitions of "popularity density" is the population per user. For example, movie A was requested 100 times for region A and 100 times for region B. There are 1000 users in the area A and 10000 users in the area B. In this example, despite having recorded the same number of requests, the population density is ten times higher in area A than in area B.

"파퓰래리티 레벨"은 상기 "파퓰래리티 밀도"가, 예를 들어, 상이한 레벨의 파퓰래리티 밀도에 의해 다수의 레벨로 세부 분할됨을 의미한다."Popularity level" means that the "popularity density" is subdivided into multiple levels, for example, by different levels of populational density.

예를 들어, 캐싱 결정은 파퓰래리티 밀도가 고객 위치에 근접한 노드에 비해 충분히 높은지에 근거할 수 있다. 일반적으로, 각각의 캐싱 노드에서 각각의 컨텐츠 데이터 패키지에 대한 가중치 요청 확률은, 예를 들어, 각각의 파퓰래리티 값을 각각의 캐싱 노드로부터 각각의 파퓰래리티 값이 할당되는 상기 캐싱 노드까지의 거리와 결합함으로써 계산된다.For example, the caching decision may be based on whether the population density is high enough relative to a node close to the customer location. In general, the weight request probability for each content data package at each caching node may, for example, vary each population value from each caching node to the caching node to which each population value is assigned. Calculated by combining with distance.

캐싱 결정을 행하기 위해, 컨텐츠 데이터 패키지의 가중치 요청 확률 중 어느 것이, 예를 들어, 이하의 공식에 의해 표시되는, 사전 정의된 조건을 수행하는지가 결정된다. To make a caching decision, it is determined which of the weight request probabilities of the content data package performs a predefined condition, for example represented by the following formula.

컨텐츠를 캐싱할지의 결정은 수퍼피어 노드 자체에 의해, 또는 중앙 라이브러리 서버나 다른 에이전트에 의해 또는 수퍼피어 노드와 라이브러리 서버가 결합하여 행해질 수 있다. 예를 들어, 수퍼피어 노드는 결정을 행하기 이전에 주변 노드의 파퓰래리티 토폴로지에 대해 라이브러리 서버를 요청할 수 있다.The determination of whether to cache the content may be made by the super peer node itself, by a central library server or other agent, or by the super peer node and the library server in combination. For example, the super peer node may request a library server for the population topology of the surrounding node before making a decision.

파퓰래리티 토폴로지로의 층의 도입은 또 다른 예에 의해 도시될 수 있다. 예를 들어, 컨텐츠 A, B, C의 3 부분은 캐싱 노드 CN_E, CN_S, CN_A1에 의해 오버레이된 사우스 이스트 영역 내에서 동등하게 인기가 있다. 컨텐츠 B는 사우스에서 인기가 있고, C는 이스트에서 인기가 있으며, A는 싸우스 및 이스트에서 덜 인기가 있으나, 군집된 영역 사우스 이스트에 걸쳐 인기가 있다.The introduction of the layer into the population topology can be illustrated by another example. For example, three portions of content A, B, and C are equally popular in the south east region overlaid by caching nodes CN_E, CN_S, CN_A1. Content B is popular in South, C is popular in East, A is less popular in South and East, but is popular throughout the crowded area South East.

이 제안의 문맥에서 본 발명자는 다음과 같은 인자의 임의의 결합에 근거하는 폭넓은 의미의 파퓰래리티를 적용하지만, 이하의 리스트로 제한되지 않는다.In the context of this proposal, the inventors apply broad meanings based on any combination of the following factors, but are not limited to the following list.

·박스 오피스 또는 다른 외부 파퓰래리티 마커Box office or other external population marker

·장르·genre

·누가 무엇을 그리고 어디를 선호하는지를 인지하는 사용자의 프로파일User profiles who know what and where they prefer

·이력 데이터History data

·예를 들어, '나 자신의 TV' 커뮤니티에서 이용 가능한 것으로 한 경우 컨텐츠의 카테고리화· Categorize your content, for example, if it's available in the 'Your TV' community

·컨텐츠가 요구될 곳을 추정하도록 추천을 모니터링함Monitor recommendations to estimate where content will be required

·기타·Etc

이들 인자는 각각의 컨텐츠 데이터 패키지에 대한 가중치 요청 확률, 즉, 상이한 피어에 의해 요청될 각각의 컨텐츠 데이터 패키지에 대한 파퓰래리티를 정의하는 배경이 되는 특징에 대한 예이다.These factors are examples of the background features that define the weight request probabilities for each content data package, i.e., the popularity for each content data package to be requested by different peers.

이 경우에, 캐싱 노드 CN_E, CN_S 및 CN_A1을 도입함으로써, 컨텐츠 A, B, C의 전송은 CN_S 상에서 B를 캐싱하고, CN_E 상에서 C를 캐싱하며, 상기 군집 캐싱 층 CN_1에서 A를 캐싱함으로써 사우스 이스트 영역에 대해 회적화될 수 있다. 이것은 캐시 적중 비 - 외부로부터 요청된 캐시로부터 전송된 보다 많은 요청에 의해 CN_E 및 CN_S 캐시의 효율을 최적화한다.In this case, by introducing the caching nodes CN_E, CN_S and CN_A1, the transmission of contents A, B, and C caches B on CN_S, caches C on CN_E, and southeast by caching A at the cluster caching layer CN_1. Can be localized for the area. This optimizes the efficiency of the CN_E and CN_S caches with more cache hit ratios-more requests sent from externally requested caches.

앞서 도시된 바와 같이, 제 1 개념은 컨테츠 및 부하와 같은 리소스를 효율적으로 배치하는 것을 가능하게 하는 다수의 파퓰래리티 레벨을 도입함으로써 SP2P 컨텐츠의 효율을 향상시키며, 이들은 실시간 서비스에 대해 대부분 요청되고 가치를 갖는다.As shown above, the first concept improves the efficiency of SP2P content by introducing multiple levels of population that enable efficient placement of resources such as content and load, which are mostly requested for real-time services. Has value.

앞서 기술된 제 2 개념은 본 발명의 방법, 즉, 앞서 기술된 제 1 개념의 방법에 따른 방법의 단계를 수행하는 동안 발견된 파퓰래리티 토폴로지에 근거하여, 예를 들어, 새로운 멀티미디어 자산에 대한 캐시를 사전에 채우는 것에 의해 제 1 개념을 더 진전시킨다. 일 실시예에서, 주어진 장르에 대한 파퓰래리티 토폴로지 맵은 매체 파퓰래리티 토폴로지로부터 도출된다. 맵은 동일한 장르 카테고리에서 새로운 매체에 대한 캐시를 사전에 채우도록 사용된다. 예를 들어, 라이브러리 서버 또는 외부 에이전트는 A와 동일한 장르 및 레이팅을 갖는 경우 새로운 컨텐츠, 즉, 컨텐츠 데이터 패키지 D를 캐싱 노드 CN_A1으로 이동하도록 결정할 수 있으며, 이는 실시간 서비스를 가능하게 하는 개방 네트워크의 효율을 더 향상시킨다.The second concept described above is based on the population topology found during the steps of the method of the invention, ie the method according to the method of the first concept described above, for example, for a new multimedia asset. Further advance the first concept by pre-populating the cache. In one embodiment, the population topology map for a given genre is derived from the media population topology. The map is used to pre-populate the cache for new media in the same genre category. For example, if the library server or external agent has the same genre and rating as A, it may decide to move new content, that is, content data package D, to the caching node CN_A1, which is the efficiency of an open network that enables real-time services. To further improve.

캐싱 결정을 위한 기본이 되는 공식에 대한 예를 제공하는 것으로서 제 1 개념에서 캐싱하기 위한 알고리즘의 일 실시예가 이하 도시된다. Dn이 n번째 캐신 노드로부터 요청된 피어까지의 거리, 예를 들어, 이들 사이의 노드의 수이면, Rn은 노드 n에서 자신에 대한 관측자 또는 예측된 수의 요청, 즉, 컨텐츠 데이터 패키지의 파퓰래리티 값에 비례하는 요청 확률이다. 그 다음에 자산, 즉, 컨텐츠 데이터 패키지는 최고 가중치 파퓰래리티 밀도, 즉 가중치 요청 확률로 하나 이상의 노드(들) K에서 캐싱되어야 한다.One embodiment of an algorithm for caching in the first concept as providing an example of a formula for the caching decision is shown below. If D n is the distance from the nth cache node to the requested peer, e.g. the number of nodes between them, then R n is the number of observers or predicted requests for itself at node n, i.e., of the content data package. Request probability proportional to the population value. The asset, ie the content data package, must then be cached at one or more node (s) K with the highest weighted population density, ie, weighted request probability.

Figure pct00001
Figure pct00001

컨텐츠를 평균화하는 것은 본 발명의 방법에 따라 컨텐츠 데이터 패키지가 캐싱되는 캐싱 노드에 의해 수행되는 사전 정의된 조건을 정의하는 모든 노드의 최대 p 근처의 영역에서, 괄호 내의 표현에 의해 정의된 가중치 요청 확률 p의 값을 갖는 노드 K에서 캐싱되어야 한다.Averaging content is weighted probability defined by a representation in parentheses, in the region near the maximum p of all nodes that define a predefined condition performed by the caching node where the content data package is cached in accordance with the method of the present invention. It should be cached at node K with the value of p.

따라서 다수의 액세스 경로를 갖는 몇몇 피어가 동일한 세그먼트, 즉, 컨텐츠 데이터 패키지를 요청할 수 있음이 고려된다. 따라서 모든 피어를 서빙하도록 최적으로 위치하는 캐싱 노드가 선택되어야 한다. 이것은 수학식으로 표현된 간략화된 방식이다.Thus, it is contemplated that several peers with multiple access paths may request the same segment, that is, the content data package. Therefore, a caching node that is optimally located to serve all peers should be selected. This is a simplified way of expressing the equation.

도 2는 다수의 소스로부터 몇몇 요청을 서비스함으로써 적용될 수 있는 본 발명의 방법의 다른 최적화를 도시한다. 이 증가는 캐시의 시간을 채우지만 링크 용량을 위한 시간을 거래하도록 허용하는 단일의 네트워크 링크로부터의 부하를 제거한다.2 illustrates another optimization of the method of the present invention that can be applied by servicing several requests from multiple sources. This increase fills the cache's time but eliminates the load from a single network link that allows it to trade time for link capacity.

도시된 2개의 캐싱 노드 CN_A1 및 CN_A2에서 캐싱된 컨텐츠 데이터 패키지 T1에 대한 피어로서 STB(20)로부터의 요청 시에, 컨텐츠 데이터 패키지가 사용자 노드로서 STB에 전송된다. 각각의 컨텐츠 데이터 패키지는 선택적으로 T1에 대해 컨텐츠 데이터 패키지를 갖는 캐싱 노드 CN_E를 병렬적으로 또는 순차적으로 가로지르는 모든 캐싱 노드로부터 상기 사용자 노드에 전달된다. 모든 도시된 캐싱 노드는 풀 인터페이스로서 사용된다. 컨텐츠 데이터 패키지 T1은, 예를 들어, 1Mbps의 데이터 전송률을 이용하여 데이터 라인(5)을 통해 전송되는 세그먼트 T1-1 및 T1-2로 세부 분할한다. 세그먼트 T1-1 및 T1-2를 포함하는 컨텐츠 데이터 패키지 T1은, 예를 들어, 2Mbps의 데이터 전송률을 이용하여 데이터 라인(21)을 통해 CN_E로부터 도시된 STB로 전송된다.Upon request from the STB 20 as a peer for the content data package T1 cached at the two caching nodes CN_A1 and CN_A2 shown, the content data package is sent to the STB as a user node. Each content data package is optionally delivered to the user node from all caching nodes that are in parallel or in sequence across the caching node CN_E having the content data package for T1. All illustrated caching nodes are used as pull interfaces. The content data package T1 is subdivided into segments T1-1 and T1-2 transmitted over the data line 5, for example, using a data rate of 1 Mbps. The content data package T1 comprising segments T1-1 and T1-2 is transmitted from CN_E to the illustrated STB via data line 21 using a data rate of 2 Mbps, for example.

복수의 노드(2,8) 및 인접하는 상기 노드들(2,8) 간에 연장되는 복수의 데이터 라인(5)을 포함하는 네트워크(1)의 캐싱 노드(2)에서 컨텐츠 데이터 패키지를 캐싱하는 방법이 제안되며, 컨텐츠 데이터 트래픽은 컨텐츠 데이터 라이브러리 서버(7)와 사용자 노드(8) 사이의 트래픽 접속을 통해 전달된다.A method of caching content data packages at a caching node (2) of a network (1) comprising a plurality of nodes (2,8) and a plurality of data lines (5) extending between adjacent nodes (2,8). This proposed, content data traffic is delivered via a traffic connection between the content data library server 7 and the user node 8.

본 방법은, This method,

- 적어도 하나의 사용자 노드(8)를 인접 노드로서 갖는 각각의 캐싱 노드(2)에 각각의 컨텐츠 데이터 패키지의 파퓰래리티 값을 할당하는 단계와,Assigning a population value of each content data package to each caching node 2 having at least one user node 8 as an adjacent node,

- 바람직하게 각각의 파퓰래리티 값을 각각의 캐싱 노드(2)로부터 상기 각각의 파퓰래리티 값이 할당되는 상기 캐싱 노드까지의 거리와 결합함으로써 각각의 캐싱 노드(2)에서 각각의 컨텐츠 데이터 패키지에 대해 가중치 요청 확률을 계산하는 단계와,Preferably each content data package at each caching node 2 by combining the respective population values with the distance from each caching node 2 to the caching node to which the respective population value is assigned. Calculating a weighted request probability for;

- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률 중 어느 것이 사전 정의된 조건을 수행하는지를 결정하는 단계와,Determining which of the weighted request probabilities of the content data package performs a predefined condition;

- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률이 상기 사전 정의된 조건을 수행하는 상기 캐싱 노드에서 상기 각각의 컨텐츠 데이터 패키지를 캐싱하는 단계를 포함한다.Caching the respective content data package at the caching node where the weight request probability of the content data package performs the predefined condition.

제시된 해결책은 다수의 파퓰래리티 레벨을 도입하고 상이한 '파퓰래리티' 층 상에서 지능적으로 캐싱하며, 이들이 대부분 요청되고 가치를 갖는 리소스의 효율적인 배치/사용을 가능하게 함으로써 공용 인터넷 네트워크 상에서 컨텐츠 전송의 효율을 향상시킨다. 이는 주문형 비디오, 브로드캐스트 TV, 네트워크 PVR, 라이브 일시정지 TV와 같은 통상적인 IPTV 서비스에 대한 비용 효율적인 층 캐싱 인프라스트럭쳐에 의해 오버플레이된 공용 네트워크를 사용하는 것을 허용한다. 해결책의 다른 장점은 종래 기술에서와 같이 비디오 서버의 네트워크 및 고 품질 코어 네트워크를 필요로 하지 않는다는 점이다. 제안된 발명은 라이브 비디오 및 실시간 서비스의 전송을 일반적으로 가능하게 하는 SP2P 네트워크의 효율을 향상시킨다. The proposed solution introduces multiple levels of population, intelligently caches on different 'popularity' layers, and enables efficient deployment / use of resources that are mostly requested and valuable, thus enabling efficient content delivery on public Internet networks. To improve. This allows the use of public networks overplayed by cost-effective layer caching infrastructure for common IPTV services such as video on demand, broadcast TV, network PVR, live pause TV. Another advantage of the solution is that it does not require a network of video servers and a high quality core network as in the prior art. The proposed invention improves the efficiency of SP2P networks that generally enable the delivery of live video and real-time services.

Claims (10)

복수의 노드 및 인접하는 상기 노드들 간에 연장되는 복수의 데이터 라인을 포함하는 네트워크의 캐싱 노드에서 컨텐츠 데이터 패키지를 캐싱하는 방법으로서,
컨텐츠 데이터 트래픽은 컨텐츠 데이터 라이브러리 서버와 사용자 노드 사이의 트래픽 접속을 통해 라우팅되고/되거나 전달되며,
상기 방법은,
- 적어도 하나의 사용자 노드를 인접 노드로서 갖는 각각의 캐싱 노드에 각각의 컨텐츠 데이터 패키지의 파퓰래리티 값(popularity value)을 할당하는 단계와,
- 각각의 캐싱 노드에서 각각의 컨텐츠 데이터 패키지에 대해 가중치 요청 확률을 계산하는 단계와,
- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률 중 어느 것이 사전 정의된 조건을 수행하는지를 결정하는 단계와,
- 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률이 상기 사전 정의된 조건을 수행하는 상기 캐싱 노드에서 상기 각각의 컨텐츠 데이터 패키지를 캐싱하는 단계를 포함하는
컨텐츠 데이터 패키지를 캐싱하는 방법.
A method of caching content data packages in a caching node of a network comprising a plurality of nodes and a plurality of data lines extending between adjacent nodes.
Content data traffic is routed and / or forwarded through a traffic connection between the content data library server and the user node,
The method comprises:
Assigning a populationity value of each content data package to each caching node having at least one user node as an adjacent node,
Calculating weight request probabilities for each content data package at each caching node;
Determining which of the weighted request probabilities of the content data package performs a predefined condition;
Caching the respective content data package at the caching node where the weight request probability of the content data package performs the predefined condition.
How to cache content data packages.
제 1 항에 있어서,
상기 가중치 요청 확률은 각각의 파퓰래리티 값을 각각의 캐싱 노드로부터 상기 각각의 파퓰래리티 값이 할당되는 상기 캐싱 노드까지의 거리에 결합함으로써 계산되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The weight request probability is calculated by combining each populationity value from each caching node to the distance from each caching node to which each populationity value is assigned.
How to cache content data packages.
제 1 항에 있어서,
소정의 시간 구간 이후에 상기 파퓰래리티 값이 새로운 파퓰래리티 값에 의해 재할당되며, 상기 새로운 파퓰래리티 값은 상기 시간 구간 동안 상기 컨텐츠 데이터 패키지의 사용 빈도에 비례하여 평가되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
After a predetermined time interval, the population value is reallocated by a new population value, and the new population value is evaluated in proportion to the frequency of use of the content data package during the time period.
How to cache content data packages.
제 1 항에 있어서,
상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률은 상이한 캐싱 노드 및/또는 사용자 노드에 대한 상기 결합의 결과를 합산함으로써 계산되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The weight request probability of the content data package is calculated by summing the results of the combining for different caching nodes and / or user nodes.
How to cache content data packages.
제 1 항에 있어서,
각각의 컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률은 각각의 캐싱 노드에 의해 계산되며 상기 결정은 상기 요청 확률을 계산한 상기 캐싱 노드에 의해 행해지는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The weight request probability for each content data package is calculated by each caching node and the determination is made by the caching node that calculated the request probability.
How to cache content data packages.
제 1 항에 있어서,
컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률은 외부 소스로부터, 바람직하게 상기 데이터 라이브러리 서버로부터 요청되고/되거나 업데이트되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The weight request probability for a content data package is requested and / or updated from an external source, preferably from the data library server.
How to cache content data packages.
제 1 항에 있어서,
상기 컨텐츠 데이터 패키지는 라이브 비디오 데이터 및/또는 실시간 서비스 데이터를 포함하고 있는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The content data package includes live video data and / or real time service data.
How to cache content data packages.
제 1 항에 있어서,
상기 컨텐츠 데이터 패키지에 대한 상기 가중치 요청 확률은 데이터 분배 노드에 의해 계산되고 상기 결정은 상기 데이터 분배 노드에 의해 행해지며, 상기 각각의 컨텐츠 데이터 패키지가 상기 각각의 컨텐츠 데이터 패키지 중 적어도 하나를 요청한 사용자 노드로 라우팅되고/되거나 전송되기 이전에 상기 컨텐츠 데이터 패키지는 상기 컨텐츠 데이터 패키지의 상기 가중치 요청 확률이 상기 사전 정의된 조건을 수행하는 상기 캐싱 노드로 라우팅되고/되거나 전달되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
The weight request probability for the content data package is calculated by a data distribution node and the determination is made by the data distribution node, the user node for which each content data package requested at least one of the respective content data packages. The content data package is routed to and / or forwarded to the caching node where the weighted request probability of the content data package performs the predefined condition prior to being routed to and / or sent to.
How to cache content data packages.
제 8 항에 있어서,
상기 데이터 분배 노드는 상기 컨텐츠 데이터 라이브러리 서버를 포함하고 있는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 8,
The data distribution node includes the content data library server.
How to cache content data packages.
제 1 항에 있어서,
상기 사용자 노드들 중 하나의 사용자 노드에 대해 라우팅되고/되거나 전달될 상기 캐싱 노드 중 적어도 2개의 노드에서 캐싱된 컨텐츠 데이터 패키지에 대한 요청 시에, 상기 요청된 컨텐츠 데이터 패키지는 병렬적으로 또는 순차적으로 양 캐싱 노드로부터 상기 사용자 노드로 라우팅되고/되거나 전달되는
컨텐츠 데이터 패키지를 캐싱하는 방법.
The method of claim 1,
Upon request for a cached content data package at at least two of the caching nodes to be routed and / or delivered to one of the user nodes, the requested content data packages are parallel or sequentially Routed and / or forwarded from both caching nodes to the user node
How to cache content data packages.
KR1020107011472A 2007-10-26 2008-10-13 Method for caching content data packages in caching nodes KR20100084179A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP07291307.2A EP2053831B1 (en) 2007-10-26 2007-10-26 Method for caching content data packages in caching nodes
EP07291307.2 2007-10-26

Publications (1)

Publication Number Publication Date
KR20100084179A true KR20100084179A (en) 2010-07-23

Family

ID=39110637

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107011472A KR20100084179A (en) 2007-10-26 2008-10-13 Method for caching content data packages in caching nodes

Country Status (6)

Country Link
US (1) US20090119455A1 (en)
EP (1) EP2053831B1 (en)
JP (1) JP5208216B2 (en)
KR (1) KR20100084179A (en)
CN (1) CN101431530B (en)
WO (1) WO2009052963A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140067881A (en) * 2012-11-26 2014-06-05 삼성전자주식회사 Method for transmitting packet of node and content owner in content centric network
KR20170103286A (en) * 2016-03-03 2017-09-13 에스케이텔레콤 주식회사 Method for providing of content and caching, recording medium recording program therfor
KR20200063483A (en) * 2018-11-28 2020-06-05 한국과학기술원 Optimization method and system of random content caching in heterogeneous small cell networks

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5218356B2 (en) * 2009-09-24 2013-06-26 ブラザー工業株式会社 Information communication system, information communication method, support device, and information communication processing program
US20110131341A1 (en) * 2009-11-30 2011-06-02 Microsoft Corporation Selective content pre-caching
US8880636B2 (en) 2010-03-25 2014-11-04 Telefonaktiebolaget L M Ericsson (Publ) Caching in mobile networks
EP2385680B1 (en) * 2010-05-06 2012-10-03 Voddler Sweden AB Content delivery over a peer-to-peer network
US8838724B2 (en) * 2010-07-02 2014-09-16 Futurewei Technologies, Inc. Computation of caching policy based on content and network constraints
GB201116737D0 (en) * 2011-09-28 2011-11-09 Ericsson Telefon Ab L M Caching in mobile networks
KR20140071453A (en) * 2011-09-30 2014-06-11 인터디지탈 패튼 홀딩스, 인크 Method and apparatus for managing content storage subsystems in a communications network
US8799967B2 (en) * 2011-10-25 2014-08-05 At&T Intellectual Property I, L.P. Using video viewing patterns to determine content placement
CN103095742B (en) * 2011-10-28 2016-04-27 中国移动通信集团公司 For node Adding Way and the corresponding P2P system of P2P system
US8370460B1 (en) * 2012-01-10 2013-02-05 Edgecast Networks, Inc. Optimizing multi-hit caching for long tail content
US9519614B2 (en) 2012-01-10 2016-12-13 Verizon Digital Media Services Inc. Multi-layer multi-hit caching for long tail content
US20130219021A1 (en) * 2012-02-16 2013-08-22 International Business Machines Corporation Predictive caching for telecommunication towers using propagation of identification of items of high demand data at a geographic level
EP2887618B1 (en) * 2012-09-12 2018-10-17 Huawei Technologies Co., Ltd. Service data caching processing method, device and system
US9128892B2 (en) 2012-12-10 2015-09-08 Netflix, Inc. Managing content on an ISP cache
US9092531B2 (en) 2013-02-25 2015-07-28 Google Inc. Customized content consumption interface
US10841353B2 (en) 2013-11-01 2020-11-17 Ericsson Ab System and method for optimizing defragmentation of content in a content delivery network
TWI524756B (en) 2013-11-05 2016-03-01 財團法人工業技術研究院 Method and device operable to store video and audio data
US9612776B2 (en) * 2013-12-31 2017-04-04 Dell Products, L.P. Dynamically updated user data cache for persistent productivity
US10270876B2 (en) * 2014-06-02 2019-04-23 Verizon Digital Media Services Inc. Probability based caching and eviction
US10057314B2 (en) * 2015-04-17 2018-08-21 Telefonaktiebolaget Lm Ericsson (Publ) Dynamic packager network based ABR media distribution and delivery
CN105721600B (en) * 2016-03-04 2018-10-12 重庆大学 A kind of content center network caching method based on complex network measurement
US10382355B2 (en) 2016-06-02 2019-08-13 Electronics And Telecommunications Research Institute Overlay management server and operating method thereof
CN106101223B (en) * 2016-06-12 2019-08-06 北京邮电大学 One kind is based on content popularit and the matched caching method of node rank
US10820034B2 (en) * 2017-05-26 2020-10-27 At&T Intellectual Property I, L.P. Providing streaming video from mobile computing nodes
DE112018006898T5 (en) 2018-01-19 2020-10-01 Mitsubishi Electric Corporation Communication control device, communication control method and communication control program
US10986387B1 (en) 2018-09-26 2021-04-20 Amazon Technologies, Inc. Content management for a distributed cache of a wireless mesh network
US11089103B1 (en) * 2018-09-26 2021-08-10 Amazon Technologies, Inc. Content management in a distributed cache of a wireless mesh network
CN111372096B (en) * 2020-03-12 2022-02-18 重庆邮电大学 D2D-assisted video quality adaptive caching method and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19514616A1 (en) * 1995-04-25 1996-10-31 Sel Alcatel Ag Communication system with hierarchical server structure
JP4299911B2 (en) * 1999-03-24 2009-07-22 株式会社東芝 Information transfer system
US6820133B1 (en) * 2000-02-07 2004-11-16 Netli, Inc. System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination
US8650601B2 (en) * 2002-11-26 2014-02-11 Concurrent Computer Corporation Video on demand management system
US7613770B2 (en) * 2006-06-30 2009-11-03 Microsoft Corporation On-demand file transfers for mass P2P file sharing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140067881A (en) * 2012-11-26 2014-06-05 삼성전자주식회사 Method for transmitting packet of node and content owner in content centric network
KR20200040722A (en) * 2012-11-26 2020-04-20 삼성전자주식회사 Method for transmitting packet of node and content owner in content centric network
KR20170103286A (en) * 2016-03-03 2017-09-13 에스케이텔레콤 주식회사 Method for providing of content and caching, recording medium recording program therfor
KR20200063483A (en) * 2018-11-28 2020-06-05 한국과학기술원 Optimization method and system of random content caching in heterogeneous small cell networks

Also Published As

Publication number Publication date
US20090119455A1 (en) 2009-05-07
JP2011501588A (en) 2011-01-06
EP2053831B1 (en) 2016-09-07
CN101431530B (en) 2013-09-18
WO2009052963A1 (en) 2009-04-30
EP2053831A1 (en) 2009-04-29
JP5208216B2 (en) 2013-06-12
CN101431530A (en) 2009-05-13

Similar Documents

Publication Publication Date Title
KR20100084179A (en) Method for caching content data packages in caching nodes
KR101490122B1 (en) Method for distributing content data packages originated by users of a super peer-to-peer network
JP5181031B2 (en) Resilient service quality within a managed multimedia distribution network
US8880721B2 (en) System and method for minimizing network bandwidth retrieved from an external network
US20090119734A1 (en) Distributed Cache Algorithms and System for Time-Shifted, and Live, Peer-to-Peer Video Streaming
CN106416269A (en) Unicast adaptive bitrate streaming
Roverso et al. Smoothcache 2.0: Cdn-quality adaptive http live streaming on peer-to-peer overlays
Li et al. Network friendly video distribution
Haßlinger et al. Efficiency of caches for content distribution on the internet
Xu et al. Analysis of a hybrid architecture for cost-effective streaming media distribution
EP2252057A1 (en) Method and system for storing and distributing electronic content
US20090144431A1 (en) Guaranteed quality multimedia service over managed peer-to-peer network or ngn
US20240179200A1 (en) System and method of minimizing network bandwidth retrieved from an external network
KR20050060783A (en) Method for retrieving and downloading digital media files through network and medium on which the program for executing the method is recorded
Thouin et al. Video-on-demand equipment allocation
Liu et al. Request-peer selection for load-balancing in P2P live streaming systems
Huang et al. An incentive scheme based on bitrate adaptation for cloud-assisted P2P video-on-demand streaming systems
Pussep et al. Adaptive server allocation for peer-assisted video-on-demand
Zhu et al. P2P-based VOD content distribution platform with guaranteed video quality
Su et al. Optimizing transmission time of scalable coded images in peer-to-peer networks
Chellouche et al. Home Boxes support for an efficient Video on Demand distribution
Czyrnek et al. CDN for live and on-demand video services over IP
Son A hybrid peer-to-peer media streaming
Boufkhad et al. Fine Tuning of a Distributed VoD System
Harrouch et al. DASH-DMS: To improve streaming video over HTTP

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right