KR20140077656A - Virtual desktop infrastructure system and method for processing data thereof - Google Patents

Virtual desktop infrastructure system and method for processing data thereof Download PDF

Info

Publication number
KR20140077656A
KR20140077656A KR1020120146702A KR20120146702A KR20140077656A KR 20140077656 A KR20140077656 A KR 20140077656A KR 1020120146702 A KR1020120146702 A KR 1020120146702A KR 20120146702 A KR20120146702 A KR 20120146702A KR 20140077656 A KR20140077656 A KR 20140077656A
Authority
KR
South Korea
Prior art keywords
server
client terminal
virtual desktop
storage
data
Prior art date
Application number
KR1020120146702A
Other languages
Korean (ko)
Other versions
KR101711617B1 (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 KR1020120146702A priority Critical patent/KR101711617B1/en
Publication of KR20140077656A publication Critical patent/KR20140077656A/en
Application granted granted Critical
Publication of KR101711617B1 publication Critical patent/KR101711617B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/305Authentication, i.e. establishing the identity or authorisation of security principals by remotely controlling device operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • 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/44Arrangements for executing specific programs
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Abstract

The present invention relates to a data processing method used in a virtual desktop infrastructure (VDI) system server. The data processing method used in a virtual desktop infrastructure (VDI) system server according to an embodiment of the present invention includes the steps of: configuring and uploading the environment used by a client terminal as a finalized state in response to an access request sent from a client to the server; eliminating duplication in the update contents generated during the operation conducted by the client terminal while the client terminal is accessing the server and storing the data to a storage unit.

Description

가상 데스크탑 인프라 시스템 및 그의 데이터 처리 방법{VIRTUAL DESKTOP INFRASTRUCTURE SYSTEM AND METHOD FOR PROCESSING DATA THEREOF} TECHNICAL FIELD [0001] The present invention relates to a virtual desktop infrastructure system and a virtual desktop infrastructure system,

본 발명은 가상 데스크탑 인프라 시스템 및 그의 데이터 처리 방법에 관한 것으로, 전용 가상 머신을 지원하는 가상 데스크탑 인프라 시스템에서 스토리지 공간을 효율적으로 사용하기 위한 방법에 관한 것이다. The present invention relates to a virtual desktop infrastructure system and a data processing method thereof, and more particularly, to a method for efficiently using storage space in a virtual desktop infrastructure system supporting a dedicated virtual machine.

VDI(Virtual Desktop Infrastructure) 시스템은 최근 데이터 보안 이슈 등으로 각광을 받고 있다. The Virtual Desktop Infrastructure (VDI) system has recently attracted attention due to data security issues.

VDI 시스템은 사용자들이 사용하는 응용들과 사용자들이 생성하는 데이터를 모두 중앙 서버에 체계적으로 저장/관리하고, 사용자들은 원격으로 중앙 서버에 접속해서 자신의 데스크탑 환경처럼 필요한 작업들을 수행하게 함으로써 정보 유출 방지와 같은 보안에도 대응할 수 있고 자원도 집중적으로 관리하도록 한다.The VDI system systematically stores / manages the applications used by the users and the data that the users create, and users can connect to the central server remotely and perform necessary tasks like the desktop environment, And also to manage the resources intensively.

VDI 시스템에서 기존에 사용하던 자신의 데스크탑 환경처럼 동작하게 한다는 것은 많은 도전적인 기술들을 요구한다. Running a VDI system like its own desktop environment requires many challenging technologies.

VDI 시스템은 크게 공용 VM(pooled Virtual Machine)과 전용 VM(dedicated VM)으로 나누어질 수 있다. 공용 VM은 사용자가 개별적으로 변경한 내용들을 저장소(storage)에 저장하지 않는다. 반면, 전용 VM은 사용자 개별적으로 변경한 내용을 저장소에 저장하여 보존한다. The VDI system can be largely divided into a pooled virtual machine (VM) and a dedicated VM (dedicated VM). The public VM does not store any changes made by the user in the storage. On the other hand, dedicated VMs store and store changes made by users individually in the repository.

아직까지 국내외의 VDI 시스템은 은행, 콜 센터 등 업무가 비교적 단조롭고 장소가 고정적인 환경에서 요구되고 있다. 그러나, 그 영역이 보다 넓어질 경우, VDI 시스템은 개인용 PC 환경에 보다 근접하지 않는다면 확대되는 것은 기대하기 힘들다. Domestic and foreign VDI systems are still required in a relatively monotonous and fixed place environment such as banks and call centers. However, if the area is wider, it is unlikely that the VDI system will expand unless it is closer to the personal PC environment.

특히 사용자의 작업 환경이 고정된 장소, 고정된 시간을 벗어나서 언제 어디서든 필요할 때 처리할 수 있는 이득을 주지 않고서는 그 효과에 한계가 있을 수 밖에 없다. 예를 들어, 특히나 출장을 자주 다니는 회사원의 경우에는 단말의 종류도 데스크탑뿐만 아니라 자신이 소유한 모바일 단말로도 언제 어디서든 업무를 처리하고 싶을 것이기 때문이다. 이 경우, 개인이 소유한 단말별 구성 내용이 모두 다르기 때문에 중앙 서버에서는 이들의 특성들을 별개로 다 만족시켜야 하는 어려움이 있다. 이를 지원하기 위한 개념이 전용 VM이다.Particularly, there is a limit to the effect without giving a benefit to be able to be handled whenever and wherever the user's working environment is out of fixed place or fixed time. For example, in the case of an office worker who frequently goes on business trips, he / she would like to handle his / her work anytime anywhere, not only on the desktop but also on his / her own mobile terminal. In this case, since the contents of each terminal owned by the individual are different, there is a difficulty in satisfying these characteristics separately in the central server. The concept to support this is dedicated VM.

VDI와 관련한 이슈들 중 가장 병목점 중 하나는 저장소이다. 일례로 개인 PC에서는 수많은 패치와 업데이트 등이 복원 가능한 형태로 진행되고, 이러한 작업 결과는 OS(operating system) 크기를 크게 증가시킨다. 같은 종류의 툴을 사용하더라도 선호하는 버전이 다르기 때문이 이들 개개인의 특성을 만족시키기 위해서 VDI 시스템에서는 대용량의 저장소를 요구할 수 밖에 없다. 이 문제를 해결하기 위해 VDI 시스템에서는 원본이 되는 골드 이미지(gold image)를 저장해 두고 개인 사용자들은 포인터 등의 형태로 골드 이미지에 링크를 연결하는 클론(clone)을 생성해서 사용한다. 공용 VM은 골드 이미지에 링크가 제대로 연결되어 있으면 지원이 가능하다. One of the bottlenecks associated with VDI is repositories. For example, in a personal PC, many patches and updates are made in a recoverable form, and the result of this operation greatly increases the operating system (OS) size. Because the preferred versions differ from each other even if the same kind of tool is used, the VDI system can only require a large amount of storage in order to satisfy the characteristics of each individual. To solve this problem, the VDI system stores the original gold image, and individual users create a clone that links the link to the gold image in the form of a pointer. The public VM can support it if the link to the gold image is properly connected.

반면, 전용 VM은 사용자 개별로 수정 추가한 내용이 모두 보존될 수 있어야 하기 때문에 링크를 연결하는 클론만으로는 지원하기 힘들다. 특히 전용 VM은 사용자별 저장소 소요량이 시간이 지남에 따라 꾸준히 증가할 수 있기 때문에 저장소 사용에 관한 최적화 방법이 반드시 필요하다.On the other hand, dedicated VMs can not be supported by clones linking links, because all modifications made by users must be preserved. In particular, dedicated VMs require optimization methods for storage usage because the per-user storage requirements can steadily increase over time.

본 발명이 해결하고자 하는 기술적 과제는 전용 VM을 지원하는 VDI 시스템에서 저장소와의 입출력을 최소화하고 저장소 공간을 효율적으로 사용할 수 있는 가상 데스크탑 인프라 시스템 및 그의 데이터 처리 방법을 제공하는 것이다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a virtual desktop infrastructure system and its data processing method capable of minimizing input / output with a storage and efficiently using storage space in a VDI system supporting a dedicated VM.

본 발명의 한 실시 예에 따르면, VDI(Virtual Desktop Infrastructure) 시스템의 서버에서 데이터를 처리하는 방법이 제공된다. VDI 시스템의 데이터 처리 방법은 클라이언트 단말로부터 상기 서버로의 접속 요청에 따라서 상기 클라이언트 단말이 사용하던 환경을 최종 상태로 구성하여 업로드하는 단계, 그리고 상기 클라이언트 단말이 상기 서버에 접속해서 작업을 하는 도중 발생하는 업데이트 내용을 중복 제거 처리하여 저장소에 저장하는 단계를 포함한다. According to an embodiment of the present invention, a method of processing data in a server of a Virtual Desktop Infrastructure (VDI) system is provided. A method of processing data in a VDI system includes: uploading an environment used by the client terminal according to a connection request from the client terminal to the server in a final state and uploading the data to the client terminal when the client terminal is connected to the server And storing the updated contents in a storage.

본 발명의 실시 예에 의하면, 사용자의 환경을 구성하는 데이터를 1차적으로 캐시에 저장하고 인라인으로 중복제거 기능을 수행하여 불필요한 데이터를 제거한 다음 저장소로 보냄으로써 저장소와의 입출력을 최소화함과 동시에 저장소 공간을 효율적으로 사용할 수 있다. According to the embodiment of the present invention, data constituting the user's environment is primarily stored in the cache, and the deduplication function is performed in-line to remove unnecessary data and then sent to the storage, thereby minimizing the input / output to and from the storage, Space can be used efficiently.

또한 전용 VM을 제공하는 VDI 시스템의 성능 및 비용을 만족시킬 수 있을 뿐만 아니라, 사용자가 장소나 시간에 구애 없이 업무를 수행 가능하도록 함으로써 업무의 효율성을 증진시킬 수 있다. In addition, the performance and cost of the VDI system providing the dedicated VM can be satisfied, and the efficiency of work can be improved by allowing the user to perform the work without regard to the place or time.

도 1은 본 발명의 실시 예에 따른 가상 데스크탑 인프라 시스템의 일 예를 나타낸 도면이다.
도 2는 도 1에 도시된 저장소 내에서 데이터가 저장되는 구조를 설명하는 도면이다.
도 3은 도 1에 도시된 클라이언트 단말에서 사용자 접속/해지 요청이 오는 경우 이에 대한 응답을 지원하기 위해 전달되어야 하는 정보들을 설명하는 도면이다.
도 4는 본 발명의 실시 예에 따른 서버에서 한 사용자가 작업을 위해 가상 데스크탑의 전원을 켜는 경우 내부적으로 처리되는 절차를 설명하는 도면이다.
도 5는 본 발명의 실시 예에 따른 서버에서 한 사용자가 작업을 위해 가상 데스크탑에서 로그 아웃을 하거나 전원을 끄는 경우 내부적으로 처리되는 절차를 간략하게 설명하는 도면이다.
도 6은 본 발명의 실시 예에 따른 VDI 시스템을 운영하는 도중 서버에서 사용자 관련 데이터를 처리하는 방법에 대해 설명하는 도면이다.
1 is a diagram illustrating an example of a virtual desktop infrastructure system according to an embodiment of the present invention.
FIG. 2 is a view for explaining a structure in which data is stored in the storage shown in FIG. 1. FIG.
3 is a view for explaining information to be transmitted in order to support a response to a user connection / release request coming from the client terminal shown in FIG.
FIG. 4 is a diagram illustrating a procedure in which a server according to an embodiment of the present invention is internally processed when a user turns on a virtual desktop for a task.
FIG. 5 is a view for explaining a procedure that is internally processed when a user logs out or power off a virtual desktop for a work in a server according to an embodiment of the present invention.
6 is a diagram for explaining a method of processing user-related data in a server in operation of a VDI system according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification and claims, when a section is referred to as "including " an element, it is understood that it does not exclude other elements, but may include other elements, unless specifically stated otherwise.

이제 본 발명의 실시 예에 따른 가상 데스크탑 인프라 시스템 및 그의 데이터 처리 방법에 대하여 도면을 참고로 하여 상세하게 설명한다. A virtual desktop infrastructure system and a data processing method thereof according to an embodiment of the present invention will now be described in detail with reference to the drawings.

도 1은 본 발명의 실시 예에 따른 가상 데스크탑 인프라 시스템의 일 예를 나타낸 도면이다. 1 is a diagram illustrating an example of a virtual desktop infrastructure system according to an embodiment of the present invention.

도 1을 참고하면, 가상 데스크탑 인프라 시스템(Virtual Desktop Infrastructure, VDI) 시스템은 클라이언트 단말(110), 서버(120), 캐시(130), 중복제거 가속기(140) 및 저장소(150)를 포함한다. 이 구성 요소들은 네트워크를 통해 연결되어 있다.Referring to FIG. 1, a virtual desktop infrastructure (VDI) system includes a client terminal 110, a server 120, a cache 130, a deduplication accelerator 140, and a storage 150. These components are connected through a network.

클라이언트 단말(110)는 사용자에게 보여지는 단말 화면을 재생하는 디바이스를 지칭하며, 씬 클라이언트(thin client) 또는 제로 클라이언트(zero client)이다. 이 클라이언트 단말(110)이 기존의 PC나 휴대폰과 같은 디바이스들과 다른 점은, 기존의 디바이스들은 자신 디바이스의 화면 내용을 자신의 저장소로부터 읽어오는 반면, 클라이언트 단말(110)은 서버(120)에 있는 저장소(150)로부터 네트워크를 통해 읽어온다는 점이다. The client terminal 110 refers to a device that reproduces the terminal screen shown to the user, and is a thin client or a zero client. This client terminal 110 differs from conventional devices such as a PC and a cellular phone in that existing devices read the content of the screen of the device from its own storage while the client terminal 110 is connected to the server 120 And reads from the storage 150 via the network.

서버(120)는 클라이언트 단말(110)의 접속 및 해제 요청에 응답하고, 1차적으로는 캐시(130), 2차적으로는 저장소(150)로부터 클라이언트 단말(110)의 구성에 필요한 모든 정보들을 찾아서 클라이언트 단말(110)로 전송하는 역할을 한다. 또한 서버(120)는 가상 데스크탑의 구성 또는 변경 내역을 1차적으로는 캐시(130)에 저장한다. The server 120 responds to the connection and release request of the client terminal 110 and firstly finds all information necessary for the configuration of the client terminal 110 from the cache 130 and secondarily from the storage 150 To the client terminal (110). In addition, the server 120 stores the configuration or change history of the virtual desktop in the cache 130 primarily.

중복제거 가속기(140)는 캐시(130)에 저장된 내용을 인라인으로 중복 제거를 수행한 후 저장소(150)에 저장한다. 이렇게 캐시(130)와 저장소(140)로 분리하는 이유는 변경이 생기는 즉시 인라인으로 중복 제거를 수행하기 위함이다. 또한 클라이언트 단말(110)에서 사용자가 가상 데스크탑을 기동시킬 때 데이터를 빠른 시간 안에 제공하기 위해서이다.The deduplication accelerator 140 stores the contents stored in the cache 130 in the storage 150 after performing in-line de-duplication. The reason for separating into the cache 130 and the storage 140 is to perform in-line deduplication as soon as a change occurs. In order to provide the data in a short time when the user starts the virtual desktop at the client terminal 110.

중복제거 가속기(140)는 중복 제거 작업이 CPU에 영향을 미치지 않도록 하드웨어 가속기 형태로 구성될 수 있다. The deduplication accelerator 140 may be configured in the form of a hardware accelerator so that the deduplication operation does not affect the CPU.

또한 중복제거 가속기(140)는 저장소(150)에 저장된 데이터 중에서 주기적으로 일정 기간을 초과한 데이터를 제거할 수 있다. OS(operating system)의 패치, 업데이트 및 응용에 대한 업데이트가 수시로 발생되며, 사용자가 원할 경우 최신 버전에서 이전 버전으로의 복원도 가능해야 하므로, 각 버전에 따른 데이터들이 저장소(150)에 모두 저장된다. 이렇게 되면, 저장소(150)의 사용량이 늘어나기 때문에 중복제거 가속기(140)는 일정 기간을 초과한 데이터들을 제거함으로써 저장소(150)의 사용률을 일정량 이하로 유지한다. Also, the de-duplication accelerator 140 may remove data exceeding a predetermined period periodically from the data stored in the storage 150. [ Updates for patches, updates, and applications of an operating system (OS) are occasionally generated. If the user desires to restore from the latest version to the previous version, it is also possible to restore data to the previous version. . In this case, since the amount of the storage 150 is increased, the de-duplication accelerator 140 maintains the usage rate of the storage 150 at a predetermined amount or less by removing data exceeding a predetermined period.

저장소(150)는 OS, 응용 프로그램, 사용자의 데이터들을 체계적으로 구성하고 저장하기 위해 제공되는 거대한 분산 파일 시스템으로, 네트워크를 통해 SSD((Solid-State Drive))나 HDD(Hard Disk Drive)가 계층적으로 연결되어 단일 파일 시스템 이미지를 형성한다. The storage 150 is a massive distributed file system that is provided for systematically organizing and storing OS, application programs and user data. The storage 150 is an SSD (Solid-State Drive) or HDD (Hard Disk Drive) To form a single file system image.

도 2는 도 1에 도시된 저장소 내에서 데이터가 저장되는 구조를 설명하는 도면이다. FIG. 2 is a view for explaining a structure in which data is stored in the storage shown in FIG. 1. FIG.

도 2를 참고하면, 저장소(150)의 데이터는 OS(210), 응용 프로그램(220), 사용자 자신이 생성한 사용자 데이터(230)들로 체계적으로 분류되어 저장된다. Referring to FIG. 2, the data of the repository 150 is systematically classified and stored into the OS 210, the application program 220, and the user data 230 generated by the user himself / herself.

이들 데이터는 각각 원본이 되는 골드 이미지와 골드 이미지를 각각 복사한 하나 이상의 클론 이미지를 포함할 수 있다. These data may include one or more clone images, each copying a gold image and an original gold image.

OS(210)는 OS(210)의 골드 이미지(211), 골드 이미지(211)를 복사한 클론 이미지(212, 213)를 포함하며, 클론 이미지(212, 213)는 골드 이미지(211)와 링크를 통해 연결되어 있다. 응용 프로그램(220) 또한 골드 이미지(221)와 골드 이미지(221)를 복사한 클론 이미지(222, 223)를 포함하며, 클론 이미지(222, 223)는 골드 이미지(221)와 링크를 통해 연결되어 있다. 마찬가지로, 사용자 데이터(230)도 골드 이미지(231)와 골드 이미지(231)를 복사한 클론 이미지(232, 233)를 포함하며, 클론 이미지(222, 233)는 골드 이미지(231)와 링크를 통해 연결되어 있다.The OS 210 includes the gold image 211 of the OS 210 and the clone images 212 and 213 that are copied from the gold image 211. The clone images 212 and 213 include the gold image 211 and the gold image 211, Lt; / RTI > The application program 220 also includes a gold image 221 and a clone image 222, 223 that is a copy of the gold image 221 and the clone image 222, 223 is linked to the gold image 221 via a link have. Similarly, the user data 230 also includes a gold image 231 and a clone image 232, 233 that is a copy of the gold image 231, and the clone image 222, 233 includes a gold image 231, It is connected.

OS(210)의 골드 이미지(211)에 대해 패치나 업데이트된 내용은 중복 제거 가속기(140)을 통해 중복제거를 수행한 후 저장된다. 응용 프로그램(220)이나 사용자 데이터(230)의 변경 내용 또한 중복 제거 가속기(140)을 통해 중복제거를 수행한 후 저장된다.Patches or updated contents of the gold image 211 of the OS 210 are stored after deduplication through the deduplication accelerator 140. [ The contents of the application program 220 or the user data 230 are also stored after deduplication is performed through the deduplication accelerator 140.

도 3은 도 1에 도시된 클라이언트 단말에서 사용자 접속/해지 요청이 오는 경우 이에 대한 응답을 지원하기 위해 전달되어야 하는 정보들을 설명하는 도면이다. 3 is a view for explaining information to be transmitted in order to support a response to a user connection / release request coming from the client terminal shown in FIG.

도 3을 참고하면, 전용 VM에서는 자신이 작업하던 최종 화면을 보존하였다가 기기나 장소가 이동되더라도 그대로 연속해서 사용하기를 원할 수 있으므로 사용자가 로그 아웃할 때 화면의 최종 스냅샷(311)을 생성해서 보관한다. 따라서, 사용자가 다시 로그인하면 이 화면을 그대로 받아서 쓸 수 있다. 그리고 자신이 가지고 있던 구성 정보들(312,…, 314)을 최종 스냅샷(311) 바로 다음에 연달아 쓸 수 있다. 이런 구성 정보(312,…, 314)는 저장소(150)에 중복 제거되어 저장되어 있는 상태를 의미한다.Referring to FIG. 3, in the dedicated VM, since the final screen in which the user is working has been saved, the user may desire to continue using the device even when the device or the place is moved. Therefore, when the user logs out, the final snapshot 311 And store it. Therefore, when the user logs in again, this screen can be used as it is. The configuration information 312, ..., and 314, which the user has, can be written consecutively immediately after the last snapshot 311. The configuration information 312, ..., and 314 is stored in the storage 150 in a redundant manner.

도 4는 본 발명의 실시 예에 따른 서버에서 한 사용자가 작업을 위해 가상 데스크탑의 전원을 켜는 경우 내부적으로 처리되는 절차를 설명하는 도면이다. FIG. 4 is a diagram illustrating a procedure in which a server according to an embodiment of the present invention is internally processed when a user turns on a virtual desktop for a task.

도 4를 참고하면, 사용자가 클라이언트 단말(110)을 통해 자신의 아이디(ID)와 패스워드를 이용하여 서버(120)로 접속을 요청한다(S410). Referring to FIG. 4, a user requests a connection to the server 120 using his / her ID and password through the client terminal 110 (S410).

서버(120)는 사용자 인증을 거치고(S420), 빠른 응답을 위해서 먼저 가상 데스크탑 이미지 화면 즉, 최종 스냅샷(311)을 클라이언트 단말(110)로 전송한다(S430). The server 120 performs user authentication (S420) and transmits the virtual desktop image screen, that is, the final snapshot 311, to the client terminal 110 for quick response (S430).

서버(120)는 클라이언트 단말(110)로 전송을 시작함과 동시에 해당 클라이언트 단말(110)의 구성 정보를 캐시(130) 및 저장소(150)로부터 검색하여 실제로 응용이 실행될 수 있도록 클라이언트 단말(110)로 전송한다(S440).The server 120 starts the transmission to the client terminal 110 and at the same time searches the cache 130 and the storage 150 for the configuration information of the client terminal 110 and transmits the configuration information to the client terminal 110, (S440).

도 5는 본 발명의 실시 예에 따른 서버에서 한 사용자가 작업을 위해 가상 데스크탑에서 로그 아웃을 하거나 전원을 끄는 경우 내부적으로 처리되는 절차를 간략하게 설명하는 도면이다. FIG. 5 is a view for explaining a procedure that is internally processed when a user logs out or power off a virtual desktop for a work in a server according to an embodiment of the present invention.

도 5를 참고하면, 사용자가 클라이언트 단말(110)을 통해 자신의 작업을 끝내고 나면 접속 해제를 서버(120)로 요청한다(S510). 이는 데스크탑에서의 작업을 완전히 끝낸 경우도 있을 수 있지만, 퇴근해서 계속 일을 하는 경우와 같이 이동이 필요한 경우 종료할 수도 있다. 이 경우를 대비해서 접속 해제 요청을 받은 서버(120)는 클라이언트 단말(110)의 작업 화면을 그대로 보존하기 위해 클라이언트 단말(110)의 최종 스냅샷을 생성한다(S520). Referring to FIG. 5, after the user finishes his / her work through the client terminal 110, the server 120 requests the server 120 to disconnect (S510). This may be the case when you have finished working on the desktop, but you can end it if you need to move, such as when you are at work. In response to this case, the server 120 receiving the connection release request generates a final snapshot of the client terminal 110 in order to preserve the operation screen of the client terminal 110 (S520).

그리고 서버(120)는 스냅샷 정보 및 구성 정보를 포함한 작업 상태 관련 정보들을 저장소(150)에도 저장한다(S530). 또한 서버(120)는 캐시(130)에 스냅샷 및 관련 구성 정보를 저장한다. The server 120 also stores the work state related information including the snapshot information and the configuration information in the storage 150 (S530). The server 120 also stores the snapshot and related configuration information in the cache 130.

도 6은 본 발명의 실시 예에 따른 VDI 시스템을 운영하는 도중 서버에서 사용자 관련 데이터를 처리하는 방법에 대해 설명하는 도면이다. 6 is a diagram for explaining a method of processing user-related data in a server in operation of a VDI system according to an embodiment of the present invention.

도 6을 참고하면, 운영 도중 정보를 처리해야 하는 경우는 윈도우 업데이트, 새로운 응용 설치, 응용 업데이트, 응용 삭제, 사용자 데이터 생성 등과 같이 사용자별 가상 데스크탑에 어떤 변화가 발생하는 경우이다. Referring to FIG. 6, when the information needs to be processed during the operation, there is a change in the virtual desktop depending on the user such as window update, new application installation, application update, application deletion, user data creation,

클라이언트 단말(110)에 변경이 발생하면(S610), 서버(120)는 기존의 시스템에서 하던 대로 기존 이미지에 업데이트 정보를 추가한다(S620). 그리고 서버(120)는 구성 정보 업데이트 작업을 수행하고(S630), 중복 제거 가속기(140)가 이 데이터에 대해 중복 제거 작업을 수행한다(S640). 이 작업이 완료된 결과는 저장소(150)에 기록된다(S650). When a change occurs in the client terminal 110 (S610), the server 120 adds update information to the existing image as it is in the existing system (S620). Then, the server 120 performs a configuration information update operation (S630), and the deduplication accelerator 140 performs a deduplication operation on the data (S640). The result of the completion of this operation is recorded in the storage 150 (S650).

이와 같이, 저장소(150)에 변경 내용을 저장하기 전에 중복 제거 작업을 수행함으로써 저장소(150)의 입출력 및 저장소(150)의 사용량을 크게 절감할 수 있다. Thus, by performing deduplication before storing the changes in the storage 150, the input / output of the storage 150 and the usage of the storage 150 can be greatly reduced.

본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술 분야의 전문가라면 쉽게 구현할 수 있는 것이다. The embodiments of the present invention are not limited to the above-described apparatuses and / or methods, but may be implemented through a program for realizing functions corresponding to the configuration of the embodiment of the present invention or a recording medium on which the program is recorded, Such an embodiment can be readily implemented by those skilled in the art from the description of the embodiments described above.

이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리 범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다. While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

Claims (1)

VDI(Virtual Desktop Infrastructure) 시스템의 서버에서 데이터를 처리하는 방법으로,
클라이언트 단말로부터 상기 서버로의 접속 요청에 따라서 상기 클라이언트 단말이 사용하던 환경을 최종 상태로 구성하여 업로드하는 단계, 그리고
상기 클라이언트 단말이 상기 서버에 접속해서 작업을 하는 도중 발생하는 업데이트 내용을 중복 제거 처리하여 저장소에 저장하는 단계
를 포함하는 데이터 처리 방법.
A method of processing data on a server in a Virtual Desktop Infrastructure (VDI) system,
Configuring and uploading an environment used by the client terminal in a final state in response to a connection request from the client terminal to the server, and
A step of deduplicating the update contents generated while the client terminal is connected to the server and performing an operation,
/ RTI >
KR1020120146702A 2012-12-14 2012-12-14 Virtual desktop infrastructure system and method for processing data thereof KR101711617B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120146702A KR101711617B1 (en) 2012-12-14 2012-12-14 Virtual desktop infrastructure system and method for processing data thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120146702A KR101711617B1 (en) 2012-12-14 2012-12-14 Virtual desktop infrastructure system and method for processing data thereof

Publications (2)

Publication Number Publication Date
KR20140077656A true KR20140077656A (en) 2014-06-24
KR101711617B1 KR101711617B1 (en) 2017-03-13

Family

ID=51129526

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120146702A KR101711617B1 (en) 2012-12-14 2012-12-14 Virtual desktop infrastructure system and method for processing data thereof

Country Status (1)

Country Link
KR (1) KR101711617B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147451A (en) * 2015-06-15 2016-12-23 한국전자통신연구원 In-memory virtual desktop system
KR20170000568A (en) * 2015-06-24 2017-01-03 한국전자통신연구원 Apparatus and method for virtual desktop service based on in-memory
KR20200032493A (en) * 2018-09-18 2020-03-26 주식회사 틸론 Method for initialization virtual desktop snapshot information in virtualization system and virtualization system thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294946A (en) * 2008-06-05 2009-12-17 Nec Corp Operation environment automatic saving and restoring system, operation environment automatic saving and restoring method, and operation environment automatic saving and restoring program
US20100275200A1 (en) * 2009-04-22 2010-10-28 Dell Products, Lp Interface for Virtual Machine Administration in Virtual Desktop Infrastructure
US20110113206A1 (en) * 2009-11-11 2011-05-12 Red Hat Israel, Ltd. Method for obtaining a snapshot image of a disk shared by multiple virtual machines
KR20120072136A (en) * 2010-12-23 2012-07-03 한국전자통신연구원 Apparatus and method for driving virtual machine, and method for avoiding duplication of virtual machine image

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294946A (en) * 2008-06-05 2009-12-17 Nec Corp Operation environment automatic saving and restoring system, operation environment automatic saving and restoring method, and operation environment automatic saving and restoring program
US20100275200A1 (en) * 2009-04-22 2010-10-28 Dell Products, Lp Interface for Virtual Machine Administration in Virtual Desktop Infrastructure
US20110113206A1 (en) * 2009-11-11 2011-05-12 Red Hat Israel, Ltd. Method for obtaining a snapshot image of a disk shared by multiple virtual machines
KR20120072136A (en) * 2010-12-23 2012-07-03 한국전자통신연구원 Apparatus and method for driving virtual machine, and method for avoiding duplication of virtual machine image

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160147451A (en) * 2015-06-15 2016-12-23 한국전자통신연구원 In-memory virtual desktop system
US10241818B2 (en) 2015-06-15 2019-03-26 Electronics And Telecommunications Research Institute In-memory virtual desktop system
KR20170000568A (en) * 2015-06-24 2017-01-03 한국전자통신연구원 Apparatus and method for virtual desktop service based on in-memory
US10379891B2 (en) 2015-06-24 2019-08-13 Electronics And Telecommunications Research Institute Apparatus and method for in-memory-based virtual desktop service
KR20200032493A (en) * 2018-09-18 2020-03-26 주식회사 틸론 Method for initialization virtual desktop snapshot information in virtualization system and virtualization system thereof

Also Published As

Publication number Publication date
KR101711617B1 (en) 2017-03-13

Similar Documents

Publication Publication Date Title
US11494273B2 (en) Holistically protecting serverless applications across one or more cloud computing environments
US20140172783A1 (en) System and method for providing computing environment delivery service with offline operations
US10579404B2 (en) Provisioning virtual desktops with stub virtual disks
JP6653789B1 (en) Data deletion restricted by replication delay in large-scale distributed data storage system
US9043391B2 (en) Capturing and restoring session state of a machine without using memory images
US20140208312A1 (en) Method, System, Device And Storage Medium For Restoring User System
US20210034398A1 (en) Streaming database cloning using cluster live mounts
KR101008554B1 (en) Cloud type file copy and disk duplication system using wan and the method thereof
US10909000B2 (en) Tagging data for automatic transfer during backups
JP5375972B2 (en) Distributed file system, data selection method thereof, and program
US20140281301A1 (en) Elastic hierarchical data storage backend
US10042717B2 (en) Distributed local backup and restore system using peer-to-peer backups
US10922283B2 (en) File synchronization
US10747458B2 (en) Methods and systems for improving efficiency in cloud-as-backup tier
US10198327B1 (en) Method and system for performing group recovery from a recovery source to multiple recovery targets
US11663092B2 (en) Systems and methods for continuous data protection
KR101711617B1 (en) Virtual desktop infrastructure system and method for processing data thereof
US11500813B2 (en) Instant replay of a file to a cloud tier on a deduplication file system
US11669494B2 (en) Scaling out data protection infrastructure
JP2017167811A (en) Backup controller, backup controlling method, and program
US10496493B1 (en) Method and system for restoring applications of particular point in time
US20200117724A1 (en) Fast data deduplication in distributed data protection environment
US11272006B2 (en) Intelligently distributing retrieval of recovery data amongst peer-based and cloud-based storage sources
KR101638727B1 (en) Cluster system
JP5951702B2 (en) File system, secret sharing server, file management method and program

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: 20200128

Year of fee payment: 4