KR101241507B1 - Cache system and cache allocation method for content on demand service using multicast - Google Patents

Cache system and cache allocation method for content on demand service using multicast Download PDF

Info

Publication number
KR101241507B1
KR101241507B1 KR1020110126942A KR20110126942A KR101241507B1 KR 101241507 B1 KR101241507 B1 KR 101241507B1 KR 1020110126942 A KR1020110126942 A KR 1020110126942A KR 20110126942 A KR20110126942 A KR 20110126942A KR 101241507 B1 KR101241507 B1 KR 101241507B1
Authority
KR
South Korea
Prior art keywords
content
server
cache
multicast
transmission cost
Prior art date
Application number
KR1020110126942A
Other languages
Korean (ko)
Inventor
최준균
최광진
안상홍
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020110126942A priority Critical patent/KR101241507B1/en
Application granted granted Critical
Publication of KR101241507B1 publication Critical patent/KR101241507B1/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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2543Billing, e.g. for subscription services

Abstract

PURPOSE: A cache system and a cache allocation method for a content-on-demand service using a multicast is provided to store the front part of the popular content having a high content exposure rate, transmit the front part of the content from the cache server to a unicast, and transmit the other part from a server to a multicast. CONSTITUTION: A content providing system determines data length of near content-on-demand content to be stored in a cache server(610). If a multicast transmission cost is less than a unicast transmission cost, the system orders to store data as long as the cache length of corresponding content in the cache server(630,640). The system generates a transmission schedule mixing the cache server and a source server(650). According to the transmission schedule, the system transmits a partial stream corresponding to the first part of the content in the unicast mode. The system transmits the stream in a multicast mode(680). [Reference numerals] (610) Calculating a cache length(l) by using related information of contents; (620) Calculating a multicast transmission cost(Cm) and a unicast transmission cost(Cu) according to the cache length(l); (640) Ordering to store the initial part of the contents as long as the cache length(l) in a server; (650) Generating a transmission schedule mixing an original server and a cache server; (660) Deleting an existing cache stored in the cache server; (670) Generating a transmission schedule using the original server; (680) Controlling to transmit corresponding contents according to the transmission schedule; (AA) Start; (BB) No; (CC) Yes; (DD) End

Description

멀티캐스트를 이용한 주문형 컨텐츠 서비스를 위한 캐시 시스템 및 캐시 할당 방법{CACHE SYSTEM AND CACHE ALLOCATION METHOD FOR CONTENT ON DEMAND SERVICE USING MULTICAST}CACHE SYSTEM AND CACHE ALLOCATION METHOD FOR CONTENT ON DEMAND SERVICE USING MULTICAST}

본 발명의 실시예들은 멀티캐스트를 이용한 주문형 컨텐츠 서비스를 제공할 때 컨텐츠 일부를 캐시를 통해 제공하는 컨텐츠 제공 시스템 및 그 방법에 관한 것이다.Embodiments of the present invention relate to a content providing system and method for providing a portion of content through a cache when providing an on-demand content service using multicast.

본 연구는 지식경제부 및 정보통신산업진흥원의 대학 IT 연구센터 지원사업의 연구결과로 수행되었다. (NIPA-2011-(C1090-1111-0013))This study was conducted as a result of the research project supported by the IT Research Center of the Ministry of Knowledge Economy and the Korea IT Industry Promotion Agency. (NIPA-2011- (C1090-1111-0013))

최근의 네트워크의 광대역화와 방송 기술의 발전으로 CoD(Content-on-Demand) 서비스는 새로운 부가가치 산업으로 많은 관심을 받고 있다. CoD는 통신망을 이용해 디지털 데이터 형태로 저장중인 영화, 교육, 게임, 쇼핑 등의 영상 자료를 먼 거리에 있는 여러 사용자들에게 제공할 수 있는 양방향 시스템이다. 주문형 컨텐츠는 동영상, 음성 등의 대용량 데이터의 집합체로써 압축 이후에도 많은 데이터를 전송해야 한다. 이를 네트워크를 통하여 전송할 경우 대단히 큰 채널 대역폭이 필요하고, 대역폭을 확보하기 위해서 적지 않은 비용이 소요되므로 대역폭의 효율적 활용이 필요하다.With the recent widening of network and development of broadcasting technology, CoD (Content-on-Demand) service is attracting much attention as a new value-added industry. CoD is a two-way system that can provide video data such as movies, education, games, and shopping, which are being stored in digital data, to multiple users over a long distance using a communication network. On-demand content is a collection of large-capacity data such as video and voice, and many data must be transmitted even after compression. When transmitting this over a network, a very large channel bandwidth is required, and a considerable amount of cost is required to secure the bandwidth. Therefore, efficient use of the bandwidth is required.

CoD는 컨텐츠를 전송하는 방식에 따라 크게 실시간 주문형 컨텐츠(TCoD: True-CoD)와 유사 주문형 컨텐츠(NCoD: Near-CoD)로 분류된다. 그 중 TCoD는 사용자가 원하는 시간에 원하는 프로그램을 선택하여 시청할 수 있는 방식으로 사용자에게 유니캐스트 전송방식을 통해서 다양한 멀티미디어 서비스를 제공하는 대화형 서비스이다. TCoD는 대화형 서비스의 장점이 있지만 사용자가 컨텐츠 서버에서부터 사용자단까지 전송채널을 점유하기 때문에 서비스의 제공에 많은 대역폭이 필요하며 이에 따른 많은 비용이 소요된다는 단점이 있다. 반면, NCoD는 대화형 서비스 기능과 사용자의 대기시간을 희생하는 대신, 하나의 컨텐츠를 여러 개의 방송채널을 통하여 순차적으로 반복하는 방식이다. NCoD는 하나의 채널을 이용하여 다수의 사용자들이 동시에 컨텐츠를 이용할 수 있도록 하여 시스템 비용을 획기적으로 줄였다. NCoD는 TCoD에 비해 현저히 적은 채널을 필요로 하지만 많은 사용자들이 요청한 컨텐츠를 즉시 볼 수 없다는 단점이 있다.CoD is classified into real-time on-demand content (TCoD: True-CoD) and similar on-demand content (NCoD: Near-CoD) according to the method of transmitting the content. Among them, TCoD is an interactive service that provides various multimedia services to the user through a unicast transmission method in which a user can select and watch a desired program at a desired time. TCoD has the advantage of interactive service, but since the user occupies the transport channel from the content server to the user's end, it requires a lot of bandwidth to provide the service and a lot of cost. NCoD, on the other hand, instead of sacrificing the interactive service function and the user's waiting time, NCoD repeats one content sequentially through several broadcasting channels. NCoD drastically reduced system costs by allowing multiple users to simultaneously access content using one channel. NCoD requires significantly fewer channels than TCoD, but the disadvantage is that many users do not see the requested content immediately.

상기한 바와 같이, 컨텐츠를 전송하는 방식에는 1:1 전송인 유니캐스트 방식과, 1:N 전송인 멀티캐스트 방식이 있다. NCoD 서비스에서 멀티캐스트 스트림을 1개 이상으로 분할하여 반복적으로 전송함으로써 서버의 전송 대역폭을 줄이는 방식이 있다. 그러나, NCoD에서 멀티캐스트만을 이용할 때, 컨텐츠 전송 중에 멀티캐스트 그룹에 참여하는 사용자는 컨텐츠 앞부분을 놓치게 된다. 즉, 멀티캐스트 스트림에서 컨텐츠 앞부분이 시작될 때까지 기다려야 하기 때문에 컨텐츠의 시작 대기 시간이 길어질 수 있다. As described above, there are two methods of transmitting content, a unicast method of 1: 1 transmission and a multicast method of 1: N transmission. In NCoD service, there is a method of reducing transmission bandwidth of a server by dividing the multicast stream into one or more and repeatedly. However, when only multicast is used in NCoD, a user participating in a multicast group during content transmission misses the front of the content. That is, the waiting time for starting content may be long because it is necessary to wait until the beginning of content in the multicast stream.

이러한 문제를 개선하기 위하여, 유니캐스트와 멀티캐스트를 혼용하여 컨텐츠를 전송하는 방식이 제안되고 있다. 또한, 멀티캐스트를 이용한 주문형 컨텐츠 서비스에서 서비스의 시작 대기 시간 및 채널 변경 대기 시간 등을 줄이기 위해 다수의 캐시 서버를 사용하기도 한다. 그러나, 캐시 서버의 저장 용량은 비용 측면의 문제를 고려할 때 설치 및 증설하는 데에 제약이 많다. 이에 따라, 제약된 저장 공간 내에서 최대한 양질의 서비스를 제공하기 위한 캐시 할당 방식이 필요하다.In order to solve this problem, a method of transmitting content by using a mix of unicast and multicast has been proposed. In addition, a plurality of cache servers are used in order to reduce the start waiting time and the channel change waiting time of the on-demand content service using multicast. However, the storage capacity of the cache server is limited to the installation and expansion in consideration of cost issues. Accordingly, there is a need for a cache allocation method to provide the best quality service within the limited storage space.

멀티캐스트 방식과 유니캐스트 방식이 혼합된 주문형 컨텐츠 서비스 환경에서, 컨텐츠 마다 캐시를 할당하는 시스템 및 방법을 제공한다.Provided are a system and method for allocating cache for each content in an on-demand content service environment in which a multicast scheme and a unicast scheme are mixed.

컨텐츠 도달율(reach rate)이 높은 인기 컨텐츠의 앞부분을 캐시 서버에 저장하는 시스템 및 방법을 제공한다.The present invention provides a system and method for storing the front of popular content having a high content rate in a cache server.

유사 주문형 컨텐츠 서비스 환경의 단점인 멀티캐스트 조인 대기 시간 등에 의한 컨텐츠 시작 대기 시간을 줄일 수 있는 시스템 및 방법을 제공한다.Provided is a system and method for reducing content start waiting time due to multicast join waiting time, which is a disadvantage of a similar on-demand content service environment.

주문형 켄텐츠를 제공하는 서버의 대역폭 부담을 경감시킬 수 있는 시스템 및 방법을 제공한다.Provided are a system and method that can alleviate the bandwidth burden of a server providing on-demand content.

유사 주문형 컨텐츠(Near-Content-on-Demand)를 제공하는 컨텐츠 제공 방법은 유사 주문형 컨텐츠에 대하여 캐시 서버(cache server)에 저장할 데이터 길이를 결정하는 단계; 유사 주문형 컨텐츠가 저장된 원본 서버(source server)에서 데이터 길이만큼의 일부 스트림을 가져와 캐시 서버에 저장하는 단계; 및 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 일부 스트림을 캐시 서버에서 유니캐스트 방식으로 전송하고, 나머지 스트림을 원본 서버에서 멀티캐스트 방식으로 전송하는 단계를 포함할 수 있다.A content providing method for providing near-content-on-demand includes determining a data length to be stored in a cache server for the similar-on-demand content; Retrieving a partial stream of a data length from a source server in which similar on-demand content is stored and storing the same on a cache server; And transmitting some streams from the cache server in a unicast manner and transmitting the remaining streams from the origin server in a multicast manner when a user terminal requests similar content on demand.

일 측면에 따르면, 데이터 길이를 결정하는 단계는, 유사 주문형 컨텐츠의 재생 속도와 전체 데이터 길이 및 컨텐츠 요청률을 이용하여 데이터 길이를 결정할 수 있다.According to an aspect, the determining of the data length may determine the data length by using the reproduction speed of the similar on-demand content, the total data length, and the content request rate.

다른 측면에 따르면, 컨텐츠 제공 방법은 데이터 길이에 따른 멀티캐스트 송신 비용 및 유니캐스트 송신 비용을 계산하는 단계를 더 포함할 수 있다. 이때, 일부 스트림을 가져와 캐시 서버에 저장하는 단계는, 멀티캐스트 송신 비용이 유니캐스트 송신 비용 보다 작으면 일부 스트림을 캐시 서버에 저장할 수 있다.According to another aspect, the content providing method may further include calculating a multicast transmission cost and a unicast transmission cost according to the data length. In this case, in the step of taking some streams and storing them in the cache server, if the multicast transmission cost is smaller than the unicast transmission cost, some streams may be stored in the cache server.

또 다른 측면에 따르면, 컨텐츠 제공 방법은 멀티캐스트 송신 비용이 유니캐스트 송신 비용 보다 크면, 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 사용자 단말을 대상으로 일부 스트림 및 나머지 스트림을 원본 서버에서 전송하는 단계를 더 포함할 수 있다.According to another aspect, in the content providing method, if the multicast transmission cost is greater than the unicast transmission cost, transmitting some streams and the remaining streams from the origin server to the user terminal at the request of the user terminal for the similar on-demand content. It may further include.

유사 주문형 컨텐츠를 제공하는 컨텐츠 제공 방법은 유사 주문형 컨텐츠에 대하여 캐시 서버에 저장할 데이터 길이를 결정하는 단계; 데이터 길이에 따른 멀티캐스트 송신 비용 및 유니캐스트 송신 비용을 계산하는 단계; 멀티캐스트 송신 비용과 유니캐스트 송신 비용을 비교한 결과에 따라 유사 주문형 컨텐츠에 대한 송신 스케줄을 생성하는 단계; 및 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 송신 스케쥴에 따라 데이터 길이만큼의 일부 스트림을 유니캐스트 방식으로 전송하고 나머지 스트림을 멀티캐스트 방식으로 전송하는 단계를 포함할 수 있다.Content providing method for providing similar on-demand content includes the steps of determining the data length to be stored in the cache server for the similar on-demand content; Calculating a multicast transmission cost and a unicast transmission cost according to the data length; Generating a transmission schedule for the similar on-demand content according to a result of comparing the multicast transmission cost with the unicast transmission cost; And transmitting a partial stream as much as the data length in a unicast manner and transmitting the remaining streams in a multicast manner according to a transmission schedule when a user terminal requests similar content on demand.

유사 주문형 컨텐츠를 제공하는 컨텐츠 제공 시스템은 유사 주문형 컨텐츠가 저장된 원본 서버; 유사 주문형 컨텐츠의 재생 속도와 전체 데이터 길이 및 컨텐츠 요청률을 이용하여 캐시 서버에 저장할 데이터 길이를 결정하는 제어 서버; 및 원본 서버에서 데이터 길이만큼의 일부 스트림을 가져와 저장하는 캐시 서버를 포함할 수 있으며, 이때 제어 서버는 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 일부 스트림을 유니캐스트 방식으로 전송하고, 나머지 스트림을 멀티캐스트 방식으로 전송하도록 송신 스케줄을 생성할 수 있다.Content providing system for providing similar on-demand content includes a source server that stores similar on-demand content; A control server for determining a data length to be stored in the cache server by using a reproduction speed of the similar on-demand content, total data length, and content request rate; And a cache server that obtains and stores some streams as long as the data length from the source server, wherein the control server transmits some streams in a unicast manner when a user terminal requests similar content on demand. A transmission schedule can be created to transmit in a multicast manner.

컨텐츠 도달율이 높은 인기 컨텐츠의 앞 부분을 캐시 서버에 저장하여 컨텐츠의 앞 부분을 캐시 서버에서 유니캐시트로 송신하고 나머지 부분을 원본 서버에서 멀티캐스트로 송신함으로써 최대한 양질의 서비스를 제공할 수 있다.By storing the first part of the popular content with high content arrival rate in the cache server, it is possible to provide the best quality service by transmitting the first part of the content from the cache server to the unicast sheet and the remaining part from the origin server by multicast.

멀티캐스트 방식과 유니캐스트 방식이 혼합된 주문형 컨텐츠 서비스 환경에서, 컨텐츠 캐시 길이에 따른 컨텐츠 송신 비용을 고려하여 컨텐츠에 대한 송신 스케줄을 생성함으로써 주문형 켄텐츠를 제공하는 서버의 대역폭 부담을 효율적으로 경감시킬 수 있다.In the on-demand content service environment, which is a mix of multicast and unicast methods, a transmission schedule for the content is generated in consideration of the content transmission cost according to the content cache length, thereby effectively reducing the bandwidth burden of the server providing the on-demand content. have.

도 1은 주문형 컨텐츠 서비스 절차를 도시한 흐름도이다.
도 2 내지 도 4는 멀티캐스트와 유니캐스트가 결합된 서비스 구조를 도시한 도면이다.
도 5는 본 발명의 일실시예에 있어서, 캐시 할당을 통하여 주문형 컨텐츠를 제공하는 컨텐츠 제공 시스템의 서비스 구조를 도시한 도면이다.
도 6은 본 발명의 일실시예에 있어서, 캐시 할당을 통하여 주문형 컨텐츠를 제공하는 컨텐츠 제공 방법을 도시한 순서도이다.
1 is a flowchart illustrating an on-demand content service procedure.
2 to 4 are diagrams illustrating a service structure in which multicast and unicast are combined.
FIG. 5 is a diagram illustrating a service structure of a content providing system for providing on-demand content through cache allocation according to an embodiment of the present invention.
6 is a flowchart illustrating a content providing method for providing on-demand content through cache allocation according to an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 실시예들은 주문형 컨텐츠 서비스 환경에 기반한 것이다. 도 1은 주문형 컨텐츠 서비스 구조의 일 형태를 도시한 흐름도이다. 도 1에 도시된 서비스 절차는 IPTV를 대상으로 하고 있으나, 이에 한정되는 것은 아니며 주문형 컨텐츠의 소비가 가능한 모든 단말을 대상으로 한다.The embodiments are based on an on-demand content service environment. 1 is a flowchart illustrating one form of an on-demand content service structure. The service procedure shown in FIG. 1 is intended for IPTV, but is not limited thereto, and is intended for all terminals capable of consuming on-demand content.

도 1에 도시한 바와 같이, 주문형 컨텐츠 서비스는 다음과 같은 절차를 포함할 수 있다.As shown in FIG. 1, the on-demand content service may include the following procedure.

(1) 사용자가 IPTV 단말을 이용하여 컨텐츠 제공 서버에 접속한다.(1) A user connects to a content providing server by using an IPTV terminal.

(2) 컨텐츠 제공 서버 측의 웹 어플리케이션 기능 블록(web application functional block)(이하, '웹 어플리케이션 블록'이라 칭함)은 사용자의 IPTV 단말로 접속에 대한 승인 메시지(OK)를 전송한다.(2) A web application functional block (hereinafter referred to as a 'web application block') on the content providing server side transmits an approval message (OK) for access to the user's IPTV terminal.

(3) IPTV 단말은 IPG(interaction program guide) 또는 EPG(electronic program guide) 등을 이용하여 서비스 또는 컨텐츠를 검색 및 선택한다.(3) The IPTV terminal searches for and selects a service or content using an IPG (interaction program guide) or an EPG (electronic program guide).

(4) 웹 어플리케이션 블록은 컨텐츠 제공 서버에서 컨텐츠 전송 및 서비스 제어 기능을 담당하는 블록(content deliver & service control functions)(이하, '서비스 제어 블록'이라 칭함)으로 IPTV 단말에 대한 권한을 요청한다.(4) The web application block requests the authority for the IPTV terminal with content deliver & service control functions (hereinafter, referred to as a 'service control block') in a content providing server.

(5) 서비스 제어 블록에서는 IPTV 단말에 대한 권한을 확인한 후 권한 요청에 대한 응답 메시지를 웹 어플리케이션 블록으로 전송한다.(5) The service control block checks the authority for the IPTV terminal and transmits a response message to the authority request to the web application block.

(6) 웹 어플리케이션 블록은 서비스 제어 블록의 응답 메시지를 IPTV 단말로 전송한다.(6) The web application block sends a response message of the service control block to the IPTV terminal.

(7) IPTV 단말은 서비스 제어 블록으로 서비스 URL 또는 컨텐츠 URL에 대한 요청 신호를 전송한다.(7) The IPTV terminal transmits a request signal for the service URL or the content URL to the service control block.

(8) 서비스 제어 블록은 주문형 컨텐츠 서비스에 대한 네트워크 제공자(network provider)에게 현재 ITF(IPTV Terminal Function)를 요청한다.(8) The service control block requests an IPTV terminal function (ITF) from a network provider for an on-demand content service.

(9) 네트워크 제공자는 ITF에 대한 위치 정보(location information)을 제공한다.(9) The network provider provides location information for the ITF.

(10) 서비스 제어 블록은 ITF에 대한 위치 정보를 이용하여 CD&SF 성능을 할당한다.(10) The service control block allocates CD & SF capabilities using location information about the ITF.

(11) 서비스 제어 블록은 네트워크 제공자에게 네트워크 리소스 할당을 요청한다.(11) The service control block requests network resource allocation from a network provider.

(12) 네트워크 제공자는 네트워크 리소스를 할당한다.(12) The network provider allocates network resources.

(13) 네트워크 제공자는 서비스 제어 블록으로 네트워크 리소스의 할당 요청에 대한 응답 메시지를 전송한다.(13) The network provider transmits a response message to the request for allocation of network resources to the service control block.

(14) 서비스 제어 블록은 IPTV 단말로 서비스 URL 또는 컨텐츠 URL 요청에 대한 응답을 전송한다.(14) The service control block sends a response to the service URL or content URL request to the IPTV terminal.

(15) IPTV 단말은 서비스 제어 블록으로 재생 메시지(play message)를 전송한다.(15) The IPTV terminal transmits a play message to the service control block.

(16) 서비스 제어 블록은 IPTV 단말로 승인 메시지를 전송한 후 컨텐츠 전송을 시작한다.(16) The service control block starts the content transmission after sending the approval message to the IPTV terminal.

(17) 사용자의 컨텐츠 시청이 끝나면, IPTV 단말은 서비스 제어 블록으로 종료 메시지를 전송한다.(17) When the user finishes viewing the content, the IPTV terminal transmits an end message to the service control block.

(18) 서비스 제어 블록은 CD&SF 성능을 해제(release)한다.(18) The service control block releases CD & SF performance.

(19) 서비스 제어 블록은 네트워크 제공자에게 네트워크 리소스 해제를 위한 요청 신호를 전송한다.(19) The service control block transmits a request signal for releasing network resources to the network provider.

(20) 네트워크 제공자는 네트워크 리소스를 해제한다.(20) The network provider releases network resources.

(21) 네트워크 제공자는 서비스 제어 블록으로 네트워크 리소스 해제 요청에 대한 응답 메시지를 전송한다.(21) The network provider sends a response message to the network resource release request to the service control block.

(22) 서비스 제어 블록은 IPTV 단말로 서비스 완료에 대한 응답 메시지를 전송한다.(22) The service control block sends a response message to the service completion to the IPTV terminal.

(23) IPTV 단말은 웹 어플리케이션 블록으로 연결 해제 메시지를 전송한다.(23) The IPTV terminal transmits a connection release message to the web application block.

(24) 웹 어플리케이션 블록은 IPTV 단말로 연결 해제 요청에 대한 응답 메시지를 전송한다.(24) The web application block transmits a response message to the connection release request to the IPTV terminal.

본 발명의 실시예들은 상기한 주문형 컨텐츠 서비스 환경에서 (16)과 관련된 절차를 구현하기 위한 컨텐츠 제공 시스템 및 그 방법을 제공한다. 특히, 본 발명은 멀티캐스트 전송 방식과 유니캐스트 전송 방식이 결합된 서비스 환경에 적용 가능하다.Embodiments of the present invention provide a content providing system and method for implementing the procedure related to (16) in the on-demand content service environment described above. In particular, the present invention is applicable to a service environment in which a multicast transmission method and a unicast transmission method are combined.

도 2 내지 도 4는 멀티캐스트와 유니캐스트가 결합된 서비스 구조를 도시한 도면이다.2 to 4 are diagrams illustrating a service structure in which multicast and unicast are combined.

도시한 바와 같이, 스태거드 전송(Staggered broadcasting) 방식(도 2), 패스트 전송(Fast broadcasting) 방식(도 3), 하모닉 전송(Harmonic broadcasting) 방식(도 4) 등 유사 주문형 컨텐츠 서비스 환경에서는 서비스의 시작 대기 시간 및 채널 변경 대기 시간 등을 줄이기 위해 사용자가 요청한 컨텐츠의 앞 부분을 유니캐스트 전송 방식으로 전송할 수 있다.As shown, in a similar on-demand content service environment, such as staggered broadcasting (FIG. 2), fast broadcasting (FIG. 3), harmonic broadcasting (FIG. 4), and the like. In order to reduce the start waiting time and the channel change waiting time of the user, the front part of the content requested by the user may be transmitted by unicast transmission.

특히, 본 실시예에서는 컨텐츠 마다 캐시를 할당하여 컨텐츠의 앞 부분(201)(301)(401)을 캐시에 저장하였다가 캐시에서 컨텐츠의 앞 부분(201)(301)(401)을 유니캐스트로 전송하고, 나머지 부분을 원본 서버에서 멀티캐스트로 전송할 수 있다.In particular, in the present embodiment, the cache is allocated for each content to store the front parts 201, 301 and 401 of the content in the cache, and then the front parts 201, 301 and 401 of the content from the cache are unicast. And the rest can be sent multicast from the origin server.

도 5와 도 6을 참조하여, 캐시 할당을 통한 컨텐츠 제공 시스템 및 그 방법을 상세하게 설명하기로 한다.5 and 6, a content providing system and method through cache allocation will be described in detail.

도 5는 캐시 할당을 통하여 주문형 컨텐츠를 제공하는 컨텐츠 제공 시스템의 서비스 구조를 도시한 도면이다.5 is a diagram illustrating a service structure of a content providing system that provides on-demand content through cache allocation.

도 5에 도시한 바와 같이, 일 실시예에 따른 컨텐츠 제공 시스템(500)은 원본 서버(510), 제어 서버(520), 캐시 서버(530)로 구성되어 구현될 수 있다.As shown in FIG. 5, the content providing system 500 according to an exemplary embodiment may be implemented with an original server 510, a control server 520, and a cache server 530.

원본 서버(510)는 유사 주문형 컨텐츠를 저장 및 유지하는 데이터베이스 시스템 역할을 담당한다. 원본 서버(510)는 사용자를 대상으로 유사 주문형 컨텐츠를 제공하고자 할 경우 기본적으로는 컨텐츠에 해당되는 전송 스트림을 반복적인 멀티캐스트 전송 방식으로 전송하되, 이와 동시에 컨텐츠의 첫 부분 일부를 유니캐스트 전송 방식으로 전송할 수 있다. 예컨대, 원본 서버(510)는 사용자가 요청한 컨텐츠를 송출 중에 있는 특정 멀티캐스트 그룹에 가입하게 되면 해당 컨텐츠의 첫 부분에 해당되는 일부 스트림을 유니캐스트로 전송하고 나머지 스트림을 멀티캐스트로 전송할 수 있다.The origin server 510 serves as a database system for storing and maintaining similar on-demand content. If the source server 510 is to provide similar on-demand content to the user, basically, the transport stream corresponding to the content is transmitted by repetitive multicast transmission method, and at the same time, the first part of the content is unicast transmission method. Can be sent. For example, when the origin server 510 joins a specific multicast group that is transmitting the content requested by the user, the original server 510 may transmit some streams corresponding to the first part of the content as unicast and transmit the remaining streams as multicast.

캐시 서버(530)는 유니캐스트로 전송하고자 하는 유사 주문형 컨텐츠의 일부 스트림을 저장 및 유지하는 역할을 수행한다. 본 실시예에서는 컨텐츠 마다 캐시를 할당하여 컨텐츠의 일부를 캐시 서버(530)에 저장할 수 있다. 이는, 원본 서버(510)에서 유니캐스트와 멀티캐스트를 혼용하여 컨텐츠를 전송할 경우 컨텐츠의 시작 대기 시간 및 채널 변경 대기 시간 등을 줄이는 데 한계가 있기 때문에 경우에 따라 캐시 서버(530)를 사용하기 위함이다. 따라서, 멀티캐스트 기반의 컨텐츠 전송을 원본 서버(510)에서 담당하고, 유니캐스트 기반의 패치(즉, 캐시된 데이터) 전송을 캐시 서버(530)에서 담당할 수 있다.The cache server 530 stores and maintains some streams of similar on-demand content to be transmitted in unicast. In the present embodiment, a cache may be allocated for each content to store a part of the content in the cache server 530. This is to use the cache server 530 in some cases because the source server 510 has a limitation in reducing the start wait time and the channel change wait time of the content when the content is mixed and transmitted by unicast and multicast. to be. Therefore, the origin server 510 may be responsible for multicast based content transmission, and the cache server 530 may be responsible for unicast based patch (ie, cached data) transmission.

제어 서버(520)는 유사 주문형 컨텐츠에 대한 캐시 할당 및 송신 스케줄 생성을 담당한다. 우선, 제어 서버(520)는 원본 서버(510)의 서비스 상태 정보를 기반으로 유사 주문형 컨텐츠 마다 캐시를 할당한 후, 캐시 저장 명령을 캐시 서버(530)로 전달하게 된다. 상세하게, 제어 서버(520)는 원본 서버(510)에 저장된 각 컨텐츠 별로 컨텐츠의 재생 속도(bit rate)와, 전체 데이터 길이(data full length), 그리고 컨텐츠 요청율을 이용하여 캐시 서버(530)에 저장할 데이터 길이(이하, '캐시 길이'라 칭함)를 결정할 수 있다. 이때, 컨텐츠 요청율은 해당 컨텐츠에 대하여 서비스를 요청한 사용자의 비율을 나타나는 컨텐츠 도달율(content reach rate)을 의미할 수 있다. 일 예로, 제어 서버(520)는 하기 수학식 1을 이용하여 캐시 길이를 계산할 수 있다.The control server 520 is responsible for cache allocation and transmission schedule generation for similar on-demand content. First, the control server 520 allocates a cache for each similar on-demand content based on the service state information of the original server 510, and then transfers a cache storage command to the cache server 530. In detail, the control server 520 uses the bit rate, the full data length, and the content request rate of the content for each content stored in the original server 510 to cache the server 530. The length of data to be stored in (hereinafter referred to as 'cache length') can be determined. In this case, the content request rate may mean a content reach rate indicating the percentage of users who have requested a service for the corresponding content. For example, the control server 520 may calculate the cache length by using Equation 1 below.

Figure 112011095267241-pat00001
Figure 112011095267241-pat00001

여기서, l은 캐시 길이, L은 컨텐츠의 전체 데이터 길이, N'은 해당 멀티캐스트 방식의 비용을 최소화하는 인수를 의미한다.Where l is the cache length, L is the total data length of the content, and N 'is the argument that minimizes the cost of the multicast scheme.

그리고, 제어 서버(520)는 캐시 길이에 해당되는 데이터를 멀티캐스트 방식으로 송신할 때의 송신 비용(이하, '멀티캐스트 송신 비용(Cm)'이라 칭함)과 유니캐스트 방식으로 송신할 때의 송신 비용(이하, '유니캐스트 송신 비용(Cu)'이라 칭함)을 계산한다. 이때, 제어 서버(520)는 수학식 2를 이용하여 유니캐스트 송신 비용(Cu)을 계산할 수 있으며, 멀티캐스트 송신 비용의 경우 시스템에서 사용하는 전송 방식에 따라 수학식 3 내지 수학식 5 중 어느 하나의 수학식을 통해 계산할 수 있다.In addition, the control server 520 transmits data corresponding to the cache length in a multicast method (hereinafter, referred to as a multicast transmission cost C m ) and a unicast method. The transmission cost (hereinafter referred to as 'unicast transmission cost C u ') is calculated. In this case, the control server 520 may calculate the unicast transmission cost (C u ) using Equation 2, and in the case of the multicast transmission cost, any of Equations 3 to 5 according to the transmission method used in the system It can be calculated through one equation.

Figure 112011095267241-pat00002
Figure 112011095267241-pat00002

여기서, b는 재생 속도, L은 전체 데이터 길이, λ은 컨텐츠 요청율을 의미한다.Where b is the playback speed, L is the total data length, and λ is the content request rate.

Figure 112011095267241-pat00003
Figure 112011095267241-pat00003

여기서, Chm은 하모닉 전송 방식에 따른 멀티캐스트 송신 비용, Nh'는 해당 멀티캐스트 방식의 비용을 최소화하는 인수를 의미한다.Here, Chm is a multicast transmission cost according to the harmonic transmission method, and Nh 'is a factor for minimizing the cost of the multicast method.

Figure 112011095267241-pat00004
Figure 112011095267241-pat00004

여기서, Cfm은 패스트 전송 방식에 따른 멀티캐스트 송신 비용, Nf'는 해당 멀티캐스트 방식의 비용을 최소화하는 인수를 의미한다.Here, C fm is a multicast transmission cost according to the fast transmission method, and Nf 'is a factor for minimizing the cost of the multicast method.

Figure 112011095267241-pat00005
Figure 112011095267241-pat00005

여기서, Csm은 스태거드 전송 방식에 따른 멀티캐스트 송신 비용, Ns'는 해당 멀티캐스트 방식의 비용을 최소화하는 인수를 의미한다.Here, C sm is a multicast transmission cost according to the staggered transmission method, and Ns' is a factor for minimizing the cost of the multicast method.

이어, 제어 서버(520)는 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)을 비교한다. 이에, 제어 서버(520)는 멀티캐스트 송신 비용(Cm)이 유니캐스트 송신 비용(Cu) 보다 작으면 컨텐츠의 첫 부분인, 앞서 결정된 캐시 길이만큼의 데이터를 캐시 서버(530)에 저장하도록 명령한다. 이때, 캐시 서버(530)는 제어 서버(520)의 명령에 따라 원본 서버(510)로 요청하여 캐시 길이만큼의 데이터(이하, '일부 스트림'이라 칭함)를 원본 서버(510)에서 가져와 저장할 수 있다. 한편, 제어 서버(520)는 멀티캐스트 송신 비용(Cm)이 유니캐스트 송신 비용(Cu) 보다 크면 원본 서버(510)에서 직접 송신하는 것이 보다 효율적이기 때문에 컨텐츠에 대한 캐시 할당을 해제하고 캐시 서버(530)에 해당 컨텐츠의 기존 캐시가 존재한다면 이를 삭제한다. 따라서, 제어 서버(520)는 컨텐츠 마다 캐시 길이를 산출한 후 해당 캐시 길이에 대한 멀티캐스트 송신 비용을 기준으로 캐시 할당 여부를 결정할 수 있다.The control server 520 then compares the multicast transmission cost C m and the unicast transmission cost C u . Accordingly, the control server 520 stores the data in the cache server 530 as much as the previously determined cache length, which is the first part of the content, if the multicast transmission cost C m is less than the unicast transmission cost C u . Command At this time, the cache server 530 may request the source server 510 according to the command of the control server 520 to retrieve the cache length data (hereinafter referred to as 'some stream') from the source server 510 and store it. have. On the other hand, the control server 520 de-allocates and caches the content because it is more efficient to send directly from the origin server 510 if the multicast transmission cost (C m ) is greater than the unicast transmission cost (C u ). If there is an existing cache of the corresponding content in the server 530, it is deleted. Accordingly, the control server 520 may calculate the cache length for each content and then determine whether to allocate the cache based on the multicast transmission cost for the corresponding cache length.

다음으로, 제어 서버(520)는 유사 주문형 컨텐츠에 대하여 캐시 할당에 따른 송신 스케줄을 생성할 수 있다. 기본적으로, 제어 서버(520)는 컨텐츠의 첫 부분에 해당되는 일부 스트림을 유니캐스트 방식으로 전송하고 나머지 스트림을 멀티캐스트 방식으로 전송하도록 송신 스케줄을 생성하게 된다. 아울러, 제어 서버(520)는 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)의 비교 결과에 따라 캐시 할당이 이루어지면 컨텐츠의 일부 스트림을 캐시 서버(530)에서 전송하고, 나머지 스트림을 원본 서버(510)에서 전송하도록 송신 스케줄을 생성 및 저장할 수 있다. 한편, 제어 서버(520)는 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)의 비교 결과에 따라 캐시 할당이 해제되면 컨텐츠의 일부 스트림과 나머지 스트림 모두 원본 서버(510)에서 전송하도록 송신 스케줄을 생성 및 저장할 수 있다.Next, the control server 520 may generate a transmission schedule according to cache allocation for the similar on-demand content. Basically, the control server 520 generates a transmission schedule to transmit some streams corresponding to the first part of the content in a unicast manner and transmit the remaining streams in a multicast manner. In addition, the control server 520 transmits some streams of content from the cache server 530 when the cache allocation is made according to the comparison result of the multicast transmission cost (C m ) and the unicast transmission cost (C u ). The transmission schedule may be generated and stored to transmit the stream from the origin server 510. On the other hand, if the cache allocation is released according to the result of comparing the multicast transmission cost (C m ) and the unicast transmission cost (C u ), the control server 520 transmits all the streams of the content and the remaining streams from the source server 510. The transmission schedule can be created and stored.

상기한 구성에 의하면, 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 제어 서버(520)에서 생성된 송신 스케줄에 따라 원본 서버(510)에서 컨텐츠의 일부 스트림을 유니캐스트로 전송하고 동시에 나머지 스트림을 멀티캐스트로 전송하는 형태, 또는 컨텐츠의 일부 스트림을 캐시 서버(530)에서 유니캐스트로 전송하고 나머지 스트림을 원본 서버(510)에서 멀티캐스트로 전송하는 형태 중 하나의 방식으로 사용자가 요청한 컨텐츠를 제공할 수 있다. 이에, 사용자 단말에서는 유니캐스트 방식으로 수신된 일부 스트림의 재생이 즉시 시작되고, 이와 동시에 멀티캐스트 방식으로 수신된 나머지 스트림은 버퍼에 임시 저장되었다가 일부 스트림에 이어 재생이 시작될 수 있다.According to the above configuration, the source server 510 transmits some streams of the content in unicast according to the transmission schedule generated by the control server 520 at the request of the user terminal for the similar on-demand content, and simultaneously multiplies the remaining streams. The content requested by the user may be provided by one of the methods of transmitting the content by a cast or by transmitting some stream of the content as unicast from the cache server 530 and transmitting the remaining stream as multicast from the origin server 510. Can be. Accordingly, the user terminal may immediately start playing some streams received in the unicast manner, and at the same time, the remaining streams received in the multicast manner may be temporarily stored in a buffer and then start playing after some streams.

도 6은 본 발명의 일실시예에 있어서, 캐시 할당을 통하여 주문형 컨텐츠를 제공하는 컨텐츠 제공 방법을 도시한 순서도이다. 일실시예에 따른 컨텐츠 제공 방법은 도 5를 통해 설명한 컨텐츠 제공 시스템에 의해 각 단계가 수행될 수 있다.6 is a flowchart illustrating a content providing method for providing on-demand content through cache allocation according to an embodiment of the present invention. In the content providing method according to an exemplary embodiment, each step may be performed by the content providing system described with reference to FIG. 5.

단계(610)에서 컨텐츠 제공 시스템은 유사 주문형 컨텐츠 별로 각 컨텐츠의 관련 정보를 이용하여 캐시 할당이 필요한 데이터 길이, 즉 캐시 길이를 결정한다. 이때, 컨텐츠 제공 시스템은 컨텐츠의 재생 속도와, 전체 데이터 길이, 그리고 컨텐츠 요청율을 이용하여 캐시 길이를 결정할 수 있다.In step 610, the content providing system determines the data length, that is, the cache length for which cache allocation is required, using the related information of each content for each similar-demand content. In this case, the content providing system may determine the cache length using the content reproduction speed, the total data length, and the content request rate.

단계(620)에서 컨텐츠 제공 시스템은 캐시 길이에 해당되는 데이터에 대하여 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)을 연산한다. 즉, 컨텐츠 제공 시스템은 캐시 길이에 해당되는 데이터를 멀티캐스트 방식으로 송신할 때의 송신 비용과 유니캐스트 방식으로 송신할 때의 송신 비용을 계산할 수 있다.In step 620, the content providing system calculates the multicast transmission cost (C m ) and unicast transmission cost (C u ) for the data corresponding to the cache length. That is, the content providing system can calculate the transmission cost when transmitting data corresponding to the cache length by the multicast method and the transmission cost when transmitting by the unicast method.

단계(630)에서 컨텐츠 제공 시스템은 캐시 길이에 해당되는 데이터에 대한 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)을 비교한다.In step 630, the content providing system compares the multicast transmission cost (C m ) and the unicast transmission cost (C u ) for the data corresponding to the cache length.

단계(640)에서 컨텐츠 제공 시스템은 멀티캐스트 송신 비용(Cm)이 유니캐스트 송신 비용(Cu) 보다 작으면 해당 컨텐츠에서 캐시 길이만큼의 데이터를 캐시 서버에 저장하도록 명령한다. 이때, 캐시 서버는 컨텐츠를 저장하고 있는 원본 서버로 요청하여 컨텐츠의 첫 부분에 해당되는 일부 스트림을 캐시 길이만큼 원본 서버에서 가져와 저장할 수 있다.In step 640, the content providing system instructs the cache server to store as much data as the cache length in the content if the multicast transmission cost C m is less than the unicast transmission cost C u . At this time, the cache server may request the source server that stores the content and store some streams corresponding to the first part of the content as much as the cache length from the source server.

단계(650)에서 컨텐츠 제공 시스템은 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)의 비교 결과에 따라 캐시 할당이 이루어지면 컨텐츠의 일부 스트림을 캐시 서버에서 유니캐스트로 전송하고, 나머지 스트림을 원본 서버에서 멀티캐스트로 전송하도록 캐시 서버와 원본 서버를 혼용한 송신 스케줄을 생성할 수 있다.In step 650, the content providing system transmits some streams of content from the cache server to the unicast when the cache allocation is made according to the comparison result of the multicast transmission cost (C m ) and the unicast transmission cost (C u ), You can create a transmission schedule that mixes the cache server and the origin server to send the remaining streams from the origin server to multicast.

단계(660)에서 컨텐츠 제공 시스템은 멀티캐스트 송신 비용(Cm)이 유니캐스트 송신 비용(Cu) 보다 크면 원본 서버에서 직접 송신하는 것이 보다 효율적이기 때문에 컨텐츠에 대한 캐시 할당을 해제하고 캐시 서버에 해당 컨텐츠의 기존 캐시가 존재한다면 이를 삭제한다.In step 660, the content providing system deassigns the cache for the content and sends it to the cache server because it is more efficient to send directly from the origin server if the multicast transmission cost (C m ) is greater than the unicast transmission cost (C u ). If there is an existing cache of the content, delete it.

단계(670)에서 컨텐츠 제공 시스템은 멀티캐스트 송신 비용(Cm)과 유니캐스트 송신 비용(Cu)의 비교 결과에 따라 캐시 할당이 해제되면 컨텐츠의 일부 스트림과 나머지 스트림 모두 원본 서버에서 전송하도록 원본 서버만을 이용한 송신 스케줄을 생성할 수 있다.In step 670, the content providing system, if the cache is deallocated according to the result of the comparison of the multicast transmission cost (C m ) and the unicast transmission cost (C u ), both the source stream and the remaining streams are transmitted from the origin server. A transmission schedule using only a server can be created.

단계(680)에서 컨텐츠 제공 시스템은 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 해당 컨텐츠의 송신 스케줄에 따라 컨텐츠의 첫 부분에 해당되는 일부 스트림을 유니캐스트 방식으로 전송하고 나머지 스트림을 멀티캐스트 방식으로 전송할 수 있다. 다시 말해, 컨텐츠 제공 시스템은 유사 주문형 컨텐츠에 대해 생성된 송신 스케줄에 따라 컨텐츠의 일부 스트림과 나머지 스트림을 모두 원본 서버에서 전송하는 형태, 또는 컨텐츠의 일부 스트림을 캐시 서버에서 전송하고 나머지 스트림을 원본 서버에서 전송하는 형태 중 하나의 전송 방식으로 사용자가 요청한 컨텐츠를 제공할 수 있다.In step 680, the content providing system transmits some streams corresponding to the first part of the content in a unicast manner and transmits the remaining streams in a multicast manner according to a transmission schedule of the corresponding content when a user terminal requests similar content on demand. Can transmit In other words, the content providing system transmits some streams of the content and all remaining streams from the origin server according to the transmission schedule generated for the similar on-demand content, or transmits some streams of the content from the cache server and sends the remaining streams to the origin server. The content requested by the user may be provided in one of the forms of transmission by the user.

이와 같이, 본 발명의 실시예에 따르면, 컨텐츠 도달율이 높은 인기 컨텐츠의 앞 부분을 캐시 서버에 저장하여 컨텐츠의 앞 부분을 캐시 서버에서 유니캐시트로 송신하고 나머지 부분을 원본 서버에서 멀티캐스트로 송신함으로써 최대한 양질의 서비스를 제공할 수 있다. 또한, 본 발명의 실시예에 따르면, 멀티캐스트 방식과 유니캐스트 방식이 혼합된 주문형 컨텐츠 서비스 환경에서, 컨텐츠 캐시 길이에 따른 컨텐츠 송신 비용을 고려하여 컨텐츠에 대한 송신 스케줄을 생성함으로써 주문형 켄텐츠를 제공하는 서버의 대역폭 부담을 효율적으로 경감시킬 수 있다.As described above, according to an embodiment of the present invention, by storing the front part of the popular content having a high content arrival rate in the cache server, the front part of the content is transmitted from the cache server to the unicast sheet, and the remaining part is multicasted from the origin server. To provide the highest quality service. In addition, according to an embodiment of the present invention, in the on-demand content service environment in which the multicast scheme and the unicast scheme are mixed, providing on-demand content by generating a transmission schedule for the content in consideration of the content transmission cost according to the content cache length You can effectively reduce the bandwidth burden on the server.

본 발명의 실시예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 또한, 상술한 파일 시스템은 컴퓨터 판독이 가능한 기록 매체에 기록될 수 있다.Methods according to an embodiment of the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the 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. In addition, the above-described file system can be recorded in a computer-readable recording medium.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

500: 컨텐츠 제공 시스템
510: 소스 서버
520: 제어 서버
530: 캐시 서버
500: content providing system
510: source server
520: control server
530: cache server

Claims (11)

유사 주문형 컨텐츠(Near-Content-on-Demand)를 제공하는 컨텐츠 제공 방법에 있어서,
상기 유사 주문형 컨텐츠에 대하여 캐시 서버(cache server)에 저장할 데이터 길이를 결정하는 단계;
상기 유사 주문형 컨텐츠가 저장된 원본 서버(source server)에서 상기 데이터 길이만큼의 일부 스트림을 가져와 상기 캐시 서버에 저장하는 단계; 및
상기 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 상기 일부 스트림을 상기 캐시 서버에서 유니캐스트 방식으로 전송하고, 나머지 스트림을 상기 원본 서버에서 멀티캐스트 방식으로 전송하는 단계
를 포함하는 컨텐츠 제공 방법.
In the content providing method for providing a near-content-on-demand,
Determining a data length to be stored in a cache server for the similar on-demand content;
Retrieving a partial stream as long as the data length from a source server in which the similar on-demand content is stored and storing in the cache server; And
Transmitting the partial stream in the unicast method from the cache server and transmitting the remaining stream in the multicast method from the origin server at the request of the user terminal for the similar on-demand content.
Content providing method comprising a.
제1항에 있어서,
상기 데이터 길이를 결정하는 단계는,
상기 유사 주문형 컨텐츠의 재생 속도와 전체 데이터 길이 및 컨텐츠 요청률을 이용하여 상기 데이터 길이를 결정하는 것
을 특징으로 하는 컨텐츠 제공 방법.
The method of claim 1,
Determining the data length,
Determining the data length using the reproduction speed of the pseudo-custom content and the total data length and content request rate.
Content providing method characterized in that.
제1항에 있어서,
상기 컨텐츠 제공 방법은,
상기 데이터 길이에 따른 멀티캐스트 송신 비용 및 유니캐스트 송신 비용을 계산하는 단계
를 더 포함하고,
상기 일부 스트림을 가져와 상기 캐시 서버에 저장하는 단계는,
상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 작으면 상기 일부 스트림을 상기 캐시 서버에 저장하는 것
을 특징으로 하는 컨텐츠 제공 방법.
The method of claim 1,
The content providing method,
Calculating a multicast transmission cost and a unicast transmission cost according to the data length
Further comprising:
Obtaining the partial stream and storing in the cache server,
Storing the partial stream in the cache server if the multicast transmission cost is less than the unicast transmission cost.
Content providing method characterized in that.
제3항에 있어서,
상기 컨텐츠 제공 방법은,
상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 크면, 상기 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 상기 사용자 단말을 대상으로 상기 일부 스트림 및 상기 나머지 스트림을 상기 원본 서버에서 전송하는 단계
를 더 포함하는 컨텐츠 제공 방법.
The method of claim 3,
The content providing method,
If the multicast transmission cost is greater than the unicast transmission cost, transmitting the partial stream and the remaining stream from the origin server to the user terminal at the request of the user terminal for the similar on-demand content.
Content providing method further comprising.
유사 주문형 컨텐츠를 제공하는 컨텐츠 제공 방법에 있어서,
상기 유사 주문형 컨텐츠에 대하여 캐시 서버에 저장할 데이터 길이를 결정하는 단계;
상기 데이터 길이에 따른 멀티캐스트 송신 비용 및 유니캐스트 송신 비용을 계산하는 단계;
상기 멀티캐스트 송신 비용과 상기 유니캐스트 송신 비용을 비교한 결과에 따라 상기 유사 주문형 컨텐츠에 대한 송신 스케줄을 생성하는 단계; 및
상기 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 상기 송신 스케쥴에 따라 상기 데이터 길이만큼의 일부 스트림을 유니캐스트 방식으로 전송하고 나머지 스트림을 멀티캐스트 방식으로 전송하는 단계
를 포함하는 컨텐츠 제공 방법.
In the content providing method for providing similar on-demand content,
Determining a data length to be stored in a cache server for the similar on-demand content;
Calculating a multicast transmission cost and a unicast transmission cost according to the data length;
Generating a transmission schedule for the similar on-demand content according to a result of comparing the multicast transmission cost with the unicast transmission cost; And
Transmitting some streams of the data length in a unicast manner and transmitting the remaining streams in a multicast manner according to the transmission schedule when a user terminal requests the similar on-demand content.
Content providing method comprising a.
제5항에 있어서,
상기 데이터 길이를 결정하는 단계는,
상기 유사 주문형 컨텐츠의 재생 속도와 전체 데이터 길이 및 컨텐츠 요청률을 이용하여 상기 데이터 길이를 결정하는 것
을 특징으로 하는 컨텐츠 제공 방법.
The method of claim 5,
Determining the data length,
Determining the data length using the reproduction speed of the pseudo-custom content and the total data length and content request rate.
Content providing method characterized in that.
제5항에 있어서,
상기 유사 주문형 컨텐츠에 대한 송신 스케줄을 생성하는 단계는,
상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 작으면 상기 일부 스트림을 상기 유사 주문형 컨텐츠가 저장된 원본 서버에서 가져와 상기 캐시 서버에 저장하는 단계; 및
상기 사용자 단말을 대상으로 상기 일부 스트림을 상기 캐시 서버에서 전송하고, 상기 나머지 스트림을 상기 원본 서버에서 전송하도록 상기 송신 스케줄을 생성하는 단계
를 포함하는 컨텐츠 제공 방법.
The method of claim 5,
Generating a transmission schedule for the similar on-demand content,
If the multicast transmission cost is less than the unicast transmission cost, retrieving the partial stream from a source server storing the similar on-demand content and storing the stream in the cache server; And
Generating the transmission schedule to transmit the partial stream from the cache server to the user terminal and transmit the remaining stream from the origin server
Content providing method comprising a.
제7항에 있어서,
상기 유사 주문형 컨텐츠에 대한 송신 스케줄을 생성하는 단계는,
상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 크면, 상기 캐시 서버에 저장된 상기 일부 스트림을 삭제하는 단계; 및
상기 사용자 단말을 대상으로 상기 일부 스트림 및 상기 나머지 스트림을 상기 원본 서버에서 전송하도록 상기 송신 스케줄을 생성하는 단계
를 더 포함하는 컨텐츠 제공 방법.
The method of claim 7, wherein
Generating a transmission schedule for the similar on-demand content,
If the multicast transmission cost is greater than the unicast transmission cost, deleting the partial stream stored in the cache server; And
Generating the transmission schedule to transmit the partial stream and the remaining stream from the source server to the user terminal;
Content providing method further comprising.
유사 주문형 컨텐츠를 제공하는 컨텐츠 제공 시스템에 있어서,
상기 유사 주문형 컨텐츠가 저장된 원본 서버;
상기 유사 주문형 컨텐츠의 재생 속도와 전체 데이터 길이 및 컨텐츠 요청률을 이용하여 캐시 서버에 저장할 데이터 길이를 결정하는 제어 서버; 및
상기 원본 서버에서 상기 데이터 길이만큼의 일부 스트림을 가져와 저장하는 상기 캐시 서버
를 포함하고,
상기 제어 서버는,
상기 유사 주문형 컨텐츠에 대한 사용자 단말의 요청 시에 상기 일부 스트림을 유니캐스트 방식으로 전송하고, 나머지 스트림을 멀티캐스트 방식으로 전송하도록 송신 스케줄을 생성하는 것
을 특징으로 하는 컨텐츠 제공 시스템.
In the content providing system for providing similar on-demand content,
An original server storing the similar on-demand content;
A control server for determining a data length to be stored in a cache server by using a reproduction speed of the pseudo-custom content and a total data length and a content request rate; And
The cache server for retrieving and storing a partial stream of the data length from the origin server
Including,
Wherein the control server comprises:
Generating a transmission schedule to transmit the partial streams in a unicast manner and transmit the remaining streams in a multicast manner when a user terminal requests the similar on-demand content;
Content providing system, characterized in that.
제9항에 있어서,
상기 제어 서버는,
상기 데이터 길이에 따른 멀티캐스트 송신 비용 및 유니캐스트 송신 비용을 계산한 후, 상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 작으면, 상기 사용자 단말을 대상으로 상기 일부 스트림을 상기 캐시 서버에서 전송하고, 상기 나머지 스트림을 상기 원본 서버에서 전송하도록 상기 송신 스케줄을 생성하는 것
을 특징으로 하는 컨텐츠 제공 시스템.
10. The method of claim 9,
Wherein the control server comprises:
After calculating the multicast transmission cost and the unicast transmission cost according to the data length, if the multicast transmission cost is less than the unicast transmission cost, the partial stream is transmitted from the cache server to the user terminal Generating the transmission schedule to transmit the remaining stream from the origin server.
Content providing system, characterized in that.
제10항에 있어서,
상기 제어 서버는,
상기 멀티캐스트 송신 비용이 상기 유니캐스트 송신 비용 보다 크면, 상기 사용자 단말을 대상으로 상기 일부 스트림 및 상기 나머지 스트림을 상기 원본 서버에서 전송하도록 상기 송신 스케줄을 생성하는 것
을 특징으로 하는 컨텐츠 제공 시스템.
The method of claim 10,
Wherein the control server comprises:
If the multicast transmission cost is greater than the unicast transmission cost, generating the transmission schedule to transmit the partial stream and the remaining stream from the origin server to the user terminal;
Content providing system, characterized in that.
KR1020110126942A 2011-11-30 2011-11-30 Cache system and cache allocation method for content on demand service using multicast KR101241507B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110126942A KR101241507B1 (en) 2011-11-30 2011-11-30 Cache system and cache allocation method for content on demand service using multicast

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110126942A KR101241507B1 (en) 2011-11-30 2011-11-30 Cache system and cache allocation method for content on demand service using multicast

Publications (1)

Publication Number Publication Date
KR101241507B1 true KR101241507B1 (en) 2013-03-11

Family

ID=48181500

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110126942A KR101241507B1 (en) 2011-11-30 2011-11-30 Cache system and cache allocation method for content on demand service using multicast

Country Status (1)

Country Link
KR (1) KR101241507B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018090573A1 (en) * 2016-11-18 2018-05-24 深圳市中兴微电子技术有限公司 Buffer space management method and device, electronic apparatus, and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100862144B1 (en) 2007-04-04 2008-10-09 주식회사 케이티 IPTV music portal service system and method thereof transmitting and receiving music contents
KR20090004346A (en) * 2006-11-20 2009-01-12 주식회사 알티캐스트 Operating method of contents on demand system
KR20090020465A (en) * 2007-08-22 2009-02-26 삼성전자주식회사 Method and apparatus for providing/receiving service of plurality of service providers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090004346A (en) * 2006-11-20 2009-01-12 주식회사 알티캐스트 Operating method of contents on demand system
KR100862144B1 (en) 2007-04-04 2008-10-09 주식회사 케이티 IPTV music portal service system and method thereof transmitting and receiving music contents
KR20090020465A (en) * 2007-08-22 2009-02-26 삼성전자주식회사 Method and apparatus for providing/receiving service of plurality of service providers

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018090573A1 (en) * 2016-11-18 2018-05-24 深圳市中兴微电子技术有限公司 Buffer space management method and device, electronic apparatus, and storage medium
CN108076020A (en) * 2016-11-18 2018-05-25 深圳市中兴微电子技术有限公司 The management method and device of a kind of spatial cache
CN108076020B (en) * 2016-11-18 2020-09-08 深圳市中兴微电子技术有限公司 Cache space management method and device

Similar Documents

Publication Publication Date Title
US10681097B2 (en) Methods and systems for data transmission
US9635318B2 (en) Live video broadcasting on distributed networks
US10986397B2 (en) Reception apparatus, transmission apparatus, and data processing method
JP5752231B2 (en) Method and apparatus for providing time shift service in digital broadcasting system and system thereof
US11870829B2 (en) Methods and systems for data transmission
US20100198977A1 (en) Automatic live stream trees
US10524015B2 (en) System and methods for providing content to vehicles
KR101241507B1 (en) Cache system and cache allocation method for content on demand service using multicast
KR101283791B1 (en) System for encoding distributed moving pictur file and method for the same
CN101848366A (en) Filing and program transmitting method and equipment of time shift slicing files in IPTV (Internet Protocol Television) system
WO2010083736A1 (en) Program content processing method、system and device
KR102123208B1 (en) Content supply device, content supply method, program, terminal device, and content supply system
TW571594B (en) Methods for providing video-on-demand services for broadcasting systems
KR101383509B1 (en) System united multicast and unicast for near content on demand service and method thereof
KR20100059117A (en) Streaming system and cache server for distributed multimedia contents and method for streaming contents
CN101436946B (en) Method for scheduling data request in peer-to-peer sharing network
KR100682974B1 (en) Apparatus for integrating data broadcasting service and data broadcast services method using that
CN108600774B (en) Live broadcast channel distribution method based on two-stage distribution and stream broadcasting method
KR101291400B1 (en) Vod batching method combining static multicasting with dynamic multicasting
KR100947980B1 (en) Method of transmitting video data and method of providing video data
CN102438171A (en) Method and device for processing program source files as well as network television system
JP2009177811A (en) Method for live transmission of content intended to be recovered later in p2p mode after being split, control device, and associated facility
KR100897151B1 (en) Distributed Data Broadcasting System and Service over the IP Network
Thiruselvan Design of Distributed Prefetching Protocol in Push-to-Peer Video-on-Demand System
KR20020007048A (en) Development of the Noraebang Service device using Multicast Delivery

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
FPAY Annual fee payment

Payment date: 20160225

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee