KR20160092136A - 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버 - Google Patents

가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버 Download PDF

Info

Publication number
KR20160092136A
KR20160092136A KR1020150012338A KR20150012338A KR20160092136A KR 20160092136 A KR20160092136 A KR 20160092136A KR 1020150012338 A KR1020150012338 A KR 1020150012338A KR 20150012338 A KR20150012338 A KR 20150012338A KR 20160092136 A KR20160092136 A KR 20160092136A
Authority
KR
South Korea
Prior art keywords
virtual desktop
client terminal
providing server
status information
information
Prior art date
Application number
KR1020150012338A
Other languages
English (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 KR1020150012338A priority Critical patent/KR20160092136A/ko
Priority to US14/974,683 priority patent/US20160219126A1/en
Publication of KR20160092136A publication Critical patent/KR20160092136A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1431Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using a single graphics controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • G06F9/4445
    • 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
    • H04L61/1523
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4523Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using lightweight directory access protocol [LDAP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 가상화 기술을 이용한 가상 데스크탑의 플랫폼 응용 서비스에 관한 것으로, 특히 가상 데스크탑 서비스 제공 시 네트워크 환경이 좋지 않은 곳에서도 원활하게 가상 데스크탑 서비스를 이용할 수 있도록 경량 프로토콜(Lightweight Protocol) 기술을 지원하는 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버에 관한 것이다.
이에 따른 본 발명은, 가상 데스크탑(Virtual Desktop; VD) 제공 서버의 가상 데스크탑 제공 방법으로, 클라이언트 단말로부터 수신되는 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 수집하는 단계, 상기 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 기초로, 상기 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정하는 단계 및 상기 환경 인자를 적용하여 상기 클라이언트 단말에 서비스되는 가상 데스크탑을 제어하는 단계를 포함하는 것을 특징으로 하는 방법 및 가상 데스크탑 제공 서버에 관한 것이다.

Description

가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버{Virtual Desktop Providing Method and Virtual Desktop Providing Server thereof}
본 발명은 가상화 기술을 이용한 가상 데스크탑의 플랫폼 응용 서비스에 관한 것으로, 특히 가상 데스크탑 서비스 제공 시 네트워크 환경이 좋지 않은 곳에서도 원활하게 가상 데스크탑 서비스를 이용할 수 있도록 경량 프로토콜(Lightweight Protocol) 기술을 지원하는 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버에 관한 것이다.
가상 데스크탑(Virtual Desktop; VD) 기술은 가상화 기술을 이용하여 데스크탑을 가상화하여 호스트 서버에서 서비스하고, 사용자는 인터넷이나 LAN을 이용하여 가상화된 데스크탑 환경을 이용하도록 하는 기술이다. 가상 데스크탑을 이용하는 사용자는 전통적인 PC나 씬 클라이언트를 이용해 가상 데스크탑에 접속한다.
일반적으로 사용자가 가상 데스크탑으로 이용하는 OS는 가상 데스크탑 제공 서버에서 실행되고, 사용자 정보 및 데이터는 사용자의 단말에 직접 저장되는 것이 아니라 서버에 저장된다.
클라이언트 단말이 가상 데스크탑 클라이언트 프로그램을 이용하여 가상 데스크탑에 접속하는 경우에, 가상 데스크탑 상에서 구동되는 작업의 종류에 따라 가상 데스크탑 서비스를 제공하는 서버(중앙 서버, 제공 서버 등으로 명명될 수 있다.)와 클라이언트 단말 간의 네트워크 부하 및 가상 데스크탑 서비스를 제공하는 서버의 CPU 부하는 달라진다. 도 1에는 응용 프로그램, 즉 작업의 종류별 가상 데스크탑 제공 서버와 클라이언트 단말 간의 네트워크 부하 및 가상 데스크탑 제공 서버의 CPU 부하를 나타낸 그래프가 도시되어 있다.
도 1을 참조하면, 클라이언트 단말이 가상 데스크탑 상에서 일반 오피스 응용 프로그램을 이용한 작업을 구동할 때는 네트워크 및 서버 CPU의 부하가 작다. 반면, 클라이언트 단말이 가상 데스크탑 상에서 웹 서핑 또는 동영상 재생 등의 작업을 구동할 때는 네트워크 및 서버 CPU의 부하가 매우 커진다. 즉, 화면의 갱신이 많은 작업의 경우, 네트워크 및 서버 CPU의 부하가 증가한다.
네트워크 환경이 좋지 않은 곳에서 클라이언트 단말이 가상 데스크탑으로 네트워크 및 서버 CPU의 부하가 증가는 작업을 요청하는 경우, 해당 클라이언트 단말은 원활한 가상 데스크탑 서비스를 이용할 수 없는 문제가 발생한다.
본 발명은 상기한 문제점을 해결하기 위한 것으로, 네트워크 환경이 좋지 않은 곳에서도 원활하게 가상 데스크탑 서비스를 이용할 수 있도록 하는 경량 프로토콜 기술을 제공한다.
본 발명은 가상 데스크탑 서비스를 제공하는 제공 서버가 클라이언트 단말로부터 단말의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원에 관한 정보를 실시간으로 수집하고, 이를 기초로 단말에 최적화된 가상 데스크탑의 환경 인자를 결정하여, 클라이언트 단말의 환경에 최적화된 가상 데스크탑 서비스를 제공하는 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버를 제공한다.
상술한 과제를 해결하기 위한 본 발명에 따른 가상 데스크탑(Virtual Desktop; VD) 제공 서버의 가상 데스크탑 제공 방법은, 클라이언트 단말로부터 수신되는 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 수집하는 단계, 상기 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 기초로, 상기 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정하는 단계 및 상기 환경 인자를 적용하여 상기 클라이언트 단말에 서비스되는 가상 데스크탑을 제어하는 단계를 포함하는 것을 특징으로 한다.
또한, 상술한 과제를 해결하기 위한 본 발명에 따른 가상 데스크탑 제공 서버는, 클라이언트 단말로부터 클라이언트 단말의 상태 정보를 수신하는 통신부 및 상기 가상 데스크탑 제공 서버의 상태 정보를 수집하고, 상기 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 기초로, 상기 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정하고, 상기 환경 인자를 적용하여 상기 클라이언트 단말의 가상 데스크탑을 제어하는 제어부를 포함하는 것을 특징으로 한다.
또한, 상술한 과제를 해결하기 위한 본 발명에 따른 가상 데스크탑 제공 서버로부터 가상 데스크탑 서비스를 제공받는 클라이언트 단말의 가상 데스크탑 제어 방법은, 결정된 환경 인자를 적용하여 해당 클라이언트 단말의 사용 환경에 알맞은 품질의 적응적 가상 데스크탑 서비스를 제공하는 것을 특징으로 한다. 본 발명에 따른 가상 데스크탑 제어 방법은 클라이언트 단말로부터 수신된 클라이언트 단말의 상태 정보, 가상 데스크탑 제공 서버의 상태 정보를 기초로 해당 클라이언트 단말의 가상 데스크탑에 대한 환경 인자인, 화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 중 적어도 하나를 적응적으로 변화시키는 것을 특징으로 한다.
또한, 본 발명에 따른 가상 데스크탑 제어 방법은 네트워크 환경 상태에 따라 차등적으로 화면 전송 영역을 분류하여 최적의 화면 전송 방법이 선택되어 서비스되는 것을 특징으로 한다. 예를 들어, 본 발명에 따른 가상 데스크탑 제어 장치는, 네트워크 환경이 좋지 않은 경우에는 적응적으로 화면 전송 영역을 분류하여 화면에서 움직임이 있는 영역 위주로 화면을 전송할 수 있다.
본 발명에 따른 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버는 네트워크 환경이 좋지 않은 곳에서도 원활하게 가상 데스크탑 서비스를 지원하는 경량 프로토콜 기술에 관한 것으로, 클라이언트 단말의 접속 환경에 최적화된 가상 데스크탑 서비스를 제공하기 위하여 제어 엔진 및 화면 전송 시 네트워크 대역폭을 줄이기 위한 이미지 압축 엔진을 추가한 경량 프로토콜을 제공한다.
본 발명에 따른 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버는 클라이언트 단말의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원을 수집 분석하여 최적의 서비스를 제공하여, 사용자가 자신의 네트워크 상황이나 컴퓨팅 자원의 변화에 따라 적응적으로 최적의 가상 데스크탑 서비스를 제공받을 수 있도록 한다.
도 1은 응용 프로그램별 가상 데스크탑 제공 서버와 클라이언트 단말 간의 네트워크 부하 및 가상 데스크탑 제공 서버의 CPU 부하를 나타낸 그래프이다.
도 2는 가상 데스크탑 서비스 환경을 설명하기 위한 도면이다.
도 3은 본 발명에 따른 클라이언트 단말의 논리적 구조를 나타낸 블록도이다.
도 4는 본 발명에 따른 가상 데스크탑 제공 서버의 물리적 구조를 나타낸 블록도이다.
도 5는 본 발명에 따른 가상 데스크탑 제공 서버의 논리적 구조를 나타낸 블록도이다.
도 6은 본 발명에 따른 가상 데스크탑 제공 방법을 나타낸 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명을 설명한다. 본 명세서에서는 본 발명의 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있으나, 본 발명의 사상이 변경되지 않는 범위 내에서 본 발명의 다양한 변형이 가능하다. 따라서, 본 명세서는 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경 또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 명세서에서 사용되는 "포함한다," "포함할 수 있다." 등의 표현은 개시된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 명세서에서, "포함하다." 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.  
또한, 본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다.
도 2는 가상 데스크탑 서비스 환경을 설명하기 위한 도면이다.
도 2를 참조하면, 가상 데스크탑 서비스 환경에서 사용자의 각 단말(200-1, 200-2, 200-3, 200-4)은 WAN 또는 LAN 등의 네트워크를 통해 가상 데스크탑 제공 서버(500)에 연결된다. 일 실시 예에서, 사용자는 자신이 사용하는 PC, 노트북 컴퓨터, 태블릿, 스마트폰을 가상 데스크탑 제공 서버(500)에 연결하여 각각의 단말을 위한 가상 데스크탑을 이용할 수 있다. 이때, 각 단말은 가상 데스크탑을 이용하는 클라이언트 단말로 동작한다.
가상 플랫폼 풀은 가상화 서버의 가상 하드웨어 자원과 소프트웨어 이미지(사용자 프로파일, 애플리케이션, 운영체제)를 밀접하게 결합(tightly-coupled)하여 가상 플랫폼을 생성하고, 가상 플랫폼 전송 프로토콜을 통해 사용자에게 생성된 가상 플랫폼을 제공한다. 가상 플랫폼에서 제공하는 다중 애플리케이션 구동 기능은 가상 플랫폼에서 각 운영 체제 기반 응용 프로그램을 구동하는 환경을 제공한다.
가상 데스크탑 서비스 제공 시 가상 프로토콜은 네트워크를 통해 제어 장치 및 원격 컴퓨팅 장치로부터 키보드, 비디오, 마우스 등을 통하여 입력을 수신하고, 원격 컴퓨팅 장치로 출력을 전송하며, 액세스를 위한 프로토콜 메시지의 집합을 정의한다. 이때, 제어 장치는 클라이언트 단말과 가상 데스크탑 제공 서버 양쪽 모두에 상주할 수 있다.
가상 데스크탑 서비스 프로토콜은 통신 세션 순서 및 커뮤니케이션 채널(여기서, 모든 채널은 원격 컴퓨팅 장치일 수 있다.)의 종류에 따라 여러 개의 통신 채널로 나눌 수 있다. 각각의 통신 채널은 각각의 통신 채널에 대응하여, 메시지의 실행을 제어하는 능력과 실행시간 동안 통신 채널을 추가하고 제거할 수 있는 능력을 갖는다. 커뮤니케이션 채널은 다음과 같은 프로토콜 형식으로 정의될 수 있다.
■ 메인 프로토콜 세션 연결 역할을 수행하는 메인 채널
■ 원격 디스플레이 업데이트를 받기 위한 디스플레이 채널
■ 마우스와 키보드 이벤트를 보내기 위한 입력 채널
■ 포인터 모양과 위치를 수신하는 커서 채널
■ 오디오 스트림을 받기 위한 재생 채널
■ 오디오 캡처를 보내기 위한 기록 채널
이하에서는, 도 2에 도시된 가상 데스크탑 서비스 환경에서 동작하는 클라이언트 단말 및 가상 데스크탑 제공 서버에 대하여 구체적으로 설명한다.
도 3은 본 발명에 따른 클라이언트 단말의 논리적 구조를 나타낸 블록도이다.
도 3을 참조하면, 본 발명에 따른 클라이언트 단말(200)은 가상 데스크탑 연결 프로세스(201)를 구동하여 가상 데스크탑 제공 서버의 가상 운영 체제에 연결하고, 가상 데스크탑 제공 서버로부터 가상 데스크탑 서비스를 제공받는다.
본 발명에 따른 클라이언트 단말(200)은 트래픽 및 자원 모니터링 에이전트(202)를 통하여 클라이언트 단말(200)의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원의 상태를 모니터링한다. 클라이언트 단말(200)은 수집된 모니터링 정보를 가상 데스크탑 제공 서버로 전송할 수 있다.
본 발명의 다양한 실시 예에서, 가상 데스크탑 제공 서버는 트래픽 및 자원 모니터링 에이전트(202)를 통하여 수집된 정보를 수신하고, 수신된 정보를 기초로 가상 데스크탑의 서비스 품질을 제어한다.
도 3에 도시된 클라이언트 단말(200)의 다른 논리적인 구성 요소들은 종래 기술과 동일하므로 자세한 설명을 생략한다.
이하에서는 가상 데스크탑 제공 서버의 구성을 상세히 설명한다.
도 4는 본 발명에 따른 가상 데스크탑 제공 서버의 물리적 구조를 나타낸 블록도이다.
도 4를 참조하면, 가상 데스크탑 제공 서버(500)는 통신부(501), 제어부(502) 및 저장부(503)를 포함하여 구성된다.
통신부(501)는 외부와 데이터 통신을 수행한다. 본 발명의 실시 예에 따르면, 통신부(501)는 클라이언트 단말 또는 가상 데스크탑 관리 서버와 데이터 통신을 수행할 수 있다. 통신부(501)는 클라이언트 단말로부터 단말의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 수신할 수 있다.
제어부(502)는 가상 데스크탑 제공 서버(500)의 전반적인 제어를 수행한다. 예를 들어, 제어부(502)는 통신부(501)를 통하여 수신한 클라이언트 단말의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 기초로, 해당 단말에 대한 가상 데스크탑의 서비스 품질을 제어한다. 이를 위하여 제어부(502)는 저장부(503)에 저장된 적어도 하나의 프로그램 소스 코드를 로드할 수 있다.
구체적으로, 제어부(502)는 가상 데스크탑 제공 서버(500)의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원을 모니터링하여, 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원에 관한 정보를 수집한다. 제어부(502)는 가상 데스크탑 제공 서버(500) 및 가상 데스크탑의 운영 체제(Operating System; OS)에 구비되는 모니터링 에이전트를 통하여 이러한 정보를 수집할 수 있다.
제어부(502)는 클라이언트 단말로부터 수신된 클라이언트 단말의 상태 정보, 가상 데스크탑 제공 서버(500)의 상태 정보를 기초로 해당 클라이언트 단말의 가상 데스크탑에 대한 환경 인자를 결정한다. 환경 인자는, 화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 중 적어도 하나를 포함할 수 있다.
제어부(502)는 결정된 환경 인자를 적용하여 해당 클라이언트 단말의 가상 데스크탑을 제어한다. 제어부(502)는 결정된 환경 인자를 적용하여 해당 클라이언트 단말의 사용 환경에 알맞은 품질의 가상 데스크탑을 제공할 수 있다.
저장부(503)는 가상 데스크탑 제공 서버(500)의 동작에 필요한 프로그램, 정보 및 데이터를 저장할 수 있다. 본 발명의 실시 예에 따르면, 저장부(503)는 클라이언트 단말의 네트워크 트래픽, 장치 사양 및 컴퓨팅 자원 등에 관한 상태 정보를 저장할 수 있다. 또한, 저장부(503)는 제어부(502)에 의하여 설정된, 적어도 하나의 클라이언트 단말에 대한 가상 데스크탑의 환경 인자(예를 들어, 화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 등)를 저장할 수 있다.
이하에서는, 가상 데스크탑 제공 서버(500)의 동작을 논리적인 구조에 따라 설명한다.
도 5는 본 발명에 따른 가상 데스크탑 제공 서버의 논리적 구조를 나타낸 블록도이다. 도 5에는 가상 데스크탑의 클라이언트 단말이 네트워크를 통하여 가상 데스크탑 제공 서버에 접속하고, 가상 데스크탑 서비스를 사용할 때, 가상 데스크탑 제공 서버의 주요 기능을 도시하였다. 다양한 실시 예에서, 가상 데스크탑 제공 서버는 가상 데스크탑 플랫폼 제공 서버, 가상 데스크탑 중앙 서버 등으로 명명될 수 있다.
도 5를 참조하면, 가상 데스크탑 제공 서버(500)는 네트워크 상황이나 컴퓨팅 상황이 좋지 않은 상황의 클라이언트 단말에서도 원활한 가상 데스크탑 서비스를 제공하기 위하여, 동적 경량 프로토콜 기반 적응형 가상 플랫폼 서비스를 제공한다. 이를 위하여 가상 데스크탑 제공 서버(500)에는 단말의 네트워크, 장치 사양 및 컴퓨팅 자원 상태, 가상 데스크탑 제공 서버(500)의 네트워크, 장치 사양 및 컴퓨팅 자원 상태를 모니터링하고 분석하는 트래픽 분석 모듈 및 트래픽 분석 모듈의 인터페이스를 활용하는 경량 프로토콜이 적용된다. 경량 프로토콜은 클라이언트 단말에 최적화된 서비스를 제공하기 위하여, 클라이언트 단말의 성능 및 네트워크 상태의 모니터링을 담당한다. 가상 데스크탑 제공 서버(500)는 경량 프로토콜을 통해 클라이언트 단말에 최적화된 가상 데스크탑의 환경 인자를 설정하도록 한다. 가상 데스크탑 제공 서버(500)는 경량 프로토콜 최적화 시스템이 안정적으로 지원되는 경우에, 클라이언트 단말에게 적응형 가상 플랫폼 서비스를 제공할 수 있다.
도 5를 참조하면, 가상 데스크탑 제공 서버(500)는 가상 데스크탑 플랫폼 계층(511)을 구비한다.
본 발명의 실시 예에서, 가상 데스크탑 플랫폼 계층(511)은 서비스 트래픽 분석 모듈(512), 자원 모니터링 모듈(513)을 포함하여 구성된다. 서비스 트래픽 분석 모듈(512)은 클라이언트 단말, 가상 데스크탑 제공 서버(500) 및 가상 데스크탑의 게스트 운영체제(Guest Operating System; Guest OS)(517) 모니터링 에이전트를 통해 네트워크 트래픽을 모니터링하고 정보를 수집한다. 자원 모니터링 모듈(513)은 클라이언트 단말, 가상 데스크탑 제공 서버(500) 및 가상 데스크탑의 게스트 운영체제(517) 모니터링 에이전트를 통해 컴퓨팅 자원을 모니터링하고 정보를 수집한다.
최적 환경 인자 결정 모듈(514)은 가상 플랫폼에서 최적의 서비스를 제공하기 위해 플랫폼의 환경 인자를 결정하는 모듈로서, 서비스 트래픽 분석 모듈(512) 및 자원 모니터링 모듈(513)을 통하여 수집된 상태 정보를 분석하여, 클라이언트 단말 별로 제공할 가상 데스크탑의 환경 인자를 결정한다. 클라이언트 단말과 가상 데스크탑 제공 서버의 상태 정보에 대응하는 최적의 환경 인자는 매핑 테이블 또는 기 설정된 규칙에 따라 결정될 수 있으며, 결정 방법이나 조건에는 특별한 제한을 두지 않는다. 다만, 일반적으로 네트워크 트래픽이 높거나 컴퓨팅 자원이 부족한 경우에는 전송 압축률을 높게, 화면의 해상도가 낮게 설정되는 것이 일반적일 것이다. 최적 환경 인자 결정 모듈(514)은 최적의 환경 인자를 결정하기 위하여 다양한 가상 플랫폼 서비스 형태에 따른 트래픽 분석 및 컴퓨팅 자원 분석 자료를 수집하고 관리할 수 있다.
환경 인자 전송 모듈(515)은 최적 환경 인자 결정 모듈(514)에 의하여 결정된 환경 인자를 서비스 품질 제어 모듈(516)로 전달하고, 서비스 품질 제어 모듈(516)은 환경 인자를 실제로 가상 데스크탑에 적용하여, 가상 데스크탑의 서비스 품질을 제어한다. 상술한 본 발명의 실시 예에 따르면, 클라이언트 단말의 사양, 컴퓨팅 자원 및 네트워크 트래픽 분석을 통해 수집한 정보에 따라 환경 인자가 동적으로 변경된다.
가상 데스크탑 서비스 엔진(518)은 전달된 환경 인자들을 기반으로 적응형 가상 플랫폼 서비스를 제어한다. 가상 데스크탑 서비스 엔진(518)은 서비스 품질 제어 모듈(516)의 제어에 따라 게스트 운영 체제(517)에서 구동되는 응용 프로그램의 비디오 압축률, 화면 해상도 등을 동적으로 변경하여 클라이언트 단말의 네트워크 환경이나 컴퓨팅 자원에 따라 적응적으로 최적의 서비스를 제공한다.
도 5에 도시된 가상 데스크탑 제공 서버(500)의 다른 논리적인 구성 요소들은 종래 기술과 동일하므로 자세한 설명을 생략한다.
도 6은 본 발명에 따른 가상 데스크탑 제공 방법을 나타낸 순서도이다.
도 6을 참조하면, 가상 데스크탑 제공 서버는, 클라이언트 단말로부터 클라이언트 단말의 상태 정보를 수신한다(601). 클라이언트 단말의 상태 정보는 클라이언트 단말에 구비되는 모니터링 에이전트를 통하여 수집되는 것으로, 클라이언트 단말의 네트워크 트래픽에 관한 정보, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 포함할 수 있다.
가상 데스크탑 제공 서버는, 가상 데스크탑 제공 서버의 상태를 모니터링하고 가상 데스크탑 제공 서버의 상태 정보를 수집한다(603). 가상 데스크탑 제공 서버의 상태 정보는 가상 데스크탑 제공 서버 및 가상 데스크탑의 운영 체제(Operating System; OS)에 구비되는 모니터링 에이전트를 통하여 수집될 수 있으며, 가상 데스크탑 제공 서버의 네트워크 트래픽에 관한 정보, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 포함할 수 있다.
가상 데스크탑 제공 서버는 클라이언트 단말의 상태 정보 및 가상 데스크탑 제공 서버의 상태 정보를 기초로, 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정한다(605). 가상 데스크탑 제공 서버는 수집된 정보를 분석하여, 각각의 클라이언트 단말이 이용하는 가상 데스크탑을 위한 최적의 환경 인자를 결정할 수 있다. 환경 인자는 화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 중 적어도 하나를 포함할 수 있다.
가상 데스크탑 제공 서버는 결정된 환경 인자를 적용하여 클라이언트 단말의 가상 데스크탑을 제어한다(607).
본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 그리고 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
500: 가상 데스크탑 제공 서버 501: 통신부
502: 제어부 503: 저장부

Claims (13)

  1. 가상 데스크탑(Virtual Desktop; VD) 제공 서버의 가상 데스크탑 제공 방법으로,
    클라이언트 단말로부터 수신되는 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 수집하는 단계;
    상기 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 기초로, 상기 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정하는 단계; 및
    상기 환경 인자를 적용하여 상기 클라이언트 단말에 서비스되는 가상 데스크탑을 제어하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 클라이언트 단말의 상태 정보는,
    상기 클라이언트 단말에 구비되는 모니터링 에이전트를 통하여 수집되는 것을 특징으로 하는 방법.
  3. 제1항에 있어서, 상기 클라이언트 단말의 상태 정보는,
    상기 클라이언트 단말의 네트워크 트래픽에 관한 정보, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  4. 제1항에 있어서, 상기 가상 데스크탑 제공 서버의 상태 정보는,
    상기 가상 데스크탑 제공 서버 및 상기 가상 데스크탑의 운영 체제(Operating System; OS)에 구비되는 모니터링 에이전트를 통하여 수집되는 것을 특징으로 하는 방법.
  5. 제1항에 있어서, 상기 환경 인자는,
    화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  6. 제1항에 있어서, 상기 클라이언트 단말의 성능이나 컴퓨팅 자원 혹은 네트워크 상태에 따른 제어 방법으로는,
    화면 전송 영역을 분류하여 클라이언트 단말의 성능이나 컴퓨팅 자원 혹은 네트워크 환경 상태에 따라 적응적으로 화면에서 움직임이 있는 영역 위주로 전송되어 최적의 화면 전송 방법이 선택되어 서비스되는 것을 특징으로 하는 방법.
  7. 가상 데스크탑(Virtual Desktop; VD) 제공 서버로,
    클라이언트 단말로부터 클라이언트 단말의 상태 정보를 수신하는 통신부; 및
    상기 가상 데스크탑 제공 서버의 상태 정보를 수집하고, 상기 클라이언트 단말의 상태 정보 및 상기 가상 데스크탑 제공 서버의 상태 정보를 기초로, 상기 클라이언트 단말의 가상 데스크탑을 위한 환경 인자를 결정하고, 상기 환경 인자를 적용하여 상기 클라이언트 단말에 서비스되는 가상 데스크탑을 제어하는 제어부를 포함하는 것을 특징으로 하는 가상 데스크탑 제공 서버.
  8. 제7항에 있어서, 상기 클라이언트 단말의 상태 정보는,
    상기 클라이언트 단말에 구비되는 모니터링 에이전트를 통하여 수집되는 것을 특징으로 하는 가상 데스크탑 제공 서버.
  9. 제7항에 있어서, 상기 클라이언트 단말의 상태 정보는,
    상기 클라이언트 단말의 네트워크 트래픽에 관한 정보, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 가상 데스크탑 제공 서버.
  10. 제7항에 있어서, 상기 가상 데스크탑 제공 서버의 상태 정보는,
    상기 가상 데스크탑 제공 서버 및 상기 가상 데스크탑의 운영 체제(Operating System; OS)에 구비되는 모니터링 에이전트를 통하여 수집되는 것을 특징으로 하는 가상 데스크탑 제공 서버.
  11. 제7항에 있어서, 상기 환경 인자는,
    화면 전송 압축률, 화면 해상도, 이미지 압축률, 오디오 압축률, 영상 압축률, 오디오 코덱 종류, 영상 코덱 종류 중 적어도 하나를 포함하는 것을 특징으로 하는 가상 데스크탑 제공 서버.
  12. 가상 데스크탑 제공 서버로부터 가상 데스크탑 서비스를 제공받는 클라이언트 단말의 가상 데스크탑 제어 방법으로,
    상기 클라이언트 단말의 모니터링 에이전트를 이용하여 상기 클라이언트 단말의 상태 정보를 수집하는 단계; 및
    상기 단말의 상태 정보를 상기 가상 데스크탑 제공 서버로 전송하는 단계를 포함하되,
    상기 단말의 상태 정보는,
    상기 가상 데스크탑이 상기 클라이언트 단말의 가상 데스크탑을 위한 한경 인자를 결정하기 위해 사용되는 것을 특징으로 하는 방법.
  13. 제12항에 있어서, 상기 클라이언트 단말의 상태 정보는,
    상기 클라이언트 단말의 네트워크 트래픽에 관한 정보, 장치 사양 및 컴퓨팅 자원에 관한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
KR1020150012338A 2015-01-26 2015-01-26 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버 KR20160092136A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150012338A KR20160092136A (ko) 2015-01-26 2015-01-26 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버
US14/974,683 US20160219126A1 (en) 2015-01-26 2015-12-18 Virtual desktop providing method and virtual desktop providing server thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150012338A KR20160092136A (ko) 2015-01-26 2015-01-26 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버

Publications (1)

Publication Number Publication Date
KR20160092136A true KR20160092136A (ko) 2016-08-04

Family

ID=56433847

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150012338A KR20160092136A (ko) 2015-01-26 2015-01-26 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버

Country Status (2)

Country Link
US (1) US20160219126A1 (ko)
KR (1) KR20160092136A (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101899262B1 (ko) * 2017-11-14 2018-09-14 (주) 퓨전데이타 가상화 화면 최적화 시스템 및 방법
KR20190132434A (ko) * 2017-03-22 2019-11-27 후아웨이 테크놀러지 컴퍼니 리미티드 가상 현실 이미지를 송신하는 방법 및 장치
WO2020017936A1 (ko) * 2018-07-20 2020-01-23 삼성전자 주식회사 전자 장치 및 이미지의 전송 상태에 기반하여 이미지를 보정하는 방법
WO2020209560A1 (en) * 2019-04-08 2020-10-15 Samsung Electronics Co., Ltd. Electronic device for performing image processing and method thereof
KR102276428B1 (ko) * 2021-02-24 2021-07-12 엑세스(주) 클라이언트 단말들의 자원을 가상화하여 중앙에서 통제 및 관리하기 위한 가상화 시스템 및 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10476927B2 (en) * 2015-11-30 2019-11-12 Dell Products L.P. System and method for display stream compression for remote desktop protocols
US10367876B2 (en) * 2015-12-21 2019-07-30 AVAST Software s.r.o. Environmentally adaptive and segregated media pipeline architecture for multiple streaming sessions
CN110187948A (zh) * 2019-05-22 2019-08-30 上海达龙信息科技有限公司 实时监测云桌面运行环境的方法、系统、介质及服务器
CN110633122A (zh) * 2019-09-19 2019-12-31 北京朋创天地科技有限公司 虚拟桌面管理系统及方法
US11196817B1 (en) * 2020-06-03 2021-12-07 Dell Products L.P. Intelligently managing resource utilization in desktop virtualization environments

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224885B1 (en) * 2009-01-26 2012-07-17 Teradici Corporation Method and system for remote computing session management
US8392596B2 (en) * 2009-05-26 2013-03-05 Red Hat Israel, Ltd. Methods for detecting and handling video and video-like content in remote display system
US8918499B2 (en) * 2010-08-09 2014-12-23 International Business Machines Corporation Method and system for end-to-end quality of service in virtualized desktop systems
EP2693336A4 (en) * 2011-03-28 2016-03-23 Nec Corp VIRTUAL MACHINE MANAGEMENT SYSTEM AND METHOD FOR MANAGING VIRTUAL MACHINES
US9519513B2 (en) * 2013-12-03 2016-12-13 Vmware, Inc. Methods and apparatus to automatically configure monitoring of a virtual machine

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190132434A (ko) * 2017-03-22 2019-11-27 후아웨이 테크놀러지 컴퍼니 리미티드 가상 현실 이미지를 송신하는 방법 및 장치
US11402894B2 (en) 2017-03-22 2022-08-02 Huawei Technologies Co., Ltd. VR image sending method and apparatus
KR101899262B1 (ko) * 2017-11-14 2018-09-14 (주) 퓨전데이타 가상화 화면 최적화 시스템 및 방법
WO2020017936A1 (ko) * 2018-07-20 2020-01-23 삼성전자 주식회사 전자 장치 및 이미지의 전송 상태에 기반하여 이미지를 보정하는 방법
KR20200009922A (ko) * 2018-07-20 2020-01-30 삼성전자주식회사 전자 장치 및 이미지의 전송 상태에 기반하여 이미지를 보정하는 방법
US11393078B2 (en) 2018-07-20 2022-07-19 Samsung Electronics Co., Ltd. Electronic device and method for correcting image on basis of image transmission state
WO2020209560A1 (en) * 2019-04-08 2020-10-15 Samsung Electronics Co., Ltd. Electronic device for performing image processing and method thereof
US11380096B2 (en) 2019-04-08 2022-07-05 Samsung Electronics Co., Ltd. Electronic device for performing image processing and method thereof
KR102276428B1 (ko) * 2021-02-24 2021-07-12 엑세스(주) 클라이언트 단말들의 자원을 가상화하여 중앙에서 통제 및 관리하기 위한 가상화 시스템 및 방법

Also Published As

Publication number Publication date
US20160219126A1 (en) 2016-07-28

Similar Documents

Publication Publication Date Title
KR20160092136A (ko) 가상 데스크탑 제공 방법 및 가상 데스크탑 제공 서버
US11029990B2 (en) Delivering a single end user experience to a client from multiple servers
JP5451397B2 (ja) リモートインターラクションに応答してビデオコンテンツを配信するためのアーキテクチャー
Steiner et al. Network-aware service placement in a distributed cloud environment
US8789050B2 (en) Systems and methods for transparently optimizing workloads
US20100058341A1 (en) Apparatus and method for setting input/output device in virtualization system
KR20170000567A (ko) 가상 데스크탑 서비스를 위한 장치 및 방법
EP2849080B1 (en) Image display method and device
US8589565B2 (en) Client-server session parallelism
KR20160136489A (ko) 클라우드 서비스를 위한 가상화 기반 자원 관리 방법
KR20200105582A (ko) 컨테이너를 활용한 가상 데스크탑 시스템 및 그 데이터 처리 방법
US20160364261A1 (en) Apparatus and method for providing adaptive virtual desktop operating system service
KR102314222B1 (ko) 컨테이너를 활용한 가상 데스크탑 시스템 및 그 데이터 처리 방법
KR20200105174A (ko) 특정 시점의 환경을 제공할 수 있는 가상 데스크톱 시스템 및 그 데이터 처리 방법
KR20210027338A (ko) 특정 시점의 환경을 제공할 수 있는 가상 데스크톱 시스템 및 그 데이터 처리 방법
CN114296953A (zh) 一种多云异构系统及任务处理方法
KR102167505B1 (ko) 고화질 영상 서비스를 위한 가상 데스크탑 시스템 및 그 데이터 처리 방법
US20180189090A1 (en) Exposing Hardware Work Queues as Virtual Devices in Virtual Machines
TWI592874B (zh) 網路伺服系統
US11196817B1 (en) Intelligently managing resource utilization in desktop virtualization environments
KR20160121982A (ko) 클라우드 스트리밍 서비스 시스템, 웹 컨테이너 공유를 통한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR102172679B1 (ko) 씬 클라이언트를 이용한 가상 데스크탑과 iptv 서비스 및 그 데이터 처리 방법
Kim et al. Cloud-based virtual desktop service using lightweight network display protocol
KR101326231B1 (ko) 가상화 소프트웨어 서비스 시스템 및 이를 위한 서비스 서버 및 사용자단말
Honda et al. Thin client technology for mobile service platform

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application