KR100862659B1 - 인터넷 스토리지에 접근하는 방법 및 장치 - Google Patents

인터넷 스토리지에 접근하는 방법 및 장치 Download PDF

Info

Publication number
KR100862659B1
KR100862659B1 KR1020060000968A KR20060000968A KR100862659B1 KR 100862659 B1 KR100862659 B1 KR 100862659B1 KR 1020060000968 A KR1020060000968 A KR 1020060000968A KR 20060000968 A KR20060000968 A KR 20060000968A KR 100862659 B1 KR100862659 B1 KR 100862659B1
Authority
KR
South Korea
Prior art keywords
storage
upnp
access
module
standard
Prior art date
Application number
KR1020060000968A
Other languages
English (en)
Other versions
KR20070073263A (ko
Inventor
윤현식
조준호
이경훈
최상훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020060000968A priority Critical patent/KR100862659B1/ko
Priority to EP06127371A priority patent/EP1816554A3/en
Priority to CN2006101566731A priority patent/CN1996848B/zh
Priority to CN2010101477109A priority patent/CN101834767B/zh
Priority to JP2007000261A priority patent/JP5202847B2/ja
Priority to US11/649,258 priority patent/US9110606B2/en
Publication of KR20070073263A publication Critical patent/KR20070073263A/ko
Application granted granted Critical
Publication of KR100862659B1 publication Critical patent/KR100862659B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41MPRINTING, DUPLICATING, MARKING, OR COPYING PROCESSES; COLOUR PRINTING
    • B41M3/00Printing processes to produce particular kinds of printed work, e.g. patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2836Protocol conversion between an external network and a home network
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41MPRINTING, DUPLICATING, MARKING, OR COPYING PROCESSES; COLOUR PRINTING
    • B41M7/00After-treatment of prints, e.g. heating, irradiating, setting of the ink, protection of the printed stock
    • B41M7/0027After-treatment of prints, e.g. heating, irradiating, setting of the ink, protection of the printed stock using protective coatings or layers by lamination or by fusion of the coatings or layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities

Abstract

본 발명은 인터넷 스토리지에 접근하는 방법 및 장치에 관한 것으로서, 본 발명에 따른 스토리지 접근 방법은 홈 스토리지에의 접근을 제어하고, 이 제어에 따른 홈 스토리지에의 접근이 실패하였는지 여부에 따라 홈 스토리지보다 접근 신뢰도가 높은 인터넷 스토리지에 접근함으로서 홈 스토리지가 동작하지 않는 경우에도 컨텐트의 메타 데이터 및 컨텐트를 획득할 수 있다는 효과가 있다.

Description

인터넷 스토리지에 접근하는 방법 및 장치{Method and apparatus for accessing home storage or internet storage}
도 1-2는 종래의 UPnP 규격에 따른 홈 스토리지 환경을 도시한 도면이다.
도 3은 종래의 인터넷 스토리지 환경을 도시한 도면이다.
도 4는 본 발명의 바람직한 일 실시예에 따른 스토리지 접근 시스템의 구성도이다.
도 5는 본 발명의 바람직한 실시예에 따른 UPnP 스토리지 접근 시스템의 구성도이다.
도 6은 도 5에 도시된 UPnP MS 프럭시(512)의 상세 구성도이다.
도 7은 본 발명의 바람직한 일 실시예에 따른 얼라이브 메시지의 형식을 도시한 도면이다.
도 8은 본 발명에 바람직한 일 실시예에 따른 UPnP 디바이스 설명의 형식을 도시한 도면이다.
도 9는 본 발명의 바람직한 일 실시예에 따라 스토리지 접근 제어의 형식을 변환하기 위한 의사 코드(pseudo code)의 일례를 도시한 도면이다.
도 10은 본 발명의 바람직한 일 실시예에 따른 다른 UPnP 스토리지 접근 시스템의 구성도이다.
도 11은 본 발명의 바람직한 일 실시예에 따른 또 다른 UPnP 스토리지 접근 시스템의 구성도이다.
도 12는 본 발명의 바람직한 일 실시예에 따른 스토리지 접근 방법의 흐름도이다.
도 13은 본 발명의 바람직한 실시예에 따른 UPnP 스토리지 접근 방법은 흐름도이다.
도 14는 본 발명의 바람직한 실시예에 따른 다른 UPnP 스토리지 접근 방법은 흐름도이다.
본 발명은 인터넷 스토리지에 접근하는 방법 및 장치에 관한 것으로서, 특히 UPnP(Universal Plug and Play) 규격에 따라 DHT(Distributed Hash Table) 스토리지에 접근하는 방법 및 장치에 관한 것이다.
도 1-2는 종래의 UPnP 규격에 따른 홈 스토리지 환경을 도시한 도면이다.
도 1을 참조하면, 종래의 UPnP 규격에 따른 홈 스토리지 환경은 UPnP CP(Control Point)(11) 및 UPnP MS(Media Server)(12)로 구성된다. 일반적으로, UPnP MS(12) 내의 스토리지에 컨텐트의 메타 데이터 및 컨텐트(meta data)가 저장되어 있다. UPnP CP(11)는 UPnP MS(12)에 대해 UPnP MS(12) 내의 스토리지에의 접근을 제어함으로서 컨텐트의 획득을 제어한다.
도 2를 참조하면, 종래의 UPnP 규격에 따른 홈 스토리지 환경은 UPnP CP(21), UPnP MS 1(22), UPnP MS 2(23) 및 중앙 서버(24)로 구성된다. 일반적으로, UPnP MS 1(22) 및 UPnP MS 2(23) 내의 스토리지에는 컨텐트의 메타 데이터 및 컨텐트가 저장되어 있고, 중앙 서버(24)에는 UPnP MS 1(22) 및 UPnP MS 2(23) 내의 스토리지에 저장된 컨텐트의 메타 데이터 및 컨텐트의 사본이 저장되어 있다. UPnP CP(21)는 우선 UPnP MS 1(22) 및 UPnP MS 2(23)에 대해 UPnP MS 1(22) 및 UPnP MS 2(23) 내의 스토리지에의 접근을 제어함으로서 컨텐트의 획득을 제어한다. 그런데, UPnP MS 1(22) 및 UPnP MS 2(23)가 동작하지 않는 경우, UPnP CP(21)는 다음으로 중앙 서버(24)에 대해 중앙 서버(24) 내의 스토리지에의 접근을 제어함으로서 컨텐트의 획득을 제어한다.
도 3은 종래의 인터넷 스토리지 환경을 도시한 도면이다.
도 3을 참조하면, 종래의 인터넷 스토리지 환경은 클라이언트 1(31), 클라이언트 2(32) 및 중앙 서버(33)로 구성된다. 일반적으로, 중앙 서버(33) 내의 인터넷 스토리지에 컨텐트의 메타 데이터 및 컨텐트가 저장되어 있다. 인터넷 스토리지(43)의 예로는 ISP(Internet Service Provider)들이 제공하는 사진 공유 시스템, http://idisk.megapass.net 등과 같은 인터넷 디스크 서비스 등을 들 수 있다. 클라이언트 1(31), 클라이언트 2(32)는 중앙 서버(33)에 컨텐트를 요청하고, 이것에 대한 응답으로 컨텐트를 획득한다.
상기된 바와 같이, 종래에는 다양한 스토리지 환경이 존재하였다. 그런데, 도 1에 도시된 홈 스토리지 환경은 UPnP MS(Media Server)(12)이 동작을 하지 않는 경우에 스토리지에의 접근 자체가 불가능하다는 문제점이 있었다. 또한, 도 2에 도시된 홈 스토리지 환경은 도 1에 도시된 홈 스토리지 환경에 비해 양호하지만, UPnP MS 1(22) 또는 UPnP MS 2(23)가 동작하지 않고, 중앙 서버(24)도 동작을 하지 않는 경우에 역시 스토리지에의 접근 자체가 불가능하다는 문제점이 있었다. 또한, 도 3에 도시된 인터넷 스토리지 환경은 ISP들이 제공하는 인터넷 스토리지 서비스를 이용하기 때문에 상기된 바와 같은 스토리지에의 접근 자체가 불가능하다는 문제점이 없으나, 인터넷을 경유하여 컨텐트를 업로드하고, 다운로드하기 때문에 인터넷의 트래픽(traffic)을 가중시킨다는 문제점이 있었다.
본 발명이 이루고자 하는 기술적 과제는 홈 스토리지에의 접근이 실패한 경우에도 컨텐트의 메타 데이터 및 컨텐트를 획득할 수 있게 하는 방법 및 장치를 제공하는데 있다. 또한, 상기된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 제 1 스토리지 접근 방법은 제 1 스토리지에의 접근을 제어하는 단계; 및 상기 제어에 따른 제 1 스토리지에의 접근이 실패하였는지 여부에 따라 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 1 스토리지 접근 장치는 제 1 스토리지에의 접근을 제어하는 제어 모듈; 및 상기 제어에 따른 제 1 스토리지에의 접근이 실패하였는지 여부에 따라 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 서버 프럭시를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 제 1 스토리지 접근 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 2 스토리지 접근 방법은 제 1 스토리지에 접근할 수 있는 기존 서버 모듈을 대신하여 상기 제 1 스토리지에 접근하는 서버로서의 역할을 수행하는 단계; 및 상기 제 1 서버 모듈에 의해 수행되는 역할에 대응하여 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 단계를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 2 스토리지 접근 장치는 제 1 스토리지에 접근할 수 있는 기존 서버 모듈을 대신하여 상기 제 1 스토리지에 접근하는 서버로서의 역할을 수행하는 제 1 서버 모듈; 및 상기 제 1 서버 모듈에 의해 수행되는 역할에 대응하여 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 제 2 서버 모듈을 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 제 2 스토리지 접근 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 3 스토리지 접근 방법은 제 1 규격을 따른 스토리지에의 접근 제어를 수신하는 단계; 상기 제 1 규격에 따른 상기 스토리지에의 접근 제어의 형식을 제 2 규격에 따른 상기 스토리지에의 접근 제어의 형식으로 변환하는 단계; 및 상기 변환된 형식을 갖는 접근 제어에 따라 상기 스토리지에 접근하는 단계를 포함한다.
상기 또 다른 기술적 과제를 해결하기 위한 본 발명에 따른 제 3 스토리지 접근 장치는 제 1 규격을 따른 스토리지에의 접근 제어를 수신하는 제 1 서버 모듈; 상기 제 1 규격에 따른 상기 스토리지에의 접근 제어의 형식을 제 2 규격에 따른 상기 스토리지에의 접근 제어의 형식으로 변환하는 변환부; 및 상기 변환된 형식을 갖는 접근 제어에 따라 상기 스토리지에 접근하는 제 2 서버 모듈을 포함한다.
상기 또 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 제 3 스토리지 접근 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 4는 본 발명의 바람직한 일 실시예에 따른 스토리지 접근 시스템의 구성도이다.
도 4를 참조하면, 본 실시예에 따른 스토리지 접근 시스템은 디바이스(41), 서버(42) 및 인터넷 스토리지(43)로 구성된다. 특히, 본 실시예에 따른 스토리지 접근 시스템은 두 개의 스토리지들, 즉 홈 스토리지(422) 및 인터넷 스토리지(43)를 구비하고 있으며, 홈 스토리지(422)에의 접근이 불가능한 경우, 홈 스토리지 (422)보다 접근 신뢰도가 높은 인터넷 스토리지(43)에 접근하기 위한 시스템이다. 이를 위해, 인터넷 스토리지(43)에는 홈 스토리지(422)에 저장된 컨텐트의 메타 데이터 및 컨텐트의 사본을 저장되어 있어야 한다. 홈 스토리지(422)는 홈 네트워크에 위치한 홈 스토리지(422)이고, 인터넷 스토리지(43)는 인터넷에 위치한 스토리지이다. 인터넷 스토리지(43)의 예로는 ISP들이 제공하는 사진 공유 시스템, http://idisk.megapass.net 등과 같은 인터넷 디스크 서비스, 인터넷에 분산되어 위치하는 스토리지들의 집합체인 DHT(Distributed Hash Table) 스토리지 등을 들 수 있다. 홈 스토리지(422) 및 인터넷 스토리지(43)는 물리적으로 하드 디스크, 광 디스크, 플래시 메모리 등이 될 수 있다.
일반적으로, 서버(42)가 동작을 하지 않는 경우, 예를 들어 서버(42)의 전원이 오프(off)된 경우에 홈 스토리지(422)에의 접근이 실패할 것이다. 따라서, 홈 스토리지(422)보다 인터넷 스토리지(43)의 접근 신뢰도가 높다는 것은 홈 스토리지(422)가 인터넷 스토리지(43)보다 동작을 하지 않는 경우가 자주 발생한다는 것을 의미한다. 즉, 홈 스토리지(422)는 홈 네트워크에 위치해 있기 때문에 댁내 사용자에 의해 자주 전원이 온/오프될 가능성이 높고, 인터넷 스토리지(43)는 인터넷에 위치해 있고, ISP(Internet Service Provider)에 의해 제공되기 때문에 전원이 온/오프될 가능성 낮다.
디바이스(41)는 제어 모듈(411) 및 서버 프럭시(412)로 구성된다.
제어 모듈(411)은 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근을 제어한다. 보다 상세하게 설명하면, 제어 모듈(411)은 서버(42)의 서버 모 듈(421)에 의한 홈 스토리지(422)에의 접근을 위한 여러 동작들을 수행하는 API(Application Program Interface)들을 호출함으로서 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근을 제어한다. 본 실시예 및 이하 실시예들에서 어떤 스토리지에 접근한다는 것은 이 스토리지로부터 데이터를 독출(read)하거나, 이 스토리지에 데이터를 기입(write)하는 일련의 과정을 총칭한다.
서버 프럭시(412)는 서버(42)의 서버 모듈(421)이 동작을 하지 않는 경우에 서버(42)의 서버 모듈(421)을 대신하여 서버로서의 역할을 수행한다. 따라서, 제어 모듈(411)은 서버 프럭시(412)를 서버(42)의 서버 모듈(421)로서 인식하게 된다. 특히, 서버 프럭시(412)는 제어 모듈(411)의 제어를 받는 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근이 실패하였는지 여부에 따라 홈 스토리지(422)보다 접근 신뢰도가 높은 인터넷 스토리지(43)에 접근한다. 즉, 서버 프럭시(412)는 제어 모듈(411)의 제어를 받는 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근이 실패하였음을 검출하면, 서버(42)의 서버 모듈(421)이 홈 스토리지(422)에 접근하는 것을 대신하여 인터넷 스토리지(43)에 접근한다.
보다 상세하게 설명하면, 서버 프럭시(412)는 제어 모듈(411)의 제어를 받는 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근이 실패하였음을 검출하면, 서버(42)의 서버 모듈(421)을 대신하여 제어 모듈(411)로부터 홈 스토리지(422)에의 접근을 위한 여러 동작들을 수행하는 API들 각각의 호출을 수신한다. 이어서, 서버 프럭시(412)는 상기된 API 호출에 응하여 홈 스토리지(422) 대신에 인터넷 스토리지(43)에 대하여 이 API들 각각을 실행함으로서 서버(42)의 서버 모듈 (421)이 홈 스토리지(422)에 접근하는 것을 대신하여 인터넷 스토리지(43)에 접근한다.
도 5는 본 발명의 바람직한 실시예에 따른 UPnP 스토리지 접근 시스템의 구성도이다.
도 5를 참조하면, 본 실시예에 따른 UPnP 스토리지 접근 시스템은 디바이스(51), 서버(52) 및 DHT 스토리지(53)로 구성된다. 특히, 본 실시예에 따른 UPnP 스토리지 접근 시스템은 도 4에 도시된 스토리지 접근 시스템에 UPnP 네트워크 및 DHT 스토리지를 적용한 것이다.
디바이스(51)는 UPnP CP(Control Point) 모듈(511), UPnP MS(Media Server) 프럭시(512) 및 UPnP MR(Media Renderer) 모듈(513)로 구성된다.
UPnP CP 모듈(511)은 서버(52)의 UPnP MS 모듈(521) 또는 UPnP MS 프럭시(512)에 대해 API의 일종인 UPnP 액션을 호출함으로서 서버(52)의 UPnP MS 모듈(521)을 제어한다. 특히, UPnP CP 모듈(511)은 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션을 호출함으로서 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근을 제어한다. 또한, UPnP CP 모듈(511)은 UPnP MS 프럭시(512)로부터 출력된 browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 수신함으로서 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션 호출에 대한 반환 값을 획득한다.
UPnP MS 프럭시(512)는 서버(52)의 UPnP MS 모듈(521)이 동작을 하지 않는 경우에 서버(52)의 UPnP MS 모듈(521)을 대신하여 UPnP 미디어 서버로서의 역할을 수행한다. 따라서, UPnP CP 모듈(511)은 UPnP MS 프럭시(512)를 서버(52)의 UPnP MS 모듈(521)로서 인식하게 된다. 특히, UPnP MS 프럭시(512)는 UPnP CP 모듈(511)의 제어를 받는 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근이 실패하였는지 여부에 따라 홈 스토리지(522)보다 접근 신뢰도가 높은 DHT 스토리지(53)에 접근한다. 즉, UPnP MS 프럭시(512)는 UPnP CP 모듈(511)의 제어를 받는 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근이 실패하였음을 검출하면, 서버(52)의 UPnP MS 모듈(521)이 홈 스토리지(522)에 접근하는 것을 대신하여 인터넷 스토리지(43)에 접근한다.
보다 상세하게 설명하면, UPnP MS 프럭시(512)는 UPnP CP 모듈(511)의 제어를 받는 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근이 실패하였음을 검출하면, 서버(52)의 UPnP MS 모듈(521)을 대신하여 UPnP CP 모듈(511)로부터 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션을 수신한다. 이어서, UPnP MS 프럭시(512)는 상기된 UPnP 액션 호출에 응하여 홈 스토리지(522) 대신에 DHT 스토리지(53)에 대하여 이 UPnP 액션들 각각을 실행함으로서 서버(52)의 UPnP MS 모듈(521)이 홈 스토리지(522)에 접근하는 것을 대신하여 인터넷 스토리지(43)에 접근한다.
도 6은 도 5에 도시된 UPnP MS 프럭시(512)의 상세 구성도이다.
도 6을 참조하면, UPnP MS 프럭시(512)는 UPnP MS 모듈(61), 변환부(62) 및 DHT MS 모듈(63)로 구성된다.
UPnP MS 모듈(61)은 홈 스토리지(522)에 접근할 수 있는 기존 UPnP MS 모듈(521)을 대신하여 홈 스토리지(522)에 접근하는 UPnP 미디어 서버로서의 역할을 수행한다. 특히, UPnP MS 모듈(61)은 UPnP CP 모듈(511)로부터 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 호출을 수신함으로서 홈 스토리지(522)에의 접근 제어를 수신한다. 또한, UPnP MS 프럭시(512)는 변환부(513)에 의해 변환된 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 UPnP CP 모듈(51)로 출력한다.
보다 상세하게 설명하면, UPnP MS 모듈(61)은 UPnP의 주소 지정(addressing) 단계를 수행한다. 즉, UPnP MS 모듈(61)은 UPnP MS 모듈(61)의 IP 주소를 지정한다. 또한, UPnP MS 모듈(61)은 UPnP의 발견(discovery) 단계를 수행한다. 즉, UPnP MS 모듈(61)은 SSDP(Simple Service Discovery Protocol)에 따라 상기된 바와 같이 지정된 IP 주소를 기반으로 UPnP MS 모듈(61)이 네트워크에 접속하였음을 알리는 광고(advertise) 메시지, 즉 얼라이브 메시지(alive message)를 생성하고, 이것을 UPnP CP 모듈(511)로 전송한다.
도 7은 본 발명의 바람직한 일 실시예에 따른 얼라이브 메시지의 형식을 도시한 도면이다.
도 7을 참조하면, UPnP MS 모듈(61)에 의해 생성되는 얼라이브 메시지는 UPnP 규격에 따른 HTTP(Hypertext Transfer Protocol) 문서 형식을 갖는다. 특히, 본 실시예에 따른 얼라이브 메시지의 로케이션(location) 헤더에는 UPnP MS 모듈(61)에 의해 생성된 UPnP 디바이스 설명(description)의 URL(Uniform Resource Locator), 즉 UPnP 디바이스 설명을 제공하는 UPnP MS 모듈(61)의 IP 주소가 기록된다.
또한, UPnP MS 모듈(61)은 UPnP 설명(description) 단계를 수행한다. 즉, UPnP MS 모듈(61)은 상기된 바와 같은 UPnP 발견 단계 수행에 의해 UPnP MS 모듈(61)을 발견한 UPnP CP 모듈(511)이 도 7에 도시된 얼라이브 메시지의 로케이션 헤더에 기록된 URL에 접근하면, UPnP 디바이스 설명을 생성하고, 이것을 UPnP CP 모듈(511)에게 제공한다. UPnP MS 모듈(61)이 UPnP 디바이스 설명을 생성하는데 필요한 정보는 UPnP MS 모듈(61)이 자체적으로 보유할 수도 있고, 홈 스토리지(522)에 저장되어 있을 수도 있고, DHT 스토리지(53)에 저장되어 있을 수도 있다.
도 8은 본 발명에 바람직한 일 실시예에 따른 UPnP 디바이스 설명의 형식을 도시한 도면이다.
도 8을 참조하면, UPnP MS 모듈(61)에 의해 생성되는 UPnP 디바이스 설명은 UPnP 규격에 따른 XML 문서 형식을 갖는다. 특히, UPnP MS 모듈(61)은 기존 UPnP MS 모듈(521)을 대신하여 홈 스토리지(522)에 접근하는 UPnP 미디어 서버로서의 역할을 수행하기 때문에, 본 실시예에 따른 UPnP 디바이스 설명은 UPnP MS 모듈(521)에 대한 기존 UPnP 디바이스 설명을 그대로 차용하나, UPnP 디바이스 설명 내의 IP 주소는 UPnP MS 모듈(521)의 IP 주소로부터 UPnP MS 모듈(61)의 IP 주소로 대체된다.
또한, UPnP MS 모듈(61)은 UPnP 제어(control) 단계를 수행한다. 즉, UPnP MS 모듈(61)은 상기된 UPnP 설명 단계 수행에 의해 UPnP MS 모듈(61)에 대한 설명을 획득한 UPnP CP 모듈(6)의 제어 동작에 대응하는 동작을 수행한다.
또한, UPnP MS 모듈(61)은 UPnP 이벤트(event) 단계를 수행한다. 즉, UPnP MS 모듈(61)은 상기된 UPnP 제어 단계 수행에 대응하여 UPnP MS 모듈(61)을 제어하는 UPnP CP 모듈(511)에게 UPnP MS 모듈(61)에 의해 제공되는 이벤트에 관한 정보를 포함하는 이벤트 메시지를 전송한다. 예를 들어, UPnP MS 모듈(61)은 UPnP 컨텐트 디렉토리 서비스의 이벤트 중 시스템 갱신 아이디 변수(SystemUpdateID)를 알리는 이벤트를 초기 이벤트 메시지로 전송한다. 컨텐트 디렉토리 내의 어떤 것이라도 변화가 있으면, 이 시스템 갱신 아이디 값이 변환된다.
다만, 본 실시예에 따르면, DHT MS 모듈(63)은 DHT 규격에 따라 DHT 스토리지(53)에 접근하기 위한 기능만을 수행하는 모듈이기 때문에 UPnP 규격 상의 이벤팅과 동일한 이벤팅을 지원하지는 않는다. 그러나, DHT MS 모듈(63)이 컨텐트 갱신에 대한 이벤트 등 UPnP 규격 상의 이벤팅과 유사한 이벤팅을 지원한다면, 변환부(62)는 DHT MS 모듈(63)이 제공하는 이벤트의 형식을 UPnP 규격에 따른 이벤팅의 형식으로 변환한 후, 이것을 UPnP MS 모듈(61)로 출력한다면, UPnP MS 모듈(61)은 PnP 이벤트 단계를 수행할 수 있다.
변환부(62)는 UPnP 규격에 따른 홈 스토리지(522)에의 접근 제어의 형식을 DHT 규격에 따른 DHT 스토리지(53)에의 접근 제어의 형식으로 변환한다. 보다 상세하게 설명하면, 변환부(62)는 UPnP MS 모듈(61)에 의해 수신된 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 형식을 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 형식으로 변환한다.
또한, 변환부(62)는 DHT MS 모듈(63)에 의해 획득된 DHT 스토리지(53)에의 접근 결과 값의 형식을 UPnP 규격에 따른 홈 스토리지(522)에의 접근 결과 값의 형식으로 변환한다. 보다 상세하게 설명하면, 변환부(62)는 DHT MS 모듈(63)에 의해 획득된 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 실행 결과 값의 형식을 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값의 형식으로 변환한다.
예를 들어, UPnP CP 모듈(51)이 Browse(root directory)을 호출한 경우, UPnP MS 모듈(61)은 이것을 수신하고, 변환부(62)에 UPnP CP 모듈(51)에 의해 상기된 바와 같은 Browse(root directory)이 호출되었음을 알린다. 이어서, 변환부(62)는 도 9에 도시된 의사 코드에 따라 스토리지 접근 제어의 형식을 변환한다.
도 9는 본 발명의 바람직한 일 실시예에 따라 스토리지 접근 제어의 형식을 변환하기 위한 의사 코드(pseudo code)의 일례를 도시한 도면이다.
도 9를 참조하면, 본 실시예에 따라 스토리지 접근 제어의 형식을 변환하기 위한 의사 코드는 UPnP CP 모듈(51)에 의해 호출된 Browse(root directory)을 DHT 규격 상의 Get(key)로 변환하는 일례이다. 즉, 변환부(62)는 UPnP MS 모듈(61)로부 터 Browse(root directory)이 호출되었음을 통보받으면, 홈 네트워크를 나타내는 홈 키를 이용하여 DHT MS 모듈(63)에 대해 Get(home key)을 호출함으로서 Get(home key) 호출에 대한 반환 값으로부터 홈 데이터를 획득한다. 여기에서, 홈 데이터는 홈 네트워크에 관한 데이터로서 홈 네트워크에 존재하는 미디어 서버들의 해시 키들, 특히 기존 UPnP 미디어 서버(521)의 해시 키를 포함한다.
이어서, 변환부(62)는 상기된 바와 같이 획득된 기존 UPnP 미디어 서버(521)의 해시 키를 이용하여 DHT MS 모듈(63)에 대해 Get(hash key of Media Server)을 호출함으로서 Get(hash key of Media Server) 호출에 대한 반환 값으로부터 기존 UPnP 미디어 서버(521)의 해시 데이터를 획득한다. 여기에서, 기존 UPnP 미디어 서버(521)의 해시 데이터는 기존 UPnP 미디어 서버(521)의 디렉토리의 해시 키들, 특히 기존 UPnP 미디어 서버(521)의 루트 디렉토리의 해시 키를 포함한다.
이어서, 변환부(62)는 상기된 바와 같이 획득된 기존 UPnP 미디어 서버(521)의 루트 디렉토리의 해시 키를 이용하여 DHT MS 모듈(63)에 대해 Get(hash key of root directory)을 호출함으로서 Get(hash key of root directory) 호출에 대한 반환 값으로부터 기존 UPnP 미디어 서버(521)의 루트 디렉토리 데이터를 획득한다. 여기에서, 기존 UPnP 미디어 서버(521)의 루트 디렉토리 데이터는 기존 UPnP 미디어 서버(521)의 루트 디렉토리의 차일드 디렉토리(child directory), 아이템 등에 관한 메타 데이터(meta data)를 포함한다. 이어서, 변환부(62)는 상기된 과정을 통하여 획득된 기존 UPnP 미디어 서버(521)의 루트 디렉토리의 차일드 디렉토리, 아이템 등에 관한 메타 데이터를 포함하는 루트 디렉토리 데이터의 형식을 UPnP 규격 에 따른 Browse(root directory) 호출의 반환 값 형식으로 변환하고, 이것을 UPnP MS 모듈(63)로 출력한다.
DHT MS 모듈(63)은 UPnP MS 모듈(61)에 의해 수행되는 역할에 대응하여 DHT 스토리지(53)에 접근하는 DHT 미디어 서버로서의 역할을 수행한다. 즉, DHT MS 모듈(63)은 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API들을 제공하는 DHT 미디어 서버로서의 역할을 수행한다. Get(key)은 해시 키를 사용하여 DHT 스토리지(53)로부터 값(value)을 검색하고 이것을 반환하는 동작을 수행하는 API이다. Put(key, value)는 해시 키와 이것에 대응하는 값을 DHT 스토리지(53)에 저장하는 동작을 수행하는 API이다. Destroy(key)는 해시 키와 이것에 대응하는 값을 DHT 스토리지(53)로부터 삭제하는 동작을 수행하는 API이다. Update(key, value)는 해시 키에 대응하는 값을 갱신하는 동작을 수행하는 API이다. Join(node)은 새로운 노드가 DHT 스토리지(53)에 가입하는 동작을 수행하는 API이다. Leave(node)는 기존의 노드가 DHT 스토리지(53)로부터 탈퇴하는 동작을 수행하는 API이다.
특히, DHT MS 모듈(63)은 UPnP MS 모듈(61)에 의해 수행되는 역할에 대응하여 홈 스토리지(522)보다 접근 신뢰도가 높은 DHT 스토리지(523)에 접근한다. 즉, DHT MS 모듈(63)은 변환부(62)에 의해 변환된 형식을 갖는 접근 제어에 따라 DHT 스토리지(53)에 접근하고, 그 결과 값을 획득한다. 보다 상세하게 설명하면, DHT MS 모듈(63)은 변환부(62)에 의해 변환된 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API를 실행함으로서 DHT 스토리지(53)에 접근하고, 그 결과 값을 획득한다.
다시 도 5를 참조하면, UPnP MR 모듈(512)은 UPnP 미디어 렌더러로서의 역할을 수행한다. 특히, 본 실시예에 따르면, UPnP MR 모듈(512)은 UPnP CP 모듈(511)에서의 ExportResource() 호출의 결과로서 획득된 컨텐트를 렌더링한다.
UPnP CP 모듈(51)의 제어에 따라 DHT 스토리지(53)로부터 데이터를 독출하기 위한 동작은 다음과 같다. UPnP MS 모듈(61)은 UPnP CP 모듈(51)에서의 Browse() 호출을 수신하면, 이 Browse() 호출에 대한 반환 값으로 UPnP CP 모듈(51)에게 컨텐트 디렉토리의 오브젝트들에 대한 브라우즈를 제공한다. 이어서, UPnP CP 모듈(51)은 이 오브젝트들 중 어느 하나의 오브젝트에 대하여 DHT 스토리지(53)로부터 UPnP MR 모듈(512)로 컨텐트를 익스포트하라는 ExportResource()를 호출함으로서 DHT 스토리지(53)로부터 데이터를 독출한다.
UPnP CP 모듈(51)의 제어에 따라 DHT 스토리지(53)에 데이터를 기입하기 위한 동작은 다음과 같다. UPnP MS 모듈(61)은 UPnP CP 모듈(51)에서의 CreateObject() 호출을 수신하면, UPnP 컨텐트 디렉토리 내에 새로운 오브젝트를 생성한다. 이어서, UPnP CP 모듈(51)은 이 CreateObject() 호출에 대한 반환 값으로 상기된 바와 같이 생성된 오브젝트의 아이디를 제공하고, UPnP CP 모듈(51)은 이 오브젝트 아이디에 해당하는 오브젝트에 대하여 DHT 스토리지(53)에 컨텐트를 임포트하라는 ImportResource()를 호출함으로서 DHT 스토리지(53)에 데이터를 기입한다.
UPnP CP 모듈(51)은 주기적으로 홈 내에 존재하는 컨텐트 메타 데이터를 컨 텐트와 DHT에 존재하는 컨텐트 메타 데이터 또는 컨텐트가 동일한지 여부를 검사한다. 만일, 다른 경우에 그 차이를 반영한다.
도 10은 본 발명의 바람직한 일 실시예에 따른 다른 UPnP 스토리지 접근 시스템의 구성도이다.
도 10을 참조하면, 본 실시예에 따른 UPnP 스토리지 접근 시스템은 UPnP CP(101), UPnP MS(102), UPnP MS 프럭시(103), UPnP MR(104) 및 DHT 스토리지(105)로 구성된다. 본 실시예에 따른 UPnP 스토리지 접근 시스템과 도 5에 도시된 UPnP 스토리지 접근 시스템을 비교해보면, UPnP CP 모듈(511)과 UPnP CP(101)이 서로 대응되고, UPnP MS 모듈(521)과 UPnP MS(102)이 서로 대응되고, UPnP MS 프럭시(512)와 UPnP MS 프럭시(103)가 서로 대응되고, UPnP MR 모듈(513)과 UPnP MR(104)이 서로 대응된다. 즉, 본 실시예에 따른 UPnP 스토리지 접근 시스템은 도 5에 도시된 디바이스(51)를 구성하는 UPnP CP 모듈(511), UPnP MS 프럭시(512) 및 UPnP MR 모듈(513)이 별개의 디바이스로서 존재할 수도 있음을 보여주는 것이다.
도 11은 본 발명의 바람직한 일 실시예에 따른 또 다른 UPnP 스토리지 접근 시스템의 구성도이다.
도 11을 참조하면, 본 실시예에 따른 스토리지 접근 시스템은 UPnP CP(111), 디바이스(112) 및 DHT 스토리지(113)로 구성된다. 특히, 본 실시예에 따른 UPnP 스토리지 접근 시스템은 도 5에 도시된 스토리지 접근 시스템 및 도 10에 도시된 스토리지 접근 시스템과 달리 홈 스토리지를 구비하지 않고, DHT 스토리지(113)만을 구비한다. 즉, 본 실시예에 따른 제 3 UPnP 스토리지 접근 시스템의 DHT 스토리지 (113)는 도 5에 도시된 스토리지 접근 시스템 및 도 10에 도시된 스토리지 접근 시스템의 홈 스토리지의 역할을 한다.
UPnP CP(111)은 디바이스(112)의 UPnP MS 모듈(521)에 대해 API의 일종인 UPnP 액션을 호출함으로서 디바이스(112)의 UPnP MS 모듈(521)을 제어한다. 특히, UPnP CP(111)는 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션을 호출함으로서 디바이스(112)의 UPnP MS 모듈(521)에 의한 DHT 스토리지(113)에의 접근을 제어한다. 또한, UPnP CP 모듈(111)은 디바이스(112)로부터 출력된 browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 수신함으로서 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션 호출에 대한 반환 값을 획득한다.
도 11을 참조하면, 디바이스(112)는 UPnP MS 모듈(1121), 변환부(1122) 및 DHT MS 모듈(1123)로 구성된다.
UPnP MS 모듈(1121)은 DHT 스토리지(113)에 접근하는 UPnP 미디어 서버로서의 역할을 수행한다. 보다 상세하게 설명하면, UPnP MS 모듈(1121)은 UPnP MS 모듈(61)과 같이 UPnP의 주소 지정 단계, 발견 단계, 제어 단계 및 이벤트 단계를 수행한다. 다만, UPnP MS 모듈(1121)은 도 6에 도시된 UPnP MS 모듈(61)과는 달리 다른 UPnP MS 모듈을 대신하지는 않기 때문에 다른 UPnP MS 모듈에 대한 기존 UPnP 디바이스 설명을 차용하지 않고, UPnP MS 모듈(1121) 고유의 UPnP 디바이스 설명을 생 성한다. 특히, UPnP MS 모듈(1121)은 UPnP CP(111)로부터 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 호출을 수신함으로서 UPnP 규격에 따른 DHT 스토리지(113)에의 접근 제어를 수신한다. 또한, UPnP MS 모듈(1121)은 변환부(1122)에 의해 변환된 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 UPnP CP 모듈(51)로 출력한다.
변환부(1122)는 UPnP MS 모듈(1121)에 의해 수신된 UPnP 규격에 따른 DHT 스토리지(113)에의 접근 제어의 형식을 DHT 규격에 따른 DHT 스토리지(113)에의 접근 제어의 형식으로 변환한다. 보다 상세하게 설명하면, 변환부(1122)는 UPnP MS 모듈(1121)에 의해 수신된 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 형식을 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 형식으로 변환한다. 즉, 변환부(1122)는 변환부(62)와 같이 도 9에 도시된 의사 코드에 따라 스토리지 접근 제어의 형식을 변환할 수 있다.
또한, 변환부(1122)는 DHT MS 모듈(1123)에 의해 획득된 DHT 규격에 따른 DHT 스토리지(113)에의 접근 결과 값의 형식을 UPnP 규격에 따른 DHT 스토리지(113)에의 접근 결과 값의 형식으로 변환한다. 보다 상세하게 설명하면, 변환부(1122)는 DHT MS 모듈(1123)에 의해 획득된 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 실행 결과 값의 형식을 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값의 형식으로 변환한다.
DHT MS 모듈(1123)은 UPnP MS 모듈(1121)에 의해 수행되는 역할에 대응하여 DHT 스토리지(113)에 접근하는 DHT 미디어 서버로서의 역할을 수행한다. 특히, DHT MS 모듈(1123)은 변환부(1122)에 의해 변환된 형식을 갖는 접근 제어에 따라 DHT 스토리지(113)에 접근하고, 그 결과 값을 획득한다. 보다 상세하게 설명하면, DHT MS 모듈(1123)은 변환부(1122)에 의해 변환된 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API를 실행함으로서 DHT 스토리지(113)에 접근하고, 그 결과 값을 획득한다.
도 12는 본 발명의 바람직한 일 실시예에 따른 스토리지 접근 방법의 흐름도이다.
도 12를 참조하면, 본 실시예에 따른 스토리지 접근 방법은 도 4에 도시된 스토리지 접근 시스템에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 4에 도시된 스토리지 접근 시스템에 관하여 이상에서 기술된 내용은 본 실시예에 따른 스토리지 접근 방법에도 적용된다.
121 단계에서 제어 모듈(411)은 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근을 위한 동작을 수행하는 API를 호출함으로서 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근을 제어한다.
122 단계에서 서버 프럭시(412)는 제어 모듈(411)의 제어를 받는 서버(42)의 서버 모듈(421)에 의한 홈 스토리지(422)에의 접근이 실패하였음을 검출한 경우에는 123 단계로 진행하고, 검출하지 못한 경우에는 종료한다.
123 단계에서 서버 프럭시(412)는 서버(42)의 서버 모듈(421)을 대신하여 제어 모듈(411)로부터 홈 스토리지(422)에의 접근을 위한 동작을 수행하는 API의 호출을 수신한다.
124 단계에서 서버 프럭시(412)는 상기된 API 호출에 응하여 홈 스토리지(422) 대신에 인터넷 스토리지(43)에 대하여 이 API를 실행함으로서 서버(42)의 서버 모듈(421)이 홈 스토리지(422)에 접근하는 것을 대신하여 인터넷 스토리지(43)에 접근한다.
도 13은 본 발명의 바람직한 실시예에 따른 UPnP 스토리지 접근 방법은 흐름도이다.
도 13을 참조하면, 본 실시예에 따른 UPnP 스토리지 접근 방법은 도 5-6에 도시된 UPnP 스토리지 접근 시스템에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 5-6에 도시된 UPnP 스토리지 접근 시스템에 관하여 이상에서 기술된 내용은 본 실시예에 따른 UPnP 스토리지 접근 방법에도 적용된다.
131 단계에서 UPnP CP 모듈(511)은 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션을 호출함으로서 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근을 제 어한다.
132 단계에서 UPnP MS 프럭시(512)는 UPnP CP 모듈(511)의 제어를 받는 서버(52)의 UPnP MS 모듈(521)에 의한 홈 스토리지(522)에의 접근이 실패하였음을 검출한 경우에는 133 단계로 진행하고, 검출하지 못한 경우에는 종료한다.
133 단계에서 UPnP MS 프럭시(512)는 UPnP CP 모듈(511)로부터 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 호출을 수신함으로서 홈 스토리지(522)에의 접근 제어를 수신한다.
134 단계에서 UPnP MS 프럭시(512)는 133 단계에서 수신된 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 형식을 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 형식으로 변환한다.
135 단계에서 UPnP MS 프럭시(512)는 134 단계에서 변환된 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API를 실행함으로서 DHT 스토리지(53)에 접근하고, 그 결과 값을 획득한다.
136 단계에서 UPnP MS 프럭시(512)는 135 단계에서 획득된 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 실행 결과 값의 형식을 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값의 형식으로 변환한다.
137 단계에서 UPnP MS 프럭시(512)는 136 단계에서 변환된 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 UPnP CP 모듈(51)로 출력한다.
138 단계에서 UPnP CP 모듈(511)은 137 단계에서 출력된 rowse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 수신함으로서 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션 호출에 대한 반환 값을 획득한다.
도 14는 본 발명의 바람직한 실시예에 따른 다른 UPnP 스토리지 접근 방법은 흐름도이다.
도 14를 참조하면, 본 실시예에 따른 UPnP 스토리지 접근 방법은 도 11에 도시된 UPnP 스토리지 접근 시스템에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 11에 도시된 UPnP 스토리지 접근 시스템에 관하여 이상에서 기술된 내용은 본 실시예에 따른 UPnP 스토리지 접근 방법에도 적용된다.
141 단계에서 UPnP CP(111)는 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션을 호출함으로서 디바이스(112)의 UPnP MS 모듈(521)에 의한 DHT 스토리지(113)에의 접 근을 제어한다.
142 단계에서 디바이스(112)는 UPnP CP(111)로부터 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 호출을 수신함으로서 UPnP 규격에 따른 DHT 스토리지(113)에의 접근 제어를 수신한다.
143 단계에서 디바이스(112)는 142 단계에서 수신된 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 형식을 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 형식으로 변환한다.
144 단계에서 디바이스(112)는 143 단계에서 변환된 DHT 규격에 따른 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API를 실행함으로서 DHT 스토리지(113)에 접근하고, 그 결과 값을 획득한다.
145 단계에서 디바이스(112)는 144 단계에서 획득된 Get(key), Put(key, value), Destroy(key), Update(key, value), Join(node), Leave(node) 등과 같은 API의 실행 결과 값의 형식을 UPnP 규격에 따른 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값의 형식으로 변환한다.
146 단계에서 디바이스(112)는 145 단계에서 변환된 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 UPnP CP 모듈(51)로 출력한다.
147 단계에서 UPnP CP 모듈(111)은 디바이스(112)로부터 출력된 browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션의 실행 결과 값을 수신함으로서 Browse(), Search(), CreateObject(), DestroyObject(), ImportResource(), ExportResource() 등과 같은 UPnP 액션 호출에 대한 반환 값을 획득한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록매체에 여러 수단을 통하여 기록될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관 점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명에 따르면, 홈 스토리지에의 접근이 실패하였는지 여부에 따라 홈 스토리지보다 접근 신뢰도가 높은 인터넷 스토리지에 접근함으로서 홈 스토리지가 동작하지 않는 경우, 예를 들어 홈 스토리지의 전원이 오프된 경우에도 컨텐트의 메타 데이터 및 컨텐트를 획득할 수 있다는 효과가 있다.
또한, 본 발명에 따르면, 홈 스토리지에 접근할 수 있는 UPnP 미디어 서버 모듈을 대신하여 UPnP 미디어 서버로서의 역할을 수행하고, 이 역할에 대응하여 홈 스토리지보다 접근 신뢰도가 높은 인터넷 스토리지에 접근하는 프럭시를 도입함으로서 기존의 UPnP 규격을 그대로 따르도록 하였다. 그 결과, 본 발명의 적용으로 인한 UPnP 규격에 따른 홈 스토리지 환경의 변경을 최소화할 수 있게 되었다. 특히, 본 발명에 따라 인터넷 스토리지로서 DHT 스토리지를 사용할 경우, 데이터 리던던시(data redundancy), 로케이션 트랜스페이런시(Location transparency) 등과 같은 DHT 스토리지의 장점을 홈 스토리지 환경에 적용할 수 있다는 효과가 있다.
또한, 본 발명에 따르면, 우선 홈 스토리지에 접근하고, 이 홈 스토리지에의 접근이 실패하였는지 여부에 따라 다음으로 인터넷 스토리지에 접근하기 때문에 항상 인터넷을 경유하여 컨텐트를 업로드하고, 다운로드할 필요가 없기 때문에 인터넷의 트래픽을 감소시킬 수 있다는 효과가 있다.

Claims (22)

  1. (a) 제어 모듈은 제 1 네트워크를 통하여 서버 모듈에 의한 제 1 스토리지에의 접근을 제어하는 단계; 및
    (b) 상기 서버 모듈을 대신하여 서버로서의 역할을 수행하는 서버 프럭시는 상기 제어에 따른 제 1 스토리지에의 접근이 실패하였는지 여부에 따라 상기 서버 모듈이 상기 제 1 스토리지에의 접근 제어 형식을 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에의 접근 제어 형식으로 변환하여 제 2 네트워크를 통하여 상기 제 2 스토리지에 접근하는 단계를 포함하는 것을 특징으로 하는 스토리지 접근 방법.
  2. 제 1 항에 있어서,
    상기 제 1 스토리지는 홈 네트워크에 위치한 스토리지이고,
    상기 제 2 스토리지는 인터넷에 위치한 스토리지인 것을 특징으로 하는 스토리지 접근 방법.
  3. 제 1 항에 있어서,
    상기 (b) 단계는 상기 서버 프럭시가 상기 제어를 받는 서버 모듈에 의한 상기 제 1 스토리지에의 접근이 실패하였음을 검출하면, 상기 서버 프럭시는 상기 서버 모듈이 상기 제 1 스토리지에 접근하는 것을 대신하여 상기 제 2 스토리지에 접근하고,
    상기 서버 모듈은 서버에 포함되고, 상기 서버 프럭시는 디바이스에 포함되는 것을 특징으로 하는 스토리지 접근 방법.
  4. 제 1 항에 있어서,
    상기 (a) 단계는 상기 제 1 스토리지에의 접근을 위한 소정 동작을 수행하는 소정 API를 호출함으로서 상기 제 1 스토리지에의 접근을 제어하고,
    상기 (b) 단계는 상기 소정 API(Application Program Interface)의 호출에 응하여 상기 제 1 스토리지 대신에 상기 제 2 스토리지에 대해 상기 소정 API를 실행함으로서 상기 제 2 스토리지에 접근하는 것을 특징으로 하는 스토리지 접근 방법.
  5. 제 4 항에 있어서,
    상기 소정의 API는 UPnP(Universal Plug and Play) 액션인 것을 특징으로 하는 스토리지 접근 방법.
  6. 제 1 네트워크를 통하여 제 1 스토리지에의 접근을 제어하는 제어 모듈; 및
    상기 제어에 따른 제 1 스토리지에의 접근이 실패하였는지 여부에 따라 상기 제 1 스토리지에의 접근 제어 형식을 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에의 접근 제어 형식으로 변환하여 제 2 네트워크를 통하여 상기 제 2 스토리지에 접근하는 서버 프럭시를 포함하는 것을 특징으로 하는 스토리지 접근 장치.
  7. 제 1 항 내지 제 5 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  8. (a) 제 1 서버 모듈은 제 1 네트워크를 통하여 제 1 스토리지에 접근할 수 있는 기존 서버 모듈을 대신하여 상기 제 1 스토리지에 접근하는 서버로서의 역할을 수행하는 단계;
    (b) 상기 제 1 스토리지에의 접근 제어 형식을 제 2 스토리지에의 접근 제어 형식으로 변환하는 단계; 및
    (c) 제 2 서버 모듈은 상기 변환된 형식을 갖는 접근 제어에 따라 상기 제 1 서버 모듈에 의해 수행되는 역할에 대응하여 제 2 네트워크를 통하여 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 단계를 포함하고,
    상기 기존 서버 모듈은 서버에 포함되고, 상기 제 1 서버 모듈 및 상기 제 2 서버 모듈은 디바이스에 포함되는 것을 특징으로 하는 스토리지 접근 방법.
  9. 제 8 항에 있어서,
    상기 제 1 스토리지는 홈 네트워크에 위치한 스토리지이고,
    상기 제 2 스토리지는 인터넷에 위치한 스토리지인 것을 특징으로 하는 스토리지 접근 방법.
  10. 제 8 항에 있어서,
    상기 (b) 단계는 제 1 규격에 따른 상기 제 1 스토리지에의 접근 제어의 형식을 제 2 규격에 따른 상기 제 2 스토리지에의 접근 제어의 형식으로 변환하는 것을 특징으로 하는 스토리지 접근 방법.
  11. 제 10 항에 있어서,
    상기 (b) 단계는 상기 제 1 규격에 따른 상기 제 1 스토리지에 접근하기 위한 API의 형식을 상기 제 2 규격에 따른 상기 제 2 스토리지에 접근하기 위한 API의 형식으로 변환하고,
    상기 (c) 단계는 상기 변환된 형식의 API를 실행함으로서 상기 제 2 스토리지에 접근하는 것을 특징으로 하는 방법.
  12. 제 10 항에 있어서,
    상기 제 2 스토리지에의 접근의 결과 값을 획득하는 단계; 및
    상기 제 2 서버 모듈에 의해 획득된 접근 결과 값의 형식을 상기 제 1 규격에 따른 상기 제 1 스토리지에의 접근 결과 값의 형식으로 변환하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  13. 제 10 항에 있어서,
    상기 제 1 규격은 UPnP(Universal Plug and Play) 규격이고, 상기 2 규격은 DHT(Distributed Hash Table) 규격인 것을 특징으로 하는 방법.
  14. 제 1 네트워크를 통하여 제 1 스토리지에 접근할 수 있는 기존 서버 모듈을 대신하여 상기 제 1 스토리지에 접근하는 서버로서의 역할을 수행하는 제 1 서버 모듈;
    상기 제 1 스토리지에의 접근 제어 형식을 제 2 스토리지에의 접근 제어 형식으로 변환하는 변환부; 및
    상기 변환된 형식을 갖는 접근 제어에 따라 상기 제 1 서버 모듈에 의해 수행되는 역할에 대응하여 제 2 네트워크를 통하여 상기 제 1 스토리지보다 접근 신뢰도가 높은 제 2 스토리지에 접근하는 제 2 서버 모듈을 포함하는 것을 특징으로 하는 스토리지 접근 장치.
  15. 제 8 항 내지 제 13 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위 한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  16. (a) 제 1 네트워크를 통하여 제 1 규격을 따른 스토리지에의 접근 제어를 수신하는 단계;
    (b) 상기 제 1 규격에 따른 상기 스토리지에의 접근 제어의 형식을 제 2 규격에 따른 상기 스토리지에의 접근 제어의 형식으로 변환하는 단계; 및
    (c) 상기 변환된 형식을 갖는 접근 제어에 따라 제 2 네트워크를 통하여 상기 스토리지에 접근하는 단계를 포함하는 것을 특징으로 하는 스토리지 접근 방법.
  17. 제 16 항에 있어서,
    상기 스토리지는 인터넷에 위치한 스토리지인 것을 특징으로 하는 스토리지 접근 방법.
  18. 제 16 항에 있어서,
    상기 (b) 단계는 상기 제 1 규격에 따른 상기 스토리지에 접근하기 위한 API의 형식을 상기 제 2 규격에 따른 상기 스토리지에 접근하기 위한 API의 형식으로 변환하고,
    상기 (c) 단계는 상기 제 2 규격에 따른 API(Application Program Interface)를 실행함으로서 상기 스토리지에 접근하는 것을 특징으로 하는 스토리지 접근 방법.
  19. 제 16 항에 있어서,
    상기 제 2 규격에 따른 상기 스토리지에의 접근 결과 값을 획득하는 단계; 및
    상기 획득된 접근 결과 값의 형식을 상기 제 1 규격에 따른 상기 스토리지에의 접근 결과 값의 형식으로 변환하는 단계를 더 포함하는 것을 특징으로 하는 스토리지 접근 방법.
  20. 제 16 항에 있어서,
    상기 제 1 규격은 UPnP(Universal Plug and Play) 규격이고, 상기 2 규격은 DHT(Distributed Hash Table) 규격인 것을 특징으로 하는 스토리지 접근 방법.
  21. 제 1 네트워크를 통하여 제 1 규격을 따른 스토리지에의 접근 제어를 수신하는 제 1 서버 모듈;
    상기 제 1 규격에 따른 상기 스토리지에의 접근 제어의 형식을 제 2 규격에 따른 상기 스토리지에의 접근 제어의 형식으로 변환하는 변환부; 및
    상기 변환된 형식을 갖는 접근 제어에 따라 제 2 네트워크를 통하여 상기 스토리지에 접근하는 제 2 서버 모듈을 포함하는 것을 특징으로 하는 스토리지 접근 장치.
  22. 제 16 항 내지 제 20 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020060000968A 2006-01-04 2006-01-04 인터넷 스토리지에 접근하는 방법 및 장치 KR100862659B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020060000968A KR100862659B1 (ko) 2006-01-04 2006-01-04 인터넷 스토리지에 접근하는 방법 및 장치
EP06127371A EP1816554A3 (en) 2006-01-04 2006-12-29 Method of accessing storage and storage access apparatus
CN2006101566731A CN1996848B (zh) 2006-01-04 2006-12-30 访问家庭存储器或互联网存储器的方法和设备
CN2010101477109A CN101834767B (zh) 2006-01-04 2006-12-30 访问家庭存储器或互联网存储器的方法和设备
JP2007000261A JP5202847B2 (ja) 2006-01-04 2007-01-04 インターネットストレージへの接近方法及び装置
US11/649,258 US9110606B2 (en) 2006-01-04 2007-01-04 Method and apparatus for accessing home storage or internet storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060000968A KR100862659B1 (ko) 2006-01-04 2006-01-04 인터넷 스토리지에 접근하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20070073263A KR20070073263A (ko) 2007-07-10
KR100862659B1 true KR100862659B1 (ko) 2008-10-10

Family

ID=37891686

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060000968A KR100862659B1 (ko) 2006-01-04 2006-01-04 인터넷 스토리지에 접근하는 방법 및 장치

Country Status (5)

Country Link
US (1) US9110606B2 (ko)
EP (1) EP1816554A3 (ko)
JP (1) JP5202847B2 (ko)
KR (1) KR100862659B1 (ko)
CN (2) CN101834767B (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006108104A2 (en) * 2005-04-05 2006-10-12 Cohen Alexander J Multi-media search, discovery, submission and distribution control infrastructure
CN101212420B (zh) 2006-12-27 2010-09-29 华为技术有限公司 重定向器、中继、路由信息配置系统及更新方法
US8775817B2 (en) * 2008-05-12 2014-07-08 Microsoft Corporation Application-configurable distributed hash table framework
KR101831686B1 (ko) 2010-06-14 2018-02-23 삼성전자주식회사 홈 네트워크에서 객체의 변경을 판단하는 방법 및 장치
US9104507B2 (en) * 2010-06-25 2015-08-11 Daniel Knoodle Developer platform
EP2523143B1 (en) * 2011-05-10 2016-11-09 BlackBerry Limited Access control at a media server

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020046410A (ko) * 2000-12-14 2002-06-21 김지한, 김재형 웹 공유 백업 저장장치를 이용한 개인간 직접 통신 분산네트워크 시스템
KR20050094286A (ko) * 2004-03-22 2005-09-27 엘지전자 주식회사 인터넷을 이용한 UPnP 디바이스 제어 방법

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771354A (en) * 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
US6754712B1 (en) * 2001-07-11 2004-06-22 Cisco Techonology, Inc. Virtual dial-up protocol for network communication
US6029231A (en) * 1996-12-03 2000-02-22 Emc Corporation Retrieval of data stored on redundant disks across a network using remote procedure calls
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
US6226649B1 (en) * 1997-06-23 2001-05-01 Oracle Corporation Apparatus and method for transparent access of foreign databases in a heterogeneous database system
KR20000008981A (ko) 1998-07-20 2000-02-15 윤종용 데이터 베이스 시스템에서 결함 극복 처리를 지원하는 시스템
US6438652B1 (en) * 1998-10-09 2002-08-20 International Business Machines Corporation Load balancing cooperating cache servers by shifting forwarded request
US6381602B1 (en) * 1999-01-26 2002-04-30 Microsoft Corporation Enforcing access control on resources at a location other than the source location
ATE390788T1 (de) * 1999-10-14 2008-04-15 Bluearc Uk Ltd Vorrichtung und verfahren zur hardware-ausführung oder hardware-beschleunigung von betriebssystemfunktionen
US6775695B1 (en) * 1999-10-29 2004-08-10 Hewlett-Packard Development Company, L.P. Client session depth based caching in proxy servers
EP1256225B1 (en) 2000-02-04 2010-08-18 Listen.Com, Inc. System for distributed media network and meta data server
US6956833B1 (en) * 2000-02-08 2005-10-18 Sony Corporation Method, system and devices for wireless data storage on a server and data retrieval
US6779035B1 (en) * 2000-03-06 2004-08-17 Microsoft Corporation Application programming interface and generalized network address translator for translation of transport-layer sessions
US7565326B2 (en) * 2000-05-25 2009-07-21 Randle William M Dialect independent multi-dimensional integrator using a normalized language platform and secure controlled access
US20020078161A1 (en) * 2000-12-19 2002-06-20 Philips Electronics North America Corporation UPnP enabling device for heterogeneous networks of slave devices
US7266556B1 (en) * 2000-12-29 2007-09-04 Intel Corporation Failover architecture for a distributed storage system
US20060173951A1 (en) * 2001-01-25 2006-08-03 Carlos Arteaga System and method for transfer, control, and synchronization of data
US20020161826A1 (en) * 2001-01-25 2002-10-31 Carlos Arteaga System and method for remote communication transactions
US7194590B2 (en) * 2001-02-28 2007-03-20 Hitachi, Ltd. Three data center adaptive remote copy
US20020174236A1 (en) * 2001-03-26 2002-11-21 Sanjay Mathur Methods and apparatus for processing data in a content network
US6944133B2 (en) * 2001-05-01 2005-09-13 Ge Financial Assurance Holdings, Inc. System and method for providing access to resources using a fabric switch
KR100430392B1 (ko) 2001-06-20 2004-05-10 최용식 손톱 깎기
JP3508857B2 (ja) * 2001-07-31 2004-03-22 日本電気株式会社 ノード間データ転送方法およびデータ転送装置
EP1286501A1 (en) 2001-08-22 2003-02-26 Thomson Licensing S.A. Method for bridging a UPNP network and a HAVI network
US6938031B1 (en) * 2001-10-19 2005-08-30 Data Return Llc System and method for accessing information in a replicated database
US7574496B2 (en) * 2001-11-30 2009-08-11 Surgient, Inc. Virtual server cloud interfacing
KR100796865B1 (ko) * 2001-12-31 2008-01-22 엘지전자 주식회사 이동 통신 단말기와 이를 이용한 네트웍 접속 시스템 및그 방법
JP4287092B2 (ja) 2002-03-29 2009-07-01 株式会社富士通ソーシアルサイエンスラボラトリ ファイル管理システムおよびファイル管理方法
US20030191802A1 (en) 2002-04-03 2003-10-09 Koninklijke Philips Electronics N.V. Reshaped UDDI for intranet use
GB2387684A (en) * 2002-04-19 2003-10-22 Hewlett Packard Co Management of a long term digital document storage system
KR100440583B1 (ko) * 2002-05-16 2004-07-19 한국전자통신연구원 외부 인터넷에 의한 댁내망의 UPnP장치 관리제어 장치및 방법
JP2005535947A (ja) * 2002-05-31 2005-11-24 インターナショナル・ビジネス・マシーンズ・コーポレーション 異なるタイプのバックエンド・データ・ストアにアクセスするためのシステムおよび方法
US7664652B2 (en) * 2002-08-20 2010-02-16 Piccionelli Gregory A Record-keeping system for transmission and production of content
US7827116B2 (en) * 2002-08-20 2010-11-02 Piccionelli Gregory A Methods of producing and transmitting content based on compliance
US7813936B2 (en) * 2002-08-20 2010-10-12 Piccionelli Gregory A Record-keeping system for transmission and production of content
US7769722B1 (en) * 2006-12-08 2010-08-03 Emc Corporation Replication and restoration of multiple data storage object types in a data network
US7254636B1 (en) * 2003-03-14 2007-08-07 Cisco Technology, Inc. Method and apparatus for transparent distributed network-attached storage with web cache communication protocol/anycast and file handle redundancy
CN100487695C (zh) * 2003-06-30 2009-05-13 国际商业机器公司 在计算机网络中检索电子文档的复制件
US7010657B2 (en) * 2003-07-21 2006-03-07 Motorola, Inc. Avoiding deadlock between storage assignments by devices in a network
US7349913B2 (en) * 2003-08-21 2008-03-25 Microsoft Corporation Storage platform for organizing, searching, and sharing data
WO2005045682A1 (en) * 2003-10-10 2005-05-19 William Tracy Fuller Methods for expansion, sharing of electronic storage
US20050097440A1 (en) * 2003-11-04 2005-05-05 Richard Lusk Method and system for collaboration
JP4273973B2 (ja) * 2004-01-15 2009-06-03 ソニー株式会社 情報通信システム、送信装置及び送信方法、並びにコンピュータ・プログラム
US7420956B2 (en) * 2004-04-16 2008-09-02 Broadcom Corporation Distributed storage and aggregation of multimedia information via a broadband access gateway
CA2578260A1 (en) * 2004-08-30 2006-03-09 University Of Utah Research Foundation Locally operated desktop environment for a remote computing system
US7711835B2 (en) * 2004-09-30 2010-05-04 Citrix Systems, Inc. Method and apparatus for reducing disclosure of proprietary data in a networked environment
US7366856B2 (en) * 2004-10-13 2008-04-29 Ebay Inc. Method and system to locate a storage device
JP2006178811A (ja) * 2004-12-24 2006-07-06 Hitachi Ltd ストレージシステム及びストレージシステムのパス制御方法
US7577689B1 (en) * 2005-06-15 2009-08-18 Adobe Systems Incorporated Method and system to archive data
US20070033190A1 (en) * 2005-08-08 2007-02-08 Microsoft Corporation Unified storage security model
US20070067670A1 (en) * 2005-09-19 2007-03-22 Xiotech Corporation Method, apparatus and program storage device for providing drive load balancing and resynchronization of a mirrored storage system
US8027982B2 (en) * 2006-03-01 2011-09-27 Oracle International Corporation Self-service sources for secure search
US8005816B2 (en) * 2006-03-01 2011-08-23 Oracle International Corporation Auto generation of suggested links in a search system
US7707367B1 (en) * 2007-06-28 2010-04-27 Emc Corporation Data storage system having separate atomic operation/non-atomic operation paths
US20090037522A1 (en) * 2007-08-02 2009-02-05 Sony Corporation System and Method for Simulating Network Functionality for Demonstration Devices
US7991840B2 (en) * 2008-01-24 2011-08-02 International Business Machines Corporation System and product for role-based tag management for collaborative services integrated within an SOA
US8909863B2 (en) * 2009-11-16 2014-12-09 Microsoft Corporation Cache for storage and/or retrieval of application information
US8239589B1 (en) * 2010-03-31 2012-08-07 Amazon Technologies, Inc. Balancing latency and throughput for shared resources

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020046410A (ko) * 2000-12-14 2002-06-21 김지한, 김재형 웹 공유 백업 저장장치를 이용한 개인간 직접 통신 분산네트워크 시스템
KR20050094286A (ko) * 2004-03-22 2005-09-27 엘지전자 주식회사 인터넷을 이용한 UPnP 디바이스 제어 방법

Also Published As

Publication number Publication date
KR20070073263A (ko) 2007-07-10
JP5202847B2 (ja) 2013-06-05
JP2007183965A (ja) 2007-07-19
US9110606B2 (en) 2015-08-18
CN1996848A (zh) 2007-07-11
US20070156899A1 (en) 2007-07-05
EP1816554A3 (en) 2009-11-18
CN1996848B (zh) 2010-06-02
CN101834767A (zh) 2010-09-15
CN101834767B (zh) 2012-04-18
EP1816554A2 (en) 2007-08-08

Similar Documents

Publication Publication Date Title
US8176061B2 (en) Tracking digital assets on a distributed network
JP4781822B2 (ja) ホームネットワークでコンテンツに対する一つのビューを提供する方法及びシステム
KR101031929B1 (ko) 비통합 툴에 대한 통합 아키텍처
KR100862659B1 (ko) 인터넷 스토리지에 접근하는 방법 및 장치
US8219692B2 (en) Method and apparatus for storing and restoring state information of remote user interface
RU2448362C2 (ru) Отображение обнаруженных элементов универсального режима "подключай и работай" на местоположение smb
JP5094840B2 (ja) ホームネットワークデバイスのコンテンツを同期化する方法及び装置
US20050044483A1 (en) Method of accessing and sharing a digital document in P2P communication network
CN1950814A (zh) 为联网的媒体服务器中所存储的内容管理书签信息的方法和装置
JP2011188486A (ja) ピアツーピアグラフ管理インタフェースおよび方法
KR20150004877A (ko) 네트워크 스토리지 서비스에서 어플리케이션과 파일타입의 관련
JP2010518490A (ja) 不定期接続されるアプリケーションのための同期フレームワーク
WO2012000999A1 (en) Configuring a computer system for a software package installation
US20100250729A1 (en) Method and System For Providing Access To Metadata Of A Network Accessible Resource
WO2018111770A1 (en) Systems and methods for list retrieval in a storage device
CN112148678B (zh) 一种文件访问方法、系统、设备以及介质
JP2008537214A (ja) 自動イントラネットサービス公開及びサービスアクセス
JP2002094531A (ja) ネットワーク上のデバイス情報取得方法、ネットワーク上のデバイス情報取得装置及び記録媒体
CN111966634A (zh) 一种文件操作方法、系统、设备以及介质
US20100250591A1 (en) Methods, Systems, And Computer Program Products For Providing Access To Metadata For An Identified Resource
KR20070107565A (ko) 컨텐트 디렉토리 서비스를 제공하는 장치와 제공하지 않는장치 간의 동기화 방법 및 이를 수행하는 장치
US20100235469A1 (en) Method And System For Providing Access To Resources Related To A Locatable Resource
JP5300650B2 (ja) HttpServiceを用いたサービス登録装置、コンテンツ登録装置、サービス登録方法、コンテンツ登録方法、プログラム及び記録媒体
JP5226243B2 (ja) 同期化方法及び同期化装置
JP4243563B2 (ja) オブジェクト接続先通知装置、オブジェクト接続先通知システム、ならびに、オブジェクト接続先通知プログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
E90F Notification of reason for final refusal
B701 Decision to grant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee