KR20110006487A - Apparatus and method for multi-terminal service using resource virtualization - Google Patents

Apparatus and method for multi-terminal service using resource virtualization Download PDF

Info

Publication number
KR20110006487A
KR20110006487A KR1020090064139A KR20090064139A KR20110006487A KR 20110006487 A KR20110006487 A KR 20110006487A KR 1020090064139 A KR1020090064139 A KR 1020090064139A KR 20090064139 A KR20090064139 A KR 20090064139A KR 20110006487 A KR20110006487 A KR 20110006487A
Authority
KR
South Korea
Prior art keywords
resource
terminal
virtualization
user
information
Prior art date
Application number
KR1020090064139A
Other languages
Korean (ko)
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 KR1020090064139A priority Critical patent/KR20110006487A/en
Publication of KR20110006487A publication Critical patent/KR20110006487A/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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Abstract

PURPOSE: An apparatus and a method for providing a multi-terminal service using resource virtualization are provided to supply individual/independent environments by a user by virtualizing common resources belonging to an application program. CONSTITUTION: A resource virtualization unit(211) obtains information about a terminal session and virtualization information for a virtual resource individually generated by a user for source resources of an application. A resource monitoring unit(221) uses the terminal session information and the virtualization information to generate a virtual resource access path. If the application accesses the source resource, the resource monitoring unit makes the application go round using the virtual resource access path to access the virtual resource.

Description

리소스 가상화를 이용한 다중 터미널서비스 제공 장치 및 그 방법{APPARATUS AND METHOD FOR MULTI-TERMINAL SERVICE USING RESOURCE VIRTUALIZATION}Apparatus and method for providing terminal services using resource virtualization {APPARATUS AND METHOD FOR MULTI-TERMINAL SERVICE USING RESOURCE VIRTUALIZATION}

본 발명은 리소스 가상화를 이용한 다중 터미널서비스 제공 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 다중사용자(Multi-user) 환경에서 특정 응용프로그램에 종속된 공통 소스리소스(예를 들어, 파일, 레지스트리, 폴더)를 사용자별로 가상화하여 개별적으로 제공함으로써 복수의 사용자에 대하여 사용자별로 개별적/독립적인 터미널서비스 환경을 제공할 수 있는, 리소스 가상화를 이용한 다중 터미널서비스 제공 방법 및 그 장치에 관한 것이다.The present invention relates to an apparatus and method for providing a multi-terminal service using resource virtualization, and more particularly, to a common source resource (eg, file, registry, etc.) dependent on a specific application program in a multi-user environment. The present invention relates to a method and apparatus for providing a multi-terminal service using resource virtualization, which can provide individual / independent terminal service environments for a plurality of users by providing virtualized folders for each user and individually.

가상화(Virtualization)란 물리적인 한 개의 자원을 논리적으로 분할해서 효율적으로 사용하거나, 물리적으로 다른 여러 개의 자원을 논리적으로 통합하는 기술이다. 이러한 가상화에는 데스크탑 가상화(Desktop Virtualization), 어플리케이션 가상화(Application Virtualization), SBC(Server Based Computing)로 대표되는 프리젠테이션 가상화(Presentation Virtualization) 등과 같은 다양한 가상화 방식 이 있다.Virtualization is a technique of logically dividing one physical resource into efficient use, or logically integrating several physically different resources. Such virtualization includes various virtualization methods such as desktop virtualization, application virtualization, and presentation virtualization represented by server based computing (SBC).

특히, 프리젠테이션 가상화는, 도 1에 도시된 바와 같이 서버/클라이언트 형태의 구성을 통하여 구현되는 것으로서, 사용자 단말(터미널 클라이언트)(10)을 이용하여 터미널 서버(14)에 원격 접속하여 서버의 리소스를 터미널 클라이언트(10)에서 사용할 수 있도록 한다. 응용프로그램은 사용자 단말(터미널 클라이언트)(10)에는 설치되지 않고 터미널 서버(14)에 설치되고, 터미널 서버(14)의 응용프로그램 실행 결과 화면만이 사용자 단말(터미널 클라이언트)(10)로 전송되어, 사용자 측면에서는 모든 응용프로그램이 사용자 단말(터미널 클라이언트)(10)에서 수행되고 있는 것처럼 보이게 된다.In particular, the presentation virtualization is implemented through a server / client configuration as shown in FIG. 1, and remotely connects to the terminal server 14 using a user terminal (terminal client) 10 to provide resources of a server. To be used by the terminal client 10. The application is not installed in the user terminal (terminal client) 10, but is installed in the terminal server 14, only the application execution result screen of the terminal server 14 is transmitted to the user terminal (terminal client) 10 On the user side, all applications appear to be running on the user terminal (terminal client) 10.

즉, 터미널 서버(14)와 사용자 단말(터미널 클라이언트)(10) 간에는 실제 데이터가 송수신되는 것이 아니고, 모든 작업은 터미널 서버(14)에서 이루어지며, 사용자 단말(터미널 클라이언트)(10)로는 서버 작업 결과만이 전달된다. 이와 같이 모든 작업이 터미널 서버(14)에서 이루어지기 때문에, 응용프로그램이 사용하는 중앙처리장치(CPU), 메모리 등은 서버의 자원을 사용하고, 클라이언트의 자원은 터미널 클라이언트의 구동에 필요한 최소한의 자원이 사용된다.That is, actual data is not transmitted and received between the terminal server 14 and the user terminal (terminal client) 10, all operations are performed in the terminal server 14, and the server operation is performed by the user terminal (terminal client) 10. Only the results are delivered. In this way, since all operations are performed in the terminal server 14, the CPU, memory, and the like used by the application program use the server resources, and the client resources use the minimum resources necessary for running the terminal client. This is used.

이러한 터미널 서비스 환경에서 응용프로그램 서비스를 사용하게 되면 모든 실질적인 작업이 터미널 서버(14)에서 이루어지기 때문에, 작업 데이터가 외부로 유출되지 않아 보안성이 높은 장점이 있다.When using an application service in such a terminal service environment, since all practical work is performed on the terminal server 14, work data is not leaked to the outside, thereby providing a high security.

하지만, 다수의 터미널 클라이언트가 하나의 서버에 접속하여 동일한 프로그램을 사용하는 경우에는, 그 프로그램에 종속된 리소스(예를 들어, 파일, 폴더, 레 지스트리 등)가 개인화되지 못한다는 문제점이 있다. However, when a plurality of terminal clients connect to one server and use the same program, there is a problem that resources (eg, files, folders, registries, etc.) dependent on the program are not personalized.

즉, 다중 사용자(Multi-user)를 고려하지 않고 단일 사용자만을 고려하여 개발된 응용프로그램을 터미널 서버에 올려놓은 경우, 멀티 사용자가 그 응용프로그램에 접근하여 사용하려고 할 때, 해당 응용프로그램은 사용자별로 리소스가 중첩되어 정상 동작되지 않게 된다.In other words, if an application developed on the terminal server is developed without considering multi-user and only a single user is placed on the terminal server, when the multi-user attempts to access and use the application, the application is created on a per-user basis. Resources are overlapped and do not work properly.

예컨대, 고정된 경로의 파일에 로그인 정보를 기록하고 개인 설정 내용을 저장하는 특정 프로그램이 개인 컴퓨터(PC)에 설치되어 동작한다면 문제가 없다. 하지만, 터미널 서비스 환경에서 상기와 같은 특정 프로그램이 서버에 설치되어 동작하는 경우에는, 다수의 사용자가 로그인 하는 시간이 서로 다를 수 있고 또한 다수의 사용자가 동시 접속하여 특정 프로그램을 사용할 수도 있기 때문에, 고정된 경로의 파일(File), 레지스트리(Registry) 또는 폴더(Folder)에 가장 최근에 접속한 사용자의 정보만이 저장된다. 따라서 이전에 접근한 파일, 폴더 또는 레지스트리에 저장된 정보는 삭제되고, 최근에 접근한 사용자의 정보만이 기록(저장)된다.For example, there is no problem if a specific program that records login information in a fixed path file and stores personal settings is installed and operated on a personal computer (PC). However, in the terminal service environment, when a specific program is installed and operated in a server, since a plurality of users may log in at different times and a plurality of users may simultaneously access a specific program, the fixed program may be fixed. Only the information of the most recently accessed user in a file, registry or folder in the specified path is stored. Therefore, the information stored in the previously accessed file, folder or registry is deleted, and only the information of the recently accessed user is recorded (stored).

이와 같은 이유로 인하여 서버에서 리소스를 공유하는 프로그램을 구동하여 터미널 서비스를 제공할 경우에는 프로그램의 사용이 불가능하였으며, 이로 인하여 종래에는 특정 프로그램의 수정이나 프로그램 재개발을 통해서만 공통 리소스를 사용자별로 관리할 수 있다는 문제점이 있다. For this reason, it is impossible to use a program when providing a terminal service by running a program that shares resources on a server. As a result, in the related art, common resources can be managed by user only by modifying or re-developing a specific program. There is a problem.

따라서, 이미 상용화된 단일 사용자용 응용프로그램을 수정/변경하지 않고도 하나의 프로그램 리소스를 복수의 사용자가 동시에 이용할 수 있게 하는 터미널 서비스 환경을 구축할 필요성이 절실히 요구된다.Therefore, there is an urgent need to establish a terminal service environment that allows a plurality of users to simultaneously use a program resource without modifying / changing a single user application that is already commercially available.

따라서 본 발명은 다중 사용자를 고려하지 않고 개발된 응용프로그램에 대하여 다중 사용자의 접근을 허용할 수 있는 터미널 서비스 환경을 제공하는, 리소스 가상화를 이용한 다중 터미널서비스 제공 장치 및 그 방법을 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide an apparatus and method for providing a multi-terminal service using resource virtualization, which provides a terminal service environment that allows a multi-user access to an application program developed without considering the multi-user. have.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. Also, it will be readily appreciated that the objects and advantages of the present invention may be realized by the means and combinations thereof indicated in the claims.

본 발명은 상기와 같은 목적을 달성하기 위하여, 다중사용자(Multi-user) 환경에서 특정 응용프로그램에 종속된 공통 소스리소스를 사용자별로 가상화하여 개별적으로 제공하는 것을 특징으로 한다.In order to achieve the above object, the present invention is characterized in that a common source resource dependent on a specific application program in a multi-user environment is virtualized for each user and provided separately.

더욱 구체적으로, 본 발명은, 리소스 가상화를 이용한 다중 터미널서비스 제공 장치에 있어서, 터미널 클라이언트의 접속에 따라 생성된 터미널 세션에 대한 정보와, 응용프로그램의 소스 리소스에 대하여 사용자별로 개별 생성된 가상 리소스에 대한 가상화 정보를 획득하기 위한 리소스 가상화 수단; 및 상기 리소스 가상 화 수단이 획득하여 전달한 터미널 세션 정보 및 가상화 정보를 이용하여 가상리소스 접근 경로를 생성하고, 상기 응용프로그램이 소스 리소스에 접근하면 해당 가상 리소스로 접근하도록 상기 가상리소스 접근 경로를 이용하여 우회시키기 위한 리소스 감시 수단을 포함한다.More specifically, in an apparatus for providing a multi-terminal service using resource virtualization, the present invention provides information on a terminal session created according to a connection of a terminal client and a virtual resource individually generated for each user with respect to a source resource of an application. Resource virtualization means for obtaining virtualization information for the network; And a virtual resource access path is generated using the terminal session information and the virtualization information acquired and delivered by the resource virtualization means, and when the application program accesses a source resource, the virtual resource access path is used to access the corresponding virtual resource. Resource monitoring means for bypassing.

또한, 본 발명은, 리소스 가상화를 이용한 다중 터미널서비스 제공 방법에 있어서, 응용프로그램에 종속된 소스 리소스에 대하여 사용자별로 가상 리소스를 생성하고, 상기 생성된 가상화 리소스 각각에 대한 가상화 정보를 저장/관리하는 단계; 터미널 클라이언트의 접속에 따라, 해당 사용자에 대한 터미널 세션 정보 및 가상화 정보를 이용하여 가상리소스 접근 경로를 생성하는 단계; 및 상기 응용프로그램이 상기 소스 리소스로 접근하면, 상기 가상리소스 접근 경로를 이용하여 상기 응용프로그램의 접근을 해당 가상 리소스로 우회시키는 단계를 포함한다.In addition, the present invention, in a multi-terminal service providing method using resource virtualization, to create a virtual resource for each user for the source resource dependent on the application program, and to store / manage the virtualization information for each of the generated virtual resources step; Creating a virtual resource access path using terminal session information and virtualization information for a corresponding user according to a connection of a terminal client; And when the application accesses the source resource, bypassing the access of the application program to the corresponding virtual resource using the virtual resource access path.

상기와 같은 발명은, 터미널 환경의 서버 기반 컴퓨팅 시스템에서 특정 응용프로그램에 종속된 공통 리소스를 사용자별로 가상화하여 사용자별로 개별적/독립적인 서비스 환경을 제공함으로써, 터미널 서비스 환경에서 구동하려는 응용프로그램의 동작 원리와 상관없이 더 많은 프로그램을 터미널 서비스 환경에서 구동할 수 있게 하는 효과가 있다. As described above, in the server-based computing system of a terminal environment, a common resource dependent on a specific application is virtualized for each user to provide an individual / independent service environment for each user, thereby operating an application program to be operated in a terminal service environment. Regardless, it has the effect of allowing more programs to run in the Terminal Services environment.

또한, 본 발명은, 기존에 상용화된 응용프로그램(특히, 단일 사용자만을 고려하여 개발된 기존의 응용프로그램)을 수정/변경하지 않고도 공통 리소스를 사용 자별로 구분하여 관리할 수 있게 하며, 또한 이로 인하여 더 많은 프로그램을 구동하고 다중 사용자의 사용을 가능하게 하는 효과가 있다.In addition, the present invention enables to manage common resources by user without modifying / changing existing commercially available applications (particularly, existing applications developed considering only a single user). This has the effect of running more programs and enabling the use of multiple users.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.The foregoing and other objects, features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings, in which: There will be. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 리소스 가상화를 이용한 다중 터미널서비스 제공 장치의 일실시예 구성도이다.2 is a block diagram of an embodiment of a multi-terminal service providing apparatus using resource virtualization according to the present invention.

본 발명에 따른 다중 터미널서비스 제공 장치(20)는 터미널 서버(14) 내에서 구현된 것으로서, 리소스 가상화를 이용하여 다중 터미널 서비스를 제공하는 장치를 나타낸다. 여기서, 도 2에 도시된 "터미널 서버"는 도 1에 도시된 기존의 터미널 서비스 환경에서의 터미널 서버의 기본적인 기능(터미널 세션 설정 등)을 수행하면서도, 리소스 가상화를 위한 신규한 기술적 특징을 수행하는 바, 엄밀한 의미에서는 식별번호를 도 1과 달리 부여해야 하지만, 본 발명의 적용 환경을 용이하게 이해할 수 있도록 도 1의 식별번호 "14"를 그대로 사용하기로 한다. The apparatus for providing multiple terminal services 20 according to the present invention is implemented in the terminal server 14, and represents an apparatus for providing multiple terminal services using resource virtualization. Here, the "terminal server" shown in FIG. 2 performs basic functions (terminal session establishment, etc.) of the terminal server in the existing terminal service environment shown in FIG. 1, while performing a new technical feature for resource virtualization. In the strict sense, the identification number should be given differently from that of FIG. 1, but the identification number "14" of FIG. 1 will be used as it is to easily understand the application environment of the present invention.

사용자가 사용자 단말(10)을 이용하여 터미널 서버(14)에 접속하여 인증을 수행하면, 터미널 서버(14)는 접속 사용자 단말(10)에 대한 터미널 세션을 운영체제(OS) 내의 사용자 모드(User Mode)(21)에서 생성하여 다른 사용자와는 독립된 환경을 유지시켜주며 또한 응용프로그램(어플리케이션)을 실행한다. 또한, 터미널 서버(14)는 응용프로그램 실행 결과 화면만을 사용자 단말(10)로 전송한다. 여기서, 본 발명에 따른 리소스 가상화 대상이 응용프로그램은 단일 사용자 또는 특정한 범위의 복수의 사용자만을 고려하여 개발한 응용프로그램으로서, 간단히 "단일 사용자용 응용프로그램"이라 할 수 있으며, 이하에서 언급하는 응용프로그램은 "단일 사용자용 응용프로그램"을 의미하기로 한다.When a user connects to the terminal server 14 using the user terminal 10 and performs authentication, the terminal server 14 establishes a terminal session with the access user terminal 10 in a user mode in an operating system (OS). (21) maintains an environment independent of other users, and also runs an application (application). In addition, the terminal server 14 transmits only the application program execution result screen to the user terminal 10. Here, the resource virtualization target application according to the present invention is an application program developed by considering only a single user or a plurality of users of a specific range, and may be simply referred to as a "single user application", and the application program mentioned below Means "single user application".

사용자 단말(10)은 터미널 서버(14)로부터 수신된 응용프로그램 실행 결과 화면상에서 작업을 처리하기 때문에 전송을 받으며 수행하고자 하는 작업을 사용자의 입력(예컨대, 키보드 입력, 마우스 클릭 등)을 통해 터미널 서버(14)로 반환한다. 그러면, 터미널 서버(14)는 사용자 단말(10)로부터 반환된 사용자 입력에 따라 응용프로그램을 처리하고 그에 따른 실행 결과 화면을 다시 사용자 단말(10)로 전송한다.Since the user terminal 10 processes a job on an application program execution result screen received from the terminal server 14, the terminal server receives a job through a user input (for example, a keyboard input, a mouse click, etc.) while receiving a transmission. Return to (14). Then, the terminal server 14 processes the application program according to the user input returned from the user terminal 10 and transmits the execution result screen to the user terminal 10 again.

사용자 단말(10)의 터미널 클라이언트가 터미널 서버(14)에 접속해오면, 터미널 서버(14)는 상기 사용자 단말(10)에 대하여 독립된 터미널 세션을 생성하고 기본 화면을 터미널 클라이언트로 전송한다. 이후, 사용자가 터미널 클라이언트를 통해 표시되는 기본 화면에서 응용프로그램의 실행을 입력(명령)하면, 그 입력 신호는 네트워크를 통해 터미널 서버(10)에 전달되어 터미널 세션에서 사용자가 선택 한 응용프로그램이 실행된다. When the terminal client of the user terminal 10 accesses the terminal server 14, the terminal server 14 creates an independent terminal session for the user terminal 10 and transmits a basic screen to the terminal client. Subsequently, when the user inputs (commands) the execution of an application on the basic screen displayed through the terminal client, the input signal is transmitted to the terminal server 10 through the network so that the application selected by the user in the terminal session is executed. do.

터미널 서버(14)는, 운영체제(OS) 내의 사용자 모드(21)에서 동작하는 "리소스 가상화 에이전트"(211)와 운영체제 내의 커널 모드(Kernel Mode)(22)에서 동작하는 "리소스 감시모듈"(221)를 포함하여 이루어지는데, 여기서 리소스 감시모듈(221)은 운영체제의 커널 단에서 장치 드라이버(Device Driver) 형태로 동작한다. The terminal server 14 is a "resource virtualization agent" 211 operating in the user mode 21 in the operating system (OS) and a "resource monitoring module" (221) operating in the kernel mode (kernel mode) 22 in the operating system (221). The resource monitoring module 221 operates in the form of a device driver in the kernel stage of the operating system.

리소스 가상화 에이전트(211)는 관리자 툴(Tool)에 연결되어, 응용프로그램이 접근하는 소스 리소스(예를 들어, 파일, 폴더, 레지스트리 등)에 대한 가상화 정보를 관리자 툴을 통해 전달받아 리소스 감시모듈(221)에 전달한다. 여기서, 가상화 정보는 가상화 대상 리소스 정보(가상화 대상 리소스, 즉 소스 리소스의 위치 정보 등), 사용자 데이터가 실제 저장될 가상화 경로(사용자별로 생성되는 가상 리소스(목적지 리소스)의 위치 정보), 및 가상화 대상 리소스의 타입 정보를 포함한다. 타입 정보는 소스 리소스(Source Resource)가 파일(File), 폴더(Folder), 또는 레지스트리(Registry) 중 어느 것에 해당하는지를 나타낸다.The resource virtualization agent 211 is connected to an administrator tool, and receives virtualization information about a source resource (for example, a file, a folder, a registry, etc.) that an application accesses through an administrator tool. 221). Here, the virtualization information includes virtualization target resource information (virtualization target resource, that is, location information of the source resource, etc.), virtualization path where user data is actually stored (location information of virtual resource (destination resource) generated for each user), and virtualization target. Contains resource type information. The type information indicates whether the source resource corresponds to a file, a folder, or a registry.

또한, 리소스 가상화 에이전트(211)는 터미널 세션의 생성을 실시간 감시하는데, 터미널 클라이언트의 접근에 따라 사용자의 터미널 세션이 생성되면 해당 터미널 세션의 정보를 리소스 감시모듈(221)로 전달한다. In addition, the resource virtualization agent 211 monitors the creation of the terminal session in real time. When the terminal session of the user is generated according to the access of the terminal client, the resource virtualization agent 211 transfers information of the corresponding terminal session to the resource monitoring module 221.

리소스 감시모듈(221)은, 리소스 가상화 에이전트(211)로부터 전달받은 터미널 세션 정보를 세션정보 DB(231)에 저장하고, 또한 리소스 가상화 에이전트(211)로부터 전달받은 가상화 정보를 가상화 정보 DB(214)에 저장한다. 리소스 감시모 듈(221)은 리소스 가상화 에이전트(211)의 명령에 따라 구동을 시작한다.The resource monitoring module 221 stores the terminal session information received from the resource virtualization agent 211 in the session information DB 231, and further stores the virtualization information received from the resource virtualization agent 211 in the virtualization information DB 214. Store in The resource monitoring module 221 starts driving according to the command of the resource virtualization agent 211.

리소스 감시모듈(221)은, 가상화정보 DB(214)에 저장(기록)되어 있는 가상화 정보[예를 들면, 소스 리소스의 위치정보, 목적지 리소스(사용자별로 생성된 가상 리소스) 위치정보(가상화 경로), 소스 리소스의 타입 정보 등]와, 세션정보 DB(231)에 저장되어 있는 사용자의 터미널 세션 정보(예를 들면, 사용자 ID 등)를 조합하여 사용자별로 가상리소스 접근 경로를 생성한다. The resource monitoring module 221 stores virtualization information (for example, location information of a source resource, destination resource (virtual resource generated for each user), location information (virtualization path) stored (recorded) in the virtualization information DB 214. , Type information of the source resource, etc.] and the terminal session information (eg, user ID, etc.) of the user stored in the session information DB 231 to generate a virtual resource access path for each user.

예를 들어, 소스 리소스의 위치(경로)가 "C:\enc" 폴더이고 목적지 리소스의 위치(경로)(모든 사용자에 대한 가상 리소스가 있는 위치)가 "D:\userdata" 인 경우, 사용자 ID가 "use01"인 사용자가 응용프로그램을 구동하면, 그에 따라 해당 응용프로그램은 소스 리소스 "C:\enc" 폴더에 접근하게 된다. 이 경우, 리소스 감시모듈(221)은 목적지 리소스의 위치(경로)(개별 사용자의 가상 리소스의 위치)(D:\userdata\user01)와 소스 리소스의 위치(경로)(C:\enc)를 조합하여 "D:\userdata\user01\C\enc"라는 가상리소스 접근 경로를 생성한다. For example, if the location (path) of the source resource is the "C: \ enc" folder and the location (path) of the destination resource (where the virtual resource is for all users) is "D: \ userdata", then the user ID When a user with "use01" launches an application, the application will access the source resource "C: \ enc" folder. In this case, the resource monitoring module 221 combines the location (path) of the destination resource (the location of the virtual resource of the individual user) (D: \ userdata \ user01) and the location (path) of the source resource (C: \ enc). Create a virtual resource access path named "D: \ userdata \ user01 \ C \ enc".

예에서, 사용자 ID가 "user02"인 다른 사용자가 동일한 응용프로그램을 구동하고, 그에 따라 해당 응용프로그램이 소스 리소스 "C:\enc" 폴더에 접근하는 경우, 위와 동일한 원리에 따라 "D:\userdata\user02\C\enc"라는 가상리소스 접근 경로를 생성한다. In the example, if another user with user ID "user02" runs the same application, and that application accesses the source resource "C: \ enc" folder, according to the same principle as above, "D: \ userdata Create a virtual resource access path named \ user02 \ C \ enc ".

리소스 감시모듈(221)은, 운영체제 내의 파일 관리자(File Manager)에 로드되어 응용프로그램의 소스 리소스 접근을 필터링하여 가상 리소스(목적지 리소스)로 우회(Redirection)시킨다.The resource monitoring module 221 is loaded into a file manager in the operating system to filter access of source resources of an application program to redirect to virtual resources (destination resources).

즉, 리소스 감시모듈(221)은 터미널 서버(14)의 리소스 중 가상화정보 DB(232)에 저장(기록)되어 있는 소스 리소스에 대해서만 응용프로그램의 접근을 감시하고, 감시결과 응용프로그램이 소스 리소스("C:\enc")에 접근하면 가상 리소스("D:\userdata\user01\C\enc" 또는 "D:\userdata\user02\C\enc")로 접근하도록 접근 경로를 변경시킨다. That is, the resource monitoring module 221 monitors the access of the application program only to the source resource stored (recorded) in the virtualization information DB 232 among the resources of the terminal server 14, and the monitoring result application is the source resource ( Accessing "C: \ enc") changes the access path to access virtual resources ("D: \ userdata \ user01 \ C \ enc" or "D: \ userdata \ user02 \ C \ enc").

구체적으로, 리소스 감시모듈(221)은, 응용프로그램으로부터 전송되는 모든 입출력 요청 패킷(IRPs: I/O Request Packets)을 감시하여 소스 리소스로 향하는 IRPs를 가상 리소스로 리다이렉트(Redirect)한다. 즉, 리소스 감시모듈(221)은 패킷의 목적지 주소를 판독하여 소스 리소스로 향하는 경우, 해당 패킷의 목적지 주소를 가상 리소스의 주소로 변경한다.Specifically, the resource monitoring module 221 monitors all I / O request packets (IRPs) transmitted from the application program and redirects IRPs directed to the source resource to the virtual resource. That is, when the resource monitoring module 221 reads the destination address of the packet and heads to the source resource, the resource monitoring module 221 changes the destination address of the packet into the address of the virtual resource.

복수의 사용자가 동일한 응용프로그램을 이용하더라도 공통 리소스(소스 리소스)가 사용자 별로 독립적으로 가상화됨으로써, 사용자 별로 개별적인 응용프로그램 환경이 제공되는 것이다.Even if a plurality of users use the same application program, the common resources (source resources) are virtualized independently for each user, thereby providing a separate application environment for each user.

도 3은 본 발명에 따른 리소스 가상화를 이용한 다중 터미널서비스 제공 방법에 대한 일실시예 흐름도로서, 터미널 서버(14)(더욱 정확하게는, 다중 터미널 서비스 제공 장치(20))에서 수행되는 리소스 가상화를 이용한 다중 터미널서비스 제공 방법을 나타낸다. 3 is a flowchart illustrating a method for providing a multi-terminal service using resource virtualization according to the present invention, using resource virtualization performed in a terminal server 14 (more precisely, a multi-terminal service providing apparatus 20). Shows how to provide multiple terminal services.

다중 터미널 서비스 제공 장치(20)는 사용자별로 가상 리소스를 생성하고, 해당 가상화 정보를 저장한다(300). 즉, 다중 터미널 서비스 제공 장치(20)는 응용 프로그램에 종속된 소스 리소스("C:\enc")에 대하여 각각의 사용자별로 별도의 가상 리소스(목적지 리소스)를 생성하는데, 구체적으로는 가상화 대상이 되는 소스 리소스(폴더, 파일, 레지스트리 등)를 사용자별로 복사하여 사용자별로 지정된 저장소에 위치시키는 것이다. 그리고, 다중 터미널 서비스 제공 장치(20)는 그 생성된 가상 리소스(목적지 리소스)에 대한 가상화 정보(경로 내지 위치 정보 등)를 저장한다. The multi-terminal service providing apparatus 20 generates a virtual resource for each user and stores corresponding virtualization information (300). That is, the multi-terminal service providing apparatus 20 generates a separate virtual resource (destination resource) for each user for a source resource ("C: \ enc") that is dependent on an application. Copy source resources (folders, files, registry, etc.) by user and place them in the repository designated by each user. The multi-terminal service providing apparatus 20 stores virtualization information (path or location information, etc.) for the generated virtual resource (destination resource).

이후, 사용자 단말(터미널 클라이언트)가 접근하면, 다중 터미널 서비스 제공 장치(20)는 터미널 세션을 생성(설정)하고, 그 생성된 세션 정보와 "300"에서 저장된 가상화 정보를 이용하여 가상리소스 접근 경로("D:\userdata\user01\C\enc" 또는 D:\userdata\user02\C\enc")를 생성한다(302).Subsequently, when the user terminal (terminal client) approaches, the multi-terminal service providing apparatus 20 creates (sets) a terminal session, and uses the generated session information and the virtualization information stored in “300” to access the virtual resource. ("D: \ userdata \ user01 \ C \ enc" or D: \ userdata \ user02 \ C \ enc ") is created (302).

다중 터미널 서비스 제공 장치(20)는 사용자 단말(터미널 클라이언트)이 특정한 응용프로그램을 통하여 소스 리소스(가상화 대상이 된 리소스)에 접근하는지를 감시한다(304, 306).The multi-terminal service providing apparatus 20 monitors whether a user terminal (terminal client) accesses a source resource (a resource targeted for virtualization) through a specific application program (304, 306).

감시 결과, 특정한 응용프로그램이 소스 리소스로 접근하는 것이 감지되면(306), 다중 터미널 서비스 제공 장치(20)는 "302" 단계에서 생성한 가상리소스 접근 경로를 이용하여 리다이렉션(Redirection)한다(308). 즉, 다중 터미널 서비스 제공 장치(20)는 특정 응용프로그램이 소스 리소스 대신에 해당 사용자에 대한 가상 리소스로 접근하도록 경로를 변경한다.As a result of monitoring, when it is detected that a specific application accesses the source resource (306), the multi-terminal service providing apparatus 20 redirects (308) using the virtual resource access path generated in step 302. . That is, the multi-terminal service providing apparatus 20 changes a path so that a specific application accesses a virtual resource for a corresponding user instead of a source resource.

한편, 전술한 바와 같은 본 발명의 방법은 컴퓨터 프로그램으로 작성이 가능하다. 그리고 상기 프로그램을 구성하는 코드 및 코드 세그먼트는 당해 분야의 컴 퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 작성된 프로그램은 컴퓨터가 읽을 수 있는 기록매체(정보저장매체)에 저장되고, 컴퓨터에 의하여 판독되고 실행됨으로써 본 발명의 방법을 구현한다. 그리고 상기 기록매체는 컴퓨터가 판독할 수 있는 모든 형태의 기록매체를 포함한다.On the other hand, the method of the present invention as described above can be written in a computer program. And code and code segments constituting the program can be easily inferred by computer programmers in the art. In addition, the written program is stored in a computer-readable recording medium (information storage medium), and read and executed by a computer to implement the method of the present invention. The recording medium may include any type of computer readable recording medium.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above is capable of various substitutions, modifications, and changes without departing from the technical spirit of the present invention for those skilled in the art to which the present invention pertains. It is not limited by the drawings.

도 1은 일반적인 터미널 서비스 시스템의 구성도,1 is a block diagram of a general terminal service system;

도 2는 본 발명에 따른 리소스 가상화를 이용한 다중 터미널서비스 제공 장치의 일실시예 구성도,2 is a block diagram of an embodiment of a multi-terminal service providing apparatus using resource virtualization according to the present invention;

도 3은 본 발명에 따른 리소스 가상화를 이용한 다중 터미널서비스 제공 방법에 대한 일실시예 흐름도이다.3 is a flowchart illustrating a method for providing a multi-terminal service using resource virtualization according to the present invention.

* 도면의 주요부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawings

10: 사용자 단말(터미널 클라이언트) 14: 터미널 서버10: user terminal (terminal client) 14: terminal server

20: 다중 터미널 서비스 제공 장치 21: 사용자 모드20: multi-terminal service providing device 21: user mode

22: 커널 모드 211: 리소스 가상화 에이전트22: Kernel Mode 211: Resource Virtualization Agent

221: 리소스 감시 모듈 231: 세션정보 DB221: resource monitoring module 231: session information DB

232: 가상화정보 DB232: virtualization information DB

Claims (13)

리소스 가상화를 이용한 다중 터미널서비스 제공 장치에 있어서,In the multi-terminal service providing apparatus using resource virtualization, 터미널 클라이언트의 접속에 따라 생성된 터미널 세션에 대한 정보와, 응용프로그램의 소스 리소스에 대하여 사용자별로 개별 생성된 가상 리소스에 대한 가상화 정보를 획득하기 위한 리소스 가상화 수단; 및Resource virtualization means for obtaining information on a terminal session created according to a connection of a terminal client and virtualization information on a virtual resource individually generated for each user with respect to a source resource of an application program; And 상기 리소스 가상화 수단이 획득하여 전달한 터미널 세션 정보 및 가상화 정보를 이용하여 가상리소스 접근 경로를 생성하고, 상기 응용프로그램이 소스 리소스에 접근하면 해당 가상 리소스로 접근하도록 상기 가상리소스 접근 경로를 이용하여 우회시키기 위한 리소스 감시 수단Create a virtual resource access path using the terminal session information and the virtualization information obtained and delivered by the resource virtualization means, and bypassing the virtual resource access path to access the virtual resource when the application program accesses the source resource Resource monitoring means for 을 포함하는 다중 터미널서비스 제공 장치.Multi-terminal service providing apparatus comprising a. 제 1 항에 있어서,The method of claim 1, 상기 리소스 가상화 수단은,The resource virtualization means, 상기 터미널 클라이언트의 접속에 따라 터미널 세션이 생성될 때마다 해당 터미널 세션 정보를 획득하여 상기 리소스 감시 수단에 전달하는 것을 특징으로 하는 다중 터미널서비스 제공 장치.Whenever a terminal session is created according to the access of the terminal client, the terminal terminal information is acquired and transmitted to the resource monitoring means. 제 1 항에 있어서,The method of claim 1, 상기 가상 리소스는,The virtual resource, 가상화 대상이 되는 상기 소스 리소스를 복사하여 사용자별로 서로 다른 저장소에 위치시킴으로써 생성되는 것을 특징으로 하는 다중 터미널서비스 제공 장치.Multi-terminal service providing apparatus characterized in that it is generated by copying the source resource to be virtualized and placed in different storage for each user. 제 1 항에 있어서,The method of claim 1, 상기 가상화 정보는,The virtualization information, 가상화 대상이 되는 소스 리소스의 위치정보, 사용자별로 생성된 가상 리소스의 위치정보, 및 가상화 대상 리소스의 타입 정보를 포함하는 다중 터미널서비스 제공 장치.Multi-terminal service providing apparatus including the location information of the source resource to be virtualized, the location information of the virtual resource generated for each user, and the type information of the virtualization target resource. 제 4 항에 있어서,The method of claim 4, wherein 상기 가상화 대상 리소스의 타입은,The virtualization target resource type is 파일, 폴더, 및 레지스트리를 포함하는 다중 터미널서비스 제공 장치.Multiple Terminal Services Provisioning Devices, including files, folders, and registries. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,6. The method according to any one of claims 1 to 5, 상기 리소스 가상화 수단은,The resource virtualization means, 운영체제의 사용자 모드에서 동작하고;Operating in the user mode of the operating system; 상기 리소스 감시 수단은 The resource monitoring means 상기 운영체제의 커널 모드에서 동작하는 다중 터미널서비스 제공 장치.Multi-terminal service providing apparatus operating in the kernel mode of the operating system. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,6. The method according to any one of claims 1 to 5, 상기 리소스 감시 수단은,The resource monitoring means, 상기 응용프로그램으로부터 전송되는 입/출력 요청 패킷의 목적지 주소를 판독하여 상기 소스 리소스로의 접근을 감지하는 다중 터미널서비스 제공 장치.And a terminal address of an input / output request packet transmitted from the application program to detect an access to the source resource. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,6. The method according to any one of claims 1 to 5, 상기 응용프로그램은,The application program, 단일 사용자용 응용프로그램인 것을 특징으로 하는 다중 터미널서비스 제공 장치.Multiple terminal service providing apparatus, characterized in that the application for a single user. 리소스 가상화를 이용한 다중 터미널서비스 제공 방법에 있어서,In the multi-terminal service providing method using resource virtualization, 응용프로그램에 종속된 소스 리소스에 대하여 사용자별로 가상 리소스를 생 성하고, 상기 생성된 가상화 리소스 각각에 대한 가상화 정보를 저장/관리하는 단계;Creating a virtual resource for each user for a source resource dependent on an application program, and storing / managing virtualization information for each of the generated virtual resources; 터미널 클라이언트의 접속에 따라, 해당 사용자에 대한 터미널 세션 정보 및 가상화 정보를 이용하여 가상리소스 접근 경로를 생성하는 단계; 및Creating a virtual resource access path using terminal session information and virtualization information for a corresponding user according to a connection of a terminal client; And 상기 응용프로그램이 상기 소스 리소스로 접근하면, 상기 가상리소스 접근 경로를 이용하여 상기 응용프로그램의 접근을 해당 가상 리소스로 우회시키는 단계If the application accesses the source resource, bypassing the access of the application to the corresponding virtual resource using the virtual resource access path; 를 포함하는 다중 터미널서비스 제공 방법.Multi-terminal service providing method comprising a. 제 9 항에 있어서,The method of claim 9, 상기 가상화 정보는,The virtualization information, 가상화 대상이 되는 소스 리소스의 위치정보, 사용자별로 생성된 가상 리소스의 위치정보, 및 가상화 대상 리소스의 타입 정보를 포함하는 다중 터미널서비스 제공 방법.A method for providing a multi-terminal service including location information of a source resource to be virtualized, location information of a virtual resource generated for each user, and type information of a virtualization target resource. 제 9 항에 있어서,The method of claim 9, 상기 응용프로그램으로부터 전송되는 입/출력 요청 패킷의 목적지 주소를 판독하여 상기 소스 리소스로의 접근을 감지하는 다중 터미널서비스 제공 방법.And detecting access to the source resource by reading a destination address of an input / output request packet transmitted from the application program. 제 9 항 내지 제 11 항 중 어느 한 항에 있어서,The method according to any one of claims 9 to 11, 상기 가상 리소스는,The virtual resource, 가상화 대상이 되는 상기 소스 리소스를 복사하여 사용자별로 서로 다른 저장소에 위치시키는 다중 터미널서비스 제공 방법.Method of providing a multi-terminal service by copying the source resources to be virtualized and placed in different storage for each user. 제 9 항 내지 제 11 항 중 어느 한 항에 있어서,The method according to any one of claims 9 to 11, 상기 응용프로그램은,The application program, 단일 사용자용 응용프로그램인 것을 특징으로 하는 다중 터미널서비스 제공 방법.Method for providing multiple terminal services, characterized in that the application for a single user.
KR1020090064139A 2009-07-14 2009-07-14 Apparatus and method for multi-terminal service using resource virtualization KR20110006487A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090064139A KR20110006487A (en) 2009-07-14 2009-07-14 Apparatus and method for multi-terminal service using resource virtualization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090064139A KR20110006487A (en) 2009-07-14 2009-07-14 Apparatus and method for multi-terminal service using resource virtualization

Publications (1)

Publication Number Publication Date
KR20110006487A true KR20110006487A (en) 2011-01-20

Family

ID=43613320

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090064139A KR20110006487A (en) 2009-07-14 2009-07-14 Apparatus and method for multi-terminal service using resource virtualization

Country Status (1)

Country Link
KR (1) KR20110006487A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101326231B1 (en) * 2011-12-13 2013-11-11 고려대학교 산학협력단 Virtualization software service system, and sevice server and user terminal therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101326231B1 (en) * 2011-12-13 2013-11-11 고려대학교 산학협력단 Virtualization software service system, and sevice server and user terminal therefor

Similar Documents

Publication Publication Date Title
US20210182239A1 (en) Trusted File Indirection
JP5066613B2 (en) Security management apparatus and method, and program
TWI526931B (en) Inherited product activation for virtual machines
US7735081B2 (en) Method, apparatus and system for transparent unification of virtual machines
US8856783B2 (en) Allocating virtual machines according to user-specific virtual machine metrics
US11216563B1 (en) Security assessment of virtual computing environment using logical volume image
EP2302509B1 (en) Synchronization of server-side cookies with client-side cookies
KR101489301B1 (en) Virtual environment system and operating method of the system
US8468522B2 (en) Virtual machine system, system for forcing policy, method for forcing policy, and virtual machine control program
US11757937B2 (en) Enabling webapp security through containerization
US20100306763A1 (en) Virtual Serial Concentrator for Virtual Machine Out-of-Band Management
CN106063218A (en) Method, apparatus and system for encryption/decryption in virtualization system
JP7397557B2 (en) Secure Execution Guest Owner Environment Control
KR100892417B1 (en) Portable memory for supporting portable computing operation and portable computing operation system using as the same
TW202038114A (en) Binding secure keys of secure guests to a hardware security module
US7797727B1 (en) Launching an application in a restricted user account
KR20110006487A (en) Apparatus and method for multi-terminal service using resource virtualization
JP5439559B2 (en) Security management apparatus and method, and program
KR100988111B1 (en) Apparatus and method for virtualization of resource in server based computing system of terminal environment
KR101089792B1 (en) Method for providing security for application virtualization
US20140325605A1 (en) System for storage security of cloud server in cloud computing environment and method thereof
KR101103313B1 (en) medium control method in virtual machine environment
KR101434794B1 (en) The method and system for defending program hacking
US9239729B1 (en) Sidecar file framework for managing virtual disk plug-in data and metadata
US20240012666A1 (en) Protecting container images and runtime data

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20121221

Effective date: 20140123