KR101543295B1 - Application error detection method for cloud streaming service, apparatus and system therefor - Google Patents
Application error detection method for cloud streaming service, apparatus and system therefor Download PDFInfo
- Publication number
- KR101543295B1 KR101543295B1 KR1020140004400A KR20140004400A KR101543295B1 KR 101543295 B1 KR101543295 B1 KR 101543295B1 KR 1020140004400 A KR1020140004400 A KR 1020140004400A KR 20140004400 A KR20140004400 A KR 20140004400A KR 101543295 B1 KR101543295 B1 KR 101543295B1
- Authority
- KR
- South Korea
- Prior art keywords
- execution data
- application execution
- reference image
- virtual client
- client module
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
- G06F11/277—Tester hardware, i.e. output processing circuits with comparison between actual response and known fault-free response
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법, 이를 위한 장치 및 시스템이 개시된다. 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템은, 장애 여부를 테스트를 위하여 어플리케이션 실행 데이터를 전송하는 적어도 하나의 스트리밍 서버; 및 각각 서로 다른 스트리밍 서버로부터 어플리케이션 실행 데이터를 수신하여 화면으로 출력하기 위한 적어도 하나의 가상 클라이언트 모듈을 포함하고, 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하고, 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 검출 서버를 포함한다.An application error detection method for a cloud streaming service, an apparatus and a system therefor are disclosed. An application error detection system for a cloud streaming service according to the present invention includes: at least one streaming server for transmitting application execution data for testing a failure; And at least one virtual client module for receiving application execution data from different streaming servers and outputting the application execution data to a screen, wherein the application execution data output from the at least one virtual client module is captured, and the captured test image And a detection server for determining whether the streaming server has failed based on whether the test image and the reference image coincide with each other.
Description
본 발명은 어플리케이션 에러 검출 방법에 관한 것으로, 더욱 상세하게는 클라우드 스트리밍 서비스를 제공하는 서버의 정상 동작 여부를 서버에서 실행되는 어플리케이션 실행 데이터를 기준 이미지와 비교함으로써 장애 여부를 확인할 수 있도록 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법, 이를 위한 장치 및 시스템에 관한 것이다.The present invention relates to an application error detection method, and more particularly, to a cloud streaming service for checking whether a server providing a cloud streaming service is operating normally by comparing application execution data executed in a server with a reference image, And an apparatus and a system therefor.
클라우드 컴퓨팅이란 인터넷 기반의 컴퓨터 기술을 의미하는 것으로, 사용자가 필요한 소프트웨어를 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제든 사용할 수 있으며, 소프트웨어 구동에 있어 요구되는 고가의 하드웨어도 손쉽게 공유할 수 있는 컴퓨팅 서비스를 의미한다. 즉, 개인이 웹에 접속해서 포토샵, 오피스 등 고사양 소프트웨어를 이용할 수 있고, 이에 대한 데이터 저장도 웹 상에서 이루어진다. 결국 하나의 클라우드 컴퓨팅 서버군에 여러 사람이 접속하여 개인 작업을 할 수 있다.Cloud computing refers to Internet-based computer technology, which allows users to use the Internet at any time without having to install the necessary software on their computers, and to easily share the expensive hardware required to run the software Service. In other words, an individual can access the Web and use high-end software such as Photoshop and Office, and the data is stored on the web. As a result, multiple users can connect to a single cloud computing server cluster to perform individual tasks.
IT 기술 및 어플리케이션 시장이 발달함에 따라, 사용자들이 개인 소유의 단말 장치를 통해 처리하는 데이터 양이 급격히 증가하고 있다. 이 경우, 클라우드 컴퓨팅 시스템은 이러한 데이터 처리량 증가에 대한 해결책이 될 수 있다. 또한, 클라우드 컴퓨팅 시스템은 단말 장치의 소형화의 밑거름이 될 수 있다.As the IT technology and application markets evolve, the amount of data that users process through their own terminal devices is increasing rapidly. In this case, the cloud computing system can be a solution to this increase in data throughput. In addition, the cloud computing system can be a basis for miniaturization of the terminal device.
예를 들어, 대용량의 영상 처리가 요구되는 소프트웨어를 실행하는 데에 있어, 클라우드 컴퓨팅 기반의 서버를 통해서 상기 소프트웨어를 실행하도록 하고, 그 실행 결과 화면만을 스트리밍 기술을 이용하여 사용자의 단말기로 전송함으로써, 사용자가 단말기를 통해 고사양의 소프트웨어를 이용할 수 있다.For example, in executing software requiring a large amount of image processing, the software is executed through a server based on cloud computing, and only the execution result screen is transmitted to the user's terminal using streaming technology, The user can use high-end software through the terminal.
이와 같이, 사용자의 단말 장치를 이용하여, 단말 장치는 클라우드 컴퓨팅 서버에 소프트웨어 실행에 대한 요청만을 전송하고, 클라우드 컴퓨팅 서버는 사용자가 요청한 소프트웨어의 실행 화면을 스트리밍을 통해 사용자에게 제공하는 기술을 클라우드 스트리밍 서비스라고 한다.As described above, the terminal device transmits a request for software execution to the cloud computing server using the terminal device of the user, and the cloud computing server transmits the execution screen of the software requested by the user to the user through streaming. Service.
이러한 클라우드 스트리밍 서비스 제공을 위해서는 서버에서 실행되는 어플리케이션이 제대로 실행되고 있는지, 오류 존재 여부를 검사하는 기술의 필요성이 절실하게 대두된다.In order to provide such a cloud streaming service, there is a need for a technology for checking whether an application running on the server is properly executed and whether there is an error.
본 발명의 목적은, 스트리밍 서버에서 실행되는 어플리케이션에 대하여, 어플리케이션의 실행 화면과 기준 이미지가 일치하는지 여부를 판단함으로써, 어플리케이션 오류를 검출하는 방법을 제공하는 것이다.An object of the present invention is to provide a method for detecting an application error by judging whether or not an application execution screen and a reference image coincide with an application executed in a streaming server.
또한, 본 발명의 목적은 스트리밍 서버의 어플리케이션 실행 데이터를 가상 클라이언트 모듈로 수신하고, 가상 클라이언트 모듈로부터 출력된 어플리케이션의 실행 화면을 이용하여 어플리케이션 오류를 검출함으로써, 보다 사용자의 입장에서 어플리케이션 오류를 검출할 수 있는 어플리케이션 오류 검출 방법을 제공하는 것이다.In addition, an object of the present invention is to provide a virtual client module that receives application execution data of a streaming server by a virtual client module, detects an application error using an execution screen of an application output from the virtual client module, And to provide a method for detecting an application error.
또한, 본 발명의 목적은 어플리케이션의 실행 화면 중 키 프레임에 대해서만 어플리케이션 오류 검출을 수행함으로써, 보다 효율적으로 어플리케이션 오류를 검출할 수 있는 어플리케이션 오류 검출 방법을 제공하는 것이다.It is another object of the present invention to provide an application error detection method capable of more efficiently detecting an application error by performing application error detection only on a key frame in an execution screen of an application.
상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치는, 각각 서로 다른 스트리밍 서버로부터 수신한 어플리케이션 실행 데이터를 화면으로 출력하기 위한 적어도 하나의 가상 클라이언트 모듈; 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하는 비교부; 및 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 테스트 제어부를 포함한다.According to an aspect of the present invention, there is provided an apparatus for detecting an application error for a cloud streaming service, the apparatus comprising: at least one virtual client module for outputting application execution data received from a different streaming server to a screen; A comparison unit that captures application execution data output from the at least one virtual client module and compares the captured test image with a reference image; And a test controller for determining whether the streaming server has failed according to whether the test image and the reference image match.
이 때, 비교부는 상기 적어도 하나의 가상 클라이언트 모듈 중 어느 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.At this time, the comparison unit may capture the application execution data output from any one of the virtual client modules of the at least one virtual client module, and set the same as the reference image.
이 때, 비교부는 상기 어플리케이션 실행 데이터의 키 프레임을 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.At this time, the comparison unit may capture the key frame of the application execution data and set the key frame as the reference image.
이 때, 비교부는 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터 중에서 서로 일치하는 화면을 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.At this time, the comparison unit can capture screens that match each other among the application execution data output from the at least one virtual client module, and set the reference image as the reference image.
이 때, 비교부는 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터의 키 프레임 중에서 서로 일치하는 키 프레임을 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.In this case, the comparison unit may capture the key frames corresponding to each other among the key frames of the application execution data output from the at least one virtual client module, and set the reference image as the reference image.
이 때, 테스트 제어부는 상기 테스트 이미지 및 기준 이미지가 서로 일치하는 경우, 상기 스트리밍 서버는 장애가 없는 것으로 판단하고, 상기 테스트 이미지 및 기준 이미지가 서로 일치하지 아니하는 경우, 상기 스트리밍 서버에 장애가 있는 것으로 판단할 수 있다.At this time, if the test image and the reference image coincide with each other, the test control unit determines that the streaming server does not have a fault, and if the test image and the reference image do not coincide with each other, can do.
이 때, 가상 클라이언트 모듈은 키 프레임만이 포함된 상기 어플리케이션 실행 데이터를 출력할 수 있다.At this time, the virtual client module can output the application execution data including only the key frame.
또한, 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은, 검출 서버가 적어도 하나의 가상 클라이언트 모듈을 통하여 적어도 하나의 스트리밍 서버로부터 수신한 어플리케이션 실행 데이터를 화면으로 출력하도록 하는 단계; 검출 서버가 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하는 단계; 검출 서버가 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하는 단계; 및 검출 서버가 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 단계를 포함한다.According to another aspect of the present invention, there is provided an application error detection method for a cloud streaming service, the method comprising: causing a detection server to output application execution data received from at least one streaming server through at least one virtual client module to a screen; The detection server capturing application execution data output from the at least one virtual client module; The detection server comparing the captured test image with a reference image; And determining whether the detection server has failed the streaming server according to whether the test image and the reference image match each other.
이 때, 테스트 이미지를 기준 이미지와 비교하는 단계는 상기 적어도 하나의 가상 클라이언트 모듈 중 어느 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.At this time, the step of comparing the test image with the reference image may capture the application execution data output from any one of the virtual client modules of the at least one virtual client module and set the reference execution image as the reference image.
이 때, 테스트 이미지를 기준 이미지와 비교하는 단계는 상기 어플리케이션 실행 데이터의 키 프레임을 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.In this case, the step of comparing the test image with the reference image may capture the key frame of the application execution data and set the reference image.
이 때, 테스트 이미지를 기준 이미지와 비교하는 단계는 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터 중에서 서로 일치하는 화면을 캡쳐하여, 상기 기준 이미지로 설정할 수 있다.In this case, the step of comparing the test image with the reference image may capture a screen that matches the application execution data output from the at least one virtual client module, and set the reference image as the reference image.
이 때, 장애 여부를 판단하는 단계는 상기 테스트 이미지 및 기준 이미지가 서로 일치하는 경우, 상기 스트리밍 서버는 장애가 없는 것으로 판단하고, 상기 테스트 이미지 및 기준 이미지가 서로 일치하지 아니하는 경우, 상기 스트리밍 서버에 장애가 있는 것으로 판단할 수 있다.If the test image and the reference image do not coincide with each other, the streaming server determines that the streaming server has no fault, and if the test image and the reference image do not match, It can be judged that there is a disability.
이 때, 가상 클라이언트 모듈은 키 프레임만이 포함된 상기 어플리케이션 실행 데이터를 출력할 수 있다.At this time, the virtual client module can output the application execution data including only the key frame.
또한, 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템은, 장애 여부를 테스트를 위하여 어플리케이션 실행 데이터를 전송하는 적어도 하나의 스트리밍 서버; 및 각각 서로 다른 스트리밍 서버로부터 어플리케이션 실행 데이터를 수신하여 화면으로 출력하기 위한 적어도 하나의 가상 클라이언트 모듈을 포함하고, 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하고, 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 검출 서버를 포함한다.Also, an application error detection system for a cloud streaming service according to the present invention includes: at least one streaming server for transmitting application execution data for testing a failure; And at least one virtual client module for receiving application execution data from different streaming servers and outputting the application execution data to a screen, wherein the application execution data output from the at least one virtual client module is captured, and the captured test image And a detection server for determining whether the streaming server has failed based on whether the test image and the reference image coincide with each other.
본 발명에 따르면, 스트리밍 서버에서 실행되는 어플리케이션에 대하여, 어플리케이션의 실행 화면과 기준 이미지가 일치하는지 여부를 판단함으로써, 어플리케이션 오류를 검출 가능하다.According to the present invention, it is possible to detect an application error by judging whether or not the application execution screen and the reference image coincide with each other in the application executed in the streaming server.
또한, 본 발명은 스트리밍 서버의 어플리케이션 실행 데이터를 가상 클라이언트 모듈로 수신하고, 가상 클라이언트 모듈로부터 출력된 어플리케이션의 실행 화면을 이용하여 어플리케이션 오류를 검출함으로써, 보다 사용자의 입장에서 어플리케이션 오류를 검출할 수 있다.Further, the present invention can receive an application execution data of a streaming server as a virtual client module and detect an application error using an execution screen of an application output from the virtual client module, thereby detecting an application error in the user's position .
또한, 본 발명은 어플리케이션의 실행 화면 중 키 프레임에 대해서만 어플리케이션 오류 검출을 수행함으로써, 보다 효율적으로 어플리케이션 오류를 검출할 수 있다.In addition, the present invention can detect application errors more efficiently by performing application error detection only on key frames in execution screens of an application.
도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 검출 서버의 일 예를 나타낸 블록도이다.
도 3은 본 발명에 따른 가상 클라이언트 모듈의 일 예를 나타낸 블록도이다.
도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법을 전체적으로 나타낸 동작 흐름도이다.
도 5는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법을 검출 서버 관점에서 나타낸 동작 흐름도이다.1 is a block diagram illustrating an application error detection system for a cloud streaming service according to an embodiment of the present invention.
2 is a block diagram showing an example of the detection server shown in FIG.
3 is a block diagram illustrating an example of a virtual client module according to the present invention.
4 is a flowchart illustrating an overall method of detecting an application error for a cloud streaming service according to an exemplary embodiment of the present invention.
5 is a flowchart illustrating an application error detection method for a cloud streaming service 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 to describe various components, and are used only for the purpose of distinguishing one component from another, but not for limiting the components.
이하에서는 본 발명의 실시 예에 따른 단말 장치를 통신망에 연결되어 클라우드 컴퓨팅 시스템 기반으로 컨텐츠를 업로드 또는 다운로드 할 수 있는 이동통신단말기의 예를 들어 설명하지만, 단말기는 이동통신단말기에 한정된 것이 아니고, 모든 정보통신기기, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 또한, 단말기는 휴대폰, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book) 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기일 때 유리하게 활용될 수 있다.Hereinafter, a mobile communication terminal connected to a communication network and capable of uploading or downloading content based on a cloud computing system will be described as an example of a terminal device according to an embodiment of the present invention. However, the terminal is not limited to a mobile communication terminal, An information communication device, a multimedia terminal, a wired terminal, a fixed terminal, and an IP (Internet Protocol) terminal. Also, the terminal may be a mobile phone, a portable multimedia player (PMP), a mobile Internet device (MID), a smart phone, a desktop, a tablet PC, a notebook, And an information communication device, which can be advantageously used in a mobile terminal having various mobile communication specifications.
이하, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템에 대해 설명하도록 한다.Hereinafter, an application error detection system for a cloud streaming service according to an embodiment of the present invention will be described.
도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템을 나타낸 블록도이다.1 is a block diagram illustrating an application error detection system for a cloud streaming service according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템은, 통신망(110)을 통해서 연결된 다수의 클라이언트들(100, 101, 102)과 다수의 스트리밍 서버들(130, 140, 150)을 포함하는 클라우드 스트리밍 시스템을 포함하고, 본 발명은 이러한 클라우드 스트리밍 시스템의 정상 동작 여부를 테스트하기 위하여, 다수의 스트리밍 서버들(130, 140, 150)과 통신망(110)을 통해서 연결되며 다수의 클라이언트들(100, 101, 102)의 기능 중 일부를 수행하는 가상 클라이언트 모듈들을 포함하는 검출 서버(120)를 포함한다.Referring to FIG. 1, an application error detection system for a cloud streaming service according to an embodiment of the present invention includes a plurality of
이하의 실시예에서는 세 개의 스트리밍 서버들(130, 140, 150) 및 세 개의 가상 클라이언트 모듈들을 포함하는 검출 서버(120)를 예를 들어 설명하지만, 스트리밍 서버의 수 및 가상 클라이언트의 수는 이에 한정되지 않으며 필요 및 설계에 따라서 다양한 조합으로 구현될 수 있다.In the following embodiment, the
클라이언트들(100, 101, 102)은 통신망(110)을 경유하여 각종 데이터를 송수신할 수 있는 단말 장치를 의미하며, 특히 스트리밍 서버들(130, 140, 150)에 접속하여 클라우드 스트리밍 서비스를 제공하는 사용자측 단말 장치들을 의미한다.The
예를 들어, 클라이언트들(100, 101, 102)은 PC(Personal Computer), 노트북 컴퓨터, 휴대폰(mobile phone), 태블릿 PC, 네비게이션(navigation), 스마트폰(smart phone), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player) 또는 DVB(Digital Video Broadcasting)와 같은 디지털 방송 수신기를 포함할 수 있다.For example, the
또한, 클라이언트들(100, 101, 102)은 통신망(110)을 경유하여 스트리밍 서버들(130, 140, 150)과 통신하기 위한 브라우저, 프로그램 및 프로토콜을 저장하는 메모리, 각종 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하고 있는 단말 장치를 의미한다.The
즉, 클라이언트들(100, 101, 102)은 스트리밍 서버들(130, 140, 150)과 통신이 가능하다면, 그 어떠한 단말 장치도 가능하며, 노트북 컴퓨터, 이동통신 단말기, PDA 등의 통신 컴퓨팅 장치를 모두 포함하는 넓은 개념이다.That is, if the
이러한 클라이언트들(100, 101, 102)은 예를 들어, 스트리밍 서버들(130, 140, 150)에 접속하여 사용자 입력에 따라서 특정 서비스 또는 기능을 요청하고 요청된 서비스 또는 기능의 실행에 따른 결과 화면을 스트리밍 서버들(130, 140, 150)로부터 수신하여 출력할 수 있다.For example, the
스트리밍 서버들(130, 140, 150)은 통신망(110)을 통해 다수의 클라이언트들(100, 101, 102)에게 특정 서비스나 기능을 제공하는 구성으로서, 특히 클라우드 스트리밍 서비스를 제공할 수 있다.The
예를 들어, 스트리밍 서버들(130, 140, 150)은 클라이언트들(100, 101, 102)의 OS 종류, CPU 성능, 메모리 용량, 기타 소프트웨어 및 하드웨어 사양에 관계 없이, 소정의 서비스나 기능을 제공할 수 있다.For example, the
예를 들어, 고성능의 이미지 처리를 요하는 서비스나 기능을 제공할 수 있도록 클라이언트들(100, 101, 102)로부터 전송된 사용자 입력에 따른 서비스 혹은 기능을 수행하고, 그 결과 화면을 클라이언트들(100, 101, 102)로 전송할 수 있다. 이를 위해, 스트리밍 서버들(130, 140, 150)은 화면 가상화 기능을 구비할 수 있다. 특히 본 발명에서 스트리밍 서버들(130, 140, 150)은 어플리케이션의 정상 동작 여부를 테스트하기 위해, 어플리케이션 실행 데이터를 검출 서버(120)의 각 가상 클라이언트 모듈들로 전송할 수 있다. 여기서 정상 동작 여부라 함은 스트리밍 서버들(130, 140, 150) 내에서 실행되는 어플리케이션이 장애 없이 정상적으로 구동하는지 여부를 의미한다.For example, in order to provide a service or a function requiring high-performance image processing, a service or a function according to a user input transmitted from the
이 때, 통신망(110)은 다양한 형태의 통신망이 이용될 수 있으며, 한정된 지역 내에서 각종 정보장치들의 통신을 제공하는 유무선근거리통신망, 이동체 상호 간 및 이동체와 이동체 외부와의 통신을 제공하는 이동통신망, 위성을 이용해 지구국과 지구국간 통신을 제공하는 위성통신망이거나 유무선 통신망 중에서 어느 하나이거나, 둘 이상의 결합으로 이루어질 수 있다. 한편, 기술한 통신망의 전송 방식 표준은, 기존의 전송 방식 표준에 한정되는 것은 아니며, 향후 개발될 모든 전송 방식 표준을 포함할 수 있다.In this case, the
또한, 도 1에서 클라이언트들(100, 101, 102) 및 스트리밍 서버들(130, 140, 150) 사이의 통신망은 스트리밍 서버들(130, 140, 150) 및 검출 서버(120) 사이의 통신망과 상이한 것일 수도 있고, 동일한 것일 수도 있다.1, the communication network between the
또한, 도 1에서 클라이언트(100) 및 스트리밍 서버(130) 사이의 통신망, 클라이언트(101) 및 스트리밍 서버(140) 사이의 통신망, 클라이언트(102) 및 스트리밍 서버(150) 사이의 통신망은 각각 서로 상이한 것일 수도 있고, 동일한 것일 수도 있다.1, a communication network between the
검출 서버(120)는 스트리밍 서버들(130, 140, 150)의 정상 동작 여부를 테스트하기 위한 장치이다.The
검출 서버(120)는 클라이언트들(100, 101, 102)의 기능 중 일부를 가지는 가상 클라이언트 모듈을 적어도 하나를 포함한다.The
이 때, 검출 서버(120)는 적어도 하나의 스트리밍 서버로부터 전송된 어플리케이션 실행 데이터를 이용하여 해당 스트리밍 서버의 장애 여부를 테스트한다.At this time, the
이 때, 검출 서버(120)는 각각 서로 다른 스트리밍 서버들(130, 140, 150)로부터 수신한 어플리케이션 실행 데이터를 화면으로 출력하기 위한 적어도 하나의 가상 클라이언트 모듈을 포함하며, 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 캡쳐된 테스트 이미지를 기준 이미지와 비교하고, 테스트 이미지 및 기준 이미지의 일치 여부에 따라 스트리밍 서버들의 장애 여부를 판단한다.At this time, the
더 구체적으로, 검출 서버(120)는 적어도 하나의 가상 클라이언트 모듈이 특정 스트리밍 서버(130)로부터 수신한 어플리케이션 실행 데이터에 대해 디코딩 등의 데이터 처리를 수행한 후, 화면으로 출력하면, 소정의 캡쳐 시점에 이미지와 미리 설정된 이미지를 비교하여, 서로 일치하면 해당 스트리밍 서버(130)가 정상 동작하는 것으로 판단한다. 이 때, 캡쳐 시점은 적어도 하나의 스트리밍 서버로부터 어플리케이션 실행 데이터가 전송되는 시점을 기준으로 설정될 수 있으며, 검출 서버(120)에 미리 저장되어 있을 수 있다.More specifically, the
이와 같이, 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치는 검출 서버(120)의 가상 클라이언트 모듈들이 각각 서로 다른 스트리밍 서버들(130, 140, 150)로부터 어플리케이션 실행 데이터를 수신하여 출력한 테스트 이미지를 기준 이미지와 비교하여 비교 결과에 따라 해당 서버의 정상 동작 여부를 판단하는 것이다. 즉, 클라이언트들(100, 101, 102)에서 사용자에게 제공하는 화면 이미지를 기준으로 각 스트리밍 서버들(130, 140, 150)의 정상 동작 여부를 판단하는 것이다. 이를 위해 검출 서버(120)는 적어도 하나의 스트리밍 서버로 동시에 어플리케이션 실행 데이터의 전송을 요청할 수 있으며, 이러한 요청 신호에 따라 각 스트리밍 서버들(130, 140, 150)은 어플리케이션 실행 데이터를 전송할 수 있다. 아울러, 적어도 하나의 스트리밍 서버로부터 전송된 어플리케이션 실행 데이터를 수신하여 처리할 가상 클라이언트 모듈은 미리 설정되어 있을 수 있다. 즉, 적어도 하나의 스트리밍 서버와 적어도 하나의 가상 클라이언트 모듈은 일대일 혹은 다대일로 매핑될 수 있다. 이에, 검출 서버(120)는 적어도 하나의 스트리밍 서버에 어플리케이션 실행 데이터 전송을 요청할 때, 어플리케이션 실행 데이터를 전송할 가상 클라이언트 모듈에 대한 정보를 함께 전송할 수 있으며, 가상 클라이언트 모듈이 둘 이상의 스트리밍 서버와 매핑되는 경우, 둘 이상의 스트리밍 서버로부터 어플리케이션 실행 데이터를 순차로 수신하여 처리할 수 있도록, 적어도 하나의 스트리밍 서버로부터의 어플리케이션 실행 데이터 전송의 요청 시점을 조정할 수 있다.As described above, the application error detection apparatus for the cloud streaming service according to the present invention is configured such that the virtual client modules of the
이와 같이 구성된 시스템에서 첨부된 도 2 및 도 3을 참조하여, 본 발명의 실시예에 따른 검출 서버(120)의 구성을 구체적으로 살펴보도록 한다.The configuration of the
이하, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치에 대해 설명하도록 한다.Hereinafter, an application error detection apparatus for a cloud streaming service according to an embodiment of the present invention will be described.
도 2는 도 1에 도시된 검출 서버(120)의 일 예를 나타낸 블록도이다.2 is a block diagram showing an example of the
도 2를 참조하면, 도 1에 도시된 검출 서버(120)는 테스트 제어부(200), 저장부(210), 비교부(220), 입력부(230), 출력부(240) 및 적어도 하나의 가상 클라이언트 모듈(250, 252, 254)을 포함한다.1, the
본 실시예에서 가상 클라이언트 모듈들(250, 252, 254)의 수를 3개로 예시하였으나, 가상 클라이언트 모듈들(250, 252, 254)의 수는 시스템 운용에 따라서 변경될 수 있다.Although the number of the
테스트 제어부(200)는 스트리밍 서버들(130, 140, 150)의 장애 여부 판단에 필요한 모든 제어를 수행한다.The
또한, 테스트 제어부(200)는 장애 여부 판단 요구 시 비교부(220)를 통해 이루어진 비교 결과, 즉 테스트 이미지 및 기준 이미지의 일치 여부에 따라 스트리밍 서버의 장애 여부를 판단한다.In addition, the
이 때, 테스트 제어부(200)는 테스트 이미지 및 기준 이미지가 서로 일치하는 경우, 스트리밍 서버는 장애가 없는 것으로 판단하고, 테스트 이미지 및 기준 이미지가 서로 일치하지 아니하는 경우, 스트리밍 서버에 장애가 있는 것으로 판단할 수 있다.At this time, if the test image and the reference image coincide with each other, the
이 때, 장애 여부 판단 요구 시점은 가상 클라이언트 모듈(250, 252, 254)로 데이터 수신이 감지되고 수신이 완료된 시점, 또는 입력부(230)를 통해 사용자로부터 장애 여부 판단 요구 입력이 있는 시점, 또는 미리 설정된 주기에 따른 시점일 수 있다.At this time, the point of time of requesting the determination of the failure is determined when the data reception is detected by the
이와 같이, 장애 여부 판단 요구는 설정에 따라 발생할 수 있다.As described above, the fault judgment request can be generated according to the setting.
또한, 기준 이미지는 미리 저장될 수 있으나, 비교부(220)에 의해, 적어도 하나의 가상 클라이언트 모듈들(250, 252, 254) 중 특정 가상 클라이언트 모듈로부터 출력된 이미지를 기준 이미지로 설정할 수 있다.In addition, the reference image may be stored in advance, but the
또한, 비교부(220)에 의해, 적어도 하나의 가상 클라이언트 모듈들(250, 252, 254)로부터 출력된 이미지 중에서 서로 일치하는 제1 그룹의 이미지를 기준 이미지로 설정할 수 있다.Also, the
저장부(210)는 검출 서버(120)의 동작에 필요한 정보들을 저장할 수 있다.The
이 때, 저장부(210)는 적어도 하나의 스트리밍 서버들(130, 140, 150)로부터 전송된 어플리케이션 실행 데이터를 동일한 시점에 캡쳐하기 위해 캡쳐 시점 정보를 저장할 수 있다.At this time, the
또한, 저장부(210)는 스트리밍 서버들(130, 140, 150)로부터 전송되는 어플리케이션 실행 데이터에 대한 기본 정보를 저장하고, 특히 스트리밍 서버들(130, 140, 150)의 장애 여부를 판단하기 위한 기준이 되는 특정 시점의 기준 이미지를 미리 저장할 수 있다.In addition, the
이 때, 저장부(120)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-optical Media) 및 롬(Read Only Memory; ROM), 램(Random Access Memory; RAM), 플래시 메모리(Flash Memory)를 포함한다.In this case, the
비교부(220)는 테스트 제어부(200)의 제어에 따라 각각의 가상 클라이언트 모듈(250, 252, 254)로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 캡쳐된 테스트 이미지를 기준 이미지와 비교한다. The
이 때, 비교부(220)는 적어도 하나의 가상 클라이언트 모듈 중 어느 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하여, 기준 이미지로 설정할 수 있다.In this case, the
이 때, 비교부(220)는 어플리케이션 실행 데이터의 키 프레임을 캡쳐하여, 기준 이미지로 설정할 수 있다.At this time, the
이 때, 비교부(220)는 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터 중에서 서로 일치하는 화면을 캡쳐하여, 기준 이미지로 설정할 수 있다.At this time, the
이 때, 비교부(220)는 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터의 키 프레임 중에서 서로 일치하는 키 프레임을 캡쳐하여, 기준 이미지로 설정할 수 있다.At this time, the
입력부(230)는 서버 관리자의 조작에 따라서 서버 관리자의 요청이나 정보에 해당하는 사용자 입력 신호를 발생할 수 있으며, 현재 상용화되어 있거나 향후 상용화가 가능한 다양한 입력 수단으로 구현될 수 있다.The
예를 들어, 입력부(230)는 키보드, 마우스, 조이스틱, 터치 스크린, 터치 패드 등과 같은 일반적인 입력 장치뿐만 아니라, 사용자의 모션을 감지하여 특정 입력 신호를 발생하는 제스처 입력 수단을 포함할 수 있다.For example, the
출력부(240)는 검출 서버(120)의 동작 결과나 상태를 사용자가 인식할 수 있도록 제공하는 수단으로 구현될 수 있다.The
예를 들어, 출력부(240)는 화면을 통해 시작적으로 출력하는 표시 수단이나, 가청음을 출력하는 스피커 등을 포함할 수 있다.For example, the
특히, 본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치에 있어서, 출력부(240)는 적어도 하나의 가상 클라이언트 모듈(250, 252, 254)로부터 처리되어 출력되는 테스트 이미지를 시각적으로 출력할 수 있으며, 테스트 이미지와 기준 이미지를 비교하여 출력하거나, 스트리밍 서버의 장애 여부 결과를 표시할 수 있다.In particular, in the application error detection apparatus for a cloud streaming service according to the present invention, the
가상 클라이언트 모듈들(250, 252, 254)은 스트리밍 서버들(130, 140, 150)에 접속하여 클라우드 스트리밍 서비스를 제공받는 클라이언트들(100, 101, 102)를 가상화한 구성으로서, 클라이언트들(100, 101, 102)의 기능 중 일부를 수행할 수 있다.The
예를 들어, 가상 클라이언트 모듈들(250, 252, 254)은 특정 스트리밍 서버들(130, 140, 150)에 접속하여 특정 스트리밍 서버들(130, 140, 150)로부터 각각의 어플리케이션 실행 데이터를 수신할 수 있다.For example, the
이러한 가상 클라이언트 모듈들(250, 252, 254)은 스트리밍 서버들(130, 140, 150)로부터 제공되는 데이터를 수신할 수 있는 단말 장치일 수 있다.These
예를 들어, 가상 클라이언트 모듈들(250, 252, 254)은 휴대폰, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book), 개인휴대용 정보단말기(Personal Digital Assistant; PDA), 스마트 TV 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기 중 어느 하나를 가상화하여 구현될 수 있다.For example, the
따라서, 가상 클라이언트 모듈들(250, 252, 254)은 어떤 종류의 단말 장치이냐에 따라서 그 구성 또한 상이하게 구성될 것이다.Accordingly, the
특히, 본 발명의 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치에 있어서, 가상 클라이언트 모듈들(250, 252, 254)은 어플리케이션 실행 데이터의 수신 및 수신 화면 이미지의 디코딩 및 화면 출력 기능까지 수행하도록 구현될 수 있다.In particular, in the application error detection apparatus for the cloud streaming service of the present invention, the
즉, 가상 클라이언트 모듈들(250, 252, 254)은 수신된 어플리케이션 실행 데이터에 대해 클라이언트들(100, 101, 102)과 동일한 처리를 수행하여 출력부(240)를 통해 화면으로 출력할 수 있다.That is, the
예를 들어, 가상 클라이언트 모듈들(250, 252, 254)은 수신된 어플리케이션 실행 데이터에 대해 클라이언트들(100, 101, 102)과 같이 디코딩을 수행하여 출력부(240)를 통해 화면으로 출력할 수 있다.For example, the
이 때, 가상 클라이언트 모듈들(250, 252, 254)은 비교부(220)의 캡쳐 요구에 따라서, 특정 시점에 화면으로 출력되는 결과를 캡쳐하여 비교부(220)로 전달할 수 있다.In this case, the
이 때, 캡쳐 시점은 비교부(220)로부터 수신할 수도 있고, 미리 설정하여 저장하고 있을 수도 있다.At this time, the capture time may be received from the
이 때, 가상 클라이언트 모듈들(250, 252, 254)은 키 프레임만이 포함된 어플리케이션 실행 데이터를 출력할 수 있다.At this time, the
이 때, 캡쳐된 테스트 이미지는 가상 클라이언트 모듈들(250, 252, 254)의 프레임 버퍼에 저장된 이미지 데이터를 캡쳐하는 방식으로 이루어질 수 있다.At this time, the captured test image may be captured by capturing the image data stored in the frame buffer of the
이러한 가상 클라이언트 모듈들(250, 252, 254)의 내부 구성은 도 3과 같이 도시할 수 있다.The internal configuration of the
각각의 가상 클라이언트 모듈의 내부 구성은 동일하므로 도 3의 설명에서는 어느 하나의 가상 클라이언트 모듈(250)의 내부 구성을 예로 들어 설명하도록 한다.Since the internal configurations of the respective virtual client modules are the same, the internal configuration of any one of the
도 3은 본 발명에 따른 가상 클라이언트 모듈(250)의 일 예를 나타낸 블록도이다.3 is a block diagram illustrating an example of a
도 3을 참조하면, 가상 클라이언트 모듈(250)은 제어부(300), 통신부(302) 및 저장부(304)를 포함한다.Referring to FIG. 3, the
제어부(300)는 가상 클라이언트 모듈(250)의 전반적인 제어를 수행하고, 비교부(220)의 요청에 따라 스트리밍 서버들(130, 140, 150)로부터 특정 시점에 화면으로 출력되는 테스트 이미지를 추출하여 비교부(220)로 전달한다.The
또한, 제어부(300)는 통신부(302)를 통해서 스트리밍 서버들(130, 140, 150)로 어플리케이션 실행 데이터 전송 요청 신호를 전송할 수 있다.In addition, the
이 때, 제어부(300)는 어플리케이션 실행 데이터 전송 요청 신호의 전송 시, 어플리케이션 실행 데이터를 전송한 가상 클라이언트 모듈의 식별 정보를 함께 전송할 수 있으며, 다수의 스트리밍 서버들의 스케줄에 따라 스트리밍 서버 별 어플리케이션 실행 데이터 전송 요청 신호를 순차적으로 전송할 수 있다.At this time, the
통신부(302)는 통신망(110)을 통해 스트리밍 서버들(130, 140, 150)로부터 전송된 어플리케이션 실행 데이터를 수신한다.The
이 때, 통신부(302)는 유선 방식 및 무선 방식을 포함하여 다양한 통신 방식을 통해서 데이터를 송수신할 수 있다.At this time, the
이 때, 통신부(302)는 각각 서로 다른 통신 방식에 따라서 데이터를 송신하는 복수의 통신 모듈을 포함할 수 있다.At this time, the
저장부(304)는 가상 클라이언트 모듈(250)의 동작에 필요한 정보들을 저장한다.The
특히, 저장부(304)는 스트리밍 서버들(130, 140, 150)로부터 수신한 어플리케이션 실행 데이터를 저장할 수 있다.In particular, the
또한, 저장부(304)는 수신한 어플리케이션 실행 데이터에 대해 소정의 데이터 처리를 수행하여 최종적으로 화면으로 출력된 테스트 이미지를 저장할 수 있다.In addition, the
또한, 저장부(304)는 설정에 따라 테스트 이미지의 캡쳐 시점 정보를 미리 저장할 수 있다.Also, the
이 때, 저장부(304)는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-optical Media) 및 롬(Read Only Memory; ROM), 램(Random Access Memory; RAM), 플래시 메모리(Flash Memory)를 포함한다.In this case, the
그러면, 위와 같이 구성된 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템에서 서버의 정상 동작 여부를 테스트하는 과정에 대해 도 4 및 도 5를 참조하여 구체적으로 설명하도록 한다.A process of testing whether or not the server operates normally in the application error detection system for the cloud streaming service configured as described above will be described in detail with reference to FIGS. 4 and 5. FIG.
도 4는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법을 전체적으로 나타낸 동작 흐름도이다.4 is a flowchart illustrating an overall method of detecting an application error for a cloud streaming service according to an exemplary embodiment of the present invention.
본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 스트리밍 서버들(130, 140, 150)이 어플리케이션 실행 데이터를 검출 서버(120)의 가상 클라이언트 모듈들(250, 252, 254)로 동시에 전송한다(S402 내지 S406).The application error detection method for a cloud streaming service according to an embodiment of the present invention is a method in which streaming
즉, 동시에 스트리밍 서버(130)는 가상 클라이언트 모듈(250)로 어플리케이션 실행 데이터를 전송하고, 스트리밍 서버(140)는 가상 클라이언트 모듈(252)로 어플리케이션 실행 데이터를 전송하고, 스트리밍 서버(150)는 가상 클라이언트 모듈(254)로 어플리케이션 실행 데이터를 전송한다.That is, at the same time, the streaming
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 어플리케이션 실행 데이터를 수신한 검출 서버(120)의 테스트 제어부(200)가 에러 검출 요청에 따라 비교부(220)에 어플리케이션 실행 데이터 비교를 요청한다(S408, S410).The method for detecting an application error for a cloud streaming service according to an exemplary embodiment of the present invention includes a step of causing the
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 비교부(220)가 각각의 가상 클라이언트 모듈(250, 252, 254)에게 스트리밍 서버(130, 140, 150)로부터 수신한 어플리케이션 화면 전달을 요구한다(S412, S416, S420).The method of detecting an application error for a cloud streaming service according to an embodiment of the present invention is characterized in that the
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 각각의 가상 클라이언트 모듈(250, 252, 254)이 비교부(220)의 요구에 따라, 어플리케이션 실행 데이터를 비교부(220)로 전달한다.The method of detecting an application error for a cloud streaming service according to an embodiment of the present invention is a method in which each
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 비교부(220)가 어플리케이션 실행 데이터를 특정 시점에 캡쳐하여 테스트 이미지를 획득한다(S423).In an application error detection method for a cloud streaming service according to an embodiment of the present invention, the
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 비교부(220)가 테스트 이미지와 기설정된 기준 이미지를 비교한다(S424).In an application error detection method for a cloud streaming service according to an embodiment of the present invention, the
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 단계(S424)에 앞서 기준 이미지를 설정하는 과정을 더 수행할 수 있다.In addition, the application error detection method for a cloud streaming service according to an embodiment of the present invention may further perform a process of setting a reference image prior to step S424.
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 비교 결과를 테스트 제어부(200)로 전달한다(S426).In addition, the application error detection method for the cloud streaming service according to an embodiment of the present invention delivers the comparison result to the test control unit 200 (S426).
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 테스트 제어부(200)가 비교 결과에 따라 서버의 장애 여부를 판단한다(S428).Also, in the application error detection method for the cloud streaming service according to the embodiment of the present invention, the
이 때, 단계(S428)는 테스트 이미지가 기준 이미지와 서로 일치하지 아니하면 해당 스트리밍 서버는 장애가 있다고 판단하고, 서로 일치하면 해당 스트리밍 서버는 장애가 없다고 판단한다.In this case, if the test image does not coincide with the reference image, the streaming server determines that the streaming server has a fault, and if the test images match, the streaming server determines that the streaming server has no fault.
이하, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법에 대해 검출 서버(120) 관점에서 설명하도록 한다.Hereinafter, an application error detection method for a cloud streaming service according to an embodiment of the present invention will be described from the point of view of the
도 5는 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법을 검출 서버(120) 관점에서 나타낸 동작 흐름도이다.5 is a flowchart illustrating an application error detection method for a cloud streaming service according to an exemplary embodiment of the present invention.
본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 검출 서버(120)가 에러 검출 시점이 되면, 구비된 모든 가상 클라이언트 모듈을 통해 스트리밍 서버들(130, 140, 150)로부터 어플리케이션 실행 데이터를 수신하고, 수신된 어플리케이션 실행 데이터를 화면으로 출력하여 캡쳐한다(S500 내지 S504).The application error detection method for a cloud streaming service according to an embodiment of the present invention is a method for detecting an application error from a streaming server (130, 140, 150) Receives the execution data, and outputs the received application execution data to the screen for capturing (S500 to S504).
또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 단계(S504)에서 캡쳐한 테스트 이미지와 기준 이미지를 비교하고, 비교 결과 테스트 이미지와 기준 이미지가 서로 일치하지 않으면 해당 서버는 장애가 있다고 판단하고, 서로 일치하면 해당 서버에 장애가 없다고 판단한다(S506 내지 S510).In addition, the application error detection method for the cloud streaming service according to an embodiment of the present invention compares the test image captured in step S504 with the reference image, and if the test image and the reference image do not coincide with each other, It is determined that there is no failure in the server (S506 to S510).
본 발명에 따른 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 또는 스마트폰 앱으로 구현될 수 있다. 이 때, 프로그램 또는 스마트폰 앱은 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The application error detection method for the cloud streaming service according to the present invention can be implemented as a program or a smartphone application which can be performed through various computer means. At this time, the program or smartphone application may be recorded on 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 method and apparatus for detecting an application error for a cloud streaming service according to the present invention are not limited to the configuration and method of the embodiments described above, All or some of the embodiments may be selectively combined so as to allow the modification to be made.
본 발명은 스트리밍 서버에서 실행되는 어플리케이션에 대하여, 어플리케이션의 실행 화면과 기준 이미지가 일치하는지 여부를 판단함으로써, 어플리케이션 오류를 검출함으로써, 서버에서 어플리케이션 실행 시 발생할 수 있는 오류 혹은 장애를 사전에 방지할 수 있도록 하고, 서버에서의 어플리케이션 정상 동작 여부를 보다 손쉽게 검출할 수 있도록 하고, 이를 통해 클라우드 스트리밍 서비스의 안정화 및 서비스 품질 향상을 도모할 수 있는 것에 비추어, 본 발명의 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 기술은 그 활용도가 적지 않을 것이다.The present invention detects an application error by judging whether or not an application execution screen and a reference image coincide with each other in an application executed in a streaming server so that an error or a trouble that may occur when an application is executed in the server can be prevented in advance In addition, in order to stabilize the cloud streaming service and to improve the service quality, it is possible to easily detect whether or not the application normally operates in the server, and thus, the application error detection technique for the cloud streaming service of the present invention Will not have much use.
100, 101, 102: 클라이언트 110: 통신망
120: 검출 서버 130, 140, 150: 스트리밍 서버
200: 테스트 제어부 210: 저장부
220: 비교부 230: 입력부
240: 출력부 250, 252, 254: 가상 클라이언트 모듈
300: 제어부 302: 통신부
304: 저장부100, 101, 102: client 110: communication network
120:
200: test control unit 210:
220: comparison unit 230: input unit
240:
300: control unit 302: communication unit
304:
Claims (17)
상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하는 비교부; 및
상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 테스트 제어부
를 포함하고,
상기 비교부는
상기 어플리케이션 실행 데이터를 캡쳐하여 상기 기준 이미지로 설정하되, 상기 어플리케이션 실행 데이터의 기설정된 키 프레임을 캡쳐하여 상기 기준 이미지로 설정하고,
상기 가상 클라이언트 모듈은
기설정된 키 프레임만이 포함된 상기 어플리케이션 실행 데이터를 출력하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치.At least one virtual client module for outputting application execution data received from different streaming servers to a screen;
A comparison unit that captures application execution data output from the at least one virtual client module and compares the captured test image with a reference image; And
A test controller for determining whether the streaming server has failed according to whether the test image and the reference image match,
Lt; / RTI >
The comparing unit
Capturing the application execution data to set the reference image as the reference image, capturing a preset key frame of the application execution data,
The virtual client module
And outputs the application execution data including only the preset key frames.
상기 비교부는
상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터 중에서 서로 일치하는 화면을 캡쳐하여, 상기 기준 이미지로 설정하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치.The method of claim 3,
The comparing unit
Wherein the control unit captures screens that are identical to each other among the application execution data output from the at least one virtual client module, and sets the captured image as the reference image.
상기 비교부는
상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터의 기설정된 키 프레임 중에서 서로 일치하는 키 프레임을 캡쳐하여, 상기 기준 이미지로 설정하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치.The method of claim 4,
The comparing unit
And captures key frames that match each other among preset key frames of the application execution data output from the at least one virtual client module, and sets the key frame as the reference image.
상기 테스트 제어부는
상기 테스트 이미지 및 기준 이미지가 서로 일치하는 경우, 상기 스트리밍 서버는 장애가 없는 것으로 판단하고, 상기 테스트 이미지 및 기준 이미지가 서로 일치하지 아니하는 경우, 상기 스트리밍 서버에 장애가 있는 것으로 판단하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 장치.The method of claim 5,
The test control unit
When the test image and the reference image match each other, the streaming server judges that there is no fault, and when the test image and the reference image do not coincide with each other, the streaming server judges that there is a fault in the streaming server Application error detection device for streaming service.
검출 서버가 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하는 단계;
검출 서버가 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하는 단계; 및
검출 서버가 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 단계
를 포함하고,
상기 테스트 이미지를 기준 이미지와 비교하는 단계는
상기 어플리케이션 실행 데이터를 캡쳐하여 상기 기준 이미지로 설정하되, 상기 어플리케이션 실행 데이터의 기설정된 키 프레임을 캡쳐하여 상기 기준 이미지로 설정하고,
상기 가상 클라이언트 모듈은
기설정된 키 프레임만이 포함된 상기 어플리케이션 실행 데이터를 출력하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법.Causing the detection server to output application execution data received from at least one streaming server through at least one virtual client module to a screen;
The detection server capturing application execution data output from the at least one virtual client module;
The detection server comparing the captured test image with a reference image; And
Determining whether the streaming server has failed based on whether the detection server matches the test image and the reference image
Lt; / RTI >
The step of comparing the test image with a reference image
Capturing the application execution data to set the reference image as the reference image, capturing a preset key frame of the application execution data,
The virtual client module
And outputting the application execution data including only the preset key frames.
상기 테스트 이미지를 기준 이미지와 비교하는 단계는
상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터 중에서 서로 일치하는 화면을 캡쳐하여, 상기 기준 이미지로 설정하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법.The method of claim 12,
The step of comparing the test image with a reference image
And capturing a screen identical to each other among the application execution data output from the at least one virtual client module, and setting the reference image as the reference image.
상기 장애 여부를 판단하는 단계는
상기 테스트 이미지 및 기준 이미지가 서로 일치하는 경우, 상기 스트리밍 서버는 장애가 없는 것으로 판단하고, 상기 테스트 이미지 및 기준 이미지가 서로 일치하지 아니하는 경우, 상기 스트리밍 서버에 장애가 있는 것으로 판단하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 방법.14. The method of claim 13,
The step of judging whether or not the fault has occurred
When the test image and the reference image match each other, the streaming server judges that there is no fault, and when the test image and the reference image do not coincide with each other, the streaming server judges that there is a fault in the streaming server Application error detection method for streaming service.
각각 서로 다른 스트리밍 서버로부터 어플리케이션 실행 데이터를 수신하여 화면으로 출력하기 위한 적어도 하나의 가상 클라이언트 모듈을 포함하고, 상기 적어도 하나의 가상 클라이언트 모듈로부터 출력된 어플리케이션 실행 데이터를 캡쳐하고, 상기 캡쳐된 테스트 이미지를 기준 이미지와 비교하고, 상기 테스트 이미지 및 기준 이미지의 일치 여부에 따라 상기 스트리밍 서버의 장애 여부를 판단하는 검출 서버
를 포함하고,
상기 기준 이미지는
상기 어플리케이션 실행 데이터를 캡쳐하여 설정되되, 상기 어플리케이션 실행 데이터의 기설정된 키 프레임을 캡쳐하여 설정되고,
상기 가상 클라이언트 모듈은
기설정된 키 프레임만이 포함된 상기 어플리케이션 실행 데이터를 출력하는 것을 특징으로 하는 클라우드 스트리밍 서비스를 위한 어플리케이션 에러 검출 시스템.At least one streaming server for transmitting application execution data for testing for failure; And
And at least one virtual client module for receiving application execution data from different streaming servers and outputting the application execution data to a screen, wherein the application execution data output from the at least one virtual client module is captured, And a detection server for comparing the test image and the reference image to determine whether the streaming server has failed or not,
Lt; / RTI >
The reference image
Setting the application execution data by capturing the application execution data, capturing a predetermined key frame of the application execution data,
The virtual client module
And outputs the application execution data including only the preset key frames.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140004400A KR101543295B1 (en) | 2014-01-14 | 2014-01-14 | Application error detection method for cloud streaming service, apparatus and system therefor |
EP14879131.2A EP3096229A4 (en) | 2014-01-14 | 2014-12-10 | Application error detection method for cloud streaming service, and apparatus and system therefor |
CN201480073209.9A CN105917314B (en) | 2014-01-14 | 2014-12-10 | Application error detection method and its equipment and system for cloud stream service |
US15/109,429 US10282246B2 (en) | 2014-01-14 | 2014-12-10 | Application error detection method for cloud streaming service, and apparatus and system therefor |
PCT/KR2014/012157 WO2015108283A1 (en) | 2014-01-14 | 2014-12-10 | Application error detection method for cloud streaming service, and apparatus and system therefor |
JP2016547040A JP6383424B2 (en) | 2014-01-14 | 2014-12-10 | Application error detection method for cloud streaming service, apparatus and system therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140004400A KR101543295B1 (en) | 2014-01-14 | 2014-01-14 | Application error detection method for cloud streaming service, apparatus and system therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150084413A KR20150084413A (en) | 2015-07-22 |
KR101543295B1 true KR101543295B1 (en) | 2015-08-10 |
Family
ID=53874359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140004400A KR101543295B1 (en) | 2014-01-14 | 2014-01-14 | Application error detection method for cloud streaming service, apparatus and system therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101543295B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102199296B1 (en) * | 2014-07-14 | 2021-01-06 | 에스케이플래닛 주식회사 | Method for testing cloud streaming server, apparatus and system therefor |
CN105550117B (en) * | 2016-01-22 | 2018-03-02 | 上海斐讯数据通信技术有限公司 | A kind of method and mobile terminal of test application program operation frame per second |
KR102307871B1 (en) * | 2019-06-26 | 2021-09-30 | 넷마블 주식회사 | A compuer program for language quality assurance test automation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100877727B1 (en) * | 2008-03-07 | 2009-01-08 | 주식회사 엠네스 | Function and application verification apparatus for mobile terminal |
JP2011248597A (en) * | 2010-05-26 | 2011-12-08 | Yokogawa Electric Corp | Tester simulation apparatus, tester simulation program, and tester simulation method |
KR101111956B1 (en) * | 2011-10-24 | 2012-02-15 | (주)지란지교소프트 | System for providing substance about monitoring of computing device and method thereof |
-
2014
- 2014-01-14 KR KR1020140004400A patent/KR101543295B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100877727B1 (en) * | 2008-03-07 | 2009-01-08 | 주식회사 엠네스 | Function and application verification apparatus for mobile terminal |
JP2011248597A (en) * | 2010-05-26 | 2011-12-08 | Yokogawa Electric Corp | Tester simulation apparatus, tester simulation program, and tester simulation method |
KR101111956B1 (en) * | 2011-10-24 | 2012-02-15 | (주)지란지교소프트 | System for providing substance about monitoring of computing device and method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20150084413A (en) | 2015-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10282246B2 (en) | Application error detection method for cloud streaming service, and apparatus and system therefor | |
CN108337560B (en) | Media playback device and media serving device for playing media on a web browser | |
KR102232900B1 (en) | System for cloud streaming service, method of cloud streaming service using optumal gpu and apparatus for the same | |
US11249796B2 (en) | Method and apparatus for enhanced assertion management in cloud media processing | |
US10992724B2 (en) | Media playback apparatus and method including delay prevention system | |
KR101942270B1 (en) | Media playback apparatus and method including delay prevention system | |
KR101543295B1 (en) | Application error detection method for cloud streaming service, apparatus and system therefor | |
KR101445539B1 (en) | Method for testing server for cloud streaming service, apparatus and system therefor | |
KR101403321B1 (en) | Method for testing server for cloud streaming service, system and apparatus thereof | |
KR101997649B1 (en) | Method for changing reference server for testing cloud streaming server, apparatus and system therefor | |
KR102247886B1 (en) | System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same | |
KR20140101622A (en) | Method for testing server for cloud streaming service, system and apparatus thereof | |
CN116325688A (en) | Metrics for measuring and monitoring uplink streaming | |
KR101615532B1 (en) | System for servicing cloud streaming, method of servicing cloud streaming and server for the same | |
KR101445538B1 (en) | Method and apparatus for testing server for clouding streaming service | |
KR102247887B1 (en) | System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same | |
CN113472732B (en) | Method, apparatus and storage medium for managing capabilities of a media streaming network | |
KR102058365B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR102059376B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR102199296B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR101997540B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR102055705B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR102119248B1 (en) | Method for testing cloud streaming server, apparatus and system therefor | |
KR102247888B1 (en) | System for cloud streaming service, method of image cloud streaming service based on selective streaming pipeline method and apparatus for the same | |
KR102199276B1 (en) | System for cloud streaming service, method for processing service based on type of cloud streaming service and apparatus for the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180711 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190718 Year of fee payment: 5 |