KR20130134911A - Method for providing content caching service in adapted streaming service and local caching device thereof - Google Patents

Method for providing content caching service in adapted streaming service and local caching device thereof Download PDF

Info

Publication number
KR20130134911A
KR20130134911A KR1020120058789A KR20120058789A KR20130134911A KR 20130134911 A KR20130134911 A KR 20130134911A KR 1020120058789 A KR1020120058789 A KR 1020120058789A KR 20120058789 A KR20120058789 A KR 20120058789A KR 20130134911 A KR20130134911 A KR 20130134911A
Authority
KR
South Korea
Prior art keywords
content
data
terminal device
different resolutions
providing
Prior art date
Application number
KR1020120058789A
Other languages
Korean (ko)
Other versions
KR101888982B1 (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 KR1020120058789A priority Critical patent/KR101888982B1/en
Publication of KR20130134911A publication Critical patent/KR20130134911A/en
Application granted granted Critical
Publication of KR101888982B1 publication Critical patent/KR101888982B1/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

Abstract

The present invention relates to a content caching service providing method and a local caching device for the same considering an adaptive content providing method for providing a caching service more efficiently with respect to adaptive content transmitted by varying resolutions according to link quality or device performance, and the local caching device encodes content with specific resolution to produce two or more pieces of content data with different resolutions. As a result, traffic at a section between a content providing device and a local caching device can be further reduced and a content caching service can be provided more efficiently. [Reference numerals] (AA) Start;(BB) End;(S105) Receive a content request message from a terminal device;(S110) Determine whether to store content;(S115) Store?;(S120) Request and receive content from a content providing deivce;(S125) Provide the terminal device with the content;(S130) Perform encoding?;(S135) Encode content with different resolutions

Description

적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치 {Method for providing content caching service in adapted streaming service and local caching device thereof}Method for providing content caching service for providing adaptive content, and local caching device for the same {Method for providing content caching service in adapted streaming service and local caching device about}

본 발명은 네트워크상에서의 컨텐츠 중복 전송을 방지하여 트래픽을 감소시키기 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치에 관한 것으로서, 더욱 상세하게는 링크 품질 또는 단말 성능에 따라서 해상도를 달리하여 전송하는 적응형 컨텐츠 전송 방식에 따라 전송되는 컨텐츠에 대하여 보다 효율적으로 캐싱 서비스를 제공할 수 있도록 한 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치에 관한 것이다.The present invention relates to a method for providing a content caching service for reducing traffic by preventing duplicate content transmission on a network and a local caching apparatus for the same. More particularly, the present invention relates to an adaptation of different resolutions according to link quality or terminal performance. The present invention relates to a content caching service providing method for providing adaptive content, and a local caching apparatus for the same, to more efficiently provide a caching service for content transmitted according to a type content transmission scheme.

최근 성능이 향상된 스마트 폰의 보급과, 이를 기반으로 한 컨텐츠 제공자의 급증으로 인하여, 이동통신망의 트래픽은 점점 증가하고 있는 추세이며, 그에 따라서, 웹(Web) 다운로드, 비디오(Video), 오디오(Audio), 영상(Image), 어플리케이션(Application) 등과 같은 컨텐츠의 전송 속도 저하로 인한 서비스 품질 문제가 이슈가 되고 있다.The traffic of the mobile communication network is increasingly increasing due to the spread of smart phones with improved performance in recent years and the rapid increase of content providers based thereon. Accordingly, web downloading, video, audio ), Video (image), application (application), etc., due to the degradation of the transmission speed of service quality issues are becoming a problem.

특히, 컨텐츠 전송 기술의 발달에 따라서, VOD(Video On Demand), Live Streaming과 같은 온라인 동영상 서비스나 음악 스트리밍, 파일 업로드 및 파일 다운로드 등에 있어서, 대용량 파일 전송이 가능해지면서, 그에 따라서 대용량 컨텐츠를 전달하려는 다양한 서비스도 제공되고 있다.Particularly, according to the development of content transmission technology, it is possible to transfer a large-capacity file in an online video service such as VOD (Video On Demand) and Live Streaming, music streaming, file upload, file download, Various services are also provided.

그런데 이러한 컨텐츠 제공 서비스들은, 그 인기도에 따라 빈도는 다를 수 있으나, 통상적으로 중복적인 콘텐트를 동일 도메인 또는 동일 무선 커버리지 내의 사용자에게 전달하는 특징이 있으며, 이용 증가에 따라서 네트워크 트래픽에서 차지하는 비중이 점차적으로 증가하고 있는 상황이다. However, these content providing services may vary in frequency depending on their popularity, but typically, duplicate content is delivered to users in the same domain or in the same wireless coverage, and the share of network traffic gradually increases as usage increases. The situation is increasing.

이와 같이, 중복된 콘텐트의 전송은 통신망의 트래픽 부하가 더욱 증가하게 되므로 이러한 중복 전송의 방지를 통해 트래픽 감소를 위한 노력이 이루어지고 있으며, 관련 기술로서 CDN(Contents Delivery network) 서비스는 영화, 뮤직 비디오 등과 같은 동영상을 포함하는 다양한 컨텐츠를 사용자에게 안정적으로 전달하기 위한 서비스로서, 통상 네트워크상에 분산 배치된 다수의 로컬 캐싱 장치에 컨텐츠를 저장하여 두고, GLB(Global Load Balance) 서버와 같은 부하 분산 장치를 통해서 다수의 캐시 서버 중에서 최적의 캐시 서버를 선택하여, 선택된 캐시 서버를 통해 요청된 컨텐츠가 사용자의 단말로 전달하도록 구현된다.As such, the transmission of duplicated content increases the traffic load of the communication network, and thus efforts are made to reduce traffic by preventing such duplicated transmission. As a related technology, the CDN (Contents Delivery Network) service is a movie, music video. As a service for stably delivering various contents including video such as video to users, the content is usually stored in a plurality of local caching devices distributed and distributed on a network, and a load balancer such as a Global Load Balance (GLB) server. By selecting an optimal cache server from a plurality of cache servers through, the content requested through the selected cache server is delivered to the user's terminal.

이러한 CDN는 인터넷 망을 기반으로 인터넷상에서의 데이터 손실, 병목 현상, 전송 속도 저하, 데이터 끊김과 같은 불안전성 등을 해결하도록 구현되었다.The CDN has been implemented to solve data instability, bottlenecks, transmission speed degradation, and instability such as data dropping on the Internet.

컨텐츠 캐싱 기술은, 이러한 CDN 서비스에 있어서, 네트워크 상에 분산 배치되는 다수의 로컬 캐싱 장치에 컨텐츠를 선택적으로 캐싱하는 기술로서, 이러한 컨텐츠 캐싱은 로컬 캐싱 장치의 저장 공간을 고려하여 이루어져야 하며, 또한, 캐싱된 컨텐츠 중에서 사용자가 요청한 컨텐츠와 일치하는 컨텐츠를 판정하는데 소요되는 시간 및 사용자가 요청한 콘텐트 중 캐싱된 컨텐츠와 일치하는 비율인 캐시 히트 레이트(cache hit rate)에 대한 고려도 필요하다.The content caching technology is a technology for selectively caching content in a plurality of local caching devices distributed in a network in such a CDN service, and this content caching should be made in consideration of the storage space of the local caching device. It is also necessary to consider the cache hit rate, which is the time required to determine the content that matches the content requested by the user among the cached content and the content that matches the cached content among the content requested by the user.

특히, 링크 품질 또는 단말의 성능에 따라서 해상도를 달리하여 전송하는 적응형 컨텐츠 전송 방식(예를 들어, HTTP Live Streaming(HLS))의 경우 동일 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠로 인코딩하여 제공하며, 각 컨텐츠를 다수의 청크로 분할하여 링크 품질 또는 단말 성능에 따라서 적정 해상도의 컨텐츠를 선택 전송한다.In particular, in the case of an adaptive content transmission method (for example, HTTP Live Streaming (HLS)) that transmits with different resolutions according to link quality or terminal performance, the same content is encoded and provided as two or more contents having different resolutions. The content is divided into a plurality of chunks and selected and transmitted according to link quality or terminal performance.

본 발명은 링크 품질 또는 단말 성능에 따라서 해상도를 달리하여 전송하는 적응형 컨텐츠에 대하여 보다 효율적으로 캐싱 서비스를 제공할 수 있도록 한 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치를 제공하고자 한다.The present invention provides a method for providing a content caching service for providing adaptive content, and a local caching apparatus for the adaptive content providing a caching service for adaptive content transmitted with different resolutions according to link quality or terminal performance. To provide.

특히, 본 발명은 로컬 캐싱 장치가 특정 해상도의 컨텐츠를 인코딩하여 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터를 생성함으로써 컨텐츠 제공 장치와 로컬 캐싱 장치 사이의 구간에서의 트래픽을 더 감소시키고 보다 효율적으로 컨텐츠 캐싱 서비스를 제공할 수 있도록 하는 적응형 컨텐츠 제공을 위한 컨텐츠 캐싱 서비스 제공 방법 및 이를 위한 로컬 캐싱 장치를 제공하고자 한다.In particular, the present invention further reduces the traffic in the section between the content providing device and the local caching device by encoding the content of a specific resolution to generate two or more pieces of content data having different resolutions, and more efficiently caching the content. The present invention provides a method of providing a content caching service for providing adaptive content for providing a service, and a local caching apparatus therefor.

본 발명은 상술한 과제를 해결하기 위한 수단으로서, 하나 이상의 컨텐츠 제공 장치로부터 하나 이상의 단말 장치로 서비스되는 컨텐츠의 일부 또는 전부를 저장하는 저장부; 상기 하나 이상의 컨텐츠 제공 장치와 하나 이상의 단말 장치 간에 데이터를 전달하는 통신망에 연결되어, 상기 통신망을 통해 데이터를 송수신하는 통신 인터페이스부; 및 상기 저장부에 저장된 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하여 상기 저장부에 저장한 후, 단말 장치로부터의 요청에 따라서 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중 하나를 선택적으로 상기 단말 장치에 전송하도록 제어하는 제어부를 포함하는 것을 특징으로 하는 로컬 캐싱 장치를 제공한다.According to an aspect of the present invention, there is provided a means for solving the above-mentioned problems. A communication interface unit connected to a communication network for transferring data between the at least one content providing apparatus and at least one terminal apparatus and transmitting and receiving data through the communication network; And encoding one or more content data having different resolutions into two or more pieces of content data having different resolutions and storing the stored content in the storage part, and selectively selecting one of two or more pieces of content data having different resolutions according to a request from a terminal device. It provides a local caching apparatus comprising a control unit for controlling to transmit to the terminal device.

본 발명에 의한 로컬 캐싱 장치에 있어서, 상기 둘 이상의 컨텐츠 데이터는 각각 다수의 청크 데이터로 나누어지는 것을 특징으로 한다.In the local caching apparatus according to the present invention, the two or more pieces of content data are each divided into a plurality of chunk data.

본 발명에 의한 로컬 캐싱 장치에 있어서, 상기 제어부는 인기도 및 시간 중에서 하나 이상을 포함하는 기준에 따라서 상기 인코딩 여부를 판단할 수 있다.In the local caching apparatus according to the present invention, the controller may determine whether the encoding is performed based on a criterion including at least one of popularity and time.

본 발명에 로컬 캐싱 장치에 있어서, 상기 제어부는 상기 컨텐츠에 대한 요청이 일정 시간이상 없는 경우, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 저 해상도의 컨텐츠 데이터를 하나 이상 삭제할 수 있다.In the local caching apparatus according to the present invention, when the request for the content does not exist for a predetermined time or more, the controller may delete one or more low-resolution content data from two or more pieces of content data having different resolutions.

본 발명에 의한 로컬 캐싱 장치에 있어서, 상기 제어부는 상기 컨텐츠를 상기 저장부에 캐싱하는 시점 또는 상기 컨텐츠가 요청되는 시점에, 상기 인코딩을 수행할 수 있다.In the local caching apparatus according to the present invention, the controller may perform the encoding at a time when the content is cached in the storage unit or when the content is requested.

본 발명에 의한 로컬 캐싱 장치에 있어서, 상기 제어부는 인코딩할 서로 다른 둘 이상의 해상도에 대한 정보를, 상기 컨텐츠의 재생 정보를 제공하는 인덱스 파일 또는 상기 컨텐츠에 대한 전송 이력으로부터 획득할 수 있다.In the local caching apparatus according to the present invention, the control unit may obtain information on two or more different resolutions to be encoded from an index file providing reproduction information of the content or a transmission history of the content.

더하여, 본 발명은 상술한 과제를 해결하기 위한 다른 수단으로서, 로컬 캐싱 장치가, 컨텐츠 제공 장치로부터 단말 장치로 서비스하는 컨텐츠의 일부 또는 전부를 저장하는 단계; 상기 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하는 단계; 및 단말 장치의 요청에 따라서, 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중 하나를 선택적으로 상기 단말 장치에 전송하는 단계를 포함하는 것을 특징으로 하는 컨텐츠 캐싱 서비스 제공 방법을 제공한다.In addition, the present invention provides another means for solving the above problems, the local caching apparatus, the step of storing a part or all of the content serviced from the content providing device to the terminal device; Encoding the content into two or more pieces of content data having different resolutions; And selectively transmitting one of two or more pieces of content data having different resolutions to the terminal device according to a request of the terminal device.

본 발명에 의한 컨텐츠 캐싱 서비스 제공 방법은, 상기 인코딩하는 단계 이전에, 상기 컨텐츠의 인덱스 파일 또는 상기 컨텐츠의 전송 이력으로부터 인코딩할 하나 이상의 해상도에 대한 정보를 획득하는 단계를 더 포함할 수 있다.The method for providing a content caching service according to the present invention may further include obtaining information on at least one resolution to be encoded from an index file of the content or a transmission history of the content before the encoding.

본 발명에 의한 컨텐츠 캐싱 서비스 제공 방법은, 상기 인코딩하는 단계 이전에, 인기도 및 시간 중에서 하나 이상을 포함하는 기준에 따라서 상기 컨텐츠에 대한 인코딩 여부를 판단하고, 판단 결과에 따라서 상기 인코딩하는 단계가 수행되도록 하는 단계를 더 포함할 수 있다.In the method of providing a content caching service according to the present invention, before the encoding, the encoding of the content is determined according to a criterion including at least one of popularity and time, and the encoding is performed according to a determination result. It may further comprise the step of.

본 발명에 의한 컨텐츠 캐싱 서비스 제공 방법은, 컨텐츠를 상기 단말 장치에 전송한 후, 상기 컨텐츠에 대한 요청이 발생하기 전까지의 시간을 카운팅하고, 상기 시간이 일정 시간을 초과한 경우, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 저 해상도의 컨텐츠를 하나 이상 삭제하는 단계를 더 포함할 수 있다.The content caching service providing method according to the present invention counts a time before a request for the content occurs after transmitting the content to the terminal device, and if the time exceeds a predetermined time, the different resolutions. The method may further include deleting one or more contents having a low resolution among two or more contents data having a.

본 발명은, 동일 컨텐츠를 서로 다른 해상도를 갖는 다수의 컨텐츠 데이터로 인코딩하여 링크 품질 또는 단말 성능에 따라서 적절한 해상도의 컨텐츠 데이터를 선택 제공하는 적응형 컨텐츠 전송 방식을 지원하는데 있어서, 로컬 캐싱 장치가 특정 해상도의 컨텐츠를 인코딩하여 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터를 미리 생성하여 저장하여 두고, 이후 단말 장치로부터의 요청에 따라서 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터를 선택적으로 단말 장치로 전송함으로써, 컨텐츠 제공 장치와 로컬 캐싱 장치 사이의 구간에서의 트래픽을 더 감소시키고, 보다 효율적으로 컨텐츠 캐싱 서비스를 제공할 수 있도록 하는 우수한 효과가 있다.The present invention provides an adaptive content transmission scheme that encodes the same content into a plurality of pieces of content data having different resolutions and selects and provides appropriate content data according to link quality or terminal performance. By encoding content of a resolution and generating and storing two or more pieces of content data having different resolutions in advance, and then selectively transmitting two or more pieces of content data having different resolutions to the terminal device according to a request from the terminal device. There is an excellent effect to further reduce the traffic in the interval between the providing device and the local caching device, and to provide a content caching service more efficiently.

도 1은 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 시스템을 개략적으로 도시한 블럭도이다.
도 2는 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 시스템에 있어서, 로컬 캐싱 장치의 분산 배치 구성을 설명하기 위한 상세 블럭도이다.
도 3은 본 발명에 적용되는 적응형 컨텐츠의 구조를 간략히 설명하기 위한 모식도이다.
도 4는 기존의 컨텐츠 캐싱 서비스에 따라서 적응형 컨텐츠를 제공하는 과정을 나타낸 흐름도이다.
도 5는 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스에서의 적응형 컨텐츠 제공 과정을 나타낸 흐름도이다.
도 6은 본 발명의 실시 예에 따른 로컬 캐싱 장치의 구성을 나타낸 블럭도이다.
도 7은 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 방법을 설명하기 위한 순서도이다.
1 is a block diagram schematically illustrating a content caching service system according to an embodiment of the present invention.
2 is a detailed block diagram illustrating a distributed arrangement configuration of a local caching apparatus in a content caching service system according to an exemplary embodiment of the present invention.
3 is a schematic diagram for briefly explaining the structure of the adaptive content applied to the present invention.
4 is a flowchart illustrating a process of providing adaptive content according to an existing content caching service.
5 is a flowchart illustrating an adaptive content providing process in a content caching service according to an exemplary embodiment of the present invention.
6 is a block diagram illustrating a configuration of a local caching apparatus according to an exemplary embodiment of the present invention.
7 is a flowchart illustrating a content caching service method according to an exemplary embodiment of the present invention.

이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, detailed description of well-known functions or constructions that may obscure the subject matter of the present invention will be omitted. It should be noted that the same constituent elements are denoted by the same reference numerals as possible throughout the drawings.

아울러, 본 발명에 대한 이해를 돕기 위하여, 이하의 설명에서 사용되는 용어를 정의하면 다음과 같다.In order to facilitate understanding of the present invention, terms used in the following description are defined as follows.

'플로우 정보'는 단말 장치로 특정 컨텐츠를 전송하는 플로우를 정의하는 정보로서, 상기 특정 컨텐츠를 수신하는 목적지의 IP 주소 정보, 상기 목적지의 포트 정보, 및 상기 특정 컨텐츠를 제공하는 소스의 IP 주소 정보를 포함하여 이루어질 수 있다. 상기 플로우 정보는 출발지 및 목적지의 IP 주소 정보, 포트 정보, 프로토콜 필드 정보 중 하나 이상의 조합으로 이루어질 수 있다. 본 발명의 일 실시 예에 있어서, 상기 플로우 정보는, 특정 컨텐츠를 수신하는 목적지의 IP 주소 정보, 상기 목적지의 포트 정보, 및 상기 특정 컨텐츠를 제공하는 소스의 IP 주소 정보의 조합으로 이루어진다.'Flow information' is information defining a flow for transmitting specific content to a terminal device, and includes IP address information of a destination receiving the specific content, port information of the destination, and IP address information of a source providing the specific content. It may be made, including. The flow information may include a combination of one or more of IP address information, port information, and protocol field information of a source and a destination. In one embodiment of the present invention, the flow information is composed of a combination of IP address information of a destination receiving specific content, port information of the destination, and IP address information of a source providing the specific content.

'컨텐츠 주소 정보'는 네트워크 상에서 컨텐츠 제공 장치가 제공하는 컨텐츠의 위치를 나타내는 정보로서, 예를 들어, 프로토콜 타입, 컨텐츠 제공 장치의 도메인 이름이나 IP 주소, 컨텐츠의 파일 경로명으로 구성되는 URL(Uniform Resource Locator)이 될 수 있다.'Content address information' is information indicating the location of content provided by a content providing device on a network. For example, a URL (Uniform Resource) consisting of a protocol type, a domain name or IP address of a content providing device, and a file path name of a content is provided. Locator).

'컨텐츠 구분 정보'는 로컬 캐싱 장치에 저장된 컨텐츠들을 서로 구분하기 위한 정보로서, 구체적으로는, 컨텐츠의 내용 중 적어도 일부를 추출하거나 이를 가공(예를 들어, 해쉬 연산)하여 형성된 정보를 의미한다. 즉, 컨텐츠 구분 정보는 컨텐츠의 내용 중 적어도 일부를 기반으로 생성되어, 컨텐츠를 식별할 수 있는 정보이다. 예를 들어, 컨텐츠 구분 정보는, 기 설정된 길이의 프리픽스 정보, 상기 프리픽스 정보를 기 설정된 해쉬 함수로 연산한 해쉬값, 및 상기 컨텐츠의 메타 데이터 중 하나 이상을 포함하여 이루어질 수 있다.'Contents classification information' is information for distinguishing contents stored in a local caching apparatus from each other, and specifically, means information formed by extracting or processing (eg, hashing) at least a part of the contents of the contents. That is, the content classification information is information that is generated based on at least a part of the content of the content to identify the content. For example, the content classification information may include one or more of prefix information of a preset length, a hash value obtained by calculating the prefix information by a preset hash function, and metadata of the content.

'캐시 히트(Cache hit)'는 저장 수단(Cache)에 요청한 컨텐츠가 존재하는 것을 의미하는 것으로서, 본 발명에 있어서, 로컬 캐싱 장치에서 저장하고 있는 컨텐츠 중 단말 장치에서 요청한 컨텐츠와 일치하는 컨텐츠가 존재하는 상태를 의미한다. 상술한 용어의 정의를 참조함으로써, 이하에서 설명하는 본 발명의 실시 예가 좀더 명확히 이해될 수 있을 것이다.'Cache hit' means that the content requested in the storage means exists. In the present invention, the content that matches the content requested by the terminal device among the content stored in the local caching device exists. It means the state. By referring to the above definition of terms, embodiments of the present invention described below will be more clearly understood.

도 1은 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 시스템을 개략적으로 도시한 블럭도이다.1 is a block diagram schematically illustrating a content caching service system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 의한 컨텐츠 캐싱 서비스는, 네트워크(400)를 통해서 연결되는 단말 장치(100)와, 로컬 캐싱 장치(200)와, 컨텐츠 제공 장치(300)을 기반으로 이루어진다.Referring to FIG. 1, a content caching service according to the present invention is based on a terminal device 100, a local caching device 200, and a content providing device 300 connected through a network 400.

단말 장치(100)는 네트워크(400)에 접속하여, 상기 네트워크(400)를 통해 제공되는 컨텐츠를 이용하는 사용자 장치로서, 컨텐츠 제공 장치(300)로 특정 컨텐츠를 요청하고, 이에 대응하여 컨텐츠 제공 장치(300) 또는 로컬 캐싱 장치(200)로부터 전송되는 컨텐츠를 수신하여 이용한다. 이러한 단말 장치(100)는 예를 들어, 데스크톱 PC, 노트북 컴퓨터, 태블릿 PC, 스마트 폰, PDA(Personal Digital Assistant), 인터넷 TV(스마트 TV) 등 통신 기능을 포함하고 있는 전자/정보 통신 기기라면 어떤 것이라도 포함될 수 있다.The terminal device 100 is a user device that accesses the network 400 and uses the content provided through the network 400, requests specific content from the content providing device 300, and correspondingly provides a content providing device ( 300 or the content transmitted from the local caching apparatus 200 is received and used. Such a terminal device 100 may be any electronic / information communication device including a communication function such as a desktop PC, a notebook computer, a tablet PC, a smart phone, a PDA (Personal Digital Assistant), an Internet TV May also be included.

로컬 캐싱 장치(200)는 네트워크(400) 상에 분산 배치되어, 상기 컨텐츠 제공 장치(300)에서 제공하는 컨텐츠를 임시 또는 일정 시간 동안 저장하여, 단말 장치(100)로부터 상기 컨텐츠가 요청되면, 상기 컨텐츠 제공 장치(300)를 대신하여 저장하고 있는 컨텐츠를 단말 장치(100)로 제공한다. 이를 위하여, 로컬 캐싱 장치(200)는 다양한 캐싱 기법을 이용하여, 상기 컨텐츠 제공 장치(300)로부터 단말 장치(100)로 제공되는 컨텐츠의 일부 또는 전부를 복사하여 저장하는 캐싱 동작을 수행한다. 구체적으로, 상기 로컬 캐싱 장치(200)는 상기 단말 장치(100)의 컨텐츠 요청 메시지를 수신하면, 상기 컨텐츠 요청 메시지에 포함된 컨텐츠 주소 정보 또는 상기 컨텐츠 요청 메시지를 컨텐츠 제공 장치(300)로 전송한 후 상기 컨텐츠 제공 장치(300)로부터 전송되는 컨텐츠의 일부를 기반으로 상기 단말 장치(100)가 요청한 컨텐츠가 저장되어 있는 지를 판단한다. 여기서, 상기 로컬 캐싱 장치(200)는 상기 컨텐츠 요청 메시지에 포함된 플로우 정보가 이전에 캐시 히트된 플로우 정보와 일치하는지 비교하여, 일치하면 상기 단말 장치(100)가 요청한 컨텐츠의 컨텐츠 주소 정보를 기반으로 상기 컨텐츠의 저장 여부를 판단하고, 일치하지 않으면 상기 컨텐츠 제공 장치(300)로부터 상기 단말 장치(100)가 요청한 컨텐츠의 일부를 수신하고, 수신한 컨텐츠의 일부를 키로 하여 상기 단말 장치(100)가 요청한 컨텐츠의 저장 여부를 판단할 수 있다.The local caching apparatus 200 is distributed and disposed on the network 400, and stores the contents provided by the content providing apparatus 300 for a temporary or a predetermined time, when the contents are requested from the terminal device 100. Instead of the content providing device 300, the terminal device 100 provides the terminal device 100 with content stored therein. To this end, the local caching device 200 performs a caching operation for copying and storing a part or all of the content provided to the terminal device 100 from the content providing device 300 using various caching techniques. Specifically, when the local caching apparatus 200 receives the content request message of the terminal device 100, the local caching apparatus 200 transmits the content address information or the content request message included in the content request message to the content providing apparatus 300. Thereafter, the terminal device 100 determines whether the content requested by the terminal device 100 is stored, based on a part of the content transmitted from the content providing device 300. Here, the local caching apparatus 200 compares the flow information included in the content request message with a previously cached flow information, and if it matches, based on the content address information of the content requested by the terminal apparatus 100. If it is determined that the content is stored, and if it does not match, the terminal device 100 receives a part of the content requested by the terminal device 100 from the content providing device 300, and the terminal device 100 uses the part of the received content as a key. May determine whether to store the requested content.

상기와 같이 판단한 결과, 컨텐츠가 저장되어 있는 경우, 로컬 캐싱 장치(200)는 상기 컨텐츠 제공 장치(300)를 대신하여 저장된 컨텐츠를 상기 단말 장치(100)로 전송하며, 상기 단말 장치(100)가 요청한 컨텐츠를 저장하고 있지 않은 경우에는, 컨텐츠 제공 장치(300)로부터 컨텐츠를 수신하여 단말 장치(100)로 전송하면서, 이후 동일 컨텐츠에 대한 요청시 해당 컨텐츠를 제공할 수 있도록 캐싱한다.As a result of the determination, when the content is stored, the local caching apparatus 200 transmits the stored content to the terminal apparatus 100 in place of the content providing apparatus 300, and the terminal apparatus 100 When the requested content is not stored, the content is received from the content providing device 300 and transmitted to the terminal device 100, and then cached so that the corresponding content can be provided when the same content is requested.

특히, 본 발명의 일 실시 예에 있어서, 로컬 캐싱 장치(200)는 적응형 컨텐츠의 제공을 위하여, 저장하고 있는 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하고, 상기 단말 장치(100)로부터의 요청에 따라서 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 중에서 하나를 선택적으로 단말 장치(100)로 전송한다. In particular, in an embodiment of the present disclosure, the local caching apparatus 200 encodes the stored contents into two or more pieces of content data having different resolutions in order to provide adaptive content, and the terminal apparatus 100. In response to a request from the mobile station, one of two or more contents having different resolutions is selectively transmitted to the terminal device 100.

상술한 로컬 캐싱 장치(200)의 상세 구성 및 동작은 이후에 더 구체적으로 설명하기로 한다.Detailed configuration and operation of the above-described local caching apparatus 200 will be described in more detail later.

또한, 본 발명의 실시 예에서는, 로컬 캐싱 장치(200)를 하나로 도시하였으나, 로컬 캐싱 장치(200)는 하나 이상으로 이루어져 네트워크(400) 상에 분산 배치될 수 있다. In addition, in the embodiment of the present invention, the local caching apparatus 200 is illustrated as one, but the local caching apparatus 200 may be formed in one or more and distributed on the network 400.

다음으로, 상기 컨텐츠 제공 장치(300)는 네트워크(400)를 통해서 임의의 컨텐츠, 예를 들어, 동영상 파일, 오디오 파일, 웹 페이지 등을 포함하는 다양한 컨텐츠를 제공하는 서비스 장치로서, 이때, 상기 컨텐츠는 스트리밍 또는 다운로드 방식으로 제공될 수 있다. 이러한 컨텐츠 제공 장치(300)는 예를 들어, 유료 또는 무료의 동영상을 업로드하거나, 보거나, 공유할 수 있도록 하는 동영상 공유 사이트, 모바일 컨텐츠를 자유롭게 거래할 수 있는 어플리케이션 스토어, 인터넷을 통해 방송 서비스를 제공하는 IPTV 등을 서비스를 서버 장치일 수 있다.Next, the content providing device 300 is a service device that provides a variety of content, including video content, for example, video files, audio files, web pages, etc. over the network 400, wherein the content May be provided in a streaming or download manner. The content providing apparatus 300 may provide, for example, a video sharing site for uploading, viewing, or sharing paid or free video, an application store for freely trading mobile content, and a broadcast service through the Internet. The server may serve as an IPTV service.

본 발명의 일 실시 예에 있어서, 상기 컨텐츠 제공 장치(300)는, 적응형 컨텐츠 전송 서비스를 제공할 수 있다. 구체적으로는, 동일 컨텐츠를 서로 다른 해상도를 갖는 둘 이상 컨텐츠로 인코딩하여 구비하며, 특히 상기 컨텐츠를 다수의 청크로 나누어 저장한 후, 링크 품질 또는 단말 성능에 따라서 적절한 해상도의 컨텐츠 데이터를 단말 장치(100)로 전송한다.According to an embodiment of the present disclosure, the content providing device 300 may provide an adaptive content delivery service. Specifically, the same content is encoded into two or more contents having different resolutions, and the content is divided into a plurality of chunks, and the content is divided into a plurality of chunks, and then the content data having an appropriate resolution according to link quality or terminal performance is stored in the terminal apparatus ( 100).

아울러, 상술한 단말 장치(100)와 로컬 캐싱 장치(200)와 컨텐츠 제공 장치(300)를 연결하는 네트워크(400)는 현재 사용되고 있거나 향후 사용 가능한 통신망 및 이들을 결합으로 이루어진 통합망까지 포함할 수 있다. 구체적으로, 네트워크(400)는 인터넷 망과 같은 IP 기반의 유무선의 통신망을 포함할 수 있다. 뿐만 아니라, 네트워크(400)는 LTE(Long term evolution) 망, WCDMA 망과 같은 이동통신망뿐만 아니라, 이외에, Wi-Fi망과 같은 다양한 종류의 무선망과, 이들의 결합으로 이루어지는 모바일 망을 포함할 수 있다. 이 경우, 본 발명에 의한 로컬 캐싱 장치(200)는 모바일 망에서의 컨텐츠 중복 전송 및 트래픽 감소를 위해 이용될 수 있다.In addition, the network 400 connecting the terminal device 100, the local caching device 200, and the content providing device 300 may include a communication network currently used or available in the future, and an integrated network including a combination thereof. . In detail, the network 400 may include an IP-based wired / wireless communication network such as an Internet network. In addition, the network 400 may include not only a mobile communication network such as an LTE (Long Term Evolution) network, a WCDMA network, but also various types of wireless networks such as a Wi-Fi network and a mobile network . In this case, the local caching apparatus 200 according to the present invention can be used for content duplication transmission and traffic reduction in the mobile network.

본 발명에 의한 로컬 캐싱 장치(200)는 상술한 네트워크(400)에 분산 배치되는데, 특히, 상기 네트워크(400)의 에지에 분산 배치된다.Local caching apparatus 200 according to the present invention is distributed to the network 400 described above, in particular, distributed at the edge of the network 400.

도 2는 본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 제공 시스템에 있어서, 로컬 캐싱 장치(200)의 배치 구조를 설명하기 위하여 상기 네트워크(400)의 상세 구성을 나타낸 블럭도이다.2 is a block diagram illustrating a detailed configuration of the network 400 in order to explain an arrangement structure of a local caching apparatus 200 in a content caching service providing system according to an exemplary embodiment.

도 2을 참조하면, 네트워크(400)는, 사용자의 단말 장치(100)가 접속되는 하나 이상의 무선 또는 유선 접속망(410,420)과 상기 무선 또는 유선 접속망(410,420) 간을 연결하는 코어망(430)을 포함하여 이루어질 수 있다.Referring to FIG. 2, the network 400 may include a core network 430 connecting one or more wireless or wired access networks 410 and 420 to which a user terminal device 100 is connected, and the wireless or wired access networks 410 and 420. It can be made, including.

여기서, 상기 무선 접속망(410)은, 다양한 무선 통신 방식으로 단말 장치(100)와 데이터를 송수신할 수 있는 가입자망을 의미하는 것으로서, 이동통신망, Wi-Fi망을 포함할 수 있으며, 유선 접속망(420)은 단말 장치(100)와 유선으로 연결되어, 데이터를 송수신하는 가입자망을 의미하는 것으로서, 예를 들어, 광통신방식의 FTTH와 같은 유선 엑세스망을 포함할 수 있다.The wireless access network 410 refers to a subscriber network capable of transmitting and receiving data to and from the terminal device 100 in various wireless communication systems. The wireless access network 410 may include a mobile communication network and a Wi-Fi network. 420 denotes a subscriber network that is connected to the terminal 100 by wire and transmits and receives data, and may include a wired access network such as an optical communication FTTH.

로컬 캐싱 장치(200:200a, 200b)는 상술한 네트워크(400)의 에지 노드에 분산 배치될 수 있다. 더 구체적으로 설명하면, 코어망(100)의 각 무선/유선 접속망(410,420)과 연결되는 스위칭 장치(예를 들어, 라우터 등)(431a, 431b, 431c)에 연결되어, 각각 하나 이상의 무선/유선 접속망(410,420)에 연결된 단말 장치(100)에 대하여 컨텐츠 캐싱 서비스를 제공할 수 있다.The local caching device 200 (200a, 200b) may be distributed to the edge nodes of the network 400 described above. More specifically, the core network 100 is connected to switching devices (e.g., routers) 431a, 431b, and 431c connected to the respective wireless / wired access networks 410 and 420 of the core network 100, The content caching service can be provided to the terminal device 100 connected to the access networks 410 and 420.

특히, 이동통신망과 같은 모바일 망에 본 발명에 의한 컨텐츠 캐싱 서비스를 적용하고자 하는 경우, 상기 로컬 캐싱 장치(200)는, 모바일 망에 있어서, BS(Base Station), BTS(Base Transceiver Station), 노드B, e노드B 등과 같은 다수의 기지국과, BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기로 구현되는 무선 접속망 단위로 분산 배치될 수 있으며, 이 경우, 각 무선 접속망에 연결되는 이동통신시스템의 에지 노드(예를 들어, 스위칭 장치)에 연결되어, 각 무선 접속망에 연결된 이동 단말 장치로의 컨텐츠 전송을 지원할 수 있다.Particularly, in case of applying a content caching service according to the present invention to a mobile network such as a mobile communication network, the local caching device 200 may include a base station (BS), a base transceiver station (BTS) B, and eNode B, and a base station controller such as a base station controller (BSC) and a radio network controller (RNC). In this case, (For example, a switching device) of a mobile communication system, and can support content transmission to a mobile terminal device connected to each radio access network.

아울러, 도 3은 본 발명에 따른 컨텐츠 캐싱 서비스에 대한 이해를 돕기 위하여, 적응형 컨텐츠의 구조를 간략히 나타낸 모식도이다.In addition, Figure 3 is a schematic diagram showing the structure of the adaptive content in order to facilitate understanding of the content caching service according to the present invention.

도 3을 참조하면, HLS(HTTP Live Streaming)와 같은 적응형 컨텐츠 전송 방식에 따르면, 임의의 한 컨텐츠(10)는, 서로 다른 다양한 해상도로 인코딩된 둘 이상의 컨텐츠 데이터(11, 12, 13)을 포함하여 이루어진다. 본 발명의 일 실시 예에 있어서, 상기 컨텐츠 데이터(11, 12, 13)는 예를 들어, 1024K, 720K, 480K의 해상도로 이루어진 컨텐츠 데이터(11, 12, 13)를 포함할 수 있다. 이 경우, 상기 컨텐츠(10)는, 링크 품질 또는 단말 성능에 따라서 1024K, 720K, 480K 의 해상도로 제공될 수 있다.Referring to FIG. 3, according to an adaptive content transmission scheme such as HTTP Live Streaming (HLS), any one content 10 may include two or more pieces of content data 11, 12, and 13 encoded at different resolutions. It is made to include. According to an embodiment of the present disclosure, the content data 11, 12, 13 may include content data 11, 12, 13 having a resolution of 1024K, 720K, and 480K, for example. In this case, the content 10 may be provided at resolutions of 1024K, 720K, and 480K according to link quality or terminal performance.

또한, 서로 다른 해상도로 인코딩된 각 컨텐츠 데이터(11, 12, 13)는 각각 소정 크기의 청크 데이터(A1~A3, B1~B3, C1~C3)로 나누어진다. 여기서, 하나의 청크 데이터의 크기는 예를 들어, 동영상 컨텐츠라고 할 때, 10초 정도로 설정될 수 있다.In addition, each content data 11, 12, 13 encoded at different resolutions is divided into chunk data A1 to A3, B1 to B3, and C1 to C3 having a predetermined size. Here, the size of one chunk data may be set to about 10 seconds, for example, when referring to video content.

이렇게 다양한 해상도를 갖는 컨텐츠(10)는 청크 단위로 전송되며, 단말 장치(100)의 성능, 링크 품질 중 어느 하나에 따라서, 적정 해상도의 컨텐츠 데이터가 선택 전송된다.The content 10 having various resolutions is transmitted in chunks, and content data having appropriate resolution is selectively transmitted according to any one of the performance and the link quality of the terminal device 100.

따라서, 적응형 컨텐츠가 아닌 경우에는, 컨텐츠 자체에 대하여 한번 정도의 GET 메시지가 전송되나, 적응형 컨텐츠의 경우, 청크 단위로 컨텐츠 요청이 발생하기 때문에 일반 컨텐츠에 비하여 상대적으로 많은 GET 메시지가 발생된다. Therefore, in the case of non-adaptive content, about one GET message is transmitted for the content itself, but in the case of adaptive content, since a content request is generated in chunks, a relatively large number of GET messages are generated. .

도 4는 상술한 적응형 컨텐츠에 대한 기존의 컨텐츠 캐싱 서비스 과정을 나타낸 도면으로서, 이를 참조하면, 통상적으로, 단말 장치가 컨텐츠(10)를 스트리밍받는 경우, 링크 품질이 양호하여 고 해상도의 데이터 A1을 요청하여 수신한 후, 링크 품질이 저하되면 그 다음 재생 순서의 데이터로서 저 해상도의 데이터 C2를 요청할 수 있으며, 그 다음 단계에서는 다시 좀더 높은 중간 해상도의 데이터 B3를 요청할 수 있다.4 is a diagram illustrating a conventional content caching service process for the above-described adaptive content. Referring to this, in general, when the terminal device receives the content 10, the link quality is good and the data A1 has high resolution. After the request is received and received, if the link quality is deteriorated, data C2 of low resolution may be requested as data of the next reproduction order, and data B3 of higher medium resolution may be requested again in the next step.

이때, 상기 로컬 캐싱 장치는 각각의 요청된 컨텐츠 데이터의 저장 여부를 확인하는데, 여기서 임의의 컨텐츠(10)의 모든 데이터가 저장되어 있지 않다고 가정하면, 상기 로컬 캐싱 장치는 A1, C2, B3 순으로 컨텐츠 제공 장치에 컨텐츠를 요청하고, 이에 대응하여 전송되는 데이터 A1, C2, B3를 단말 장치에 순차적으로 전송하게 된다.In this case, the local caching apparatus checks whether or not each requested content data is stored. Here, assuming that all data of any content 10 are not stored, the local caching apparatus is A1, C2, and B3 in this order. Content is requested from the content providing device, and data A1, C2, and B3 transmitted correspondingly are sequentially transmitted to the terminal device.

이와 같이, 적응형 컨텐츠의 경우, 청크 단위로 컨텐츠가 요청될뿐만 아니라, 링크 품질 또는 단말 성능에 따라서 요청하는 데이터의 해상도가 달라질 수 있다. 따라서, 기존의 로컬 캐싱 장치는 해상도가 다른 컨텐츠 데이터를 모두 컨텐츠 제공 장치로부터 수신하여 저장하여야 한다.As such, in the case of the adaptive content, not only the content is requested in chunks, but also the resolution of the requested data may vary according to link quality or terminal performance. Therefore, the existing local caching apparatus must receive and store all content data having different resolutions from the content providing apparatus.

이러한 적응형 컨텐츠를 좀 더 효율적으로 서비스하기 위하여, 본 발명의 일 실시 예에 있어서 로컬 캐싱 장치(200)는, 도 5에 도시된 바와 같이, 단말 장치(100)로부터 컨텐츠(10)의 데이터 A1이 요청되면, 상기 컨텐츠 제공 장치(200)에 요청하여, 상기 컨텐츠(10)의 고 해상도의 데이터(11) A1~A3를 모두 수신하여 저장한다. 그리고, 상기 저장한 고 해상도의 데이터(11) A1~A3로부터 그보다 낮은 해상도의 데이터 B1~B3, C1~C3를 인코딩하여 생성한다. 이와 같이 상기 로컬 캐싱 장치(200)는 적응형 컨텐츠(10)에 대하여, 향후 요청할 가능성이 있는 다른 해상도의 데이터를 모두 생성하여 둠으로써, 추후 단말 장치(100)의 요청에 따라서 다른 해상도의 데이터가 요청될 경우, 해당 데이터를 로컬 캐싱 장치(200)에서 단말 장치(100)로 바로 서비스할 수 있게 한다.In order to more efficiently service such adaptive content, according to an embodiment of the present invention, as shown in FIG. 5, the local caching apparatus 200 may transmit data A1 of the content 10 from the terminal apparatus 100. When the request is made, the content providing apparatus 200 requests the content providing apparatus 200 to receive and store all of the high resolution data 11 A1 to A3 of the content 10. The data B1 to B3 and C1 to C3 having lower resolutions are encoded and generated from the stored high resolution data 11 A1 to A3. As such, the local caching apparatus 200 generates all of the data having different resolutions that may be requested in the future with respect to the adaptive content 10, so that the data having different resolutions may be generated at the request of the terminal apparatus 100 later. If requested, the data can be directly served from the local caching apparatus 200 to the terminal apparatus 100.

상술한 바에 따르면, 컨텐츠 제공 장치(300)와 로컬 캐싱 장치(200) 사이의 구간에서 발생하는 데이터 요청 및 응답 수신 횟수를 크게 줄일 수 있으므로, 컨텐츠 제공 장치(300)와 로컬 캐싱 장치(200) 사이의 구간에 대한 불필요한 트래픽 발생을 감소시킬 수 있다. As described above, since the number of data requests and responses received in the section between the content providing apparatus 300 and the local caching apparatus 200 may be greatly reduced, the content providing apparatus 300 and the local caching apparatus 200 may be reduced. It is possible to reduce unnecessary traffic generation for the interval of.

이하 상술한 바에 따른 본 발명의 로컬 캐싱 장치(200)의 구성 및 그의 컨텐츠 캐싱 서비스 제공 방법을 좀더 구체적으로 설명하기로 한다.Hereinafter, the configuration of the local caching apparatus 200 and the content caching service providing method thereof according to the present invention will be described in more detail.

도 6은 본 발명의 실시 예에 따른 로컬 캐싱 장치(200)의 구성을 나타낸 블럭도이다.6 is a block diagram illustrating a configuration of a local caching apparatus 200 according to an exemplary embodiment of the present invention.

도 6을 참조하면, 본 발명의 실시 예에 따른 로컬 캐싱 장치(200)는, 통신 인터페이스부(210)와, 제어부(220)와, 저장부(230)를 포함하여 이루어질 수 있다.Referring to FIG. 6, the local caching apparatus 200 according to an embodiment of the present invention may include a communication interface 210, a controller 220, and a storage 230.

통신 인터페이스부(210)는, 네트워크(400)에 연결되어 상기 네트워크(400)를 통해서 데이터를 송수신하기 위한 수단이다. 특히, 본 발명의 실시 예에 따르면, 통신 인터페이스부(210)는, 하나 이상의 컨텐츠 제공 장치(300)와 하나 이상의 단말 장치(100) 간에 데이터를 전달하는 네트워크(400)에 연결되어, 상기 네트워크(400)를 통해 상기 하나 이상의 컨텐츠 제공 장치(300)와 하나 이상의 단말 장치(100)와 데이터를 송수신할 수 있다. 이러한 통신 인터페이스부(210)는, 연결되는 네트워크(400)의 종류에 따라서 유선 방식 또는 무선 방식의 송수신을 처리하는 통신 모듈을 하나 이상 포함할 수 있다.The communication interface unit 210 is connected to the network 400 and is a means for transmitting and receiving data through the network 400. [ Particularly, according to an embodiment of the present invention, the communication interface unit 210 is connected to a network 400 that transmits data between one or more content providing apparatuses 300 and one or more terminal apparatuses 100, 400 to send and receive data to and from the one or more content providing apparatuses 300 and one or more terminal apparatuses 100. The communication interface unit 210 may include at least one communication module that processes wired or wireless transmission and reception according to the type of the connected network 400. [

저장부(230)는 상기 하나 이상의 컨텐츠 제공 장치(300)로부터 하나 이상의 단말 장치(100)로 서비스되는 컨텐츠의 일부 또는 전부를 저장한다. 본 발명의 일 실시 예에서, 상기 저장부(230)는 상기 컨텐츠 제공 장치(300)로부터 수신되는 컨텐츠 데이터뿐만 아니라, 로컬 캐싱 장치(200)에서 자체적인 인코딩을 통해 생성된 서로 다른 해상도를 갖는 다수의 컨텐츠를 저장할 수 있다.The storage unit 230 stores some or all of the content serviced by the one or more content providing devices 300 to the one or more terminal devices 100. According to an embodiment of the present disclosure, the storage unit 230 may have a plurality of different resolutions generated through its own encoding in the local caching apparatus 200 as well as the content data received from the content providing apparatus 300. You can save the content of the.

제어부(220)는 상기 로컬 캐싱 장치(200)에 의한 캐싱 서비스 동작의 전반을 제어하는 수단으로서, 기본적으로, 통신 인터페이스부(210)를 통해서 단말 장치(100)의 컨텐츠 요청 메시지를 수신하면, 단말 장치(100)가 요청한 컨텐츠가 저장부(230)에 저장되어 있는 지를 확인하고, 저장되어 있는 경우(캐시 히트된 경우) 컨텐츠 제공 장치(300)를 대신하여 저장부(230)에서 해당 컨텐츠를 가져와 상기 단말 장치(100)로 제공하고, 저장되어 있지 않은 경우에는 컨텐츠 제공 장치(300)로부터 상기 컨텐츠를 수신하여 단말 장치(100)로 전달하면서, 상기 수신한 컨텐츠를 저장부(230)에 저장한다. The controller 220 is a means for controlling the first half of the caching service operation by the local caching apparatus 200. When the controller 220 receives the content request message of the terminal apparatus 100 through the communication interface 210, the terminal Check whether the content requested by the device 100 is stored in the storage 230, and if the content is stored (if cache hit), the corresponding content is retrieved from the storage 230 on behalf of the content providing device 300. If not provided and stored in the terminal device 100, the content is received from the content providing device 300 and delivered to the terminal device 100, and the received content is stored in the storage unit 230. .

이때, 상기 단말 장치(100)에서 요청한 컨텐츠의 저장 여부에 대한 판단은 다음과 같이 이루어진다.At this time, the determination of whether to store the content requested by the terminal device 100 is performed as follows.

즉, 제어부(220)는, 단말 장치(100)로부터 상기 컨텐츠가 요청되면, 상기 컨텐츠 제공 장치(300)를 대신하여 저장하고 있는 컨텐츠를 단말 장치(100)로 제공하도록 제어한다. 이를 위하여, 제어부(220)는 다양한 캐싱 기법을 이용하여, 상기 컨텐츠 제공 장치(300)로부터 단말 장치(100)로 제공되는 컨텐츠의 일부 또는 전부를 복사하여 저장하는 캐싱 동작을 제어한다. 구체적으로, 상기 제어부(220)는 상기 단말 장치(100)의 컨텐츠 요청 메시지를 수신하면, 상기 컨텐츠 요청 메시지에 포함된 컨텐츠 주소 정보 또는 상기 컨텐츠 요청 메시지를 컨텐츠 제공 장치(300)로 전송한 후 상기 컨텐츠 제공 장치(300)로부터 전송되는 컨텐츠의 일부를 기반으로 상기 단말 장치(100)가 요청한 컨텐츠가 저장되어 있는 지를 판단한다. 여기에 더하여, 상기 제어부(220)는, 상기 컨텐츠 요청 메시지에 포함된 플로우 정보가 이전에 캐시 히트된 플로우 정보와 일치하는지 비교하여, 일치하면 상기 단말 장치(100)가 요청한 컨텐츠의 컨텐츠 주소 정보를 기반으로 상기 컨텐츠의 저장 여부를 판단하고, 일치하지 않으면 상기 컨텐츠 제공 장치(300)로부터 상기 단말 장치(100)가 요청한 컨텐츠의 일부를 수신하고, 수신한 컨텐츠의 일부를 키로 하여 상기 단말 장치(100)가 요청한 컨텐츠의 저장 여부를 판단할 수 있다. 여기서, 플로우 정보는 상기 단말 장치(100)로 컨텐츠를 제공하는 플로우를 컨텐츠 별로 식별하기 위한 정보로서, 출발지 주소 정보와 목적지 주소 정보를 매칭하여 설정할 수 있으며, 본 발명의 일 실시 예에 있어서, 상기 출발지 주소 정보는 상기 컨텐츠의 출발지, 즉, 컨텐츠 제공 장치(300)의 주소 정보로서 IP 주소 정보(예, Sever1_IP, Server2_IP)로 설정될 수 있으며, 목적지 주소 정보는 상기 컨텐츠의 목적지, 즉, 단말 장치(100)의 주소 정보로서 단말 장치(100)의 IP 주소 정보(예, UE_IP) 및 포트 정보(UE_Port)로 설정될 수 있다. That is, when the content is requested from the terminal device 100, the controller 220 controls to provide the terminal device 100 with content stored in place of the content providing device 300. To this end, the controller 220 controls a caching operation of copying and storing a part or all of the content provided from the content providing device 300 to the terminal device 100 using various caching techniques. Specifically, when receiving the content request message of the terminal device 100, the controller 220 transmits the content address information or the content request message included in the content request message to the content providing device 300 and then The terminal device 100 determines whether the content requested by the terminal device 100 is stored based on a part of the content transmitted from the content providing device 300. In addition, the controller 220 compares the flow information included in the content request message with previously flow hit cache information, and if it matches, compares the content address information of the content requested by the terminal device 100 with the flow information. The terminal device 100 determines whether to store the content based on the content, and if it does not match, receives a part of the content requested by the terminal device 100 from the content providing device 300, and uses the part of the received content as a key. ) May determine whether to store the requested content. Here, the flow information is information for identifying the flow providing the content to the terminal device 100 for each content, and may be set by matching the source address information and the destination address information. In one embodiment of the present invention, Origin address information may be set as the source of the content, that is, the IP address information (eg, Sever1_IP, Server2_IP) as address information of the content providing device 300, and the destination address information is a destination of the content, that is, the terminal device As address information of 100, IP address information (eg, UE_IP) and port information (UE_Port) of the terminal device 100 may be set.

또한. 이전에 캐시 히트된 플로우 정보는, 다수의 청크 데이터로 나눠지는 다양한 해상도의 컨텐츠 데이터를 포함하는 적응형 컨텐츠에 대하여, 특정 해상도의 특정 청크 데이터에 대하여 캐시 히트된 상태이며, 해당 세션이 활성화 상태인 플로우에 대한 플로우 정보를 의미한다. 즉, 특정 해상도의 특정 청크 데이터가 캐시 히트된 적 있으며 아직 컨텐츠 전송이 진행중인 적응형 컨텐츠에 대한 플로우 정보를 의미한다. Also. The previously cache hit flow information is cache hit for specific chunk data of a specific resolution for adaptive content including content data of various resolutions divided into a plurality of chunk data, and the session is active. Means flow information about the flow. That is, it refers to flow information about the adaptive content in which specific chunk data of a specific resolution has been cache hit and the content transmission is still in progress.

그리고, 상기 제어부(220)가, 상기 컨텐츠 제공 장치(300)로부터 상기 단말 장치(100)가 요청한 컨텐츠의 일부를 수신하고, 수신한 컨텐츠의 일부를 키로 하여 상기 단말 장치(100)가 요청한 컨텐츠의 저장 여부를 판단하는 경우, 컨텐츠의 저장 여부를 판단하는 동안, 상기 컨텐츠 제공 장치(300)로부터 수신한 컨텐츠를 바로 상기 단말 장치(100)로 전송함으로써, 상기 단말 장치(100)가 가능한 지연 없이 컨텐츠를 수신하도록 한다. 그리고, 상기 로컬 캐싱 장치(200)에 컨텐츠가 저장되어 있는 것으로 판단되면, 상기 로컬 캐싱 장치(200)는 그 이후의 데이터를 저장부(230)로부터 가져와 단말 장치(100)로 전송할 수 있다.Then, the controller 220 receives a part of the content requested by the terminal device 100 from the content providing device 300, and uses the part of the received content as a key to determine the content of the content requested by the terminal device 100. When determining whether to store the content, while determining whether to store the content, by directly transmitting the content received from the content providing device 300 to the terminal device 100, the terminal device 100 content without any possible delay To receive. When it is determined that content is stored in the local caching apparatus 200, the local caching apparatus 200 may take data thereafter from the storage unit 230 and transmit the data to the terminal device 100.

이를 위하여, 상기 제어부(220)는, 이전에 캐시 히트된 컨텐츠와 관련된 플로우 정보를 기록하는 플로우 정보 테이블과, 상기 저장부(230)에 저장된 각 컨텐츠의 적어도 일부를 이용하여 생성된 컨텐츠 구분 정보를 기록하는 제1 필드와, 상기 컨텐츠 구분 정보에 매칭되는 컨텐츠에 대응하는 하나 이상의 컨텐츠 주소 정보를 기록하는 제2 필드를 포함하는 컨텐츠 주소 관리 테이블을 구비할 수 있으며, 상기 출발지-목적지 주소 정보 테이블과 상기 컨텐츠 주소 관리 테이블을 참조하여 상기 컨텐츠의 저장 여부를 판단할 수 있다.To this end, the controller 220 may include a flow information table for recording flow information related to previously cached content and content classification information generated by using at least a portion of each content stored in the storage 230. And a content address management table including a first field to record and a second field to record one or more content address information corresponding to the content matching the content classification information, wherein the source-destination address information table and The content address management table may be used to determine whether to store the content.

그리고, 상기 제어부(220)는, 상기 단말 장치(100)가 요청한 컨텐츠의 저장 여부를 판단한 결과, 컨텐츠가 저장부(230)에 저장되어 있지 않은 경우, 상기 컨텐츠 제공 장치(300)로부터 계속해서 컨텐츠를 수신하여 상기 단말 장치로 전송함과 동시에 상기 저장부(230)에 저장한다.When the terminal device 100 determines whether to store the content requested by the terminal device 100, and the content is not stored in the storage unit 230, the control unit 220 continues the content from the content providing device 300. Receives it and transmits it to the terminal device and stores it in the storage unit 230.

반면에, 상기 제어부(220)는, 상기 단말 장치(100)가 요청한 컨텐츠의 저장 여부를 판단한 결과, 상기 단말 장치(100)가 요청한 컨텐츠가 저장되어 있는 경우, 상기 컨텐츠 제공 장치(300)로 컨텐츠 전송 중단을 요청할 수 있다. 이에 의하면, 컨텐츠 제공 장치(300)로부터 로컬 캐싱 장치(200)까지 구간의 트래픽이 감소된다. 여기서, 컨텐츠 전송의 중단을 요청하는 메시지는 HTTP RST(Reset) 메시지일 수 있다.On the other hand, if the content requested by the terminal device 100 is stored, the controller 220 determines whether to store the content requested by the terminal device 100, and the content is provided to the content providing device 300. You can request to stop the transfer. Accordingly, the traffic of the section from the content providing device 300 to the local caching device 200 is reduced. Here, the message for requesting to stop the content transmission may be an HTTP RST (Reset) message.

특히, 본 발명의 일 실시 예에 있어서, 상기 제어부(220)는, 적응형 컨텐츠 전송 서비스를 위하여, 상기 저장부(230)에 저장된 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하여 상기 저장부(230)에 저장한 후, 단말 장치(100)로부터의 요청에 따라서 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중 하나를 선택적으로 상기 단말 장치(100)에 전송하도록 제어한다. 이를 위하여 상기 제어부(220)는 특정 컨텐츠를 서로 다른 해상도로 인코딩할 수 있는 인코딩 모듈(221)을 더 포함할 수 있다.In particular, in an embodiment of the present disclosure, the controller 220 encodes the contents stored in the storage 230 into two or more pieces of content data having different resolutions and stores the adaptive contents for the adaptive content transmission service. After storing in the unit 230, in response to a request from the terminal device 100, one of two or more pieces of content data having different resolutions are selectively transmitted to the terminal device 100. To this end, the controller 220 may further include an encoding module 221 capable of encoding specific content at different resolutions.

여기서, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터는, 다수의 청크 데이터로 나누어져 있으며, 청크 단위로 서비스될 수 있다.Here, the two or more pieces of content data having different resolutions are divided into a plurality of chunk data and may be serviced in chunk units.

아울러, 상기 제어부(220)는, 상기 인코딩을 수행하기에 앞서, 인기도 및 시간 중에서 하나 이상을 포함하는 기준에 따라서 상기 컨텐츠에 대한 인코딩 여부를 판단할 수 있다. 예를 들어, 일정 시간 구간 동안의 컨텐츠 요청 횟수가 기준값 이상인 컨텐츠에 대해서만 인코딩을 수행할 수 있다. In addition, before performing the encoding, the controller 220 may determine whether to encode the content according to a criterion including at least one of popularity and time. For example, encoding may be performed only for content whose content request count is greater than or equal to a reference value during a predetermined time interval.

또한, 상기 제어부(220)는, 상기 단말 장치(100)로 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 하나를 선택하여 전송한 후, 다음 컨텐츠 요청이 발생하기 전까지 시간 경과를 카운팅하고, 이를 통해 일정 시간 이상 상기 컨텐츠가 요청되지 않는 경우, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 저 해상도의 컨텐츠 데이터를 하나 이상 삭제할 수 있다. 이를 통해서, 로컬 캐싱 장치(200)는 한정되어 있는 저장부(230)의 저장 공간을 좀더 효율적으로 사용할 수 있게 된다.In addition, the controller 220 selects and transmits one of two or more pieces of content data having different resolutions to the terminal device 100, and then counts the elapsed time until a next content request occurs, thereby scheduling When the content is not requested for more than one time, one or more content data having a low resolution may be deleted from two or more content data having different resolutions. Through this, the local caching apparatus 200 may use the storage space of the limited storage unit 230 more efficiently.

더하여, 상기 제어부(220)는, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터를 인코딩하는데 있어서, 상기 단말 장치(100)로부터 상기 컨텐츠가 요청되거나 상기 컨텐츠를 상기 저장부(230)에 캐싱하는 시점에, 상기 인코딩을 수행할 수 있다. 즉, 단말 장치(100)로부터 다른 해상도의 컨텐츠 데이터가 요청되기 전에 상기 서로 다른 해상도로의 인코딩을 수행함으로써, 추후 단말 장치(100)에서 요청시 신속하게 서비스할 수 있도록 한다.In addition, the control unit 220, in encoding two or more pieces of content data having different resolutions, when the content is requested from the terminal device 100 or when the content is cached in the storage unit 230. The encoding may be performed. That is, before the content data having different resolutions is requested from the terminal device 100, encoding is performed at different resolutions, so that the terminal device 100 can quickly serve the request later.

또한, 상기 제어부(220)는 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터를 인코딩하는데 있어서, 상기 인코딩할 서로 다른 둘 이상의 해상도에 대한 정보를, 컨텐츠 제공 장치(300)로부터 수신되며 상기 컨텐츠의 재생 정보를 제공하는 인덱스 파일 또는 상기 컨텐츠의 전송 이력으로부터 획득할 수 있다. 상기 인덱스 파일은, 적응형 컨텐츠의 요청시, 실제 컨텐츠의 데이터에 앞서 제공되는 정보로서, 단말 장치(100)에서 재생할 세그먼트들의 목록과 관련 정보를 표시하며, 단말 장치(100)는 이를 참조하여 순서대로 세그먼트를 조합하여 재생할 수 있다. 또한 상기 컨텐츠의 전송 이력은, 동일 컨텐츠와 관련하여 요청된 다수 청크 데이터의 요청 및 전송 이력을 의미하는 것으로서, 상기 다수 청크 데이터의 해상도를 분석함으로써, 상기 컨텐츠에 대하여 인코딩할 서로 다른 둘 이상의 해상도를 확인할 수 있다.In addition, the controller 220 encodes two or more pieces of content data having different resolutions, and receives information on two or more different resolutions to be encoded from the content providing device 300 and reproduces the information of the content. It can be obtained from the index file for providing or the transmission history of the content. The index file is information provided prior to the actual content data when requesting the adaptive content, and displays a list of segments and related information to be reproduced in the terminal device 100, and the terminal device 100 refers to this in order. The segments can be combined and played back as they are. In addition, the transmission history of the content means a request and transmission history of the plurality of chunk data requested in relation to the same content, by analyzing the resolution of the plurality of chunk data, to determine two or more different resolutions to be encoded for the content You can check it.

이어서, 본 발명의 일 실시 예에 의한 컨텐츠 캐싱 서비스 과정을 도 7을 참조하여 설명한다.Next, a content caching service process according to an embodiment of the present invention will be described with reference to FIG. 7.

여기서, 로컬 캐싱 장치(200)는 컨텐츠 제공 장치(300)로부터 단말 장치(100)로 서비스하는 컨텐츠의 일부 또는 전부를 저장하고 있는 것으로 가정한다. 여기서, 상기 컨텐츠의 저장은 컨텐츠 제공 장치(300)에서 일정 기준에 따라서 미리 다수의 로컬 캐싱 장치(200)로 배포하는 방식, 또는 로컬 캐싱 장치(200)가 미러링된 트래픽을 받아 저장하는 미러링 방식, 또는 로컬 캐싱 장치(200)가 단말 장치(100)에서 요구한 컨텐츠를 미리 설정된 캐시 정책에 따라서 저장하는 캐싱 방식 등 다양한 방식을 통해 이루어질 수 있다.Here, it is assumed that the local caching apparatus 200 stores some or all of the contents serviced by the content providing apparatus 300 to the terminal device 100. Here, the storage of the content may be distributed to a plurality of local caching apparatuses 200 according to a predetermined criterion in the content providing apparatus 300, or a mirroring scheme in which the local caching apparatus 200 receives and stores the mirrored traffic. Alternatively, the local caching apparatus 200 may be configured through various methods such as a caching scheme for storing the content requested by the terminal apparatus 100 according to a preset cache policy.

상기 가정 하에, 도 7을 참조하면, 로컬 캐싱 장치(200)는 단말 장치(100)로부터 컨텐츠 제공 장치(300)로 전송되는 컨텐츠 요청 메시지를 수신한다(S105).Under the above assumption, referring to FIG. 7, the local caching apparatus 200 receives a content request message transmitted from the terminal apparatus 100 to the content providing apparatus 300 (S105).

이렇게 한 단말 장치(100)로부터 전송된 컨텐츠 요청 메시지를 수신한 로컬 캐싱 장치(200)는, 상기 컨텐츠를 자신이 저장하고 있는 지 여부, 즉, 캐시 히트 여부를 판단한다(S110). 여기서, 캐시 히트 여부의 판단은, 상기 단말 장치(100)가 요청한 컨텐츠의 컨텐츠 주소 정보(예, URL 정보) 또는 상기 단말 장치(100)가 요청한 컨텐츠의 내용 일부(예를 들어, 일정 사이즈의 프리픽스 정보)를 키로 하여 상기 저장부(230)를 검색함에 의해 이루어질 수 있다. 상기 컨텐츠의 내용 일부를 키로 하여 검색하는 경우, 로컬 캐싱 장치(200)는 상기 컨텐츠 요청 메시지를 컨텐츠 제공 장치(300)로 전송하고 그에 대응하여 요청된 컨텐츠의 일부를 수신하는 과정을 더 수행할 수 있다. 이때, 상기 로컬 캐싱 장치(200)는 상기 컨텐츠 요청 메시지의 플로우 정보를 더 추출하고, 상기 플로우 정보가 이전에 캐시 히트된 플로우 정보와 일치하는 지에 따라서, 상기 컨텐츠 주소 정보 또는 컨텐츠 내용 일부 중 어느 하나를 이용하여 컨텐츠의 저장 여부를 판단할 수 있다.Upon receiving the content request message transmitted from the terminal device 100, the local caching apparatus 200 determines whether the content is stored by itself, that is, whether the cache is hit (S110). The determination of whether the cache hit is performed may include content address information (eg, URL information) of the content requested by the terminal device 100 or a part of content (eg, a prefix of a predetermined size) of the content requested by the terminal device 100. Information) as a key to search the storage unit 230. When searching for a part of the content of the content as a key, the local caching apparatus 200 may further perform a process of transmitting the content request message to the content providing apparatus 300 and receiving a portion of the requested content corresponding thereto. have. At this time, the local caching apparatus 200 further extracts the flow information of the content request message, and according to whether the flow information matches the previously cached flow information, any one of the content address information or the content content It may be determined whether to store the content using.

상기와 같은 판단 결과, 로컬 캐싱 장치(200)의 저장부(230)에 단말 장치(100)가 요청한 컨텐츠가 저장되어 있지 않은 경우, 로컬 캐싱 장치(200)는 해당 컨텐츠를 상기 컨텐츠 제공 장치(300)로부터 수신한다(S120).As a result of the determination, when the content requested by the terminal device 100 is not stored in the storage unit 230 of the local caching device 200, the local caching device 200 transmits the corresponding content to the content providing device 300. Received from (S120).

아울러, 상기 로컬 캐싱 장치(200)는 상기 컨텐츠 제공 장치(300)로부터 수신되거나 상기 저장부(230)에 저장되어 있는 컨텐츠를 단말 장치(100)로 전송한다(S125).In addition, the local caching apparatus 200 transmits the content received from the content providing apparatus 300 or stored in the storage 230 to the terminal device 100 (S125).

이와 더불어, 상기 로컬 캐싱 장치(200)는, 상기 저장한 컨텐츠에 대한 인코딩 수행 여부를 판단한다(S130). 여기서, 인코딩 수행 여부의 판단 기준으로 컨텐츠에 대한 인기도(요청 빈도)와 시간 중에서 하나 이상을 포함할 수 있다.In addition, the local caching apparatus 200 determines whether to perform encoding on the stored content (S130). Here, the criterion for determining whether to perform encoding may include one or more of popularity (request frequency) and time for the content.

상술한 판단 기준에 따라서, 인코딩 수행이 필요한 것으로 판단되면, 상기 로컬 캐싱 장치(200)는, 상기 저장한 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하여 저장한다(S135). 더 구체적으로는, 로컬 캐싱 장치(200)는, 상기 저장된 컨텐츠의 해상도보다 낮은 해상도를 갖는 컨텐츠를 인코딩할 수 있으며, 이렇게 다른 해상도의 데이터를 인코딩하여 둠으로써, 링크 품질 또는 단말 성능에 따라서 다른 해상도의 데이터가 요청될 경우, 로컬 캐싱 장치(200)는 컨텐츠 제공 장치(300)로 요청할 필요 없이, 해당 컨텐츠를 바로 서비스할 수 있다.When it is determined that encoding is required according to the above-described determination criteria, the local caching apparatus 200 encodes and stores the stored content into two or more pieces of content data having different resolutions (S135). More specifically, the local caching apparatus 200 may encode a content having a lower resolution than the resolution of the stored content, and by encoding data having such a different resolution, the local caching apparatus 200 may have different resolutions according to link quality or terminal performance. If the data is requested, the local caching apparatus 200 may directly service the corresponding contents without having to request the content providing apparatus 300.

여기서, 더하여 상기 로컬 캐싱 장치(200)는, 상기 컨텐츠를 상기 단말 장치(100)에 전송한 후, 상기 컨텐츠에 대한 요청이 발생하기 전까지의 시간을 카운팅하고, 상기 시간이 일정 시간을 초과한 경우, 즉, 해당 컨텐츠에 대한 요청이 일정 시간 이상 발생하지 않으면, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 중에서 저 해상도의 컨텐츠를 하나 이상 삭제할 수 있다. 이에 의하면, 제한된 크기의 저장부(230)를 보다 효율적으로 이용할 수 있게 된다.In addition, the local caching apparatus 200 counts the time before the request for the content occurs after transmitting the content to the terminal device 100, and the time exceeds the predetermined time That is, if a request for the corresponding content does not occur for a predetermined time or more, one or more contents having a low resolution may be deleted from two or more contents having different resolutions. As a result, the storage unit 230 having a limited size can be used more efficiently.

본 발명의 실시 예에 따른 컨텐츠 캐싱 서비스 제공 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The content caching service providing method according to an exemplary embodiment of the present invention may be implemented in a software form readable by various computer means and recorded on a computer readable recording medium. Here, the recording medium may include program commands, data files, data structures, and the like, alone or in combination. Program instructions to be recorded on a recording medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. For example, the recording medium may be an optical recording medium such as a magnetic medium such as a hard disk, a floppy disk and a magnetic tape, a compact disk read only memory (CD-ROM), a digital video disk (DVD) Includes a hardware device that is specially configured to store and execute program instructions such as a magneto-optical medium such as a floppy disk and a ROM, a random access memory (RAM), a flash memory, do. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, It will be apparent to those skilled in the art. Furthermore, although specific terms are used in this specification and the drawings, they are used in a generic sense only to facilitate the description of the invention and to facilitate understanding of the invention, and are not intended to limit the scope of the invention.

본 발명은, 동일 컨텐츠를 서로 다른 해상도를 갖는 다수의 컨텐츠로 인코딩하여 링크 품질 또는 단말 성능에 따라서 적절한 해상도의 컨텐츠를 제공하는 적응형 컨텐츠 전송 방식을 지원하는데 있어서, 로컬 캐싱 장치가, 특정 해상도의 컨텐츠를 인코딩하여 서로 다른 해상도를 갖는 둘 이상의 컨텐츠를 미리 생성하여 저장하여 두고, 이후 단말 장치로부터의 요청에 따라서 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 중에서 선택적으로 단말 장치로 전송함으로써, 컨텐츠 제공 장치와 로컬 캐싱 장치 사이의 구간에서의 트래픽을 더 감소시키고 보다 효율적으로 컨텐츠 캐싱 서비스를 제공할 수 있도록 하는 우수한 효과가 있다.The present invention provides an adaptive content transmission scheme that encodes the same content into a plurality of contents having different resolutions and provides contents of an appropriate resolution according to link quality or terminal performance. By encoding content and generating and storing two or more contents having different resolutions in advance, and then selectively transmitting the two or more contents having different resolutions to the terminal apparatus according to a request from the terminal apparatus, thereby providing a local content providing apparatus and a local content. There is an excellent effect to further reduce the traffic in the interval between the caching devices and to provide a content caching service more efficiently.

100: 단말 장치 200: 로컬 캐싱 장치
210: 통신 인터페이스부 220: 제어부
221: 인코딩 모듈 230: 저장부
300: 컨텐츠 제공 장치 400: 네트워크
100: terminal device 200: local caching device
210: communication interface unit 220:
221: encoding module 230: storage unit
300: Content providing apparatus 400: Network

Claims (10)

하나 이상의 컨텐츠 제공 장치로부터 하나 이상의 단말 장치로 서비스되는 컨텐츠의 일부 또는 전부를 저장하는 저장부;
상기 하나 이상의 컨텐츠 제공 장치와 하나 이상의 단말 장치 간에 데이터를 전달하는 통신망에 연결되어, 상기 통신망을 통해 데이터를 송수신하는 통신 인터페이스부; 및
상기 저장부에 저장된 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하여 상기 저장부에 저장한 후, 단말 장치로부터의 요청에 따라서 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터중 하나를 선택적으로 상기 단말 장치에 전송하도록 제어하는 제어부;
를 포함하는 것을 특징으로 하는 로컬 캐싱 장치.
A storage unit for storing a part or all of contents serviced from at least one content providing device to at least one terminal device;
A communication interface unit connected to a communication network for transferring data between the at least one content providing apparatus and at least one terminal apparatus and transmitting and receiving data through the communication network; And
After encoding the contents stored in the storage unit into two or more contents data having different resolutions and storing the contents in the storage unit, the terminal selectively selects one of two or more contents data having different resolutions according to a request from the terminal device. A control unit for controlling transmission to the device;
The local caching device comprising:
제1항에 있어서,
상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터는 각각 다수의 청크 데이터로 나누어지는 것을 특징으로 하는 로컬 캐싱 장치.
The method of claim 1,
And at least two pieces of content data having different resolutions are each divided into a plurality of chunk data.
제1항에 있어서, 상기 제어부는
인기도 및 시간 중에서 하나 이상을 포함하는 기준에 따라서 상기 인코딩 여부를 판단하는 것을 특징으로 하는 로컬 캐싱 장치.
The apparatus of claim 1, wherein the control unit
And determining the encoding according to a criterion including at least one of popularity and time.
제1항에 있어서, 상기 제어부는
상기 컨텐츠에 대한 요청이 일정 시간이상 없는 경우, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 저 해상도의 컨텐츠 데이터를 하나 이상 삭제하는 것을 특징으로 하는 로컬 캐싱 장치.
The apparatus of claim 1, wherein the control unit
And at least one low-resolution content data of the two or more pieces of content data having different resolutions, when the request for the content is not longer than a predetermined time.
제1항에 있어서, 상기 제어부는
상기 단말 장치로부터 상기 컨텐츠가 요청되거나 상기 컨텐츠를 상기 저장부에 캐싱하는 시점에, 상기 인코딩을 수행하는 것을 특징으로 하는 로컬 캐싱 장치.
The apparatus of claim 1, wherein the control unit
And at the time when the content is requested from the terminal device or when the content is cached in the storage unit, the encoding is performed.
제1항에 있어서, 상기 제어부는
인코딩할 서로 다른 둘 이상의 해상도에 대한 정보를, 상기 컨텐츠의 재생 정보를 제공하는 인덱스 파일 또는 상기 컨텐츠에 대한 전송 이력으로부터 획득하는 것을 특징으로 하는 로컬 캐싱 장치.
The apparatus of claim 1, wherein the control unit
And information on at least two different resolutions to be encoded is obtained from an index file providing reproduction information of the content or a transmission history of the content.
로컬 캐싱 장치가,
컨텐츠 제공 장치로부터 단말 장치로 서비스하는 컨텐츠의 일부 또는 전부를 저장하는 단계;
상기 컨텐츠를 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터로 인코딩하는 단계; 및
단말 장치의 요청에 따라서, 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중 하나를 선택적으로 상기 단말 장치에 전송하는 단계를 포함하는 것을 특징으로 하는 컨텐츠 캐싱 서비스 제공 방법.
Local caching device,
Storing some or all of the content serviced by the content providing device to the terminal device;
Encoding the content into two or more pieces of content data having different resolutions; And
Selectively transmitting one of two or more pieces of content data having different resolutions to the terminal device according to a request of the terminal device.
제7항에 있어서,
상기 인코딩하는 단계 이전에, 상기 컨텐츠의 인덱스 파일 또는 상기 컨텐츠의 전송 이력으로부터 인코딩할 하나 이상의 해상도에 대한 정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는 컨텐츠 캐싱 서비스 제공 방법.
The method of claim 7, wherein
And prior to the encoding, obtaining information on one or more resolutions to be encoded from the index file of the content or the transmission history of the content.
제7항에 있어서,
상기 인코딩하는 단계 이전에, 인기도 및 시간 중에서 하나 이상을 포함하는 기준에 따라서 상기 컨텐츠에 대한 인코딩 여부를 판단하고, 판단 결과에 따라서 상기 인코딩하는 단계가 수행되도록 하는 단계를 더 포함하는 것을 특징으로 하는 컨텐츠 캐싱 서비스 제공 방법.
The method of claim 7, wherein
The method may further include determining whether to encode the content according to a criterion including at least one of popularity and time, and performing the encoding according to a determination result before the encoding. How to provide content caching service.
제7항에 있어서,
컨텐츠를 상기 단말 장치에 전송한 후, 상기 컨텐츠에 대한 요청이 발생하기 전까지의 시간을 카운팅하고, 상기 시간이 일정 시간을 초과한 경우, 상기 서로 다른 해상도를 갖는 둘 이상의 컨텐츠 데이터 중에서 저 해상도의 컨텐츠를 하나 이상 삭제하는 단계를 더 포함하는 것을 특징으로 하는 컨텐츠 캐싱 서비스 제공 방법.
The method of claim 7, wherein
After transmitting the content to the terminal device, counting the time before the request for the content occurs, if the time exceeds a predetermined time, the content of the lower resolution of the two or more content data having different resolutions The content caching service providing method further comprises the step of deleting one or more.
KR1020120058789A 2012-05-31 2012-05-31 Method for providing content caching service in adapted streaming service and local caching device thereof KR101888982B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120058789A KR101888982B1 (en) 2012-05-31 2012-05-31 Method for providing content caching service in adapted streaming service and local caching device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120058789A KR101888982B1 (en) 2012-05-31 2012-05-31 Method for providing content caching service in adapted streaming service and local caching device thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020180089377A Division KR101971595B1 (en) 2018-07-31 2018-07-31 Method for providing content caching service in adapted streaming service and local caching device thereof

Publications (2)

Publication Number Publication Date
KR20130134911A true KR20130134911A (en) 2013-12-10
KR101888982B1 KR101888982B1 (en) 2018-08-17

Family

ID=49982461

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120058789A KR101888982B1 (en) 2012-05-31 2012-05-31 Method for providing content caching service in adapted streaming service and local caching device thereof

Country Status (1)

Country Link
KR (1) KR101888982B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019172470A1 (en) * 2018-03-07 2019-09-12 라인플러스 주식회사 Method and system for reusing media content on basis of use patterns of user
KR102193806B1 (en) * 2020-03-27 2020-12-22 연진선 Real time distributed transmission system for ar contents

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100048315A (en) * 2008-10-30 2010-05-11 에스케이텔레콤 주식회사 System and method for content delivery using cache server, and cache server thereof
KR20100050593A (en) * 2008-10-16 2010-05-14 에스케이텔레콤 주식회사 System and method for content delivery using cache server and browser cache
JP2010220001A (en) * 2009-03-18 2010-09-30 Victor Co Of Japan Ltd Re-encoding apparatus and re-encoding method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100050593A (en) * 2008-10-16 2010-05-14 에스케이텔레콤 주식회사 System and method for content delivery using cache server and browser cache
KR20100048315A (en) * 2008-10-30 2010-05-11 에스케이텔레콤 주식회사 System and method for content delivery using cache server, and cache server thereof
JP2010220001A (en) * 2009-03-18 2010-09-30 Victor Co Of Japan Ltd Re-encoding apparatus and re-encoding method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
이정환 외 2명, "CCN에서 계층화된 비디오 컨텐츠 기반 패킷 스케줄링 모델", 한국정보과학회 2010 한국컴퓨터종합학술대회 논문집 제37권 제1호(D), 2010.6, pp.297-300(2010.06.30.) *
이정환 외 2명, "CCN에서 계층화된 비디오 컨텐츠 기반 패킷 스케줄링 모델", 한국정보과학회 2010 한국컴퓨터종합학술대회 논문집 제37권 제1호(D), 2010.6, pp.297-300(2010.06.30.) 1부. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019172470A1 (en) * 2018-03-07 2019-09-12 라인플러스 주식회사 Method and system for reusing media content on basis of use patterns of user
KR102193806B1 (en) * 2020-03-27 2020-12-22 연진선 Real time distributed transmission system for ar contents

Also Published As

Publication number Publication date
KR101888982B1 (en) 2018-08-17

Similar Documents

Publication Publication Date Title
KR101330052B1 (en) Method for providing content caching service in adapted content streaming and local caching device thereof
KR101436049B1 (en) Method for providing content caching service and local caching device thereof
US8756296B2 (en) Method, device and system for distributing file data
US9781224B2 (en) Content transmitting system, method for optimizing network traffic in the system, central control device and local caching device
US9356985B2 (en) Streaming video to cellular phones
KR101981285B1 (en) Contents delivery service system using contents identification, apparatus therefor and contents delivery service method thereof
US20140136644A1 (en) Data storage management in communications
WO2017125017A1 (en) Method for adjusting cache content, device, and system
US11736740B2 (en) Delivering video in a content delivery network
KR20140021372A (en) Contents delivery service method and local cache apparatus using contents identification
KR20160083675A (en) Method for providing of live streaming contents, apparatus and recording medium recording program therfor
KR20170103255A (en) Method, program and recoding medium for d2d-based content caching service
KR102070149B1 (en) Method for delivery of content by means of caching in communication network and apparatus thereof
KR101441403B1 (en) Content Delivery Service system, apparatus and method for supporting contents delivery service thereof
KR20130057232A (en) Contents delivery network system having edge node and method for caching and managing contents
KR101888982B1 (en) Method for providing content caching service in adapted streaming service and local caching device thereof
KR101971595B1 (en) Method for providing content caching service in adapted streaming service and local caching device thereof
KR20150011087A (en) Distributed caching management method for contents delivery network service and apparatus therefor
KR102148147B1 (en) Method for distributing a content and apparatus thereof
KR101969869B1 (en) Private caching network system and method for providing private caching service
KR101565137B1 (en) Method for providing wireless streaming service and apparatus therefor
TWI513284B (en) Inverse proxy system and method
KR20150010415A (en) Contents delivery network service method and broker apparatus for distributed caching
SG184587A1 (en) A method and apparatus for caching and retrieving a stream object

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
A107 Divisional application of patent