KR101972349B1 - Method for providing service platform using mobile storage apparatus and apparauts thereof - Google Patents
Method for providing service platform using mobile storage apparatus and apparauts thereof Download PDFInfo
- Publication number
- KR101972349B1 KR101972349B1 KR1020180118900A KR20180118900A KR101972349B1 KR 101972349 B1 KR101972349 B1 KR 101972349B1 KR 1020180118900 A KR1020180118900 A KR 1020180118900A KR 20180118900 A KR20180118900 A KR 20180118900A KR 101972349 B1 KR101972349 B1 KR 101972349B1
- Authority
- KR
- South Korea
- Prior art keywords
- storage device
- mobile storage
- server
- content
- external terminal
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H04L67/2809—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H04L67/2814—
-
- H04L67/36—
-
- H04L67/42—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/75—Indicating network or usage conditions on the user display
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 서버를 통해서 서비스를 제공하는 플랫폼에 관한 것이다. 보다 자세하게는, 서버를 구성할 수 있는 장치와 구성된 서버가 서비스를 제공하기 위해 다른 장치에 연결할 수 있도록 중개하는 방법에 관한 것이다.The present invention relates to a platform for providing services through a server. More particularly, the present invention relates to a device capable of configuring a server and a method for intermediating the configured server so that the server can be connected to another device to provide a service.
이 부분에 기술된 내용은 본 실시 예에 대한 배경 정보를 제공하는 것이며, 이 부분에 기재된 것만으로 종래의 기술에 속하는 것은 아니다.The contents described in this section provide background information for this embodiment, and are not included in the prior art only as described in this section.
네트워크(예를 들어, 인터넷)를 통한 서비스를 제공하기 위해서 서버를 사용하게 된다. 예를 들어, 이메일 서비스의 경우, 메일 송수신을 처리할 수 있는 메일 서버가 네트워크를 통해서 이메일 서비스를 제공한다. 메일 서버는 포털을 이용하여 수행되는 회원 가입 프로세스를 통해서 사용자에 대한 계정을 생성하고, 생성된 계정을 활용하여 메일의 송수신을 처리한다. 사용자는 개인 컴퓨터의 메일 사용자 에이전트(Mail User Agent; MUA)를 이용하여 메일 서버를 통해 메일을 송수신할 수 있다. 인터넷으로 상기 계정에 대한 메일 주소를 지정한 메일이 발송되면 메일 서버에 메일 내용과 첨부된 파일이 저장되고 메일 서버는 해당 계정의 사용자에 대한 알림을 발송할 수 있다. 즉, 사용자는 메일 서버를 포함하는 인프라를 구축한 서비스 제공자를 통해서 메일 서비스를 제공 받을 수 있다.The server is used to provide services over a network (e.g., the Internet). For example, in the case of an e-mail service, a mail server capable of processing mail transmission / reception provides an e-mail service through a network. The mail server creates an account for the user through the membership process performed using the portal, and processes the mail transmission and reception using the created account. A user can send and receive mail through a mail server using a mail user agent (MUA) of a personal computer. When an e-mail addressed to the above-mentioned account is sent via the Internet, the contents of the e-mail and the attached file are stored in the e-mail server, and the e-mail server can send a notification of the user of the account. That is, a user can receive a mail service through a service provider that has built an infrastructure including a mail server.
홈페이지 제공 서비스의 경우도 유사하게 웹호스팅 서버의 인프라를 구축하고 홈페이지가 조회될 수 있도록 서비스를 제공하는 웹호스팅 서비스 제공자를 통해서 사용자가 홈페이지 제공 서비스를 제공 받을 수 있었다. 또한, 소셜 미디어(Social Media) 서비스도 게시글 등을 등록하고 다른 사용자에 의해 조회될 수 있도록 하는 서버를 구축한 서비스 제공자에 의해서 제공될 수 있다. 영상이나 음악 등의 미디어도 미디어 배달 중개자(Media Delivery Agent)를 필요로 한다.Similarly, in the case of the homepage providing service, the user can receive the homepage providing service through the web hosting service provider that provides the infrastructure for the web hosting server and provides the service for the homepage viewing. Also, a social media service may be provided by a service provider who has built a server to register a post or the like and to be viewed by other users. Media such as video or music also require a Media Delivery Agent.
본 발명이 해결하고자 하는 기술적 과제는, 많은 비용이 소모되는 서버 및 인프라 구축을 대신하여 낮은 비용만으로도 서비스를 사용할 수 있도록 하는 장치 및 방법을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide an apparatus and method for using a service at a low cost instead of building a server and an infrastructure with high cost.
또한 본 발명이 해결하고자 하는 다른 기술적 과제는, 널리 상용화된 모바일 스토리지를 이용하여 서비스를 제공할 수 있도록 하는 방법 및 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a method and apparatus for providing a service using widely-used mobile storage.
또한 본 발명이 해결하고자 하는 또 다른 기술적 과제는, 고정 IP 주소를 가지고 서비스를 제공하는 서버와 같이 서비스를 제공할 수 있기 위하여 모바일 스토리지 장치가 다른 장치와 데이터를 송수신하는 방법을 제공하는 것이다.Another aspect of the present invention is to provide a method for a mobile storage device to transmit / receive data to / from another device to provide a service such as a server providing a service with a static IP address.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.The technical objects of the present invention are not limited to the above-mentioned technical problems, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.
상기 기술적 과제를 해결하기 위한, 일 실시예에 따른 모바일 스토리지 장치는, 인터넷에 연결된 호스트 장치에 전기적으로 연결됨으로써, 상기 호스트 장치를 통해 상기 인터넷에 연결을 제공하는 커넥터; 스토리지; 및 상기 커넥터 및 상기 스토리지와 연결되고, 상기 스토리지에 저장된 데이터를 이용하여 서버-클라이언트 모델에 따른 온라인 서비스를 외부 단말에 제공하기 위한 복수의 인스트럭션(instruction)을 실행하는 프로세서를 포함하되, 상기 복수의 인스트럭션은, 상기 커넥터가 상기 호스트 장치에 연결되어 상기 모바일 스토리지 장치가 상기 인터넷에 연결되면, 자동으로 상기 외부 단말에 상기 모바일 스토리지 장치의 주소 정보를 제공하는 중개 서버에 등록 요청을 송신하되, 상기 등록 요청은 상기 커넥터가 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당되는 주소 정보를 포함하는 것인, 인스트럭션과, 상기 외부 단말이 상기 중개 서버로부터 상기 모바일 스토리지 장치의 주소 정보를 획득한 후, 상기 온라인 서비스의 제공을 위한 패킷을 상기 외부 단말과 홀 펀칭(hole punching) 방식으로 p2p 송수신하는 인스트럭션을 포함할 수 있다.According to an aspect of the present invention, there is provided a mobile storage device comprising: a connector electrically connected to a host device connected to the Internet, thereby providing a connection to the Internet through the host device; storage; And a processor, coupled to the connector and the storage, for executing a plurality of instructions to provide an on-line service according to a server-client model to an external terminal using data stored in the storage, Wherein the controller transmits a registration request to the intermediary server that provides address information of the mobile storage device to the external terminal automatically when the connector is connected to the host device and the mobile storage device is connected to the Internet, Wherein the request includes address information assigned to the mobile storage device as the connector is connected to the host device; and after the external terminal obtains address information of the mobile storage device from the intermediary server, The provision of the online service And p2p transmitting / receiving packets for the p2p to the external terminal through a hole punching method.
또한, 다른 몇몇 실시 예에 따르면, 상기 복수의 인스트럭션은, 모바일 스토리지 장치 인증 인스트럭션을 더 포함하되, 상기 모바일 스토리지 장치 인증 인스트럭션은, 상기 커넥터가 상기 호스트 장치에 연결됨으로써 상기 모바일 스토리지 장치가 최초로 상기 인터넷에 연결되는 것에 응답하여, 자동으로 상기 인터넷에 연결된 장치 인증 서버에 인증 요청을 송신하되, 상기 인증 요청에는 상기 모바일 스토리지 장치의 제조시 기록된 장치 식별자가 포함되는, 인스트럭션; 상기 장치 인증 서버로부터 인증 성공을 가리키는 데이터가 수신된 경우, 회원 가입 정보를 입력 받기 위한 GUI가 표시되기 위한 데이터를 상기 호스트 장치에 제공하는 인스트럭션; 및 플랫폼 인증 서버로부터 상기 모바일 스토리지 장치에 발급되는 장치 고유 키를 상기 스토리지에 저장하되, 상기 장치 고유 키는 상기 회원 가입 정보에 매치되는 것인, 인스트럭션을 포함할 수 있다.Also, according to some other embodiments, the plurality of instructions further comprises a mobile storage device authentication instruction, wherein the mobile storage device authentication instruction is initiated when the mobile storage device is first connected to the Internet The method comprising: automatically sending an authentication request to a device authentication server connected to the Internet, wherein the authentication request includes a device identifier recorded at the time of manufacture of the mobile storage device; An instruction to provide the host device with data for displaying a GUI for receiving membership subscription information when data indicating authentication success is received from the device authentication server; And a device unique key issued from the platform authentication server to the mobile storage device in the storage, wherein the device unique key is matched to the membership subscription information.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치 인증 인스트럭션은, 상기 커넥터가 상기 호스트 장치에 연결됨으로써 상기 모바일 스토리지 장치가 상기 인터넷에 연결되는 것에 응답하여, 자동으로 상기 플랫폼 인증 서버에 의하여 발급된 장치 고유 키에 대한 정보를 포함하는 인증 요청을 상기 플랫폼 인증 서버에 송신하는 인스트럭션을 포함할 수 있다.According to yet another embodiment, the mobile storage device authentication instruction is automatically issued by the platform authentication server in response to the mobile storage device being connected to the Internet by the connector being connected to the host device And sending an authentication request to the platform authentication server, the authentication request including information about the device unique key.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치 인증 인스트럭션은, 상기 인증 요청에 대한 인증 성공을 나타내는 데이터에 대한 응답으로, 상기 플랫폼 인증 서버로부터 공개키를 수신하여 상기 장치 고유 키를 업데이트하는 인스트럭션을 더 포함할 수 있다.According to yet another embodiment, the mobile storage device authentication instruction further comprises: receiving a public key from the platform authentication server in response to data indicating authentication success for the authentication request to update the device unique key Instructions. ≪ / RTI >
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치는 사용자에 의하여 상태 정보를 출력할 수 있는 인디케이터를 더 포함하되, 상기 모바일 스토리지 장치 인증 인스트럭션은, 상기 플랫폼 인증 서버로부터 인증 실패를 가리키는 데이터가 수신되는 경우, 상기 인디케이터가 상태 정보를 출력할 수 있도록 하는 제어 신호를 출력하는 인스트럭션을 포함할 수 있다.According to another embodiment of the present invention, the mobile storage device further includes an indicator capable of outputting status information by a user, wherein the mobile storage device authentication instruction includes data indicating an authentication failure from the platform authentication server And outputting a control signal for allowing the indicator to output status information when the status information is received.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 복수의 인스트럭션은, 모바일 스토리지 장치 인증 인스트럭션을 더 포함하되, 상기 모바일 스토리지 장치 인증 인스트럭션은, 상기 모바일 스토리지 장치에 저장된 개인 키와 블록 체인 시스템의 노드를 구성하는 플랫폼 인증 서버에 저장된 공개 키를 조합하여 장치 고유 키를 활성화하는 인스트럭션과, 상기 플랫폼 인증 서버로부터 상기 장치 고유 키를 갱신 받는 인스트럭션을 포함할 수 있다.According to yet another embodiment, the plurality of instructions further comprise a mobile storage device authentication instruction, wherein the mobile storage device authentication instruction comprises a private key stored in the mobile storage device and a node of a block chain system An instruction to activate the device inherent key by combining the public key stored in the platform authentication server that performs the update of the device inherent key, and an instruction to update the device inherent key from the platform authenticating server.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 복수의 인스트럭션은, 상기 모바일 스토리지 장치의 주소 정보가 변경된 경우, 상기 중개 서버에 주소 정보의 업데이트를 요청하는 인스트럭션을 더 포함할 수 있다.According to another embodiment of the present invention, the plurality of instructions may further include an instruction to update the address information of the mobile storage device when the address information of the mobile storage device is changed.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 업데이트를 요청하는 인스트럭션은, 상기 커넥터에 연결된 호스트 장치의 주소 정보가 변경되거나, 상기 커넥터에 연결된 호스트 장치가 변경된 경우에 상기 모바일 스토리지 장치의 주소 정보가 변경된 것으로 판단할 수 있다.According to another embodiment of the present invention, when the address information of the host device connected to the connector is changed or the host device connected to the connector is changed, .
또한, 또 다른 몇몇 실시 예에 따르면, 상기 프로세서는, 부팅 완료 후 상기 복수의 인스트럭션을 자동으로 실행하고, 상기 복수의 인스트럭션은, 상기 모바일 스토리지 장치 제조 시에, 바로 실행 가능하도록 설치된 온라인 서비스 제공 소프트웨어에 포함된 것을 특징으로 할 수 있다.According to yet another embodiment, the processor automatically executes the plurality of instructions after completion of booting, and the plurality of instructions are stored in an online service providing software As shown in FIG.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 온라인 서비스 제공 소프트웨어는, 상기 스토리지의 사용자 레벨 접근 불가능 영역에 설치된 것을 특징으로 할 수 있다.According to still another aspect of the present invention, the online service providing software is installed in a user level inaccessible area of the storage.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치는, ROM(Read Only Memory)를 더 포함하고, 상기 온라인 서비스 제공 소프트웨어는, 상기 ROM에 설치된 것을 특징으로 할 수 있다.According to still another aspect of the present invention, the mobile storage device further includes a read only memory (ROM), and the online service providing software is installed in the ROM.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 복수의 인스트럭션은, 상기 온라인 서비스의 제공에 따라 상기 스토리지에 저장된 컨텐츠의 리드(read) 억세스 트래픽이 기준치를 초과하는 경우, 상기 컨텐츠를 상기 인터넷에 연결된 컨텐츠 딜리버리 서버에 송신하는 인스트럭션; 및 상기 컨텐츠에 대한 리드 억세스를 상기 컨텐츠 딜리버리 서버로 리다이렉션(redirection) 하는 인스트럭션을 더 포함할 수 있다.According to another embodiment of the present invention, the plurality of instructions further include a step of, when the read access traffic of the content stored in the storage exceeds the reference value in accordance with the provision of the online service, An instruction to send to the delivery server; And an instruction to redirect the read access to the content to the content delivery server.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 컨텐츠는, 상기 모바일 스토리지 장치가 상기 호스트 장치에서 연결 해제 되면, 상기 컨텐츠 딜리버리 서버에서 비활성화 또는 삭제될 수 있다.According to another embodiment of the present invention, when the mobile storage device is disconnected from the host device, the content may be deactivated or deleted in the content delivery server.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 컨텐츠는, 상기 컨텐츠의 리드(read) 억세스 트래픽이 기준치를 하회하는 경우, 상기 컨텐츠 딜리버리 서버에서 삭제될 수 있다.According to another embodiment of the present invention, the content may be deleted from the content delivery server when the read access traffic of the content is lower than a reference value.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치는 사용자에 의하여 상태 정보를 출력할 수 있는 인디케이터를 더 포함하고, 상기 컨텐츠를 상기 인터넷에 연결된 컨텐츠 딜리버리 서버에 송신하는 인스트럭션은, 상기 인디케이터의 출력을 제어하는 제어 신호를 출력하는 인스트럭션을 포함할 수 있다.According to another embodiment of the present invention, the mobile storage device further includes an indicator capable of outputting status information by a user, and the instruction for transmitting the content to the content delivery server connected to the Internet comprises: And outputting a control signal for controlling the output.
또한, 또 다른 몇몇 실시 예에 따르면, 상기 컨텐츠는, 기 지정된 기준을 만족하는 경우, 상기 컨텐츠가 저장된 상기 모바일 스토리지 장치와 p2p 접속된 바 없는 외부 단말들이 접속할 수 있는 미디어 포털 서비스에 노출될 수 있다.According to another embodiment of the present invention, the content may be exposed to a media portal service that can be accessed by external terminals that are not p2p-connected to the mobile storage device in which the content is stored .
또한, 또 다른 몇몇 실시 예에 따르면, 상기 모바일 스토리지 장치는 상태 정보를 출력할 수 있도록 구비된 인디케이터를 더 포함하고, 상기 컨텐츠는, 상기 모바일 스토리지 장치가 상기 호스트 장치에서 연결 해제 되면, 상기 컨텐츠 딜리버리 서버에서 비활성화 또는 삭제되고, 상기 복수의 인스트럭션은, 상기 컨텐츠가 상기 미디어 포털 서비스에 노출된 것을 가리키는 데이터를 수신하는 것에 응답하여, 상기 인디케이터를 제어하는 제어 신호를 출력하는 인스트럭션을 포함할 수 있다.According to another embodiment of the present invention, the mobile storage apparatus further includes an indicator provided to output status information, and the content is transmitted to the mobile storage apparatus when the mobile storage apparatus is disconnected from the host apparatus, And the plurality of instructions may include an instruction to output a control signal for controlling the indicator in response to receiving data indicating that the content is exposed to the media portal service.
상기 기술적 과제를 해결하기 위한, 일 실시예에 따른 컴퓨팅 장치에 의하여 수행되는 방법은, 호스트 장치에 연결된 모바일 스토리지 장치로부터, 상기 모바일 스토리지 장치에 발급된 장치 고유 키 및 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당 된 주소 정보를 포함한 등록 요청을 수신하는 단계; 상기 등록 요청을 반영하여 매칭 테이블을 업데이트 하는 단계; 외부 단말로부터 로그인 정보를 수신하는 단계; 상기 매칭 테이블을 이용하여 상기 로그인 정보에 대응되는 장치 고유 키를 조회하는 단계; 및 상기 조회된 장치 고유 키의 주소 정보를 상기 외부 단말에 송신하고, 상기 조회된 장치 고유 키를 가진 모바일 스토리지 장치에 상기 외부 단말의 주소 정보를 송신함으로써, 홀펀칭을 중개하는 단계를 포함할 수 있다.According to an aspect of the present invention, there is provided a method for performing a method performed by a computing device according to an exemplary embodiment of the present invention, the method comprising: receiving, from a mobile storage device connected to a host device, Receiving a registration request including address information assigned to a mobile storage device; Updating the matching table to reflect the registration request; Receiving login information from an external terminal; Retrieving a device unique key corresponding to the login information using the matching table; And mediating hole punching by transmitting address information of the searched device unique key to the external terminal and transmitting address information of the external terminal to the mobile storage device having the searched device unique key have.
상기 기술적 과제를 해결하기 위한, 다른 일 실시예에 따른 컴퓨팅 장치에 의하여 수행되는 방법은, 호스트 장치에 연결된 모바일 스토리지 장치로부터, 상기 모바일 스토리지 장치에 발급된 장치 고유 키 및 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당 된 주소 정보를 포함한 등록 요청을 수신하는 단계; 상기 등록 요청을 반영하여 매칭 테이블을 업데이트 하는 단계; 상기 호스트 장치를 통해서 수신자 선택 사용자 인터페이스를 제공하는 단계; 상기 모바일 스토리지 장치로부터 상기 수신자 선택 사용자 인터페이스를 통해 선택된 외부 단말에 대한 컨텐츠의 송신 요청을 수신하는 단계; 상기 외부 단말의 연결 상태가 상기 컴퓨팅 장치에 연결되지 않은 상태인 경우, 상기 컨텐츠를 하나 이상의 주변 모바일 스토리지 장치에 저장되도록 상기 매칭 테이블을 이용하여 상기 모바일 스토리지 장치와 상기 하나 이상의 주변 모바일 스토리지 장치 사이의 홀펀징을 중개하는 단계; 및 상기 외부 단말이 상기 컴퓨팅 장치에 연결된 경우, 상기 컨텐츠가 상기 외부 단말로 전송되도록 상기 하나 이상의 주변 모바일 스토리지 장치와 상기 외부 단말 사이의 홀펀칭을 중개하는 단계;를 더 포함할 수 있다.According to another aspect of the present invention, there is provided a method for performing a method performed by a computing device according to another embodiment of the present invention. The method includes receiving from the mobile storage device connected to the host device a device unique key issued to the mobile storage device, Receiving a registration request including address information assigned to the mobile storage device; Updating the matching table to reflect the registration request; Providing a recipient selection user interface through the host device; Receiving a content transmission request from the mobile storage device for an external terminal selected through the receiver selection user interface; Wherein the content is stored in one or more peripheral mobile storage devices when the connection status of the external terminal is not connected to the computing device, Mediating hole puncturing; And mediating hole punching between the at least one peripheral mobile storage device and the external terminal so that the content is transmitted to the external terminal when the external terminal is connected to the computing device.
또한, 다른 몇몇 실시 예에 따르면, 상기 컨텐츠의 전송 이력에 대한 로그를 저장하는 단계; 및 상기 컨텐츠에 대한 송신 요청 또는 제공 요청이 수신되는 경우, 상기 로그를 이용하여 홀펀칭을 중개하는 단계;를 더 포함할 수 있다.According to another aspect of the present invention, there is provided a method of recording a content, the method comprising: storing a log of a transmission history of the content; And mediating hole punching using the log when a transmission request or a provision request for the content is received.
도 1은 몇몇 실시 예에 따라 모바일 스토리지 장치가 외부 단말과 통신을 수행하기 위한 구조를 설명하기 위한 도면이다.
도 2는 몇몇 실시 예에 따른 모바일 스토리지 장치의 구조를 간단히 도시한 구조도이다.
도 3은 몇몇 실시 예에 따라 모바일 스토리지 장치를 이용하여 서비스를 제공하는 시스템의 구조를 설명하기 위한 도면이다.
도 4는 몇몇 실시 예에 따라 모바일 스토리지 장치가 서비스를 제공하기 위해 외부 단말과 연결하는 프로세스를 도시한 도면이다.
도 5 내지 10은 몇몇 실시 예에 따라 모바일 스토리지 장치가 호스트 장치에 연결된 경우에 수행될 수 있는 프로세스를 도시한 도면이다.
도 11은 몇몇 실시 예에 따라 중개 서버가 모바일 스토리지 장치와 외부 단말 사이에 홀 펀칭(Hole Punching)을 수행하는 프로세스를 설명하기 위한 도면이다.
도 12는 몇몇 실시 예에 따른 매칭 테이블의 예시를 도시한 도면이다.
도 13 내지 15는 몇몇 실시 예에 따라 개인 간(Peer to peer; P2P) 파일 공유 방식을 이용하여 컨텐츠를 제공하는 방법을 설명하기 위한 도면이다.
도 16은 몇몇 실시 예에 따라 모바일 스토리지 장치가 컨텐츠 딜리버리 서버를 이용하여 컨텐츠를 제공하는 방법을 설명하기 위한 도면이다.
도 17은 몇몇 실시 예에 따라 컨텐츠가 미디어 포털 서버에서 제공하는 미디어 포털 서비스를 통해 노출된 경우에 수행될 수 있는 프로세스를 도시한 도면이다.
도 18은 몇몇 실시 예에 따라 모바일 스토리지 장치가 다른 모바일 스토리지 장치에 컨텐츠를 전송하는 프로세스를 도시한 도면이다.
도 19는 수신자 선택 사용자 인터페이스(User Interface; UI)의 예시를 도시한 도면이다.
도 20 내지 22는 몇몇 실시 예에 따라 모바일 스토리지 장치가 다른 모바일 스토리지 장치에 컨텐츠를 전송하는 구조를 설명하기 위한 도면이다.1 is a diagram illustrating a structure for a mobile storage device to perform communication with an external terminal according to some embodiments.
2 is a schematic diagram illustrating a structure of a mobile storage device according to some embodiments.
3 is a diagram illustrating a structure of a system for providing a service using a mobile storage device according to some embodiments.
4 is a diagram illustrating a process in which a mobile storage device connects with an external terminal to provide a service according to some embodiments.
Figures 5 to 10 illustrate processes that may be performed when a mobile storage device is connected to a host device in accordance with some embodiments.
FIG. 11 is a diagram illustrating a process in which a mediation server performs hole punching between a mobile storage device and an external terminal according to some embodiments.
12 is a diagram illustrating an example of a matching table according to some embodiments.
13 to 15 are diagrams for explaining a method of providing contents using a peer-to-peer (P2P) file sharing scheme according to some embodiments.
16 is a diagram for explaining a method for a mobile storage device to provide content using a content delivery server according to some embodiments.
17 is a diagram illustrating a process that can be performed when content is exposed through a media portal service provided by a media portal server according to some embodiments.
18 is a diagram illustrating a process by which a mobile storage device transmits content to another mobile storage device in accordance with some embodiments.
19 is a diagram showing an example of a receiver selection user interface (UI).
20 to 22 are views for explaining a structure in which a mobile storage device transmits content to another mobile storage device according to some embodiments.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise. The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification.
다른 정의가 없다면, 본 명세서에서 어떤 구성요소가 다른 구성요소와 "연결"되었다고 함은 물리적으로 연결된 경우만이 아니라 통신 가능하도록 연결된 경우를 포함한다.Unless otherwise defined, the terms " coupled " with other elements herein include not only physically connected but also communicably connected.
이하, 도면들을 참조하여 본 발명의 몇몇 실시예들을 설명한다.Some embodiments of the present invention will now be described with reference to the drawings.
도 1은 몇몇 실시 예에 따라 모바일 스토리지 장치(100)가 외부 단말(130)과 통신을 수행하기 위한 구조를 설명하기 위한 도면이다.1 is a diagram illustrating a structure for a
몇몇 실시 예에 따른 모바일 스토리지 장치(100)는 호스트 장치(110)에 연결될 수 있다. 예를 들어, 모바일 스토리지 장치(100)는 호스트 장치(110)의 USB(Universal Serial Bus) 포트에 연결될 수 있다. 다만, 이에 한정되지 아니하며, 모바일 스토리지 장치(110)는 다른 형태의 데이터 통신 포트나 무선 통신 모듈을 이용하여 호스트 장치(110)에 연결될 수도 있다. 모바일 스토리지 장치(100)는 데이터를 저장할 수 있는 저장 매체를 구비하고, 호스트 장치(110)에 저장된 데이터를 전송하거나 호스트 장치(110)로부터 수신된 데이터를 저장할 수 있다. 모바일 스토리지 장치(100)는, 예를 들어 플래시 메모리를 구비하는 개인저장매체의 형태일 수 있다.The
호스트 장치(110)는 네트워크(예를 들어, 인터넷)에 연결할 수 있는 장치를 의미한다. 예를 들어, 호스트 장치(110)는 네트워크에 연결된 데스크톱 PC, 랩톱, 스마트폰, 태블릿 PC와 같은 컴퓨팅 장치일 수 있다. 또는, 다른 예를 들면 호스트 장치(110)는 인터넷 IP 주소 공유기나 억세스 포인트(Access Point; AP) 장치와 같이 다른 장치를 네트워크에 연결하기 위한 네트워크 장치일 수도 있다.
외부 단말(130)은 서비스 제공을 위해 호스트 장치(110)를 통해서 모바일 스토리지 장치(100)와 데이터를 송수신하는 장치이다. 몇몇 실시 예에 따르면, 외부 단말(130)은 모바일 스토리지 장치(100)와 동일하거나 유사한 형태의 다른 모바일 스토리지 장치일 수 있다. 이 경우 다른 모바일 스토리지 장치는 다른 호스트 장치를 통해서 호스트 장치(110)와 연결될 수 있다. 다른 실시 예에 따르면, 외부 단말(130)은 네트워크에 연결된 데스크톱 PC, 랩톱, 스마트폰, 태블릿 PC와 같은 컴퓨팅 장치일 수 있다.The
몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 서비스 제공을 위해 개인 간(Peer to peer; P2P) 통신 방식을 통해서 외부 단말(130)과 통신할 수 있다. 여기서, 서비스는 프로그램이 실행되어 네트워크를 통해서 사용자에게 제공될 수 있는 것을 의미한다. 예를 들어, 서비스는 메일링 서비스, 파일 공유 서비스, 미디어 제공 서비스 및 웹 호스팅 서비스 중 어느 하나 이상을 포함할 수 있다. 모바일 스토리지 장치(100)는 호스트 장치(110)에 연결되면 호스트 장치(110)로부터 전력을 공급받을 수 있으며, 서비스를 제공하기 위한 인스트럭션을 실행할 수 있다. 또한, 몇몇 실시 예에 따르면, 서비스는 서버-클라이언트 모델에 따른 온라인 서비스일 수 있다. 즉, 모바일 스토리지 장치(100)가 서버의 기능을 수행하여 클라이언트인 외부 단말(130)에 서비스를 제공할 수 있다.According to some embodiments, the
도 2는 몇몇 실시 예에 따른 모바일 스토리지 장치(100)의 구조를 간단히 도시한 구조도이다. 도 2에 도시된 모바일 스토리지 장치(100)의 구조는 일부 실시 예를 설명하기 위한 것이며, 실시 예에 따라 모바일 스토리지 장치(100)는 다른 구성요소를 더 포함하거나 도 2에 도시된 구성요소 중 일부를 포함하지 않을 수 있다.FIG. 2 is a schematic diagram illustrating a structure of a
몇몇 실시 예에 따른 모바일 스토리지 장치(100)는 커넥터(101), 프로세서(102), 및 스토리지(103) 를 포함할 수 있다. 커넥터(101)는 모바일 스토리지 장치(100)가 호스트 장치(110)와 연결하여 신호를 송수신하기 위한 인터페이스를 포함할 수 있다. 예를 들어, 커넥터(101)는 USB 포트에 연결하기 위한 인터페이스를 포함할 수 있다. 다른 예를 들면, 커넥터(101)는 무선 통신을 수행하는 무선 통신 모듈로 대체될 수도 있다. 또한, 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 인디케이터(indicator)(104)를 더 포함할 수도 있다.The
프로세서(102)는 커넥터(101)를 통해서 모바일 스토리지 장치(100)가 호스트 장치(110)에 전기적으로 연결되면 호스트 장치(110)를 통해서 네트워크(예를 들어, 인터넷)에 연결될 수 있다. 프로세서(102)는 모바일 스토리지 장치(100)가 네트워크에 연결되는 것에 응답하여 스토리지(103)에 저장된 데이터를 이용하여 온라인 서비스를 외부 단말(130)에 제공하기 위한 인스트럭션(instruction)들을 실행할 수 있다. 프로세서(102)는 인스트럭션을 실행하여 모바일 스토리지 장치(100)에 의해 수행되는 동작을 제어할 수 있다.The
프로세서(102)는 커넥터(101)를 통해서 스토리지(103)에 저장된 데이터를 외부로 전송하거나 데이터를 수신할 수 있다. 또한, 프로세서(102)는 스토리지(103)에 데이터를 기록하거나 스토리지(103)로부터 데이터를 읽을 수 있다. 또한, 프로세서(102)는 인디케이터(104)를 제어하여 신호를 출력할 수 있다.The
인디케이터(104)는 프로세서(103)의 제어에 따라 간단한 정보를 출력하기 위한 장치를 의미한다. 몇몇 실시 예에 따르면, 인디케이터(104)는 LED 램프를 포함할 수 있다. 다른 실시 예에 따르면, 인디케이터(104)는 음향을 출력하는 스피커를 포함할 수도 있다.The
스토리지(103)는 데이터를 저장할 수 있는 기록매체를 포함할 수 있다. 예를 들어, 스토리지(103)는 플래시 메모리 타입의 메모리, 솔리드 스테이트 드라이브(Solid State Drive) 타입의 메모리, 실리콘 디스크 드라이브(Silicon Disk Drive) 타입의 메모리, 하드디스크(Hard Disk) 타입의 메모리, 멀티미디어 카드 마이크로(Multimedia Card Micro) 타입의 메모리, 카드 타입의 메모리, 램(Random Access Memory; RAM), SRAM(Static Random Access Memory), 롬(Read-only Memory; ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장 매체를 포함할 수 있다. 스토리지(103)는 서비스를 위해 제공되는 컨텐츠를 저장할 수 있다. 예를 들어, 컨텐츠는 동영상, 사진, 음악 등의 멀티미디어 데이터이거나 전자 문서를 포함할 수 있다. 모바일 스토리지 장치(100)는 스토리지(103)에 저장된 컨텐츠를 외부 단말(130)에 직접 제공할 수 있으므로 별도의 서버에 컨텐츠를 전송할 필요 없이 컨텐츠를 제공할 수 있다.The
몇몇 실시 에에 따르면, 스토리지(103)에는 사적 영역(Private Region), 제한적 공개 영역, 무제한 공개 영역 중 하나 이상이 설정될 수 있다. 사적 영역은 모바일 스토리지 장치(100)의 사용자 이외에는 억세스가 금지되는 영역을 의미한다. 제한적 공개 영역은 임의의 사용자의 읽기 억세스는 허용되고, 쓰기 억세스는 모바일 스토리지 장치(100)의 사용자에게만 허용되는 영역을 의미한다. 무제한 공개 영역은 임의의 사용자에 대해 읽기 억세스와 쓰기 억세스가 허용되는 영역을 의미한다.According to some implementations, the
또한, 다른 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 스토리지(103)의 용량을 확장하여 사용하기 위한 외부 저장매체 연결 포트를 더 포함할 수도 있다.In addition, according to some other embodiments, the
몇몇 실시 예에 따른 모바일 스토리지 장치(100)는 USB 저장 장치를 개조하여 간단하게 구성될 수 있다.The
도 3은 몇몇 실시 예에 따라 모바일 스토리지 장치(100)를 이용하여 서비스를 제공하는 시스템의 구조를 설명하기 위한 도면이다.3 is a diagram illustrating a structure of a system for providing a service using the
호스트 장치(110)에 연결된 모바일 스토리지 장치(100)는 네트워크(10)를 통해서 외부 단말(130)에 온라인 서비스를 제공할 수 있다. 모바일 스토리지 장치(100)가 외부 단말(130)에 연결하고 서비스를 제공하기 위해 장치 인증 서버(121), 플랫폼 인증 서버(122), 중개 서버(123), 컨텐츠 딜리버리 서버(Contents Delivery Server)(124) 및 미디어 포털 서버(125) 등이 시스템에 포함될 수 있다. The
도 3에서 장치 인증 서버(121), 플랫폼 인증 서버(122), 중개 서버(123), 컨텐츠 딜리버리 서버(124) 및 미디어 포털 서버(125)는 별도의 구성요소로 도시되었으나, 반드시 물리적으로 각각 별개의 컴퓨팅 장치로 구성되어야 하는 것은 아니다. 도 3에 장치 인증 서버(121), 플랫폼 인증 서버(122), 중개 서버(123), 컨텐츠 딜리버리 서버(124) 및 미디어 포털 서버(125) 중에서 둘 이상이 하나의 물리적인 컴퓨팅 장치 상에서 가상 머신으로 구현될 수도 있다. 또한, 장치 인증 서버(121), 플랫폼 인증 서버(122), 중개 서버(123), 컨텐츠 딜리버리 서버(124) 및 미디어 포털 서버(125) 중에서 하나 이상이 분산 시스템으로 구성될 수도 있다. 또한, 실시 예에 따라서 시스템은 다른 구성요소를 더 포함하거나, 도 3에 도시된 구성요소 중 일부 구성요소를 생략할 수도 있다.3, the
시스템을 제공하는 제공자 입장에서는 모바일 스토리지 장치(100)의 판매를 위해 제공자로부터 모바일 스토리지 장치(100)를 구매한 사용자에 한해서만 외부 단말(130)에 서비스가 가능하도록 지원할 필요가 있다. 이를 위해, 장치 인증 서버(121)는 모바일 스토리지 장치(100)를 인증할 수 있다.The provider of the system needs to support the
모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)를 구매한 사용자가 호스트 장치(110)를 통해서 네트워크(10)에 최초로 연결된 경우 모바일 스토리지 장치 인증 인스트럭션을 실행할 수 있다. 모바일 스토리지 장치 인증 인스트럭션은 장치 인증 서버(121)를 통해서 모바일 스토리지 장치(100)가 네트워크(10)에 최초로 연결된 경우에 한해서 실행되고, 모바일 스토리지 장치(100)가 장치 인증 서버(121)를 통한 인증이 완료된 이후에는 실행되지 않을 수 있다.The
모바일 스토리지 장치 인증 인스트럭션은 장치 인증 서버(121)에 인증 요청을 송신하는 인스트럭션을 포함할 수 있다. 여기서, 인증 요청은 모바일 스토리지 장치(100)를 식별하는 식별자를 포함할 수 있다. 또한, 식별자는 장치 인증 서버(121)가 시스템의 제공자에 의해 제조된 식별자인지 여부를 판단할 수 있도록 모바일 스토리지 장치(100)의 제조시에 모바일 스토리지 장치(100)에 기록된 장치 식별자일 수 있다.The mobile storage device authentication instruction may include an instruction to send an authentication request to the
또한, 모바일 스토리지 장치 인증 인스트럭션은 장치 인증 서버(121)로부터 인증 성공을 나타내는 데이터가 수신된 경우, 사용자 정보를 입력 받기 위한 그래픽 사용자 인터페이스(GUI)가 표시되기 위한 데이터를 호스트 장치(110)에 제공할 수 있다. 이 경우, 호스트 장치(110)는 디스플레이 장치를 구비한 장치일 수 있다. 사용자 정보를 입력 받기 위한 GUI는 사용자 정보를 통해서 사용자의 계정을 생성하기 위한 회원 가입 프로세스를 진행하는 회원 가입 GUI이거나 또는 사용자 계정에 대한 정보를 입력 받아 로그인 프로세스를 처리하기 위한 로그인 GUI일 수 있다.When the mobile storage device authentication instruction receives data indicating authentication success from the
장치 인증 서버(121)를 통해서 인증이 완료된 모바일 스토리지 장치(100)는 플랫폼 인증 서버(122)로부터 사용자 정보에 매칭된 장치 고유 키를 발급받을 수 있다. 장치 고유 키는 인증이 완료된 모바일 스토리지 장치(100)에 대해 부여되는 비밀 키(Private Key)일 수 있다. 몇몇 실시 예에 따르면, 플랫폼 인증 서버(122)는 보안을 위해 블록 체인(Block Chain)의 노드로 구성될 수 있다. 이 경우, 플랫폼 인증 서버(122)는 블록 체인을 기반으로 분산된 데이터를 기초로 모바일 스토리지 장치(100)에 대한 인증을 수행할 수 있다.The
모바일 스토리지 장치(100)는 발급받은 고유 키를 이용하여 인증을 받을 수 있다. 따라서, 모바일 스토리지 장치(100)는 사용자 정보를 입력 받기 위한 입력 장치나 디스플레이 장치가 없는 인터넷 IP 주소 공유기와 같은 장치에 연결되는 경우에도 인증을 받을 수 있다.The
중개 서버(123)는 모바일 스토리지 장치(100)의 요청에 따라 모바일 스토리지 장치(100)의 인터넷 IP 주소 정보를 등록할 수 있다. 중개 서버(123)는 모바일 스토리지 장치(100)가 외부 단말(130)에 서비스를 제공할 수 있도록 홀 펀칭(Hole Punching)을 수행하여 모바일 스토리지 장치(100)와 외부 단말(130) 사이의 P2P 통신을 연결할 수 있다. 몇몇 실시 예에 따르면, 중개 서버(123)는 모바일 스토리지 장치(100)와 외부 단말(130)이 서로 연결되기 위한 랑데부 서버의 역할을 수행할 수 있다.The
몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 컨텐츠 딜리버리 서버(124)를 통해서 컨텐츠를 외부 단말(130)에 제공할 수 있다. 모바일 스토리지 장치(100)는 낮은 가격에 소형으로 제공되기 위하여 처리 가능한 트래픽에 한계가 있다. 따라서, 모바일 스토리지 장치(100)는 감당하기 어려운 수준의 트래픽이 발생할 경우 컨텐츠를 컨텐츠 딜리버리 서버(124)에 제공하고, 컨텐츠 딜리버리 서버(124)가 컨텐츠를 제공하도록 할 수 있다. 예를 들어, 모바일 스토리지 장치(100)에 저장된 컨텐츠에 대한 리드(read) 억세스 트래픽이 기준치를 초과하는 경우에 모바일 스토리지 장치(100)는 컨텐츠에 대한 리드 억세스 트래픽을 컨텐츠 딜리버리 서버(124)로 리다이렉션(redirection)할 수 있다.According to some embodiments, the
미디어 포털 서버(125)는 외부 단말(130)에 포털(portal) 서비스를 제공할 수 있다. 미디어 포털 서버(125)는 모바일 스토리지 장치(100)에 저장된 컨텐츠를 노출시켜 모바일 스토리지 장치(100)와 P2P 연결된 적 없는 외부 단말들이 컨텐츠에 접속할 수 있는 경로를 제공할 수 있다. 예를 들어, 미디어 포털 서버(125)는 컨텐츠 딜리버리 서버(124)에 저장된 컨텐츠 중에서 선호도가 높은 컨텐츠에 관련된 정보를 표시하고 그 링크를 제공하는 포털 페이지를 외부 단말(130)에 제공할 수 있다. 외부 단말(130)은 포털 페이지를 통해서 컨텐츠에 접근할 수 있다.The
도 4는 몇몇 실시 예에 따라 모바일 스토리지 장치(100)가 서비스를 제공하기 위해 외부 단말(130)과 연결하는 프로세스를 도시한 도면이다.4 is a diagram illustrating a process in which a
먼저, 단계 S410에서 모바일 스토리지 장치(100)는 호스트 장치(110)와 전기적으로 연결될 수 있다. 모바일 스토리지 장치(100)는 호스트 장치(110)와 연결됨으로써 호스트 장치(110)를 통해 네트워크(10)에 연결될 수 있다. 이 경우, 모바일 스토리지 장치(100)는 호스트 장치(110)로부터 전력을 공급 받아서 실시간 운영체제를 부팅할 수 있다. 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)의 프로세서(101)는 부팅이 완료되면 모바일 스토리지 장치(100)의 제조시에 설치된 온라인 서비스 제공 소프트웨어에 포함된 복수의 인스트럭션을 자동으로 실행할 수 있다. 여기서, 온라인 서비스 제공 소프트웨어는 스토리지(103)의 사용자 레벨에서 접근이 불가능한 영역에 설치되거나, 모바일 스토리지 장치(100)의 Read-Only Memory(ROM)에 설치된 것일 수 있다.First, in step S410, the
또한, 모바일 스토리지 장치(100)가 호스트 장치(110)에 연결되는 경우, 모바일 스토리지 장치(100)는 스토리지(103)에 저장된 프로그램이 실행되어 서비스 제공을 위한 시스템에 로그인을 시도할 수 있다. 여기서, 몇몇 실시 예에 따르면 모바일 스토리지 장치(100)는 블록체인 인증을 통해서 인증을 받을 수 있다.In addition, when the
여기서, 로그인 시 모바일 스토리지 장치(100)에 저장된 개인 키(Private Key) 또는 장치 식별자가 유효한지 여부에 따라서 모바일 스토리지 장치(100)가 인증될 수 있다. 여기서, 모바일 스토리지 장치(100)가 유효하게 인증된 경우, 로그인이 완료됨에 따라서 공개 키(Public key)를 이용하여 개인 키를 갱신하고 기록할 수 있다.Here, the
또한, 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100) 또는 플랫폼 인증 서버(122)는 플랫폼 인증 서버(122)가 가진 공개 키와 사용자가 보유한 개인 키를 조합하여 장치 고유 키로 활성화할 수 있다. 이후 모바일 스토리지 장치(100)는 사용자에 대한 인증(예를 들어, 휴대폰을 이용한 인증)의 절차를 거쳐서 플랫폼 인증 서버(122)로부터 장치 고유 키를 갱신 받고 다시 로그인 절차를 속행할 수 있다.Further, according to some embodiments, the
모바일 스토리지 장치(100)에 대한 인증이 완료된 경우, 현재의 모바일 스토리지 장치(100)에 대한 주소 정보와 서비스와 관련된 주요 정보가 중개 서버(123)로 전달되고, 중개 서버(123)에 의해 매칭 테이블이 업데이트될 수 있다. 여기서, 서비스에 관련된 주요 정보는, 예를 들어, 개인 메일 계정, 웹 호스팅 주소 또는 제공되는 미디어 파일의 위치 등을 포함할 수 있다.When the authentication of the
여기서, 모바일 스토리지 장치(100)는 여러 가지 호스트 장치에 연결될 수 있다. 따라서, 모바일 스토리지 장치(100)가 다른 호스트 장치에 연결되거나, 호스트 장치의 IP 주소가 동적 IP 주소인 경우 모바일 스토리지 장치(100)에 할당되는 주소가 변경될 수 있다. 또는, 모바일 스토리지 장치(100)에 할당되는 IP 주소나 외부 단말(130)의 IP 주소가 사설 IP 주소인 경우, 사설 IP 주소를 할당한 네트워크 주소 변환기(Network Address Translator; NAT) 하위의 장비는 자신의 사설 IP 주소만 알 수 있을 뿐 어떤 공인 IP 주소로 외부와 통신하고 있는지 알 수 없다. 또한, NAT의 외부에서 NAT 하위 장비와 통신하는 피어는 상대방의 공인 IP 주소와 NAT가 할당한 포트만 알 수 있으며 사설 IP 주소는 알 수 없다. 또한 NAT 외부의 피어는 먼저 NAT 하위의 장비로 통신을 시작(initiate)할 수 없는 문제가 있다. 따라서, 이 경우에는 모바일 스토리지 장치(100)와 외부 단말(130)이 직접 통신을 시작할 수 없는 문제가 있다.Here, the
따라서, 모바일 스토리지 장치(100)는 외부 단말(130)과 연결하기 위해 모바일 스토리지 장치(100)와 외부 단말(130) 간에 통신이 가능할 있도록 IP 주소와 포트 정보를 확보할 필요가 있다. IP 주소와 포트 정보를 확보하기 위해 중개 서버(123)가 이용될 수 있다. 단계 S420에서 모바일 스토리지 장치(100)는 자동으로 중개 서버(123)에 모바일 스토리지 장치(100)에 등록 요청을 송신할 수 있다. 여기서 등록 요청은 커넥터가 호스트 장치(110)에 연결되었을 때 모바일 스토리지 장치(100)에 할당되는 주소 정보를 포함할 수 있다.Accordingly, the
이후, 단계 S430에서 모바일 스토리지 장치(100)는 중개 서버(123)를 이용하여 외부 단말(130)과 연결하고, 데이터를 P2P 송수신할 수 있다. 여기서, 중개 서버(123)는 모바일 스토리지 장치(100)와 외부 단말(130) 사이의 홀 펀칭(Hole Punching)을 수행할 수 있다.Thereafter, in step S430, the
현재의 인터넷 주소 체계의 방식은 글로벌(global) 주소 영역, 개인(private) 주소 영역들이 네트워크 주소 변환(Network Address Transform)을 통해서 연결되는 주소 체계이다. 따라서, 서로 다른 개인 네트워크에 존재하는 두 피어(peers)인 모바일 스토리지 장치(100) 및 외부 단말(130)이 직접적으로 통신하기 위한 방법이 필요하다. 여기서, 홀 펀칭이란 직접적인 TCP/UDP 통신 등이 불가능한 피어(peer)들 간에 직접적인 통신이 가능할 수 있도록 IP 주소와 포트를 확보하는 것을 의미한다. 홀 펀칭을 이용하여, 서로 다른 네트워크에 존재하는 모바일 스토리지 장치(100)와 외부 단말(130) 간의 P2P 연결을 구성할 수 있다.The current Internet addressing scheme is an addressing scheme in which a global address area and a private address area are connected through a network address transform. Therefore, there is a need for a method for direct communication between the
예를 들어, 모바일 스토리지 장치(100)를 이용하여 메일링 서비스를 제공할 때, 모바일 스토리지 장치(100)는 외부 단말(130)로부터 메일을 수신하거나, 외부 단말(130)로 메일을 전송할 수 있다. 메일을 수신하는 경우를 로 들면, 외부 단말(130)에서 수신자 메일 주소를 포함하는 메일이 발송된 경우, 중개 서버(123)에 의해 모바일 스토리지 장치(100)의 메일 주소와 일치하는 메일이 감지되면, 중개 서버(123)는 발송된 메일이 모바일 스토리지 장치(100)에 의해 제공되는 메일 서버로 전송되고 모바일 스토리지 장치(100)에 저장되도록 할 수 있다.For example, when providing the mailing service using the
또는, 모바일 스토리지 장치(100)를 이용하여 미디어 서비스를 제공하는 경우를 예로 들면, 미디어 포털 서버(125)가 포털 페이지를 통해서 미디어에 대한 재생을 요청 받을 수 있다. 이 경우, 중개 서버(123)는 해당 미디어의 파일을 저장하고 있는 모바일 스토리지 장치(100)와 외부 단말(130)이 그 파일을 송수신할 수 있도록 P2P 연결을 수립시킬 수 있다.Alternatively, when a media service is provided using the
중개 서버(123)는, 예를 들어 메일 서비스의 경우 블록 체인 서버에 의해 업데이트된 매칭 테이블에서 서비스가 정확한 위치에 전달될 수 있도록 서비스를 중개한다. 메일 전송 서비스의 경우 메일 서비스에 대한 사용자 가입 시 등록된 가상 고정 주소에 모바일 스토리지 장치(100)에 동적으로 할당된 주소를 매핑하여 메일이 전송될 수 있다. 미디어 파일을 전송하는 경우, 포털 페이지에 표시된 미디어의 썸네일 등이 사용자 입력에 의해 선택된 경우 그 미디어의 파일의 위치가 가상 고정 주소와 모바일 스토리지 장치(100)에 동적으로 할당된 주소와 매핑하여 미디어 제공 서비스가 제공된다. 웹 호스팅의 경우에도 중개서버에 의해 가상 고정 주소와 동적으로 할당되는 주소를 매핑하여 서비스가 제공될 수 있다.The
도 5 내지 10은 몇몇 실시 예에 따라 모바일 스토리지 장치(100)가 호스트 장치(110)에 연결된 경우에 수행될 수 있는 프로세스를 도시한 도면이다.5 through 10 are diagrams illustrating a process that may be performed when the
도 5를 참조하면, 단계 S501에서 모바일 스토리지 장치(100)가 호스트 장치(110)에 연결되면, 모바일 스토리지 장치(100)가 전력을 공급받아 모바일 스토리 장치(100)에 내장된 운영체제를 부팅하고 네트워크에 연결할 수 있다. 이후, 모바일 스토리지 장치(100)는 단계 S502에서 모바일 스토리지 장치(100)가 네트워크에 최초로 연결된 것인지 여부를 판단할 수 있다. 예를 들어, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)에 저장된 연결 로그를 조회할 수 있다. 여기서, 연결 로그는 모바일 스토리지 장치(100)가 호스트 장치(110)를 통해서 네트워크에 연결된 이력을 저장한 것을 의미할 수 있다. 또는, 다른 예를 들면, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)에 플랫폼 인증 서버(122)로부터 발급된 장치 고유 키가 저장되어 있는지 여부에 따라서 모바일 스토리지 장치(100)가 호스트 장치(110)에 최초로 연결된 것인지 여부를 판단할 수도 있다. 즉, 모바일 스토리지 장치(100)는 장치 고유 키가 조회되지 않는 경우 호스트 장치(110)에 최초로 연결된 상태인 것으로 판단할 수 있다. 또 다른 예를 들면, 모바일 스토리지 장치(100)는 호스트 장치(110)와 연결되었던 이력이 있는지 여부를 나타내는 상태 정보를 저장하고, 그 상태 정보를 이용하여 호스트 장치(110)와의 연결이 최초 연결인지 여부를 판단할 수 있다. 다만, 모바일 스토리지 장치(100)에 호스트 장치(110)와의 연결이 최초 연결인지 여부를 판단하는 방법은 상술한 예시에 한정되어야 하는 것은 아니다.5, when the
사용자가 모바일 스토리지 장치(100)를 구매하여 최초로 호스트 장치(110)에 연결한 경우, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)를 등록하기 위한 인스트럭션들을 실행할 수 있다.The
몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)의 제조시에 설정된 장치 식별자를 이용하여 최초 인증을 수행할 수 있다. 도 6을 참조하면, 도 5의 단계 S502에서 모바일 스토리지 장치(100)가 호스트 장치(110)에 최초로 연결된 것으로 판단된 이후에, 단계 S511에서 모바일 스토리지 장치(100)는 장치 식별자를 포함하는 인증 요청을 장치 인증 서버(121)로 전송할 수 있다. 여기서, 장치 식별자는 모바일 스토리지 장치(100)를 식별하기 위한 고유의 정보일 수 있다. 또한, 장치 식별자는 모바일 스토리지 장치(100)가 제조될 때 모바일 스토리지 장치(100)에 설정된 정보일 수 있다. 또한, 장치 식별자는 장치 인증 서버(121)에도 저장되어 있을 수 있다. 장치 인증 서버(121)는 저장되어 있는 장치 식별자와 모바일 스토리지 장치(100)로부터 수신된 장치 식별자를 비교하여 모바일 스토리지 장치를 식별 내지 인증 할 수 있다.According to some embodiments, the
단계 S512에서 장치 인증 서버(121)에 의해 모바일 스토리지 장치(100)의 인증이 성공하면, 장치 인증 서버(121)는 인증 결과를 플랫폼 인증 서버(122)로 전달할 수 있다. 인증 결과를 전달받은 플랫폼 인증 서버(122)는 장치 고유 키를 활성화하고 장치 고유 키를 모바일 스토리지 장치(100)에 발급할 수 있다(S513). If the
몇몇 실시 예에 따르면, 플랫폼 인증 서버(122)는 장치 인증 서버(121)로부터 인증 결과와 함께 장치 식별자를 수신하고, 장치 식별자와 플랫폼 인증 서버(122)에 저장된 공개 키를 조합하여 장치 고유 키를 생성할 수 있다.According to some embodiments, the
또는, 다른 실시 예에 따르면, 플랫폼 인증 서버(122)는 모바일 스토리지 장치(100)에 저장된 장치 고유 키가 유효한지 확인 하고, 장치 고유 키가 유효한 경우 모바일 스토리지 장치(100)의 인증을 처리하고 공개 키와 조합하여 장치 고유 키를 갱신할 수 있다. 플랫폼 인증 서버(122)가 장치 고유 키를 발급하는 프로세스는 실시 예에 따라 다르게 변경될 수도 있다.Alternatively, according to another embodiment, the
몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 사용자로부터 사용자 정보를 입력 받아 모바일 스토리지 장치(100)의 사용자에 대한 인증을 받을 수도 있다. 도 7을 참조하면, 단계 S521에서 모바일 스토리지 장치(100)는 호스트 장치(110)를 통해서 회원 가입 GUI(Graphic User Interface)를 디스플레이할 수 있다. 이 경우, 호스트 장치(110)는 디스플레이 장치를 구비하거나, 별도의 디스플레이 장치를 통해서 화면을 출력할 수 있는 장치일 수 있다. 예를 들어, 호스트 장치(110)는 PC나 스마트폰(smartphone)과 같은 인터넷에 연결된 컴퓨팅 장치일 수 있다. 또는, 호스트 장치(110) 커넥티드 TV(connected television)와 같이 인터넷에 연결된 디스플레이 장치일 수도 있다. 또한, 실시 예에 따라서, 단계 S521에서 모바일 스토리지 장치(100)는 호스트 장치(110)와 별개의 디스플레이 장치를 통해서 회원 가입 GUI를 디스플레이할 수도 있다.According to some embodiments, the
몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 호스트 장치(110)가 웹 브라우저를 통해 미리 설정된 URL(Uniform Resource Locator)을 이용하여 회원 가입 GUI를 포함하는 웹 페이지를 표시하도록 할 수 있다. 또는, 다른 실시 예에 따르면, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)에 내장된 애플리케이션을 실행하여 회원 가입 GUI를 포함하는 애플리케이션 실행 화면을 호스트 장치(110)를 통해서 출력할 수도 있다.According to some embodiments, the
이후, 사용자가 회원 가입 GUI를 이용하여 회원 가입 정보를 입력하면, 단계 S522에서 모바일 스토리지 장치(100)는 호스트 장치(110)를 통해서 회원 가입 정보를 획득할 수 있다. 모바일 스토리지 장치(100)는 획득된 회원 가입 정보를 플랫폼 인증 서버(122)에 전송하여 모바일 스토리지 장치(100)를 회원 가입 정보를 입력한 사용자의 장치로 등록할 수 있다. 이 경우, 플랫폼 인증 서버(122)는 단계 S523에서 모바일 스토리지 장치(100)를 식별하기 위한 정보와 회원 가입 정보에 포함된 사용자 정보를 매칭하여 등록할 수 있다.Thereafter, when the user inputs membership subscription information using the subscription GUI, the
다른 몇몇 실시 예에 따르면 모바일 스토리지 장치(100)는 장치 식별자와 함께 회원 가입 정보를 장치 인증 서버(121)로 전송할 수도 있다. 장치 인증 서버(121)는 먼저 장치 식별자가 유효한지 여부를 검증할 수 있다. 장치 식별자가 유효한 경우, 장치 인증 서버(121)는 회원 가입 정보에 포함된 사용자 정보를 등록할 수 있다.According to some other embodiments, the
또 다른 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 장치 식별자를 이용하여 장치 인증 서버(121)로부터 장치에 대한 인증을 받은 경우에 한해서 회원 가입 프로세스를 실행할 수도 있다. 도 8을 참조하면, 먼저 단계 S531에서 모바일 스토리지 장치(100)는 장치 식별자를 포함하는 인증 요청을 장치 인증 서버(121)로 전송할 수 있다.According to some other embodiments, the
이후, 단계 S532에서 모바일 스토리지 장치(100)는 장치 식별자를 이용하여 인증에 성공한 경우, 인증이 성공하였음을 나타내는 정보를 수신할 수 있다. 인증에 성공한 경우, 단계 S533에서 모바일 스토리지 장치(100)는 호스트 장치(100)를 통해서 회원 가입 GUI를 디스플레이할 수 있다.Thereafter, in step S532, when the
이후, 디스플레이된 회원 가입 GUI에 사용자가 회원 가입 정보를 입력하면, 단계 S534에서 모바일 스토리지 장치(100)는 입력된 회원 가입 정보를 획득할 수 있다. 또한 모바일 스토리지 장치(100)는 회원 가입 정보를 플랫폼 인증 서버(122)에 전송할 수 있다. 실시 예에 따라서, 모바일 스토리지 장치(100)는 회원 가입 정보를 장치 인증 서버(121)를 통해서 플랫폼 인증 서버(122)로 전달할 수도 있다.Thereafter, when the user inputs the membership subscription information into the displayed subscription GUI, the
플랫폼 인증 서버(122)는 모바일 스토리지 장치(100)가 최초로 로그인한 경우, 모바일 스토리지 장치(100)에 대한 장치 고유키를 생성할 수 있다. 모바일 스토리지 장치(100)는 플랫폼 인증 서버(122)로부터 생성된 장치 고유키를 획득할 수 있다(S535).The
모바일 스토리지 장치(100)는 입력된 회원 가입 정보를 플랫폼 인증 서버(122)에 등록할 수 있다. 여기서, 플랫폼 인증 서버(122)는 생성된 장치 고유키를 회원 가입 정보와 매칭하여 저장할 수 있다(S536). 회원 가입 정보가 플랫폼 인증 서버(122)에 등록되면, 모바일 스토리지 장치(100)는 회원 가입 정보에 포함된 로그인 정보를 이용하여 플랫폼 인증 서버(122)에 로그인할 수 있다.The
몇몇 실시 예에 따르면, 장치 고유키를 보유한 모바일 스토리지 장치(100)가 호스트 장치(110)에 연결될 경우, 플랫폼 인증 서버(122)가 모바일 스토리지 장치(100)의 고유키의 유효성을 검증할 수 있다. 모바일 스토리지 장치(100)의 고유키가 유효한 경우, 고유키에 매칭되어 저장된 회원 가입 정보를 조회하고, 조회된 회원 가입 정보에 포함된 로그인 정보를 이용하여 모바일 스토리지 장치(100)에 대한 로그인 절차를 수행할 수 있다. 즉, 구매한 모바일 스토리지 장치(100)를 사용자가 최초 사용시에 회원 가입 정보와 매칭하여 등록한 이후에는 사용자가 별도로 로그인 정보를 입력하지 않고도 장치 고유키를 이용하여 모바일 스토리지 장치(100)가 플랫폼 인증 서버(122)에 로그인할 수 있다. 따라서, 모바일 스토리지 장치(100)가 입력 장치가 없는 호스트 장치(110)(예를 들어, 인터넷 IP 주소 공유기)에 연결된 경우에도 플랫폼 인증 서버(122)에 로그인할 수 있다. 플랫폼 인증 서버(122)에 로그인한다고 함은 플랫폼 인증 서버(122)로부터 사용자에 대한 인증을 받아 모바일 스토리지 장치(100)의 사용자를 확인하는 동작을 의미한다.According to some embodiments, when the
도 7 및 도 8에 도시된 프로세스에서, 회원 가입 정보 및 회원 가입 GUI는, 사용자의 회원 가입 정보가 기 등록되어 있는 경우, 로그인 정보 및 로그인 정보를 입력 받기 위한 로그인 GUI일 수도 있다. 사용자의 회원 가입 정보는 장치 인증 서버(121)에 등록되어 있을 수 있다. 또는, 사용자의 회원 가입 정보는 플랫폼 인증 서버(122)에 등록되어 있을 수도 있다. 여기서, 로그인 정보는 사용자가 로그인을 수행하기 위한 정보일 수 있다. 예를 들어, 로그인 정보는 사용자 ID, 패스워드 및 생체 정보 중 하나 이상을 포함할 수 있다.In the process shown in FIGS. 7 and 8, the membership subscription information and the membership subscription GUI may be a login GUI for receiving login information and login information when the subscription information of the user is pre-registered. The membership information of the user may be registered in the
도 5의 단계 S502에서 모바일 스토리지 장치(100)가 호스트 장치(110)를 통해서 네트워크에 연결된 이력이 있는 것으로 판단된 경우, 모바일 스토리지 장치(100)는 플랫폼 인증 서버(122)에 로그인하고 외부 단말(130)과 연결될 수 있다. 또는, 모바일 스토리지 장치(100)가 플랫폼 인증 서버(122)에 등록이 완료(S513, S523 또는 S536)된 이후에도, 모바일 스토리지 장치(100)는 플랫폼 인증 서버(122)에 로그인하고 외부 단말(130)과 연결하기 위한 인스트럭션을 실행할 수 있다.If it is determined in step S502 of FIG. 5 that there is a history that the
도 9를 참조하면, 몇몇 실시 예에 따른 모바일 스토리지 장치(100)는 단계 S541에서 플랫폼 인증 서버(122)에 인증 요청을 전송할 수 있다. 여기서, 몇몇 실시 예에 따르면, 플랫폼 인증 서버(122)로 전송되는 인증 요청은 모바일 스토리지 장치(100)가 발급 받은 장치 고유키에 대한 정보를 포함할 수 있다. 장치 고유키에 대한 정보는 장치 고유키 자체이거나 장치 고유키와 관련된 정보일 수 있다. 또는 다른 몇몇 실시 예에 따르면, 플랫폼 인증 서버(122)로 전송되는 인증 요청은 사용자에 대한 로그인 정보를 포함할 수도 있다.Referring to FIG. 9, the
플랫폼 인증 서버(122)로 전송된 인증 요청에 상응하는 인증에 성공하면, 단계 S543에서 중개 서버(123)에 모바일 스토리지 장치(100)의 주소 정보가 등록될 수 있다. 인증에 실패할 경우, 모바일 스토리지 장치(100)는 다른 방식으로 인증을 시도하거나, 인증을 재차 시도하거나, 또는 프로세스를 종료할 수 있다. 또한, 몇몇 실시 예에 따르면, 플랫폼 인증 서버(122)로부터 인증 실패를 가리키는 데이터가 수신되는 경우, 모바일 스토리지 장치(100)의 프로세서(101)는 인디케이터(104)가 인증 실패에 대한 상태 정보를 출력할 수 있도록 하는 제어 신호를 출력할 수 있다. 여기서, 주소 정보는 모바일 스토리지 장치(100)에 현재 할당된 IP 주소를 포함할 수 있다. 실시 예에 따라서, 단계 S543에서 모바일 스토리지 장치(100)는 주소 정보를 플랫폼 인증 서버(122)로 전달하고, 플랫폼 인증 서버(122)가 주소 정보를 중개 서버(123)에 등록할 수 있다. 또는, 모바일 스토리지 장치(100)가 인증에 성공하였음을 나타내는 데이터를 수신하고, 수신된 데이터에 대한 응답으로 모바일 스토리지 장치(100)의 주소 정보를 중개 서버(123)에 전송할 수도 있다. 또는, 모바일 스토리지 장치(100)는 다른 프로세스를 통해서 주소 정보를 중개 서버(123)에 등록할 수도 있다.If the authentication corresponding to the authentication request transmitted to the
중개 서버(123)에 모바일 스토리지 장치(100)의 주소 정보가 등록되면, 단계 S544에서 모바일 스토리지 장치(100)는 중개 서버(122)를 이용하여 외부 단말(130)과 홀 펀칭 프로세스를 통해서 연결될 수 있다. 모바일 스토리지 장치(100)와 외부 단말(130) 사이에 홀 펀칭을 수행하는 방법은 실시 예에 따라 변경될 수 있다. 예를 들어, 실시 예에 따라서 모바일 스토리지 장치(100)와 외부 단말(130) 사이의 홀 펀칭은 중계(Relaying) 방식을 통해서 수행될 수도 있으며, 연결 역전(Connection Reversal) 방식에 의해서 수행될 수도 있다.When the address information of the
모바일 스토리지 장치(100)와 외부 단말(130)이 홀 펀칭 방식으로 P2P 데이터 송수신을 하므로, 사용자는 외부에 위치하는 서버에 컨텐츠를 업로드할 필요 없이 자신이 가진 모바일 스토리지 장치(100)의 스토리지(103)에 저장된 컨텐츠만으로 온라인 서비스를 제공할 수 있다.Since the
따라서, 클라이언트의 역할을 하는 외부 단말(130)이 서버에 접근하는 것과 같이 모바일 스토리지 장치(100)에 연결될 수 있다. 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)의 주소 정보와 매칭된 회원 가입 정보에 기초하여 URL(Uniform Resource Locator)이 구성될 수 있다. 예를 들어, 회원 가입 정보에 포함된 사용자 ID가 "username"인 경우, 중개 서버(123)는 모바일 스토리지 장치(100)에 대한 URL은 "https://username.hashblk.com/"일 수 있다. 외부 단말(130)이 "https://username.hashblk.com/video/ucc.mp4"에 대한 주소 정보를 중개 서버(123)에 요청할 경우, 중개 서버(123)는 "https://username.hashblk.com/"에 상응하는 모바일 스토리지 장치(100)의 주소 정보를 중개 서버(123)에 저장된 매칭 테이블에서 조회할 수 있다. 중개 서버(123)는 조회된 주소 정보를 이용하여 모바일 스토리지 장치(100)가 외부 단말(130)과 연결되도록 할 수 있다. 이 경우, 외부 단말(130)은 모바일 스토리지 장치(100)의 스토리지(103)의 "video" 폴더에 저장된 "ucc.mp4"라는 파일을 제공 받을 수 있다.Accordingly, the
다만, 모바일 스토리지 장치(100)가 서버-클라이언트 모델의 서비스에서 서버의 기능을 하기 위해서는, 클라이언트가 고정된 IP 주소를 가지는 서버에 연결하듯이, 외부 단말(130)에 모바일 스토리지 장치(100)에 고정된 주소를 이용하여 연결 가능할 필요가 있다. 그러나, 모바일 스토리지 장치(100)가 동적 IP 주소를 가지는 호스트 장치(110)를 통해서 연결되거나, 모바일 스토리지 장치(100)가 연결된 호스트 장치(110)가 변경되는 경우 모바일 스토리지 장치(100)에 접근하기 위한 주소가 변경될 수 있다. 따라서, 모바일 스토리지 장치(100)는 도 10의 단계 S551에서 모바일 스토리지 장치(100)의 주소 정보를 확인하고, 단계 S552에서 모바일 스토리지 장치(100)의 주소 정보가 변경되었는지 여부를 판단할 수 있다. 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)의 주소 정보가 중개 서버(123)에 등록된 주소 정보와 일치하는지 여부를 판단할 수 있다. 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)에 연결된 호스트 장치(110)가 변경되거나 호스트 장치(110)의 주소 정보가 변경된 경우 모바일 스토리지 장치(100)의 주소 정보가 변경된 것으로 판단할 수 있다.In order for the
주소 정보가 변경된 경우, 모바일 스토리지 장치(100)는 단계 S553에서 중개 서버(123)에 모바일 스토리지 장치(100)의 확인된 주소 정보를 포함하는 주소 정보 업데이트 요청을 중개 서버(123)에 전송할 수 있다. 모바일 스토리지 장치(100)가 자신의 주소 정보를 확인하여 주소 정보가 변경된 경우 고정된 주소에 매칭된 모바일 스토리지 장치(100)의 주소 정보를 업데이트할 수 있다. 따라서, 고정된 주소를 이용하여 외부 단말(130)이 모바일 스토리지 장치(100)에 연결될 수 있다.If the address information is changed, the
도 11은 몇몇 실시 예에 따라 중개 서버(123)가 모바일 스토리지 장치(100)와 외부 단말(130) 사이에 홀 펀칭(Hole Punching)을 수행하는 프로세스를 설명하기 위한 도면이다.11 is a diagram for explaining a process in which the
모바일 스토리지 장치(100)는 단계 S1110에서 중개 서버(123)에 주소 정보를 포함하는 등록 요청을 전송할 수 있다. 등록 요청을 수신한 중개 서버(123)는 수신된 주소 정보에 따라서 매칭 테이블을 업데이트할 수 있다. 매칭 테이블은 모바일 스토리지 장치(100)의 주소 정보를 다른 정보와 매칭하여 저장된 데이터를 의미한다. 다른 정보는, 예를 들어, 모바일 스토리지 장치(100)를 식별하기 위한 정보, 사용자를 식별하기 위한 로그인 정보, 및 모바일 스토리지 장치(100)에 의해 제공되는 서비스에 대한 정보 중 하나 이상을 포함할 수 있다.The
모바일 스토리지 장치(100)에 할당된 IP 주소가 사설 IP 주소인 경우, 모바일 스토리지 장치(100)는 공인 IP 주소는 알 수 없다. 공인 IP 주소를 획득하기 위해, 단계 S1110에서 모바일 스토리지 장치(100)는 중개 서버(123)에 패킷을 전송할 수 있다. 송신된 패킷의 헤더에는 NAT가 할당 받은 공인 IP 주소와 NAT가 외부 단말(130)에 부여한 포트가 기록된다. 따라서 중개 서버(123)는 모바일 스토리지 장치(100)가 NAT 외부와 통신을 위해 사용하는 공인 IP 주소 및 포트를 알 수 있다. 필요시 중개 서버(123)는 모바일 스토리지 장치(100)에 모바일 스토리지 장치(100)에 대한 공인 IP 주소 및 포트를 통지할 수 있다. 이 과정을 통해서 모바일 스토리지 장치(100)는 NAT 외부와 통신을 위해 사용되는 공인 IP 주소 및 포트를 알 수 있다.If the IP address assigned to the
이후, 단계 S1130에서 외부 단말(130)이 중개 서버(123)에 모바일 스토리지 장치(100)의 주소 정보에 대한 주소 정보 요청을 전송할 수 있다. 몇몇 실시 예에 따르면, 주소 정보 요청은 모바일 스토리지 장치(100)의 주소 정보를 매칭 테이블에서 조회하기 위한 정보를 포함할 수 있다. 예를 들어, 모바일 스토리지 장치(100)가 메일을 수신하는 메일 수신 서비스를 이용하여 외부 단말(130)에 메일을 전송하고자 하는 경우, 외부 단말(130)은 메일 주소를 포함하는 주소 정보 요청을 전송할 수 있다. 이 경우, 중개 서버(123)는 메일 주소에 상응하는 모바일 스토리지 장치(100)의 주소 정보를 조회할 수 있다. Then, in step S1130, the
다른 예를 들면, 모바일 스토리지 장치(100)가 제공하는 미디어 공유 서비스를 통해 미디어 컨텐츠를 제공 받고자 하는 경우, 외부 단말(130)은 미디어 파일의 위치를 나타내는 URL을 포함하는 주소 정보 요청을 중개 서버(123)에 전송할 수 있다.For example, when receiving media content through the media sharing service provided by the
또 다른 예를 들면, 외부 단말(130)이 모바일 스토리지 장치(100)로 미디어 컨텐츠를 전송하고자 하는 경우, 외부 단말(130)은 모바일 스토리지 장치(100)의 사용자 ID를 포함하는 주소 정보 요청을 중개 서버(123)에 전송할 수 있다.For example, if the
또 다른 예를 들면, 외부 단말(130)이 모바일 스토리지 장치(100)의 웹호스팅 서비스를 통해서 웹 페이지를 제공 받고자 하는 경우, 외부 단말(130)은 웹 페이지의 위치를 나타내는 URL을 포함하는 주소 정보 요청을 중개 서버(123)에 전송할 수 있다.In another example, when the
이후, 단계 S1140에서, 중개 서버(123)는 주소 정보 요청에 대한 응답으로 조회된 주소 정보를 외부 단말(130)로 전송할 수 있다. 몇몇 실시 예에 따르면, 중개 서버(123)가 외부 단말(130)에 전송하는 주소 정보는 모바일 스토리지 장치(100)와 관련된 공인 IP 주소, 사설 IP 주소 및 포트 정보를 포함할 수 있다.Thereafter, in step S1140, the
이후, 단계 S1150에서, 외부 단말(130)은 중개 서버(123)로부터 획득된 주소 정보를 이용하여 모바일 스토리지 장치(100)에 패킷을 전송할 수 있다. 단계 S1150에서, 외부 단말(130)은 사설 IP 주소 및 포트에 대해 패킷을 전송할 수 있다. 이후 단계 S1160에서 모바일 스토리지 장치(100)에 외부 단말(130)이 전송한 패킷에 대한 응답 패킷을 외부 단말(130)로 전송하는 경우, 외부 단말(130)은 패킷을 전송한 사설 IP 주소 및 포트를 기초로 모바일 스토리지 장치(100)와 P2P 송수신을 할 수 있다.Thereafter, in step S1150, the
단계 S1150에서 사설 IP 주소 및 포트로 전송한 패킷에 대한 응답이 없을 경우, 외부 단말(130)은 공인 IP 주소 및 포트로 패킷을 전송할 수 있다. 이후, 모바일 스토리지 장치(100)로부터 응답 패킷이 외부 단말(130)로 전송되는 경우(S1160), 외부 단말(130)은 공인 IP 주소 및 포트를 이용하여 모바일 스토리지 장치(100)와 P2P 송수신을 수행할 수 있다(S1170).If there is no response to the private IP address and the packet transmitted to the port in step S1150, the
공인 IP 주소 및 포트로 전송된 패킷에 대해서도 응답 패킷이 수신되지 않을 경우, 외부 단말(130)은 중개 서버(123)에 패킷의 송수신을 위임할 수도 있다.If no response packet is received for a packet transmitted to the public IP address and port, the
또한, 외부 단말(130)과 모바일 스토리지 장치(100)가 서로 반대의 동작을 실행하여 홀 펀칭이 시도될 수도 있다. 홀 펀칭이 성공하여 외부 단말(130)과 모바일 스토리지 장치(100)간의 연결이 수립된 경우, 외부 단말(130) 및 모바일 스토리지 장치(100) 중 적어도 하나는 주기적으로 외부 단말(130)과 모바일 스토리지 장치(100) 간의 연결이 유효한지 여부를 확인기 위한 하트비트(Heartbeat) 메시지를 발송할 수 있다.Also, hole punching may be attempted by the
도 12는 몇몇 실시 예에 따른 매칭 테이블(1200)의 예시를 도시한 도면이다.12 is a diagram illustrating an example of a matching table 1200 according to some embodiments.
몇몇 실시 예에 따르면, 매칭 테이블(1200)은 장치 식별자(1211), 공인 IP 주소(1212), 사설 IP 주소(1213), 포트 정보(1214), 사용자 ID(1215), 패스워드(1216) 및 장치 고유키(1217)를 포함할 수 있다. 다만, 도 12에 도시된 매칭 테이블(1200)은 몇몇 실시 예의 설명을 위한 예시일 뿐이다. 매칭 테이블(1200)은 도 12에 도시된 항목과 다른 항목을 포함하거나, 도 12에 도시된 항목 중 일부를 포함하지 않거나, 또는 다른 항목을 더 포함할 수도 있다.According to some embodiments, the matching table 1200 includes a
도 13 내지 15는 몇몇 실시 예에 따라 개인 간(Peer to peer; P2P) 파일 공유 방식을 이용하여 컨텐츠를 제공하는 방법을 설명하기 위한 도면이다.13 to 15 are diagrams for explaining a method of providing contents using a peer-to-peer (P2P) file sharing scheme according to some embodiments.
도 13을 참조하면, 제1 모바일 스토리지 장치(100-1)는 컨텐츠(1)를 저장하고 있을 수 있다. 여기서, 컨텐츠(1)는 데이터 전송을 통해 공유될 수 있는 객체일 수 있다. 예를 들어, 컨텐츠(1)는 음향 파일이나 동영상 파일과 같은 미디어 파일을 포함하거나, 또는 텍스트를 포함하는 전자 문서일 수 있다. 또한 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2)는 중개 서버(123)에 등록된 장치일 수 있다. 여기서, 중개 서버(123)는 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2)에 저장된 컨텐츠에 대한 정보를 포함하는 매칭 테이블을 가질 수 있다.Referring to FIG. 13, the first mobile storage device 100-1 may store the
중개 서버(110)는 제1 모바일 스토리지 장치(100-1)에 저장된 컨텐츠(1)가 제2 모바일 스토리지 장치(100-2)에 저장될 수 있도록 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2)를 연결시킬 수 있다. 예를 들어, 중개 서버(123)는 제2 모바일 스토리지 장치(100-2)가 컨텐츠(1)에 대한 요청을 전송한 경우 제1 모바일 스토리지 장치(100-2)와 제2 모바일 스토리지 장치(100-2) 사이의 연결을 중개할 수 있다. 또는, 다른 예를 들면, 컨텐츠(1)에 대한 트래픽이 증가하면, 제1 모바일 스토리지 장치(100-1) 주변의 처리되는 트래픽의 양이 작거나 사용 가능한 저장 공간이 많은 제2 모바일 스토리지 장치(100-2)를 검색할 수도 있다. 여기서, 중개 서버(123)는 제2 모바일 스토리지 장치(100-2)가 컨텐츠(1)를 저장하고 있음을 나타내는 정보를 매칭 테이블에 업데이트할 수 있다. 도 14에 도시된 바와 같이, 제2 모바일 스토리지 장치(100-2)는 제1 모바일 스토리지 장치(100-1)로부터 컨텐츠(1)를 수신하고 저장할 수 있다.The
이후, 중개 서버(123)가 제3 모바일 스토리지 장치(100-3)로부터 컨텐츠(1)에 대한 제공 요청을 수신할 수 있다. 예를 들어, 제3 모바일 스토리지 장치(100-3)의 사용자에 의해 미디어 포털 서버(125)에서 제공하는 포탈 페이지에 표시된 컨텐츠(1)에 대한 항목이 선택된 경우, 제3 모바일 스토리지 장치(100-3)는 미디어 포탈 서버(125)에 컨텐츠(1)에 대한 주소 정보를 저장된 중개 서버(123)로 전달할 수 있다. 중개 서버(123)는 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2) 중 하나 이상과 제3 모바일 스토리지 장치(100-3)사이의 연결을 중개할 수 있다. 이 경우, 도 15에 도시된 바와 같이, 제3 모바일 스토리지 장치(100-3)는 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2) 중 어느 하나로부터 컨텐츠(1)를 수신하거나, 또는 제1 모바일 스토리지 장치(100-1) 및 제2 모바일 스토리지 장치(100-2)로부터 컨텐츠(1)를 분할하여 수신할 수 있다.Thereafter, the
도 13 내지 도 15에서 도시된 바와 같이 다수의 모바일 스토리지 장치들 간에 P2P 송수신을 통해서 컨텐츠(1)를 공유하여, 컨텐츠(1)를 제공할 수 있는 모바일 스토리지 장치의 수를 증가시킬 수 있다. 따라서, 컨텐츠(1)를 공유하기 위한 트래픽이 증가하더라도 한 모바일 스토리지 장치에 트래픽이 집중되어 과부하가 발생하는 것을 방지할 수 있다.As shown in FIGS. 13 to 15, it is possible to increase the number of mobile storage devices capable of sharing
도 16은 몇몇 실시 예에 따라 모바일 스토리지 장치(100)가 컨텐츠 딜리버리 서버(124)를 이용하여 컨텐츠를 제공하는 방법을 설명하기 위한 도면이다.FIG. 16 is a view for explaining a method of providing content using a
단계 S1610에서, 모바일 스토리지 장치(100)는 모바일 스토리지 장치(100)에 저장된 컨텐츠에 대한 리드 억세스 트래픽(read access traffic)을 산출할 수 있다. 즉, 모바일 스토리지 장치(100)는 컨텐츠에 대한 요청이 발생하는 양을 산출할 수 있다. 이후, 단계 S1620에서, 모바일 스토리지 장치(100)는 산출된 리드 억세스 트래픽이 기준치를 초과하는지 여부를 판단할 수 있다. 다른 실시 예에 따르면, S1610 및 S1620은 중개 서버(123)에 의해서 수행될 수도 있다.In step S1610, the
리드 억세스 트래픽이 기준치를 초과하는 경우, 단계 S1630에서 모바일 스토리지 장치(100)는 그 컨텐츠를 컨텐츠 딜리버리 서버(124)에 송신할 수 있다. 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 컨텐츠를 컨텐츠 딜리버리 서버(124)에 송신할 경우, 컨텐츠가 컨텐츠 딜리버리 서버(124)에 송신된 상태 정보를 출력하기 위해 인디케이터(104)의 출력을 제어하는 제어 신호를 출력할 수 있다.If the read access traffic exceeds the reference value, the
이후, 모바일 스토리지 장치(100)는 단계 S1640에서 컨텐츠에 대한 리드 억세스가 수신되는 경우, 단계 S1650에서 수신된 리드 억세스를 컨텐츠 딜리버리 서버로 리다이렉션(redirection)할 수 있다.Thereafter, when the read access to the content is received in step S1640, the
즉, 컨텐츠가 다수의 사용자에 의해 요청될 경우, 트래픽을 처리할 수 있는 용량에 한계가 있는 모바일 스토리지 장치(100)가 컨텐츠에 대한 리드 억세스를 충분히 처리하지 못할 수도 있다. 따라서, 모바일 스토리지 장치(100)는 요청되는 횟수가 많은 컨텐츠는 컨텐츠 딜리버리 서버(124)에 업로드하여 컨텐츠 딜리버리 서버(124)가 컨텐츠를 제공하도록 할 수 있다.That is, when the content is requested by a plurality of users, the
또한, 컨텐츠 딜리버리 서버(124)에 업로드된 컨텐츠는 그 컨텐츠에 대한 리드 억세스 트래픽이 기준치를 하회하게 되면 컨텐츠 딜리버리 서버(124)에서 비활성화 또는 삭제될 수 있다.In addition, the content uploaded to the
도 17은 몇몇 실시 예에 따라 컨텐츠가 미디어 포털 서버(125)에서 제공하는 미디어 포털 서비스를 통해 노출된 경우에 수행될 수 있는 프로세스를 도시한 도면이다.17 is a diagram illustrating a process that can be performed when the content is exposed through the media portal service provided by the
미디어 포털 서버(125)는 모바일 스토리지 장치(100)에 의해 공유 대상이 되는 컨텐츠 중 하나 이상에 대한 정보를 노출시킬 수 있다. 예를 들어, 미디어 포털 서버(125)는 리드 억세스가 다수 발생한 컨텐츠나 미디어 포털 서버(125)의 관리자에 의해 선정된 컨텐츠에 대한 정보를 노출시킬 수 있다. 또한, 미디어 포털 서버(125)의 미디어 포털 서비스를 통해 노출된 컨텐츠는 리드 억세스가 다수 발생하는 컨텐츠이므로 컨텐츠 딜리버리 서버(124)에 업로드된 컨텐츠일 수 있다.The
미디어 포털 서버(125)는 모바일 스토리지 장치(100)에 저장된 컨텐츠를 미디어 포털 서비스에 노출시킨 경우, 모바일 스토리지 장치(100)에 컨텐츠가 미디어 포털 서비스에 노출된 상태임을 나타내는 데이터를 전송할 수 있다. 단계 S1710에서 모바일 스토리지 장치(100)는 컨텐츠가 미디어 포털 서비스에 노출된 것을 가리키는 데이터를 수신하면, 단계 S1720에서 모바일 스토리지 장치(100)가 제공하는 컨텐츠가 미디어 포털 서비스에 노출된 상태임을 나타내는 상태 정보를 출력하도록 인디케이터(104)를 제어할 수 있다.When the content stored in the
모바일 스토리지 장치(100)를 통해서 컨텐츠를 공유하는 사용자는 모바일 스토리지 장치(100)에 저장된 컨텐츠에 대한 공유를 중단하기 위해 모바일 스토리지 장치(100)와 호스트 장치(110) 사이의 연결을 해제할 수 있다. 이 경우, 컨텐츠 딜리버리 서버(124)를 통한 컨텐츠의 공유도 중단되어야 한다. 따라서, 단계 S1730에서 모바일 스토리지 장치(100)의 호스트 장치(110)에 대한 연결이 해제된 경우, 컨텐츠는 단계 S1740에서 컨텐츠 딜리버리 서버(124)에서 비활성화되거나 삭제될 수 있다.A user sharing content via the
도 18은 몇몇 실시 예에 따라 모바일 스토리지 장치(100)가 다른 모바일 스토리지 장치에 컨텐츠를 전송하는 프로세스를 도시한 도면이다.18 is a diagram illustrating a process by which a
단계 S1810에서, 중개 서버(123)는 송신측 모바일 스토리지 장치(100-4) 또는 송신측 모바일 스토리지 장치(100-4)에 연결된 호스트 장치(110)를 통해서 수신자 선택 사용자 인터페이스(User Interface; UI)를 제공할 수 있다. 여기서, 수신자 선택 UI는 송신측 모바일 스토리지 장치(100)의 사용자가 컨텐츠를 수신할 사용자를 선택하는 입력을 받기 위한 UI일 수 있다. 예를 들어, 도 19를 참조하면, 수신자 선택 UI는 송신측 모바일 스토리지 장치(100-4)의 사용자에 대해 관계가 설정된 사용자들의 목록을 포함하는 그래픽 사용자 인터페이스(Graphic User Interface; GUI)(2)일 수 있다.In step S1810, the
이후, 단계 S1820에서, 중개 서버(123)는 송신측 모바일 스토리지 장치(100-4)로부터 수신자 선택 UI를 통해 선택된 사용자에 대한 컨텐츠의 송신 요청을 수신할 수 있다. 이 경우, 중개 서버(123)는 선택된 사용자에 매칭되어 저장된 수신측 모바일 스토리지 장치(100-5)를 조회할 수 있다.Thereafter, in step S1820, the mediating
이후, 단계 S1830에서, 중개 서버(123)는 수신측 모바일 스토리지 장치(100-5)가 네트워크를 통해서 중개 서버(123)와 연결되어 있는지 여부를 판단할 수 있다. 몇몇 실시 예에 따르면, 인증이 완료된 모바일 스토리지 장치(100)는 중개 서버(123)에 모바일 스토리지 장치(100)의 위치 정보를 반복적으로 전송할 수 있다. 미리 정해진 시간 이상 모바일 스토리지 장치(100)의 위치 정보가 수신되지 않으면, 중개 서버(123)는 그 모바일 스토리지 장치(100)는 연결이 해제된 것으로 판단할 수 있다.Thereafter, in step S1830, the mediating
수신측 모바일 스토리지 장치(100-5)가 연결되어 있는 경우, 중개 서버(123)는 송신측 모바일 스토리지 장치(100-4)와 수신측 모바일 스토리지 장치(100-5)의 P2P 연결을 중개하여 컨텐츠가 전송되도록 할 수 있다. 예를 들어, 도 20을 참조하면, 중개 서버(123)는 송신측 모바일 스토리지 장치(100-4)로부터 수신측 모바일 스토리지 장치(100-5)로 컨텐츠의 송신에 대한 요청을 수신한 경우, 송신측 모바일 스토리지 장치(100-4)와 수신측 모바일 스토리지 장치(100-5) 사이의 연결을 중개할 수 있다.When the receiving side mobile storage device 100-5 is connected, the mediating
그러나, 단계 S1830에서 수신측 모바일 스토리지 장치(100-5)가 연결되어 있지 않은 경우, 중개 서버(123)는 송신측 모바일 스토리지 장치(100-4)와 수신측 모바일 스토리지 장치(100-5)를 연결하여 컨텐츠가 송신되도록 할 수 없다. 이 경우, 수신측 모바일 스토리지 장치(100-5)가 이후에 중개 서버(123)에 연결되었을 때에는 송신측 모바일 스토리지 장치(100-4)가 컨텐츠를 송신할 수 없는 상태일 수 있다. 예를 들면, 송신측 모바일 스토리지 장치(100-4)가 네트워크에 연결되어 있지 않거나, 송신측 모바일 스토리지 장치(100-4)에서 컨텐츠가 삭제되어 있을 수도 있다. 따라서, 수신측 모바일 스토리지 장치(100-5)에 대한 컨텐츠의 전달이 보장되지 않을 수 있다.However, if the receiving mobile storage device 100-5 is not connected in step S1830, the mediating
따라서, 중개 서버(123)는 단계 S1851에서 송신 대상 데이터를 분산 저장할 수 있다. 몇몇 실시 예에 따르면, 모바일 스토리지 장치(100)는 데이터의 분산 저장을 위한 분산 저장 공유 공간을 스토리지(103) 내에 구비할 수 있다. 또한, 다른 몇몇 실시 예에 따르면, 분산 저장 공유 공간은 블록 체인의 노드로 활용하여 블록 체인 서비스에 적용될 수도 있다.Accordingly, the mediating
도 21을 참조하면, 하나 이상의 주변 모바일 스토리지 장치(100-6)를 결정하고, 송신 요청에 따라 컨텐츠를 전달하기 위해 송신 대상이 되는 데이터를 주변 모바일 스토리지 장치(100-6)에 P2P 송수신을 통해 분산 저장할 수 있다. 몇몇 실시 예에 따르면, 중개 서버(123)는 미리 설정된 정책에 따라서 하나 이상의 주변 모바일 스토리지 장치(100-6)를 결정할 수 있다. 예를 들어, 중개 서버(123)는 수신측 모바일 스토리지 장치(100-5)가 마지막으로 연결된 위치로부터의 거리를 기준으로 주변 모바일 스토리지 장치(100-6)를 결정하거나, 사용 가능한 저장 용량이나 해당 모바일 스토리지 장치에 발생하는 트래픽을 기준으로 결정할 수 있다.Referring to FIG. 21, one or more peripheral mobile storage devices 100-6 are determined. In order to deliver contents according to a transmission request, data to be transmitted is transmitted / Distributed storage. According to some embodiments, the
이후, 단계 S1852에서 수신측 모바일 스토리지 장치(100-5)가 연결되면, 도 22에 도시된 바와 같이 중개 서버(123)는 주변 모바일 스토리지 장치(100-6)를 이용하여 송신 대상이 되는 데이터를 수신측 모바일 스토리지 장치(100-5)에 제공할 수 있다.Thereafter, when the receiving mobile storage device 100-5 is connected in step S1852, as shown in Fig. 22, the mediating
단계 S1840 또는 단계 S1853 이후에, 중개 서버(123)는 전송 결과 로그를 기록할 수 있다. 여기서, 전송 결과 로그는 데이터 전송의 성공/실패 여부 및 전송 과정에 대한 이력을 포함할 수 있다. 전송 과정에 대한 이력은 송신측 모바일 스토리지 장치(100-4)가 수신측 모바일 스토리지 장치(100-5)에 컨텐츠를 전송할 때 직접 전송하였는지, 다른 모바일 스토리지 장치에 분산 저장 이후에 전송하였는지에 관한 정보를 의미할 수 있다. 중개 서버(123)는 전송 결과 로그를 이용하여 컨텐츠에 대한 검색 기능을 제공할 수 있다. 일부 실시 예에 따르면, 중개 서버(123)는 컨텐츠를 다른 장치에 전송할 것을 요청하는 송신 요청이나 컨텐츠를 제공받고자 하는 제공 요청이 수신되면 전송 결과 로그를 이용하여 연결될 장치를 결정하고 홀 펀칭을 중개할 수 있다.After step S1840 or step S1853, the
지금까지 설명된 본 발명의 실시예에 따른 방법들은 컴퓨터가 읽을 수 있는 코드로 구현된 인스트럭션을 포함하는 컴퓨터프로그램의 실행에 의하여 수행될 수 있다. 상기 컴퓨터프로그램은 인터넷 등의 네트워크를 통하여 제1 컴퓨팅 장치로부터 제2 컴퓨팅 장치에 전송되어 상기 제2 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 제2 컴퓨팅 장치에서 사용될 수 있다. 상기 제1 컴퓨팅 장치 및 상기 제2 컴퓨팅 장치는, 서버 장치, 클라우드 서비스를 위한 서버 풀에 속한 물리 서버, 데스크탑 피씨와 같은 고정식 컴퓨팅 장치를 모두 포함한다.The methods according to the embodiments of the present invention described so far can be performed by the execution of a computer program including instructions embodied in computer readable code. The computer program may be transmitted from a first computing device to a second computing device via a network, such as the Internet, and installed in the second computing device, thereby enabling it to be used in the second computing device. The first computing device and the second computing device all include a server device, a physical server belonging to a server pool for cloud services, and a fixed computing device such as a desktop PC.
상기 컴퓨터프로그램은 DVD-ROM, 플래시 메모리 장치 등의 기록매체에 저장된 것일 수도 있다.The computer program may be stored in a recording medium such as a DVD-ROM, a flash memory device, or the like.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, I can understand that. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.
Claims (20)
인터넷에 연결된 호스트 장치에 전기적으로 연결됨으로써, 상기 호스트 장치를 통해 상기 인터넷에 연결을 제공하는 커넥터;
스토리지; 및
상기 커넥터 및 상기 스토리지와 연결되고, 상기 스토리지에 저장된 데이터를 이용하여 상기 모바일 스토리지 장치 외의 별도의 서버에 콘텐츠를 전송하지 않고 온라인 서비스를 외부 단말에 제공하기 위한 복수의 인스트럭션(instruction)을 실행하는 프로세서를 포함하되,
상기 복수의 인스트럭션은,
상기 커넥터가 상기 호스트 장치에 연결되어 상기 모바일 스토리지 장치가 상기 인터넷에 연결되면, 자동으로 상기 외부 단말에 상기 모바일 스토리지 장치의 주소 정보를 제공하는 중개 서버에 등록 요청을 송신하되, 상기 등록 요청은 상기 커넥터가 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당되는 주소 정보를 포함하는 것인, 인스트럭션; 및
상기 외부 단말이 상기 중개 서버로부터 상기 모바일 스토리지 장치의 주소 정보를 획득한 후, 상기 온라인 서비스의 제공을 위한 패킷을 상기 외부 단말과 홀 펀칭(hole punching) 방식으로 p2p 송수신하는 인스트럭션을 포함하는,
모바일 스토리지 장치.In a mobile storage device,
A connector electrically connected to a host device connected to the Internet, thereby providing a connection to the Internet through the host device;
storage; And
A processor coupled to the connector and the storage for executing a plurality of instructions to provide an online service to an external terminal without transferring content to a server other than the mobile storage device using data stored in the storage, , ≪ / RTI &
The plurality of instructions comprising:
When the connector is connected to the host device and the mobile storage device is connected to the Internet, the terminal automatically transmits a registration request to the intermediary server that provides address information of the mobile storage device to the external terminal, The address information being assigned to the mobile storage device as the connector is connected to the host device; And
And an instruction to p2p transmit / receive a packet for providing the on-line service to the external terminal in a hole punching manner after the external terminal acquires the address information of the mobile storage device from the intermediary server.
Mobile storage device.
상기 복수의 인스트럭션은,
모바일 스토리지 장치 인증 인스트럭션을 더 포함하되,
상기 모바일 스토리지 장치 인증 인스트럭션은,
상기 커넥터가 상기 호스트 장치에 연결됨으로써 상기 모바일 스토리지 장치가 최초로 상기 인터넷에 연결되는 것에 응답하여, 자동으로 상기 인터넷에 연결된 장치 인증 서버에 인증 요청을 송신하되, 상기 인증 요청에는 상기 모바일 스토리지 장치의 제조시 기록된 장치 식별자가 포함되는, 인스트럭션;
상기 장치 인증 서버로부터 인증 성공을 가리키는 데이터가 수신된 경우, 회원 가입 정보를 입력 받기 위한 GUI가 표시되기 위한 데이터를 상기 호스트 장치에 제공하는 인스트럭션; 및
플랫폼 인증 서버로부터 상기 모바일 스토리지 장치에 발급되는 장치 고유 키를 상기 스토리지에 저장하되, 상기 장치 고유 키는 상기 회원 가입 정보에 매치되는 것인, 인스트럭션을 포함하는,
모바일 스토리지 장치.The method according to claim 1,
The plurality of instructions comprising:
Further comprising a mobile storage device authentication instruction,
The mobile storage device authentication instruction includes:
In response to the first connection of the mobile storage device to the Internet by the connector being connected to the host device, automatically sends an authentication request to the device authentication server connected to the Internet, wherein the authentication request includes the manufacture of the mobile storage device An instruction that includes a device identifier recorded at a time;
An instruction to provide the host device with data for displaying a GUI for receiving membership subscription information when data indicating authentication success is received from the device authentication server; And
Storing a device unique key issued from the platform authentication server to the mobile storage device in the storage, wherein the device unique key is matched to the membership subscription information;
Mobile storage device.
상기 모바일 스토리지 장치 인증 인스트럭션은,
상기 커넥터가 상기 호스트 장치에 연결됨으로써 상기 모바일 스토리지 장치가 상기 인터넷에 연결되는 것에 응답하여, 자동으로 상기 플랫폼 인증 서버에 의하여 발급된 장치 고유 키에 대한 정보를 포함하는 인증 요청을 상기 플랫폼 인증 서버에 송신하는 인스트럭션을 포함하는,
모바일 스토리지 장치.3. The method of claim 2,
The mobile storage device authentication instruction includes:
In response to the mobile storage device being connected to the Internet by the connector being connected to the host device, automatically sends to the platform authentication server an authentication request including information about the device unique key issued by the platform authentication server Comprising instructions for transmitting,
Mobile storage device.
상기 모바일 스토리지 장치 인증 인스트럭션은,
상기 인증 요청에 대한 인증 성공을 나타내는 데이터에 대한 응답으로, 상기 플랫폼 인증 서버로부터 공개키를 수신하여 상기 장치 고유 키를 업데이트하는 인스트럭션을 더 포함하는,
모바일 스토리지 장치.The method of claim 3,
The mobile storage device authentication instruction includes:
Further comprising instructions for receiving a public key from the platform authentication server and updating the device unique key in response to data indicating authentication success for the authentication request.
Mobile storage device.
상기 모바일 스토리지 장치는 사용자에 의하여 상태 정보를 출력할 수 있는 인디케이터를 더 포함하되,
상기 모바일 스토리지 장치 인증 인스트럭션은,
상기 플랫폼 인증 서버로부터 인증 실패를 가리키는 데이터가 수신되는 경우, 상기 인디케이터가 상태 정보를 출력할 수 있도록 하는 제어 신호를 출력하는 인스트럭션을 포함하는,
모바일 스토리지 장치.The method of claim 3,
Wherein the mobile storage device further comprises an indicator capable of outputting status information by a user,
The mobile storage device authentication instruction includes:
And outputting a control signal for allowing the indicator to output status information when data indicating an authentication failure is received from the platform authentication server.
Mobile storage device.
상기 복수의 인스트럭션은,
모바일 스토리지 장치 인증 인스트럭션을 더 포함하되,
상기 모바일 스토리지 장치 인증 인스트럭션은,
상기 모바일 스토리지 장치에 저장된 개인 키와 블록 체인 시스템의 노드를 구성하는 플랫폼 인증 서버에 저장된 공개 키를 조합하여 장치 고유 키를 활성화하는 인스트럭션과,
상기 플랫폼 인증 서버로부터 상기 장치 고유 키를 갱신 받는 인스트럭션을 포함하는,
모바일 스토리지 장치.The method according to claim 1,
The plurality of instructions comprising:
Further comprising a mobile storage device authentication instruction,
The mobile storage device authentication instruction includes:
An instruction for activating a device unique key by combining a private key stored in the mobile storage device with a public key stored in a platform authentication server constituting a node of a block chain system,
And an instruction to update the device unique key from the platform authentication server.
Mobile storage device.
상기 복수의 인스트럭션은,
상기 모바일 스토리지 장치의 주소 정보가 변경된 경우, 상기 중개 서버에 주소 정보의 업데이트를 요청하는 인스트럭션을 더 포함하는,
모바일 스토리지 장치.The method according to claim 1,
The plurality of instructions comprising:
Further comprising instructions for requesting the intermediary server to update the address information when the address information of the mobile storage apparatus is changed,
Mobile storage device.
상기 업데이트를 요청하는 인스트럭션은,
상기 커넥터에 연결된 호스트 장치의 주소 정보가 변경되거나, 상기 커넥터에 연결된 호스트 장치가 변경된 경우에 상기 모바일 스토리지 장치의 주소 정보가 변경된 것으로 판단하는,
모바일 스토리지 장치.8. The method of claim 7,
The instructions for requesting the update include:
The address information of the host device connected to the connector is changed or the address information of the mobile storage device is changed when the host device connected to the connector is changed,
Mobile storage device.
상기 프로세서는,
부팅 완료 후 상기 복수의 인스트럭션을 자동으로 실행하고,
상기 복수의 인스트럭션은, 상기 모바일 스토리지 장치 제조 시에, 바로 실행 가능하도록 설치된 온라인 서비스 제공 소프트웨어에 포함된 것인,
모바일 스토리지 장치.The method according to claim 1,
The processor comprising:
Executing the plurality of instructions automatically after completion of booting,
Wherein the plurality of instructions are included in an online service providing software installed so as to be immediately executable at the time of manufacture of the mobile storage device,
Mobile storage device.
상기 온라인 서비스 제공 소프트웨어는, 상기 스토리지의 사용자 레벨 접근 불가능 영역에 설치되는,
모바일 스토리지 장치.10. The method of claim 9,
Wherein the online service providing software is installed in a user level inaccessible area of the storage,
Mobile storage device.
상기 모바일 스토리지 장치는, ROM(Read Only Memory)를 더 포함하고,
상기 온라인 서비스 제공 소프트웨어는, 상기 ROM에 설치되는,
모바일 스토리지 장치.10. The method of claim 9,
The mobile storage device may further include a read only memory (ROM)
Wherein the online service providing software comprises:
Mobile storage device.
상기 복수의 인스트럭션은,
상기 온라인 서비스의 제공에 따라 상기 스토리지에 저장된 컨텐츠의 리드(read) 억세스 트래픽이 기준치를 초과하는 경우, 상기 컨텐츠를 상기 인터넷에 연결된 컨텐츠 딜리버리 서버에 송신하는 인스트럭션; 및
상기 컨텐츠에 대한 리드 억세스를 상기 컨텐츠 딜리버리 서버로 리다이렉션(redirection) 하는 인스트럭션을 더 포함하는,
모바일 스토리지 장치.The method according to claim 1,
The plurality of instructions comprising:
An instruction to transmit the content to a content delivery server connected to the Internet when a read access traffic of the content stored in the storage exceeds a reference value according to the provision of the online service; And
Further comprising an instruction to redirect the read access to the content to the content delivery server,
Mobile storage device.
상기 컨텐츠는, 상기 모바일 스토리지 장치가 상기 호스트 장치에서 연결 해제 되면, 상기 컨텐츠 딜리버리 서버에서 비활성화 또는 삭제되는,
모바일 스토리지 장치.13. The method of claim 12,
Wherein the content is deactivated or deleted in the content delivery server when the mobile storage device is disconnected from the host device,
Mobile storage device.
상기 컨텐츠는, 상기 컨텐츠의 리드(read) 억세스 트래픽이 기준치를 하회하는 경우, 상기 컨텐츠 딜리버리 서버에서 삭제되는,
모바일 스토리지 장치.13. The method of claim 12,
Wherein the content is deleted from the content delivery server when a read access traffic of the content is lower than a reference value,
Mobile storage device.
상기 모바일 스토리지 장치는 사용자에 의하여 상태 정보를 출력할 수 있는 인디케이터를 더 포함하고,
상기 컨텐츠를 상기 인터넷에 연결된 컨텐츠 딜리버리 서버에 송신하는 인스트럭션은,
상기 인디케이터의 출력을 제어하는 제어 신호를 출력하는 인스트럭션을 포함하는,
모바일 스토리지 장치.13. The method of claim 12,
Wherein the mobile storage device further comprises an indicator capable of outputting status information by a user,
The instructions for transmitting the content to the content delivery server connected to the Internet include:
And outputting a control signal for controlling an output of the indicator.
Mobile storage device.
상기 컨텐츠는, 기 지정된 기준을 만족하는 경우, 상기 컨텐츠가 저장된 상기 모바일 스토리지 장치와 p2p 접속된 바 없는 외부 단말들이 접속할 수 있는 미디어 포털 서비스에 노출되는,
모바일 스토리지 장치.13. The method of claim 12,
Wherein the content is exposed to a media portal service that can be accessed by external terminals that are not p2p-connected to the mobile storage device in which the content is stored,
Mobile storage device.
상기 모바일 스토리지 장치는 상태 정보를 출력할 수 있도록 구비된 인디케이터를 더 포함하고,
상기 컨텐츠는, 상기 모바일 스토리지 장치가 상기 호스트 장치에서 연결 해제 되면, 상기 컨텐츠 딜리버리 서버에서 비활성화 또는 삭제되고,
상기 복수의 인스트럭션은,
상기 컨텐츠가 상기 미디어 포털 서비스에 노출된 것을 가리키는 데이터를 수신하는 것에 응답하여, 상기 인디케이터를 제어하는 제어 신호를 출력하는 인스트럭션을 포함하는,
모바일 스토리지 장치.17. The method of claim 16,
Wherein the mobile storage device further comprises an indicator provided to output status information,
Wherein the content is deactivated or deleted in the content delivery server when the mobile storage device is disconnected from the host device,
The plurality of instructions comprising:
And outputting a control signal for controlling the indicator in response to receiving data indicating that the content has been exposed to the media portal service.
Mobile storage device.
호스트 장치에 연결된 모바일 스토리지 장치로부터, 상기 모바일 스토리지 장치에 발급된 장치 고유 키 및 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당 된 주소 정보를 포함한 등록 요청을 수신하는 단계;
상기 등록 요청을 반영하여 매칭 테이블을 업데이트 하는 단계;
외부 단말로부터 로그인 정보를 수신하는 단계;
상기 매칭 테이블을 이용하여 상기 로그인 정보에 대응되는 장치 고유 키를 조회하는 단계; 및
상기 조회된 장치 고유 키의 주소 정보를 상기 외부 단말에 송신하고, 상기 조회된 장치 고유 키를 가진 모바일 스토리지 장치에 상기 외부 단말의 주소 정보를 송신함으로써, 홀펀칭을 중개하는 단계를 포함하되,
상기 모바일 스토리지 장치는 상기 모바일 스토리지 장치 외의 별도의 서버에 콘텐츠를 전송하지 않고 온라인 서비스를 외부 단말에 제공하는 장치인,
홀펀칭 중개 방법.A method performed by a computing device,
Receiving a registration request from a mobile storage device connected to the host device, the registration request including a device unique key issued to the mobile storage device and address information assigned to the mobile storage device as being connected to the host device;
Updating the matching table to reflect the registration request;
Receiving login information from an external terminal;
Retrieving a device unique key corresponding to the login information using the matching table; And
Transmitting the address information of the searched device unique key to the external terminal and transmitting the address information of the external terminal to the mobile storage device having the searched device unique key,
Wherein the mobile storage device is a device for providing an on-line service to an external terminal without transmitting a content to a server other than the mobile storage device,
Hole punching brokerage method.
호스트 장치에 연결된 모바일 스토리지 장치로부터, 상기 모바일 스토리지 장치에 발급된 장치 고유 키 및 상기 호스트 장치에 연결됨에 따라 상기 모바일 스토리지 장치에 할당 된 주소 정보를 포함한 등록 요청을 수신하는 단계;
상기 등록 요청을 반영하여 매칭 테이블을 업데이트 하는 단계;
상기 호스트 장치를 통해서 수신자 선택 사용자 인터페이스를 제공하는 단계;
상기 모바일 스토리지 장치로부터 상기 수신자 선택 사용자 인터페이스를 통해 선택된 외부 단말에 대한 컨텐츠의 송신 요청을 수신하는 단계;
상기 외부 단말의 연결 상태가 상기 컴퓨팅 장치에 연결되지 않은 상태인 경우, 상기 컨텐츠를 하나 이상의 주변 모바일 스토리지 장치에 저장되도록 상기 매칭 테이블을 이용하여 상기 모바일 스토리지 장치와 상기 하나 이상의 주변 모바일 스토리지 장치 사이의 홀펀징을 중개하는 단계; 및
상기 외부 단말이 상기 컴퓨팅 장치에 연결된 경우, 상기 컨텐츠가 상기 외부 단말로 전송되도록 상기 하나 이상의 주변 모바일 스토리지 장치와 상기 외부 단말 사이의 홀펀칭을 중개하는 단계;를 더 포함하는,
홀펀칭 중개 방법.A method performed by a computing device,
Receiving a registration request from a mobile storage device connected to the host device, the registration request including a device unique key issued to the mobile storage device and address information assigned to the mobile storage device as being connected to the host device;
Updating the matching table to reflect the registration request;
Providing a recipient selection user interface through the host device;
Receiving a content transmission request from the mobile storage device for an external terminal selected through the receiver selection user interface;
Wherein the content is stored in one or more peripheral mobile storage devices when the connection status of the external terminal is not connected to the computing device, Mediating hole puncturing; And
Further comprising: mediating hole punching between the at least one peripheral mobile storage device and the external terminal such that the content is transmitted to the external terminal when the external terminal is connected to the computing device.
Hole punching brokerage method.
상기 컨텐츠의 전송 이력에 대한 로그를 저장하는 단계; 및
상기 컨텐츠에 대한 송신 요청 또는 제공 요청이 수신되는 경우, 상기 로그를 이용하여 홀펀칭을 중개하는 단계;를 더 포함하는,
홀펀칭 중개 방법.
20. The method of claim 19,
Storing a log of the transmission history of the content; And
Further comprising: mediating hole punching using the log when a transmission request or a provision request for the content is received.
Hole punching brokerage method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180118900A KR101972349B1 (en) | 2018-10-05 | 2018-10-05 | Method for providing service platform using mobile storage apparatus and apparauts thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180118900A KR101972349B1 (en) | 2018-10-05 | 2018-10-05 | Method for providing service platform using mobile storage apparatus and apparauts thereof |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190045869A Division KR102034296B1 (en) | 2019-04-19 | 2019-04-19 | Method for providing service platform using mobile storage apparatus and apparauts thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101972349B1 true KR101972349B1 (en) | 2019-04-25 |
Family
ID=66281914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180118900A KR101972349B1 (en) | 2018-10-05 | 2018-10-05 | Method for providing service platform using mobile storage apparatus and apparauts thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101972349B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102490853B1 (en) * | 2021-07-16 | 2023-01-20 | 주식회사 포그넷 | Method and system for transmitting and receiving file through p2p based on storage |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100103954A (en) * | 2009-03-16 | 2010-09-29 | 신동윤 | Webhard community system and method based on personal storage device |
KR20130024434A (en) * | 2011-08-31 | 2013-03-08 | 양승식 | Driving system of external storage device using data repeater and router |
KR20140095252A (en) * | 2013-01-24 | 2014-08-01 | 정웅모 | Method for sharing data used by usb storage device |
US20140310420A1 (en) * | 2013-04-16 | 2014-10-16 | Chi-Ming Kuo | System and method of identifying networked device for establishing a p2p connection |
-
2018
- 2018-10-05 KR KR1020180118900A patent/KR101972349B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100103954A (en) * | 2009-03-16 | 2010-09-29 | 신동윤 | Webhard community system and method based on personal storage device |
KR20130024434A (en) * | 2011-08-31 | 2013-03-08 | 양승식 | Driving system of external storage device using data repeater and router |
KR20140095252A (en) * | 2013-01-24 | 2014-08-01 | 정웅모 | Method for sharing data used by usb storage device |
US20140310420A1 (en) * | 2013-04-16 | 2014-10-16 | Chi-Ming Kuo | System and method of identifying networked device for establishing a p2p connection |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102490853B1 (en) * | 2021-07-16 | 2023-01-20 | 주식회사 포그넷 | Method and system for transmitting and receiving file through p2p based on storage |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9231904B2 (en) | Deploying and managing networked devices | |
US10623272B2 (en) | Authenticating connections and program identity in a messaging system | |
US11240314B2 (en) | Systems and methods for remote management of appliances | |
US9203807B2 (en) | Private cloud server and client architecture without utilizing a routing server | |
US9338165B2 (en) | Common internet file system proxy authentication of multiple servers | |
US20090013063A1 (en) | Method for enabling internet access to information hosted on csd | |
US9225721B2 (en) | Distributing overlay network ingress information | |
US20150288678A1 (en) | Private cloud routing server connection mechanism for use in a private communication architecture | |
US20080282081A1 (en) | Mutually authenticated secure channel | |
KR20140089461A (en) | Method for sharing contents using personal cloud device, Electronic device and Personal Cloud System thereof | |
US20120278854A1 (en) | System and method for device addressing | |
US11863529B2 (en) | Private cloud routing server connection mechanism for use in a private communication architecture | |
CN106254319B (en) | Light application login control method and device | |
JP6275860B2 (en) | Chat information transmission method and apparatus, chat information push method and server | |
US20080263126A1 (en) | Internet bridge for applications and web servers | |
CN113542389A (en) | Private cloud routing server connection mechanism for private communication architecture | |
US11683292B2 (en) | Private cloud routing server connection mechanism for use in a private communication architecture | |
KR101972349B1 (en) | Method for providing service platform using mobile storage apparatus and apparauts thereof | |
CN112583599B (en) | Communication method and device | |
TWI537744B (en) | Private cloud routing server, private network service and smart device client architecture without utilizing a public cloud based routing server | |
US20080118005A1 (en) | Receiving apparatus and receiving method | |
JP6280471B2 (en) | Connection management method, program, and connection management system | |
KR102034296B1 (en) | Method for providing service platform using mobile storage apparatus and apparauts thereof | |
US20080301305A1 (en) | Method and related system for building up a network connection between clients and servers through a stream fork by utilizing http protocol | |
KR20200039606A (en) | Method for providing service platform using mobile storage apparatus and apparauts thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |