[go: up one dir, main page]

KR101630638B1 - System and Method for operating application based Presentation Virtualization - Google Patents

System and Method for operating application based Presentation Virtualization Download PDF

Info

Publication number
KR101630638B1
KR101630638B1 KR1020110073617A KR20110073617A KR101630638B1 KR 101630638 B1 KR101630638 B1 KR 101630638B1 KR 1020110073617 A KR1020110073617 A KR 1020110073617A KR 20110073617 A KR20110073617 A KR 20110073617A KR 101630638 B1 KR101630638 B1 KR 101630638B1
Authority
KR
South Korea
Prior art keywords
application
application execution
user terminal
screen
execution screen
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020110073617A
Other languages
Korean (ko)
Other versions
KR20130012420A (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 KR1020110073617A priority Critical patent/KR101630638B1/en
Publication of KR20130012420A publication Critical patent/KR20130012420A/en
Application granted granted Critical
Publication of KR101630638B1 publication Critical patent/KR101630638B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 화면 가상화 기반 어플리케이션 실행 시스템 및 방법에 관한 것으로, 어플리케이션 장치에 접속하여 어플리케이션의 실행을 요청하고, 상기 어플리케이션 장치로부터의 어플리케이션 실행 화면을 디코딩하여 출력하는 사용자 단말, 상기 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 실행하여 그 어플리케이션 실행 화면을 이미지 압축하고, 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송 또는 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송하는 어플리케이션 장치를 포함한다.
따라서, 본 발명에 따르면, 어플리케이션 실행 화면을 데이터량이 많은 비디오/3D Graphic 화면과 일반 화면으로 구분하여 일반 화면은 RDP를 통해 전송하고 데이터량이 많은 화면은 동영상 압축하여 전송함으로써, 데이터량이 많은 비디오나 3D graphic을 전송 시에는 높은 전송 대역폭을 차지하는 문제점을 해결할 수 있다.
The present invention relates to a screen virtualization-based application execution system and method, and more particularly, to a system and method for executing a screen virtualization-based application, which comprises a user terminal connected to an application device to request execution of an application, decodes and outputs an application execution screen from the application device, If the application is requested, the application is executed to compress the application execution screen, the available bandwidth of the current network is measured and compared with the size of the image compressed application execution screen, and the image compressed application execution And an application apparatus for transmitting a screen to the user terminal or compressing the application execution screen to transmit the compressed image to the user terminal.
Therefore, according to the present invention, an application execution screen is divided into a video / 3D graphics screen and a general screen having a large amount of data, and a general screen is transmitted through RDP, and a screen with a large amount of data is compressed and transmitted. the problem of occupying a high transmission bandwidth can be solved.

Description

화면 가상화 기반 어플리케이션 실행 시스템 및 방법{System and Method for operating application based Presentation Virtualization}[0001] The present invention relates to a system and method for executing a screen virtualization-based application,

본 발명은 화면 가상화 기반 어플리케이션 실행 시스템 및 방법에 관한 것으로서, 더욱 자세하게는 사용자 단말로부터 어플리케이션 실행 요청을 수신한 경우, 해당 어플리케이션을 실행하여 그 어플리케이션 실행 화면을 이미지 압축하고, 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송 또는 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송하는 화면 가상화 기반 어플리케이션 실행 시스템 및 방법에 관한 것이다.
The present invention relates to a screen virtualization-based application execution system and method, and more particularly, to a system and method for executing a screen virtualization-based application. More particularly, the present invention relates to a screen virtualization- Compresses the application execution screen to the user terminal, compresses the application execution screen and compresses the application execution screen, and transmits the compressed application execution screen to the user terminal in accordance with the comparison result, To an application execution system and method.

최근에, 클라우드(Cloud) 기반 서비스가 활성화됨에 따라, 서비스나 어플리케이션(application)이 클라우드 장치에서 구동되고 그 결과를 단말을 통해 서비스하는 기술이 요구되고 있다. 특히 서비스 화면과 오디오만을 단말기에서 구동하는 화면 가상화(Presentation Virtualization) 기술이 핵심기술로 요구된다. Recently, as a cloud-based service is activated, there is a demand for a technology in which a service or an application is run on a cloud device and the result is served through the terminal. In particular, the key technology is required for the presentation virtualization technology that drives only the service screen and audio on the terminal.

화면 가상화 기술은 어플리케이션 제공 장치에서 어플리케이션을 구동하고, 어플리케이션 구동 화면을 단말로 전송하여 단말에서는 화면에 대한 rendering 처리와 사용자 입력만을 처리하도록 함으로써 단말의 성능에 관계없이 복잡한 어플리케이션을 구동 가능 하도록 하는 기술이다.The screen virtualization technology enables an application to run an application in an application providing device and transmits an application running screen to a terminal so that a terminal can process a rendering process and a user input only on a screen, thereby enabling a complicated application to be driven regardless of the performance of the terminal .

사용자 단말은 PC에서부터 PDA, handset까지 다양하다. 이러한 환경에서 단말에 rich media service를 제공하기 위해서는 각 단말 특성에 맞는 application을 개발하여 단말에 탑재하는 방법이 사용되고 있다. 그러나 이러한 방법은 단말의 Operating System, 연산 능력 등을 고려하여 application을 개발해야 하며, application의 개발 시에도 각 단말의 특성에 맞추어 별도로 개발해야 하는 문제가 발생한다. 또한 새로운 기능을 추가하거나 application의 bug patch를 수행하는 경우에 단말에 설치된 application을 새로 설치해야 하는 문제점도 발생한다. User terminals range from PCs to PDAs and handset. In order to provide a rich media service to a terminal in such an environment, a method of developing an application suitable for each terminal characteristic and mounting the application on the terminal is used. However, this method must develop an application in consideration of the operating system of the terminal, the computing power, and the like, and there arises a problem to be separately developed in accordance with the characteristics of each terminal even in the development of the application. Also, when adding a new function or performing a bug patch of an application, a problem arises that a new application installed in the terminal must be newly installed.

이를 해결하기 위해 네트워크에 연결된 단말에 대해 어플리케이션 제공 장치에서 application을 구동하고 그 화면을 각 단말로 전송함으로써 단말의 CPU성능, OS에 관계없이 application을 구동할 수 있는 ultra thin client기반 기술이 개발되어 왔으며 가장 대표적인 기술로 VNC(Virtual Network Control)와 RDP(Remote Desktop Protocol) 기반의 Terminal Service가 있다. In order to solve this problem, an ultra thin client-based technology capable of driving an application regardless of the CPU performance or OS of the terminal has been developed by driving an application in an application providing device for the terminal connected to the network and transmitting the screen to each terminal Virtual Network Control (VNC) and Remote Desktop Protocol (RDP) Based Terminal Service.

그러나 VNC와 RDP는 application 구동 화면에서 변경된 부분을 전송하는 scheme을 활용하고 있어 데이터량이 많은 비디오나 3D graphic을 전송 시에는 높은 전송 대역폭을 차지하는 문제점이 있다.
However, since VNC and RDP utilize a scheme for transmitting changed portions in an application running screen, there is a problem that a high transmission bandwidth is occupied when transmitting a large amount of video or 3D graphic.

한국등록특허 제988,111호(2010.10.08), 발명의 명칭: 터미널 환경의 서버 기반 컴퓨팅 시스템에서 많은 사용자가 하나의 리소스 공유로 어플리케이션 실행이 불가능한 경우 리소스 가상화를 통해 이를 실행하는 장치 및 그 방법Korean Patent No. 988,111 (2010.10.08), Title: Apparatus and method for executing resource virtualization when many users in a server-based computing system in a terminal environment can not execute an application with a single resource sharing

본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 어플리케이션 실행 화면을 데이터량이 많은 비디오/3D Graphic 화면과 일반 화면으로 구분하여 일반 화면은 이미지 압축하여 전송하고 데이터량이 많은 화면은 동영상 압축하여 전송함으로써, 데이터량이 많은 비디오나 3D graphic 전송 시 높은 전송 대역폭을 차지하는 문제점을 해결할 수 있는 화면 가상화 기반 어플리케이션 실행 시스템 및 방법을 제공하는데 있다.
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and it is an object of the present invention to provide an image processing apparatus and a method thereof, in which an application execution screen is divided into a video / 3D graphic screen and a general screen, The present invention provides a screen virtualization-based application execution system and method capable of solving the problem of occupying a high transmission bandwidth in transmission of video data or 3D graphics by compressing and transmitting moving pictures.

상기 목적들을 달성하기 위하여 본 발명의 일 측면에 따르면, 어플리케이션 장치에 접속하여 어플리케이션의 실행을 요청하고, 상기 어플리케이션 장치로부터의 어플리케이션 실행 화면을 디코딩하여 출력하는 사용자 단말, 상기 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 실행하여 그 어플리케이션 실행 화면을 이미지 압축하고, 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송 또는 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송하는 어플리케이션 장치를 포함하는 화면 가상화 기반 어플리케이션 실행 시스템이 제공된다. According to an aspect of the present invention, there is provided an information processing apparatus including a user terminal connected to an application apparatus to request execution of an application, decodes and outputs an application execution screen from the application apparatus, Compresses the application execution screen of the application, measures the available bandwidth of the current network, compares the available bandwidth with the size of the application compressed image, compresses the compressed application execution screen according to the comparison result, To the user terminal or compresses the application execution screen and transmits the compressed application execution screen to the user terminal.

본 발명의 다른 측면에 따르면, 사용자 단말과의 통신을 위한 통신부, 어플리케이션이 저장된 어플리케이션 데이터베이스, 상기 통신부를 통해 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 상기 어플리케이션 데이터베이스로부터 획득하여 실행하고, 그 어플리케이션 실행 화면을 이미지 압축하는 RDP 세션부, 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송하거나, 상기 어플리케이션 실행 화면을 동영상 압축하도록 제어하는 하이브리드 PV 제어부, 상기 하이브리드 PV 제어부의 제어에 따라 상기 어플리케이션 실행 화면을 동영상 압축하는 인코딩부, 상기 인코딩부에서 동영상 압축된 어플리케이션 실행 화면을 스트리밍으로 상기 사용자 단말로 전송하는 스트리밍부를 포함하는 어플리케이션 장치가 제공된다. According to another aspect of the present invention, there is provided a communication system including a communication unit for communicating with a user terminal, an application database in which an application is stored, and a control unit for acquiring and executing the application from the application database, An RDP session unit for compressing an application execution screen, an available bandwidth of the current network is measured and compared with the size of the image compressed application execution screen, and the image compressed application execution screen is transmitted to the user terminal according to the comparison result A hybrid PV control unit for controlling the moving image compression of the application execution screen, an encoding unit for moving-image-compressing the application execution screen under the control of the hybrid PV control unit, And a streaming unit for streaming the video compressed application execution screen to the user terminal.

상기 RDP 세션부는 RDP 또는 VNC에서 정의된 이미지 압축 방식에 따라 상기 어플리케이션 실행 화면을 압축한다. The RDP session unit compresses the application execution screen according to an image compression method defined by RDP or VNC.

또한, 상기 RDP 세션부는 상기 통신부를 통해 상기 사용자 단말이 접속된 경우, 상기 어플리케이션 데이터베이스에 저장된 어플리케이션들에 대한 어플리케이션 목록을 사용자 단말로 전송한다. In addition, when the user terminal is connected through the communication unit, the RDP session unit transmits an application list of applications stored in the application database to the user terminal.

상기 하이브리드 PV 제어부는 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 이미지 압축 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하여, 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작은 경우, 상기 이미지 압축 어플리케이션 실행 데이터를 상기 사용자 단말로 전송하며, 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. Wherein the hybrid PV control unit compares the size of the image compression application execution data obtained by adding the image compressed application execution screen and the compressed audio data to the available bandwidth and if the size of the image compression application execution data is smaller than the available bandwidth, Transmits the image compression application execution data to the user terminal, and transmits to the user terminal a control signal indicating that the image compressed application execution screen is to be transmitted.

또한, 상기 하이브리드 PV 제어부는 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 이미지 압축 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하여, 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작지 않은 경우, 상기 어플리케이션 실행 화면을 상기 인코딩부로 전송하고, 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. The hybrid PV control unit compares the size of the image compression application execution data obtained by adding the image compressed application execution screen and the compressed audio data to the available bandwidth so that the size of the image compression application execution data is smaller than the available bandwidth The control unit transmits the application execution screen to the encoding unit and transmits to the user terminal a control signal indicating that the moving picture compressed application execution screen is to be transmitted.

또한, 상기 하이브리드 PV 제어부는 다수의 주기적인 타임 스탬프(time stamp) 패킷들을 네트워크에 연결되어 있는 사용자 단말로 현재 설정되어 있는 시험 전송율로 네트워크를 통해 전송하고, 상기 사용자 단말에 타임 스탬프 패킷들 각각이 수신된 시각들에 근거하여 타임 스탬프 패킷들 간의 전송 지연시간 차값들의 변화 추세를 검사하여 상기 전송 지연시간 차값들이 안정범위 내에 포함되면 현재 설정되어 있는 시험 전송율을 가용 대역폭으로 결정한다. The hybrid PV control unit may transmit a plurality of periodic time stamp packets to a user terminal connected to the network at a currently set test transmission rate through a network and transmit each of the time stamp packets to the user terminal Checks the change tendency of the transmission delay time difference values between the time stamp packets based on the received times, and determines the currently set test transmission rate as the available bandwidth when the transmission delay time difference values are within the stable range.

상기 인코딩부는 상기 동영상 압축된 어플리케이션 실행 화면의 크기가 상기 가용 대역폭에서 압축된 오디오 데이터의 크기를 뺀 크기와 상응하도록 압축한다.The encoding unit compresses the size of the moving picture compressed application execution screen to correspond to a size obtained by subtracting the size of compressed audio data from the available bandwidth.

본 발명의 또 다른 측면에 따르면, 어플리케이션 장치와의 통신을 위한 통신부, 상기 통신부를 통해 접속된 어플리케이션 장치로부터의 어플리케이션 목록을 디스플레이하고, 상기 어플리케이션 목록 중에서 적어도 하나의 어플리케이션 실행을 요청하는 사용자 인터페이스부, 상기 어플리케이션 장치로부터의 제어신호를 근거로 RDP 클라이언트 또는 스트리밍 재생기로 상기 어플리케이션 장치로부터의 어플리케이션 실행 데이터를 스위칭하는 하이브리드 PV 스위칭부, 상기 하이브리드 PV 스위칭부를 통해 수신된 어플리케이션 실행 데이터를 이미지 기반으로 디코딩하여 출력하는 RDP 클라이언트, 상기 하이브리드 PV 스위칭부를 통해 스트리밍되는 어플리케이션 실행 데이터를 동영상 기반으로 디코딩하여 출력하는 스트리밍 재생기를 포함하는 사용자 단말이 제공된다. According to another aspect of the present invention, there is provided a communication system including a communication unit for communicating with an application apparatus, a user interface unit for displaying a list of applications from the application apparatus connected through the communication unit, and requesting execution of at least one application from the application list, A hybrid PV switching unit for switching application execution data from the application apparatus to an RDP client or a streaming player based on a control signal from the application apparatus, an image processing unit for decoding the application execution data received through the hybrid PV switching unit, And a streaming player for decoding the application execution data streamed through the hybrid PV switching unit, Terminal is provided.

상기 하이브리드 PV 스위칭부는 상기 통신부를 통해 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 어플리케이션 실행 데이터를 상기 RDP 클라이언트로 스위칭하고, 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 어플리케이션 실행 데이터를 상기 스트리밍 재생기로 스위칭한다. The hybrid PV switching unit switches the application execution data to the RDP client when a control signal indicating that the image compressed application execution screen is transmitted through the communication unit is received and a control signal indicating that the video compressed application execution screen is transmitted is received And switches the application execution data to the streaming player.

상기 RDP 클라이언트는 RDP 또는 VNC에서 정의된 디코딩 방식에 따라 상기 어플리케이션 실행 데이터를 디코딩한다.The RDP client decodes the application execution data according to a decoding scheme defined by RDP or VNC.

본 발명의 또 다른 측면에 따르면, 사용자 단말이 어플리케이션 장치로부터 어플리케이션 목록을 수신 및 디스플레이하고, 상기 어플리케이션 목록중에서 사용자에 의해 선택된 어플리케이션의 실행을 요청하는 단계, 상기 어플리케이션 장치가 상기 실행 요청된 어플리케이션을 실행하여 그 어플리케이션 실행 화면을 이미지 압축하는 단계, 상기 어플리케이션 장치가 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하는 단계, 상기 어플리케이션 장치가 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송 또는 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송하는 전송하는 단계, 상기 사용자 단말이 상기 어플리케이션 장치로부터의 어플리케이션 실행 화면을 이미지 디코딩 또는 동영상 디코딩하여 출력하는 단계를 포함하는 화면 가상화 기반 어플리케이션 실행 방법이 제공된다. According to still another aspect of the present invention, there is provided a method of controlling a user terminal, comprising: receiving and displaying an application list from an application device and requesting execution of an application selected by a user from the application list; Compressing the image of the application execution screen; comparing the available bandwidth of the current network with the size of the application compressed screen of the image compressed; Transmitting an application execution screen to the user terminal or compressing the application execution screen and moving the application execution screen to the user terminal, The screen-based virtual application execution method for the application execution picture from comprising the step of decoding image or video decoding and output is provided.

본 발명의 또 다른 측면에 따르면, 어플리케이션 장치가 화면 가상화를 기반으로 어플리케이션을 실행하는 방법에 있어서, (a) 사용자 단말이 접속된 경우, 어플리케이션 목록을 상기 사용자 단말로 전송하는 단계, (b) 상기 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 실행하고, 그 어플리케이션 실행 화면을 이미지 압축하는 단계, (c) 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하는 단계, (d) 상기 비교 결과에 따라 상기 어플리케이션 실행 화면을 이미지 압축 또는 동영상 압축하여 상기 사용자 단말로 전송하는 단계를 포함하는 화면 가상화 기반 어플리케이션 실행 방법이 제공된다. According to another aspect of the present invention, there is provided a method for an application apparatus to execute an application based on screen virtualization, the method comprising the steps of: (a) transmitting a list of applications to a user terminal when a user terminal is connected; (C) measuring the available bandwidth of the current network and comparing the available bandwidth with the size of the image compressed application execution screen, and and (d) compressing or moving the application execution screen according to the comparison result and transmitting the image to the user terminal.

상기 (c) 단계는, 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 압축된 오디오 데이터의 크기를 합한 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하는 것을 말한다. In the step (c), the size of the application execution data, which is the sum of the size of the image compressed application execution screen and the size of the compressed audio data, is compared with the available bandwidth.

상기 (d) 단계는, 상기 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작은 경우, 상기 어플리케이션 실행 데이터를 상기 사용자 단말로 전송함과 동시에 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송하고, 상기 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작지 않은 경우, 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송ㅎ함과 동시에 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. If the size of the application execution data is smaller than the available bandwidth, the control unit transmits to the user terminal a control signal indicating that the application execution data is transmitted to the user terminal, And transmits the control signal to the user terminal when the size of the application execution data is not smaller than the available bandwidth, and transmits the control message to the user terminal, Lt; / RTI >

본 발명의 또 다른 측면에 따르면, 어플리케이션 장치와 통신망을 통해 접속된 사용자 단말이 어플리케이션을 실행하는 방법에 있어서, (a) 상기 어플리케이션 장치로부터 어플리케이션 목록을 수신하여 디스플레이하는 단계, (b) 상기 어플리케이션 목록 중에서 사용자에 의해 선택된 적어도 하나의 어플리케이션 실행을 상기 어플리케이션 장치에 요청하는 단계, (c) 상기 어플리케이션 장치로부터 상기 실행 요청된 어플리케이션 실행 데이터 및 제어 신호를 수신하는 단계, (d) 상기 제어 신호에 따라 상기 어플리케이션 실행 데이터를 이미지 디코딩 또는 동영상 디코딩하여 출력하는 단계를 포함하는 화면 가상화 기반 어플리케이션 실행 방법이 제공된다. According to another aspect of the present invention, there is provided a method of executing an application by a user terminal connected to an application device via a communication network, the method comprising: (a) receiving and displaying an application list from the application device; (C) receiving the application execution data and the control signal requested to be executed from the application device, (d) receiving the application execution data and the control signal from the application device in response to the control signal, There is provided a screen virtualization-based application execution method including image decoding or moving picture decoding of application execution data and outputting the same.

상기 (d) 단계는 상기 제어 신호가 이미지 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 어플리케이션 실행 데이터를 이미지 디코딩하여 출력하고, 상기 제어신호가 동영상 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 어플리케이션 실행 데이터를 동영상 디코딩하여 출력한다. Wherein the step (d) comprises image decoding and outputting the application execution data when the control signal indicates that the application execution screen image-compressed is transmitted, and when the control signal indicates that the application execution screen of the motion- And decodes and outputs the application execution data.

본 발명의 또 다른 측면에 따르면, 어플리케이션 장치로부터 어플리케이션 목록을 수신하여 디스플레이하는 단계, 상기 어플리케이션 목록 중에서 사용자에 의해 선택된 적어도 하나의 어플리케이션 실행을 상기 어플리케이션 장치에 요청하는 단계, 상기 어플리케이션 장치로부터 상기 실행 요청된 어플리케이션 실행 데이터 및 제어 신호를 수신하는 단계, 상기 제어 신호에 따라 상기 어플리케이션 실행 데이터를 이미지 디코딩 또는 동영상 디코딩하여 출력하는 단계를 포함하는 화면 가상화 기반 어플리케이션 실행 방법이 프로그램으로 기록되고 전자 장치에서 판독 가능한 기록매체가 제공된다.
According to another aspect of the present invention, there is provided a method for managing an application, comprising: receiving and displaying an application list from an application device; requesting the application device to execute at least one application selected by a user from the application list; A method of executing a screen virtualization-based application, comprising the steps of: receiving the application execution data and the control signal; and image-decoding or moving-decoding the application execution data according to the control signal and outputting the application execution data. A recording medium is provided.

본 발명에 따르면, 각각의 단말에 적용되는 어플리케이션을 별도로 개발하지 않아도 interactive한 어플리케이션을 제공할 수 있으며, 어플리케이션의 업그레이드, bug patch 또한 단말에 새로운 어플리케이션을 설치하지 않고도 지원할 수 있다. According to the present invention, an interactive application can be provided without separately developing an application to be applied to each terminal, and an application upgrade and a bug patch can be supported without installing a new application in the terminal.

또한, RDP 데이터량에 따라 RDP와 동영상 압축을 하이브리드(Hybrid)로 사용하여 네트워크상의 데이터 전송량을 최소화할 수 있고, 어플리케이션에 대한 화면 데이터량의 제약없이 클라우드 장치에서 어플리케이션을 구동하고 단말에서 어플리케이션의 화면/소리를 받아 재생할 수 있다. Also, it is possible to minimize the amount of data transmission on the network by using RDP and video compression as a hybrid according to the amount of RDP data, and it is also possible to drive an application in the cloud device without restriction of the amount of screen data for the application, / It can receive and play sound.

또한, 어플리케이션 실행 화면을 데이터량이 많은 비디오/3D Graphic 화면과 일반 화면으로 구분하여 일반 화면은 RDP를 통해 전송하고 데이터량이 많은 화면은 동영상 압축하여 전송함으로써, 데이터량이 많은 비디오나 3D graphic을 전송 시에는 높은 전송 대역폭을 차지하는 문제점을 해결할 수 있다.
In addition, the application execution screen is divided into a video / 3D graphic screen and a general screen having a large amount of data, and the general screen is transmitted through RDP, and the screen having a large amount of data is compressed and transmitted. The problem of occupying a high transmission bandwidth can be solved.

도 1은 본 발명에 따른 화면 가상화 기반 어플리케이션 실행을 위한 시스템을 나타낸 도면.
도 2는 본 발명에 따른 사용자 단말의 구성을 개략적으로 나타낸 블럭도.
도 3는 본 발명에 따른 어플리케이션 장치의 구성을 개략적으로 나타낸 블럭도.
도 4는 본 발명에 따른 화면 가상화 기반 어플리케이션 실행 방법을 나타낸 도면.
도 5는 본 발명에 따른 어플리케이션 장치가 어플리케이션 실행 화면을 크기에 따라 다르게 압축하는 방법을 나타낸 흐름도.
BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 illustrates a system for executing screen virtualization-based applications in accordance with the present invention.
2 is a block diagram schematically illustrating a configuration of a user terminal according to the present invention;
3 is a block diagram schematically showing a configuration of an application apparatus according to the present invention.
4 is a diagram illustrating a method of executing a screen virtualization-based application according to the present invention.
FIG. 5 is a flowchart illustrating a method of compressing an application execution screen according to a size according to an embodiment of the present invention; FIG.

본 발명의 전술한 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.The foregoing and other objects, features, and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.

원격 디스플레이 프로토콜(RDP)은 사용자 단말(클라이언트)이 네트워크를 통해 어플리케이션 장치와 정보를 교환할 수 있게 하는 프리젠테이션 프로토콜이다. The Remote Display Protocol (RDP) is a presentation protocol that allows a user terminal (client) to exchange information with an application device over the network.

어플리케이션 장치는 사용자 단말이 원격 입력한 커맨드(command)에 응답하여 어플리케이션(프로그램)을 실행하고, 사용자 단말은 어플리케이션 장치로부터 제공되는 어플리케이션의 구동 상태를 디스플레이한다.The application apparatus executes an application (program) in response to a command input by the user terminal remotely, and the user terminal displays the operating state of the application provided from the application apparatus.

상기 어플리케이션 장치는 원격 디스플레이 프로토콜(RDP) 서버로서, RDP 클라이언트의 각종 상태를 제어하는 메커니즘을 제공한다. 예컨대, 사용자가 RDP를 이용하여 랩톱 컴퓨터로부터의 디스플레이를 회의실에 설치된 대형 스크린 디스플레이 상에 프로젝트하기를 원하는 경우, 사용자가 위치, 크기, 풀 스크린 처리 등 원격 클라이언트의 상태를 제어할 수 있게 할 것이다.The application device is a Remote Display Protocol (RDP) server and provides a mechanism for controlling various states of the RDP client. For example, if a user wants to project a display from a laptop computer using a RDP on a large screen display installed in a conference room, the user will be able to control the status of the remote client, such as location, size, full screen processing.

도 1은 본 발명에 따른 화면 가상화 기반 어플리케이션 실행을 위한 시스템을 나타낸 도면이다. 1 is a diagram illustrating a system for executing a screen virtualization-based application according to the present invention.

도 1을 참조하면, 화면 가상화 기반 어플리케이션 실행을 위한 시스템은 사용자 단말(100)의 요청에 따라 어플리케이션을 실행하여 상기 사용자 단말(100)에 제공하는 어플리케이션 장치(200)를 포함한다. Referring to FIG. 1, a system for executing a screen virtualization-based application includes an application device 200 that executes an application according to a request of the user terminal 100 and provides the application to the user terminal 100.

상기 사용자 단말(100)은 상기 어플리케이션 장치(200)에 접속하여 어플리케이션 목록을 수신 및 디스플레이하고, 상기 어플리케이션 목록중에서 사용자에 의해 선택된 어플리케이션의 실행을 상기 어플리케이션 장치(200)에 요청한다. The user terminal 100 accesses the application device 200 to receive and display an application list, and requests the application device 200 to execute an application selected by the user from the application list.

또한, 상기 사용자 단말(100)은 상기 실행 요청된 어플리케이션에 대한 어플리케이션 실행 화면을 상기 어플리케이션 장치(200)로부터의 제어신호를 근거로 디코딩하여 출력한다. 즉, 상기 제어신호가 이미지 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 사용자 단말(100)은 어플리케이션 실행 화면을 이미지 디코딩하여 출력한다. 만약, 상기 제어신호가 동영상 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 사용자 단말(100)은 상기 어플리케이션 실행 화면을 동영상 디코딩하여 출력한다. Also, the user terminal 100 decodes an application execution screen for the application requested to be executed based on a control signal from the application device 200 and outputs the decoded result. That is, when the control signal indicates that an application execution screen image compressed is transmitted, the user terminal 100 image-decodes and outputs an application execution screen. If the control signal indicates that a motion picture compressed application execution screen is transmitted, the user terminal 100 performs motion picture decoding on the application execution screen and outputs the motion picture.

또한, 사용자 단말(100)은 다수의 사용자가 인터넷을 포함하는 통신망을 통해 어플리케이션 장치(200)에 접속하기 위한 장치이다. 상기 사용자 단말(100)은 어플리케이션 장치(200)가 제공하는 클라우드 가상공간상에서 프로세스를 실행할 수 있는 기기로서, 일반적인 OS를 포함하는 개인용 PC, 클라우드 서비스를 제공받을 수 있는 최소한의 수단만을 포함하는 씬(Thin) 클라이언트 단말, 휴대용PC, 스마트폰(Smartphone), 및 PMP(Portable Multimedia Player) 등이 이용될 수 있다.In addition, the user terminal 100 is a device for a plurality of users to access the application device 200 through a communication network including the Internet. The user terminal 100 is a device capable of executing a process on a cloud virtual space provided by the application device 200. The user terminal 100 includes a personal PC including a general OS and a scene (virtual environment) including only a minimum means for receiving a cloud service. A thin client terminal, a portable PC, a smartphone, and a portable multimedia player (PMP).

상기와 같은 역할을 수행하는 사용자 단말(100)에 대한 상세한 설명은 도 2를 참조하기로 한다. A detailed description of the user terminal 100 performing the above-mentioned functions will be described with reference to FIG.

상기 어플리케이션 장치(200)는 저장된 어플리케이션들에 대한 어플리케이션 목록을 사용자 단말(100)로 전송하고, 상기 사용자 단말(100)로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 실행하여 그 어플리케이션 실행 화면을 이미지 압축하고, 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말(100)로 전송 또는 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말(100)로 전송한다. The application device 200 transmits an application list of stored applications to the user terminal 100. When the execution of the application is requested from the user terminal 100, the application device 200 executes the application, Compresses the application bandwidth of the current network, compares the available bandwidth of the current network with the size of the image compressed application execution screen, and transmits the image compressed application execution screen to the user terminal 100 according to the comparison result, And transmits the compressed video to the user terminal 100.

또한, 상기 어플리케이션 장치(200)는 클라우드 망에 분산되어 있는 다수의 컴퓨팅 자원을 가상화 기술로 통합하여 사용자 단말(100)의 요청에 따라 적절한 서비스를 제공한다. In addition, the application device 200 integrates a plurality of computing resources distributed in a cloud network into a virtualization technology, and provides an appropriate service according to a request of the user terminal 100.

또한, 상기 어플리케이션 장치(200)는 복수의 사용자 단말에 의한 동시, 반복적인 서비스 요청에 따른 데이터 트래픽 처리를 원활하게 수행할 수 있는 고성능 프로세서와 대용량의 데이터 저장공간을 구비하는 것이 바람직하다.In addition, the application apparatus 200 preferably includes a high-performance processor and a large-capacity data storage space that can smoothly process data traffic according to concurrent and repeated service requests by a plurality of user terminals.

상기와 같은 역할을 수행하는 어플리케이션 장치(200)에 대한 상세한 설명은 도 3을 참조하기로 한다. A detailed description of the application device 200 performing the above-mentioned functions will be described with reference to FIG.

도 2는 본 발명에 따른 사용자 단말의 구성을 개략적으로 나타낸 블럭도이다.2 is a block diagram schematically illustrating a configuration of a user terminal according to the present invention.

도 2를 참조하면, 사용자 단말(100)은 통신망을 통해 어플리케이션 장치와의 통신을 위한 통신부(102), 사용자 인터페이스부(104), 하이브리드 PV 스위칭부(108), RDP 클라이언트(110), 스트리밍 재생기(112)를 포함한다.2, the user terminal 100 includes a communication unit 102 for communicating with an application device via a communication network, a user interface unit 104, a hybrid PV switching unit 108, an RDP client 110, (112).

상기 사용자 인터페이스부(104)는 상기 통신부(102)를 통해 접속된 어플리케이션 장치로부터의 어플리케이션 목록을 디스플레이하고, 상기 어플리케이션 목록 중에서 사용자에 의해 선택된 어플리케이션의 실행을 요청한다. The user interface unit 104 displays an application list from an application apparatus connected through the communication unit 102 and requests execution of an application selected by the user from the application list.

상기 사용자 인터페이스부(104)는 예컨대 복수의 위젯(widget)으로 구성될 수 있는데, 위젯은 정보를 디스플레이하거나 사용자가 어플리케이션과 상호작용하는 특정 방식을 제공하는 사용자 인터페이스의 요소이다.The user interface unit 104 may comprise, for example, a plurality of widgets, which are elements of a user interface that display information or provide a specific way for a user to interact with the application.

위젯들은 예컨대 아이콘, 풀다운 메뉴, 버튼, 셀렉션 박스, 프로그레스 인디케이터, 온오프 체크마크, 스크롤바, 윈도우, 윈도우 에지(사용자가 윈도우의 크기를 조절할 수 있게 함), 토글 버튼, 폼, 그리고 정보를 디스플레이하고 사용자 액션을 요구, 수락 및 응답하는 어떤 다른 요소들을 포함할 수 있다.The widgets may display, for example, an icon, a pull-down menu, a button, a selection box, a progress indicator, an on-off check mark, a scroll bar, a window, a window edge (allowing the user to resize the window), a toggle button, And any other elements that request, accept, and respond to user actions.

또한, 상기 사용자 인터페이스부(104)는 문자나 기호, 숫자 등이 다수로 구비된 입력부 또는 터치스크린 등의 출력부로 구현할 수 있다. Also, the user interface unit 104 may be implemented as an input unit having a plurality of characters, symbols, numbers, or the like as an output unit such as a touch screen.

상기 하이브리드 PV 스위칭부(108)는 상기 어플리케이션 장치로부터의 제어 신호를 근거로 RDP 클라이언트(110) 또는 스트리밍 재생기(112)로 상기 어플리케이션 장치로부터의 어플리케이션 실행 데이터를 스위칭한다. 상기 어플리케이션 실행 데이터는 이미지 압축 어플리케이션 실행 데이터 또는 동영상 압축 어플리케이션 실행 데이터를 말한다. 상기 이미지 압축 어플리케이션 실행 데이터는 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 포함하고, 상기 동영상 압축 어플리케이션 실행 데이터는 동영상 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 포함한다. 상기 동영상 압축 어플리케이션 실행 데이터는 상기 어플리케이션 장치로부터 스트리밍(streaming)된 데이터이다. The hybrid PV switching unit 108 switches application execution data from the application device to the RDP client 110 or the streaming player 112 based on a control signal from the application device. The application execution data refers to image compression application execution data or moving image compression application execution data. The image compression application execution data includes an image compressed application execution screen and compressed audio data, and the moving image compression application execution data includes a moving image compressed application execution screen and compressed audio data. The moving image compression application execution data is data streamed from the application apparatus.

즉, 상기 하이브리드 PV 스위칭부(108)는 상기 통신부(102)를 통해 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 이미지 압축 어플리케이션 실행 데이터를 상기 RDP 클라이언트(110)로 스위칭한다. That is, the hybrid PV switching unit 108 switches the image compression application execution data to the RDP client 110 when a control signal indicating that the image compressed application execution screen is transmitted through the communication unit 102 is received.

또한, 상기 하이브리드 PV 스위칭부(108)는 상기 통신부(102)를 통해 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 동영상 압축 어플리케이션 실행 데이터를 스트리밍 재생기(112)로 스위칭한다. The hybrid PV switching unit 108 switches the moving image compression application execution data to the streaming player 112 when a control signal indicating that the moving image compressed application execution screen is transmitted through the communication unit 102 is received.

상기 RDP 클라이언트(110)는 상기 하이브리드 PV 스위칭부(108)를 통해 수신된 어플리케이션 실행 데이터를 디코딩하여 출력한다. 즉, 상기 RDP 클라이언트(110)는 상기 어플리케이션 실행 데이터 중 어플리케이션 실행 화면을 RDP 또는 VNC에서 정의된 디코딩 방식에 따라 디코딩하여 출력한다. 여기서, 상기 RDP 또는 VNC에서 정의된 디코딩 방식은 이전화면에 변경된 영상부분을 적용하여 디코딩하는 방식을 말한다. The RDP client 110 decodes the application execution data received through the hybrid PV switching unit 108 and outputs the decoding result. That is, the RDP client 110 decodes the application execution screen of the application execution data according to a decoding scheme defined by RDP or VNC and outputs the application execution screen. Here, the decoding method defined in the RDP or VNC refers to a method of applying a changed image portion to a previous screen and decoding the previous portion.

상기 스트리밍 재생기(112)는 상기 하이브리드 PV 스위칭부(108)를 통해 스트리밍되는 어플리케이션 실행 데이터를 동영상 디코딩하여 출력한다. 즉, 상기 스트리밍 재생기(112)는 H.264, MPEG-4 등과 같은 코덱으로 압축된 비디오를 디코딩하는 방식을 이용하여 상기 어플리케이션 실행 데이터 중 어플리케이션 실행 화면을 디코딩한다.The streaming player 112 demodulates the application execution data streamed through the hybrid PV switching unit 108 and outputs the decoded result. That is, the streaming player 112 decodes an application execution screen of the application execution data using a method of decoding a video compressed with a codec such as H.264 or MPEG-4.

도 3은 본 발명에 따른 어플리케이션 장치의 구성을 개략적으로 나타낸 블럭도이다. 3 is a block diagram schematically showing the configuration of an application apparatus according to the present invention.

도 3을 참조하면, 어플리케이션 장치(200)는 통신망을 통한 사용자 단말과의 통신을 위한 통신부(202), 어플리케이션이 저장된 어플리케이션 데이터베이스(204), RDP 세션부(208), 하이브리드 PV 제어부(210), 인코딩부(212), 스트리밍부(214)를 포함한다. 3, the application apparatus 200 includes a communication unit 202 for communicating with a user terminal through a communication network, an application database 204 in which applications are stored, an RDP session unit 208, a hybrid PV control unit 210, An encoding unit 212, and a streaming unit 214.

상기 RDP 세션부(208)는 상기 통신부(202)를 통해 사용자 단말이 접속되면, RDP 세션 또는 VNC 세션을 생성하고, RDP 세션 또는 VNC 세션에서 해당 어플리케이션을 실행한다. When the user terminal is connected through the communication unit 202, the RDP session unit 208 generates an RDP session or a VNC session and executes the corresponding application in an RDP session or a VNC session.

또한, 상기 RDP 세션부(208)는 상기 통신부(202)를 통해 상기 사용자 단말이 접속된 경우, 상기 어플리케이션 데이터베이스(204)에 저장된 어플리케이션들에 대한 어플리케이션 목록을 사용자 단말로 전송한다. In addition, when the user terminal is connected through the communication unit 202, the RDP session unit 208 transmits an application list of applications stored in the application database 204 to the user terminal.

또한, 상기 RDP 세션부(208)는 상기 통신부(202)를 통해 사용자 단말로부터 어플리케이션 실행이 요청되면, 해당 어플리케이션을 상기 어플리케이션 데이터베이스(204)로부터 획득하여 실행하고, 그 어플리케이션 실행 화면을 이미지 압축한다. The RDP session unit 208 acquires the application from the application database 204 and executes the application when the execution of the application is requested from the user terminal through the communication unit 202, and performs image compression on the application execution screen.

즉, 상기 RDP 세션부(208)는 RDP 표준에서 정의된 이미지 압축 방식 또는 VNC에서 사용하는 이미지 압축방식을 이용하여 어플리케이션 실행 화면을 압축한다. 여기서, 상기 RDP는 이전 화면과 변경된 영상 부분에 대해 압축을 수행하며 압축 방법은 연산량이 낮은 color bit수를 낮추고 run length 방법을 활용하는 방법을 사용한다. 상기 VNC는 이전 화면과 변경된 영상부분에 대해 압축을 수행하지만 압축방법은 JPEG과 같은 기존의 이미지 압축방법을 활용한다. That is, the RDP session unit 208 compresses the application execution screen using the image compression method defined in the RDP standard or the image compression method used in the VNC. Here, the RDP compresses the previous image and the changed image portion, and the compression method uses a method of reducing the number of color bits with low computation amount and using a run length method. The VNC performs compression on the previous screen and the changed image portion, but uses a conventional image compression method such as JPEG.

따라서, 상기 RDP 세션부(208)는 RDP와 VNC에서 정의된 이미지 압축방식을 활용하여 상기 어플리케이션 실행 화면을 압축한다. Accordingly, the RDP session unit 208 compresses the application execution screen using the image compression method defined by RDP and VNC.

상기 하이브리드 PV 제어부(210)는 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송하거나, 상기 어플리케이션 실행 화면을 동영상 압축하도록 제어한다. The hybrid PV control unit 210 measures the available bandwidth of the current network and compares the available bandwidth with the size of the image compressed application execution screen and transmits the image compressed application execution screen to the user terminal according to the comparison result, And controls the application execution screen to compress the moving picture.

즉, 상기 하이브리드 PV 제어부(210)는 다수의 주기적인 타임 스탬프(time stamp) 패킷들을 네트워크에 연결되어 있는 사용자 단말로 현재 설정되어 있는 시험 전송율로 전송하고, 상기 사용자 단말에 타임 스탬프 패킷들 각각이 수신된 시각들에 근거하여 타임 스탬프 패킷들 간의 전송 지연시간 차값들의 변화 추세를 검사하여 상기 전송 지연시간 차값들이 안정범위 내에 포함되면 현재 설정되어 있는 시험 전송율을 가용 대역폭으로 결정한다. 여기에서는 타임 스탬프 패킷을 이용하는 방법만을 예시로 설명하였으나, 다양한 방법으로 가용 대역폭을 측정할 수 있다. That is, the hybrid PV control unit 210 transmits a plurality of periodic time stamp packets to a user terminal connected to the network at a currently set test transmission rate, and transmits each of the time stamp packets to the user terminal Checks the change tendency of the transmission delay time difference values between the time stamp packets based on the received times, and determines the currently set test transmission rate as the available bandwidth when the transmission delay time difference values are within the stable range. Although only a method using a time stamp packet has been described as an example, the available bandwidth can be measured by various methods.

그런 다음 상기 하이브리드 PV 제어부(210)는 상기 측정된 가용 대역폭을 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교한다. Then, the hybrid PV control unit 210 compares the measured available bandwidth with the size of the image compressed application execution screen.

상기 비교결과 상기 이미지 압축된 어플리케이션 실행 화면의 크기가 상기 가용 대역폭보다 작으면, 상기 하이브리드 PV 제어부(210)는 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송하며, 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. If the size of the image compressed application execution screen is smaller than the available bandwidth, the hybrid PV control unit 210 transmits the image compressed application execution screen to the user terminal, And transmits the control signal to the user terminal.

만약, 상기 비교결과 상기 이미지 압축된 어플리케이션 실행 화면의 크기가 가용 대역폭보다 작지 않으면, 상기 하이브리드 PV 제어부(210)는 상기 어플리케이션 실행 화면을 상기 인코딩부(212)로 전송하고, 동영상 압축된 어플리케이션 실행 화면을 스트리밍(streaming)을 통해 전송한다는 제어 신호를 상기 사용자 단말로 전송한다. If the size of the image compressed application execution screen is not smaller than the available bandwidth, the hybrid PV control unit 210 transmits the application execution screen to the encoding unit 212, To the user terminal through a streaming process.

또한, 상기 하이브리드 PV 제어부(210)는 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 어플리케이션 실행 데이터의 크기를 (가용대역폭 - alpha)와 비교한다. 여기서, 상기 alpha는 대역폭 측정 오차를 고려한 상수값이다. In addition, the hybrid PV control unit 210 compares the size of the application execution data (available bandwidth - alpha), which is the sum of the image compressed application execution screen and the compressed audio data. Here, alpha is a constant value considering a bandwidth measurement error.

상기 비교결과 어플리케이션 실행 데이터의 크기가 상기 (가용대역폭 - alpha)보다 작으면, 상기 하이브리드 PV 제어부(210)는 상기 이미지 압축된 어플리케이션 실행 데이터를 상기 사용자 단말로 전송하며, 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다.If the size of the application execution data is smaller than the available bandwidth (alpha), the hybrid PV control unit 210 transmits the image compressed application execution data to the user terminal, And transmits the control signal to the user terminal.

만약, 상기 비교결과 어플리케이션 실행 데이터의 크기가 상기 (가용대역폭 - alpha)보다 작지 않으면, 상기 하이브리드 PV 제어부(210)는 상기 어플리케이션 실행 화면과 오디오 데이터를 캡쳐하여 상기 인코딩부(212)로 전송하고, 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. 즉, 상기 하이브리드 PV 제어부(210)는 상기 사용자 단말에 어플리케이션 실행 화면과 오디오를 스트리밍(streaming)을 통해 전송함을 알린다. If the size of the application execution data is not smaller than the available bandwidth (alpha), the hybrid PV control unit 210 captures the application execution screen and audio data and transmits the application execution screen and audio data to the encoding unit 212, And transmits a control signal indicating that the video compressed application execution screen is to be transmitted to the user terminal. That is, the hybrid PV control unit 210 informs the user terminal that the application execution screen and audio are transmitted through streaming.

상기 인코딩부(212)는 상기 하이브리드 PV 제어부(210)의 제어에 따라 상기 어플리케이션 실행 화면을 동영상 압축한다. 여기서, 상기 동영상 압축은 H.264, MPEG-4 등과 같은 기존의 동영상 압축방법을 활용한다. The encoding unit 212 compresses the application execution screen under the control of the hybrid PV control unit 210. Here, the moving picture compression uses an existing moving picture compression method such as H.264 or MPEG-4.

상기 인코딩부(212)는 상기 어플리케이션 실행 화면과 오디오를 동영상 압축하여 스트리밍부(214)를 통해 상기 사용자 단말로 스트리밍한다. 이때 상기 인코딩부(212)는 상기 압축된 어플리케이션 실행 데이터의 크기가 (네트워크의 가용대역폭-alpha + 압축된 오디오 데이터 크기)와 같도록 한다. The encoding unit 212 compresses the application execution screen and audio and then streams the stream to the user terminal through the streaming unit 214. [ At this time, the encoding unit 212 makes the size of the compressed application execution data equal to (available bandwidth of the network-alpha + compressed audio data size).

상기 사용자 단말에서는 하이브리드 PV 스위칭부가 하이브리드 PV 제어부(210)로부터 어플리케이션 실행 화면과 오디오가 RDP로 보내지는지 스트리밍(streaming)되어 전송되는지 정보를 받아서 RDP로 보내지는 경우에는 RDP 클라이언트로 보내고, streaming되어 전송되는 경우에는 스트리밍 재생기로 스트리밍 데이터를 재생하도록 한다. In the user terminal, when the hybrid PV switching unit receives information on whether the application execution screen and audio are streamed or transmitted through the RDP and the RDP, it is sent to the RDP client and streamed and transmitted The streaming data is reproduced by the streaming player.

도 4는 본 발명에 따른 화면 가상화 기반 어플리케이션 실행 방법을 나타낸 도면이다.4 is a diagram illustrating a method of executing a screen virtualization-based application according to the present invention.

도 4를 참조하면, 사용자 단말이 어플리케이션 장치에 접속하면(S402), 상기 어플리케이션 장치는 저장된 어플리케이션에 대한 어플리케이션 목록을 상기 사용자 단말로 전송하고(S404), 상기 사용자 단말은 상기 어플리케이션 목록을 디스플레이한다(S406). 이때, 상기 어플리케이션 장치는 화면 가상화 기술을 이용하여 상기 어플리케이션 목록을 상기 사용자 단말로 전송하고, 사용자는 상기 디스플레이된 어플리케이션 목록 중에서 실행을 원하는 어플리케이션을 선택한다.Referring to FIG. 4, when a user terminal accesses an application device (S402), the application device transmits an application list for the stored application to the user terminal (S404), and the user terminal displays the application list S406). At this time, the application device transmits the application list to the user terminal using screen virtualization technology, and the user selects an application to be executed from the displayed application list.

상기 사용자 단말은 상기 어플리케이션 장치에 상기 사용자에 의해 선택된 어플리케이션의 실행을 요청한다(S408).The user terminal requests the application device to execute the application selected by the user (S408).

그러면, 상기 어플리케이션 장치는 상기 사용자 단말로부터 실행 요청된 경우, 해당 어플리케이션을 실행하고(S410), 그 어플리케이션 실행 화면을 그 크기에 따라 다르게 압축하여(S412), 제어신호와 함께 상기 사용자 단말로 전송한다(S414). 즉, 상기 어플리케이션 장치는 상기 어플리케이션 실행 화면을 이미지 기반으로 압축하고, 현재 네트워크의 가용 대역폭을 측정한다. 그런 다음 상기 어플리케이션 장치는 이미지 기반으로 압축된 어플리케이션 실행 화면의 크기를 상기 가용대역폭과 비교하고, 상기 비교 결과를 근거로 상기 이미지 압축된 어플리케이션 실행 화면 또는 동영상 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송한다.Then, when the application device requests execution from the user terminal, the application device executes the application (S410), compresses the application execution screen according to its size (S412), and transmits it to the user terminal together with the control signal (S414). That is, the application apparatus compresses the application execution screen image-based and measures the available bandwidth of the current network. Then, the application device compares the size of the compressed application execution screen with the available bandwidth, and transmits the image compressed application execution screen or the compressed video application execution screen to the user terminal based on the comparison result do.

상기 어플리케이션 장치가 상기 어플리케이션 실행 화면을 크기에 따라 다르게 압축하는 방법에 대한 상세한 설명은 도 5를 참조하기로 한다. A detailed description of a method for the application apparatus to compress the application execution screen differently according to the size will be described with reference to FIG.

상기 S414가 수행되면, 상기 사용자 단말은 상기 제어 신호를 근거로 상기 압축되어 전송된 어플리케이션 실행 화면을 디코딩하여 출력한다(S416). 즉, 상기 제어신호가 이미지 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 사용자 단말은 상기 어플리케이션 실행 화면을 RDP 또는 VNC에서 정의된 디코딩 방식에 따라 디코딩하여 출력하고, 상기 제어신호가 동영상 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 어플리케이션 실행 화면을 동영상 디코딩 방식으로 디코딩하여 출력한다. If the step S414 is performed, the user terminal decodes and outputs the compressed application execution screen based on the control signal (S416). That is, when the control signal indicates that an application execution screen in which an image is compressed is transmitted, the user terminal decodes and outputs the application execution screen according to a decoding scheme defined by RDP or VNC, When it is indicated that the execution screen is transmitted, the application execution screen is decoded by the moving picture decoding method and output.

도 5는 본 발명에 따른 어플리케이션 장치가 어플리케이션 실행 화면을 크기에 따라 다르게 압축하는 방법을 나타낸 흐름도이다. 5 is a flowchart illustrating a method of compressing an application execution screen according to size according to an embodiment of the present invention.

도 5를 참조하면, 어플리케이션 장치는 사용자 단말로부터 어플리케이션 실행이 요청되면(S502), 해당 어플리케이션을 실행하고(S504), 그 어플리케이션 실행 화면을 이미지 압축한다(S506). 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합하여 이미지 압축 어플리케이션 실행 데이터라 칭한다.Referring to FIG. 5, when an application is requested to execute an application from a user terminal (S502), the application executes the application (S504) and compresses the application execution screen (S506). The image compressed application execution screen and the compressed audio data are summed and referred to as image compression application execution data.

상기 S506의 수행 후, 상기 어플리케이션 장치는 현재 네트워크의 가용 대역폭을 측정하고(S508), 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭 미만인지를 판단한다(S510).After performing step S506, the application apparatus measures the available bandwidth of the current network (S508), and determines whether the size of the image compression application execution data is less than the available bandwidth (S510).

상기 S510의 판단결과 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭 미만인 경우, 상기 어플리케이션 장치는 상기 이미지 압축 어플리케이션 실행 데이터를 상기 사용자 단말로 전송한다(S512). 이때, 상기 어플리케이션 장치는 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. If it is determined in operation S510 that the size of the image compression application execution data is less than the available bandwidth, the application apparatus transmits the image compression application execution data to the user terminal in operation S512. At this time, the application device transmits a control signal to the user terminal to transmit an image compressed application execution screen.

만약, 상기 S510의 판단결과 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭 미만이 아니면, 상기 어플리케이션 장치는 상기 어플리케이션 실행 화면을 동영상 압축하고(S514), 상기 동영상 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 포함하는 동영상 압축 어플리케이션 실행 데이터를 스트리밍을 통해 상기 사용자 단말로 전송한다(S516). 이때, 상기 어플리케이션 장치는 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송한다. If it is determined in operation S510 that the size of the image compression application execution data is not less than the available bandwidth, the application device compresses the application execution screen (S514), and the compressed application execution screen and the compressed audio And transmits the moving image compression application execution data including the data to the user terminal through streaming (S516). At this time, the application apparatus transmits to the user terminal a control signal indicating that the moving picture compressed application execution screen is to be transmitted.

이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Thus, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the embodiments described above are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

이상과 같이 본 발명의 화면 가상화 기반 어플리케이션 실행 시스템 및 방법은 어플리케이션 실행 화면을 데이터량이 많은 비디오/3D Graphic 화면과 일반 화면으로 구분하여 일반 화면은 이미지 압축하여 전송하고 데이터량이 많은 화면은 동영상 압축하여 전송함으로써, 데이터량이 많은 비디오나 3D graphic를 전송 시 높은 전송 대역폭을 차지하는 문제점을 해결할 필요가 있는 경우에 적합하다.
As described above, the screen virtualization-based application execution system and method according to the present invention divides an application execution screen into a video / 3D graphic screen and a general screen having a large amount of data, compresses and transmits the general screen image, This is suitable when it is necessary to solve the problem of occupying a high transmission bandwidth when transmitting video or 3D graphics with a large amount of data.

100 : 사용자 단말 102, 202 : 통신부
104 : 사용자 인터페이스부 108 : 하이브리드 PV 스위칭부
110 : RDP 클라이언트 112 : 스트리밍 재생기
200 : 어플리케이션 장치 204 : 어플리케이션 데이터베이스
208 : RDP 세션부 210 : 하이브리드 PV 제어부
212 : 인코딩부 214 : 스트리밍부
100: User terminal 102, 202:
104: user interface unit 108: hybrid PV switching unit
110: RDP client 112: streaming player
200: Application device 204: Application database
208: RDP session unit 210: Hybrid PV control unit
212: encoding section 214: streaming section

Claims (18)

삭제delete 사용자 단말과의 통신을 위한 통신부;
어플리케이션이 저장된 어플리케이션 데이터베이스;
상기 통신부를 통해 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 상기 어플리케이션 데이터베이스로부터 획득하여 실행하고, 그 어플리케이션 실행 화면을 이미지 압축하는 RDP(Remote Desktop Protocol) 세션부;
현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하고, 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송하거나, 상기 어플리케이션 실행 화면을 동영상 압축하도록 제어하는 하이브리드 PV 제어부;
상기 하이브리드 PV 제어부의 제어에 따라 상기 어플리케이션 실행 화면을 동영상 압축하는 인코딩부; 및
상기 인코딩부에서 동영상 압축된 어플리케이션 실행 화면을 스트리밍으로 상기 사용자 단말로 전송하는 스트리밍부;
를 포함하는 어플리케이션 장치.
A communication unit for communication with a user terminal;
An application database in which the application is stored;
An RDP (Remote Desktop Protocol) session unit for acquiring and executing the application from the application database when the execution of the application is requested from the user terminal through the communication unit, and compressing the application execution screen image;
Compressing the application execution screen to compress the application execution screen, and transmitting the compressed application execution screen to the user terminal according to the result of the comparison, A hybrid PV controller;
An encoding unit that compresses the application execution screen under the control of the hybrid PV control unit; And
A streaming unit for transmitting the streaming compressed application execution screen from the encoding unit to the user terminal;
.
제2항에 있어서,
상기 RDP 세션부는 RDP 또는 VNC(Virtual Network Control)에서 정의된 이미지 압축 방식에 따라 상기 어플리케이션 실행 화면을 압축하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
Wherein the RDP session unit compresses the application execution screen according to an image compression method defined by RDP or VNC (Virtual Network Control).
제2항에 있어서,
상기 RDP 세션부는 상기 통신부를 통해 상기 사용자 단말이 접속된 경우, 상기 어플리케이션 데이터베이스에 저장된 어플리케이션들에 대한 어플리케이션 목록을 사용자 단말로 전송하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
Wherein the RDP session unit transmits an application list of applications stored in the application database to the user terminal when the user terminal is connected through the communication unit.
제2항에 있어서,
상기 하이브리드 PV 제어부는 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 이미지 압축 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하여, 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작은 경우 상기 이미지 압축 어플리케이션 실행 데이터를 상기 사용자 단말로 전송하며, 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
Wherein the hybrid PV control unit compares the size of the image compression application execution data obtained by adding the image compressed application execution screen and the compressed audio data to the available bandwidth, and when the size of the image compression application execution data is smaller than the available bandwidth, And transmits the image compression application execution data to the user terminal, and transmits a control signal indicating that the image compression application execution screen is transmitted to the user terminal.
제2항에 있어서,
상기 하이브리드 PV 제어부는 상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 이미지 압축 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하여, 상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작지 않은 경우 상기 어플리케이션 실행 화면을 상기 인코딩부로 전송하고, 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
The hybrid PV control unit compares the size of the image compression application execution data obtained by adding the image compressed application execution screen and the compressed audio data to the available bandwidth and if the size of the image compression application execution data is not smaller than the available bandwidth Transmits the application execution screen to the encoding unit, and transmits a control signal to the user terminal that a moving picture compressed application execution screen is to be transmitted.
제2항에 있어서,
상기 하이브리드 PV 제어부는 다수의 주기적인 타임 스탬프(time stamp) 패킷들을 네트워크에 연결되어 있는 사용자 단말로 현재 설정되어 있는 시험 전송율로 전송하고, 상기 사용자 단말에 타임 스탬프 패킷들 각각이 수신된 시각들에 근거하여 타임 스탬프 패킷들 간의 전송 지연시간 차값들의 변화 추세를 검사하여 상기 전송 지연시간 차값들이 안정범위 내에 포함되면 현재 설정되어 있는 시험 전송율을 가용 대역폭으로 결정하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
The hybrid PV control unit transmits a plurality of periodic time stamp packets to a user terminal connected to the network at a currently set test transmission rate and transmits the time stamp packets to the user terminal at times And determines a currently set test transmission rate as an available bandwidth when the transmission delay time difference values are within a stable range by checking trends of transmission delay time difference values between time stamp packets.
제2항에 있어서,
상기 인코딩부는 상기 동영상 압축된 어플리케이션 실행 화면의 크기가 상기 가용 대역폭에서 압축된 오디오 데이터의 크기를 뺀 크기와 상응하도록 압축하는 것을 특징으로 하는 어플리케이션 장치.
3. The method of claim 2,
Wherein the encoding unit compresses the moving picture compressed application execution screen so that a size of the moving picture compressed application execution screen is equal to a size obtained by subtracting the compressed audio data size from the available bandwidth.
어플리케이션 장치와의 통신을 위한 통신부;
상기 통신부를 통해 접속된 어플리케이션 장치로부터의 어플리케이션 목록을 디스플레이하고, 상기 어플리케이션 목록 중에서 적어도 하나의 어플리케이션 실행을 요청하는 사용자 인터페이스부;
상기 어플리케이션 장치로부터의 제어신호를 근거로 RDP 클라이언트 또는 스트리밍 재생기로 상기 어플리케이션 장치로부터의 어플리케이션 실행 데이터를 스위칭하는 하이브리드 PV 스위칭부;
상기 하이브리드 PV 스위칭부를 통해 수신된 어플리케이션 실행 데이터를 이미지 기반으로 디코딩하여 출력하는 RDP 클라이언트; 및
상기 하이브리드 PV 스위칭부를 통해 스트리밍되는 어플리케이션 실행 데이터를 동영상 기반으로 디코딩하여 출력하는 스트리밍 재생기;
를 포함하는 사용자 단말.
A communication unit for communication with the application device;
A user interface unit displaying an application list from an application device connected through the communication unit and requesting execution of at least one application from the application list;
A hybrid PV switching unit for switching application execution data from the application apparatus to an RDP client or a streaming player based on a control signal from the application apparatus;
An RDP client that decodes and outputs application execution data received through the hybrid PV switching unit based on an image; And
A streaming player for decoding application execution data streamed through the hybrid PV switching unit based on a moving image;
Lt; / RTI >
제9항에 있어서,
상기 하이브리드 PV 스위칭부는 상기 통신부를 통해 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 어플리케이션 실행 데이터를 상기 RDP 클라이언트로 스위칭하고, 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호가 수신된 경우 상기 어플리케이션 실행 데이터를 상기 스트리밍 재생기로 스위칭하는 것을 특징으로 하는 사용자 단말.
10. The method of claim 9,
The hybrid PV switching unit switches the application execution data to the RDP client when a control signal indicating that the image compressed application execution screen is transmitted through the communication unit is received and a control signal indicating that the video compressed application execution screen is transmitted is received And switches the application execution data to the streaming player.
제9항에 있어서,
상기 RDP 클라이언트는 RDP 또는 VNC에서 정의된 디코딩 방식에 따라 상기 어플리케이션 실행 데이터를 디코딩하는 것을 특징으로 하는 사용자 단말.
10. The method of claim 9,
Wherein the RDP client decodes the application execution data according to a decoding scheme defined by RDP or VNC.
삭제delete 어플리케이션 장치가 화면 가상화를 기반으로 어플리케이션을 실행하는 방법에 있어서,
(a) 사용자 단말이 접속된 경우, 어플리케이션 목록을 상기 사용자 단말로 전송하는 단계;
(b) 상기 사용자 단말로부터 어플리케이션 실행이 요청된 경우, 해당 어플리케이션을 어플리케이션 데이터베이스로부터 획득하여 실행하고, 그 어플리케이션 실행 화면을 이미지 압축하는 단계;
(c) 현재 네트워크의 가용 대역폭을 측정하여 상기 이미지 압축된 어플리케이션 실행 화면의 크기와 비교하는 단계; 및
(d) 상기 비교 결과에 따라 상기 이미지 압축된 어플리케이션 실행 화면을 상기 사용자 단말로 전송하거나, 상기 어플리케이션 실행 화면을 동영상 압축하여, 상기 동영상 압축된 어플리케이션 실행 화면을 스트리밍으로 상기 사용자 단말로 전송하는 단계;
를 포함하는 화면 가상화 기반 어플리케이션 실행 방법.
A method for an application device to execute an application based on screen virtualization,
(a) when the user terminal is connected, transmitting an application list to the user terminal;
(b) acquiring and executing the application from the application database when the execution of the application is requested from the user terminal, and compressing the application execution screen image;
(c) measuring an available bandwidth of the current network and comparing the measured bandwidth with the size of the image compressed application execution screen; And
(d) transmitting the image compressed application execution screen to the user terminal according to the comparison result, moving the application execution screen by moving image, and transmitting the streaming compressed application execution screen to the user terminal;
Based virtualization-based application.
제13항에 있어서,
상기 (c) 단계는,
상기 이미지 압축된 어플리케이션 실행 화면과 압축된 오디오 데이터를 합한 이미지 압축 어플리케이션 실행 데이터의 크기를 상기 가용 대역폭과 비교하는 것을 특징으로 하는 화면 가상화 기반 어플리케이션 실행 방법.
14. The method of claim 13,
The step (c)
And comparing the size of the image compression application execution data, which is the sum of the image compression application execution screen and the compressed audio data, with the available bandwidth.
제14항에 있어서,
상기 (d) 단계는,
상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작은 경우, 상기 이미지 압축 어플리케이션 실행 데이터를 상기 사용자 단말로 전송함과 동시에 이미지 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송하고,
상기 이미지 압축 어플리케이션 실행 데이터의 크기가 상기 가용 대역폭보다 작지 않은 경우, 상기 어플리케이션 실행 화면을 동영상 압축하여 상기 사용자 단말로 전송함과 동시에 동영상 압축된 어플리케이션 실행 화면이 전송된다는 제어 신호를 상기 사용자 단말로 전송하는 것을 특징으로 하는 화면 가상화 기반 어플리케이션 실행 방법.
15. The method of claim 14,
The step (d)
Transmitting the image compression application execution data to the user terminal and sending a control signal that an image compressed application execution screen is transmitted to the user terminal when the size of the image compression application execution data is smaller than the available bandwidth,
When the size of the image compression application execution data is not smaller than the available bandwidth, the control unit transmits a control signal for moving the application execution screen to the user terminal and transmitting a video compressed application execution screen to the user terminal Wherein the screen virtualization-based application execution method comprises:
어플리케이션 장치와 통신망을 통해 접속된 사용자 단말이 어플리케이션을 실행하는 방법에 있어서,
(a) 상기 어플리케이션 장치로부터 어플리케이션 목록을 수신하여 디스플레이하는 단계;
(b) 상기 어플리케이션 목록 중에서 사용자에 의해 선택된 적어도 하나의 어플리케이션 실행을 상기 어플리케이션 장치에 요청하는 단계;
(c) 상기 어플리케이션 장치로부터 상기 실행 요청된 어플리케이션 실행 데이터 및 제어 신호를 수신하는 단계; 및
(d) 상기 제어 신호에 따라 상기 어플리케이션 실행 데이터를 이미지 디코딩 또는 동영상 디코딩하여 출력하는 단계;
를 포함하는 화면 가상화 기반 어플리케이션 실행 방법.
A method of executing an application by a user terminal connected to an application device via a communication network,
(a) receiving and displaying an application list from the application device;
(b) requesting, by the application device, at least one application execution selected by the user from the application list;
(c) receiving the application execution data and the control signal requested to be executed from the application device; And
(d) image decoding or moving picture decoding the application execution data according to the control signal and outputting the decoded data;
Based virtualization-based application.
제16항에 있어서,
상기 (d) 단계는,
상기 제어 신호가 이미지 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 어플리케이션 실행 데이터를 이미지 디코딩하여 출력하고,
상기 제어신호가 동영상 압축된 어플리케이션 실행 화면이 전송됨을 나타낸 경우, 상기 어플리케이션 실행 데이터를 동영상 디코딩하여 출력하는 것을 특징으로 하는 화면 가상화 기반 어플리케이션 실행 방법.
17. The method of claim 16,
The step (d)
When the control signal indicates that an application execution screen in which an image is compressed is transmitted, the application execution data is image-decoded and output,
Wherein the control unit decodes the application execution data and outputs the application execution data when the control signal indicates that a moving image compressed application execution screen is to be transmitted.
어플리케이션 장치로부터 어플리케이션 목록을 수신하여 디스플레이하는 단계;
상기 어플리케이션 목록 중에서 사용자에 의해 선택된 적어도 하나의 어플리케이션 실행을 상기 어플리케이션 장치에 요청하는 단계;
상기 어플리케이션 장치로부터 상기 실행 요청된 어플리케이션 실행 데이터 및 제어 신호를 수신하는 단계; 및
상기 제어 신호에 따라 상기 어플리케이션 실행 데이터를 이미지 디코딩 또는 동영상 디코딩하여 출력하는 단계;
를 포함하는 화면 가상화 기반 어플리케이션 실행 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
Receiving and displaying an application list from an application device;
Requesting at least one application execution selected by a user from the application list to the application device;
Receiving the application execution data and the control signal requested to be executed from the application device; And
Performing image decoding or motion picture decoding on the application execution data according to the control signal, and outputting the application execution data;
Based virtualization-based application, the method comprising the steps of:
KR1020110073617A 2011-07-25 2011-07-25 System and Method for operating application based Presentation Virtualization Active KR101630638B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110073617A KR101630638B1 (en) 2011-07-25 2011-07-25 System and Method for operating application based Presentation Virtualization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110073617A KR101630638B1 (en) 2011-07-25 2011-07-25 System and Method for operating application based Presentation Virtualization

Publications (2)

Publication Number Publication Date
KR20130012420A KR20130012420A (en) 2013-02-04
KR101630638B1 true KR101630638B1 (en) 2016-06-15

Family

ID=47893121

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110073617A Active KR101630638B1 (en) 2011-07-25 2011-07-25 System and Method for operating application based Presentation Virtualization

Country Status (1)

Country Link
KR (1) KR101630638B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101899262B1 (en) 2017-11-14 2018-09-14 (주) 퓨전데이타 System and method for optimizing virtual desktop infrastructure display

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102285197B1 (en) * 2015-01-30 2021-08-03 에스케이플래닛 주식회사 System for cloud streaming service, method of image cloud streaming service using simultaneous encoding and apparatus for the same
KR102537913B1 (en) * 2018-10-19 2023-05-26 에스케이텔레콤 주식회사 Method And Apparatus for Displaying VMI Screen and Local Screen in Specific Region
KR102552753B1 (en) * 2018-10-24 2023-07-05 에스케이텔레콤 주식회사 VMI Screen Display Method And Apparatus for Delay Reduction
KR102710747B1 (en) * 2019-03-29 2024-09-27 삼성전자주식회사 Electronic device and method for processing a streaming application in electronic device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019347A1 (en) 2000-02-29 2004-01-29 Olympus Optical Co., Ltd. Surgical operation system
US20040240752A1 (en) 2003-05-13 2004-12-02 Dobbs Andrew Bruno Method and system for remote and adaptive visualization of graphical image data

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030066029A (en) * 2002-02-04 2003-08-09 윤인수 System and method for real time transmitting a compression moving picture based on the internet-network
KR101427278B1 (en) * 2008-07-18 2014-08-06 엘지전자 주식회사 Video conference server and video conference terminal and video conference method using the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040019347A1 (en) 2000-02-29 2004-01-29 Olympus Optical Co., Ltd. Surgical operation system
US20040240752A1 (en) 2003-05-13 2004-12-02 Dobbs Andrew Bruno Method and system for remote and adaptive visualization of graphical image data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101899262B1 (en) 2017-11-14 2018-09-14 (주) 퓨전데이타 System and method for optimizing virtual desktop infrastructure display

Also Published As

Publication number Publication date
KR20130012420A (en) 2013-02-04

Similar Documents

Publication Publication Date Title
US9106521B2 (en) Method and system for visualizing an adaptive screen according to a terminal
KR101668282B1 (en) System and Method for operating application based Presentation Virtualization
CN105637886B (en) Server from graphic user interface to client and client for providing
US20060037054A1 (en) Rendering graphics/image data using dynamically generated video streams
CN108337560B (en) Media playback device and media serving device for playing media on a web browser
KR101596505B1 (en) Apparatus and method for user interface of multimedia system
KR101942269B1 (en) Apparatus and method for playing back and seeking media in web browser
US20170177188A1 (en) Image processing apparatus, image processing method, and program
KR20140034603A (en) Method and apparatus of managing muti-session
TWI495330B (en) System and method for efficiently streaming digital video
WO2020233142A1 (en) Multimedia file playback method and apparatus, electronic device, and storage medium
CN112929234B (en) Cloud stream server
KR101630638B1 (en) System and Method for operating application based Presentation Virtualization
US9389881B2 (en) Method and apparatus for generating combined user interface from a plurality of servers to enable user device control
CN110856036A (en) Remote desktop implementation method, interaction method, device, equipment and storage medium
KR102247886B1 (en) System for cloud streaming service, method of cloud streaming service based on type of image and apparatus for the same
US20130246510A1 (en) Remote control system, client device, and server device
KR101871403B1 (en) Media control device application executing method and system in media displaying device using presentation virtualization
KR20160131827A (en) System for cloud streaming service, method of image cloud streaming service using alpha level of color bit and apparatus for the same
KR101237504B1 (en) Server for supporting heterogeneous remote control service and method thereof
CN113301438A (en) Cloud desktop video playing method based on underlying virtualization technology
CN111726687B (en) Method and apparatus for generating display data
Li et al. iScreen: A Merged Screen of Local System with Remote Applications in a Mobile Cloud Environment
KR20160043398A (en) System for cloud streaming service, method of cloud streaming service using source information and apparatus for the same
CN117119234A (en) Display equipment and media asset playing method

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20110725

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20111102

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20150513

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20110725

Comment text: Patent Application

N231 Notification of change of applicant
PN2301 Change of applicant

Patent event date: 20151113

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20160127

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20160601

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20160609

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20160610

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20190521

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20190521

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20200520

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20210520

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20220518

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20221226

Start annual number: 8

End annual number: 8