KR101500549B1 - Device and method for providing contents using fractional caching - Google Patents

Device and method for providing contents using fractional caching Download PDF

Info

Publication number
KR101500549B1
KR101500549B1 KR1020110131080A KR20110131080A KR101500549B1 KR 101500549 B1 KR101500549 B1 KR 101500549B1 KR 1020110131080 A KR1020110131080 A KR 1020110131080A KR 20110131080 A KR20110131080 A KR 20110131080A KR 101500549 B1 KR101500549 B1 KR 101500549B1
Authority
KR
South Korea
Prior art keywords
content
caching
partial data
information
cache memory
Prior art date
Application number
KR1020110131080A
Other languages
Korean (ko)
Other versions
KR20130064455A (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 KR1020110131080A priority Critical patent/KR101500549B1/en
Publication of KR20130064455A publication Critical patent/KR20130064455A/en
Application granted granted Critical
Publication of KR101500549B1 publication Critical patent/KR101500549B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Landscapes

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

Abstract

콘텐츠 제공 방법은, 네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율(cache miss rate)에 기초하여, 캐싱 블록 사이즈를 결정하는 단계, 상기 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정하는 단계 및 콘텐츠별 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 단계를 포함한다. 상기 캐싱 대상 콘텐츠는 상기 제 1 부분 데이터와 제 2 부분 데이터를 포함한다.The content providing method includes the steps of: determining a caching block size based on network environment information or a cache miss rate for a plurality of contents; determining, for each of the plurality of contents, And storing the first partial data of the content to be cached in the cache memory based on whether or not the content is cached and the caching block size based on the content. The content to be cached includes the first partial data and the second partial data.

Description

부분 캐싱을 이용한 콘텐츠 제공 방법 및 장치 {DEVICE AND METHOD FOR PROVIDING CONTENTS USING FRACTIONAL CACHING}TECHNICAL FIELD [0001] The present invention relates to a content providing method and apparatus using partial caching,

본 발명은 부분 캐싱을 이용한 콘텐츠 제공 방법 및 장치에 관한 것이다.The present invention relates to a content providing method and apparatus using partial caching.

캐싱(Caching)은 데이터를 캐시(Cache) 메모리 또는 디스크 캐시에 일시적으로 저장하는 기술을 의미한다. 캐싱은 중앙 처리 장치(CPU)가 데이터를 주기억 장치 또는 디스크로부터 읽어 오거나, 데이터를 주기억 장치 또는 디스크에 기록하는 것보다 훨씬 빠른 속도를 제공하며, CPU의 연산 속도에 가깝게 단축시킴으로써 컴퓨터의 성능을 향상시킬 수 있다.Caching refers to the technique of temporarily storing data in a cache memory or a disk cache. Caching is much faster than a central processing unit (CPU) reading data from main memory or disk, writing data to main memory or disk, and improving performance .

이와 같은 캐싱 기술은 일반 PC, 모바일 기기 등에 활용되어, I/O(Input/Output) 속도를 향상시킬 수 있으며, 서버의 과부하에 의한 트래픽(traffic)을 감소시키는 데에 활용될 수도 있다. Such a caching technique can be used for general PCs and mobile devices to improve I / O (Input / Output) speed and may be used to reduce traffic caused by server overload.

최근 들어, 기기와 네트워크 환경의 비약적인 발전으로 인해, 리치 미디어(Rich Media)를 사용하는 비율이 폭발적으로 증가하고 있다. In recent years, the use of rich media has been explosively increasing due to the breakthrough in device and network environments.

리치 미디어 콘텐츠는 일반적으로 대용량이고, 특정 시점에 요청이 집중된다는 점에서, 리치 미디어 콘텐츠의 캐싱에 있어서 종래의 전통적인 버퍼 캐싱 방법을 적용하는 것은 비효율적이다.It is inefficient to apply conventional traditional buffer caching methods in caching rich media content, since rich media content is typically large and requests are concentrated at a particular point in time.

종래의 전통적인 버퍼 캐싱 방법의 문제점을 해결하기 위해, 리치 미디어 콘텐츠의 요청 간격에 기초한 인터벌 캐싱(Interval Caching) 방법, 요청 빈도에 기초한 캐싱 방법 등 다양한 연구가 진행되고 있다. In order to solve the problems of the conventional conventional buffer caching method, various studies have been conducted such as an interval caching method based on a request interval of rich media contents and a caching method based on a request frequency.

그러나, 리치 미디어 콘텐츠 전체를 캐싱하는 방법은 캐시의 크기 제약 때문에 캐싱할 수 있는 콘텐츠의 개수가 제한적이라는 문제점이 있으며, 특히 다양한 종류의 콘텐츠를 서비스하는 현재의 환경에서는 더욱 적합하지 않다. However, the method of caching all the rich media contents has a problem that the number of contents that can be cached is limited due to the size restriction of the cache, and is not particularly suitable in the current environment where various kinds of contents are served.

또한, 고비용 콘텐츠와 무료 콘텐츠에 동일한 캐싱 정책을 적용하는 것은 소비자의 기대 품질을 충족시키지 못한다는 문제점이 있다. In addition, applying the same caching policy to high cost content and free content has a problem in that it can not meet the expectation quality of consumers.

이와 관련하여, 선행문헌(한국공개특허 제2007-0035911호)은 객체의 분할을 통해 캐싱 공간을 최대한 확보하면서, 다양한 목적지 유형의 캐싱이 가능한 부분 캐싱 방법 및 이를 이용한 적응형 콘텐츠 전송 방법을 개시하고 있다. In this connection, a prior art (Korean Unexamined Patent Application Publication No. 2007-0035911) discloses a partial caching method capable of caching various destination types while ensuring a maximum caching space through segmentation of objects and an adaptive content transmission method using the partial caching method have.

하지만, 선행문헌은 콘텐츠의 중요도 순위와 인터벌을 동시에 고려하여 컨텐츠의 우선 순위를 결정하는 방법은 개시하고 있지 않다.However, prior art documents do not disclose a method of determining priorities of contents by simultaneously considering the importance ranking and the interval of contents.

본 발명의 일부 실시예는, 콘텐츠의 중요도 정보, 콘텐츠의 인터벌 정보 등에 기초하여, 콘텐츠의 캐싱 여부를 결정하고, 콘텐츠에 대한 캐시 미스율을 줄이기 위해 콘텐츠를 분할 캐싱함으로써 보다 많은 콘텐츠를 캐싱하며, 이를 통해 사용자 단말의 요청 콘텐츠를 효과적으로 제공할 수 있는 콘텐츠 제공 방법 및 장치를 제공하는 데에 목적이 있다. Some embodiments of the present invention determine whether a content is cached based on content importance information, content interval information, and the like, cache more content by dividing the content in order to reduce the cache miss rate for the content, And to provide a content providing method and apparatus capable of effectively providing a requested content of a user terminal through the Internet.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른, 콘텐츠 제공 방법은, 네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율(cache miss rate)에 기초하여, 캐싱 블록 사이즈를 결정하는 단계, 상기 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정하는 단계 및 콘텐츠별 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 단계를 포함한다. 상기 캐싱 대상 콘텐츠는 상기 제 1 부분 데이터와 제 2 부분 데이터를 포함한다.According to a first aspect of the present invention, there is provided a content providing method for providing a caching block size based on network environment information or a cache miss rate for a plurality of contents, Determining whether or not to categorize each of the plurality of contents based on the importance information by content and interval information for each content; and determining whether or not to categorize the plurality of contents based on the caching block size and the caching block size, And storing the first partial data of the content to be cached in the cache memory. The content to be cached includes the first partial data and the second partial data.

본 발명의 제 2 측면에 따른, 콘텐츠 제공 장치는, 네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율에 기초하여, 캐싱 블록 사이즈를 결정하는 캐싱 블록 사이즈 결정부, 상기 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정하는 캐싱 여부 결정부, 콘텐츠별 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 캐싱부를 포함한다. 상기 캐싱 대상 콘텐츠는 상기 제 1 부분 데이터와 제 2 부분 데이터를 포함한다. According to a second aspect of the present invention, a content providing apparatus includes a caching block size determining unit that determines a caching block size based on network environment information or a cache miss rate for a plurality of contents; Based on the importance information and the content-specific interval information, whether the content is cached or not, whether or not each content is cached, and the caching block size, the first partial data of the content to be cached, And a caching unit for storing the data in the cache memory. The content to be cached includes the first partial data and the second partial data.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 콘텐츠의 중요도 정보, 콘텐츠의 인터벌 정보 등에 기초하여, 콘텐츠의 캐싱 여부를 결정하고, 콘텐츠에 대한 캐시 미스율을 줄이기 위해 콘텐츠를 분할 캐싱함으로써 보다 많은 콘텐츠를 캐싱하며, 이를 통해 사용자 단말의 요청 콘텐츠를 효과적으로 제공할 수 있는 콘텐츠 제공 방법 및 장치를 제공할 수 있다. According to any one of the above-mentioned tasks, a content cache is determined based on content importance information, content interval information, or the like, and content cache is divided into a plurality of It is possible to provide a content providing method and apparatus capable of effectively providing requested content of a user terminal by caching the content.

도 1은 본 발명의 일실시예에 따른 콘텐츠 제공 시스템을 설명하기 위한 구성도이다.
도 2는 본 발명의 일실시예에 따른 콘텐츠 제공 장치의 구성을 도시한 블록도이다.
도 3a는 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱 블록의 예시를 도시한 예시도이다.
도 3b는 본 발명의 다른 실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱 블록의 예시를 도시한 예시도이다.
도 4는 본 발명의 일실시예에 따른 콘텐츠 제공 방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 사용자 단말에게 캐싱된 콘텐츠를 제공하는 방법을 설명하기 위한 순서도이다.
도 6은 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 사용자 단말에게 캐싱되지 않은 부분 데이터를 제공하는 방법을 설명하기 위한 순서도이다.
도 7은 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱되지 않은 콘텐츠의 요청에 대한 처리 방법을 설명하기 위한 순서도이다.
1 is a block diagram illustrating a contents providing system according to an embodiment of the present invention.
2 is a block diagram showing the configuration of a content providing apparatus according to an embodiment of the present invention.
3A is an exemplary diagram showing an example of a caching block in a content providing method according to an embodiment of the present invention.
FIG. 3B is an exemplary diagram showing an example of a caching block in a content providing method according to another embodiment of the present invention. FIG.
4 is a flowchart illustrating a content providing method according to an embodiment of the present invention.
5 is a flowchart illustrating a method of providing a cached content to a user terminal in a content providing method according to an embodiment of the present invention.
6 is a flowchart illustrating a method of providing partial data not cached to a user terminal in a content providing method according to an embodiment of the present invention.
7 is a flowchart illustrating a method of processing a request for a non-cached content in a content providing method according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when an element is referred to as "comprising ", it means that it can include other elements as well, without departing from the other elements unless specifically stated otherwise.

본 발명은 전체 콘텐츠 데이터 영역 중 일부인 부분 데이터를 캐싱 영역으로 정의하고, 서비스환경에 따라서 가변적인 크기를 갖는 부분 데이터에 기초하여, 콘텐츠를 부분 캐싱하는 방법을 제공할 수 있다. The present invention can define a partial data part of all the content data areas as a caching area and provide a method of partial caching of content based on partial data having a variable size according to a service environment.

또한, 본 발명은 캐싱 대상이 되는 부분 데이터를 결정함에 있어서, 정책으로 결정된 콘텐츠 요청의 미스율(miss rate)과 실제 발생된 미스율의 차이에 따라서 부분 데이터를 구성하는 캐싱 블록 사이즈를 결정할 수 있으며, 이에 따라 사용자의 초기 접속시간을 일정하게 유지하도록 관리할 수 있다. Further, in determining partial data to be cached, the caching block size configuring the partial data may be determined according to the difference between the miss rate of the content request determined by the policy and the actual miss ratio. Accordingly, it is possible to manage the initial access time of the user to be constant.

이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 콘텐츠 제공 시스템을 설명하기 위한 구성도이다.1 is a block diagram illustrating a contents providing system according to an embodiment of the present invention.

본 발명의 일실시예에 따른 콘텐츠 제공 시스템은 네트워크(10)에 연결된 사용자 단말(100), 콘텐츠 제공 장치(200) 및 콘텐츠 관리 장치(300)를 포함할 수 있다. A content providing system according to an embodiment of the present invention may include a user terminal 100 connected to the network 10, a content providing apparatus 200 and a content managing apparatus 300. [

네트워크(10)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 개인 근거리 무선통신(Personal Area Network; PAN), 이동 통신망(mobile radio communication network) 또는 위성 통신망 등과 같은 모든 종류의 유무선 네트워크로 구현될 수 있다. The network 10 may be a local area network (LAN), a wide area network (WAN), a value added network (VAN), a personal area network (PAN) mobile radio communication network) or satellite communication network.

사용자 단말(100) 은 네트워크(10)를 통해 원격지의 서버에 접속하거나, 타 단말 및 서버와 연결 가능한 컴퓨터나 휴대용 단말기, 텔레비전으로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다.The user terminal 100 may be implemented in a computer, a portable terminal, or a television set, which can be connected to a remote server through the network 10 or connected to other terminals and servers. Here, the computer includes, for example, a notebook computer, a desktop computer, a laptop computer, and the like, each of which is equipped with a web browser (WEB Browser), and the portable terminal may be a wireless communication device , Personal Communication System (PCS), Global System for Mobile communications (GSM), Personal Digital Cellular (PDC), Personal Handyphone System (PHS), Personal Digital Assistant (PDA), International Mobile Telecommunication (IMT) Handheld based wireless communication devices such as W-CDMA (Code Division Multiple Access) -2000, W-CDMA (W-CDMA), Wibro (Wireless Broadband Internet) terminals, can do. In addition, the television may include an Internet Protocol Television (IPTV), an Internet television (TV), a terrestrial TV, a cable TV, and the like.

콘텐츠 제공 장치(200)는 복수의 콘텐츠에 대하여 캐시 미스율(miss rate), 콘텐츠별 중요도 정보, 콘텐츠별 인터벌 정보 등에 기초하여 캐싱 대상 콘텐츠에 대한 부분 캐싱을 수행할 수 있다. The content providing apparatus 200 can perform partial caching of a content to be cached based on a cache miss rate, importance information by content, interval information by content, and the like for a plurality of contents.

콘텐츠 제공 장치(200)는 사용자 단말(100)로부터 콘텐츠 요청을 수신하고, 해당 콘텐츠 요청에 대응되는 콘텐츠를 검색하며, 해당 콘텐츠의 캐싱 여부에 따라 캐싱된 콘텐츠 또는 로컬 저장소 등에 위치한 콘텐츠를 제공할 수 있다. The content providing apparatus 200 receives the content request from the user terminal 100, searches the content corresponding to the content request, and provides the content located in the cached content or the local storage according to whether the content is cached have.

콘텐츠 제공 장치(200)는 콘텐츠의 부분 캐싱 여부를 결정하는 과정에 있어서, 콘텐츠 관리 장치(300)로부터 콘텐츠에 대한 정보를 제공 받을 수 있다. The content providing apparatus 200 may receive information on the content from the content management apparatus 300 in the process of determining whether the content is partially cached.

콘텐츠 관리 장치(300)는 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 등을 저장, 관리할 수 있으며, 콘텐츠 제공 장치(200)의 요청에 따라 콘텐츠에 대한 중요도 정보를 제공할 수 있다. 또한, 콘텐츠 관리 장치(300)는 사용자 단말(100) 또는 콘텐츠 제공 장치(200)로부터 콘텐츠의 중요도 정보를 제공 받아, 콘텐츠별 중요도 정보를 갱신할 수 있다.
The content management apparatus 300 can store and manage the importance information or the like for each content with respect to a plurality of contents and can provide importance information about the content at the request of the content providing apparatus 200. [ In addition, the content management apparatus 300 can receive the importance information of the content from the user terminal 100 or the content providing apparatus 200, and can update the importance information by content.

도 2는 본 발명의 일실시예에 따른 콘텐츠 제공 장치의 구성을 도시한 블록도이고, 도 3a는 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱 블록의 예시를 도시한 예시도이며, 도 3b는 본 발명의 다른 실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱 블록의 예시를 도시한 예시도이다.FIG. 2 is a block diagram showing a configuration of a content providing apparatus according to an embodiment of the present invention, and FIG. 3A is an exemplary view showing an example of a caching block in a content providing method according to an embodiment of the present invention And FIG. 3B is an exemplary view showing an example of a caching block in a content providing method according to another embodiment of the present invention.

본 발명의 일실시예에 따른 콘텐츠 제공 장치(200)는 캐싱 블록 사이즈 결정부(210), 캐싱 여부 결정부(220), 캐싱부(230), 수신부(240), 검색부(250), 콘텐츠 제공부(260) 및 콘텐츠 정보 수신부(270)를 포함할 수 있다. The content providing apparatus 200 according to an exemplary embodiment of the present invention includes a caching block size determining unit 210, a caching determining unit 220, a caching unit 230, a receiving unit 240, a searching unit 250, A content providing unit 260, and a content information receiving unit 270.

캐싱 블록 사이즈 결정부(210)는 네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율에 기초하여, 캐싱 블록 사이즈를 결정한다. The caching block size determination unit 210 determines the caching block size based on the network environment information or the cache miss ratio for a plurality of contents.

여기서, 네트워크 환경 정보는 네트워크의 처리량(throughput) 및 초기 버퍼링 정보를 포함할 수 있으며, 네트워크 환경 정보는 콘텐츠 제공 장치(200)와 복수의 사용자 단말의 로그 데이터에 기초하여 수집되거나, 또는 정책적으로 결정된 고정된 값일 수도 있다. Here, the network environment information may include network throughput and initial buffering information, and the network environment information may be collected based on log data of the content providing apparatus 200 and a plurality of user terminals, It may be a fixed value.

캐싱 블록 사이즈 결정부(210)는 상술한 네트워크의 처리량 및 초기 버퍼링 정보에 기초하여, 캐싱 블록 사이즈를 결정할 수 있다. The caching block size determination unit 210 can determine the caching block size based on the above-described network throughput and initial buffering information.

예를 들어, 고정된 값인 10Mbyte 분량을 캐싱 블록 사이즈로 결정할 수 있으며, 콘텐츠의 10%를 캐싱 블록 사이즈로 결정할 수도 있다. 또는 사용자 단말(100)과 콘텐츠 제공 장치(200)의 네트워크 상태에 기초하여 사용자 단말에서 5초 정도 재생될 수 있는 분량을 캐싱 블록 사이즈로 결정할 수도 있을 것이다. For example, a fixed value of 10 Mbytes may be determined as the caching block size, and 10% of the contents may be determined as the caching block size. Or the amount of content that can be reproduced for about 5 seconds by the user terminal based on the network status of the user terminal 100 and the content providing apparatus 200 as the caching block size.

캐싱 블록 사이즈 결정부는(210)는 복수의 콘텐츠에 대한 캐시 미스율이 기 설정된 목표 캐시 미스율 이하가 되도록, 캐싱 블록 사이즈를 결정할 수 있다. The caching block size determination unit 210 may determine the caching block size such that the cache miss rate for a plurality of contents is equal to or less than a predetermined target cache miss rate.

캐시 메모리에 저장되는 콘텐츠의 부분 데이터는 단일 캐싱 블록으로 구성되거나, 복수의 캐싱 블록으로 구성될 수도 있으며, 캐싱 정책, 캐시 메모리의 상황 또는 네트워크 상황 등에 기초하여, 하나의 부분 데이터를 구성하는 캐싱 블록의 개수는 변경될 수 있는 가변적인 값이다. The partial data of the content stored in the cache memory may be constituted by a single caching block or a plurality of caching blocks and may be constituted by a caching block constituting one partial data, Is a variable value that can be changed.

캐싱 여부 결정부(220)는 복수의 콘텐츠에 대하여, 콘텐츠별 중요도(priority) 정보 및 콘텐츠별 인터벌(interval) 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정한다.The caching determination unit 220 determines whether or not to categorize a plurality of contents based on content priority information and content-specific interval information.

본 발명의 일실시예에 따르면, 캐싱 여부 결정부(220)는 콘텐츠의 캐싱 순위에 기초하여 캐싱 여부를 결정할 수 있으며, 콘텐츠의 캐싱 순위는 콘텐츠의 중요도 정보, 콘텐츠의 인터벌 정보에 기초하여 결정될 수 있다. According to an embodiment of the present invention, the caching determination unit 220 may determine whether or not to cache based on the caching ranking of the content, and the caching ranking of the content may be determined based on the importance information of the content and the interval information of the content have.

콘텐츠의 중요도 정보는 콘텐츠 관리 장치(300)에 저장될 수 있으며, 예를 들어, 프리미엄, 일반 유료, 무료 등의 기준에 따라서 등급화할 수 있다. 콘텐츠의 중요도 정보는 예를 들어, 상, 중, 하 또는 High, Middle, Low 등으로 저장될 수 있으며, 숫자 정보를 이용한 상대 값을 저장할 수도 있다. The content importance information may be stored in the content management apparatus 300 and may be classified according to criteria such as premium, general fee, and free. The importance information of the content may be stored, for example, in upper, middle, lower, or High, Middle, Low, or the like, and may store a relative value using numerical information.

본 발명의 일실시예에 따르면, 유료 콘텐츠와 무료 콘텐츠가 동일한 중요도를 갖는 것은 경제적인 측면에서 합리적이지 못하며, 예를 들어, 유료 콘텐츠 중에서도 프리미엄 콘텐츠과 일반 콘텐츠가 동일하게 캐싱되는 것은 자원관리 측면에서도 비효율적이기 때문에 상술한 바와 같이 콘텐츠의 중요도 정보를 활용하여 캐싱 여부를 결정하게 된다. According to an embodiment of the present invention, it is not economically feasible that paid contents and free contents have the same importance. For example, among paid contents, caching of premium contents and general contents are cached in the same manner, , It is determined whether the caching is performed by using the importance information of the content as described above.

콘텐츠의 인터벌 정보는 복수의 사용자 단말의 해당 콘텐츠 요청 정보에 기초한 정보이며, 예를 들어, 1분 동안 콘텐츠 A를 60번 요청한 경우, 콘텐츠 A의 인터벌은 1초가 될 수 있다. 인터벌은 단위 시간 동안의 평균 값으로 계산될 수 있으며, 최근의 요청에 가중치를 두는 방식에 의해 계산될 수도 있을 것이다. 예를 들어, 최근 1 시간 이내에 요청 횟수가 급격히 늘어난 콘텐츠의 경우, 하루 동안의 평균 값이 아닌 최근 1 시간 이내에 요청된 횟수에 보다 가중치를 두고 인터벌을 계산해야 하는 게 합리적일 수도 있을 것이다. The interval information of the content is information based on the corresponding content request information of a plurality of user terminals. For example, when the content A is requested 60 times for one minute, the interval of the content A may be one second. The interval may be calculated as an average value over a unit time, or may be calculated by weighting recent requests. For example, in the case of a content that has rapidly increased in the number of requests within the last hour, it may be reasonable to calculate the interval based on the number of times requested within the last hour rather than the average value during the day.

캐싱 여부 결정부(220)는 콘텐츠의 중요도 정보, 콘텐츠의 인터벌 정보 이외에 캐시 메모리의 임계 인터벌에 기초하여 콘텐츠의 캐싱 여부를 결정할 수 있다. The caching determination unit 220 can determine whether or not the content is cached based on the criticality information of the content and the interval information of the content based on the critical interval of the cache memory.

콘텐츠 제공 장치(200)는 모든 콘텐츠를 캐싱할 수는 없기 때문에, 캐시 메모리의 임계 인터벌 정보에 기초하여, 콘텐츠의 인터벌 정보가 임계 인터벌 이내인 콘텐츠를 캐싱 대상 콘텐츠로 선정할 수 있다. Since the content providing apparatus 200 can not cache all the contents, it is possible to select, as the content to be cached, a content whose interval information of the content is within the critical interval, based on the critical interval information of the cache memory.

본 발명의 일실시예에 따르면, 캐시 메모리의 임계 인터벌 내에서 중요도별로 콘텐츠를 그룹화 하고 그룹 내에서 인터벌이 짧은 콘텐츠를 캐싱 후보 콘텐츠로 선정할 수 있다. According to an embodiment of the present invention, contents can be grouped according to their importance in a critical interval of a cache memory, and a content having a short interval in a group can be selected as a caching candidate content.

캐시 메모리의 임계 인터벌은 콘텐츠의 캐싱 대상을 판별하는 정보로서, 예를 들어 서비스 정책에 기초하여 관리자가 결정하거나, 캐시 미스율의 통계치를 활용하여 자동적으로 계산될 수 있을 것이다. The critical interval of the cache memory may be determined automatically by a manager based on service policy, for example, or may be automatically calculated using statistics of the cache miss rate as information for determining a caching target of the content.

캐싱 여부 결정부(220)는 콘텐츠별 중요도 정보가 기 설정된 중요도 이상인 콘텐츠 중에서, 콘텐츠별 인터벌 정보가 임계 인터벌 이하인 콘텐츠를 캐싱 대상 콘텐츠로 결정할 수 있다. The caching determination unit 220 can determine, as the content to be cached, a content whose interval information for each content is equal to or less than the critical interval, among the content for which the importance information for each content is equal to or higher than a predetermined importance level.

예를 들어, 캐싱 여부 결정부(220)는 콘텐츠의 중요도 정보가 “High”인 콘텐츠 중에서 콘텐츠의 인터벌 정보가 예를 들어, 임계 인터벌인 1h(hour) 이하인 콘텐츠를 캐싱 대상 콘텐츠로 결정할 수 있을 것이다. For example, the caching determination unit 220 may determine, as the content to be cached, a content whose interval information of the content is, for example, 1 h (hour) or less, among the content whose content importance information is " High " .

캐싱부(230)는 콘텐츠별 캐싱 여부 및 캐싱 블록 사이즈에 기초하여, 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장한다.The caching unit 230 stores the first partial data of the content to be cached among the plurality of contents in the cache memory based on whether or not the content is cached and the caching block size.

캐싱 대상 콘텐츠는 제 1 부분 데이터와 제 2 부분 데이터를 포함하며, 제 1 부분 데이터는 캐싱 대상 콘텐츠의 캐싱 영역을 의미하며, 제 2 부분 데이터는 캐싱 대상 콘텐츠의 캐싱 되지 않는 영역을 의미한다. The content to be cached includes the first partial data and the second partial data, the first partial data means the caching area of the content to be cached, and the second partial data means the uncached area of the content to be cached.

도 3a와 도 3b를 참조하면, 전체 콘텐츠 데이터 중 캐싱 영역은 하나의 캐싱 블록으로 구성될 수도 있지만, 2개 이상의 캐싱 블록으로 구성될 수도 있다. Referring to FIGS. 3A and 3B, the caching area of all contents data may be composed of one caching block, but may be composed of two or more caching blocks.

즉, 캐시 메모리에 저장되는 콘텐츠의 부분 데이터는 단일 캐싱 블록으로 구성되거나, 복수의 캐싱 블록으로 구성될 수도 있으며, 제 1 부분 데이터를 구성하는 캐싱 블록의 수는 캐싱 정책, 캐시 메모리의 상황 또는 네트워크 상황 등에 따라 변경될 수 있다. That is, the partial data of the content stored in the cache memory may be composed of a single caching block or a plurality of caching blocks, and the number of caching blocks constituting the first partial data may be a caching policy, And the like.

캐싱부(230)는 캐싱 대상 콘텐츠를 캐싱 블록 사이즈에 기초하여 분할하고, 분할된 데이터 중 일부를 제 1 부분 데이터로 설정하여, 캐시 메모리에 저장할 수 있다. The caching unit 230 may divide the content to be cached based on the caching block size, set some of the divided data as the first partial data, and store it in the cache memory.

수신부(240)는 사용자 단말(100)로부터 콘텐츠 요청을 수신한다. 본 발명의 일실시예에 따르면, 수신부(240)는 제 1 콘텐츠 또는 제 2 콘텐츠의 요청을 수신할 수 있다. 다만, 수신부(240)는 제 1 콘텐츠, 제 2 콘텐츠 이외의 다수의 콘텐츠 요청을 수신할 수 있으며, 사용자가 사용자 단말(100)을 통해 콘텐츠 제공 장치(200)로부터 제공 받고자 하는 모든 종류의 콘텐츠 요청을 포함하는 개념으로 이해해야 할 것이다. The receiving unit 240 receives a content request from the user terminal 100. [ According to an embodiment of the present invention, the receiver 240 may receive a request for the first content or the second content. However, the receiving unit 240 may receive a plurality of content requests other than the first content and the second content, and may receive all kinds of content requests that the user desires to receive from the content providing apparatus 200 through the user terminal 100 As shown in FIG.

수신부(240)는 사용자 단말(100)로부터 제 1 콘텐츠의 요청과 함께 제 1 콘텐츠의 부분 캐싱 정보를 더 수신할 수 있다. The receiving unit 240 may further receive the partial caching information of the first content together with the request of the first content from the user terminal 100. [

검색부(250)는 사용자 단말(100)로부터 요청 받은 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는지 검색한다. The search unit 250 searches the cache memory to see if the first partial data of the content requested by the user terminal 100 is stored in the cache memory.

본 발명의 일실시예에 따르면, 검색부(250)는 제 1 콘텐츠 또는 제 2 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는지 검색할 수 있으며, 이외에도 사용자 단말(100)로부터 요청 받은 다수의 콘텐츠가 캐시 메모리에 저장되어 있는 지 검색할 수 있다. According to an embodiment of the present invention, the search unit 250 can search whether the first partial data of the first content or the second content is stored in the cache memory, It is possible to search whether the contents are stored in the cache memory.

제 1 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는지 검색한다.The first partial data of the first content is stored in the cache memory.

콘텐츠 제공부(260)는 사용자 단말(100)로부터 요청 받은 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는 경우, 콘텐츠의 제 1 부분 데이터를 캐시 메모리로부터 추출하여 사용자 단말(100)에게 제공하고, 콘텐츠의 제 2 부분 데이터를 사용자 단말(100)에게 제공한다. When the first partial data of the content requested by the user terminal 100 is stored in the cache memory, the content providing unit 260 extracts the first partial data of the content from the cache memory and provides the first partial data to the user terminal 100 , And provides the second partial data of the contents to the user terminal 100.

콘텐츠 제공부(260)는 콘텐츠의 부분 캐싱 정보에 기초하여, 콘텐츠의 제 2 부분 데이터를 사용자 단말(100)에게 제공할 수 있다.The content providing unit 260 may provide the second partial data of the content to the user terminal 100 based on the partial caching information of the content.

여기서, 부분 캐싱 정보는 콘텐츠의 제 1 부분 데이터에 포함되어 사용자 단말(100)에게 제공될 수 있다. Here, the partial caching information may be included in the first partial data of the contents to be provided to the user terminal 100. [

예를 들어, 콘텐츠 제공부(260)는 사용자 단말(100)의 요청에 따라 콘텐츠의 제 1 부분 데이터를 사용자 단말(100)에게 제공하면서, 제 1 부분 데이터에 부분 캐싱 정보를 포함하여 제공할 수 있으며, 사용자 단말(100)은 콘텐츠 제공부(260)로부터 제공 받은 부분 캐싱 정보에 기초하여 콘텐츠 제공 장치(200)에게 콘텐츠의 제 2 부분 데이터를 요청할 수 있다. For example, the content providing unit 260 may provide partial caching information to the first partial data while providing the first partial data of the contents to the user terminal 100 at the request of the user terminal 100 And the user terminal 100 may request the content providing apparatus 200 for the second partial data of the content based on the partial caching information provided from the content providing unit 260. [

여기서, 부분 캐싱 정보는 제 2 부분 데이터의 크기, 제 2 부분 데이터가 저장된 콘텐츠 제공 장치(200)의 위치 등을 포함한다.Here, the partial caching information includes the size of the second partial data, the location of the content providing apparatus 200 where the second partial data is stored, and the like.

예를 들어, 제 2 부분 데이터가 제 1 부분 데이터를 제공한 콘텐츠 제공 장치(200)가 아닌 타 콘텐츠 제공 장치에 위치한 경우, 사용자 단말(100)은 복수의 콘텐츠 제공 장치로부터 콘텐츠를 동시, 또는 연속적으로 제공받을 수 있을 것이다. 즉, 사용자 단말(100)은 다중 세션 기반의 콘텐츠 요청을 할 수도 있다. For example, when the second partial data is located in the other content providing apparatuses other than the content providing apparatus 200 providing the first partial data, the user terminal 100 can simultaneously transmit the content from the plurality of content providing apparatuses, . That is, the user terminal 100 may make a multi-session based content request.

콘텐츠 제공부(260)는 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있지 않은 경우, 로컬 저장소에 위치한 콘텐츠를 사용자 단말(100)에게 제공할 수 있다. The content providing unit 260 may provide the content located in the local repository to the user terminal 100 when the first partial data of the content is not stored in the cache memory.

콘텐츠 정보 수신부(270)는 콘텐츠 관리 장치(300)로부터 콘텐츠별 중요도 정보를 수신할 수 있다. 콘텐츠 관리 장치(300)는 상술한 바와 같이 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 등을 저장, 관리하는 역할을 수행하며, 콘텐츠 정보 수신부(270)는 콘텐츠의 중요도 정보가 필요한 경우, 콘텐츠 관리 장치(270)에 콘텐츠의 중요도 정보를 요청하여 제공 받을 수 있다. 다만, 콘텐츠의 중요도 정보는, 콘텐츠 관리 장치(300)뿐만 아니라, 콘텐츠 제공 장치(200)에서 독립적으로 저장, 관리할 수도 있다. The content information receiving unit 270 can receive content-specific importance information from the content management apparatus 300. [ As described above, the content management apparatus 300 stores and manages the importance information and the like for each content. When the content importance information is required for the content, And may be provided with content importance information by requesting content importance information. However, the content importance information may be independently stored and managed by the content providing apparatus 200 as well as the content managing apparatus 300. [

도 4는 본 발명의 일실시예에 따른 콘텐츠 제공 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a content providing method according to an embodiment of the present invention.

본 발명의 일실시예에 따른 콘텐츠 제공 방법은 사용자 단말(100), 콘텐츠 제공 장치(200) 및 콘텐츠 관리 장치(300)가 네트워크(10)로 연결되어 구현될 수 있다. A content providing method according to an embodiment of the present invention may be implemented by connecting the user terminal 100, the content providing apparatus 200, and the content managing apparatus 300 to the network 10.

도 4에 도시된 실시예에 따른 콘텐츠 제공 방법은 도 2에 도시된 콘텐츠 제공 장치(200)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 2에 도시된 콘텐츠 제공 장치(200)에 관하여 이상에서 기술한 내용은 도 4에 도시된 실시예에 따른 콘텐츠 제공 방법에도 적용될 수 있다.The content providing method according to the embodiment shown in FIG. 4 includes steps that are processed in a time-series manner in the content providing apparatus 200 shown in FIG. Therefore, even though omitted from the following description, the content described above with respect to the content providing apparatus 200 shown in FIG. 2 can also be applied to the content providing method according to the embodiment shown in FIG.

단계 S4100에서, 콘텐츠 제공 장치(200)는 네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율(cache miss rate)에 기초하여 캐싱 블록 사이즈를 결정한다. 단계 S4200에서, 콘텐츠 제공 장치(200)는 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정한다. 단계 S4300에서, 콘텐츠 제공 장치(200)는 콘텐츠별 캐싱 여부 및 캐싱 블록 사이즈에 기초하여, 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장한다. 여기서, 캐싱 대상 콘텐츠는 제 1 부분 데이터와 제 2 부분 데이터를 포함할 수 있다. In step S4100, the content providing apparatus 200 determines the caching block size based on the network environment information or the cache miss rate for a plurality of contents. In step S4200, the content providing apparatus 200 determines whether or not to categorize the plurality of contents based on the content-specific importance information and the content-specific interval information. In step S4300, the content providing apparatus 200 stores the first partial data of the content to be cached among the plurality of contents in the cache memory, based on whether or not the content is cached and the caching block size. Here, the content to be cached may include first partial data and second partial data.

도 5는 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 사용자 단말에게 캐싱된 콘텐츠를 제공하는 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a method of providing a cached content to a user terminal in a content providing method according to an embodiment of the present invention.

도 5에 도시된 실시예에 따른 콘텐츠 제공 방법은 도 2에 도시된 콘텐츠 제공 장치(200)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 2에 도시된 콘텐츠 제공 장치(200)에 관하여 이상에서 기술한 내용은 도 5에 도시된 실시예에 따른 콘텐츠 제공 방법에도 적용될 수 있다.The content providing method according to the embodiment shown in FIG. 5 includes steps that are processed in a time-series manner in the content providing apparatus 200 shown in FIG. Therefore, the contents described above with respect to the contents providing apparatus 200 shown in FIG. 2 may be applied to the contents providing method according to the embodiment shown in FIG.

단계 S5100에서, 콘텐츠 제공 장치(200)는 사용자 단말(100)로부터 제 1 콘텐츠의 요청을 수신할 수 있다. 단계 S5200에서, 콘텐츠 제공 장치(200)는 제 1 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는지 검색할 수 있다. 단계 S5300에서, 콘텐츠 제공 장치(200)는 제 1 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는 경우, 제 1 콘텐츠의 제 1 부분 데이터를 캐시 메모리로부터 추출하여, 사용자 단말(100)에게 제공할 수 있다. 단계 S5400에서, 콘텐츠 제공 장치(200)는 제 1 콘텐츠의 제 2 부분 데이터를 사용자 단말(100)에게 제공할 수 있다. In step S5100, the content providing apparatus 200 may receive a request for the first content from the user terminal 100. [ In step S5200, the content providing apparatus 200 can search whether the first partial data of the first content is stored in the cache memory. In step S5300, when the first partial data of the first content is stored in the cache memory, the content providing apparatus 200 extracts the first partial data of the first content from the cache memory and provides it to the user terminal 100 can do. In step S5400, the content providing apparatus 200 may provide the second partial data of the first content to the user terminal 100. [

도 6은 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 사용자 단말에게 캐싱되지 않은 부분 데이터를 제공하는 방법을 설명하기 위한 순서도이다.6 is a flowchart illustrating a method of providing partial data not cached to a user terminal in a content providing method according to an embodiment of the present invention.

도 6에 도시된 실시예에 따른 콘텐츠 제공 방법은 도 2에 도시된 콘텐츠 제공 장치(200)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 2에 도시된 콘텐츠 제공 장치(200)에 관하여 이상에서 기술한 내용은 도 6에 도시된 실시예에 따른 콘텐츠 제공 방법에도 적용될 수 있다.The content providing method according to the embodiment shown in FIG. 6 includes steps that are processed in a time-series manner in the content providing apparatus 200 shown in FIG. Therefore, even if omitted from the following description, the content described above with respect to the content providing apparatus 200 shown in FIG. 2 can also be applied to the content providing method according to the embodiment shown in FIG.

단계 S6100에서, 콘텐츠 제공 장치(200)는 사용자 단말(100)로부터 제 1 콘텐츠의 부분 캐싱 정보를 수신하고, 단계 S6200에서, 제 1 콘텐츠의 부분 캐싱 정보에 기초하여, 제 1 콘텐츠의 제 2 부분 데이터를 사용자 단말(100)에게 제공할 수 있다. 여기서, 부분 캐싱 정보는 제 1 부분 데이터에 포함되어, 사용자 단말(100)에게 제공될 수 있다. In step S6100, the content providing apparatus 200 receives the partial caching information of the first content from the user terminal 100, and in step S6200, based on the partial caching information of the first content, Data can be provided to the user terminal 100. Here, the partial caching information may be included in the first partial data and may be provided to the user terminal 100. [

도 7은 본 발명의 일실시예에 따른 콘텐츠 제공 방법에 있어서, 캐싱되지 않은 콘텐츠의 요청에 대한 처리 방법을 설명하기 위한 순서도이다.7 is a flowchart illustrating a method of processing a request for a non-cached content in a content providing method according to an embodiment of the present invention.

도 7에 도시된 실시예에 따른 콘텐츠 제공 방법은 도 2에 도시된 콘텐츠 제공 장치(200)에서 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하에서 생략된 내용이라고 하더라도 도 2에 도시된 콘텐츠 제공 장치(200)에 관하여 이상에서 기술한 내용은 도 7에 도시된 실시예에 따른 콘텐츠 제공 방법에도 적용될 수 있다.The content providing method according to the embodiment shown in FIG. 7 includes the steps of time-series processing in the content providing apparatus 200 shown in FIG. Therefore, even if omitted from the following description, the content described above with respect to the content providing apparatus 200 shown in FIG. 2 can also be applied to the content providing method according to the embodiment shown in FIG.

단계 S7100에서, 콘텐츠 제공 장치(200)는 사용자 단말(100)로부터 제 2 콘텐츠의 요청을 수신할 수 있다. 단계 S7200에서, 콘텐츠 제공 장치(200)는 제 2 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있는지 검색할 수 있다. 단계 S7300에서, 콘텐츠 제공 장치(200)는 제 2 콘텐츠의 제 1 부분 데이터가 캐시 메모리에 저장되어 있지 않은 경우, 로컬 저장소에 위치한 제 2 콘텐츠를 사용자 단말(100)에게 제공할 수 있다. 단계 S7400에서, 콘텐츠 제공 장치(200)는 제 2 콘텐츠의 중요도 정보, 제 2 콘텐츠의 인터벌 정보 및 캐시 메모리의 임계 인터벌에 기초하여, 제 2 콘텐츠의 캐싱 여부를 결정할 수 있다. 단계 S7500에서, 콘텐츠 제공 장치(200)는 제 2 콘텐츠의 캐싱 여부 및 캐싱 블록 사이즈에 기초하여, 제 2 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장할 수 있다. In step S7100, the content providing apparatus 200 may receive a request for the second content from the user terminal 100. [ In step S7200, the content providing apparatus 200 can search whether the first partial data of the second content is stored in the cache memory. In step S7300, the content providing apparatus 200 may provide the second content located in the local repository to the user terminal 100, if the first partial data of the second content is not stored in the cache memory. In step S7400, the content providing apparatus 200 can determine whether to cache the second content based on the importance information of the second content, the interval information of the second content, and the critical interval of the cache memory. In step S7500, the content providing apparatus 200 can store the first partial data of the second content in the cache memory, based on whether or not the second content is cached and the caching block size.

도 4 내지 도 7을 통해 설명된 실시예에 따른 콘텐츠 제공 방법은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. The content providing method according to the embodiment described with reference to Figs. 4 to 7 can also be implemented in the form of a recording medium including instructions executable by a computer such as a program module executed by a computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, the computer-readable medium may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes any information delivery media, including computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transport mechanism.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

Claims (18)

콘텐츠 제공 장치가, 콘텐츠를 제공하는 방법에 있어서,
네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율(cache miss rate)에 기초하여, 캐싱 블록 사이즈를 결정하는 단계;
상기 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정하는 단계; 및
콘텐츠별 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 단계;
사용자 단말로부터 제 1 콘텐츠의 요청을 수신하는 단계;
상기 제 1 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있는지 검색하는 단계;
상기 제 1 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있는 경우, 상기 제 1 콘텐츠의 제 1 부분 데이터를 상기 캐시 메모리로부터 추출하여, 상기 사용자 단말에게 제공하는 단계; 및
상기 제 1 콘텐츠의 제 2 부분 데이터를 상기 사용자 단말에게 제공하는 단계를 포함하되,
상기 캐싱 대상 콘텐츠는 상기 제 1 부분 데이터와 제 2 부분 데이터를 포함하는 것인
콘텐츠 제공 방법.
A content providing apparatus, in a method of providing contents,
Determining a caching block size based on network environment information or a cache miss rate for a plurality of contents;
Determining whether or not to categorize the plurality of contents based on content importance information and content-specific interval information; And
Storing the first partial data of the content to be cached in the cache memory among the plurality of contents based on whether or not the contents are cached and the caching block size;
Receiving a request for a first content from a user terminal;
Retrieving whether the first partial data of the first content is stored in the cache memory;
Extracting first partial data of the first content from the cache memory and providing the first partial data of the first content to the user terminal when the first partial data of the first content is stored in the cache memory; And
And providing second portion data of the first content to the user terminal,
Wherein the content to be cached includes the first partial data and the second partial data
Content providing method.
삭제delete 제 1 항에 있어서,
상기 제 1 콘텐츠의 제 2 부분 데이터를 제공하는 단계는,
상기 사용자 단말로부터 상기 제 1 콘텐츠의 부분 캐싱 정보를 수신하는 단계; 및
상기 제 1 콘텐츠의 부분 캐싱 정보에 기초하여, 상기 제 1 콘텐츠의 제 2 부분 데이터를 상기 사용자 단말에게 제공하는 단계를 포함하되,
상기 부분 캐싱 정보는, 상기 제 1 부분 데이터에 포함되어, 상기 사용자 단말에게 제공되는 것인
콘텐츠 제공 방법.
The method according to claim 1,
Wherein providing the second partial data of the first content comprises:
Receiving partial caching information of the first content from the user terminal; And
And providing second partial data of the first content to the user terminal based on the partial caching information of the first content,
Wherein the partial caching information is included in the first partial data and is provided to the user terminal
Content providing method.
제 1 항에 있어서,
사용자 단말로부터 제 2 콘텐츠의 요청을 수신하는 단계;
상기 제 2 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있는지 검색하는 단계;
상기 제 2 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있지 않은 경우, 상기 제 2 콘텐츠를 상기 사용자 단말에게 제공하는 단계;
상기 제 2 콘텐츠의 중요도 정보, 상기 제 2 콘텐츠의 인터벌 정보 및 상기 캐시 메모리의 임계 인터벌에 기초하여, 상기 제 2 콘텐츠의 캐싱 여부를 결정하는 단계; 및
상기 제 2 콘텐츠의 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 제 2 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 단계를 더 포함하는
콘텐츠 제공 방법.
The method according to claim 1,
Receiving a request for a second content from a user terminal;
Retrieving whether the first partial data of the second content is stored in the cache memory;
Providing the second content to the user terminal if the first partial data of the second content is not stored in the cache memory;
Determining whether to cache the second content based on the importance information of the second content, the interval information of the second content, and the critical interval of the cache memory; And
Storing the first partial data of the second content in the cache memory based on whether the second content is cached and the caching block size
Content providing method.
제 1 항에 있어서,
상기 네트워크 환경 정보는, 상기 네트워크의 처리량(throughput) 및 초기 버퍼링 정보를 포함하고,
상기 캐싱 블록 사이즈를 결정하는 단계는,
상기 네트워크의 처리량 및 상기 초기 버퍼링 정보에 기초하여, 상기 캐싱 블록 사이즈를 결정하는 것인
콘텐츠 제공 방법.
The method according to claim 1,
Wherein the network environment information includes throughput and initial buffering information of the network,
Wherein the determining the caching block size comprises:
Determining the caching block size based on the throughput of the network and the initial buffering information
Content providing method.
제 1 항에 있어서,
상기 캐싱 블록 사이즈를 결정하는 단계는,
상기 복수의 콘텐츠에 대한 캐시 미스율이 기 설정된 목표 캐시 미스율 이하가 되도록, 상기 캐싱 블록 사이즈를 결정하는 것인
콘텐츠 제공 방법.
The method according to claim 1,
Wherein the determining the caching block size comprises:
Determining the caching block size such that the cache miss rate for the plurality of contents is less than or equal to a predetermined target cache miss rate
Content providing method.
제 1 항에 있어서,
상기 콘텐츠별 캐싱 여부를 결정하는 단계는,
상기 콘텐츠별 중요도 정보가 기 설정된 중요도 이상인 콘텐츠 중에서, 상기 콘텐츠별 인터벌 정보가 임계 인터벌 이하인 콘텐츠를 캐싱 대상 콘텐츠로 결정하는 것인
콘텐츠 제공 방법.
The method according to claim 1,
The method of claim 1,
Determining content among the content whose importance-by-content importance information is equal to or greater than a predetermined importance as the content to be cached,
Content providing method.
제 1 항에 있어서,
상기 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 단계는,
상기 캐싱 대상 콘텐츠를 상기 캐싱 블록 사이즈에 기초하여 분할하고, 상기 분할된 데이터 중 일부를 제 1 부분 데이터로 설정하여, 상기 캐시 메모리에 저장하는 것인
콘텐츠 제공 방법.
The method according to claim 1,
Wherein the step of storing the first partial data of the content to be cached in the cache memory comprises:
The caching target content is divided based on the caching block size, and a part of the divided data is set as the first partial data and is stored in the cache memory
Content providing method.
제 1 항에 있어서,
콘텐츠 관리 장치로부터 상기 콘텐츠별 중요도 정보를 수신하는 단계를 더 포함하는
콘텐츠 제공 방법.
The method according to claim 1,
And receiving the content-specific importance information from the content management apparatus
Content providing method.
콘텐츠 제공 장치에 있어서,
네트워크 환경 정보 또는 복수의 콘텐츠에 대한 캐시 미스율에 기초하여, 캐싱 블록 사이즈를 결정하는 캐싱 블록 사이즈 결정부;
상기 복수의 콘텐츠에 대하여, 콘텐츠별 중요도 정보 및 콘텐츠별 인터벌 정보에 기초하여, 콘텐츠별 캐싱 여부를 결정하는 캐싱 여부 결정부;
콘텐츠별 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 복수의 콘텐츠 중 캐싱 대상 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 저장하는 캐싱부;
사용자 단말로부터 제 1 콘텐츠의 요청을 수신하는 수신부;
상기 제 1 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있는지 검색하는 검색부;
상기 제 1 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있는 경우, 상기 제 1 콘텐츠의 제 1 부분 데이터를 상기 캐시 메모리로부터 추출하여, 상기 사용자 단말에게 제공하고, 상기 제 1 콘텐츠의 제 2 부분 데이터를 상기 사용자 단말에게 제공하는 콘텐츠 제공부를 포함하되,
상기 캐싱 대상 콘텐츠는 상기 제 1 부분 데이터와 제 2 부분 데이터를 포함하는 것인
콘텐츠 제공 장치.
A content providing apparatus comprising:
A caching block size determining unit for determining a caching block size based on the network environment information or the cache miss rate for a plurality of contents;
A caching determination unit for determining whether or not to categorize the plurality of contents based on content-based importance information and content-based interval information;
A caching unit for storing the first partial data of the content to be cached among the plurality of contents in the cache memory based on whether or not the contents are cached and the caching block size;
A receiving unit for receiving a request for a first content from a user terminal;
A search unit for searching whether the first partial data of the first content is stored in the cache memory;
Extracting first partial data of the first content from the cache memory and providing the first partial data of the first content to the user terminal when the first partial data of the first content is stored in the cache memory, And a content providing unit for providing partial data to the user terminal,
Wherein the content to be cached includes the first partial data and the second partial data
Content providing apparatus.
삭제delete 제 10 항에 있어서,
상기 수신부는, 상기 사용자 단말로부터 상기 제 1 콘텐츠의 부분 캐싱 정보를 더 수신하고,
상기 콘텐츠 제공부는, 상기 제 1 콘텐츠의 부분 캐싱 정보에 기초하여, 상기 제 1 콘텐츠의 제 2 부분 데이터를 상기 사용자 단말에게 더 제공하되,
상기 부분 캐싱 정보는, 상기 제 1 부분 데이터에 포함되어, 상기 사용자 단말에게 제공되는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
Wherein the receiving unit further receives partial caching information of the first content from the user terminal,
Wherein the content providing unit further provides the second partial data of the first content to the user terminal based on the partial caching information of the first content,
Wherein the partial caching information is included in the first partial data and is provided to the user terminal
Content providing apparatus.
제 10 항에 있어서,
사용자 단말로부터 제 2 콘텐츠의 요청을 수신하는 수신부;
상기 제 2 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되었는지 검색하는 검색부; 및
상기 제 2 콘텐츠의 제 1 부분 데이터가 상기 캐시 메모리에 저장되어 있지 않은 경우, 상기 제 2 콘텐츠를 상기 사용자 단말에게 제공하는 콘텐츠 제공부를 더 포함하되,
상기 캐싱 여부 결정부는, 상기 제 2 콘텐츠의 중요도 정보, 상기 제 2 콘텐츠의 인터벌 정보 및 상기 캐시 메모리의 임계 인터벌에 기초하여, 상기 제 2 콘텐츠의 캐싱 여부를 결정하고,
상기 캐싱부는, 상기 제 2 콘텐츠의 캐싱 여부 및 상기 캐싱 블록 사이즈에 기초하여, 상기 제 2 콘텐츠의 제 1 부분 데이터를 캐시 메모리에 더 저장하는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
A receiving unit for receiving a request for a second content from a user terminal;
A retrieving unit for retrieving whether the first partial data of the second content is stored in the cache memory; And
And a content providing unit for providing the second content to the user terminal when the first partial data of the second content is not stored in the cache memory,
Wherein the caching determination unit determines whether to cache the second content based on the importance information of the second content, the interval information of the second content, and the critical interval of the cache memory,
Wherein the caching unit further stores the first partial data of the second content in the cache memory based on whether the second content is cached and the caching block size
Content providing apparatus.
제 10 항에 있어서,
상기 네트워크 환경 정보는, 상기 네트워크의 처리량(throughput) 및 초기 버퍼링 정보를 포함하고,
상기 캐싱 블록 사이즈 결정부는,
상기 네트워크의 처리량 및 상기 초기 버퍼링 정보에 기초하여, 상기 캐싱 블록 사이즈를 결정하는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
Wherein the network environment information includes throughput and initial buffering information of the network,
The caching block size determination unit may determine,
Determining the caching block size based on the throughput of the network and the initial buffering information
Content providing apparatus.
제 10 항에 있어서,
상기 캐싱 블록 사이즈 결정부는,
상기 복수의 콘텐츠에 대한 캐시 미스율이 기 설정된 목표 캐시 미스율 이하가 되도록, 상기 캐싱 블록 사이즈를 결정하는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
The caching block size determination unit may determine,
Determining the caching block size such that the cache miss rate for the plurality of contents is less than or equal to a predetermined target cache miss rate
Content providing apparatus.
제 10 항에 있어서,
상기 캐싱 여부 결정부는,
상기 콘텐츠별 중요도 정보가 기 설정된 중요도 이상인 콘텐츠 중에서, 상기 콘텐츠별 인터벌 정보가 임계 인터벌 이하인 콘텐츠를 캐싱 대상 콘텐츠로 결정하는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
The caching-
Determining content among the content whose importance-by-content importance information is equal to or greater than a predetermined importance as the content to be cached,
Content providing apparatus.
제 10 항에 있어서,
상기 캐싱부는, 상기 캐싱 대상 콘텐츠를 상기 캐싱 블록 사이즈에 기초하여 분할하고, 상기 분할된 데이터 중 일부를 제 1 부분 데이터로 설정하여, 상기 캐시 메모리에 저장하는 것인
콘텐츠 제공 장치.
11. The method of claim 10,
Wherein the caching unit divides the content to be cached based on the caching block size and sets a part of the divided data as first partial data and stores it in the cache memory
Content providing apparatus.
제 10 항에 있어서,
콘텐츠 관리 장치로부터 상기 콘텐츠별 중요도 정보를 수신하는 콘텐츠 정보 수신부를 더 포함하는
콘텐츠 제공 장치.
11. The method of claim 10,
And a content information receiving unit for receiving the content-based importance information from the content management apparatus
Content providing apparatus.
KR1020110131080A 2011-12-08 2011-12-08 Device and method for providing contents using fractional caching KR101500549B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110131080A KR101500549B1 (en) 2011-12-08 2011-12-08 Device and method for providing contents using fractional caching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110131080A KR101500549B1 (en) 2011-12-08 2011-12-08 Device and method for providing contents using fractional caching

Publications (2)

Publication Number Publication Date
KR20130064455A KR20130064455A (en) 2013-06-18
KR101500549B1 true KR101500549B1 (en) 2015-03-10

Family

ID=48861419

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110131080A KR101500549B1 (en) 2011-12-08 2011-12-08 Device and method for providing contents using fractional caching

Country Status (1)

Country Link
KR (1) KR101500549B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050092047A (en) * 2003-01-16 2005-09-16 코닌클리케 필립스 일렉트로닉스 엔.브이. Method of and device for caching digital content data
KR20070035911A (en) * 2005-09-28 2007-04-02 한국전자통신연구원 Fractional caching method and adaptive content transmission method using the same
JP2008009618A (en) * 2006-06-28 2008-01-17 Nec Corp Cache management method in electronic equipment, electronic equipment and network system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050092047A (en) * 2003-01-16 2005-09-16 코닌클리케 필립스 일렉트로닉스 엔.브이. Method of and device for caching digital content data
KR20070035911A (en) * 2005-09-28 2007-04-02 한국전자통신연구원 Fractional caching method and adaptive content transmission method using the same
JP2008009618A (en) * 2006-06-28 2008-01-17 Nec Corp Cache management method in electronic equipment, electronic equipment and network system

Also Published As

Publication number Publication date
KR20130064455A (en) 2013-06-18

Similar Documents

Publication Publication Date Title
US11025747B1 (en) Content request pattern-based routing system
US9785608B2 (en) Predictive, multi-layer caching architectures
CN104424199B (en) searching method and device
US8355384B2 (en) System and method of handover in wireless network
US9767033B2 (en) Method and apparatus for managing cache memory in communication system
US20120054295A1 (en) Method and apparatus for providing or acquiring the contents of a network resource for a mobile device
US8787882B2 (en) Resource profile adjustment for pre-fetching of assets to user equipment
MX2014007165A (en) Application-driven cdn pre-caching.
US10346303B1 (en) Origin server cache eviction system
US20200320154A1 (en) A webpage loading method, webpage loading system and server
CN105099602A (en) File transmission method based on network speed and system
US9749216B2 (en) Method for acquiring content, user equipment and cache node
CN111753223A (en) Access control method and device
CN110248206A (en) A kind of resource allocation methods, device and electronic equipment for edge network system
US10341454B2 (en) Video and media content delivery network storage in elastic clouds
CN103825922B (en) A kind of data-updating method and web server
CN106919595B (en) Cookie mapping method and device and electronic equipment
KR101500549B1 (en) Device and method for providing contents using fractional caching
CN116366876A (en) Method and system for deploying and scheduling film and television resources under Bian Yun collaborative scene
CN110413579A (en) Image cache method, equipment, storage medium and device based on caching value
US11182452B2 (en) Web acceleration via learning
KR101497923B1 (en) Content delivery method and apparatus based on policy
CN109982389A (en) A kind of wireless caching method based on multiple target multi-arm fruit machine on-line study
CN110012299B (en) Online learning method of multi-target active cache based on linear weighting principle
Kumar et al. Improve Client performance in Client Server Mobile Computing System using Cache Replacement Technique

Legal Events

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