KR20130007373A - 가상 데스크탑 서비스를 위한 방법 및 아키텍처 - Google Patents

가상 데스크탑 서비스를 위한 방법 및 아키텍처 Download PDF

Info

Publication number
KR20130007373A
KR20130007373A KR20110065680A KR20110065680A KR20130007373A KR 20130007373 A KR20130007373 A KR 20130007373A KR 20110065680 A KR20110065680 A KR 20110065680A KR 20110065680 A KR20110065680 A KR 20110065680A KR 20130007373 A KR20130007373 A KR 20130007373A
Authority
KR
South Korea
Prior art keywords
virtual machine
virtual
user terminal
virtual desktop
connection broker
Prior art date
Application number
KR20110065680A
Other languages
English (en)
Other versions
KR101507919B1 (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 KR20110065680A priority Critical patent/KR101507919B1/ko
Priority to US13/434,696 priority patent/US9086897B2/en
Publication of KR20130007373A publication Critical patent/KR20130007373A/ko
Application granted granted Critical
Publication of KR101507919B1 publication Critical patent/KR101507919B1/ko

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
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; 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/31User authentication
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • 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/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

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 Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 가상 데스크탑 서비스를 효율적으로 제공할 수 있는 방법 및 아키텍처에 관한 것이다. 본 발명에 따른 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 서비스 아키텍처는, 인증(Authentication), 가상머신(Virtual Machine)의 관리, 서버 모니터링 및 프로토콜 코디네이션(Coordination) 기능을 수행하는 커넥션 브로커(Connection Broker); 요구형(On-Demand) 가상 데스크탑 서비스를 제공하기 위하여, 스트리밍 형태로 소정의 시간에 특정 가상머신으로 전달되어 상기 특정 가상머신 상에서 실행되는 소프트웨어 리소스를 관리하고, 상기 관리되는 소프트웨어 리소스에 관한 프로비전 정보(Provision Information)를 상기 커넥션 브로커의 요청에 따라 제공하는 리소스 풀(Resource Pool); 및 하드웨어 리소스를 지원하고, 상기 사용자 단말의 소프트웨어가 동작되는 가상머신들을 생성하여 가상 데스크탑들로써 제공하는 가상머신 인프라스트럭처를 포함한다.

Description

가상 데스크탑 서비스를 위한 방법 및 아키텍처{METHOD AND ARCHITECTURE FOR VIRTUAL DESKTOP SERVICE}
본 발명은 가상 데스크탑 서비스(Virtual Desktop Service) 또는 데스크탑 가상화 관련 기술에 관한 것이다.
요즈음, 데이터 저장 하드디스크와 애플리케이션 등을 인터넷 공간에 제공하는 서비스로서의 가상 데스크탑 서비스(Virtual Desktop Service)에 대한 연구 및 표준화 활동이 많이 이루어지고 있다.
한국공개특허 제2010-0123847호, 2009-0111576호 및 2009-0111576호 등은 가상 데스크탑 서비스 기술에 대하여 상세히 개시하고 있다.
하지만, 이러한 가상 데스크탑 서비스에 대한 아키텍처(Architecture)가 아직 표준화되지 않고 있는 상황이며, 이로 인해 사용자에게 가상 데스크탑 서비스를 효율적으로 제공하지 못하는 한계점이 있는 실정이다.
이러한 배경에서, 본 발명은 가상 데스크탑 서비스를 효율적으로 제공할 수 있는 아키텍처(Architecture)를 제공하는 데 주된 목적이 있다.
전술한 목적을 달성하기 위하여, 일 측면에서, 본 발명은, 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 서비스 아키텍처에 있어서, 사용자 단말이 가상 데스크탑에 연결하도록 하는 소프트웨어 프로그램으로서, 상기 사용자 단말과 상기 사용자 단말의 소프트웨어에 대한 유효성을 확인하는 사용자 인증(Authentication) 및 라이센스 확인(License Verification) 기능과, 상기 사용자 단말에 할당되는 가상머신(VM: Virtual Machine)의 관리 기능과, 상기 가상머신의 활동 레벨을 측정하는 서버의 모니터링 기능과, 상기 사용자 단말과 상기 서버 간에 동일한 프로토콜이 사용되도록 하는 프로토콜 코디네이션(Coordination) 기능을 수행하는 커넥션 브로커(Connection Broker); 요구형(On-Demand) 가상 데스크탑 서비스를 제공하기 위하여, 스트리밍 형태로 소정의 시간에 특정 가상머신으로 전달되어 상기 특정 가상머신 상에서 실행되는 소프트웨어 리소스를 관리하고, 상기 관리되는 소프트웨어 리소스에 관한 프로비전 정보(Provision Information)를 상기 커넥션 브로커의 요청에 따라 제공하는 리소스 풀(Resource Pool); 및 하드웨어 리소스를 지원하고, 상기 사용자 단말의 소프트웨어가 동작되는 가상머신들을 생성하여 가상 데스크탑들로써 제공하는 가상머신 인프라스트럭처를 포함하는 가상 데스크탑 서비스를 위한 서비스 아키텍처를 제공한다.
다른 측면에서, 본 발명은, 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 방법에 있어서, 사용자 단말이 SSH(Secure Shell) 및 TLS(Transport Layer Security) 중 하나 이상의 보안 프로토콜을 통하여 접속되면, 커넥션 브로커(Connection Broker)가 사용자 ID 및 비밀번호로 해당 사용자를 확인(Validate)하는 단계; 상기 커넥션 브로커가, 가상머신(Virtual Machine) 할당을 위해서, 해당하는 사용자 프로파일을 식별하고, 프로비저닝 기능(Provisioning Function)을 이용하여 상기 사용자 단말의 하드웨어 구성을 만족하고 컴퓨팅 환경에 최적인 가상머신을 검색하는 단계; 적당한 가상머신이 없으면, 상기 커넥션 브로커가 상기 하드웨어 구성에 대한 정보를 전송함으로써 가상머신 인프라스트럭처에게 가상머신 생성을 요청하는 단계; 상기 커넥션 브로커가, 가상머신이 할당되거나 생성된 이후, 사용자 프로파일을 상기 할당되거나 생성된 가상머신에 적용하는 단계; 상기 가상머신 인프라스트럭처가 해당하는 가상 데스크탑을 전달하기 위한 세션을 생성하고, 상기 생성된 세션에 대한 세션 정보를 상기 커넥션 브로커로 디스패치되는 단계; 상기 커넥션 브로커가 상기 세션 정보를 상기 사용자 단말로 전송하여 상기 사용자 단말과 상기 가상머신 인프라스트럭처가 연결되는 단계; 상기 사용자 단말이 가상 데스크탑 전송 프로토콜(VDDP: Virtual Desktop Delivery Protocol)을 이용하여 가상 데스크탑에 의해서 사용자들의 경험(Experience) 정보를 커뮤니케이션하는 단계; 및 상기 사용자 단말이 가상 데스크탑 서비스가 종료될 때 사용자 데이터의 손실을 방지하기 위하여 로그-오프 동작을 실행하고, 상기 로그-오프 동작 도중에, 상기 커넥션 브로커가 변경된 사용자 프로파일을 사용자 프로파일 풀(User Profile Pool) 내에 업데이트하는 단계를 포함하는 가상 데스크탑 서비스를 위한 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명에 의하면, 가상 데스크탑 서비스를 효율적으로 제공할 수 있는 아키텍처(Architecture)를 제공하는 효과가 있다.
도 1은 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 서비스 아키텍처를 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 서비스 아키텍처에 대한 개념적인 다이어그램이다.
도 3은 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 방법에 대한 흐름도이다.
도 4는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처를 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처에 대한 개념적인 다이어그램이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 실시예에 따른 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 서비스 아키텍처(Service Architecture)를 나타낸 도면이다.
서비스 제공자(Service Provider)의 입장에서 종단-사용자(End-User)에게 가상 데스크탑 서비스를 제공하기 위하여 몇몇의 단계들이 있으며, 이러한 단계들은 도 1에 도시된 바와 같이, 커넥션 브로커(CB: Connection Broker, 110), 리소스 풀(Resource Pool, 120) 및 가상머신 인프라스트럭처(Virtual Machine Infrastructure, 130)를 포함하는 3가지의 주요 액터들(Actors)에 의해 수행될 수 있다.
이하에서는, 3가지의 주요 액터들(Actors)의 기능에 대하여 도 2를 참조하여 설명한다.
도 2는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 서비스 아키텍처에 대한 개념적인 다이어그램(Conceptual Diagram)이다.
도 2를 참조하면, 커넥션 브로커(110)는 사용자 단말(20)이 가상 데스크탑(Virtual Desktop, 200)에 연결되도록 하는 소프트웨어 프로그램일 수 있으며, 사용자 단말(20)과 사용자 단말(20)의 소프트웨어를 승인하기(validate) 위한 사용자 인증(User Authentication, 211) 및 라이센스 확인(License Verification, 212) 기능과, 사용자 단말(20)에 할당되는 가상머신(VM: Virtual Machine)의 관리 기능과, 가상머신의 활동 레벨(Activity Level)을 측정하는 서버의 모니터링 기능(213)과, 사용자 단말(20)과 서버 간에 동일한 프로토콜이 사용되도록 하는 프로토콜 코디네이션(Protocol Coordination, 214) 기능을 수행한다.
이러한 커넥션 브로커(110)는, 백업 스토리지(Backup Storage)와 가상 데스크탑 서비스 서버(Virtual Desktop Servers) 간의 연결(Connection)을 제공할 수 있다.
도 2를 참조하면, 리소스 풀(120)은, 요구형(On-Demand) 가상 데스크탑 서비스를 제공하기 위하여, 운영체제(OS: Operating Systems), 애플리케이션(Applications) 및 사용자 프로파일들(User Profiles) 등과 같은 3개의 다른 타입의 고성능 소프트웨어 리소스들(High-Capacity Software Resources)을 관리할 수 있다. 즉, 리소스 풀(120)은, 도 2에 도시된 바와 같이, 운영체제 풀(OS Pool, 221), 애플리케이션 풀(Application Pool, 222) 및 사용자 프로파일 풀(User Profile Pool, 223) 등을 포함한다.
이러한 리소스 풀(120)에 의해 관리되는 소프트웨어 리소스들은 스트리밍 형태로의 소정의 시간에 특정 가상머신으로 전달되고 특정 가상머신 상에서 실행된다.
그리고, 리소스 풀(120)은 커넥션 브로커(110)에 의한 요청으로 해당 소프트웨어 리소스에 관한 프로비전 정보(Provision Information, 224)를 제공할 수 있다.
위에서 언급한 사용자 프로파일은, 일 예로, 하드웨어 구성(예를 들면, CPU, RAM, I/O 등), 사용되는 운영체제(OS), 선택된 애플리케이션, 사용자의 컴퓨팅 환경 정보(예를 들면, 디스플레이 해상도, 인터넷 액세스 방식 등)에 대한 개별 정보를 포함할 수 있다. 이러한 사용자 프로파일은 사용자별로 관리될 수 있다.
도 2를 참조하면, 가상머신 인프라스트럭처(130)는, 하드웨어 리소스(Hardware Resources, 231)를 지원하고 가상머신(VM: Virtual Machine, 232)을 생성하는 주요 역할을 한다.
가상 데스크탑 서버(Virtual Desktop Server)에서, 일 예로, 하이퍼바이저(Hypervisor, 233)라고도 불리는 가상화 기술(Virtualization Technology)은 위에서 언급한 하드웨어 리소스(231)를 효율적으로 사용하기 위해서 매우 필요할 것이다.
위에서 언급한 하이퍼바이저(233)는 물리적인 하드웨어 리소스들(231)을 추출(Abstract)하여 소프트웨어(234)의 상위 레벨로 동적으로 할당한다.
즉, 이러한 가상머신 인프라스트럭처(130)에서 지원되는 하드웨어 리소스(231)는, 물리적인 하드웨어 리소스(231)를 추출(Abstract)해서 소프트웨어(234)의 상위 레벨로 동적으로 할당하는 가상 데스크탑 서버 내에서의 하이퍼바이저(Hypervisor) 가상화 기술에 의해 효율적으로 사용될 수 있다.
결과적으로, 가상머신 인프라스트럭처(130)는 사용자 단말(20)의 소프트웨어(234)가 동작되는 가상머신들(232)을 제공한다. 이러한 가상머신들을 가상 데스크탑들(Virtual Desktops, 200)이라 한다.
아래에서는, 가상 데스크탑 서비스를 위한 방법을 도 3을 참조하여 설명하고, 이때, 가상 데스크탑 서비스를 위한 서비스 아키텍처에 대한 개념적인 다이어그램을 도시한 도 2를 함께 참조한다.
도 3은 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 방법에 대한 흐름도이다.
도 3을 참조하면, 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 방법은 사용자 단말 접속 및 사용자 확인 단계(S300), 가상머신 검색 단계(S302), 사용자 프로파일 적용 단계(S308), 세션 생성 단계(S310), 사용자 단말 연결 단계(S312), 경험 정보 커뮤니케이션 단계(S314), 로그-오프 동작 및 사용자 프로파일 업데이트 단계(S316) 등에 따라 진행된다.
사용자 단말 접속 및 사용자 확인 단계(S300)에서는, 사용자 단말(20)이 SSH(Secure Shell) 및 TLS(Transport Layer Security) 등 중 하나 이상의 보안 프로토콜을 통하여 접속되면, 커넥션 브로커(110)는 사용자 ID 및 비밀번호로 해당 사용자를 확인(Validate)한다.
가상머신 검색 단계(S302)에서, 커넥션 브로커(110)는, 가상머신 할당을 위해서, 해당하는 사용자 프로파일(User Profile)을 식별하고, 프로비저닝 기능(Provisioning Function)을 이용하여 사용자 단말(20)의 하드웨어 구성을 만족하고 컴퓨팅 환경에 최적인 가상머신을 검색한다.
이러한 가상머신 검색 단계(S302)에서의 검색 결과에 가상머신 검색 유무를 판단(S304)하여, 적당한 가상머신이 없으면, 커넥션 브로커(110)가 하드웨어 구성에 대한 정보를 전송함으로써 가상머신 인프라스트럭처(130)에게 가상머신 생성을 요청한다. 이에 따라, 가상머신 인프라스트럭처(130)에서 가상머신이 생성된다(S306).
사용자 프로파일 적용 단계(S308)에서, 가상머신이 할당되거나 생성된 이후, 커넥션 브로커(110)는, 사용자 프로파일을 할당되거나 생성된 가상머신에 적용(Apply)한다.
이러한 사용자 프로파일 적용 단계(S308)에서, 커넥션 브로커(110)는 가상 데스크탑(200)을 구성(Construct) 하기 위한 운영체제(OS) 및 애플리케이션을 설치(Installation)할 수 있다.
세션 생성 단계(S310)에서, 가상 데스크탑(200)을 전달하기 위한 세션(Session)이 가상머신 인프라스트럭처(130) 내에서 생성되고, 생성된 세션에 대한 세션 정보가 커넥션 브로커(110)로 디스패치(Dispatch)된다.
사용자 단말 연결 단계(S312)에서, 커넥션 브로커(110)는 세션 정보를 사용자 단말(20)로 전송하고, 사용자 단말(20)은 가상머신 인프라스트럭처(130)와 연결된다.
경험 정보 커뮤니케이션 단계(S314)에서, 사용자 단말(20)은 가상 데스크탑 전송 프로토콜(VDDP: Virtual Desktop Delivery Protocol)을 이용하여 가상 데스크탑(200)에 의해서 사용자들의 경험(Experience) 정보를 커뮤니케이션(Communication)한다.
로그-오프 동작 및 사용자 프로파일 업데이트 단계(S316)에서, 사용자 단말(20)은 가상 데스크탑 서비스가 종료될 때 사용자 데이터의 손실을 방지하기 위하여 로그-오프(Log-Off) 동작을 실행하고, 이러한 로그-오프 동작 도중에, 커넥션 브로커(110)는 변경된 사용자 프로파일을 사용자 프로파일 풀(User Profile Pool, 223) 내에 업데이트한다.
이러한 로그-오프 동작 및 사용자 프로파일 업데이트 단계(S316)에서, 커넥션 브로커(110)는 해당 가상머신이 이용 가능한 상태가 되도록 해당 가상머신을 리턴(Return) 시킬 수 있다.
이하에서는, 본 발명의 실시예에 따른 가상 데스크탑 서비스의 기능상 레이어(Functional Layer)에 대하여 도 4 및 도 5를 참조하여 설명한다.
도 4는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처(Functional Layered Architecture)를 나타낸 도면이다.
도 4를 참조하면, 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처는, 사용자 레이어(User Layer, 410), 클라우드 액세스 및 퍼블리케이션 레이어(Cloud Access and Publication Layer, 420), 클라우드 네트워크 서비스 오케스트레이션 레이어(Cloud Network Service Orchestration Layer, 430), 클라우드 서비스 레이어(Cloud Services Layer, 440) 및 리소스 레이어(Resource Layer, 450) 등의 기능적인 레이어(Functional Layer)를 포함한다.
아래에서는, 위에서 언급한 기능적인 레이어 각각에 대하여 도 5를 참조하여 설명한다.
도 5는 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처를 나타낸 도면이다.
도 5를 참조하면, 사용자 레이어(410)는, 사용자 단말(50)과 클라우드 인프라스트럭처(Cloud Infrastructure) 간의 인터랙션(Interaction)을 수행하고, 클라우드 서비스 요청을 전송하며, 클라우드 서비스 액세스를 수행하고, 클라우드 리소스를 관리하거나 모니터하기 위해 사용되고, 종단 사용자 기능(End User Function, 511), 단말 적응 기능(Terminal Adaptation Function, 512), 관리 기능(Administration Function, 513), 파트너(510)와의 파트너 기능(Partner Function, 514) 및 인터-클라우드 기능(Inter-Cloud Function, 515) 등을 포함한다.
클라우드(Cloud)가 클라우드 서비스 요청을 수신할 때, 클라우드는 인터-클라우드 기능(515)을 통해 자신의 리소스 또는 다른 클라우드의 리소스를 조직(Orchestrate)하고, 클라우드 서비스를 사용자 레이어(515)를 통해 제공한다.
종단 사용자 기능(511)은 종단 사용자, 즉 사용자 단말(50)이 클라우드 서비스에 액세스하고 클라우드 서비스를 소비(consume)하도록 지원한다.
관리 기능(513)은 기업 관리자가 비즈니스 프로세스 내에서 클라우드 리소스 및 서비스를 관리하는 것을 지원한다.
파트너 기능(514)은 클라우드 서비스 공급자를 통해 파트너 관계를 가능하게 한다.
인터-클라우드 기능(515)은 여러 개의 CSP(Cloud Service Provider)들의 클라우드들과 인터커넥트(Interconnection)하기 위하여 인터커넥션 인터페이스(Interconnection Interface) 및 브로커(Broker) 기능을 제공한다. 이러한 인터-클라우드 기능(515)은 인터-클라우드 서비스 브로커 기능(Inter-Cloud Service Broker function), 인터-클라우드 포털 기능(Inter-Cloud Portal function) 등을 포함한다.
인터-클라우드 브로커 기능은 다른 CSP들(52)의 클라우드 서비스 및 리소스에 접근하기 위하여 클라우드 사용자들 또는 애플리케이션들에 대한 대체 가능한 솔루션(Alternative Solution)을 제공한다.
가상 데스크탑 서비스를 위한 사용자 단말은 랩탑(Laptop), 데스크탑 PC, 씬 클라이언트(Thin Client), 모바일 폰 등과 같이 다양한 종류일 수 있다.
또한, 단말 적응(Terminal Adaptation)은 다른 대역 환경에서 다른 주변기기(Peripherals)를 가지는 다양한 해상도 중에서 단말 장치가 적당한 데스크탑을 제공할 수 있도록 하는 기능을 의미한다.
도 5를 참조하면, 클라우드 액세스 및 퍼블리케이션 레이어(420)는, 수동 및 자동화된 클라우드 액션 및 소비(Cloud Actions and Consumption)를 위해 커먼 인터페이스(Common Interface)를 제공하고, 클라우드 서비스 제공자(CSP: Cloud Service Provider)들의 서비스 및 리소스에 액세스하기 위한 클라우드 애플리케이션 프로그램 인터페이스(API: Application Program Interface)들을 사용하여 소비자 또는 비즈니스 프로세스들의 클라우드 서비스 소비 요청을 수락하고, 네트워크 종료 기능(Network termination function), API 종료 기능(API termination function) 및 인터-클라우드 중재 기능(Inter-Cloud Mediation function) 등을 포함한다.
도 5를 참조하면, 클라우드 네트워크 서비스 오케스트레이션 레이어(430)는, 전체 정보 시스템 환경으로의 접근 또는 네트워크를 통한 원격 클라이언트 디바이스로의 접근을 인캡슐레이션(Encapsulation) 하고 전달하는 가상 데스크탑 전송 기능(Virtual Desktop Delivery Function, 531)과, 커넥션 브로커가 사용자 데스크탑 세션을 인증하기 위하여 디렉토리 서버를 참조(Consult)함으로써 다른 보안 레벨에 대한 개인화된 애플리케이션의 조합으로 승인된 접근을 제공하는 인증(Authentication) 엔티티(Entity), 사용자 단말과 가상 데스크탑 간에 다양한 통신 프로토콜이 있을 수 있는데, 커넥션 브로커가 사용자 데스크탑 세션이 인증 이후에 데이터 및 비디오 전송을 위한 공통 통신 프로토콜이 사용자 단말과 가상 데스크탑 간에 사용되도록 코디네이트하는 기능을 수행하는 코디네이션(Coordination) 엔티티, 커넥션 브로커가 가상머신의 런타임(Runtime) 상태 모니터링을 수행하고 필요한 애플리케이션에 대한 동작 환경을 보장하는 액션을 수행하는 모니터링 및 관리(Monitoring and Management) 엔티티, 및 커넥션 브로커가 사용자 단말(50)로 하여금 가상 데스크탑에 호스트되어 있는 승인된 애플리케이션에 접근할 수 있도록 하기 위하여 소프트웨어 라이센스 확인 기능을 제공하는 확인(Verification) 엔티티로 구성된 커넥션 브로커 기능(Connection Broker Function, 532) 등을 포함한다.
전술한 가상 데스크탑 전송 기능(Virtual Desktop Delivery Function, 531)에서, 가상 데스크탑 전송 프로토콜(VDDP)는 가상 데스크탑 전송 기능(531)의 핵심 구성요소이며, 일 예로, 디스플레이, 입력, 커서, 제어 및 구성, 모니터링 정보 등의 모든 상호작용 정보(인터랙션 정보)를 전달하기 위해서 DaaS(Desktop as a Service)를 위한 서버와 사용자 단말(50) 사이에 통신 채널을 제공한다.
또한, 전술한 모니터링 및 관리(Monitoring and Management) 엔티티에서 커넥션 브로커는, 새로 도달한 요청에 대하여 새로운 아이들(Idle) 가상머신 인스턴스(Virtual Machine Instance)를 할당하거나, 또는 시스템 실패(Failure)로부터 복구된 이후에 클라이언트 측 디바이스에 의해 제기된 요청에 대하여 이전 인스턴스(Previous Instance)를 할당하도록 가상머신 인프라스트럭처에게 지시하고, 커넥션 브로커가 새로운 로그인 사용자 세션(Login User Session)을 위하여 새로운 클라우드 가상머신을 준비하도록 가상머신 인프라스트럭처에게 요청할 수 있다.
전술한 클라우드 네트워크 서비스 오케스트레이션 레이어(430)는, 기록 기능(Records Function, 533), 구성 기능(Configuration Function, 534) 등을 더 포함한다.
도 5를 참조하면, 클라우드 서비스 레이어(440)는, 광대역 네트워크를 통해서 사용자 단말(50)에게 가상 데스크탑 서비스를 제공하는 DaaS(Desktop as a Service) 기능(541)과, 게스트 OS(Guest OS) 및 애플리케이션이 직렬화되어(Serialized) 저장되어 있는 광역 리소스 저장(Repository) 또는 저장 서버 세트(Repository Server Set) 이고, 클라우드 가상머신이 가상머신 인프라스트럭처에서 생성되도록 하는 가상 템플릿을 생성하기 위한 시각화된 모델링 툴(Visualized Modeling Tool)을 구비하며, 실행중인 가상 데스크탑으로부터 필요하고 운영체제, 애플리케이션 소프트웨어, 사용자 프로파일 및 시스템 구성을 포함하는 리소스를 동적으로 어셈블(Assemble)하고 해당되는 이미지 파일을 생산하는 능력을 가지고, 상기 가상머신 인프라스트럭처와의 통신을 가능하게 하고 직렬화된 이미지 파일로부터 원격에서 가상 데스크탑을 생성하는 것을 가능하게 하는 네트워크 기반의 부트 스트랩 프로토콜(Boot Strap Protocol)을 지원하는 리소스 풀(Resource Pool) 기능(545)을 포함한다.
전술한 클라우드 서비스 레이어(440)는, 도 5에 도시된 바와 같이, 서비스 오케스트레이션 기능(Service Orchestration function, 542), 서비스 퍼블리케이션 기능(Service Publication function, 543) 및 서비스 적응 기능(Service Adaptation function, 544) 등을 더 포함할 수 있다.
도 5를 참조하면, 리소스 레이어(450)는, 컴퓨팅 리소스, 저장 리소스, 네트워크 리소스, 파워 리소스(Power Resource) 및 클라우드 컴퓨팅 환경 내에 필수적인 다른 구성들(Facilities)을 포함하는 물리적인 리소스(Physical Resource, 551)와, 가상머신, 가상 네트워크 리소스 및 가상 스토리지 리소스를 포함하는 가상 리소스(Virtual Resource, 552)를 가진다.
가상머신은 XEN, KVM 등과 같은 각각 다른 서버 가상화 기술(Server Virtualization Technologies)에 의하여 가상머신 인프라스트럭처(553) 내에 생성되는 가상화 머신을 의미한다.
도 5를 참조하면, 본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 기능상 계층화된 아키텍처는 모니터링 및 SLA 기능과 관리, 지원 및 보안 기능을 포함하는 크로스 레이어 기능(Cross Layer Function, 560)을 더 제공할 수 있다.
위에서 언급한 가상머신 인프라스트럭처(553)는 HA 특성을 가지는 클러스트 환경을 의미하며, 그 내부에서는 많은 실행 가상머신 인스턴스가 동일한 가상머신 템플릿(Template)으로부터 생성되어 동일한 파라미터로 구성되어 있다. 거의 모든 가상머신 인프라스트럭처(553)는 가상머신 이동 능력(Migration Capability)을 제공하고 있어서, 비즈니스 연속성을 유지하기 위하여 시스템 실패(Failure)의 경우 실행중인 인스턴스가 다른 호스팅 서버로 이동하는 것을 가능하게 한다.
본 명세서에서 기재된 가상 데스크탑 서비스(Virtual Desktop Service)는 데이터 저장 하드디스크와 애플리케이션 등을 인터넷 공간에 제공하는 서비스일 수 있으며, 즉, 개인용 PC 또는 업무용 데스크탑을 실제 물리적 하드웨어를 이용하는 것이 아니라 데스크탑 가상화 기술을 적용하여 가상머신을 이용한 데스크탑 서비스일 수 있다. 이때 생성된 데스크탑 용 가상머신은 인터넷 데이터 센터 등 원격에 위치하고 언제 어디서나 마치 로컬 데스크탑처럼 사용이 가능하다.
본 명세서에서 기재된 가상 데스크탑 서비스(Virtual Desktop Service)는 DaaS(Desktop as a Service) 서비스 또는 클라우드 컴퓨팅(Cloud Computing) 서비스 또는 클라우드 데스크탑 서비스(Cloud Desktop Service) 등일 수 있다.
본 발명의 실시예에 따른 가상 데스크탑 서비스를 위한 아키텍처(서비스 아키텍처 및 기능상 계층화된 아키텍처)는, 가상 데스크탑 서비스를 사용자 단말로 제공하는 시스템(System) 또는 서버(Server)의 설계 방식이거나, 가상 데스크탑 서비스를 사용자 단말로 제공하는 시스템(System) 또는 서버(Server) 그 자체일 수도 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
20: 사용자 단말
110: 커넥션 브로커
120: 리소스 풀
130: 가상머신 인프라스트럭처
200: 가상 데스크탑

Claims (7)

  1. 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 서비스 아키텍처에 있어서,
    사용자 단말이 가상 데스크탑에 연결하도록 하는 소프트웨어 프로그램으로서, 상기 사용자 단말과 상기 사용자 단말의 소프트웨어에 대한 유효성을 확인하는 사용자 인증(Authentication) 및 라이센스 확인(License Verification) 기능과, 상기 사용자 단말에 할당되는 가상머신(Virtual Machine)의 관리 기능과, 상기 가상머신의 활동 레벨을 측정하는 서버의 모니터링 기능과, 상기 사용자 단말과 상기 서버 간에 동일한 프로토콜이 사용되도록 하는 프로토콜 코디네이션(Coordination) 기능을 수행하는 커넥션 브로커(Connection Broker);
    요구형(On-Demand) 가상 데스크탑 서비스를 제공하기 위하여, 스트리밍 형태로 소정의 시간에 특정 가상머신으로 전달되어 상기 특정 가상머신 상에서 실행되는 소프트웨어 리소스를 관리하고, 상기 관리되는 소프트웨어 리소스에 관한 프로비전 정보(Provision Information)를 상기 커넥션 브로커의 요청에 따라 제공하는 리소스 풀(Resource Pool); 및
    하드웨어 리소스를 지원하고, 상기 사용자 단말의 소프트웨어가 동작되는 가상머신들을 생성하여 가상 데스크탑들로써 제공하는 가상머신 인프라스트럭처를 포함하는 가상 데스크탑 서비스를 위한 서비스 아키텍처.
  2. 제1항에 있어서,
    상기 커넥션 브로커는,
    백업 스토리지와 가상 데스크탑 서비스 서버 간의 연결(Connection)을 제공하는 것을 특징으로 하는 가상 데스크탑 서비스를 위한 서비스 아키텍처.
  3. 제1항에 있어서,
    상기 소프트웨어 리소스는 운영체제, 애플리케이션 및 사용자 프로파일을 포함하고,
    상기 사용자 프로파일은 상기 사용자 단말에 대하여 하드웨어 구성, 사용되는 운영 체제, 선택된 애플리케이션, 상기 사용자 단말의 컴퓨팅 환경 정보에 대한 개별 정보를 포함하는 것을 특징으로 하는 가상 데스크탑 서비스를 위한 서비스 아키텍처.
  4. 제1항에 있어서,
    상기 가상머신 인프라스트럭처에서 지원되는 상기 하드웨어 리소스는,
    물리적인 상기 하드웨어 리소스를 추출(Abstract)해서 소프트웨어의 상위 레벨로 동적으로 할당하는 가상 데스크탑 서버 내에서의 하이퍼바이저(Hypervisor) 가상화 기술에 의해 사용되는 것을 특징으로 하는 가상 데스크탑 서비스를 위한 서비스 아키텍처.
  5. 가상 데스크탑 서비스(Virtual Desktop Service)를 위한 방법에 있어서,
    사용자 단말이 SSH(Secure Shell) 및 TLS(Transport Layer Security) 중 하나 이상의 보안 프로토콜을 통하여 접속되면, 커넥션 브로커(Connection Broker)가 사용자 ID 및 비밀번호로 해당 사용자를 확인(Validate)하는 단계;
    상기 커넥션 브로커가, 가상머신(Virtual Machine) 할당을 위해서, 해당하는 사용자 프로파일을 식별하고, 프로비저닝 기능(Provisioning Function)을 이용하여 상기 사용자 단말의 하드웨어 구성을 만족하고 컴퓨팅 환경에 최적인 가상머신을 검색하는 단계;
    적당한 가상머신이 없으면, 상기 커넥션 브로커가 상기 하드웨어 구성에 대한 정보를 전송함으로써 가상머신 인프라스트럭처에게 가상머신 생성을 요청하는 단계;
    상기 커넥션 브로커가, 가상머신이 할당되거나 생성된 이후, 사용자 프로파일을 상기 할당되거나 생성된 가상머신에 적용하는 단계;
    상기 가상머신 인프라스트럭처가 해당하는 가상 데스크탑을 전달하기 위한 세션을 생성하고, 상기 생성된 세션에 대한 세션 정보를 상기 커넥션 브로커로 디스패치되는 단계;
    상기 커넥션 브로커가 상기 세션 정보를 상기 사용자 단말로 전송하여 상기 사용자 단말과 상기 가상머신 인프라스트럭처가 연결되는 단계;
    상기 사용자 단말이 가상 데스크탑 전송 프로토콜을 이용하여 가상 데스크탑에 의해서 사용자들의 경험(Experience) 정보를 커뮤니케이션하는 단계; 및
    상기 사용자 단말이 가상 데스크탑 서비스가 종료될 때 사용자 데이터의 손실을 방지하기 위하여 로그-오프 동작을 실행하고, 상기 로그-오프 동작 도중에, 상기 커넥션 브로커가 변경된 사용자 프로파일을 사용자 프로파일 풀(User Profile Pool) 내에 업데이트하는 단계를 포함하는 가상 데스크탑 서비스를 위한 방법.
  6. 제5항에 있어서,
    상기 적용하는 단계에서,
    상기 커넥션 브로커는 상기 가상 데스크탑을 구성(Construct) 하기 위한 운영체제 및 애플리케이션을 설치하는 것을 특징으로 하는 가상 데스크탑 서비스를 위한 방법.
  7. 제5항에 있어서,
    상기 업데이트하는 단계에서,
    상기 커넥션 브로커는 해당 가상머신이 이용 가능한 상태가 되도록 해당 가상머신을 리턴시키는 것을 특징으로 하는 가상 데스크탑 서비스를 위한 방법.
KR20110065680A 2011-07-01 2011-07-01 가상 데스크탑 서비스를 위한 방법 및 장치 KR101507919B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20110065680A KR101507919B1 (ko) 2011-07-01 2011-07-01 가상 데스크탑 서비스를 위한 방법 및 장치
US13/434,696 US9086897B2 (en) 2011-07-01 2012-03-29 Method and architecture for virtual desktop service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20110065680A KR101507919B1 (ko) 2011-07-01 2011-07-01 가상 데스크탑 서비스를 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20130007373A true KR20130007373A (ko) 2013-01-18
KR101507919B1 KR101507919B1 (ko) 2015-04-07

Family

ID=47392078

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20110065680A KR101507919B1 (ko) 2011-07-01 2011-07-01 가상 데스크탑 서비스를 위한 방법 및 장치

Country Status (2)

Country Link
US (1) US9086897B2 (ko)
KR (1) KR101507919B1 (ko)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101429434B1 (ko) * 2013-03-13 2014-08-12 한국과학기술원 클라우드 컴퓨팅 환경에서 사용자 가상 머신 실행환경의 신뢰성 향상 장치 및 방법
KR20140143953A (ko) * 2013-06-10 2014-12-18 한국전자통신연구원 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법
KR101509506B1 (ko) * 2013-03-08 2015-04-10 주식회사 알투소프트 모바일 클라우드 컴퓨팅 환경에서의 리소스 제공 시스템 및 그 방법
KR20150045669A (ko) * 2013-10-21 2015-04-29 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법
KR101531834B1 (ko) * 2013-03-08 2015-06-26 주식회사 알투소프트 모바일 클라우드 컴퓨팅 환경에서의 리소스 관리 시스템 및 그 방법
KR20160149774A (ko) * 2015-06-19 2016-12-28 한국전자통신연구원 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치
KR20170000568A (ko) * 2015-06-24 2017-01-03 한국전자통신연구원 인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법
KR20170000567A (ko) * 2015-06-24 2017-01-03 한국전자통신연구원 가상 데스크탑 서비스를 위한 장치 및 방법
KR101707552B1 (ko) * 2016-07-27 2017-02-16 주식회사 티맥스 소프트 클라우드 환경에서 사용자로 하여금 애플리케이션을 체험할 수 있도록 체험 환경을 제공하는 방법 및 이를 이용한 서버
KR20170057558A (ko) * 2015-11-17 2017-05-25 한국전자통신연구원 가상 데스크탑 서비스 방법 및 장치
KR20200032493A (ko) * 2018-09-18 2020-03-26 주식회사 틸론 가상화 시스템에서의 가상 데스크톱 스냅샷 정보를 초기화하는 방법 및 그 가상화 시스템

Families Citing this family (128)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9641394B2 (en) 2012-01-30 2017-05-02 Microsoft Technology Licensing, Llc Automated build-out of a cloud-computing stamp
US9137111B2 (en) 2012-01-30 2015-09-15 Microsoft Technology Licensing, Llc Discovering, validating, and configuring hardware-inventory components
US9917736B2 (en) 2012-01-30 2018-03-13 Microsoft Technology Licensing, Llc Automated standalone bootstrapping of hardware inventory
US9367360B2 (en) 2012-01-30 2016-06-14 Microsoft Technology Licensing, Llc Deploying a hardware inventory as a cloud-computing stamp
US9119035B2 (en) * 2012-05-22 2015-08-25 Cisco Technology, Inc. Location-based power management for virtual desktop environments
US10120725B2 (en) * 2012-06-22 2018-11-06 Microsoft Technology Licensing, Llc Establishing an initial configuration of a hardware inventory
US20140108647A1 (en) * 2012-10-11 2014-04-17 Brocade Communications Systems, Inc. User Feedback in Network and Server Monitoring Environments
US9002982B2 (en) 2013-03-11 2015-04-07 Amazon Technologies, Inc. Automated desktop placement
US10142406B2 (en) 2013-03-11 2018-11-27 Amazon Technologies, Inc. Automated data center selection
US10313345B2 (en) 2013-03-11 2019-06-04 Amazon Technologies, Inc. Application marketplace for virtual desktops
US9489227B2 (en) * 2013-06-10 2016-11-08 Electronics And Telecommunications Research Institute Apparatus and method for virtual desktop service
US20150019705A1 (en) * 2013-06-26 2015-01-15 Amazon Technologies, Inc. Management of computing sessions
US10623243B2 (en) 2013-06-26 2020-04-14 Amazon Technologies, Inc. Management of computing sessions
US9436807B2 (en) * 2013-07-03 2016-09-06 Adobe Systems Incorporated Method and apparatus for providing digital rights management service in the cloud
SG10201802428QA (en) * 2013-09-23 2018-04-27 Gopc Pty Ltd Virtual computing systems and methods
KR20150082932A (ko) * 2014-01-08 2015-07-16 한국전자통신연구원 가상 머신의 구성 관리 지원 장치 및 방법과, 그 구성 관리 지원 장치를 이용한 클라우드 서비스 중개 장치 및 방법
KR20150095029A (ko) * 2014-02-12 2015-08-20 한국전자통신연구원 응용 프로그램 가상화 시스템 및 사용자 단말의 응용 프로그램 가상화 방법
US9882825B2 (en) * 2014-03-14 2018-01-30 Citrix Systems, Inc. Method and system for securely transmitting volumes into cloud
US9449064B2 (en) * 2014-05-03 2016-09-20 Pinplanet Corporation System and method for dynamic and secure communication and synchronization of personal data records
US10268492B2 (en) * 2014-05-20 2019-04-23 Amazon Technologies, Inc. Low latency connections to workspaces in a cloud computing environment
CN104156647B (zh) * 2014-08-12 2017-02-15 国家电网公司 瘦终端的控制方法、控制装置及瘦终端
US9678773B1 (en) 2014-09-30 2017-06-13 Amazon Technologies, Inc. Low latency computational capacity provisioning
US9830193B1 (en) 2014-09-30 2017-11-28 Amazon Technologies, Inc. Automatic management of low latency computational capacity
US9146764B1 (en) 2014-09-30 2015-09-29 Amazon Technologies, Inc. Processing event messages for user requests to execute program code
US9323556B2 (en) 2014-09-30 2016-04-26 Amazon Technologies, Inc. Programmatic event detection and message generation for requests to execute program code
US9600312B2 (en) 2014-09-30 2017-03-21 Amazon Technologies, Inc. Threading as a service
US10048974B1 (en) 2014-09-30 2018-08-14 Amazon Technologies, Inc. Message-based computation request scheduling
US9715402B2 (en) 2014-09-30 2017-07-25 Amazon Technologies, Inc. Dynamic code deployment and versioning
US9495142B2 (en) 2014-11-07 2016-11-15 Amazon Technologies, Inc. Dynamic reconstruction of application state upon application re-launch
US9537788B2 (en) 2014-12-05 2017-01-03 Amazon Technologies, Inc. Automatic determination of resource sizing
US9733967B2 (en) 2015-02-04 2017-08-15 Amazon Technologies, Inc. Security protocols for low latency execution of program code
US9727725B2 (en) 2015-02-04 2017-08-08 Amazon Technologies, Inc. Security protocols for low latency execution of program code
US9588790B1 (en) 2015-02-04 2017-03-07 Amazon Technologies, Inc. Stateful virtual compute system
US10705690B1 (en) * 2015-03-10 2020-07-07 Amazon Technologies, Inc. Sending virtual desktop information to multiple devices
US9785476B2 (en) 2015-04-08 2017-10-10 Amazon Technologies, Inc. Endpoint management system and virtual compute system
US9930103B2 (en) 2015-04-08 2018-03-27 Amazon Technologies, Inc. Endpoint management system providing an application programming interface proxy service
CN106155812A (zh) 2015-04-28 2016-11-23 阿里巴巴集团控股有限公司 一种对虚拟主机的资源管理的方法、装置、系统及电子设备
US9742782B2 (en) 2015-06-11 2017-08-22 International Business Machines Corporation Configuration management for virtual machine environment
KR101920474B1 (ko) 2015-06-15 2018-11-20 한국전자통신연구원 인메모리 가상 데스크탑 시스템
CN105208123A (zh) * 2015-09-24 2015-12-30 广东亿迅科技有限公司 一种虚拟桌面的实现方法及其系统
US9928108B1 (en) 2015-09-29 2018-03-27 Amazon Technologies, Inc. Metaevent handling for on-demand code execution environments
US10042660B2 (en) 2015-09-30 2018-08-07 Amazon Technologies, Inc. Management of periodic requests for compute capacity
US9830449B1 (en) 2015-12-16 2017-11-28 Amazon Technologies, Inc. Execution locations for request-driven code
US9811363B1 (en) * 2015-12-16 2017-11-07 Amazon Technologies, Inc. Predictive management of on-demand code execution
US10754701B1 (en) 2015-12-16 2020-08-25 Amazon Technologies, Inc. Executing user-defined code in response to determining that resources expected to be utilized comply with resource restrictions
US9811434B1 (en) 2015-12-16 2017-11-07 Amazon Technologies, Inc. Predictive management of on-demand code execution
US10013267B1 (en) 2015-12-16 2018-07-03 Amazon Technologies, Inc. Pre-triggers for code execution environments
US9830175B1 (en) * 2015-12-16 2017-11-28 Amazon Technologies, Inc. Predictive management of on-demand code execution
US10067801B1 (en) 2015-12-21 2018-09-04 Amazon Technologies, Inc. Acquisition and maintenance of compute capacity
US9910713B2 (en) 2015-12-21 2018-03-06 Amazon Technologies, Inc. Code execution request routing
US10002026B1 (en) 2015-12-21 2018-06-19 Amazon Technologies, Inc. Acquisition and maintenance of dedicated, reserved, and variable compute capacity
US10324745B2 (en) * 2016-02-01 2019-06-18 Airwatch, Llc Thin client with managed profile-specific remote virtual machines
US11132213B1 (en) 2016-03-30 2021-09-28 Amazon Technologies, Inc. Dependency-based process of pre-existing data sets at an on demand code execution environment
US10162672B2 (en) 2016-03-30 2018-12-25 Amazon Technologies, Inc. Generating data streams from pre-existing data sets
US10891145B2 (en) 2016-03-30 2021-01-12 Amazon Technologies, Inc. Processing pre-existing data sets at an on demand code execution environment
US10044810B2 (en) * 2016-03-31 2018-08-07 Dell Products L.P. Selectively implementing reliability mechanisms based on the type of USB device that is redirected over a remote session
US10176008B2 (en) * 2016-05-19 2019-01-08 Airwatch, Llc Loading and running virtual working environments in a mobile device management system
US9952896B2 (en) 2016-06-28 2018-04-24 Amazon Technologies, Inc. Asynchronous task management in an on-demand network code execution environment
US10282229B2 (en) 2016-06-28 2019-05-07 Amazon Technologies, Inc. Asynchronous task management in an on-demand network code execution environment
US10102040B2 (en) 2016-06-29 2018-10-16 Amazon Technologies, Inc Adjusting variable limit on concurrent code executions
US10203990B2 (en) 2016-06-30 2019-02-12 Amazon Technologies, Inc. On-demand network code execution with cross-account aliases
US10277708B2 (en) 2016-06-30 2019-04-30 Amazon Technologies, Inc. On-demand network code execution with cross-account aliases
US10884787B1 (en) 2016-09-23 2021-01-05 Amazon Technologies, Inc. Execution guarantees in an on-demand network code execution system
US10061613B1 (en) 2016-09-23 2018-08-28 Amazon Technologies, Inc. Idempotent task execution in on-demand network code execution systems
US11119813B1 (en) 2016-09-30 2021-09-14 Amazon Technologies, Inc. Mapreduce implementation using an on-demand network code execution system
US10469613B2 (en) * 2016-11-10 2019-11-05 Wyse Technology L.L.C. Providing multiple user profiles to a single user
KR102661703B1 (ko) 2016-12-23 2024-04-29 삼성전자주식회사 전자 장치 및 그의 제어 방법
US10860342B2 (en) * 2017-01-30 2020-12-08 Citrix Systems, Inc. Computer system providing cloud-based session prelaunch features and related methods
CN108632118B (zh) * 2017-03-24 2021-01-12 广州杰赛科技股份有限公司 虚拟机与终端智能配对方法和系统
KR102105683B1 (ko) * 2017-04-28 2020-05-29 한국전자통신연구원 유선 및 이동 통신 서비스의 통합 플랫폼 관리 장치 및 방법
US10778768B2 (en) 2017-08-02 2020-09-15 Electronics And Telecommunications Research Institute Method and system for optimizing cloud storage services
US11467881B2 (en) * 2017-09-13 2022-10-11 At&T Intellectual Property I, L.P. Framework, method and apparatus for network function as a service for hosted network functions in a cloud environment
US10169050B1 (en) 2017-09-15 2019-01-01 International Business Machines Corporation Software application provisioning in a distributed computing environment
US10303492B1 (en) 2017-12-13 2019-05-28 Amazon Technologies, Inc. Managing custom runtimes in an on-demand code execution system
US10564946B1 (en) 2017-12-13 2020-02-18 Amazon Technologies, Inc. Dependency handling in an on-demand network code execution system
US10871998B2 (en) * 2018-01-18 2020-12-22 Red Hat, Inc. Usage instrumented workload scheduling
US10831898B1 (en) 2018-02-05 2020-11-10 Amazon Technologies, Inc. Detecting privilege escalations in code including cross-service calls
US10572375B1 (en) 2018-02-05 2020-02-25 Amazon Technologies, Inc. Detecting parameter validity in code including cross-service calls
US10353678B1 (en) 2018-02-05 2019-07-16 Amazon Technologies, Inc. Detecting code characteristic alterations due to cross-service calls
US10733085B1 (en) 2018-02-05 2020-08-04 Amazon Technologies, Inc. Detecting impedance mismatches due to cross-service calls
US10725752B1 (en) 2018-02-13 2020-07-28 Amazon Technologies, Inc. Dependency handling in an on-demand network code execution system
US10776091B1 (en) 2018-02-26 2020-09-15 Amazon Technologies, Inc. Logging endpoint in an on-demand code execution system
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US10649749B1 (en) 2018-06-26 2020-05-12 Amazon Technologies, Inc. Cross-environment application of tracing information for improved code execution
US11146569B1 (en) 2018-06-28 2021-10-12 Amazon Technologies, Inc. Escalation-resistant secure network services using request-scoped authentication information
US10949237B2 (en) 2018-06-29 2021-03-16 Amazon Technologies, Inc. Operating system customization in an on-demand network code execution system
US11099870B1 (en) 2018-07-25 2021-08-24 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
KR20190028330A (ko) 2018-09-06 2019-03-18 (주) 퓨전데이타 풀 그룹화를 이용한 가상 데스크탑 시스템 및 서비스 방법
US11099917B2 (en) 2018-09-27 2021-08-24 Amazon Technologies, Inc. Efficient state maintenance for execution environments in an on-demand code execution system
US11243953B2 (en) 2018-09-27 2022-02-08 Amazon Technologies, Inc. Mapreduce implementation in an on-demand network code execution system and stream data processing system
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US10884812B2 (en) 2018-12-13 2021-01-05 Amazon Technologies, Inc. Performance-based hardware emulation in an on-demand network code execution system
US11010188B1 (en) 2019-02-05 2021-05-18 Amazon Technologies, Inc. Simulated data object storage using on-demand computation of data objects
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US10862975B1 (en) * 2019-06-04 2020-12-08 Citrix Systems, Inc. Computing system providing direct routing for desktop as a service (DaaS) sessions to a private network and related methods
US11119809B1 (en) 2019-06-20 2021-09-14 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11115404B2 (en) 2019-06-28 2021-09-07 Amazon Technologies, Inc. Facilitating service connections in serverless code executions
US11159528B2 (en) 2019-06-28 2021-10-26 Amazon Technologies, Inc. Authentication to network-services using hosted authentication information
US11190609B2 (en) 2019-06-28 2021-11-30 Amazon Technologies, Inc. Connection pooling for scalable network services
CN110378086B (zh) * 2019-07-31 2021-06-29 中国工商银行股份有限公司 权限的管理方法和装置
US11656892B1 (en) 2019-09-27 2023-05-23 Amazon Technologies, Inc. Sequential execution of user-submitted code and native functions
US11263220B2 (en) 2019-09-27 2022-03-01 Amazon Technologies, Inc. On-demand execution of object transformation code in output path of object storage service
US11055112B2 (en) 2019-09-27 2021-07-06 Amazon Technologies, Inc. Inserting executions of owner-specified code into input/output path of object storage service
US11106477B2 (en) 2019-09-27 2021-08-31 Amazon Technologies, Inc. Execution of owner-specified code during input/output path to object storage service
US11394761B1 (en) 2019-09-27 2022-07-19 Amazon Technologies, Inc. Execution of user-submitted code on a stream of data
US11416628B2 (en) 2019-09-27 2022-08-16 Amazon Technologies, Inc. User-specific data manipulation system for object storage service based on user-submitted code
US11023311B2 (en) 2019-09-27 2021-06-01 Amazon Technologies, Inc. On-demand code execution in input path of data uploaded to storage service in multiple data portions
US11550944B2 (en) 2019-09-27 2023-01-10 Amazon Technologies, Inc. Code execution environment customization system for object storage service
US11250007B1 (en) 2019-09-27 2022-02-15 Amazon Technologies, Inc. On-demand execution of object combination code in output path of object storage service
US11386230B2 (en) 2019-09-27 2022-07-12 Amazon Technologies, Inc. On-demand code obfuscation of data in input path of object storage service
US10908927B1 (en) 2019-09-27 2021-02-02 Amazon Technologies, Inc. On-demand execution of object filter code in output path of object storage service
US10996961B2 (en) 2019-09-27 2021-05-04 Amazon Technologies, Inc. On-demand indexing of data in input path of object storage service
US11360948B2 (en) 2019-09-27 2022-06-14 Amazon Technologies, Inc. Inserting owner-specified data processing pipelines into input/output path of object storage service
US11023416B2 (en) 2019-09-27 2021-06-01 Amazon Technologies, Inc. Data access control system for object storage service based on owner-defined code
US11119826B2 (en) 2019-11-27 2021-09-14 Amazon Technologies, Inc. Serverless call distribution to implement spillover while avoiding cold starts
US10942795B1 (en) 2019-11-27 2021-03-09 Amazon Technologies, Inc. Serverless call distribution to utilize reserved capacity without inhibiting scaling
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11188391B1 (en) 2020-03-11 2021-11-30 Amazon Technologies, Inc. Allocating resources to on-demand code executions under scarcity conditions
US11775640B1 (en) 2020-03-30 2023-10-03 Amazon Technologies, Inc. Resource utilization-based malicious task detection in an on-demand code execution system
KR20220027060A (ko) 2020-08-01 2022-03-07 사이트릭스 시스템스, 인크. DaaS 시스템
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11388210B1 (en) 2021-06-30 2022-07-12 Amazon Technologies, Inc. Streaming analytics using a serverless compute system
WO2023022717A1 (en) * 2021-08-19 2023-02-23 Hewlett-Packard Development Company, L.P. Adjustments of remote access applications based on workloads
US20230080623A1 (en) * 2021-09-15 2023-03-16 Sam Barhoumeh Systems and Methods for an Enterprise Computing Platform
US11968280B1 (en) 2021-11-24 2024-04-23 Amazon Technologies, Inc. Controlling ingestion of streaming data to serverless function executions
US12015603B2 (en) 2021-12-10 2024-06-18 Amazon Technologies, Inc. Multi-tenant mode for serverless code execution
US20230229779A1 (en) * 2022-01-18 2023-07-20 Dell Products L.P. Automated ephemeral context-aware device provisioning

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001282729A (ja) 2000-03-30 2001-10-12 Casio Comput Co Ltd ユーザ環境設定システム、その方法及び記録媒体
KR100812211B1 (ko) * 2001-10-06 2008-03-13 주식회사 비즈모델라인 스트리밍을 이용한 애플리케이션 제공 시스템 및 방법
US7426052B2 (en) * 2004-03-29 2008-09-16 Dell Products L.P. System and method for remotely building an information handling system manufacturing image
KR101093800B1 (ko) 2004-09-24 2011-12-19 주식회사 케이티 클라이언트 단말에 대한 범용 가상 pc 서비스 제공방법, 그 방법 실행 프로그램을 기록한 저장매체, 범용가상 pc 서비스 제공 서버 및 서비스 제공 시스템
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8151323B2 (en) 2006-04-12 2012-04-03 Citrix Systems, Inc. Systems and methods for providing levels of access and action control via an SSL VPN appliance
KR100946985B1 (ko) * 2007-12-17 2010-03-10 한국전자통신연구원 가상 환경을 이용한 안전한 데스크톱 운영 시스템 및 그방법
US7953833B2 (en) * 2008-01-31 2011-05-31 Wanova Technologies Ltd. Desktop delivery for a distributed enterprise
CN101971162B (zh) 2008-02-26 2012-11-21 威睿公司 将基于服务器的桌面虚拟机架构扩展到客户机上
US20100211663A1 (en) * 2008-07-28 2010-08-19 Viewfinity Inc. Management of pool member configuration
CN102656891B (zh) * 2009-10-20 2015-11-18 瑞典爱立信有限公司 用于多视野视频压缩的方法和装置
US8800025B2 (en) * 2009-11-10 2014-08-05 Hei Tao Fung Integrated virtual desktop and security management system
US8417885B2 (en) * 2010-02-24 2013-04-09 Avaya Inc. Method and apparatus for high availability (HA) protection of a running virtual machine (VM)
US8612413B2 (en) * 2010-08-12 2013-12-17 Cdnetworks Co., Ltd. Distributed data cache for on-demand application acceleration
US20120072898A1 (en) * 2010-09-21 2012-03-22 Startforce, Inc. On-premise deployment of virtual desktop service servers
US8849941B2 (en) * 2010-09-30 2014-09-30 Microsoft Corporation Virtual desktop configuration and operation techniques
US20120179874A1 (en) * 2011-01-07 2012-07-12 International Business Machines Corporation Scalable cloud storage architecture
US8893027B2 (en) * 2011-03-04 2014-11-18 Cisco Technology, Inc. Providing hosted virtual desktop infrastructure services

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101509506B1 (ko) * 2013-03-08 2015-04-10 주식회사 알투소프트 모바일 클라우드 컴퓨팅 환경에서의 리소스 제공 시스템 및 그 방법
KR101531834B1 (ko) * 2013-03-08 2015-06-26 주식회사 알투소프트 모바일 클라우드 컴퓨팅 환경에서의 리소스 관리 시스템 및 그 방법
KR101429434B1 (ko) * 2013-03-13 2014-08-12 한국과학기술원 클라우드 컴퓨팅 환경에서 사용자 가상 머신 실행환경의 신뢰성 향상 장치 및 방법
KR20140143953A (ko) * 2013-06-10 2014-12-18 한국전자통신연구원 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법
KR20150045669A (ko) * 2013-10-21 2015-04-29 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법
KR20160149774A (ko) * 2015-06-19 2016-12-28 한국전자통신연구원 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치
KR20170000568A (ko) * 2015-06-24 2017-01-03 한국전자통신연구원 인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법
KR20170000567A (ko) * 2015-06-24 2017-01-03 한국전자통신연구원 가상 데스크탑 서비스를 위한 장치 및 방법
US10089133B2 (en) 2015-06-24 2018-10-02 Electronics And Telecommunications Research Institute Apparatus and method for virtual desktop service suitable for user terminal based on environmental parameter
US10379891B2 (en) 2015-06-24 2019-08-13 Electronics And Telecommunications Research Institute Apparatus and method for in-memory-based virtual desktop service
KR20170057558A (ko) * 2015-11-17 2017-05-25 한국전자통신연구원 가상 데스크탑 서비스 방법 및 장치
US10789083B2 (en) 2015-11-17 2020-09-29 Electronics And Telecommunications Research Institute Providing a virtual desktop service based on physical distance on network from the user terminal and improving network I/O performance based on power consumption
KR101707552B1 (ko) * 2016-07-27 2017-02-16 주식회사 티맥스 소프트 클라우드 환경에서 사용자로 하여금 애플리케이션을 체험할 수 있도록 체험 환경을 제공하는 방법 및 이를 이용한 서버
US10505795B2 (en) 2016-07-27 2019-12-10 Tmaxsoft. Co., Ltd. Method for providing a trial environment to enable user to try out application in cloud environment and server using the same
KR20200032493A (ko) * 2018-09-18 2020-03-26 주식회사 틸론 가상화 시스템에서의 가상 데스크톱 스냅샷 정보를 초기화하는 방법 및 그 가상화 시스템

Also Published As

Publication number Publication date
US9086897B2 (en) 2015-07-21
US20130007737A1 (en) 2013-01-03
KR101507919B1 (ko) 2015-04-07

Similar Documents

Publication Publication Date Title
KR101507919B1 (ko) 가상 데스크탑 서비스를 위한 방법 및 장치
US10827008B2 (en) Integrated user interface for consuming services across different distributed networks
US9489227B2 (en) Apparatus and method for virtual desktop service
US10089130B2 (en) Virtual desktop service apparatus and method
KR102328193B1 (ko) 가상 데스크탑 서비스를 위한 장치 및 방법
KR102391806B1 (ko) 상이한 분산 네트워크 사이에서 서비스를 소비하는 통합형 api 및 ui 제공 기법
US10761826B2 (en) Dynamic reconstruction of application state upon application re-launch
US9614875B2 (en) Scaling a trusted computing model in a globally distributed cloud environment
US9674029B2 (en) Migrating virtual asset
EP3306473B1 (en) Cloud federation as a service
US8677454B2 (en) Utilization of virtual machines by a community cloud
JP2013545152A (ja) シンアプリケーション、リモートアプリケーション、およびSaaSアプリケーションのための統合ワークスペース
US10162952B2 (en) Security model for network information service
KR20170000568A (ko) 인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법
KR102102169B1 (ko) 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법
KR101680702B1 (ko) 클라우드 기반 웹 호스팅 시스템
EP3387816B1 (en) Connecting and retrieving security tokens based on context
US11620147B2 (en) Metadata service provisioning in a cloud environment
US20240103990A1 (en) Computing device with bridge to native app for security and resiliency
US20230148314A1 (en) Fast Launch Based on Hibernated Pre-launch Sessions
von Oven et al. Remote Desktop Solutions
Liu et al. A collaborative management as a service framework for managing Internetware systems
KR20140144122A (ko) 클라우드 시스템의 클라이언트

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
FPAY Annual fee payment

Payment date: 20180226

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190304

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200224

Year of fee payment: 6