KR20130124888A - Server device, client device, data sharing system and method for sharing data between client device and server device thereof - Google Patents
Server device, client device, data sharing system and method for sharing data between client device and server device thereof Download PDFInfo
- Publication number
- KR20130124888A KR20130124888A KR1020130037702A KR20130037702A KR20130124888A KR 20130124888 A KR20130124888 A KR 20130124888A KR 1020130037702 A KR1020130037702 A KR 1020130037702A KR 20130037702 A KR20130037702 A KR 20130037702A KR 20130124888 A KR20130124888 A KR 20130124888A
- Authority
- KR
- South Korea
- Prior art keywords
- client device
- usb
- client
- server
- control message
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
본 발명은 멀티미디어 분야에 관한 것으로, 더욱 상세하게는 클라우드를 이용하여 하나의 멀티미디어 장치에서 다른 멀티미디어 장치로 멀티미디어 콘텐츠를 공유하는 분야에 관한 것이다. The present invention relates to the field of multimedia, and more particularly to the field of sharing multimedia content from one multimedia device to another using a cloud.
서버/클라이언트 시스템은 예를 들어, 사업용, 데이터베이스 접속, 메일 서비스 등 다양한 용도로 광범하게 이용된다. 서버/클라이언트 시스템은 서버와 다수의 클라이언트를 포함한다. 서버는 클라이언트의 여러 가지 요구사항에 대하여 서비스를 제공한다. 클라이언트는 네트워크를 통해 서버에 원격으로 연결된다. 서버에 있는 데이터를 클라이언트와 공유하는 것을 보장하는 것은 중요한 이슈이다. Server / client systems are widely used, for example, for a variety of purposes, such as business, database access, and mail services. The server / client system includes a server and a number of clients. The server provides services to the various requirements of the client. The client connects remotely to the server over the network. Ensuring sharing data on the server with clients is an important issue.
종래의 기술은 장치를 안전하게 공유할 수 있는 클라이언트/서버 아키텍처 시스템을 제공한다. 이 방법은 장치를 서버에 연결하고 서버가 클라이언트로부터 접속되는 것을 포함한다. 서버에 연결된 장치는 클라이언트가 장치를 서버에 연결함으로써 접속될 수 있다. 그러나, 이 기술은 장치가 서버에 물리적으로 연결되어 있는 것을 필요로 한다. 또한, 장치를 연결하기 위해 하나 이상의 USB 포트가 필요하다. 그러므로, 장치는 USB 포트를 포함하지 않는 전자 장치에 연결될 수 없다.The prior art provides a client / server architecture system that can safely share devices. This method involves connecting the device to a server and connecting the server from a client. Devices connected to the server can be connected by the client connecting the device to the server. However, this technique requires the device to be physically connected to the server. In addition, more than one USB port is required to connect the device. Therefore, the device cannot be connected to an electronic device that does not include a USB port.
다른 종래의 기술은 서버의 표준 주변 버스 드라이버를 인터넷 프로토콜(IP) 네트워크에 확장함으로써 복수의 클라이언트가 서버를 공유할 수 있도록 하는데 목적이 있다. 가상의 주변 버스 드라이버는 클라이언트들로 하여금 서버에 접속할 수 있도록 하는 표준 주변 버스 드라이버의 가상 확장을 제공한다. 그러나, 현존하는 기술은 USB 장치로 하여금 서버에 물리적으로 연결되어 있는 것을 필요로 한다. 또한, 현재의 기술은 보안 장치를 클라이언트에게 제공하지 않으므로, 모든 클라이언트가 서버 장치에 연결하거나 혹은 접속할 수 있다. Another conventional technique aims to extend a server's standard peripheral bus driver to an Internet Protocol (IP) network so that multiple clients can share the server. The virtual peripheral bus driver provides a virtual extension of the standard peripheral bus driver that allows clients to connect to the server. However, existing technology requires the USB device to be physically connected to the server. In addition, current technology does not provide a secure device to the client, so that all clients can connect to or connect to the server device.
또한, 클라우드 컴퓨팅의 계속적인 발전에 따라, 여러 가지 다른 장치들이 그들의 컴퓨터 자원을 공유하기 위해 네트워크를 통해서 서로 연결되어야 했다. 더욱이, 이용자는 다양한 업무를 실행하는 것을 원할지도 모른다(예를 들어 개인적인 컨텐츠를 저장하거나 접속하는 것, 미디어 컨텐츠를 재생하거나, 원격 장치를 통해 워드 프로세시 작업을 하는 것). 왜냐하면 이용자의 전자 장치는 업무를 실행하는데 필요한 하드웨어나 소프트웨어의 요건들을 포함하지 않을 수 있기 때문이다. 본 발명의 일 실시 예에서, 전자 장치는 USB 포트를 포함하지 않을 수 있다. 따라서, USB 장치에 포함된 미디어 컨텐츠는 전자 장치에 의해서 재생될 수 없다. In addition, as cloud computing continues to develop, several different devices have to be connected to each other over a network in order to share their computer resources. Moreover, the user may want to perform a variety of tasks (e.g. to store or access personal content, to play media content, or to work on word processing through a remote device). This is because the user's electronic device may not include the hardware or software requirements necessary to perform the task. In an embodiment of the present disclosure, the electronic device may not include a USB port. Therefore, the media content included in the USB device cannot be played by the electronic device.
앞서 말한 논의에 비추어, 외부 장치에 서버를 물리적으로 연결하지 않고 클라이언트를 서버에 연결하는 효율적인 시스템과 방법 개발의 필요성이 대두되었다. In light of the foregoing discussion, there is a need to develop an efficient system and method for connecting a client to a server without physically connecting the server to an external device.
본 발명은 상술한 필요성에 따른 것으로 본 발명의 목적은 물리적인 USB 장치의 연결 없이 서버 장치와 클라이언트 장치 사이에 데이터를 공유할 수 있도록 하는 서버 장치, 클라이언트 장치, 데이터 공유 시스템 및 이의 데이터 공유 방법을 제공함에 있다. SUMMARY OF THE INVENTION The present invention is directed to the above-described needs, and an object of the present invention is to provide a server device, a client device, a data sharing system, and a data sharing method thereof, which enable data sharing between a server device and a client device without a physical USB device being connected. In providing.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 서버 장치와 클라이언트 장치 간의 데이터를 공유하는 방법은 상기 클라이언트 장치와 상기 서버 장치를 연결하는 데 이용되는 요청을 수신하는 단계, 상기 클라이언트 장치를 상기 서버 장치에 연결하기 위해 상기 클라이언트 장치의 신뢰성(authenticity)을 판단하는 단계를 포함한다. 상기 방법은 가상 USB(Universal serial bus) 장치를 에뮬레이트하는 단계를 더 포함한다. 상기의 가상 USB 장치는 대용량 저장 장치를 포함한다. 또한, 상기 방법은 복수의 USB 제어 메시지를 상기 클라이언트 장치로 전송하는 단계를 포함한다. 상기 USB 제어 메시지는 가상 USB 장치의 대용량 저장 장치에 접속하는 데에 이용된다. 또한, 상기 방법은 상기 클라이언트 장치에 의해 USB 제어 메시지를 처리하는 단계를 포함한다. 또한, 상기 방법은 상기 클라이언트 장치로 하여금 가상 USB 장치의 대용량 저장 장치에 접속할 수 있도록 하는 단계를 포함한다.
According to an aspect of the present invention, there is provided a method for sharing data between a server device and a client device, the method comprising: receiving a request used to connect the client device and the server device; Determining the authenticity of the client device to connect to the server device. The method further includes emulating a virtual universal bus (USB) device. The virtual USB device includes a mass storage device. The method also includes sending a plurality of USB control messages to the client device. The USB control message is used to connect to the mass storage device of the virtual USB device. The method also includes processing a USB control message by the client device. The method also includes allowing the client device to access a mass storage device of a virtual USB device.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 서버 장치와 클라이언트 장치 간의 데이터를 공유하는 시스템은, 데이터를 전송하기 위한 서버 장치를 포함한다. 또한, 상기 시스템은 상기 서버 장치와 상기 클라이언트 장치 간의 통신을 위한 통신 인터페이스를 포함한다. 상기 시스템은 명령을 저장하는 메모리를 더 포함한다. 또한, 상기 시스템은 상기 클라이언트 장치로부터 요청을 수신하기 위한 명령에 응답하고, 상기 서버 장치에 접속하기 위하여 상기 클라이언트 장치의 신뢰성을 판단하며, 가상의 시리얼 버스 장치를 에뮬레이트하고, 복수의 USB 제어 메시지를 상기 클라이언트 장치로 전송하는 프로세스를 포함한다. 상기 제어부는 복수의 USB 제어 메시지를 처리하고 가상 USB 장치의 대용량 저장 장치에 접속하기 위해 명령에 응답한다.A system for sharing data between a server device and a client device according to an embodiment of the present invention for achieving the above object includes a server device for transmitting data. The system also includes a communication interface for communication between the server device and the client device. The system further includes a memory for storing instructions. The system also responds to a command for receiving a request from the client device, determines the reliability of the client device to access the server device, emulates a virtual serial bus device, and generates a plurality of USB control messages. Sending to the client device. The controller responds to the command to process the plurality of USB control messages and to access the mass storage device of the virtual USB device.
첨부한 도면의 유사한 도면 부호는 동일한 혹은 기능상 유사한 구성요소들을 지칭할 것이다. 이러한 도면 부호들은 발명의 상세한 설명에서 다양한 발명의 실시 예와 본 발명의 다양한 특성과 장점을 설명하기 위해 이용된다.
도 1은 본 발명의 일 실시 예에 따른, 시스템 환경에 대한 블럭도,
도 2는 본 발명의 일 실시 예에 따른, 서버 장치와 클라이언트 장치 사이의 데이터 공유를 가능하게 하는 서버 장치에 대한 블럭도,
도 3은 본 발명의 일 실시 예에 따른, 서버 장치와 클라이언트 장치 사이의 데이터 공유를 가능하게 하는 방법을 설명하는 흐름도,
도 4는 본 발명의 일 실시예에 따른, 서버 장치와 데이터를 공유하는 클라이언트 장치의 구성을 나타내는 블럭도,
도 5는 본 발명의 일 실시예에 따른, 클라이언트 장치가 서버 장치와 데이터를 공유하는 방법을 설명하는 흐름도이다.Like reference numerals in the accompanying drawings will refer to the same or functionally similar components. These reference numerals are used to describe various embodiments of the present invention and various features and advantages of the present invention.
1 is a block diagram of a system environment according to an embodiment of the present invention;
2 is a block diagram of a server device for enabling data sharing between a server device and a client device according to an embodiment of the present invention;
3 is a flowchart illustrating a method for enabling data sharing between a server device and a client device according to an embodiment of the present invention;
4 is a block diagram showing a configuration of a client device sharing data with a server device according to an embodiment of the present invention;
5 is a flowchart illustrating a method of sharing data with a server device by a client device according to an embodiment of the present invention.
이하에서는 도면을 참조하여 본 발명에 대해 더욱 상세히 설명하도록 한다. 참고로, 본원 발명에서, “첫 번째, 두 번째, 동종의”와 같은 용어들은 하나의 구성 요소를 다른 구성 요소들과 구분 짓게 하기 위해 이용될 수 있으며, 구성 요소들 간의 실제적인 관계나 순서를 반드시 나타내야 하는 것은 아니다. Hereinafter, the present invention will be described in more detail with reference to the drawings. For reference, in the present invention, terms such as “first, second, homogeneous” may be used to distinguish one component from other components, and the actual relationship or order between the components may be used. It is not necessary to indicate.
본원 발명의 실시 예들은 서버 장치와 클라이언트 장치 간의 데이터 공유 시스템과 그 방법에 대한 예시를 제공한다. Embodiments of the present invention provide an example of a data sharing system and a method between a server device and a client device.
도 1은 본 발명의 다양한 실시 예가 실행될 수 있는 시스템 환경(100)을 나타내는 블럭도이다. 시스템 환경(100)은 서버 장치(105), 클라이언트 장치(115), 네트워크(110)를 포함한다. 서버 장치(105)와 클라이언트 장치(115)는 네트워크(110)를 통해 서로 연결된다. 클라이언트 장치(115)는 멀티미디어 장치를 구성될 수 있다. 예를 들어, 멀티미디어 장치는 디지털 텔레비전, 모바일 장치, PDA, 스마트폰 및 소형 장치 중 하나로 구현될 수 있으나, 이에 제한되지는 아니한다. 네트워크(110)의 예는 로컬 영역 네트워크, 광역 네트워크, 무선 네트워크를 포함하나 이에 한정되는 것은 아니다.1 is a block diagram illustrating a
발명의 일 실시 예에서, 서버 장치(105)는 예를 들어 스마트폰과 같은 멀티미디어 장치를 포함할 수 있다. 스마트폰은 다양한 멀티미디어 컨텐츠를 저장할 수 있다. 예를 들어, 다양한 멀티미디어 컨텐츠로는 영화, 비디오 파일, 오디오 파일 등을 예로 들 수 있으나, 이에 국한되지는 아니한다. 또한, 클라이언트 장치(115)는 디지털 텔레비전과 같은 멀티미디어 장치를 포함할 수 있다. In one embodiment of the invention,
스마트폰에 저장된 멀티미디어 컨텐츠는 가상의 범용직렬버스(USB)인 스마트폰을 디지털 텔레비전에 연결함으로써 디지털 텔레비전에서 재생된다. Multimedia content stored in a smartphone is played on a digital television by connecting a smartphone, a virtual universal serial bus (USB), to the digital television.
스마트폰은 가상 USB 장치를 에뮬레이트하는 구성을 가진다. 에뮬레이트된 가상 USB 장치는 스마트폰과 관련된 저장 장치에 저장된 컨텐츠를 포함한다. 에뮬레이션은 스마트폰에 의한 대용량 저장 장치를 또한 포함한다. 대용량 저장 장치는 멀티미디어 컨텐츠를 저장하는 데에 이용된다. 또한, 스마트폰은 디지털 텔레비전으로 하여금 대용량 저장 장치에 접속을 가능하게 하는 다양한 USB 제어 메시지를 전송한다. USB 제어 메시지는 다양한 범용 직렬 버스 요청 블록(Universal serial bus request block, 이하에서는 "URB"이라고 함) 유닛의 형태로 디지털 텔레비전으로 전송된다. URB 유닛은 블루투스와 같은 무선 네트워크를 통해 전송된다. URB 유닛은 USB 장치의 에뮬레이션을 가능하게 하며 에뮬레이트된 USB 장치는 디지털 텔레비전과 공유될 수 있다.The smartphone has a configuration that emulates a virtual USB device. The emulated virtual USB device includes content stored in a storage device associated with the smartphone. Emulation also includes mass storage by smartphones. Mass storage devices are used to store multimedia content. In addition, smart phones transmit various USB control messages that enable digital televisions to access mass storage devices. USB control messages are sent to digital television in the form of various Universal serial bus request block (hereinafter referred to as "URB") units. The URB unit is transmitted via a wireless network such as Bluetooth. The URB unit enables emulation of a USB device and the emulated USB device can be shared with a digital television.
또한, 디지털 텔레비전은 URB 유닛을 수신한다. URB 유닛은 디지털 텔레비전에 의해 처리된다. 디지털 장치에 저장된 하나 이상의 드라이버들은 URB 유닛의 처리에 이용된다. URB 유닛의 처리는 디지털 텔레비전으로 하여금 대용량 저장 장치에 접속하는 것을 가능하게 한다. 또한, 대용량 저장 장치에 접속하면, 디지털 텔레비전에 저장된 멀티미디어 플레이어는 대용량 저장 장치에 저장된 멀티미디어 컨텐츠를 재생하도록 설정된다. The digital television also receives an URB unit. The URB unit is processed by the digital television. One or more drivers stored in the digital device are used for the processing of the URB unit. Processing of the URB unit enables digital television to connect to mass storage. In addition, when connected to the mass storage device, the multimedia player stored in the digital television is set to play the multimedia content stored in the mass storage device.
즉, 첫 번째 멀티미디어 장치는 첫 번째 멀티미디어 장치에 의해 가상 USB를 에뮬레이트함으로써 두 번째 멀티미디어 장치와 멀티미디어 컨텐츠를 공유할 수 있다. 에뮬레이트된 가상 USB 장치는 첫 번째 멀티미디어 장치의 저장 장치에 나타난 데이터와 멀티미디어 컨텐츠를 포함한다. 또한, 에뮬레이트된 USB 장치는, 두 번째 멀티미디어 장치가 가상 USB 장치인 에뮬레이트된 USB 장치에 연결되며, 두 번째 멀티미디어 장치가 가상 USB 장치에 포함된 데이터와 멀티미디어 컨텐츠에 접속할 수 있도록, 두 번째 멀티미디어 장치로 전송된다.That is, the first multimedia device can share the multimedia content with the second multimedia device by emulating a virtual USB by the first multimedia device. The emulated virtual USB device includes data and multimedia content that appear in the storage device of the first multimedia device. In addition, the emulated USB device is connected to the emulated USB device, which is a second USB device, which is a virtual USB device. Is sent.
가상 USB 장치를 에뮬레이트하도록 설정된 복수의 구성요소를 포함하는 서버 장치(105)는 도 2에서 자세히 설명되어 있다. The
서버 장치(105)는 정보를 통신하기 위한 버스(205) 혹은 다른 통신 메커니즘 및 정보를 처리하기 위해 버스(205)와 연결된 제어부(210)를 포함한다. 또한, 서버 장치(105)는 RAM 또는 다른 동적 저장 장치와 같은 메모리(215)를 포함하며, 이 메모리는 정보와 명령이 제어부(210)에 의해 실행될 수 있도록 버스(205)에 연결되어 있다. 메모리(215)는 제어부(210)에 의해 명령이 실행되는 동안 가변 정보나 중간 정보를 저장하는 데에 이용된다. 또한, 서버 장치(105)는 ROM(220) 혹은 제어부(210)가 정적인 정보와 명령을 저장할 수 있도록 하는 버스(205)와 연결된 정적인 저장 장치를 더 포함한다. 마그네틱 디스크, 광학 디스크 등과 같은 저장 장치(225)는 정보를 저장하기 위해 버스(205)와 연결되어 제공된다.The
서버 장치(105)는 멀티미디어 컨텐츠를 재생하기 위하여 버스(205)를 통해 음극선관(CRT), 액정표시장치(LCD) 등과 같은 디스플레이(230)에 연결된다. 영 숫자 키나 다른 키를 포함하는 입력 장치(235)는 프로세스(210)에 정보 전달과 명령 선택을 위해 버스(205)에 연결된다. 다른 유형의 입력 장치에는 마우스, 트랙볼, 커서 방향키와 같은 커서 컨트롤(240)이 있는데, 이는 방향 정보와 제어부(210)를 위한 명령 선택을 전달하고 디스플레이(230) 상의 커서의 움직임을 제어하는 목적으로 이용된다.The
본 발명에서 설명된 기술을 구현하기 위해 서버 장치(105)의 이용과 관련된 다양한 실시 예가 설명되어 있다. 몇몇의 실시 예에서는, 기술들이 메모리(215)에 포함된 명령을 실행하는 제어부(210)에 응답하여 서버 장치(105)에 의해 실행된다. 이러한 명령들은 저장 유닛(225)과 같은 또 다른 기계 판독형 수단(machine-readable medium)으로부터 메모리(215)에 읽혀질 수 있다. 메모리(215)에 포함된 명령의 실행은 제어부(210)로 하여금 본 발명에서 설명된 단계들을 실행하도록 한다. Various embodiments related to the use of
몇몇의 실시 예에서, 제어부(210)는 제어부(210)의 하나 이상의 기능을 실행하기 위한 하나 이상의 프로세싱 유닛을 포함할 수 있다. 프로세싱 유닛은 특정 기능들을 실행하기 위하여 소프트웨어 명령 대신에 혹은 소프트웨어 명령과 함께 이용되는 하드웨어 회로이다. In some embodiments, the
여기에서 이용된 “기계판독형 수단”이라는 용어는 기계로 하여금 특정 기능을 실행하도록 하는 데이터를 제공하는데 관여하는 모든 수단을 의미한다. 서버 장치(105)를 이용하여 실시된 본 발명의 일 실시 예에는, 예를 들어, 제어부(210)를 실행하도록 지시를 내리는, 다양한 기계판독형 미디어가 연관되어 있다. 기계판독형 미디어는 비휘발성 혹은 휘발성의 저장 미디어일 수 있다. 휘발성 미디어는 메모리(215)와 같은 동적 메모리를 포함한다. 비휘발성 미디어는 저장 유닛(225)과 같은 광학 혹은 자기 디스크를 포함한다. 이러한 모든 미디어는 명령을 기계로 읽어 들일 수 있는 물리적인 메커니즘에 의해서 탐지되는 미디어에 의해 명령이 실행될 수 있도록 유형(有形)의 것이어야 한다. As used herein, the term "machine-readable means" means any means involved in providing data that causes a machine to perform a particular function. In one embodiment of the invention implemented using the
기계판독형 미디어의 일반적인 유형에는 예를 들어, 플로피 디스크, 플렉시블 디스크, 하드 디스크, 자기 테이프, 혹은 기타의 자기 미디어, CD-ROM, 광학 미디어, 천공 카드, 천공 테이프, 구멍이 있는 물리적인 미디어, RAM, PROM, EPROM, FLASH-EPROM, 메모리 칩, 카트리지가 있다.Common types of machine-readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tape, or other magnetic media, CD-ROMs, optical media, punch cards, punch tapes, physical media with holes, RAM, PROM, EPROM, FLASH-EPROM, memory chip and cartridge.
본 발명의 일 실시 예에서, 기계판독형 미디어는 전송 미디어일 수 있으며, 버스(205)를 포함하는 전선을 비롯하여 동축 케이블, 구리선, 광섬유를 포함한다. 전송 미디어는 전파와 적외선 통신으로부터 발생한 음파나 광파의 형태를 취할 수 있다. 기계판독형 미디어의 예시는 이하에 기술된 반송파 또는 서버 장치(105)가 읽을 수 있는 모든 형태의 미디어 형식이 있으며 이에 국한되지는 아니한다. 예를 들어, 명령은 원격 컴퓨터의 자기 디스크 상으로 이동된다. 원격 컴퓨터는 명령을 동적 메모리로 업로드할 수 있으며 명령을 모뎀을 이용하여 전화상으로 전송할 수 있다. 서버 장치(105)에 연결된 모뎀은 전화 라인 상으로 데이터를 수신할 수 있으며 적외선 송신기를 이용하여 데이터를 적외선 신호로 변환할 수 있다. 적외선 탐지기는 적외선 신호에 도달한 데이터를 수신할 수 있으며 적절한 회로가 데이터를 버스(205)에 위치시킬 수 있다. 버스(205)는 데이터를 메모리(215)로 이동시키며, 메모리(215)로부터 제어부(210)는 명령을 불러오고 실행한다. 메모리(215)에 의해 수신된 명령은 선택적으로 저장 유닛(225)에 저장되거나 제어부(210)의 실행 전 혹은 후에 저장될 수 있다. 이러한 모든 미디어는 명령들을 기계로 읽어 들이는 물리적인 메커니즘에 의해 감지되는 미디어에 의해 이동된 명령들을 실행할 수 있을 수 있도록 유형(有形)의 것이어야 한다.In one embodiment of the invention, the machine-readable media may be transmission media and include coaxial cables, copper wires, optical fibers, including
또한, 서버 장치(105)는 버스(205)에 연결된 통신 인터페이스(245)를 포함한다. 통신 인터페이스(245)는 클라이언트 장치(115)와 서버 장치(105) 간에 연결된 양방향 데이터 통신을 제공한다. 예를 들어, 통신 인터페이스(245)는 전화 라인에 상응하는 유형에 데이터 통신 연결을 제공할 수 있도록 ISDN 카드 혹은 모뎀의 형태일 수 있다. 또 다른 예시로, 통신 인터페이스(245)는 양립 가능한 LAN에 데이터 통신 연결을 제공할 수 있도록 LAN 카드의 형태일 수 있다. 이러한 실행의 경우, 통신 인터페이스(245)는 다양한 유형의 정보를 나타내는 디지털 데이터 스트림을 이동할 수 있는 전기적, 전자기적, 광학적 신호를 송신하고 수신한다.The
서버 장치(105)의 제어부(210)는 클라이언트 장치(115)로부터 요청을 수신할 수 있도록 동작한다. 요청은 클라이언트 장치(115)와 서버 장치(105)를 연결하는데 이용된다. 요청은 하나 이상의 무선 네트워크를 이용하여 클라이언트 장치(115)에 의해 전송될 수 있다. 제어부(210)는 서버 장치(105)에 접속할 수 있도록 클라이언트 장치(115)의 신뢰성(authenticity)을 판단하는 데에 동작될 수 있다. 제어부(210)에 포함된 인증 모듈은 신뢰성을 판단하는데 이용된다. 클라이언트 장치(115)의 신뢰성은 승인되지 않은 이용자들이 서버 장치(105)에 접속하지 못하도록 하기 위해 판단된다. 또한, 제어부(210)는 에뮬레이트된 USB 장치를 생성하기 위해 USB 장치를 에뮬레이트할 수 있도록 작동된다. 에뮬레이트된 USB 장치는 멀티미디어 컨텐츠 등과 같은 데이터를 저장하기 위한 대용량 저장 장치를 포함한다. 제어부(210)에 포함된 USB 대용량 저장 에뮬레이터는 에뮬레이트된 USB 장치를 에뮬레이팅하는데 이용된다. 또한, 제어부(210)에 포함된 가상 소형 컴퓨터 시스템 인터페이스(Small computer system interface: SCSI) 제어 모듈은 서버 장치(105)에 존재하는 파일 시스템상에 에뮬레이트된 USB 장치의 에뮬레이션에 이용될 수 있다. 또한, 제어부(210)는 복수의 USB 제어 메시지를 클라이언트 장치(115)에 전송하는데 작동될 수 있다. USB 제어 메시지는 대용량 저장 장치에 접속하기 위해 이용된다. 몇몇의 실시 예에서, 제어부(210)는 USB 제어 메시지를 클라이언트 장치(115)에 전송하기 전에 USB 제어 메시지를 암호화한다. 제어부(210)에 포함된 암호 모듈은 USB 제어 메시지를 암호화하는데 이용된다. 제어부(210)는 전송 중에 데이터를 확보하기 위하여 USB 제어 메시지를 암호화한다.The
일 실시 예에서, 제어부(210)는 본 발명의 클라이언트 장치(115)와 같은 클라이언트 장치에 포함된다. 클라이언트 장치에 포함된 제어부(210)는 복수의 USB 제어 메시지를 수신하도록 설정된다. 또한, 제어부(210)는 복수의 USB 제어 메시지를 실행하기 위해 작동된다. 제어부(210)는 대용량 저장 장치에 접속하기 위하여 복수의 USB 제어 메시지를 처리한다. 제어부(210)는 USB 제어 메시지를 처리하기 위해 USB 대용량 저장 드라이버, 가상 호스트 제어장치 드라이버(Virtual host controller driver: VHCD) 등과 같은 복수의 드라이버를 이용한다. 처리시, 제어부(210)는 에뮬레이트된 USB 장치를 가상 USB 장치로서 클라이언트 장치(115)에 연결한다. 몇몇의 실시 예에서, 클라이언트 장치(115)에 포함된 제어부(210)는 대용량 저장 장치에 저장된 멀티미디어 컨텐츠를 재생하도록 설정된다. 제어부(210)는 멀티미디어 컨텐츠를 재생하기 위해 클라이언트 장치(115)에 탑재된 멀티미디어 플레이어를 이용한다.In one embodiment, the
그러므로, 서버 장치(105)는 클라이언트 장치(115)가 가상 USB 장치로 에뮬레이트된 USB 장치를 가상 USB 장치에 포함된 데이터에 접속할 수 있도록 에뮬레이트된 USB 장치를 연결하는 식으로, 에뮬레이트된 USB 장치를 클라이언트 장치(115)로 내보낸다. 또한, 서버 장치(105)는 가상 USB 장치를 클라이언트 장치(115)에 물리적으로 연결하지 않고 에뮬레이트된 USB 장치를 공유하는 것을 가능하게 한다. 그러므로, 서버 장치(105)와 클라이언트 장치(115) 사이에는 물리적으로 연결된 USB 장치가 존재하지 않는다.Therefore, the
서버 장치(105)와 클라이언트 장치(115) 사이의 데이터 공유를 가능하게 하는 방법은 도 3을 참고하여 설명하기로 한다.A method of enabling data sharing between the
도 3은 일 실시 예에 따라 서버 장치(105)와 클라이언트 장치(115) 간 데이터 공유 방법을 설명하기 위한 흐름도이다. 방법은 305 단계에서 시작한다. 3 is a flowchart illustrating a data sharing method between the
우선, 310 단계에서, 요청은 클라이언트 장치(115)로부터 수신된다. 요청은 클라이언트 장치(115)와 서버 장치(105) 사이의 연결을 해야 할 필요성을 포함하고 있다. 클라이언트 장치(115)는 무선 네트워크를 통해 요청을 전송한다. 무선 네트워크는 블루투스일 수 있으나, 이에 국한되지 않는다. 요청은 TCP/IP 연결 프로토콜 등과 같은 하나 이상의 통신 프로토콜을 이용해 서버 장치(105)에 전송된다. First, in
315 단계에서, 서버 장치(105)에 접속할 수 있는 클라이언트 장치(115)에 대한 신뢰성이 판단된다. 일 실시예에서, 서버 장치(105)는 서버 장치(105)에 접속할 수 있도록 승인된 클라이언트 장치들을 포함하는 클라이언트 장치 목록을 저장할 수 있다. 클라이언트 장치(115)들의 목록은 서버 장치(105)와 관련된 데이터베이스에 저장될 수 있다. In
서버 장치(105)가 클라이언트 장치(115)로부터 요청을 수신하면, 서버 장치(105)는 요청을 전송한 클라이언트 장치(115)가, 클라이언트 장치(115)에 접속 인증이 된 클라이언트 장치 목록에 포함되어 있는가를 확인하기 위해 클라이언트 장치 목록을 분석한다. 만약 요청을 전송한 클라이언트 장치(115)가 클라이언트 장치 목록에 포함되어 있다면, 클라이언트 장치(115)는 서버 장치(105)에 접속할 수 있다. When the
320 단계에서, 가상 USB 장치는 에뮬레이트된 USB 장치를 생성하기 위해 에뮬레이트된다. 에뮬레이트된 USB 장치는 가상 USB 장치로서 클라이언트 장치(115)에 연결된다. 그러므로, 가상 USB 장치는 물리적으로 USB 장치를 클라이언트 장치(115)에 연결하지 않고 클라이언트 장치(115)와 공유될 수 있다. 또한, 가상 USB 장치는 데이터의 저장을 위하여 대용량 저장 장치를 포함한다. 일 실시 예에서, 데이터는 비디오 컨텐츠와 오디오 컨텐츠와 같은 멀티미디어 컨텐츠를 포함할 수 있다. 또 다른 예시에서, 데이터는 이미지를 포함할 수 있다. In
몇몇의 실시 예에서, 가상 USB 장치의 초기 설정은 다양한 USB 제어 메시지를 클라이언트 장치(115)로부터 수신함으로써 실행될 수 있다. USB 제어 메시지는 클라이언트 장치(115)로 하여금 가상 USB 장치의 대용량 저장 장치에 접속하게 할 수 있는 하나 이상의 소프트웨어 조건을 포함한다. USB 제어 메시지들은 클라이언트 장치(115)에 의해서 URB 유닛의 형태로 전송된다. In some embodiments, initial setup of the virtual USB device may be performed by receiving various USB control messages from the
또한, 하나 이상의 SCSI 명령은 USB 제어 메시지로부터 추출된다. SCSI 명령은 에뮬레이트된 USB 장치의 내부에 저장된 데이터를 읽어오는데 이용된다. 일 실시 예에서, 서버 장치(105)에 포함된 가상의 파일 시스템은 에뮬레이트된 USB 장치의 내부에 저장된 데이터를 읽어오는데 이용된다. 에뮬레이트된 USB 장치에 내부 저장된 데이터를 읽는 것은 클라이언트 장치(115)로 하여금 에뮬레이트된 USB 장치를 가상 USB 장치로써 연결하도록 한다. 또한, 클라이언트 장치(115)는 가상 USB 장치에 접속할 수 있다.In addition, one or more SCSI commands are extracted from the USB control message. SCSI commands are used to read data stored inside the emulated USB device. In one embodiment, the virtual file system included in the
325 단계에서, 클라이언트 장치(115)로부터 수신된 USB 제어 메시지들은 서버 장치(105)에 의해서 클라이언트 장치(115)로 다시 전송된다(단계 325). 클라이언트 장치(115)로 다시 전송된 USB 제어 메시지들은 클라이언트 장치(115)로 하여금 가상 USB 장치에 접속하는 것을 가능하게 한다. 서버 장치(105)에 의해서 USB 제어 메시지들은 URB 유닛의 형태로 전송된다. In
일 실시 예에서, USB 제어 메시지들은 USB 제어 메시지들을 클라이언트 장치(115)로 전송하기 전에 암호화된다. USB 제어 메시지들의 암호화로 하여금 미 승인된 접속으로부터 데이터를 보호할 수 있다. In one embodiment, the USB control messages are encrypted before sending the USB control messages to the
330 단계에서, USB 제어 메시지들은 클라이언트 장치(115)에 의해서 처리된다. 일 실시 예에서, 클라이언트 장치(115)의 VHCD 드라이버는 USB 제어 메시지를 처리하는데 이용될 수 있다. 또한, 이러한 처리는 가상 USB 장치의 대용량 저장 장치에 USB 코어 드라이버를 접속하는 것을 가능하게 하도록, USB 제어 메시지를 USB 코어 드라이버로 전송하는 것을 포함한다. In
일 실시 예에서, USB 제어 메시지는 USB 제어 메시지를 처리하기 전에 복호화된다.In one embodiment, the USB control message is decrypted before processing the USB control message.
335 단계에서, 클라이언트 장치(115)는 가상 USB 장치의 대용량 저장 장치에 접속할 수 있는 권한을 획득할 수 있다. 일 실시 예에서, 클라이언트 장치(115)에 탑재된 USB 대용량 저장 장치 드라이버는 대용량 저장 장치에 접속 권한을 획득하는데 이용된다. 또한, 대용량 저장 장치의 접속 시, 클라이언트 장치(115)는 다양한 업무를 실행하기 위하여 가상 USB 장치를 이용할 수 있다. In
몇몇의 실시 예에서, 대용량 저장 장치에 접속 시에, 클라이언트 장치(115)와 연관된 멀티미디어 플레이어는 대용량 저장 장치를 볼 수 있다. 또한, 멀티미디어 플레이어는 클라이언트 장치(115) 상의 멀티미디어 컨텐츠를 재생하기 위해 오디오 파일이나 비디오 파일을 선택할 수 있다. 또한, 몇몇 실시 예에서, 클라이언트 장치(115)는 대용량 저장 장치에 포함된 컨텐츠의 복사, 삭제, 포맷, 수정 등과 같이 복수의 작업들을 수행할 수 있다. 게다가, 몇몇 실시예에서, 클라이언트는 클라이언트 장치(115) 상의 오피스 파일, 문서 파일, 이미지 파일과 같은 다양한 파일들을 열 수 있고 수정할 수 있으며, 가상 USB 장치에 저장할 수 있다. In some embodiments, upon connecting to the mass storage device, the multimedia player associated with the
몇몇의 실시 예에서, 상술한 방법은 인터럽트 기반의 장치들과 등시성 USB 장치들의 가상현실화를 가능하게 한다. 인터럽트 기반 장치들은 메인 서버로부터 게임 서버 에이전트를 제어하는데 이용된다. 상술한 방법은 가상 USB 키보드로 메인 서버에 내보내질 수 있는 게임 서버 에이전트와 연관된 키보드와 마우스의 에뮬레이션을 가능하게 한다. 또한, 가상 USB 키보드는 메인 서버로부터 제어될 수 있다. 더욱이, 예를 들어 USB 웹캠과 같은 등시성의 USB 장치들은 영상을 디지털 텔레비전 스크린에 재생할 수 있도록 스마트폰의 카메라를 이용해서 에뮬레이트될 수 있다.In some embodiments, the method described above enables virtualization of interrupt based devices and isochronous USB devices. Interrupt-based devices are used to control the game server agent from the main server. The method described above enables emulation of a keyboard and mouse associated with a game server agent that can be exported to the main server as a virtual USB keyboard. In addition, the virtual USB keyboard can be controlled from the main server. Moreover, isochronous USB devices, such as, for example, USB webcams, can be emulated using a smartphone's camera to play back images on a digital television screen.
방법은 340 단계에서 종료된다.
The method ends at 340.
이하에서는 도 4 및 도 5를 참조하여, 클라이언트 장치의 데이터 공유 방법에 대해 더욱 상세히 설명하도록 한다.Hereinafter, the data sharing method of the client device will be described in more detail with reference to FIGS. 4 and 5.
도 4는 본 발명의 일 실시예에 따른, 클라이언트 장치(115)의 구성을 나타내는 블럭도이다. 도 4에 도시된 바와 같이, 클라이언트 장치(115)는 통신 인터페이스(410), 저장부(420) 및 제어부(430)를 포함한다. 이때, 클라이언트 장치(115)는 디지털 텔레비전, 모바일 장치, PDA, 스마트폰 및 소형 장치 등과 같은 멀티미디어 장치로 구현될 수 있다.4 is a block diagram illustrating a configuration of a
한편, 도 4에 도시된 클라이언트 장치(115)는 데이터 공유 기능을 설명하기 위해 필요한 구성만을 도시하고 있을 뿐, 클라이언트 장치(115)가 디스플레이 기능, 인터넷 검색 기능 등과 같은 다양한 기능을 제공하는 경우, 디스플레이부, 사용자 입력부와 같은 추가적인 구성이 부가되거나 변경될 수 있다.On the other hand, the
통신 인터페이스(410)는 클라이언트 장치(115)와 서버 장치(105) 간에 연결된 양방향 데이터 통신을 제공한다. 예를 들어, 통신 인터페이스(410)는 전화 라인에 상응하는 유형에 데이터 통신 연결을 제공할 수 있도록 ISDN 카드 혹은 모뎀의 형태일 수 있다. 또 다른 예시로, 통신 인터페이스(410)는 양립 가능한 LAN에 데이터 통신 연결을 제공할 수 있도록 LAN 카드의 형태일 수 있다. 이 경우, 통신 인터페이스(410)는 다양한 유형의 정보를 나타내는 디지털 데이터 스트림을 이동할 수 있는 전기적, 전자기적, 광학적 신호를 송신하고 수신한다.The
저장부(420)는 클라이언트 장치(115)를 제어하기 위한 다양한 프로그램 및 데이터를 저장한다. 특히, 저장부(420)는 서버 장치(105)에 의해 에뮬레이트된 가상 USB 장치에 포함된 대용량 저장 매체로부터 수신된 멀티미디어 컨텐츠를 저장할 수 있다.The
제어부(430)는 클라이언트 장치(115)의 전반적인 동작을 제어한다. 특히, 제어부(430)는 클라이언트 장치(115)와 서버 장치(105) 사이의 연결에 이용되는 요청을 서버 장치(105)로 전송하도록 통신 인터페이스(410)를 제어할 수 있다.The
그리고, 서버 장치(105)에 의해 클라이언트 장치(115)의 신뢰성이 존재하는 것으로 판단되어, 서버 장치(105)에 의해 대용량 저장 장치를 포함하는 가상 USB 장치가 에뮬레이트된 경우, 제어부(430)는 서버 장치(105)로부터 가상 USB 장치의 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 수신하도록 통신 인터페이스(410)를 제어할 수 있다. 이때, USB 제어 메시지는 클라이언트 장치(115)가 가상 USB 장치의 대용량 저장 장치에 접속할 수 있도록 하는 적어도 하나의 소프트웨어 조건을 포함할 수 있다.When the
그리고, 제어부(430)는 전송된 USB 제어 메시지들을 처리한다. 예를 들어, 전송된 USB 제어 메시지가 암호화된 경우, 제어부(430)는 암호화된 USB 제어 메시지를 복호화할 수 있다.The
그리고, 제어부(430)는 처리된 USB 제어 메시지를 이용하여 서버 장치(105)와 데이터를 공유할 수 있도록 가상 USB 장치의 대용량 저장 장치에 접근할 수 있는 권한을 획득할 수 있다. In addition, the
도 5는 본 발명의 일 실시예에 따른, 클라이언트 장치(115)의 데이터 공유 방법을 설명하기 위한 흐름도이다.5 is a flowchart illustrating a data sharing method of the
우선, 클라이언트 장치(115)는 클라이언트 장치(115)와 서버 장치(105) 사이의 연결에 이용되는 요청을 서버 장치(105)로 전송한다(S510).First, the
그리고, 클라이언트 장치(115)는 서버 장치(105)로부터 가상 USB 장치에 포함된 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 수신한다(S520). 구체적으로, 서버 장치(105)가 클라이언트 장치(115)의 신뢰성이 존재하는 것으로 판단하여 대용량 저장 장치를 포함하는 가상 USB 장치를 에뮬레이트하는 경우, 클라이언트 장치(115)는 서버 장치(105)로부터 가상 USB 장치에 포함된 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 수신할 수 있다.In operation S520, the
그리고, 클라이언트 장치(115)는 수신된 USB 제어 메시지를 처리한다(S530). 예를 들어, 클라이언트 장치(115)는 암호화된 USB 제어 메시지를 복호화할 수 있다.In operation S530, the
그리고, 클라이언트 장치(115)는 처리된 USB 제어 메시지를 이용하여 가상 USB 장치에 포함된 대용량 저장 장치에 접속한다(S540). 이에 의해, 클라이언트 장치(115)는 가상 USB 장치의 대용량 저장 장치에 저장된 멀티미디어 컨텐츠를 이용할 수 있게 된다.
In operation S540, the
상술한 바와 같은 본원 발명에 기재된 실시 예들은, 멀티미디어 장치가 USB 장치의 물리적인 연결 없이도 가상 USB 장치에 포함된 멀티미디어 컨텐츠를 재생할 수 있도록 가상 USB 장치의 에뮬레이션을 가능하게 한다. 가상 USB 장치를 에뮬레이트함으로써, 가상 USB 장치는 하나의 서버로부터 복수의 클라이언트들로 전송될 수 있다. 또한, 상술한 방법은 승인되지 않은 접속을 미연에 방지하기 위해 복수의 클라이언트들이 가상 USB 장치에 접속하기 전에 인증 절차를 실행할 수 있도록 한다. 상술한 방법은 클라이언트들의 권한 레벨과 접속 레벨을 관리함으로써 향상된 보안을 제공한다. 또한, 상술한 방법은 데이터를 클라이언트에 전송하기 이전에 데이터의 암호화를 가능하게 한다. 게다가, 방법은 공공 및 개인 네트워크 사이의 데이터 공유를 가능하게 한다. 또한, 가상 USB 장치를 에뮬레이트함으로써, 데이터 전송을 위해 USB 케이블에 연결할 필요성이 제거된다. 또한, 가상 USB 장치의 에뮬레이션은 하나 이상의 장치, 특정 OS 애플리케이션이나 데이터 공유를 지원하는 하나 이상의 드라이버를 설치해야 하는 필요성을 제거한다. 또한, 가상 USB 장치를 제거함으로써, USB 포트를 포함하지 않는 전자 장치들 또한 데이터를 공유할 수 있다. As described above, the embodiments described in the present invention enable the emulation of the virtual USB device so that the multimedia device can play the multimedia content included in the virtual USB device without the physical connection of the USB device. By emulating a virtual USB device, the virtual USB device can be sent from one server to a plurality of clients. In addition, the method described above allows a plurality of clients to execute an authentication procedure before connecting to the virtual USB device in order to prevent unauthorized access. The method described above provides enhanced security by managing the privilege level and access level of clients. In addition, the method described above enables the encryption of data prior to sending the data to the client. In addition, the method enables data sharing between public and private networks. In addition, by emulating a virtual USB device, the need to connect a USB cable for data transfer is eliminated. In addition, emulation of virtual USB devices eliminates the need to install one or more devices, one or more drivers that support specific OS applications or data sharing. In addition, by removing the virtual USB device, electronic devices that do not include a USB port can also share data.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be construed as limiting the scope of the invention as defined by the appended claims. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention.
205: 버스 210: 제어부
215: 메모리 220: ROM
225: 저장 유닛 230: 디스플레이
235: 입력 장치 240: 커서 컨트롤
245: 통신 인터페이스205: bus 210: control unit
215: memory 220: ROM
225: storage unit 230: display
235: input device 240: cursor control
245: communication interface
Claims (19)
상기 클라이언트 장치와 통신을 위해 이용되는 요청을 상기 클라이언트 장치로부터 수신하는 단계;
상기 클라이언트 장치의 신뢰성을 판단하는 단계;
상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단되는 경우, 대용량 저장 장치를 포함하는 가상 USB 장치를 에뮬레이트하는 단계;
상기 가상 USB 장치의 대용량 저장 장치의 접속에 이용되는 USB 제어 메시지를 상기 클라이언트 장치로 전송하는 단계; 및
상기 클라이언트 장치가 상기 USB 제어 메시지를 통해 인증하는 경우, 상기 클라이언트 장치에 데이터를 공유하는 단계;를 포함하는 데이터 공유 방법.In the data sharing method of the server device for sharing data with the client device,
Receiving a request from the client device to be used for communication with the client device;
Determining the reliability of the client device;
Emulating a virtual USB device including a mass storage device if the client device is determined to have reliability;
Transmitting a USB control message used to access a mass storage device of the virtual USB device to the client device; And
And sharing the data with the client device when the client device authenticates through the USB control message.
상기 판단하는 단계는,
데이터 공유가 승인된 클라이언트 장치들에 대한 정보를 포함하는 목록을 저장하는 단계;
상기 클라이언트 장치가 상기 목록에 포함되어 있는지 여부를 판단하는 단계; 및
상기 클라이언트 장치가 상기 목록에 포함된 경우, 상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단하는 단계;를 포함하는 데이터 공유 방법.The method of claim 1,
The determining step,
Storing a list containing information about client devices authorized to share data;
Determining whether the client device is included in the list; And
If the client device is included in the list, determining, by the client device, that reliability exists.
상기 USB 제어 메시지를 암호화하는 단계;를 더 포함하며,
상기 암호화된 USB 제어 메시지는,
상기 클라이언트 장치에 의해 복호화되는 것을 특징으로 하는 데이터 공유 방법.The method of claim 1,
Encrypting the USB control message;
The encrypted USB control message,
And decrypted by the client device.
상기 USB 제어 메시지들은,
복수의 URB(Universal serial bus request block) 유닛의 형태로 전송되는 것을 특징으로 하는 데이터 공유 방법.The method of claim 1,
The USB control messages,
A data sharing method, characterized in that transmitted in the form of a plurality of universal serial bus request block (URB) unit.
상기 USB 제어 메시지는 클라이언트 장치에 탑재된 복수의 드라이버들에 의해 처리되며,
상기 클라이언트 장치는,
상기 처리된 USB 제어 메시지를 이용하여 상기 클라이언트 장치가 상기 가상 USB 장치의 대용량 저장 장치에 접속할 수 있는 권한이 있는지 여부를 판단하는 것을 특징으로 하는 데이터 공유 방법. The method of claim 1,
The USB control message is processed by a plurality of drivers mounted on the client device,
The client device,
And determining whether the client device has a right to access a mass storage device of the virtual USB device by using the processed USB control message.
상기 클라이언트 장치와 통신을 수행하는 통신 인터페이스;
명령을 저장하는 저장부; 및
상기 클라이언트 장치와 통신을 위해 이용되는 요청을 상기 클라이언트 장치로부터 수신하도록 상기 통신 인터페이스를 제어하며,
상기 클라이언트 장치의 신뢰성을 판단하며, 상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단되는 경우, 대용량 저장 장치를 포함하는 가상 USB 장치를 에뮬레이트하고,
상기 가상 USB 장치의 대용량 저장 장치의 접속에 이용되는 USB 제어 메시지를 상기 클라이언트 장치로 전송하도록 상기 통신 인터페이스를 제어하며,
상기 USB 제어 메시지를 통해 상기 클라이언트 장치가 인증하는 경우, 상기 클라이언트 장치에 데이터를 공유하는 제어부;를 포함하는 서버 장치.A server device for sharing data with a client device,
A communication interface for communicating with the client device;
A storage unit for storing a command; And
Control the communication interface to receive from the client device a request used for communication with the client device,
Determine the reliability of the client device, and if the client device is determined to have reliability, emulate a virtual USB device including a mass storage device,
Control the communication interface to send a USB control message used to access the mass storage device of the virtual USB device to the client device,
And a controller configured to share data with the client device when the client device authenticates through the USB control message.
상기 저장부는,
데이터 공유가 승인된 클라이언트 장치들에 대한 정보를 포함하는 목록을 저장하며,
상기 제어부는,
상기 클라이언트 장치가 상기 목록에 포함되어 있는지 여부를 판단하고, 상기 클라이언트 장치가 상기 목록에 포함된 경우, 상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단하는 것을 특징으로 하는 서버 장치.The method according to claim 6,
Wherein,
Stores a list containing information about client devices authorized to share data,
The control unit,
It is determined whether the client device is included in the list, and if the client device is included in the list, the server device, characterized in that it is determined that the reliability exists.
상기 제어부는,
상기 USB 제어 메시지를 암호화하며,
상기 암호화된 USB 제어 메시지는,
상기 클라이언트 장치에 의해 복호화되는 것을 특징으로 하는 서버 장치.The method according to claim 6,
The control unit,
Encrypt the USB control message,
The encrypted USB control message,
And decrypted by the client device.
상기 제어부는,
상기 USB 제어 메시지들을 복수의 URB(Universal serial bus request block) 유닛의 형태로 전송하도록 상기 통신 인터페이스를 제어하는 것을 특징으로 하는 서버 장치.The method according to claim 6,
The control unit,
And control the communication interface to transmit the USB control messages in the form of a plurality of Universal Serial Bus Request Block (URB) units.
상기 USB 제어 메시지는 클라이언트 장치에 탑재된 복수의 드라이버들에 의해 처리되며,
상기 클라이언트 장치는,
상기 처리된 USB 제어 메시지를 이용하여 상기 클라이언트 장치가 상기 가상 USB 장치의 대용량 저장 장치에 접속할 수 있는 권한이 있는지 여부를 판단하는 것을 특징으로 하는 서버 장치.The method according to claim 6,
The USB control message is processed by a plurality of drivers mounted on the client device,
The client device,
And determining whether the client device has a right to access the mass storage device of the virtual USB device by using the processed USB control message.
상기 클라이언트 장치가, 상기 클라이언트 장치와 상기 서버 장치 사이의 연결에 이용되는 요청을 상기 서버 장치로 전송하는 단계;
상기 서버 장치가, 상기 클라이언트 장치가 상기 서버 장치에 접속할 수 있도록 상기 클라이언트 장치의 신뢰성을 판단하는 단계;
상기 클라이언트 장치의 신뢰성이 존재하는 것으로 판단되는 경우, 상기 서버 장치가, 대용량 저장 장치를 포함하는 가상 USB 장치를 에뮬레이트하는 단계;
상기 서버 장치가, 상기 가상 USB 장치의 상기 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 상기 클라이언트 장치로 전송하는 단계;
상기 클라이언트 장치가, 상기 전송된 USB 제어 메시지들을 처리하는 단계; 및
상기 클라이언트 장치가, 상기 처리된 USB 제어 메시지를 이용하여 상기 가상 USB 장치의 대용량 저장 장치에 접속할 수 있는 권한을 획득하는 단계;를 포함하는 데이터 공유 방법.In the data sharing method of a data sharing system comprising a server device and a client device,
Sending, by the client device, a request used for the connection between the client device and the server device to the server device;
Determining, by the server device, the reliability of the client device so that the client device can access the server device;
If it is determined that reliability of the client device exists, the server device emulating a virtual USB device including a mass storage device;
Sending, by the server device, a USB control message used to connect the mass storage device of the virtual USB device to the client device;
Processing, by the client device, the transmitted USB control messages; And
Acquiring, by the client device, a right to access a mass storage device of the virtual USB device by using the processed USB control message.
상기 클라이언트 장치와 서버 장치 사이의 연결에 이용되는 요청을 상기 서버 장치로 전송하는 단계;
상기 서버 장치로부터 가상 USB 장치의 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 수신하는 단계;
상기 전송된 USB 제어 메시지들을 처리하는 단계; 및
상기 처리된 USB 제어 메시지를 이용하여 상기 가상 USB 장치의 대용량 저장 장치에 접속하는 단계;를 포함하는 데이터 공유 방법.In the data sharing method of the client device,
Sending a request used for the connection between the client device and the server device to the server device;
Receiving a USB control message used for accessing a mass storage device of a virtual USB device from the server device;
Processing the transmitted USB control messages; And
Accessing the mass storage device of the virtual USB device using the processed USB control message.
상기 가상 USB 장치는,
상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단되는 경우, 상기 서버 장치에 의해 에뮬레이트되는 것을 특징으로 하는 데이터 공유 방법.The method of claim 12,
The virtual USB device,
And if it is determined that the client device is reliable, it is emulated by the server device.
상기 서버 장치로부터 수신되는 상기 USB 제어 메시지는 암호화되어 있으며,
상기 암호화된 USB 제어 메시지를 복호화하는 단계;를 더 포함하는 데이터 공유 방법.The method of claim 12,
The USB control message received from the server device is encrypted,
Decrypting the encrypted USB control message.
상기 USB 제어 메시지는 상기 클라이언트 장치가 상기 가상 USB 장치의 대용량 저장 장치에 접속할 수 있도록 하는 적어도 하나의 소프트웨어 조건을 포함하는 것을 특징으로 하는 데이터 공유 방법.The method of claim 12,
And wherein the USB control message includes at least one software condition that allows the client device to access the mass storage device of the virtual USB device.
상기 서버 장치와 통신을 수행하는 통신 인터페이스;
컨텐츠를 저장하는 저장부; 및
상기 클라이언트 장치와 상기 서버 장치 사이의 연결에 이용되는 요청을 상기 서버 장치로 전송하며, 상기 서버 장치로부터 가상 USB 장치의 대용량 저장 장치의 접속에 사용되는 USB 제어 메시지를 수신하도록 상기 통신 인터페이스를 제어하며, 상기 전송된 USB 제어 메시지들을 처리하여 상기 가상 USB 장치의 대용량 저장 장치에 접속하는 제어부;를 포함하는 클라이언트 장치.A client device for sharing data with a server device,
A communication interface for communicating with the server device;
A storage unit for storing contents; And
Send a request used for the connection between the client device and the server device to the server device, and control the communication interface to receive a USB control message used to connect a mass storage device of the virtual USB device from the server device; And a controller configured to process the transmitted USB control messages and access the mass storage device of the virtual USB device.
상기 가상 USB 장치는,
상기 클라이언트 장치가 신뢰성이 존재하는 것으로 판단되는 경우, 상기 서버 장치에 의해 에뮬레이트되는 것을 특징으로 하는 클라이언트 장치.17. The method of claim 16,
The virtual USB device,
And if it is determined that the client device is reliable, it is emulated by the server device.
상기 서버 장치로부터 수신되는 상기 USB 제어 메시지는 암호화되어 있으며,
상기 제어부는,
상기 암호화된 USB 제어 메시지를 복호화하는 것을 특징으로 하는 클라이언트 장치.17. The method of claim 16,
The USB control message received from the server device is encrypted,
The control unit,
And decrypting the encrypted USB control message.
상기 USB 제어 메시지는, 상기 클라이언트 장치가 상기 가상 USB 장치의 대용량 저장 장치에 접속할 수 있도록 하는 적어도 하나의 소프트웨어 조건을 포함하는 것을 특징으로 하는 클라이언트 장치.
17. The method of claim 16,
And the USB control message includes at least one software condition that allows the client device to access the mass storage device of the virtual USB device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/888,830 US20130297718A1 (en) | 2012-05-07 | 2013-05-07 | Server device, client device, data sharing system and method for sharing data between client device and server device thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN1753/CHE/2012 | 2012-05-07 | ||
IN1753CH2012 | 2012-05-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20130124888A true KR20130124888A (en) | 2013-11-15 |
Family
ID=49853532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130037702A KR20130124888A (en) | 2012-05-07 | 2013-04-05 | Server device, client device, data sharing system and method for sharing data between client device and server device thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20130124888A (en) |
-
2013
- 2013-04-05 KR KR1020130037702A patent/KR20130124888A/en not_active Application Discontinuation
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100770421B1 (en) | A system and method for manipulating a computer file and/or program | |
US11956631B2 (en) | Secure storage pass-through device | |
US20140173692A1 (en) | Bring your own device system using a mobile accessory device | |
KR101971225B1 (en) | Data transmission security system of cloud service and a providing method thereof | |
CN110083465B (en) | Data transmission method between boarded applications | |
EP3275158A1 (en) | Policy enforcement | |
CN113806777B (en) | File access realization method and device, storage medium and electronic equipment | |
US20180107493A1 (en) | Synchronous control method and device via external apparatus | |
US20130297718A1 (en) | Server device, client device, data sharing system and method for sharing data between client device and server device thereof | |
KR20150017844A (en) | Controlling Method For Input Status and Electronic Device supporting the same | |
US9275206B2 (en) | Managing sensitive information | |
WO2014077474A1 (en) | Apparatus and method for managing security content using virtual folder | |
KR101952139B1 (en) | A method for providing digital right management function in gateway server communicated with user terminal | |
CN110178353A (en) | Method for processing business, Cloud Server and terminal device | |
US10263956B2 (en) | Physical level-based security system for data security of security terminal and method using the same | |
KR20130039452A (en) | Account management system for broadcasting receivers using android platform | |
KR20130124888A (en) | Server device, client device, data sharing system and method for sharing data between client device and server device thereof | |
US20210097023A1 (en) | Decentralized Data System | |
JP5914166B2 (en) | Remote access device, remote control system, remote control method, and program | |
US11824919B2 (en) | System and method for force running of remote support, and client for executing the same | |
EP3662640B1 (en) | Data communication with devices having no direct access or only restricted access to communication networks | |
US11616828B2 (en) | System and method for remote support, and web application server for executing the same | |
KR101269095B1 (en) | Remote storage device using mobile phone and method thereof | |
KR100976740B1 (en) | Method and system for sharing a hard-disk of computer with smart-phone in a local network | |
KR101861015B1 (en) | A method for providing digital right management function in user terminal based on cloud service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |