KR101361838B1 - Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same - Google Patents
Method for accelerating virtual desktop protocol based on server virtualization and virtualization server for performing the same Download PDFInfo
- Publication number
- KR101361838B1 KR101361838B1 KR1020100125859A KR20100125859A KR101361838B1 KR 101361838 B1 KR101361838 B1 KR 101361838B1 KR 1020100125859 A KR1020100125859 A KR 1020100125859A KR 20100125859 A KR20100125859 A KR 20100125859A KR 101361838 B1 KR101361838 B1 KR 101361838B1
- Authority
- KR
- South Korea
- Prior art keywords
- virtual desktop
- task
- desktop protocol
- attribute
- virtual
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram 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
서버 가상화 환경에서 가상화 서버의 처리 부하를 경감시킬 수 있는 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법이 개시된다. 가상 데스크탑 프로토콜 가속 방법은 가상 데스크탑 프로토콜 가속 장치에서 처리할 태스크 정보를 결정하고, 결정된 상기 태스크 정보를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하면, 상기 가상 데스크탑 프로토콜 가속 장치는 제공받은 태스크 정보에 기초하여 태스크를 처리한다. 따라서, 가상화 서버의 프로세서의 처리 부하를 경감시킬 수 있고, 이를 통해 가상화 서버의 전체적인 처리 성능을 향상시킬 수 있고, 가상화 서버로부터 가상 데스크탑을 제공받는 사용자 터미털의 지연 시간을 만족시킬 수 있다.A server virtualization-based virtual desktop protocol acceleration method for reducing the processing load of a virtual server in a server virtualization environment is disclosed. In the virtual desktop protocol acceleration method, the task information to be processed in the virtual desktop protocol accelerator is determined, and the determined task information is transmitted to the virtual desktop protocol accelerator, and the virtual desktop protocol accelerator is based on the received task information. To process Therefore, the processing load of the processor of the virtualization server can be reduced, thereby improving the overall processing performance of the virtualization server, and satisfying the delay time of the user terminal provided with the virtual desktop from the virtualization server.
Description
본 발명은 서버 가상화 환경의 가상 데스크탑 터미널 서비스에 관한 것으로, 더욱 상세하게는 가상화 서버의 처리 부하를 경감시킬 수 있는 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법 및 이를 수행하는 장치에 관한 것이다.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 and apparatus for performing the same that can reduce the processing load of the 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 데이터 읽기 등) 반응 시간이 짧아야 한다. 그러나 네트워크 대역폭은 한정되어 있고, 네트워크를 통해 전송되는 데스크탑 프로토콜의 데이터는 용량이 매우 크기 때문에 사용자 터미널에서 지연 시간을 만족시키기 위해서 종래의 다양한 가상 데스크탑 프로토콜에는 압축 등과 같은 소프트웨어적인 가속 기능을 포함하고 있다.To provide a remote user experience similar to using a local computer in Virtual Desktop Terminal Services, the output of the host computer compared to the input performed on the user's terminal (for example, a mouse, keyboard, tablet, microphone, USB data write, etc.). The response time (eg screen, audio, USB data read, etc.) 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.
Another object of the present invention is to provide a virtualization server that can reduce the processing load for virtual desktop terminal services in a server virtualization environment.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다. The technical objects of the present invention are not limited to the technical matters mentioned above, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법은 가상 데스크탑 프로토콜 가속 장치에서 처리할 태스크 정보를 결정하는 단계와, 결정된 상기 태스크 정보를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하는 단계 및 상기 가상 데스크탑 프로토콜 가속 장치가 제공받은 태스크 정보에 기초하여 태스크를 처리하는 단계를 포함한다.
여기서, 상기 가상 데스크탑 프로토콜 가속 장치에서 처리할 태스크 정보를 결정하는 단계는, 상기 태스크의 속성, 상기 태스크가 처리할 데이터가 저장된 메모리 주소, 상기 데이터의 크기, 상기 데이터의 처리 결과를 저장할 메모리 주소 중 적어도 하나의 인자를 결정할 수 있다.
여기서, 상기 결정된 상기 태스크 정보를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하는 단계는, 상기 적어도 하나의 인자 및 상기 태스크에 상응하는 가상 머신의 구분자를 상기 가상 데스크탑 프로토콜 가속 장치에 전달할 수 있다.
여기서, 상기 가상 데스크탑 프로토콜 가속 장치가 제공받은 태스크 정보에 기초하여 태스크를 처리하는 단계는, 상기 가상 테스크탑 프로토콜 가속 장치가 상기 제공된 가상 머신의 구분자에 기초하여 처리할 태스크의 속성을 검색하는 단계와, 상기 제공된 적어도 하나의 인자를 이용하여 처리할 데이터를 인출하는 단계 및 상기 인출한 데이터를 속성에 따라 처리하는 단계를 포함할 수 있다.
여기서, 상기 가상 데스크탑 프토토콜 가속 방법은, 상기 가상 데스크탑 프로토콜 가속 장치에 설정된 태스크 속성의 삭제를 지시하는 속성 삭제 명령을 상기 가상 데스크탑 프로토콜 가속 장치에 제공하는 단계 및 상기 가상 데스크탑 프로토콜 가속 장치가 제공된 상기 속성 삭제 명령에 기초하여 상기 설정된 태스크 속성을 삭제하는 단계를 더 포함할 수 있다.
또한, 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 가상화 서버는, 가속할 태스크의 속성을 결정하고, 결정된 상기 태스크의 속성과 상기 가속할 태스크에 상응하는 가상 머신 구분자를 포함하는 태스크 속성 설정 명령을 제공하는 가상화부 및 제공된 상기 태스크 속성 설정 명령에 상응하여 태스크를 처리하는 가상 데스크탑 프로토콜 가속부를 포함한다.
여기서, 상기 가상화 서버는 상기 가상화부로부터 상기 태스크 속성 설정 명령을 제공받고 상기 태스크 속성 설정 명령에 기초하여 상기 가상 머신 구분자와 상기 가속할 태스크의 속성을 저장하며, 상기 태스크 속성 설정 명령을 상기 가상 데스크탑 프로토콜 가속부에 전달하고, 상기 가상 데스크탑 프로토콜 가속부로부터 제공된 태스크 종료 시점 정보를 상기 가상화부에 전달하는 인터페이스부를 더 포함할 수 있다.
여기서, 상기 가속할 태스크의 속성은 그래픽 부호화, 오디오 출력 부호화, 오디오 입력 복호화, USB 출력 부호화, USB 입력 복호화 중 적어도 하나를 포함할 수 있고, 상기 태스크 속성 설정 명령은 상기 가속할 태스크가 처리할 데이터가 저장된 메모리 주소, 상기 데이터의 크기, 상기 데이터의 처리 결과를 저장할 메모리 주소 중 적어도 하나의 인자를 포함할 수 있다.
여기서, 상기 가상 데스크탑 프로토콜 가속부는 상기 제공된 가상 머신의 구분자에 기초하여 처리할 태스크의 속성을 검색하고, 상기 제공된 적어도 하나의 인자를 이용하여 처리할 데이터를 인출한 후, 상기 인출한 데이터를 속성에 따라 상기 가속할 태스크를 처리할 수 있다. 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 determining the task information to be processed in the virtual desktop protocol acceleration device, and the determined task information to the virtual desktop Delivering to a protocol acceleration device and processing a task based on task information provided by the virtual desktop protocol acceleration device.
The determining of the task information to be processed in the virtual desktop protocol acceleration apparatus may include selecting among a property of the task, a memory address in which data to be processed by the task is stored, a size of the data, and a memory address in which the data processing result is stored. At least one factor can be determined.
The transmitting of the determined task information to the virtual desktop protocol accelerator may include passing the at least one factor and a delimiter of a virtual machine corresponding to the task to the virtual desktop protocol accelerator.
The processing of the task based on the task information provided by the virtual desktop protocol accelerator may include: retrieving an attribute of a task to be processed by the virtual desktop protocol accelerator based on the identifier of the provided virtual machine; The method may include retrieving data to be processed using the provided at least one factor and processing the retrieved data according to an attribute.
The virtual desktop protocol acceleration method may further include providing an attribute deletion command to the virtual desktop protocol accelerator for instructing deletion of a task attribute set in the virtual desktop protocol accelerator and providing the virtual desktop protocol accelerator. The method may further include deleting the set task attribute based on the attribute delete command.
In addition, the virtualization server according to an aspect of the present invention for achieving another object of the present invention, determining the attribute of the task to be accelerated, and includes a virtual machine identifier corresponding to the determined attribute of the task and the task to be accelerated And a virtualization unit providing a task attribute setting command and a virtual desktop protocol accelerator for processing a task in accordance with the provided task attribute setting command.
The virtual server receives the task property setting command from the virtualization unit, stores the virtual machine identifier and the property of the task to be accelerated based on the task property setting command, and sets the task property setting command to the virtual desktop. The processor may further include an interface unit configured to transfer a task termination time information provided from the virtual desktop protocol accelerator to the protocol accelerator.
The attribute of the task to be accelerated may include at least one of graphic encoding, audio output encoding, audio input decoding, USB output encoding, and USB input decoding, and the task attribute setting command may include data to be processed by the task to be accelerated. May include at least one of a stored memory address, a size of the data, and a memory address to store the processing result of the data.
Here, the virtual desktop protocol accelerator retrieves an attribute of a task to be processed based on the identifier of the provided virtual machine, retrieves data to be processed using the provided at least one factor, and then stores the retrieved data in an attribute. Accordingly, the task to be accelerated may be processed.
상술한 바와 같은 서버 가상화 기반 가상 데스크탑 프로토콜 가속 방법 및 가상화 서버에 따르면, 서버 가상화 환경에서 소프트웨어적으로 처리되는 가상 데스크탑 프로토콜 처리 태스크 중 일부를 선택적으로 전용 하드웨어인 가상 데스크탑 프로토콜 가속 장치에서 처리하도록 함으로써 가상화 서버의 프로세서의 처리 부하를 경감시킬 수 있고, 이를 통해 가상화 서버의 전체적인 처리 성능을 향상시킬 수 있고, 가상화 서버로부터 가상 데스크탑을 제공받는 사용자 터미털의 지연 시간을 만족시킬 수 있다.According to the server virtualization-based virtual desktop protocol acceleration method and virtualization server as described above, the virtual desktop protocol acceleration device, which is a dedicated hardware, selectively processes some of the virtual desktop protocol processing tasks that are processed in software in the server virtualization environment. It can reduce the processing load on the server's processor, improve 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 in this application is used only to describe a specific embodiment and is not intended to limit the invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "having" 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 to which this invention belongs. 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
윈도우 시스템 기반 컴퓨터(100) 환경에서는 사용자 데스크탑 및 애플리케이션(111)을 표현하기 위해 윈도의 기반 운영체제 계층(120)에 포함된 공통의 윈도우 시스템 라이브러리(121)를 통해 비디오 어댑터(123), USB 인터페이스(124), 시리얼 포트 인터페이스(125), 오디오 어댑터(126) 등의 입출력 인터페이스에 접근하고, 이를 통해 모니터(131), USB 장치(132), 키보드/마우스(133), 오디오 장치(134) 등의 입출력 하드웨어 장치와 통신한다. In the Windows system-based
또한, 윈도우 시스템 기반 컴퓨터(100) 환경에서는 운영체제 계층(120)에 포함된 윈도우 시스템 라이브러리 하부의 가상 데스크탑 프로토콜 스택(122)에서 비디오 어댑터(123), USB 인터페이스(124), 시리얼 포트 인터페이스(125), 오디오 어댑터(126) 등의 입출력 인터페이스의 데이터를 수집하여 애플리케이션 계층(110)의 터미널 서비스 연결 프로세스(112)를 통해 터미널 서비스를 제공한다.
In addition, in the Windows system-based
도 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
서버 가상화 환경에 적용되는 가상화 서버(1000)에서는 복수의 가상 머신(1100a 및 1100b)이 동작한다. 도 2에서는 가상화 서버(1000)가 제1 가상 머신(1100a) 및 제2 가상 머신(1100b)만 포함하는 것으로 예를 들어 도시하였으나, 이는 설명의 편의를 위한 일 예일 뿐이며, 가상화 서버(1000)에 포함되는 가상 머신의 수는 한정되지 않는다.In the
각 가상 머신(1100a 및 1100b)에서 동작하는 애플리케이션 계층(1110) 및 게스트 윈도우 운영체제 계층(1120)은 도 1에 도시한 일반 컴퓨터(100)에 탑재되는 해당 구성요소(즉 도 1의 110 및 120)와 호환성을 갖고, 코드의 수정 없이 동작한다.The
그러나, 각 가상 머신(1100a 및 1100b)의 입출력 인터페이스인 비디오 어댑터(1123), USB 인터페이스(1124), 시리얼 포트 인터페이스(1125) 및 오디오 어댑터(1126) 등은 가상화 계층(1200)의 라우팅을 통해서만 하드웨어 계층(1400)에 접근할 수 있다.However, the
가상화 계층(1200)에 위치한 가상 입출력 하드웨어 자원(1210)은 호스트 컴퓨터의 메모리 주소 공간으로, 상기 가상 입출력 하드웨어 자원(1210)에는 도 1에 도시한 컴퓨터(100)의 하드웨어 계층(130)에 전달되는 데이터와 동일한 데이터가 저장된다.The virtual input /
본 발명의 일 실시예에 따른 가상화 서버(1000)는 복수의 가상 머신 들(1100a 및 1100b)에게 각각의 터미널 서비스를 제공하기 위해, 가상 입출력 하드웨어 자원(1210)의 입출력 데이터를 수집 및 처리하는 가상 데스크탑 프로토콜 데이터 관리 풀(1220) 및 터미널 서비스의 연결 및 제공을 위한 가상 데스크탑 연결 및 전송 관리 서버 풀(1230)을 이용한다.The
즉, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에서 수집된 데이터는 입출력 장치 속성 별로 데이터를 나누어서 부호화 혹은 역부호화하고, 가상 데스크탑 연결 및 전송 관리 서버 풀(1230)을 통해 각각의 원격 사용자 클라이언트로 전달된다.That is, data collected from the virtual desktop protocol
본 발명은 가상화 서버의 터미널 서비스 제공에 병목 지점이 되는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)의 태스크를 부분적으로 호스트 OS 계층(1300)의 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)를 통해 가상 데스크탑 프로토콜 가속 장치(1410)가 처리하도록 한다.
The present invention partially accelerates the tasks of the virtual desktop protocol
도 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
가상 데스크탑 프로토콜 가속 전용 프로세서(1411)는 가상 데스크탑 프로토콜 태스크 속성 설정 및 삭제 명령을 처리하고, 그래픽 부호화, 오디오 및 USB 채널 부호화 또는 역부호화 명령을 처리하며 데이터 송수신을 제어한다.The virtual desktop protocol acceleration dedicated
또한, 가상 데스크탑 프로토콜 가속 전용 프로세서(1411)는 호스트 프로세서(200)로부터 명령 및/또는 데이터를 전달받고, 전달받은 명령 및/또는 데이터에 기초하여 가상 데스크탑 프로토콜 가속 장치(1410)의 다른 구성요소들을 제어한다. In addition, the virtual desktop protocol acceleration dedicated
가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412)은 가상 데스크탑 프로토콜 태스크 속성 설정 및 삭제 명령을 저장한다.The virtual desktop protocol task attribute
가상 데스크탑 태스크 속성 명령 풀(1412)에 저장된 명령은 가상 데스크탑 프로토콜 전용 프로세서(1411)에 의해 처리되어 그래픽 태스크 풀(1414), 오디오 태스크 풀(1415) 및 USB 태스크 풀(1416) 각각에 해당 태스크 처리 명령이 저장된다.Commands stored in the virtual desktop task
가상 데스크탑 프로토콜 데이터 전송 명령 풀(1413)은 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 데이터의 인출 명령을 저장한다.The virtual desktop protocol data transfer
그래픽 태스크 풀(1414)은 가상 데스크탑 프로토콜의 태스크 속성 중 그래픽 태스크 처리 명령을 저장한다.The
오디오 태스크 풀(1415)은 가상 데스크탑 프로토콜의 태스크 속성 중 오디오 태스크 처리 명령을 저장한다.The
USB 태스크 풀(1416)은 가상 데스크탑 프로토콜의 태스크 속성 중 USB 태스크 처리 명령을 저장한다.The
그래픽 태스크 풀(1414), 오디오 태스크 풀(1315), 그리고 USB 태스크 풀(1416)에 저장된 명령은 가상 데스크탑 프로토콜 데이터 전송 명령 풀(1413)에 저장된 데이터 전송 명령을 통해서 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 태스크의 데이터가 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에 복사가 완료되는 시점에 해당 태스크 풀(1414, 1415, 1416)의 명령을 수행한다. 각 풀의 명령은 가상 머신 구분자와 함께 저장되어 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에서 각 가상 머신의 정보를 인출하는 인덱스로 쓰인다.The commands stored in the
가상 데스크탑 프로토콜 가속 전용 메모리(1417)는 가상 데스크탑 프로토콜 가속 전용 프로세서(1411)에서 처리할 태스크의 속성 및 해당 태스크의 데이터, 해당 태스크의 처리 결과 데이터를 저장한다.The virtual desktop protocol acceleration dedicated
가상 데스크탑 프로토콜 가속 장치(1410)는 복수의 가상 머신(1100a, 1100b)에서 접근되기 때문에 가상 머신 구분자를 이용하여 각각의 가상 데스크탑을 구분한다. 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에는 가상 머신의 구분자와, 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 데이터의 인출 주소 및 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리된 데이터가 전송될 호스트 메모리의 주소가 저장된다.
Since the virtual
도 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
이후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)를 통해 하드웨어 계층(1400)의 가상 데스크탑 프로토콜 가속 장치(1410)의 존재 유무와 동작을 확인한다(단계 320).Thereafter, the virtual desktop protocol
이후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)은 가상 테스크탑 프로토콜 가속 장치(1410)가 존재하고 정상적으로 동작하는 것으로 확인되면, 상기 가상 데스크탑 프로토콜 가속 장치(1410)에서 처리할 태스크의 속성을 결정하고, 해당 가상 머신의 구분자와 가속 태스크의 속성을 인자로 하여 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 가상 데스크탑 프로토콜 태스크 속성 설정 명령을 전달한다(단계 330). 여기서, 가속할 태스크의 속성에는 그래픽의 부호화, 오디오의 출력 부호화 및 입력 복호화 또는 USB 출력 부호화 및 입력 복호화를 포함할 수 있고, 가상 데스크탑 프로토콜 가속 장치(1410)에서 이와 같은 속성을 선택적으로 처리할 수 있다.Subsequently, when it is determined that the virtual
가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)로부터 제공된 속성 및 명령을 가상 데스크탑 프로토콜 가속 장치(1410)에 전달한다(단계 340). 여기서, 가상 데스크탑 프로토콜 가속 인터페이스(1310)는 가상 머신에 대한 자료구조를 생성하여 가상 머신 구분자와 태스크 속성을 저장한다. 또한, 가상 데스크탑 프로토콜 가속 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)에 인터럽트를 통해 상기 명령을 하달하고, 가상 데스크탑 프로토콜 가속 장치(1410)로부터 제공된 인터럽트를 통해 상기 명령 처리 시점을 인지한다. 또한, 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)으로부터 상기 명령 처리 결과 수신한 후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 처리 결과를 회신한다.The virtual desktop
가상 데스크탑 프로토콜 가속 장치(1410)는 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 전달받은 명령을 가상 머신의 구분자와 함께 가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412)에 저장하고, 인자로 하여 넘겨받은 태스크 속성을 가상 머신의 구분자를 인덱스로 하여 가상 데스크탑 프로토콜 가속 전용 메모리(1417)에 저장한다. 이후, 가상 데스크탑 프로토콜 가속 장치(1410)는 상기 명령의 수행 결과를 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 전달한다(단계 350).
The virtual
도 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
가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)로부터 상기 단계 410에서 제공받은 인자의 유효성을 파악하고 상기 인자가 유효할 경우, 도 4에 도시한 과정을 통해서 저장한 가상 머신의 구분자와 상기 인자를 가상 데스크탑 프로토콜 가속 장치(1410)에 전달한다(단계 420). 또한 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 가속 장치(1410)에서 태스크 처리가 완료되기를 기다린 후, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에서 요청한 모든 태스크가 가상 데스크탑 프로토콜 가속 장치(1410)에서 완료되어 가상 데스크탑 프로토콜 가속 장치(1410)로부터 완료 인터럽트와 처리 결과를 받은 경우, 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 이를 회신한다.The virtual desktop
가상 데스크탑 프로토콜 가속 장치(1410)은 단계 420에서 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 제공받은 데이터 전송 및 처리 명령을 처리한 후, 인터럽트를 통해 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로 처리 결과를 회신한다. 여기서, 가상 데스크탑 프로토콜 가속 장치(1410)는 제공된 가상 머신의 구분자를 이용하여 처리할 태스크의 속성을 검색하고, 처리할 데이터의 주소 및 크기 정보를 이용하여 해당 데이터를 인출한 후, 가상 데스크탑 프로토콜 태스크 속성 명령 풀(1412)에 설정된 속성별 전달받은 데이터를 처리하고, 가속 처리된 데이터는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)의 메모리 주소 공간에 전달한다.
The virtual
도 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
가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)는 가상 데스크탑 프로토콜 데이터 관리 풀(1220)로부터 상기 가속 데이터 속성 삭제 명령을 제공받고, 가상 데스크탑 프로토콜 가속 장치(1410)에 상기 명령을 전달한 후, 인터럽트를 통해 가상 데스크탑 프로토콜 가속 장치(1410)의 명령 수행 결과를 제공받고, 도 4에 도시한 과정을 통해 생성된 가상 머신의 자료구조를 삭제하고, 이를 가상 데스크탑 프로토콜 데이터 관리 풀(1220)에 회신한다(단계 520).The virtual desktop
가상 데스크탑 프로토콜 가속 장치(1410)는 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)로부터 제공된 가속 데이터 속성 삭제 명령을 수행한 후, 인터럽트를 통해 상기 명령 처리 시점을 가상 데스크탑 프로토콜 가속 장치 인터페이스(1310)에 통보한다(단계 530).
The virtual
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
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 (9)
상기 가상 데스크탑 프로토콜 가속 장치에서 처리할 태스크의 속성, 상기 태스크가 처리할 데이터가 저장된 메모리 주소, 상기 데이터의 크기, 상기 데이터의 처리 결과를 저장할 메모리 주소 중 적어도 하나의 인자를 포함하는 태스크 정보를 결정하는 단계;
결정된 상기 태스크 정보를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하는 단계; 및
상기 가상 데스크탑 프로토콜 가속 장치가 제공받은 태스크 정보에 기초하여 태스크를 처리하는 단계를 포함하는 가상 데스크탑 프로토콜 가속 방법.In the virtual desktop protocol acceleration method performed in a virtualization server having a virtual desktop protocol acceleration device,
Determine the task information including at least one factor of a property of a task to be processed in the virtual desktop protocol accelerator, a memory address at which data to be processed by the task is stored, a size of the data, and a memory address at which the data processing result is to be stored; Making;
Delivering the determined task information to the virtual desktop protocol accelerator; And
And processing a task based on task information provided by the virtual desktop protocol accelerator.
상기 가상 데스크탑 프로토콜 가속 장치에서 처리할 태스크 정보를 결정하는 단계는,
상기 태스크의 속성으로 그래픽 부호화, 오디오 출력 부호화, 오디오 입력 복호화, USB 출력 부호화, USB 입력 복호화 중 적어도 하나를 포함하여 구성하는 것을 특징으로 하는 가상 데스크탑 프로토콜 가속 방법.The method according to claim 1,
Determining task information to be processed in the virtual desktop protocol accelerator,
And at least one of graphic encoding, audio output encoding, audio input decoding, USB output encoding, and USB input decoding as attributes of the task.
상기 결정된 상기 태스크 정보를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하는 단계는,
상기 적어도 하나의 인자 및 상기 태스크에 상응하는 가상 머신의 구분자를 상기 가상 데스크탑 프로토콜 가속 장치에 전달하는 것을 특징으로 하는 가상 데스크탑 프로토콜 가속 방법.The method according to claim 2,
Delivering the determined task information to the virtual desktop protocol acceleration device,
And transmitting the at least one factor and a separator of the virtual machine corresponding to the task to the virtual desktop protocol accelerator.
상기 가상 데스크탑 프로토콜 가속 장치가 제공받은 태스크 정보에 기초하여 태스크를 처리하는 단계는,
상기 가상 테스크탑 프로토콜 가속 장치가 상기 제공된 가상 머신의 구분자에 기초하여 처리할 태스크의 속성을 검색하는 단계;
상기 제공된 적어도 하나의 인자를 이용하여 처리할 데이터를 인출하는 단계; 및
상기 인출한 데이터를 속성에 따라 처리하는 단계를 포함하는 가상 데스크탑 프로토콜 가속 방법.The method according to claim 3,
Processing the task based on the task information provided by the virtual desktop protocol accelerator,
Retrieving an attribute of a task to be processed by the virtual desktop protocol accelerator based on the identifier of the provided virtual machine;
Retrieving data to be processed using the provided at least one factor; And
And processing the retrieved data according to an attribute.
상기 가상 데스크탑 프토토콜 가속 방법은
상기 가상 데스크탑 프로토콜 가속 장치에 설정된 태스크 속성의 삭제를 지시하는 속성 삭제 명령을 상기 가상 데스크탑 프로토콜 가속 장치에 제공하는 단계; 및
상기 가상 데스크탑 프로토콜 가속 장치가 제공된 상기 속성 삭제 명령에 기초하여 상기 설정된 태스크 속성을 삭제하는 단계를 더 포함하는 것을 특징으로 하는 가상 데스크탑 프로토콜 가속 방법.The method according to claim 1,
The virtual desktop protocol acceleration method
Providing an attribute deletion command to the virtual desktop protocol accelerator for deleting the task attribute set in the virtual desktop protocol accelerator; And
And deleting the set task attribute by the virtual desktop protocol accelerator based on the attribute delete command provided by the virtual desktop protocol accelerator.
제공된 상기 태스크 속성 설정 명령에 상응하여 태스크를 처리하는 가상 데스크탑 프로토콜 가속부를 포함하는 가상화 서버.Determine information of a task including at least one factor of an attribute of a task to be accelerated, a memory address at which data to be processed by the task is stored, a size of the data, and a memory address at which the data processing result is to be stored; And a virtualization unit providing a task attribute setting command including a virtual machine identifier corresponding to the task to be accelerated. And
And a virtual desktop protocol accelerator configured to process a task according to the provided task attribute setting command.
상기 가상화 서버는 상기 가상화부로부터 상기 태스크 속성 설정 명령을 제공받고 상기 태스크 속성 설정 명령과 상기 태스크 정보의 유효성을 확인한 후, 상기 태스크 속성 설정 명령을 상기 가상 데스크탑 프로토콜 가속부에 전달하고, 상기 가상 데스크탑 프로토콜 가속부로부터 제공된 태스크 종료 시점 정보를 상기 가상화부에 전달하는 인터페이스부를 더 포함하는 것을 특징으로 하는 가상화 서버.The method of claim 6,
The virtual server receives the task property setting command from the virtualization unit, checks the validity of the task property setting command and the task information, and transmits the task property setting command to the virtual desktop protocol accelerator, and the virtual desktop. The virtualization server, characterized in that it further comprises an interface unit for transmitting the task termination time information provided from the protocol accelerator to the virtualization unit.
상기 가속할 태스크의 속성은 그래픽 부호화, 오디오 출력 부호화, 오디오 입력 복호화, USB 출력 부호화, USB 입력 복호화 중 적어도 하나를 포함하는 것을 특징으로 하는 가상화 서버.The method of claim 6,
The attribute of the task to be accelerated may include at least one of graphic encoding, audio output encoding, audio input decoding, USB output encoding, and USB input decoding.
상기 가상 데스크탑 프로토콜 가속부는
상기 제공된 가상 머신의 구분자에 기초하여 처리할 태스크의 속성을 검색하고, 상기 제공된 적어도 하나의 인자를 이용하여 처리할 데이터를 인출한 후, 상기 인출한 데이터를 속성에 따라 상기 가속할 태스크를 처리하는 것을 특징으로 하는 가상화 서버.
The method according to claim 8,
The virtual desktop protocol accelerator
Retrieving an attribute of a task to be processed based on the identifier of the provided virtual machine, retrieving data to be processed using the provided at least one factor, and then processing the task to be accelerated according to the attribute Virtualization server, characterized in that.
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 KR20120064575A (en) | 2012-06-19 |
KR101361838B1 true 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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108206842A (en) * | 2016-12-16 | 2018-06-26 | 广州杰赛科技股份有限公司 | Cloud Desktop Remote cut-in method and system |
Families Citing this family (1)
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 |
Citations (3)
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 |
US20090083743A1 (en) * | 2007-09-26 | 2009-03-26 | Hooper Donald F | System method and apparatus for binding device threads to device functions |
WO2012000820A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Accelerator for virtual machine migration |
-
2010
- 2010-12-09 KR KR1020100125859A patent/KR101361838B1/en active IP Right Grant
Patent Citations (3)
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 |
US20090083743A1 (en) * | 2007-09-26 | 2009-03-26 | Hooper Donald F | System method and apparatus for binding device threads to device functions |
WO2012000820A1 (en) * | 2010-06-30 | 2012-01-05 | International Business Machines Corporation | Accelerator for virtual machine migration |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108206842A (en) * | 2016-12-16 | 2018-06-26 | 广州杰赛科技股份有限公司 | Cloud Desktop Remote cut-in method and system |
CN108206842B (en) * | 2016-12-16 | 2020-09-15 | 广州杰赛科技股份有限公司 | Cloud desktop remote access method and system |
Also Published As
Publication number | Publication date |
---|---|
KR20120064575A (en) | 2012-06-19 |
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 | |
US10120705B2 (en) | Method for implementing GPU virtualization and related apparatus, and system | |
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 | |
US7197588B2 (en) | Interrupt scheme for an Input/Output device | |
US10380048B2 (en) | Suspend and resume in a time shared coprocessor | |
CN110770708A (en) | Method and apparatus for hardware virtualization | |
CN104636076A (en) | Distributed block device driving method and system for cloud storage | |
CN111679911B (en) | Management method, device, equipment and medium of GPU card in cloud environment | |
US20220114145A1 (en) | Resource Lock Management Method And Apparatus | |
CN115988218B (en) | Virtualized video encoding and decoding system, electronic equipment and storage medium | |
US20140330978A1 (en) | Accelerating USB Redirection over a Network | |
KR102314222B1 (en) | Virtual desktop system using container and method thereof | |
US10791103B2 (en) | Adapting remote display protocols to remote applications | |
WO2022143714A1 (en) | Server system, and virtual machine creation method and apparatus | |
KR20140027741A (en) | Application service providing system and method, server apparatus and client apparatus for application service | |
US11599377B2 (en) | Open-channel storage device management with FTL on virtual machine | |
CN116582438B (en) | Virtualized video encoding and decoding system and method, electronic equipment and storage medium | |
US20120166585A1 (en) | Apparatus and method for accelerating virtual desktop | |
KR102314221B1 (en) | Virtual desktop system providing an environment at specific time and method thereof | |
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 | |
US10015232B2 (en) | Systems and methods for transmitting images | |
US20140156736A1 (en) | Apparatus and method for managing threads to perform divided execution of software | |
US11881996B2 (en) | Input and output for target device communication |
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 |