KR102310069B1 - Cloud streaming system and apparatus and method for not a web format data reference in the system - Google Patents

Cloud streaming system and apparatus and method for not a web format data reference in the system Download PDF

Info

Publication number
KR102310069B1
KR102310069B1 KR1020150076134A KR20150076134A KR102310069B1 KR 102310069 B1 KR102310069 B1 KR 102310069B1 KR 1020150076134 A KR1020150076134 A KR 1020150076134A KR 20150076134 A KR20150076134 A KR 20150076134A KR 102310069 B1 KR102310069 B1 KR 102310069B1
Authority
KR
South Korea
Prior art keywords
data
server
web
format
cloud streaming
Prior art date
Application number
KR1020150076134A
Other languages
Korean (ko)
Other versions
KR20160140048A (en
Inventor
김태원
Original Assignee
에스케이플래닛 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이플래닛 주식회사 filed Critical 에스케이플래닛 주식회사
Priority to KR1020150076134A priority Critical patent/KR102310069B1/en
Publication of KR20160140048A publication Critical patent/KR20160140048A/en
Application granted granted Critical
Publication of KR102310069B1 publication Critical patent/KR102310069B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • 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/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것으로, 클라우드 스트리밍 서버에서의 데이터 요청에 대하여 실시간으로 데이터를 제공하기 위하여, 데이터를 제공하는 네이티브 데이터 서버와 에이전트 서버가 일정 주기로 통신하여, 에이전트 서버는 네이티브 데이터 서버로부터 업데이트 된 데이터를 수신하여 실시간으로 압축 해제하고, 수신한 데이터의 형식이 웹 형식인지 여부를 확인하여 웹 형식이 아닌 경우, 웹 형식으로의 변환 처리를 수행하여 클라우드 스트리밍 서버의 요청에 실시간으로 제공할 수 있는 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것이다.The present invention relates to a cloud streaming system and an apparatus and method for referencing non-web data in the system, and a native data server that provides data to provide data in real time in response to a data request from a cloud streaming server The agent server communicates with the agent server at regular intervals, and the agent server receives the updated data from the native data server and decompresses it in real time. It relates to a cloud streaming system that can perform the conversion processing of the cloud streaming server to provide in real time to the request of the cloud streaming server, and an apparatus and method for data reference other than the web format in the system.

Description

클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법{CLOUD STREAMING SYSTEM AND APPARATUS AND METHOD FOR NOT A WEB FORMAT DATA REFERENCE IN THE SYSTEM}CLOUD STREAMING SYSTEM AND APPARATUS AND METHOD FOR NOT A WEB FORMAT DATA REFERENCE IN THE SYSTEM

본 발명은 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것으로, 클라우드 스트리밍 서버를 통해서 클라우드 스트리밍 서비스를 제공하는데 있어서, 웹 형식이 아닌 네이티브 형식의 데이터의 형식을 웹 형식으로 변환하여 클라우드 스트리밍 서버로 제공함으로써, 웹 형식이 아닌 데이터의 서비스도 가능하게 하기 위한 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것이다.The present invention relates to a cloud streaming system and an apparatus and method for data reference other than a web format in the system, and in providing a cloud streaming service through a cloud streaming server, By converting into a web format and providing it to a cloud streaming server, it relates to a cloud streaming system for enabling the service of data other than the web format, and an apparatus and method for referencing data other than the web format in the system.

이 부분에 기술된 내용은 단순히 본 실시 예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The content described in this section merely provides background information for the present embodiment and does not constitute the prior art.

컴퓨터 네트워크의 기술 발전에 따라, 각 단말의 독립적인 하드웨어 성능에 의존하던 기존의 컴퓨팅 환경은 네트워크 상의 모든 컴퓨팅 자원을 활용하여 단말의 요청에 따라 해당 서비스를 제공하는 클라우드 컴퓨팅(Cloud Computing)형태로 진화하고 있다.With the technological development of computer networks, the existing computing environment, which relied on the independent hardware performance of each terminal, has evolved into a form of cloud computing that utilizes all computing resources on the network to provide the corresponding service according to the request of the terminal. are doing

클라우드 컴퓨팅이란, 인터넷과 같은 정보 통신망을 통한 '컴퓨팅 자원의 온 디맨드 아웃소싱 서비스'라고 정의할 수 있다. 클라우드 컴퓨팅 환경에서, 서비스 제공자는 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자들에게 필요로 하는 서비스를 제공한다. 서비스 사용자는 어플리케이션(Application), 스토리지(Storage), 운영체제(OS), 보안(Security) 등의 컴퓨팅 자원을 각 사용자 소유의 단말에 설치하여 사용하는 것이 아니라, 가상화 기술을 통해 생성된 가상 공간상의 서비스를 원하는 시점에 원하는 만큼 골라서 사용한다. Cloud computing can be defined as an 'on-demand outsourcing service of computing resources' through an information communication network such as the Internet. In a cloud computing environment, service providers integrate data centers that are dispersed in several places with virtualization technology to provide users with the services they need. The service user does not install and use computing resources such as application, storage, operating system (OS), and security in each user's own terminal, but rather a service in a virtual space created through virtualization technology. Select and use as many times as you want at the desired time.

다시 말하면, 클라우드 컴퓨팅은 구름(cloud)과 같이 무형의 형태로 존재하는 하드웨어/소프트웨어 등의 컴퓨팅 자원을 자신이 필요한 만큼 빌려 쓰고 이에 대한 사용요금을 지급하는 방식의 컴퓨팅 서비스로, 서로 다른 물리적인 위치에 존재하는 컴퓨팅 자원을 가상화 기술로 통합해 제공하는 기술을 말한다.In other words, cloud computing is a computing service that borrows computing resources such as hardware/software that exist in an intangible form such as a cloud as needed and pays usage fees for them. It refers to a technology that integrates and provides computing resources existing in the virtualization technology.

이러한 클라우드 컴퓨팅에 따르면, 사용자는 네트워크 접속과 기본적인 연산 기능만을 수행하는 사용자의 단말을 통해 클라우드 망에 접속하여 대용량의 저장 장치와 고성능 컴퓨팅 리소스가 필요한 작업들을 수행하고, 다양한 서비스를 제공받을 수 있다.According to such cloud computing, a user can access a cloud network through a user's terminal that performs only network access and basic arithmetic functions, performs tasks requiring a large-capacity storage device and high-performance computing resources, and can receive various services.

클라우드 스트리밍 서비스는 이러한 클라우드 컴퓨팅 환경을 기반으로 한 서비스로서, 서버 자원을 활용하여 웹 어플리케이션 등의 컨텐츠를 서버측에서 실행한 후, 그 실행 화면을 GUI 화면으로 캡쳐 및 인코딩하여 실시간으로 단말로 전송하고, 단말 측에서는 입력 및 출력만 이루지도록 함으로써, 단말 사양에 관계없이 고성능 컴퓨팅 리소스가 요구되는 어플리케이션이나 컨텐츠를 사용자가 이용할 수 있도록 하는 것이다.The cloud streaming service is a service based on such a cloud computing environment. After executing content such as a web application by utilizing server resources on the server side, the execution screen is captured and encoded as a GUI screen and transmitted to the terminal in real time. , so that only input and output are made on the terminal side, so that users can use applications or contents requiring high-performance computing resources regardless of terminal specifications.

한편, 텔레비젼과 같은 디스플레이 장치에 연결되는 셋탑박스는 네트워크를 통해 IPTV 서버등으로부터 전송된 데이터를 원래의 영상 및 음성 신호로 복원하는데, 이러한 셋탑박스를 통해 보다 다양한 서비스를 제공하기 위해 상술한 클라우드 스트리밍 서비스가 적용되고 있다.On the other hand, a set-top box connected to a display device such as a TV restores data transmitted from an IPTV server through a network to original video and audio signals. In order to provide more diverse services through this set-top box, the above-described cloud streaming service is being applied.

그런데, IPTV 서버 등으로부터 제공되는 데이터는 웹 형식이 아닌 경우가 많은데, 상기 클라우드 스트리밍 서버는 웹 기반으로 구축되어 있어 기존의 IPTV 서버에서 제공하는 모든 데이터를 처리할 수 없는 문제가 있었다.However, in many cases, data provided from an IPTV server is not in a web format, and since the cloud streaming server is built on a web basis, there is a problem in that all data provided by the existing IPTV server cannot be processed.

한국공개특허 제 2011-0097190호, 2011년 08월 31일 공개 (명칭: 데이터 전송 방법 및 게이트웨이 서버)Korea Patent Publication No. 2011-0097190, published on August 31, 2011 (Title: Data transmission method and gateway server)

본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 특히 클라우드 스트리밍 서버가 웹 형식이 아닌 데이터를 처리할 수 있도록 에이전트 서버에서 네이티브 데이터 서버로부터 네이티브 데이터를 수신하여 웹 형식으로 변환한 후 웹 서버를 통해 클라우드 스트리밍 서버에 제공함으로써, 클라우드 스트리밍 서버가 웹 형식으로 변환된 데이터를 참조할 수 있도록 하는 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법을 제공하는 데 목적이 있다.The present invention has been proposed to solve the above-mentioned problems of the prior art. In particular, the agent server receives native data from a native data server and converts it into a web format so that the cloud streaming server can process data other than the web format. By providing to the cloud streaming server through the server, the cloud streaming server can refer to the data converted to the web format, and to provide a device and method for non-web data reference in the cloud streaming system and the system There is this.

특히, 본 발명은 에이전트 서버가 주기적으로 네이티브 데이터 서버를 확인하여 업데이트 파일 데이터를 수신하고, 수신한 데이터를 실시간으로 웹 형식으로 변환하여 웹 서버의 기 설정된 경로에 저장함으로써, 네이티브 데이터 서버로부터 제공받는 웹 형식이 아닌 데이터의 형식을 웹 형식으로 실시간 변환하여 웹 서버에 저장하고, 클라우드 스트리밍 서비스를 통해 사용자로 하여금 실시간으로 서비스를 제공받을 수 있도록 하는 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법을 제공하는 데 그 목적이 있다. In particular, according to the present invention, the agent server periodically checks the native data server to receive update file data, converts the received data into a web format in real time and stores it in a preset path of the web server, thereby receiving the data provided from the native data server. A cloud streaming system that converts non-web data into web format in real time, stores it in a web server, and enables users to receive services in real time through cloud streaming services and data that is not in web format in the system Its purpose is to provide an apparatus and method for reference.

그러나, 이러한 본 발명의 목적은 상기의 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.However, the object of the present invention is not limited to the above object, and other objects not mentioned will be clearly understood from the following description.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 클라우드 스트리밍 시스템은 네이티브 데이터 서버와 일정 주기로 통신하여, 상기 네이티브 데이터 서버에서 업데이트 된 데이터를 수신하고, 상기 데이터의 형식을 웹 형식으로 변환하여 웹 서버의 기 설정된 경로에 저장하는 에이전트 서버; 및 클라우드 스트리밍 서버로부터의 요청에 따라서, 기 설정된 경로에 저장된 데이터를 로딩하여 상기 클라우드 스트리밍 서버로 제공하는 웹 서버;를 포함하여 구성될 수 있다.A cloud streaming system according to an embodiment of the present invention for achieving the above object communicates with a native data server at a predetermined period, receives updated data from the native data server, and converts the data format into a web format to the agent server to store it in a preset path of the web server; And according to a request from the cloud streaming server, a web server that loads the data stored in a preset path and provides it to the cloud streaming server; may be configured to include.

이때, 상기 에이전트 서버는 상기 수신한 데이터를 압축 파일 형식으로 수신하여 실시간으로 압축 해제하는 것을 더 포함할 수 있다.In this case, the agent server may further include receiving the received data in a compressed file format and decompressing it in real time.

또한, 상기 에이전트 서버는 상기 수신한 데이터의 형식이 웹 형식인지 여부를 더 확인하여 웹 형식인 경우에는 상기 데이터의 형식을 유지하고, 상기 데이터의 형식이 웹 형식이 아닌 경우, 웹 형식으로 변환 처리할 수 있다.In addition, the agent server further checks whether the format of the received data is a web format, maintains the format of the data if it is a web format, and converts it to a web format if the format of the data is not a web format can do.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 에이전트 서버는 네이티브 데이터 서버와 통신하여 데이터를 송수신하는 통신 모듈; 상기 통신 모듈을 통해 일정 주기 마다 상기 네이티브 데이터 서버에서의 업데이트 된 데이터를 수신하고, 상기 수신한 데이터를 웹 형식으로 변환 처리하는 데이터 처리 모듈; 및 상기 통신모듈을 통해 상기 데이터를 웹 서버의 기 설정된 경로에 저장하는 데이터 전달 모듈; 을 포함하여 구성될 수 있다.An agent server according to an embodiment of the present invention for achieving the above object includes a communication module for transmitting and receiving data by communicating with a native data server; a data processing module for receiving updated data from the native data server at regular intervals through the communication module and converting the received data into a web format; and a data transfer module for storing the data in a preset path of the web server through the communication module. It may be composed of

이때, 상기 데이터 처리 모듈은 상기 데이터의 형식이 웹 형식인지 여부를 더 확인하여, 웹 형식인 경우에는 상기 데이터의 형식을 유지하고, 상기 데이터의 형식이 웹 형식이 아닌 경우, 웹 형식으로 변환 처리할 수 있다.At this time, the data processing module further checks whether the format of the data is a web format, maintains the format of the data in the case of a web format, and converts the data into a web format if the format of the data is not a web format can do.

여기서, 상기 데이터 처리 모듈은 상기 수신한 데이터를 웹 형식으로 변환 처리 할 때, 기 설정된 전송규약에 따라 실시간 변환할 수 있다.Here, when the data processing module converts the received data into a web format, the data processing module may perform real-time conversion according to a preset transmission protocol.

또한, 상기 데이터 처리 모듈은 상기 네이티브 데이터 서버로부터 압축 파일 형식의 데이터를 수신하여 실시간으로 압축을 해제하는 기능을 더 수행할 수 있다.In addition, the data processing module may further perform a function of receiving data in a compressed file format from the native data server and decompressing the data in real time.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 방법은 에이전트 서버가 네이티브 데이터 서버와 일정 주기로 통신하여 네이티브 데이터 서버 내에 업데이트 된 데이터가 있는지 확인하는 단계; 상기 에이전트 서버가 상기 네이티브 데이터 서버로부터 업데이트 된 데이터를 수신하는 단계; 상기 에이전트 서버가 상기 수신한 데이터의 형식을 확인하여 웹 형식인 경우 상기 데이터의 형식을 유지하고, 웹 형식이 아닌 경우, 상기 데이터의 형식을 웹 형식으로 변환하는 단계; 및 상기 에이전트 서버가 상기 웹 형식의 데이터를 웹 서버의 기 설정된 경로에 제공하는 단계;를 포함하여 구성될 수 있다.Cloud streaming service method according to an embodiment of the present invention for achieving the object as described above, the agent server communicating with the native data server at a predetermined period to check whether there is updated data in the native data server; receiving, by the agent server, updated data from the native data server; checking, by the agent server, the format of the received data, maintaining the format of the data if it is a web format, and converting the format of the data into a web format if it is not a web format; and providing, by the agent server, the data in the web format to a preset path of the web server.

이때, 상기 변환하는 단계에서, 상기 데이터가 압축 파일 형식의 데이터인 경우, 상기 데이터를 실시간으로 압축 해제하는 단계;를 더 포함할 수 있다.In this case, in the converting step, if the data is data in a compressed file format, decompressing the data in real time; may further include.

또한, 상기 변환하는 단계는, 상기 수신한 데이터를 기 설정된 전송규약에 따라 실시간 변환할 수 있다.In addition, the converting may include converting the received data in real time according to a preset transmission protocol.

본 발명의 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 의하면, 네이티브 데이터 서버로부터 제공되는 웹 형식이 아닌 네이티브 형식의 데이터를 에이전트 서버에서 웹 형식으로 실시간 변환하여 웹 서버에 저장하여 클라우드 스트리밍 서버와 통신할 수 있다.According to the cloud streaming system of the present invention and the device and method for data reference other than the web format in the system, the agent server converts the data in the native format, not the web format, provided from the native data server to the web format in real time. You can store it on the server and communicate with the cloud streaming server.

또한, 에이전트 서버가 네이티브 데이터 서버와 일정 주기로 통신하여 업데이트 된 데이터를 수신하고, 데이터를 웹 형식으로 변환 처리하여 웹 서버에 저장하고, 클라우드 스트리밍 서버와 통신함으로써, 클라이언트 장치에서의 요청에 대해 실시간 서비스를 제공할 수 있으며 데이터 요청 시, 미리 변환되어 저장된 데이터를 실시간으로 제공할 수 있다.In addition, the agent server communicates with the native data server at regular intervals to receive updated data, converts the data into web format and stores it in the web server, and communicates with the cloud streaming server to provide real-time service for requests from client devices. can be provided, and when data is requested, pre-converted and stored data can be provided in real time.

또한, 에이전트 서버에서 네이티브 데이터 서버로부터 수신한 데이터의 형식을 변환 처리를 수행하므로 클라이언트 장치는 복잡한 처리를 수행할 필요가 없으며 클라이언트 장치 사양에 관계없이 고성능 컴퓨팅 리소스가 요구되는 어플리케이션이나 컨텐츠를 이용할 수 있다.In addition, since the agent server converts the format of the data received from the native data server, the client device does not need to perform complex processing, and applications or contents requiring high-performance computing resources can be used regardless of the client device specifications. .

아울러, 상술한 효과 이외의 다양한 효과들이 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 수 있다.In addition, various effects other than the above-described effects may be directly or implicitly disclosed in the detailed description according to embodiments of the present invention to be described later.

도 1은 종래의 클라이언트 장치가 데이터를 참조하는 시스템의 일반적인 구성을 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 클라우드 스트리밍 시스템의 개략적인 구성을 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 에이전트 서버의 주요 구성을 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 에이전트 서버에서의 서비스 제공 방법을 보다 더 구체적으로 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시 예에 따른 웹 서버에서의 서비스 제공 방법을 보다 더 구체적으로 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 절차를 설명하기 위한 흐름도이다.
도 7~9는 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 방법을 보다 더 구체적으로 설명하기 위한 예시도이다.
도 10은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 제공을 위한 장치의 오퍼레이팅 환경을 나타낸 도면이다.
1 is a diagram showing a general configuration of a system in which a conventional client device refers to data.
2 is a view showing a schematic configuration of a cloud streaming system according to an embodiment of the present invention.
3 is a diagram showing the main configuration of an agent server according to an embodiment of the present invention.
4 is a flowchart for explaining in more detail a method of providing a service in an agent server according to an embodiment of the present invention.
5 is a flowchart for explaining in more detail a method of providing a service in a web server according to an embodiment of the present invention.
6 is a flowchart illustrating a cloud streaming service procedure according to an embodiment of the present invention.
7 to 9 are exemplary views for more specifically explaining a cloud streaming service method according to an embodiment of the present invention.
10 is a diagram illustrating an operating environment of an apparatus for providing a cloud streaming service according to an embodiment of the present invention.

본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다. In order to clarify the characteristics and advantages of the problem solving means of the present invention, the present invention will be described in more detail with reference to specific embodiments of the present invention shown in the accompanying drawings.

다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.However, detailed descriptions of well-known functions or configurations that may obscure the gist of the present invention in the following description and accompanying drawings will be omitted. Also, it should be noted that throughout the drawings, the same components are denoted by the same reference numerals as much as possible.

이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.The terms or words used in the following description and drawings should not be construed as being limited to conventional or dictionary meanings, and the inventor may appropriately define the concept of terms for describing his invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that there is. Therefore, the embodiments described in this specification and the configurations shown in the drawings are only the most preferred embodiment of the present invention, and do not represent all the technical ideas of the present invention, so at the time of the present application, various It should be understood that there may be equivalents and variations.

또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.In addition, terms including ordinal numbers such as first, second, etc. are used to describe various components, and are used only for the purpose of distinguishing one component from other components, and to limit the components. not used For example, without departing from the scope of the present invention, the second component may be referred to as the first component, and similarly, the first component may also be referred to as the second component.

더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.In addition, when an element is referred to as being “connected” or “connected” to another element, it means that it is logically or physically connected or can be connected. In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in the middle, and may be indirectly connected or connected.

또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In addition, the terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In addition, terms such as "comprises" or "have" described in this specification are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, but one or the It should be understood that the above does not preclude the possibility of the existence or addition of other features or numbers, steps, operations, components, parts, or combinations thereof.

아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.In addition, embodiments within the scope of the present invention include computer-readable media having or carrying computer-executable instructions or data structures stored in the computer-readable media. Such computer readable media can be any available media that can be accessed by a general purpose or special purpose computer system. By way of example, such computer-readable media may be in the form of RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage, or computer-executable instructions, computer-readable instructions, or data structures. It may include, but is not limited to, a physical storage medium such as any other medium that can be used to store or convey any program code means in .

컴퓨터 판독가능 명령어는, 예를 들면, 범용 컴퓨터 시스템 또는 특수 목적 컴퓨터 시스템이 특정 기능 또는 기능의 그룹을 수행하도록 하는 명령어 및 데이터를 포함한다. 컴퓨터 실행가능 명령어는, 예를 들면, 어셈블리어, 또는 심지어는 소스코드와 같은 이진, 중간 포맷 명령어일 수 있다.Computer readable instructions include, for example, instructions and data that cause a general purpose computer system or special purpose computer system to perform a particular function or group of functions. The computer executable instructions may be, for example, binary, intermediate format instructions such as assembly language, or even source code.

아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서 실시될 수 있다. 본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다.Furthermore, the present invention relates to personal computers, laptop computers, handheld devices, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, mobile telephones, PDAs, pagers. It may be implemented in a network computing environment having various types of computer system configurations, including (pager) and the like. The invention may also be practiced in distributed system environments where both local and remote computer systems linked through a network by a wired data link, a wireless data link, or a combination of wired and wireless data links perform tasks. In a distributed system environment, program modules may be located in local and remote memory storage devices.

설명에 앞서, 본 발명은 웹 형식이 아닌 데이터를 웹 형식으로 변환함으로써 웹 서버를 통해 클라우드 스트리밍 서버로 데이터를 제공할 수 있도록 하는 클라우드 스트리밍 서비스에 관한 것이다. 이러한 본 발명의 명세서에서 기술하는 데이터는 UI(User Interface)에 대한 웹 어플리케이션, 실시간 방송, VOD 서비스, 게임 서비스 등 다양한 형태의 컨텐츠 데이터를 포함할 수 있으며, 복수의 데이터의 집합을 의미할 수도 있다. Prior to the description, the present invention relates to a cloud streaming service that enables data to be provided to a cloud streaming server through a web server by converting non-web data into a web format. The data described in the specification of the present invention may include various types of content data such as a web application for a user interface (UI), real-time broadcasting, VOD service, and game service, and may mean a set of a plurality of data. .

아울러, 이하에서 셋탑박스와 같은 사용자 측 장치를 클라이언트 장치로 통칭하고, IPTV 서버와 같이 기존의 셋탑박스 등에 컨텐츠를 제공하는 서버를 네이티브 데이터 서버라 통칭하여 설명한다.In addition, hereinafter, a user-side device such as a set-top box will be collectively referred to as a client device, and a server that provides content to an existing set-top box, such as an IPTV server, will be collectively referred to as a native data server.

이제, 본 발명의 실시 예에 따른 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 대하여 도면을 참조하여 상세하게 설명하도록 한다.Now, the cloud streaming system according to an embodiment of the present invention and the apparatus and method for data reference other than the web format in the system will be described in detail with reference to the drawings.

도 1은 일반적인 컨텐츠 서비스 시스템의 구성을 나타낸 도면이다.1 is a diagram showing the configuration of a general content service system.

도 1을 참조하면, 기존의 컨텐츠 서비스 시스템은 복수의 클라이언트 장치(100), 컨텐츠 데이터를 제공하는 네이티브 데이터 서버(200) 및 통신망(600)을 포함하여 구성될 수 있다.Referring to FIG. 1 , an existing content service system may include a plurality of client devices 100 , a native data server 200 providing content data, and a communication network 600 .

일반적인 클라이언트 장치(100)는 컨텐츠를 제공하는 네이티브 데이터 서버(200)와 통신망(600)을 통해 통신하여 컨텐츠 데이터를 요청하고, 수신할 수 있다.A typical client device 100 may request and receive content data by communicating with the native data server 200 that provides content through the communication network 600 .

각 구성요소에 대해 개략적으로 설명하면, 먼저 일반적인 클라이언트 장치(100)는 사용자의 조작에 따라 통신망(600)을 경유하여 각종 데이터를 송수신할 수 있는 사용자의 장치를 의미한다.Briefly describing each component, first, a general client device 100 refers to a user's device capable of transmitting and receiving various data via the communication network 600 according to a user's manipulation.

이러한 클라이언트 장치(100)는 통신망(600)을 통해 네이티브 데이터 서버(200)가 제공하는 다양한 컨텐츠 데이터를 수신하고, 사용자의 입력을 네이티브 데이터 서버(200)로 전송할 수 있다.The client device 100 may receive various content data provided by the native data server 200 through the communication network 600 , and transmit a user's input to the native data server 200 .

특히, 클라이언트 장치(100)는 통신망(600)을 거쳐 네이티브 데이터 서버(200)로부터 상기 네이티브 데이터 서버(200)가 제공하는 다수의 데이터를 수신함으로써, 클라이언트 장치(100)의 사용자는 해당 데이터를 이용할 수 있게 된다.In particular, the client device 100 receives a plurality of data provided by the native data server 200 from the native data server 200 via the communication network 600 , so that the user of the client device 100 can use the data. be able to

이러한 클라이언트 장치(100)는 특정 시간에 네이티브 데이터 서버(200)로부터 데이터를 수신하고, 사용자로부터 특정 데이터에 대한 요청을 입력 받으면, 특정 데이터에 대한 수신한 네이티브 형식의 데이터를 적절히 변환하여 영상 출력 장치(도시생략)로 표시할 수 있다.When the client device 100 receives data from the native data server 200 at a specific time and receives a request for specific data from a user, the client device 100 appropriately converts the received native format data for the specific data to an image output device. (not shown) can be indicated.

예를 들어, IPTV 서비스 시스템의 경우, 상기 클라이언트 장치(100)는 셋탑박스이고, 상기 네이티브 데이터 서버(200)는 IPTV 서비스 서버가 될 수 있다.For example, in the case of an IPTV service system, the client device 100 may be a set-top box, and the native data server 200 may be an IPTV service server.

본 발명은 이러한 컨텐츠 서비스 시스템에 있어서, 클라우드 스트리밍 서비스를 적용하고자 한 것이다.The present invention intends to apply a cloud streaming service in such a content service system.

도 2는 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 시스템의 개략적인 구성을 나타낸 도면이다.2 is a diagram showing a schematic configuration of a cloud streaming service system according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 실시 예에 따른 클라우드 스트리밍 시스템은, 복수의 클라이언트 장치(100), 컨텐츠 데이터를 제공하는 네이티브 데이터 서버(200), 화면 가상화 방식의 클라우드 스트리밍 서비스 제공을 지원하는 클라우드 스트리밍 서버(300), 웹 서버(400), 네이티브 데이터 서버로부터 컨텐츠 데이터를 수신하여 데이터의 형식을 웹 형식으로 변환하는 에이전트 서버(500)를 포함하여 구성될 수 있다.Referring to FIG. 2 , the cloud streaming system according to an embodiment of the present invention includes a plurality of client devices 100 , a native data server 200 that provides content data, and a cloud that supports the screen virtualization method of providing a cloud streaming service. The streaming server 300 , the web server 400 , may be configured to include an agent server 500 that receives content data from a native data server and converts the format of the data into a web format.

그리고, 클라이언트 장치(100) 및 클라우드 스트리밍 서버(300) 간의 정보의 송수신을 지원하는 통신망(600)을 포함하여 구성될 수 있다.And, it may be configured to include a communication network 600 that supports transmission and reception of information between the client device 100 and the cloud streaming server 300 .

각 구성요소에 대해 개략적으로 설명하면, 먼저, 본 발명의 클라이언트 장치(100)는 사용자의 조작에 따라 통신망(600)을 경유하여 각종 데이터를 송수신할 수 있는 사용자의 장치를 의미하며, 통신망(600)을 통해 데이터 통신을 수행할 수 있으며, 클라우드 스트리밍 서버(300)에 접근하여 클라우드 스트리밍 서비스 방식으로 클라우드 스트리밍 서버(300)가 제공하는 다양한 정보를 수신하고, 사용자의 입력을 클라우드 스트리밍 서버(300)로 전송할 수 있다. Briefly describing each component, first, the client device 100 of the present invention means a user's device capable of transmitting and receiving various data via the communication network 600 according to the user's operation, and the communication network 600 ) can perform data communication, access the cloud streaming server 300 to receive various information provided by the cloud streaming server 300 in a cloud streaming service method, and input the user's input to the cloud streaming server 300 can be sent to

이를 위한 본 발명의 클라이언트 장치(100)는 정보의 송수신을 위한 브라우저, 프로그램 및 프로토콜을 저장하는 메모리, 각종 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비할 수 있다.For this, the client device 100 of the present invention may include a browser for transmitting and receiving information, a memory for storing programs and protocols, and a microprocessor for executing and controlling various programs.

특히, 본 발명의 실시 예에 따른 클라이언트 장치(100)는 통신망(600)을 거쳐 클라우드 스트리밍 서버(300)에 접속하여 상기 클라우드 스트리밍 서버(300)가 제공하는 다수의 데이터 중 특정 데이터의 실행을 요청하고, 클라우드 스트리밍 서버(300)로부터 데이터 실행에 따른 결과 정보를 스트리밍 방식으로 수신함으로써, 클라이언트 장치(100)의 사용자는 해당 데이터를 이용할 수 있게 된다. In particular, the client device 100 according to an embodiment of the present invention accesses the cloud streaming server 300 via the communication network 600 and requests execution of specific data among a plurality of data provided by the cloud streaming server 300 . And, by receiving the result information according to the data execution from the cloud streaming server 300 in a streaming manner, the user of the client device 100 can use the corresponding data.

이때, 실제 데이터의 실행은 클라이언트 장치(100)의 원격지에 위치하는 클라우드 스트리밍 서버(300)에서 실행되는 것이나, 클라이언트 장치(100)의 사용자는 자신의 클라이언트 장치(100)에서 해당 데이터가 실행되는 것과 똑같이 컨텐츠 데이터를 이용할 수 있게 된다. At this time, the execution of the actual data is executed in the cloud streaming server 300 located at a remote location of the client device 100 , but the user of the client device 100 executes the corresponding data in their client device 100 . In the same way, content data can be used.

이때의 데이터는 예컨대 메뉴 어플리케이션과 같은 UI어플리케이션을 포함하는 개념이 될 수 있다.In this case, the data may be a concept including a UI application such as a menu application.

이러한 본 발명의 클라이언트 장치(100)는 기본적으로 인코딩된 스트리밍 데이터를 수신하여 디코딩하는 기능을 구비할 수 있으며, 여기에 더하여 디코딩된 비디오 데이터를 랜더링하여 출력하는 기능을 포함할 수 있다.The client device 100 of the present invention may basically have a function of receiving and decoding encoded streaming data, and may include a function of rendering and outputting the decoded video data in addition thereto.

이러한 본 발명의 실시 예에 따른 클라이언트 장치(100)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 클라이언트 장치(100)는 셋탑박스는 물론 스마트 폰(smart phone), 타블렛 PC(Tablet PC), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), MP3 Player 등의 이동 단말기, 스마트 TV(Smart TV), 데스크탑 컴퓨터 등과 같은 고정 단말기가 사용될 수도 있다.The client device 100 according to an embodiment of the present invention may be implemented in various forms. For example, the client device 100 described herein is a set-top box as well as a smart phone, a tablet PC, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, etc. A fixed terminal such as a mobile terminal of a mobile terminal, a smart TV, or a desktop computer may be used.

또한, 본 발명의 실시 예에 따른 클라이언트 장치(100)는 디스플레이 기능을 보유한 장치와, 디스플레이 기능을 보유하지 않은 장치로 구분될 수 있으며, 상기 디스플레이 기능을 보유하지 않은 장치는, TV, 모니터, 프로젝터와 같은 다른 영상 출력 장치(도시생략)과 연결되어, 상기 영상 출력 장치로 데이터를 전송함으로써, 상기 영상 출력 장치를 통해서 클라우드 스트리밍 서버(300)로부터 스트리밍 방식으로 수신한 데이터를 재생하여 출력할 수 있다.In addition, the client device 100 according to an embodiment of the present invention may be divided into a device having a display function and a device not having a display function, and the device not having a display function is a TV, a monitor, and a projector. By being connected to another image output device (not shown) such as , and transmitting data to the image output device, data received in a streaming manner from the cloud streaming server 300 through the image output device can be reproduced and output. .

이러한 본 발명의 클라이언트 장치(100)는 디지털 기기의 컨버전스(convergence) 추세에 따라 휴대 기기의 변형이 매우 다양하여 모두 열거할 수는 없으나, 상기 언급된 유닛들과 동등한 수준의 유닛이 본 발명에 따른 클라이언트 장치(100)로 사용될 수 있으며, 통신망(600)을 통해 클라우드 스트리밍 서버(300)와 정보를 송수신하면, 클라우드 스트리밍 서버(300)로부터 스트리밍 방식으로 전달되는 인코딩 데이터를 디코딩하여 재생할 수 있는 장치라면, 그 어떠한 장치도 본 발명의 실시 예에 따른 클라이언트 장치(100)로 이용될 수 있다.The client device 100 of the present invention can not be enumerated all because there are many variations of the mobile device according to the convergence trend of digital devices. It can be used as the client device 100, and when transmitting and receiving information with the cloud streaming server 300 through the communication network 600, if it is a device capable of decoding and playing the encoding data transmitted in a streaming manner from the cloud streaming server 300 , any device may be used as the client device 100 according to an embodiment of the present invention.

클라우드 스트리밍 서버(300)는 본 발명의 클라우드 스트리밍 서비스를 제공하는 구성으로, 화면 가상화 기능을 통해 클라이언트 장치(100)에서 요청된 서비스 혹은 기능을 클라이언트 장치(100)로 제공하는 역할을 수행한다. The cloud streaming server 300 is configured to provide the cloud streaming service of the present invention, and serves to provide a service or function requested by the client device 100 to the client device 100 through a screen virtualization function.

여기서, 화면 가상화는 클라이언트 장치(100)에서 실행된 것과 같이 특정 데이터의 실행 화면을 통신망(600)을 통해 연결된 서버 측, 즉, 클라우드 스트리밍 서버(300)에서 구현하여 클라이언트 장치(100)로 제공하는 것을 의미한다. Here, the screen virtualization implements the execution screen of specific data as executed in the client device 100 on the server side connected through the communication network 600, that is, the cloud streaming server 300, and provides it to the client device 100. means that

이를 위하여, 상기 클라우드 스트리밍 서버(300)는 자신이 보유하거나 이용 가능한 다양한 데이터, 예컨대, UI 어플리케이션, 게임 어플리케이션 등 다양한 데이터를 실행하고, 그 실행 화면을 브라우저 단위로 캡쳐하여 캡쳐 이미지를 생성한 후, 이를 인코딩하여 스트리밍 방식으로 클라이언트 장치(100)로 전송한다. To this end, the cloud streaming server 300 executes various data possessed or available to it, for example, UI application, game application, etc., and captures the execution screen in a browser unit to generate a captured image, It is encoded and transmitted to the client device 100 in a streaming manner.

이때, 상기 클라우드 스트리밍 서버(300)는 상기 데이터를 클라이언트 장치(100)로부터 전송되는 사용자 입력에 따라서 구동시키며, 변경된 실행 화면을 상기 스트리밍 방식으로 클라이언트 장치(100)로 전송함으로써, 클라이언트 장치(100)의 사용자는 자신의 클라이언트 장치(100)에서 직접 데이터를 실행하는 것과 동일한 사용자 경험을 제공받을 수 있다. At this time, the cloud streaming server 300 drives the data according to the user input transmitted from the client device 100, and transmits the changed execution screen to the client device 100 in the streaming manner, so that the client device 100 A user of may be provided with the same user experience as directly executing data in his/her client device 100 .

특히, 본 발명의 실시 예에 따른 클라우드 스트리밍 서버(300)는 클라이언트 장치(100)로부터 특정 데이터의 요청이 수신되면, 웹 서버(400)로 데이터 요청을 전송한다. In particular, when a request for specific data is received from the client device 100 , the cloud streaming server 300 according to an embodiment of the present invention transmits a data request to the web server 400 .

그리고, 웹 서버(400)로부터 해당 데이터를 전달 받아 이를 스트리밍 방식으로 클라이언트 장치(100)로 전달하는 과정 전반을 제어할 수 있다.In addition, it is possible to control the overall process of receiving the corresponding data from the web server 400 and delivering it to the client device 100 in a streaming manner.

여기서 웹 서버(400)는 네이티브 데이터 서버(200)로부터 데이터를 제공받는 에이전트 서버(500)의 접근을 제어하고 클라우드 스트리밍 서버(300)로 다양한 데이터를 제공할 수 있는 것으로, 특히 다수의 웹 페이지의 집합인 웹 어플리케이션을 제공할 수 있는 웹 어플리케이션 서버(WAS; Web Application Server)를 의미할 수 있다. Here, the web server 400 controls the access of the agent server 500 receiving data from the native data server 200 and can provide various data to the cloud streaming server 300, in particular, of a plurality of web pages. It may mean a web application server (WAS; Web Application Server) capable of providing a set of web applications.

이러한 웹 서버(400)는 예컨대, IPTV Head-End system 또는 케이블 TV의 QAM Transmitter 등이 될 수 있으며, 이때 웹 서버(400)에 클라우드 스트리밍 서버(300)가 연결되는 경우, 웹 서버(400)는 클라우드 스트리밍 서버(300)로 데이터를 전달하여 클라우드 스트리밍 서버(300)에 의해 자신이 제공하는 데이터의 클라우드 스트리밍 서비스를 지원할 수 있다. Such a web server 400 may be, for example, an IPTV Head-End system or a QAM Transmitter of a cable TV, and in this case, when the cloud streaming server 300 is connected to the web server 400, the web server 400 is By delivering data to the cloud streaming server 300 , it is possible to support the cloud streaming service of the data provided by the cloud streaming server 300 .

이때, 웹 서버(400)와 클라우드 스트리밍 서버(300)는 웹 기반의 웹 형식의 데이터만을 송수신할 수 있으며, 본 발명의 실시 예에 따른 웹 형식은 JSON(Javascript Object Notation)을 대표적으로 사용하지만 JSON 외에 HTML(Hypertext Markup Language), XHTML(eXtensible Hypertext Markup Language), XML(eXtensible Markup Language), HTTP(Hyper Text Transfer Protocol) 등을 포함할 수 있다.At this time, the web server 400 and the cloud streaming server 300 can transmit and receive only web-based data in a web format, and the web format according to an embodiment of the present invention typically uses JSON (Javascript Object Notation), but JSON In addition, it may include Hypertext Markup Language (HTML), eXtensible Hypertext Markup Language (XHTML), eXtensible Markup Language (XML), Hyper Text Transfer Protocol (HTTP), and the like.

본 발명의 실시 예에 따른 웹 형식은 대표적으로 JSON 형식으로 사용될 수 있으며, 상기 JSON은 인터넷에서 자료를 주고 받을 때, 그 자료를 표현하는 방식 중 하나이다.The web format according to an embodiment of the present invention may be typically used in a JSON format, and the JSON is one of the methods of expressing the data when exchanging data on the Internet.

그리고, 웹 기반 데이터 전송은 HTTP 규약을 기반으로 이루어질 수 있으며, 이는 웹 상에서 정보를 주고받기 위해 TCP와 UDP통신 규약을 사용하며 어플리케이션 레벨과 연결을 하기 위해 80포트를 사용한다. HTTP는 클라이언트와 서버 사이에 요청과 응답방식으로 데이터를 주고 받는 방식이므로 사용자가 웹 브라우저를 통해 그림이나 링크를 클릭할 경우 웹 브라우저가 HTTP를 통하여 서버로 요청을 보내며, 서버는 해당 요청에 해당하는 응답을 HTTP규약을 통해 사용자에게 전달한다. And, web-based data transmission can be made based on the HTTP protocol, which uses TCP and UDP communication protocols to exchange information on the web, and uses port 80 to connect to the application level. Since HTTP is a method of exchanging data between a client and a server in a request and response method, when a user clicks a picture or link through a web browser, the web browser sends a request to the server through HTTP, and the server responds to the request. The response is delivered to the user through the HTTP protocol.

본 발명의 실시 예에 따르면, 클라이언트 장치(100)에서의 사용자 요청에 따라서 클라우드 스트리밍 서버(300)는 해당 요청에 해당하는 응답, 즉 해당 데이터를 웹 서버로 요청하여 수신하고 HTTP 규약을 통해 클라이언트 장치(100)로 제공할 수 있다.According to an embodiment of the present invention, according to a user request from the client device 100, the cloud streaming server 300 requests and receives a response corresponding to the request, that is, the corresponding data to the web server, and receives the request from the client device through the HTTP protocol. (100) can be provided.

본 발명의 실시 예에 따른 네이티브 데이터 서버(200)는 웹 서버(400) 및 에이전트 서버(500)를 통해 클라이언트 장치(100)로 특정 데이터를 제공하는 장치를 의미한다. 예컨대, VOD 컨텐츠 등을 제공하는 장치가 될 수 있다. The native data server 200 according to an embodiment of the present invention refers to a device that provides specific data to the client device 100 through the web server 400 and the agent server 500 . For example, it may be a device that provides VOD content and the like.

이때, 네이티브 데이터 서버(200)에서 제공하는 컨텐츠는 웹 형식을 따르는 데이터와, 웹 형식에 어긋난 형식을 갖는 데이터를 가질 수 있다.In this case, the content provided by the native data server 200 may have data conforming to the web format and data having a format incompatible with the web format.

이때, 웹 형식을 따르는 데이터의 경우에는 네이티브 데이터 서버(200)가 웹 서버(400) 및 클라우드 스트리밍 서버(300)를 통해 클라이언트 장치(100)로 데이터를 제공하는 것에 문제가 없다. 따라서, 웹 형식을 따르는 데이터의 경우에는 특별한 변환 과정을 거치지 않고 압축 파일 해제 후 클라이언트 장치(100)로 제공될 수 있다.At this time, in the case of data conforming to the web format, there is no problem in that the native data server 200 provides data to the client device 100 through the web server 400 and the cloud streaming server 300 . Accordingly, in the case of data conforming to the web format, the compressed file may be decompressed and provided to the client device 100 without a special conversion process.

그러나, 이러한 네이티브 데이터 서버(200)가 제공하는 웹 형식이 아닌 네이티브 형식의 데이터는 웹 서버를 통해 클라우드 스트리밍 서버(300) 및 클라이언트 장치(100)에 제공하기 어렵다.However, it is difficult to provide data in a native format other than the web format provided by the native data server 200 to the cloud streaming server 300 and the client device 100 through the web server.

따라서, 에이전트 서버(500)는 네이티브 데이터 서버(200)로부터 제공되는 네이티브 형식의 데이터가 웹 형식이 아니라고 판단되면, 데이터의 형식을 웹 형식으로 변환 처리하는 작업을 수행할 수 있다.Accordingly, when it is determined that the data in the native format provided from the native data server 200 is not in the web format, the agent server 500 may perform a process of converting the data format into a web format.

이러한 에이전트 서버(500)는 네이티브 데이터 서버(200)에 일정 주기로 업데이트 된 데이터를 확인하여 수신하고, 업데이트 된 데이터를 실시간으로 웹 형식으로 변환하여 웹 서버의 기 설정된 경로에 저장할 수 있다.The agent server 500 may check and receive data updated at a certain period in the native data server 200, convert the updated data into a web format in real time, and store it in a preset path of the web server.

이때, 업데이트 된 데이터를 수신하여 실시간으로 압축 해제를 더 수행할 수 있다.In this case, the updated data may be received and decompression may be further performed in real time.

상기 에이전트 서버(500)가 웹 서버(400)로 저장한 업데이트 된 데이터를 기반으로, 클라우드 스트리밍 서버(300)는 웹 서버(400)의 데이터를 참조하여 클라이언트 장치(100)로 제공할 수 있다.Based on the updated data stored by the agent server 500 as the web server 400 , the cloud streaming server 300 may provide the data to the client device 100 with reference to the data of the web server 400 .

보다 구체적인 클라우드 스트리밍 시스템을 구성하는 각 장치의 구조에 대해서는 후술하도록 하며, 본 발명의 실시 예에 따른 클라우드 스트리밍 서버(300)는 웹 서버(400), 에이전트 서버(500)를 통해 네이티브 데이터 서버(200)와 연동하여 클라이언트 장치(100)로 클라우드 스트리밍 서비스를 제공할 수 있다.The structure of each device constituting a more specific cloud streaming system will be described later, and the cloud streaming server 300 according to an embodiment of the present invention is a web server 400 and a native data server 200 through the agent server 500 . ) and may provide a cloud streaming service to the client device 100 .

이러한 네이티브 데이터 서버(200), 클라우드 스트리밍 서버(300), 웹 서버(400) 및 에이전트 서버(500)는 서로 다른 주체에 의해 운용될 수 있으며, 동일한 주체에 의해 운용될 수도 있다These native data server 200, cloud streaming server 300, web server 400, and agent server 500 may be operated by different subjects, and may be operated by the same subject.

상술한 바와 같은 본 발명의 웹 서버(400) 및 에이전트 서버(500)의 주요 구성 및 보다 구체적인 동작 방법에 대해서는 후술하여 설명하도록 하며, 본 발명의 실시 예에 따른 클라이언트 장치(100) 및 클라우드 스트리밍 서버(300)에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. The main configuration and more specific operation method of the web server 400 and the agent server 500 of the present invention as described above will be described later, and the client device 100 and the cloud streaming server according to an embodiment of the present invention A processor mounted on 300 may process program instructions for executing the method according to the present invention.

일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현 예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. In one implementation, the processor may be a single-threaded processor, and in another implementation, the processor may be a multi-threaded processor.

나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.Furthermore, the processor may process instructions stored in a memory or a storage device.

아울러, 본 발명의 실시 예에 따른 통신망(600)은 WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access) 등의 무선 통신 방식을 이용하는 것이 바람직하나, 이에 한정되는 것은 아니며, 시스템 구현 방식에 따라 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 이용할 수도 있다.In addition, the communication network 600 according to an embodiment of the present invention is a wireless communication method such as WLAN (Wireless LAN), Wi-Fi, Wibro, Wimax, HSDPA (High Speed Downlink Packet Access), etc. It is preferable to use, but is not limited thereto, and depending on the system implementation method, Ethernet, xDSL (ADSL, VDSL), HFC (Hybrid Fiber Coaxial Cable), FTTC (Fiber to The Curb), FTTH (Fiber To The Home), etc., may be used in a wired communication method.

아울러, 본 발명의 통신망(600)은 예컨대, 다수의 접속망(도시생략) 및 코어망(도시생략)을 포함하며, 외부망, 예컨대 인터넷망(도시생략)을 포함하여 구성될 수 있다. In addition, the communication network 600 of the present invention includes, for example, a plurality of access networks (not shown) and a core network (not shown), and may be configured to include an external network, for example, an Internet network (not shown).

여기서, 접속망(도시생략)은 클라이언트 장치(100)와 유무선 통신을 수행하는 접속망으로서, 예를 들어, BS(Base Station), BTS(Base Transceiver Station), NodeB, eNodeB 등과 같은 다수의 기지국과, BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기로 구현될 수 있다. 또한, 전술한 바와 같이, 상기 기지국에 일체로 구현되어 있던 디지털 신호 처리부와 무선 신호 처리부를 각각 디지털 유니트(Digital Unit, 이하 DU라 함과 무선 유니트(Radio Unit, 이하 RU라 함)으로 구분하여, 다수의 영역에 각각 다수의 RU(도시생략)를 설치하고, 다수의 RU(도시생략)를 집중화된 DU(도시생략)와 연결하여 구성할 수도 있다.Here, the access network (not shown) is an access network for performing wired/wireless communication with the client device 100, for example, a plurality of base stations such as BS (Base Station), BTS (Base Transceiver Station), NodeB, eNodeB, and the like, and BSC. (Base Station Controller), may be implemented as a base station controller such as RNC (Radio Network Controller). In addition, as described above, the digital signal processing unit and the wireless signal processing unit that were integrally implemented in the base station are divided into digital units (Digital Unit, hereinafter referred to as DU and radio unit, hereinafter referred to as RU), respectively, A plurality of RUs (not shown) may be installed in a plurality of areas, respectively, and a plurality of RUs (not shown) may be connected to a centralized DU (not shown).

또한, 접속망(도시생략)과 함께 모바일 망을 구성하는 코어망(도시생략)은 접속망(도시생략)과 외부 망, 예컨대, 인터넷망(도시생략)을 연결하는 역할을 수행한다.In addition, the core network (not shown) constituting the mobile network together with the access network (not shown) serves to connect the access network (not shown) and an external network, for example, the Internet network (not shown).

이러한 코어망(도시생략)은 앞서 설명한 바와 같이, 접속망(도시생략) 간의 이동성 제어 및 스위칭 등의 이동통신 서비스를 위한 주요 기능을 수행하는 네트워크 시스템으로서, 서킷 교환(circuit switching) 또는 패킷 교환(packet switching)을 수행하며, 모바일 망 내에서의 패킷 흐름을 관리 및 제어한다. 또한, 코어망(도시생략)은 주파수간 이동성을 관리하고, 접속망(도시생략) 및 코어망(도시생략) 내의 트래픽 및 다른 네트워크, 예컨대 인터넷망(도시생략)과의 연동을 위한 역할을 수행할 수도 있다. As described above, the core network (not shown) is a network system that performs a main function for a mobile communication service such as mobility control and switching between access networks (not shown), and performs circuit switching or packet switching. switching), and manages and controls packet flow in the mobile network. In addition, the core network (not shown) manages inter-frequency mobility, and performs a role for interworking with traffic in the access network (not shown) and the core network (not shown) and other networks, such as the Internet network (not shown). may be

이러한 코어망(도시생략)은 SGW(Serving GateWay), PGW(PDN GateWay), MSC(Mobile Switching Center), HLR(Home Location Register), MME(Mobile Mobility Entity)와 HSS(Home Subscriber Server) 등을 더 포함하여 구성될 수도 있다.These core networks (not shown) include SGW (Serving GateWay), PGW (PDN GateWay), MSC (Mobile Switching Center), HLR (Home Location Register), MME (Mobile Mobility Entity), and HSS (Home Subscriber Server). It may consist of including.

또한, 인터넷망(도시생략)은 TCP/IP 프로토콜에 따라서 정보가 교환되는 통상의 공개된 통신망, 즉 공용망을 의미하는 것으로, 클라우드 스트리밍 서버(300)과 연결되며, 클라우드 스트리밍 서버(300)로부터 제공되는 정보를 코어망(도시생략) 및 접속망(도시생략)을 거쳐 클라이언트 장치(100)로 제공할 수 있으며, 클라이언트 장치(100)로부터 제공되는 정보를 접속망(도시생략) 및 코어망(도시생략)을 거쳐 클라우드 스트리밍 서버(300)으로 제공할 수도 있다. 그러나, 이에 한정되는 것은 아니며, 클라우드 스트리밍 서버(300)은 코어망(도시생략)과 일체로 구현될 수도 있다. In addition, the Internet network (not shown) refers to a common open communication network, that is, a public network, through which information is exchanged according to the TCP/IP protocol, and is connected to the cloud streaming server 300 and from the cloud streaming server 300 . The provided information may be provided to the client device 100 through a core network (not shown) and an access network (not shown), and information provided from the client device 100 may be transferred to an access network (not shown) and a core network (not shown). ) through the cloud streaming server 300 may be provided. However, it is not limited thereto, and the cloud streaming server 300 may be implemented integrally with the core network (not shown).

또한, 상술한 통신 방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.In addition, in addition to the above-described communication methods, other well-known or future-developed communication methods may be included.

이하, 본 발명의 실시 예에 따른 에이전트 서버(500)의 주요 구성 및 동작 방법에 대하여 설명하도록 한다.Hereinafter, the main configuration and operation method of the agent server 500 according to an embodiment of the present invention will be described.

도 3은 본 발명의 실시 예에 따른 에이전트 서버의 주요 구성을 나타낸 도면이다.3 is a diagram showing the main configuration of an agent server according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시 예에 따른 에이전트 서버(500)는 통신 모듈(510), 데이터 처리 모듈(520), 데이터 전달 모듈(530)을 포함하여 구성될 수 있다.Referring to FIG. 3 , the agent server 500 according to an embodiment of the present invention may be configured to include a communication module 510 , a data processing module 520 , and a data delivery module 530 .

본 발명의 실시 예에 따른 각 구성은 모듈을 포함하여 구성될 수 있는데, 여기서, ‘모듈’은 각각 소정의 기능을 수행하는 구성 요소로서, 하드웨어, 소프트웨어, 혹은 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 예를 들어, 상기 ‘모듈’은 프로그램 모듈을 의미할 수 있으며, 이는 프로세서(Processor)에 의해 실행되어 소정의 기능을 수행하는, 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 또한, 구성요소들과 '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~모듈'들로 결합되거나 추가적인 구성요소들과 '~모듈'들로 더 분리될 수 있다.Each component according to an embodiment of the present invention may be configured to include a module, where 'module' is a component that each performs a predetermined function, and may be implemented as hardware, software, or a combination of hardware and software. have. For example, the 'module' may mean a program module, which is executed by a processor to perform a predetermined function, including software components, object-oriented software components, class components, and Components such as task components, processes, functions, properties, procedures, subroutines, segments of program code, drivers, data, databases, data structures, tables, arrays , and variables. In addition, the functions provided in the components and '~modules' may be combined into a smaller number of components and '~modules' or may be further separated into additional components and '~modules'.

이하, 본 발명의 각 구성을 보다 구체적으로 설명하면, 먼저, 통신 모듈(510)은 네이티브 데이터 서버(200)와의 통신을 위한 것으로, 본 발명의 실시 예에 따른 에이전트 서버(500)의 통신 모듈(510)은, 일정 주기로 네이티브 데이터 서버(200)에 version정보를 요청하여 제공받을 수 있다. Hereinafter, each configuration of the present invention will be described in more detail. First, the communication module 510 is for communication with the native data server 200, and the communication module ( The 510 may request and receive version information from the native data server 200 at regular intervals.

이때, version 정보는 데이터의 개발 단계 및 순서를 번호로 표시한 것으로서, 본 발명의 실시 예에 따른 version 정보는 JSON 형식의 파일로 제공할 수 있다.In this case, the version information indicates the development stage and order of data by numbers, and the version information according to an embodiment of the present invention may be provided in a JSON format file.

상술한 바와 같이, 본 발명의 실시 예에 따른 에이전트 서버(500)는 통신 모듈(510)을 통해 네이티브 데이터 서버(200)에서 제공하는 version 정보 파일을 수신하여 확인하며, 네이티브 데이터 서버(200)에서 업데이트 된 데이터가 있는지를 확인한다.As described above, the agent server 500 according to an embodiment of the present invention receives and checks the version information file provided by the native data server 200 through the communication module 510, and in the native data server 200 Check if there is updated data.

확인 결과, 업데이트 된 데이터가 있으면, 상기 네이티브 데이터 서버(200)로부터 업데이트 된 데이터를 압축 파일 형식(예컨대, *.zip)으로 제공받을 수 있다.As a result of checking, if there is updated data, the updated data may be provided from the native data server 200 in a compressed file format (eg, *.zip).

이때, 압축 파일은 소스 볼륨과 미디어 정보, 파일 디렉터리 구조, 오류 감지, 복구 정보, 파일 설명을 포함할 수 있는 메타데이터가 포함된 하나 이상의 파일로 이루어진 파일을 말하며, 보통 무손실 데이터 압축의 형태를 가진다.At this time, the compressed file refers to a file consisting of one or more files including metadata that may include source volume and media information, file directory structure, error detection, recovery information, and file description, and is usually in the form of lossless data compression. .

압축 파일은 일부나 전체로 암호화할 수 있으며, 압축 파일은 여러 개의 데이터 파일을 하나의 파일로 묶어 갖고 다니거나 보관을 쉽게 하기 위해 쓰일 수 있다. 압축 파일은 *.zip, *.rar, *.7z, *.tar 등의 확장자를 가지며 여기서 *.tar은 압축 기능을 포함하지 않는다.Compressed files can be partially or fully encrypted, and compressed files can be used to bundle multiple data files into a single file to carry or store easily. Compressed files have extensions such as *.zip, *.rar, *.7z, and *.tar, where *.tar does not include a compression function.

본 발명의 실시 예에 따른 에이전트 서버(500)는 통신 모듈(510)을 통해 전달받은 데이터를 실시간으로 압축 해제하고, 압축 해제한 데이터를 데이터 전달 모듈(530)에 의하여 웹 서버(400)의 기 설정된 경로에 저장할 수 있다.The agent server 500 according to an embodiment of the present invention decompresses the data received through the communication module 510 in real time, and the decompressed data is transmitted to the web server 400 by the data delivery module 530 . It can be saved in the set path.

이때, 기 설정된 경로는 네이티브 데이터 서버(200)로부터 제공받은 version 정보를 통해 알 수 있다. In this case, the preset path may be known through version information provided from the native data server 200 .

또한, 본 발명의 실시 예에 따른 에이전트 서버(500)는 네이티브 데이터 서버(200)로부터 전달받은 데이터가 웹 형식인지 여부를 더 확인하여 웹 형식인 경우, 데이터 전달 모듈(530)에 의하여 상기 데이터를 웹 서버(400)의 기 설정된 경로에 저장한다.In addition, the agent server 500 according to an embodiment of the present invention further checks whether the data delivered from the native data server 200 is in a web format. It is stored in a preset path of the web server 400 .

만약, 네이티브 데이터 서버(200)로부터 전달받은 데이터가 웹 형식이 아닌 경우, 상기 데이터를 웹 형식에 맞는 데이터(예컨대, JSON형식)으로 변형하고, 데이터 전달 모듈(530)에 의하여 상기 웹 형식으로 변환한 데이터를 웹 서버(400)의 기 설정된 경로에 저장한다.If the data received from the native data server 200 is not in a web format, the data is transformed into data suitable for the web format (eg, JSON format), and converted into the web format by the data delivery module 530 . One data is stored in a preset path of the web server 400 .

이때, 웹 형식으로의 변형은 지정된 전송 규약에 맞추어 실시간으로 변형한다. At this time, the transformation to the web format is transformed in real time according to the specified transmission protocol.

예컨대, 네이티브 데이터 서버(200)로부터 전달 받은 데이터의 형식이 *.conf 인 경우, *.conf 형식의 파일은 웹 형식의 맞지 않는 데이터 형식이므로 웹 서버로 저장할 수 없다. 따라서, 에이전트 서버(500)의 데이터 처리 모듈(520)의 제어 하에 *.conf 형식의 파일을 *.json파일 형식으로 변환하여야 한다.For example, when the format of the data received from the native data server 200 is *.conf, the *.conf format file cannot be saved to the web server because it is a data format that does not match the web format. Therefore, under the control of the data processing module 520 of the agent server 500, the *.conf format file must be converted into the *.json file format.

이때, 지정된 전송 규약은 일반적으로 수신한 데이터의 형식과 변환하려는 형식(예컨대, JSON형식)에 따라 각각 다를 수 있다. 본 발명의 실시 예에 따른 전송 규약은 수신한 데이터의 구조에서 JSON 형식의 데이터로 변형하기 위한 단계, 방법, 순서 중 어느 하나가 될 수 있다. 즉, 데이터의 형식 변형에 있어서 일반적인 규칙이 될 수 있다.In this case, the designated transmission protocol may be different depending on the format of the generally received data and the format to be converted (eg, JSON format). The transmission protocol according to an embodiment of the present invention may be any one of steps, methods, and sequences for transforming the received data structure into JSON format data. That is, it can be a general rule in the format transformation of data.

대표적인 웹과의 데이터 교환 방식으로 사용될 수 있는 JSON은, 인터넷에서 자료를 주고 받을 때 그 자료를 표현하는 방법이며, 자료의 종류에 큰 제한이 없는 특징이 있다. 또한 JSON은, 객체를 텍스트로 표현한 방법 중 하나로써, 경량의 DATA교환 형식이다.JSON, which can be used as a representative data exchange method with the web, is a method of expressing the data when sending and receiving data on the Internet, and has a characteristic that there is no big limitation on the type of data. In addition, JSON is one of the methods of expressing objects as text, and is a lightweight data exchange format.

JSON은 텍스트로 이루어져 있어 사람과 기계 모두 읽고 쓰기 쉬우며, 프로그래밍 언어와 플랫폼에 독립적이기 때문에 서로 다른 시스템간에 객체를 교환하기에 좋으며, 용량이 적고 가독성이 좋다는 장점을 갖는다. 최근에는 모질라 파이어폭스 3.5, 인터넷 익스플로러 8, 오페라 10.5, 사파리, 구글 크롬 등 대부분의 최신 웹 브라우저에 이러한 JSON 전용 파서 기능을 내장하고 있다.JSON consists of text, so it is easy to read and write for both humans and machines, and since it is independent of programming languages and platforms, it is good for exchanging objects between different systems, and has the advantages of small capacity and good readability. Recently, most modern web browsers such as Mozilla Firefox 3.5, Internet Explorer 8, Opera 10.5, Safari, and Google Chrome have built-in this JSON-only parser function.

즉, 본 발명의 실시 예에 따른 에이전트 서버(500)는 통신 모듈(510)을 통해 일정 주기로 네이티브 데이터 서버(200)로 version 정보를 요청하고, 네이티브 데이터 서버(200)로부터 version 정보 파일을 제공받아 업데이트가 된 데이터가 있는지를 확인한다.That is, the agent server 500 according to an embodiment of the present invention requests version information from the native data server 200 at regular intervals through the communication module 510 and receives the version information file from the native data server 200 . Check if there is updated data.

확인 결과, 업데이트 된 데이터가 있으면, 업데이트 된 데이터를 압축 파일 형식으로 제공받을 수 있다. As a result of the check, if there is updated data, the updated data can be provided in the form of a compressed file.

이때, 데이터 처리 모듈(520)은 데이터를 수신하면서 실시간으로 압축 해제할 수 있다. In this case, the data processing module 520 may decompress the data in real time while receiving it.

또한, 제공받은 데이터가 웹 형식을 따르는지 여부를 더 확인하여 웹 형식을 따르는 경우에는 상기 데이터를 데이터 전달 모듈(530)의 제어 하에 웹 서버(400)의 기 설정된 경로에 저장한다.In addition, it is further checked whether the received data conforms to the web format, and when it conforms to the web format, the data is stored in a preset path of the web server 400 under the control of the data delivery module 530 .

반면, 웹 형식을 따르지 않는 데이터인 경우에는 데이터 처리 모듈(520)이 상기 데이터를 웹 형식에 맞는 데이터로 변환처리 하여, 데이터 전달 모듈(530)에 의하여 웹 서버(400)의 기 설정된 경로에 저장할 수 있다.On the other hand, in the case of data that does not conform to the web format, the data processing module 520 converts the data into data suitable for the web format and stores the data in a preset path of the web server 400 by the data transfer module 530 . can

이제, 상술한 에이전트 서버(500)에서의 동작을 구체적으로 설명하도록 한다.Now, the operation in the above-described agent server 500 will be described in detail.

도 4는 본 발명의 실시 예에 따른 에이전트 서버에서의 서비스 제공 방법을 보다 더 구체적으로 설명하기 위한 흐름도이다.4 is a flowchart for explaining in more detail a method of providing a service in an agent server according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 실시 예에 따른 에이전트 서버에서의 서비스 제공 방법은, 에이전트 서버(500)가 일정 주기로 네이티브 데이터 서버(200) 내의 업데이트 된 데이터를 확인한다(S101). 여기서, 본 발명의 에이전트 서버(500)는 일정 주기로 네이티브 데이터 서버(200)로 version 정보를 요청하여, version 정보 파일 제공받는다. Referring to FIG. 4 , in the service providing method in the agent server according to an embodiment of the present invention, the agent server 500 checks the updated data in the native data server 200 at regular intervals ( S101 ). Here, the agent server 500 of the present invention requests version information from the native data server 200 at a predetermined period and receives the version information file.

본 발명의 실시 예에 따른 에이전트 서버(500)는 제공받은 version 정보 파일을 통해서 네이티브 데이터 서버(200)의 업데이트 된 데이터가 있는지를 확인할 수 있다. 이때, version 파일은 version.json 의 형식으로 제공될 수 있다.The agent server 500 according to an embodiment of the present invention may check whether there is updated data of the native data server 200 through the provided version information file. In this case, the version file may be provided in the format of version.json.

이후, 에이전트 서버(500)는 업데이트 된 데이터가 존재하는지 여부를 확인하여(S103) 업데이트 된 데이터가 있으면, 네이티브 데이터 서버(200)로부터 상기 데이터를 압축 파일 형식으로 수신할 수 있다(S105). Thereafter, the agent server 500 checks whether the updated data exists (S103), and if there is the updated data, it can receive the data from the native data server 200 in a compressed file format (S105).

에이전트 서버(500)는 압축 파일 형식으로 수신한 데이터를 실시간으로 압축 해제하여(S107), 수신한 데이터의 형식이 웹 형식인지 아닌지 여부를 더 확인하는 작업을 수행한다(S109).The agent server 500 decompresses the data received in the compressed file format in real time (S107), and performs a task of further confirming whether the format of the received data is a web format or not (S109).

에이전트 서버(500)가 수신한 데이터의 형식이 웹 형식인지 아닌지 여부를 확인한 결과, 웹 형식을 따르지 않는다고 판단되면, 상기 데이터의 형식을 JSON 형식과 같은 웹 형식으로 변환 처리하고(S111), 웹 형식으로 변환한 데이터를 웹 서버에 기 설정된 경로에 저장할 수 있다(S113).As a result of checking whether the format of the data received by the agent server 500 is a web format, if it is determined that the web format is not followed, the data format is converted into a web format such as JSON format (S111), and the web format The converted data may be stored in a path preset in the web server (S113).

이때, 본 발명의 실시 예에 따른 에이전트 서버(500)는 웹 형식으로 변환한 데이터를 version 정보 파일을 참조하여, 기 설정된 경로에 저장할 수 있다. In this case, the agent server 500 according to an embodiment of the present invention may store data converted into a web format in a preset path with reference to the version information file.

예를 들어, 본 발명의 실시 예에 따른 네이티브 데이터 서버(200)에서 오늘의 날씨 정보가 업데이트 된 경우에, version 정보 파일은 이러한 정보들이 포함되어 구성되어 있으며, 에이전트 서버가 version 정보 파일을 기반으로 하여 웹 서버(400)에서 날씨에 대한 정보를 저장하고 있는 경로에 상기 업데이트 된 정보를 저장할 수 있다. 이와 관련된 설명은 도 7~9의 예시도를 보면서 더 구체적으로 설명하도록 한다.For example, when today's weather information is updated in the native data server 200 according to an embodiment of the present invention, the version information file is configured to include such information, and the agent server Accordingly, the updated information may be stored in a path in which the web server 400 stores weather information. The related description will be described in more detail while looking at the exemplary diagrams of FIGS. 7 to 9 .

이러한 정보는 웹 서버(400)와 클라우드 스트리밍 서버(300)의 통신으로 클라이언트 장치(100)에 제공될 수 있으며, 사용자는 클라이언트 장치(100)를 통해서 컨텐츠 데이터를 이용할 수 있다.Such information may be provided to the client device 100 through communication between the web server 400 and the cloud streaming server 300 , and the user may use content data through the client device 100 .

만약, 본 발명의 에이전트 서버(500)가 네이티브 데이터 서버(200) 내의 업데이트 된 데이터가 있는지를 확인하여(S101), 업데이트 된 데이터가 존재하지 않는 경우에는 그대로 종료하게 되며, 이후 주기적으로 업데이트 데이터가 있는지 여부를 확인하는 과정을 반복하게 된다.If the agent server 500 of the present invention checks whether there is updated data in the native data server 200 (S101), if the updated data does not exist, it is terminated as it is, and thereafter, the updated data is periodically updated. It repeats the process of checking whether or not it exists.

도 5는 본 발명의 실시 예에 따른 웹 서버에서의 서비스 제공 방법을 보다 더 구체적으로 설명하기 위한 흐름도이다.5 is a flowchart for explaining in more detail a method of providing a service in a web server according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 실시 예에 따른 웹 서버(400)는 에이전트 서버(500)에 의하여 네이티브 데이터 서버(200)가 제공하는 업데이트 데이터를 기 설정된 경로에 저장할 수 있다.Referring to FIG. 5 , the web server 400 according to an embodiment of the present invention may store update data provided by the native data server 200 by the agent server 500 in a preset path.

이후, 클라우드 스트리밍 서버(300)로부터 특정 데이터에 대한 요청을 수신하면(S201), 에이전트 서버(500)에 의하여 특정 경로에 저장한 웹 형식의 데이터를 로딩할 수 있다(S203). 이후, 웹 서버(400)는 로딩한 데이터를 클라우드 스트리밍 서버(300)로 실시간으로 제공할 수 있다.Then, upon receiving a request for specific data from the cloud streaming server 300 (S201), the data in the web format stored in a specific path by the agent server 500 can be loaded (S203). Thereafter, the web server 400 may provide the loaded data to the cloud streaming server 300 in real time.

본 발명의 실시 예에 따른 클라우드 스트리밍 서버(300)는 통신망(600)을 통해 클라이언트 장치(100)와 통신하여, 사용자에 의하여 클라이언트 장치(100)로 입력되는 특정 데이터의 요청 신호를 수신하여 웹 서버(400)로 제공할 수 있다.Cloud streaming server 300 according to an embodiment of the present invention communicates with the client device 100 through the communication network 600, and receives a request signal of specific data input to the client device 100 by the user to the web server (400) can be provided.

본 발명의 실시 예에 따른 웹 서버(400)에서의 동작은 실시간으로 동작할 수 있다. 즉, 클라우드 스트리밍 서버(300)로부터 데이터 요청을 수신하면 해당 데이터를 로딩하여 클라우드 스트리밍 서버(300)로 실시간 제공할 수 있다.Operations in the web server 400 according to an embodiment of the present invention may be performed in real time. That is, upon receiving a data request from the cloud streaming server 300 , the data may be loaded and provided to the cloud streaming server 300 in real time.

이제, 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 절차를 구체적으로 설명하도록 한다.Now, a cloud streaming service procedure according to an embodiment of the present invention will be described in detail.

도 6은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 절차를 설명하기 위한 흐름도이다.6 is a flowchart for explaining a cloud streaming service procedure according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스는 에이전트 서버(500)가 일정 주기로 네이티브 서버(200)로 version 정보를 요청하고(S301), 네이티브 데이터 서버는 상기 요청에 대응하여 version 정보를 에이전트 서버(500)로 제공할 수 있다(S303). Referring to FIG. 6 , in the cloud streaming service according to an embodiment of the present invention, the agent server 500 requests version information to the native server 200 at a predetermined period (S301), and the native data server responds to the request for version information. The information may be provided to the agent server 500 (S303).

이때, version 정보는 JSON 형식의 파일이 될 수 있으며, 네이티브 데이터 서버(200)의 데이터에 관련한 정보와 함께 업데이트 버전 정보를 포함할 수 있다. In this case, the version information may be a JSON format file, and may include updated version information together with information related to data of the native data server 200 .

본 발명의 실시 예에 따른 에이전트 서버(500)는 네이티브 데이터 서버(200)로부터 수신한 version 정보 파일을 기반으로 네이티브 데이터 서버(200)에서의 업데이트가 된 데이터를 확인하다(S305).The agent server 500 according to an embodiment of the present invention checks the updated data in the native data server 200 based on the version information file received from the native data server 200 (S305).

확인 결과, 업데이트 된 데이터가 있는 경우, 업데이트 데이터를 네이티브 데이터 서버(200)로 요청할 수 있다(S307). As a result of the check, if there is updated data, the update data may be requested to the native data server 200 (S307).

네이티브 데이터 서버(200)는 이러한 요청에 대응하여 업데이트 데이터를 압축 파일 형식으로 에이전트 서버(500)로 제공할 수 있으며, 에이전트 서버(500)는 네이티브 데이터 서버(200)로부터 제공받은 압축 형식의 업데이트 데이터 파일을 실시간으로 압축 해제하여(S311), 상기 제공받은 데이터가 웹 형식을 따르는지 여부를 더 확인할 수 있다(S312). The native data server 200 may provide update data to the agent server 500 in a compressed file format in response to such a request, and the agent server 500 may provide update data in a compressed format provided from the native data server 200 . By decompressing the file in real time (S311), it is possible to further check whether the received data conforms to the web format (S312).

에이전트 서버(500)가 네이티브 데이터 서버(200)로부터 제공받은 데이터가 웹 형식을 따르는지 여부를 확인한 결과, 웹 형식을 따르는 경우에는 상기 S303단계에서 수신한 version 정보 파일을 참조하여 웹 서버(400)의 기 설정된 경로에 상기 웹 형식의 데이터를 저장할 수 있다(S313).As a result of checking whether the data provided from the native data server 200 conforms to the web format, the agent server 500 refers to the version information file received in step S303 and the web server 400 if it conforms to the web format. It is possible to store the data in the web format in a preset path of (S313).

반면, 에이전트 서버(500)가 네이티브 데이터 서버(200)로부터 제공받은 데이터가 웹 형식을 따르는지 여부를 확인한 결과, 웹 형식을 따르지 않는 경우에는 상기 데이터를 웹 형식을 따르도록 변환하고(S315), 변환한 데이터를 상기 S303단계에서 수신한 version 정보 파일을 참조하여 웹 서버(400)의 기 설정된 경로에 상기 웹 형식으로 변환한 데이터를 저장할 수 있다(S317).On the other hand, as a result of checking whether the data provided from the native data server 200 conforms to the web format, the agent server 500 converts the data to conform to the web format if it does not conform to the web format (S315), The converted data may be stored in the web format in a preset path of the web server 400 with reference to the version information file received in step S303 (S317).

이후, 웹 서버(400)는 이러한 클라우드 스트리밍 서버(300)로부터 특정 데이터 제공 요청을 수신하면(S319), 에이전트 서버(500)에 의하여 기 저장한 데이터를 실시간으로 제공할 수 있다(S321). Thereafter, when the web server 400 receives a specific data provision request from the cloud streaming server 300 ( S319 ), the web server 400 may provide the data previously stored by the agent server 500 in real time ( S321 ).

이제, 본 발명의 실시 예에 따라 클라이언트 장치(100)와 연동된 영상 출력 장치에서 표시되는 화면과, 웹 서버(400)의 기 설정된 경로에 대하여 예시도를 통해 설명하기로 한다.Now, a screen displayed on an image output device interlocked with the client device 100 and a preset path of the web server 400 according to an embodiment of the present invention will be described with reference to exemplary drawings.

도 7~9는 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 방법을 보다 더 구체적으로 설명하기 위한 예시도이다.7 to 9 are exemplary views for more specifically explaining a cloud streaming service method according to an embodiment of the present invention.

도 7~9를 참조하면, 도 7~9는 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스에서, 클라이언트 장치(100)의 내부 또는 외부에 연결된 영상 출력 장치(도시생략)를 통해 표시되는 예시도를 나타낸 것이다.7 to 9 are exemplary views displayed through an image output device (not shown) connected to the inside or outside of the client device 100 in the cloud streaming service according to an embodiment of the present invention. it has been shown

도 7의 사용자가 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스를 실행한 화면(50)을 나타낸 것으로, 본 서비스를 이용하기 위한 메뉴가 도시되어 있다. 7 shows a screen 50 on which a user executes a cloud streaming service according to an embodiment of the present invention, and a menu for using the present service is shown.

본 예시도의 왼쪽을 보면, 본 발명의 실시 예에 따른 클라이언트 장치(100)에서 제공하는 서비스 메뉴는 최신영화관, VOD다시보기, 채널가이드, 게임&노래방 등으로 구성되어 있다.Looking at the left side of this exemplary diagram, the service menu provided by the client device 100 according to an embodiment of the present invention consists of the latest movie theater, VOD replay, channel guide, game & karaoke, and the like.

또한, 본 예시도의 (가)를 참조하면, 사용자가 상술한 메뉴 중에서 VOD다시보기를 선택한 것임을 알 수 있다.Also, referring to (A) of this exemplary diagram, it can be seen that the user has selected VOD replay from the above-mentioned menu.

또한, 사용자가 VOD다시보기를 선택하여 나타난 메뉴는 [오늘의 인기추천], 영화, 드라마, 방송국A, 방송국 B를 포함하여 구성될 수 있으며, 본 발명에서의 사용자는 방송국 A를 선택(나)했음을 알 수 있다. In addition, the menu that appears when the user selects VOD replay may include [Today's Popular Recommendation], movies, dramas, broadcasting station A, and broadcasting station B. In the present invention, the user selects broadcasting station A (B) it can be seen that

(나)를 참조하면, 사용자는 방송국 A를 선택하였으며, 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스는 방송국 A에서 상영하는 컨텐츠 데이터의 목록을 드라마, 예능, 다큐멘터리/교양 등을 포함하여 구성할 수 있다.Referring to (B), the user has selected broadcasting station A, and the cloud streaming service according to an embodiment of the present invention can configure a list of content data screened by broadcasting station A including drama, entertainment, documentary/culture, etc. have.

본 발명의 실시 예에 따른 사용자는 방송국 A에서 상영한 컨텐츠 중에서 드라마를 선택하였으며, 이후의 실행 화면은 도 8을 통해 설명하기로 한다.According to an embodiment of the present invention, the user selects a drama from among the contents screened by the broadcasting station A, and the following execution screen will be described with reference to FIG. 8 .

도 8을 참조하면, 도 8은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스에서 도 7에서 사용자의 선택 VOD다시보기(가), 방송국A(나), 드라마 (다)의 순서 이후 나타난 실행 화면(60)을 나타낸 예시도이다.Referring to FIG. 8, FIG. 8 is an execution screen ( 60) is an exemplary diagram showing.

도 8을 다시 참조하면, 사용자가 본 발명의 실시 예에서 VOD다시보기, 방송국 A, 드라마 순서대로 컨텐츠의 경로를 선택하면, 방송국 A에서의 드라마들이 나열되어 있음을 알 수 있다.Referring back to FIG. 8 , if the user selects a content path in the order of VOD replay, broadcasting station A, and drama in the embodiment of the present invention, it can be seen that dramas from broadcasting station A are listed.

도 8은 본 발명의 실시 예에 따른 사용자는 방송국 A에서의 드라마 a, b, c, d, e, f 중 드라마 a를 선택(라)한 실행 화면을 나타낸 것이다.8 is a view showing an execution screen in which the user selects (D) the drama a among the dramas a, b, c, d, e, and f in the broadcasting station A according to an embodiment of the present invention.

이후의 실행 화면은 도9의 예시도를 통해 확인할 수 있는데, 도 9는 도 8의 (라)에 따라서 드라마 a(라)를 선택한 경우의 실행 화면(70)을 나타낸 것이다.The subsequent execution screen can be confirmed through the exemplary diagram of FIG. 9 , which shows the execution screen 70 when the drama a (d) is selected according to (d) of FIG. 8 .

도 9를 참조하면, 드라마 a의 컨텐츠 데이터가 1회, 2회, 3회……10회, 11회로 나타나 있으며, 이는 드라마 a의 회차 별 컨텐츠 데이터를 제공할 수 있게 한다.Referring to FIG. 9 , the content data of the drama a is 1 time, 2 times, 3 times... … Episodes 10 and 11 are shown, which makes it possible to provide content data for each episode of drama a.

이후, 본 발명의 실시 예에 따른 사용자는 클라이언트 장치(100)를 통해 도9와 같은 화면을 제공받아 출력할 수 있다.Thereafter, the user according to an embodiment of the present invention may receive and output a screen as shown in FIG. 9 through the client device 100 .

본 발명의 실시 예에 따른 사용자는 본 실행화면(70)에서 11회(마)를 선택하여 오른쪽에 보이는 것과 같이 드라마 a의 11화에 관련한 정보를 확인할 수 있다. 이때, 상기 11화에 관련한 정보는 줄거리, 출연/감독 등을 포함하여 구성될 수 있다.The user according to an embodiment of the present invention may select episode 11 (e) on the execution screen 70 and check information related to episode 11 of the drama a as shown on the right. In this case, the information related to the 11th episode may include a plot, appearance/director, and the like.

도7~9에 나타낸 예시도는 클라우드 스트리밍 서버(300)를 통해 클라이언트 장치(100)로 제공되어 영상 출력 장치에서 사용자에게 표시되는 실행화면 (50, 60, 70)을 나타낸 것이다.7 to 9 show execution screens 50, 60, and 70 that are provided to the client device 100 through the cloud streaming server 300 and displayed to the user in the image output device.

또한, 사용자가 선택한 컨텐츠 데이터 VOD다시보기(가), 방송국A(나), 드라마(다), 드라마a(라)는 본 발명의 실시 예에 따른 에이전트 서버(500)가 네이티브 데이터 서버(200)로부터 제공받은 업데이트 된 데이터를 웹 서버(400)의 기 설정한 경로에 저장하는 동작과 관련하여, 상기 업데이트 된 데이터가 드라마 a의 11화 인 경우에, 기 설정한 경로는 상술한 (가), (나), (다), (라)가 되어 최종적으로 도9의 11회(라)에 업데이트 될 수 있다.In addition, the user-selected content data VOD replay (A), broadcasting station A (B), drama (C), and drama a (D) are the agent server 500 according to an embodiment of the present invention and the native data server 200 . Regarding the operation of storing the updated data provided from the web server 400 in the preset path, when the updated data is episode 11 of the drama a, the preset path is the above-mentioned (A), (B), (C), and (D) can be finally updated in the 11th time (D) of FIG.

즉, 본 발명의 실시 예에 따르면, 네이티브 데이터 서버(200)로부터 제공받아 웹 형식으로 변환한 데이터를 웹 서버(400)의 기 설정한 경로에 저장함에 있어서, 상기 기 설정한 정보는 version 정보 파일을 통해서 확인할 수 있으며, 이러한 기 설정한 정보는 구체적으로 상술한 내용으로 설명할 수 있다.That is, according to an embodiment of the present invention, in storing data provided from the native data server 200 and converted into a web format in a preset path of the web server 400, the preset information is a version information file can be confirmed through , and such preset information can be described in detail as described above.

이상으로 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 방법에 대해 설명하였다.As described above, a cloud streaming service method according to an embodiment of the present invention has been described.

상술한 바와 같은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 방법은 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체의 형태로 제공될 수도 있다.The cloud streaming service method according to an embodiment of the present invention as described above may be provided in the form of a computer-readable medium suitable for storing computer program instructions and data.

이때, 기록매체에 기록된 프로그램은 컴퓨터에서 읽혀 설치되고 실행됨으로써 전술한 기능들을 실행할 수 있다.In this case, the program recorded on the recording medium can be read, installed, and executed by the computer to execute the above-described functions.

여기서, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 기능들을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 컴퓨터의 장치 인터페이스(Interface)를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.Here, in order for the computer to read the program recorded on the recording medium and execute the functions implemented as the program, the above-described program includes C, C++, It may include code coded in a computer language such as JAVA or machine language.

이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다. 또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다. 또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.Such code may include a function code related to a function defining the above-mentioned functions, etc., and may include an execution procedure related control code necessary for the processor of the computer to execute the above-mentioned functions according to a predetermined procedure. In addition, this code may further include additional information necessary for the processor of the computer to execute the above functions or code related to memory reference for which location (address address) in the internal or external memory of the computer should be referenced. . In addition, when the processor of the computer needs to communicate with any other computer or server located remotely in order to execute the functions described above, the code can be executed by the processor of the computer using the communication module of the computer. It may further include a communication-related code for how to communicate with other computers or servers, and what information or media to transmit and receive during communication.

도 10은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 제공을 위한 장치의 오퍼레이팅 환경을 나타낸 도면이다.10 is a diagram illustrating an operating environment of an apparatus for providing a cloud streaming service according to an embodiment of the present invention.

도 10은 본 발명의 실시 예에 따른 클라우드 스트리밍 서비스 제공 방법 구성을 위한 장치의 오퍼레이팅 환경을 도시한 도면이다. 10 is a diagram illustrating an operating environment of an apparatus for configuring a method for providing a cloud streaming service according to an embodiment of the present invention.

도 10 및 이하의 설명은 본 발명이 구현될 수 있는 적절한 컴퓨팅 환경의 간단하고, 일반적인 설명을 제공하고자 한다. 10 and the following description are intended to provide a brief, general description of a suitable computing environment in which the present invention may be implemented.

요구사항은 아니지만, 본 발명은 컴퓨터 시스템에 의해 실행되고 있는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 컴퓨터 실행가능 명령어, 관련 데이터 구조, 및 프로그램 모듈은 본 명세서에 개시된 발명의 행위를 실행하는 프로그램 코드 수단의 예를 나타낸다.Although not required, the invention may be described in the context of computer-executable instructions, such as program modules, being executed by a computer system. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer executable instructions, associated data structures, and program modules represent examples of program code means for carrying out the acts of the invention disclosed herein.

도 10을 참조하면, 본 발명을 구현하는 예시적인 컴퓨팅 시스템은 프로세싱 유닛(11), 시스템 메모리(12), 및 상기 시스템 메모리(12)를 포함하는 다양한 시스템 컴포넌트를 상기 프로세싱 유닛(11)에 연결시키는 시스템 버스(10)를 포함하는 형태로된 컴퓨팅 장치를 포함한다. Referring to FIG. 10 , an exemplary computing system embodying the present invention connects a processing unit 11 , a system memory 12 , and various system components including the system memory 12 to the processing unit 11 . and a computing device in a form including a system bus (10).

프로세싱 유닛(11)은 본 발명의 특징을 구현하도록 설계된 컴퓨터-실행가능 명령어를 실행시킬 수 있다. The processing unit 11 may execute computer-executable instructions designed to implement aspects of the present invention.

시스템 버스(10)는 다양한 버스 아키텍처 중의 임의의 것을 사용하는 로컬 버스, 주변 버스, 및 메모리 버스 또는 메모리 컨트롤러를 포함하는 몇 가지 유형의 버스 구조 중의 임의의 것일 수 있다. 시스템 메모리(12)는 ROM(Read Only Memory)(12a) 및 RAM(Random Access Memory)(12b)을 포함한다. 시동중과 같은 때에 컴퓨팅 시스템 내의 구성요소들 간에 정보를 전송하는 것을 돕는 기본 루틴을 포함하는 기본 입출력 시스템(BIOS)(13a)은 일반적으로 ROM(12a)에 저장될 수 있다.The system bus 10 may be any of several types of bus structures including a local bus, a peripheral bus, and a memory bus or memory controller using any of a variety of bus architectures. The system memory 12 includes a read only memory (ROM) 12a and a random access memory (RAM) 12b. A basic input/output system (BIOS) 13a containing basic routines that help transfer information between components within the computing system, such as during startup, may be stored generally in ROM 12a.

컴퓨팅 시스템은 저장 수단을 포함할 수 있는데, 예를 들어, 하드 하드 디스크로부터 정보를 판독하거나 그 하드 디스크에 정보를 기록하는 하드 디스크 드라이브(15), 자기 디스크로부터 정보를 판독하거나 그 자기 디스크에 정보를 기록하는 자기 디스크 드라이브(16), 및 예를 들면, CD-ROM 또는 기타 광 매체 등의 광 디스크로부터 정보를 판독하거나 그 광 디스크에 정보를 기록하는 광 디스크 드라이브(17)를 포함할 수 있다. 하드 디스크 드라이브(15), 자기 디스크 드라이브(16), 및 광 디스크 드라이브(17)는 각각 하드 디스크 드라이브 인터페이스(18), 자기 디스크 드라이브-인터페이스(19), 및 광 드라이브 인터페이스(20)에 의해 시스템 버스(10)에 접속된다. The computing system may comprise storage means, for example a hard disk drive 15 for reading information from or writing information to, a hard disk drive 15 for reading information from or writing information to a magnetic disk. may include a magnetic disk drive 16 for writing to, and an optical disk drive 17 for reading information from, or writing information to, an optical disk, such as, for example, a CD-ROM or other optical medium. . The hard disk drive 15 , the magnetic disk drive 16 , and the optical disk drive 17 are connected to the system by a hard disk drive interface 18 , a magnetic disk drive-interface 19 , and an optical drive interface 20 , respectively. connected to the bus 10 .

또한, 컴퓨팅 시스템은, 저장 수단으로서 외장 메모리(21)를 더 구비할 수 있다. 상기 외장 메모리(21)는 입출력 인터페이스(24)를 통해서 시스템 버스(10)에 접속될 수 있다.In addition, the computing system may further include an external memory 21 as a storage means. The external memory 21 may be connected to the system bus 10 through the input/output interface 24 .

상술한 드라이브 및 그 드라이브에 의해 판독 및 기록되는 관련 컴퓨터 판독가능 매체는 컴퓨터 실행가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터의 비휘발성 저장을 제공한다. 본 명세서에서 기술된 예시적인 환경은 하드 디스크(15), 자기 디스크(16) 및 광 디스크(17)를 예시하고 있으나, 이외에 자기 카세트, 플래쉬 메모리 카드, DVD, 베루누이 카트리지(Bernoulli cartridge), RAM, ROM, 등을 포함하는, 데이터를 저장하는 다른 유형의 컴퓨터 판독가능 매체가 이용될 수 있다.The drives described above and associated computer readable media read and written by the drives provide non-volatile storage of computer executable instructions, data structures, program modules, and other data. The exemplary environment described herein illustrates hard disk 15, magnetic disk 16, and optical disk 17, but in addition to magnetic cassettes, flash memory cards, DVDs, Bernoulli cartridges, RAM Other tangible computer-readable media for storing data may be used, including , ROM, and the like.

상기 프로세싱 유닛(11)에 의해 로딩되어 실행되는, 오퍼레이팅 시스템(13b), 하나 이상의 애플리케이션 프로그램(13c), 기타 프로그램 모듈(13d), 및 프로그램 데이터(13c)를 포함하는 하나 이상의 프로그램 모듈을 포함하는 프로그램 코드 수단은 하드 디스크(15), 자기 디스크(16), 광 디스크(17), ROM(12a) 또는 RAM(12b)에 저장될 수 있다. an operating system (13b), one or more application programs (13c), other program modules (13d), and one or more program modules including program data (13c), which are loaded and executed by the processing unit (11) The program code means may be stored in the hard disk 15, magnetic disk 16, optical disk 17, ROM 12a or RAM 12b.

아울러, 상기 컴퓨팅 시스템은, 키보드, 포인팅 장치, 마이크로폰, 조이 스틱, 게임 패드, 스캐너, 등과 같은 기타 입력 장치(22)를 통해 사용자로부터 명령 및 정보를 입력받을 수 있다. 이들 입력 장치(22)는 시스템 버스(10)에 연결된 입출력 인터페이스(24)를 통해 프로세싱 유닛(11)에 접속될 수 있다. 입출력 인터페이스(24)는 예를 들면, 직렬 포트 인터페이스, PS/2 인터페이스, 병렬 포트 인터페이스, USB 인터페이스, IEEE(Institute of Electrical and Electronics Engineers) 1394 인터페이스(즉, 파이어와이어(FireWire) 인터페이스)와 같은 매우 다양한 서로 다른 인터페이스 중 임의의 것을 논리적으로 나타내거나, 다른 인터페이스의 조합까지도 논리적으로 나타낼 수 있다. In addition, the computing system may receive commands and information from the user through other input devices 22 such as a keyboard, a pointing device, a microphone, a joystick, a game pad, a scanner, and the like. These input devices 22 may be connected to the processing unit 11 via an input/output interface 24 coupled to the system bus 10 . The input/output interface 24 is a very flexible interface, such as a serial port interface, a PS/2 interface, a parallel port interface, a USB interface, an Institute of Electrical and Electronics Engineers (IEEE) 1394 interface (ie, a FireWire interface). It can logically represent any of a variety of different interfaces, or even a combination of different interfaces.

더하여, 본 발명이 적용되는 컴퓨팅 시스템은, 모니터 혹은 LCD와 같은 디스플레이 장치(26) 또는 스피커나 마이크로폰과 같은 오디오 장치(27)를 더 포함할 수 있으며, 이들은, 비디오/오디오 인터페이스(25)를 통해서 시스템 버스(10)에 접속된다. 예를 들면, 스피커 및 프린터 등의 (도시되지 않은) 기타 주변 출력 장치가 컴퓨터 시스템(420)에 또한 접속될 수 있다. 상기 비디오/오디오 인터페이스부(25)는 HDMI(High Definition Multimedia Interface), GDI(Graphics Device Interface) 등을 포함할 수 있다.In addition, the computing system to which the present invention is applied may further include a display device 26 such as a monitor or LCD, or an audio device 27 such as a speaker or microphone, which are connected via the video/audio interface 25 . connected to the system bus 10 . Other peripheral output devices (not shown) may also be connected to the computer system 420 , such as, for example, speakers and printers. The video/audio interface unit 25 may include a High Definition Multimedia Interface (HDMI), a Graphics Device Interface (GDI), or the like.

또한, 본 발명을 실행하는 컴퓨팅 시스템은, 예를 들면, 사무실-광역 또는 기업-광역 컴퓨터 네트워크, 홈 네트워크, 인트라넷, 및/또는 인터넷과 같은 네트워크에 접속 가능하다. 컴퓨터 시스템은 이러한 네트워크를 통해, 예를 들면, 원격 컴퓨터 시스템, 원격 애플리케이션, 및/또는 원격 데이터베이스와 같은 외부 소스들과의 데이터를 교환할 수 있다.Further, a computing system embodying the present invention is connectable to networks such as, for example, office-wide or enterprise-wide computer networks, home networks, intranets, and/or the Internet. Computer systems may exchange data via such networks with external sources, such as, for example, remote computer systems, remote applications, and/or remote databases.

이를 위해 본 발명이 적용되는 컴퓨팅 시스템은 외부 소스로부터 데이터를 수신하고/거나 외부 소스로 데이터를 전송하는 네트워크 인터페이스(27)를 포함한다. To this end, the computing system to which the present invention is applied includes a network interface 27 that receives data from and/or transmits data to an external source.

본 발명에 있어서, 이러한 컴퓨팅 시스템은, 네트워크 인터페이스(27)를 통해서 원격지에 위치한 장치와 정보를 송수신할 수 있다. 예컨대, 컴퓨팅 시스템이 클라이언트 장치(100)를 의미하는 경우, 네트워크 인터페이스(27)를 통해 클라우드 스트리밍 서버(300)와 정보를 송수신할 수 있다. 반면, 컴퓨팅 시스템이 클라우드 스트리밍 서버(300)를 의미하는 경우, 네트워크 인터페이스(27)를 통해 클라이언트 장치(100)과 정보를 송수신할 수 있다. 네트워크 인터페이스(27)는, 예를 들면, 네트워크 인터페이스 카드 및 대응하는 네트워크 드라이버 인터페이스 사양(Network Driver Interface Specification: "NDIS") 스택과 같은 하나 이상의 소프트웨어 및/또는 하드웨어 모듈의 논리적 조합으로 나타낼 수 있다. In the present invention, such a computing system may transmit and receive information to and from a device located at a remote location through the network interface 27 . For example, when the computing system refers to the client device 100 , information may be transmitted and received with the cloud streaming server 300 through the network interface 27 . On the other hand, when the computing system refers to the cloud streaming server 300 , information may be transmitted and received with the client device 100 through the network interface 27 . Network interface 27 may represent a logical combination of one or more software and/or hardware modules, such as, for example, a network interface card and a corresponding Network Driver Interface Specification (“NDIS”) stack.

마찬가지로, 컴퓨터 시스템은 입출력 인터페이스(24)를 통해 외부 소스로부터 데이터를 수신하거나 외부 소스로 데이터를 전송한다. 입출력 인터페이스(24)는 모뎀(23)(예를 들면, 표준 모뎀, 케이블 모뎀, 또는 디지털 가입자선(digital subscriber line: “DSL”) 모뎀)에 연결될 수 있으며, 이러한 모뎀(23)을 통해 외부 소스로부터 데이터를 수신하고/거나 외부 소스로 데이터를 전송할 수 있다. Likewise, the computer system receives data from, or transmits data to, an external source via input/output interface 24 . The input/output interface 24 may be coupled to a modem 23 (eg, a standard modem, cable modem, or digital subscriber line (“DSL”) modem) through which an external source may be connected. It may receive data from and/or transmit data to an external source.

도 10은 본 발명에 적절한 오퍼레이팅 환경을 나타내지만, 본 발명의 원리는, 필요하다면 적절한 수정으로, 본 발명의 원리를 구현할 수 있는 임의의 시스템에 채용될 수 있다. 도 10에 도시된 환경은 단지 예시적이며 본 발명의 원리가 구현될 수 있는 매우 다양한 환경의 작은 일부도 나타내지 못한다.10 illustrates an operating environment suitable for the present invention, the principles of the present invention may be employed in any system capable of implementing the principles of the present invention, with appropriate modifications, if necessary. The environment depicted in FIG. 10 is exemplary only and does not represent a small fraction of the wide variety of environments in which the principles of the present invention may be implemented.

아울러, 본 발명의 클라우드 스트리밍 서비스 제공 시 발생되는 다양한 정보는 도 10과 같은 컴퓨팅 시스템에 관련된 임의의 컴퓨터 판독가능 매체에 저장되고 액세스될 수 있다. 예를 들면, 이러한 프로그램 모듈들의 일부 및 관련 프로그램 데이터의 일부는, 시스템 메모리(12)에 저장하기 위해, 오퍼레이팅 시스템(13b), 애플리케이션 프로그램(13c), 프로그램 모듈(13d), 및/또는 프로그램 데이터(13e)에 포함될 수 있다.In addition, various information generated when providing the cloud streaming service of the present invention may be stored and accessed in any computer-readable medium related to the computing system as shown in FIG. 10 . For example, some of these program modules and some of the associated program data, for storage in system memory 12 , may include operating system 13b , application programs 13c , program modules 13d , and/or program data (13e) may be included.

또한, 하드 디스크와 같은 대용량(mass) 저장 장치가 컴퓨팅 시스템에 연결되면, 이러한 프로그램 모듈 및 관련 프로그램 데이터는 대용량 저장 장치에 저장될 수 있다. 네트워크 환경에서, 본 발명과 관련된 프로그램 모듈 또는 그 일부는 입출력 인터페이스(24)의 모뎀(23) 또는 네트워크 인터페이스(25)를 통해 연결된 원격 컴퓨터 시스템에 관련된 시스템 메모리 및/또는 대용량 저장 장치와 같은 원격 메모리 저장 장치에 저장될 수 있다. 이러한 모듈의 실행은 전술한 바와 같이 분산형 환경에서 수행될 수 있다.Also, when a mass storage device such as a hard disk is connected to the computing system, such program modules and related program data may be stored in the mass storage device. In a network environment, a program module related to the present invention, or a part thereof, is a remote memory such as a system memory and/or mass storage device associated with a remote computer system connected through a modem 23 of the input/output interface 24 or a network interface 25 . may be stored on a storage device. Execution of these modules may be performed in a distributed environment as described above.

이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. As described above, while this specification contains numerous specific implementation details, these are not to be construed as limiting as to the scope of any invention or claim, but rather may be specific to particular embodiments of a particular invention. It should be understood as a description of features. Certain features that are described herein in the context of separate embodiments may be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments, either individually or in any suitable subcombination.

나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.Furthermore, although features operate in a particular combination and may be initially depicted as claimed as such, one or more features from a claimed combination may in some cases be excluded from the combination, the claimed combination being a sub-combination. or a variant of a sub-combination.

마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. Likewise, although acts are depicted in the drawings in a particular order, it should not be construed that all acts shown must be performed or that such acts must be performed in the specific order or sequential order shown to achieve desirable results. In certain cases, multitasking and parallel processing may be advantageous.

또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.Further, the separation of the various system components of the above-described embodiments should not be construed as requiring such separation in all embodiments, and the program components and systems described may generally be integrated together into a single software product or packaged into multiple software products. You have to understand that you can.

본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. Certain embodiments of the subject matter described herein have been described. Other embodiments are within the scope of the following claims.

예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.For example, acts recited in the claims may be performed in a different order and still achieve desirable results. As an example, the processes illustrated in the accompanying drawings do not necessarily require the specific illustrated order or sequential order to achieve desirable results. In certain implementations, multitasking and parallel processing may be advantageous.

본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. The present description sets forth the best mode of the invention, and provides examples to illustrate the invention, and to enable any person skilled in the art to make or use the invention. This written specification does not limit the present invention to the specific terms presented.

따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.Accordingly, although the present invention has been described in detail with reference to the above-described examples, those skilled in the art can make modifications, changes, and modifications to the examples without departing from the scope of the present invention.

따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.Therefore, the scope of the present invention should not be defined by the described embodiments, but should be defined by the claims.

본 발명은 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것으로, 클라우드 스트리밍 서비스를 제공하는 웹 서버와 클라우드 스트리밍 서버 사이의 에이전트 서버가, 웹 형식이 아닌 네이티브 형식의 데이터를 웹 형식에 맞게 변경하여 실시간으로 클라우드 스트리밍 서비스를 제공할 수 있는 클라우드 스트리밍 시스템 및 그 시스템에서의 웹 형식이 아닌 데이터 참조를 위한 장치 및 방법에 관한 것이다.The present invention relates to a cloud streaming system and an apparatus and method for data reference other than a web format in the system, wherein an agent server between a web server providing a cloud streaming service and a cloud streaming server is a native format rather than a web format It relates to a cloud streaming system that can provide a cloud streaming service in real time by changing the data of the web format to a web format, and an apparatus and method for referencing data that is not in a web format in the system.

본 발명에 의하면, 클라우드 스트리밍 서버를 통해 데이터 제공 시, 웹 형식이 아닌 데이터인 경우, 웹 형식으로 변환하여 웹 서버를 통해 데이터를 제공하고 참조할 수 있도록 할 수 있어 클라우드 스트리밍 자원을 보다 효율적으로 사용함과 동시에 실시간으로 고객에게 제공할 수 있으며, 이를 통해 클라우드 서비스 산업의 발전에 이바지할 수 있다.According to the present invention, when data is provided through a cloud streaming server, if the data is not in a web format, it can be converted into a web format so that the data can be provided and referenced through the web server, so that the cloud streaming resource is used more efficiently At the same time, it can be provided to customers in real time, which can contribute to the development of the cloud service industry.

더불어, 본 발명은 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.In addition, the present invention has industrial applicability because it has sufficient potential for marketing or business, as well as a degree that can be clearly implemented in reality.

100: 클라이언트 장치 200: 네이티브 데이터 서버
300: 클라우드 스트리밍 서버 400: 웹 서버
500: 에이전트 서버 510: 통신 모듈
520: 데이터 처리 모듈 530: 데이터 전달 모듈
600: 통신망
100: client device 200: native data server
300: cloud streaming server 400: web server
500: agent server 510: communication module
520: data processing module 530: data transfer module
600: communication network

Claims (10)

네이티브 데이터 서버와 일정 주기로 통신하여, 상기 네이티브 데이터 서버에서 업데이트 된 데이터를 수신하고, 상기 데이터의 형식을 웹 형식으로 변환하여 웹 서버의 기 설정된 경로에 저장하도록 지원하는 에이전트 서버; 및
클라우드 스트리밍 서버로부터의 요청에 따라서, 기 설정된 경로에 기 저장된 데이터를 로딩하고, 상기 로딩된 데이터를 상기 클라우드 스트리밍 서버로 실시간 제공하는 웹 서버;
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 시스템.
an agent server that communicates with the native data server at regular intervals to receive updated data from the native data server, converts the data format into a web format, and stores the data in a preset path of the web server; and
In response to a request from a cloud streaming server, loading data pre-stored in a preset path, and a web server for providing the loaded data to the cloud streaming server in real time;
Cloud streaming system comprising a.
삭제delete 삭제delete 네이티브 데이터 서버 및 웹 서버와 통신하여 데이터를 송수신하는 통신 모듈;
상기 통신 모듈을 통해 일정 주기 마다 상기 네이티브 데이터 서버에서의 업데이트 된 데이터를 수신하고, 상기 수신한 데이터를 웹 형식으로 변환 처리하는 데이터 처리 모듈; 및
상기 통신모듈을 통해 상기 데이터를 웹 서버의 기 설정된 경로에 저장시켜 상기 웹 서버가 외부 요청에 따라 기 저장된 웹 형식의 데이터를 실시간으로 제공하도록 지원하는 데이터 전달 모듈;
을 포함하는 것을 특징으로 하는 에이전트 서버.
a communication module for transmitting and receiving data by communicating with the native data server and the web server;
a data processing module for receiving updated data from the native data server at regular intervals through the communication module and converting the received data into a web format; and
a data delivery module that stores the data in a preset path of a web server through the communication module, and supports the web server to provide pre-stored web data in real time according to an external request;
Agent server comprising a.
◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 5 was abandoned when paying the registration fee.◈ 제4항에 있어서, 상기 데이터 처리 모듈은
상기 데이터의 형식이 웹 형식인지 여부를 더 확인하여, 웹 형식인 경우에는 상기 데이터의 형식을 유지하고, 상기 데이터의 형식이 웹 형식이 아닌 경우, 웹 형식으로 변환 처리하는 것을 특징으로 하는 에이전트 서버.
5. The method of claim 4, wherein the data processing module is
The agent server, characterized in that by further checking whether the format of the data is a web format, maintaining the format of the data if it is a web format, and converting the data into a web format if the format of the data is not a web format .
◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 6 was abandoned when paying the registration fee.◈ 제5항에 있어서, 상기 데이터 처리 모듈은
상기 수신한 데이터를 웹 형식으로 변환 처리 할 때, 기 설정된 전송규약에 따라 실시간 변환하는 것을 특징으로 하는 에이전트 서버.
The method of claim 5, wherein the data processing module is
When converting the received data into a web format, the agent server, characterized in that the real-time conversion according to a preset transmission protocol.
◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 7 was abandoned when paying the registration fee.◈ 제4항에 있어서, 상기 데이터 처리 모듈은
상기 네이티브 데이터 서버로부터 압축 파일 형식의 데이터를 수신하여 실시간으로 압축을 해제하는 기능을 더 수행하는 것을 특징으로 하는 에이전트 서버.
5. The method of claim 4, wherein the data processing module is
The agent server, characterized in that it further performs a function of receiving data in a compressed file format from the native data server and decompressing the data in real time.
에이전트 서버가 네이티브 데이터 서버와 일정 주기로 통신하여 네이티브 데이터 서버 내에 업데이트 된 데이터가 있는지 확인하는 단계;
상기 에이전트 서버가 상기 네이티브 데이터 서버로부터 업데이트 된 데이터를 수신하는 단계;
상기 에이전트 서버가 상기 수신한 데이터의 형식이 웹 형식인지 여부를 확인하여 웹 형식인 경우 상기 데이터의 형식을 유지하고, 웹 형식이 아닌 경우, 상기 데이터의 형식을 웹 형식으로 변환하는 단계; 및
상기 에이전트 서버가 상기 웹 형식의 데이터를 웹 서버의 기 설정된 경로에 제공하는 단계;를 포함하되,
상기 제공하는 단계는
상기 웹 형식의 데이터를 상기 기 설정된 경로에 저장시켜 상기 웹 서버가 외부 요청에 따라 기 저장된 웹 형식의 데이터를 실시간으로 제공하도록 지원하는 것을 특징으로 하는 클라우드 스트리밍 서비스 방법.
checking whether there is updated data in the native data server by the agent server communicating with the native data server at regular intervals;
receiving, by the agent server, updated data from the native data server;
checking, by the agent server, whether the format of the received data is a web format, maintaining the format of the data if it is a web format, and converting the format of the data into a web format if it is not a web format; and
Including; providing, by the agent server, the data in the web format to a preset path of the web server;
The step of providing
Cloud streaming service method, characterized in that by storing the data in the web format in the preset path to support the web server to provide the data in the web format pre-stored in real time according to an external request.
삭제delete 삭제delete
KR1020150076134A 2015-05-29 2015-05-29 Cloud streaming system and apparatus and method for not a web format data reference in the system KR102310069B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150076134A KR102310069B1 (en) 2015-05-29 2015-05-29 Cloud streaming system and apparatus and method for not a web format data reference in the system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150076134A KR102310069B1 (en) 2015-05-29 2015-05-29 Cloud streaming system and apparatus and method for not a web format data reference in the system

Publications (2)

Publication Number Publication Date
KR20160140048A KR20160140048A (en) 2016-12-07
KR102310069B1 true KR102310069B1 (en) 2021-10-08

Family

ID=57572953

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150076134A KR102310069B1 (en) 2015-05-29 2015-05-29 Cloud streaming system and apparatus and method for not a web format data reference in the system

Country Status (1)

Country Link
KR (1) KR102310069B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011204237A (en) * 2010-03-24 2011-10-13 Fisher-Rosemount Systems Inc Method and apparatus for displaying process data

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102099802B (en) * 2008-07-28 2015-05-27 索尼公司 Client device, information processing system and associated methodology of accessing networked sevices
KR101148151B1 (en) 2010-02-25 2012-05-23 팅크웨어(주) Data transmission method and gateway server
KR101515977B1 (en) * 2012-10-24 2015-05-06 주식회사 케이티 System for providing video information using IP camera in cloud configuration method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011204237A (en) * 2010-03-24 2011-10-13 Fisher-Rosemount Systems Inc Method and apparatus for displaying process data

Also Published As

Publication number Publication date
KR20160140048A (en) 2016-12-07

Similar Documents

Publication Publication Date Title
US11842150B2 (en) Delivering auto-play media content element from cross origin resources
KR101780782B1 (en) Method and apparatus for cloud streaming service
US20140373040A1 (en) Method and device for providing content/service subscription and providing subscribed content/service
CN109785939A (en) Medical image display methods, device, equipment and storage medium based on cloud
KR101942269B1 (en) Apparatus and method for playing back and seeking media in web browser
WO2015176648A1 (en) Method and device for transmitting data in intelligent terminal to television terminal
US10419798B2 (en) Method and apparatus for just-in-time transcoding
US20200045350A1 (en) Prefetching video segments to reduce playback startup delay
CN104349177A (en) Method for turning to play multimedia file under desktop cloud, virtual machine and system
US10560501B2 (en) Method and apparatus for cloud streaming service
KR102050735B1 (en) Proxy server for cloud streaming service, cloud streaming system and method using the same
CN112449250B (en) Method, device, equipment and medium for downloading video resources
US10073688B2 (en) Method and apparatus for executing application
CN104572964A (en) Zip file unzipping method and device
KR102310069B1 (en) Cloud streaming system and apparatus and method for not a web format data reference in the system
KR102310070B1 (en) Method for caching of application for cloud streaming service and apparatus using the same
KR20160097957A (en) Cloud computing system using cache and method using the same
US10547878B2 (en) Hybrid transmission protocol
CN107005731B (en) Image cloud end streaming media service method, server and system using application codes
KR20160110844A (en) Method for providing of cloud streaming service, and apparatus thereof
EP3767965A1 (en) Client web application with embedded streaming protocol converter
KR102050736B1 (en) Cloud streaming system and apparatus for caching date in the system
US20140068000A1 (en) System and method for rendering web content
TW201622424A (en) Method and device for providing content/service subscription and providing subscribed content/service
Slusallek Towards a 3D transmission format for the Web

Legal Events

Date Code Title Description
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right