KR20120064575A - Method for accelerating virtual desktop protocol based on server virtualization - Google Patents

Method for accelerating virtual desktop protocol based on server virtualization Download PDF

Info

Publication number
KR20120064575A
KR20120064575A KR1020100125859A KR20100125859A KR20120064575A KR 20120064575 A KR20120064575 A KR 20120064575A KR 1020100125859 A KR1020100125859 A KR 1020100125859A KR 20100125859 A KR20100125859 A KR 20100125859A KR 20120064575 A KR20120064575 A KR 20120064575A
Authority
KR
South Korea
Prior art keywords
virtual desktop
desktop protocol
data
virtual
task
Prior art date
Application number
KR1020100125859A
Other languages
Korean (ko)
Other versions
KR101361838B1 (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 KR1020100125859A priority Critical patent/KR101361838B1/en
Publication of KR20120064575A publication Critical patent/KR20120064575A/en
Application granted granted Critical
Publication of KR101361838B1 publication Critical patent/KR101361838B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

PURPOSE: A method for accelerating virtual desktop protocol is provided to selectively treat a portion of a virtual desktop protocol treatment tasks, which is treated in server virtualization environment by soft ware, in a virtual desktop protocol accelerating device. CONSTITUTION: A method for accelerating virtual desktop protocol comprises following steps. A virtual desktop protocol data management pool transmits the properties of a task for treating, a memory address of a host for saving processing target data, a memory address of the host for saving data size and data process result to interface for virtual desktop protocol accelerator(410). The interface identifies the validity of data transmitting and processing commands and factors(420). The virtual desktop protocol accelerator processes the data transmitting and processing commands(430).

Description

서버 가상화 기반 가상 데스크탑 프로토콜 가속방법 {METHOD FOR ACCELERATING VIRTUAL DESKTOP PROTOCOL BASED ON SERVER VIRTUALIZATION} Server virtualization-based virtual desktop protocol acceleration method {METHOD FOR ACCELERATING VIRTUAL DESKTOP PROTOCOL BASED ON SERVER VIRTUALIZATION}

본 발명은 서버 가상화 환경의 가상 데스크탑 터미널 서비스에 관한 것으로, 더욱 상세하게는 가상화 서버의 처리 부하를 경감시킬 수 있는 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에 관한 것이다.The present invention relates to a virtual desktop terminal service in a server virtualization environment, and more particularly, to a server virtualization-based virtual desktop protocol acceleration method that can reduce the processing load of a virtualization server.

일반적으로 윈도우 시스템을 지원하는 운영체제(OS: Operating System)는 로컬과 유사한 환경으로 원격 사용자에게 데스크탑을 제공하기 위해 가상 데스크탑 프로토콜을 사용한 가상 데스크탑 터미널 서비스를 제공한다. In general, an operating system (OS) supporting a Windows system provides a virtual desktop terminal service using a virtual desktop protocol to provide a desktop to a remote user in a local-like environment.

예를 들어, MS(Microsoft)에서는 RDP(Remote Desktop Protocol)라는 가상 데스크탑 프로토콜을 이용하여 RDC(Remote Desktop Connection)라는 가상 데스크탑 터미널 서비스를 제공하고, 리눅스에서는 RFB(Remote Framebuffer)라는 가상 데스크탑 프로토콜을 이용하여 VNC(Virtual Network Computing)라는 가상 데스크탑 터미널 서비스를 제공한다. 또한, 테라디시(Teradici)는 PCoIP(PC-over-IP)라는 가상 데스크탑 프로토콜 솔루션을 제공한다.For example, Microsoft (Microsoft) provides a virtual desktop terminal service called Remote Desktop Connection (RDC) using a virtual desktop protocol called RDP (Remote Desktop Protocol), and Linux uses a virtual desktop protocol called RFB (Remote Framebuffer). To provide a virtual desktop terminal service called Virtual Network Computing (VNC). Teradici also offers a virtual desktop protocol solution called PC-over-IP (PCoIP).

특히, 가상 데스크탑 터미널 서비스는 한 대의 서버에 복수의 운영체제(OS)가 탑재되어 운영되는 서버 가상화(server virtualization)에 적용되어 네트워크를 통하여 여러 사용자에게 독립적인 데스크탑 환경을 제공해 준다. 이와 같은 가상 테스크탑 터미널 서비스는 MS(Microsoft)의 RDP를 개선한 시트릭스(Citrix)의 3D HDX, 테라디시(Teradici)의 PCoIP를 적용한 VMware의 VMware View가 있다. In particular, the virtual desktop terminal service is applied to server virtualization, in which a plurality of operating systems (OSs) are mounted on a single server to provide an independent desktop environment to multiple users through a network. These virtual desktop terminal services include Citrix's 3D HDX, which improves on Microsoft's RDP, and VMware's VMware View, which uses PCoIP from Teradici.

가상 데스크탑 터미널 서비스에서 원격 사용자에게 로컬 컴퓨터를 사용하는 것과 유사한 경험을 제공하기 위해서는 사용자의 터미널에서에 수행되는 입력(예를 들면, 마우스, 키보드, 타블렛, 마이크, USB 데이터 쓰기 등) 대비 호스트 컴퓨터의 출력(예를 들면, 스크린, 오디오, USB 데이터 읽기 등) 반응 시간이 짧아야 한다. 그러나 네트워크 대역폭은 한정되어 있고, 네트워크를 통해 전송되는 데스크탑 프로토콜의 데이터는 용량이 매우 크기 때문에 사용자 터미널에서 지연 시간을 만족시키기 위해서 종래의 다양한 가상 데스크탑 프로토콜에는 압축 등과 같은 소프트웨어적인 가속 기능을 포함하고 있다.In Virtual Desktop Terminal Services, to provide a remote user with a similar experience to using a local computer, the host computer's input is compared to the input performed on the user's terminal (for example, a mouse, keyboard, tablet, microphone, USB data write, etc.). Output (eg screen, audio, USB data read, etc.) response time should be short. However, because network bandwidth is limited and the data of desktop protocols transmitted over the network is very large, various conventional virtual desktop protocols include software acceleration functions such as compression to satisfy the delay time at the user terminal. .

유일한 물리 자원을 이용하여 복수의 운영체제(OS)를 운영하는 서버 가상화 환경에서는 종래의 단일 컴퓨터 환경과 비교하여 프로세서의 활용도가 높고, 이와 같은 환경에서 가상 데스크탑 터미널 서비스를 적용하는 경우 서버 시스템의 마비를 초래할 수 있다. 특히, 가상 데스크탑 프로토콜에서 소프트웨어로 처리하는 데이터 압축은 프로세서의 부하를 배가시키는 주요 원인이 된다.In a server virtualization environment that uses multiple physical operating systems (OSs) using unique physical resources, the processor utilization is higher than that of a conventional single computer environment. Can cause. In particular, data compression processed by software in the virtual desktop protocol is a major cause of doubling the processor load.

상기한 바와 같은 단점을 극복하기 위한 본 발명의 목적은 서버 가상화 환경에서 가상화 서버의 처리 부하를 경감시킬 수 있는 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법을 제공하는 것이다.
An object of the present invention for overcoming the above disadvantages is to provide a server virtualization-based virtual desktop protocol acceleration method that can reduce the processing load of the virtual server in the server virtualization environment.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다. Technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법은 상위 계층으로부터 제공된 가상 머신 구분자에 기초하여 처리할 태스크의 속성을 검색하는 단계와, 상위 계층으로부터 제공된 처리 데이터 정보에 기초하여 처리할 해당 데이터를 인출하는 단계 및 검색된 태스크 속성에 기초하여 해당 데이터를 처리하고, 처리된 데이터를 상위 계층에 전달하는 단계를 포함한다. Server virtualization-based virtual desktop protocol acceleration method according to an aspect of the present invention for achieving the above object of the present invention comprises the steps of retrieving the attribute of the task to be processed based on the virtual machine identifier provided from the upper layer, and from the upper layer Retrieving the corresponding data to be processed based on the provided processed data information, processing the corresponding data based on the retrieved task attribute, and delivering the processed data to a higher layer.

상술한 바와 같은 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에 따르면, 서버 가상화 환경에서 소프트웨어적으로 처리되는 가상 데스크탑 프로토콜 처리 태스크 중 일부를 선택적으로 전용 하드웨어인 가상 데스크탑 프로토콜 가속 장치에서 처리하도록 함으로써 가상화 서버의 프로세서의 처리 부하를 경감시킬 수 있고, 이를 통해 가상화 서버의 전체적인 처리 성능을 향상시킬 수 있고, 가상화 서버로부터 가상 데스크탑을 제공받는 사용자 터미털의 지연 시간을 만족시킬 수 있다.According to the server virtualization-based virtual desktop protocol acceleration method as described above, some of the virtual desktop protocol processing tasks that are processed in software in the server virtualization environment is selectively processed by the virtual desktop protocol accelerator, which is dedicated hardware, to process the processor of the virtual server. It can reduce the processing load of the server, thereby improving the overall processing performance of the virtualization server, and satisfy the latency of the user terminal receiving the virtual desktop from the virtualization server.

도 1은 본 발명의 일 실시예에 따른 터미널 서비스 기능을 구비한 윈도우 시스템 기반 컴퓨터의 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 가상화 서버의 구성을 나타내는 블록도이다.
도 3은 도 2에 도시한 가상 데스크탑 프로토콜 가속 장치의 보다 상세한 구성을 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치의 구동 및 태스크 속성 설정 과정을 나타내는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치에 가속 데이터를 전달 및 처리하기 위한 동작을 나타내는 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치에 설정된 가속 태스크의 속성을 삭제하기 위한 동작을 나타내는 흐름도이다.
1 is a block diagram illustrating a configuration of a window system-based computer having a terminal service function according to an embodiment of the present invention.
2 is a block diagram showing the configuration of a virtualization server according to an embodiment of the present invention.
FIG. 3 is a block diagram illustrating a more detailed configuration of the virtual desktop protocol accelerator shown in FIG. 2.
4 is a flowchart illustrating a process of driving a virtual desktop protocol acceleration device and setting task properties in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.
5 is a flowchart illustrating an operation for transferring and processing acceleration data to a virtual desktop protocol acceleration device in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.
6 is a flowchart illustrating an operation for deleting an attribute of an acceleration task set in a virtual desktop protocol acceleration device in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the relevant art and are to be interpreted in an ideal or overly formal sense unless explicitly defined in the present application Do not.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the understanding of the present invention, the same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

도 1은 본 발명의 일 실시예에 따른 터미널 서비스 기능을 구비한 윈도우 시스템 기반 컴퓨터의 구성을 나타내는 블록도이다.1 is a block diagram illustrating a configuration of a window system-based computer having a terminal service function according to an embodiment of the present invention.

도 1을 참조하면, 컴퓨터(100)는 애플리케이션 계층(110), 윈도우 시스템을 지원하는 운영체제(이하, 'OS'라 약칭함) 계층(120) 및 하드웨어 계층(130)으로 구성될 수 있다.Referring to FIG. 1, the computer 100 may include an application layer 110, an operating system (hereinafter, referred to as an “OS”) layer 120, and a hardware layer 130 that support a window system.

윈도우 시스템 기반 컴퓨터(100) 환경에서는 사용자 데스크탑 및 애플리케이션(111)을 표현하기 위해 윈도의 기반 운영체제 계층(120)에 포함된 공통의 윈도우 시스템 라이브러리(121)를 통해 비디오 어댑터(123), USB 인터페이스(124), 시리얼 포트 인터페이스(125), 오디오 어댑터(126) 등의 입출력 인터페이스에 접근하고, 이를 통해 모니터(131), USB 장치(132), 키보드/마우스(133), 오디오 장치(134) 등의 입출력 하드웨어 장치와 통신한다. In the Windows system-based computer 100 environment, the video adapter 123 and the USB interface (through the common window system library 121 included in the Windows-based operating system layer 120 for representing the user desktop and the application 111) are provided. 124, the serial port interface 125, the audio adapter 126 and the like input and output interface, through which the monitor 131, USB device 132, keyboard / mouse 133, audio device 134, etc. Communicate with input and output hardware devices.

또한, 윈도우 시스템 기반 컴퓨터(100) 환경에서는 운영체제 계층(120)에 포함된 윈도우 시스템 라이브러리 하부의 가상 데스크탑 프로토콜 스택(122)에서 비디오 어댑터(123), USB 인터페이스(124), 시리얼 포트 인터페이스(125), 오디오 어댑터(126) 등의 입출력 인터페이스의 데이터를 수집하여 애플리케이션 계층(110)의 터미널 서비스 연결 프로세스(112)를 통해 터미널 서비스를 제공한다.
In addition, in the Windows system-based computer 100 environment, the video adapter 123, the USB interface 124, and the serial port interface 125 are provided in the virtual desktop protocol stack 122 under the Windows system library included in the OS layer 120. The terminal collects data of an input / output interface such as an audio adapter 126 and provides a terminal service through the terminal service connection process 112 of the application layer 110.

도 2는 본 발명의 일 실시예에 따른 가상화 서버의 구성을 나타내는 블록도이다.2 is a block diagram showing the configuration of a virtualization server according to an embodiment of the present invention.

도 2를 참조하면, 가상화 서버(1000)는 복수의 가상 머신(1100a, 1100b), 가상화 계층(1200), 호스트 OS 계층(1300) 및 하드웨어 계층(1400)을 포함할 수 있다.Referring to FIG. 2, the virtualization server 1000 may include a plurality of virtual machines 1100a and 1100b, a virtualization layer 1200, a host OS layer 1300, and a hardware layer 1400.

서버 가상화 환경에 적용되는 가상화 서버(1000)에서는 복수의 가상 머신(1100a 및 1100b)이 동작한다. 도 2에서는 가상화 서버(1000)가 제1 가상 머신(1100a) 및 제2 가상 머신(1100b)만 포함하는 것으로 예를 들어 도시하였으나, 이는 설명의 편의를 위한 일 예일 뿐이며, 가상화 서버(1000)에 포함되는 가상 머신의 수는 한정되지 않는다.In the virtualization server 1000 applied to a server virtualization environment, a plurality of virtual machines 1100a and 1100b operate. In FIG. 2, for example, the virtualization server 1000 includes only the first virtual machine 1100a and the second virtual machine 1100b. However, this is only an example for convenience of description and may be applied to the virtualization server 1000. The number of virtual machines included is not limited.

각 가상 머신(1100a 및 1100b)에서 동작하는 애플리케이션 계층(1110) 및 게스트 윈도우 운영체제 계층(1120)은 도 1에 도시한 일반 컴퓨터(100)에 탑재되는 해당 구성요소(즉 도 1의 110 및 120)와 호환성을 갖고, 코드의 수정 없이 동작한다.The application layer 1110 and guest window operating system layer 1120 operating in each of the virtual machines 1100a and 1100b have corresponding components (i.e. 110 and 120 of FIG. 1) mounted on the general computer 100 shown in FIG. Compatible with and works without code modification.

그러나, 각 가상 머신(1100a 및 1100b)의 입출력 인터페이스인 비디오 어댑터(1123), USB 인터페이스(1124), 시리얼 포트 인터페이스(1125) 및 오디오 어댑터(1126) 등은 가상화 계층(1200)의 라우팅을 통해서만 하드웨어 계층(1400)에 접근할 수 있다.However, the video adapter 1123, the USB interface 1124, the serial port interface 1125, the audio adapter 1126, and the like, which are input / output interfaces of each of the virtual machines 1100a and 1100b, are hardware only through the routing of the virtualization layer 1200. Layer 1400 may be accessed.

가상화 계층(1200)에 위치한 가상 입출력 하드웨어 자원(1210)은 호스트 컴퓨터의 메모리 주소 공간으로, 상기 가상 입출력 하드웨어 자원(1210)에는 도 1에 도시한 컴퓨터(100)의 하드웨어 계층(130)에 전달되는 데이터와 동일한 데이터가 저장된다.The virtual input / output hardware resource 1210 located in the virtualization layer 1200 is a memory address space of a host computer, and the virtual input / output hardware resource 1210 is transferred to the hardware layer 130 of the computer 100 shown in FIG. 1. The same data as the data is stored.

본 발명의 일 실시예에 따른 가상화 서버(1000)는 복수의 가상 머신 들(1100a 및 1100b)에게 각각의 터미널 서비스를 제공하기 위해, 가상 입출력 하드웨어 자원(1210)의 입출력 데이터를 수집 및 처리하는 가상 데스크탑 프로토콜 데이터 관리 풀(1220) 및 터미널 서비스의 연결 및 제공을 위한 가상 데스크탑 연결 및 전송 관리 서버 풀(1230)을 이용한다.The virtualization server 1000 according to an embodiment of the present invention collects and processes input / output data of the virtual input / output hardware resource 1210 to provide terminal services to the plurality of virtual machines 1100a and 1100b. It utilizes a desktop protocol data management pool 1220 and a virtual desktop connection and transport management server pool 1230 for connection and provision of terminal services.

즉, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에서 수집된 데이터는 입출력 장치 속성 별로 데이터를 나누어서 부호화 혹은 역부호화하고, 가상 데스크탑 연결 및 전송 관리 서버 풀(1230)을 통해 각각의 원격 사용자 클라이언트로 전달된다.That is, data collected from the virtual desktop protocol data management pool 1220 is encoded or decoded by dividing the data according to the input / output device attributes, and transmitted to each remote user client through the virtual desktop connection and the transmission management server pool 1230. .

본 발명은 가상화 서버의 터미널 서비스 제공에 병목 지점이 되는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)의 태스크를 부분적으로 호스트 OS 계층(1300)의 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)를 통해 가상 데스크탑 프로토콜 가속 장치(1410)가 처리하도록 한다.
The present invention partially accelerates the tasks of the virtual desktop protocol data management pool 1220, which is a bottleneck in providing terminal services of the virtualization server, through the virtual desktop protocol accelerator device interface 1310 of the host OS layer 1300. Let device 1410 process it.

도 3은 도 2에 도시한 가상 데스크탑 프로토콜 가속 장치의 보다 상세한 구성을 나타내는 블록도이다.FIG. 3 is a block diagram illustrating a more detailed configuration of the virtual desktop protocol accelerator shown in FIG. 2.

도 3을 참조하면, 가상 데스크탑 프로토콜 가속 장치(1410)는 가상 데스크탑 프로토콜 가속 전용 프로세서(1411), 가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412), 가상 데스크탑 프로토콜 데이터 전송 명령 풀(1413), 그래픽 태스크 풀(1414), 오디오 태스크 풀(1415), USB 태스크 풀(1416) 및 가상 데스크탑 프로토콜 가속 전용 메모리(1417)를 포함하고, 상기 구성요소들은 가상 데스크탑 프로세서 로컬 버스를 통해 연결된다.Referring to FIG. 3, the virtual desktop protocol accelerator 1410 may include a virtual desktop protocol acceleration dedicated processor 1411, a virtual desktop protocol task attribute command pool 1412, a virtual desktop protocol data transfer command pool 1413, and a graphic task pool. 1414, audio task pool 1415, USB task pool 1416, and virtual desktop protocol acceleration dedicated memory 1417, which components are connected via a virtual desktop processor local bus.

가상 데스크탑 프로토콜 가속 전용 프로세서(1411)는 가상 데스크탑 프로토콜 태스크 속성 설정 및 삭제 명령을 처리하고, 그래픽 부호화, 오디오 및 USB 채널 부호화 또는 역부호화 명령을 처리하며 데이터 송수신을 제어한다.The virtual desktop protocol acceleration dedicated processor 1411 processes virtual desktop protocol task attribute setting and deletion instructions, processes graphic encoding, audio and USB channel encoding or decoding instructions, and controls data transmission and reception.

또한, 가상 데스크탑 프로토콜 가속 전용 프로세서(1411)는 호스트 프로세서(200)로부터 명령 및/또는 데이터를 전달받고, 전달받은 명령 및/또는 데이터에 기초하여 가상 데스크탑 프로토콜 가속 장치(1410)의 다른 구성요소들을 제어한다. In addition, the virtual desktop protocol acceleration dedicated processor 1411 receives instructions and / or data from the host processor 200, and controls other components of the virtual desktop protocol acceleration apparatus 1410 based on the received instructions and / or data. To control.

가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412)은 가상 데스크탑 프로토콜 태스크 속성 설정 및 삭제 명령을 저장한다.The virtual desktop protocol task attribute command pool 1412 stores virtual desktop protocol task attribute set and delete commands.

가상 데스크탑 태스크 속성 명령 풀(1412)에 저장된 명령은 가상 데스크탑 프로토콜 전용 프로세서(1411)에 의해 처리되어 그래픽 태스크 풀(1414), 오디오 태스크 풀(1415) 및 USB 태스크 풀(1416) 각각에 해당 태스크 처리의 명령을 저장한다.Commands stored in the virtual desktop task attribute command pool 1412 are processed by the virtual desktop protocol dedicated processor 1411 to process the corresponding tasks for the graphics task pool 1414, the audio task pool 1415, and the USB task pool 1416, respectively. Save the command.

가상 데스크탑 프로토콜 데이터 전송 명령 풀(1413)은 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 데이터의 인출 명령을 저장한다.The virtual desktop protocol data transfer command pool 1413 stores a command for fetching data to be processed by the virtual desktop protocol accelerator 1410.

그래픽 태스크 풀(1414)은 가상 데스크탑 프로토콜의 태스크 속성 중 그래픽 태스크 처리 명령을 저장한다.The graphic task pool 1414 stores graphic task processing instructions among task attributes of the virtual desktop protocol.

오디오 태스크 풀(1415)은 가상 데스크탑 프로토콜의 태스크 속성 중 오디오 태스크 처리 명령을 저장한다.The audio task pool 1415 stores audio task processing instructions among task attributes of the virtual desktop protocol.

USB 태스크 풀(1416)은 가상 데스크탑 프로토콜의 태스크 속성 중 USB 태스크 처리 명령을 저장한다.The USB task pool 1416 stores USB task processing instructions among task attributes of the virtual desktop protocol.

그래픽 태스크 풀(1414), 오디오 태스크 풀(1315), 그리고 USB 태스크 풀(1416)에 저장된 명령은 가상 데스크탑 프로토콜 데이터 전송 명령 풀(1413)에 저장된 데이터 전송 명령을 통해서 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 태스크의 데이터가 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에 복사가 완료되는 시점에 해당 태스크 풀(1414, 1415, 1416)의 명령을 수행한다. 각 풀의 명령은 가상 머신 구분자와 함께 저장되어 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에서 각 가상 머신의 정보를 인출하는 인덱스로 쓰인다.The commands stored in the graphics task pool 1414, the audio task pool 1315, and the USB task pool 1416 are transferred to the virtual desktop protocol accelerator 1410 via data transfer commands stored in the virtual desktop protocol data transfer command pool 1413. At the time point at which data of the task to be processed is copied to the virtual desktop protocol acceleration dedicated memory 1417 is completed, the command of the corresponding task pool 1414, 1415, and 1416 is performed. Instructions in each pool are stored with a virtual machine identifier and used as an index to retrieve the information of each virtual machine from the virtual desktop protocol acceleration dedicated memory 1417.

가상 데스크탑 프로토콜 가속 전용 메모리(1417)는 가상 데스크탑 프로토콜 가속 전용 프로세서(1411)에서 처리할 태스크의 속성 및 해당 태스크의 데이터, 해당 태스크의 처리 결과 데이터를 저장한다.The virtual desktop protocol acceleration dedicated memory 1417 stores attributes of a task to be processed by the virtual desktop protocol acceleration dedicated processor 1411, data of the task, and processing result data of the task.

가상 데스크탑 프로토콜 가속 장치(1410)는 복수의 가상 머신(1100a, 1100b)에서 접근되기 때문에 가상 머신 구분자를 이용하여 각각의 가상 데스크탑을 구분한다. 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에는 가상 머신의 구분자와, 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 데이터의 인출 주소 및 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리된 데이터가 전송될 호스트 메모리의 주소가 저장된다.
Since the virtual desktop protocol accelerator 1410 is accessed by the plurality of virtual machines 1100a and 1100b, the virtual desktop protocol accelerator 1410 divides each virtual desktop using a virtual machine identifier. The virtual desktop protocol acceleration dedicated memory 1417 includes a delimiter of a virtual machine, a fetch address of data to be processed by the virtual desktop protocol accelerator 1410, and a host to which data processed by the virtual desktop protocol accelerator 1410 is to be transmitted. The address of the memory is stored.

도 4는 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치의 구동 및 태스크 속성 설정 과정을 나타내는 흐름도이다.4 is a flowchart illustrating a process of driving a virtual desktop protocol acceleration device and setting task properties in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.

도 2 내지 도 4를 참조하면, 먼저 가상화 계층(1200)의 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 호스트 OS 계층(1300)의 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)을 활성화시킨다(단계 310). 여기서, 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 복수의 가상 머신의 가상 데스크탑 프로토콜 가속에 사용되기 위해 하나의 프로세스에 선점되어서는 안된다. 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 의해 활성화됨과 동시에 가상 데스크탑 프로토콜 가속 장치(1410)를 활성화시킨다.2 to 4, first, the virtual desktop protocol data management pool 1220 of the virtualization layer 1200 activates the virtual desktop protocol accelerator device 1310 of the host OS layer 1300 (step 310). Here, the virtual desktop protocol accelerator interface 1310 should not be preempted in one process to be used for virtual desktop protocol acceleration of a plurality of virtual machines. The virtual desktop protocol accelerator interface 1310 is activated by the virtual desktop protocol data management pool 1220 and simultaneously activates the virtual desktop protocol accelerator 1410.

이후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)를 통해 하드웨어 계층(1400)의 가상 데스크탑 프로토콜 가속 장치(1410)의 존재 유무와 동작을 확인한다(단계 320).Thereafter, the virtual desktop protocol data management pool 1220 checks the existence and operation of the virtual desktop protocol accelerator 1410 of the hardware layer 1400 through the virtual desktop protocol accelerator device 1310 (step 320).

이후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 가상 테스크탑 프로토콜 가속 장치(1410)가 존재하고 정상적으로 동작하는 것으로 확인되면, 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 태스크의 속성을 결정하고, 해당 가상 머신의 구분자와 가속 태스크의 속성을 인자로 하여 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 가상 데스크탑 프로토콜 태스크 속성 설정 명령을 전달한다(단계 330). 여기서, 가속할 태스크의 속성에는 그래픽의 부호화, 오디오의 출력 부호화 및 입력 복호화 또는 USB 출력 부호화 및 입력 복호화를 포함할 수 있고, 가상 데스크탑 프로토콜 가속 장치(1410)에서 이와 같은 속성을 선택적으로 처리할 수 있다.Subsequently, when it is determined that the virtual desktop protocol accelerator 1410 exists and operates normally, the virtual desktop protocol data management pool 1220 determines attributes of a task to be processed by the virtual desktop protocol accelerator 1410, and The virtual desktop protocol task attribute setting command is transmitted to the virtual desktop protocol accelerator device interface 1310 using the identifier of the virtual machine and the attributes of the acceleration task as parameters (step 330). Here, the attributes of the task to be accelerated may include encoding of graphics, output encoding and input decoding of audio, or USB output encoding and input decoding, and the virtual desktop protocol accelerator 1410 may selectively process such attributes. have.

가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)로부터 제공된 속성 및 명령을 가상 데스크탑 프로토콜 가속 장치(1410)에 전달한다(단계 340). 여기서, 가상 데스크탑 프로토콜 가속 인터페이스(1310)는 가상 머신에 대한 자료구조를 생성하여 가상 머신 구분자와 태스크 속성을 저장한다. 또한, 가상 데스크탑 프로토콜 가속 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)에 인터럽트를 통해 상기 명령을 하달하고, 가상 데스크탑 프로토콜 가속 장치(1410)로부터 제공된 인터럽트를 통해 상기 명령 처리 시점을 인지한다. 또한, 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)으로부터 상기 명령 처리 결과 수신한 후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 처리 결과를 회신한다.The virtual desktop protocol accelerator interface 1310 passes the attributes and commands provided from the virtual desktop protocol data management pool 1220 to the virtual desktop protocol accelerator 1410 (step 340). Here, the virtual desktop protocol acceleration interface 1310 generates a data structure for the virtual machine to store the virtual machine identifier and the task attribute. In addition, the virtual desktop protocol acceleration interface 1310 issues the command to the virtual desktop protocol accelerator 1410 through an interrupt, and recognizes the command processing time point through the interrupt provided from the virtual desktop protocol accelerator 1410. In addition, the virtual desktop protocol accelerator device 1310 receives the command processing result from the virtual desktop protocol accelerator 1410 and then returns the processing result to the virtual desktop protocol data management pool 1220.

가상 데스크탑 프로토콜 가속 장치(1410)는 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 전달받은 명령을 가상 머신의 구분자와 함께 가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412)에 저장하고, 인자로 하여 넘겨받은 태스크 속성을 가상 머신의 구분자를 인덱스로 하여 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에 저장한다. 이후, 가상 데스크탑 프로토콜 가속 장치(1410)는 상기 명령의 수행 결과를 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 전달한다(단계 350).
The virtual desktop protocol accelerator 1410 stores the command received from the virtual desktop protocol accelerator interface 1310 in the virtual desktop protocol task attribute command pool 1412 together with the identifier of the virtual machine, and passes the task attribute passed as an argument. Is stored in the virtual desktop protocol acceleration dedicated memory 1417 using the identifier of the virtual machine as an index. Thereafter, the virtual desktop protocol accelerator 1410 transmits the execution result of the command to the virtual desktop protocol accelerator interface 1310 (step 350).

도 5는 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치에 가속 데이터를 전달 및 처리하기 위한 동작을 나타내는 흐름도이다.5 is a flowchart illustrating an operation for transferring and processing acceleration data to a virtual desktop protocol acceleration device in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.

먼저, 가상화 계층(1200)의 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 가상 입출력 하드웨어 자원(1210) 중 하드웨어 계층(1400)의 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 태스크의 속성, 상기 태스크가 처리할 데이터가 저장된 호스트의 메모리 주소, 데이터 크기 및 데이터 처리 결과를 저장할 호스트의 메모리 주소를 가상 데스크탑 데이터 전송 명령과 함께 호스트 OS 계층(1300)의 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)으로 전송한다(단계 410).First, the virtual desktop protocol data management pool 1220 of the virtualization layer 1200 may include attributes of a task to be processed by the virtual desktop protocol accelerator 1410 of the hardware layer 1400 among the virtual input / output hardware resources 1210. The memory address of the host storing the data to be processed, the data size, and the memory address of the host to store the data processing result are transmitted to the virtual desktop protocol accelerator device 1310 of the host OS layer 1300 together with the virtual desktop data transfer command ( Step 410).

가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)로부터 상기 단계 410에서 제공받은 인자의 유효성을 파악하고 상기 인자가 유효할 경우, 도 4에 도시한 과정을 통해서 저장한 가상 머신의 구분자와 상기 인자를 가상 데스크탑 프로토콜 가속 장치(1410)에 전달한다(단계 420). 또한 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)에서 태스크 처리가 완료되기를 기다린 후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에서 요청한 모든 태스크가 가상 데스크탑 프로토콜 가속 장치(1410)에서 완료되어 가상 데스크탑 프로토콜 가속 장치(1410)로부터 완료 인터럽트와 처리 결과를 받은 경우, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 이를 회신한다.The virtual desktop protocol accelerator interface 1310 determines the validity of the argument provided in step 410 from the virtual desktop protocol accelerator 1410 and, if the argument is valid, stores the virtual machine through the process illustrated in FIG. 4. The delimiter and the argument are passed to the virtual desktop protocol accelerator 1410 (step 420). In addition, the virtual desktop protocol accelerator interface 1310 waits for task processing to be completed in the virtual desktop protocol accelerator 1410, and then all tasks requested by the virtual desktop protocol data management pool 1220 are virtual desktop protocol accelerator 1410. If it is completed at and received the completion interrupt and the processing result from the virtual desktop protocol accelerator 1410, it returns to the virtual desktop protocol data management pool 1220.

가상 데스크탑 프로토콜 가속 장치(1410)은 단계 420에서 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 제공받은 데이터 전송 및 처리 명령을 처리한 후, 인터럽트를 통해 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로 처리 결과를 회신한다. 여기서, 가상 데스크탑 프로토콜 가속 장치(1410)는 제공된 가상 머신의 구분자를 이용하여 처리할 태스크의 속성을 검색하고, 처리할 데이터의 주소 및 크기 정보를 이용하여 해당 데이터를 인출한 후, 가상 데스크탑 프로토콜 태스크 속정 명령 풀(1412)에 설정된 속성별 전달받은 데이터를 처리하고, 가속 처리된 데이터는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)의 메모리 주소 공간에 전달한다.
The virtual desktop protocol accelerator 1410 processes the data transfer and processing command provided from the virtual desktop protocol accelerator interface 1310 in step 420, and then passes the processing result to the virtual desktop protocol accelerator device 1310 through an interrupt. Reply. Here, the virtual desktop protocol accelerator 1410 retrieves attributes of a task to be processed by using a separator of a provided virtual machine, retrieves the corresponding data by using address and size information of the data to be processed, and then the virtual desktop protocol task. The received data for each attribute set in the attribute command pool 1412 is processed, and the accelerated data is transferred to the memory address space of the virtual desktop protocol data management pool 1220.

도 6은 본 발명의 일 실시예에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법에서 가상 데스크탑 프로토콜 가속 장치에 설정된 가속 태스크의 속성을 삭제하기 위한 동작을 나타내는 흐름도이다.6 is a flowchart illustrating an operation for deleting an attribute of an acceleration task set in a virtual desktop protocol acceleration device in a server virtualization-based virtual desktop protocol acceleration method according to an embodiment of the present invention.

도 6을 참조하면, 먼저 가상화 계층(1200)의 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 하드웨어 계층(1400)의 가상 데스크탑 프로토콜 가속 장치(1410)에 설정된 가속 데이터 속성 삭제 명령을 호스트 OS 계층(1300)의 가상 데스크탑 프로토콜 가속 인터페이스(1310)에 전달한다(단계 510).Referring to FIG. 6, the virtual desktop protocol data management pool 1220 of the virtualization layer 1200 first issues an acceleration data attribute delete command set in the virtual desktop protocol accelerator 1410 of the hardware layer 1400. The virtual desktop protocol acceleration interface 1310 (step 510).

가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)로부터 상기 가속 데이터 속성 삭제 명령을 제공받고, 가상 데스크탑 프로토콜 가속 장치(1410)에 상기 명령을 전달한 후, 인터럽트를 통해 가상 데스크탑 프로토콜 가속 장치(1410)의 명령 수행 결과를 제공받고, 도 4에 도시한 과정을 통해 생성된 가상 머신의 자료구조를 삭제하고, 이를 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 회신한다(단계 520).The virtual desktop protocol accelerator interface 1310 is provided with the command to delete the accelerated data attribute from the virtual desktop protocol data management pool 1220, transmits the command to the virtual desktop protocol accelerator 1410, and then interrupts the virtual desktop. After receiving the command execution result of the protocol accelerator device 1410, the data structure of the virtual machine created through the process shown in FIG. 4 is deleted and returned to the virtual desktop protocol data management pool 1220 (step 520). .

가상 데스크탑 프로토콜 가속 장치(1410)는 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 제공된 가속 데이터 속성 삭제 명령을 수행한 후, 인터럽트를 통해 상기 명령 처리 시점을 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 통보한다(단계 530).
The virtual desktop protocol accelerator 1410 performs an acceleration data attribute delete command provided from the virtual desktop protocol accelerator interface 1310, and then notifies the virtual desktop protocol accelerator device interface 1310 of the command processing time point through an interrupt. (Step 530).

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. It will be possible.

1000 : 가상화 서버
1100a, 1100b : 가상 머신
1200 : 가상화 계층
1220 : 가상 데스크탑 프로토콜 데이터 관리 풀
1300 : 호스트 OS 계층
1310 : 가상 데스크탑 프로토콜 가속 장치 인터페이스
1400 : 하드웨어 계층
1410 : 가상 데스크탑 프로토콜 가속 장치
1411 : 가상 데스크탑 프로토콜 가속 전용 프로세서
1412 : 가상 데스크탑 프로토콜 태스크 속성 명령 풀
1413 : 가상 데스크탑 프로토콜 데이터 전송 명령 풀
1414 : 그래픽 태스크 풀
1415 : 오디오 태스크 풀
1416 : USB 태스크 풀
1417 : 가상 데스크탑 프로토콜 가속 전용 메모리
1000: Virtualization Server
1100a, 1100b: virtual machine
1200: virtualization layer
1220: Virtual Desktop Protocol Data Management Pool
1300: host OS layer
1310: Virtual Desktop Protocol Accelerator Interface
1400: hardware layer
1410: virtual desktop protocol accelerator
1411: dedicated processor for virtual desktop protocol acceleration
1412: Virtual Desktop Protocol Task Properties Command Pool
1413: Virtual Desktop Protocol Data Transfer Command Pool
1414: Graphics Task Pool
1415: audio task pool
1416: USB Task Pool
1417: dedicated memory for virtual desktop protocol acceleration

Claims (1)

가상 데스크탑 프토토롤 가속 장치의 가상 데스크탑 프로토콜 가속 방법에 있어서,
상위 계층으로부터 제공된 가상 머신 구분자에 기초하여 처리할 태스크의 속성을 검색하는 단계;
상위 계층으로부터 제공된 처리 데이터 정보에 기초하여 처리할 해당 데이터를 인출하는 단계; 및
검색된 태스크 속성에 기초하여 해당 데이터를 처리하고, 처리된 데이터를 상위 계층에 전달하는 단계를 포함하는 가상 데스크탑 프로토콜 가속 방법.
In the virtual desktop protocol acceleration method of the virtual desktop protocol accelerator,
Retrieving an attribute of a task to be processed based on a virtual machine identifier provided from a higher layer;
Extracting corresponding data to be processed based on the processing data information provided from the upper layer; And
Processing the corresponding data based on the retrieved task attributes, and delivering the processed data to a higher layer.
KR1020100125859A 2010-12-09 2010-12-09 Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same KR101361838B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100125859A KR101361838B1 (en) 2010-12-09 2010-12-09 Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100125859A KR101361838B1 (en) 2010-12-09 2010-12-09 Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same

Publications (2)

Publication Number Publication Date
KR20120064575A true KR20120064575A (en) 2012-06-19
KR101361838B1 KR101361838B1 (en) 2014-02-11

Family

ID=46684653

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100125859A KR101361838B1 (en) 2010-12-09 2010-12-09 Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same

Country Status (1)

Country Link
KR (1) KR101361838B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432751B1 (en) * 2012-12-18 2014-08-22 서강대학교산학협력단 Load balancing method and system for hadoop MapReduce in the virtual environment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108206842B (en) * 2016-12-16 2020-09-15 广州杰赛科技股份有限公司 Cloud desktop remote access method and system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009009253A (en) * 2007-06-27 2009-01-15 Renesas Technology Corp Program execution method, program, and program execution system
US8713569B2 (en) * 2007-09-26 2014-04-29 Intel Corporation Dynamic association and disassociation of threads to device functions based on requestor identification
CN102314377B (en) * 2010-06-30 2014-08-06 国际商业机器公司 Accelerator and method thereof for supporting virtual machine migration

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101432751B1 (en) * 2012-12-18 2014-08-22 서강대학교산학협력단 Load balancing method and system for hadoop MapReduce in the virtual environment

Also Published As

Publication number Publication date
KR101361838B1 (en) 2014-02-11

Similar Documents

Publication Publication Date Title
US10552348B2 (en) USB device access method, apparatus and system, a terminal, and a server
US8405666B2 (en) Saving, transferring and recreating GPU context information across heterogeneous GPUs during hot migration of a virtual machine
US10057364B2 (en) Method and apparatus for remotely running application program
JP7220163B2 (en) Method and apparatus for hardware virtualization
US9063793B2 (en) Virtual server and virtual machine management method for supporting zero client by providing host interfaces from classified resource pools through emulation or direct connection modes
US10120705B2 (en) Method for implementing GPU virtualization and related apparatus, and system
US8850090B2 (en) USB redirection for read transactions
US9544179B2 (en) Accelerating USB redirection over a network
US20180219797A1 (en) Technologies for pooling accelerator over fabric
US11792272B2 (en) Establishment of socket connection in user space
CN115988218B (en) Virtualized video encoding and decoding system, electronic equipment and storage medium
CN111679911B (en) Management method, device, equipment and medium of GPU card in cloud environment
WO2023082716A1 (en) Method and apparatus for operating android application in linux system, and device
US10873630B2 (en) Server architecture having dedicated compute resources for processing infrastructure-related workloads
WO2022143714A1 (en) Server system, and virtual machine creation method and apparatus
US10791103B2 (en) Adapting remote display protocols to remote applications
KR20140027741A (en) Application service providing system and method, server apparatus and client apparatus for application service
CN115988217A (en) Virtualized video coding and decoding system, electronic equipment and storage medium
CN116582438B (en) Virtualized video encoding and decoding system and method, electronic equipment and storage medium
CN116320469B (en) Virtualized video encoding and decoding system and method, electronic equipment and storage medium
US20120166585A1 (en) Apparatus and method for accelerating virtual desktop
US20140237017A1 (en) Extending distributed computing systems to legacy programs
KR101361838B1 (en) Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same
US20230153153A1 (en) Task processing method and apparatus
US20140156736A1 (en) Apparatus and method for managing threads to perform divided execution of software

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170124

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190125

Year of fee payment: 6