KR100825456B1 - Apparatus and method for providing streaming service using internal buffer - Google Patents
Apparatus and method for providing streaming service using internal buffer Download PDFInfo
- Publication number
- KR100825456B1 KR100825456B1 KR1020060122943A KR20060122943A KR100825456B1 KR 100825456 B1 KR100825456 B1 KR 100825456B1 KR 1020060122943 A KR1020060122943 A KR 1020060122943A KR 20060122943 A KR20060122943 A KR 20060122943A KR 100825456 B1 KR100825456 B1 KR 100825456B1
- Authority
- KR
- South Korea
- Prior art keywords
- content
- streaming
- terminal
- streaming service
- server
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
- H04L1/1877—Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0278—Traffic management, e.g. flow control or congestion control using buffer status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/1263—Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows
- H04W72/1273—Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows of downlink data flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/18—Service support devices; Network management devices
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법을 제공하기 위한 것으로, 스트리밍 서버를 통해 컨텐츠를 다운로드 받아 스트리밍 서비스를 이용하는 단말기; 단말기가 스트리밍 서버에 접속하여 스트리밍 서비스를 받기 위한 정보를 단말기로 내려주는 RTP WAS; RTP WAS에서 스트리밍 서비스를 받기 위한 정보를 요청 받으면, 관리하고 있는 컨텐츠의 정보를 RTP WAS로 전달하는 컨텐츠 정보관리 서버; 컨텐츠의 정보 중 메타 데이터를 로딩 및 캐싱하고 실제 컨텐츠를 버퍼를 이용하여 스트리밍 서비스를 준비하고, 단말기에서 스트리밍 서비스를 요구하면 단말기로 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 서버; 스트리밍 서버로 컨텐츠를 제공하는 NAS; 를 포함하여 구성함으로서, 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시킬 수 있게 되는 것이다.The present invention provides an apparatus and method for providing a streaming service using an internal buffer, comprising: a terminal which downloads content through a streaming server and uses a streaming service; An RTP WAS that connects the streaming server to the terminal and sends information to the terminal to receive the streaming service; A content information management server that transmits information of the content that is being managed to the RTP WAS when receiving the information for receiving the streaming service from the RTP WAS; A streaming server that loads and caches metadata of content information, prepares a streaming service using a buffer of actual content, and provides a streaming service of content to a terminal when the terminal requests a streaming service; A NAS for providing content to a streaming server; By including the configuration, it is possible to improve the efficiency of memory utilization by using an internal buffer when performing a streaming service to the terminal.
Description
도 1은 종래 스트리밍 서비스 제공 장치의 예로서, 이동통신 단말기를 위한 동영상메일 서비스 시스템의 블록구성도, 1 is a block diagram of a video mail service system for a mobile communication terminal as an example of a conventional streaming service providing apparatus.
도 2는 종래 스트리밍 서비스 제공 방법을 보인 흐름도, 2 is a flowchart illustrating a conventional streaming service providing method;
도 3은 도 2에서 호가 거부되는 예를 보인 개념도, 3 is a conceptual diagram illustrating an example in which a call is rejected in FIG. 2;
도 4는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치의 블록구성도, 4 is a block diagram of a streaming service providing apparatus using an internal buffer according to an embodiment of the present invention;
도 5는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법을 보인 흐름도, 5 is a flowchart illustrating a streaming service providing method using an internal buffer according to an embodiment of the present invention;
도 6은 도 5에서 본 발명에 의해 버퍼를 이용하여 스트리밍 서비스를 수행하는 예를 보인 개념도, 6 is a conceptual diagram illustrating an example of performing a streaming service using a buffer according to the present invention in FIG.
도 7은 도 5에서 유휴장비를 활용하여 실시간 방송 서비스를 분리 수용하는 예를 보인 개념도, FIG. 7 is a conceptual diagram illustrating an example of separating and receiving a real-time broadcasting service using idle equipment in FIG. 5; FIG.
도 8은 도 5에서 프로세스 이중화의 예를 보인 개념도, 8 is a conceptual diagram illustrating an example of process redundancy in FIG. 5;
도 9는 도 5에서 RTP WAS에서 컨텐츠별 분산처리를 수행하는 예를 보인 개념 도, 9 is a conceptual diagram illustrating an example of performing distribution processing for each content in the RTP WAS in FIG. 5;
도 10은 도 5에서 RTP WAS에서 컨텐츠별 분산처리 예를 보인 상세흐름도, FIG. 10 is a detailed flowchart illustrating an example of distributed processing for each content in the RTP WAS in FIG. 5;
도 11은 도 10의 동작을 보인 개념도, 11 is a conceptual diagram illustrating the operation of FIG. 10;
도 12는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법의 전체 동작을 보인 흐름도.12 is a flowchart illustrating the overall operation of a method for providing a streaming service using an internal buffer according to an embodiment of the present invention.
** 도면의 주요 부분에 대한 부호의 설명 **** Description of symbols for the main parts of the drawing **
10 : 단말기10: terminal
20 : RTP WAS(Realtime Transport Protocol Web Application Server)20: RTP Realtime Transport Protocol Web Application Server
30 : 컨텐츠 정보관리 서버(JDBS) 40 : 스트리밍 서버(MSS 서버)30: content information management server (JDBS) 40: streaming server (MSS server)
41 : 프로세서 42 : 태스크 스레드41: Processor 42: Task Thread
43 : 캐시 메모리 44 : 캐시 스레드43: cache memory 44: cache thread
50 : NAS(Network Attached Storage)50: NAS (Network Attached Storage)
본 발명은 스트리밍(Streaming) 서비스에 관한 것으로, 특히 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시키기에 적당하도록 한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법에 관한 것이다.The present invention relates to a streaming service, and more particularly, to an apparatus and method for providing a streaming service using an internal buffer suitable for improving the efficiency of memory utilization by using an internal buffer when performing a streaming service to a terminal. .
일반적으로 스트리밍은 인터넷에서 음성이나 영상, 애니메이션 등을 실시간으로 재생하는 기술을 말한다. 이는 인터넷에서 영상이나 음향, 애니메이션 등의 파일을 하드디스크 드라이브에 다운로드 받아 재생하던 것을 다운로드 없이 실시간으로 재생해 주는 기술이며, 전송되는 데이터가 마치 물이 흐르는 것처럼 처리된다고 해서 '스트리밍(streaming)'이라는 명칭이 붙여졌다. In general, streaming refers to a technology for reproducing voice, video, animation, etc. in real time on the Internet. It is a technology that downloads and plays video, sound, and animation files from the Internet to a hard disk drive and plays them in real time without downloading them. It is called 'streaming' because data is processed as if water is flowing. It is named.
파일이 모두 전송되기 전이라도 클라이언트 브라우저 또는 플러그인이 데이터의 표현을 시작하게 되어 있다. Even before all the files are transferred, the client browser or plug-in will begin to present the data.
따라서 재생시간이 단축되며 하드디스크 드라이브의 용량도 영향을 거의 받지 않는다. 스트리밍이 동작하려면 데이터를 수신하고 있는 클라이언트 측은 데이터를 모으고, 그 데이터를 사운드나 그림으로 변환해 주는 응용프로그램에 끊임없이 보내줄 수 있어야 한다. Therefore, the play time is shortened and the capacity of the hard disk drive is hardly affected. For streaming to work, the client side receiving the data must be able to collect the data and send it to an application that converts the data into a sound or picture.
만약 클라이언트가 데이터를 수신하는 속도가 너무 빠르면 여분의 데이터를 버퍼에 저장하면서 동시에 스트리밍하게 된다. 그러나 데이터 수신속도가 빠르지 않으면 데이터의 표현이 매끄럽지 않게 된다.If the client receives data too fast, it will store the extra data in a buffer and stream it at the same time. However, if the data reception speed is not fast, the representation of the data is not smooth.
도 1은 종래 스트리밍 서비스 제공 장치의 예로서, 이동통신 단말기를 위한 동영상메일 서비스 시스템의 블록구성도이다.1 is a block diagram of a video mail service system for a mobile communication terminal as an example of a conventional streaming service providing apparatus.
여기서 참조번호 이동통신 서비스를 이용하는 1은 단말기고, 2는 이동통신망을 통해 단말기(1)와 연결되어 단문 메시지 서비스(Short Message Service)를 제공하는 SMS 서버이며, 3은 이동통신망을 통해 단말기(1)와 연결되어 단말기(1)가 웹 접속을 수행하도록 하는 WAS(Web Application Server) 서버이고, 4는 이동통신망을 통해 단말기(1)로 용량이 큰 파일을 전송하는 MSS(Multimedia Streaming Server) 서버인 스트리밍 서버이며, 5는 스트리밍 서버로 컨텐츠를 제공하는 NAS(Network Attached Storage)이다.Here,
도 2는 종래 스트리밍 서비스 제공 방법을 보인 흐름도이다.2 is a flowchart illustrating a conventional streaming service providing method.
단말기(1)에서 스트리밍 서버(4)로 특정 컨텐츠의 스트리밍 서비스를 요청하는지 판별한다(ST1).It is determined whether the terminal 1 requests the streaming service of the specific content from the streaming server 4 (ST1).
만약 단말기(1)에서 스트리밍 서버(4)로 특정 컨텐츠의 스트리밍 서비스를 요청하면, NAS(5)로 스트리밍 서버(4)로 메모리를 로딩시킨다(ST2).If the terminal 1 requests the streaming service of the specific content from the streaming
그리고 스트리밍 서버(4)는 메모리 용량이 채워졌는지 판별한다(ST3).The streaming
만약 메모리 용량에 여분이 있으면, 설정된 단말기(1)의 호(Call)를 통해 스트리밍 서버(4)에서 단말기(1)로 대용량 컨텐츠를 다운로드 시킨다(ST4).If there is excess memory capacity, a large amount of content is downloaded from the streaming
만약 메모리 용량에 여분이 없으면, 호 거절(Reject)되어 단말기(1)는 스트리밍 서버(4)로부터 대용량 컨텐츠를 다운로드 받을 수 없게 된다.If there is no excess in the memory capacity, the call is rejected and the
도 3은 도 2에서 호가 거부되는 예를 보인 개념도이다.3 is a conceptual diagram illustrating an example in which a call is rejected in FIG. 2.
스트리밍 서버(4)인 MSS 서버의 어플리케이션에서 컨텐츠의 메모리 처리 알고리즘이 최적화되지 못해 다수의 대용량 컨텐츠 서비스 요청시 가용한 메모리 부족으로 인해 호가 거절되는 문제점이 발생하게 된다.In the application of the MSS server, which is the streaming
요청된 컨텐츠를 메모리에 모두 적재하여 다수의 대용량 컨텐츠에 대한 서비스 요청시 메모리 부족현상이 발생한다.By loading all the requested contents into the memory, a memory shortage occurs when a service request for a plurality of large contents is requested.
예를 들어, 하나의 어플리케이션이 액세스(Access) 가능한 메모리 크기는 4GB(32bit O/S, 2^32 = 4GB)이라고 할 때, 캐시 메모리의 사이즈는 최소 3GB(Giga Byte)가 된다. 컨텐츠 로딩 및 어플리케이션 로컬 변수용 메모리의 용량은 전체 메모리 용량인 4GB에서 캐시 메모리 용량 3GB를 제외한 최대 1GB가 된다. For example, a memory size that can be accessed by one application is 4GB (32bit O / S, 2 ^ 32 = 4GB), and the cache memory has a size of at least 3GB (gigabyte). The memory capacity for content loading and application local variables ranges from 4GB of total memory capacity to 1GB, excluding 3GB of cache memory capacity.
그러나 드라마, 영화 등의 대용량 컨텐츠의 경우 편당 0.7 GB ~ 1.37 GB가 된다. 이를 이동통신 단말기용으로 편집할 경우에도 편당 50 ~ 100 MB가 된다.However, large contents such as dramas and movies range from 0.7 GB to 1.37 GB per piece. Even when this is edited for a mobile communication terminal, it is 50-100 MB per piece.
이렇게 컨텐츠는 대용량화 되어 가는데, 메모리 자원이 부족할 경우 신규로 인입되는 호가 요청한 컨텐츠를 메모리에 적재하지 못하여 호가 거절될 수 있는 문제점이 있게 된다.In this way, the content becomes large, but there is a problem that a call may be rejected because a newly incoming call fails to load the requested content in the memory when memory resources are insufficient.
본 발명은 종래의 제반 문제점을 해결하기 위해 제안된 것으로, 본 발명의 목적은 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시킬 수 있는 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법을 제공하는데 있다.The present invention has been proposed to solve various problems in the related art. An object of the present invention is to provide a streaming service providing apparatus using an internal buffer which can improve the efficiency of memory utilization by using an internal buffer when performing a streaming service to a terminal. To provide that method.
상기와 같은 목적을 달성하기 위하여 본 발명의 일실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치는, 스트리밍 서버를 통해 컨텐츠를 다운로드 받아 스트리밍 서비스를 이용하는 단말기; 단말기가 상기 스트리밍 서버에 접속하여 스트리밍 서비스를 받기 위한 정보를 상기 단말기로 내려주는 RTP WAS; RTP WAS에서 스트리밍 서비스를 받기 위한 정보를 요청 받으면, 관리하고 있는 컨텐츠의 정보를 RTP WAS로 전달하는 컨텐츠 정보관리 서버; 컨텐츠의 정보 중 메타 데이터를 로딩 및 캐싱하고 실제 컨텐츠를 버퍼를 이용하여 스트리밍 서비스를 준비하고, 단말기에서 스트리밍 서비스를 요구하면 단말기로 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 서버; 스트리밍 서버로 컨텐츠를 제공하는 NAS; 를 포함하여 이루어짐을 그 기술적 구성상의 특징으로 한다.In order to achieve the above object, a streaming service providing apparatus using an internal buffer according to an embodiment of the present invention includes: a terminal using a streaming service by downloading content through a streaming server; An RTP WAS for accessing the streaming server to the terminal and giving down information for receiving a streaming service to the terminal; A content information management server that transmits information of the content that is being managed to the RTP WAS when receiving the information for receiving the streaming service from the RTP WAS; A streaming server that loads and caches metadata of content information, prepares a streaming service using a buffer of actual content, and provides a streaming service of content to a terminal when the terminal requests a streaming service; A NAS for providing content to a streaming server; It is made to include the features of the technical configuration.
또한, 상기와 같은 목적을 달성하기 위하여 본 발명의 일실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법은, 스트리밍 서버는 메타 데이터만 로딩 및 캐싱하고, 실제 컨텐츠는 버퍼를 이용하여 스트리밍 서비스를 준비하는 제 1 단계; 제 1 단계 후 단말기에서 특정 컨텐츠의 스트리밍 서비스를 요청하면, RTP WAS에서 컨텐츠별 분산처리를 수행하여 단말기가 스트리밍 서버에서 컨텐츠를 다운로드 받도록 하는 제 2 단계; 를 포함하여 수행함을 그 기술적 구성상의 특징으로 한다.In addition, in order to achieve the above object, the streaming service providing method using an internal buffer according to an embodiment of the present invention, the streaming server loads and caches only the metadata, the actual content is prepared by using the buffer streaming service A first step of making; A second step of allowing the terminal to download content from the streaming server by performing distribution processing for each content in the RTP WAS when the terminal requests the streaming service of the specific content after the first step; It is characterized by the technical configuration of performing.
이하, 상기와 같은 본 발명, 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법의 기술적 사상에 따른 일실시 예를 도면을 참조하여 설명하면 다음과 같다.Hereinafter, an embodiment according to the present invention, an apparatus for providing a streaming service using an internal buffer, and a method thereof will be described with reference to the accompanying drawings.
도 4는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치의 블록구성도이다.4 is a block diagram of a streaming service providing apparatus using an internal buffer according to an embodiment of the present invention.
이에 도시된 바와 같이, 스트리밍 서버(40)를 통해 컨텐츠를 다운로드 받아 스트리밍 서비스를 이용하는 단말기(10); 단말기(10)가 스트리밍 서버(40)에 접속하여 스트리밍 서비스를 받기 위한 정보를 단말기(10)로 내려주는 RTP WAS(Realtime Transport Protocol Web Application Server)(20); RTP WAS(20)에서 스트리밍 서비스를 받기 위한 정보를 요청 받으면, 관리하고 있는 컨텐츠의 정보를 RTP WAS(20)로 전달하는 컨텐츠 정보관리 서버(June Data Base System, JDBS)(30); 컨텐츠의 정보 중 메타 데이터를 로딩 및 캐싱하고 실제 컨텐츠를 버퍼를 이용하여 스트리밍 서비스를 준비하고, 단말기(10)에서 스트리밍 서비스를 요구하면 단말기(10)로 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 서버(40); 스트리밍 서버(40)로 컨텐츠를 제공하는 NAS(Network Attached Storage)(50); 를 포함하여 구성된 것을 특징으로 한다.As shown therein, the terminal 10 downloads the content through the streaming
RTP WAS(20)는, 컨텐츠 정보, 단말기(10)의 가입자 국번을 수용하는 서버의 IP(Internet Protocol) 정보를 포함한 정보를 상기 단말기(10)로 내려주는 것을 특징으로 한다.The RTP WAS 20 is characterized in that down to the terminal 10 information including content information and IP (Internet Protocol) information of a server accommodating the subscriber station number of the terminal 10.
또한 본 발명의 일 실시 예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치는, 도 4에 도시된 바와 같이, 스트리밍 서버(40)의 스트리밍 서비스 동작을 제어하는 프로세서(41); 프로세서(41)의 제어를 받고, 단말기(10)의 컨텐츠 스트리밍 요청을 처리하며, 캐시 메모리(43)의 캐시를 검색하고, 캐시 스레드(Cache Thread)(44)로 컨텐츠에 대한 캐시를 요청하는 태스크 스레드(Task Thread)(42); 태스크 스레드(42)로부터 캐시 요구를 받으면, NAS(50)의 컨텐츠의 메타 데이터와 실제 컨텐츠가 캐시 메모리(43)에 적재되도록 하는 캐시 스레드(44); NAS(50)로부 터 컨텐츠에 대한 메타 데이터를 적재하고, NAS(50)로부터 컨텐츠를 캐시하여 적재하고, 단말기(10)에서 캐시된 컨텐츠를 스트리밍으로 다운로드 받도록 하는 캐시 메모리(43); 를 포함하여 구성된 것을 특징으로 한다.In addition, the streaming service providing apparatus using the internal buffer according to an embodiment of the present invention, as shown in Figure 4, the
프로세서(41)는, 이중화로 구성된 것을 특징으로 한다.The
캐시 메모리(43)는, NAS(50)로부터 실제 컨텐츠의 적재시 트랙별로 설정된 커런트 버퍼(Current Buffer) 및 넥스트 버퍼(Next Buffer)에 컨텐츠 데이터를 적재시키고 단말기(10)로의 스트리밍이 시작되도록 하고, 버퍼를 순환시키면서 넥스트 버퍼에 컨텐츠 데이터를 적재시키면서 계속적으로 스트리밍이 수행되도록 하는 것을 특징으로 한다.When loading the actual content from the
도 5는 본 발명의 일 실시 예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법을 보인 흐름도이다.5 is a flowchart illustrating a streaming service providing method using an internal buffer according to an embodiment of the present invention.
이에 도시된 바와 같이, 스트리밍 서버(40)는 메타 데이터만 로딩 및 캐싱(Caching)하고, 실제 컨텐츠는 버퍼를 이용하여 스트리밍 서비스를 준비하는 제 1 단계(ST11); 제 1 단계 후 단말기(10)에서 특정 컨텐츠의 스트리밍 서비스를 요청하면, RTP WAS(20)에서 컨텐츠별 분산처리를 수행하여 단말기(10)가 스트리밍 서버(40)에서 컨텐츠를 다운로드 받도록 하는 제 2 단계(ST12, ST13); 를 포함하여 수행하는 것을 특징으로 한다.As shown therein, the
도 6은 도 5에서 본 발명에 의해 버퍼를 이용하여 스트리밍 서비스를 수행하는 예를 보인 개념도이다.FIG. 6 is a conceptual diagram illustrating an example of performing a streaming service using a buffer according to the present invention in FIG. 5.
이에 도시된 바와 같이, 상기 제 1 단계는, 컨텐츠의 헤더 정보만을 캐싱하 고, 오디오와 비디오 정보는 2개의 버퍼를 이용하여 즉시 로딩하여 스트리밍 서비스를 준비하는 것을 특징으로 한다.As shown in the drawing, the first step includes caching only header information of content and immediately loading audio and video information using two buffers to prepare a streaming service.
도 7은 도 5에서 유휴장비를 활용하여 실시간 방송 서비스를 분리 수용하는 예를 보인 개념도이다.FIG. 7 is a conceptual diagram illustrating an example of separating and receiving a real-time broadcasting service using idle equipment in FIG. 5.
이에 도시된 바와 같이, 제 1 단계는, 스트리밍 서버(40)는 유휴 장비를 활용하여 일반 스트리밍용 컨텐츠와 실시간 방송용 컨텐츠를 분리 수용하는 것을 특징으로 한다.As shown in FIG. 1, in the first step, the streaming
도 8은 도 5에서 프로세스 이중화의 예를 보인 개념도이다.8 is a conceptual diagram illustrating an example of process duplication in FIG. 5.
이에 도시된 바와 같이, 제 1 단계는, 스트리밍 서버(40)는 일반 스트리밍 서비스를 위한 프로세스를 이중화하여 관리하는 것을 특징으로 한다.As shown in this, the first step, the streaming
도 9는 도 5에서 RTP WAS에서 컨텐츠별 분산처리를 수행하는 예를 보인 개념도이다.9 is a conceptual diagram illustrating an example of performing distribution processing for each content in the RTP WAS in FIG. 5.
이에 도시된 바와 같이, 제 2 단계는, 컨텐츠 ID에 의한 분산 처리에 의해 스트리밍 서버(40)에 동일 컨텐츠가 다른 MSS에 저장되도록 하는 것을 특징으로 한다.As shown therein, the second step is characterized in that the same content is stored in another MSS in the streaming
도 10은 도 5에서 RTP WAS에서 컨텐츠별 분산처리 예를 보인 상세흐름도이고, 도 11은 도 10의 동작을 보인 개념도이다.FIG. 10 is a detailed flowchart illustrating an example of distributed processing for each content in the RTP WAS in FIG. 5, and FIG. 11 is a conceptual diagram illustrating the operation of FIG. 10.
이에 도시된 바와 같이, 제 2 단계는, 단말기(10)에서 특정 컨텐츠의 스트리밍 서비스를 요청하는지 RTP WAS(20)에서 판별하는 제 11 단계(ST21); 제 11 단계에서 단말기(10)가 특정 컨텐츠의 스트리밍 서비스를 요청하는 것으로 판별되면, RTP WAS(20)는 컨텐츠 정보관리 서버(30)로 단말기(10)가 스트리밍 서버(40)에 접속하여 스트리밍 서비스를 받기 위한 정보를 요청하여 전달받는 제 12 단계(ST22, ST23); 제 12 단계 후 RTP WAS(20)는 단말기(10)로 스트리밍 서버(40)에 접속할 수 있는 정보를 전달하여 단말기(10)가 지정된 스트리밍 서버(40)에 접속하여 특정 컨텐츠를 다운로드 받도록 하는 제 13 단계(ST24, ST25); 를 포함하여 수행하는 것을 특징으로 한다.As shown in FIG. 2, the second step includes: an eleventh step ST21 determining whether the terminal 10 requests a streaming service of a specific content; If it is determined in step 11 that the terminal 10 requests the streaming service of the specific content, the RTP WAS 20 is a content
제 12 단계에서 단말기(10)가 스트리밍 서버(40)에 접속하여 스트리밍 서비스를 받기 위한 정보는, 컨텐츠 정보와 단말기(10)의 가입자 국번을 수용하는 서버의 IP 정보를 포함한 것을 특징으로 한다.In the twelfth step, the information for the terminal 10 to access the streaming
도 12는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법의 전체 동작을 보인 흐름도이다.12 is a flowchart illustrating the overall operation of a streaming service providing method using an internal buffer according to an embodiment of the present invention.
이에 도시된 바와 같이, 단말기(10)에서 컨텐츠 스트리밍 요청을 하면 스트리밍 서버(40)의 태스크 스레드(42)에서 이를 전달 받고, 캐시 메모리(42)를 검색(Search Cache)한 다음 캐시 스레드(44)로 캐시 요청(Request Cache)을 하는 제 21 단계(ST31 ~ ST33); 제 21 단계 후 상기 스트리밍 서버(40)의 캐시 스레드(44)는 NAS(50)로 컨텐츠를 요청(Open Contents)하는 제 22 단계(ST34); 제 22 단계 후 캐시 메모리(43)는 NAS(50)로부터 메타 데이터를 적재하고, NAS(50)로부터 컨텐츠를 캐시하여 적재하고, 단말기(10)에서 캐시된 컨텐츠를 스트리밍으로 다운로드 받도록 하는 제 23 단계(ST35 ~ ST40); 를 포함하여 수행하는 것을 특징으로 한다.As shown in the drawing, when the terminal 10 requests a content streaming, the
제 23 단계는, 스트리밍 서버(40)의 캐시 메모리(43)는 NAS(50)로부터 메타 데이터를 적재하는 제 31 단계(ST35); 제 31 단계 후 캐시 메모리(43)는 트랙별로 설정된 커런트 버퍼(Current Buffer) 및 넥스트 버퍼(Next Buffer)에 NAS(50)로부터의 컨텐츠 데이터를 적재시키는 제 32 단계(ST36); 제 32 단계 후 스트리밍 서버(40)는 단말기(10)로의 스트리밍이 시작되도록 하는 제 33 단계(ST37); 제 33 단계 후 스트리밍 서버(40)는 캐시 메모리(43)의 버퍼를 순환시키면서 넥스트 버퍼에 컨텐츠 데이터를 적재시키면서 계속적으로 스트리밍이 수행되도록 하는 제 34 단계(ST38 ~ ST40); 를 포함하여 수행하는 것을 특징으로 한다.In a twenty-third step, the
이와 같이 구성된 본 발명에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법의 바람직한 실시 예를 첨부한 도면에 의거하여 상세히 설명하면 다음과 같다. An apparatus and method for providing a streaming service using an internal buffer according to the present invention configured as described above will be described in detail with reference to the accompanying drawings.
하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 판례 등에 따라 달라질 수 있으며, 이에 따라 각 용어의 의미는 본 명세서 전반에 걸친 내용을 토대로 해석되어야 할 것이다.In the following description of the present invention, when it is determined that detailed descriptions of related known functions or configurations may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, terms to be described below are terms defined in consideration of functions in the present invention, which may vary according to intention or precedent of a user or an operator, and thus, the meaning of each term should be interpreted based on the contents throughout the present specification. will be.
먼저 본 발명은 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시키고자 한 것이다.First, the present invention is intended to improve the efficiency of memory utilization by using an internal buffer when performing a streaming service to a terminal.
또한 종래에는 메타 데이터와 컨텐츠 전체를 메모리에 로딩 및 캐싱하는 구 조였으나, 본 발명에서는 메타 데이터만 메모리에 로딩 및 적재하는 구조로 변경하여 스트리밍 서버(40)에서의 컨텐츠 메모리 처리 알고리즘을 개선하였다.In addition, although the conventional structure of loading and caching the entire metadata and contents into the memory, the present invention improved the content memory processing algorithm in the streaming
여기서 메타 데이터(meta data)는 데이터에 관한 구조화된 데이터로, 다른 데이터를 설명해 주는 데이터를 말한다. 이러한 메타 데이터를 속성정보라고도 한다. 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 콘텐츠에 대하여 부여되는 데이터이다. Here, meta data is structured data about data and refers to data that describes other data. Such metadata is also called attribute information. It is data that is given to content according to a predetermined rule in order to efficiently find and use information that is being searched among a large amount of information.
여기에는 컨텐츠의 위치와 내용, 작성자에 관한 정보, 권리 조건, 이용 조건, 이용 내력 등이 기록되어 있다. 컴퓨터에서는 보통 메타 데이터를 데이터를 표현하기 위한 목적과 데이터를 빨리 찾기 위한 목적으로 사용하고 있다. Here, the location and contents of the content, information about the author, the conditions of rights, the conditions of use, the history of use, etc. are recorded. Computers usually use metadata to express data and to find data quickly.
데이터를 표현하기 위한 목적으로 사용되는 메타 데이터의 가장 좋은 예가 HTML(HyperText Markup Language) 태그이다. 데이터에 관한 구조화라는 것은 HTML 태그 안에 헤드(head)나 몸체(body)가 있으며, 몸체(body) 안에는 테이블(table)이 올 수 있고, 테이블 안에는 tr이, tr 안에는 td가 올 수 있는 것처럼 데이터가 상위에서 하위로 나무(tree) 형태의 구조를 이루고 있다는 의미이다. The best example of metadata used to represent data is the HyperText Markup Language (HTML) tag. Structuring data is like having a head or body inside an HTML tag, a table inside a body, a tr inside a table, and a td inside a tr. It means that the tree is formed from the top to the bottom.
메타 데이터의 또 다른 목적은 데이터를 빨리 찾기 위한 것으로, 컴퓨터에서 정보의 인덱스(Index) 구실을 한다. 사용자는 메타 데이터를 이용하여 자기가 원하는 특정 데이터(정보)를 검색엔진 등으로 쉽게 찾아낼 수 있다. Another purpose of meta data is to find data quickly, which serves as an index of information on a computer. The user can easily find specific data (information) desired by the search engine using meta data.
영화의 한 신에서 나오는 배우의 데이터를 추출하거나 축구 시합의 비디오에서 골 인 장면만을 뽑아낼 수 있고, 또 이 자료들을 편집할 수는 것도 메타 데이터의 기능이다. Metadata can be used to extract data from actors from a scene in a movie, or to extract only a goal shot from a video of a football match, and to edit these materials.
전자의 경우에서나 후자의 경우에 메타 데이터는 데이터를 사용하는 사람에게는 보이지 않는다. 그러나 기계(컴퓨터)는 메타 데이터의 내용을 이해하고 이를 이용한다. 곧, 웹 자료나 다른 것들에 관해 기계가 이해할 수 있는 정보가 메타 데이터인 것이다.In the former or latter case, the metadata is invisible to the person using the data. But machines (computers) understand the content of metadata and use it. In other words, the machine understandable information about web material or anything else is metadata.
그래서 최근 보급되기 시작한 메타 데이터를 이용한 탐색 방법은 사용자로 하여금 좀 더 편리하고 빠르게 원하는 컨텐츠를 탐색할 수 있도록 돕는 것이다. 예를 들어, MP3 파일이 메타 데이터의 한 종류인 ID3 tag로 장르, 저작자, 곡명, 앨범 이름 등의 정보를 가지고 있다면, 단순히 파일의 이름만을 보여 주는 대신 저작자 별로, 또는 앨범 별로 각 음악 파일을 정렬 후 사용자가 저작자 별로 또는 앨범 별로 파일을 탐색할 수 있게 하는 것이다. Thus, a search method using metadata, which has recently been popularized, helps users to search for desired content more conveniently and quickly. For example, if an MP3 file contains information such as genre, author, song name, and album name with ID3 tag, a kind of metadata, sort each music file by author or album instead of simply showing the file name. This allows users to browse files by author or album.
여기서 ID3 태그(tag)는 MPEG(Moving Picture Experts Group) 계층 3(MP3) 파일에 곡명이나 저작자, 음악 채널 등의 정보를 추가하기 위해서 표준적으로 사용되고 있는 형식을 말한다.In this case, the ID3 tag is a format used to add information such as a song name, author, and music channel to a Moving Picture Experts Group (MPEG) Layer 3 (MP3) file.
따라서 스트리밍 서버(40)에서는 스트리밍 요청된 컨텐츠의 메모리 처리 방식을 메타 데이터와 컨텐츠 전체를 로딩 및 캐싱하는 방식에서 메타 데이터만 로딩 및 캐싱하고, 실제 컨텐츠는 사용자별로 오디오 및 비디오 데이터용 각각 512KB 2개의 메모리 버퍼를 이용하여 서비스하는 구조로 변경함으로서, 메모리의 물리적인 한계 때문에 신규 트랜잭션(Transaction)이 거절(Reject)되는 문제점을 개선하였다. Therefore, the streaming
그리고 서비스 요청된 컨텐츠의 크기에 비례하여 메모리 사용량이 증가하는 문제를 개선하여 시스템에서의 처리 용량을 크게 향상시킬 수 있게 되었다. 이 때문에 사용자별 최대 메모리 사용량은 512KB 버퍼 2개를 사용하고 이를 이중화함으로써 2MB가 된다.In addition, by improving the memory usage problem in proportion to the size of the content requested content, the processing capacity in the system can be significantly improved. For this reason, the maximum memory usage per user is 2MB by using two 512KB buffers and redundancy them.
도 4는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치의 블록구성도이다.4 is a block diagram of a streaming service providing apparatus using an internal buffer according to an embodiment of the present invention.
단말기(10)는 스트리밍 서버(40)를 통해 컨텐츠를 다운로드 받아 스트리밍 서비스를 이용한다.The terminal 10 downloads content through the streaming
또한 RTP WAS(Realtime Transport Protocol Web Application Server)(20)는 단말기(10)가 스트리밍 서버(40)에 접속하여 스트리밍 서비스를 받기 위한 정보인 컨텐츠 정보, 단말기(10)의 가입자 국번을 수용하는 서버의 IP(Internet Protocol) 정보를 단말기(10)로 내려준다.In addition, the RTP WAS (Realtime Transport Protocol Web Application Server) 20 is a terminal of the server accepting the content information, which is the information for the terminal 10 to access the streaming
또한 컨텐츠 정보관리 서버(30)는 RTP WAS(20)에서 스트리밍 서비스를 받기 위한 정보인 컨텐츠 정보, 단말기(10)의 가입자 국번을 수용하는 서버의 IP(Internet Protocol) 정보를 요청 받으면, 관리하고 있는 컨텐츠의 정보를 RTP WAS(20)로 전달해준다.In addition, the content
또한 스트리밍 서버(40)는 컨텐츠의 정보 중 메타 데이터를 로딩 및 캐싱하고 실제 컨텐츠를 버퍼를 이용하여 스트리밍 서비스를 준비하고, 단말기(10)에서 스트리밍 서비스를 요구하면 단말기(10)로 컨텐츠의 스트리밍 서비스를 제공한다. In addition, the streaming
캐싱(Caching)이란 명령어와 데이터를 캐시 기억 장치 또는 디스크 캐시에 일시적으로 저장하는 것을 말한다. Caching refers to the temporary storage of instructions and data in cache storage or disk cache.
캐싱은 서버의 프로세서가 명령어와 데이터를 메모리 또는 디스크로부터 읽어 오거나 데이터를 메모리 또는 디스크에 기록하는 것보다 몇 배 빠른 속도 또는 프로세서의 속도에 가깝게 단축시킴으로써 서버의 성능을 향상시키도록 한다. Caching allows the server's processor to improve server performance by speeding up or near the speed of the processor several times faster than reading instructions and data from memory or disk, or writing data to memory or disk.
스트리밍 서버(40)에서 프로세서(41)는 스트리밍 서버(40)의 스트리밍 서비스 동작을 제어하고 이중화로 구성된다.In the streaming
태스크 스레드(42)는 프로세서(41)의 제어를 받고, 단말기(10)의 컨텐츠 스트리밍 요청을 처리하며, 캐시 메모리(43)의 캐시를 검색하고, 캐시 스레드(Cache Thread)(44)로 컨텐츠에 대한 캐시를 요청한다.The
캐시 스레드(44)는 태스크 스레드(42)로부터 캐시 요구를 받으면, NAS(50)의 컨텐츠의 메타 데이터와 실제 컨텐츠가 캐시 메모리(43)에 적재되도록 한다.When the
캐시 메모리(43)는 NAS(50)로부터 컨텐츠에 대한 메타 데이터를 적재하고, NAS(50)로부터 컨텐츠를 캐시하여 적재하고, 단말기(10)에서 캐시된 컨텐츠를 스트리밍으로 다운로드 받도록 한다. The
캐시 메모리(43)는 NAS(50)로부터 실제 컨텐츠의 적재시 트랙별로 설정된 커런트 버퍼(Current Buffer) 및 넥스트 버퍼(Next Buffer)에 컨텐츠 데이터를 적재시키고 단말기(10)로의 스트리밍이 시작되도록 하고, 버퍼를 순환시키면서 넥스트 버퍼에 컨텐츠 데이터를 적재시키면서 계속적으로 스트리밍이 수행되도록 한다.The
또한 NAS(Network Attached Storage)(50)는 스트리밍 서버(40)로 컨텐츠를 제공한다. 이러한 NAS(50)는 네트워크로 연결된 스토리지(Storage, 저장 매체)로서, 네트워크에 접속되도록 특화된 파일 서버이다. In addition, NAS (Network Attached Storage) (50) provides the content to the streaming server (40). The
이것은 이더넷이나 TCP/IP(Transmission Control Protocol / Internet Protocol, 전송 제어 프로토콜 / 인터넷 프로토콜)와 같은 전통적인 LAN(Local Area Network, 근거리 통신망) 프로토콜을 사용하며, 유닉스의 NFS(Network File System, 네트워크 파일 시스템)과 도스/윈도우의 SMB(Server Message Block)과 같은 파일 입출력 요청을 처리한다. It uses traditional LAN (Local Area Network) protocols such as Ethernet or Transmission Control Protocol / Internet Protocol (TCP / IP), and UNIX's Network File System (NFS). It handles file I / O requests such as and Server Message Block (SMB) in DOS / Windows.
따라서 NAS(50)는 연결된 호스트 시스템 간에 데이터 공유가 가능한 네트워크 연결 스토리지이다. NAS는 처음에 LAN 환경에서 데이터를 공유하기 위해 제안된 것으로, 파일 시스템 기능을 스토리지 장치에 통합한다. Thus, the
NAS 환경에서 서버는 표준 이더넷 네트워크를 통해 스토리지 시스템에 연결되며, NFS 및 CIFS(Common Internet File System)과 같은 표준 파일 액세스 프로토콜을 사용하여 스토리지를 요청한다. 클라이언트가 보낸 로컬 파일 시스템 호출은 모든 클라이언트에 공유 파일 스토리지를 제공하는 NAS(50)로 리디렉션(Redirection) 된다. In a NAS environment, servers connect to storage systems through standard Ethernet networks and request storage using standard file access protocols such as NFS and Common Internet File System (CIFS). Local file system calls sent by clients are redirected to
클라이언트가 데스크톱인 경우 NAS(50)는 서버 없이 파일을 제공하고, 클라이언트가 서버 시스템인 경우 NAS(50)는 서버로 파일을 제공한다.If the client is a desktop, the
스트리밍 서버(40)의 캐시 스레드(44)에서 NAS(50)로 오픈 컨텐츠(Open Contents) 명령을 전달하면, NAS(50)는 스트리밍 서버(40)의 캐시 메모리(43)로 메타 데이터와 실제 컨텐츠를 제공하게 된다.When the Open Contents command is transmitted from the
도 5는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법을 보인 흐름도이다.5 is a flowchart illustrating a streaming service providing method using an internal buffer according to an embodiment of the present invention.
먼저 스트리밍 서버(40)는 메타 데이터만 로딩 및 캐싱(Caching)하고, 실제 컨텐츠는 버퍼를 이용하여 스트리밍 서비스를 준비한다(ST11).First, the streaming
이는 도 6에서와 같이, 종래에는 컨텐츠의 헤더 정보와 오디오, 비디오 정보를 동시에 메모리에 로딩 및 캐싱하는 방법으로 서비스 하였으나, 본 발명에서는 컨텐츠의 헤더 정보만을 캐싱하고, 오디오와 비디오 정보는 2개의 버퍼를 이용하여 즉시 로딩하여 스트리밍 서비스를 준비하도록 한다.In the conventional method, as shown in FIG. 6, the header information, audio, and video information of the content are simultaneously loaded and cached into a memory. Use to load immediately to prepare streaming service.
도 7에서와 같이, 스트리밍 서버(40)는 유휴 장비를 활용하여 일반 스트리밍용 컨텐츠와 실시간 방송용 컨텐츠를 분리 수용하도록 한다. 즉 MSS#1~4에서 라이브 방송(KBS1, KBS2, SBS, MBC, 성인방송 등) 서비스를 별도의 시스템(Live#1)으로 분리 수용하여 일반 VOD(Video on Demand, 주문형 비디오) 스트리밍 프로세스의 메모리 풀(Memory Full)로 인한 트랜잭션 거절 문제가 발생하는 빈도를 감소시킬 수 있게 된다.As shown in FIG. 7, the streaming
도 8에서와 같이, 스트리밍 서버(40)는 일반 스트리밍 서비스를 위한 프로세스를 이중화하여 관리한다. 즉, MSS#1~4의 일반 VOD 스트리밍 서비스를 위한 프로세스를 이중화하여 메모리 풀 현상을 최소화함과 동시에 처리용량을 향상시킬 수 있다. 이때 프로세스 당 한계 메모리는 4GB로 설정할 수 있다.As shown in FIG. 8, the streaming
단말기(10)에서 특정 컨텐츠의 스트리밍 서비스를 요청하면(ST12), RTP WAS(20)에서 컨텐츠별 분산처리를 수행하여 단말기(10)가 스트리밍 서버(40)에서 컨텐츠를 다운로드 받도록 한다(ST13).When the terminal 10 requests a streaming service of a specific content (ST12), the RTP WAS 20 performs the distributed processing for each content so that the terminal 10 downloads the content from the streaming server 40 (ST13).
도 9에서와 같이 컨텐츠 ID에 의한 분산 처리에 의해 스트리밍 서버(40)에 동일 컨텐츠가 다른 MSS에 저장되도록 한다. 이러한 RTP WAS(20)의 컨텐츠별 분산처리 알고리즘을 적용하여 MSS의 캐시 히트(Hit)율을 높이고 메모리 자원의 효율성을 향상시킨다. As shown in FIG. 9, the same content is stored in another MSS in the streaming
따라서 종래의 가입자 국번에 의해 스트리밍 서버가 지정되는 프리픽스 라우팅(Prefix Routing) 방식을 변경하여 컨텐츠 ID에 의한 분산 처리 방식으로 변경한다. 이에 따라 각 서버의 메모리에 동일 컨텐츠가 반복 저장되지 않도록 하여 메모리 사용의 효율성을 향상시킨다. Therefore, the prefix routing method in which the streaming server is designated by the conventional subscriber station number is changed to change the distributed processing method by the content ID. Accordingly, the same content is not repeatedly stored in the memory of each server, thereby improving the efficiency of memory usage.
그리고 동일한 컨텐츠에 대한 서비스 요청은 동일한 서버에서 스트리밍 서비스하여 캐시 히트율을 향상시킨다.Service requests for the same content are streamed on the same server to improve the cache hit rate.
도 10은 도 5에서 RTP WAS에서 컨텐츠별 분산처리 예를 보인 상세흐름도이고, 도 11은 도 10의 동작을 보인 개념도이다.FIG. 10 is a detailed flowchart illustrating an example of distributed processing for each content in the RTP WAS in FIG. 5, and FIG. 11 is a conceptual diagram illustrating the operation of FIG. 10.
단말기(10)에서 특정 컨텐츠의 스트리밍 서비스를 요청하는지 RTP WAS(20)에서 판별한다(ST21).The RTP WAS 20 determines whether the terminal 10 requests a streaming service of a specific content (ST21).
만약 단말기(10)가 특정 컨텐츠의 스트리밍 서비스를 요청하는 것으로 판별되면, RTP WAS(20)는 컨텐츠 정보관리 서버(30)로 단말기(10)가 스트리밍 서버(40)에 접속하여 스트리밍 서비스를 받기 위한 정보인 컨텐츠 정보, 가입자 국번을 수용하는 서버의 IP 정보를 요청한다(ST22).If it is determined that the terminal 10 requests the streaming service of the specific content, the RTP WAS 20 uses the content
컨텐츠 정보관리 서버(30)는 RTP WAS(20)로 컨텐츠 정보와 해당 국번을 수용하는 서버의 IP를 내려준다(ST23).The content
RTP WAS(20)는 단말기(10)로 스트리밍 서버(40)에 접속할 수 있는 정보를 전 달한다. 종래에서와 같이 가입자 국번별로 라우팅 처리를 수행할 경우 동일한 컨텐츠가 4대의 시스템에서 동시에 서비스 할 수 있고, 특정 시점에 대용량 컨텐츠가 한 시스템에 집중될 수 있는 문제점이 있었다. The RTP WAS 20 transmits information to access the streaming
그래서 본 발명에서는 컨텐츠 정보관리 서버(30)에서 조회한 컨텐츠 정보를 기반으로 라우팅 처리를 수행하도록 함으로서, 특정 컨텐츠는 동일한 1대의 시스템에서만 서비스하여 캐시 히트율을 상승시키고, 대용량 컨텐츠의 서비스 요청이 한 시스템에 집중되는 것을 방지하게 된다(ST24).Thus, in the present invention, by performing the routing process based on the content information retrieved from the content
단말기(10)는 지정된 스트리밍 서버(40)에 접속하여 특정 컨텐츠를 다운로드 받게 된다(ST25).The terminal 10 accesses the designated
도 12는 본 발명의 일 실시예에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 방법의 전체 동작을 보인 흐름도이다.12 is a flowchart illustrating the overall operation of a streaming service providing method using an internal buffer according to an embodiment of the present invention.
단말기(10)에서 스트리밍 서버(40)의 태스크 스레드(42)로 컨텐츠 스트리밍 요청을 한다(ST31).The terminal 10 makes a content streaming request to the
스트리밍 서버(40)의 태스크 스레드(42)에서 이를 전달받고, 캐시 메모리(42)를 검색(Search Cache)한다(ST32).The
태스크 스레드(42)는 캐시 스레드(44)로 캐시 요청(Request Cache)을 한다(ST33).The
스트리밍 서버(40)의 캐시 스레드(44)는 NAS(50)로 컨텐츠를 요청(Open Contents)한다(ST34).The
스트리밍 서버(40)의 캐시 메모리(43)는 NAS(50)로부터 메타 데이터를 적재 한다(ST35).The
캐시 메모리(43)는 트랙별로 설정된 커런트 버퍼(Current Buffer) 및 넥스트 버퍼(Next Buffer)에 NAS(50)로부터의 컨텐츠 데이터를 적재시킨다(ST36).The
스트리밍 서버(40)는 단말기(10)로의 스트리밍이 시작되도록 한다(ST37).The streaming
스트리밍 서버(40)는 캐시 메모리(43)의 버퍼를 순환시키면서 넥스트 버퍼에 컨텐츠 데이터를 적재시키면서 계속적으로 스트리밍이 수행되도록 한다(ST38 ~ ST40).The streaming
이와 같은 본 발명은 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시키게 되는 것이다.As such, the present invention improves the efficiency of memory utilization by using an internal buffer when performing a streaming service to a terminal.
이상에서 살펴본 바와 같이, 본 발명에 의한 내부 버퍼를 이용한 스트리밍 서비스 제공 장치 및 그 방법은 단말기로의 스트리밍 서비스 수행시 내부 버퍼를 이용하여 메모리 활용의 효율성을 향상시킬 수 있는 효과가 있게 된다.As described above, an apparatus and method for providing a streaming service using an internal buffer according to the present invention have an effect of improving the efficiency of memory utilization by using an internal buffer when performing a streaming service to a terminal.
따라서 본 발명은 동일 용량의 메모리 자원으로 많은 파일을 전송할 수 있으며, 대용량 파일을 로드(Load)하기 위한 디스크 입출력도 획기적으로 줄일 수 있는 효과가 있다.Therefore, the present invention can transfer a large number of files with memory resources of the same capacity, and the disk input / output for loading a large file can be significantly reduced.
이상에서 본 발명의 바람직한 실시예에 한정하여 설명하였으나, 본 발명은 이에 한정되지 않고 다양한 변화와 변경 및 균등물을 사용할 수 있다. 따라서 본 발명은 상기 실시예를 적절히 변형하여 응용할 수 있고, 이러한 응용도 하기 특허 청구범위에 기재된 기술적 사상을 바탕으로 하는 한 본 발명의 권리범위에 속하게 된다.Although the above has been described as being limited to the preferred embodiment of the present invention, the present invention is not limited thereto and various changes, modifications, and equivalents may be used. Therefore, the present invention can be applied by appropriately modifying the above embodiments, and such applications also fall within the scope of the present invention as long as they are based on the technical idea described in the following claims.
Claims (14)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020060122943A KR100825456B1 (en) | 2006-12-06 | 2006-12-06 | Apparatus and method for providing streaming service using internal buffer |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020060122943A KR100825456B1 (en) | 2006-12-06 | 2006-12-06 | Apparatus and method for providing streaming service using internal buffer |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR100825456B1 true KR100825456B1 (en) | 2008-04-25 |
Family
ID=39572674
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020060122943A Active KR100825456B1 (en) | 2006-12-06 | 2006-12-06 | Apparatus and method for providing streaming service using internal buffer |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR100825456B1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20110044493A (en) * | 2009-10-23 | 2011-04-29 | 삼성전자주식회사 | Method of storing data and apparatus for performing the same in digital broadcasting system providing voice service |
| KR20160140047A (en) * | 2015-05-29 | 2016-12-07 | 엔트릭스 주식회사 | Method for caching of application for cloud streaming service and apparatus using the same |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20060028338A (en) * | 2004-09-24 | 2006-03-29 | 주식회사 케이티 | Number-based Multimedia Streaming Service System and Its Method |
-
2006
- 2006-12-06 KR KR1020060122943A patent/KR100825456B1/en active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20060028338A (en) * | 2004-09-24 | 2006-03-29 | 주식회사 케이티 | Number-based Multimedia Streaming Service System and Its Method |
Non-Patent Citations (1)
| Title |
|---|
| 국내공개특허 10-2006-28338 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20110044493A (en) * | 2009-10-23 | 2011-04-29 | 삼성전자주식회사 | Method of storing data and apparatus for performing the same in digital broadcasting system providing voice service |
| KR101678394B1 (en) * | 2009-10-23 | 2016-11-22 | 삼성전자 주식회사 | Method and apparatus for storing data in digital broadcasting system providing video on demand service |
| KR20160140047A (en) * | 2015-05-29 | 2016-12-07 | 엔트릭스 주식회사 | Method for caching of application for cloud streaming service and apparatus using the same |
| KR102310070B1 (en) * | 2015-05-29 | 2021-10-08 | 에스케이플래닛 주식회사 | Method for caching of application for cloud streaming service and apparatus using the same |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2409241B1 (en) | Dynamic variable rate media delivery system | |
| US10652343B2 (en) | Locating and retrieving segmented content | |
| US8219711B2 (en) | Dynamic variable rate media delivery system | |
| CN108881944B (en) | A kind of streaming media accelerated publishing method and system | |
| WO2009062385A1 (en) | A storage system and method of stream media file | |
| KR20050028923A (en) | System and method for selecting a music channel | |
| WO2009079948A1 (en) | A content buffering, querying method and point-to-point media transmitting system | |
| CN102196298A (en) | Distributive VOD (video on demand) system and method | |
| CN103634616B (en) | A kind of stream media ordering method and device based on cloud storage | |
| US10200490B2 (en) | Content-based redirection | |
| WO2018153237A1 (en) | Caching method and system for replaying live broadcast, and playing method and system | |
| KR102850802B1 (en) | Method and edge server for managing cache file for content fragments caching | |
| KR100825456B1 (en) | Apparatus and method for providing streaming service using internal buffer | |
| CN101945100A (en) | Digital house streaming media server and serving method | |
| CN111225248B (en) | On-demand content management method and content distribution network on-demand server | |
| JP2022546764A (en) | METHOD AND SYSTEM FOR PLAYING STREAMING CONTENT USING LOCAL STREAMING SERVER | |
| CN108124166A (en) | A kind of internet live broadcast system | |
| EP3866027B1 (en) | Communicating shuffled media content | |
| CN118338033A (en) | Video file storage method, device, computing equipment, storage medium and product | |
| CN1777278A (en) | Realization method of streaming media server supporting off-site storage | |
| KR100974916B1 (en) | Virtual Disk Drive File Transfer System and Its Method | |
| CN119520932A (en) | Video processing method, device, equipment, storage medium and program product for progressive download | |
| CN120803387A (en) | Audio playing method, computer device and storage medium | |
| CN114615550A (en) | Video acquisition method and device | |
| CN118714086A (en) | Load balancing method, device, equipment and medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A201 | Request for examination | ||
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20061206 |
|
| PA0201 | Request for examination | ||
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20071029 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20080407 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20080421 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20080422 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20110404 Start annual number: 4 End annual number: 4 |
|
| PR1001 | Payment of annual fee |
Payment date: 20120402 Start annual number: 5 End annual number: 5 |
|
| FPAY | Annual fee payment |
Payment date: 20130403 Year of fee payment: 6 |
|
| PR1001 | Payment of annual fee |
Payment date: 20130403 Start annual number: 6 End annual number: 6 |
|
| FPAY | Annual fee payment |
Payment date: 20140411 Year of fee payment: 7 |
|
| PR1001 | Payment of annual fee |
Payment date: 20140411 Start annual number: 7 End annual number: 7 |
|
| FPAY | Annual fee payment |
Payment date: 20160408 Year of fee payment: 9 |
|
| PR1001 | Payment of annual fee |
Payment date: 20160408 Start annual number: 9 End annual number: 9 |
|
| FPAY | Annual fee payment |
Payment date: 20170404 Year of fee payment: 10 |
|
| PR1001 | Payment of annual fee |
Payment date: 20170404 Start annual number: 10 End annual number: 10 |
|
| FPAY | Annual fee payment |
Payment date: 20180403 Year of fee payment: 11 |
|
| PR1001 | Payment of annual fee |
Payment date: 20180403 Start annual number: 11 End annual number: 11 |
|
| FPAY | Annual fee payment |
Payment date: 20190401 Year of fee payment: 12 |
|
| PR1001 | Payment of annual fee |
Payment date: 20190401 Start annual number: 12 End annual number: 12 |
|
| PR1001 | Payment of annual fee |
Payment date: 20200330 Start annual number: 13 End annual number: 13 |
|
| PR1001 | Payment of annual fee |
Payment date: 20210401 Start annual number: 14 End annual number: 14 |
|
| PR1001 | Payment of annual fee |
Payment date: 20240321 Start annual number: 17 End annual number: 17 |
|
| PR1001 | Payment of annual fee |
Payment date: 20250319 Start annual number: 18 End annual number: 18 |