KR20150080957A - 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법 - Google Patents

컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법 Download PDF

Info

Publication number
KR20150080957A
KR20150080957A KR1020130168204A KR20130168204A KR20150080957A KR 20150080957 A KR20150080957 A KR 20150080957A KR 1020130168204 A KR1020130168204 A KR 1020130168204A KR 20130168204 A KR20130168204 A KR 20130168204A KR 20150080957 A KR20150080957 A KR 20150080957A
Authority
KR
South Korea
Prior art keywords
content
prefix
entity
caching
name
Prior art date
Application number
KR1020130168204A
Other languages
English (en)
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 서울대학교산학협력단
Priority to KR1020130168204A priority Critical patent/KR20150080957A/ko
Publication of KR20150080957A publication Critical patent/KR20150080957A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 컨텐츠 캐싱 및 전달 방법 및 그 장치에 관한 것이다. 본 발명의 제 1 측면에 따르면 컨텐츠 이름으로 컨텐츠가 배포되는 CCN(Content-Centric Network) 상의 엔티티가 컨텐츠를 캐싱하는 방법으로서, 제1컨텐츠를 수신하는 단계, 상기 제1컨텐츠의 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하는 단계, 및 상기 제1컨텐츠를 캐싱하는 단계를 포함할 수 있다.

Description

컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법{A Caching Method in Content-Centric Networks based on Content Popularity Prediction by Prefix-Tree}
본 발명은 컨텐츠 캐싱 및 전달 방법 및 그 장치에 관한 것으로, 보다 상세하게는, 프리픽스 트리(prefix tree)를 이용하여 컨텐츠를 캐싱하고 전달하는 방법 및 그 장치에 관한 것이다.
최근 들어 컨텐츠요청이 폭발적으로 증가함에 따라 컨텐츠를 효과적으로 서비스하는 것이 중요해지고 있다. 이를 위해, 컨텐츠의 효율적인 배치, 네트워크 자원의 효율적인 사용 및 사용자의 편의성을 증대시킬 수 있는 기술로서 CONTENT-CENTRIC NETWORK(이하에서는 'CCN'이라 함)이 제안된다.
CCN은, 통상의 인터넷 프로토콜 네트워크에서 사용되는 IP 주소 대신 컨텐츠 이름을 사용하여 컨텐츠를 배포하거나 컨텐츠를 전달받는 미래 네트워크로서, 네트워크를 구성하는 엔티티는 컨텐츠를 캐싱하면서 상기 컨텐츠를 요구하는 이웃 엔티티로 컨텐츠를 배포하는 방식을 사용하는 네트워크이다.
이러한 CCN은, 네트워크 내에 위치하면서 네트워크를 구성하는 엔티티(예를 들어, 스위치 장치, 라우터 장치 등)에 포함된 스토리지(storage)를 활용하여, 컨텐츠 복사본을, 복수 개의 엔티티에 위치시키거나, 컨텐츠를 요청하는 말단 사용자단말과 가깝게 위치한 엔티티에 위치시켜둠으로써, 컨텐츠 전달 속도를 증가시키고 컨텐츠 유효성을 증가시키는 효율성을 갖는다. 이는 기존 인터넷과 비교하여 전체 네트워크의 트래픽을 절감하고 빠른 데이터 전송을 가능하게 한다.
특히 CCN은, 인기 컨텐츠가 전달되는 과정에서 상기 인기 컨텐츠를, 출발지와 목적지 사이에 위치하는 중간 엔티티 상에 캐싱할 수 있어, 상대적으로 많은 빈도로 요청되는 인기 컨텐츠에 대한 요청을 효과적으로 처리할 수 있다. 이와 같은 CCN의 동작은 트래픽 로드를 감소시키는 기법으로서 매우 중요하다.
다만, CCN이 인기 컨텐츠를 캐싱할 때 어떤 컨텐츠가 인기 컨텐츠인지를 판단하는데 어려움이 있다.
한편, 선행기술 문헌인 한국특허출원번호 제2011-011293호에서는, 컨텐츠 중심 네트워크에 설치된 컨텐츠 배포 컨트롤러가 소정 컨텐츠를 유통하겠다는 사용자의 요청을 받으면, 해당 컨텐츠를 저장하고 있는 라우터의 위치를 결정하고, 사용자의 요청이 어느 라우터로 전송될 것인지 파악하는 단계, 및 컨텐츠 배포 컨트롤러는 트래픽 유통 현황을 고려하여 최적의 경로를 파악한 후에 포워딩 정보 베이스를 최적의 경로에 포함된 라우터들에 전송하는 단계를 포함한다.
즉 선행기술 문헌에서는 컨텐츠를 전달하는 방법에 대해 개시할 뿐, 컨텐츠를 효율적으로 캐싱하는 방법에 대해서는 제안하고 있지 않다
따라서 CCN 상에서 컨텐츠를 효율적으로 캐싱하고, 캐싱된 컨텐츠를 효과적으로 전달하기 위한 방법이 필요하게 되었다.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.
본 발명의 일실시예는, 컨텐츠 캐싱 및 전달 방법 및 그 장치를 제시하는 데에 목적이 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일실시예에 따르면 컨텐츠 이름으로 컨텐츠가 배포되는 CCN(Content-Centric Network) 상의 엔티티가 컨텐츠를 캐싱하는 방법으로서, 제1컨텐츠를 수신하는 단계, 상기 제1컨텐츠의 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하는 단계, 및 상기 제1컨텐츠를 캐싱하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 상기 제1컨텐츠를 캐싱하는 단계가, 상기 엔티티에 캐싱된 하나 이상의 컨텐츠의 라이프타임(lifetime)에 기초하여, 상기 제1컨텐츠를 캐싱하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면 상기 제1컨텐츠를 캐싱하는 단계가, 상기 수신된 제1컨텐츠를 캐싱하기 위한 캐시메모리가 풀(full)인지 여부를 판단하는 단계, 상기 판단결과 상기 캐시메모리가 풀이면, 상기 캐시메모리 내에서 라이프타임이 가장 짧은 제2컨텐츠를 상기 캐시메모리에서 삭제하는 단계, 및 상기 제1컨텐츠를 상기 캐시메모리에 캐싱하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면 상기 프리픽스 트리를 갱신하는 단계가, 제1프리픽스를 갖는 제1노드의 프리픽스 카운터를 증가시키는 단계를 포함하며, 상기 제1프리픽스는 상기 제1컨텐츠의 컨텐츠 이름을 구성하는 프리픽스일 수 있다.
본 발명의 다른 실시예에 따르면 상기 프리픽스 트리를 갱신하는 단계가, 상기 제1컨텐츠의 컨텐츠 이름을 구성하면서 상기 프리픽스 트리에 포함되지 않는 프리픽스인 제2프리픽스를 갖는 제2노드를 생성하고, 상기 제2노드를 상기 프리픽스 트리에 추가하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면 상기 프리픽스 트리는, 상기 제1컨텐츠의 컨텐츠 이름을 구성하는 각 프리픽스를 갖고 있는 트리일 수있다.
본 발명의 다른 실시예에 따르면 컨텐츠 캐싱 방법은, 상기 제1컨텐츠의 라이프타임을 연산하는 단계, 상기 연산된 라이프타임을 저장하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에 따르면 상기 제1컨텐츠의 라이프타임을 연산하는 단계가, 라이프타임(tl) 연산식에 기초하여 상기 제1컨텐츠의 라이프타임을 연산하되, 상기 연산식은,
Figure pat00001
이며, tu는 가변적인 라이프타임 단위이고, n은 컨텐츠 이름을 구성하는 프리픽스의 총 개수이며, PT[i]는 i번째 깊이(depth)의 카운터값이고, w[i]는 의 가중치일 수 있다.
본 발명의 다른 실시예에 따르면 컨텐츠 캐싱 방법에 따라 컨텐츠를 캐싱하는 엔티티가, 컨텐츠를 전달하는 방법에 있어서, 상기 제1컨텐츠에 대한 컨텐츠요청을 수신하는 단계, 및 상기 컨텐츠요청을 전달한 엔티티로 상기 제1컨텐츠를 전달하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면 상기 제1컨텐츠를 전달하는 단계가, 상기 제1컨텐츠의 이름, 프리픽스 트리 및 CS(Content Store) 중 적어도 하나에 기초하여 상기 제1컨텐츠가 캐싱되어 있는지 여부를 판단하는 단계, 판단결과 컨텐츠가 캐싱되어 있다면 상기 제1컨텐츠를 전달하는 단계를 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 제1컨텐츠를 수신하는 단계, 상기 제1컨텐츠의 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하는 단계, 및 상기 제1컨텐츠를 캐싱하는 단계를 포함하는 컨텐츠 캐싱 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체일 수 있다.
본 발명의 다른 실시예에 따르면, 컨텐츠 이름으로 컨텐츠가 배포되는 CCN(Content-Centric Network) 상의 엔티티 장치로서, 컨텐츠를 수신하도록 구성되는 컨텐츠수신부, 상기 컨텐츠의 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하도록 구성되는 프리픽스 트리 관리부, 및 상기 컨텐츠를 캐싱하도록 구성되는 캐싱부를 포함할 수 있다.
본 발명의 다른 실시예에 따르면, 엔티티 장치는, 상기 컨텐츠에 대한 컨텐츠요청을 수신하도록 구성되는 요청처리부, 및 상기 컨텐츠요청을 전달한 엔티티로, 상기 컨텐츠를 전달하도록 구성되는 컨텐츠전달부를 포함할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 컨텐츠 캐싱 및 전달 방법 및 그 장치를 제시할 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 엔티티로 하여금 컨텐츠의 인기도가 높은지 여부를 효과적으로 판단할 수 있도록 하고, 이에 인기도가 높은 컨텐츠를 캐싱할 수 있어, 엔티티의 캐시메모리 활용도를 높일 수 있다
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일실시예에 따른 컨텐츠 중심 네트워크의 구성도이다.
도 2는 본 발명의 일실시예에 따른 엔티티 장치를 도시한 블록도이다.
도 3은 본 발명의 일실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법을 설명하기 위한 순서도이다.
도 4는 본 발명의 일실시예에 따른 컨텐츠 캐싱 방법을 설명하기 위한 순서도이다.
도 5 및 도 7은 본 발명의 일실시예에 따른 컨텐츠 캐싱 및 전달 방법을 설명하기 위한 예시도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일실시예에 따른 컨텐츠 중심 네트워크(Content Centric Network; 이하에서는 ‘CCN’이라 함)를 설명하기 위한 구성도이다.
도 1에서 도시된 바와 같이 사용자단말(10) 및 컨텐츠서버(30)는, CCN(N)을 통해 통신할 수 있다.
이때, 사용자단말(10)은 컨텐츠를 요청하는 전자장치이며, 컨텐츠서버(30)는 상기 요청된 컨텐츠의 원본을 저장하는 전자장치일 수 있다. 이때, ‘컨텐츠’는 임의의 형태의 데이터를 지칭하는 것으로, 예를 들어, 이미지, 비디오, 오디오 또는 텍스트 등이 될 수 있다.
한편, CCN(N)은 하나 이상의 엔티티(20)를 포함할 수 있다.
엔티티(20)는, 네트워크 상에 분포하면서 사용자단말(10) 및 컨텐츠서버(30) 사이에 위치하는 전자장치로서, 예를 들어, 라우터, 스위치 등으로 구현될 수 있다.
이러한 엔티티(20)는, 컨텐츠 저장을 위한 공간인 Content Store(이하에서는 ‘CS’라 함), 컨텐츠를 가진 이웃 엔티티에 관한 정보를 포함하고 있는 Forwarding Information Base(이하에서는 ‘FIB’라 함), 및 컨텐츠요청이 들어온 페이스(face)의 정보를 가지고 있는 Pending Interest Table(이하에서는 ‘PIT’라 함)로 구성될 수 있다.
이와 같은 엔티티(20)는 도 2를 참조하여 보다 상세히 후술된다.
도 2는 본 발명의 일실시예에 따른 엔티티 장치(20)를 도시한 블록도이다.
후술되는 엔티티(20)의 각 구성요소는, 엔티티를 구성하는 CS, FIB 또는 PIT상에서 구현될 수 있다.
엔티티(20)는 요청처리부(210), 컨텐츠수신부(220), 컨텐츠전달부(230), 캐싱부(240) 및 프리픽스 트리 관리부(250)를 포함할 수 있다.
요청처리부(210)는, 엔티티의 이웃 엔티티로부터 컨텐츠요청을 수신하도록 구성된다.
이때 이웃 엔티티는 엔티티(20)와 인접하게 위치하는 엔티티로서, 엔티티(20)로부터 컨텐츠요청을 수신하거나, 컨텐츠요청을 전달할 수 있으며, 또한 엔티티(20)로부터 컨텐츠를 수신하거나, 컨텐츠를 전달할 수 있다.
또한 요청처리부(210)는 엔티티의 이웃 엔티티로 컨텐츠요청을 전달할 수 있다.
즉, 요청처리부(210)는 컨텐츠의 이름, 프리픽스 트리 및 CS 중 적어도 하나에 기초하여 요청된 컨텐츠를 캐싱하고 있지 않는다고 판단하면, 상기 컨텐츠에 대한 컨텐츠요청을 이웃 엔티티로 전달할 수 있다.
한편 컨텐츠수신부(220)는, 엔티티의 이웃 엔티티로부터 컨텐츠를 수신하도록 구성된다.
반면 컨텐츠전달부(230)는, 엔티티의 이웃 엔티티로 컨텐츠를 전달하도록 구성된다.
이때, 컨텐츠전달부(230)는, 엔티티가 수신한 컨텐츠를 전달할 수 있으며, 또는 엔티티에 캐싱된 컨텐츠를 전달할 수 있다.
한편 캐싱부(240)는, 컨텐츠를 엔티티에 캐싱하도록 구성된다. 엔티티가 캐싱메모리를 구비하는 경우, 캐싱부(240)는 컨텐츠를 캐시메모리에 캐싱할 수 있다.
이때 캐싱부(240)는 프리픽스 트리를 이용하여 캐싱되고 있는 컨텐츠 별로 결정된 라이프타임(lifetime)에 따라 컨텐츠의 캐싱여부를 결정할 수 있다.
즉, 컨텐츠를 캐싱하기 위한 캐시메모리가 풀(full)인지 여부를 판단하고, 상기 판단결과 상기 캐시메모리가 풀이면, 상기 캐시메모리 내에서 라이프타임이 가장 짧은 컨텐츠를 캐시메모리에서 삭제할 수 있다. 그 결과 캐시메모리가 풀이 되지 않게 되며, 이에 상기 컨텐츠를 캐싱메모리에 캐싱할 수 있다.
또한 캐싱부(240)는 컨텐츠를 캐싱하면서, 상기 컨텐츠의 라이프타임을 연산하고 연산된 라이프타임을 저장할 수 있다.
이때, 라이프타임(tl)은 하기의 수식(1)에 기초하여 연산될 수 있다.
수식(1):
Figure pat00002
tu는 라이프타임 단위로서 가변적이며, n은 컨텐츠 이름을 구성하는 프리픽스의 총 개수이며, PT[i]는 i번째 깊이(depth)를 갖는 노드의 프리픽스 카운터값이고, w[i]는 의 가중치일 수 있다.
반면 프리픽스 트리 관리부(250)는, 프리픽스 트리를 관리하도록 구성된다.
여기서, ‘트리(tree)’란, 데이터구조의 하나로서 데이터를 묶은 하나의 단위를 노드라 할때, 상기 노드 사이의 연결을 나뭇가지처럼 한 데이터구조이며, ‘프리픽스 트리(prefix tree)’는 트리의 노드가 프리픽스(prefix)를 구성하는 구성요소인 것을 특징으로 한다.
본 발명의 일실시예에 따른 프리픽스 트리는, 컨텐츠 이름을 구성하는 각 요소를 노드로서 포함할 수 있다.
예를 들어, 컨텐츠 이름을 소정의 기준에 따라 파싱(예를 들어, 컨텐츠 이름이 URI인 경우 캐릭터 ‘/’로 컨텐츠 이름을 파싱)할 수 있으며, 파싱 결과 생성된 각 요소를 노드로서 생성할 수 있다.
따라서, 예를 들어, 새로운 프리픽스로 구성되는 컨텐츠 이름을 갖는 컨텐츠를 엔티티가 수신하면, 상기 프리픽스 각각에 대응되는 노드를, 프리픽스 트리에 생성할 수 있다.
또한, 프리픽스 트리는 각 노드에 대응되는 프리픽스 카운터를 갖고 있으며, 엔티티(20)가 다른 엔티티로 전달(또는 다른 엔티티로부터 수신)하는 컨텐츠의 프리픽스가, 해당 노드가 갖는 프리픽스와 일치하면 프리픽스 트리 관리부(250)는 상기 노드의 프리픽스 카운터를 증가시킬 수 있다.
이와 같이 프리픽스 트리 관리부(250)는, 새로운 노드를 생성하거나, 노드의 프리픽스 카운터를 증가시킴으로써 프리픽스 트리를 갱신할 수 있다.
도 3은, 컨텐츠 이름으로 컨텐츠가 배포되는 CCN 상에 위치하는 엔티티에 의해 수행되는, 본 발명의 일실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법을 설명하기 위한 순서도이며, 도 4는, 상기 엔티티에 의해 수행되는, 본 발명의 일실시예에 따른 컨텐츠 캐싱 방법을 설명하기 위한 순서도이다.
도 3 및 도 4에 도시된 실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법은 도 2에 도시된 엔티티(20)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 2에 도시된 엔티티(20)에 관하여 이상에서 기술한 내용은 도 3 및 도 4에 도시된 실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법에도 적용될 수 있다.
또한 도 3 및 도 4는 도 5 및 도 7을 참조하여 이하에서 후술되며, 도 5 및 도 7은 본 발명의 일실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법을 설명하기 위한 예시도이다.
도 3에서 도시된 바와 같이, 엔티티가 컨텐츠요청을 수신하면(S310), 요청된 컨텐츠의 컨텐츠 이름, 프리픽스 트리 및 CS(Content Store) 중 적어도 하나에 기초하여 컨텐츠가 캐싱되었는지 여부를 결정할 수 있다.
즉, 프리픽스 트리에 기초하여 컨텐츠가 캐싱되었는지 여부를 결정할 수 있다 (S320).
예를 들어, 요청된 컨텐츠의 컨텐츠 이름을 구성하는 프리픽스와, 프리픽스 트리가 갖는 노드의 프리픽스를 비교하여 일치한다면 엔티티가 상기 컨텐츠를 캐싱한다고 결정할 수 있다.
또한, 엔티티는 CS를 확인하여 컨텐츠를 캐싱하고 있는지를 확인할 수 있다 (S330).
이와 같이 컨텐츠를 캐싱하는지를 확인한 결과 캐싱하고 있지 않다고 판단되면, 엔티티는 컨텐츠요청을 이웃 노드로 전달할 수 있다 (S340).
그리고 상기 컨텐츠요청의 전달에 따라 컨텐츠를 수신하게 되면(S350), 엔티티는 상기 컨텐츠를 다른 엔티티로, 또는 사용자단말로 전달할 수 있다 (S360).
그리고 엔티티는 프리픽스 트리를 갱신할 수 있다(S370).
예를 들어, 엔티티는, 컨텐츠의 컨텐츠 이름을 구성하는 프리픽스를 갖는 노드의 프리픽스 카운터를 증가시킴으로써 프리픽스 트리를 갱신할 수 있다. 또한 예를 들어, 엔티티는, 컨텐츠의 컨텐츠 이름을 구성하는 프리픽스가 프리픽스 트리에 존재하지 않는 경우, 상기 프리픽스를 갖는 노드를 생성하고 프리픽스 트리에 추가함으로써 프리픽스 트리를 갱신할 수 있다. 그 결과 갱신된 프리픽스 트리는, 컨텐츠 이름을 구성하는 프리픽스를 갖는 노드를 포함할 수 있다.
그리고 엔티티는 컨텐츠를 캐싱메모리에 캐싱할 수 있다 (S380).
관련하여 도 4에서 도시된 바와 같이, 엔티티는 먼저, 컨텐츠를 캐싱하기 위한 캐시메모리가 풀인지 여부를 판단할 수 있다 (S410).
판단결과 상기 캐시메모리가 풀이면, 상기 캐시메모리 내에서 라이프타임이 가장 짧은 컨텐츠를 캐시메모리에서 삭제할 수 있다 (S420). 그리고 캐싱하려던 컨텐츠를 캐시메모리에 캐싱할 수 있다 (S430).
반면 판단결과 상기 캐시메모리가 풀이 아니면, 캐싱하려던 컨텐츠를 상기 캐시메모리에 캐싱할 수 있다 (S430).
상술된 단계 S360 내지 S380은 설명의 편의상 선후관계가 있는 것으로 도시되었으나, S360 내지 S380간의 선후관계는 바뀔 수 있고, 또한 각 단계가 동시에 수행될 수 있다.
한편, 프리픽스 트리에 기초하여 컨텐츠가 캐싱되어 있거나, 또는 CS를 확인하여 컨텐츠가 캐싱되었다고 판단할 수 있다.
이때 엔티티는 캐싱된 컨텐츠를 이웃 엔티티로, 또는 사용자단말로 전달할 수 있다 (S361).
그리고 엔티티는 프리픽스 트리를 갱신할 수 있다 (S371). 이때 엔티티는 단계 S370에서 수행되었던 것과 같이 프리픽스 트리를 갱신할 수 있다.
상술된 단계 S361 및 S371은 설명의 편의상 선후관계가 있는 것으로 도시되었으나, S361 및 S371간의 선후관계는 바뀔 수 있고, 또한 각 단계가 동시에 수행될 수 있다.
한편 엔티티는, 컨텐츠를 캐싱하기 이전, 캐싱하는 것과 동시에, 또는 캐싱하고 난 이후, 상기 컨텐츠의 라이프타임을 연산하고 저장할 수 있다.
이때, 라이프타임은, 수식(1)에 따라 연산될 수 있다.
예를 들어, 엔티티는 도 5에 도시된 바와 같이 프리픽스 트리(500)를 갖고 있고, 엔티티가 전달할 컨텐츠(510)의 컨텐츠 이름이, ‘cnn.com/game/LoL/season3’ 이라면, 상기 컨텐츠이름을 ‘/’로 파싱하였을 때 각 프리픽스를 갖는 노드(501, 502, 503, 504)가 프리픽스 트리에 포함됨을 확인할 수 있다.
또한, 도 6에서 도시된 바와 같이, 각 노드(501, 502, 503, 504)가 프리픽스 카운터(601, 602, 603, 604)를 갖고 있음을 확인할 수 있는데, 이때 컨텐츠(510)의 라이프타임을 수식(1)에 따라 연산할 수 있다.
관련하여, 가변적인 라이프타임 단위tu가 0이고, 트리의 깊이가 1일 때의 가중치가 0.3, 깊이가 2일 때의 가중치가 0.5, 깊이가 3일 때의 가중치가 0.7, 그리고 깊이가 4일 때의 가중치가 1.0임을 가정하면, 컨텐츠(510)의 라이프타임은 22(=10X0.3+10X0.5+10X0.7+7X1.0)이다.
또한 엔티티는 프리픽스 트리를 갱신할 수 있는데, 예를 들어, 컨텐츠의 이름을 구성하는 프리픽스 각각의 노드의 프리픽스 카운터를 1씩 증가시킬 수 있다.
또한 예를 들어, 트리의 노드 중에서, 컨텐츠의 이름을 구성하는 프리픽스가 없다면 상기 프리픽스를 갖는 노드를 생성할 수 있다.
따라서, 컨텐츠(510)를 전달하는 엔티티는, 켄텐츠(510)의 컨텐츠 이름을 구성하는 프리픽스를 갖는 노드를 갱신할 수 있으며, 그 결과, 도 7에서 도시된 바와 같이, 프리픽스 트리의 각 노드(501, 502, 503, 504)의 프리픽스 카운터(701, 702, 703, 704)가, 도 6의 프리픽스 트리의 각 노드의 프리픽스 카운터(601, 602, 603, 604)보다 1씩 증가하였음을 확인할 수 있다.
도 3 내지 도 4를 통해 설명된 실시예에 따른 컨텐츠 캐싱 방법 및 컨텐츠 전달 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 사용자단말
20: 엔티티
30: 컨텐츠서버

Claims (13)

  1. 컨텐츠 이름으로 컨텐츠가 배포되는 CCN(Content-Centric Network) 상의 엔티티가, 컨텐츠를 캐싱하는 방법으로서,
    제1컨텐츠를 수신하는 단계;
    상기 제1컨텐츠의 컨텐츠 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하는 단계; 및
    상기 제1컨텐츠를 캐싱하는 단계를 포함하는, 컨텐츠 캐싱 방법.
  2. 제 1 항에 있어서,
    상기 제1컨텐츠를 캐싱하는 단계는,
    상기 엔티티에 캐싱된 하나 이상의 컨텐츠의 라이프타임(lifetime)에 기초하여, 상기 제1컨텐츠를 캐싱하는 단계를 포함하는, 컨텐츠 캐싱 방법.
  3. 제 1 항에 있어서,
    상기 제1컨텐츠를 캐싱하는 단계는,
    상기 수신된 제1컨텐츠를 캐싱하기 위한 캐시메모리가 풀(full)인지 여부를 판단하는 단계;
    상기 판단결과 상기 캐시메모리가 풀이면, 상기 캐시메모리 내에서 라이프타임이 가장 짧은 제2컨텐츠를 상기 캐시메모리에서 삭제하는 단계; 및
    상기 제1컨텐츠를 상기 캐시메모리에 캐싱하는 단계를 포함하는, 컨텐츠 캐싱 방법.
  4. 제 1 항에 있어서,
    상기 프리픽스 트리를 갱신하는 단계는,
    제1프리픽스를 갖는 제1노드의 프리픽스 카운터를 증가시키는 단계를 포함하며,
    상기 제1프리픽스는 상기 제1컨텐츠의 컨텐츠 이름을 구성하는 프리픽스인, 컨텐츠 캐싱 방법.
  5. 제 1 항에 있어서,
    상기 프리픽스 트리를 갱신하는 단계는,
    상기 제1컨텐츠의 컨텐츠 이름을 구성하면서 상기 프리픽스 트리에 포함되지 않는 프리픽스인 제2프리픽스를 갖는 제2노드를 생성하고, 상기 제2노드를 상기 프리픽스 트리에 추가하는 단계를 포함하는, 컨텐츠 캐싱 방법.
  6. 제 4 항 또는 제 5 항에 있어서,
    상기 프리픽스 트리는 상기 제1컨텐츠의 컨텐츠 이름을 구성하는 각 프리픽스를 갖고 있는 트리인, 컨텐츠 캐싱 방법.
  7. 제 1 항에 있어서,
    상기 제1컨텐츠의 라이프타임을 연산하는 단계; 및
    상기 연산된 라이프타임을 저장하는 단계를 더 포함하는, 컨텐츠 캐싱 방법.
  8. 제 7 항에 있어서,
    상기 제1컨텐츠의 라이프타임을 연산하는 단계는,
    라이프타임(tl) 연산식에 기초하여 상기 제1컨텐츠의 라이프타임을 연산하되, 상기 연산식은,
    Figure pat00003

    이며,
    tu는 가변적인 라이프타임 단위이고, n은 컨텐츠 이름을 구성하는 프리픽스의 총 개수이며, PT[i]는 i번째 깊이(depth)의 카운터값이고, w[i]는 의 가중치인, 컨텐츠 캐싱 방법.
  9. 제1항에 따른 컨텐츠 캐싱 방법에 따라 컨텐츠를 캐싱하는 엔티티가, 컨텐츠를 전달하는 방법에 있어서,
    상기 제1컨텐츠에 대한 컨텐츠요청을 수신하는 단계; 및
    상기 컨텐츠요청을 전달한 엔티티로 상기 제1컨텐츠를 전달하는 단계를 포함하는, 컨텐츠 전달 방법.
  10. 제 9 항에 있어서,
    상기 제1컨텐츠를 전달하는 단계는,
    상기 제1컨텐츠의 이름, 프리픽스 트리 및 CS(Content Store) 중 적어도 하나에 기초하여 상기 제1컨텐츠가 캐싱되어 있는지 여부를 판단하는 단계; 및
    판단결과 컨텐츠가 캐싱되어 있다면 상기 제1컨텐츠를 전달하는 단계를 포함하는, 컨텐츠 전달 방법.
  11. 제 1 항에 기재된 방법을 수행하는 프로그램이 기록된 컴퓨터 판독가능한 기록매체.
  12. 컨텐츠 이름으로 컨텐츠가 배포되는 CCN(Content-Centric Network) 상의 엔티티 장치로서,
    컨텐츠를 수신하도록 구성되는 컨텐츠수신부;
    상기 컨텐츠의 이름에 기초하여 프리픽스 트리(prefix tree)를 갱신하도록 구성되는 프리픽스 트리 관리부; 및
    상기 컨텐츠를 캐싱하도록 구성되는 캐싱부를 포함하는, 엔티티 장치.
  13. 제 12 항에 있어서,
    상기 컨텐츠에 대한 컨텐츠요청을 수신하도록 구성되는 요청처리부; 및
    상기 컨텐츠요청을 전달한 엔티티로, 상기 컨텐츠를 전달하도록 구성되는 컨텐츠전달부를 더 포함하는, 엔티티 장치.
KR1020130168204A 2013-12-31 2013-12-31 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법 KR20150080957A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130168204A KR20150080957A (ko) 2013-12-31 2013-12-31 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130168204A KR20150080957A (ko) 2013-12-31 2013-12-31 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법

Publications (1)

Publication Number Publication Date
KR20150080957A true KR20150080957A (ko) 2015-07-13

Family

ID=53792809

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130168204A KR20150080957A (ko) 2013-12-31 2013-12-31 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법

Country Status (1)

Country Link
KR (1) KR20150080957A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170094863A (ko) 2016-02-12 2017-08-22 수원대학교산학협력단 보안 감시 네트워크에서 정보데이터의 전송 및 캐싱 방법, 기록매체, 보안 감시 네트워크의 정보데이터 캐싱 장치, 그리고 보안 감시 네트워크 시스템
KR20170103255A (ko) * 2016-03-03 2017-09-13 에스케이텔레콤 주식회사 D2d 기반의 콘텐츠 캐싱 방법, 이를 수행하는 컴퓨터 프로그램 및 프로그램을 기록한 기록매체
WO2019221501A1 (ko) * 2018-05-17 2019-11-21 주식회사 엔터플 디지털 콘텐트 전달 추적 방법 및 장치
US10819823B2 (en) 2017-04-03 2020-10-27 Electronics And Telecommunications Research Institute Apparatus and method for in-network caching

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170094863A (ko) 2016-02-12 2017-08-22 수원대학교산학협력단 보안 감시 네트워크에서 정보데이터의 전송 및 캐싱 방법, 기록매체, 보안 감시 네트워크의 정보데이터 캐싱 장치, 그리고 보안 감시 네트워크 시스템
KR20170103255A (ko) * 2016-03-03 2017-09-13 에스케이텔레콤 주식회사 D2d 기반의 콘텐츠 캐싱 방법, 이를 수행하는 컴퓨터 프로그램 및 프로그램을 기록한 기록매체
US10819823B2 (en) 2017-04-03 2020-10-27 Electronics And Telecommunications Research Institute Apparatus and method for in-network caching
WO2019221501A1 (ko) * 2018-05-17 2019-11-21 주식회사 엔터플 디지털 콘텐트 전달 추적 방법 및 장치
KR20190131683A (ko) * 2018-05-17 2019-11-27 주식회사 엔터플 디지털 콘텐트 전달 추적 방법 및 장치
US11816091B2 (en) 2018-05-17 2023-11-14 N-Tuple. Co. Ltd. Method and apparatus for tracking digital content transfer

Similar Documents

Publication Publication Date Title
KR20200040722A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 소유자 및 노드의 패킷 전송 방법
CN105721311B (zh) 一种用于更新链路状态信息的方法及系统
EP2835942B1 (en) Dynamic interest forwarding mechanism for information centric networking
JP5068858B2 (ja) スーパーピアトゥピアネットワークのユーザによって発信されたコンテンツデータパッケージを配信する方法
KR101978177B1 (ko) 컨텐츠 중심 네트워크에서 노드가 컨텐츠를 저장하는 방법 및 컨텐츠 제공자가 컨텐츠를 전송하는 방법
KR20130088774A (ko) 분할 콘텐트 전달 시스템 및 방법
US9860335B2 (en) Method, device and system for delivering live content
US20140280823A1 (en) Wire-speed pending interest table
KR102160494B1 (ko) 네트워크 노드, 엔드포인트 노드 및 관심 메시지 수신 방법
EP3176994B1 (en) Explicit content deletion commands in a content centric network
JP2017069950A (ja) スモールマルチパス又はシングルパス転送状態による情報中心ネットワーキング
KR20130008325A (ko) 컨텐츠 중심 네트워크에서 컨텐츠 요청자, 중간 노드 및 컨텐츠 소유자의 통신 방법
JP6514217B2 (ja) セグメントに分割されたマルチメディアコンテンツを受信するように構成されたクライアント端末によるネットワーク情報取得方法
CN109639758B (zh) 内容中心网络中用户行为隐私的保护方法及装置
WO2021253889A1 (zh) 负载均衡方法、装置、代理设备、缓存设备及服务节点
JP2015501488A (ja) ピアツーピアコンテンツ配信システムにおけるピアによって受信されたコンテンツの完全性の確認
JP2016059039A (ja) Ccnにおける中間ルータにおけるインタレストキープアライブ
US20180013610A1 (en) File delivery method, apparatus and system
CN108769252B (zh) 一种基于请求内容关联性的icn网络预缓存方法
KR20150080957A (ko) 컨텐츠 중심 네트워크에서 프리픽스 트리를 이용하여 예측된 컨텐츠 인기도에 기초하여 캐싱하는 방법
US20190007522A1 (en) Method of optimizing traffic in an isp network
CN109873855A (zh) 一种基于区块链网络的资源获取方法和系统
KR101384794B1 (ko) 메시지 라우팅 플랫폼
JP2016025657A (ja) 再構築可能なコンテンツオブジェクト
JP6674856B2 (ja) 通信制御装置、通信制御方法及び通信制御システム

Legal Events

Date Code Title Description
E601 Decision to refuse application