KR102425277B1 - Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same - Google Patents

Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same Download PDF

Info

Publication number
KR102425277B1
KR102425277B1 KR1020150089894A KR20150089894A KR102425277B1 KR 102425277 B1 KR102425277 B1 KR 102425277B1 KR 1020150089894 A KR1020150089894 A KR 1020150089894A KR 20150089894 A KR20150089894 A KR 20150089894A KR 102425277 B1 KR102425277 B1 KR 102425277B1
Authority
KR
South Korea
Prior art keywords
test
screen
cloud streaming
test screen
error verification
Prior art date
Application number
KR1020150089894A
Other languages
Korean (ko)
Other versions
KR20170000669A (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 KR1020150089894A priority Critical patent/KR102425277B1/en
Publication of KR20170000669A publication Critical patent/KR20170000669A/en
Application granted granted Critical
Publication of KR102425277B1 publication Critical patent/KR102425277B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Environmental & Geological Engineering (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법 및 이를 위한 장치가 개시된다. 클라우드 스트리밍 서버는 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하고, 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하여 상이한 경우에 복수 개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 테스트 화면을 나머지 클라우드 스트리밍 서버들로 전송할 수 있다. 또한, 클라우드 스트리밍 서버 내에서 화면 비교를 통해 오류 검증을 수행함으로써 검증 결과를 송수신하기 위한 네트워크 리소스를 절약할 수 있다.A method for providing a test screen for self-error verification of a cloud streaming server and an apparatus for the same are disclosed. The cloud streaming server acquires a test screen by connecting to any one test server among a plurality of cloud streaming servers at each preset test cycle, and compares the test screen with the existing test screen acquired in the previous test cycle, The test screen may be transmitted to the rest of the cloud streaming servers so that the rest of the cloud streaming servers except the test server among the cloud streaming servers can perform error verification themselves. In addition, by performing error verification through screen comparison within the cloud streaming server, network resources for transmitting and receiving verification results can be saved.

Figure R1020150089894
Figure R1020150089894

Description

클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법 및 이를 위한 장치{METHOD OF PROVIDING TEST SCREEN FOR SELF VERIFICATION OF ERROR ON CLOUD STREAMING SERVER AND APPARATUS FOR THE SAME}Method of providing test screen for self-error verification of cloud streaming server and device therefor

본 발명은 클라우드 스트리밍 서버에서 자체적으로 오류를 검증하기 위한 기술에 관한 것으로, 특히 화면이 지속적으로 변경되는 어플리케이션에 대해서도 각 클라우드 스트리밍 서버 자체적으로 오류를 검증할 수 있도록 테스트 화면을 제공하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to a technology for verifying an error by itself in a cloud streaming server, and in particular, for an application whose screen is continuously changed, each cloud streaming server provides a test screen so that the error can be verified by itself. It relates to a method of providing a test screen for self-error verification and an apparatus therefor.

인터넷의 급속한 발달은 개인의 통신 속도를 급격히 향상시키는 결과를 가져왔으며, 이러한 통신 속도의 향상은 원격지에 위치한 컴퓨터에 접속하여 대용량의 데이터를 다운로드 또는 업로드 하거나, 원격지 컴퓨터 제어 프로그램을 사용하여 마치 원격지 컴퓨터에 로컬 로그인한 것과 같이 원격지 컴퓨터를 이용할 수 있는 환경을 제공하고 있다.The rapid development of the Internet has resulted in a rapid increase in individual communication speed, and this improvement in communication speed is like downloading or uploading large amounts of data by accessing a remote computer, or using a remote computer control program. It provides an environment where you can use a remote computer as if you were logged in locally.

또한, 스마트폰과 같은 이동통신 단말에서 구동되는 어플리케이션이 다양하게 개발되면서, 비교적 낮은 성능의 사용자 단말에서 높은 성능을 필요로 하는 어플리케이션을 구동하기 위한 가상화 기술들이 많이 제안되고 있다. In addition, as applications driven in mobile communication terminals such as smartphones have been developed in various ways, many virtualization technologies have been proposed for driving applications requiring high performance in user terminals with relatively low performance.

그 중에서 어플리케이션을 서버에서 구동시키고 구동화면은 비디오 인코딩(Encoding)을 통해 압축하여 클라이언트로 전송하고, 클라이언트는 전송된 비디오를 재생하여 마치 자신의 단말에서 어플리케이션이 구동되는 것과 같은 효과를 내는 화면 가상화 기반의 클라우드 스트리밍 서비스가 각광받고 있는 추세이다. 예를 들어, 개인 사용자가 웹에 접속하여 포토샵이나 오피스 같은 프로그램을 실행하여 작업할 수 있고, 작업에 대한 결과물 저장도 웹에서 할 수 있다. 즉, 가상공간에 하나의 서버를 만들어 놓고 이와 같은 서버를 통해 여러 사용자가 동시에 작업을 할 수 있는 환경을 제공하는 것이다.Among them, a screen virtualization base that runs the application on the server, compresses the driving screen through video encoding, and transmits it to the client, and the client plays the transmitted video to have the same effect as if the application is running on its own terminal. of cloud streaming services are in the spotlight. For example, an individual user can access the web and run programs such as Photoshop or Office to work, and the result of the work can also be saved on the web. In other words, a single server is created in a virtual space and an environment where multiple users can work simultaneously through such a server is provided.

따라서, 클라우드 스트리밍 서비스 기반의 컴퓨팅 환경에서는 서비스를 제공하는 서버에서 주요 기능이 실행되기 때문에 클라우드 스트리밍 서버에서 발생한 오류를 신속하게 감지하여 복구하기 위한 기술이 절실하게 대두된다.Therefore, in a cloud streaming service-based computing environment, since major functions are executed on the server providing the service, a technology for quickly detecting and repairing an error occurring in the cloud streaming server is urgently needed.

한국 공개 특허 제2014-0101622호, 2014년 08월 20일 공개 (명칭: 클라우드 스트리밍 서비스를 위한 서버 테스트 방법, 이를 위한 시스템 및 장치)Korean Patent Publication No. 2014-0101622, published on August 20, 2014 (Title: Server test method for cloud streaming service, system and apparatus therefor)

본 발명의 목적은, 클라우드 스트리밍 서버 내에서 화면 비교를 통해 오류 검증을 수행함으로써 검증 결과를 송수신하기 위한 네트워크 리소스를 절약하는 것이다.An object of the present invention is to save network resources for transmitting and receiving verification results by performing error verification through screen comparison in a cloud streaming server.

또한, 본 발명의 목적은 클라우드 스트리밍 서버에서 테스트 식별자를 기반으로 오류 검증을 위한 어플리케이션 실행화면을 최소 비용으로 생성함으로써 각각의 클라우드 스트리밍 서버에서 오류 검증을 수행하는데 필요한 시간과 자원을 절약하는 것이다.In addition, an object of the present invention is to save time and resources required to perform error verification in each cloud streaming server by generating an application execution screen for error verification at a minimum cost based on a test identifier in the cloud streaming server.

또한, 본 발명의 목적은 어플리케이션 중 애니메이션 효과가 적용된 화면에 대해서도 오류 검증을 수행함으로써 보다 정확하게 오류 검증을 수행하는 것이다.Another object of the present invention is to perform error verification more accurately by performing error verification even on a screen to which an animation effect is applied among applications.

상기한 목적을 달성하기 위한 본 발명에 따른 클라우드 스트리밍 서버는 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하는 비교화면 획득부; 상기 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하는 변화 감지부; 및 상기 테스트 화면과 상기 기존 테스트 화면이 상이한 경우에, 상기 복수개의 클라우드 스트리밍 서버들 중 상기 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 상기 테스트 화면을 상기 나머지 클라우드 스트리밍 서버들로 전송하는 테스트 화면 전송부를 포함한다.A cloud streaming server according to the present invention for achieving the above object includes: a comparison screen acquisition unit for acquiring a test screen by connecting to any one test server of a plurality of cloud streaming servers at every preset test cycle; a change detection unit comparing the test screen with an existing test screen acquired in a previous test cycle; and when the test screen and the existing test screen are different, the test screen is displayed on the remaining cloud streaming servers so that the remaining cloud streaming servers excluding the test server among the plurality of cloud streaming servers can perform error verification themselves. It includes a test screen transmission unit for transmitting to the .

이 때, 나머지 클라우드 스트리밍 서버들은 상기 테스트 화면에 상응하는 어플리케이션을 실행하고, 상기 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 상기 테스트 화면과 비교하여 상기 오류 검증을 수행할 수 있다.At this time, the remaining cloud streaming servers execute the application corresponding to the test screen, and compare the test screen with the application execution screen captured at the same time as the test screen to perform the error verification.

이 때, 테스트 화면 전송부는 상기 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 상기 테스트 화면이 상기 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 상기 테스트 화면과 함께 전송할 수 있다.In this case, the test screen transmitting unit may transmit at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버들은 상기 어플리케이션 키 스크립트를 이용하여 상기 어플리케이션을 실행할 수 있다.At this time, the remaining cloud streaming servers may run the application using the application key script.

이 때, 비교화면 획득부는 상기 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 상기 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 상기 테스트 화면을 획득할 수 있다.In this case, when the animation effect is applied to the application of the test server, the comparison screen obtaining unit may obtain the test screen by masking the part to which the animation effect is applied.

이 때, 나머지 클라우드 스트리밍 서버들은 상기 마스킹된 테스트 화면을 수신하는 경우에 상기 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 상기 마스킹된 테스트 화면과 비교할 수 있다.At this time, when the other cloud streaming servers receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level.

이 때, 테스트 화면 전송부는 상기 나머지 클라우드 스트리밍 서버들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 상기 테스트 화면을 전송할 수 있다.At this time, the test screen transmission unit may transmit the test screen to any one of the plurality of sessions corresponding to each of the remaining cloud streaming servers.

이 때, 테스트 화면 전송부는 상기 복수개의 세션들에서 모두 상기 오류 검증을 수행할 수 있도록, 상기 테스트 화면을 전송할 때마다 상기 테스트 세션을 변경하여 상기 테스트 화면을 전송할 수 있다.In this case, the test screen transmitter may transmit the test screen by changing the test session whenever the test screen is transmitted so that the error verification may be performed in all of the plurality of sessions.

또한, 본 발명에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법은 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하는 단계; 상기 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하는 단계; 및 상기 테스트 화면과 상기 기존 테스트 화면이 상이한 경우에, 상기 복수개의 클라우드 스트리밍 서버들 중 상기 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 상기 테스트 화면을 상기 나머지 클라우드 스트리밍 서버들로 전송하는 단계를 포함한다.In addition, the method for providing a test screen for self-error verification of a cloud streaming server according to the present invention includes: acquiring a test screen by connecting to any one test server among a plurality of cloud streaming servers at every preset test cycle; comparing the test screen with an existing test screen acquired in a previous test cycle; and when the test screen and the existing test screen are different, the test screen is displayed on the remaining cloud streaming servers so that the remaining cloud streaming servers excluding the test server among the plurality of cloud streaming servers can perform error verification themselves. It includes the step of transmitting to

이 때, 나머지 클라우드 스트리밍 서버들은 상기 테스트 화면에 상응하는 어플리케이션을 실행하고, 상기 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 상기 테스트 화면과 비교하여 상기 오류 검증을 수행할 수 있다.At this time, the remaining cloud streaming servers execute the application corresponding to the test screen, and compare the test screen with the application execution screen captured at the same time as the test screen to perform the error verification.

이 때, 전송하는 단계는 상기 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 상기 테스트 화면이 상기 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 상기 테스트 화면과 함께 전송할 수 있다.In this case, the transmitting may include transmitting at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버들은 상기 어플리케이션 키 스크립트를 이용하여 상기 어플리케이션을 실행할 수 있다.At this time, the remaining cloud streaming servers may run the application using the application key script.

이 때, 획득하는 단계는 상기 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 상기 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 상기 테스트 화면을 획득하는 단계를 포함할 수 있다.In this case, the acquiring may include acquiring the test screen by masking the part to which the animation effect is applied when an animation effect is applied to the application of the test server.

이 때, 나머지 클라우드 스트리밍 서버들은 상기 마스킹된 테스트 화면을 수신하는 경우에 상기 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 상기 마스킹된 테스트 화면과 비교할 수 있다.At this time, when the other cloud streaming servers receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level.

이 때, 전송하는 단계는 상기 나머지 클라우드 스트리밍 서버들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 상기 테스트 화면을 전송할 수 있다.In this case, the transmitting may transmit the test screen to any one of a plurality of sessions corresponding to each of the remaining cloud streaming servers.

이 때, 전송하는 단계는 상기 복수개의 세션들에서 모두 상기 오류 검증을 수행할 수 있도록, 상기 테스트 화면을 전송할 때마다 상기 테스트 세션을 변경하여 상기 테스트 화면을 전송할 수 있다.In this case, in the transmitting step, the test screen may be transmitted by changing the test session whenever the test screen is transmitted so that the error verification may be performed in all of the plurality of sessions.

본 발명에 따르면, 클라우드 스트리밍 서버 내에서 화면 비교를 통해 오류 검증을 수행함으로써 검증 결과를 송수신하기 위한 네트워크 리소스를 절약할 수 있다.According to the present invention, it is possible to save network resources for transmitting and receiving verification results by performing error verification through screen comparison in the cloud streaming server.

또한 본 발명은, 클라우드 스트리밍 서버에서 테스트 식별자를 기반으로 오류 검증을 위한 어플리케이션 실행화면을 최소 비용으로 생성함으로써 각각의 클라우드 스트리밍 서버에서 오류 검증을 수행하는데 필요한 시간과 자원을 절약할 수 있다.In addition, the present invention can save time and resources required to perform error verification in each cloud streaming server by generating an application execution screen for error verification at a minimum cost based on the test identifier in the cloud streaming server.

또한 본 발명은, 어플리케이션 중 애니메이션 효과가 적용된 화면에 대해서도 오류 검증을 수행함으로써 보다 정확하게 오류 검증을 수행할 수 있다.Also, according to the present invention, error verification can be performed more accurately by performing error verification even on a screen to which an animation effect is applied among applications.

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 테스트 화면 제공 장치의 일 예를 나타낸 도면이다.
도 3은 종래의 클라우드 스트리밍 서버의 오류 검증 과정의 일 예를 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 오류 검증 과정을 나타낸 도면이다.
도 5는 본 발명의 일실시예에 따른 테스트 화면을 나타낸 도면이다.
도 6은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법을 나타낸 동작 흐름도이다.
도 7은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 과정을 상세하게 나타낸 도면이다.
1 is a block diagram illustrating a self-error verification system of a cloud streaming server according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating an example of the apparatus for providing a test screen shown in FIG. 1 .
3 is a diagram illustrating an example of an error verification process of a conventional cloud streaming server.
4 is a diagram illustrating an error verification process according to an embodiment of the present invention.
5 is a diagram illustrating a test screen according to an embodiment of the present invention.
6 is an operation flowchart illustrating a method of providing a test screen for self-error verification of a cloud streaming server according to an embodiment of the present invention.
7 is a view showing in detail a process of providing a test screen for self-error verification of a cloud streaming server according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, detailed descriptions of well-known functions or configurations that may obscure the gist of the present invention in the following description and accompanying drawings will be omitted. In addition, it should be noted that throughout the drawings, the same components are denoted by the same reference numerals as much as possible. The embodiments of the present invention are provided in order to more completely explain the present invention to those of ordinary skill in the art. Accordingly, the shapes and sizes of elements in the drawings may be exaggerated for clearer description.

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

도 1은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증 시스템을 나타낸 블록도이다.1 is a block diagram illustrating a self-error verification system of a cloud streaming server according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자라 오류 검증 시스템은 테스트 화면 제공 장치(110), 클라우드 스트리밍 서버(120-1~ 120-N), 네트워크(130) 및 단말(140-1~ 140-N)을 포함한다.1, the Zara error verification system of the cloud streaming server according to an embodiment of the present invention is a test screen providing device 110, cloud streaming servers 120-1 to 120-N, a network 130 and a terminal. (140-1 to 140-N).

테스트 화면 제공 장치(110)는 복수개의 클라우드 스트리밍 서버(120-1~ 120-N)들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득한다.The test screen providing device 110 acquires a test screen by accessing one of the plurality of cloud streaming servers 120-1 to 120-N at every preset test cycle to a test server.

이 때, 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 테스트 화면을 획득할 수 있다.In this case, when the animation effect is applied to the application of the test server, the test screen may be obtained by masking the part to which the animation effect is applied.

또한, 테스트 화면 제공 장치(110)는 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교한다. 이는 지속적으로 변경되는 서비스를 제공하는 클라우드 스트리밍 서버(120-1~ 120-N)의 오류를 검증하기 위해 테스트 화면이 이전과 비교하여 변경되었을 경우에 오류 검증을 수행하기 위함일 수 있다.Also, the test screen providing apparatus 110 compares the test screen with an existing test screen acquired in a previous test cycle. This may be in order to verify the error when the test screen is changed compared to the previous in order to verify the error of the cloud streaming server 120-1 to 120-N that provides a service that is continuously changed.

또한, 테스트 화면 제공 장치(110)는 테스트 화면과 기존 테스트 화면이 상이한 경우에, 복수개의 클라우드 스트리밍 서버(120-1~ 120-N)들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 테스트 화면을 나머지 클라우드 스트리밍 서버들로 전송한다.In addition, when the test screen providing apparatus 110 is different from the test screen and the existing test screen, error verification itself in the remaining cloud streaming servers except for the test server among the plurality of cloud streaming servers (120-1 to 120-N) transmits the test screen to the rest of the cloud streaming servers to perform

이 때, 나머지 클라우드 스트리밍 서버들은 테스트 화면에 상응하는 어플리케이션을 실행하고, 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 테스트 화면과 비교하여 오류 검증을 수행할 수 있다.At this time, the remaining cloud streaming servers execute an application corresponding to the test screen, and compare the test screen with the application execution screen captured at the same time as the test screen to perform error verification.

이 때, 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 테스트 화면이 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 테스트 화면과 함께 전송할 수 있다.At this time, at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification may be transmitted together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버들은 어플리케이션 키 스크립트를 이용하여 어플리케이션을 실행할 수 있다.At this time, the remaining cloud streaming servers may run the application using the application key script.

이 때, 나머지 클라우드 스트리밍 서버들은 마스킹된 테스트 화면을 수신하는 경우에 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 마스킹된 테스트 화면과 비교할 수 있다.At this time, when the other cloud streaming servers receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level.

이 때, 나머지 클라우드 스트리밍 서버들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 테스트 화면을 전송할 수 있다.At this time, the test screen may be transmitted to any one of the plurality of sessions corresponding to each of the remaining cloud streaming servers.

이 때, 복수개의 세션들에서 모두 오류 검증을 수행할 수 있도록, 테스트 화면을 전송할 때마다 테스트 세션을 변경하여 테스트 화면을 전송할 수 있다.In this case, the test screen may be transmitted by changing the test session each time the test screen is transmitted so that error verification can be performed in all of the plurality of sessions.

클라우드 스트리밍 서버(120-1~ 120-N)는 단말(140-1~ 140-N)의 요청에 따라 웹 서버를 통해 어플리케이션을 실행하고, 어플리케이션 실행에 따른 실행화면을 렌더링, 캡처, 인코딩 및 센딩에 상응하는 파이프라인 과정을 통해 단말(140-1~ 140-N)로 전송한다.The cloud streaming server 120-1 to 120-N executes the application through the web server according to the request of the terminal 140-1 to 140-N, and renders, captures, encodes and sends the execution screen according to the execution of the application. It is transmitted to the terminals 140-1 to 140-N through a pipeline process corresponding to .

이 때, 클라우드 스트리밍 서버(120-1~ 120-N)는 복수개의 세션을 통해 단말(140-1~ 140-N)에게 서비스를 제공할 수 있다. 따라서, 클라우드 스트리밍 서버(120-1~ 120-N)에서 오류가 발생하면 단말(140-1~ 140-N)이 클라우드 스트리밍 서비스를 원활하게 제공받지 못할 수 있다. At this time, the cloud streaming server (120-1 ~ 120-N) may provide a service to the terminals (140-1 ~ 140-N) through a plurality of sessions. Therefore, when an error occurs in the cloud streaming server (120-1 ~ 120-N), the terminal (140-1 ~ 140-N) may not be able to smoothly receive the cloud streaming service.

또한, 클라우드 스트리밍 서버(120-1~ 120-N)는 오류 검증 시스템을 위한 테스트 서버가 될 수 있다. 예를 들어, 클라우드 스트리밍 서버(120-1)이 테스트 서버라고 가정한다면, 테스트 화면 제공 장치(110)는 기설정된 테스트 주기마다 클라우드 스트리밍 서버(120-1)에게 테스트 화면을 요청할 수 있다. 이 때, 클라우드 스트리밍 서버(120-1)는 최소비용으로 테스트 화면을 생성하여 테스트 화면 제공 장치(110)에게 전송할 수 있다.In addition, the cloud streaming server (120-1 ~ 120-N) may be a test server for the error verification system. For example, if it is assumed that the cloud streaming server 120-1 is a test server, the test screen providing apparatus 110 may request a test screen from the cloud streaming server 120-1 every preset test cycle. In this case, the cloud streaming server 120 - 1 may generate a test screen at a minimum cost and transmit it to the test screen providing device 110 .

또한, 클라우드 스트리밍 서버(120-1~ 120-N)는 테스트 화면 제공 장치(110)로부터 테스트 화면을 수신하면, 테스트 화면에 상응하는 어플리케이션을 실행하고 어플리케이션 실행화면을 테스트 화면과 비교하여 자가 오류 검증을 수행할 수 있다. 즉, 클라우드 스트리밍 서버(120-1~ 120-N)가 스스로 테스트 화면과 비교할 비교화면을 생성하여 내부에서 오류 검증을 수행할 수 있고, 검증 결과에 따라 오류가 발견되었다면 클라우드 스트리밍 서버(120-1~ 120-N)를 복구할 수 있다.In addition, when the cloud streaming server (120-1 ~ 120-N) receives the test screen from the test screen providing device 110, executes an application corresponding to the test screen and compares the application execution screen with the test screen to verify self-error can be performed. That is, the cloud streaming server 120-1 to 120-N can generate a comparison screen to compare with the test screen by itself and perform error verification inside, and if an error is found according to the verification result, the cloud streaming server 120-1 ~ 120-N) can be recovered.

또한, 클라우드 스트리밍 서버(120-1~ 120-N)는 테스트 화면 제공 장치(110)로부터 마스킹(masking)된 테스트 화면을 수신한 경우에 마스킹된 어플리케이션 실행화면을 생성하여 오류 검증을 수행할 수 있다. 즉, 애니메이션 효과가 포함된 어플리케이션 실행화면도 오류 검증을 수행할 수 있다.In addition, the cloud streaming servers 120-1 to 120-N may perform error verification by generating a masked application execution screen when receiving a masked test screen from the test screen providing device 110. . That is, the application execution screen including the animation effect may also perform error verification.

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

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

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

또한, 단말(140-1~ 140-N)은 숫자 및 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 단말(140-1~ 140-N)의 기능 제어와 관련하여 입력되는 신호를 입력부를 통해 제어부로 전달할 수 있다. 또한, 단말(140-1~ 140-N)의 입력부는 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성할 수 있다. 이 때, 단말(140-1~ 140-N)의 입력부는 단말(140-1~ 140-N)의 표시부와 함께 하나의 터치패널(또는 터치 스크린(touch screen))의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 단말(140-1~ 140-N)의 입력부는 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단이 사용될 수 있다. 특히, 본 발명에 따른 단말(140-1~ 140-N)의 입력부는 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 하거나 다운로드 하기 위한 입력 신호를 단말(140-1~ 140-N)의 제어부로 전달할 수 있다.In addition, the terminals 140-1 to 140-N receive various information such as number and character information, set various functions, and receive signals input in relation to the function control of the terminals 140-1 to 140-N. It can be transmitted to the control unit through the input unit. In addition, the input unit of the terminals 140-1 to 140-N may include at least one of a keypad and a touchpad that generate an input signal according to a user's touch or manipulation. At this time, the input unit of the terminals 140-1 to 140-N is configured in the form of one touch panel (or touch screen) together with the display unit of the terminals 140-1 to 140-N, so that input and The display function can be performed at the same time. In addition, as the input unit of the terminals 140-1 to 140-N, all types of input means that may be developed in the future may be used in addition to input devices such as a keyboard, a keypad, a mouse, and a joystick. In particular, the input unit of the terminals 140-1 to 140-N according to the present invention may transmit an input signal for uploading or downloading content based on cloud computing to the control unit of the terminals 140-1 to 140-N.

또한, 단말(140-1~ 140-N)의 표시부는 단말(140-1~ 140-N)의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시할 수 있다. 또한, 단말(140-1~ 140-N)의 표시부는 단말(140-1~ 140-N)의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 여기서, 단말(140-1~ 140-N)의 표시부는 액정표시장치(LCD, Liquid Crystal Display), 초박막 액정표시장치(TFT-LCD, Thin Film Transistor LCD), 발광다이오드(LED, Light Emitting Diode), 유기 발광다이오드(OLED, Organic LED), 능동형 유기발광다이오드(AMOLED, Active Matrix OLED), 레티나 디스플레이(Retina Display), 플렉시블 디스플레이(Flexible display) 및 3차원(3 Dimension) 디스플레이 등으로 구성될 수 있다. 이 때, 단말(140-1~ 140-N)의 표시부가 터치스크린 형태로 구성된 경우, 단말(140-1~ 140-N)의 표시부는 단말(140-1~ 140-N)의 입력부의 기능 중 일부 또는 전부를 수행할 수 있다. 특히, 본 발명에 따른 단말(140-1~ 140-N)의 표시부는 클라우드 컴퓨팅 기반으로 제공되는 컨텐츠의 실행과 관련된 정보를 화면으로 표시할 수 있다.In addition, the display unit of the terminals 140-1 to 140-N may display information about a series of operation states and operation results that occur while the functions of the terminals 140-1 to 140-N are performed. Also, the display unit of the terminals 140-1 to 140-N may display menus of the terminals 140-1 to 140-N and user data input by the user. Here, the display unit of the terminals 140-1 to 140-N includes a liquid crystal display (LCD), an ultra-thin liquid crystal display (TFT-LCD, Thin Film Transistor LCD), and a light emitting diode (LED, Light Emitting Diode). , organic light emitting diode (OLED, Organic LED), active organic light emitting diode (AMOLED, Active Matrix OLED), retina display (Retina Display), flexible display (Flexible display) and three-dimensional (3 Dimension) display, etc. have. In this case, when the display unit of the terminals 140-1 to 140-N is configured in the form of a touch screen, the display unit of the terminals 140-1 to 140-N functions as an input unit of the terminals 140-1 to 140-N. Some or all of these may be performed. In particular, the display unit of the terminals 140-1 to 140-N according to the present invention may display information related to the execution of content provided based on cloud computing on a screen.

또한, 단말(140-1~ 140-N)의 저장부는 데이터를 저장하기 위한 장치로, 주 기억장치 및 보조 기억장치를 포함하고, 단말(140-1~ 140-N)의 기능 동작에 필요한 응용 프로그램을 저장할 수 있다. 이러한 단말(140-1~ 140-N)의 저장부는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 단말(140-1~ 140-N)는 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어부의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 된다. 특히, 본 발명에 따른 단말(140-1~ 140-N)의 저장부는 단말(140-1~ 140-N)를 부팅시키는 운영체제, 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 하거나 다운로드하기 위한 프로그램 등을 저장할 수 있다. 또한, 단말(140-1~ 140-N)의 저장부는 다수의 컨텐츠를 저장하는 컨텐츠 DB와 단말(140-1~ 140-N)의 정보를 저장할 수 있다. 이 때, 컨텐츠 DB는 컨텐츠를 실행하기 위한 실행 데이터와 컨텐츠에 대한 속성 정보를 포함하고, 컨텐츠 실행에 따른 컨텐츠 사용 정보 등이 저장될 수 있다. 그리고, 단말(140-1~ 140-N)의 정보는 단말 사양 정보를 포함할 수 있다.In addition, the storage unit of the terminals 140-1 to 140-N is a device for storing data, and includes a main memory device and an auxiliary memory device, and is an application necessary for the functional operation of the terminals 140-1 to 140-N. program can be saved. The storage unit of the terminals 140-1 to 140-N may largely include a program area and a data area. Here, when each function is activated in response to a user's request, the terminals 140-1 to 140-N execute corresponding application programs under the control of the control unit to provide each function. In particular, the storage unit of the terminals 140-1 to 140-N according to the present invention can store an operating system for booting the terminals 140-1 to 140-N, a program for uploading or downloading content based on cloud computing, etc. have. In addition, the storage unit of the terminals 140-1 to 140-N may store a content DB for storing a plurality of contents and information of the terminals 140-1 to 140-N. In this case, the content DB may include execution data for executing the content and attribute information on the content, and content usage information according to the content execution may be stored. And, the information of the terminals 140-1 to 140-N may include terminal specification information.

또한, 단말(140-1~ 140-N)의 통신부는 클라우드 스트리밍 서버(120-1~ 120-N)와 네트워크(130)을 통해 데이터를 송수신하기 위한 기능을 수행할 수 있다. 여기서 단말(140-1~ 140-N)의 통신부는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단 등을 포함할 수 있다. 이러한 단말(140-1~ 140-N)의 통신부는 무선통신 모듈 및 유선통신 모듈 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 단말(140-1~ 140-N)이 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 클라우드 스트리밍 서버(120-1~ 120-N)로 송수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 네트워크(130)에 접속하여, 클라우드 스트리밍 서버(120-1~ 120-N)에 데이터를 송수신할 수 있다. 즉 단말(140-1~ 140-N)은 무선통신 모듈 또는 유선통신 모듈을 이용하여 네트워크(130)에 접속하며, 네트워크(130)을 통해 클라우드 스트리밍 서버(120-1~ 120-N)와 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 네트워크(130)는 클라우드 스트리밍 서버(120-1~ 120-N) 또는 다른 단말(140-1~ 140-N)과 통신하여 클라우드 컴퓨팅 기반으로 컨텐츠를 업로드 또는 다운로드 하는데 필요한 데이터를 송수신할 수 있다.In addition, the communication unit of the terminals 140-1 to 140-N may perform a function for transmitting and receiving data through the cloud streaming server 120-1 to 120-N and the network 130 . Here, the communication unit of the terminals 140-1 to 140-N may include an RF transmitting unit for up-converting and amplifying the frequency of the transmitted signal, and an RF receiving unit for low-noise amplifying the received signal and down-converting the frequency. . The communication unit of the terminals 140-1 to 140-N may include at least one of a wireless communication module and a wired communication module. In addition, the wireless communication module is a configuration for transmitting and receiving data according to a wireless communication method, and when the terminals 140-1 to 140-N use wireless communication, a wireless network communication module, a wireless LAN communication module, and a wireless fan communication module Using any one of the data can be transmitted and received to the cloud streaming server (120-1 ~ 120-N). In addition, the wired communication module is for transmitting and receiving data by wire. The wired communication module may connect to the network 130 through a wire and transmit/receive data to/from the cloud streaming servers 120-1 to 120-N. That is, the terminals 140-1 to 140-N connect to the network 130 using a wireless communication module or a wired communication module, and the cloud streaming servers 120-1 to 120-N and data through the network 130 can send and receive In particular, the network 130 according to the present invention communicates with the cloud streaming server 120-1 to 120-N or other terminals 140-1 to 140-N, and data required to upload or download content based on cloud computing. can send and receive

또한, 단말 장치(140-1~ 140-N)의 제어부는 운영 체제((OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 예를 들어, 제어부는 클라우드 스트리밍 서버(120-1~ 120-N)에 접속하는 과정 전반을 제어할 수 있다. 별도의 서비스 어플리케이션을 통해 클라우드 스트리밍 서버(120-1~ 120-N)에 접속하는 경우, 사용자의 요청에 따라 서비스 어플리케이션을 실행되는 과정 전반을 제어할 수 있으며, 실행과 동시에 클라우드 스트리밍 서버(120-1~ 120-N)로 서비스 이용 요청이 전송되도록 제어할 수 있으며, 이때 사용자 인증에 필요한 단말(140-1~ 140-N)의 정보가 함께 전송되도록 제어할 수 있다.In addition, the control unit of the terminal devices 140-1 to 140-N may be a process device for driving an operating system (OS, Operation System) and each component. For example, the control unit is a cloud streaming server 120- 1 to 120-N) In case of accessing the cloud streaming server 120-1 to 120-N through a separate service application, the service application is executed according to the user's request. The entire process can be controlled, and the service use request can be controlled to be transmitted to the cloud streaming server (120-1 to 120-N) at the same time as execution, and at this time, the terminals (140-1 to 140-N) required for user authentication of information can be controlled to be transmitted together.

또한, 단말(140-1~ 140-N)의 제어부는 사용자의 요청에 따라 단말(140-1~ 140-N)의 저장부에 저장된 특정 컨텐츠를 실행할 수 있다. 이때, 제어부는 컨텐츠 실행에 따른 컨텐츠 사용 이력을 컨텐츠 사용 정보로 저장할 수 있다.In addition, the controller of the terminals 140-1 to 140-N may execute specific content stored in the storage unit of the terminals 140-1 to 140-N according to a user's request. In this case, the controller may store the content use history according to the content execution as content use information.

또한, 단말(140-1~ 140-N)의 제어부는 컨텐츠를 실행하기 위한 실행 데이터와, 컨텐츠에 대한 속성 정보를 포함하는 컨텐츠 정보와, 컨텐츠 사용 이력에 따른 정보인 컨텐츠 사용 정보를 함께 클라우드 스트리밍 서버(120-1~ 120-N)로 전송하여 업로드 할 수 있다. 이후, 제어부는 클라우드 스트리밍 서버(120-1~ 120-N)에 전송하여 업로드된 컨텐츠에 대해서는 사용자의 요청에 따라 단말(140-1~ 140-N)의 저장부에서 삭제할 수 있으며, 클라우드 스트리밍 서버(120-1~ 120-N)에 접속하여 클라우드 스트리밍 서버(120-1~ 120-N)를 통해 컨텐츠를 실행하여 이용할 수도 있다.In addition, the control unit of the terminals 140-1 to 140-N performs cloud streaming together with execution data for executing the content, content information including attribute information about the content, and content use information that is information according to the content use history. It can be uploaded by sending it to the server (120-1 ~ 120-N). Thereafter, the control unit may delete the content uploaded to the cloud streaming server 120-1 to 120-N from the storage unit of the terminal 140-1 to 140-N according to the user's request, and the cloud streaming server (120-1 ~ 120-N) may be accessed and used by executing the content through the cloud streaming server (120-1 ~ 120-N).

또한, 단말(140-1~ 140-N)의 제어부는 클라우드 스트리밍 서버(120-1~ 120-N)에 접속하여 다른 단말(140-1~ 140-N)로부터 컨텐츠를 다운로드 한 후 저장부에 저장되도록 제어할 수도 있으며, 클라우드 스트리밍 서버(120-1~ 120-N)를 통해 컨텐츠 실행 시, 실행에 필요한 데이터만을 수신한 후 컨텐츠가 실행되도록 제어할 수도 있다.In addition, the control unit of the terminals (140-1 to 140-N) is connected to the cloud streaming server (120-1 to 120-N) to download the content from the other terminals (140-1 to 140-N), and then to the storage It can be controlled to be stored, and when executing content through the cloud streaming servers 120-1 to 120-N, it is also possible to control so that the content is executed after receiving only the data necessary for execution.

도 2는 도 1에 도시된 테스트 화면 제공 장치의 일 예를 나타낸 도면이다.FIG. 2 is a diagram illustrating an example of the apparatus for providing a test screen shown in FIG. 1 .

도 2를 참조하면, 도 1에 도시된 테스트 화면 제공 장치(110)는 비교화면 획득부(210), 변화 감지부(220) 및 테스트 화면 전송부(230)를 포함한다.Referring to FIG. 2 , the test screen providing apparatus 110 illustrated in FIG. 1 includes a comparison screen obtaining unit 210 , a change detecting unit 220 , and a test screen transmitting unit 230 .

비교화면 획득부(210)는 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득한다. The comparison screen acquisition unit 210 acquires a test screen by connecting to any one test server among a plurality of cloud streaming servers at every preset test cycle.

이 때, 테스트 서버에 접속하고, 테스트 화면에 상응하는 웹 페이지 화면을 수신하기 위한 키 스크립트를 입력하여 테스트 화면을 획득할 수 있다. 예를 들어, 영화와 관련된 VOD를 제공하는 어플리케이션에서 영화 VOD 순위를 보여주는 화면을 테스트 화면으로 사용한다고 가정한다면, 어플리케이션의 첫 UI 화면에서 메뉴 버튼을 통해 VOD 순위에 해당하는 페이지로 이동하기 위한 키 스크립트를 입력함으로써 테스트 화면을 획득할 수 있다. At this time, the test screen may be obtained by accessing the test server and inputting a key script for receiving a web page screen corresponding to the test screen. For example, assuming that a screen showing movie VOD rankings is used as a test screen in an application that provides VOD related to movies, a key script for moving to the page corresponding to the VOD ranking through the menu button on the first UI screen of the application A test screen can be obtained by entering .

따라서, 이와 같은 키 스크립트는 테스트 화면 제공 장치(110)에 따라 미리 설정되어 관리될 수 있다.Accordingly, such a key script may be preset and managed according to the test screen providing apparatus 110 .

이 때, 기설정된 테스트 주기는 테스트 화면에 상응하는 어플리케이션의 변경주기에 상응하게 설정되거나 또는 테스트 화면 제공 장치(110)의 관리자에 의해 설정될 수도 있다. 예를 들어, 하루에 한번씩 내용이 변경될 가능성이 있는 어플리케이션에 대해서는 기설정된 변경주기를 하루로 설정함으로써, 어플리케이션의 내용, 즉 화면이 변경될 때 마다 해당하는 테스트 화면을 획득할 수 있다.In this case, the preset test cycle may be set to correspond to the change cycle of the application corresponding to the test screen, or may be set by the manager of the test screen providing apparatus 110 . For example, for an application whose contents are likely to be changed once a day, by setting a preset change cycle to one day, a corresponding test screen can be obtained whenever the contents of the application, that is, the screen is changed.

이 때, 테스트 서버는 테스트 화면 제공 장치(110)의 관리자에 의해서 복수개의 클라우드 스트리밍 서버들 중 어느 하나로 결정될 수 있다. 또는 테스트 서버는 실제로 사용자들에게 서비스를 제공하지 않지만 클라우드 스트리밍 서버들의 오류 검증을 위해 테스트 화면 제공 장치(110)의 관리자에 의해 관리되는 별도의 서버에 상응할 수도 있다.At this time, the test server may be determined as any one of the plurality of cloud streaming servers by the manager of the test screen providing apparatus 110 . Alternatively, the test server does not actually provide a service to users, but may correspond to a separate server managed by the administrator of the test screen providing device 110 for error verification of cloud streaming servers.

이 때, 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 테스트 화면을 획득할 수 있다. 이 때, 애니메이션이 적용된 부분은 키 입력과 관계없이 변화하는 부분이며, 이동하는 객체, 크기, 모양, 색상 등이 변화하는 객체 등이 삽입된 부분에 해당할 수 있다. 또한, 시계에 상응하는 객체가 표시되는 부분일 수도 있다.In this case, when the animation effect is applied to the application of the test server, the test screen may be obtained by masking the part to which the animation effect is applied. In this case, the part to which the animation is applied is a part that changes regardless of a key input, and may correspond to a part into which a moving object, an object that changes in size, shape, color, etc. is inserted. Also, it may be a portion where an object corresponding to the watch is displayed.

변화 감지부(220)는 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교한다. 이는 지속적으로 변경되는 서비스를 제공하는 클라우드 스트리밍 서버의 오류를 검증하기 위해 테스트 화면이 이전과 비교하여 변경되었을 경우에 오류 검증을 수행하기 위함일 수 있다. The change detection unit 220 compares the test screen with the existing test screen acquired in the previous test cycle. This may be to verify the error when the test screen is changed compared to the previous in order to verify the error of the cloud streaming server that provides the continuously changing service.

예를 들어, 테스트 화면이 기존 테스트 화면과 동일한 경우에는 이미 동일한 화면으로 오류 검증을 한차례 수행하였기 때문에, 이미 기존 테스트 화면으로 오류 검증을 수행한 클라우드 스트리밍 서버에서 오류가 발생하여 기존 테스트 화면과 동일한 어플리케이션 실행화면을 생성한다고 하여도 오류가 발생한 사실을 발견하지 못할 수 있다.For example, if the test screen is the same as the existing test screen, because error verification has already been performed once with the same screen, an error occurs in the cloud streaming server that has already performed error verification with the existing test screen, and the same application as the existing test screen Even if the execution screen is created, the fact that an error has occurred may not be detected.

따라서, 테스트 서버에서 획득한 테스트 화면이 이전에 획득한 기존 테스트 화면과 비교하여 변경된 경우에는 테스트 서버를 제외한 다른 클라우드 스트리밍 서버들에서도 테스트 화면에 상응하는 부분이 변경되었을 것으로 판단하고 오류 검증을 수행하도록 할 수 있다. 이 때, 클라우드 스트리밍 서버에서 오류가 발생하는 경우에는 화면의 변경이 반영되지 않는 경우가 발생할 수 있기 때문에 테스트 화면이 변경된 것을 확인한 경우에는 오류 검증을 수행하기 위해 현재의 테스트 화면과 기존 테스트 화면을 비교할 수 있다.Therefore, if the test screen acquired from the test server is changed compared to the previously acquired test screen, it is determined that the part corresponding to the test screen has been changed in other cloud streaming servers except for the test server, and error verification is performed. can do. At this time, if an error occurs in the cloud streaming server, the change of the screen may not be reflected. Therefore, if the test screen is confirmed to be changed, compare the current test screen with the existing test screen to verify the error. can

테스트 화면 전송부(230)는 테스트 화면과 기존 테스트 화면이 상이한 경우에, 복수개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 테스트 화면을 나머지 클라우드 스트리밍 서버들로 전송한다.When the test screen and the existing test screen are different from the test screen, the test screen transmission unit 230 transmits the test screen to the rest of the cloud streaming so that the remaining cloud streaming servers excluding the test server among the plurality of cloud streaming servers can perform error verification themselves. send to servers.

즉, 테스트 화면과 기존 테스트 화면이 상이한 경우에는 이 전 테스트 주기에서 오류 검증을 수행했던 화면과 현재 테스트 화면이 상이한 것을 의미하므로, 복수개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들도 테스트 화면에 상응하게 화면이 변경되었는지 확인할 필요가 있다. That is, if the test screen and the existing test screen are different, it means that the screen on which error verification was performed in the previous test cycle and the current test screen are different. It is necessary to check whether the screen has changed corresponding to the test screen.

이 때, 기존의 오류 검증 방식에서는 나머지 클라우드 스트리밍 서버들이 어느 하나의 오류 검증 장치에게 테스트 화면과 비교하기 위한 어플리케이션 실행화면을 생성하여 전송하면, 오류 검증 장치에서 이를 각각 테스트 화면과 비교하여 나머지 클라우드 스트리밍 서버들 중 오류가 발생한 적어도 하나의 서버를 판별할 수 있었다. 그러나 이와 같은 방식을 이용하면 나머지 클라우드 스트리밍 서버들이 모두 어플리케이션 실행화면을 오류 검증 장치에게 전송하기 위해 네트워크 자원을 소비하게 되고, 오류 검증 장치로부터 오류 검증 결과를 수신하기 위해 또 한번 네트워크 자원을 소비하게 되는 비효율적인 면이 존재하였다. At this time, in the existing error verification method, when the remaining cloud streaming servers generate and transmit an application execution screen for comparison with the test screen to any one error verification device, the error verification device compares it with the test screen, respectively, and the rest of the cloud streaming It was possible to determine at least one server in which an error occurred among the servers. However, using this method, all other cloud streaming servers consume network resources to transmit the application execution screen to the error verification device, and consume network resources again to receive the error verification result from the error verification device. There was an aspect of inefficiency.

따라서, 본 발명에서는 이와 같은 비효율적인 네트워크 자원 소비를 방지하기 위해서 나머지 클라우드 스트리밍 서버들이 테스트 화면 제공 장치(110)로부터 테스트 화면을 직접 수신하여 스스로 오류 검증을 수행할 수 있도록 할 수 있다.Therefore, in the present invention, in order to prevent such inefficient consumption of network resources, the remaining cloud streaming servers can directly receive the test screen from the test screen providing device 110 and perform error verification by themselves.

이 때, 나머지 클라우드 스트리밍 서버들은 테스트 화면에 상응하는 어플리케이션을 실행하고, 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 테스트 화면과 비교하여 오류 검증을 수행할 수 있다. 즉, 나머지 클라우드 스트리밍 서버들의 오류 발생 여부를 확인하기 위해서는 테스트 화면을 캡처할 때의 웹 페이지와 동일한 웹 페이지를 어플리케이션을 통해 실행하고, 동일 시점에서 캡처하여 어플리케이션 실행화면을 생성할 수 있다.At this time, the remaining cloud streaming servers execute an application corresponding to the test screen, and compare the test screen with the application execution screen captured at the same time as the test screen to perform error verification. That is, in order to check whether errors occur in the remaining cloud streaming servers, the same web page as the web page at the time of capturing the test screen may be executed through the application, and the application execution screen may be generated by capturing at the same time point.

이 때, 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 테스트 화면이 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 테스트 화면과 함께 전송할 수 있다. At this time, at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification may be transmitted together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버들은 어플리케이션 키 스크립트를 이용하여 어플리케이션을 실행할 수 있다. 즉, 테스트 서버에서 실행하는 어플리케이션과 동일한 어플리케이션을 실행하는 나머지 클라우드 스트리밍 서버들에서 테스트 화면과 동일한 화면을 생성하기 위해서는 테스트 화면에 상응하는 웹 페이지로 이동하기 위한 어플리케이션 키 스크립트가 입력될 필요가 있다. 따라서, 테스트 화면을 생성할 때에 입력되었던 어플리케이션 키 스크립트를 나머지 클라우드 스트리밍 서버들로 전달함으로써 나머지 클라우드 스트리밍 서버들도 테스트 서버와 동일한 시점에 화면을 캡처하여 어플리케이션 실행화면을 생성할 수 있다.At this time, the remaining cloud streaming servers may run the application using the application key script. That is, in order to generate the same screen as the test screen in the remaining cloud streaming servers running the same application as the application running in the test server, an application key script for moving to a web page corresponding to the test screen needs to be input. Therefore, by transferring the application key script input when generating the test screen to the remaining cloud streaming servers, the remaining cloud streaming servers can also capture the screen at the same time as the test server to generate the application execution screen.

이 때, 나머지 클라우드 스트리밍 서버들은 마스킹된 테스트 화면을 수신하는 경우에 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 마스킹된 테스트 화면과 비교할 수 있다. 예를 들어, 어플리케이션에서 테스트 화면으로 사용될 페이지에 애니메이션 효과가 적용되어있다면, 웹 서버에서 같은 웹 페이지를 출력한다 하여도 캡처하는 시간에 따라 어플리케이션 실행화면이 동일하지 않게 보일 수 있다. 따라서, 애니메이션 효과를 배제하지 않고 테스트 화면을 생성하여 나머지 클라우드 스트리밍 서버들에게 전송한다면, 대부분의 서버들에서 오류가 발생한 것으로 인식하고 불필요하게 오류 복구를 위한 플로우를 수행하는 문제가 발생할 수 있다.At this time, when the other cloud streaming servers receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen. For example, if animation effects are applied to a page to be used as a test screen in an application, even if the same web page is output from the web server, the application execution screen may not look the same depending on the capture time. Therefore, if a test screen is generated without excluding animation effects and transmitted to the rest of the cloud streaming servers, there may be a problem of recognizing that an error has occurred in most servers and unnecessarily performing a flow for error recovery.

따라서, 이와 같은 문제점을 해결하기 위해 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 비교하기 위한 화면에서 제외하고 나머지 화면들을 비교함으로써 오류 검증을 수행할 수 있다. 나머지 클라우드 스트리밍 서버들이 마스킹된 테스트 화면을 수신하였다면, 이와 비교하기 위한 어플리케이션 실행화면도 애니메이션 효과가 적용된 부분을 마스킹하여 생성할 수 있다. Therefore, in order to solve such a problem, error verification can be performed by masking the part to which the animation effect is applied, excluding the screen for comparison, and comparing the remaining screens. If the rest of the cloud streaming servers receive the masked test screen, an application execution screen for comparison can also be generated by masking the part to which the animation effect is applied.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다. 또한, 오류 검증을 위한 테스트 화면도 테스트 서버에서 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level. Also, a test screen for error verification may be generated by encoding at least one of the size, image quality, and frame rate of the screen area in the test server to a minimum level.

본 발명은 복수개의 클라우드 스트리밍 서버들에 대한 오류 검증을 수행할 때 네트워크 리소스를 절약하는 것이 하나의 목적일 수 있다. 그러나, 오류 검증을 수행할 때마다 테스트 화면이나 어플리케이션 실행화면을 일반 서비스를 제공할 때와 같이 고품질로 생성한다면, 오류 검증을 수행하는 클라우드 스트리밍 서버들에 부하를 가중시키는 원인이 될 수 있다. 예를 들어, 오류 검증을 위한 테스트 서버에서 1분마다 변경되는 웹 페이지를 테스트 화면으로 생성하여 나머지 클라우드 스트리밍 서버들로 전달한다고 가정한다면, 1분마다 오류 검증을 위한 고화질의 어플리케이션 실행화면을 생성하는 작업을 수행해야 하기 때문에 본 발명의 목적에 있어서도 적합하지 않을 수 있다.One purpose of the present invention may be to save network resources when performing error verification for a plurality of cloud streaming servers. However, if a test screen or application execution screen is generated with high quality every time error verification is performed, as when providing a general service, it may cause an increase in load on cloud streaming servers that perform error verification. For example, if it is assumed that the test server for error verification generates a web page that changes every minute as a test screen and delivers it to the rest of the cloud streaming servers, it is necessary to create a high-quality application execution screen for error verification every minute. It may not be suitable for the purposes of the present invention as it has to do with work.

따라서, 인코딩될 화면 영역의 크기를 줄이거나, 화질을 낮추거나 또는 프레임 레이트를 줄여서 인코딩을 수행함으로써, 나머지 클라우드 스트리밍 서버들이 어플리케이션 실행화면을 생성하면서 발생하는 부하를 감소시키도록 할 수 있다. 또한, 테스트 서버에서 테스트 화면을 수신하고, 테스트 화면 제어 장치(110)가 나머지 클라우드 스트리밍 서버들에게 테스트 화면을 전송할 때에도 최소 수준으로 생성된 테스트 화면을 전송함으로써, 오류 검증을 위해 사용되는 네트워크 자원을 절약할 수 있다.Accordingly, by performing encoding by reducing the size of the screen area to be encoded, lowering the image quality, or reducing the frame rate, it is possible to reduce the load generated while the remaining cloud streaming servers generate the application execution screen. In addition, by transmitting the test screen generated at the minimum level even when receiving the test screen from the test server and the test screen control device 110 transmits the test screen to the rest of the cloud streaming servers, network resources used for error verification can save

이 때, 나머지 클라우드 스트리밍 서버들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 테스트 화면을 전송할 수 있다. 예를 들어, 100대의 클라우드 스트리밍 서버들이 각각 100개의 세션을 구동하고 있고, 테스트 화면의 최소 인코딩 데이터 량이 100KB라고 가정한다면, 전체 서비스 세션의 오류 검증에 필요한 데이터 량은 1GB 정도가 소요될 수 있다. 따라서 전체 서비스 세션에 대한 오류 검증은 짧은 시간 내에 수행되기 어렵고, 일부의 세션들만 검증을 수행할 수 있다. At this time, the test screen may be transmitted to any one of the plurality of sessions corresponding to each of the remaining cloud streaming servers. For example, if 100 cloud streaming servers are each running 100 sessions, and it is assumed that the minimum encoded data amount of the test screen is 100KB, the amount of data required for error verification of the entire service session may take about 1GB. Therefore, it is difficult to verify errors for the entire service session within a short time, and only some sessions can be verified.

즉, 1번 클라우드 스트리밍 서버의 0번 세션과 2번 클라우드 스트리밍 서버의 0번 세션과 같이 각 클라우드 스트리밍 서버들의 0번 세션들을 각각 테스트 세션으로 설정하고, 테스트 세션들을 통해 테스트 화면을 어플리케이션 실행화면과 비교하여 오류 검증을 수행할 수 있다.That is, like session 0 of cloud streaming server No. 1 and session 0 of cloud streaming server No. 2, session 0 of each cloud streaming server is set as a test session, respectively, and the test screen is displayed with the application execution screen through the test sessions. By comparison, error verification can be performed.

이와 같이 각 클라우드 스트리밍 서버의 테스트 세션을 통해 오류 검증을 수행함으로써 니트워크 대역의 필요 사용량을 현저하게 감소시킬 수 있다.In this way, by performing error verification through the test session of each cloud streaming server, the required usage of the knitwork band can be significantly reduced.

이 때, 복수개의 세션들에서 모두 오류 검증을 수행할 수 있도록, 테스트 화면을 전송할 때마다 테스트 세션을 변경하여 테스트 화면을 전송할 수 있다. 예를 들어, 오류 검증을 수행할 때 테스트 세션을 위한 스케줄을 미리 설정해두고, 스케줄에 따라 테스트 세션을 변경해가면서 오류 검증을 수행할 수 있다. 첫 오류 검증을 수행할 때에는 각 클라우드 스트리밍 서버의 0번째 세션을 테스트 세션으로 설정한다면, 그 다음 오류 검증을 수행할 때에는 각 클라우드 스트리밍 서버의 1번째 세션을 테스트 세션으로, 그 다음에는 2번째 세션을 테스트 세션으로 설정하도록 순차적인 방식으로 스케줄을 설정할 수 있다. 또는, 오류 검증을 수행할 때마다 각 클라우드 스트리밍 서버에서 구동하고 있는 복수개의 세션들 중에서 랜덤으로 어느 하나의 세션을 선택하여 테스트 세션으로 설정할 수도 있다.In this case, the test screen may be transmitted by changing the test session each time the test screen is transmitted so that error verification can be performed in all of the plurality of sessions. For example, when performing error verification, a schedule for a test session may be set in advance, and error verification may be performed while changing the test session according to the schedule. If the 0th session of each cloud streaming server is set as the test session when performing the first error verification, the 1st session of each cloud streaming server as the test session and the second session after the next error verification are performed. You can schedule it in a sequential manner to set up a test session. Alternatively, whenever error verification is performed, any one session may be randomly selected from among a plurality of sessions running in each cloud streaming server and set as a test session.

이와 같은 테스트 세션은 상기에 기재한 방법들 말고도 다양한 방법으로 설정될 수 있다.Such a test session may be established by various methods other than the methods described above.

저장부(미도시)는 상술한 바와 같이 본 발명의 실시예에 따른 테스트 화면 제공 과정에서 발생하는 다양한 정보를 저장한다.The storage unit (not shown) stores various information generated in the process of providing a test screen according to an embodiment of the present invention as described above.

실시예에 따라, 저장부는 테스트 화면 제공 장치(110) 와 독립적으로 구성되어 테스트 화면 제공을 위한 기능을 지원할 수 있다. 이 때, 저장부는 별도의 대용량 스토리지로 동작할 수 있고, 동작 수행을 위한 제어 기능을 포함할 수 있다.According to an embodiment, the storage unit may be configured independently of the test screen providing apparatus 110 to support a function for providing the test screen. In this case, the storage unit may operate as a separate mass storage and may include a control function for performing the operation.

또한, 상술한 바와 같이 동작되는 클라우드 스트리밍 서버는 하나 이상의 서버로 구현될 수 있다.In addition, the cloud streaming server operated as described above may be implemented as one or more servers.

한편, 클라우드 스트리밍 서버는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.On the other hand, the cloud streaming server is equipped with a memory can store information in the device. For one implementation, the memory is a computer-readable medium. In one implementation, the memory may be a volatile memory unit, and in another implementation, the memory may be a non-volatile memory unit. In one embodiment, the storage device is a computer-readable medium. In various different implementations, the storage device may include, for example, a hard disk device, an optical disk device, or some other mass storage device.

이와 같은 테스트 화면 제공 장치(110)를 이용하여 클라우드 스트리밍 서버의 자체 오류 검증을 수행함으로써 기존의 오류 검증을 수행할 때 필요했던 네트워크 리소스를 보다 절약할 수 있다.By performing the self-error verification of the cloud streaming server using the test screen providing device 110 such as this, it is possible to further save network resources required when performing the existing error verification.

또한, 클라우드 스트리밍 서버에서 테스트 식별자를 기반으로 오류 검증을 위한 어플리케이션 실행화면을 최소 비용으로 생성함으로써 각각의 클라우드 스트리밍 서버에서 오류 검증을 수행하는데 필요한 시간과 자원을 절약할 수 있다.In addition, it is possible to save time and resources required to perform error verification in each cloud streaming server by generating an application execution screen for error verification at a minimum cost based on the test identifier in the cloud streaming server.

또한, 어플리케이션 중 애니메이션 효과가 적용된 화면에 대해서도 오류 검증을 수행함으로써 보다 정확하게 오류 검증을 수행하여 전체 클라우드 스트리밍 서비스 시스템의 효율을 향상시킬 수 있다.In addition, by performing error verification on the screen to which the animation effect is applied among applications, error verification can be performed more accurately, thereby improving the efficiency of the entire cloud streaming service system.

도 3은 종래의 클라우드 스트리밍 서버의 오류 검증 과정의 일 예를 나타낸 도면이다.3 is a diagram illustrating an example of an error verification process of a conventional cloud streaming server.

도 3을 참조하면, 종래의 클라우드 스트리밍 서버의 오류 검증 과정은 오류 검증 장치(310)가 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버(322)로 오류 검증을 위한 테스트 화면을 요청할 수 있다.Referring to FIG. 3 , in the error verification process of the conventional cloud streaming server, the error verification device 310 may request a test screen for error verification from any one test server 322 among a plurality of cloud streaming servers.

이 후, 테스트 서버(322)는 테스트 화면을 생성하여 오류 검증 장치(310)로 전송할 수 있다.Thereafter, the test server 322 may generate a test screen and transmit it to the error verification device 310 .

이 때, 오류 검증 장치(310)는 본 발명과 같이 테스트 화면을 오류 검증을 위한 클라우드 스트리밍 서버(321)로 전송하지 않고, 오류 검증을 수행할 클라우드 스트리밍 서버(321)에게 테스트 서버와 동일 시점에 캡처되어 생성된 어플리케이션 실행화면을 요청할 수 있다.At this time, the error verification device 310 does not transmit the test screen to the cloud streaming server 321 for error verification as in the present invention, but at the same time as the test server to the cloud streaming server 321 to perform error verification. You can request the captured application execution screen.

이 후, 오류 검증을 수행할 클라우드 스트리밍 서버(321)는 어플리케이션 실행화면을 생성하여 오류 검증 장치(310)로 제공할 수 있고, 오류 검증 장치(310)에서는 테스트 서버(322)로부터 수신한 테스트 화면과 클라우드 스트리밍 서버(321)로부터 수신한 어플리케이션 실행화면을 비교하여 오류 검증을 수행할 수 있다.Thereafter, the cloud streaming server 321 to perform error verification may generate an application execution screen and provide it to the error verification device 310 , and the error verification device 310 may provide the test screen received from the test server 322 . Error verification may be performed by comparing the application execution screen received from the cloud streaming server 321 with the cloud streaming server 321 .

이 후, 비교한 두 개의 화면의 동일하지 않은 경우에는 해당 어플리케이션 실행화면을 제공한 클라우드 스트리밍 서버(321)에서 오류가 발생한 것으로 판단하고, 오류 발생 정보를 클라우드 스트리밍 서버(321)에게 전달할 수 있다.After that, if the two screens are not the same, it is determined that an error has occurred in the cloud streaming server 321 that provides the corresponding application execution screen, and the error occurrence information can be delivered to the cloud streaming server 321 .

이 후, 오류 발생 정보를 수신한 클라우드 스트리밍 서버(321)에서는 오류를 복구하기 위한 복구 플로우를 수행할 수 있다.After that, the cloud streaming server 321 that has received the error occurrence information may perform a recovery flow for recovering the error.

도 4는 본 발명의 일실시예에 따른 오류 검증 과정을 나타낸 도면이다.4 is a diagram illustrating an error verification process according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일실시예에 따른 오류 검증 과정은 테스트 화면 제공 장치(410)가 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버(422)로 오류 검증을 위한 테스트 화면을 요청할 수 있다.Referring to FIG. 4 , in the error verification process according to an embodiment of the present invention, the test screen providing device 410 requests a test screen for error verification to any one test server 422 among a plurality of cloud streaming servers. can

이 후, 테스트 서버(422)는 테스트 화면을 생성하여 테스트 화면 제공 장치(410)로 전송할 수 있다.Thereafter, the test server 422 may generate a test screen and transmit it to the test screen providing device 410 .

이 때, 테스트 화면 제공 장치(410)는 이전에 획득한 기존 테스트 화면과 현재 획득한 테스트 화면을 비교하여 동일한지 여부를 판단할 수 있다.In this case, the test screen providing apparatus 410 may compare the previously acquired test screen with the currently acquired test screen to determine whether they are the same.

만약, 기존 테스트 화면과 현재 획득한 테스트 화면이 동일한 경우에는 복수개의 클라우드 스트리밍 서버들에 대한 자체 오류 검증을 수행하지 않고, 동일하지 않은 경우에는 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 자체 오류 검증을 수행할 수 있도록 현재 획득한 테스트 화면을 어플리케이션 키 스크립트 및 테스트 식별자와 함께 전달할 수 있다.If the existing test screen and the currently acquired test screen are the same, self-error verification for a plurality of cloud streaming servers is not performed. The currently acquired test screen can be delivered along with the application key script and test identifier to be executed.

이 때, 어플리케이션 키 스크립트는 테스트 화면을 생성한 어플리케이션과 동일한 시점에 어플리케이션 실행화면을 생성하기 위해 이용할 수 있다. 또한, 테스트 식별자는 오류 검증을 수행할 클라우드 스트리밍 서버(421)가 현재 수신된 테스트 화면이 오류 검증을 위해 수신된 것임을 인지하고 최소 수준으로 어플리케이션 실행화면을 생성하도록 하기 위해 전달될 수 있다.In this case, the application key script may be used to generate the application execution screen at the same time as the application that generated the test screen. In addition, the test identifier may be transmitted so that the cloud streaming server 421 to perform error verification recognizes that the currently received test screen is received for error verification and generates an application execution screen at a minimum level.

이 후, 클라우드 스트리밍 서버(421)는 테스트 화면과 비교하기 위한 어플리케이션 실행화면을 생성하고, 생성한 어플리케이션 실행화면과 수신된 테스트 화면을 비교하여 오류 검증을 수행할 수 있다.Thereafter, the cloud streaming server 421 may generate an application execution screen for comparison with the test screen, and may perform error verification by comparing the generated application execution screen with the received test screen.

이 때, 비교한 두 개의 화면이 동일하지 않은 경우에는 해당 클라우드 스트리밍 서버(421)에서 오류가 발생한 것으로 스스로 인식하고 복구를 위한 플로우를 수행할 수 있다. At this time, if the compared two screens are not the same, the cloud streaming server 421 may recognize itself as an error and perform a recovery flow.

즉, 도 3과 도 4의 과정을 비교하여 확인해보면 종래의 오류 검증 과정은 본 발명과는 상이하게 오류 검증 장치(310)가 어플리케이션 실행화면을 수신하여 비교를 통한 오류 검증을 수행하고, 오류가 발생한 것으로 판단된 클라우드 스트리밍 서버에게 오류 발생 정보를 전달함으로써 오류를 복구할 수 있었다. That is, comparing the process of Figs. 3 and 4, the conventional error verification process is different from the present invention, the error verification device 310 receives the application execution screen, performs error verification through comparison, and the error is detected. It was possible to recover the error by delivering the error occurrence information to the cloud streaming server that was determined to have occurred.

그러나, 이와 같은 방식으로 복수개의 클라우드 스트리밍 서버들의 오류 검증을 수행하는 경우에는 복수개의 클라우드 스트리밍 서버들이 오류 검증을 수행할 때마다 어플리케이션 실행화면을 생성하여 전송하여야 하기 때문에, 클라우드 스트리밍 서버의 자원과 더불어 네트워크의 자원 또한 많이 소요될 수 있다. However, in the case of performing error verification of a plurality of cloud streaming servers in this way, each time the plurality of cloud streaming servers perform error verification, an application execution screen must be generated and transmitted, so that together with the resources of the cloud streaming server It can also consume a lot of network resources.

따라서, 본 발명은 도 4와 같이 복수개의 클라우드 스트리밍 서버들 내에서 각각 자체적으로 오류 검증을 수행하기 위한 테스트 화면을 전송함으로써, 불필요하게 송수신되면서 사용되는 네트워크 자원을 절약하는 효과를 가져올 수 있다.Therefore, the present invention can bring the effect of saving network resources used while transmitting and receiving unnecessary by transmitting a test screen for performing error verification by itself within a plurality of cloud streaming servers as shown in FIG. 4 .

도 5는 본 발명의 일실시예에 따른 테스트 화면을 나타낸 도면이다.5 is a diagram illustrating a test screen according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일실시예에 따른 테스트 화면(510)은 시간이 지남에 따라 지속적으로 변경되는 어플리케이션의 실행화면에 상응할 수 있다. Referring to FIG. 5 , a test screen 510 according to an embodiment of the present invention may correspond to an execution screen of an application that is continuously changed over time.

예를 들어, 도 5의 테스트 화면(510)은 어플리케이션의 순위를 나타내는 웹 페이지를 캡처한 어플리케이션 실행화면으로, 이와 같은 화면은 일간, 주간, 월간에 따라 어플리케이션의 순위에 변동이 발생함으로써 화면의 변경될 수 있다. For example, the test screen 510 of FIG. 5 is an application execution screen that captures a web page indicating the ranking of the application, and such a screen is a screen change due to a change in the ranking of the application according to the daily, weekly, and monthly can be

즉, 도 5에 상응하는 웹 페이지로 이동하게 되면 현재에 상응하는 검색 기간(520)에 대한 어플리케이션의 순위 화면이 나타날 수 있다. 이 때, 일간 어플리케이션 순위의 경우에는 현재와 내일의 어플리케이션 순위에 변동이 발생할 가능성이 있으므로, 테스트 화면 제공 장치는 하루 간격으로 테스트 화면(510)을 요청하여 기존 테스트 화면과 비교할 수 있다. That is, when moving to the web page corresponding to FIG. 5 , the ranking screen of the application for the search period 520 corresponding to the present may appear. In this case, in the case of the daily application ranking, since there is a possibility that the current and tomorrow application rankings may change, the test screen providing device may request the test screen 510 at daily intervals and compare it with the existing test screen.

또한, 테스트 화면(510)의 디폴트 화면의 주간 어플리케이션 순위인 경우에는 테스트 화면 제공 장치는 일주일 간격으로 테스트 화면(510)을 요청하여 기존 테스트 화면과 비교할 수도 있다.In addition, in the case of the weekly application ranking of the default screen of the test screen 510 , the test screen providing apparatus may request the test screen 510 at weekly intervals and compare it with the existing test screen.

이와 같은 테스트 화면(510)은 테스트 화면 제공 장치의 관리자에 의해 지정되어 사용될 수 있으며, 다른 화면으로 수정하는 것도 가능할 수 있다.Such a test screen 510 may be designated and used by the administrator of the test screen providing device, and it may be possible to modify it to another screen.

도 6은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법을 나타낸 동작 흐름도이다.6 is an operation flowchart illustrating a method of providing a test screen for self-error verification of a cloud streaming server according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 제공 방법은 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득한다(S610).Referring to FIG. 6 , the test providing method for self-error verification of the cloud streaming server according to an embodiment of the present invention connects to any one test server among a plurality of cloud streaming servers at every preset test cycle to display a test screen. Acquire (S610).

이 때, 테스트 서버에 접속하고, 테스트 화면에 상응하는 웹 페이지 화면을 수신하기 위한 키 스크립트를 입력하여 테스트 화면을 획득할 수 있다. 예를 들어, 영화와 관련된 VOD를 제공하는 어플리케이션에서 영화 VOD 순위를 보여주는 화면을 테스트 화면으로 사용한다고 가정한다면, 어플리케이션의 첫 UI 화면에서 메뉴 버튼을 통해 VOD 순위에 해당하는 페이지로 이동하기 위한 키 스크립트를 입력함으로써 테스트 화면을 획득할 수 있다. At this time, the test screen may be obtained by accessing the test server and inputting a key script for receiving a web page screen corresponding to the test screen. For example, assuming that a screen showing movie VOD rankings is used as a test screen in an application that provides VOD related to movies, a key script for moving to the page corresponding to the VOD ranking through the menu button on the first UI screen of the application A test screen can be obtained by entering .

따라서, 이와 같은 키 스크립트는 테스트 화면 제공 장치에 따라 미리 설정되어 관리될 수 있다.Accordingly, such a key script may be preset and managed according to a test screen providing device.

이 때, 기설정된 테스트 주기는 테스트 화면에 상응하는 어플리케이션의 변경주기에 상응하게 설정되거나 또는 테스트 화면 제공 장치의 관리자에 의해 설정될 수도 있다. 예를 들어, 하루에 한번씩 내용이 변경될 가능성이 있는 어플리케이션에 대해서는 기설정된 변경주기를 하루로 설정함으로써, 어플리케이션의 내용, 즉 화면이 변경될 때 마다 해당하는 테스트 화면을 획득할 수 있다.In this case, the preset test cycle may be set to correspond to the change cycle of the application corresponding to the test screen, or may be set by the manager of the test screen providing apparatus. For example, for an application whose contents are likely to be changed once a day, by setting a preset change cycle to one day, a corresponding test screen can be obtained whenever the contents of the application, that is, the screen is changed.

이 때, 테스트 서버는 테스트 화면 제공 장치의 관리자에 의해서 복수개의 클라우드 스트리밍 서버들 중 어느 하나로 결정될 수 있다. 또는 테스트 서버는 실제로 사용자들에게 서비스를 제공하지 않지만 클라우드 스트리밍 서버들의 오류 검증을 위해 테스트 화면 제공 장치의 관리자에 의해 관리되는 별도의 서버에 상응할 수도 있다.At this time, the test server may be determined as any one of the plurality of cloud streaming servers by the manager of the test screen providing device. Alternatively, the test server may correspond to a separate server that does not actually provide services to users, but is managed by the administrator of the test screen providing device for error verification of cloud streaming servers.

이 때, 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 테스트 화면을 획득할 수 있다. 이 때, 애니메이션이 적용된 부분은 키 입력과 관계없이 변화하는 부분이며, 이동하는 객체, 크기, 모양, 색상 등이 변화하는 객체 등이 삽입된 부분에 해당할 수 있다. 또한, 시계에 상응하는 객체가 표시되는 부분일 수도 있다.In this case, when the animation effect is applied to the application of the test server, the test screen may be obtained by masking the part to which the animation effect is applied. In this case, the part to which the animation is applied is a part that changes regardless of a key input, and may correspond to a part into which a moving object, an object that changes in size, shape, color, etc. is inserted. Also, it may be a portion where an object corresponding to the watch is displayed.

또한, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 제공 방법은 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교한다(S615). 이는 지속적으로 변경되는 서비스를 제공하는 클라우드 스트리밍 서버의 오류를 검증하기 위해 테스트 화면이 이전과 비교하여 변경되었을 경우에 오류 검증을 수행하기 위함일 수 있다. In addition, the test providing method for self-error verification of the cloud streaming server according to an embodiment of the present invention compares the test screen with the existing test screen obtained in the previous test cycle (S615). This may be to verify the error when the test screen is changed compared to the previous in order to verify the error of the cloud streaming server that provides the continuously changing service.

예를 들어, 테스트 화면이 기존 테스트 화면과 동일한 경우에는 이미 동일한 화면으로 오류 검증을 한차례 수행하였기 때문에, 이미 기존 테스트 화면으로 오류 검증을 수행한 클라우드 스트리밍 서버에서 오류가 발생하여 기존 테스트 화면과 동일한 어플리케이션 실행화면을 생성한다고 하여도 오류가 발생한 사실을 발견하지 못할 수 있다.For example, if the test screen is the same as the existing test screen, because error verification has already been performed once with the same screen, an error occurs in the cloud streaming server that has already performed error verification with the existing test screen, and the same application as the existing test screen Even if the execution screen is created, the fact that an error has occurred may not be detected.

따라서, 테스트 서버에서 획득한 테스트 화면이 이전에 획득한 기존 테스트 화면과 비교하여 변경된 경우에는 테스트 서버를 제외한 다른 클라우드 스트리밍 서버들에서도 테스트 화면에 상응하는 부분이 변경되었을 것으로 판단하고 오류 검증을 수행하도록 할 수 있다. 이 때, 클라우드 스트리밍 서버에서 오류가 발생하는 경우에는 화면의 변경이 반영되지 않는 경우가 발생할 수 있기 때문에 테스트 화면이 변경된 것을 확인한 경우에는 오류 검증을 수행하기 위해 현재의 테스트 화면과 기존 테스트 화면을 비교할 수 있다.Therefore, if the test screen acquired from the test server is changed compared to the previously acquired test screen, it is determined that the part corresponding to the test screen has been changed in other cloud streaming servers except for the test server, and error verification is performed. can do. At this time, if an error occurs in the cloud streaming server, the change of the screen may not be reflected. Therefore, if the test screen is confirmed to be changed, compare the current test screen with the existing test screen to verify the error. can

단계(S615)의 비교결과 두 화면이 동일하면, 오류 검증을 수행하지 않고 기설정된 테스트 주기 동안 대기하였다가 다시 단계(S610)을 수행할 수 있다.If the two screens are the same as a result of the comparison in step S615, error verification is not performed, and after waiting for a preset test period, step S610 may be performed again.

또한, (S615)의 비교결과 두 화면이 동일하지 않으면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 제공 방법은 테스트 화면과 기존 테스트 화면이 상이한 경우에, 복수개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 테스트 화면을 나머지 클라우드 스트리밍 서버들로 전송한다(S630).In addition, if the two screens are not the same as a result of the comparison of (S615), the test providing method for self-error verification of the cloud streaming server according to an embodiment of the present invention is different from the test screen and the existing test screen. The test screen is transmitted to the remaining cloud streaming servers so that the rest of the cloud streaming servers except for the test server among the streaming servers can perform error verification by themselves (S630).

즉, 테스트 화면과 기존 테스트 화면이 상이한 경우에는 이 전 테스트 주기에서 오류 검증을 수행했던 화면과 현재 테스트 화면이 상이한 것을 의미하므로, 복수개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들도 테스트 화면에 상응하게 화면이 변경되었는지 확인할 필요가 있다. That is, if the test screen and the existing test screen are different, it means that the screen on which error verification was performed in the previous test cycle and the current test screen are different. It is necessary to check whether the screen has changed corresponding to the test screen.

이 때, 기존의 오류 검증 방식에서는 나머지 클라우드 스트리밍 서버들이 어느 하나의 오류 검증 장치에게 테스트 화면과 비교하기 위한 어플리케이션 실행화면을 생성하여 전송하면, 오류 검증 장치에서 이를 각각 테스트 화면과 비교하여 나머지 클라우드 스트리밍 서버들 중 오류가 발생한 적어도 하나의 서버를 판별할 수 있었다. 그러나 이와 같은 방식을 이용하면 나머지 클라우드 스트리밍 서버들이 모두 어플리케이션 실행화면을 오류 검증 장치에게 전송하기 위해 네트워크 자원을 소비하게 되고, 오류 검증 장치로부터 오류 검증 결과를 수신하기 위해 또 한번 네트워크 자원을 소비하게 되는 비효율적인 면이 존재하였다. At this time, in the existing error verification method, when the remaining cloud streaming servers generate and transmit an application execution screen for comparison with the test screen to any one error verification device, the error verification device compares it with the test screen, respectively, and the rest of the cloud streaming It was possible to determine at least one server in which an error occurred among the servers. However, using this method, all other cloud streaming servers consume network resources to transmit the application execution screen to the error verification device, and consume network resources again to receive the error verification result from the error verification device. There was an aspect of inefficiency.

따라서, 본 발명에서는 이와 같은 비효율적인 네트워크 자원 소비를 방지하기 위해서 나머지 클라우드 스트리밍 서버들이 테스트 화면 제공 장치로부터 테스트 화면을 직접 수신하여 스스로 오류 검증을 수행할 수 있도록 할 수 있다.Accordingly, in the present invention, in order to prevent such inefficient consumption of network resources, the remaining cloud streaming servers can directly receive the test screen from the test screen providing device and perform error verification by themselves.

이 때, 나머지 클라우드 스트리밍 서버들은 테스트 화면에 상응하는 어플리케이션을 실행하고, 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 테스트 화면과 비교하여 오류 검증을 수행할 수 있다. 즉, 나머지 클라우드 스트리밍 서버들의 오류 발생 여부를 확인하기 위해서는 테스트 화면을 캡처할 때의 웹 페이지와 동일한 웹 페이지를 어플리케이션을 통해 실행하고, 동일 시점에서 캡처하여 어플리케이션 실행화면을 생성할 수 있다.At this time, the remaining cloud streaming servers execute an application corresponding to the test screen, and compare the test screen with the application execution screen captured at the same time as the test screen to perform error verification. That is, in order to check whether errors occur in the remaining cloud streaming servers, the same web page as the web page at the time of capturing the test screen may be executed through the application, and the application execution screen may be generated by capturing at the same time point.

이 때, 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 테스트 화면이 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 테스트 화면과 함께 전송할 수 있다. At this time, at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification may be transmitted together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버들은 어플리케이션 키 스크립트를 이용하여 어플리케이션을 실행할 수 있다. 즉, 테스트 서버에서 실행하는 어플리케이션과 동일한 어플리케이션을 실행하는 나머지 클라우드 스트리밍 서버들에서 테스트 화면과 동일한 화면을 생성하기 위해서는 테스트 화면에 상응하는 웹 페이지로 이동하기 위한 어플리케이션 키 스크립트가 입력될 필요가 있다. 따라서, 테스트 화면을 생성할 때에 입력되었던 어플리케이션 키 스크립트를 나머지 클라우드 스트리밍 서버들로 전달함으로써 나머지 클라우드 스트리밍 서버들도 테스트 서버와 동일한 시점에 화면을 캡처하여 어플리케이션 실행화면을 생성할 수 있다.At this time, the remaining cloud streaming servers may run the application using the application key script. That is, in order to generate the same screen as the test screen in the remaining cloud streaming servers running the same application as the application running in the test server, an application key script for moving to a web page corresponding to the test screen needs to be input. Therefore, by transferring the application key script input when generating the test screen to the remaining cloud streaming servers, the remaining cloud streaming servers can also capture the screen at the same time as the test server to generate the application execution screen.

이 때, 나머지 클라우드 스트리밍 서버들은 마스킹된 테스트 화면을 수신하는 경우에 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 마스킹된 테스트 화면과 비교할 수 있다. 예를 들어, 어플리케이션에서 테스트 화면으로 사용될 페이지에 애니메이션 효과가 적용되어있다면, 웹 서버에서 같은 웹 페이지를 출력한다 하여도 캡처하는 시간에 따라 어플리케이션 실행화면이 동일하지 않게 보일 수 있다. 따라서, 애니메이션 효과를 배제하지 않고 테스트 화면을 생성하여 나머지 클라우드 스트리밍 서버들에게 전송한다면, 대부분의 서버들에서 오류가 발생한 것으로 인식하고 불필요하게 오류 복구를 위한 플로우를 수행하는 문제가 발생할 수 있다.At this time, when the other cloud streaming servers receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen. For example, if animation effects are applied to a page to be used as a test screen in an application, even if the same web page is output from the web server, the application execution screen may not look the same depending on the capture time. Therefore, if a test screen is generated without excluding animation effects and transmitted to the rest of the cloud streaming servers, there may be a problem of recognizing that an error has occurred in most servers and unnecessarily performing a flow for error recovery.

따라서, 이와 같은 문제점을 해결하기 위해 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 비교하기 위한 화면에서 제외하고 나머지 화면들을 비교함으로써 오류 검증을 수행할 수 있다. 나머지 클라우드 스트리밍 서버들이 마스킹된 테스트 화면을 수신하였다면, 이와 비교하기 위한 어플리케이션 실행화면도 애니메이션 효과가 적용된 부분을 마스킹하여 생성할 수 있다. Therefore, in order to solve such a problem, error verification can be performed by masking the part to which the animation effect is applied, excluding the screen for comparison, and comparing the remaining screens. If the rest of the cloud streaming servers receive the masked test screen, an application execution screen for comparison can also be generated by masking the part to which the animation effect is applied.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다. 또한, 오류 검증을 위한 테스트 화면도 테스트 서버에서 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level. Also, a test screen for error verification may be generated by encoding at least one of the size, image quality, and frame rate of the screen area in the test server to a minimum level.

본 발명은 복수개의 클라우드 스트리밍 서버들에 대한 오류 검증을 수행할 때 네트워크 리소스를 절약하는 것이 하나의 목적일 수 있다. 그러나, 오류 검증을 수행할 때마다 테스트 화면이나 어플리케이션 실행화면을 일반 서비스를 제공할 때와 같이 고품질로 생성한다면, 오류 검증을 수행하는 클라우드 스트리밍 서버들에 부하를 가중시키는 원인이 될 수 있다. 예를 들어, 오류 검증을 위한 테스트 서버에서 1분마다 변경되는 웹 페이지를 테스트 화면으로 생성하여 나머지 클라우드 스트리밍 서버들로 전달한다고 가정한다면, 1분마다 오류 검증을 위한 고화질의 어플리케이션 실행화면을 생성하는 작업을 수행해야 하기 때문에 본 발명의 목적에 있어서도 적합하지 않을 수 있다.One purpose of the present invention may be to save network resources when performing error verification for a plurality of cloud streaming servers. However, if a test screen or application execution screen is generated with high quality every time error verification is performed, as when providing a general service, it may cause an increase in load on cloud streaming servers that perform error verification. For example, if it is assumed that the test server for error verification generates a web page that changes every minute as a test screen and delivers it to the rest of the cloud streaming servers, it is necessary to create a high-quality application execution screen for error verification every minute. It may not be suitable for the purposes of the present invention as it has to do with work.

따라서, 인코딩될 화면 영역의 크기를 줄이거나, 화질을 낮추거나 또는 프레임 레이트를 줄여서 인코딩을 수행함으로써, 나머지 클라우드 스트리밍 서버들이 어플리케이션 실행화면을 생성하면서 발생하는 부하를 감소시키도록 할 수 있다. 또한, 테스트 서버에서 테스트 화면을 수신하고, 테스트 화면 제어 장치가 나머지 클라우드 스트리밍 서버들에게 테스트 화면을 전송할 때에도 최소 수준으로 생성된 테스트 화면을 전송함으로써, 오류 검증을 위해 사용되는 네트워크 자원을 절약할 수 있다.Accordingly, by performing encoding by reducing the size of the screen area to be encoded, lowering the image quality, or reducing the frame rate, it is possible to reduce the load generated while the remaining cloud streaming servers generate the application execution screen. In addition, when the test screen is received from the test server and the test screen control device transmits the test screen to the rest of the cloud streaming servers, it also transmits the generated test screen at a minimum level, thereby saving network resources used for error verification. have.

이 때, 나머지 클라우드 스트리밍 서버들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 테스트 화면을 전송할 수 있다. 예를 들어, 100대의 클라우드 스트리밍 서버들이 각각 100개의 세션을 구동하고 있고, 테스트 화면의 최소 인코딩 데이터 량이 100KB라고 가정한다면, 전체 서비스 세션의 오류 검증에 필요한 데이터 량은 1GB 정도가 소요될 수 있다. 따라서 전체 서비스 세션에 대한 오류 검증은 짧은 시간 내에 수행되기 어렵고, 일부의 세션들만 검증을 수행할 수 있다. At this time, the test screen may be transmitted to any one of the plurality of sessions corresponding to each of the remaining cloud streaming servers. For example, if 100 cloud streaming servers are each running 100 sessions, and it is assumed that the minimum encoded data amount of the test screen is 100KB, the amount of data required for error verification of the entire service session may take about 1GB. Therefore, it is difficult to verify errors for the entire service session within a short time, and only some sessions can be verified.

즉, 1번 클라우드 스트리밍 서버의 0번 세션과 2번 클라우드 스트리밍 서버의 0번 세션과 같이 각 클라우드 스트리밍 서버들의 0번 세션들을 각각 테스트 세션으로 설정하고, 테스트 세션들을 통해 테스트 화면을 어플리케이션 실행화면과 비교하여 오류 검증을 수행할 수 있다.That is, like session 0 of cloud streaming server No. 1 and session 0 of cloud streaming server No. 2, session 0 of each cloud streaming server is set as a test session, respectively, and the test screen is displayed with the application execution screen through the test sessions. By comparison, error verification can be performed.

이와 같이 각 클라우드 스트리밍 서버의 테스트 세션을 통해 오류 검증을 수행함으로써 니트워크 대역의 필요 사용량을 현저하게 감소시킬 수 있다.In this way, by performing error verification through the test session of each cloud streaming server, the required usage of the knitwork band can be significantly reduced.

이 때, 복수개의 세션들에서 모두 오류 검증을 수행할 수 있도록, 테스트 화면을 전송할 때마다 테스트 세션을 변경하여 테스트 화면을 전송할 수 있다. 예를 들어, 오류 검증을 수행할 때 테스트 세션을 위한 스케줄을 미리 설정해두고, 스케줄에 따라 테스트 세션을 변경해가면서 오류 검증을 수행할 수 있다. 첫 오류 검증을 수행할 때에는 각 클라우드 스트리밍 서버의 0번째 세션을 테스트 세션으로 설정한다면, 그 다음 오류 검증을 수행할 때에는 각 클라우드 스트리밍 서버의 1번째 세션을 테스트 세션으로, 그 다음에는 2번째 세션을 테스트 세션으로 설정하도록 순차적인 방식으로 스케줄을 설정할 수 있다. 또는, 오류 검증을 수행할 때마다 각 클라우드 스트리밍 서버에서 구동하고 있는 복수개의 세션들 중에서 랜덤으로 어느 하나의 세션을 선택하여 테스트 세션으로 설정할 수도 있다.In this case, the test screen may be transmitted by changing the test session each time the test screen is transmitted so that error verification can be performed in all of the plurality of sessions. For example, when performing error verification, a schedule for a test session may be set in advance, and error verification may be performed while changing the test session according to the schedule. If the 0th session of each cloud streaming server is set as the test session when performing the first error verification, the 1st session of each cloud streaming server as the test session and the second session after the next error verification are performed. You can schedule it in a sequential manner to set up a test session. Alternatively, whenever error verification is performed, any one session may be randomly selected from among a plurality of sessions running in each cloud streaming server and set as a test session.

이와 같은 테스트 세션은 상기에 기재한 방법들 말고도 다양한 방법으로 설정될 수 있다.Such a test session may be established by various methods other than the methods described above.

또한, 도 6에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 제공 방법은 상술한 바와 같이 본 발명의 실시예에 따른 테스트 화면 제공 과정에서 발생하는 다양한 정보를 저장한다.In addition, although not shown in FIG. 6, the test providing method for self-error verification of the cloud streaming server according to an embodiment of the present invention is a method for providing a test screen according to an embodiment of the present invention as described above. Save the information.

실시예에 따라, 정보를 저장하는 모듈은 테스트 화면 제공 장치와 독립적으로 구성되어 테스트 화면 제공을 위한 기능을 지원할 수 있다. 이 때, 저장모듈은 별도의 대용량 스토리지로 동작할 수 있고, 동작 수행을 위한 제어 기능을 포함할 수 있다.According to an embodiment, the module for storing information may be configured independently of the test screen providing device to support a function for providing the test screen. In this case, the storage module may operate as a separate mass storage and may include a control function for performing the operation.

또한, 상술한 바와 같이 동작되는 클라우드 스트리밍 서버는 하나 이상의 서버로 구현될 수 있다.In addition, the cloud streaming server operated as described above may be implemented as one or more servers.

한편, 클라우드 스트리밍 서버는 메모리가 탑재되어 그 장치 내에서 정보를 저장할 수 있다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.On the other hand, the cloud streaming server is equipped with a memory can store information in the device. For one implementation, the memory is a computer-readable medium. In one implementation, the memory may be a volatile memory unit, and in another implementation, the memory may be a non-volatile memory unit. In one embodiment, the storage device is a computer-readable medium. In various different implementations, the storage device may include, for example, a hard disk device, an optical disk device, or some other mass storage device.

이와 같이 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법을 통해 클라우드 스트리밍 서버의 자체 오류 검증을 수행함으로써 기존의 오류 검증을 수행할 때 필요했던 네트워크 리소스를 보다 절약할 수 있다.As such, by performing self-error verification of the cloud streaming server through the method of providing a test screen for self-error verification of the cloud streaming server, it is possible to further save the network resources required when performing the existing error verification.

또한, 클라우드 스트리밍 서버에서 테스트 식별자를 기반으로 오류 검증을 위한 어플리케이션 실행화면을 최소 비용으로 생성함으로써 각각의 클라우드 스트리밍 서버에서 오류 검증을 수행하는데 필요한 시간과 자원을 절약할 수 있다.In addition, it is possible to save time and resources required to perform error verification in each cloud streaming server by generating an application execution screen for error verification at a minimum cost based on the test identifier in the cloud streaming server.

또한, 어플리케이션 중 애니메이션 효과가 적용된 화면에 대해서도 오류 검증을 수행함으로써 보다 정확하게 오류 검증을 수행하여 전체 클라우드 스트리밍 서비스 시스템의 효율을 향상시킬 수 있다.In addition, by performing error verification on the screen to which the animation effect is applied among applications, error verification can be performed more accurately, thereby improving the efficiency of the entire cloud streaming service system.

도 7은 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 과정을 상세하게 나타낸 도면이다.7 is a view showing in detail a process of providing a test screen for self-error verification of a cloud streaming server according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일실시예에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 과정은 먼저 테스트 화면 제공 장치(710)의 비교화면 획득부에서 기설정된 테스트 주기 동안 대기하였다가(S702), 테스트 화면을 획득하기 위해 테스트 서버(720)에게 테스트 화면을 요청한다(S704). Referring to FIG. 7 , in the process of providing a test screen for self-error verification of the cloud streaming server according to an embodiment of the present invention, the comparison screen obtaining unit of the test screen providing device 710 waits for a preset test period. (S702), a test screen is requested from the test server 720 to obtain a test screen (S704).

이 때, 기설정된 테스트 주기는 테스트 화면에 상응하는 어플리케이션의 변경주기에 상응하게 설정되거나 또는 테스트 화면 제공 장치(710)의 관리자에 의해 설정될 수도 있다. 예를 들어, 하루에 한번씩 내용이 변경될 가능성이 있는 어플리케이션에 대해서는 기설정된 변경주기를 하루로 설정함으로써, 어플리케이션의 내용, 즉 화면이 변경될 때 마다 해당하는 테스트 화면을 획득할 수 있다.In this case, the preset test cycle may be set to correspond to the change cycle of the application corresponding to the test screen or may be set by the manager of the test screen providing apparatus 710 . For example, by setting a preset change cycle to one day for an application whose contents are likely to be changed once a day, a corresponding test screen can be obtained whenever the contents of the application, that is, the screen is changed.

이 때, 테스트 서버(720)는 테스트 화면 제공 장치(710)의 관리자에 의해서 복수개의 클라우드 스트리밍 서버들 중 어느 하나로 결정될 수 있다. 또는 테스트 서버는 실제로 사용자들에게 서비스를 제공하지 않지만 클라우드 스트리밍 서버들의 오류 검증을 위해 테스트 화면 제공 장치(710)의 관리자에 의해 관리되는 별도의 서버에 상응할 수도 있다.At this time, the test server 720 may be determined as any one of a plurality of cloud streaming servers by the manager of the test screen providing device 710 . Alternatively, the test server does not actually provide services to users, but may correspond to a separate server managed by the administrator of the test screen providing device 710 for error verification of cloud streaming servers.

이 후, 테스트 서버(720)에서는 어플리케이션을 실행하여(S706) 테스트 화면을 생성한다(S708).Thereafter, the test server 720 executes the application (S706) to generate a test screen (S708).

이 때, 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 테스트 화면을 획득할 수 있다. 이 때, 애니메이션이 적용된 부분은 키 입력과 관계없이 변화하는 부분이며, 이동하는 객체, 크기, 모양, 색상 등이 변화하는 객체 등이 삽입된 부분에 해당할 수 있다. 또한, 시계에 상응하는 객체가 표시되는 부분일 수도 있다.In this case, when the animation effect is applied to the application of the test server, the test screen may be obtained by masking the part to which the animation effect is applied. In this case, the part to which the animation is applied is a part that changes regardless of a key input, and may correspond to a part into which a moving object, an object that changes in size, shape, color, etc. is inserted. Also, it may be a portion where an object corresponding to the watch is displayed.

이 후, 테스트 서버(720)는 테스트 화면을 비교화면 획득부로 전송하고(S710), 비교화면 획득부는 테스트 화면 제공 장치(710)의 변화 감지부에게 테스트 화면을 전달하여(S712) 테스트 화면이 기존 테스트 화면과 동일한지 여부를 비교한다(S714).Thereafter, the test server 720 transmits the test screen to the comparison screen obtaining unit (S710), and the comparison screen obtaining unit transmits the test screen to the change detection unit of the test screen providing device 710 (S712), so that the test screen is It is compared whether it is the same as the test screen (S714).

이 때, 클라우드 스트리밍 서버(730, 740)들에서 오류가 발생하는 경우에는 화면의 변경이 반영되지 않는 경우가 발생할 수 있기 때문에 테스트 화면이 변경된 것을 확인한 경우에는 오류 검증을 수행하기 위해 현재의 테스트 화면과 기존 테스트 화면을 비교할 수 있다.At this time, when an error occurs in the cloud streaming servers 730 and 740, the change of the screen may not be reflected. and the existing test screen can be compared.

단계(S714)의 비교결과 테스트 화면과 기존 테스트 화면이 동일하면, 오류 검증을 수행하지 않는 것으로 판단하고 다시 기설정된 테스트 주기 동안 대기한다(S702).If the comparison result of step S714 is the same as the test screen and the existing test screen, it is determined that error verification is not performed, and the test screen waits for a preset test cycle again (S702).

또한, 단계(S714)의 비교결과 테스트 화면과 기존 테스트 화면이 동일하지 않으면, 오류 검증을 수행하기 위해 테스트 화면 제공 장치(720)의 테스트 화면 전송부를 통해서 테스트 화면을 클라우드 스트리밍 서버(730, 740)들에게 전송한다(S716, S718).In addition, if the comparison result of step S714 is not the same as the test screen and the existing test screen, the test screen is transmitted to the cloud streaming server 730, 740 through the test screen transmission unit of the test screen providing device 720 to perform error verification. to them (S716, S718).

이 때, 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 테스트 화면이 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 테스트 화면과 함께 전송할 수 있다.At this time, at least one of an application key script corresponding to the test screen and a test identifier for recognizing that the test screen is a screen transmitted for error verification may be transmitted together with the test screen.

이 때, 나머지 클라우드 스트리밍 서버(730, 740)들 각각에 상응하는 복수개의 세션들 중 어느 하나의 테스트 세션으로 테스트 화면을 전송할 수 있다. 예를 들어, 100대의 클라우드 스트리밍 서버들이 각각 100개의 세션을 구동하고 있고, 테스트 화면의 최소 인코딩 데이터 량이 100KB라고 가정한다면, 전체 서비스 세션의 오류 검증에 필요한 데이터 량은 1GB 정도가 소요될 수 있다. 따라서 전체 서비스 세션에 대한 오류 검증은 짧은 시간 내에 수행되기 어렵고, 일부의 세션들만 검증을 수행할 수 있다.At this time, the test screen may be transmitted to any one of the plurality of sessions corresponding to each of the remaining cloud streaming servers 730 and 740 . For example, if 100 cloud streaming servers are each running 100 sessions, and it is assumed that the minimum encoded data amount of the test screen is 100KB, the amount of data required for error verification of the entire service session may take about 1GB. Therefore, it is difficult to verify errors for the entire service session within a short time, and only some sessions can be verified.

이 후, 테스트 화면을 수신한 클라우드 스트리밍 서버(730, 740)들에서는 테스트 화면과 비교할 어플리케이션 실행화면을 생성하기 위해 어플리케이션을 실행하고(S720, S722), 테스트 화면과 함께 수신된 어플리케이션 키 스크립트를 이용하여 어플리케이션 실행화면을 생성한다(S724, S726). 즉, 테스트 서버(720)에서 실행하는 어플리케이션과 동일한 어플리케이션을 실행하는 나머지 클라우드 스트리밍 서버들(730, 740)에서 테스트 화면과 동일한 화면을 생성하기 위해서는 테스트 화면에 상응하는 웹 페이지로 이동하기 위한 어플리케이션 키 스크립트가 입력될 필요가 있다. 따라서, 테스트 화면을 생성할 때에 입력되었던 어플리케이션 키 스크립트를 나머지 클라우드 스트리밍 서버들로 전달함으로써 나머지 클라우드 스트리밍 서버(730, 740)들도 테스트 서버(720)와 동일한 시점에 화면을 캡처하여 어플리케이션 실행화면을 생성할 수 있다.After that, the cloud streaming servers 730 and 740 that have received the test screen execute the application to generate an application execution screen to be compared with the test screen (S720, S722), and use the application key script received along with the test screen. to create an application execution screen (S724, S726). That is, in order to generate the same screen as the test screen in the remaining cloud streaming servers 730 and 740 running the same application as the application executed in the test server 720, the application key for moving to the web page corresponding to the test screen The script needs to be entered. Therefore, by delivering the application key script input when generating the test screen to the remaining cloud streaming servers, the remaining cloud streaming servers 730 and 740 also capture the screen at the same time as the test server 720 to display the application execution screen. can create

이 때, 나머지 클라우드 스트리밍 서버(730, 740)들은 마스킹된 테스트 화면을 수신하는 경우에 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 마스킹된 테스트 화면과 비교할 수 있다.At this time, when the remaining cloud streaming servers 730 and 740 receive the masked test screen, the animation effect included in the application execution screen may also be masked and compared with the masked test screen.

이 때, 어플리케이션 실행화면은 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다. 또한, 오류 검증을 위한 테스트 화면도 테스트 서버(720)에서 화면 영역의 크기, 화질 및 프레임 레이트 중 적어도 하나가 최소 수준으로 인코딩되어 생성될 수 있다.In this case, the application execution screen may be generated by encoding at least one of a screen area size, image quality, and frame rate to a minimum level. In addition, a test screen for error verification may also be generated by encoding at least one of a size, image quality, and frame rate of a screen area in the test server 720 to a minimum level.

이 후, 클라우드 스트리밍 서버(730, 740)들에서는 각각 생성한 어플리케이션 실행화면과 테스트 화면이 동일한지 비교하여(S728, S730) 동일한 경우에는 클라우드 스트리밍 서버(730, 740)들에 오류가 발생하지 않은 것으로 판단할 수 있다.After that, the cloud streaming servers 730 and 740 compare whether the generated application execution screen and the test screen are the same (S728, S730). can be judged as

또한, 단계(S728, S730)의 비교결과 클라우드 스트리밍 서버(730, 740)들에서 각각 생성한 어플리케이션 실행화면과 테스트 화면이 동일하지 않으면, 클라우드 스트리밍 서버(730, 740)들에서 오류가 발생한 것으로 판단하고 클라우드 스트리밍 서버(730, 740)들의 복구를 수행한다(S732, S734).In addition, if the comparison result of steps S728 and S730 is not the same as the application execution screen and the test screen generated by the cloud streaming servers 730 and 740, it is determined that an error has occurred in the cloud streaming servers 730 and 740 And perform the recovery of the cloud streaming servers (730, 740) (S732, S734).

본 발명에 따른 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The test screen providing method for self-error verification of the cloud streaming server according to the present invention may 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, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - Includes magneto-optical media, and any form of hardware device specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those generated by a compiler. Such hardware devices 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, in the method for providing a test screen for self-error verification of the cloud streaming server according to the present invention and the apparatus therefor, the configuration and method of the embodiments described above are not limitedly applicable, but the above embodiment All or part of each embodiment may be selectively combined so that various modifications may be made.

본 발명에 의하면 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하고, 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하여 상이한 경우에 복수 개의 클라우드 스트리밍 서버들 중 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 테스트 화면을 나머지 클라우드 스트리밍 서버들로 전송할 수 있다. 나아가, 클라우드 스트리밍 서버에서 스스로 오류 검증을 수행함으로써 검증 결과를 송수신하기 위한 네트워크 자원을 절약하는 것이 가능하다.According to the present invention, a test screen is obtained by connecting to any one test server among a plurality of cloud streaming servers at each predetermined test cycle, and a plurality of test screens are compared with the existing test screen obtained in the previous test cycle when different. The test screen may be transmitted to the rest of the cloud streaming servers so that the rest of the cloud streaming servers except the test server among the cloud streaming servers can perform error verification themselves. Furthermore, it is possible to save network resources for transmitting and receiving verification results by performing error verification by itself in the cloud streaming server.

110, 410, 710: 테스트 화면 제공 장치
120-1~ 120-N, 321, 322, 421, 422, 730, 740: 클라우드 스트리밍 서버
130: 네트워크 140-1~ 140-N: 단말
210: 비교화면 획득부 220: 변화 감지부
230: 테스트 화면 전송부 310: 오류 검증 장치
510: 테스트 화면 520: 검색 기간
720: 테스트 서버
110, 410, 710: Test screen providing device
120-1~ 120-N, 321, 322, 421, 422, 730, 740: Cloud Streaming Server
130: network 140-1~ 140-N: terminal
210: comparison screen acquisition unit 220: change detection unit
230: test screen transmission unit 310: error verification device
510: test screen 520: search period
720: test server

Claims (10)

복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하는 비교화면 획득부;
상기 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하는 변화 감지부; 및
상기 테스트 화면과 상기 기존 테스트 화면이 상이한 경우에, 상기 복수개의 클라우드 스트리밍 서버들 중 상기 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 상기 테스트 화면을 상기 나머지 클라우드 스트리밍 서버들로 전송하는 테스트 화면 전송부
를 포함하고,
상기 테스트 화면과 상기 기존 테스트 화면이 동일한 경우에는 상기 테스트 화면으로 오류 검증이 불가능할 것으로 판단하고, 상기 나머지 클라우드 스트리밍 서버들에 대한 오류 검증을 수행하지 않는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
a comparison screen acquiring unit for acquiring a test screen by connecting to any one of the plurality of cloud streaming servers at every preset test cycle;
a change detection unit comparing the test screen with an existing test screen acquired in a previous test cycle; and
When the test screen and the existing test screen are different, the test screen is displayed on the remaining cloud streaming servers so that the remaining cloud streaming servers other than the test server among the plurality of cloud streaming servers can perform error verification themselves. Test screen transmission unit that transmits to
including,
When the test screen and the existing test screen are the same, it is determined that error verification is impossible with the test screen, and self-error verification of the cloud streaming server, characterized in that the error verification is not performed on the remaining cloud streaming servers A device for providing test screens for
청구항 1에 있어서,
상기 나머지 클라우드 스트리밍 서버들은
상기 테스트 화면에 상응하는 어플리케이션을 실행하고, 상기 테스트 화면과 동일 시점에 캡처된 어플리케이션 실행화면을 상기 테스트 화면과 비교하여 상기 오류 검증을 수행하는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
The method according to claim 1,
The rest of the cloud streaming servers are
A test for self-error verification of a cloud streaming server, characterized in that executing the application corresponding to the test screen, and performing the error verification by comparing the application execution screen captured at the same time as the test screen with the test screen screen providing device.
청구항 2에 있어서,
상기 테스트 화면 전송부는
상기 테스트 화면에 상응하는 어플리케이션 키 스크립트 및 상기 테스트 화면이 상기 오류 검증을 위해 전송된 화면임을 인지할 수 있는 테스트 식별자 중 적어도 하나를 상기 테스트 화면과 함께 전송하는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
3. The method according to claim 2,
The test screen transmission unit
Self-error of the cloud streaming server, characterized in that it transmits at least one of an application key script corresponding to the test screen and a test identifier that can recognize that the test screen is a screen transmitted for error verification with the test screen A device that provides a test screen for verification.
청구항 3에 있어서,
상기 나머지 클라우드 스트리밍 서버들은
상기 어플리케이션 키 스크립트를 이용하여 상기 어플리케이션을 실행하는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
4. The method of claim 3,
The rest of the cloud streaming servers are
A test screen providing device for self-error verification of a cloud streaming server, characterized in that running the application using the application key script.
청구항 2에 있어서,
상기 비교화면 획득부는
상기 테스트 서버의 어플리케이션에 애니메이션 효과가 적용된 경우에는 상기 애니메이션 효과가 적용된 부분을 마스킹(masking)하여 상기 테스트 화면을 획득하는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
3. The method according to claim 2,
The comparison screen acquisition unit
When the animation effect is applied to the application of the test server, the test screen providing apparatus for self-error verification of the cloud streaming server, characterized in that the test screen is obtained by masking the part to which the animation effect is applied.
청구항 5에 있어서,
상기 나머지 클라우드 스트리밍 서버들은
상기 마스킹된 테스트 화면을 수신하는 경우에 상기 어플리케이션 실행화면에 포함된 애니메이션 효과도 마스킹하여 상기 마스킹된 테스트 화면과 비교하는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 장치.
6. The method of claim 5,
The rest of the cloud streaming servers are
When the masked test screen is received, an animation effect included in the application execution screen is also masked and compared with the masked test screen.
삭제delete 삭제delete 삭제delete 복수개의 클라우드 스트리밍 서버들 중 어느 하나의 테스트 서버로 기설정된 테스트 주기마다 접속하여 테스트 화면을 획득하는 단계;
상기 테스트 화면과 이전 테스트 주기에 획득한 기존 테스트 화면을 비교하는 단계; 및
상기 테스트 화면과 상기 기존 테스트 화면이 상이한 경우에, 상기 복수개의 클라우드 스트리밍 서버들 중 상기 테스트 서버를 제외한 나머지 클라우드 스트리밍 서버들에서 스스로 오류 검증을 수행할 수 있도록 상기 테스트 화면을 상기 나머지 클라우드 스트리밍 서버들로 전송하는 단계
를 포함하고,
상기 테스트 화면과 상기 기존 테스트 화면이 동일한 경우에는 상기 테스트 화면으로 오류 검증이 불가능할 것으로 판단하고, 상기 나머지 클라우드 스트리밍 서버들에 대한 오류 검증을 수행하지 않는 것을 특징으로 하는 클라우드 스트리밍 서버의 자가 오류 검증을 위한 테스트 화면 제공 방법.
Obtaining a test screen by connecting to any one test server of the plurality of cloud streaming servers at every preset test cycle;
comparing the test screen with an existing test screen acquired in a previous test cycle; and
When the test screen and the existing test screen are different, the test screen is displayed on the remaining cloud streaming servers so that the remaining cloud streaming servers other than the test server among the plurality of cloud streaming servers can perform error verification themselves. step to send
including,
When the test screen and the existing test screen are the same, it is determined that error verification is impossible with the test screen, and self-error verification of the cloud streaming server, characterized in that the error verification is not performed on the remaining cloud streaming servers How to provide a test screen for
KR1020150089894A 2015-06-24 2015-06-24 Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same KR102425277B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150089894A KR102425277B1 (en) 2015-06-24 2015-06-24 Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150089894A KR102425277B1 (en) 2015-06-24 2015-06-24 Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20170000669A KR20170000669A (en) 2017-01-03
KR102425277B1 true KR102425277B1 (en) 2022-07-26

Family

ID=57797286

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150089894A KR102425277B1 (en) 2015-06-24 2015-06-24 Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same

Country Status (1)

Country Link
KR (1) KR102425277B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044494A1 (en) * 2002-09-03 2004-03-04 Horst Muller Computer program test configurations with data containers and test scripts
US20110276946A1 (en) * 2010-05-07 2011-11-10 Salesforce.Com, Inc. Visual user interface validator

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140101622A (en) 2013-02-12 2014-08-20 에스케이플래닛 주식회사 Method for testing server for cloud streaming service, system and apparatus thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044494A1 (en) * 2002-09-03 2004-03-04 Horst Muller Computer program test configurations with data containers and test scripts
US20110276946A1 (en) * 2010-05-07 2011-11-10 Salesforce.Com, Inc. Visual user interface validator

Also Published As

Publication number Publication date
KR20170000669A (en) 2017-01-03

Similar Documents

Publication Publication Date Title
TWI619025B (en) Method, medium, system, and device for continuing an application session on a different device
US8732691B2 (en) Method for installing application in portable terminal
KR102310780B1 (en) Service providing apparatus and method for web application, user equipment for the same
US10929460B2 (en) Method and apparatus for storing resource and electronic device
KR102426670B1 (en) System for cloud streaming service, method of image cloud streaming service using process shortering and apparatus for the same
US10021162B2 (en) Cloud streaming service system, and method and apparatus for providing cloud streaming service
KR101678389B1 (en) Method for providing media data based on cloud computing, apparatus and system
KR102409033B1 (en) System for cloud streaming service, method of image cloud streaming service using alpha level of color bit and apparatus for the same
CN103631621A (en) Method and device for prompting information
KR102247886B1 (en) System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same
KR102442699B1 (en) System for cloud streaming service, method of image cloud streaming service using common cache and apparatus for the same
KR102425277B1 (en) Method of providing test screen for self verification of error on cloud streaming server and apparatus for the same
KR101749891B1 (en) METHOD OF CONTROLLING FRAME RATE BASED ON Resource Status AND APPARATUS FOR CLOUD STREAMING SERVICE
KR102313531B1 (en) System for cloud streaming service, method of cloud streaming service using single session multi-access and apparatus for the same
CN110413800B (en) Method and equipment for providing novel information
US20170048292A1 (en) Electronic device and method for providing content
CN114489697A (en) Application program installation method and device
CN114564214A (en) Display device, application installation method, and storage medium
KR20140105631A (en) Method for managing data based on cloud computing, system and apparatus thereof
US8745257B1 (en) Methods and apparatus for rendering video advertising on a mobile device
KR20210133229A (en) User interface session recovery method in cloud streaming service and device therefor
KR20160091622A (en) System for cloud streaming service, method of image cloud streaming service using division of the change area and apparatus for the same
KR20160115566A (en) System for cloud streaming service, method of image cloud streaming service using separation of image and text and apparatus for the same
KR102306889B1 (en) System for cloud streaming service, method of image cloud streaming service using data substitution and apparatus for the same
US10127703B2 (en) Image output method and electronic device for supporting the same

Legal Events

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