KR20110049418A - 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법 - Google Patents

다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법 Download PDF

Info

Publication number
KR20110049418A
KR20110049418A KR20090106429A KR20090106429A KR20110049418A KR 20110049418 A KR20110049418 A KR 20110049418A KR 20090106429 A KR20090106429 A KR 20090106429A KR 20090106429 A KR20090106429 A KR 20090106429A KR 20110049418 A KR20110049418 A KR 20110049418A
Authority
KR
South Korea
Prior art keywords
usb
information
user
virtual machine
remote
Prior art date
Application number
KR20090106429A
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 KR20090106429A priority Critical patent/KR20110049418A/ko
Priority to US12/881,396 priority patent/US8499056B2/en
Publication of KR20110049418A publication Critical patent/KR20110049418A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • 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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0058Bus-related hardware virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명에 따른 마스터 서버는, 원격 USB 브릿지에 연결된 USB 장치에 대한 정보를 원격 USB 브릿지로부터 수신하여 이를 관리하는 원격 USB 정보 관리부; 가상머신 호스트 서버로부터 사용자의 가상머신에 대한 정보를 수신하여 이를 관리하는 가상머신 정보 관리부; 원격 USB 브릿지 상의 특정 USB 장치와의 연결을 원하는 사용자 요청에 따라, 해당 USB 장치에 대한 정보를 원격 USB 정보 관리부로부터 추출하고, 사용자의 가상머신에 대한 정보를 가상머신 정보 관리부로부터 추출하는 사용자 요청 처리부; 및 사용자 요청 처리부에 의해 추출된 정보를 이용하여 사용자의 가상머신이 특정 USB 장치와 연결되도록 처리하는 원격 USB 연결 제어부를 구비한다.
가상머신, USB, 호스트, 원격, 브릿지, 연결, 충돌, 할당

Description

다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 시스템 및 그 방법{REMOTE USB SYSTEM FOR SUPPORTING MULTIPLE VIRTUAL MACHINES OF MULTIPLE HOST AND METHOD THEREOF}
본 발명은 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB(Universal Serial Bus) 시스템 및 그 방법에 관한 것이다. 보다 상세하게는, 복수의 가상머신 호스트 서버 상에서 동작하는 복수의 가상머신에 네트워크 상에 존재하는 원격의 USB 장치를 플러그 앤 플레이(Plug and Play) 방식 또는 사용자 요청에 의해 연결하는 원격 USB 시스템 및 그 방법에 관한 것이다.
본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호:2008-S-034-02, 과제명:SoD(System on-Demand) 서비스를 위한 협업형 VM 시스템 기술 개발].
종래의 원격 USB 방법은 단일 호스트와 원격 USB 장치의 연결에 초점을 맞추어 구현되었기 때문에, 복수의 호스트 상의 복수의 가상머신에 원격 USB 장치를 할당하고 사용하기 힘들었다.
또한, 네트워크 상에 존재하는 원격 USB 장치에 대한 정보를 호스트 상의 가 상머신 사용자가 일일이 알고 있어야만 했고, 하나의 USB 장치에 대해 복수의 사용자가 사용하기를 요청할 경우 이를 처리할 방법이 없었다.
전술한 바와 같이, 종래의 원격 USB 방법은 네트워크 환경에서 다양한 원격 USB 장치들을 지원하는데 한계가 있을 뿐만 아니라, 사용자가 이용하기 불편하고 복수의 사용자 간의 충돌을 피하기 어려워서 원격 USB 장치를 사용하는데 있어서 기대 만큼의 효과를 나타내지 못하였다.
본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로서,
본 발명은 네트워크 상의 USB 장치 정보와 가상머신 정보를 저장하고 관리하는 마스터 서버를 통해 네트워크 상의 가상머신들이 원격의 USB 장치를 로컬 USB 장치와 같이 사용할 수 있도록 해주는 것을 목적으로 한다.
또한, 본 발명은 복수의 호스트 상의 복수의 가상머신 사용자들이 네트워크 상의 원격 USB 장치를 플러그 앤 플레이 방식 또는 사용자의 요청에 의해 충돌없이 사용할 수 있도록 하는 것을 목적으로 한다.
본 발명의 실시예에 따른 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버는, 원격 USB 브릿지에 연결된 USB 장치에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여 이를 관리하는 원격 USB 정보 관리부; 가상머신 호스트 서버로부터 사용자의 가상머신에 대한 정보를 수신하여 이를 관리하는 가상머신 정보 관 리부; 상기 원격 USB 브릿지 상의 특정 USB 장치와의 연결을 원하는 사용자 요청에 따라, 해당 USB 장치에 대한 정보를 상기 원격 USB 정보 관리부로부터 추출하고, 상기 사용자의 가상머신에 대한 정보를 상기 가상머신 정보 관리부로부터 추출하는 사용자 요청 처리부; 및 상기 사용자 요청 처리부에 의해 추출된 정보를 이용하여 상기 사용자의 가상머신이 상기 특정 USB 장치와 연결되도록 처리하는 원격 USB 연결 제어부를 구비한다.
특히, 상기 USB 장치에 대한 정보는, 상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
또한, 상기 가상머신에 대한 정보는, 상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와; 상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
또한, 상기 사용자 요청 처리부는, 상기 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 사용자에게 제공하고, 그에 따라 상기 사용자로부터 상기 USB 장치들 중 어느 하나의 USB 장치를 선택받는 것을 특징으로 한다.
또한, 상기 사용자 요청 처리부는, 상기 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 사용자에게 제공함에 있어서, 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하고 상기 사용자에게 제공하는 것을 특징으로 한다.
또한, 상기 사용자 요청 처리부는, 상기 원격 USB 브릿지에 연결된 USB 장치 들에 대한 정보를 상기 사용자에게 제공함에 있어서, 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 이미 다른 사용자가 사용하고 있음을 표시하여 상기 사용자에게 제공하는 것을 특징으로 한다.
또한, 상기 사용자 요청 처리부는, 상기 사용자로부터 연결을 원하는 USB 장치의 유형(type)을 입력받아 등록하고, 상기 등록된 유형의 USB 장치가 상기 원격 USB 브릿지에 연결되면, 상기 등록된 유형의 USB 장치가 상기 사용자의 가상머신과 연결되도록 처리하는 것을 특징으로 한다.
또한, 상기 사용자 요청 처리부는, 상기 사용자로부터 연결을 원하는 원격 USB 브릿지를 선택받아 등록하고, 상기 등록된 원격 USB 브릿지에 USB 장치가 연결되면, 상기 원격 USB 브릿지에 연결된 USB 장치가 상기 사용자의 가상머신과 연결되도록 처리하는 것을 특징으로 한다.
한편, 본 발명의 실시예에 따른 다중 호스트 상의 다중 가상 머신을 지원하는 원격 USB 브릿지는, 복수 개의 USB 포트를 구비하며, 상기 USB 포트에 접속된 USB 장치에 대한 정보를 관리하는 USB 장치 관리부; 상기 USB 포트에 접속된 USB 장치에 대한 정보를 상기 USB 장치 관리부로부터 전달받아 마스터 서버에 전송하고, 상기 마스터 서버로부터 원격 USB 연결 지시 및 사용자의 가상머신에 대한 정보를 수신하는 마스터 서버 연결부; 및 상기 마스터 서버로부터 원격 USB 연결 지시가 수신되면, 상기 수신한 사용자의 가상머신에 대한 정보를 이용하여 가상머신 호스트 서버 상에 존재하는 상기 사용자의 가상머신과 상기 USB 포트에 접속된 USB 장치가 연결되도록 처리하는 원격 USB 연결부를 구비한다.
특히, 상기 USB 장치 관리부는, 플러그 앤 플레이(Plug and Play) 방식으로 동작하는 것을 특징으로 한다.
또한, 상기 USB 장치에 대한 정보는, 상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
또한, 상기 가상머신에 대한 정보는, 상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와; 상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
한편, 본 발명의 1 실시예에 따른 원격 USB 장치 할당 방법은, 다중 가상머신을 지원하는 원격 USB 시스템에서의 원격 USB 장치 할당 방법에 관한 것으로서, 마스터 서버가, 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여 저장하는 단계; 가상머신 호스트 서버로부터 사용자의 가상머신에 대한 정보를 수신하여 저장하는 단계; 사용자 요청에 따라, 상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하고, 그에 따라 상기 사용자로부터 상기 USB 장치들 중 어느 하나의 USB 장치를 선택받는 단계; 상기 선택된 USB 장치에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 가상머신 호스트 서버로 전송하는 단계; 및 상기 사용자의 가상머신에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 원격 USB 브릿지로 전송하는 단계를 포함한다.
특히, 상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하는 단계는, 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하고 상기 사용자에게 제공하는 것을 특징으로 한다.
또한, 상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하는 단계는, 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 이미 다른 사용자가 사용하고 있음을 표시하여 상기 사용자에게 제공하는 것을 특징으로 한다.
또한, 상기 USB 장치에 대한 정보는, 상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
또한, 상기 가상머신에 대한 정보는, 상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와; 상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
한편, 본 발명의 2 실시예에 따른 원격 USB 장치 할당 방법은, 다중 가상머신을 지원하는 원격 USB 시스템에서의 원격 USB 장치 할당 방법에 관한 것으로서, 마스터 서버가, 사용자로부터 원하는 USB 장치의 유형(type)을 입력받아 등록하는 단계; 가상머신 호스트 서버로부터 상기 사용자의 가상머신에 대한 정보를 수신하여 저장하는 단계; 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여, 상기 사용자가 등록한 유형을 갖는 USB 장치가 존재하는지를 탐색하는 단계; 상기 사용자가 등록한 유형을 갖는 USB 장치가 존재하면, 해당 USB 장치에 대한 정보를 원격 USB 연결 지시와 함께 상기 가상머신 호스트 서버로 전송하는 단계; 및 상기 사용자의 가상머신에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 원격 USB 브릿지로 전송하는 단계를 포함한다.
특히, 상기 USB 장치에 대한 정보는, 상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
또한, 상기 가상머신에 대한 정보는, 상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와; 상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 한다.
본 발명에 따르면 다음과 같은 효과를 기대할 수 있다.
복수의 호스트 서버 상의 복수의 가상머신 사용자들이 원격의 USB 장치를 로컬 USB 장치와 같이 사용할 수 있게 된다.
또한, 복수의 호스트 상의 복수의 가상머신 사용자들이 네트워크 상의 원격 USB 장치를 플러그 앤 플레이 방식 또는 사용자의 요청에 의해 충돌없이 사용할 수 있게 된다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
도 1은 본 발명에 실시예에 따른 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명에 따른 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 시스템은 USB 장치(10), 원격 USB 브릿지(100), 마스터 서버(200), 및 가상머신 호스트(200)를 구비한다.
다양한 유형(type)을 갖는 복수 개의 USB 장치(10)는 구비되어 있는 각각의USB 인터페이스를 통해 원격 USB 브릿지(100)의 USB 포트에 각각 접속된다. 이러한 원격 USB 브릿지(100)는 네트워크(50)를 통해 마스터 서버(200) 및 가상머신 호스트(300)와 연결된다.
원격 USB 브릿지(100)는 복수 개의 USB 포트(port)를 구비하며, 각각의 USB 포트에 접속된 USB 장치(10)에 대한 정보를 관리한다. 그리고, 마스터 서버(200)로부터의 요청에 따라, USB 포트에 접속된 USB 장치들에 대한 정보를 마스터 서버(200)로 전송한다. 여기서, 원격 USB 브릿지(100)는 플러그 앤 플레이(Plug and Play) 방식으로 동작하여 USB 포트에 접속된 USB 장치(10)들을 인식한다.
또한, 원격 USB 브릿지(100)는 마스터 서버(200)로부터 원격 USB 연결 지시 및 특정 가상머신에 대한 정보를 수신하면, 수신한 특정 가상머신에 대한 정보를 이용하여 가상머신 호스트 서버(300) 상에 존재하는 해당 가상머신과 USB 포트에 접속된 USB 장치가 연결되도록 처리한다.
마스터 서버(200)는 원격 USB 브릿지(100)에 USB 장치(10)들에 정보를 원격 USB 브릿지(100)로부터 수신하여 이를 관리한다. 또한, 마스터 서버(200)는 가상머신 호스트 서버(300)로부터 가상머신 호스트 서버(300)에 존재하는 복수의 가상머신에 대한 정보를 수신하여 이를 관리한다.
그리고, 마스터 서버(200)는 원격 USB 브릿지(100) 상의 특정 USB 장치와의 연결을 원하는 가상머신 사용자의 요청에 따라, 해당 USB 장치에 대한 정보 및 사용자의 가상머신에 대한 정보를 추출하고, 추출한 정보를 이용하여 가상머신 호스트 서버(300) 상의 사용자의 가상머신이 상기한 특정 USB 장치와 연결되도록 처리한다.
가상머신 호스트 서버(300)는 호스트 상에 구동 중인 복수 개의 가상머신을 관리하며, 마스터 서버(200)로부터의 요청에 따라, 호스트 상에 구동 중인 가상머신들에 대한 정보를 마스터 서버(200)로 전달한다.
또한, 가상머신 호스트 서버(300)는 마스터 서버(200)로부터 원격 USB 지시 및 특정 USB 장치에 대한 정보를 수신하면, 수신한 특정 USB 장치에 대한 정보를 이용하여 원격 USB 브릿지(100)에 연결된 해당 USB 장치와 호스트 상의 가상머신이 연결되도록 처리한다.
도 1에 도시된 원격 USB 브릿지(100), 마스터 서버(200), 및 가상머신 호스트 서버(300)의 구성 및 기능에 대해서는 도 2 내지 도 4를 통해 보다 상세하게 후술하기로 한다.
도 2는 도 1의 마스터 서버(200)의 기능을 구체적으로 설명하기 위한 도면이다.
도 2를 참조하면, 본 발명의 실시예에 따른 마스터 서버(200)는 원격 USB 정보 관리부(210), 원격 USB 연결 제어부(220), 가상머신 정보 관리부(230), 및 사용자 요청 처리부(240)를 구비한다.
원격 USB 정보 관리부(210)는 원격 USB 브릿지(100)에 연결된 USB 장치에 대한 정보를 원격 USB 브릿지(100)로부터 수신하여, 이를 관리한다. 그리고, 원격 USB 연결 제어부(220) 및 사용자 요청 처리부(240)로부터의 요청에 따라, 저장하고 있는 정보를 원격 USB 연결 제어부(220) 및 사용자 요청 처리부(240)에 제공하여 원격 USB 연결에 활용될 수 있도록 한다. 여기서, 원격 USB 정보 관리부(210)가 관리하는 정보에는 원격 USB 브릿지(100)의 IP 주소, USB 포트 정보, 및 USB 장치의 하드웨어 관련 정보가 포함된다.
가상머신 정보 관리부(230)는 가상머신 호스트 서버(300)로부터 가상머신 호스트 서버(300) 상에 구동 중인 가상머신들에 대한 정보를 수신하여, 이를 관리한다. 그리고, 원격 USB 연결 제어부(220) 및 사용자 요청 처리부(240)로부터의 요청에 따라, 저장하고 있는 정보를 원격 USB 연결 제어부(220) 및 사용자 요청 처리부(240)에 제공하여 원격 USB 연결에 활용될 수 있도록 한다. 여기서, 가상머신 정보 관리부(230)가 관리하는 정보에는 가상머신 호스트 서버(300)의 IP 주소, 운영체제, 및 하드웨어 관련 정보와, 가상머신의 IP 주소, 운영체제, 및 하드웨어 관련 정보가 포함된다.
사용자 요청 처리부(240)는 원격 USB 연결에 대한 사용자의 요청을 처리한다. 이를 위해 사용자 요청 처리부(240)는, 원격 USB 브릿지(100) 상의 특정 USB 장치와의 연결을 원하는 사용자 요청에 따라, 해당 USB 장치에 대한 정보를 원격 USB 정보 관리부(210)로부터 추출하고, 해당 사용자의 가상머신에 대한 정보를 가상머신 정보 관리부(230)로부터 추출하여 원격 USB 연결 제어부(220)에 전달한다.
여기서, 사용자 요청 처리부(240)는 복수의 가상머신 사용자가 원격 USB 브릿지(100)에 연결된 USB 장치들을 열람한 뒤 선택할 수 있도록 하는 사용자 인터페이스를 제공한다. 즉, 사용자 요청 처리부(240)는 원격 USB 브릿지(100)에 연결된 USB 장치들에 대한 정보를 사용자에게 제공하고, 그에 따라 사용자로부터 상기한 USB 장치들 중 어느 하나의 USB 장치를 선택받는다. 이때, 사용자 요청 처리부(240)는 원격 USB 브릿지(100)에 연결된 USB 장치들에 대한 정보를 사용자에게 제공함에 있어서, 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하고 제공하거나, 이미 다른 사용자가 사용자가 사용하고 있음을 표시하여 사용자에게 제공한다.
또한, 사용자 요청 처리부(240)는 사용자가 원하는 특정 USB 장치의 유형(Type)을 등록할 수 있도록 하는 사용자 인터페이스를 제공한다. 즉, 사용자 요청 처리부(240)는 사용자가 등록한 유형을 갖는 USB 장치가 원격 USB 브릿지(100)에 연결되면, 해당 USB 장치가 해당 사용자의 가상머신과 연결되도록 처리한다.
보다 상세하게는, 사용자 요청 처리부(240)는 사용자로부터 특정 USB 장치에 대한 유형을 입력받아 이를 원격 USB 정보 관리부(210)에 등록한다. 그리고, 원격 USB 정보 관리부(210)에서는 원격 USB 브릿지(100)에 해당 유형을 갖는 USB 장치가 플러그 앤 플레이(Plug and Play)되면 이를 사용자 요청 처리부(240)에 통보하고, 사용자 요청 처리부(240)는 해당 USB 장치가 사용자의 가상머신과 연결되도록 처리한다.
또한, 사용자 요청 처리부(240)는 사용자로부터 연결을 원하는 원격 USB 브릿지를 선택받아 등록(해당 원격 USB 브릿지의 IP 주소를 등록)하고, 등록된 원격 USB 브릿지에 USB 장치가 연결되면, 원격 USB 브릿지에 연결된 USB 장치가 사용자의 가상머신과 연결되도록 처리한다.
원격 USB 연결 제어부(220)는 사용자 요청 처리부(240)의 제어 하에 사용자 요청 처리부(240)에 의해 추출된 정보를 이용하여 사용자의 가상머신이 원격 USB 브릿지(100) 상의 특정 USB 장치와 연결되도록 처리한다.
보다 상세하게는, 원격 USB 연결 제어부(220)는 사용자 요청 처리부(240)를통해 선택된 USB 장치에 대한 정보를 원격 USB 연결 지시와 함께 가상머신 호스트 서버(300)로 전송하고, 사용자의 가상머신에 대한 정보를 원격 USB 연결 지시와 함께 원격 USB 브릿지(100)로 전송하여, 사용자에 의해 선택된 USB 장치가 사용자의 가상머신과 연결되도록 처리한다.
도 3은 도 1의 원격 USB 브릿지(100)의 기능을 구체적으로 설명하기 위한 도면이다.
도 3을 참조하면, 본 발명에 따른 원격 USB 브릿지(100)는 마스터 서버 연결부(110), USB 장치 관리부(120), 및 원격 USB 연결부(130)를 구비한다.
USB 장치 관리부(120)는 복수 개의 USB 포트(도시 생략)를 구비하며, 복수 개의 USB 포트에 접속되는 USB 장치들에 대한 정보를 관리한다. 이때 USB 장치 관리부(120)는 플러그 앤 플레이(Plug and Play) 방식으로 동작하여 USB 포트에 접속되는 USB 장치들을 인식한다. 상기한 USB 장치 관리부(120)에서 관리하는 정보에는 원격 USB 브릿지(100)의 IP 주소, USB 포트 정보, USB 장치의 하드웨어 관련 정보 등이 포함된다.
마스터 서버 연결부(110)는 원격 USB 브릿지(100)에 접속된 USB 장치에 대한 정보를 USB 장치 관리부(120)로부터 전달받아 마스터 서버(200)에 전송하고, 마스터 서버(200)로부터 특정 가상머신과의 연결을 위한 원격 USB 연결 지시 및 상기한 특정 가상머신(예컨대, 사용자의 가상머신)에 대한 정보를 수신한다. 이때, 수신한 가상머신에 대한 정보에는 가상머신 호스트 서버(300)의 IP 주소, 운영체제, 및 하드웨어 관련 정보와, 가상머신 호스트 서버(300) 상에 존재하는 해당 가상머신의 IP 주소, 운영체제, 및 하드웨어 관련 정보가 포함된다.
원격 USB 연결부(130)는 마스터 서버(200)로부터 원격 USB 연결 지시가 수신되면, 함께 수신한 가상머신에 대한 정보를 이용하여 가상머신 호스트 서버(300) 상에 존재하는 해당 가상머신과 USB 포트에 접속되어 있는 특정 USB 장치가 연결되도록 처리한다.
도 4는 도 1의 가상머신 호스트 서버(300)의 기능을 구체적으로 설명하기 위한 도면이다.
도 4를 참조하면, 본 발명에 따른 가상머신 호스트 서버(300)는 마스터 서버 연결부(310), 가상머신(312), 및 원격 USB 연결부(120)를 구비한다.
마스터 서버 연결부(310)는 마스터 서버(200)와 연결되어 가상머신 호스트 서버(300) 상에서 구동 중인 가상머신(312)에 대한 정보를 마스터 서버(200)로 전송하고, 마스터 서버(200)로부터 원격 USB 브릿지(100)에 접속되어 있는 특정 USB 장치와의 연결을 위한 원격 USB 연결 지시 및 상기한 특정 USB 장치(예컨대, 가상머신 사용자에 의해 선택된 USB 장치)에 대한 정보를 수신한다. 이때, 수신한 USB 장치에 대한 정보에는 원격 USB 브릿지(100)의 IP 주소, 해당 USB 장치의 USB 포트 정보, 및 해당 USB 장치의 하드웨어 관련 정보가 포함된다.
원격 USB 연결부(320)는 마스터 서버 연결부(310)로부터 원격 USB 연결 지시가 수신되면, 함께 수신한 USB 장치에 대한 정보를 이용하여 원격 USB 브릿지(100)에 접속되어 있는 해당 USB 장치와 가상머신 호스트 서버(200) 상에 구동 중인 특정 가상머신이 연결되도록 처리한다.
도 5는 본 발명에 일 실시예에 따른 원격 USB 장치 할당 방법을 설명하기 위한 흐름도이다.
도 5를 참조하면, 원격 USB 브릿지(100)의 USB 장치 관리부가 플러그 앤 플레이(Plug and Play) 방식으로 인지한 USB 장치들의 정보를 마스터 서버 연결부를 통하여 마스터 서버(200)의 원격 USB 정보 관리부에 전달한다(S503). S503 단계에서 원격 USB 브릿지(100)가 마스터 서버(200)로 전송하는 정보에는 원격 USB 브릿지(100)의 IP 주소, USB 포트 정보, 및 USB 장치의 하드웨어 관련 정보가 포함된다.
마스터 서버(200)는 이렇게 수집된 정보를 관리하며, 가상머신 호스트 서버(300)의 가상머신 사용자(400)가 가상머신 상의 브라우저나 응용 프로그램을 이용하여 원격 USB 브릿지(300)에 연결된 USB 장치들을 열람할 수 있도록 한다.
보다 상세하게는, 가상머신 사용자(400)가 가상머신 상의 브라우저나 응용 프로그램을 이용하여 마스터 서버(200)에 USB 장치들에 대한 정보를 요청하면(S505), 마스터 서버(200)는 원격 USB 브릿지(100)에 접속되어 있는 USB 장치들에 대한 정보를 가상머신 사용자(400)에게 제공한다(S511). S511 단계에서 마스터 서버(200)가 원격 USB 브릿지(100)에 연결된 USB 장치들에 대한 정보를 가상머신 사용자에게 제공함에 있어서, 복수 사용자들 간의 충돌을 방지하기 위해 이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하거나, 이미 다른 사용자가 사용하고 있음을 표시하여 제공하는 것이 바람직하다.
다음으로, 가상머신 사용자(400)는 마스터 서버(200)로부터 제공받는 정보를 참조하여 원하는 USB 장치를 선택하고, 이에 대한 정보를 마스터 서버(200)로 전송한다(S513).
마스터 서버(200)는 가상머신 호스트 서버(300)에게 사용자(400)의 가상머신에 대한 정보를 요청하고(S521), 그에 따라 가상머신 호스트 서버(300)로부터 사용 자(400)의 가상머신에 대한 정보를 수신한다(S523). S523 단계에서 마스터 서버(200)가 수신하는 정보에는 가상머신 호스트 서버(300)의 IP 주소, 운영체제, 및 하드웨어 관련 정보와, 사용자(400)의 가상머신의 IP 주소, 운영체제, 및 하드웨어 관련 정보가 포함된다.
한편, 도 5에서 S521 단계 및 S523 단계가 S513 단계 이후에 수행되는 것으로 설명하였지만, 상기한 S521 단계 및 S523 단계는 S505 단계 이전에 수행될 수도 있다.
다음으로, 마스터 서버(200)의 사용자 요청 처리부는 가상머신 사용자(400)에 의해 선택된 USB 장치에 대한 정보 및 사용자(400)의 가상머신에 대한 정보를 원격 USB 연결 지시와 함께 원격 USB 연결 제어부에 전달한다.
이에, 마스터 서버(200)의 원격 USB 연결 제어부는 원격 USB 브릿지(100)에는 사용자(400)의 가상머신에 대한 정보 및 원격 USB 연결 지시를 전송하고(S527), 가상머신 호스트 서버(300)에는 선택된 USB 장치에 대한 정보 및 원격 USB 연결 지시를 전송하여(S529), 원격 USB 브릿지(100) 상의 USB 장치가 사용자(400)의 가상머신에 할당되도록 한다.
보다 상세하게는, 가상머신 호스트 서버(300)가 마스터 서버(200)로부터 수신한 정보를 근거로 원격 USB 브릿지(100)에 USB 연결을 요청하고(S535), 그에 따라 원격 USB 브릿지(100)가 가상머신 호스트 서버(300)로 USB 응답을 전송하여(S537), 원격 USB 브릿지(100)와 가상머신 호스트 서버(300) 간의 통신 연결이 설정된다. 그리고, 가상머신 호스트 서버(300)는 가상머신 사용자(400)에게 해당 USB 장치를 할당한다(S539).
한편, 도 5에서는 마스터 서버(200)로부터의 원격 USB 연결 지시에 대하여 가상 머신 호스트 서버(300)가 원격 USB 브릿지(100)에 먼저 USB 연결을 요청하는 것으로 설명하였으나, 반대로 원격 USB 브릿지(100)가 가상 머신 호스트 서버(300)에 먼저 USB 연결을 요청할 수도 있음은 물론이다.
도 6은 본 발명의 다른 실시예에 따른 원격 USB 장치 할당 방법을 설명하기 위한 흐름도이다.
도 6을 참조하면, 가상 머신 호스트 서버(300) 상의 가상머신 사용자(400)가 가상머신 상의 브라우저나 응용 프로그램을 이용하여 마스터 서버(200)의 사용자 요청 관리부나 가상머신 호스트 서버(300)의 마스터 서버 연결부를 통하여 원하는 USB 장치 유형(type)을 등록한다(S601). 도 6에는 전자의 경우만 도시하였다.
다음으로, 마스터 서버(200)는 가상머신 호스트 서버(300)에게 사용자(400)의 가상머신에 대한 정보를 요청하고(S605), 그에 따라 가상머신 호스트 서버(300)로부터 사용자(400)의 가상머신에 대한 정보를 수신한다(S607). S605 단계에서 마스터 서버(200)가 수신하는 정보에는 가상머신 호스트 서버(300)의 IP 주소, 운영체제, 및 하드웨어 관련 정보와, 사용자(400)의 가상머신의 IP 주소, 운영체제, 및 하드웨어 관련 정보가 포함된다.
한편, 도 6에서 S605 단계 및 S607 단계가 S601 단계 이후에 수행되는 것으로 설명하였지만, 상기한 S605 단계 및 S607 단계는 S601 단계 이전에 수행될 수도 있다.
다음으로, 마스터 서버(200)는 원격 USB 브릿지(100)에 가상머신 사용자(400)가 등록한 유형에 해당하는 USB 장치가 연결되는 지를 탐색한다.
보다 상세하게는, 원격 USB 브릿지(100)의 USB 장치 관리부는 플러그 앤 플레이(Plug and Play) 방식으로 원격 USB 브릿지(100)에 접속되는 USB 장치들을 인식하고, 인식한 USB 장치에 대한 정보를 마스터 서버 연결부를 통하여 마스터 서버(200)의 원격 USB 정보 관리부에 전달한다(S613).
이에 마스터 서버(200)의 원격 USB 정보 관리부는 이를 사용자 요청 관리부에 전달하고, 사용자 요청 관리부는 원격 USB 정보 관리부로부터 전달받은 정보를 이용하여 원격 USB 브릿지(100)에 연결되어 있는 USB 장치들 중 가상머신 사용자(400)가 등록한 유형에 해당하는 USB 장치가 존재하는 지를 탐색한다.
탐색 결과, 가상머신 사용자(400)가 등록한 유형을 갖는 USB 장치가 존재하면, 마스터 서버(200)는 해당 USB 장치에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 가상머신 호스트 서버(300)로 전송한다(S617).
또한, 마스터 서버(200)는 가상머신 사용자(400)의 가상머신에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 원격 USB 브릿지(100)로 전송한다(S619).
이에 가상 머신 호스트 서버(300)와 원격 USB 브릿지(100)는 각각의 원격 USB 연결부를 동작하게 하여 원격 USB 브릿지(100) 상의 USB 장치(사용자가 등록한 유형을 갖는 USB 장치)가 사용자(400)의 가상머신에 할당되도록 한다.
보다 상세하게는, 가상머신 호스트 서버(300)가 마스터 서버(200)로부터 수 신한 정보를 근거로 원격 USB 브릿지(100)에 USB 연결을 요청하고(S625), 그에 따라 원격 USB 브릿지(100)가 가상머신 호스트 서버(300)로 USB 응답을 전송하여(S627), 원격 USB 브릿지(100)와 가상머신 호스트 서버(300) 간의 통신 연결이 설정된다. 그리고, 가상머신 호스트 서버(300)는 가상머신 사용자(400)에게 해당 USB 장치를 할당한다(S629).
한편, 도 6에서는 마스터 서버(200)로부터의 원격 USB 연결 지시에 대하여 가상 머신 호스트 서버(300)가 원격 USB 브릿지(100)에 먼저 USB 연결을 요청하는 것으로 설명하였으나, 반대로 원격 USB 브릿지(100)가 가상 머신 호스트 서버(300)에 먼저 USB 연결을 요청할 수도 있음은 물론이다.
본 발명에 의하면, 사용자 등록한 특정 유형을 갖는 USB 장치에 대해 플러그 앤 플레이를 구현할 수 있으며, 복수의 가상머신 호스트 상에서 동작하는 복수의 가상머신 사용자들이 원격 USB 브릿지 상에 접속되어 있는 원격의 USB 장치들을 로컬(local) USB 장치처럼 사용할 수 있게 된다.
본 발명의 일부 단계들은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, CD-RW, 자기 테이프, 플로피디스크, HDD, 광 디스크, 광자기 저장장치 등이 있을 수 있으 며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 본 발명에 실시예에 따른 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 마스터 서버의 기능을 구체적으로 설명하기 위한 도면이다.
도 3은 도 1의 원격 USB 브릿지의 기능을 구체적으로 설명하기 위한 도면이다.
도 4는 도 1의 가상머신 호스트 서버의 기능을 구체적으로 설명하기 위한 도면이다.
도 5는 본 발명에 일 실시예에 따른 원격 USB 장치 할당 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 원격 USB 장치 할당 방법을 설명하기 위한 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
10 : USB 장치 100 : 원격 USB 브릿지
110 : 마스터 서버 연결부 120 : USB 장치 관리부
130 : 원격 USB 연결부 200 : 마스터 서버
210 : 원격 USB 정보 관리부 220 : 원격 USB 연결 제어부
230 : 가상머신 정보 관리부 240 : 사용자 요청 처리부
300 : 가상머신 호스트 서버 310 : 마스터 서버 연결부
312 : 가상머신 320 : 원격 USB 연결부

Claims (20)

  1. 원격 USB 브릿지에 연결된 USB 장치에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여 이를 관리하는 원격 USB 정보 관리부;
    가상머신 호스트 서버로부터 사용자의 가상머신에 대한 정보를 수신하여 이를 관리하는 가상머신 정보 관리부;
    상기 원격 USB 브릿지 상의 특정 USB 장치와의 연결을 원하는 사용자 요청에 따라, 해당 USB 장치에 대한 정보를 상기 원격 USB 정보 관리부로부터 추출하고, 상기 사용자의 가상머신에 대한 정보를 상기 가상머신 정보 관리부로부터 추출하는 사용자 요청 처리부; 및
    상기 사용자 요청 처리부에 의해 추출된 정보를 이용하여 상기 사용자의 가상머신이 상기 특정 USB 장치와 연결되도록 처리하는 원격 USB 연결 제어부를 구비하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  2. 청구항 1에 있어서,
    상기 USB 장치에 대한 정보는,
    상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  3. 청구항 1에 있어서,
    상기 가상머신에 대한 정보는,
    상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와;
    상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  4. 청구항 1에 있어서,
    상기 사용자 요청 처리부는,
    상기 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 사용자에게 제공하고, 그에 따라 상기 사용자로부터 상기 USB 장치들 중 어느 하나의 USB 장치를 선택받는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  5. 청구항 4에 있어서,
    상기 사용자 요청 처리부는,
    상기 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 사용자에게 제공함에 있어서,
    이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하고 상기 사용자에게 제공하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  6. 청구항 4에 있어서,
    상기 사용자 요청 처리부는,
    상기 원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 사용자에게 제공함에 있어서,
    이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 이미 다른 사용자가 사용하고 있음을 표시하여 상기 사용자에게 제공하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  7. 청구항 1에 있어서,
    상기 사용자 요청 처리부는,
    상기 사용자로부터 연결을 원하는 USB 장치의 유형(type)을 입력받아 등록하고, 상기 등록된 유형의 USB 장치가 상기 원격 USB 브릿지에 연결되면, 상기 등록 된 유형의 USB 장치가 상기 사용자의 가상머신과 연결되도록 처리하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  8. 청구항 1에 있어서,
    상기 사용자 요청 처리부는,
    상기 사용자로부터 연결을 원하는 원격 USB 브릿지를 선택받아 등록하고, 상기 등록된 원격 USB 브릿지에 USB 장치가 연결되면, 상기 원격 USB 브릿지에 연결된 USB 장치가 상기 사용자의 가상머신과 연결되도록 처리하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 마스터 서버.
  9. 복수 개의 USB 포트를 구비하며, 상기 USB 포트에 접속된 USB 장치에 대한 정보를 관리하는 USB 장치 관리부;
    상기 USB 포트에 접속된 USB 장치에 대한 정보를 상기 USB 장치 관리부로부터 전달받아 마스터 서버에 전송하고, 상기 마스터 서버로부터 원격 USB 연결 지시 및 사용자의 가상머신에 대한 정보를 수신하는 마스터 서버 연결부; 및
    상기 마스터 서버로부터 원격 USB 연결 지시가 수신되면, 상기 수신한 사용자의 가상머신에 대한 정보를 이용하여 가상머신 호스트 서버 상에 존재하는 상기 사용자의 가상머신과 상기 USB 포트에 접속된 USB 장치가 연결되도록 처리하는 원 격 USB 연결부를 구비하는, 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 브릿지.
  10. 청구항 9에 있어서,
    상기 USB 장치 관리부는,
    플러그 앤 플레이(Plug and Play) 방식으로 동작하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 브릿지.
  11. 청구항 9에 있어서,
    상기 USB 장치에 대한 정보는,
    상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 브릿지.
  12. 청구항 9에 있어서,
    상기 가상머신에 대한 정보는,
    상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보 와;
    상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 다중 호스트 상의 다중 가상머신을 지원하는 원격 USB 브릿지.
  13. 다중 가상머신을 지원하는 원격 USB 시스템에서의 원격 USB 장치 할당 방법에 관한 것으로서, 마스터 서버가,
    원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여 저장하는 단계;
    가상머신 호스트 서버로부터 사용자의 가상머신에 대한 정보를 수신하여 저장하는 단계;
    사용자 요청에 따라, 상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하고, 그에 따라 상기 사용자로부터 상기 USB 장치들 중 어느 하나의 USB 장치를 선택받는 단계;
    상기 선택된 USB 장치에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 가상머신 호스트 서버로 전송하는 단계; 및
    상기 사용자의 가상머신에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 원격 USB 브릿지로 전송하는 단계를 포함하는, 원격 USB 장치 할당 방법.
  14. 청구항 13에 있어서,
    상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하는 단계는,
    이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 제외하고 상기 사용자에게 제공하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
  15. 청구항 13에 있어서,
    상기 저장된 USB 장치들에 대한 정보를 상기 사용자에게 제공하는 단계는,
    이미 다른 사용자에 의해 사용 중인 USB 장치에 대한 정보는 이미 다른 사용자가 사용하고 있음을 표시하여 상기 사용자에게 제공하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
  16. 청구항 13에 있어서,
    상기 USB 장치에 대한 정보는,
    상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
  17. 청구항 13에 있어서,
    상기 가상머신에 대한 정보는,
    상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와;
    상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
  18. 다중 가상머신을 지원하는 원격 USB 시스템에서의 원격 USB 장치 할당 방법에 관한 것으로서, 마스터 서버가,
    사용자로부터 원하는 USB 장치의 유형(type)을 입력받아 등록하는 단계;
    가상머신 호스트 서버로부터 상기 사용자의 가상머신에 대한 정보를 수신하여 저장하는 단계;
    원격 USB 브릿지에 연결된 USB 장치들에 대한 정보를 상기 원격 USB 브릿지로부터 수신하여, 상기 사용자가 등록한 유형을 갖는 USB 장치가 존재하는지를 탐색하는 단계;
    상기 사용자가 등록한 유형을 갖는 USB 장치가 존재하면, 해당 USB 장치에 대한 정보를 원격 USB 연결 지시와 함께 상기 가상머신 호스트 서버로 전송하는 단계; 및
    상기 사용자의 가상머신에 대한 정보를 추출하여 원격 USB 연결 지시와 함께 상기 원격 USB 브릿지로 전송하는 단계를 포함하는, 원격 USB 장치 할당 방법.
  19. 청구항 18에 있어서,
    상기 USB 장치에 대한 정보는,
    상기 원격 USB 브릿지의 IP 주소, USB 포트 정보, 및 상기 USB 장치의 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
  20. 청구항 18에 있어서,
    상기 가상머신에 대한 정보는,
    상기 가상머신 호스트 서버의, IP 주소, 운영체제, 및 하드웨어 관련 정보와;
    상기 가상머신의, IP 주소, 운영체제, 및 하드웨어 관련 정보를 포함하는 것을 특징으로 하는, 원격 USB 장치 할당 방법.
KR20090106429A 2009-11-05 2009-11-05 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법 KR20110049418A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20090106429A KR20110049418A (ko) 2009-11-05 2009-11-05 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법
US12/881,396 US8499056B2 (en) 2009-11-05 2010-09-14 Remote USB system for supporting multiple virtual machines of multiple host and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20090106429A KR20110049418A (ko) 2009-11-05 2009-11-05 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20110049418A true KR20110049418A (ko) 2011-05-12

Family

ID=43926586

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20090106429A KR20110049418A (ko) 2009-11-05 2009-11-05 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법

Country Status (2)

Country Link
US (1) US8499056B2 (ko)
KR (1) KR20110049418A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101401378B1 (ko) * 2010-10-26 2014-05-30 한국전자통신연구원 가상 머신의 라이브 마이그레이션에서 가상 연결성 유지를 위한 호스트 시스템, 원격 장치 서버 및 이를 이용한 연결성 유지 방법
KR102084031B1 (ko) * 2019-08-07 2020-05-29 주식회사 도시엔컴 복수 서버의 로컬 저장소를 통합 관리하는 방법 및 그 장치

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101705596B1 (ko) * 2010-09-14 2017-02-22 삼성전자 주식회사 Usb디바이스가 연결되는 서버 디바이스 및 디바이스 공유방법
US8645764B2 (en) * 2010-12-17 2014-02-04 Oracle International Corporation Diagnostic framework for use with application servers and virtual machines
US8924789B2 (en) 2011-04-25 2014-12-30 Oracle International Corporation System and method for providing virtual machine diagnostic information using a flight recorder functionality
KR20130039213A (ko) * 2011-10-11 2013-04-19 한국전자통신연구원 장치 클라우드를 이용한 가상 머신 제공 시스템 및 그 방법
KR101333632B1 (ko) * 2012-01-20 2013-11-27 에스케이이엔에스 주식회사 온압 보정기 검사 장치, 시스템 및 방법
CN103312781A (zh) * 2013-05-15 2013-09-18 山东超越数控电子有限公司 一种虚拟usb总线的实现方法
CN104252375B (zh) 2013-06-25 2017-07-28 国际商业机器公司 用于位于不同主机的多个虚拟机共享USB Key的方法和系统
CN105740180B (zh) * 2014-12-10 2019-08-02 中国移动通信集团重庆有限公司 Usb设备的虚拟机接入方法和装置
CN107341039A (zh) * 2016-04-28 2017-11-10 中兴通讯股份有限公司 一种虚拟环境下对usb设备进行管理的方法、主机和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050209842A1 (en) 2004-03-16 2005-09-22 Digi International Inc. Remote USB port system and method
US7458075B2 (en) * 2004-03-31 2008-11-25 Intel Corporation Virtual USB port system and method
US7912987B2 (en) 2005-01-14 2011-03-22 Microsoft Corporation USB devices in application server environments
US20070011374A1 (en) * 2005-07-08 2007-01-11 Kumar Sasi K Method and system for universal serial bus (USB) re-direct (USB-R) over a network
US8028040B1 (en) * 2005-12-20 2011-09-27 Teradici Corporation Method and apparatus for communications between a virtualized host and remote devices
US20090006702A1 (en) 2007-06-26 2009-01-01 Nitin Sarangdhar Sharing universal serial bus isochronous bandwidth between multiple virtual machines
TWI421690B (zh) * 2007-11-21 2014-01-01 Ind Tech Res Inst 智慧型遠端介面裝置、系統及其使用方法
US8010630B2 (en) * 2007-12-06 2011-08-30 Wyse Technology Inc. Local device redirection
US8150971B2 (en) * 2009-05-31 2012-04-03 Red Hat Israel, Ltd. Mechanism for migration of client-side virtual machine system resources

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101401378B1 (ko) * 2010-10-26 2014-05-30 한국전자통신연구원 가상 머신의 라이브 마이그레이션에서 가상 연결성 유지를 위한 호스트 시스템, 원격 장치 서버 및 이를 이용한 연결성 유지 방법
KR102084031B1 (ko) * 2019-08-07 2020-05-29 주식회사 도시엔컴 복수 서버의 로컬 저장소를 통합 관리하는 방법 및 그 장치

Also Published As

Publication number Publication date
US20110107003A1 (en) 2011-05-05
US8499056B2 (en) 2013-07-30

Similar Documents

Publication Publication Date Title
KR20110049418A (ko) 다중 호스트 상의 다중 가상머신을 지원하는 원격 usb 시스템 및 그 방법
US11190375B2 (en) Data packet processing method, host, and system
EP2892181B1 (en) Method, device and physical host for managing physical network card
US8412809B2 (en) Method, apparatus and computer program product implementing multi-tenancy for network monitoring tools using virtualization technology
US8898665B2 (en) System, method and computer program product for inviting other virtual machine to access a memory space allocated to a virtual machine
JP5784482B2 (ja) 情報処理装置および通信制御方法
CN101206632B (zh) 用套接字连接和共享存储器在主机系统间通信的系统和方法
US9063793B2 (en) Virtual server and virtual machine management method for supporting zero client by providing host interfaces from classified resource pools through emulation or direct connection modes
WO2017066944A1 (zh) 一种存储设备访问方法、装置和系统
WO2016047814A1 (ko) 클라우드 api 키를 이용한 자원 할당 방법 및 이를 위한 장치
US7539987B1 (en) Exporting unique operating system features to other partitions in a partitioned environment
CN103262034B (zh) 将数据分区至虚拟机
EP2667296A1 (en) Method and apparatus of data processing
US20100064301A1 (en) Information processing device having load sharing function
JP5457916B2 (ja) メモリ共有装置
US20210397492A1 (en) Establishment of queue between threads in user space
CN107172039A (zh) 协议键值的获取方法、装置和系统
JP2011076437A (ja) デバイス共有システム、デバイス共有サーバ、デバイス共有クライアント、およびデバイス共有方法
WO2011039887A1 (ja) 計算機装置
KR20090061381A (ko) 복수의 무선 usb 호스트 장치와의 네트워킹을 위한 무선usb 디바이스 장치 및 그 네트워킹 방법
US7496717B2 (en) System for sharing storage device among controllers and method thereof
CN104615934B (zh) Sql注入攻击安全防护方法和系统
CN114172916A (zh) 一种Spark集群中的数据传输方法、系统及相关装置
KR102672331B1 (ko) 모드버스 프로토콜 변환과 연동 방법, 및 이를 수행하는 장치들
US20170180308A1 (en) Allocation of port addresses in a large-scale processing environment

Legal Events

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