KR100997569B1 - 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치 - Google Patents

중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치 Download PDF

Info

Publication number
KR100997569B1
KR100997569B1 KR1020097024713A KR20097024713A KR100997569B1 KR 100997569 B1 KR100997569 B1 KR 100997569B1 KR 1020097024713 A KR1020097024713 A KR 1020097024713A KR 20097024713 A KR20097024713 A KR 20097024713A KR 100997569 B1 KR100997569 B1 KR 100997569B1
Authority
KR
South Korea
Prior art keywords
server
client
license
hub network
content data
Prior art date
Application number
KR1020097024713A
Other languages
English (en)
Other versions
KR20100003303A (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
Priority claimed from US10/686,956 external-priority patent/US8011015B2/en
Application filed by 소니 픽쳐스 엔터테인먼트, 인크. filed Critical 소니 픽쳐스 엔터테인먼트, 인크.
Publication of KR20100003303A publication Critical patent/KR20100003303A/ko
Application granted granted Critical
Publication of KR100997569B1 publication Critical patent/KR100997569B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/441Acquiring end-user identification, e.g. using personal code sent by the remote control or by inserting a card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/103Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for protecting copy right

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

네트워크 환경에서 장치 및 컨텐츠를 관리하는 방법 및 장치. 일 구현예에서, 네트워크 매체 환경은, 제1 서버와 제1 클라이언트를 구비하되 상기 제1 서버가 상기 제1 클라이언트에 접속되는 제1 허브 네트워크; 제2 서버와 제2 클라이언트를 구비하되 상기 제2 서버가 상기 제1 허브 네트워크와 상기 제2 허브 네트워크가 중첩하는 상기 제1 클라이언트에 접속되는 제2 허브 네트워크를 포함하며, 상기 제1 클라이언트는 상기 제1 허브 네트워크에 결합된 제1 컨텐츠를 저장하고 상기 제2 허브 네트워크에 결합된 제2 컨텐츠를 저장한다.
네트워크 매체 환경, 허브 네트워크, 라이선스 제공, 잠김 컨텐츠 데이터, 폐기 목록

Description

중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치{METHOD AND APPARATUS FOR ACCESS CONTROL IN AN OVERLAPPING MULTISERVER NETWORK ENVIRONMENT}
본 개시는 네트워크 환경에서 장치 및 컨텐츠를 관리하는 방법 및 기기에 관한 것이다.
음악과 영화와 같은 오디오 및 비디오 매체 컨텐츠는 광 스토리지(예를 들면, CD 및 DVD) 또는 자기 스토리지(예를 들면, 하드 디스크)에서 저장된 전자 파일에서와 같이 다양한 디지털 형태로 점차 이용가능해진다. 디지털 컨텐츠는 사용자에 대한 높은 품질의 재생 및 용이한 액세스를 모두 제공한다. 디지털 컨텐츠의 다른 이점은 통상 컨텐츠의 높은 품질의 복사본을 생성하는 것이 통상 용이하다는 점이다. 사용자는 여러 위치에서 다양한 장치를 통해 디지털 컨텐츠를 액세스하는 것을 즐긴다. 그러나, 컨텐츠 소유자는 종종 비제어 및 비인가된 복사와 침해 등의 결과적인 잠재적 문제 등을 걱정한다.
본 개시는 네트워크 환경에서 장치 및 컨텐츠를 관리하는 방법 및 기기에 관한 것이다.
일 구현예에서, 네트워크 매체 환경은 제1 서버와 제1 클라이언트를 구비하는 제1 허브 네트워크 - 상기 제1 서버는 상기 제1 클라이언트에 접속됨 -; 및 제2 서버와 상기 제1 클라이언트를 구비하는 제2 허브 네트워크 - 상기 제2 서버는 상기 제1 허브 네트워크와 상기 제2 허브 네트워크가 중첩하도록 상기 제1 클라이언트에 접속됨 - 를 포함하되, 상기 제1 클라이언트는 상기 제1 허브 네트워크에 결합된 제1 컨텐츠를 저장하고 상기 제2 허브 네트워크에 결합된 제2 컨텐츠를 저장한다.
다른 구현예에서, 네트워크 매체 환경은, 제1 서버와 제1 클라이언트를 구비하는 제1 허브 네트워크 - 상기 제1 서버는 상기 제1 클라이언트에 접속됨 -; 및 제2 서버와 상기 제1 클라이언트를 구비하는 제2 허브 네트워크 - 상기 제2 서버는 상기 제1 허브 네트워크와 상기 제2 허브 네트워크가 중첩하도록 상기 제1 클라이언트에 접속됨 - 를 포함하되, 상기 제1 서버는 잠김 컨텐츠 데이터의 제1 소스 버전으로 제1 컨텐츠를 저장하고, 상기 제1 서버는 상기 제1 소스 버전에 대하여 상기 제1 허브 네트워크에 결합된 제1 루트 라이선스를 저장하며, 상기 제2 서버는 잠김 컨텐츠 데이터의 제2 소스 버전으로 제2 컨텐츠를 저장하고, 상기 제2 서버는 상기 제2 소스 버전에 대하여 상기 제2 허브 네트워크에 결합된 제2 루트 라이선스를 저장하며, 상기 제1 클라이언트는 상기 제1 서버에 의해 상기 제1 소스 버전으로부터 스트리밍된 상기 제1 컨텐츠를 수신하고, 상기 제1 클라이언트는 상기 제2 서버에 의해 상기 제2 소스 버전으로부터 스트리밍된 상기 제2 컨텐츠를 수신한다.
또 다른 구현예에서, 네트워크 매체 환경은, 제1 서버를 구비하는 제1 허브 네트워크; 및 제2 서버와 상기 제1 서버를 구비하는 제2 허브 네트워크 - 상기 제2 서버는 상기 제1 허브 네트워크와 상기 제2 허브 네트워크가 중첩하도록 상기 제1 서버에 접속됨 - 를 포함하되, 상기 제1 서버는 제1 라이선스와 잠김 컨텐츠 데이터의 제1 버전을 저장하되, 상기 제1 버전은 제1 컨텐츠를 저장하고, 상기 제1 서버는 제2 라이선스와 잠김 컨텐츠 데이터의 제2 버전을 저장하되, 상기 제2 버전은 제2 컨텐츠를 저장하며, 상기 제1 라이선스는 상기 제1 허브 네트워크에 결합되고, 상기 제2 라이선스는 상기 제2 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크는 루트 라이선스와 잠김 컨텐츠 데이터의 소스 버전을 저장하는 서버; 및 상기 서버에 접속되어, 제1 라이선스, 잠김 컨텐츠 데이터의 제1 서브 카피 버전, 제2 라이선스 및 잠김 컨텐츠 데이터의 제2 서브 카피 버전을 저장하는 클라이언트를 포함하되, 상기 잠김 컨텐츠 데이터의 상기 소스 버전은 제1 컨텐츠를 저장하고, 상기 루트 라이선스는 상기 허브 네트워크에 결합되며, 상기 제1 서브 카피 버전은 상기 제1 컨텐츠를 저장하고, 상기 제1 라이선스는 상기 허브 네트워크에 결합되며, 상기 제2 서브 카피 버전은 제2 컨텐츠를 저장하고, 상기 제2 라이선스는 다른 허브 네트워크에 결합된다.
일 구현예에서, 허브 네트워크의 멤버로서 클라이언트를 추가하는 방법은, 허브 네트워크에서 서버에 접속된 클라이언트를 검출하는 단계; 상기 클라이언트를 인증하는 단계; 상기 클라이언트를 인가하는 단계; 및 상기 허브 네트워크에서의 멤버로서 상기 클라이언트를 추가하는 단계를 포함한다.
다른 구현예에서, 허브 네트워크의 멤버로서 클라이언트를 추가하는 방법은 허브 네트워크에서 클라이언트로부터 서버로 접속 통지를 전송하는 단계; 상기 클라이언트로부터 상기 서버로 식별 정보를 전송하는 단계; 및 상기 서버로부터 상기 클라이언트에서의 추가 확인을 수신하는 단계를 포함하되, 상기 추가 확인은 상기 허브 네트워크에서의 멤버로서 추가되었음을 나타낸다.
또 다른 구현예에서, 허브 네트워크의 멤버로서 클라이언트를 추가하는 방법은, 허브 네트워크에서의 서버에 접속된 중간 장치를 통해 클라이언트를 인증하는 단계; 상기 중간 장치를 통해 상기 클라이언트를 인가하는 단계; 및 상기 중간 장치를 통해 상기 허브 네트워크에서의 멤버로서 상기 클라이언트를 추가하는 단계를 포함하되, 상기 클라이언트는 상기 서버에 접속되지 않는다.
또 다른 구현예에서, 허브 네트워크의 멤버로서 클라이언트를 추가하는 방법은, 허브 네트워크에서 클라이언트로부터 서버로 상기 서버에 접속된 중간 장치를 통해 접속 통지를 전송하는 단계; 상기 중간 장치를 통해 상기 클라이언트로부터 상기 서버로 식별 정보를 전송하는 단계; 및 상기 중간 장치를 통해 상기 서버로부터 상기 클라이언트에서의 추가 확인을 수신하는 단계를 포함하되, 상기 추가 확인은 상기 클라이언트가 상기 허브 네트워크에서의 멤버로서 추가되었음을 나타낸다.
또 다른 구현예에서, 허브 네트워크의 멤버로서 클라이언트를 제거하는 방법은, 허브 네트워크의 멤버로서 클라이언트의 제거를 트리거하는 단계; 상기 허브 네트워크에 결합된 컨텐츠 데이터에 대응하여 상기 클라이언트에 의해 저장된 모든 라이선스를 디스에이블하는 단계; 및 상기 클라이언트가 더 이상 상기 허브 네트워크의 멤버가 아니도록 상기 허브 네트워크에서의 멤버로서 상기 클라이언트를 제거하는 단계를 포함한다.
또 다른 구현예에서, 허브 네트워크에 클라이언트를 재접속하는 방법은, 허브 네트워크에 접속된 클라이언트를 검출하는 단계; 상기 허브 네트워크의 멤버로서 상기 클라이언트를 인증하는 단계; 및 상기 클라이언트를 인가하는 단계를 포함한다.
또 다른 구현예에서, 허브 네트워크로부터 클라이언트를 단절하는 방법은, 허브 네트워크로부터 클라이언트를 단절하는 단계; 상기 클라이언트 상에 저장된 라이선스에 대하여 만료 시점을 결합하는 단계; 및 상기 만료 시점과 상기 클라이언트의 클럭을 비교하는 단계를 포함하되, 상기 라이선스는 상기 클라이언트 상에 저장된 잠김 컨텐츠 데이터에 대응하고 상기 허브 네트워크에 결합된다.
일 구현예에서, 허브 네트워크에 컨텐츠를 결합하는 방법은, 서버와 클라이언트를 멤버로서 구비하는 허브 네트워크에 컨텐츠의 개별 버전을 결합하는 요청을 수신하는 단계 - 상기 개별 버전은 개별 잠김 컨텐츠 데이터를 포함함 -; 상기 개별 버전을 디스에이블하는 단계; 상기 서버 상에 저장된 상기 컨텐츠의 소스 버전을 생성하는 단계 - 상기 소스 버전은 소스 잠김 컨텐츠 데이터를 포함함 -; 및 상 기 서버 상에 저장된 루트 라이선스를 생성하는 단계 - 상기 루트 라이선스는 상기 네트워크에 결합됨 - 을 포함한다.
다른 구현예에서, 허브 네트워크에 결합된 컨텐츠를 해제하는 방법은, 서버와 클라이언트를 멤버로서 포함하는 허브 네트워크로부터 컨텐츠의 소스 버전의 해제 요청을 수신하는 단계 - 상기 소스 버전은 상기 서버 상에 저장되어 소스 잠김 컨텐츠 데이터를 포함하고 상기 허브 네트워크에 결합된 대응 루트 라이선스를 가짐 - ; 상기 소스 버전을 디스에이블하는 단계; 및 상기 컨텐츠의 개별 버전을 생성하는 단계 - 상기 개별 버전은 개별 잠김 컨텐츠 데이터를 포함함 - 를 포함한다.
또 다른 구현예에서, 허브 네트워크에 컨텐츠를 결합하는 방법은, 서버와 클라이언트를 멤버로서 포함하는 허브 네트워크에 개별 인스턴스를 결합하는 요청을 수신하는 단계 - 상기 개별 인스턴스는 개별 잠김 컨텐츠 데이터, 개별 라이선스, 및 개별 라이센싱 기관 데이터를 포함함 -; 상기 개별 인스턴스를 디스에이블하는 단계; 및 결합 인스턴스를 생성하는 단계 - 상기 결합 인스턴스는 소스 잠김 컨텐츠 데이터, 루트 라이선스, 및 결합 라이센싱 기관 데이터를 포함함 - 를 포함하되, 상기 루트 라이선스는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크에 결합된 컨텐츠를 해제하는 방법은, 서버와 클라이언트를 멤버로서 포함하는 허브 네트워크로부터 결합 인스턴스를 해제하는 요청을 수신하는 단계 - 상기 결합 인스턴스는 소스 잠김 컨텐츠 데이터, 루트 사이센스, 및 결합 라이센싱 기관 데이터를 포함하고, 상기 루트 라이선스는 상 기 허브 네트워크에 결합됨 -; 상기 결합 인스턴스를 디스에이블하는 단계; 및 개별 인스턴스를 생성하는 단계 - 상기 개별 인스턴스는 개별 잠김 컨텐츠 데이터, 개별 라이선스, 및 개별 라이센싱 기관 데이터를 포함함 - 를 포함한다.
또 다른 구현예에서, 컨텐츠의 개별 인스턴스는, 잠김 컨텐츠 데이터; 상기 잠김 컨텐츠 데이터를 복호화하는 키; 라이선스; 및 라이센싱 기관 데이터를 포함하되, 상기 개별 인스턴스는 판독 및 기입가능한 저장 매체인 호환 매체에 저장되고, 상기 잠김 컨텐츠 데이터는 컨텐츠 암호화 기술을 사용하여 암호화되며, 상기 키는 상기 컨텐츠 암호화 기술과는 상이한 허브 네트워크 암호화 기술을 사용하여 암호화된다.
또 다른 구현예에서, 적어도 데이터의 개별 집합을 저장하는 호환 매체 물품(article)은, 상기 데이터가, 잠김 컨텐츠 데이터; 상기 잠김 컨텐츠 데이터를 복호화하는 키; 라이선스; 및 라이센싱 기관 데이터를 포함하며, 상기 잠김 컨텐츠 데이터는 컨텐츠 암호화 기술을 사용하여 암호화되고, 상기 키는 상기 컨텐츠 암호화 기술과는 상이한 허브 네트워크 암호화 기술을 사용하여 암호화되고, 상기 호환 매체는 판독 및 기입가능한 저장 매체이며, 상기 데이터의 개별 집합의 적어도 일부는 호환 암호화 기술을 사용하여 암호화되되, 호환 장치가 상기 암호화된 상기 데이터의 개별 집합의 적어도 일부를 복호화하기 위한 호환 키를 저장하도록 암호화된다.
또 다른 구현예에서, 컨텐츠의 결합 인스턴스는, 허브 네트워크의 멤버인 서버 상에 저장된 소스 잠김 컨텐츠 데이터; 상기 소스 잠김 컨텐츠 데이터를 복호화 하는 상기 서버 상에 저장된 소스 키; 상기 서버 상에 저장된 루트 라이선스; 및 상기 서버 상에 저장된 라이센싱 기관 데이터를 포함하되, 상기 루트 라이선스는 상기 허브 네트워크에 결합되고, 상기 잠김 컨텐츠 데이터는 컨텐츠 암호화 기술을 사용하여 암호화되고, 상기 소스 키는 상기 컨텐츠 암호화 기술과는 상이한 허브 네트워크 암호화 기술을 사용하여 암호화된다.
일 구현예에서, 컨텐츠 제공 방법은 잠김 컨텐츠 데이터를 나타내는 제공 요청을 허브 네트워크 내의 클라이언트에서 수신하는 단계; 상기 잠김 컨텐츠 데이터에 대응하여 라이선스를 점검하여 상기 클라이언트가 상기 클라이언트를 상기 잠김 컨텐츠 데이터를 제공할 수 있게 하는지를 판정하는 단계; 및 상기 클라이언트에 접속된 프리젠테이션 컴포넌트를 통해 상기 잠김 컨텐츠 데이터를 제공하는 단계를 포함하되, 상기 잠김 컨텐츠 데이터의 상기 라이선스는 상기 허브 네트워크에 결합된다.
다른 구현예에서, 컨텐츠 데이터를 제공하는 방법은, 잠김 컨텐츠 데이터와 상기 허브 네트워크에서 클라이언트를 나타내는 제공 요청을 허브 네트워크 내의 서버에서 수신하는 단계; 상기 잠김 컨텐츠 데이터에 대응하여 라이선스를 점검하여, 상기 라이선스가 상기 서버를 상기 클라이언트를 통해 상기 잠김 컨텐츠 데이터를 제공할 수 있는지를 판정하는 단계; 및 데이터를 상기 클라이언트를 스트리밍하여 상기 잠김 컨텐츠 데이터를 제공하는 단계를 포함하되, 상기 잠김 컨텐츠 데이터의 상기 라이선스는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 컨텐츠 데이터를 복사하는 방법은, 잠김 컨텐츠 데이터 를 나타내는 복사 요청을 허브 네트워크에서 수신하는 단계; 및 상기 잠김 컨텐츠 데이터를 복사하여 상기 잠김 컨텐츠 데이터의 복사본을 생성하는 단계를 포함하되, 상기 잠김 컨텐츠 데이터는 상기 허브 네트워크에 결합된 대응 라이선스를 갖는다.
또 다른 구현예에서, 컨텐츠 데이터 분배 방법은, 잠김 컨텐츠 데이터의 복사본을 수신 장치에서 허브 네트워크 내의 제공 장치로부터 수신하는 단계; 상기 잠김 컨텐츠 데이터의 복사본에 대한 새로운 라이선스를 요청하는 단계; 및 상기 새로운 라이선스를 수신하는 단계를 포함한다.
또 다른 구현예에서, 컨텐츠 데이터 분배 방법은, 허브 네트워크에서의 서버에서 잠김 컨텐츠 데이터의 복사본에 대하여 새로운 라이선스의 요청을 장치로부터 수신하는 단계; 상기 서버 상의 저장된 루트 라이선스를 점검하여 상기 루트 라이선스가 상기 서버를 상기 잠김 컨텐츠 데이터의 복사본에 대한 새로운 라이선스를 제공할 수 있는 지를 판정하는 단계; 상기 루트 라이선스에 따라 상기 새로운 라이선스를 생성하는 단계; 및 상기 장치에 상기 새로운 라이선스를 전송하는 단계를 포함한다.
일 구현예에서, 허브 네트워크에서 라이선스를 획득하는 방법은, 클라이언트로부터 서버에 라이선스 요청을 전송하는 단계; 상기 클라이언트로부터 상기 서버에 접속 확인을 전송하는 단계; 및 상기 서버로부터의 라이선스 데이터를 상기 클라이언트에서 수신하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에서 접속되고, 상기 라이선스는 상기 클라이언트 상에 저장된 서브 카피 버 전을 식별하며, 상기 서브 카피 버전은 서브 카피 잠김 컨텐츠 데이터를 포함하고, 상기 라이선스 데이터는 상기 허브 네트워크에 결합된다.
다른 구현예에서, 허브 네트워크에서 라이선스를 제공하는 방법은, 서버에서 클라이언트로부터의 라이선스 요청을 수신하는 단계; 상기 서버로부터 상기 서버로 접속 확인 요청을 전송하는 단계; 및 상기 서버로부터 상기 클라이언트로 라이선스 데이터를 전송하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에서 접속되고, 상기 라이선스 요청은 상기 클라이언트에 저장된 서브 카피 버전을 식별하며, 상기 라이선스 데이터는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크에서 라이선스를 획득하는 방법은, 클라이언트로부터 중간 장치를 통해 서버에 라이선스 요청을 전송하는 단계; 상기 클라이언트로부터 상기 중간 장치를 통해 상기 서버로 접속 확인을 전송하는 단계; 및 상기 서버로부터 상기 중간 장치를 통해 상기 클라이언트에서의 라이선스 데이터를 수신하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에서 접속되지 않으며, 상기 라이선스는 상기 클라이언트 상에 저장된 서브 카피를 식별하고, 상기 서브 카피 버전은 서브 카피 잠김 컨텐츠 데이터를 포함하며, 상기 라이선스 데이터는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크에서 라이선스를 제공하는 방법은, 서버에서 중간 장치를 통해 클라이언트로부터의 라이선스 요청을 수신하는 단계; 상기 서버로부터 상기 중간 장치를 통해 상기 클라이언트로 접속 확인을 전송하는 단계; 및 상기 클라이언트로부터 상기 중간 장치를 통해 상기 클라이언트에 라이선스 데 이터를 전송하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에 접속되지 않으며, 상기 라이선스 요청은 상기 클라이언트 상에 저장된 서브 카피 버전을 식별하고, 상기 라이선스 데이터는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크에서 라이선스를 리프레시하는 방법은, 클라이언트로부터 서버로 리프레시 요청을 전송하는 단계; 상기 클라이언트로부터 상기 서버로 접속 확인을 전송하는 단계; 상기 클라이언트에서 상기 서버로부터의 갱신된 라이선스 데이터를 수신하는 단계; 및 상기 갱신된 라이선스 데이터에 따라 상기 클라이언트 상에 저장된 서브 카피 라이선스를 갱신하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에서 접속되고, 상기 리프레시 요청은 상기 클라이언트 상에 저장된 서브 카피 버전을 식별하며, 상기 서브 카피 버전은 서브 카피 잠김 컨텐츠 데이터를 포함하고, 상기 서브 카피 라이선스는 상기 서브 카피 버전에 대응하고, 상기 서브 카피 라이선스는 상기 허브 네트워크에 결합된다.
또 다른 구현예에서, 허브 네트워크에서 라이선스를 리프레시하는 방법은, 서버에서 클라이언트로부터의 리프레시 요청을 수신하는 단계; 상기 서버로부터 상기 클라이언트로 접속 확인 요청을 전송하는 단계; 및 상기 서버로부터 상기 클라이언트로 갱신된 라이선스 데이터를 전송하는 단계를 포함하되, 상기 클라이언트와 상기 서버는 허브 네트워크에 접속되고, 상기 리프레시 요청은 상기 클라이언트 상에 저장된 서브 카피 버전을 식별하며, 상기 갱신된 라이선스 데이터는 상기 서브 카피 버전에 대응하여 서브 카피 라이선스를 갱신하기 위한 것이며, 상기 서브 카 피 라이선스는 상기 허브 네트워크에 결합된다.
본 발명에 의하면, 네트워크 환경에서 장치 및 컨텐츠를 관리하는 방법 및 기기가 제공된다.
본 발명은 네트워크 환경에서 장치 및 컨텐츠를 관리하는 방법 및 기기를 제공한다. 일 구현예에서, 장치의 모음은 클라이언트 서버 관계의 여러 허브 네트워크를 한정하는 미디어 네트워크 환경에서 직접 접속된다. 허브 네트워크에서, 서버는 컨텐츠를 스트리밍하거나 복사본을 클라이언트에 전송함으로써 클라이언트에 컨텐츠에 대한 액세스를 제공한다. 이 서버와 클라이언트는 연동하여 허브 네트워크에서의 멤버십, 허브 네트워크와의 접속 및 단절, 허브 네트워크에서의 컨텐츠 분배, 및 허브 네트워크에서의 컨텐츠 상태를 관리한다.
통상, 다음 용어는 여기서 다음 의미를 갖는 것으로 사용된다. "컨텐츠(content)"는 영화 또는 음악과 같은 매체 항목의 오디오 및/또는 비디오에 관한 것이다. 컨텐츠 항목 중 하나는 한 편의 영화와 같이 하나의 특정 매체 항목이다. "컨텐츠 데이터(content data)"는 컨텐츠 항목을 나타내는 데이터를 나타낸다. "인스턴스(instance)"는 컨텐츠 항목에 대한 컨텐츠 데이터를 포함하는 데이터의 논리적 모음이다. 따라서, 예를 들면 컨텐츠 인스턴스의 컨텐츠 데이터가 이동되어 재생된다(실행된다). "재생(play)" 및 "존재(present)"는 컨텐츠 유형에 따라 컨텐츠 인스턴스의 컨텐츠 데이터를 실행하여 디스플레이하거나 컨텐츠 데이터를 제 공(예를 들면, 영화에 있어서 오디오 및 비디오를 제공하거나 음악에 있어서 오디오를 제공)하는 것을 의미한다. 유사하게, "인스턴스의 제공(presenting an instance)"은 인스턴스의 컨텐츠 데이터를 실행 및 디스플레이하는 것을 의미한다. "라이선스(license)"는 컨텐츠 데이터가 장치에 의해 실행 또는 복사될 수 있는 등과 같이 컨텐츠 데이터를 사용하기 위한 권한을 저장하는 데이터를 의미한다. 여기서 인스턴스 또는 컨텐츠 데이터를 사용하여 할 수 있는 것과 없는 것의 설명은 적절하게 인스턴스 또는 컨텐츠 데이터에 관련된 라이선스에 의해 설정된 권한을 의미한다.
설명 예
도 1 내지 도 16은 미디어 네트워크 환경의 일 구현예의 구성 및 동작의 일 예를 나타낸다.
도 1에서, 사용자 Jim은 두 개의 장치, 즉, 텔레비전(110)에 접속된 PVR(개인용 비디오 레코더; 105)을 포함하는 홈 미디어 네트워크 환경(100)을 구축한다. PVR(105)은 미디어 네트워크 호환 장치로서, 이는 PVR(105)이 허브 네트워크의 멤버인 장치에 대하여 한정된 프로세스에 따라 동작함을 의미한다. PVR(105)은 컨텐츠의 복사본(예를 들면, 하드 디스크 상에 저장된 전자 파일로서)을 저장하는 스토리지를 포함하며, 서버 장치이다. 서버 장치로서, PVR(105)은 허브 네트워크에 대한 서버이며 허브 네트워크에서 멤버인 클라이언트 장치에 컨텐츠를 제공할 수 있다. 서버로서, PVR(105)은 또한 로컬 환경(미도시)를 한정한다. 이 예에서, PVR(105)에 대한 로컬 환경은 PVR(105)의 위치에 대하여 물리적 영역으로서 한정된 다(예를 들면, 왕복 여행 패킷 타이밍 또는 GPS 정보에 의해 결정). 또한, PVR(105)은 클라이언트 장치이다. 클라이언트 장치로서, PVR(105)은 접속된 텔레비전(110)을 통해서와 같이, 접속된 단말 장치를 통해 또는 직접 컨텐츠를 실행할 수 있다. 클라이언트와 서버 장치 둘 모두로서, PVR(105)은 허브 네트워크에 대한 서버로서 그리고 허브 네트워크에서의 클라이언트로서 허브 네트워크의 멤버이다. 도 1에서, PVR(105)는 허브 네트워크(1; HN1)에 대한 클라이언트 장치임을 나타내도록 "HN1"로 표시된다. 또한, PVR(105)은 이 PVR(105)이 HN1 내의 서버임을 나타내도록 "HN1*"로 표시된다.
텔레비전(110)은 미디어 네트워크 호환 장치가 아니므로, 허브 네트워크의 멤버가 될 수는 없다. 그러나, 비호환 장치는 허브 네트워크에 대한 단말 장치일 수 있으며, 컨텐츠에 대한 데이터를 저장하지 않고(일시적인 것을 넘어서), 프리젠테이션을 위해 데이터를 제공한다(예를 들면, 영화에 있어서 비디오를 디스플레이하고 오디오를 출력). 따라서, PVR(105)은 접속된 텔레비전(110)으로의 프리젠테이션용 컨텐츠에 대한 데이터를 출력하여 컨텐츠를 실행한다.
서버 장치로서, PVR(105)은 허브 네트워크(HN1)를 초기 설정한다. PVR(105)은 이 PVR(105)에 접속된 다른 호환 장치를 점검한다. 멤버로서 장치를 허브 네트워크(HN1)에 추가하기 전에, PVR(105)은 장치를 인증하여, 장치의 아이덴티티를 확인하고, 인증된 장치를 인가하여, 장치가 호환 장치임을 확인한다. PVR(105)이 장치를 인증 및 인가하지 않는 경우, PVR(105)은 허브 네트워크(HN1)에 이 장치를 추가하지 않는다. 도 1에서, PVR(105)은 단지 호환 장치이다. PVR(105)은 서버로서 그리고 클라이언트로서 허브 네트워크에 그 자신을 추가한다. 텔레비전(110)은 호환 장치가 아니므로, PVR(105)은 멤버로서 텔레비전(110)을 추가하지 않는다.
도 2에서, Jim은 영화 A와 영화 B를 구입하고, 텔레비전 프로그램 C를 기록한다. 이 예에서, Jim은 영화 A와 B를 PVR(105)에 접속된 네트워크(115)로부터 다운로드된 전자 파일로서 구입한다. Jim은 PVR(105)의 통합 수신기에 의해 수신된 방송으로부터 전자 파일로서 프로그램 C를 기록한다.
후술하는 바와 같이, 허브 네트워크 동작에 호환하는 인스턴스는 두 개의 배타적 상태, 즉, 개별 또는 결합 상태들 중의 하나에 있다. 개별 인스턴스는 임의의 허브 네트워크에 독립적이며 (개별 인스턴스의 라이선스에 따라)임의의 호환 장치를 통해 재생 또는 제공될 수 있다. 그러나, 호환 장치는 개별 인스턴스의 사용가능한 복사본을 제작할 수 없다. 개별 인스턴스는 잠김 컨텐츠 데이터(locked content data)와 개별 라이선스를 포함한다. 개별 인스턴스의 잠김 컨텐츠 데이터는 잠김 컨텐츠 데이터의 "개별 버전"이라 불린다. 이 잠김 컨텐츠 데이터는 암호화와 같이 비인가 액세스로부터 보호됨으로써 잠긴다. 결합 인스턴스는 하나의 허브 네트워크에 결합된다. 결합 인스턴스는 상기 허브 네트워크의 서버 상에서 또는 상기 허브 네트워크의 제로 이상의 클라이언트 상에서 저장된 대응 라이선스와 잠김 컨텐츠 데이터로 표현된 하나의 논리적 인스턴스이다. 서버에 의해 저장된 이 잠김 컨텐츠 데이터는 허브 네트워크 내의 컨텐츠 데이터의 복사본에 대한 소스로서 "소스 버전"이다. 소스 버전 컨텐츠 데이터의 복사본은 클라이언트에 저장되며 "서브 카피 버전(sub-copy version)"이다(개별 버전, 소스 버전 및/또는 서브 카피 버전 중 임의의 것에서 일부 또는 모든 데이터가 동일할 수도 있음). 결합 인스턴스는 이 허브 네트워크의 멤버인 호환 장치를 통해 실행 또는 제공될 수 있다. 이 허브 네트워크의 멤버는 결합 인스턴스의 컨텐츠 데이터의 서브 카피가 될 수 있다.
서버 장치는 개별에서 결합으로 개별 인스턴스의 상태를 변경하여, 개별 인스턴스를 디스에이블하고 결합 인스턴스를 인에이블할 수 있다. 디스에이블된 인스턴스는 (예를 들면, 인스턴스의 컨텐츠 데이터의 삭제 또는 암호화를 통해 또는 인스턴스에 대한 라이선스를 디스에이블하여)사용불가능하게 된다. 또한, 서버 장치는 결합에서 개별로 결합 인스턴스의 상태를 변경하여, (임의의 대응하는 서브 카피를 포함하는)결합 인스턴스를 디스에이블하고 개별 인스턴스를 인에이블할 수 있다. 또한, 허브 네트워크에서의 서버는 결합 인스턴스에 대한 루트 책임(root responsibility)을 관리한다. 루트 책임은 허브 네트워크에서 결합 인스턴스의 컨텐츠 데이터에 대하여 라이선스를 발행 및 관리하는 것을 포함한다. 따라서, 이 서버는 결합 인스턴스를 제공하고 허브 네트워크에서 결합 인스턴스의 컨텐츠 데이터와 라이선스를 관리하는 권한을 한정하는 루트 라이선스를 보유한다. 새로운 서브 카피가 생성되는 경우, 라이선스는 또한 루트 라이선스로부터 서브 카피에 대하여 생성된다. 허브 네트워크에 호환하지 않는 컨텐츠의 인스턴스는 비호환 인스턴스이다. 호환 장치는 어떤 인식된 복사 제어 정보가 인스턴스에 관련될 수 있는지에 따라 비호환 인스턴스를 실행 또는 복사할 수 있다.
도 2 내지 도 16에서, 문자 라벨은 컨텐츠 인스턴스의 잠김 컨텐츠 데이터의 버전을 나타낸다. 잠김 컨텐츠 데이터의 버전과, 이에 따라 잠김 컨텐츠 데이터에 대응하는 인스턴스의 상태는 문자의 변화에 의해 표시된다. 밑줄은 컨텐츠의 개별 버전을 나타낸다. 예를 들면, 영화 A의 개별 버전은 "A"로 표시된다. 밑줄없는 대문자는 서버 상에 저장된 잠김 컨텐츠 데이터의 소스 버전을 나타낸다. 예를 들면, 영화 A의 소스 버전은 "A"로 표시된다. 소문자는 잠김 컨텐츠 데이터의 서브 카피 버전을 나타낸다. 예를 들면, 영화 A의 서브 카피 버전은 "a"로 표시된다. 또한, 이 버전들은 대응하는 라이선스를 갖는다(도 2 내지 도 16에서는 미도시): 개별 버전은 개별 라이선스를 갖고, 소스 버전은 루트 라이선스를 가지며, 서브 카피 버전은 서브 카피 라이선스를 갖는다.
도 2를 다시 참조하면, Jim은 PVR(105)에서 개별 버전 AB를 저장함으로써 PVR(105)를 통해 허브 네트워크(HN1)에 영화 A와 B를 도입한다. 또한, PVR(105)은 프로그램 C의 개별 버전 C를 저장한다.
도 3에서, Jim은 허브 네트워크(HN1)에 개별 인스턴스를 결합한다. PVR(105)은 개별 버전 A, B, 및 C에 대한 개별 인스턴스의 상태를 결합 인스턴스를 변경하기 때문에, 소스 버전 A, B, 및 C를 생성한다. PVR(105)은 개별 버전 A, B, 및 C를 디스에이블하거나 삭제한다.
도 4에서, Jim은 호환 장치인 차량(120)을 구매한다. 차량(120)은 서버 장치(예를 들면, 스토리지 포함) 및 클라이언트 장치(예를 들면, 오디오와 비디오 시스템 포함)이다. 차량(120)은 이 차량(120)이 서버("HN2*"로 표시)로서 그리고 멤버 클라이언트("HN2")로서 제2 허브 네트워크(HN2)를 설정한다. 차량(120)은 이 차량(120)으로부터의 상대적 거리에 따라 제2 로컬 환경(미도시)를 한정한다(예를 들면, 차량(120)은 왕복 여행 패킷 타임을 결정하거나 차량(120)의 위치를 한정하는 GPS 정보를 제공하는 컴포넌트를 포함). 도 4에서, 차량(120)과 PVR(105)은 서로 물리적으로 근접하기 때문에, 차량(120)의 로컬 환경은 PVR(105)의 로컬 환경과 실질적으로 동일한 공간에 걸쳐 있다.
도 5에서, Jim은 두 개의 허브 네트워크(HN1 및 HN2)를 접속한다. PVR(105)과 차량(120) 각각은 무선 네트워크 성능을 구비한다. Jim은 PVR(105)과 차량(120)이 무선 접속을 설정하게 한다. PVR(105)과 차량(120)이 서로 검출하는 경우, 각각은 다른 것은 인증 및 인가하여 멤버 장치로서 추가한다. 따라서, PVR(105)은 차량(120)을 허브 네트워크(HN1)(차량(120)에 추가되는 "HN1" 라벨로 표시)에 대한 멤버로서 추가하고, 차량(120)은 허브 네트워크(HN2)(PVR(105)에 추가되는 "HN2" 라벨로 표시)에 대한 멤버로서 추가한다.
도 6에서, Jim은 제2 허브 네트워크(HN2)에 보다 많은 컨텐츠를 도입한다. Jim은 호환 광 디스크와 같은 호환 매체 물품 상에 저장된 영화 X의 호환 인스턴스를 구매한다. 호환 매체는 허브 네트워크에 수집(결합)되고 해제(개별화)될 수 있는 컨텐츠에 대하여 한정되는 프로세스에 따라 동작한다. 특히, 호환 매체는 이 호환 매체에 저장된 인스턴스가 인스턴스의 상태 변화(예를 들면, 개별 및 결합 상태 사이에서 변경하는 경우)에 따라 디스에이블 및 인에이블될 수 있게 한다. 또한, 호환 매체는 장치가 인가없이 호환 매체 상에 저장된 데이터의 완전한 비트별 복사본을 생성하지 않도록 구성된다. 호환 광 디스크 상에 저장된 인스턴스는 호 환이고 아직 임의의 허브 네트워크에 결합되지 않았기 때문에, 이 인스턴스는 개별 인스턴스이다. Jim은 호환 광 디스크를 차량(120)의 서버 장치에 삽입하여 이 차량(120)이 영화 X의 개별 인스턴스를 허브 네트워크(HN2)에 결합하게 한다. 차량(120)은 영화 X의 결합 인스턴스를 생성하고 차량(120)의 스토리지에서 결합 인스턴스의 일부로서 잠김 컨텐츠 데이터와 루트 라이선스의 소스 버전을 저장하고 호환 광 디스크 상에 개별 인스턴스를 (예를 들면, 광 디스크에 데이터를 저장함으로써)디스에이블한다. 호환 광 디스크 상의 개별 인스턴스가 디스에이블된 후에, 디스에이블된 인스턴스의 잠김 컨텐츠 데이터의 개별 버전은 다른 장치 상에서 재생 또는 제공될 수 없다(후술하는 바와 같이, 다른 구현예에서, 개별 인스턴스가 허브 네트워크에 결합되는 경우, 디스에이블된 개별 인스턴스는 이 개별 인스턴스가 결합된 허브 네트워크 내의 멤버 장치에 의해 여전히 재생될 수 있다). 도 6에서, 영화 X의 소스 버전은 차량(120)에 추가된 "X" 라벨로 표시된다. 유사하게, Jim은 네트워크(115)로부터 음악 Y의 호환 인스턴스를 구입 및 다운로드하여 이 차량이 허브 네트워크(HN2)에 인스턴스를 결합하게 한다. 도 6에서, 음악 Y의 소스 버전은 차량(120)에 추가된 "Y" 라벨로 표시한다.
도 7에서, Jim은 허브 네트워크를 통해 컨텐츠를 액세스한다. Jim은 PVR(105)과 접속된 텔레비전(110)을 통해 영화 X의 시청을 결정한다. 허브 네트워크(HN2)의 멤버 장치로서, PVR(105)은 허브 네트워크(HN2)에 결합된 영화 X를 액세스할 수 있다. PVR(105)은, 허브 네트워크(HN2)에 대한 서버로서, 영화 X와 차량(120)의 복사본을 요청하여, 영화 X의 서브 카피 버전을 PVR(105)에 제공한다. PVR(105)은 (PVR(105)에 부가된 "x" 라벨로 표시되는) 영화 X의 서브 카피 버전을 저장하고 접속된 텔레비전(110)을 통해 영화 X를 제공한다. 유사하게, Jim은 또한 PVR(105)을 통해 음악 Y의 청취를 결정하고, 따라서 PVR(105)은 (PVR(105)에 부가된 라벨 "y"로 표시되는) 음악 Y의 서브 카피 버전을 저장한다.
Jim은 그 후에 차량(120)을 통해 영화 A의 시청을 결정한다. 허브 네트워크(HN1)에 대한 서버로서, PVR(105)은 차량(120)에 영화 A의 서브 카피 버전을 제공한다. 이 차량(120)은 (차량(120)에 부가된 "a" 라벨로 표시되는) 영화 A의 서브 카피 버전을 저장하여 영화 A를 제공한다.
도 8에서, Jim은 호환 장치인 텔레비전(125)을 구매한다. 텔레비전(125)은 클라이언트 장치이지만 서버 장치는 아니다. 따라서, 텔레비전(125)은 다른 허브 네트워크를 형성하지 않는다.
도 9에서, Jim은 텔레비전(125)을 허브 네트워크(HN1 및 HN2)에 접속한다. 텔레비전(125)은 유선 접속 및 무선 접속을 모두 지원한다. Jim은 PVR(105)과 텔레비전(125)이 유선 접속을 설정하게 하며, 차량(120)과 텔레비전(125)이 무선 접속을 설정하게 한다. PVR(105)이 텔레비전(125)을 검출하면, PVR(105)은 텔레비전(125)을 인증 및 인가하여 멤버 장치로서 추가한다. 따라서, PVR(105)는 (텔레비전(125)에 부가된 "HN1" 라벨로 표시되는) 허브 네트워크(HN1)에 대한 멤버로서 텔레비전(125)을 추가한다. 유사하게, 차량(120)은 (텔레비전(125)에 부가된 "HN2" 라벨로 표시되는) 허브 네트워크(HN2)에 대한 멤버로서 텔레비전(125)을 인증, 인가 및 추가한다.
도 10에서, Jim은 텔레비전(125)을 통해 컨텐츠를 액세스한다. Jim은 텔레비전(125)을 통해 기록 프로그램 C의 시청을 결정한다. 허브 네트워크의 멤버 장치로서, 텔레비전(125)은 허브 네트워크(HN1)에 결합된 프로그램 C를 액세스할 수 있다. 텔레비전(125)은 PVR(105)이 프로그램 C를 텔레비전(125)에 스트리밍할 것을 요구한다. 이 PVR(105)은 (PVR(105)과 텔레비전(125) 사이에 "c" 라벨된 점선으로 표시되는) 소스 버전 C를 사용하여 텔레비전(125)에 프로그램 C를 스트리밍한다. 텔레비전(125)은 (스트리밍된 프로그램의 제공 과정에서 일시적인 것을 제외하면)프로그램 C의 복사본을 저장하지 않는다. 유사하게, Jim은 텔레비전(125)을 통해 영화 X의 시청을 결정하기 때문에, 차량(120)은 (차량(120)과 텔레비전(125) 사이에 "x" 라벨된 점선으로 표시되는) 소스 버전 X를 사용하여 텔레비전에 영화 X를 스트리밍한다.
도 11에서, Jim은 허브 네트워크(HN2)로부터 음악 Y를 해제 또는 결합해제하여 영화 Y를 휴대가능하도록 결정한다. Jim은 차량(120)이 음악 Y의 개별 인스턴스를 생성하도록 요구한다. 이 차량(120)은 음악 Y의 결합 인스턴스를 디스에이블하여, (PVR(105)에서의 라벨 "y"과 차량(120)에서 라벨 "Y"의 제거로 표시되는) 음악 Y의 소스 버전과 임의의 서브 카피 버전을 디스에이블한다. 차량(120)은 음악 Y의 개별 인스턴스를 생성하여 호환 매체(예를 들면, 호환 하드 디스크 또는 호환 기록가능 디스크) 상에 (차량(120)에 부가된 라벨 "Y"로 표시되는)개별 버전을 저장한다.
도 12에서, Jim은 허브 네트워크(HN2)에서 음악 Y를 제거한다. Jim은 호환 휴대 저장 장치(130)(예를 들면, 분리형 메모리 카드)를 차량(120)에 접속한다. Jim은 (차량(120)에서 제거되고 휴대용 스토리지(130)에서 부가되는 "Y" 라벨로 표시되는) 음악 Y의 개별 버전을 차량(120)으로부터 휴대용 스토리지(130)로 이동시켜 휴대용 스토리지(130)를 휴대용 뮤직 플레이어(135)에 접속한다. 휴대용 뮤직 플레이어(135)는 호환 장치이고 허브 네트워크의 멤버가 아니지만, 플레이어(135)는 개별 버전 Y에 대한 개별 인스턴스가 허브 네트워크에 결합되기 때문에 개별 버전 Y로부터 음악 Y를 여전히 재생할 수 있다.
도 13에서, Jim은 허브 네트워크(HN1)로부터 영화 B를 분리하여 이 영화 B를 친구 Sally에게 제공하도록 결정한다. Jim은 차량(120)이 영화의 개별 인스턴스를 생성하도록 요청한다. PVR(105)은 소스 버전 B를 갖기 때문에 차량(120)은 이 요청을 PVR(105)에 전달한다. PVR(105)은 (PVR(105)에서 라벨 "B"의 제거에 의해 표시되는) 영화 B의 결합 인스턴스를 디스에이블한다. PVR(105)은 잠김 컨텐츠 데이터의 개별 버전 B 등의 개별 인스턴스를 생성하고 이 차량(120)에 (차량(120)에 부가되는 라벨 "B"로 표시되는) 개별 버전 B를 이동시킨다.
도 14에서, Jim은 차량(120)을 이의 친구 Sally의 집으로 운전한다. Jim은 그의 집에서 운전하여 나오는 경우, 이 차량(120)은 미디어 네트워크 환경(100)을 떠나 Sally의 미디어 네트워크 환경(140)으로 진입한다. 일 구현예에서, 허브 네트워크에 대한 서버 장치는 허브 네트워크의 멤버 장치를 모니터하여 멤버 장치가 로컬 환경을 떠난 경우를 결정한다. 상술한 바와 같이, 이 예에서, PVR(105)과 차량(120)에 대한 로컬 환경이 물리적 위치에 의해 한정된다. 차량(120)이 떠나는 경우, 차량(120)은 PVR(105)의 로컬 네트워크 환경을 떠나고, 차량(120)은 PVR(105)과 텔레비전(125)으로부터 벗어나 차량(120)의 로컬 환경을 벗어난다. 허브 네트워크(HN1)의 서버로서, PVR(105)는 차량(120)이 PVR(105)에 이의 물리적 위치의 보고를 실패하기 때문에 또는 차량(120)이 로컬 환경(100)의 경계 밖에 있는 PVR(105)에 물리적 위치를 보고하는 경우 차량(120)이 로컬 환경을 떠남을 인식한다. 유사하게, 허브 네트워크(HN2)의 서버로서, 차량(120)은 PVR(105)과 텔레비전(125)이 차량(120)의 로컬 환경을 (예를 들면, 뒤로 하고) "떠남"을 인식한다.
차량(120)이 떠나면, 이 차량(120)은 허브 네트워크(HN1 및 HN2)에서 단절을 생성한다. 허브 네트워크(HN1)에서의 클라이언트로서, 차량(120)이 허브 네트워크(HN1)를 통해 수신된 서브 카피 버전의 각각에 대하여 만료 기간을 모니터하다. 이 기간은 서브 카피 버전을 저장하는 클라이언트와 결합 인스턴스를 관리하는 서버 간의 접속 없이 얼마나 오래 서브 카피 버전이 사용될 수 있는지를 조절하는 서브 카피 버전에 대한 라이선스에서의 메커니즘이다. 이 기간이 만료되는 경우(예를 들면, 클라이언트 내의 보안 클럭에 의해 측정되는 바와 같이), 서브 카피 버전을 저장하는 단절된 클라이언트는 서브 카피 버전을 디스에이블한다. 이 예에서, 기간은 (차량(120)의 "a-15" 라벨에서 "-15"라벨로 표시되는)15일이다. 유사하게, 허브 네트워크(HN2)에서의 클라이언트로서, PVR(105)은 허브 네트워크(HN2)를 통해 수신되는 서브 카피 버전에 대하여 (PVR(105)의 "x-15" 라벨에서 "-15"라벨로 표시되는)만료 기간을 모니터한다.
Sally의 미디어 네트워크 환경(140)에서, Sally는 게인 콘솔(145)과 접속 텔레비전(150)을 갖는다. 게임 콘솔(145)은 호환 장치이며 서버 장치와 클라이언트 장치이다. 텔레비전(150)은 호환 장치가 아니며, 게임 콘솔(145)로부터 컨텐츠를 제공하는 단말 장치로서 동작한다. 게임 콘솔(145)은 허브 네트워크(HN3)을 한정하고, (게임 콘솔(145) 상의 라벨 "HN3*"으로 표시되는) 허브 네트워크(HN3)에 대한 서버로서 그리고 (게임 콘솔(145) 상의 라벨 "HN3"으로 표시되는) 허브 네트워크(HN3)에서의 클라이언트로서 동작한다. 허브 네트워크에 대한 서버로서, 게임 콘솔(145)은 로컬 환경(미도시)를 한정한다. 영화 L과 M 그리고 음악 N은 허브 네트워크(HN3)에 결합되고 게임 콘솔(145)은 (게임 콘솔(145) 상의 라벨 "L"과 "M"으로 표시되는)영화 L과 M의 소스 버전 및 (게임 콘솔(145) 상의 라벨 "N"으로 표시되는) 음악 N의 소스 버전을 저장한다.
도 15에서, 다음 날, Jim은 Sally의 게임 콘솔(145)에 차량(120)을 접속하고 영화 B의 개별 인스턴스를 Sally에 부여한다. Jim과 Sally는 차량(120)이 멤버로서 허브 네트워크(HN3)에 참여하게 하거나 게임 콘솔(145)이 멤버로서 허브 네트워크(HN2)에 참여하게 하지 않는다. 영화 B의 개별 인스턴스를 Sally에게 제공하기 위해서, Jim은 차량(120)이 개별 버전을 이 차량(120)으로부터 (차량(120)으로부터 라벨 "B"의 제거로 표시되는) 게임 콘솔로 이동하게 한다. Sally는 게임 콘솔(145)이 영화 B의 개별 인스턴스를 허브 네트워크(HN3)에 결합하게 한다. 이 게임 콘솔(145)은 영화 B의 개별 인스턴스를 디스에이블하고 영화 B의 결합 인스턴스를 생성하여, (게임 콘솔(145)에 부가된 라벨 "B"로 표시되는) 게임 콘솔(145)의 스토리지에서 소스 버전과 루트 라이선스를 저장한다.
이는 다음 날이고 차량(120)이 허브 네트워크(HN1 또는 HN2)에 재접속되지 않았기 때문에, 차량(120)과 PVR(105)의 클럭은 서브 카피 버전 a 및 x에 대한 만료 기간의 종점보다 근접한 날이고 이에 따라 기간이 만료되기 전에 (차량(120) 상에서 "a-14" 그리고 PVR(105) 상에서 "x-14"로 변경되는 라벨로 표시된) 하루 미만의 날이 남게 된다.
도 16에서, Jim은 그의 차량(120)으로 집에 돌아온다. 차량(120)이 떠난 경우, 이 차량(120)은 게임 콘솔(145)로부터 단절한다. 차량(120)이 Jim의 미디어 네트워크 환경(100)에 진입하면, 차량(120)은 PVR(105)과 텔레비전(125)에 접속한다. 차량(120)은 PVR(105)의 로컬 환경에 돌아와서 차량(120)의 로컬 환경을 PVR(105)과 텔레비전(125)으로 되돌려 놓는다. 차량(120)이 PVR(105)에 재접속하는 경우, 허브 네트워크(HN1)에 대한 서버로서 PVR(105)은 (차량(120) 상에서 라벨 "a-14"를 "a"로 변경하여 표시된) 차량(120)에 저장된 영화 A의 서브 카피 버전 a에 대하여 만료 기간을 리셋한다. 유사하게, 허브 네트워크(HN2)에 대한 서버로서 차량(120)은 (PVR(105) 상에서 라벨 "x-14"를 "X"로 변경하여 표시된) PVR(105)에 저장된 영화 X의 서브 카피 버전 x에 대하여 만료 기간을 리셋한다.
이 예에서, Jim은 컨텐츠의 인스턴스를 획득할 수 있으며 그의 홈 미디어 네트워크 환경의 허브 네트워크에서 인스턴스를 결합한다. Jim은 컨텐츠를 제공하여 미디어 네트워크 환경 내에서 복사를 행할 수 있다. Jim이 미디어 네트워크 환경 에서 컨텐츠의 인스턴스를 해제한 경우, 인스턴스가 제거된다. 이러한 방식으로, 미디어 네트워크 환경을 통해 그의 컨텐츠를 사용할 수 있지만, 컨텐츠의 인스턴스는 미디어 네트워크 환경에서 결합된 후 이 컨텐츠가 미디어 네트워크 환경을 떠날 것을 그가 원하는 경우 컨텐츠의 인스턴스를 제거한다.
미디어 네트워크 환경의 구성 및 동작
도 17 내지 도 33은 미디어 네트워크 환경에서 허브 네트워크의 구성 및 동작을 나타낸다.
네트워크 구성
미디어 네트워크 환경은 하나 이상의 허브 네트워크를 구비하되, 각 허브 네트워크는 각각의 로컬 환경을 가지며, 이들 일부 또는 전부는 중첩되거나 동일 공간을 차지할 수 있다. 로컬 환경은 호환 장치가 로컬 환경 안 또는 밖에 있는지를 이 장치가 판정할 수 있도록 제한 영역으로서 한정된다. 예를 들면, 하나의 로컬 환경은 물리적 위치로서(예를 들면, 패킷이 서버로부터 클라이언트로 이동하는 왕복 시간을 계산하거나 이 장치에 필수적인 GPS 시스템으로부터 지리 위치 데이터를 사용하여) 한정될 수 있지만, 다른 로컬 환경은 (예를 들면, IP 주소 및/또는 서브넷 정보를 사용하여)네트워크 어드레싱 정보로서 또는 (예를 들면, 패킷에 의해 횡단된 게이트웨이 또는 라우터의 개수를 사용하여 네트워크 구성을 평가)논리 영역으로 한정된다. 로컬 환경은 허브 네트워크(예를 들면, 중심에서 서버와 100미터의 반경의 원)의 서버에 대하여 한정된다. 서버의 조건이 변경(예를 들면, 서버가 이동)함에 따라, 로컬 환경 또한 변할 수 있다. 후술하는 바와 같이, 호환 장치는 허브 네트워크의 로컬 환경에 있는 동안 허브 네트워크에 참여할 수 있으며, 이 장치가 로컬 환경을 떠나는 경우에는, 장치는 허브 네트워크로부터(장치가 여전히 멤버이더라도) 단절된다. 로컬 환경을 떠난 후에도 장치가 여전히 네트워크 접속을 유지할 수 있으면, 이 장치는 로컬 환경 밖에 있는 동안 여전히 단절된 것처럼 처리될 수 있다.
미디어 네트워크 환경은 하나 이상의 장치를 포함한다. 일 구현예에서, 장치는 자기 포함(self-contained) 소프트웨어 애플리케이션, 하드웨어 컴포넌트, 또는 이들의 조합이다. 예를 들면, 하나의 컴퓨터 시스템은 다수의 하드웨어 및/또는 소프트웨어 장치를 포함할 수 있다. 미디어 네트워크 환경에서 각 장치는 미디어 네트워크 호환 장치(호환 장치)이거나 그렇지 않다(비호환 장치). 호환 장치는 미디어 네트워크 환경과 허브 네트워크에 대하여 한정된 규칙에 따라 동작한다. 호환 장치는 서버 또는 클라이언트 장치와 같은 허브 네트워크의 멤버일 수 있다. 단말 장치와 같은 비호환 장치는 미디어 네트워크 환경에서 허브 네트워크의 멤버일 수는 없다. 비호환 장치는 후술하는 바와 같이 허브 네트워크 멤버 장치로부터 출력 데이터로서 컨텐츠를 수신하는 등, 허브 네트워크와 상호동작할 수 있다. 그러나, 비호환 장치는 컨텐츠의 호환 복사본을 복호화하여 실행할 수는 없다.
허브 네트워크는 하나 이상의 멤버 장치를 포함한다. 허브 네트워크에서의 각 멤버 장치는 서버, 클라이언트, 또는 둘 모두이다. 예를 들면, 멤버 장치는 동일 물리 시스템에서 서버 및 클라이언트 기능을 포함할 수 있다. 각 허브 네트워크는 하나의 서버를 갖는다. 각 클라이언트는 직접 또는 네트워크 접속을 통해 서 버에 접속된다. 이러한 방식으로, 허브 네트워크는 서버를 중심으로 하여 허브, 스포크(spoke) 또는 성상 토폴로지를 따른다. 다수의 서버는 동일한 허브 네트워크 내의 멤버일 수 있으며, 하나의 서버 장치가 허브 네트워크에 대한 서버로서 동작하고 다른 서버는 (이들의 클라이언트 기능을 통해) 허브 네트워크 서버의 클라이언트로서 동작한다.
허브 네트워크에 대한 서버는 허브 네트워크의 초점이고 허브 네트워크의 제어의 많은 양태를 관리한다. 서버는 컨텐츠의 결합 인스턴스에 대한 루트 책임을 관리하고 허브 네트워크에서 클라이언트 멤버에 컨텐츠를 제공한다. 서버는 잠김 컨텐츠 데이터의 소스 버전과 결합 인스턴스의 대응 루트 라이선스를 저장한다. 서버는 결합 인스턴스에 대한 잠김 컨텐츠 데이터의 서브 카피 버전을 클라이언트에 제공하거나 잠김 컨텐츠 데이터의 소스 버전의 데이터를 클라이언트에 스트리밍한다. 서버는 인스턴스를 관리하고, 라이센싱을 처리하며, 네트워크 멤버십을 감독하고, 장치의 허브 네트워크로의 접속 및 단절을 모니터하여 시간 관리를 수행한다. 서버는 허브 네트워크의 로컬 환경을 한정한다. 후술하는 바와 같이, 서버는 개별(허브 네트워크의 외부)로부터 결합(허브 네트워크의 내부)로 인스턴스의 상태를 시프트하여 허브 네트워크에 컨텐츠의 인스턴스를 결합하며, 서버는 결합으로부터 개별로 인스턴스의 상태를 시프트하여 허브 네트워크로부터 인스턴스를 해제한다.
허브 네트워크에서의 클라이언트는 (예를 들면, 인스턴스의 잠김 데이터의 버전으로 저장된 컨텐츠 데이터를 복호화 및 실행하여) 컨텐츠의 인스턴스로부터 컨텐츠 데이터를 재생 또는 제공한다. 클라이언트 장치는 잠김 컨텐츠 데이터의 서브 카피 버전과 결합 인스턴스에 대한 서브 카피 라이선스를 서버로부터 수신하거나 서버로부터 스트리밍 데이터를 수신한다. 클라이언트 장치는 서브 카피 버전을 저장하는 스토리지를 포함하거나(스토리지 클라이언트 장치) 서브 카피 버전을 저장하지 않는다(비 스토리지 클라이언트 장치). 클라이언트 장치는 통합 컴포넌트를 통해 또는 접속된 단말 장치를 통해 직접 컨텐츠 데이터를 제공한다. 다른 구현예에서, 클라이언트 장치는 또한 서브 카피 버전으로부터 동일한 허브 네트워크의 멤버인 다른 클라이언트 장치로 컨텐츠 데이터를 스트리밍할 수 있다.
단말 장치는 컨텐츠의 프리젠테이션을 위한 것으로서 허브 네트워크의 멤버는 아니다. 단말 장치는 멤버 장치에 접속되고 출력 비디오 및 오디오 데이터와 같은 프리젠테이션을 위해 데이터를 수신한다. 단말 장치는 미디어 네트워크 환경과 별도의 서비스에 대한 다른 기능도 또한 제공할 수 있다.
미디어 네트워크 환경이 둘 이상의 허브 네트워크를 포함하는 경우, 허브 네트워크의 일부 또는 전부는 중첩될 수 있다. 두 허브 네트워크는 허브 네트워크 둘 모두가 동일한 장치 또는 장치들을 포함할 때 중첩된다. 두 허브 네트워크에 속하는 장치는 허브 네트워크에 걸쳐있고 스패닝 장치(spanning device)이다. 스패닝 장치는 허브 네트워크 각각에 결합된 인스턴스에 대하여 컨텐츠 데이터를 저장한다(또는 저장할 수 있다). 따라서, 스패닝 장치는 다수의 개별 허브 네트워크에 결합된 컨텐츠를 제공할 수 있다(결합 인스턴스는 단지 하나의 허브 네트워크에 결합된다). 그러나, 일 구현예에서, 스패닝 장치는 동일 로컬 환경에서만 다수의 허브 네트워크에 걸치게 된다. 이 경우, 장치가 상이한 로컬 환경으로 허브 네트워크의 멤버가 되는 경우, 이 장치는 장치가 가장 최근에 접속된 허브 네트워크로부터의 컨텐츠만을 제공할 수 있다. 다른 구현예에서, 스패닝 장치는 상이한 로컬 환경에서 허브 네트워크에 걸쳐 있어 스패닝 장치의 허브 네트워크 중 임의의 것으로부터 컨텐츠를 실행한다(후술하는 바와 같이 리프레시 등의 라이선스 요건에 구속됨).
중첩한 허브 네트워크는 컨텐츠의 사용 및 복사를 관리하는 플렉서블 환경을 제공한다. 각 서버는 서버의 허브 네트워크에서 장치와 컨텐츠를 관리하고 각 클라이언트는 허브 네트워크의 규칙에 호응하여 동작한다. 그 결과, 사용자는 편리한 방식으로 미디어 네트워크 환경을 통해 컨텐츠 데이터를 제공, 이동, 및 복사할 수 있으며, 동시에 컨텐츠 데이터의 프리젠테이션, 복사 및 이동은 라이센싱 기관(예를 들면, 컨텐츠 소유자에 의해)에 대하여 설정된 라이센싱 가이드라인을 반영하도록 조절된다. 또한, 각 허브 네트워크의 관리는 허브 네트워크의 서버에 기반한다.
도 17은 미디어 네트워크 환경(1700)의 일 구현예를 나타내는 도면이다. 미디어 네트워크 환경은 두 개의 각각 그리고 실질적으로 공통 영역을 차지하는 로컬 환경(미도시)으로 두 개의 중첩 허브 네트워크(HN1 및 HN2)을 구비한다.
미디어 네트워크 환경(1700)은 여러 장치를 포함한다: 단말 장치(1710)에 접속된 서버/클라이언트 장치(1705), 서버 장치(1715), 스토리지 클라이언트 장치(1720), 비 스토리지 클라이언트 장치(1725), 스토리지 장치(1730), 및 플레이어 장치(1735). 이 서버/클라이언트 장치(1705), 서버 장치(1715), 스토리지 클라이언트 장치(1720), 비 스토리지 클라이언트 장치(1725), 및 스토리지 장치(1730)는 호환 장치이다. 단말 장치(1710)와 플레이어 장치(1735)는 비호환 장치이다.
서버/클라이언트 장치(1705)와 서버 장치(1715)는 각각 허브 네트워크에 대한 서버이다. 서버/클라이언트 장치(1705)는 서버와 클라이언트 모두로서 동작한다. 서버 장치(1715)는 서버로서 동작하지만 클라이언트로는 동작하지 않는다(예를 들면, 컨텐츠를 복호화하여 실행하지 않는다).
단말 장치(1710)는 텔레비전과 같은 접속된 장치로부터 컨텐츠 데이터의 프리젠테이션을 위한 것이다. 단말 장치(1710)는 허브 네트워크에 결합된 컨텐츠 데이터를 저장하지 않는다.
스토리지 클라이언트 장치(1720)와 비 스토리지 클라이언트 장치(1725)는 클라이언트 장치이다. 클라이언트 장치로서, 스토리지 클라이언트 장치(1720)와 비 스토리지 클라이언트 장치(1725)는 통합 미디어 컴포넌트(예를 들면, 오디오 및 비디오 출력)을 통해 컨텐츠 데이터를 제공한다. 상술한 바와 같이, 서버/클라이언트 장치(1705)는 또한 클라이언트 장치이지만 접속된 단말 장치(1710)를 통해 컨텐츠 데이터를 제공한다. 스토리지 클라이언트 장치(1720)는 컨텐츠 데이터의 서브 카피 버전을 저장하는 스토리지를 포함한다. 스토리지 클라이언트(1720)는 스토리지 클라이언트(1720) 내에 저장된 서브 카피 버전에 대한 컨텐츠 데이터 또는 서버(예를 들면, 서버/클라이언트 장치(1705))로부터 데이터를 스트리밍하는 것으로서 수신된 컨텐츠 데이터를 제공한다. 비 스토리지 클라이언트(1725)는 제공할 컨텐츠 데이터의 서브 카피 버전을 저장하지 않는다. 비 스토리지 클라이언트(1725)는 서버(예를 들면, 서버 장치(1715))로부터 스트리밍 데이터로서 수신된 컨텐츠 데이터를 제공한다. 다른 구현예에서, 모든 클라이언트 장치는 비 스토리지 클라이언트 장치이다. 이 경우, 장치가 결합 컨텐츠 데이터에 대한 스토리지인 경우, 이 장치는 서버 또는 서버/클라이언트 장치이다.
서버/클라이언트 장치(1705)는, 서버/클라이언트(1705) 상의 "HN1*"로 표시되는, 허브 네트워크(HN1)에 대한 서버이다. 서버/클라이언트 장치(1705)와 스토리지 클라이언트 장치(1720)는, "HN1" 라벨로 표시되는 허브 네트워크(HN1)에서 클라이언트이다. 단말 장치(1710)는 서버/클라이언트 장치(1705)에 접속되어 서버/클라이언트 장치(1705)로부터의 컨텐츠 데이터를 제공한다. 단말 장치(1710)는 허브 네트워크(HN1)의 멤버가 아니다. 서버 장치(1715)는 서버 장치(1715) 상의 "HN2*"로 표시되는 허브 네트워크(HN2)에 대한 서버이다. 서버/클라이언트 장치(1705), 스토리지 클라이언트 장치(1720), 및 비 스토리지 클라이언트 장치(1725)는 "HN2" 라벨로 표시되는 허브 네트워크(HN2)에서의 클라이언트이다. 비 스토리지 클라이언트 장치(1725)는 컨텐츠 데이터의 서브 카피 버전을 저장하지 않지만, 그 대신 서버 장치(1715)로부터 비 스토리지 클라이언트 장치(1725)로의 점선으로 표시하는 서버 장치(1715)로부터의 스트리밍된 데이터를 수신한다.
두 개의 허브 네트워크(HN1 및 HN2)는 중첩하여, 중첩 또는 오버레이 허브 및 스포크 아키텍처를 한정한다. 허브 네트워크(HN1)는 서버/클라이언트 장치(1705)와 스토리지 클라이언트 장치(1720)를 포함한다. 허브 네트워크(HN2)는 서버/클라이언트 장치(1705), 서버 장치(1715), 스토리지 클라이언트 장치(1720), 및 비 스토리지 클라이언트 장치(1725)를 포함한다. 서버/클라이언트 장치(1705)와 스토리지 클라이언트 장치(1720)는 허브 네트워크(HN1 및 HN2)의 멤버이기 때문에 스패닝 장치이다.
스토리지 장치(1730)는 호환 매체 장치이며 접속 플레이어 장치(1735)는 비호환 장치이다. 스토리지 장치(1730)와 플레이어 장치(1735)는 허브 네트워크(HN1 및 HN2)의 멤버가 아니다. 스토리지 장치(1730)는 호환 플래시 메모리 카드와 같은 호환 매체를 포함하는 휴대용 스토리지 장치이다. 플레이어 장치(1735)는 MP3 플레이어와 같은 휴대용 미디어 플레이어 장치이다. 다른 환경에서, 휴대가능하지 않은 비호환 장치는 하나 이상의 호환 장치에 접속될 수 있다.
스토리지 장치(1730)는 서버 장치(1715)에 접속(예를 들면, 포트에 삽입)되고 따라서 서버 장치(1715)과 데이터를 교환할 수 있다. 따라서, 스토리지 장치(1730)와 서버 장치(1715)는 개별 인스턴스를 교환할 수 있다. 스토리지 장치(1730)는 플레이어 장치(1735)에 접속되고 플레이어 장치(1735)는 스토리지 장치(1730)에 저장된 컨텐츠 데이터의 비호환 복사본을 제공할 수 있다. 플레이어 장치(1735)가 비호환 장치이기 때문에, 플레이어 장치(1735)는 스토리지 장치(1730) 상에 저장된 호환 컨텐츠 데이터를 재생 또는 제공할 수 없다. 스토리지 장치(1730)는 이 스토리지 장치(1730) 상에 저장된 개별 인스턴스로부터 사용가능한 복사본을 제작할 수 없다.
허브 네트워크 멤버십
서버는 허브 네트워크에서 장치의 멤버십을 관리한다. 서버는 허브 네트워크의 멤버로서 클라이언트를 추가 및 제거한다. 서버는 멤버 장치에만 라이선스를 부여할 수 있다. 사용자에 의해 승인시에, 서버는 클라이언트가 호환 장치임을 확인한 후에 클라이언트 장치를 멤버로서 추가한다. 서버가 또한 클라이언트 장치인 경우, 서버는 초기에 클라이언트로서 그 자신을 자동적으로 추가한다. 일 구현예에서, 서버도 멤버로서 간주된다. 다른 구현예에서, 단지 클라이언트만이 멤버이다. 일단 멤버로서 추가된 경우, 장치는 서버가 이 장치를 멤버로서 제거할 때까지 멤버이다. 서버는 사용자에 의한 요청시에 또는 멤버십을 폐기하는 조건이 충족되는 경우에 멤버로서 클라이언트를 제거한다.
도 18은, 도 17에서 스토리지 클라이언트(1720)를 허브 네트워크(HN1)를 추가하는 것과 같이, 멤버 장치로서 장치를 허브 네트워크에 추가하는 일 구현예의 흐름도(1800)를 나타낸다. 우선, 클라이언트 장치는 블록 1805에서 허브 네트워크에 접속된다. 클라이언트는 유선 또는 무선 접속을 통해 서버에 직접 접속될 수 있으며, 또는 중재 네트워크 장치를 통해서와 같이 서버에 간접적으로 접속될 수도 있다. 이 서버는 멤버로서 비접속 장치를 추가할 수 없다(중간 장치를 사용하여 비접속 장치를 추가하는 후술하는 다른 구현예를 참조).
서버는 블록 1810에서 접속 클라이언트 장치를 검출한다. 호환 장치는 이 장치가 허브 네트워크에 현재 접속됨을 나타내는 메시지 또는 접속 통지를 허브 네트워크 상의 장치에 전송한다. 다른 구현예에서, 서버는 새로운 클라이언트에 대한 접속 장치를 주기적으로 폴링한다.
서버는 블록 1815에서 검출된 클라이언트 장치를 인증한다. 서버는 클라이언트 장치로부터의 정보에 대한 호환 확인 요청을 전송하여 클라이언트 장치가 호환 장치인지를 설정한다. 예를 들면, 서버는 클라이언트 장치에 대하여 암호화된 확인 요청을 전송한다. 클라이언트 장치가 적절하게 응답하지 않거나 또는 서버가 클라이언트 장치가 호환 장치가 아님을 판정하면, 인증이 실패하여 서버는 클라이언트 장치를 멤버로서 허브 네트워크에 추가하지 않을 것이다.
클라이언트 장치가 호환 장치임을 확인한 후, 서버는 클라이언트 장치를 식별하는 클라이언트 장치로부터의 정보에 대한 식별 요청을 전송한다. 이 서버는 MAC 주소(미디어 액세스 컨트롤 어드레스)와 같이 클라이언트 장치를 인증하는데 필요한 식별 정보의 최소 집합을 갖는다. 일 구현예에서, 호환 장치는 허브 네트워크에 대한 보안 및 고유 장치 식별자를 갖는다. 클라이언트 장치가 적절한 정보를 응답하지 않거나 제공하지 않으면, 인증이 실패하여 서버는 이 클라이언트 장치를 멤버로서 허브 네트워크에 추가하지 않을 것이다. 서버가 클라이언트 장치를 인증하면, 서버는 멤버 장치의 목록을 점검하여 인증된 클라이언트 장치가 이미 멤버 장치의 목록에 있는지를 확인한다. 그러한 경우, 서버는 클라이언트 장치를 멤버로서 추가할 필요가 없어, 사용자에게 장치가 재접속되었음을 알린다. 서버와 클라이언트는 도 21에 후술하는 바와 같이 진행한다(멤버 장치의 재접속을 설명). 일 구현예에서, 서버는 인증된 클라이언트 장치를 서버의 허브 네트워크에 대한 인증된 접속 장치 목록에 추가한다.
클라이언트 장치를 성공적으로 인증한 후에, 서버는 블록 1820에서 사용자로 부터 클라이언트 장치를 추가하는 추가 요청을 수신한다. 서버는 이 서버가 사용자로부터 특정 클라이언트 장치를 추가하는 확인 요청을 수신할 때까지 클라이언트를 추가하는 진행을 대기한다. 다른 구현예에서, 서버는 사용자로부터 요청을 대기하는 대신에 장치가 검출될 때 인증 장치를 추가하는 사용자로부터의 승인 또는 확인을 요청한다. 다른 구현예에서, 서버는 클라이언트를 추가하는 요청 또는 승인을 수신할 때까지 클라이언트 장치의 승인을 대기한다.
클라이언트 장치를 추가하는 요청을 수신한 후에, 서버는 블록 1825에서 클라이언트 장치를 인가한다. 일 구현예에서, 클라이언트는 추가될 허브 네트워크의 로컬 환경이어야 한다. 이 서버는 클라이언트로부터 이 클라이언트 장치가 허브 네트워크의 로컬 환경에 있는지를 설정하는 정보에 대한 로컬 환경 확인 요청을 전송한다. 일 구현예에서, 서버는 테스트 메시지를 전송하여 클라이언트로부터 응답을 대기한다(예를 들면, 클라이언트를 핑(ping)한다). 테스트 메시지의 전송과 응답의 수신 사이의 시간량에 기초하여, 서버는 클라이언트가 로컬 환경에 있는지를 판정한다(예를 들면, 임계치 이하의 왕복 여행 시간은 클라이언트가 로컬 환경 내에 있음을 나타낸다). 다른 구현예에서, 서버는 로컬 환경 정보를 클라이언트 장치에 전송하며 클라이언트 장치는 이 클라이언트 장치가 로컬 환경에 있는지를 판정한다. 클라이언트가 허브 네트워크의 로컬 환경에 있다고 서버가 확인하지 않으면, 인증이 실패하여 서버는 멤버로서 클라이언트 장치를 허브 네트워크에 추가하지 않을 것이다.
일 구현예에서, 서버는 또한 클라이언트 장치를 인가하기 전에 이 클라이언 트 장치가 서버의 폐기 목록에 있는지를 확인한다. 후술하는 바와 같이, 폐기 목록은 인가가 취소되어야 하는 장치를 나타낸다. 일 구현예에서, 서버는 인가된 클라이언트 장치를 인가 장치 목록에 추가한다.
클라이언트 장치를 성공적으로 인가한 후에, 서버는 블록 1830에서 허브 네트워크 내의 멤버 장치의 개수가 멤버 장치 한도 아래에 있다고 확인한다. 서버는 이 서버가 허브 네트워크에 멤버로서 추가할 수 있는, 20과 같은, 멤버 장치의 최대 개수를 나타내는 장치 한도를 저장한다. 또한, 서버는 멤버로서 추가된 각 장치에 대하여 증가되는 장치 카운트를 유지한다. 장치 카운트가 이미 장치 한도에 도달한 경우, 서버는 멤버로서 클라이언트 장치를 허브 네트워크에 추가할 수 없다. 다른 구현예에서, 서버는 장치 카운트 또는 장치 한도를 유지하지 않고, 블록 1830이 생략된다. 또 다른 구현예에서, 장치 한도는 검증된 외부 기관으로부터의 요청에 의해 변형될 수 있다.
장치 카운트가 장치 한도 이하이면, 서버는 블록 1835에서 허브 네트워크의 멤버 및 클라이언트로서 클라이언트 장치를 추가한다. 서버는 추가 확인 메시지를 추가된 클라이언트에 전송한다. 서버는 또한 장치 카운트를 1만큼 증가한다. 일 구현예에서, 서버는 멤버 목록 및 컨텐츠 목록(또는 동일 목록)에 클라이언트 장치를 추가한다. 접속 장치, 인증된 장치, 인가된 장치, 멤버 장치, 클라이언트 장치, 및 폐기된 장치 목록의 일부 또는 전부는 통합 또는 관련(교차 인덱스), 또는 생략될 수 있다.
다른 구현예에서, 서버는 자동적으로 검출 시에 검출된 클라이언트 장치의 추가를 시도하거나, 일련의 규칙을 사용하여 접속 클라이언트 장치의 추가 시도할 때는 결정한다. 또 다른 구현예에서, 서버는 검출된 클라이언트 장치의 인증 및 인가를 자동적으로 시동하지만, 사용자 요청 또는 승인을 수신할 때까지 멤버로서 인증 및 인가된 장치를 추가하지 않는다.
또 다른 구현예에서, 장치 카운트가 장치 한도에 도달하고 서버가 다른 장치의 추가를 시도한 경우, 서버는 외부 네트워크 접속을 통해서와 같이 장치 등록 서버와 접촉한다. 장치 등록 서버는 클라이언트 장치가 허브 네트워크에 추가되는지를 나타낸다. 장치 등록 서버는 허브 네트워크와 이들의 멤버 장치에 대한 정보를 유지한다. 이 장치는 여러 기준을 사용하여 클라이언트 장치가 추가될 수 있게 하는지를 판정할 수 있다. 일 구현예에서, 장치 등록 서버는 클라이언트 장치가 멤버로서 이미 추가된 허브 네트워크의 개수와 임계치를 비교한다. 다른 구현예에서, 장치 등록 서버는 허브 네트워크에 이미 추가된 장치의 개수와 제2 장치 한도를 비교하여, 장치 카운트가 제2 장치 한도 이하이면 클라이언트 장치가 추가될 수 있게 한다. 이 경우, 서버에 의해 저장된 제1 장치 한도는 외부 등록 없이 장치를 추가하는 한도로서 동작하고, 제2 장치 한도는 장치 추가를 위한 최대값으로서 동작한다. 다른 구현예에서, 서버는 장치를 추가하기 전에 (예를 들면, 제1 장치 한도가 제로인 것처럼)장치 등록 서버를 항상 점검한다.
다른 구현예에서, 비접속 장치 또는 로컬 환경 밖의 장치가 멤버로서 추가될 수 있다. 이 경우, 중간 장치는 멤버십을 위한 "통로(conduit)"로서 동작한다. 서버와 가능한 멤버 클라이언트는 접속되지 않거나 클라이언트가 서버의 로컬 환경 에 있지 않게 된다. 중간 장치는 서버와 클라이언트 모두에 접속된다(예를 들면, 직접, 간접, 또는 중간 장치가 서버와 클라이언트 사이에서 이동하는 휴대용 장치인 경우에 상이한 시점에서). 중간 장치는 허브 네트워크의 서버로부터 허브 네트워크에 클라이언트를 추가하는 권한을 요청한다. 추가 프로세스는 상술한 바와 유사하게 동작하지만, 서버와 클라이언트가 직접 통신하는 대신에, 중간 장치가 서버와 클라이언트 사이에 메시지를 전달하여, 이 장치에 대한 로컬 환경에서 각 개별 장치와 통신하게 된다.
도 19는 도 17에서의 허브 네트워크(HN1)으로부터 스토리지 클라이언트(1720)를 제어하는 것과 같이, 멤버 장치로서 허브 네트워크로부터 장치를 제거하는 일 구현예의 흐름도(1900)를 나타낸다. 우선, 이 장치는 허브 네트워크에 접속되어 허브 네트워크의 멤버이다. 블록 1905에서 멤버 클라이언트 장치의 제거가 트리거된다. 일 구현예에서, 제거는 두가지 방식, 즉, 사용자로부터 클라이언트 장치를 규정하는 제거 요청을 수신하여, 또는 클라이언트 장치의 인가가 취소되어야 함을 서버가 결정하여 트리거된다. 서버는 이 서버가 클라이언트는 식별하는 폐기 통지를 수신할 때 클라이언트 장치가 폐기되어야 한다고 판정하고, 또는 결합 인스턴스의 상태가 개별로 바뀌는 경우 서브 카피 버전의 디스에이블에 실패하는 등 호환 멤버 장치에 있어서 허브 네트워크의 규칙을 회피 또는 어긴다고 판정한다. 또한, 서버는 이 서버가 장치 보안이 포함된다고 판정하면 장치에 대한 인가를 취소한다.
서버는 블록 1910에서 폐기되어야 하는 클라이언트 장치에 있어서 서버의 허 브 네트워크에 결합된 결합 인스턴스의 서브 카피 버전에 대한 라이선스를 디스에이블한다. 이 서버는 서브 카피 버전이 디스에이블되어야 함을 나타내는 디스에이브 요청을 클라이언트에 전송하고, 클라이언트는 대응하는 라이선스를 디스에이블한다. 또한, 제거된 클라이언트 장치는 새로운 라이선스를 수신할 수 없으며, 클라이언트가 제거된 허브 네트워크에 결하된 결합 인스턴스의 기존 라이선스를 리프레시할 수 없다. 일 구현예에서, 호환 클라이언트 장치는 클라이언트 상에 저장된 서브 카피 버전에 대하여 그리고 일단 클라이언트가 제거된 경우에 이 클라이언트가 제거된 허브 네트워크에 결합된 결합 인스턴스에 대하여 모든 라이선스를 자동 디스에이블한다. 하나의 허브 네트워크로부터 클라이언트를 제거하는 것은 다른 허브 네트워크에 결합된 결합 인스턴스에 있어서 서브 카피 버전에 대한 라이선스를 반드시 디스에이블할 필요는 없다.
서버는 블록 1915에서 허브 네트워크의 멤버로서 클라이언트를 제거한다. 서버는 멤버 장치의 목록으로부터 클라이언트 장치를 제거하며, 멤버 장치 카운트를 감소한다. 서버는 멤버십이 폐기된 장치의 폐기 목록을 유지한다. 서버가 폐기용 장치를 제거한 경우, 이 서버는 장치에 서버의 폐기 목록을 추가한다. 서버는 이 클라이언트 장치가 폐기 목록에 포함된 경우 멤버로서 클라이언트 장치를 추가할 수 없다. 일 구현예에서, 서버는 폐기 목록이 갱신되면, 허브 네트워크, 다른 서버 또는 중앙 데이터버전을이스에서의 클라이언트와 같은 다른 장치에 폐기 목록을 공개한다. 다른 구현예에서, 서버는 이 서버 상에 저장된 하나 이상의 루트 라이선스를 갱신하여 클라이언트가 폐기되었음을 나타낸다.
일 구현예에서, 서버는 클라이언트에 저장된 서브 카피에 대한 모든 라이선스가 만료될 때까지 멤버로서 단절된 클라이언트를 제거하지 않는다. 후술하는 바와 같이, 장치가 단절되면, 단절된 허브 네트워크로부터의 라이선스를 결국 만료하게 된다. 서버는 모든 라이선스가 만료할 때까지 단절된 장치의 제거의 완성을 대기한다.
장치 단절 및 재접속
장치가 허브 네트워크의 로컬 환경에 진입하면, 장치는 허브네트워크에 접속할 수 있다. 장치가 허브 네트워크의 로컬 환경을 떠나면, 이 장치는 허브 네트워크로부터 단절된다. 장치가 로컬 환경에 복귀하면, 이 장치는 허브 네트워크에 재접속할 수 있다. 상술한 바와 같이, 호환 비멤버가 허브 네트워크에 접속되거나 재접속되는 경우, 서버는 사용자로부터 요청 또는 승인을 수신한 후에 새로운 장치의 추가하려는 시도를 진행한다.
도 20은 허브 네트워크로부터 멤버 장치를 단절하는 일 구현예의 흐름도(2000)를 나타낸다. 우선, 접속된 장치는 블록 2005에서 단절된다. 장치는 다양한 방식으로 단절될 수 있다. 장치가 허브 네트워크의 로컬 환경을 떠나면, 이 장치는 허브 네트워크로부터 단절된다. 장치와 허브 네트워크와의 물리적 접속(무선 또는 유선)이 실패하면, 이 장치는 단절된다. 예를 들면, 서버와 클라이언트가 데이터의 패킷을 더 이상 교환할 수 없을 때, 클라이언트와 서버는 단절된다. 일 구현예에서, 서버는 필요시(예를 들면, 접속된 클라이언트에 기초하여 동작하기 전에) 클라이언트가 접속되는지를 판정한다. 다른 구현예에서, 서버는 접속을 위해 클라이언트를 폴링하여 접속된 장치 목록을 유지하고, 클라이언트는 또한 서버를 주기적으로 폴링하여 클라이언트가 단절될 때를 인식한다. 다른 구현예에서, 사용자는 장치가 접속되었음을 확인 요청하면, 장치는 단절된다.
로컬 환경은 서버의 위치에 대하여 한정되기 때문에(예를 들면, 서버의 100미터 내에서), 서버는 물리적으로 이동할 때 서버는 이 서버를 이용하여 로컬 환경으로 취하므로 로컬 환경을 떠날 수 없다. 그러나, 서버가 이동하는 경우, 허브 네트워크의 하나 이상의 클라이언트는 이동하지 않을 수 있으며, 따라서, 서버 이동의 결과로서 허브 네트워크의 로컬 환경을 "떠날" 수 있다. 이 경우, 클라이언트는 남게되어 로컬 환경의 외부에 있는 것처럼 허브 네트워크로부터 단절된다.
클라이언트는 블록 2010에서 허브 네트워크에 결합된 결합 인스턴스의 서브 카피 버전의 임의의 라이선스에 대한 만료 기간을 점검한다. 후술하는 바와 같이, 서브 카피 버전에 대한 라이선스는 만료 기간을 포함한다. 클라이언트가 라이선스를 수신하면, 이 클라이언트는 라이선스의 만료 기간에 기초하여 만료 시점을 설정한다. 예를 들면, 15일의 만료 기간을 갖는 라이선스에 있어서, 클라이언트는 만료 시점을 이 클라이언트가 라이선스를 수신한 시간으로부터 15일로 설정한다. 클라이언트는 만료 시점 까지 얼마나 많은 시간이 남아있는지 그리고 보안 클럭을 사용하여 만료 시점이 도달하였는지를 모니터한다. 클라이언트는 서버로부터 리프레시된 라이선스를 요청하여 라이선스를 주기적으로 리프레시하고 리프레시된 라이선스가 수신된 경우에 만료 기간과 시간을 리셋한다. 단절된 클라이언트 장치는 이 클라이언트가 서버에 접속되지 않기 때문에 라이선스를 리프레시할 수 없다. 클라 이언트가 라이선스를 리프레시할 수 없는 동안, 만료 시점이 변화하지 않으며 이 만료 시점이 도달할 때까지의 시간량이 계속 감소한다. 만료 시점이 도달한 경우, 만료 기간이 만료되고 클라이언트가 라이선스를 디스에이블한다. 클라이언트가 라이선스를 다시 리프레시할 수 있으면, 클라이언트는 라이선스를 인에이블하여 만료 시점을 리셋한다. 클라이언트는 라이선스에 대한 허브 네트워크로부터 단절되기 때문에 하나의 라이선스를 리프레시할 수 없지만, 이 클라이언트는 제2 라이선스에 대응항는 다른 허브 네트워크에 여전히 접속되기 때문에 제2 라이선스를 리프레시할 수 있다.
임의의 만료 기간이 만료되면, 클라이언트는 블록 2015에서 만료 기간을 갖는 라이선스를 디스에이블한다. 이 클라이언트는 라이선스를 디스에이블하여, 대응하는 서브 카피 버전을 디스에이블한다. 다른 구현예에서, 클라이언트는 후술하는 바와 같이 다른 방식으로 서브 카피 버전을 디스에이블한다.
클라이언트는 블록 2020에서 이 클라이언트가 허브 네트워크에 재접속되었는지를 확인한다. 일 구현예에서, 클라이언트는 리프레시된 라이선스를 요구하는 것과 동시에 재접속을 점검한다. 유선 접속을 사용하는 일 구현예와 같은 몇몇 구성에서, 클라이언트가 재접속을 나타내는 신호를 신속하게 수신하기 때문에 클라이언트는 재접속을 주기적으로 점검할 필요가 없어, 블록 2020은 생략될 수 있다. 클라이언트가 허브 네트워크에 재접속되면, 이 클라이언트는 도 21에 도시한 프로세스를 따른다.
도 21은 허브 네트워크에 멤버 장치를 재접속하는 일 구현에의 흐름도(2100) 를 나타낸다. 우선, 장치는 허브 네트워크로부터 단절된 멤버 장치이다. 그 후, 장치는 블록 2105에서 허브 네트워크에 재접속된다. 장치가 허브 네트워크의 로컬 환경에 있는 경우 장치가 재접속될 수 있으며, 장치와 허브 네트워크 간의 물리적 접속은 복원 또는 설정될 수 있다. 일 구현예에서, 클라이언트는 서버를 주기적으로 폴링하여 클라이언트가 재접속될 때를 인식한다. 일 구현예에서, 장치는 사용자에 의해 이를 행하도록 요청받을 때까지 재접속하지 않는다.
서버는 블록 2110에서 허브 네트워크 내의 재접속 장치를 검출한다. 일 구현예에서, 클라이언트는 서버에 재접속 통지를 전송한다. 도 18의 블록 1810을 참조하여 상술한 바와 같이, 다른 구현예에서, 서버는 새로이 접속되거나 재접속된 장치에 대하여 허브 네트워크를 주기적으로 폴링한다.
서버는 블록 2115에서 검출된 장치를 인증하여 재접속 장치가 허브 네트워크의 멤버 클라이언트인지를 점검한다. 도 18의 블록 1815를 참조하여 상술한 바와 같이, 서버는 장치의 접속에 대하여 인증하여 장치의 아이덴티티를 결정한다. 이 서버는 멤버 장치 목록을 유지하고 새롭게 접속된 장치가 이미 허브 네트워크의 멤버이고 다시 추가될 필요가 없음을 인식할 수 있다. 일 구현예에서, 서버는 재접속 장치가 허브 네트워크의 로컬 환경에 있음을 확인한다. 일 구현예에서, 서버는 또한 재접속 장치가 폐기 목록에 있지 않음을 확인한다.
장치를 멤버 장치로서 인증한 후에, 서버는 블록 2120에서 클라이언트의 라이선스를 리프레시한다. 서버는 이 서버의 허브 네트워크에 결합된 결합 인스턴스에 있어서 클라이언트 상에 저장된 컨텐츠 데이터의 서브 카피 버전의 라이선스를 리프레시한다. 서버는 다른 허브 네트워크에 결합된 결합 인스턴스에 대한 서브 카피 버전의 라이선스를 리프세시하지 않는다. 다르게는, 클라이언트는 이 클라이언트가 허브 네트워크에 성공적으로 재접속하면 라이선스가 리프레시되도록 요청한다.
시간 관리
서버는 허브 네트워크의 시간 관리를 다룬다. 시간 관리는 상대 기간 및 절대 시간 관리를 포함한다. 서버는 시간을 관리하여 허브 네트워크에서 컨텐츠의 개별 또는 결합 인스턴스에 대한 라이선스에서와 같이 시간 기반 제한을 실행한다. 또한, 클라이언트는 시간을 내부적으로 또는 서버의 시간 관리를 참조하여 다룬다. 클라이언트가 라이센싱 기관으로부터 서브 카피 버전에 대한 라이선스를 수신한 경우, 클라이언트는 이 라이선스를 수신하기 전에 라이센싱 기관과 시간 정보를 동기화한다. 서버와 클라이언트는 시간 관리를 위한 보안 메커니즘을 사용한다.
보안
일 구현예에서, 허브 네트워크의 장치는, 데이터를 통신하는 단계; 요청을 행하는 단계; 트랜잭션 이력에 있어서 트랜잭션을 로그하는 단계; 라이선스를 제공하고 디스에이블하는 단계; 장치를 인증, 인가, 디스에이블, 및 폐기하는 단계; 인스턴스, 복사본 및 키를 저장, 제작 및 이동하는 단계; 인스턴스와 복사본에 대한 메타데이터를 유지하는 단계; 및 컨텐츠를 제공 및 스트리밍하는 단계를 포함하지만 이에 한정되지 않는 여러 동작에 대하여 보안 기술을 사용한다. 호환 장치는 중앙 기관으로부터 보안 프로세스를 주기적으로 갱신하거나, 자동화된 소스의 사용 자로부터 갱신을 수신할 수 있다. 클라이언트 장치는 라이선스를 수신하기 전에 암호화 키를 갱신하고, 클라이언트의 클럭 및 시간 정보를 서버와 동기화하며, 폐기 목록을 교환 및 갱신하고, 시스템 보안 데이터 및 툴을 갱신하는 등과 같은 보안 메커니즘을 갱신한다. 일 구현예에서, 서버는 키가 포함되었다고 판정하면 서버는 키를 폐기할 수 있다. 이 경우, 서버는 호환 장치가 폐기된 키를 디스에이블하도록 요청하기 때문에, 폐기된 키는 보안 미디어 컨텐츠를 액세스하는데 사용될 수 없다.
컨텐츠 관리
미디어 네트워크 환경에서 장치는 컨텐츠의 인스턴스에 대한 컨텐츠 데이터를 제공, 복사 및 이동한다. 상술한 바와 같이, 인스턴스는 오디오 및/또는 비디오 데이터와 같은 미디어 데이터인 컨텐츠 데이터를 포함한다. 상술한 바와 같이, 허브 네트워크에 대한 서버는 이 허브 네트워크에서 컨텐츠의 결합 인스턴스의 상태를 관리한다. 서버는 결합 인스턴스의 상태를 직접 변경하고 허브 네트워크에서의 멤버 클라이언트가 이들 상태 변경에 따라 적절한 동작을 취하게 한다.
컨텐츠의 인스턴스는 호환 또는 비호환이다. 호환 인스턴스는 인코딩된 데이터를 포함하기 때문에, 단지 호환 장치만이 컨텐츠 데이터를 디코딩하고 제공할 수 있다. 따라서, 비호환 장치는 호환 인스턴스로부터 컨텐츠 데이터를 제공할 수 없다. 호환 장치(서버)는 허브 네트워크로/로부터 호환 장치를 결합 또는 해제할 수 있다.
컨텐츠의 비호환 인스턴스 또는 복사본은 허브 네트워크의 요건에 따라 인코 딩되지 않으며, 따라서 비호환 장치 또는 호환 장치는 비호환 인스턴스 또는 복사본의 컨텐츠 데이터를 제공할 수 있다(인스턴스 또는 복사본에서 존재할 수 있다는 다른 카피 제어 메커니즘에 종속). 호환 장치는 허브 네트워크에 비호환 인스턴스 또는 복사본을 결합할 수 없지만, 다른 형태로 비호환 컨텐츠를 저장할 수는 있다. 일 구현예에서, 비호환 인스턴스가 호환 장치에 의해 인식되고 허브 네트워크에서 사용되도록 인가된 카피 제어 정보를 가지면, 호환 장치는 카피 제어 정보에 따라 루프 라이선스를 한정하는 비호환 인스턴스를 결합할 수 있다.
컨텐츠 상태
허브 네트워크에서 컨텐츠의 각각의 호환 인스턴스는 두 개의 배타적 상태, 즉, 개별 또는 결합 중 하나에 있다. 컨텐츠의 개별 인스턴스는 임의의 허브 네트워크에 결합되지 않으며, 호환 매체를 사용하여 허브 네트워크 안 또는 밖에서 한 장치로부터 다른 장치로 이동될 수 있다. 호환 장치는 (컨텐츠 데이터를 제공하는 과정에서 일시적인 경우를 제외하면)개별 인스턴스의 복사본을 생성하지 않는다. 개별 인스턴스는 호환 저장 매체(예를 들면, 광 디스크) 상에 저장된 하나 이상의 전자 파일, 또는 호환 장치의 스토리지 상에 저장된 하나 이상의 전자 파일(예를 들면, 네트워크 접속을 통한 다운로드로 수신)과 같은 여러 형태에 있을 수 있다. 컨텐츠의 개별 인스턴스를 저장하는 매체는 미디어 네트워크 호환 매체이다. 호환 매체는 서버가, 이 컨텐츠를 허브 네트워크에 결합할 때 개별 인스턴스를 디스에이블하는 것과 같이 필요시에 개별 인스턴스를 변형할 수 있게 한다. 또한, 호환 매체는 장치가 호환 매체에 저장된 임의의 개별 인스턴스의 데이터의 비트별 복사본 을 생성할 수 없도록 구성된다. 따라서, 호환 매체는 보안 판독/기입 스토리지 미디어(예를 들면, 부착 또는 관련 기입가능 스토리지를 구비한 판독 전용 미디어 또는 기입가능 광 디스크)를 포함한다. 일 구현예에서, 기입가능 스토리지는 데이터베이스와 같이 그 자신을 매체로부터 이격된다. 호환 장치는 개별 인스턴스의 복사본을 생성할 수 없다.
도 22는 개별 인스턴스(2205)의 일 구현예를 나타낸다. 개별 인스턴스(2205)는 잠김 또는 보안 컨텐츠 데이터(예를 들면, 암호화된 것; 2210)를 포함한다. 개별 인스턴스의 잠김 컨텐츠 데이터는 또한 개별 인스턴스의 잠김 컨텐츠 데이터의 개별 버전으로 불린다. 잠김 컨텐츠 데이터(2210)는 오디오 또는 비디오 데이터(예를 들면, 음악, 텔레비전 프로그램, 영화)의 미디어 컨텐츠 데이터이다. 다른 구현예에서, 잠김 컨텐츠 데이터는 실행가능 소프트웨어(예를 들면, 컴퓨터 또는 비디오 게임)와 같은 논 미디어 데이터(non-media data)이다. 잠김 컨텐츠 데이터(2210)는 암호화된다(예를 들면, 공공 피어 리뷰(public peer review)를 통해 공개되어 검증된 하나 이상의 암호화 알고리즘을 사용하여). 잠김 컨텐츠 데이터(2210)는 컨텐츠 암호화 기술을 사용하여 암호화되기 때문에, 단지 호환 장치만이 잠김 컨텐츠 데이터(2210)를 복호화할 수 있다. 헤드 정보(2215)는 잠김 컨텐츠 데이터에 관련된다. 헤더 정보는 타이틀 식별자, 인스턴스 식별자(특정 인스턴스를 식별), 인코딩 데이터(예를 들면, 코덱, 해상도, 및 잠김 컨텐츠 데이터를 인코딩하는데 사용되는 인코딩 엔티티를 나타냄), 및 라이센싱 기관 데이터와 같은 메타 데이터를 포함한다. 라이센싱 기관 데이터는 추가 권한 또는 라이선 스를 획득하기 위해 액세스될 수 있는 외부 라이센싱 기관을 나타낸다. 개별 인스턴스의 몇몇 구현예는 라이센싱 기관 데이터를 포함하지 않는다(예를 들면, 잠김 컨텐츠 데이터와 함께 라이선스에 제공되는 것을 사용). 다른 구현예에서, 헤더 정보(2215)의 일부 또는 전부가 또한 암호화되어 잠김 컨텐츠 데이터(2210)에 포함된다. 개별 인스턴스(2205)는 암호화된 데이터의 보안 영역(2220)을 포함한다. 보안 영역(2220)의 데이터는 허브 네트워크 암호화 기술을 사용하여 암호화되기 때문에, 호환 장치만이 보안 영역(2220)의 데이터를 복호화할 수 있다(예를 들면, 호환 장치가 보유하는 키를 사용). 보안 영역(2220)은 키(2225), 개별 라이선스(2230), 및 폐기 목록(2235)을 포함한다. 키(2225)는 잠김 컨텐츠 데이터(2210)를 풀기 위한 것이다. 일 예에서, 호환 장치는 키(2225)(허브 네트워크 암호화를 사용하여 암호화됨)를 포함하는 보안 영역(2220)을 복호화하는 키를 보유하고, 키(2225)를 사용하여 잠김 컨텐츠 데이터(2210)(컨텐츠 암호화를 사용하여 암호화됨)를 복호화한다. 개별 라이선스(2230)는 특정 개별 인스턴스(2205)에 있어서 잠김 컨텐츠 데이터(2210)에 대한 현재 라이선스를 보유한다. 라이선스(2230)는, 개별 인스턴스에 대하여 적절하게 제공, 복사 및 이동하는 등(예를 들면, 복사는 허용되지 않음), 특정 개별 인스턴스(2205)에 있어서 잠김 컨텐츠 데이터(2210)에 대하여 한정된 일련의 권한을 한정한다. 또한, 라이선스(2230)는 개별 인스턴스(2205)에 기초하여 어떤 유형의 라이선스가 결합 인스턴스에 이용가능한지를 나타낸다. 일 구현예에서, 라이선스(2230)는 이 개별 인스턴스(2205)가 개별 인스턴스임을 나타내는 플래그를 포함한다. 폐기 목록(2235)은 인가가 폐 기된 장치를 나타낸다. 호환 장치는 그 자신의 폐기 목록을 유지한다. 호환 장치가 개별 인스턴스를 수신한 경우, 이 장치는 장치의 폐기 목록 상에 있지 않은 개별 인스턴스의 폐기 목록 내의 임의의 장치를 이의 폐기 목록에 추가한다. 호환 장치는 이 장치는 장치의 폐기 목록에 열거된 경우 개별 인스턴스를 제공 또는 재생할 수 없다. 호환 서버는 이 서버가 서버의 폐기 목록에 열거되면 개별 인스턴스를 결합할 수 없다. 다른 구현예에서, 개별 인스턴스는 폐기 목록을 포함하지 않는다. 다른 구현예에서, 개별 인스턴스의 컴포넌트는 여러 파일로 저장된다.
결합 인스턴스는 특정 허브 네트워크에 결합되고 허브 네트워크의 서버에 의해 관리된다. 결합 인스턴스의 데이터는 (적어도 그 일부가)암호화되어, 비호환 장치 또는 결합 허브 네트워크 밖의 장치는 결합 인스턴스의 컨텐츠 데이터를 제공 또는 재생할 수 없다. 결합 인스턴스를 관리하는 서버는 결합 인스턴스에 대한 루트 책임을 갖는다. 루트 책임은 결합 인스턴스의 잠김 컨텐츠 데이터의 서브 카피 버전에 대한 라이선스를 발행 및 관리하는 것을 포함한다. 결합 인스턴스를 관리하는 서버는 또한 결합 인스턴스의 잠김 컨텐츠 데이터의 소스 버전을 관리한다. 서버는 허브 네트워크에서 잠김 컨텐츠 데이터의 서브 카피 버전을 생성하는 소스 버전을 사용한다. 지정된 서버는 이 결합 인스턴스의 서브 카피 버전에 대한 로컬 라이센싱 기관이다. 서버는 소스 버전으로부터 서브 카피 버전을 제작하여 허브 네트워크 내의 클라이언트에 서브 카피 버전을 제공할 수 있다. 일 구현예에서, 클라이언트는 클라이언트에 의해 저장된 서브 카피 버전으로부터 서브 카피 버전을 제작할 수 있지만, 새로운 서브 카피 버전을 수신한 클라이언트는 이 컨텐츠를 제 공하기 위해 허브 네트워크의 서버로부터 라이선스를 요구할 수 있다. 클라이언트 장치는 허브 네트워크 내의 다른 장치에 또는 허브 네트워크 밖의 장치에 서브 카피 버전을 이동시킬 수 있다. (예를 들면, 이 장치가 멤버가 아닌)상이한 허브 네트워크로부터 서브 카피 버전을 수신한 장치는 서브 카피 버전으로 표시한 라이센싱 기관으로부터와 같이, 새로운 라이선스를 획득할 필요가 있다. 호환 서버는 루트 책임와 이에 따른 결합 인스턴스를, 결합 인스턴스의 상태를 개별 인스턴스로 우선 변경하지 않고 다른 호환 서버에 이동할 수 없다. 루트 책임을 다른 서버에 이송하기 위해서, 서버는 결합 인스턴스를 개별 인스턴스에 시프트하여 이 개별 인스턴스를 제2 서버에 이동한다. 그 후, 제2 서버는 수신된 개별 인스턴스는 결합 인스턴스로 시프트하고, 따라서, 제2 서버는 루트 책임을 갖는다. 이 경우, 결합 인스턴스는 그 후 제2 서버의 것과는 상이한 허브 네트워크에 결합된다. 다른 구현예에서, 소스 버전은 허브 네트워크에서 서버에 저장되지 않지만, 서버는 루트 라이선스를 저장 및 관리하고 이 소스 버전을 원격 관리한다.
도 23은 서버(2305)와 클라이언트(2350) 상에 저장된 컴포넌트 등의, 결합 인스턴스(2300)의 일 구현예를 나타낸다. 결합 인스턴스(2300)는 도 22의 개별 인스턴스(2205)와 구조상 유사하지만, 서버 상에 저장된 데이터와 허브 네트워크에서 제로 이상의 클라이언트 상에 저장된 데이터를 포함한다. 서버 컴포넌트(2305)는, 잠김 컨텐츠 데이터(2310), 헤더 정보(2315), 및 키(2325), 루트 라이선스(2330), 및 폐기 목록(2335)을 포함하는 보안 영역(2320)을 포함한다. 서버 컴포넌트(2305)에서 잠김 컨텐츠 데이터(2310)는 결합 인스턴스(2300)의 잠김 컨텐츠 데 이터의 소스 버전이다. 서버는 잠김 컨텐츠 데이터(예를 들면, 후술하는 잠김 컨텐츠 데이터(2310))의 서브 카피 버전을 제작하는 소스 버전을 사용한다. 소스 버전은 허브 네트워크에서 컨텐츠의 최고 해상도 버전이다. 상이한 장치가 상이한 해상도 복사본을 요청하는 경우, 이들 복사본은 소스 버전으로부터 제작될 수 있다. 헤더 정보(2315)의 라이센싱 기관 데이터는 외부 라이센싱 기관(예를 들면, 결합 인스턴스가 기초하는 개별 인스턴스로 나타낸 것과 동일한 기관) 및 로컬 라이센싱 기관으로서의 서버를 나타낸다. 결합 인스턴스의 몇몇 구현예는 (예를 들면, 잠김 컨텐츠 데이터와 함께 라이선스에 제공되는 것을 사용하여)절대 라이센싱 기관 데이터를 포함하지 않는다. 루트 라이선스(2330)는 결합 인스턴스에 있어서 적절한 제공, 복사 및 이동을 포함하는, 특정 잠김 컨텐츠 데이터(2310)에 대하여 한정된 일련의 권한을 나타낸다(예를 들면, 이동이 허용되지 않지만, 서브 카피 버전의 생성 및 이의 다른 장치로의 제공은 허용). 루트 라이선스(2330)는 특정 서버에 암호 결합된다. 루트 라이선스(2330)는 허브 네트워크에서 어떤 종류의 라이선스가 이용가능한지를 한정한다. 일 구현예에서, 루트 라이선스(2330)는 이 결합 인스턴스(2305)가 결합 인스턴스임을 나타내는 플래그를 포함한다. 일 구현예에서, 루트 라이선스는 서버가 서버 장치 또는 서버/클라이언트 장치인지 여부에 따라 상이하다. 폐기 목록은 인가가 폐기된 장치를 나타낸다. 상술한 바와 같이, 호환 장치는 그 자신의 폐기 목록을 유지한다(예를 들면, 서버는 서버 또는 장치 폐기 목록을 유지하며, 클라이언트는 클라이언트 폐기 목록을 유지한다). 서버가 결합 인스턴스가 수신하는 경우, 이 서버는 서버의 폐기 목록 상에 있지 않은 결합 인스턴스의 폐기 목록(들) 내에 임의의 장치를 폐기 목록에 추가한다. 호환 서버 장치는 이 장치가 서버의 폐기 목록에 열거되지 않으면 결합 인스턴스를 제공 또는 재생할 수 없다. 호환 서버는 이 서버가 서버의 폐기 목록에 열거되면 결합 인스턴스를 결합해제(개별화)할 수 없다. 호환 서버는 서버의 폐기 목록 내에 열거된 장치에 서브 카피 버전 또는 라이선스를 제공할 수 없다. 다른 구현예에서, 호환 서버는 폐기 목록 내에 열거된 장치에 서브 카피 버전을 제공할 수 있지만, 라이선스를 이 장치에 제공할 수 없다.
클라이언트(2350) 상에 저장된 컴포넌트는 서버(2305)에 저장된 것과 유사하지만, 라이선스는 다르다. 클라이언트 컴포넌트(2350)는, 잠김 컨텐츠 데이터(2355), 헤드 정보(2360), 및 키(2370), 서브 카피 라이선스(2375), 및 폐기 목록(2380)을 포함하는 보안 영역(2365)을 포함한다. 헤더 정보(2360)의 라이센싱 기관 데이터는 외부 라이센싱 기관(예를 들면, 결합 인스턴스가 기초하는 개별 인스턴스로 나타낸 것과 동일한 기관)과 로컬 라이센싱 기관으로서 결합 인스턴스에 대응하는 서버를 나타낸다. 상술한 바와 같이, 결합 인스턴스의 몇몇 구현예는 라이센싱 기관 데이터를 포함하지 않는다. 서브 카피 라이선스(2375)는 임의의 시간 제한과 같은 컨텐츠를 제공하는 규칙을 포함하는, 대응 결합 인스턴스의 루트 라이선스에 따라 특정 잠김 컨텐츠 데이터(2355)에 대하여 한정된 일련의 권한을 나타낸다. 서브 카피 라이선스(2375)는 특정 클라이언트에 암호 결합된다. 서브 카피 라이선스(2375)는 클라이언트가 후술하는 바와 같이 라이선스를 리프레시할 수 없는 경우에 만료 기간을 포함한다. 상술한 바와 같이, 클라이언트 장치는 폐기 목 록을 유지하고 폐기 목록(2380)에 따라 이 폐기 목록을 갱신한다. 호환 클라이언트 장치는 이 장치가 클라이언트의 폐기 목록 내에 열거되어 있으면 서브 카피 버전을 제공 또는 재생할 수 없다. 일 구현예에서, 호환 장치는 또한 클라이언트 폐기 목록 내에 열거된 장치에 서브 카피를 제공할 수 없다.
일 구현예에서, 개별 인스턴스와 유사하게, 결합 인스턴스의 보안 영역과 잠김 컨텐츠 데이터는 상이한 기술을 사용하여 암호화된다. 잠김 컨텐츠 데이터(소스 버전과 임의의 서브 카피 버전)는 컨텐츠 암호화 기술을 사용하여 암호화된다. 보안 영역은 허브 네트워크 암호화 기술을 사용하여 암호화된다. 일 예에서, 호환 장치는 (허브 네트워크 암호화를 사용하여 암호화된)키를 포함하는 허브 네트워크 키를 보안 영역을 복호화하기 위해 보유하며, 보안 영역에서 이 복호화된 키를 사용하여 (컨텐츠 암호화를 사용하여 암호화된)잠김 컨텐츠 데이터를 복호화한다.
다른 구현예에서, 결합 인스턴스의 라이선스와 잠김 컨텐츠 데이터(또는 전체 보안 영역)는 개별적으로 관리 및 분배될 수 있다. 유사하게, 개별 인스턴스의 잠김 컨텐츠는 개별적으로 분배될 수 있다. 이 경우, 호환 장치는 유효 라이선스를 우선 획득하지 않고 잠김 컨텐츠 데이터를 제공할 수 없다. 장치는 허브 네트워크 밖의 잠김 컨텐츠 데이터를 분해할 수 있지만, 여전히 새로운 라이선스를 필요로 한다. 또한, 이러한 방식으로, 중간 장치가 후술한 바와 같이 서버로부터 단절된 클라이언트로 라이선스를 전달함으로써 허브 네트워크의 로컬 환경 밖에 단절된 멤버 장치의 라이선스를 리프레시하기 위한 통로로서 동작할 수 있다.
동일한 컨텐츠의 여러 개별 인스턴스는 고유한 개별 인스턴스로서 처리되어 연관되지 않는다. 유사하게, 동일한 컨텐츠의 여러 개별 인스턴스가 허브 네트워크에 결합되면, 각각은 고유한 결합 인스턴스를 생성한다. 다른 구현예에서, 서버는 동일한 컨텐츠의 여러 개별 인스턴스가 존재하는 때(예를 들면, 컨텐츠의 식별 정보 또는 헤더 정보를 통해)를 인식하며, 인스턴스에서의 라이센싱 정보는 결합 인스턴스가 관련된 바와 같이 처리될 수 있게 한다. 예를 들면, 여러 관련 인스턴스가 존재하면, 하나의 관련 인스턴스의 해제는 나머지 관련 결합 인스턴에 대한 잠김 컨텐츠 데이터를 디스에이블할 필요는 없다.
다른 구현예에서, 컨텐츠의 인스턴스 또는 복사본은 또한, 제3 상태, 즉 비제한(unrestricted)에 있을 수 있다. 비제한 인스턴스와 복사본은 허브 네트워크 안팎에서 이동, 복사 및 재생될 수 있다. 호환 장치는 비제한 인스턴스를 결합 또는 개별의 상태로 변경할 수 없다. 컨텐츠가 허브 네트워크에 추가되지 않도록 사용자가 요구하는 경우, 서버는 카피 제어 정보를 점검하여 서버가 (카피 제어 정보에 따라 루트 라이선스를 한정하는)제어 상태를 식별하면 결합 인스턴스로서 컨텐츠를 추가한다. 사용자가 임의의 검출된 복사 제어 또는 미디어 네트워크 환경 정보를 포함하지 않은 (예를 들면, 개별 또는 결합 인스턴스가 아닌)인스턴스의 추가를 요청하면, 이 장치는 비제한 인스턴스로서 컨텐츠를 추가할 수 있다.
도 17을 다시 참조하면, 두 개의 항목 A 및 B가 허브 네트워크(HN1)에 결합된다. 항목 A 및 B의 두 항목 각각의 결합 인스턴스에 있어서, 서버/클라이언트 장치(1705)는 "A" 및 "B" 라벨로 표시되는 잠김 컨텐츠 데이터의 소스 버전을 저장한다. 스토리지 클라이언트 장치(1720)는 "a" 및 "b" 라벨로 표시되는, 두 개의 컨텐츠 항목 A와 B 각각에 대한 잠김 컨텐츠 데이터의 서브 카피 버전을 저장한다.
하나의 컨텐츠 항목 X는 허브 네트워크(HN2)에 결합된다. 서버 장치(1715)는 "X"라벨로 표시되는 컨텐츠 X의 소스 버전을 저장한다. 서버/클라이언트 장치(1705)와 스토리지 클라이언트 장치(1720)는 각각 "x" 라벨로 표시되는 컨텐츠 항목 X에 대한 서브 카피 버전을 저장한다. 또한, 서버 장치(1715)는 "Y" 라벨로 표시되는 컨텐츠 Y의 개별 인스턴스에 대한 잠김 컨텐츠 데이터의 개별 버전을 저장한다.
스토리지 장치(1730)는 "Z" 라벨로 표시되는 컨텐츠 Z의 개별 버전을 저장한다.
컨텐츠 상태 전환
서버는 허브 네트워크에서 컨텐츠의 호환 인스턴스 상태를 관리한다. 서버는 개별 인스턴스를 결합 인스턴스의 상태로 변경함으로써 허브 네트워크의 인스턴스를 결합한다. 서버는 결합 인스턴스의 상태를 개별 인스턴스로 변경하고 허브 네트워크에서 대응하는 잠김 컨텐츠 데이터를 디스에이블하여 허브 네트워크로부터 인스턴스를 제거 또는 해제한다.
도 24는 허브 네트워크에 개별 인스턴스를 결합하는 일 구현예의 흐름도(2400)를 나타낸다. 우선, 서버는 블록 2405에서 개별 인스턴스를 수신한다. 상술한 바와 같이, 개별 인스턴스는 호환 스토리지 매체(예를 들면, 광 디스크) 상에 저장된 전자 파일(또는 파일들), 또는 서버의 스토리지에 저장된(네트워크 접속을 통한 다운로드로 수신된) 전자 파일(또는 파일들)과 같이 호환 매체 상에서 여 러 형태일 수 있다. 이 서버는 허브 네트워크에 결합되지 않은 개별 인스턴스의 복사본을 제작하지 않기 때문에(서버가 개별 인스턴스의 잠김 컨텐츠 데이터의 복사본을 제작할 수 있더라도), 서버는 개별 인스턴스의 복사본을 아직 제작하지 않는다.
서버는 블록 2410에서 허브 네트워크에 개별 인스턴스를 결합하는 요청을 사용자로부터 수신한다. 일 구현예에서, 서버는 사용자로부터의 요청을 대기한다. 다른 구현예에서, 서버는 이 서버가 개별 인스턴스를 수신하는 경우에 사용자에게 질의를 전송하여, 서버가 개별 인스턴스를 허브 네트워크에 결합하여야 하는지를 질의한다.
서버는 결합 요청을 수신한 후에, 블록 2415에서 개별 인스턴스를 디스에이블한다. 개별 인스턴스를 디스에이블함으로써, 호환 장치는 개별 인스턴스를 제공 또는 재생할 수 없다. 일 구현예에서, 서버는 개별 인스턴스에 대한 라이선스를 디스에이블함으로써 개별 인스턴스를 디스에이블한다. 다른 구현예에서, 서버는 개별 인스턴스의 데이터 내에 플래그를 설정함으로써 개별 인스턴스를 디스에이블하기 때문에, 호환 장치는 개별 인스턴스를 제공할 수 없다. 다른 구현예에서, 서버는 이 서버에 전용인 키를 사용하여 개별 키의 일부 또는 전부를 암호화함으로써 개별 인스턴스를 디스에이블한다. 다른 구현예에서, 서버는 (장치가 컨텐츠 데이터를 제공 또는 재생하기 전에 점검하는)중앙 데이터베이스 또는 기관으로 디스에이블되는 것으로서 개별 인스턴스를 등록함으로써 개별 인스턴스를 디스에이블한다. 다른 구현예에서, 개별 인스턴스는 디스에이블된 개별 인스턴스가 결합되는 허브 네트워크의 멤버인 장치가 서브 카피로서 개별 인스턴스를 제공 또는 재생할 수 있도록 부분적으로만 디스에이블된다. 서버가 개별 인스턴스를 디스에이블할 수 없으면, 서버는 개별 인스턴스를 허브 네트워크에 결합하지 않는다.
서버는 블록 2420에서 개별 인스턴스로부터 결합 인스턴스를 생성한다. 서버는 잠김 컨텐츠 데이터, 라이센싱 기관 정보 등의 헤더 정보, 잠김 컨텐츠 데이터를 풀기 위한 키, 개별 라이선스, 및 폐기 목록(존재한 경우)를 복사하는 등, 개별 인스턴스를 복사한다. 서버는 결합 인스턴스에 대한 잠김 컨텐츠 데이터의 소스 버전으로서 잠김 컨텐츠 데이터의 복사본을 저장한다. 서버는 개별 라이선스를 적절하게 루트 라이선스가 되도록 변형하여 개별 인스턴스 대신 결합 인스턴스를 관리한다. 다르게는, 서버는 개별 인스턴스를 복사하지 않고 그 대신 이 개별 인스턴스를 사용하여 새로운 루트 라이선스를 생성한다. 다른 구현예에서, 서버는 또한 또는 그 대신 루트 라이선스를 갱신 또는 갱신하기 위한 라이센싱 기관 정보로 표시된 외부 라이센싱 기관과 접촉한다. 일 구현예에서, 서버가 서버/클라이언트 장치가 아니고 이에 따라 컨텐츠를 제공하지 않으면, 루트 라이선스는 서버에 대한 프리젠테이션 권한에 관한 라이센싱 정보를 저장하지 않는다.
다른 구현예에서, 서버는 개별 인스턴스 일부 또는 전부를 삭제함으로써 개별 인스턴스를 디스에이블한다. 이 경우, 서버는 우선 개별 인스턴스를 삭제하기 전에 개별 인스턴스의 결합 인스턴스를 설정한다.
다른 실시예에서, 서버는 개별 인스턴스를 결합 인스턴스로 변환한다. 이 경우, 서버는 개별 인스턴스의 복사본을 제작하지 않는다. 그 대신, 서버는 개별 인스턴스가 이제 결합 인스턴스를 나타내도록 적절하게 라이센싱 기관 정보와 라이선스를 변경한다.
일 구현예에서, 서버는 개별 인스턴스를 디스에이블하여 결합 인스턴스를 생성하기 전에 개별 인스턴스를 결합할 수 있도록 보장한다. 서버는 개별 인스턴스의 라이선스가 서버가 개별 인스턴스를 결합하게 할 수 있음을 확인한다. 또한, 서버는 이 서버가 서버의 폐기 목록에 있지 않음을 확인한다. 다른 구현예에서, 서버는 또한 개별 인스턴스의 잠김 컨텐츠 데이터에서 적절한 워터마크가 있음을 확인한다. 개별 인스턴스의 결합이 허용된다고 서버가 성공적으로 보장하지 않으면, 서버는 개별 인스턴스를 결합하지 않는다.
일 구현예에서, 서버는 방송 정보를 기록하고 이를 결합 컨텐츠를 저장하여 루트를 설정한다. 서버는 자동적으로 루트 라이선스를 생성한다. 다른 구현예에서, 서버는 방송에서 이 정보를 사용하여 루트 라이선스를 한정하거나 방송 정보에서 라이센싱 기관 정보를 사용하여 루트 라이선스를 구축하기 위한 라이선스를 획득하도록 외부 라이센싱 기관과 접촉한다. 다른 구현예에서, 서버는 개별 인스턴스로서 방송으로부터 컨텐츠를 기록한다. 일 구현예에서, 방송 정보는 키, 라이센싱 기관 정보 및 개별 복사를 구축하는 라이센싱 정보를 포함한다. 다른 구현예에서, 서버는 방송 정보를 기록하고 이를 결합 컨텐츠로서 저장하여 루트를 설정한다. 서버는 방송 정보에서 라이센싱 기관 정보를 사용하여 루트 복사를 구축하기 위한 라이선스를 획득하도록 외부 라이센싱 기관을 접촉한다. 일 구현예에서, 서버는 방송이 제공하는 임의의 복사 제어 정보에 따라 방송 정보의 미디어 컨텐츠를 암호화한다.
도 25는 허브 네트워크로부터 컨텐츠의 복사본을 해제하여, 컨텐츠를 개별화하는("개별화(discretification")) 일 구현예의 흐름도(2500)를 나타낸다. 우선, 결합 인스턴스는 서버 상에 그리고 컨텐츠의 서브 카피 버전을 저장하는 임의의 클라이언트에 저장된다.
서버는 블록 2505에서 허브 네트워크에서 결합 인스턴스를 해제하여 개별 인스턴스를 생성하는 요청을 사용자로부터 수신한다. 일 구현예에서, 서버는 사용자로부터 요청을 대기한다. 다른 구현예에서, 서버는 이 서버가 허브 네트워크 밖으로 결합 인스턴스를 이동하는 등과 같이 결합 인스턴스에 대하여 이용가능하지 않은 동작의 요청을 수신한다. 이 경우, 서버가 허브 네트워크로부터 결합 인스턴스를 해제하여 개별 인스턴스를 생성하여야 하는지를 질의한다.
서버가 개별 요청을 수신한 후에, 서버는 블록 2515에서 허브 네트워크의 클라이언트가 대응하는 결합 인스턴스의 서브 카피 버전을 디스에이블하게 한다. 서버는 허브 네트워크의 멤버 각각에 디스에이블 요청을 전송하여, 서브 카피 버전이 디스에이블되어야 하는 결합 인스턴스를 규정한다. 다르게는, 서버는 (예를 들면, 클라이언트에 전송된 라이선스로 표시되는 바와 같이)결합 인스턴스의 서브 카피 버전을 갖는 멤버에 디스에이블 요청을 전송한다. 디스에이블 요청을 수신하는 클라이언트는 결합 인스턴스에 대응하는 모든 서브 카피 버전을 디스에이블한다. 서브 카피 버전을 디스에이블함으로써, 호환 장치는 디스에이블된 서브 카피 버전을 제공 또는 재생할 수 없다. 일 구현예에서, 클라이언트는 서브 카피 버전에 대한 라이선스를 디스에이블함으로써 서브 카피 버전을 디스에이블한다. 다른 구현예에서, 클라이언트는 디스에이블될 서브 카피 버전을 삭제한다. 다른 구현예에서, 클라이언트는 서브 카피 버전의 데이터 내에 플래그를 설정함으로써 서브 카피 버전을 디스에이블하기 때문에, 호환 장치는 서브 카피 버전을 제공할 수 없다. 다른 구현예에서, 클라이언트는 클라이언트에 전용인 키를 사용하여 서브 카피 버전을 암호화함으로써 서브 카피 버전을 디스에이블한다. 다른 구현예에서, 클라이언트는 결합 인스턴스를 중앙 데이터베이스 또는 기관을 사용하여(예를 들면, 서브 카피 버전을 제공 또는 재생하기 전에 장치가 점검) 디스에이블되는 것으로서 등록함으로써 서브 카피 버전을 디스에이블한다. 클라이언트가 이 때 허브 네트워크로부터 단절되면, 서버는 클라이언트가 허브 네트워크에 재접속할 때 대응하는 서브 카피 버전을 디스에이블하는 요청을 생성한다.
서버가 서브 카피 버전을 디스에이블한 후에, 서버는 블록 2515에서 소스 버전을 디스에이블한다. 소스 버전을 디스에이블함으로써, 호환 장치는 소스 버전을 제공 또는 재생할 수 없게 된다. 이 서버는, 결합 인스턴스에 대한 루트 인스턴스를 디스에이블하는 것과 같이, 서버가 개별 인스턴스를 디스에이블하거나 클라이언트가 서브 카피 버전을 디스에이블하는 것과 유사하게, 소스 버전을 디스에이블한다.
서버는 블록 2520에서 결합 인스턴스로부터 개별 인스턴스를 제작한다. 서버는, 잠김 컨텐츠 데이터의 소스 버전, 라이센싱 기관 정보를 포함하는 헤더 정보, 잠김 컨텐츠 데이터를 푸는 키, 루트 라이선스 및 폐기 목록(존재하는 경우)를 복사하는 등, 결합 인스턴스를 복사한다. 서버는 내부 스토리지 또는 외부 호환 매체 상에(예를 들면, 사용자로부터의 개별 요청에 따라) 개별 인스턴스를 저장한다. 이 서버는 결합 인스턴스가 아닌 개별 인스턴스에 대하여 적절하게 루트 라이선스를 변형한다. 다르게는, 서버는 루트 라이선스를 복사하지 않고, 그 대신 루트 라이선스를 사용하여 새로운 개별 라이선스를 생성한다. 다른 구현예에서, 서버는 또한 또는 그 대신 개별 라이선스를 갱신 또는 생성하는 라이센싱 기관 정보로 표시되는 외부 라이센싱 기관을 접촉한다.
일 구현예에서, 외부 호환 매체 상의 개별 인스턴스를 생성하기 전에, 서버는 호환 매체가 새로운 개별 인스턴스를 저장할 수 있음을 확인한다. 호환 매체가 이용가능하지 않으면, 서버는 내부 스토리지 상의 개별 인스턴스를 생성할 수 있으며, 또는 서버는 승인된 레코딩 기술(예를 들면, 루트 라이선스에 의해 승인된 바와 같이 또는 허브 네트워크의 구성으로 인해)을 사용하여 비호환 복사본을 생성할 수 있다. 일 구현예에서, 승인된 레코딩 기술의 예는 4C 또는 D-VHS를 포함한다. 서버가 비호환 복사본을 생성한 경우, 비호환 복사본이 다시 결합될 수 없으며, 디스에이블된 서브 카피는 (새로운 라이선스를 구입하지 않고)인에이블될 수 없다. 따라서, 비호환 복사본을 생성하기 전에, 서버는 확인을 요청한다. 외부 호환 매체가 이용가능하지 않고 승인된 레코딩 기술이 이용가능하지 않으면, 서버는 외부 스토리지 상에 개별 인스턴스를 제작할 수 없다. 일 구현예에서, 사용자는 호환 매체의 존재에도 불구하고 (승인된 레코딩 기술이 여전히 필요함에도 불구하고)개별 인스턴스로부터 비호환 복사본의 생성을 요청할 수 있다.
다른 구현예에서, 서버는 결합 인스턴스를 개별 인스턴스에 변환한다. 이 경우, 서버는 결합 인스턴스의 복사본을 제작할 필요가 없다. 그 대신, 서버는 결합 인스턴스가 현재 개별 인스턴스임을 나타내도록 적절하게 라이센싱 기관 정보와 라이선스를 변경한다.
다른 구현예에서, 스토리지 클라이언트 장치는 또한 결합 인스턴스를 개별 인스턴스로 상태 변경할 수 있다. 이 경우, 클라이언트 장치는 서버에 통지하여 서버는 소스 버전과 모든 나머지 서브 카피 버전을 (예를 들면, 디스에이블 요청을 다른 클라이언트에 전송함으로써) 디스에이블한다. 다른 구현예에서, 스토리지 클라이언트 장치는 허브 네트워크의 모든 멤버 장치가 (스토리지 클라이언트 장치의 라이선스에 종속되는)컨텐츠의 서브 카피 버전을 디스에이블하도록 요청한다. 일 구현예에서, 클라이언트 장치가 서브 카피 버전을 저장하거나 다른 잠김 컨텐츠 데이터를 저장하면, 클라이언트 장치는 결합 인스턴스를 개별 인스턴스로 상태 변경하는 기능을 포함한다.
일 구현예에서, 서버는 라이센싱 정보에서 시간 제한 사용 규칙을 포함하는 결합 인스턴스를 해제할 수 없다. 이 경우, 서버가 결합 인스턴스를 개별 인스턴스에 시프트하는 요청을 수신하면, 이 서버는 요청을 거절하고 대응하는 서브 카피 버전을 구비한 결합 인스턴스는 인에이블 상태를 유지한다.
일 구현예에서, 서버는 이 서버가 결합 인스턴스를 디스에이블하고 개별 인스턴스를 생성하기 전에 결합 인스턴스를 해제할 수 있음을 확인한다. 서버는 결합 인스턴스의 루트 라이선스가 서버를 결합 인스턴스를 해제할 수 있음을 확인한 다. 또한, 서버는 이 서버가 서버의 폐기 목록에 있지 않음을 확인한다. 결합 인스턴스의 해제가 허용됨을 서버가 성공적으로 확인하지 않으면, 서버는 결합 인스턴스를 해제하지 않는다.
컨텐츠 라이선스 관리
서버는 이 서버의 허브 네트워크에 결합된 결합 인스턴스에 대하여 서브 카피 버전의 라이선스를 관리한다. 상술한 바와 같이, 서버가 컨텐츠 인스턴스를 허브 네트워크에 결합하는 경우, 이 서버는 루트 라이선스를 구비한 결합 인스턴스를 생성한다. 결합 인스턴스에 대한 루트 라이선스를 구비한 서버는 허브 네트워크 내의 결합 인스턴스에 대한 로컬 라이센싱 기관이며, 서버는 루트 라이선스를 사용하여 허브 네트워크 내의 결합 인스턴스에 대한 모든 서브 카피 버전의 라이센싱을 조절한다.
호환 장치는 라이선스를 사용하여, 잠김 컨텐츠 데이터를 제공, 복사 또는 이동하는 등, 컨텐츠 인스턴스의 잠김 컨텐츠 데이터를 사용한다. 일 구현예에서, 라이선스는 특정 잠김 컨텐츠 데이터에 대하여 한정된 일련의 권한을 나타낸다. 라이선스 권한은 유형(예를 들면, 개별 인스턴스, 결합 인스턴스)에 따라 잠김 컨텐츠 데이터를 제공, 복사 및 이동하는 권한을 나타낸다. 라이선스는 시간(예를 들면, 임대 시간 한도), 지형(예를 들면, 지역 코드), 사용자 아이덴티티(예를 들면, 패스워드)에 기초하는 등의 권한 조건을 나타낸다. 라이선스는 라이센싱 기관과의 상호동작을 통해(예를 들면, 임대 판매에 대한 추가 비용) 변경 또는 갱신될 수 있다. 호환 장치는 현재의 유효한 인에이블 라이선스가 없는 잠김 컨텐츠 데이 터를 제공할 수 없다. 호환 장치는 새로운 라이선스를 요청하고, 이 호환 장치가 우선 잠김 컨텐츠 데이터를 사용한 경우 잠김 컨텐츠 데이터에 대한 라이선스를 확인한다. 서버만이 허브 네트워크의 로컬 환경에 있는 서버의 허브 네트워크의 멤버 클라이언트에 라이선스를 제공한다.
다른 구현예에서, 서버는 단절되거나 및/또는 허브 네트워크의 로컬 환경 밖의 멤버 클라이언트에 중간 장치(예를 들면, 다른 클라이언트 장치)를 통해 라이선스를 제공할 수 있다. 중간 장치는 (상술한 바와 같이 멤버로서 원격 장치를 추가하는 것과 유사하게) 라이선스에 대한 "통로"로서 동작한다. 서버와 클라이언트는 접속되지 않거나 클라이언트가 서버의 로컬 환경에 있지 않게 된다. 중간 장치는 서버와 클라이언트 모두에 (예를 들면, 직접, 간접 또는 중간 장치가 서버와 클라이언트 사이에 이동하는 휴대용 장치인 경우와 같이 상이한 시점에서)접속된다. 중간 장치는 서버와 클라이언트 사이에 정보를 전달하며, 결국 (서버가 라이선스를 클라이언트에 허여하면) 라이선스를 서버로부터 클라이언트로 전달한다.
일 구현예에서, 두 장치가 모두 전송 시에 동일한 로컬 환경에 있는 경우, 클라이언트 장치는 그 라이선스를 동일한 허브 네트워크의 다른 멤버 클라이언트에 확장할 수 있다. 확장된 라이선스는 확장 클라이언트 장치가 보유한 라이선스와 동일한(또는 보다 엄격한) 라이선스이기 때문에, 확장 클라이언트는 라이선스의 권한을 확장하지 않는다. 수신 클라이언트는 수신 시에 라이선스를 리프레시한다. 확장 후에, 확장 클라이언트와 수신 클라이언트는 모두 라이선스를 갖는다.
라이선스 리프레싱
결합 인스턴스의 서브 카피 버전에 대한 라이선스는 만료 기간을 갖는다. 라이선스가 클라이언트에 의해 수신되면, 클라이언트는 이 클라이언트의 보안 클럭의 현재 시간과 라이선스의 만료 기간에 따라 만료 시점을 설정한다. 예를 들면, 15일의 만료 기간을 갖는 라이선스에 있어서, 클라이언트는 라이선스가 수신된 15일로 만료 시점을 설정할 수 있다. 만료 시점이 도달했음을 클럭이 나타낸 경우, 라이선스가 만료한다. 클라이언트는 서브 카피 버전에 대한 루트 라이선스를 저장하는 서버를 주기적으로 접촉함으로써 클라이언트에 의해 저장되는 서브 카피 버전 각각에 대하여 라이선스를 리프레시한다. 클라이언트가 리프레시되면, 이 클라이언트는 리프레시된 라이선스의 만료 기간에 따라 만료 시점을 리셋한다. 라이선스가 리프레시되지 않으면, 만료 시점은 동일하게 유지되어 만료 시점이 도달할 때까지의 만료 기간에서 나머지 시간은 계속 감소한다. 또한, 클라이언트가 이 허브 네트워크에 재접속하는 경우, 클라이언트는 허브 네트워크에 대응하는 서브 카피 버전에 대한 이의 모든 라이선스를 리프레시한다.
도 26은 라이선스를 갱신하고 리프레시하는 일 구현예의 흐름도(2600)를 나나탠다. 우선, 클라이언트는 결합 인스턴스에 대한 잠김 컨텐츠 데이터의 서브 카피 버전을 저장한다. 서브 카피 버전에 대한 라이선스는 특정 허브 네트워크에 결합되기 때문에, 허브 네트워크에 대한 서버는 클라이언트가 저장한 서브 카피 버전에 대응하여 결합 인스턴스를 관리한다. 클라이언트가 서브 카피 버전에 대한 라이선스를 수신하면, 이 클라이언트는 클라이언트 클럭의 시간과 만료 시점에 따라 라이선스의 만료 시점을 설정한다. 클라이언트의 클럭은 보안 클럭으로서 일정한 속도로 진행한다. 클라이언트가 서브 카피를 구비한 인에이블된 라이선스를 수신하지 않으면, 클라이언트는 서브 카피의 수신 시에 새로운 또는 리프레시된 라이선스를 요청한다.
클라이언트는 블록 2605에서 서버로부터 리프레시된 라이선스를 요청한다. 클라이언트는 서브 카피 버전의 결합 인스턴스가 결합되는 허브 네트워크에 대하여 서버에 리프레시 요청을 전송한다. 클라이언트는 매분 또는 매시에 한 번과 같이 서버에 리프레시 요청을 주기적으로 전송한다. 일 구현예에서, 서버 또는 사용자는 클라이언트용 주파수를 조절하여 리프레시 라이선스를 요청할 수 있다. 일 구현예에서, 클라이언트는 리프레시된 라이선스를 요청하기 전에 또는 요청할 뿐만 아니라 서버로부터 시간의 동기화를 요청한다.
서버는 블록 2610에서 요청을 수신하여 클라이언트가 리프레시된 라이선스를 수신하도록 적절하게 구성됨을 확인한다. 서버는 클라이언트가 접속되고 허브 네트워크의 로컬 환경에 있음을 (예를 들면, 클라이언트를 핑(ping)하여) 확인한다. 클라이언트가 접속되지 않거나 로컬 환경에 있지 않은 경우, 서버는 리프레시된 라이선스를 전송하지 않는다. 서버는 또한 클라이언트가 적절한 보안 소프트웨어와 데이터(예를 들면, 키)를 가짐을 확인한다. 클라이언트가 적절한 보안 소프트웨어와 데이터를 갖지 않으면, 서버는 갱신된 소프트웨어와 데이터를 구비한 보안 갱신을 클라이언트에 전송한다. 서버가 보안 갱신을 클라이언트에 전송할 수 없으면, 서버는 클라이언트에 리프레시된 라이선스를 전송하지 않는다. 서버가 리프레시 요청을 수신하지 않으면, 이 서버는 클라이언트에 리프레시된 라이선스를 전송하지 않는다.
클라이언트를 확인한 후에, 서버는 블록 2615에서 클라이언트에 대한 라이선스를 확인한다. 서버는 클라이언트가 서버의 폐기 목록 상에 있지 않음을 확인한다. 일 구현예에서, 서버와 클라이언트는 또한 서버가 새로운 라이선스를 클라이언트에 전송하기 전에 폐기 목록을 교환 및 갱신한다. 클라이언트가 서버의 폐기 목록 상에 있으면, 서버는 리프레시된 라이선스를 전송하지 않는다. 서버는 루트 라이선스를 점검함으로써 라이선스가 클라이언트에 여전히 이용가능한 지를 판정한다. 라이선스가 클라이언트에 이용가능함을 루트 라이선스가 나타내면, 서버는 클라이언트에 리프레시된 라이선스를 전송한다. 리프레시된 라이선스는 클라이언트에 저장된 것과 동일한 라이선스일 필요는 없다. 서버는 리프레시된 라이선스로서 상이한 라이선스를 전송함으로써 클라이언트 라이선스의 양태를 갱신할 수 있다. 예를 들면, 일 구현예에서, 서버는 외부 라이센싱 기관으로부터 라이선스 갱신을 주기적으로 요청하고 이에 따라 루트 라이선스를 갱신한다. 다른 구현예에서, 루트 라이선스는 시간, 비용 또는 클라이언트 상태와 같은 기준 변화에 따라 상이한 라이센싱 권한을 나타낸다. 후술한 바와 같이, 일 구현예에서, 새로운 서브 카피 버전이 생성된 경우, 새로운 서브 카피 버전은 디스에이블된 라이선스를 가지며, 새 장치에 고유한 새로운 라이선스를 필요로 한다. 새로운 서브 카피 버전에 대한 제1 리프레시 요청에 응답하여, 서버는 루트 라이선스를 사용하여 새 라이선스를 생성한다.
라이선스가 클라이언트에 이용가능하지 않음을 루트 라이선스가 나타낸 경 우, 서버는 클라이언트에 리프레시된 라이선스를 전송하지 않는다. 컨텐츠에 대한 라이선스가 환경 변화(예를 들면, 임대 기간의 만료, 또는 가입비가 미지불)로 인해 더 이상 유효하지 않음을 루트 라이선스가 나타낸 경우 라이선스는 이용가능하지 않게 된다. 일 구현예에서, 서버는 또한 리프레시 요청의 일부 또는 전부에 대하여 외부 라이센싱 기관에 점검한다. 일 구현예에서, 서버는 리프레시된 라이선스를 전송하지 않는 이유를 설명하는 메시지를 클라이언트에 전송한다.
다른 구현예에서, 서버는 리프레시된 라이선스를 전송하지 않지만, 그 대신, 라이선스가 리프레시될 수 있는지 여부, 그리고 라이선스에 대한 임의의 변화를 나타내는 메시지 또는 플래그를 전송한다.
클라이언트는 블록 2620에서 서버가 리프레시된 라이선스를 전송했는지를 판정한다. 클라이언트가 서버로부터 단절된 경우, 서버는 리프레시 요청에 응답하지 않기 때문에 클라이언트는 리프레시된 라이선스를 받지 않을 수 있다. 다른 구현예에서, 클라이언트는 우선 서버로부터 임의의 응답을 점검한다. 다른 구현예에서, 클라이언트는 이 클라이언트가 허브 네트워크로부터 단절되면 리프레시 요청을 전송하지 않고, 리프레시된 라이선스가 수신되지 않은 것처럼 진행한다. 서버가 이용가능하지 않거나 디스에이블되면, 이 서버는 리프레시된 라이선스를 전송할 수 없다. 상술한 바와 같이, 서버가 클라이언트 또는 라이선스를 성공적으로 확인하지 않으면, 클라이언트는 리프레시된 라이선스를 수신하도록 허용되지 않으며, 서버는 리프레시된 라이선스를 전송하지 않는다.
클라이언트가 리프레시된 라이선스를 수신하면, 클라이언트는 블록 2625에서 라이선스를 리프레시한다. 클라이언트가 저장된 라이선스를 리프레시된 라이선스로 대체한다. 만료 시점은 만료 기간의 최대값으로 다시 리셋된다.
클라이언트가 리프레시된 라이선스를 수신하지 않으면, 이 클라이언트는 블록 2630에서 라이선스가 만료되었는지를 판정한다. 리프레시된 라이선스를 수신하지 않고 만료 기간이 지난 경우 라이선스는 만료된다. 클라이언트의 클럭이 만료 시점에 도달했음을 나타낸 경우 라이선스는 만료된다. 다른 구현예에서, 타이머를 감소시키는 등과 같이, 만료 기간이 언제 만료되는지를 판정하기 위한 상이한 메커니즘이 사용될 수 있다.
라이선스가 만료되면, 클라이언트는 블록 2635에서 라이선스를 디스에이블한다. 클라이언트가 라이선스를 디스에이블하기 때문에 클라이언트와 다른 호환 장치는 서브 카피 버전을 제공할 수 없다. 일 구현예에서, 이에 대신하여 또는 이와 함께 클라이언트는 서브 카피 버전을 암호화하거나 서브 카피 버전을 삭제하는 것과 같이, 서브 카피 버전을 다른 방식으로 디스에이블한다.
리프레시된 라이선스를 요청하는 다음 기간이 발생한 경우, 클라이언트는 블록 2605로 복귀한다. 일 구현예에서, 클라이언트는 (예를 들면, 만료 기간이 리프레시된 라이선스에 대한 요청 사이에 있는 경우)라이선스가 리프레시된 라이선스를 요청하는 것과는 독립적으로 만료됨을 판정할 수 있다.
일 구현예에서, 클라이언트가 서버로부터 리프레시된 라이선스를 수신하지 않으면, 클라이언트는 외부 라이선스 기관으로부터 리프레시되거나 새로운 라이선스를 요청한다. 상술한 바와 같이, 서버는 서브 카피 버전의 헤더 정보 내에서 라 이센싱 기관 정보에 의해 한정되는 로컬 라이센싱 기관이다. 라이센싱 기관 정보는 또한 네트워크(예를 들면, 인터넷)를 통해 클라이언트에 접속된 중앙 서버와 같은 외부 라이센싱 기관을 나타낼 수 있다. 일 구현예에서, 클라이언트는 서버가 이용가능하지 않거나 클라이언트가 서버의 허브 네트워크의 멤버가 아니어서 새로운 라이선스를 요구하는 경우 외부 기관으로부터 라이선스를 요청한다. 다른 구현예에서, 라이센싱 기관 정보는 기관의 계층(예를 들면, 로컬, 지역, 국가 및 절대)을 나타낸다.
도 27 내지 도 29는 허브 네트워크로부터 장치의 단절과 만료 기간의 동작의 일 예를 나타낸다.
도 27에서, 두 개의 미디어 네트워크 환경(2700 및 2750)이 상이한 로컬 환경에 있다. 로컬 환경은 서버 위치에 대하여 한정된다(근접한 두 개의 서버는 거의 동일 영역을 차지하는 로컬 환경을 한정하는 것으로서 처리된다). 점선은 로컬 환경들 간의 차단을 나타낸다. 제1 미디어 네트워크 환경(2700)은 4개의 장치, 즉, (컨텐츠의 제공을 위해) 단말 장치(2710)에 접속된 서버/클라이언트 장치(2705), 서버 장치(2715), 및 클라이언트 장치(2720)를 포함한다. 서버/클라이언트 장치(2705)는 "HN1*" 라벨로 표시되는, 허브 네트워크(HN1)에 대한 서버이다. 서버/클라이언트 장치(2705)와 클라이언트 장치(2720)는, "HN1" 라벨로 표시되는 허브 네트워크(HN1)에서 클라이언트이다. 서버 장치(2715)는 "HN2*" 라벨로 표시되는, 허브 네트워크(HN2)에 대한 서버이다. 서버/클라이언트 장치(2705)와 클라이언트 장치(2720)는 "HN2" 라벨로 표시되는, 허브 네트워크(HN2)에서의 클라이언 트이다.
두 개의 컨텐츠 항목 A와 B가 허브 네트워크(HN1)에 결합된다. 서버/클라이언트 장치(2705)는 소스 버전을 저장하고, "A"와 "B" 라벨로 표시되는, 두 개의 컨텐츠 항목 A 및 B 각각에 대한 루트 책임을 관리한다. 클라이언트 장치(2720)는 "a"와 "b" 라벨로 표시되는, 두 개의 컨텐츠 항목 A와 B 각각에 대한 서브 카피 버전을 저장한다.
하나의 컨텐츠 항목 X은 허브 네트워크(HN2)에 결합된다. 서버 장치(2715)는 소스 버전을 저장하여 "X" 라벨로 표시되는 컨텐츠 항목 X에 대한 루트 책임을 관리한다. 서버/클라이언트 장치(2705)와 클라이언트 장치(2720)는 각각 "x" 라벨로 표시되는 컨텐츠 항목 X에 대한 서브 카피 버전을 저장한다. 또한, 서버 장치(2715)는 "Y" 라벨로 표시되는 컨텐츠 항목 Y의 개별 버전을 저장한다.
제2 미디어 네트워크 환경(2750)은 하나의 장치, 즉, 서버/클라이언트 장치(2755)를 포함한다. 서버/클라이언트 장치(2755)는 "HN3*" 라벨로 표시되는 허브 네트워크(HN3)에 대한 서버이다. 서버/클라이언트 장치(2755)는 "HN3" 라벨로 표시되는 허브 네트워크(HN3)에 대한 클라이언트이다.
하나의 컨텐츠 항목 M은 허브 네트워크(HN3)에 결합된다. 서버/클라이언트 장치(2755)는 소스 버전을 저장하고, "M" 라벨로 표시되는 컨텐츠 항목 M에 대한 루트 책임을 관리한다.
도 28에서, 서버/클라이언트 장치(2705)는 제1 미디어 네트워크 환경(2750)으로 이동하여 "HN3" 라벨로 표시되는 클라이언트로서 허브 네트워크(HN3)의 멤버 가 된다. 서버/클라이언트 장치(2705)는 "HN1"과 "HN2" 라벨로 표시되는 허브 네트워크 HN1과 HN2 둘 모두에서 여전히 클라이언트이다. 서버/클라이언트 장치(2705)는 "m" 라벨로 표시되는 컨텐츠 항목 M의 서브 카피 버전을 수신한다. 서버/클라이언트 장치(2755)는 "HN1" 라벨로 표시되는 클라이언트로서 허브 네트워크(HN1)에 참여한다. 서버/클라이언트 장치(2755)는 "a" 및 "b" 라벨로 표시되는 컨텐츠 항목 A 및 B 각각에 대한 서브 카피 버전을 수신한다.
제2 미디어 네트워크 환경(2750)으로 이동함으로써, 서버/클라이언트(2705)는 제2 미디어 네트워크 환경(2750)으로의 허브 네트워크(HN1)에 대한 로컬 환경을 취한다. 그 결과, 클라이언트 장치(2720)는 허브 네트워크(HN1)의 로컬 환경이 더 이상 아니기 때문에, 클라이언트 장치(2720)는 허브 네트워크(HN1)로부터 단절된다. 단절된 상태에서, 클라이언트 장치(2720)는 컨텐츠 항목 A 및 B의 서브 카피 버전 a 및 b에 대한 라이선스를 리프레시할 수 없기 때문에, "a-15" 및 "b-15" 라벨로 표시되는 서브 카피 버전 a 및 b에 대한 만료 시점은 리셋될 수 없다.
또한, 서버/클라이언트 장치(2705)가 미디어 네트워크 환경(2700)을 떠난 경우, 서버/클라이언트 장치(2705)가 허브 네트워크(HN2)의 로컬 환경을 떠나기 때문에 서버/클라이언트 장치(2705)는 허브 네트워크(HN2)로부터 단절된다. 단절된 상태에서, 서버/클라이언트 장치(2705)는 컨텐츠 항목 X의 서브 카피 버전 x에 대한 라이선스를 리프레시할 수 없기 때문에, "x-15" 라벨로 표시되는 서브 카피 버전 x에 대한 만료 시점이 리세되지 않을 수 있다. 그러나, 서버/클라이언트 장 치(2705)는 허브 네트워크(HN3)의 멤버가 되며, 허브 네트워크(HN3)는 허브 네트워크(HN2)와는 상이한 로컬 환경에 있다. 상술한 바와 같이, 일 구현예에서, 스패닝 장치는 상이한 로컬 환경에 있는 두 개의 허브 네트워크의 멤버인 경우, 클라이언트는 장치가 최근에 접속한 허브 네트워크, 이 경우, 허브 네트워크(HN3)(및 서버/클라이언트 장치가 허브 네트워크(HN1)에 대한 서버이기 때문에 허브 네트워크(HN1))로부터 서브 카피 버전만을 제공할 수 있다. 따라서,
Figure 112009072898861-pat00001
라벨(말소선)로 표시되는 컨텐츠 항목 X에 대한 서브 카피 버전 x은 서버/클라이언트 장치(2705)가 허브 네트워크(HN2)에 접속될 때까지 일시적으로 디스에이블된다. 다른 구현예에서, 스패닝 장치는 원격 허브 네트워크로부터 서브 카피 버전을 일시적으로 디스에이블하지 않으며 상술한 바와 같이 리프레시되지 않은 서브 카피 버전에 대한 만료 기간을 계속 모니터한다.
도 29에서, 서버/클라이언트 장치(2705)는 제1 미디어 네트워크 환경(2700)에 복귀되어 서버 장치(2715)와 클라이언트 장치(272)에 접속되어, 허브 네트워크(HN2)에 재접속된다. 그 결과, 클라이언트/서버 장치(2705)는 서브 카피 버전 x에 대한 라이선스를 리프레시할 수 있고, 클라이언트 장치(2720)는 첨자 제거로 표시되는 서브 카피 버전 a 및 b에 대한 라이선스를 리프레시할 수 있다.
서버/클라이언트 장치(2705)가 제2 미디어 네트워크 환경(2750)을 떠남에 따라, 서버/클라이언트 장치(2705)는 허브 네트워크(HN3)로부터 단절되고 서버/클라이언트 장치(2755)는 허브 네트워크(HN1)으로부터 단절된다. 그 결과, 서버/클라 이언트 장치(2705)는 서브 카피 버전 m에 대한 라이선스를 리프레시할 수 없기 때문에,
Figure 112009072898861-pat00002
라벨로 표시된 바와 같은 만료 시점은 리셋되지 않고 서브 카피 버전 m은 일시적으로 디스에이블된다. 서버/클라이언트 장치(2755)는 서브 카피 버전 a 및 b에 대한 라이선스를 리프레시할 수 없기 때문에, "a-15"와 "b-15" 라벨로 표시되는 만료 시점이 리셋되지 않는다.
컨텐츠 프리젠테이션
클라이언트 장치는 컨텐츠를 제공하거나 재생한다. 몇몇 클라이언트 장치는 통합 프리젠테이션 컴포넌트를 포함하며 직접 컨텐츠 데이터를 제공한다. 몇몇 클라이언트는 단말 장치와 같은 접속 장치를 통해 컨텐츠 데이터를 제공한다. 몇몇 클라이언트는 하나 또는 두 방식으로 컨텐츠 데이터를 제공한다. 스토리지 클라이언트 장치는 클라이언트 장치 상의 서브 카피로 또는 서버로부터 스트리밍되는 컨텐츠 데이터로 저장되는 컨텐츠 데이터를 제공한다. 비 스토리지 클라이언트 장치는 서버로부터 스트리밍된 컨텐츠 데이터를 제공한다. 도 17을 다시 참조하면, 서버 장치(1715)로부터 비 스토리지 클라이언트(1725)로의 점선은 서버 장치(1715)로부터 비 스토리지 클라이언트(1725)로의 스트리밍 컨텐츠 데이터를 나타낸다. 일 구현예에서, 제공된 컨텐츠 데이터는 비인가된 복사를 제어하는 출력 제어(예를 들면, 출력 데이터의 복사를 방지 또는 금지하는 데이터 또는 처리)를 포함한다. 몇몇 서버는 서버와 클라이언트 기능을 포함하며 이러한 종류의 서버는 클라이언트와 유사한 컨텐츠를 제공할 수 있다.
도 30은 클라이언트 장치 상의 서브 카피 버전에 저장된 컨텐츠 데이터를 제공하는 클라이언트 장치의 일 구현예의 흐름도(3000)를 나타낸다. 우선, 클라이언트 장치는 스토리지 클라이언트 장치이며, 제공될 잠김 컨텐츠 데이터의 서브 카피 버전을 저장한다.
클라이언트는 블록 3005에서 컨텐츠를 제공하는 요청을 수신한다. 이 요청은 사용자로부터의 것으로서 컨텐츠 항목을 나타낸다. 다른 구현예에서, 이 요청은 다른 장치로부터의 것이거나 자동화된다.
클라이언트는 블록 3010에서 라이선스가 서브 카피 버전을 제공할 수 있음을 확인한다. 라이선스가 리프레시됨에 따라 변경 또는 갱신할 수 있기 때문에, 이 클라이언트는 서브 카피 버전을 제공하기 전에 라이선스를 점검한다. 라이선스가 현재의 것이 아니고, 유효하지 않으며, 또는 디스에이블되면, 클라이언트는 서브 카피 버전을 제공하지 않는다. 일 구현예에서, 클라이언트는 현재, 유효한 인에이블된 라이선스를 갖지 않으면, 클라이언트는 서버로부터 새로운 라이선스를 요청하며, 이 서버는 대응하는 결합 인스턴스의 루트 라이선스를 가리킨다. 서버가 이 요청을 거절하면(예를 들면, 클라이언트가 새로운 라이선스에 권한이 없기 때문에), 클라이언트는 서브 카피 버전을 제공하지 않는다.
또한, 클라이언트가 이 클라이언트에 이용가능한 임의의 폐기 목록에 있지 않음을 블록 3015에서 클라이언트가 확인한다. 클라이언트가 폐기 목록에 있으면, 클라이언트는 서브 카피 버전을 제공하지 않는다.
라이선스와 폐기 목록을 성공적으로 확인한 후에, 클라이언트는 블록 3020에 서 서브 카피 버전의 컨텐츠 데이터를 제공한다. 클라이언트가 잠김 컨텐츠 데이터를 복호화하여 출력 데이터를 생성하고 이 출력 데이터를 통합 프리젠테이션 컴포넌트, 외부 프리젠테이션 컴포넌트 또는 단말 장치에 출력함으로써 서브 카피 버전의 컨텐츠를 제공한다.
호환 장치는 유사한 방식으로 개별 인스턴스로부터 컨텐츠 데이터를 제공한다.
상술한 바와 같이, 클라이언트 기능을 포함한 서버는 유사한 방식으로 컨텐츠 데이터를 제공한다. 다른 구현예에서, 서버 장치와 클라이언트 장치는 동일 물리 장치 상에 함께 존재하며, 따라서, 서버는 컨텐츠를 제공하는 상주 클라이언트에 의존한다.
도 31은 서버로부터 클라이언트로 컨텐츠 데이터를 스트리밍하는 일 구현예의 흐름도(300)를 나타낸다. 우선, 서버는 컨텐츠의 결합 인스턴스를 생성하고 클라이언트 장치는 서버에 접속된다.
클라이언트는 블록 3105에서 컨텐츠를 제공하는 요청을 수신한다. 이 요청은 사용자로부터의 것으로서 컨텐츠 항목을 나타낸다. 다른 구현예에서, 이 요청은 다른 장치로부터의 것이거나 자동화된다. 클라이언트는 제공 요청으로 나타낸 결합 인스턴스를 관리하는 서버에 스트리밍 요청을 전송한다. 다른 구현예에서, 서버는 제공 요청을 수신하고, 이 요청은 또한 클라이언트 장치가 컨텐츠를 제공하도록 지시한다.
서버는 블록 3110에서 루트 라이선스가 지시된 클라이언트에 스트리밍함으로 써 컨텐츠 데이터를 제공할 수 있음을 확인한다. 라이선스가 리프레시됨에 따라 이 라이선스는 변경 또는 갱신될 수 있기 때문에, 서버는 이 결합 인스턴스의 소스 버전으로부터 컨텐츠 데이터를 스트리밍하기 전에 라이선스를 점검한다. 라이선스가 현재의 것이 아니고, 유효하지 않으며, 또는 디스에이블된 경우, 서버는 컨텐츠 데이터를 스트리밍하지 않는다. 이 서버는 허브 네트워크의 멤버가 아닌 클라이언트에 컨텐츠 데이터를 스트리밍할 수 없다.
또한, 서버는 블록 3115에서 클라이언트가 이 서버에 이용가능한 폐기 목록에 있지 않음을 확인한다. 클라이언트가 이용가능한 폐기 목록에 있는 경우, 서버는 컨텐츠 데이터를 스트리밍하지 않는다.
라이선스와 폐기 목록을 성공적으로 확인한 후에, 서버는 블록 3120에서 이 결합 인스턴스의 소스 버전으로부터 클라이언트로 컨텐츠 데이터를 스트리밍한다. 일 구현예에서, 서버는 소스 버전의 잠김 컨텐츠 데이터를 클라이언트에 스트리밍한다.
클라이언트가 스트리밍 컨텐츠 데이터를 수신함에 따라, 클라이언트는 블록 3125에서 컨텐츠 데이터를 제공한다. 클라이언트는 (컨텐츠 데이터를 제공하는 과정에서 일시적인 경우 이외에는)스트리밍 컨텐츠 데이터를 저장하지 않는다. 클라이언트는 컨텐츠 데이터를 통합 프리젠테이션 컴포넌트, 외부 프리젠테이션 컴포넌트 또는 단말 장치에 출력함으로써 컨텐츠 데이터를 제공한다.
다른 구현예에서, 서버는 (예를 들면, 스트리밍 데이터를 위한 암호화 기술을 사용하여) 잠김 컨텐츠 데이터를 암호화하고 암호화된 잠김 컨텐츠 데이터를 클 라이언트에 스트리밍한다. 클라이언트는 암호화된 잠김 컨텐츠 데이터를 복호화하여 잠김 컨텐츠 데이터를 획득하고 잠김 컨텐츠 데이터를 복호화하여 출력 데이터를 획득한다. 클라이언트는 출력 데이터를 제공한다. 다른 구현예에서, 서버와 클라이언트 간의 암호화 및 복호화의 상이한 조합이 사용될 수 있다. 예를 들면, 이 서버는 잠김 컨텐츠 데이터를 복호화하여 출력 데이터를 획득한 후 출력 데이터를 암호화할 수 있다. 그 후, 서버는 암호화된 출력 데이터를 클라이언트에 스트리밍하고 클라이언트는 암호화된 출력 데이터를 복호화한다.
일 구현예에서, 단말 장치가 수신된 출력 데이터를 저장하지 않고 (일시적인 경우 이외) 단말 장치에 대한 접속 및 전송이 상당히 보안되기 때문에 호환 장치는 항상 데이터를 접속된 단말 장치에 출력할 수 있다. 일 구현예에서, 호환 장치가 데이터를 단말 장치에 출력하는 경우, 이 호환 장치는 호환 장치로부터 데이터를 수신하는 모든 단말 장치에 동일한 데이터를 전송한다.
일 구현예에서, 호환 장치는 다른 호환 장치에 개별 컨텐츠를 스트리밍할 수 있지만, 수신 장치는 (프리젠테이션 과정에서 일시적인 경우 이외에는) 스트리밍된 컨텐츠 데이터 중 어느 것도 저장할 수 없다.
클라이언트 장치는 서브 카피 버전에 대한 컨텐츠 데이터를 스트리밍할 수 없다. 다른 구현예에서, 스토리지 클라이언트 장치는 서브 카피 버전에 대한 컨텐츠 데이터를 다른 멤버 클라이언트에 스트리밍할 수 있다.
컨텐츠 복사 및 이동
호환 장치는 소스 버전으로부터의 서브 카피 버전 또는 서브 카피 버전의 복 사본을 생성할 수 있다. 호환 장치는 허브 네트워크의 다른 멤버의 서브 카피 버전을 자유롭게 제공할 수 있다. 호환 장치는 결합 인스턴스가 결합된 허브 네트워크의 멤버가 아닌 호환 장치에 서브 카피 버전을 제공할 수 있지만, 비 멤버는 서브 카피 버전의 컨텐츠 날짜를 제공할 수 있기 전에 새로운 유효 라이선스를 획득할 필요가 있을 수 있다. 호환 장치는 서브 카피 버전을 비호환 장치에 제공할 수 있지만, 비호환 장치는 서브 카피 버전의 잠김 컨텐츠 데이터를 제공할 수 없다. 비호환 장치는 서브 카피 버전을 호환 장치에 이동할 수 있으며, 호환 장치는 새로운 유효 라이선스를 획득한 후에 서브 카피 버전을 제공할 수 있다.
호환 장치는 (허브 네트워크에서 개별에서 결합으로 인스턴스를 시프팅하는 프로세스 이외의 경우)개별 인스턴스를 복사하지 않는다. 유사하게, 호환 장치는 개별 인스턴스의 백업 복사본을 생성하지 않는다. 호환 장치는 (서브 카피 버전과 유사하게)개별 인스턴스의 잠김 컨텐츠 데이터의 개별 버전의 복사본을 제작할 수 있고 이 복사본을 다른 장치에 제공할 수 있지만, 수신 장치는 잠김 컨텐츠 데이터의 수신된 복사본을 제공할 수 있기 전에 새로운 유효 라이선스를 획득할 필요가 있다.
서버는 소스 버전과 루트 책임을 다른 서버에 직접 이동할 수 없다. 일 구현예에서, 하나의 서버로부터 다른 서버로 루트 책임을 이동하기 위해서, 서버는 결합 인스턴스로부터 개별 인스턴스로 전환하고, 개별 인스턴스로부터 다른 서버로 이동하며, 제2 서버는 개별 인스턴스를 다시 결합 인스턴스로 전환하여 새로운 루트를 설정한다. 스패닝 장치는 서버가 이 스패닝 장치를 통해 다른 호환 서버에 개별 인스턴스를 전송할 수 있게 함으로써 하나의 허브 네트워크에서 다른 것으로 개별 인스턴스의 이동을 용이하게 할 수 있다. 다른 구현예에서, 서버는 공통 클라이언트 장치를 공유하는 다른 호환 서버로 루트 책임을 직접 이동한다.
서버는 (클라이언트가 또한 서버이지 않으면) 클라이언트에 소스 버전 또는 루트 책임을 이동할 수 없다.
호환 장치는 호환 매체, 보안 전송, 또는 호환 레코딩 기술을 사용하여 개별 인스턴스를 이동할 수 있다. 결합 인스턴스로부터 개별 인스턴스를 생성하는 것을 참조하여 상술한 바와 같이, 일 구현예에서, 개별 인스턴스를 외부 매체에 이동하기 전에, 호환 장치는 외부 매체가 호환 매체임을 확인한다. 호환 매체가 이용가능하지 않으면, 호환 장치는 승인된 레코딩 기술을 사용하여 비호환 매체 상에 비호환 복사본을 생성할 수 있다. 호환 장치가 비호환 복사본을 생성하면, 비호환 복사본은 다시 결합될 수 없다. 따라서, 호환 장치는 비호환 복사본을 생성하기 전에 확인을 요청한다. 외부 호환 매체가 이용가능하지 않고 승인된 레코딩 기술이 이용가능하지 않으면, 호환 장치는 외부 스토리지에 개별 인스턴스를 이동할 수 없다.
호환 장치는 보안 전송을 사용하여 다른 호환 장치에 서브 카피 버전을 전송한다. 다른 구현예에서, 호환 장치는 비호환 접속으로도 서브 카피 버전을 (라이선스 또는 키없이)전송할 수 있다. 호환 장치는 또한 호환 물리 매체를 사용하여 서브 카피 버전을 여기서 설명한 제한에 종속되는 다른 호환 장치에 전송할 수 있다.
도 32는 멤버 클라이언트에 대한 잠김 컨텐츠 데이터의 서브 카피 버전을 생성하는 일 구현예의 흐름도(3200)를 나타낸다. 우선, 서버는 컨텐츠의 결합 인스턴스를 관리하여, 결합 인스턴스에 대한 루트 라이선스와 소스 버전을 저장한다. 상술한 바와 같이, 서버는 허브 네트워크에 대한 서브 카피 버전을 제작하는 소스 버전을 사용한다.
서버는 블록 3205에서 서브 카피 버전을 생성하라는 요청을 수신한다. 이 요청은 사용자로부터의 것으로서 컨텐츠의 항목과 서브 카피 버전을 수신하는 클라이언트를 나타낸다. 다르게는, 복사 요청은 새로운 서브 카피 버전에 대한 수신지를 나타내지 않는다(예를 들면, 복사 요청은 수신지 클라이언트에 새로운 서브 카피 버전을 이동하는 요청이 뒤따른다). 다른 구현예에서, 이 요청은 다른 장치로부터의 것이거나 자동화된다. 다른 구현예에서, 클라이언트는 복사 요청을 수신하고 이 요청을 서버에 전달한다. 일 구현예에서, 복사 요청은 목적 해상도를 나타낸다. 목적 해상도가 소스 버전(또는 복사되는 서브 카피 버전)의 해상도와 상이한 경우, 허브 네트워크에서 가장 높은 해상도의 복사본으로서 소스 버전(또는 복사되는 서브 카피 버전)을 사용하여 변환이 수행될 수 있다. 다른 구현예에서, 복사 요청은 목적 포맷을 나타낸다. 서버는 복사될 서브 카피 버전 또는 소스 버전을 사용하여 복사 프로세스의 일부로서 임의의 트랜스코딩(transcoding)을 수행한다. 다르게는, 목적 해상도와 포맷이 전환되어 프리젠테이션을 위해 클라이언트에 위해 요구시에 트랜스코딩될 수 있다.
서버는 블록 3210에서 라이선스가 서브 카피 버전을 지시된 클라이언트에 제 공할 수 있음을 확인한다. 라이선스가 리프레시됨에 따라 이 라이선스는 변경 또는 갱신될 수 있기 때문에, 서버는 서브 카피 버전을 생성하기 전에 라이선스를 점검한다. 라이선스가 유효하지 않거나 디스에이블되면, 서버는 서브 카피 버전을 생성할 수 없다. 후술하는 바와 같이, 다른 구현예에서, 서버는 서브 카피 버전을 제작하기 전에 라이선스를 확인하지 않는다. 그 대신, 서버는 서브 카피 버전에 대한 새로운 라이선스를 생성할 때 라이선스를 점검한다.
또한, 서버는 블록 3215에서 클라이언트가 서버의 폐기 목록에 있지 않음을 확인한다. 클라이언트가 폐기 목록에 있으면, 서버는 서브 카피 버전을 생성하지 않는다.
라이선스와 폐기 목록을 성공적으로 확인한 후에, 서버는 블록 3220에서 서브 카피 버전을 생성한다. 서버는 소스 버전으로부터 새로운 서브 카피 버전을 생성하여, 서버 상에 새로운 서브 카피 버전을 저장한다. 도 23을 참조하면, 서버는 소스 버전(2310)으로부터 서브 카피 버전(2355)을 생성한다. 서버는 또한 라이센싱 기관 정보를 포함하는 헤더 정보를 복사한다. 서버는 루트 라이선스, 잠김 컨텐츠 데이터를 푸는 키, 또는 소스 버전의 폐기 목록을 복사하지 않는다. 서버는 루트 라이선스에 따라 서브 카피 버전에 대한 새로운 서브 카피 라이선스를 생성한다. 그러나, 새로운 서브 카피 버전에 대한 라이선스는 초기에 디스에이블된다. 라이선스를 인에이블하고 새로운 라이선스를 수신하기 위해서, 수신 클라이언트는 서버와 접촉하여 라이선스를 리프레시하고 새로운 서브 카피 버전에 특정한 새로운 라이선스를 수신할 수 있다. 일 구현예에서, 서버는 인에이블된 라이선스에 새로 운 서브 카피 버전을 제공한다. 서버는 이 서버가 클라이언트에 라이선스를 제공할 때 서버의 폐기 목록에 따라 서브 카피 버전을 푸는 키와 페기 목록을 제공한다.
새로운 서브 카피 버전을 생성한 후에, 서버는 블록 3225에서 수신지 클라이언트에 새로운 서브 카피 버전을 이동한다. 일 구현예에서, 새로운 서브 카피 버전을 이동하기 위해서, 서버는 새로운 서브 카피 버전의 다른 복사본과 임의의 첨부 데이터(예를 들면, 라이선스)를 클라이언트에 전송하고 서버 상에 제1 신규 서브 카피 버전을 삭제한다. 클라이언트는 새로운 서브 카피 버전을 수신하여 삭제한다. 다른 구현예에서, 서버는 새로운 서브 카피 버전을 클라이언트 상에 직접 생성하고, 따라서 블록 3225를 생략한다. 다른 구현예에서, 서버는 클라이언트로부터 새로운 라이선스에 대한 요청에 응답하여 서브 카피 라이선스를 추후 생성하여 제공한다.
다른 구현예에서, 루트 라이선스는 한정된 개수의 서브 카피 버전이 제작될 수 있게 한다. 이 경우, 서버는 제작된 서브 카피 버전의 개수의 카운트를 유지하여(예를 들면, 서브 카피 라이선스가 루트 라이선스로부터 제작되는 횟수를 카운팅하여), 루트 라이선스에서 복사본 카운트를 저장한다. 한도에 도달하면, 서버는 결합 인스턴스의 소스 버전으로부터 다른 서브 카피 버전을 제작할 수 없다. 복사 카운트는 서버가 삭제 또는 디스에이블이 알려지면 허브 네트워크에서 서브 카피 버전을 삭제 또는 디스에이블하여 감소될 수 있다.
다른 구현예에서, 클라이언트는 특정 개수의 라이선스만이 가능하게 된다. 클라이언트가 새로운 서브 카피 버전과 서브 카피 라이선스를 (복사 또는 이동에 의해) 수신하는 경우, 클라이언트는 라이선스에 대한 클라이언트의 한도가 초과되었는지를 판정한다. 그러한 경우, 클라이언트는 몇몇 다른 라이선스가 디스에이블될 때까지 새로운 서브 카피 버전에 대한 라이선스를 디스에이블하여 다시 라이선스 개수를 이 한도 이하로 되도록 한다.
일 구현예에서, 스토리지 클라이언트 장치는 또한 클라이언트 사에 저장된 서브 카피 버전의 복사본을 제작할 수 있다. 이 경우, 스토리지 클라이언트 장치는 도 32를 참조하여 서버에 대하여 상술한 바와 같이 서브 카피 버전을 제작한다.
일 구현예에서, 서브 카피 버전을 이동하는 요청은 유사한 방식으로 처리된다. 서버 또는 클라이언트는 이 요청을 수신하여 라이선스가 서브 카피 버전이 지시된 클라이언트에 이동될 수 있음을 확인한다. 지시된 클라이언트가 서버 또는 클라이언트의 폐기 목록 상에 있지 않음을 서버 또는 클라이언트가 확인한다. 확인이 성공적이면, 서버 또는 클라이언트는 서브 카피 버전과 임의의 대응 데이터(예를 들면, 라이선스)를 지시된 클라이언트에 이동한다.
다른 구현예에서, 클라이언트는 확인 없이 서브 카피 버전을 이동 및 복사할 수 있지만, 라이선스는 이동 또는 복사할 수 없다. 유사하게, 서버는 루트 라이선스와 폐기 목록을 우선 확인하지 않고 서브 카피 버전을 생성 및 분배할 수 있다. 이 경우, 서버와 클라이언트는 제한 없이 호환 및 비호환 장치에 서브 카피 버전을 분배할 수 있다. 비호한 장치는 잠김 컨텐츠 데이터를 제공할 수 없지만 호환 장치에는 서브 카피 버전을 전달할 수 있다. 수신 호환 장치는 서브 카피 버전의 잠 김 컨텐츠 데이터를 제공할 수 있기 전에 (예를 들면, 서브 카피 버전의 헤더에서 라이센싱 기관 정보로 나타낸 바와 같이)라이선스를 획득할 수 있다. 다른 구현예에서, 클라이언트는 라이선스의 복사본을 제작하여 단절된 멤버 클라이언트에 라이선스를 제공할 수 있다.
서버 또는 클라이언트가 허브 네트워크의 멤버가 아닌 호환 장치에 서브 카피 버전을 제공하는 경우, 서버 또는 클라이언트는 서브 카피 버전을 구비한 유효 라이선스를 제공하지 않는다. 수신처는 추후 서브 카피 버전에 저장된 라이센싱 기관 정보를 사용하여 유효 라이선스를 획득한다. 이러한 방식으로, 호환 장치는 서브 카피 버전을 다른 허브 네트워크에 분배할 수 있다.
다른 구현예에서, 로컬 환경은 한정된 지형 포인트에서 중심에서 100미터 반경과 같은 절대치로서 한정된다. 예를 들면, 매체는 특정 빌딩에 한정된 기밀 문서와 같은 특정 물리적 위치에서 사용되는 것으로 제한될 수 있다. 상술한 바와 같이, 장치가 로컬 환경을 떠나면, 이 장치는 (장치가 여전히 멤버일 수 있더라도)허브 네트워크로부터 단절된다. 이 경우, 서버는 그 자신의 허브 네트워크로부터 단절될 수 있으며, 따라서 이 서버 등의 서버가 단절되면서 장치 중 어느 것도 허브 네트워크에 대한 라이선스를 리프레시할 수 없다. 다른 구현예에서, 허브 네트워크는 로컬 환경에 의해 제한되지 않는다. 이 경우, 장치가 서버와 통신할 수 없는 경우(예를 들면, 물리 또는 네트워크 접속이 단절), 장치는 라이선스를 리프레시할 수 없다.
본 발명의 다양한 구현예는 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들 기술의 조합으로 구현된다. 대부분의 구현예는 프로그래머블 컴퓨터에 의해 실해오디오는 하나 이상의 컴퓨터 프로그램을 포함한다. 예를 들면, 도 17을 참조하면, 일 구현예에서, 서버/클라이언트 장치(1705), 서버 장치(1715), 스토리지 클라이언트 장치(1720), 및 비 스토리지 클라이언트 장치(1725) 각각은 상술한 클라이언트 및 서버 동작을 구현한 소프트웨어를 실행하는 하나 이상의 컴퓨터를 포함한다. 통상, 각 컴퓨터는 하나 이상의 프로세서, 하나 이상의 데이터 스토리지 컴포넌트(예를 들면, 하드 디스크 드라이브와 플로피 디스크 드라이브, CD-ROM 드라이브, 및 자기 테이프 드라이브와 같은 휘발성 또는 비휘발성 메모리 모듈 및 영구 광 스토리지 장치 및 자기 스토리지 장치), 하나 이상의 입력 장치(예를 들면, 마우스와 키보드), 및 하나 이상의 출력 장치(예를 들면, 디스플레이 콘솔과 프린터)를 포함한다. 몇몇 구현예에서, 컴퓨터는 소비자 전자 장비내에 포함된다.
컴퓨터 프로그램은 영구 저장 매체에 통상 저장된 후 런타임 시에 메모리에 복사되는 실행가능 코드를 포함한다. 프로세서는 소정 순서로 프로그램 명령을 메모리로부터 검색하여 코드를 실행한다. 프로그램 코드를 실행한 경우, 컴퓨터는 입력 및/또는 스토리지 장치로부터 데이터를 수신하고, 데이터에 대한 동작을 수행한 후, 결과적인 데이터를 출력 및/또는 스토리지 장치에 전달한다.
본 발명의 다양한 구현예가 설명되었다. 그러나, 당업자는 추가 구현예가 본 발명의 범위 내에서 가능함을 이해할 것이다. 몇몇 구현예는 상술한 양태의 거의 모두 및/또는 변형을 포함한다. 예를 들면, 상기 설명은 오디오 및/또는 비디오 데이터로서 나타낸 컨텐츠의 복사본을 사용한 구현예에 초점을 맞추었지만, 이 복사본은 수치 데이터 또는 실행가능 소프트웨어 코드와 같은 다른 유형의 데이터일 수도 있다.
따라서, 본 발명은 상술한 구현예에만 한정되는 것은 아니다.
도 1 내지 도 16은 미디어 네트워크 환경의 일 구현예의 구성 및 동작의 일 예를 나타내는 도면.
도 17은 미디어 네트워크 환경의 일 구현예를 나타내는 도면.
도 18은 멤버 장치로서 허브네트워크에 장치를 추가하는 일 구현예의 흐름도.
도 19는 멤버 장치로서 허브 네트워크로부터 장치를 제거하는 일 구현예의 흐름도.
도 20은 허브 네트워크로부터 멤버 장치를 단절하는 일 구현예의 흐름도.
도 21은 허브 네트워크에 멤버 장치를 재접속하는 일 구현예의 흐름도.
도 22는 컨텐츠의 개별 인스턴스의 일 구현예를 나타내는 도면.
도 23은 결합 인스턴스와 서브 카피의 일 구현예를 나타내는 도면.
도 24는 허브 네트워크에 개별 인스턴스를 결합하는 일 구현예의 흐름도.
도 25는 허브 네트워크로부터 결합 인스턴스를 해제하는 일 구현예의 흐름도.
도 26은 라이선스를 갱신하고 리프레시하는 일 구현예의 흐름도.
도 27 내지 도 29는 허브 네트워크로부터 장치의 단절 및 만료 기간의 동작의 일 예를 나타내는 도면.
도 30은 클라이언트 장치가 클라이언트 장치에서 서브 카피로 저장된 컨텐츠 데이터를 제공하는 일 구현예의 흐름도.
도 31은 서버 상의 결합 인스턴스로부터 컨텐츠 데이터를 클라이언트에 스트리밍하는 일 구현예의 흐름도.
도 32는 서브 카피를 생성하는 일 구현예의 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
100 : 네트워크 환경
105 : PVR
110 : 텔레비젼
115 : 네트워크
120 : 차량
145 : 게임 콘솔
1705 : 서버/클라이언트 장치
1710 : 단말 장치
1720 : 스토리지 클라이언트 장치
1730 : 스토리지 장치
1735 : 플레이어 장치

Claims (21)

  1. 컨텐츠 데이터 제공 방법으로서,
    잠김 컨텐츠 데이터를 나타내는 제공 요청을 허브 네트워크 내의 클라이언트에서 수신하는 단계;
    상기 잠김 컨텐츠 데이터에 대응하는 라이선스를 점검하여 상기 라이선스가 상기 클라이언트에게 상기 잠김 컨텐츠 데이터를 제공할 수 있게 하는지를 판정하는 단계;
    상기 클라이언트에 접속된 프리젠테이션 컴포넌트를 통해 상기 잠김 컨텐츠 데이터를 제공하는 단계 - 상기 잠김 컨텐츠 데이터의 상기 라이선스는 상기 허브 네트워크에 결합됨 -; 및
    폐기 목록을 점검하여 상기 클라이언트가 상기 폐기 목록 내에 포함되는 지를 판정하는 단계 - 상기 폐기 목록은 서버 상에 저장됨 - 를 포함하는 컨텐츠 데이터 제공 방법.
  2. 제1항에 있어서,
    상기 잠김 컨텐츠 데이터와 상기 라이선스는 상기 클라이언트 상에 저장되는 컨텐츠 데이터 제공 방법.
  3. 제1항에 있어서,
    상기 잠김 컨텐츠 데이터는 서버 상에 저장되고,
    상기 서버는 상기 허브 네트워크 내의 상기 클라이언트에 접속되는 컨텐츠 데이터 제공 방법.
  4. 제1항에 있어서,
    상기 라이선스의 점검 단계는 상기 클라이언트로부터 서버로 확인 라이선스 요청을 전송하는 단계를 포함하는 컨텐츠 데이터 제공 방법.
  5. 제1항에 있어서,
    상기 잠김 컨텐츠 데이터의 제공 단계는 상기 서버로부터 상기 클라이언트로 스트리밍되는 출력 컨텐츠 데이터를 수신하는 단계를 포함하는 컨텐츠 데이터 제공 방법.
  6. 삭제
  7. 제1항에 있어서,
    상기 잠김 컨텐츠 데이터는 미디어 데이터인 컨텐츠 데이터 제공 방법.
  8. 컨텐츠 데이터를 제공하는 방법으로서,
    잠김 컨텐츠 데이터와 허브 네트워크 내의 클라이언트를 나타내는 제공 요청을 상기 허브 네트워크 내의 서버에서 수신하는 단계;
    상기 잠김 컨텐츠 데이터에 대응하는 라이선스를 점검하여, 상기 라이선스가 상기 서버에게 상기 클라이언트를 통해 상기 잠김 컨텐츠 데이터를 제공할 수 있게 하는지를 판정하는 단계; 및
    상기 서버로부터 상기 클라이언트로 스트리밍되는 출력 컨텐츠 데이터를 수신하는 것을 포함하는, 상기 잠김 컨텐츠 데이터를 제공하는 단계를 포함하며,
    상기 잠김 컨텐츠 데이터의 상기 라이선스는 상기 허브 네트워크에 결합되는 컨텐츠 데이터 제공 방법.
  9. 제8항에 있어서,
    상기 클라이언트로 스트리밍되는 데이터는 상기 클라이언트로 스트리밍되는 잠김 컨텐츠 데이터를 포함하는 컨텐츠 데이터 제공 방법.
  10. 제8항에 있어서,
    상기 잠김 컨텐츠 데이터를 복호화하는 단계를 더 포함하는 컨텐츠 데이터 제공 방법.
  11. 제8항에 있어서,
    상기 제공 요청은 상기 클라이언트로부터 수신되는 컨텐츠 데이터 제공 방 법.
  12. 제8항에 있어서,
    폐기 목록을 점검하여 상기 클라이언트가 상기 폐기 목록 내에 포함되는지를 판정하는 단계를 더 포함하며,
    상기 폐기 목록은 상기 서버 상에 저장되는 컨텐츠 데이터 제공 방법.
  13. 컨텐츠 데이터를 복사하는 방법으로서,
    잠김 컨텐츠 데이터를 나타내는 복사 요청을 허브 네트워크에서 수신하는 단계; 및
    상기 잠김 컨텐츠 데이터를 복사하여 상기 잠김 컨텐츠 데이터의 복사본을 생성하는 단계 - 상기 잠김 컨텐츠 데이터는 상기 허브 네트워크에 결합된 대응 라이선스를 가짐 -; 및
    폐기 목록을 점검하여 클라이언트가 상기 폐기 목록 내에 포함되는지를 판정하는 단계 - 상기 폐기 목록은 상기 클라이언트 상에 저장됨 - 를 포함하는 컨텐츠 데이터 복사 방법.
  14. 제13항에 있어서,
    상기 라이선스를 점검하여 상기 라이선스가 상기 잠김 컨텐츠 데이터가 복사되는 것을 허용하는지를 판정하는 단계를 더 포함하는 컨텐츠 데이터 복사 방법.
  15. 제13항에 있어서,
    상기 잠김 컨텐츠 데이터의 상기 복사본에 대하여 서버로부터 새로운 라이선스를 요청하는 단계를 더 포함하며,
    상기 서버는 상기 허브 네트워크에 있으며 클라이언트에 접속되는 컨텐츠 데이터 복사 방법.
  16. 삭제
  17. 컨텐츠 데이터 분배 방법으로서,
    수신 장치에서 허브 네트워크 내의 제공 장치로부터 잠김 컨텐츠 데이터의 복사본을 수신하는 단계;
    상기 잠김 컨텐츠 데이터의 복사본에 대한 새로운 라이선스를 요청하는 단계;
    상기 새로운 라이선스를 수신하는 단계; 및
    폐기 목록을 점검하여 클라이언트가 상기 폐기 목록 내에 포함되는지를 판정하는 단계 - 상기 폐기 목록은 상기 클라이언트 상에 저장됨 - 를 포함하는 컨텐츠 데이터 분배 방법.
  18. 제17항에 있어서,
    상기 제공 장치는 상기 허브 네트워크 내의 클라이언트인 컨텐츠 데이터 분 배 방법.
  19. 제17항에 있어서,
    상기 제공 장치는 상기 허브 네트워크 내의 서버인 컨텐츠 데이터 분배 방법.
  20. 제17항에 있어서,
    상기 새로운 라이선스는 클라이언트로부터 수신되는 컨텐츠 데이터 분배 방법.
  21. 제17항에 있어서,
    상기 새로운 라이선스는 상기 허브 네트워크 내의 서버로부터 수신되는 컨텐츠 데이터 분배 방법.
KR1020097024713A 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치 KR100997569B1 (ko)

Applications Claiming Priority (14)

Application Number Priority Date Filing Date Title
US43477402P 2002-12-17 2002-12-17
US60/434,774 2002-12-17
US47182303P 2003-05-20 2003-05-20
US60/471,823 2003-05-20
US10/686,956 US8011015B2 (en) 2002-12-17 2003-10-15 Content access in a media network environment
US10/686,954 US8230084B2 (en) 2002-12-17 2003-10-15 Network management in a media network environment
US10/686,956 2003-10-15
US10/687,357 US20040117440A1 (en) 2002-12-17 2003-10-15 Media network environment
US10/686,955 2003-10-15
US10/687,357 2003-10-15
US10/686,686 2003-10-15
US10/686,955 US20040139022A1 (en) 2002-12-17 2003-10-15 Content states in a media network environment
US10/686,954 2003-10-15
US10/686,686 US7934263B2 (en) 2002-12-17 2003-10-15 License management in a media network environment

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020077006071A Division KR100950354B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치

Publications (2)

Publication Number Publication Date
KR20100003303A KR20100003303A (ko) 2010-01-07
KR100997569B1 true KR100997569B1 (ko) 2010-11-30

Family

ID=32686434

Family Applications (7)

Application Number Title Priority Date Filing Date
KR1020077006070A KR100969721B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020057011362A KR101031161B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020077006067A KR100969511B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020077006071A KR100950354B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020097025085A KR101014912B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치
KR1020097024713A KR100997569B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치
KR1020077006072A KR100956184B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치

Family Applications Before (5)

Application Number Title Priority Date Filing Date
KR1020077006070A KR100969721B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020057011362A KR101031161B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020077006067A KR100969511B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020077006071A KR100950354B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치
KR1020097025085A KR101014912B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020077006072A KR100956184B1 (ko) 2002-12-17 2003-12-16 중첩 멀티서버 네트워크 환경에서 액세스 제어 방법 및장치

Country Status (7)

Country Link
EP (7) EP2290976A3 (ko)
JP (5) JP4637742B2 (ko)
KR (7) KR100969721B1 (ko)
CN (1) CN101778096A (ko)
AU (1) AU2003301067A1 (ko)
DE (1) DE60326279D1 (ko)
WO (1) WO2004057872A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006006678A1 (ja) * 2004-07-15 2006-01-19 Matsushita Electric Industrial Co., Ltd. 機器登録システム及び機器登録装置
US20100325153A1 (en) * 2009-06-17 2010-12-23 Microsoft Corporation Synchronized distributed media assets
US20090133129A1 (en) 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
US8429300B2 (en) 2006-03-06 2013-04-23 Lg Electronics Inc. Data transferring method
CN101395597B (zh) 2006-03-06 2011-12-28 Lg电子株式会社 继承设备注册方法、数据传送方法和继承设备认证方法
KR20080022476A (ko) 2006-09-06 2008-03-11 엘지전자 주식회사 논컴플라이언트 컨텐츠 처리 방법 및 디알엠 상호 호환시스템
JP4783438B2 (ja) * 2007-02-15 2011-09-28 パイオニア株式会社 コンテンツ管理装置、コンテンツ配信装置、コンテンツ更新管理方法、コンテンツ配信方法、コンテンツ更新管理プログラム、コンテンツ配信プログラムおよび記録媒体
JP5261050B2 (ja) * 2008-07-15 2013-08-14 日本電気株式会社 Ipストリーミングコピー制御方法およびシステム
US9497290B2 (en) * 2010-06-14 2016-11-15 Blackberry Limited Media presentation description delta file for HTTP streaming
WO2012011726A2 (en) * 2010-07-19 2012-01-26 Samsung Electronics Co., Ltd. Method and apparatus for providing drm service
JP5044710B1 (ja) 2011-05-31 2012-10-10 株式会社東芝 電話システム、サーバ装置及び電話システムで使用される制御方法
CN111200598B (zh) * 2019-12-28 2022-03-04 浪潮商用机器有限公司 一种防止基板管理控制器密码暴力破解方法及相关装置
CN111817970B (zh) * 2020-05-28 2022-10-21 福建天泉教育科技有限公司 一种页面限流方法及终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002003211A1 (en) * 2000-06-30 2002-01-10 Internap Network Services Corporation Distributed network management system and method

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09331342A (ja) * 1996-06-11 1997-12-22 Toshiba Corp バス状態管理装置
JP3775175B2 (ja) * 1996-06-28 2006-05-17 株式会社東芝 鍵処理方法及びディスクメーカ側処理装置
JP3103061B2 (ja) * 1997-09-12 2000-10-23 インターナショナル・ビジネス・マシーンズ・コーポレ−ション トークン作成装置および該トークンを用いたデータ制御システム
US6170060B1 (en) * 1997-10-03 2001-01-02 Audible, Inc. Method and apparatus for targeting a digital information playback device
JPH11194987A (ja) * 1998-01-05 1999-07-21 Toshiba Corp 通信装置
JP3890871B2 (ja) * 1998-04-14 2007-03-07 株式会社日立製作所 ディジタル映像信号または音声信号の再生装置及び再生方法
JP4366741B2 (ja) * 1998-12-22 2009-11-18 ソニー株式会社 ディジタル放送の受信装置及びディジタル信号処理機器の認識方法
US6766305B1 (en) * 1999-03-12 2004-07-20 Curl Corporation Licensing system and method for freely distributed information
KR100718086B1 (ko) * 1999-03-15 2007-05-16 톰슨 라이센싱 디지털 홈 네트워크를 위한 범용 복사 방지 시스템에서 액세스 관리 방법 및 디바이스
FR2792482A1 (fr) * 1999-04-13 2000-10-20 Thomson Multimedia Sa Reseau numerique local, notamment reseau numerique domestique, et procede de creation et de mise a jour d'un tel reseau
JP3873585B2 (ja) * 1999-07-22 2007-01-24 株式会社高岳製作所 ネットワークシステム、ライセンス管理サーバ
JP2001175605A (ja) * 1999-12-17 2001-06-29 Sony Corp データ処理装置
US6792113B1 (en) * 1999-12-20 2004-09-14 Microsoft Corporation Adaptable security mechanism for preventing unauthorized access of digital data
JP2001175606A (ja) * 1999-12-20 2001-06-29 Sony Corp データ処理装置、データ処理機器およびその方法
JP4310879B2 (ja) * 2000-02-23 2009-08-12 ソニー株式会社 コンテンツ再生システム及びコンテンツ再生方法、並びに、コンテンツの再生要求装置及び一時再生装置
JP4156770B2 (ja) * 2000-03-30 2008-09-24 株式会社東芝 通信装置およびその通信方法
JP3749817B2 (ja) * 2000-03-30 2006-03-01 株式会社東芝 送信装置およびその送信方法
KR100683593B1 (ko) * 2000-03-31 2007-02-16 톰슨 라이센싱 디지털 데이터를 위한 복사-방지 시스템에서 상기 디지털데이터를 판독, 레코딩 및 복구하기 위한 디바이스
US6654797B1 (en) * 2000-05-25 2003-11-25 International Business Machines Corporation Apparatus and a methods for server configuration using a removable storage device
JP2001344437A (ja) * 2000-05-31 2001-12-14 Sony Corp データ配信方法とそのシステム、データ使用装置および配信用データが記録された記録媒体
US20020026636A1 (en) * 2000-06-15 2002-02-28 Daniel Lecomte Video interfacing and distribution system and method for delivering video programs
KR20000063359A (ko) * 2000-06-29 2000-11-06 유도삼 온라인 업무용 프로그램 지원 시스템 및 방법
JP2002033724A (ja) * 2000-07-18 2002-01-31 Nippon Telegraph & Telephone East Corp コンテンツ配信システム
JP2002094500A (ja) * 2000-09-20 2002-03-29 Sanyo Electric Co Ltd データ端末装置
JPWO2002030054A1 (ja) * 2000-09-29 2004-02-19 松下電器産業株式会社 著作権保護システム、送信装置、受信装置、ブリッジ装置、著作権保護方法、媒体及びプログラム
JP4839554B2 (ja) * 2000-10-19 2011-12-21 ソニー株式会社 無線通信システム、クライアント装置、サーバ装置および無線通信方法
EP1370921A2 (en) * 2001-03-12 2003-12-17 Koninklijke Philips Electronics N.V. Receiving device for securely storing a content item, and playback device
JPWO2002080067A1 (ja) * 2001-03-29 2004-07-22 ソニー株式会社 情報処理装置
JP2002300162A (ja) * 2001-04-03 2002-10-11 Matsushita Electric Ind Co Ltd グループ化装置、グループ化システム、グループ化方法
US20020157002A1 (en) * 2001-04-18 2002-10-24 Messerges Thomas S. System and method for secure and convenient management of digital electronic content
JP4491170B2 (ja) * 2001-06-04 2010-06-30 日立コンシューマエレクトロニクス株式会社 ネットワーク配信装置及びネットワーク送信装置
JP4177073B2 (ja) * 2001-10-19 2008-11-05 松下電器産業株式会社 機器認証システムおよび機器認証方法
US7299362B2 (en) * 2001-10-29 2007-11-20 Matsushita Electric Industrial Co., Ltd. Apparatus of a baseline DVB-CPCM
JP4252280B2 (ja) * 2001-10-29 2009-04-08 パナソニック株式会社 ベースラインdvb−cpcmの装置
US20030126086A1 (en) * 2001-12-31 2003-07-03 General Instrument Corporation Methods and apparatus for digital rights management
KR100461940B1 (ko) * 2002-01-12 2004-12-14 주식회사 코어트러스트 디지털 컨텐츠의 정보보호 방법 및 시스템
JP2005509210A (ja) * 2002-05-21 2005-04-07 ビクシズ システムズ インコーポレイティド マルチメディアシステムにおけるリソース管理及び複数チャネルの多重化方法及び装置
EP1667046A1 (en) * 2003-10-22 2006-06-07 Samsung Electronics Co., Ltd. Method for managing digital rights using portable storage device
US20090133129A1 (en) * 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
JP2007312328A (ja) * 2006-05-22 2007-11-29 Sharp Corp 著作権管理システム変換装置、通信システム、プログラムおよび記録媒体

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002003211A1 (en) * 2000-06-30 2002-01-10 Internap Network Services Corporation Distributed network management system and method

Also Published As

Publication number Publication date
EP2312848B1 (en) 2014-03-05
AU2003301067A1 (en) 2004-07-14
EP2290975A2 (en) 2011-03-02
JP2010093853A (ja) 2010-04-22
EP2290973A3 (en) 2012-06-20
KR100950354B1 (ko) 2010-03-29
KR20070050481A (ko) 2007-05-15
DE60326279D1 (de) 2009-04-02
KR100969721B1 (ko) 2010-07-12
JP2010148116A (ja) 2010-07-01
KR20100004117A (ko) 2010-01-12
EP2290974A3 (en) 2012-06-20
EP2290974A2 (en) 2011-03-02
JP2010136391A (ja) 2010-06-17
JP4637742B2 (ja) 2011-02-23
EP1579693A1 (en) 2005-09-28
EP2290976A3 (en) 2012-05-23
EP2312848A2 (en) 2011-04-20
KR101014912B1 (ko) 2011-02-15
JP5026501B2 (ja) 2012-09-12
KR20100003303A (ko) 2010-01-07
EP2290975A3 (en) 2012-05-23
EP1579693B1 (en) 2009-02-18
KR20070040417A (ko) 2007-04-16
AU2003301067A8 (en) 2004-07-14
EP2290976A2 (en) 2011-03-02
EP2290973A2 (en) 2011-03-02
JP5301422B2 (ja) 2013-09-25
EP2312848A3 (en) 2012-01-04
KR20050118158A (ko) 2005-12-15
WO2004057872A1 (en) 2004-07-08
KR20070050480A (ko) 2007-05-15
JP5438494B2 (ja) 2014-03-12
JP2010146574A (ja) 2010-07-01
CN101778096A (zh) 2010-07-14
KR101031161B1 (ko) 2011-04-27
KR100969511B1 (ko) 2010-07-12
EP2028860A1 (en) 2009-02-25
JP2006521713A (ja) 2006-09-21
KR100956184B1 (ko) 2010-05-04
KR20070040416A (ko) 2007-04-16
JP5266198B2 (ja) 2013-08-21
EP2028860B1 (en) 2012-05-16

Similar Documents

Publication Publication Date Title
US9813756B2 (en) Media network environment
JP5266198B2 (ja) メディアネットワーク環境におけるコンテンツアクセス

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131107

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141106

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151106

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161108

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171109

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181108

Year of fee payment: 9