KR20160022505A - System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same - Google Patents

System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same Download PDF

Info

Publication number
KR20160022505A
KR20160022505A KR1020140108120A KR20140108120A KR20160022505A KR 20160022505 A KR20160022505 A KR 20160022505A KR 1020140108120 A KR1020140108120 A KR 1020140108120A KR 20140108120 A KR20140108120 A KR 20140108120A KR 20160022505 A KR20160022505 A KR 20160022505A
Authority
KR
South Korea
Prior art keywords
service
cloud streaming
type
streaming service
cloud
Prior art date
Application number
KR1020140108120A
Other languages
Korean (ko)
Other versions
KR102199276B1 (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 KR1020140108120A priority Critical patent/KR102199276B1/en
Priority to PCT/KR2015/007261 priority patent/WO2016010319A2/en
Priority to EP15822844.5A priority patent/EP3171601A4/en
Priority to CN202110160960.4A priority patent/CN112929234A/en
Priority to CN201580047076.2A priority patent/CN106797487B/en
Priority to JP2017519439A priority patent/JP6467503B2/en
Publication of KR20160022505A publication Critical patent/KR20160022505A/en
Priority to US15/406,594 priority patent/US10397288B2/en
Priority to US16/505,144 priority patent/US10904304B2/en
Application granted granted Critical
Publication of KR102199276B1 publication Critical patent/KR102199276B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

Disclosed are a cloud streaming service system, a service processing method in accordance with a cloud streaming service type, and an apparatus therefor. The service processing method comprises the following steps: receiving a service request from a user terminal apparatus; detecting the type of a cloud streaming service corresponding to the service request; assigning priority to the cloud streaming service based on the type of the cloud streaming service; and providing the cloud streaming service to correspond to the priority based on whether a streaming pipe line reaches a service simultaneous process limit or not. When providing the cloud streaming service, the method can serve much more applications without a bottleneck phenomenon while not influencing on service quality.

Description

클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법 및 이를 위한 장치{SYSTEM FOR CLOUD STREAMING SERVICE, METHOD FOR PROCESSING SERVICE BASED ON TYPE OF CLOUD STREAMING SERVICE AND APPARATUS FOR THE SAME}TECHNICAL FIELD [0001] The present invention relates to a cloud streaming service system, a cloud streaming service system, a service processing method according to a cloud streaming service type,

본 발명은 클라우드 스트리밍 서비스 시 한 서버에서 처리할 수 있는 동시 접속자수에 따른 처리 한계 도달 여부에 따라 서비스의 유형별로 우선순위를 적용하여 클라우드 스트리밍 서비스를 제공하는 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to a cloud streaming service system that provides a cloud streaming service by applying a priority to each service type according to whether a processing limit is reached according to the number of concurrent users that can be processed by one server in a cloud streaming service, And a device for the same.

인터넷의 급속한 발달은 개인의 통신 속도를 급격하게 향상시키는 결과를 가져왔다. 이와 같은 개인의 통신 속도 향상으로 원격지에 위치한 컴퓨터에 접속하여 대용량의 데이터를 다운로드 또는 업로드 하거나, 원격지 컴퓨터 제어 프로그램을 사용하여 마치 원격지 컴퓨터에 로컬 로그인할 것과 같이 원격지 컴퓨터를 이용할 수 있는 환경을 제공할 수 있게 되었다.The rapid development of the Internet has resulted in a dramatic improvement in personal communication speed. As the communication speed of the individual increases, the user can access a remote computer to download or upload a large amount of data, or provide an environment in which a remote computer can be used, such as a local login to a remote computer using a remote computer control program It was possible.

또한, 어플리케이션을 서버에서 구동시키고 구동화면을 비디오 인코딩(encoding)을 통해 압축하여 클라이언트로 전송시킴으로써, 클라이언트는 전송된 비디오를 재생하여 마치 자신의 단말에서 어플리케이션이 구동되는 것과 같은 효과를 내는 화면가상화 기반의 클라우드 스트리밍 서비스를 제공받을 수 있다.In addition, by driving an application on a server and compressing a driving screen through video encoding and transmitting the screen to a client, the client reproduces the transmitted video and displays it on a screen virtualization basis Of cloud streaming services.

이러한 클라우드 스트리밍 서비스 시스템에서는 동시에 서비스가 가능한 동시 접속자의 수를 늘리기 위해 클라우드 스트리밍 서비스를 단계별로 동시에 처리하기 위한 스트리밍 파이프 라인을 이용하여 서비스를 병렬적으로 처리할 수 있다. 그러나, 동시 접속자 수만큼의 어플리케이션이 서버에서 구동되어 동작하기 때문에 스트리밍 파이프 라인을 이용하더라도 서버의 중앙처리장치(Central Processing Unit; CPU)와 메모리 버스(Memory BUS)의 이용이 집중되면서 해당 구간들에 병목 현상이 발생하기 쉬워질 수 있다. 이와 같이 병목현상이 발생하면 시스템 불안정을 야기하므로 최대 처리 가능한 동시 접속자 수가 제한될 수 있다.In such a cloud streaming service system, a service can be processed in parallel using a streaming pipeline for simultaneously processing the cloud streaming service in order to increase the number of simultaneous users who can simultaneously service the service. However, since the number of concurrent access applications is operated by the server, even if a streaming pipeline is used, the use of the central processing unit (CPU) and the memory bus (BUS) of the server are concentrated, Bottlenecks can easily occur. Such bottlenecks can cause system instability, so that the maximum number of concurrent users that can be processed can be limited.

한국 공개 특허 제10-2012-0062758호, 2012년 6월 14일 공개 (명칭: 오디오 객체들을 적응적으로 스트리밍하기 위한 시스템)Korean Patent Laid-Open No. 10-2012-0062758, June 14, 2012 (name: system for adaptively streaming audio objects)

본 발명의 목적은, 클라우드 스트리밍 서비스 제공 시, 서비스 품질에 영향을 주지 않으면서 병목 현상 없이 더 많은 수의 어플리케이션을 서비스할 수 있도록 하는 것이다.It is an object of the present invention to provide a service providing a greater number of applications without bottleneck without affecting service quality when providing a cloud streaming service.

또한, 본 발명의 목적은 클라우드 스트리밍 서비스 제공 시, 클라이언트들로부터 서비스 요청이 집중될 때와 그렇지 않을 때를 구분하여 서비스 방법을 조절함으로써, 보다 효율적으로 클라우드 스트리밍 서비스를 제공하는 것이다.It is another object of the present invention to provide a cloud streaming service more efficiently by providing a cloud streaming service by dividing a service request from a client when the service request is concentrated and a service method from the client when the service request is concentrated.

상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서버는, 사용자의 단말 장치로부터 서비스 요청을 수신하는 수신부; 상기 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하는 서비스 유형 감지부; 상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하는 서비스 순위 설정부; 및 상기 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 상기 판단결과에 따라 상기 우선순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 서비스 제공부를 포함한다.According to an aspect of the present invention, there is provided a cloud streaming server including: a receiver for receiving a service request from a user terminal; A service type sensing unit for sensing a type of a cloud streaming service corresponding to the service request; A service rank setting unit for assigning a priority to the cloud streaming service based on the type of the cloud streaming service; And determining whether or not a streaming pipeline capable of simultaneously processing the cloud streaming service has reached a concurrent service processing limit and providing the cloud streaming service according to the priority according to the determination result .

이 때, 서비스 유형 감지부는 상기 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 상기 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지할 수 있다.At this time, the service type sensing unit senses an OPEN command for setting an audio device in the cloud streaming service, and can detect whether the type of the cloud streaming service is a video.

이 때, 서비스 유형 감지부는 상기 OPEN 명령어가 감지된 경우에 상기 동영상이 재생중인 것으로 판단하고 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.At this time, if the OPEN command is detected, the service type sensing unit may determine that the moving image is being played back and may detect the type of the cloud streaming service as the moving image.

이 때, 서비스 유형 감지부는 상기 서비스 요청에 상응하는 어플리케이션의 실행 초기에 상기 서비스 요청을 수신하지 않은 상태에서 감지된 상기 OPEN 명령어는 무시하고, 상기 서비스 요청을 수신한 뒤 상기 OPEN 명령어가 감지된 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.At this time, the service type sensing unit ignores the OPEN command detected in a state where the service request is not received at the beginning of execution of the application corresponding to the service request, and when the OPEN command is detected after receiving the service request The type of the cloud streaming service can be detected as the moving picture.

이 때, 서비스 유형 감지부는 상기 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.At this time, the service type sensing unit may detect the type of the cloud streaming service as the moving picture when the Sound Open function is detected in the process of capturing the application corresponding to the service request.

이 때, 서비스 순위 설정부는 상기 유형이 상기 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 상기 유형이 상기 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여할 수 있다.At this time, the service rank setting unit may give a lower priority to the cloud streaming service whose type is the video than the priority of the cloud streaming service, not the video.

이 때, 서비스 제공부는 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달하지 않은 경우에 상기 우선순위와 상관없이, 상기 서비스 요청 시 상기 클라우드 스트리밍 서비스를 상기 단말 장치에게 바로 제공할 수 있다.At this time, the service providing unit can directly provide the cloud streaming service to the terminal device at the time of the service request, regardless of the priority, when the streaming pipeline does not reach the concurrent service processing limit.

이 때, 서비스 제공부는 상기 스트리밍 파이프 라인에서 동시에 처리하는 상기 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달한 것으로 판단할 수 있다.At this time, the service providing unit may determine that the streaming pipeline reaches the service concurrency limit if the number of the cloud streaming services simultaneously processed in the streaming pipeline is equal to or greater than the preset number of concurrent processes.

이 때, 기설정된 동시 처리 개수는 상기 스트리밍 파이프 라인에서 상기 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작을 수 있다.At this time, the predetermined number of concurrent processes may be smaller than the maximum number of simultaneous processing of the cloud streaming service in the streaming pipeline.

또한, 본 발명에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은, 사용자의 단말 장치로부터 서비스 요청을 수신하는 단계; 상기 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하는 단계; 상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하는 단계; 및 상기 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 상기 판단결과에 따라 상기 우선순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of processing a service according to a type of a cloud streaming service, comprising: receiving a service request from a user terminal; Detecting a type of a cloud streaming service corresponding to the service request; Assigning a priority to the cloud streaming service based on the type of the cloud streaming service; And determining whether a streaming pipeline capable of concurrently and concurrently processing the cloud streaming service has reached a concurrent service processing limit and providing the cloud streaming service in accordance with the priority according to the determination result .

이 때, 유형을 감지하는 단계는 상기 클라우드 스트리밍 서비스의 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 상기 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지할 수 있다.In this case, the type sensing step detects an OPEN command for setting an audio device of the cloud streaming service to detect whether the type of the cloud streaming service is a video.

이 때, 유형을 감지하는 단계는 상기 OPEN 명령어가 감지된 경우에 상기 동영상이 재생중인 것으로 판단하고 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.In this case, when the OPEN command is detected, the type detecting step may determine that the moving image is being played back and may detect the type of the cloud streaming service as the moving image.

이 때, 상기 유형을 감지하는 단계는 상기 서비스 요청에 상응하는 어플리케이션의 실행 초기에 상기 서비스 요청을 수신하지 않은 상태에서 감지된 상기 OPEN 명령어는 무시하고, 상기 서비스 요청을 수신한 뒤 상기 OPEN 명령어가 감지된 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.In this case, the step of detecting the type may include ignoring the OPEN command detected in a state in which the service request is not received at the beginning of execution of an application corresponding to the service request, and after receiving the service request, And may detect the type of the cloud streaming service as the moving picture when it is detected.

이 때, 유형을 감지하는 단계는 상기 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지할 수 있다.In this case, the type detecting step may detect the type of the cloud streaming service as the moving picture when the Sound Open function is detected in the process of capturing an application corresponding to the service request.

이 때, 우선순위를 부여하는 단계는 상기 유형이 상기 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 상기 유형이 상기 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여할 수 있다.In this case, the step of assigning the priority may lower the priority of the cloud streaming service whose type is the video than the priority of the cloud streaming service, not the video.

이 때, 클라우드 스트리밍 서비스를 제공하는 단계는 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달하지 않은 경우에 상기 우선순위와 상관없이, 상기 서비스 요청 시 상기 클라우드 스트리밍 서비스를 상기 단말 장치에게 바로 제공할 수 있다.The providing of the cloud streaming service may include providing the cloud streaming service to the terminal device at the time of the service request, regardless of the priority, when the streaming pipeline does not reach the concurrent service processing limit .

이 때, 클라우드 스트리밍 서비스를 제공하는 단계는 상기 스트리밍 파이프 라인에서 동시에 처리하는 상기 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달한 것으로 판단할 수 있다.At this time, the step of providing the cloud streaming service may determine that the streaming pipeline has reached the simultaneous processing limit of the service if the number of the cloud streaming services simultaneously processed in the streaming pipeline is equal to or greater than the preset number of concurrent processes have.

이 때, 기설정된 동시 처리 개수는 상기 스트리밍 파이프 라인에서 상기 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작을 수 있다.At this time, the predetermined number of concurrent processes may be smaller than the maximum number of simultaneous processing of the cloud streaming service in the streaming pipeline.

또한, 본 발명의 과제 해결을 위한 또 다른 수단으로써, 상술한 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공한다.As another means for solving the problem of the present invention, there is provided a computer program stored in a medium for executing the above-described method.

또한, 본 발명에 따른 클라우드 스트리밍 서비스 시스템은 사용자로부터 수신한 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하고, 상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하고, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단한 결과에 따라 상기 우선 순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 클라우드 스트리밍 서버; 및 상기 클라우드 스트리밍 서버로부터 상기 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하는 단말을 포함한다.In addition, the cloud streaming service system according to the present invention detects a type of a cloud streaming service corresponding to a service request received from a user, assigns a priority to the cloud streaming service based on the type of the cloud streaming service, A cloud streaming server for providing the cloud streaming service according to a result of determining whether a pipeline reaches a service concurrency limit; And a terminal receiving an application execution result screen corresponding to the cloud streaming service from the cloud streaming server.

본 발명에 따르면, 클라우드 스트리밍 서비스 제공 시, 서비스 품질에 영향을 주지 않으면서 병목 현상 없이 더 많은 수의 어플리케이션을 서비스할 수 있다.According to the present invention, when providing a cloud streaming service, a larger number of applications can be served without bottleneck without affecting service quality.

또한, 본 발명은 클라우드 스트리밍 서비스 제공 시, 클라이언트들로부터 서비스 요청이 집중될 때와 그렇지 않을 때를 구분하여 서비스 방법을 조절함으로써, 보다 효율적으로 클라우드 스트리밍 서비스를 제공할 수 있다.In addition, the present invention can provide a cloud streaming service more efficiently by providing a cloud streaming service by distinguishing between when the service requests are concentrated from the clients and when not.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법을 나타낸 동작 흐름도이다.
도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법을 상세하게 나타낸 동작 흐름도이다.
1 is a block diagram illustrating a cloud streaming service system according to an embodiment of the present invention.
2 is a block diagram illustrating an example of the cloud streaming server shown in FIG.
3 is a flowchart illustrating a service processing method according to a cloud streaming service type according to an embodiment of the present invention.
4 is a detailed flowchart illustrating a service processing method according to a cloud streaming service type according to an exemplary embodiment of the present invention.

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

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.The terms and words used in the present specification and claims should not be construed to be limited to ordinary or dictionary meanings and the inventor is not limited to the concept of terminology for describing his or her invention in the best way. It should be interpreted as meaning and concept consistent with the technical idea of the present invention. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention, and not all of the technical ideas of the present invention are described. Therefore, It is to be understood that equivalents and modifications are possible. Also, the terms first, second, etc. are used for describing various components and are used only for the purpose of distinguishing one component from another component, and are not used to define the components.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템을 나타낸 블록도이다.1 is a block diagram illustrating a cloud streaming service system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 시스템은 클라우드 스트리밍 서버(110), 단말 장치들(120-1, ..., 120-N) 및 네트워크(130)를 포함한다.1, a cloud streaming service system according to an exemplary embodiment of the present invention includes a cloud streaming server 110, terminal devices 120-1 to 120-N, and a network 130 .

클라우드 스트리밍 서버(110)는 사용자의 단말 장치들(120-1, ..., 120-N)로부터 서비스 요청을 수신한다. 단말 장치들(120-1, ..., 120-N)에서 어플리케이션을 구동시키려면 많은 저장공간과 처리능력이 필요하므로, 클라우드 스트리밍 서버(110)에서 구동된 어플리케이션의 구동화면을 압축하여 제공받기 위해 클라우드 스트리밍 서버(110)로 어플리케이션을 실행하기 위한 서비스를 요청할 수 있다.The cloud streaming server 110 receives a service request from the user's terminal devices 120-1, ..., 120-N. Since a large amount of storage space and processing power are required for driving the applications in the terminal devices 120-1 to 120-N, the application screen driven by the cloud streaming server 110 is compressed and received To the cloud streaming server 110 for a service to run the application.

또한, 클라우드 스트리밍 서버(110)는 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지한다. 이 때, 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지할 수 있다. 이 때, OPEN 명령어가 감지된 경우에는 동영상이 재생 중인 것으로 판단하고, 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 이 때, 서비스 요청에 상응하는 어플리케이션의 실행 초기에 서비스 요청을 수신하지 않은 상태에서 감지된 OPEN 명령어는 무시하고, 서비스 요청을 수신한 뒤 OPEN 명령어가 감지된 경우에 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 또한, 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에도 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다.In addition, the cloud streaming server 110 detects the type of cloud streaming service corresponding to the service request. At this time, the cloud streaming service can detect whether the type of the cloud streaming service is a moving picture by detecting an OPEN command for setting an audio device. At this time, if the OPEN command is detected, it is determined that the moving image is being played back, and the type of the cloud streaming service can be detected as a moving image. In this case, the OPEN command detected in the initial stage of execution of the application corresponding to the service request is ignored, and if the OPEN command is detected after receiving the service request, the type of the cloud streaming service is set as a video Can be detected. Also, even when the Sound Open function is detected in the process of capturing an application corresponding to the service request, the type of the cloud streaming service can be detected as a moving picture.

또한, 클라우드 스트리밍 서버(110)는 클라우드 스트리밍 서비스의 유형에 기반하여 클라우드 스트리밍 서비스에 우선순위를 부여한다. 이 때, 유형이 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 유형이 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여할 수 있다.In addition, the cloud streaming server 110 prioritizes the cloud streaming service based on the type of the cloud streaming service. At this time, it is possible to give a low priority to the cloud streaming service whose type is video rather than the priority of the cloud streaming service.

또한, 클라우드 스트리밍 서버(110)는 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 판단결과에 따라 우선순위에 상응하게 클라우드 스트리밍 서비스를 제공한다. 이 때, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달하지 않은 경우에는 우선순위와 상관없이, 서비스 요청 시 클라우드 스트리밍 서비스를 단말 장치에게 바로 제공할 수 있다. 또한, 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달한 것으로 판단할 수 있다. 이 때, 기설정된 동시 처리 개수는 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작을 수 있다.In addition, the cloud streaming server 110 determines whether or not the streaming pipeline capable of simultaneously processing the cloud streaming service has reached the concurrent service processing limit, and determines whether or not the streaming service corresponding to the cloud streaming service to provide. At this time, when the streaming pipeline does not reach the concurrent service concurrency limit, it can directly provide the cloud streaming service to the terminal device at the time of the service request regardless of the priorities. In addition, if the number of simultaneous cloud streaming services simultaneously processed in the streaming pipeline is equal to or greater than the preset number of concurrent processes, it can be determined that the streaming pipeline has reached the concurrent service processing limit. At this time, the preset number of concurrent processes may be less than the maximum number of simultaneous processing of the cloud streaming service in the streaming pipeline.

단말 장치들(120-1, ..., 120-N)은 클라우드 스트리밍 서버(110)로부터 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하여 사용자에게 제공한다.The terminal devices 120-1 to 120-N receive an application execution result screen corresponding to the cloud streaming service from the cloud streaming server 110 and provide them to the user.

단말 장치들(120-1, ..., 120-N)은 각각 통신망에 연결되어 클라우드 컴퓨팅 시스템 기반으로 어플리케이션을 실행할 수 있는 장치로, 이동통신단말기에 한정된 것이 아니고, 모든 정보통신기기, 멀티미디어 단말, 유선 단말, 고정형 단말 및 IP(Internet Protocol) 단말 등의 다양한 단말일 수 있다. 또한, 단말 장치들(120-1, ..., 120-N)은 각각 휴대폰, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book), 개인휴대용 정보단말(Personal Digital Assistant; PDA), 스마트 TV 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말일 수 있다.Each of the terminal devices 120-1 to 120-N is connected to a communication network and is capable of executing applications on the basis of a cloud computing system. The terminal devices 120-1 to 120-N are not limited to mobile communication terminals, , A wired terminal, a fixed terminal, and an IP (Internet Protocol) terminal. Each of the terminal devices 120-1 to 120-N may be a cellular phone, a portable multimedia player (PMP), a mobile internet device (MID), a smart phone, a desktop, A mobile terminal having various mobile communication specifications such as a tablet PC, a notebook computer, a net book, a personal digital assistant (PDA), a smart TV, have.

네트워크(130)는 클라우드 스트리밍 서버(110) 및 단말 장치들(120-1, ..., 120-N) 사이에 데이터를 전달하는 통로를 제공하는 것으로서, 기존에 이용되는 네트워크 및 향후 개발 가능한 네트워크를 모두 포괄하는 개념이다. 예를 들면, 네트워크(130)는 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리 통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 네트워크(130)의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다. 또한, 도 1에서 클라우드 스트리밍 서버(110)와 단말 장치들(120-1, ..., 120-N) 사이에 사용되는 네트워크는 단말 장치들(120-1, ..., 120-N) 상호간에 사용되는 네트워크와 상이한 것일 수도 있고, 동일한 것일 수도 있다.The network 130 provides a pathway for transferring data between the cloud streaming server 110 and the terminal devices 120-1, ..., 120-N, . For example, the network 130 may be a wired or wireless local area network that provides communication of various information devices within a limited area, a mobile communication network that provides communication between mobile objects and mobile objects outside the mobile object, Or a wired / wireless communication network, or a combination of two or more. Meanwhile, the transmission scheme standard of the network 130 is not limited to the existing transmission scheme standard, and may include all transmission scheme standards to be developed in the future. The network used between the cloud streaming server 110 and the terminal devices 120-1 to 120-N in FIG. 1 is a terminal device 120-1 to 120-N, And may be the same or different from the network used for mutual use.

도 2는 도 1에 도시된 클라우드 스트리밍 서버의 일 예를 나타낸 블록도이다.2 is a block diagram illustrating an example of the cloud streaming server shown in FIG.

도 2를 참조하면, 도 1에 도시된 클라우드 스트리밍 서버(110)는 수신부(210), 서비스 유형 감지부(220), 서비스 순위 설정부(230) 및 서비스 제공부(240)을 포함한다.Referring to FIG. 2, the cloud streaming server 110 shown in FIG. 1 includes a receiving unit 210, a service type sensing unit 220, a service ranking unit 230, and a service providing unit 240.

수신부(210)는 사용자의 단말 장치로부터 서비스 요청을 수신한다. 단말 장치에서 어플리케이션을 구동시키려면 단말 장치가 많은 저장공간과 높은 처리 능력을 필요로 할 수 있다. 따라서, 클라우드 스트리밍 서버(110)에서 어플리케이션을 구동시킨 후, 어플리케이션의 구동화면을 압축하여 제공받기 위해서 클라우드 스트리밍 서버(110)로 어플리케이션을 실행하기 위한 서비스를 요청할 수 있다.The receiving unit 210 receives a service request from a user terminal device. In order to drive an application in a terminal device, a terminal device may require a large storage space and high processing capability. Accordingly, after running the application on the cloud streaming server 110, the cloud streaming server 110 may request a service for executing the application in order to compress and provide the application running screen.

서비스 유형 감지부(220)는 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지한다. 클라우드 스트리밍 서버(110)로 요청되는 서비스 중에서는 서비스 요청을 수신하는 즉시 반응하여 서비스를 제공해야 하는 유형이 있는 반면에, 서비스 요청을 수신하더라도 즉시 반응하지 않아도 괜찮은 유형도 존재할 수 있다. 예를 들면, 게임과 같은 경우에는 사용자로부터 서비스 요청이 수신되는 경우에 바로 서비스를 제공해야 하고, 유투브에서 동영상을 재생하는 경우에는 설정 FPS(frame per second)를 맞출 수만 있으면 해당 서비스의 처리 순서를 낮출 수 있는 여지가 생길 수 있다. 따라서, 클라우드 스트리밍 서비스의 유형에 따라 서비스를 처리하는 순서를 스케줄 하여 보다 원활하게 클라우드 스트리밍 서버를 운영할 수 있다.The service type detection unit 220 detects the type of the cloud streaming service corresponding to the service request. Among the services requested to the cloud streaming server 110, there is a type in which a service should be provided in response to receiving a service request. On the other hand, even if a service request is received, there is a possibility that the service does not need to react immediately. For example, in the case of a game, in the case of receiving a service request from a user, a service must be provided immediately. In the case of playing a moving picture on YouTube, if the setting FPS (frame per second) There may be room for lowering. Therefore, according to the type of the cloud streaming service, it is possible to smoothly operate the cloud streaming server by scheduling the order of processing the service.

이 때, 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지할 수 있다. 동영상에는 비디오와 함께 오디오가 포함되어 있을 수 있고, 동영상에서 오디오를 지원하기 위해서는 오디오를 지원하는 디바이스를 설정할 필요가 있다. 따라서 OPEN 및 CLOSE 등의 명령어를 이용하여 오디오를 지원하는 디바이스를 설정할 수 있다. 예를 들어, OPEN 명령어를 통해 오디오와 비디오 재생을 지원하는 MCI(Media Control Interface) 디바이스를 호출하여 설정하고 CLOSE 명령어를 통해 설정을 종료함으로써 MCI 디바이스의 설정에 상응하는 동영상 파일을 재생할 수 있다. 따라서, 오디오 디바이스를 설정하기 위한 OPEN 명령어 감지를 통해 해당 클라우드 스트리밍 서비스의 유형이 동영상인지 확인하는 것이 가능할 수 있다. At this time, the cloud streaming service can detect whether the type of the cloud streaming service is a moving picture by detecting an OPEN command for setting an audio device. Video can include audio with video, and to support audio in video, you need to set up a device that supports audio. Therefore, devices that support audio can be set using commands such as OPEN and CLOSE. For example, a video file corresponding to the setting of the MCI device can be played back by setting and calling an MCI (Media Control Interface) device that supports audio and video playback through the OPEN command and terminating the setting through the CLOSE command. Accordingly, it may be possible to check whether the type of the cloud streaming service is the moving picture through the detection of the OPEN command for setting the audio device.

이 때, OPEN 명령어가 감지된 경우에 동영상이 재생중인 것으로 판단하고 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 특정 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어가 감지되었다면 해당 클라우드 스트리밍 서비스의 유형이 오디오가 포함된 동영상 파일인 것으로 판단할 수 있다.At this time, when the OPEN command is detected, it is determined that the moving image is being played back, and the type of the cloud streaming service can be detected as a moving image. For example, if an OPEN command for setting an audio device in a specific cloud streaming service is detected, it can be determined that the type of the cloud streaming service is a video file including audio.

이 때, 서비스 요청에 상응하는 어플리케이션의 실행 초기에 서비스 요청을 수신하지 않은 상태에서 감지된 OPEN 명령어는 무시하고, 서비스 요청을 수신한 뒤 OPEN 명령어가 감지된 경우에 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 클라우드 스트리밍 서비스의 유형이 게임인 경우에도 어플리케이션 실행 초기에는 오디오 디바이스를 설정하기 위한 OPEN 명령어가 감지될 수 있는데, 본 발명에 따른 감지 방식은 사용자로부터 서비스 요청을 수신한 뒤에 감지되는 OPEN 명령어에 대해서만 클라우드 스트리밍 서비스의 유형을 동영상으로 감지하는데 사용될 수 있다. 따라서, 클라우드 스트리밍 서비스의 유형을 감지하기 위한 것으로 어플리케이션 실행 초기에 사용자로부터의 서비스 요청이 수신되지 않은 상태에서 감지되는 OPEN 명령어는 무시할 수 있다.In this case, the OPEN command detected in the initial stage of execution of the application corresponding to the service request is ignored, and if the OPEN command is detected after receiving the service request, the type of the cloud streaming service is set as a video Can be detected. For example, even when the type of the cloud streaming service is a game, an OPEN command for setting an audio device may be detected at the beginning of application execution. In the detection method according to the present invention, Only commands can be used to detect the type of cloud streaming service as video. Therefore, it is possible to ignore the OPEN command which is detected in a state in which the service request from the user is not received at the initial stage of application execution in order to detect the type of the cloud streaming service.

또한, 클라우드 스트리밍 서비스의 유형이 게임인 경우에도 어플리케이션을 실행 시킨 후 사용자로부터 서비스 요청을 수신한 뒤 오디오 디바이스를 지원하기 위한 OPEN 명령어가 감지된다면, 해당 서비스 요청에 대해서는 클라우드 스트리밍 서비스의 유형을 동영상으로 감지하여 처리할 수 있다.Also, even if the type of the cloud streaming service is a game, if an OPEN command for supporting the audio device is detected after receiving the service request from the user after executing the application after executing the application, the type of the cloud streaming service is referred to as a moving picture Can be detected and processed.

이 때, 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 클라우드 스트리밍 서비스를 통해 제공되는 어플리케이션이 클라우드 스트리밍의 용도로 제작되지 않아 동영상을 재생하는지 알아서 감지할 수 있다. 이와 같은 경우에는 사용자가 단말 장치에서 서비스 요청을 위한 클릭 이벤트를 발생시킨 후, 클라우드 스트리밍 서버(110)에서 해당 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 존재하는지 여부를 감지할 수 있다. Sound Open 함수가 감지되는 경우에는 해당 클라우드 스트리밍 서비스의 유형을 동영상으로 구분할 수 있다.At this time, when the Sound Open function is detected in the process of capturing the application corresponding to the service request, the type of the cloud streaming service can be detected as a moving picture. For example, an application provided through a cloud streaming service can not be made for the purpose of cloud streaming, so that it can detect whether the video is playing. In this case, after the user generates a click event for requesting a service from the terminal, the cloud streaming server 110 may detect whether or not the Sound Open function exists in the process of capturing the application. If the Sound Open function is detected, the type of the cloud streaming service can be classified as a video.

서비스 순위 설정부(230)는 클라우드 스트리밍 서비스의 유형에 기반하여 클라우드 스트리밍 서비스에 우선순위를 부여한다. 상기에서 설명한 것과 같이 클라우드 스트리밍 서버(110)로 요청되는 서비스에는 서비스 요청을 수신하는 즉시 반응해야 하는 게임 같은 유형과, 서비스 요청을 수신하더라도 실제 서비스를 제공하기까지 어느 정도 처리를 늦출 수 있는 동영상과 같은 유형이 존재할 수 있다. 따라서, 서비스의 유형에 따라 즉시 처리해야 하는 클라우드 스트리밍 서비스에는 우선순위를 높게 부여하고, 즉시 처리하지 않아도 되는 클라우드 스트리밍 서비스는 우선순위를 낮게 부여하는 방식으로 서비스를 처리하는 스트리밍 파이프 라인을 스케줄링 함으로써 보다 원활한 클라우드 스트리밍 서비스를 제공할 수 있다.The service rank setting unit 230 assigns priority to the cloud streaming service based on the type of the cloud streaming service. As described above, the service requested by the cloud streaming server 110 includes a game-like type that must react immediately upon receipt of a service request, a video that can delay processing to some extent until a real service is provided even if the service request is received, The same type can exist. Accordingly, by scheduling a streaming pipeline that processes a service in a manner that gives a high priority to a cloud streaming service that needs to be processed immediately according to the type of service and a low priority of a cloud streaming service that does not need to be immediately processed It is possible to provide a seamless cloud streaming service.

이 때, 유형이 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 유형이 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여할 수 있다. 예를 들어, 게임과 같은 유형의 클라우드 스트리밍 서비스는 동영상보다 우선순위를 높게 부여함으로써 사용자에게 보다 신속하게 서비스를 제공할 수 있도록 할 수 있다.At this time, it is possible to give a low priority to the cloud streaming service whose type is video rather than the priority of the cloud streaming service. For example, a cloud streaming service of the same type as a game can be given a higher priority than a video, thereby providing a service to the user more quickly.

서비스 제공부(240)는 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 판단결과에 따라 우선순위에 상응하게 클라우드 스트리밍 서비스를 제공한다. The service providing unit 240 determines whether or not the streaming pipeline capable of concurrently processing the cloud streaming service reaches the concurrent service processing limit and provides the cloud streaming service according to the priority according to the determination result .

파이프 라인은 컴퓨터의 중앙 처리 장치를 최적화하여 사용할 수 있는 데이터 처리 과정으로, 하나의 프로세서를 서로 다른 기능을 가진 여러 개의 서브프로세서로 나누어 각각의 서브프로세서가 동시에 다른 데이터를 처리하도록 설계하는 방식이다. 예를 들어, 컴퓨터 명령어는 일반적으로 인출, 분석, 내용인출 및 수행의 4단계를 거치는데, 파이프 라인 방식을 적용하지 않으면 컴퓨터 프로세서가 명령어들을 입력된 순서대로 하나씩 단계에 따라 처리할 수 밖에 없다. 그러나 파이프 라인 방식에서는 명령어를 병렬 처리할 수 있으므로 처리 속도를 높일 수 있다. 따라서 이와 같은 파이프 라인을 클라우드 스트리밍 서버(110)에 적용하여 클라우드 스트리밍 서비스를 단계별로 병렬 처리함으로써 클라우드 스트리밍 서버(110)의 서비스 속도를 향상시킬 수 있다.A pipeline is a data processing process that can be used to optimize a computer's central processing unit. It divides one processor into several sub-processors with different functions, and each sub-processor simultaneously processes different data. For example, computer instructions typically go through four stages: fetching, analyzing, fetching, and executing. Without pipelining, the computer processor must step through the instructions one by one in the order in which they are entered. However, the pipelined method can increase the processing speed because the instructions can be processed in parallel. Accordingly, such a pipeline may be applied to the cloud streaming server 110, and the cloud streaming service may be processed in parallel in stages to improve the service speed of the cloud streaming server 110.

이와 같은 스트리밍 파이프 라인에도 동시에 서비스를 처리할 수 있는 한계점이 있으며, 이 한계를 초과하도록 서비스 처리를 수행하면 해당 처리 구간의 성능이 저하되거나 마비되는 병목 현상이 발생할 수 있다. 따라서, 병목 현상이 발생하면 전체 시스템의 효율 저하를 초래할 수 있기 때문에, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달할 것 같다고 예상되면 처리해야 할 클라우드 스트리밍 서비스의 수를 줄여 병목 현상을 방지할 수 있다. 이 때, 클라우드 스트리밍 서비스에 부여된 우선순위를 이용하여 즉시 처리할 서비스의 수를 감소시킬 수 있다.There is a limit to such a streaming pipeline that services can be processed at the same time. If service processing is performed to exceed the limit, performance of the corresponding processing section may be degraded or a bottleneck may be caused. Thus, bottlenecks can lead to degradation in overall system efficiency, so if the streaming pipeline is expected to reach service concurrency limits, you can reduce bottlenecks by reducing the number of cloud streaming services that need to be handled . At this time, the number of services to be immediately processed can be reduced by using the priority given to the cloud streaming service.

이 때, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달하지 않은 경우에 우선순위와 상관없이, 서비스 요청 시 클라우드 스트리밍 서비스를 단말 장치에게 바로 제공할 수 있다. 사용자에 의해 서비스 요청이 들어온 클라우드 스트리밍 서비스의 우선순위가 낮다고 하더라도, 스트리밍 파이프 라인에서 서비스를 처리할 수 있을 만큼 여유가 있다면 우선순위에 따라 처리를 늦추지 않고 바로 처리하여 서비스를 제공할 수 있다.At this time, when the streaming pipeline does not reach the concurrent service concurrency limit, it can directly provide the cloud streaming service to the terminal device at the time of the service request regardless of the priorities. Even if the priority of the cloud streaming service received by the user is low, if the streaming pipeline has enough time to process the service, the service can be provided by processing the streaming service immediately according to the priority.

이 때, 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달한 것으로 판단할 수 있다.At this time, if the number of simultaneous cloud streaming services to be processed simultaneously in the streaming pipeline is equal to or greater than the preset number of simultaneous processes, it can be determined that the streaming pipeline reaches the concurrent service processing limit.

이 때, 기설정된 동시 처리 개수는 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작을 수 있다. 예를 들어, 스트리밍 파이프 라인의 한계를 예측하는 기준 값이 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수로 설정된다면, 예측과 동시에 병목 현상이 발생할 수 있다. 따라서, 병목 현상을 예측할 수 있는 기준 값인 기설정된 동시 처리 개수를 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다는 작게 설정하여 예측과 동시에 병목 현상이 발생하는 것을 방지할 수 있다. 또한, 기설정된 동시 처리 개수는 클라우드 스트리밍 서버(110)의 관리자에 의해 자유롭게 설정될 수 있다.At this time, the preset number of concurrent processes may be less than the maximum number of simultaneous processing of the cloud streaming service in the streaming pipeline. For example, if the threshold value that predicts the limits of a streaming pipeline is set to the maximum number of concurrent streams of the cloud streaming service in the streaming pipeline, a bottleneck may occur at the same time as the prediction. Therefore, it is possible to prevent bottlenecks at the same time by setting the preset number of concurrent processes, which is a reference value for predicting a bottleneck phenomenon, to be smaller than the maximum number that can simultaneously process the cloud streaming service in the streaming pipeline. In addition, the predetermined number of simultaneous processes can be freely set by the administrator of the cloud streaming server 110.

도 3은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법을 나타낸 동작 흐름도이다.3 is a flowchart illustrating a service processing method according to a cloud streaming service type according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 사용자 단말 장치로부터 서비스 요청을 수신한다(S310). 단말 장치에서 어플리케이션을 구동시키려면 단말 장치가 많은 저장공간과 높은 처리 능력을 필요로 할 수 있다. 따라서, 클라우드 스트리밍 서버에서 어플리케이션을 구동시킨 후, 어플리케이션의 구동화면을 압축하여 제공받기 위해서 클라우드 스트리밍 서버로 어플리케이션을 실행하기 위한 서비스를 요청할 수 있다.Referring to FIG. 3, a service processing method according to the type of a cloud streaming service according to an embodiment of the present invention receives a service request from a user terminal (S310). In order to drive an application in a terminal device, a terminal device may require a large storage space and high processing capability. Accordingly, after running the application on the cloud streaming server, the application can request a service for running the application on the cloud streaming server in order to compress and provide the application running screen.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지한다(S320). 클라우드 스트리밍 서버로 요청되는 서비스 중에서는 서비스 요청을 수신하는 즉시 반응하여 서비스를 제공해야 하는 유형이 있는 반면에, 서비스 요청을 수신하더라도 즉시 반응하지 않아도 괜찮은 유형도 존재할 수 있다. 예를 들면, 게임과 같은 경우에는 사용자로부터 서비스 요청이 수신되는 경우에 바로 서비스를 제공해야 하고, 유투브에서 동영상을 재생하는 경우에는 설정 FPS(frame per second)를 맞출 수만 있으면 해당 서비스의 처리 순서를 낮출 수 있는 여지가 생길 수 있다. 따라서, 클라우드 스트리밍 서비스의 유형에 따라 서비스를 처리하는 순서를 스케줄링 하여 보다 원활하게 클라우드 스트리밍 서버를 운영할 수 있다.In addition, the service processing method according to the type of the cloud streaming service according to the embodiment of the present invention detects the type of the cloud streaming service corresponding to the service request (S320). Among the services requested by the cloud streaming server, there is a type in which a service should be provided immediately after receiving a service request. On the other hand, even if a service request is received, there may be a type that does not need to react immediately. For example, in the case of a game, in the case of receiving a service request from a user, a service must be provided immediately. In the case of playing a moving picture on YouTube, if the setting FPS (frame per second) There may be room for lowering. Therefore, according to the type of the cloud streaming service, it is possible to smoothly operate the cloud streaming server by scheduling the order of processing the service.

이 때, 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지할 수 있다. 동영상에는 비디오와 함께 오디오가 포함되어 있을 수 있고, 동영상에서 오디오를 지원하기 위해서는 오디오를 지원하는 디바이스를 설정할 필요가 있다. 따라서 OPEN 및 CLOSE 등의 명령어를 이용하여 오디오를 지원하는 디바이스를 설정할 수 있다. 예를 들어, OPEN 명령어를 통해 오디오와 비디오 재생을 지원하는 MCI(Media Control Interface) 디바이스를 호출하여 설정하고 CLOSE 명령어를 통해 설정을 종료함으로써 MCI 디바이스의 설정에 상응하는 동영상 파일을 재생할 수 있다. 따라서, 오디오 디바이스를 설정하기 위한 OPEN 명령어 감지를 통해 해당 클라우드 스트리밍 서비스의 유형이 동영상인지 확인하는 것이 가능할 수 있다.At this time, the cloud streaming service can detect whether the type of the cloud streaming service is a moving picture by detecting an OPEN command for setting an audio device. Video can include audio with video, and to support audio in video, you need to set up a device that supports audio. Therefore, devices that support audio can be set using commands such as OPEN and CLOSE. For example, a video file corresponding to the setting of the MCI device can be played back by setting and calling an MCI (Media Control Interface) device that supports audio and video playback through the OPEN command and terminating the setting through the CLOSE command. Accordingly, it may be possible to check whether the type of the cloud streaming service is the moving picture through the detection of the OPEN command for setting the audio device.

이 때, OPEN 명령어가 감지된 경우에 동영상이 재생중인 것으로 판단하고 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 특정 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어가 감지되었다면 해당 클라우드 스트리밍 서비스의 유형이 오디오가 포함된 동영상 파일인 것으로 판단할 수 있다.At this time, when the OPEN command is detected, it is determined that the moving image is being played back, and the type of the cloud streaming service can be detected as a moving image. For example, if an OPEN command for setting an audio device in a specific cloud streaming service is detected, it can be determined that the type of the cloud streaming service is a video file including audio.

이 때, 서비스 요청에 상응하는 어플리케이션의 실행 초기에 서비스 요청을 수신하지 않은 상태에서 감지된 OPEN 명령어는 무시하고, 서비스 요청을 수신한 뒤 OPEN 명령어가 감지된 경우에 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 클라우드 스트리밍 서비스의 유형이 게임인 경우에도 어플리케이션 실행 초기에는 오디오 디바이스를 설정하기 위한 OPEN 명령어가 감지될 수 있는데, 본 발명에 따른 감지 방식은 사용자로부터 서비스 요청을 수신한 뒤에 감지되는 OPEN 명령어에 대해서만 클라우드 스트리밍 서비스의 유형을 동영상으로 감지하는데 사용될 수 있다. 따라서, 클라우드 스트리밍 서비스의 유형을 감지하기 위한 것으로 어플리케이션 실행 초기에 사용자로부터의 서비스 요청이 수신되지 않은 상태에서 감지되는 OPEN 명령어는 무시할 수 있다.In this case, the OPEN command detected in the initial stage of execution of the application corresponding to the service request is ignored, and if the OPEN command is detected after receiving the service request, the type of the cloud streaming service is set as a video Can be detected. For example, even when the type of the cloud streaming service is a game, an OPEN command for setting an audio device may be detected at the beginning of application execution. In the detection method according to the present invention, Only commands can be used to detect the type of cloud streaming service as video. Therefore, it is possible to ignore the OPEN command which is detected in a state in which the service request from the user is not received at the initial stage of application execution in order to detect the type of the cloud streaming service.

또한, 클라우드 스트리밍 서비스의 유형이 게임인 경우에도 어플리케이션을 실행 시킨 후 사용자로부터 서비스 요청을 수신한 뒤 오디오 디바이스를 지원하기 위한 OPEN 명령어가 감지된다면, 해당 서비스 요청에 대해서는 클라우드 스트리밍 서비스의 유형을 동영상으로 감지하여 처리할 수 있다.Also, even if the type of the cloud streaming service is a game, if an OPEN command for supporting the audio device is detected after receiving the service request from the user after executing the application after executing the application, the type of the cloud streaming service is referred to as a moving picture Can be detected and processed.

이 때, 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 클라우드 스트리밍 서비스의 유형을 동영상으로 감지할 수 있다. 예를 들어, 클라우드 스트리밍 서비스를 통해 제공되는 어플리케이션이 클라우드 스트리밍의 용도로 제작되지 않아 동영상을 재생하는지 알아서 감지할 수 있다. 이와 같은 경우에는 사용자가 단말 장치에서 서비스 요청을 위한 클릭 이벤트를 발생시킨 후, 클라우드 스트리밍 서버에서 해당 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 존재하는지 여부를 감지할 수 있다. Sound Open 함수가 감지되는 경우에는 해당 클라우드 스트리밍 서비스의 유형을 동영상으로 구분할 수 있다.At this time, when the Sound Open function is detected in the process of capturing the application corresponding to the service request, the type of the cloud streaming service can be detected as a moving picture. For example, an application provided through a cloud streaming service can not be made for the purpose of cloud streaming, so that it can detect whether the video is playing. In such a case, after the user generates a click event for requesting a service in the terminal device, it can detect whether or not the Sound Open function exists in the process of capturing the application in the cloud streaming server. If the Sound Open function is detected, the type of the cloud streaming service can be classified as a video.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 클라우드 스트리밍 서비스의 유형에 기반하여 클라우드 스트리밍 서비스에 우선순위를 부여한다(S330). 상기에서 설명한 것과 같이 클라우드 스트리밍 서버로 요청되는 서비스에는 서비스 요청을 수신하는 즉시 반응해야 하는 게임 같은 유형과, 서비스 요청을 수신하더라도 실제 서비스를 제공하기까지 어느 정도 처리를 늦출 수 있는 동영상과 같은 유형이 존재할 수 있다. 따라서, 서비스의 유형에 따라 즉시 처리해야 하는 클라우드 스트리밍 서비스에는 우선순위를 높게 부여하고, 즉시 처리하지 않아도 되는 클라우드 스트리밍 서비스는 우선순위를 낮게 부여하는 방식으로 서비스를 처리하는 스트리밍 파이프 라인을 스케줄링 함으로써 보다 원활한 클라우드 스트리밍 서비스를 제공할 수 있다.In addition, the service processing method according to the type of the cloud streaming service according to the embodiment of the present invention gives priority to the cloud streaming service based on the type of the cloud streaming service (S330). As described above, the service requested by the cloud streaming server includes a type such as a game which must react immediately upon receipt of a service request, and a type such as a video which can delay processing to some extent until a real service is provided even if the service request is received Can exist. Accordingly, by scheduling a streaming pipeline that processes a service in a manner that gives a high priority to a cloud streaming service that needs to be processed immediately according to the type of service and a low priority of a cloud streaming service that does not need to be immediately processed It is possible to provide a seamless cloud streaming service.

이 때, 유형이 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 유형이 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여할 수 있다. 예를 들어, 게임과 같은 유형의 클라우드 스트리밍 서비스는 동영상보다 우선순위를 높게 부여함으로써 사용자에게 보다 신속하게 서비스를 제공할 수 있도록 할 수 있다.At this time, it is possible to give a low priority to the cloud streaming service whose type is video rather than the priority of the cloud streaming service. For example, a cloud streaming service of the same type as a game can be given a higher priority than a video, thereby providing a service to the user more quickly.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 판단 결과에 따라 우선순위에 상응하게 클라우드 스트리밍 서비스를 제공한다(S340).In addition, the service processing method according to the type of cloud streaming service according to an embodiment of the present invention determines whether or not the streaming pipeline capable of simultaneously processing the cloud streaming service concurrently reaches the concurrent service processing limit, And provides the cloud streaming service in accordance with the priority in step S340.

파이프 라인은 컴퓨터의 중앙 처리 장치를 최적화하여 사용할 수 있는 데이터 처리 과정으로, 하나의 프로세서를 서로 다른 기능을 가진 여러 개의 서브프로세서로 나누어 각각의 서브프로세서가 동시에 다른 데이터를 처리하도록 설계하는 방식이다. 예를 들어, 컴퓨터 명령어는 일반적으로 인출, 분석, 내용인출 및 수행의 4단계를 거치는데, 파이프 라인 방식을 적용하지 않으면 컴퓨터 프로세서가 명령어들을 입력된 순서대로 하나씩 단계에 따라 처리할 수 밖에 없다. 그러나 파이프 라인 방식에서는 명령어를 병렬 처리할 수 있으므로 처리 속도를 높일 수 있다. 따라서 이와 같은 파이프 라인을 클라우드 스트리밍 서버에 적용하여 클라우드 스트리밍 서비스를 단계별로 병렬 처리함으로써 클라우드 스트리밍 서버의 서비스 속도를 향상시킬 수 있다.A pipeline is a data processing process that can be used to optimize a computer's central processing unit. It divides one processor into several sub-processors with different functions, and each sub-processor simultaneously processes different data. For example, computer instructions typically go through four stages: fetching, analyzing, fetching, and executing. Without pipelining, the computer processor must step through the instructions one by one in the order in which they are entered. However, the pipelined method can increase the processing speed because the instructions can be processed in parallel. Therefore, by applying such a pipeline to a cloud streaming server, it is possible to improve the service speed of the cloud streaming server by parallel processing the cloud streaming service step by step.

이와 같은 스트리밍 파이프 라인에도 동시에 서비스를 처리할 수 있는 한계점이 있으며, 이 한계를 초과하도록 서비스 처리를 수행하면 해당 처리 구간의 성능이 저하되거나 마비되는 병목 현상이 발생할 수 있다. 따라서, 병목 현상이 발생하면 전체 시스템의 효율 저하를 초래할 수 있기 때문에, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달할 것 같다고 예상되면 처리해야 할 클라우드 스트리밍 서비스의 수를 줄여 병목 현상을 방지할 수 있다. 이 때, 클라우드 스트리밍 서비스에 부여된 우선순위를 이용하여 즉시 처리할 서비스의 수를 감소시킬 수 있다.There is a limit to such a streaming pipeline that services can be processed at the same time. If service processing is performed to exceed the limit, performance of the corresponding processing section may be degraded or a bottleneck may be caused. Thus, bottlenecks can lead to degradation in overall system efficiency, so if the streaming pipeline is expected to reach service concurrency limits, you can reduce bottlenecks by reducing the number of cloud streaming services that need to be handled . At this time, the number of services to be immediately processed can be reduced by using the priority given to the cloud streaming service.

이 때, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달하지 않은 경우에 우선순위와 상관없이, 서비스 요청 시 클라우드 스트리밍 서비스를 단말 장치에게 바로 제공할 수 있다. 사용자에 의해 서비스 요청이 들어온 클라우드 스트리밍 서비스의 우선순위가 낮다고 하더라도, 스트리밍 파이프 라인에서 서비스를 처리할 수 있을 만큼 여유가 있다면 우선순위에 따라 처리를 늦추지 않고 바로 처리하여 서비스를 제공할 수 있다.At this time, when the streaming pipeline does not reach the concurrent service concurrency limit, it can directly provide the cloud streaming service to the terminal device at the time of the service request regardless of the priorities. Even if the priority of the cloud streaming service received by the user is low, if the streaming pipeline has enough time to process the service, the service can be provided by processing the streaming service immediately according to the priority.

이 때, 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달한 것으로 판단할 수 있다.At this time, if the number of simultaneous cloud streaming services to be processed simultaneously in the streaming pipeline is equal to or greater than the preset number of simultaneous processes, it can be determined that the streaming pipeline reaches the concurrent service processing limit.

이 때, 기설정된 동시 처리 개수는 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작을 수 있다. 예를 들어, 스트리밍 파이프 라인의 한계를 예측하는 기준 값이 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수로 설정된다면, 예측과 동시에 병목 현상이 발생할 수 있다. 따라서, 병목 현상을 예측할 수 있는 기준 값인 기설정된 동시 처리 개수를 스트리밍 파이프 라인에서 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다는 작게 설정하여 예측과 동시에 병목 현상이 발생하는 것을 방지할 수 있다. 또한, 기설정된 동시 처리 개수는 클라우드 스트리밍 서버의 관리자에 의해 자유롭게 설정될 수 있다.At this time, the preset number of concurrent processes may be less than the maximum number of simultaneous processing of the cloud streaming service in the streaming pipeline. For example, if the threshold value that predicts the limits of a streaming pipeline is set to the maximum number of concurrent streams of the cloud streaming service in the streaming pipeline, a bottleneck may occur at the same time as the prediction. Therefore, it is possible to prevent bottlenecks at the same time by setting the preset number of concurrent processes, which is a reference value for predicting a bottleneck phenomenon, to be smaller than the maximum number that can simultaneously process the cloud streaming service in the streaming pipeline. In addition, the predetermined number of simultaneous processes can be freely set by the administrator of the cloud streaming server.

도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법을 상세하게 나타낸 동작 흐름도이다.4 is a detailed flowchart illustrating a service processing method according to a cloud streaming service type according to an exemplary embodiment of the present invention.

도 4를 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 먼저 클라우드 스트리밍 서버가 사용자 단말 장치로부터 서비스 요청을 수신한다(S410).Referring to FIG. 4, in a service processing method according to a cloud streaming service type according to an embodiment of the present invention, a cloud streaming server receives a service request from a user terminal device (S410).

이 후, 클라우드 스트리밍 서버에서 사용자의 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지한다(S420).Thereafter, the cloud streaming server detects the type of the cloud streaming service corresponding to the service request of the user (S420).

클라우드 스트리밍 서버는 사용자의 서비스 요청에 상응하는 클라우드 스트리밍 서비스가 동영상인지 여부를 파악하기 위해, 오디오 디바이스를 설정하기 위한 OPEN 명령어가 감지되는지 여부를 판단한다(S425).The cloud streaming server determines whether an OPEN command for setting an audio device is detected (S425) to determine whether the cloud streaming service corresponding to the user's service request is a moving image.

단계(S425)의 판단결과 OPEN 명령어가 감지되지 않는다면, 클라우드 스트리밍 서비스의 유형이 동영상이 아닌 것으로 감지한다(S430).If it is determined in step S425 that the OPEN command is not detected, it is determined that the type of the cloud streaming service is not a moving image (S430).

단계(S425)의 판단결과 OPEN 명령어가 감지된다면, 클라우드 스트리밍 서비스의 유형을 동영상으로 감지한다(S440).If the OPEN command is detected in step S425, the type of the cloud streaming service is detected as a moving image (S440).

이 후, 클라우드 스트리밍 서버는 감지된 클라우드 스트리밍 서비스의 유형에 따라 우선순위를 부여한다(S450).Thereafter, the cloud streaming server assigns priorities according to the type of the detected cloud streaming service (S450).

클라우드 스트리밍 서버는 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상인지 판단한다(S455).The cloud streaming server determines whether the number of simultaneously processed cloud streaming services in the streaming pipeline is equal to or greater than a preset number of concurrent processes (S455).

단계(S455)의 판단결과 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면, 클라우드 스트리밍 서비스에 부여된 우선순위에 따라 서비스를 처리하여 사용자에게 제공한다(S460).If it is determined in step S455 that the number of the cloud streaming services to be simultaneously processed by the streaming pipeline is equal to or greater than the preset number of simultaneous processes, the service is processed according to the priority given to the cloud streaming service and is provided to the user in step S460.

단계(S455)의 판단결과 스트리밍 파이프 라인에서 동시에 처리하는 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 미만이면, 사용자로부터 서비스 요청을 수신하는 즉시 클라우드 스트리밍 서비스를 처리하여 제공한다(S470).If it is determined in step S455 that the number of the cloud streaming services to be simultaneously processed by the streaming pipeline is less than the preset number of simultaneous processes, the cloud streaming service is processed and provided immediately after receiving the service request from the user in operation S470.

본 발명에 따른 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The service processing method according to the type of the cloud streaming service according to the present invention can be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and configured for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Includes all types of hardware devices that are specially configured to store and execute magneto-optical media and program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상에서와 같이 본 발명에 따른 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 유형에 따른 서비스 처리 방법 및 이를 위한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the cloud streaming service system, the service processing method according to the cloud streaming service type, and the apparatus therefor according to the present invention are not limited to the configuration and method of the embodiments described above, The examples may be constructed by selectively combining all or a part of each embodiment so that various modifications can be made.

본 발명에 의하면 사용자의 단말 장치로부터 서비스 요청을 수신하고, 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하고, 클라우드 스트리밍 서비스의 유형에 기반하여 클라우드 스트리밍 서비스에 우선순위를 부여하고, 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부에 따라 우선순위에 상응하게 클라우드 스트리밍 서비스를 제공할 수 있다. 나아가, 서버에서는 더 많은 수의 클라이언트들에게 서비스를 원활하게 제공하는 것이 가능하고, 서버를 증축하지 않고도 클라우드 스트리밍 서비스를 보다 많이 제공할 수 있으므로 비용을 절약하는 효과를 가져올 수 있다.According to the present invention, a service request is received from a user terminal, a type of a cloud streaming service corresponding to a service request is detected, a priority is given to a cloud streaming service based on the type of the cloud streaming service, The streaming pipeline capable of processing concurrently at the same time can provide the cloud streaming service in accordance with the priority according to whether or not the concurrent processing limit of the service has been reached. Furthermore, the server can provide more services to a larger number of clients, and it can provide more cloud streaming services without increasing the number of servers, thereby saving money.

110: 클라우드 스트리밍 서버 120-1~ 120-N: 단말 장치
130: 네트워크 210: 수신부
220: 서비스 유형 감지부 230: 서비스 순위 설정부
240: 서비스 제공부
110: Cloud streaming servers 120-1 to 120-N:
130: Network 210: Receiver
220: service type sensing unit 230: service rank setting unit
240: Service Offering

Claims (20)

사용자의 단말 장치로부터 서비스 요청을 수신하는 수신부;
상기 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하는 서비스 유형 감지부;
상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하는 서비스 순위 설정부; 및
상기 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 상기 판단결과에 따라 상기 우선순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 서비스 제공부
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서버.
A receiving unit for receiving a service request from a user terminal device;
A service type sensing unit for sensing a type of a cloud streaming service corresponding to the service request;
A service rank setting unit for assigning a priority to the cloud streaming service based on the type of the cloud streaming service; And
Determining whether a streaming pipeline capable of concurrently and concurrently processing the cloud streaming service has reached a concurrent service processing limit, and providing the cloud streaming service according to the priority according to the determination result;
Wherein the server comprises:
청구항 1에 있어서,
상기 서비스 유형 감지부는
상기 클라우드 스트리밍 서비스에서 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 상기 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method according to claim 1,
The service type sensing unit
Wherein the cloud streaming service detects whether the type of the cloud streaming service is a video by sensing an OPEN command for setting an audio device in the cloud streaming service.
청구항 2에 있어서,
상기 서비스 유형 감지부는
상기 OPEN 명령어가 감지된 경우에 상기 동영상이 재생중인 것으로 판단하고 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 2,
The service type sensing unit
Wherein the controller determines that the moving picture is being reproduced when the OPEN command is detected and detects the type of the cloud streaming service as the moving picture.
청구항 3에 있어서,
상기 서비스 유형 감지부는
상기 서비스 요청에 상응하는 어플리케이션의 실행 초기에 상기 서비스 요청을 수신하지 않은 상태에서 감지된 상기 OPEN 명령어는 무시하고, 상기 서비스 요청을 수신한 뒤 상기 OPEN 명령어가 감지된 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 3,
The service type sensing unit
The OPEN command is ignored in the initial stage of execution of the application corresponding to the service request and the service request is not received, and if the OPEN command is detected after receiving the service request, the type of the cloud streaming service Is detected as the moving image.
청구항 3에 있어서,
상기 서비스 유형 감지부는
상기 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 3,
The service type sensing unit
Wherein the type of the cloud streaming service is detected as the moving image when a Sound Open function is detected in the process of capturing an application corresponding to the service request.
청구항 5에 있어서,
상기 서비스 순위 설정부는
상기 유형이 상기 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 상기 유형이 상기 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 5,
The service rank setting unit
Wherein the type is a priority of a cloud streaming service, the type of which is lower than a priority of a cloud streaming service, and the type of which is lower than a priority of a cloud streaming service.
청구항 6에 있어서,
상기 서비스 제공부는
상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달하지 않은 경우에 상기 우선순위와 상관없이, 상기 서비스 요청 시 상기 클라우드 스트리밍 서비스를 상기 단말 장치에게 바로 제공하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 6,
The service providing unit
And provides the cloud streaming service to the terminal device at the time of the service request, regardless of the priority, when the streaming pipeline does not reach the concurrent service processing limit.
청구항 7에 있어서,
상기 서비스 제공부는
상기 스트리밍 파이프 라인에서 동시에 처리하는 상기 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달한 것으로 판단하는 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 7,
The service providing unit
Wherein the streaming pipeline determines that the streaming pipeline has reached the concurrent service concurrency limit if the number of concurrent cloud streaming services to be concurrently processed in the streaming pipeline is greater than or equal to a predetermined number of simultaneous processes.
청구항 8에 있어서,
상기 기설정된 동시 처리 개수는
상기 스트리밍 파이프 라인에서 상기 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작은 것을 특징으로 하는 클라우드 스트리밍 서버.
The method of claim 8,
The preset number of simultaneous processes is
Is less than a maximum number that can simultaneously process the cloud streaming service in the streaming pipeline.
사용자의 단말 장치로부터 서비스 요청을 수신하는 단계;
상기 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하는 단계;
상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하는 단계; 및
상기 클라우드 스트리밍 서비스를 병렬적으로 동시에 처리할 수 있는 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단하고, 상기 판단결과에 따라 상기 우선순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 단계
를 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
Receiving a service request from a user terminal device;
Detecting a type of a cloud streaming service corresponding to the service request;
Assigning a priority to the cloud streaming service based on the type of the cloud streaming service; And
Determining whether a streaming pipeline capable of concurrently and concurrently processing the cloud streaming service has reached a concurrent service processing limit, and providing the cloud streaming service according to the priority according to the determination result
The method of claim 1, wherein the service type is a service type of a cloud streaming service.
청구항 10에 있어서,
상기 유형을 감지하는 단계는
상기 클라우드 스트리밍 서비스의 오디오 디바이스를 설정하기 위한 OPEN 명령어를 감지하여 상기 클라우드 스트리밍 서비스의 유형이 동영상인지 여부를 감지하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
The method of claim 10,
The step of sensing the type
Detecting an OPEN command for setting an audio device of the cloud streaming service, and detecting whether the type of the cloud streaming service is a moving picture.
청구항 11에 있어서,
상기 유형을 감지하는 단계는
상기 OPEN 명령어가 감지된 경우에 상기 동영상이 재생중인 것으로 판단하고 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
The method of claim 11,
The step of sensing the type
When the OPEN command is detected, determining that the moving picture is being played back and detecting the type of the cloud streaming service as the moving picture.
청구항 12에 있어서,
상기 유형을 감지하는 단계는
상기 서비스 요청에 상응하는 어플리케이션의 실행 초기에 상기 서비스 요청을 수신하지 않은 상태에서 감지된 상기 OPEN 명령어는 무시하고, 상기 서비스 요청을 수신한 뒤 상기 OPEN 명령어가 감지된 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
The method of claim 12,
The step of sensing the type
The OPEN command is ignored in the initial stage of execution of the application corresponding to the service request and the service request is not received, and if the OPEN command is detected after receiving the service request, the type of the cloud streaming service The method comprising the steps of: detecting a video stream as a video stream;
청구항 12에 있어서,
상기 유형을 감지하는 단계는
상기 서비스 요청에 상응하는 어플리케이션을 캡처하는 과정에서 Sound Open 함수가 감지되는 경우에 상기 클라우드 스트리밍 서비스의 유형을 상기 동영상으로 감지하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
The method of claim 12,
The step of sensing the type
And when the Sound Open function is detected in the process of capturing an application corresponding to the service request, the type of the cloud streaming service is detected as the moving image.
청구항 14에 있어서,
상기 우선순위를 부여하는 단계는
상기 유형이 상기 동영상이 아닌 클라우드 스트리밍 서비스의 우선순위보다 상기 유형이 상기 동영상인 클라우드 스트리밍 서비스의 우선순위를 낮게 부여하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
15. The method of claim 14,
The step of assigning the priority
Wherein the type is a priority of a cloud streaming service, the type of which is lower than a priority of a cloud streaming service, and the type of which is lower than a priority of a cloud streaming service.
청구항 15에 있어서,
상기 클라우드 스트리밍 서비스를 제공하는 단계는
상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달하지 않은 경우에 상기 우선순위와 상관없이, 상기 서비스 요청 시 상기 클라우드 스트리밍 서비스를 상기 단말 장치에게 바로 제공하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
16. The method of claim 15,
The step of providing the cloud streaming service
Wherein the service provider directly provides the cloud streaming service to the terminal device upon the service request regardless of the priority when the streaming pipeline does not reach the concurrent service processing limit. A service processing method according to the present invention.
청구항 16에 있어서,
상기 클라우드 스트리밍 서비스를 제공하는 단계는
상기 스트리밍 파이프 라인에서 동시에 처리하는 상기 클라우드 스트리밍 서비스의 개수가 기설정된 동시 처리 개수 이상이면 상기 스트리밍 파이프 라인이 상기 서비스 동시 처리 한계에 도달한 것으로 판단하는 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
18. The method of claim 16,
The step of providing the cloud streaming service
Wherein the streaming pipeline determines that the streaming pipeline has reached the concurrent service concurrency limit if the number of concurrent cloud streaming services to be simultaneously processed in the streaming pipeline is equal to or greater than a preset number of simultaneous processes. How to service.
청구항 17에 있어서,
상기 기설정된 동시 처리 개수는
상기 스트리밍 파이프 라인에서 상기 클라우드 스트리밍 서비스를 동시에 처리할 수 있는 최대 개수보다 작은 것을 특징으로 하는 클라우드 스트리밍 서비스의 서비스 유형에 따른 서비스 처리 방법.
18. The method of claim 17,
The preset number of simultaneous processes is
Wherein the streaming pipeline is smaller than a maximum number of concurrently processing the cloud streaming service in the streaming pipeline.
청구항 10 내지 18 중 어느 한 항에 기재된 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.A computer program stored on a medium for carrying out the method of any one of claims 10 to 18. 사용자로부터 수신한 서비스 요청에 상응하는 클라우드 스트리밍 서비스의 유형을 감지하고, 상기 클라우드 스트리밍 서비스의 유형에 기반하여 상기 클라우드 스트리밍 서비스에 우선순위를 부여하고, 스트리밍 파이프 라인이 서비스 동시 처리 한계에 도달했는지 여부를 판단한 결과에 따라 상기 우선 순위에 상응하게 상기 클라우드 스트리밍 서비스를 제공하는 클라우드 스트리밍 서버; 및
상기 클라우드 스트리밍 서버로부터 상기 클라우드 스트리밍 서비스에 상응하는 어플리케이션 실행 결과 화면을 수신하는 단말
을 포함하는 것을 특징으로 하는 클라우드 스트리밍 서비스 시스템.
Detecting the type of cloud streaming service corresponding to the service request received from the user, prioritizing the cloud streaming service based on the type of the cloud streaming service, determining whether the streaming pipeline has reached the concurrent service processing limit A cloud streaming server providing the cloud streaming service according to the priority determined according to the determination result; And
And a terminal for receiving an application execution result screen corresponding to the cloud streaming service from the cloud streaming server,
And a server for providing the cloud streaming service.
KR1020140108120A 2014-07-14 2014-08-20 System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same KR102199276B1 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
KR1020140108120A KR102199276B1 (en) 2014-08-20 2014-08-20 System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same
PCT/KR2015/007261 WO2016010319A2 (en) 2014-07-14 2015-07-13 Cloud streaming service system, data compressing method for preventing memory bottlenecking, and device for same
EP15822844.5A EP3171601A4 (en) 2014-07-14 2015-07-13 Cloud streaming service system, data compressing method for preventing memory bottlenecking, and device for same
CN202110160960.4A CN112929234A (en) 2014-07-14 2015-07-13 Cloud streaming server
CN201580047076.2A CN106797487B (en) 2014-07-14 2015-07-13 Cloud streaming server
JP2017519439A JP6467503B2 (en) 2014-07-14 2015-07-13 Cloud streaming service system, data compression method for preventing memory bottleneck, and apparatus therefor
US15/406,594 US10397288B2 (en) 2014-07-14 2017-01-13 Cloud streaming service system, data compressing method for preventing memory bottlenecking, and device for same
US16/505,144 US10904304B2 (en) 2014-07-14 2019-07-08 Cloud streaming service system, data compressing method for preventing memory bottlenecking, and device for same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140108120A KR102199276B1 (en) 2014-08-20 2014-08-20 System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20160022505A true KR20160022505A (en) 2016-03-02
KR102199276B1 KR102199276B1 (en) 2021-01-06

Family

ID=55582343

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140108120A KR102199276B1 (en) 2014-07-14 2014-08-20 System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same

Country Status (1)

Country Link
KR (1) KR102199276B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100648659B1 (en) * 2004-08-03 2006-11-23 주식회사 케이티프리텔 Rate control method and device for streaming video
KR100823522B1 (en) * 2007-06-18 2008-04-21 주식회사 셀런 Caching method for reducing bottle neck between storage and server in real-time streaming system
KR20120062758A (en) 2009-08-14 2012-06-14 에스알에스 랩스, 인크. System for adaptively streaming audio objects
US20120154389A1 (en) * 2010-12-15 2012-06-21 International Business Machines Corporation Hardware Accelerated Graphics for Network Enabled Applications
US20130155075A1 (en) * 2011-12-15 2013-06-20 Fujitsu Limited Information processing device, image transmission method, and recording medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100648659B1 (en) * 2004-08-03 2006-11-23 주식회사 케이티프리텔 Rate control method and device for streaming video
KR100823522B1 (en) * 2007-06-18 2008-04-21 주식회사 셀런 Caching method for reducing bottle neck between storage and server in real-time streaming system
KR20120062758A (en) 2009-08-14 2012-06-14 에스알에스 랩스, 인크. System for adaptively streaming audio objects
US20120154389A1 (en) * 2010-12-15 2012-06-21 International Business Machines Corporation Hardware Accelerated Graphics for Network Enabled Applications
US20130155075A1 (en) * 2011-12-15 2013-06-20 Fujitsu Limited Information processing device, image transmission method, and recording medium

Also Published As

Publication number Publication date
KR102199276B1 (en) 2021-01-06

Similar Documents

Publication Publication Date Title
EP3343844B1 (en) System and method for use of a media content bot in a social messaging environment
US10601891B2 (en) Cloud streaming service system and cloud streaming service method for utilizing an optimal GPU for video decoding based on resource conditions, and apparatus for the same
JP6467503B2 (en) Cloud streaming service system, data compression method for preventing memory bottleneck, and apparatus therefor
WO2021159770A1 (en) Video playback method, device, apparatus, and storage medium
US10326704B2 (en) Enabling continuous content playback
US20160197974A1 (en) Cloud streaming service system, and method and apparatus for providing cloud streaming service
US20150163308A1 (en) Changing application priority in response to detecting multiple users
KR102247886B1 (en) System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same
KR101543295B1 (en) Application error detection method for cloud streaming service, apparatus and system therefor
KR102199276B1 (en) System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same
KR20160091622A (en) System for cloud streaming service, method of image cloud streaming service using division of the change area and apparatus for the same
CN106776010B (en) Resource allocation method and terminal
KR20160084215A (en) Method for dynamic processing application for cloud streaming service and apparatus for the same
KR20160106346A (en) System for cloud streaming service, method of image cloud streaming service based on performance of terminal and apparatus for the same
KR102094677B1 (en) System for servicing cloud streaming, method of servicing cloud streaming and server for the same
KR102247887B1 (en) System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same
KR101587192B1 (en) System for servicing cloud streaming, method of servicing cloud streaming and server for the same
KR102247888B1 (en) System for cloud streaming service, method of image cloud streaming service based on selective streaming pipeline method and apparatus for the same
KR20160109804A (en) System for cloud streaming service, method of image cloud streaming service using split screen and apparatus for the same
KR20160016265A (en) System for cloud streaming service, method of compressing data for preventing memory bottleneck and apparatus for the same
KR102273143B1 (en) System for cloud streaming service, method of cloud streaming service based on still image and apparatus for the same
KR101668284B1 (en) System for cloud streaming service, method of providing cloud streaming service and apparatus for the same
KR20160109072A (en) System for cloud streaming service, method of image cloud streaming service based on optimum rendering and apparatus for the same
KR20160010025A (en) System for cloud streaming service, method of improving content picture quality and apparatus for the same
KR20160040943A (en) System for cloud streaming service, method of cloud streaming service using separate operations of the encoding process unit and apparatus for the same

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant