KR20180075079A - 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법 - Google Patents

협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법 Download PDF

Info

Publication number
KR20180075079A
KR20180075079A KR1020160179000A KR20160179000A KR20180075079A KR 20180075079 A KR20180075079 A KR 20180075079A KR 1020160179000 A KR1020160179000 A KR 1020160179000A KR 20160179000 A KR20160179000 A KR 20160179000A KR 20180075079 A KR20180075079 A KR 20180075079A
Authority
KR
South Korea
Prior art keywords
content
replacement
cache server
cache
determination unit
Prior art date
Application number
KR1020160179000A
Other languages
English (en)
Other versions
KR101924165B1 (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 한국과학기술원
Priority to KR1020160179000A priority Critical patent/KR101924165B1/ko
Publication of KR20180075079A publication Critical patent/KR20180075079A/ko
Application granted granted Critical
Publication of KR101924165B1 publication Critical patent/KR101924165B1/ko

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/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/2823
    • H04L67/2842
    • 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

Landscapes

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

Abstract

본 발명은 콘텐츠 교체 장치 및 방법에 관한 것으로, 특히, 콘텐츠 수요 정보가 알려지지 않은 경우에 수요 적응형 방식으로 콘텐츠 교체를 지원하고, 협력 캐싱 시스템에 사용가능하며, 최적의 콘텐츠 교체가 가능하도록 마코브 결정 프로세스(Markov Decision Process) 모델링에 기반한 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법에 관한 것이다.
또한, 본 발명에 따르면, 이웃 캐시서버 또는 콘텐츠 근원서버로부터 콘텐츠가 수신되면, 수신 콘텐츠를 파악하는 수신 콘텐츠 판단부; 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태인지 판단하여 캐싱 상태이면 콘텐츠 교체없이 요청 단말로 해당 콘텐츠를 전송하는 캐싱 상태 판단부; 상기 캐싱 상태 판단부의 판단 결과, 상기 요청 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태가 아니면 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 결정하는 교체 판단부; 및 상기 교체 판단부에서 결정된 교체 대상 콘텐츠를 수신 콘텐츠와 교체하는 교체 수행부를 포함하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법이 제공된다.

Description

협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법{Efficient Content Replacement Controller in Cooperative Caching Systems and method thereof}
본 발명은 콘텐츠 교체 장치 및 방법에 관한 것으로, 특히, 콘텐츠 수요 정보가 알려지지 않은 경우에 수요 적응형 방식으로 콘텐츠 교체를 지원하는 장치 및 방법으로써 협력 캐싱 시스템에 초점을 맞추어 고안되었고, 마코브 결정 프로세스(Markov Decision Process) 모델링에 기반한 강화학습을 통한 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법에 관한 것이다.
콘텐츠 전달 네트워크(CDN, Content Delivery Network)는 콘텐츠 제공자(CP, Content Provider)의 콘텐츠를 사용자에게 효율적으로 제공하기 위해 다수의 캐시서버들을 분산적으로 배치시키고 이 캐시서버들에 콘텐츠 사본을 캐싱해 놓는 방식으로 콘텐츠 다운로드 시간 및 네트워크 부하를 줄일 수 있도록 하는 네트워크로서, 캐시서버단에서의 히트율이 높을수록 성능개선폭이 커지므로 이를 위한 대표적인 방법으로써 협력 캐싱(Cooperative Caching)에 관한 연구들이 주목받아 왔다.
콘텐츠 전달 네트워크에서는 캐시서버의 캐시용량이 유한하기 때문에 콘텐츠 제공자의 콘텐츠 중에, 재요청 가능성이 높은 일부의 콘텐츠가 캐시 서버에 저장되는 것이 유리하며, 사용자 장치(UE, User Equipment)는 원거리에 위치한 콘텐츠 근원서버 대신 사용자 장치로부터 근거리에 위치하는 캐시 서버로부터 콘텐츠를 다운로드 받는다.
따라서 사용자 장치는 보다 빠른 속도로 콘텐츠를 다운로드받을 수 있으며, 콘텐츠 근원서버로 집중될 수 있는 트래픽이 분산될 수 있다.
콘텐츠 전달 네트워크에서 이용되는 캐싱 알고리즘에는 콘텐츠 수요 정보가 미리 추정될 수 있다는 가정하에 다양한 추정기법을 적용하는 프로액티브(proactive) 방법과 콘텐츠 수요 정보가 알려지지 않는 경우에 다양한 적응기법을 적용하는 적응형(reactive) 방법이 있다.
상기 콘텐츠 전달 네트워크에서 이용되는 캐싱 알고리즘으로 적응형 방법은 캐시 서버에 적재된 후 사용되지 않은 채로 가장 오래 머무른 콘텐츠를 우선적으로 교체하는 최소 최근 사용(LRU:Least Recently Used) 방식, 적재된 후 가장 적게 사용된 콘텐츠를 우선적으로 교체하는 최소 빈도 사용(LFU:Least Frequently Used) 방식, 이 둘을 절충한 최소 최근 사용 및 빈도 사용(LRFU: Least Recently Frequently Used) 방식 등이 있다.
상기 LRU, LFU, LRFU 알고리즘은 본래 협력 캐싱을 고려하지 않은채로 고안되었으며, 이에 따라 사용자가 캐시 서버에 임의의 콘텐츠를 요청했을 때 해당 콘텐츠가 해당 캐시서버에 존재하지 않을 경우, 콘텐츠 근원서버에게 다시 콘텐츠 요청 메시지를 전송하여 콘텐츠 근원서버로부터 요청 콘텐츠를 수신한다.
국내등록번호 10-1546199호 국내등록번호 10-1540540호 국내공개번호 10-2011-0002808호
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, 콘텐츠 수요 정보가 알려지지 않은 경우에 수요 적응형 방식으로 콘텐츠 교체를 지원하는 장치 및 방법으로써 협렵 캐싱 시스템에 초점을 맞추어 고안되었고 마코브 결정 프로세스 모델링에 기반한 강화학습을 통해 효율적인 콘텐츠가 교체 가능하도록 구현한 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법을 제공하는데 있다.
본 발명의 일 측면은 이웃 캐시서버 또는 콘텐츠 근원서버로부터 콘텐츠가 수신되면, 수신 콘텐츠를 파악하는 수신 콘텐츠 판단부; 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태인지 판단하여 캐싱 상태이면 콘텐츠 교체를 하지 않고 해당 콘텐츠 요청 단말로 해당 콘텐츠를 전송하는 캐싱 상태 판단부; 상기 캐싱 상태 판단부의 판단 결과, 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태가 아니면 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 결정하는 교체 판단부; 및 상기 교체 판단부에서 결정된 교체 대상 콘텐츠를 새로 수신된 콘텐츠와 교체하는 교체 수행부를 포함한다.
또한, 본 발명의 다른 측면은 (A) 수신 콘텐츠 판단부가 이웃 캐시서버 또는 콘텐츠 근원서버로부터 콘텐츠가 수신되면, 수신 콘텐츠를 파악하는 단계; (B) 캐싱 상태 판단부가 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태인지 판단하여 캐싱 상태이면 콘텐츠 교체를 하지 않고 해당 콘텐츠 요청 단말로 해당 콘텐츠를 전송하는 단계; (C) 교체 판단부는 상기 캐싱 상태 판단부의 판단 결과, 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태가 아니면 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 결정하는 단계; 및 (D) 교체 수행부는 상기 교체 판단부에서 결정된 교체 대상 콘텐츠를 새로 수신한 콘텐츠와 교체하는 단계를 포함한다.
본 발명은 콘텐츠 수요 정보가 알려지지 않은 경우에 수요 적응형 방식으로 콘텐츠 교체를 지원할 수 있다.
또한, 본 발명은 협력 캐싱 시스템에 사용가능하다.
또한, 본 발명은 마코브 결정 프로세스 모델링을 콘텐츠의 효율적인 교체가 가능하도록 구현하여 실제 캐싱 시스템에 사용가능하여 실용적이 되도록 한다.
도 1은 본 발명이 적용되는 일실시예에 따른 협력 캐싱 시스템의 구성도이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치의 구성도이다.
도 3은 콘텐츠 교체 과정을 설명하기 위한 개념도이다.
도 4는 본 발명의 바람직한 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법의 흐름도이다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 설명하기 위하여 이하에서는 본 발명의 바람직한 실시예를 예시하고 이를 참조하여 살펴본다.
먼저, 본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니며, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 또한 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
도 1은 본 발명이 적용되는 일실시예에 따른 협력 캐싱 시스템의 구성도이다.
도 1을 참조하면, 본 발명이 적용되는 일실시예에 따른 협력 캐싱 시스템은 콘텐츠 근원 서버(100), 캐싱시스템 제어 서버(400), 복수의 캐시 서버(200-1~200-N) 및 다수의 단말(300)로 구성된다.
본 발명의 실시예에 따른 설명을 위해 필요한 개략적인 구성만을 도시할 뿐 이러한 구성에 국한되는 것은 아니다.
콘텐츠 근원 서버(100)는 복수의 캐시 서버(200-1~200-N)에 콘텐츠 사본을 제공한다.
복수의 캐시 서버(200-1~200-N)는 콘텐츠 근원 서버(100)로부터 콘텐츠 사본을 제공받아 캐싱하고, 사용자가 연결된 단말(300)에 콘텐츠를 전달한다.
이처럼 캐시 서버(200-1~200-N)는 일반적으로 복수 개로 구현되며(단수개일 수도 있음), 각각의 캐시 서버(200-1~200-N)가 콘텐츠 근원 서버(100)와 연결된다. 이러한 캐시 서버(200-1~200-N)는 서로 협력 캐싱을 수행한다.
상기 단말(300)은 캐시 서버(200-1~200-N)로부터 전송된 콘텐츠를 사용자에게 제공한다.
한편, 캐싱시스템 제어 서버(400)는 선택적으로 설치될 수 있으며, 캐시 서버(200-1~200-N)의 콘텐츠 요청에 대한 라우팅을 결정하며, 콘텐츠 서비스 스케쥴링을 결정하고, 콘텐츠 교체 결정을 수행한다.
여기에서, 캐싱시스템 제어 서버(400)라고 지칭하는 이유는 해당 제어 서버에서 콘텐츠 교체 뿐만 아니라, 콘텐츠 전송 등과 관련된 광범위한 제어를 하는 장치를 의미하기 때문이다.
이와 같은 캐싱시스템 제어 서버(400)에 본 발명에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 기법이 설치되어 콘텐츠 교체 결정을 수행하고 그 결과를 캐시 서버(200-1~200-N)에 통보하여 콘텐츠 교체가 이루어지도록 한다.
물론, 이와 같은 캐싱시스템 제어 서버(400)가 없는 경우에는 캐시 서버(200-1~200-N)에 본 발명에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 기법이 캐시 서버에 설치되어 콘텐츠 교체 결정이 수행될 수 있다.
도 2는 본 발명의 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치의 구성도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치는 콘텐츠 수신부(10), 수신 콘텐츠 판단부(20), 캐싱 상태 판단부(30), 출력부(40), 교체 판단부(50) 및 교체 수행부(60)를 구비하고 있다.
상기 콘텐츠 수신부(10)는 이웃 캐시서버 또는 콘텐츠 근원서버(300)로부터 콘텐츠를 수신하여 수신 콘텐츠 판단부(20)로 전송한다.
그러면, 수신 콘텐츠 판단부(30)는 수신된 콘텐츠를 파악한다.
캐싱 상태 판단부(30)는 N개의 캐시 서버(200-1~200-N)중 하나(일예로 이하에서는 200-n을 선택하여 설명한다. 1≤n≤N이다)의 캐싱 상태를 파악하여 해당 콘텐츠를 가지고 있으면, 해당 콘텐츠를 교체하지 않고 출력부(40)를 통하여 요청 단말(300)로 전송한다.
이와 달리 캐싱 상태 판단부(30)는 해당 캐시 서버(200-n)의 캐싱 상태를 파악하여 해당 콘텐츠를 가지고 있지 않은 경우에 해당 콘텐츠를 해당 캐시 서버(200-n)에 새로 캐싱을 하기 위해 기존 콘텐츠 중 어떤 콘텐츠를 교체해야 할지를 판단하기 위해 교체 판단부(50)에 요청한다.
이러한 요청을 수신한 교체 판단부(50)는 마코브 결정 프로세스(Markov Decision Process) 모델링에 기반한 강화 학습을 통하여 수신된 콘텐츠가 캐싱되어 있지 않다고 판단되면 이를 캐싱하기 위해 현재 캐시 서버(200-n)에 캐싱되어 있는 콘텐츠들 중 어떤 콘텐츠를 교체해야할지를 판단하고, 교체 대상을 특정한다.
이처럼 교체 판단부(50)는 콘텐츠의 교체가 필요하고, 그 교체 대상이 특정되면 교체 수행부(60)를 통해 새로 수신된 콘텐츠와 현재 캐시 서버(200-n)에 캐싱되어 있는 교체 대상 콘텐츠의 교체 작업을 수행한다.
상기 교체 판단부(50)에서 수행되는 과정을 좀더 상세히 살펴보면 다음과 같다.
상기 교체 판단부(50)는 강화학습 알고리즘을 이용하여 콘텐츠 교체 대상을 특정한다.
강화 학습은 동적인 환경 하에서 시행착오를 거쳐 환경으로부터 주어지는 보상(reward)을 최대화하도록 하는 학습 방법이다.
강화 학습 방식에 기반하여 행동하는 교체 판단부(50)는 특정 상태에서 가능한 행동들 중 하나를 택해 행하고 이 행동의 결과로써 다른 상태로 이동하게 된다.
이때, 환경으로부터 행동의 대가에 해당하는 보상을 받게 된다. 강화 학습의 목표는 이러한 보상을 최대화하는 것이다. Q-learning 문헌에 따르면, 매 순간 Q 값이 최대인 행동을 선택하면 궁극적으로 최대 보상을 달성할 수 있다.
본 발명에서 고려하는 협력 캐싱 시스템 환경에서는 상태(state)는 현재 캐시 서버(200-n)가 콘텐츠들(c1~ck)을 캐싱하고 있는지 여부를 나타낸다.
즉, sn으로 캐시 서버(200-n)의 캐싱 상태가 표시되고, 모든 캐시 서버(200-1~200-N)의 상태 S는 S={s1,s2,…,sN}로 표현된다.
그리고, 콘텐츠가 K개 있을 때에(K는 자연수)(즉, c1~cK가 있을 때에) 각각의 캐시 서버(200-1~200-N)의 상태는 sn=(sn(c1),sn(c2),…,sn(cK))로 표현되며(여기에서, 1≤n≤N이다), 여기에서 해당 캐시 서버(200-n)에 콘텐츠 ck가 캐싱되어 있으면 sn(cK)=1이고, 해당 캐시 서버(200-n)에 콘텐츠 ck가 캐싱되어 있지 않으면 sn(cK)=0이다(여기에서 (1≤k≤K)이다).
행동은 캐시 서버(200-n)에서 행동을 an이라고 하면 모든 캐시 서버(200-1~200-N)의 행동 A={a1, a 2,…, a N}으로 표현된다.
여기에서, an은 새로 캐싱되는 콘텐츠 k를 캐싱하고(c+ k로 표기함) 새로 교체되는 콘텐츠 l를 교체하여 대체하는 것으로((c- l로 표기함), an=(an(c+ 1,c- 1),an(c+ 1,c- 2),…an(c+ 1,c- K),…an(c+ K,c- 1),an(c+ K,c- 2),…an(c+ K,c- K))로 표현된다.
이때, an(c+ k,c- l)은 새로운 콘텐츠와 종래 콘텐츠가 동일한 것으로 무의미하기 때문에 0이며, 새로운 ck의 콘텐츠를 종래 cl과 교체하는 경우에 an(c+ k,c- l)=1이고, 새로운 ck의 콘텐츠를 종래 cl과 교체하지 않는 경우에 an(c+ k,c- l)=0이다.
그리고, 보상 R은 해당 캐시 서버(200-n)의 상태 sn에서 행동 an 을 취했을 때의 보상으로써 R(sn, an)로 표기한다.
본 발명에서는 Q-학습(Q-learning) 알고리즘을 이용하며, Q-학습(Q-learning) 알고리즘은 강화 학습 방법들 중 대표적으로 쓰이는 알고리즘으로서, 시간 변화에 따른 적합도 차이를 학습에 이용하는 TD-학습(Temporal Difference learning)의 한 종류이다(S. J. Yiand B. T. Zhang, "Hierachical reinforcement learning with exploration bonus," KIISE Korea Computer Congress 2001, vol. 28, no. 2, pp. 151-153, 2001. 참고).
Q-학습(Q-learning)에서는 특정한 상태에 놓여있을 때, 취할 수 있는 각각의 행동에 대한 보상 정보를 이용하여 Q-값(Q-value)을 학습한다.
캐시 서버들(200-1~200-N)중에서 특정 캐시 서버(200-n)의 현재 상태를 sn, 행동을 an라 할 때 시간 t(달리 말해, 학습 횟수)에서 상태 sn에서 an라는 행동을 할 때의 행동 값 함수(Action-Value Function) Q-값(Q-value)은 Qt n(sn,an)로 표현한다.
이에 따라 시간 t+1에서의 Q-값은 Qt+1 n(sn,an)로 표현된다.
또한, 시간 t에서 보상은 Rt n(sn,an)로 표현된다.
시간 t+1에서 현재 상태를 s' n, 행동을 a' n라 할 때 Q-값(Q-value)은 수학식 1에 의해서 구할 수 있다.
(수학식 1)
Figure pat00001
여기에서,
Figure pat00002
는 t+1에서 가능한 모든 행동들의 집합이며, α는 학습률(learning rate)로서 Q-값(Q-value)에 대한 새로운 정보가 이전 정보보다 어느 정도 비중 있는지를 나타낸다. γ는 감쇠율(discount factor)로서 예측되는 미래 보상에 대한 중요성을 나타낸다.
다음 수학식 2에서 나타난 바와 같이 모든 상태를 위한 최대 Q-값을 갖는 행동을 얻을 수 있다.
결국에 강화학습의 목적은 MDP문제에 대한 최적의 정책(optimal policy)((π* n(sn))을 찾는 것이다.
정책(policy)의 정의는 상태 sn에서의 행동 an을 의미한다.
최적의 정책(π* n(sn))은 최적의 행동 값 함수 Q*(sn,an)을 통해 아래와 같이 표현된다.
(수학식 2)
Figure pat00003
an은 집합
Figure pat00004
의 원소이다.
최적의 행동 값 함수를 안다면 행동값 함수가 가장 높은 행동을 선택해주면 되므로 콘텐츠 교체 대상이 특정된다.
이러한 최적의 행동 값 함수를 구하기 위해서는 수학식 1에서 볼 수 있듯이 보상이 중요하며 도 3에 콘텐츠 교체 동작 개념도를 보면, 새로운 콘텐츠 c4를 수신할 때, 현재 캐싱 상태가 c1과 c2일때, 기존 콘텐츠 c1을 교체하게 되면 다음 캐상 상태는 c2와 c4를 캐싱하고 있게 된다.
이때, 새로 캐싱될 콘텐츠에 대해서는 히트 증가 예측량을 산출하여 이득으로 하고, 교체될 콘텐츠에 대해서는 히트 감소 예측량을 산출하여 손실로 하며, 이처럼 산출된 이득과 손실을 합산하여 보상으로 정의 한다.
즉, 시간 t에서 보상은 Rt n(sn,an)로 하고, 이득을 Gt n(sn,an)로 표현하며, 손실을 Lt n(sn,an)로 하면 아래 수학식 3과 같이 표현된다.
(수학식 3)
Figure pat00005
그리고, 이득과 손실은 고려하는 시스템 모델이 협력캐시시스템인 점을 감안할 때 해당 캐시 서버(200-n)뿐만 아니라 주위의 이웃하는 캐시 서버(200-m)(1≤m≤N)에 의해서도 영향을 받는다.
즉, 이득은 해당 캐시 서버(200-n)의 히트 예측 증가량(Local 히트 예측 증가량)과 이웃 캐시 서버(200-m)의 히트 예측 증가량(이웃 히트 예측 증가량)을 합산하여 아래 수학식 4와 같이 산출할 수 있다.
(수학식 4)
Figure pat00006
여기에서, C+(sn, an)은 상태 sn에서 an이라는 행동을 할 때 새롭게 캐싱되는 콘텐츠 집합을 나타내며, 새로 캐싱되는 콘텐츠는 c+로 표현되며, NBR(n)은 캐시 서버(200-n)의 이웃 캐시 서버 집합을 나타내며, NetCache는 콘텐츠 근원서버(100)를 나타내며, E[rnm c +(t)]는 새로 캐싱되는 콘텐츠 c+에 대해 캐시 서버(200-n)가 이웃하는 캐시 서버(200-m)로 요청하는 평균량을 의미하고, E[rmn c +(t)]는 새로 캐싱되는 콘텐츠 c+에 대해 이웃하는 캐시 서버(200-m)가 캐시 서버(200-n)로 요청하는 평균량을 의미하고, β는 이웃 히트 예측 증가량에 대한 가중치이다.
또한, 손실은 해당 캐시 서버(200-n)의 히트 예측 감소량과 이웃 캐시 서버(200-m)의 히트 예측 감소량을 아래 수학식 5와 같이 산출할 수 있다.
(수학식 5)
Figure pat00007
여기에서, C-(sn, an)은 상태 sn에서 an이라는 행동을 할 때를 나타내며, 교체되는 콘텐츠는 c-로 표현되며, NBR(n)은 캐시 서버(200-n)의 이웃 캐시 서버 집합을 나타내며, E[rnn c -(t)]는 교체되는 콘텐츠 c-에 대해 캐시 서버(200-n)가 자기자신에게 요청하는 평균량을 의미하고, E[rmn c -(t)]는 교체되는 콘텐츠 c-에 대해 이웃하는 캐시 서버(200-m)가 캐시 서버(200-n)로 요청하는 평균량을 의미하고, β는 이웃 히트 예측 감소량에 대한 가중치이다.
이와 같이 교체 판단부(50)는 콘텐츠 교체 대상이 특정되면 이를 교체 수행부(60)로 알려주며, 교체 수행부(60)는 콘텐츠 교체를 수행하며, 교체된 콘텐츠를 단말로 전송한다.
도 4는 본 발명의 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법의 흐름도이다.
도 4를 참조하면, 본 발명의 바람직한 일 실시예에 따른 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법은 콘텐츠 수신부가 이웃 캐시서버 또는 콘텐츠 근원서버로부터 콘텐츠를 수신하면(S100), 수신 콘텐츠 판단부가 수신 콘텐츠를 파악한다(S102).
그리고, 캐싱 상태 판단부(30)는 해당 캐시 서버에 해당 콘텐츠가 캐싱되어 있는지를 판단하여(S104), 해당 캐시 서버에 해당 콘텐츠가 캐싱되어 있으면 출력부를 통해 해당 콘텐츠를 단말로 전송한다(S106).
이와 달리 해당 캐시 서버에 해당 콘텐츠가 캐싱되어 있지 않으면, 캐싱 상태 판단부는 위에서 설명한 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 특정한다(S108).
그리고, 교체 수행부는 해당 콘텐츠를 교체 대상 콘텐츠와 교체 작업을 수행한다(S110).
본 발명은 콘텐츠 수요 정보가 알려지지 않은 경우에 수요 적응형 방식으로 콘텐츠 교체를 지원할 수 있다.
또한, 본 발명은 임의의 협력 캐싱 시스템에 사용가능하다.
또한, 본 발명은 마코브 결정 프로세스 모델링에 기반한 강화학습 알고리즘을 다수의 콘텐츠가 교체 가능하도록 구현하여 실제 캐싱 서버에 사용가능하게 함으로써 실용적이 되도록 한다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 기재된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상이 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해서 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
10 : 콘텐츠 수신부 20 : 수신 콘텐츠 판단부
30 : 캐싱 상태 판단부 40 : 출력부
50 : 교체 판단부 60 : 교체 수행부
100 : 콘텐츠 근원 서버 200-1~200-N : 캐시 서버
300 : 단말 400 : 캐싱 시스템 제어 서버

Claims (14)

  1. 이웃 캐시서버 또는 콘텐츠 근원서버로부터 콘텐츠가 수신되면, 수신 콘텐츠를 파악하는 수신 콘텐츠 판단부;
    상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시에 캐싱 상태인지 판단하여 캐싱 상태이면 해당 콘텐츠를 교체하지 않고 요청 단말에 전송하는 캐싱 상태 판단부;
    상기 캐싱 상태 판단부의 판단 결과, 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시에 캐싱 상태가 아니면 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 결정하는 교체 판단부; 및
    상기 교체 판단부에서 결정된 교체 대상 콘텐츠를 새로 수신된 콘텐츠와 교체하는 교체 수행부를 포함하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  2. 청구항 1항에 있어서,
    상기 수신 콘텐츠 판단부, 상기 캐싱 상태 판단부, 상기 교체 판단부 및 상기 교체 수행부가 각 해당 캐시 서버에 설치되어 있는 분산형인 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  3. 청구항 1항에 있어서,
    상기 수신 콘텐츠 판단부, 상기 캐싱 상태 판단부 및 상기 교체 판단부가 캐시 서버들을 제어하는 캐싱 시스템 제어 서버에 설치되어 있는 중앙집중형인 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  4. 청구항 1항에 있어서,
    상기 교체 판단부는 캐시 콘텐츠 리스트 상태, 캐시 콘텐츠 교체 행동, 캐시 콘텐츠 교체시 이득 보상에 의해 정의된 마코브 결정 프로세스 모델을 기반으로 한 강화학습 알고리즘을 토대로 교체 대상 콘텐츠를 결정하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  5. 청구항 1항에 있어서,
    상기 교체 판단부가 마코브 결정 프로세스 모델링에 사용하는 보상개념을 기반으로 교체판단을 수행하는데 새롭게 캐싱될 콘텐츠에 대한 히트 증가 예측량을 산출하여 이득으로 하고, 교체될 콘텐츠에 대해서는 히트 감소 예측량을 산출하여 손실로 하여 이득에 손실을 합산하여 보상으로 정의하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  6. 청구항 5항에 있어서,
    상기 교체 판단부가 마코브 결정 프로세스 모델링에 사용하는 보상개념을 기반으로 교체판단을 수행하는데 이득은 캐시 서버 n의 히트 예측 증가량과 이웃하는 캐시 서버 m의 히트 예측 증가량을 합산하여 산출하고, 손실은 캐시 서버 n의 히트 예측 감소량과 이웃하는 캐시 서버 m의 히트 예측 감소량을 합산하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  7. 청구항 6항에 있어서,
    상기 교체 판단부에서 규정하는 이득에서 캐시 서버 n의 히트 예측 증가량은 새로 캐싱되는 콘텐츠 c+에 대해 캐시 서버 n에서 이웃하는 캐시 서버 m으로 요청하는 평균량을 이용하여 산출하고, 이웃하는 캐시 서버 m의 히트 예측 증가량을 새로 캐싱되는 콘텐츠 c+에 대해 이웃 캐시 서버 m에서 캐시 서버 n으로 요청하는 평균량을 이용하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  8. 청구항 5항에 있어서,
    상기 교체 판단부의 손실에서 캐시 서버 n의 히트 예측 감소량은 교체되는 콘텐츠 c-에 대해 캐시 서버 n에서 자기자신에게 요청하는 평균량을 이용하여 산출하고, 이웃하는 캐시 서버 m의 히트 예측 감소량은 교체되는 콘텐츠 c-에 대해 이웃 캐시 서버 m에서 캐시 서버 n으로 요청하는 평균량을 이용하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치.
  9. (A) 수신 콘텐츠 판단부가 콘텐츠 수신되면, 수신 콘텐츠를 파악하는 단계;
    (B) 캐싱 상태 판단부가 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태인지 판단하여 캐싱 상태이면 콘텐츠를 교체하지 않고 요청 단말로 해당 콘텐츠를 전송하는 단계;
    (C) 교체 판단부는 상기 캐싱 상태 판단부의 판단 결과, 상기 수신 콘텐츠 판단부에서 판단한 수신 콘텐츠가 해당 캐시 서버에 캐싱 상태가 아니면 마코브 결정 프로세스 모델링에 기반한 강화학습을 통하여 교체 대상 콘텐츠를 결정하는 단계; 및
    (D) 교체 수행부는 상기 교체 판단부에서 결정된 교체 대상 콘텐츠를 수신 콘텐츠와 교체하는 단계를 포함하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
  10. 청구항 9항에 있어서,
    상기 (C) 단계에서 교체 판단부는 캐시 콘텐츠 리스트 상태, 캐시 콘텐츠 교체 행동, 캐시 콘텐츠 교체시 이득 보상에 의해 정의된 마코브 결정 프로세스 모델을 기반으로 한 강화학습 알고리즘을 토대로 효율적인 콘텐츠 교체를 수행하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
  11. 청구항 9항에 있어서,
    상기 (C) 단계에서 교체 판단부가 마코브 결정 프로세스 모델링에 사용하는 보상개념을 기반으로 교체 판단을 수행하는데 새롭게 캐싱될 콘텐츠에 대한 히트 증가 예측량을 산출하여 이득으로 하고, 교체될 콘텐츠에 대해서는 히트 감소 예측량을 산출하여 손실로 하여 이득에 손실을 합산하여 보상으로 정의하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
  12. 청구항 11항에 있어서,
    상기 (C) 단계에서 교체 판단부가 마코브 결정 프로세스 모델링에 사용하는 보상개념을 기반으로 교체 판단을 수행하는데 이득은 캐시 서버 n의 히트 예측 증가량과 이웃하는 캐시 서버 m의 히트 예측 증가량을 합산하여 산출하고, 손실은 캐시 서버 n의 히트 예측 감소량과 이웃하는 캐시 서버 m의 히트 예측 감소량을 합산하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
  13. 청구항 11항에 있어서,
    상기 (C) 단계에서 교체 판단부에서 규정하는 이득에서 캐시 서버 n의 히트 예측 증가량은 새로 캐싱되는 콘텐츠 c+에 대해 캐시 서버 n에서 이웃하는 캐시 서버 m으로 요청하는 평균량을 이용하여 산출하고, 이웃하는 캐시 서버 m의 히트 예측 증가량을 새로 캐싱되는 콘텐츠 c+에 대해 이웃 캐시 서버 m에서 캐시 서버 n으로 요청하는 평균량을 이용하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
  14. 청구항 11항에 있어서,
    상기 (C) 단계의 교체 판단부에서 규정하는 손실에서 캐시 서버 n의 히트 예측 감소량은 교체되는 콘텐츠 c-에 대해 캐시 서버n에서 자기자신으로 요청하는 평균량을 이용하여 산출하고, 이웃하는 캐시 서버 m의 히트 예측 감소량은 교체되는 콘텐츠 c-에 대해 이웃 캐시 서버 m에서 캐시 서버 n으로 요청하는 평균량을 이용하여 산출하는 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 방법.
KR1020160179000A 2016-12-26 2016-12-26 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법 KR101924165B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160179000A KR101924165B1 (ko) 2016-12-26 2016-12-26 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160179000A KR101924165B1 (ko) 2016-12-26 2016-12-26 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180075079A true KR20180075079A (ko) 2018-07-04
KR101924165B1 KR101924165B1 (ko) 2018-12-03

Family

ID=62913362

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160179000A KR101924165B1 (ko) 2016-12-26 2016-12-26 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101924165B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630742A (zh) * 2020-08-05 2021-11-09 北京航空航天大学 采用信源发布内容的请求率与动态性的移动边缘缓存替换方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102235622B1 (ko) * 2020-11-30 2021-04-01 연세대학교 산학협력단 IoT 환경에서의 협력 에지 캐싱 방법 및 그를 위한 장치
KR20220089532A (ko) 2020-12-21 2022-06-28 한국전자통신연구원 강화 학습을 이용한 ttl 기반 캐쉬 관리 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140080616A (ko) * 2012-12-12 2014-07-01 한국전자통신연구원 네트워크 트래픽 감소를 위한 캐싱 방법
KR101546199B1 (ko) * 2014-12-09 2015-08-21 연세대학교 산학협력단 콘텐츠 전달 네트워크를 위한 협력 캐싱 방법, 콘텐츠 서비스 제공 서버 및 캐싱 서버

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140080616A (ko) * 2012-12-12 2014-07-01 한국전자통신연구원 네트워크 트래픽 감소를 위한 캐싱 방법
KR101546199B1 (ko) * 2014-12-09 2015-08-21 연세대학교 산학협력단 콘텐츠 전달 네트워크를 위한 협력 캐싱 방법, 콘텐츠 서비스 제공 서버 및 캐싱 서버

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
마코프체인을 이용한 콘텐츠 중심 네트워크의 캐싱 성능 분석, 한국콘텐츠학회논문지, 2016.04. 공개 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630742A (zh) * 2020-08-05 2021-11-09 北京航空航天大学 采用信源发布内容的请求率与动态性的移动边缘缓存替换方法

Also Published As

Publication number Publication date
KR101924165B1 (ko) 2018-12-03

Similar Documents

Publication Publication Date Title
EP2923468B1 (en) Transmission of a content reply packet in a content-centric network for caching a content in an intermediate node
JP5892164B2 (ja) コンテンツ配信システム、制御装置およびコンテンツ配信方法
KR101177224B1 (ko) 무선 통신 네트워크에서의 콘텐츠 전달 방법 및 기지국
EP2704402B1 (en) Method and node for distributing electronic content in a content distribution network
EP3648436B1 (en) Method for clustering cache servers within a mobile edge computing network
KR101924165B1 (ko) 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법
US20160255169A1 (en) Method and system for smart object eviction for proxy cache
CN106993014B (zh) 缓存内容的调整方法、装置及系统
JP2007066161A (ja) キャッシュシステム
CN103312716B (zh) 一种访问互联网信息的方法及系统
JP5721854B2 (ja) ユーザ装置に対するアセットのプリフェッチングのためのリソース・プロファイル調整
KR101645409B1 (ko) 네트워크 트래픽 감소를 위한 캐싱 방법
KR20130087810A (ko) 이동통신 시스템에서 협력적 캐슁 방법 및 장치
CN113672819B (zh) 一种基于推荐感知和协作边缘缓存的内容请求处理系统
CN110913430B (zh) 无线网络中文件的主动式协作缓存方法及缓存管理装置
Kottursamy et al. Optimized D-RAN aware data retrieval for 5G information centric networks
CN113873569A (zh) 无线资源管理方法、存储介质和电子设备
US20210120075A1 (en) Global Capacity Routing
US7441086B2 (en) Data caching method and computer-readable medium storing a program executing the method
KR102235622B1 (ko) IoT 환경에서의 협력 에지 캐싱 방법 및 그를 위한 장치
CN113115362B (zh) 协同边缘缓存方法及装置
WO2012175140A1 (en) Gateway selection for load balancing
Paschos et al. Learning to cooperate in D2D caching networks
US9678881B2 (en) Data distribution device and data distribution method
KR101508349B1 (ko) 콘텐츠 전달 네트워크에서의 서버 관리 장치 및 서버 관리 방법

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
GRNT Written decision to grant