JP2008059351A - ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム - Google Patents

ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム Download PDF

Info

Publication number
JP2008059351A
JP2008059351A JP2006236476A JP2006236476A JP2008059351A JP 2008059351 A JP2008059351 A JP 2008059351A JP 2006236476 A JP2006236476 A JP 2006236476A JP 2006236476 A JP2006236476 A JP 2006236476A JP 2008059351 A JP2008059351 A JP 2008059351A
Authority
JP
Japan
Prior art keywords
information
node
program information
program
recording
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2006236476A
Other languages
English (en)
Inventor
Takuya Inoue
卓哉 井上
Yuji Kiyohara
裕二 清原
Hideki Matsuo
英輝 松尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2006236476A priority Critical patent/JP2008059351A/ja
Priority to PCT/JP2007/066301 priority patent/WO2008026489A1/ja
Publication of JP2008059351A publication Critical patent/JP2008059351A/ja
Priority to US12/292,994 priority patent/US20090094647A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2747Remote storage of video programs received via the downstream path, e.g. from the server
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47214End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for content reservation or setting reminders; for requesting event notification, e.g. of sport results or stock market
    • 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/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • 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
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • H04N21/63345Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/27Arrangements for recording or accumulating broadcast information or broadcast-related information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/68Systems specially adapted for using specific information, e.g. geographical or meteorological information
    • H04H60/73Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information
    • H04H60/74Systems specially adapted for using specific information, e.g. geographical or meteorological information using meta-information using programme related information, e.g. title, composer or interpreter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/76Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
    • H04H60/81Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself
    • H04H60/82Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by the transmission system itself the transmission system being the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】サーバ装置のような特定の装置に多大な負荷をかけることなく、過去に放送された番組を簡易な操作によって視聴することが可能なノード装置等を提供する。
【解決手段】ネットワークを介して互いに通信可能な複数のノード装置と、番組情報を放送する少なくとも一以上の放送局と、を備えた情報配信システムに含まれる前記ノード装置であって、各前記放送局から放送された番組情報を受信する番組情報受信手段と、前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、当該番組情報に固有の識別情報と対応付けて、前記複数のノード装置間で共用可能に保存する番組情報保存手段と、を有する。
【選択図】図4

Description

本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備え、放送局から放送された番組情報が何れかのノード装置によって受信される情報配信システム等の技術分野に関する。
近年、デジタル放送、ハードディスクレコーダー、Gコード(番組を予約録画するための要素(録画日,録画チャンネル,録画開始時刻,録画終了時刻)を符号化したもの)予約、自動CM(Commercial Message)カットなど、利用者個人で、テレビ放送、ラジオ放送及びCATV(Cable Television or Community Antenna Television)等を録画するコンテンツのクオリティが高くなっている。また、キーワード録画などによって、極力撮り逃しを防ぐ機能も知られている。
特許文献1には、放送されている番組の映像及び音声を含む番組データを記録する複数の録画装置と、放送される番組毎に少なくとも番組の放送開始時刻及び番組の放送終了時刻を表す番組情報を記録する番組データベース装置と、番組データベース装置に接続されたサーバ装置とを備えた番組録画システムが開示されている。この番組録画システムでは、ある録画装置において番組データの記録の開始が放送開示時刻に間に合わない場合、必要な番組の放送開始時刻から放送終了時刻までの番組データがサーバ装置によって各録画装置に記録された番組データの中から検索され、検索された番組データが番組データの記録に失敗した録画装置によって取得され記録されるようになっている。これにより、1つの録画装置において所定の番組データの記録が放送開始時刻よりも後に記録された番組データの中から必要な番組データが検索されて、録画装置間で番組データの受け渡しをすることができる。
また、特許文献2には、放送番組発生メディアから放送配信された放送番組情報を全て収集(記録)する放送番組再配信ホストサイトと、インターネットを介して放送番組再配信ホストサイトから放送番組情報をダウンロードするクライアント情報処理装置と、を備えたテレビ又はラジオの放送番組情報のインターネット配信システムが開示されている。
特開2004−320455号公報 特開2003−101498号公報
しかしながら、上述した番組録画システムやインターネット配信システムでは、録画装置間の番組データの受け渡しをサーバ装置(又は放送番組再配信ホストサイト)が取り持つようになっているため、当該番組録画システムの利用者の数が増大すると、サーバ装置に多大の負荷がかかるという問題がある。
本発明は、以上の問題等に鑑みてなされたものであり、上記サーバ装置のような特定の装置に多大な負荷をかけることなく、過去に放送された番組を簡易な操作によって視聴することが可能なノード装置、処理プログラム、情報配信システム及びサーバ処理プログラムを提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置と、番組情報を放送する少なくとも一以上の放送局と、を備えた情報配信システムに含まれる前記ノード装置であって、各前記放送局から放送された番組情報を受信する番組情報受信手段と、前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、当該番組情報に固有の識別情報と対応付けて、前記複数のノード装置間で共用可能に保存する番組情報保存手段と、を有することを特徴とするノード装置である。
この発明によれば、各放送局から放送される番組を受信する複数のノード装置が、記録担当分として夫々割り当てられた番組を、該番組に固有のコンテンツIDに対応付けて複数のノード装置間で共用可能に保存するように構成したので、特定のサーバ等に負担をかけることなく、各ノード装置の使用者(ユーザ)は、過去に放送された番組を、記録保存しているノードnnから取得して視聴することができる。
上記課題を解決するために、請求項2に記載の発明は、請求項1に記載のノード装置であって、前記複数のノード装置間で共用可能とすべく、前記保存された番組情報に固有の前記識別情報を含む公開メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する公開メッセージ送出手段と、他の前記ノード装置から保存した前記番組情報の要求を受けると、要求された番組情報を要求元の前記他のノード装置へ送信する番組情報送信手段と、を有することを特徴とするノード装置である。
この発明によれば、各ノード装置は番組を記録保存すると、該番組固有の識別情報をキーとする公開メッセージを番組情報の所在を管理するノード装置に向けて送出して公開し、かつ、他のノード装置から記録保存した番組の要求を受けると、要求された番組を該他のノード装置へ送信するよう構成したので、ある番組を所望するノード装置は、所望の番組の識別情報を生成し、当該識別情報をキーとして検索メッセージを番組情報の所在を管理するノード装置に向けて送出するだけで、所望の番組を保存したノード装置の所在を、該番組情報の所在を管理するノード装置を通じて容易に知ることができる。
上記課題を解決するために、請求項3に記載の発明は、請求項2に記載のノード装置であって、当該ノード装置に固有の暗号化鍵を記憶する暗号化鍵記憶手段と、前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、前記記憶された暗号化鍵を用いて暗号化する暗号化手段と、を有し、前記番組情報保存手段は、暗号化した前記番組情報を前記識別情報と対応付けて保存し、前記番組情報送信手段は、前記暗号化された番組情報を要求元の前記他のノード装置へ送信することを特徴とするノード装置である。
この発明によれば、各ノード装置では、番組情報を暗号化して保存し、該番組情報を要求された場合には、暗号化された番組情報を送信するようにしたので、セキュリティ性を向上させることができる。
上記課題を解決するために、請求項4に記載の発明は、請求項1乃至3のいずれか一項に記載のノード装置であって、前記情報配信システムに参加する際に、当該情報配信システムに含まれるサーバ装置に対して、参加登録を行なう参加登録手段と、前記サーバ装置から、自己が記録すべき記録担当分の番組情報に係る情報を示す記録担当情報を取得する記録担当情報取得手段と、を有し、前記番組情報保存手段は、前記受信した番組情報のうち、前記記録担当情報に基づいて記録担当分として割り当てられた番組情報を保存することを特徴とするノード装置である。
この発明によれば、サーバ装置が各放送局から放送される番組を各ノード装置に対して偏りなく記録担当として割り振ることができる。
上記課題を解決するために、請求項5に記載の発明は、請求項4に記載のノード装置であって、前記参加登録手段は、前記サーバ装置に対して、当該ノード装置が設置される地域を示す地域情報を送信して参加登録を行ない、前記記録担当情報取得手段は、前記サーバ装置から、前記地域情報に基づいて決定された前記記録担当情報を取得することを特徴とするノード装置である。
この発明によれば、記録担当情報が地域情報に基づいて決定されるため、各放送局から放送される番組を各ノード装置に対して、当該各ノード装置の設置される地域を考慮して記録担当として割り振ることができる。
上記課題を解決するために、請求項6に記載の発明は、請求項4又は5に記載のノード装置であって、前記参加登録手段は、前記暗号化鍵によって暗号化された情報を復号化するための復号化鍵を、前記サーバ装置に送信する復号化鍵送信手段を有することを特徴とするノード装置である。
この発明によれば、暗号化された番組情報を復号する復号化鍵は、サーバ装置が保存管理するよう構成したので、暗号化された番組情報を取得した際には、サーバ装置から暗号化された番組情報が保存されていたノード装置の復号化鍵を取得することにより、暗号化された番組情報を復号化して視聴することができる。
上記課題を解決するために、請求項7に記載の発明は、請求項6に記載のノード装置であって、過去に何れかの前記放送局から放送された前記番組情報の取得を望む場合には、当該番組情報に固有の前記識別情報を含む検索メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する検索メッセージ送出手段と、前記番組情報の所在を管理するノード装置から、当該番組情報を記録しているノード装置を示すノード情報を取得するノード情報取得手段と、前記ノード情報に基づいて、前記番組情報を記録しているノード装置に対して当該番組情報の送信を要求する番組情報要求手段と、前記番組情報を記録しているノード装置から、前記番組情報要求手段にて要求した番組情報であって、暗号化された前記番組情報を取得する番組情報取得手段と、前記暗号化された番組情報を復号化するための前記復号化鍵を要求すべく復号化鍵要求情報を前記サーバ装置に送信する復号化鍵要求情報送信手段と、前記復号化鍵を前記サーバ装置から取得する復号化鍵取得手段と、前記取得した復号化鍵を用いて、前記暗号化された番組情報を復号化する復号化手段と、を有することを特徴とするノード装置である。
この発明によれば、ある番組を所望するノード装置は、所望の番組の識別情報を生成し、当該識別情報をキーとして検索メッセージを番組情報の所在を管理するノード装置に向けて送出することにより、所望の番組を保存したノード装置の所在を、該番組情報の所在を管理するノード装置を通じて容易に知ることができ、該番組情報を記録しているノード装置から暗号化された番組情報を取得できる。そして、サーバ装置から該番組情報を復号化するための復号化鍵を取得して、これを用いて暗号化された番組情報を復号化し、所望の番組を視聴することができる。
上記課題を解決するために、請求項8に記載の発明は、請求項1乃至7のいずれか一項に記載のノード装置であって、記録担当分として割り当てられた番組情報の受信強度を測定し、該受信強度が所定閾値に達しているか否かを判定する受信強度判定手段と、判定の結果、受信強度が所定閾値に達していない場合には、該番組情報を放送している前記放送局を除く他の前記放送局から放送される番組情報を新たな記録担当の番組情報として更新する記録担当番組更新手段と、を有することを特徴とするノード装置。
これによれば、常に録画品質が一定以上に保たれた番組情報を記録保存しておくことができる。
上記課題を解決するために、請求項9に記載の発明は、コンピュータを、請求項1乃至8の何れか一項に記載のノード装置として機能させることを特徴とする処理プログラムである。
上記課題を解決するために、請求項10に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置と、番組情報を放送する少なくとも一以上の放送局と、前記複数のノード装置の参加登録を管理するサーバ装置と、を備えた情報配信システムであって、各前記ノード装置は、各前記放送局から放送された番組情報を受信する番組情報受信手段と、前記サーバ装置に対して、参加登録を行なう参加登録手段と、前記サーバ装置から、自己が記録すべき記録担当分の番組情報に係る情報を取得する記録担当情報を取得する記録担当情報取得手段と、前記受信した番組情報のうち、前記記録担当情報に基づいて、記録担当分として割り当てられた番組情報を、当該番組情報に固有の識別情報と対応付けて、前記複数のノード装置間で共用可能に保存する番組情報保存手段と、を有し、前記サーバ装置は、前記ノード装置から参加登録を受けると、当該ノード装置が記録担当となるべき番組情報に係る情報を示す前記記録担当情報を決定する記録担当情報決定手段と、前記決定された記録担当情報を前記ノード装置に送信する記録担当情報送信手段と、を有することを特徴とする情報配信システムである。
この発明によれば、各放送局から放送される番組を受信する複数のノード装置が、サーバ装置から記録担当分として夫々割り当てられた番組を、該番組に固有の識別情報に対応付けて複数のノード装置間で共用可能に保存するように構成したので、特定のサーバ等に負担をかけることなく、各ノード装置の使用者(ユーザ)は、過去に放送された番組を、記録保存しているノード装置から取得して視聴することができる。
上記課題を解決するために、請求項11に記載の発明は、請求項10に記載の情報配信システムであって、前記ノード装置の前記参加登録手段は、前記サーバ装置に対して、当該ノード装置が設置される地域を示す地域情報を送信して参加登録を行ない、前記サーバ装置の前記記録担当情報決定手段は、前記ノード装置から前記地域情報を受信して参加登録を受けると、前記記録担当情報を前記地域情報に基づいて決定することを特徴とする情報配信システムである。
上記課題を解決するために、請求項12に記載の発明は、請求項10又は11に記載の情報配信システムであって、各前記ノード装置は、当該ノード装置に固有の暗号化鍵を記憶する暗号化鍵記憶手段と、前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、前記記憶された暗号化鍵を用いて暗号化する暗号化手段と、を有し、かつ、前記番組情報保存手段は、暗号化した前記番組情報を前記識別情報と対応付けて保存し、かつ、前記複数のノード装置間で共用可能とすべく、前記保存された番組情報に固有の前記識別情報を含む公開メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する公開メッセージ送出手段と、他の前記ノード装置から保存した前記番組情報の要求を受けると、前記要求された番組情報であって、暗号化された番組情報を要求元の前記他のノード装置へ送信する番組情報送信手段と、を有し、更に、前記参加登録手段は、前記暗号化鍵によって暗号化された情報を復号化するための復号化鍵を、前記サーバ装置に送信する復号化鍵送信手段を有し、前記サーバ装置は、前記ノード装置から、当該ノード装置を示すノード情報と前記復号化鍵を受信すると、当該ノード情報と当該復号化鍵を対応付けて記憶する復号化鍵記憶手段と、何れかの前記ノード装置から、前記番組情報を復号化するための前記復号化鍵を要求する復号化鍵要求情報を受信すると、受信した前記復号化鍵要求情報に含まれる前記ノード情報と対応付けて前記復号化鍵記憶手段に記憶された復号化鍵を、当該復号化鍵の要求元のノード装置に送信する復号化鍵送信手段と、を有し、前記番組情報の取得を望むノード装置は、当該番組情報に固有の前記識別情報を含む検索メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する検索メッセージ送出手段と、前記番組情報の所在を管理するノード装置から、当該番組情報を記録しているノード装置を示すノード情報を取得するノード情報取得手段と、前記取得したノード情報に基づいて、前記番組情報を記録しているノード装置に対して当該番組情報の送信を要求する番組情報要求手段と、前記番組情報を記録しているノード装置から、前記番組情報要求手段にて要求した番組情報であって、暗号化された前記番組情報を取得する番組情報取得手段と、前記暗号化された番組情報を復号化するための前記復号化鍵を要求すべく、前記番組情報を記録しているノード装置を示す前記ノード情報を含む前記復号化鍵要求情報を前記サーバ装置に送信する復号化鍵要求情報送信手段と、前記復号化鍵を前記サーバ装置から取得する復号化鍵取得手段と、前記取得した復号化鍵を用いて、前記暗号化された番組情報を復号化する復号化手段と、を有することを特徴とする情報配信システムである。
上記課題を解決するために、請求項13に記載の発明は、請求項10乃至12のいずれか一項に記載の情報配信システムにおいて、前記サーバ装置は、前記各ノード装置の使用者毎の使用者情報を記憶、管理する使用者情報管理手段と、前記復号化鍵要求情報を送信したノード装置の使用者に対して課金処理を行なう課金処理手段と、を有することを特徴とする情報配信システムである。
上記課題を解決するために、請求項14に記載の発明は、請求項10乃至13のいずれか一項に記載の情報配信システムにおいて、全ての前記放送局から放送された全ての前記番組情報が、前記複数のノード装置で分担され、何れかの前記ノード装置にて保存されることを特徴とする情報配信システムである。
上記課題を解決するために、請求項15に記載の発明は、1又は複数のコンピュータを、請求項10乃至14の何れか一項に記載のサーバ装置として機能させることを特徴とするサーバ処理プログラムである。
本発明によれば、各放送局から放送される番組を受信する複数のノード装置が、記録担当分として夫々割り当てられた番組を、該番組に固有のコンテンツIDに対応付けて複数のノード装置間で共用可能に保存するように構成したので、特定のサーバ等に負担をかけることなく、各ノード装置の使用者(ユーザ)は、過去に放送された番組を、記録保存しているノードnnから取得して視聴することができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ配信システムに対して本発明を適用した場合の実施形態である。
[1.コンテンツ配信システムの構成等]
始めに、図1を参照して、コンテンツ配信システムの一例としてのコンテンツ配信システムの概要構成等について説明する。
図1は、本実施形態に係るコンテンツ配信システムにおける各ノード装置の接続態様の一例を示す図である。
図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4a,4b、DSL(Digital Subscriber Line)回線事業者(の装置)5a,5b、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界の通信ネットワーク)8が構築されている。なお、図1の例におけるネットワーク(通信ネットワーク)8には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。
コンテンツ配信システムSは、このようなネットワーク8を介して相互に接続された複数のノード装置(以下、単に、「ノード」という)n1,n2・・・n21を備えて構成されることになり、ピアツーピア方式のネットワークシステムとなっている(なお、実際には、これ以上のノードが存在することになる)。また、各ノードn1〜n21には、固有の製造番号及びIP(Internet Protocol)アドレスが割り当てられている。なお、製造番号及びIPアドレスは、複数のノード間で重複しないものである。
これらのノードn1〜n21は、例えば、CATV(Cable Television or Community Antenna Television)など、専用サービスの専用のセットトップボックス(STB)などであり、全国の、或いは海外の複数の放送局2a、2b、2cから様々な放送チャンネルで放送された番組の映像及び音声を含む番組データ(番組内に組み込まれるCM情報等を含む場合もある)を有する番組情報(以下、「コンテンツデータ」という)を記録(保存)することが可能になっている。なお、放送局2a、2b、2cからコンテンツデータを放送する放送媒体としては、衛星電波、地上波、インターネット、CATVケーブル等の専用回線等を適用することができる。
登録サーバ2dは、ノードnnのコンテンツ配信システムSへの参加登録を管理する。また、ログサーバ2eは、各ノードnnの当該システムSの利用状況をログ管理し、更に、決済サーバ2fは、利用状況に応じて、各ノードnnに対してコンテンツデータの2次的利用に対する課金処理を行なう。そして、ライブラリサーバ2gは、各ノードnnにて記録されたコンテンツデータを収集管理する。
そして、このコンテンツ配信システムSにおいては、特定のアルゴリズム、例えば、DHT(Distributed Hash Table)を利用したアルゴリズムによって、図1の上部枠100内に示すような、オーバーレイネットワーク9が構築されることになる。つまり、このオーバーレイネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するネットワーク(論理的なネットワーク)を意味する。
本実施形態においては、DHTを利用したアルゴリズムによって構築されたオーバーレイネットワーク9を前提としており、このオーバーレイネットワーク9(図1の上部枠100内)に配置されたノードn1〜n15を、オーバーレイネットワーク9に参加しているノードnnという。言い換えれば、オーバーレイネットワーク9は、ノードnnの参加により形成されている。
このようなオーバーレイネットワーク9への参加は、登録サーバ2dへユーザ情報を送信しコンテンツ配信システムSへの登録が適式に行なわれたノードn16〜n21が(この時点では未だオーバーレイネットワーク9へは参加していない)、参加している任意のノードnnに対して参加要求を示す参加メッセージを送信することによって行われる。そして、ユーザ情報を受けた登録サーバ2dにてノードの登録が行なわれると、新たに登録しようとするノードn16が、既に参加している任意のノードnnにアクセスして、参加メッセージを送信して参加している任意のノードnnからDHT(後に詳述する)をコピーさせてもらう。
上述したように、各ノードnnは固有の識別情報としてのノードIDを有しており、当該ノードIDは、例えば、IPアドレスあるいは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。
このように共通のハッシュ関数により求められた(ハッシュ化された)ノードIDは、当該IPアドレスあるいは製造番号が異なれば、同じ値になる確率が極めて低いものである。なお、ハッシュ関数については公知であるので詳しい説明を省略する。
また、各ノードnnは、夫々、DHTを保持している。このDHTは、オーバーレイネットワーク9上における各種メッセージの転送先を規定しており、具体的には、ノードID空間内で適度に離れたノードnnのノードIDとそのIPアドレス及びポート番号等の組が複数登録されたルーティングテーブル(転送先テーブル)が含まれている。
図2は、ノードn1が保持するDHTのルーティングテーブルの一例を示す図であり、図3は、DHTのノードID空間の一例を示す概念図である。
なお、図2及び図3の例においては、説明の便宜上、ノードIDのbit長を2bit×3桁=6bitとし、各桁を4進数(0〜3の整数)で表している(実際には、もっと長いbit長を用い、各桁も例えば4bitに区切って0〜fの16進数で表現する)。
図2の例において、DHTのルーティングテーブルは、レベル1〜レベル3のテーブルからなり(複数のレベルに区分されており)、各レベルのテーブルエントリーには、エリア毎に、ノードIDとこれに対応するノードnnのIPアドレス及びポート番号が対応付けられて登録されている。各レベルのテーブルにおける各エリアは、DHTのノードID空間を分割することにより得られるエリアである。例えば、図3に示すように、レベル1では、DHTのノードID空間全体が4分割され、“000”〜“033”のノードIDが存在するエリアを0XXのエリア、“100”〜“133”のノードIDが存在するエリアを1XXのエリア、“200”〜“233” のノードIDが存在するエリアを2XXのエリア、“300”〜“333”のノードIDが存在するエリアを3XXのエリアとする。また、レベル2では、レベル1のエリア(つまり、0XX〜3XXのエリア)が更に4分割、例えば1XXのエリアが4分割され、“100”〜“103”のノードIDが存在するエリアを10Xのエリア、“110”〜“113” のノードIDが存在するエリアを11Xのエリア、“120”〜“123”のノードIDが存在するエリアを12Xのエリア、“130”〜“133” のノードIDが存在するエリアを13Xのエリアとする。
そして、例えば、ノードn1のノードIDが“122”とすると、図2に示すように、かかるノードn1のレベル1における1XXのエリア(自己(つまり、自ノード)が存在するエリア)のテーブルには、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、0XXのエリア、2XXのエリア、及び3XXのエリア)には、夫々、他の任意のノードnnのノードID及びIPアドレス等が登録されている。
また、かかるノードn1のレベル2における12Xのエリア(自己が存在するエリア)のテーブルには、図2に示すように、自己のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録され、自己が存在しないエリア(つまり、10Xのエリア、11Xのエリア、及び13Xのエリア)等には、夫々、他の任意のノードnnのノードID及びIPアドレス等が登録されている。
更に、かかるノードn1のレベル3には、図2に示すように、ノードIDが“120”〜“122”のノードID及びIPアドレス(IPアドレスは自分のものであるので、当該ルーティングテーブルに登録しなくても良い)等が登録されている。
なお、図2及び図3の例では、ノードIDのbit長を3桁×2bitとしたので、レベル1〜3の3レベル分のテーブルで網羅できるが、ノードIDのbit長が増せば、その分のテーブルが必要となる(例えば、ノードIDのbit長を16桁×4bitとした場合、16レベル分のテーブルが必要となる)。
このように、本実施形態におけるDHTのルーティングテーブルでは、レベルが上がるほど、エリアが狭まっていくようになっている。
このようなDHTは、例えば、未参加のノードがオーバーレイネットワーク9に参加する際に与えられることになる。
本実施形態は、各放送局2a〜2cから放送される全番組を、各ノードnnに記録担当として割り当て、各ノードnnは記録担当分として割り当てられた番組を、複数のノードnn間で共用可能に保存(記録)するよう構成する。なお、本実施形態では、各ノードnnにて自己の記録担当時間を決定する場合と、各ノードnnのシステムSへの参加登録時に、登録サーバ2dから、記録担当番組が割り当てられ、装置内部に記録担当番組表として記憶する場合の2通りの例について説明する。表1は、後者の例、すなわち登録サーバ2dから、あるノードnnに割り当てられた記録担当番組表の一例である。各ノードnnは、該記録担当番組表(表1参照)に従い、録画(記録)開始時刻がきたら、該当する録画chを受信して録画(保存)するよう構成する。
Figure 2008059351
後者の例の場合、登録サーバ2dは、各ノード装置nnから受信した地域情報に従って記録担当番組を割り当てることが好ましい。例えば、地域情報が名古屋を示す場合、名古屋地域で受信可能な放送局の放送チャンネルを録画chとして割り当てる。
また、これらのコンテンツデータには、夫々、番組に固有のコンテンツID(識別情報の一例)が生成され、コンテンツデータと対応付けて各ノードnn内に保存される。コンテンツIDは、例えば、「番組が放送された日時」と「放送チャンネル」(つまり、録画開始時刻と録画ch)に従って生成される。
例えば、2006年8月4日18時00分00秒に、放送チャンネル1で放送された番組に対しては、
2006080418000001
という数字列を上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化して当該番組に一意に対応するコンテンツIDを生成するようになっている(つまり、コンテンツIDは、ノードIDと同一のID空間に配置される)。
このように共通のハッシュ関数により求められた(ハッシュ化された)コンテンツIDは、放送チャンネル、放送時間帯が異なれば、同じ値になる確率が極めて低いものである。従って、同一のタイトルの番組(例えば、毎週放送される番組)であっても、放送日時又は放送チャンネルが異なれば、コンテンツIDは異なることになる。なお、上記数字列がノードIDと同一の桁数であるような場合には、上記数字列をそのままコンテンツIDとして利用することも可能である。
また、このように分散保存されているコンテンツデータの所在を示すインデックス情報(当該コンテンツデータを保存している各コンテンツ保持ノードのノード情報(IPアドレス及びポート番号等)を含むインデックスリスト)は、上記コンテンツIDの管理元となるノードnn(以下、「ルートノード」という)により管理されるようになっている。例えば、番組Xのコンテンツデータのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードn13により管理され、番組Yのコンテンツデータのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードn14により管理される。つまり、コンテンツ毎にルートノードが分けられるので負荷分散が図らており、しかも、同一のコンテンツデータ(コンテンツIDが同一)が、夫々、複数のコンテンツ保持ノードに保存されている場合であっても、かかるコンテンツデータのインデックス情報は、1つのルートノードで管理することができる。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードnnであるように定められる。
そして、コンテンツデータを保存したノードnn(コンテンツ保持ノード)は、当該コンテンツデータを保存したことをそのルートノードに知らせるために、そのコンテンツデータのコンテンツID及び自己のノード情報(コンテンツデータを保存した当該コンテンツ保持ノードを示すIPアドレス及びポート番号等のノード情報)を含む登録メッセージとしてのパブリッシュメッセージ(コンテンツデータを保存したので、その情報をオーバーレイネットワーク9に参加しているノードnnに対して、保存元ノード情報の登録の要求を示し、ルートノードを通じて公開するためのメッセージ)を、当該コンテンツIDに基づいて、そのルートノードに向けて送出する。これにより、パブリッシュメッセージは、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。
図4(A)は、コンテンツ保持ノードから送出されたパブリッシュメッセージの流れの一例を、DHTのノードID空間にて示した概念図である。
図4(A)の例において、例えば、コンテンツ保持ノードであるノードn1は、自己のDHTのレベル1のテーブルを参照して、パブリッシュメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードn8のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記パブリッシュメッセージを送信する。
これに対して、ノードn8は、当該パブリッシュメッセージを受信し、自己のDHTのレベル2のテーブルを参照して、当該パブリッシュメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードn11のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記パブリッシュメッセージを転送する。
これに対して、ノードn11は、当該パブリッシュメッセージを受信し、自己のDHTのレベル3のテーブルを参照して、当該パブリッシュメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードn13のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記パブリッシュメッセージを転送する。
これに対して、ノードn13は、パブリッシュメッセージを受信し、自己のDHTのレベル4のテーブルを参照して、当該パブリッシュメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDが自分である、つまり、自分がそのコンテンツIDのルートノードであることを認識し、自己のインデックス情報中に、当該パブリッシュメッセージに含まれるノード情報を登録することになる。
なお、パブリッシュメッセージに含まれるノード情報は、コンテンツ保持ノードからルートノードに至るまでの転送経路におけるノードnn(図4(A)の例では、ノードn8及びノードn11)においても登録(キャッシュ)される。
さて、あるノードnnのユーザが、過去に放送された番組を視聴したい場合、その番組のコンテンツデータの取得を望むノードnn(以下、「ユーザノード」という)は、当該ユーザにより指定された当該番組の「番組が放送された日時」と「放送チャンネル」(つまり、録画開始時刻と録画ch)を、上記共通のハッシュ関数によりハッシュ化してコンテンツIDを生成し、当該コンテンツID及び自己(当該ユーザノード)のノード情報を含むコンテンツ所在問合せ(検索)メッセージを、自己のDHTのルーティングテーブルにしたがって他のノードnnに対して送出する。これにより、当該コンテンツ所在問合せメッセージは、上述したパブリッシュメッセージと同様に、コンテンツIDをキーとするDHTルーティングによって、いくつかのノードnn(以下、「中継ノード」という)を経由(転送)されて、そのコンテンツIDのルートノードに辿り着く。そして、当該ルートノードは、インデックス情報にノード情報が登録されている何れかのコンテンツ保持ノードに対して、当該ユーザノードのノード情報を含むコンテンツ送信要求メッセージを送信する。これにより、ユーザノードは、当該コンテンツ保持ノードから、上記コンテンツ所在問合せ(検索)メッセージに係るコンテンツデータを取得(ダウンロード)することになる。
図4(B)は、ユーザノードから送出されたコンテンツ所在問合せメッセージの流れの一例を、DHTのノードID空間にて示した概念図である。
図4(B)の例において、例えば、ユーザノードであるノードn3は、自己のテーブルを参照して、コンテンツ所在問合せメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードn10のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せメッセージを送信する。
これに対して、ノードn10は、当該コンテンツ所在問合せメッセージを受信し、自己のテーブルを参照して、当該コンテンツ所在問合せメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有する例えばノードn13のIPアドレス及びポート番号を取得し、そのIPアドレス及びポート番号宛てに、上記コンテンツ所在問合せメッセージを転送する。
これに対して、ノードn13は、コンテンツ所在問合せメッセージを受信し、自己のテーブルを参照して、当該コンテンツ所在問合せメッセージに含まれるコンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDが自分である、つまり、自分がそのコンテンツIDのルートノードであることを認識し、自己のインデックス情報に登録されているコンテンツ保持ノードであるノードn1のノード情報(IPアドレス及びポート番号)を、ユーザノードであるノードn3に送信する。
これにより、ユーザノードであるノードn3は、コンテンツ保持ノードであるノードn1に対して、上記コンテンツ所在問合せメッセージに係るコンテンツデータを要求し取得(ダウンロード)する。取得したコンテンツデータは、ノードn1に固有の暗号鍵によって暗号化されているため、当該コンテンツデータを復号化すべく、ノードn1の公開鍵を登録サーバ2dから取得して、当該公開鍵を用いてコンテンツデータを復号化し、視聴することとなる。具体的には、ノードn3は、登録サーバ2dに対してノードn1のノード情報を送信して公開鍵を要求し、これを受けた登録サーバ2dは、送信されたノードn1のノード情報に対応するノードn1の公開鍵をノードn3に送信する。
なお、図4(B)に示すように、ユーザノードがコンテンツ保持ノードに対して送信要求を行なってコンテンツデータを取得する構成(Push)に限らず、例えば、ルートノードが、コンテンツ保持ノードであるノードn1に対して、ユーザノードのノード情報とコンテンツIDを含むコンテンツ送信要求メッセージを送信し、これに対して、コンテンツ保持ノードであるノードn1は、コンテンツ送信要求メッセージを受信し、自己が保存しているコンテンツデータから、当該コンテンツ送信要求メッセージに含まれるコンテンツIDに対応するコンテンツデータを取得し、当該コンテンツ送信要求メッセージに含まれるユーザノードであるノードn3のノード情報(IPアドレス及びポート番号)に基づいて当該コンテンツデータを、ノードn3に送信する構成(Pull)としてもよい。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じノード情報をキャッシュしているキャッシュノードから当該ノード情報を取得(受信)することもできる。
その後、ユーザノードは、ログサーバ2eに接続して当該取得したコンテンツデータの視聴ログを記録し、後に、決済サーバ2fにおいて、取得したコンテンツデータの2次的利用に対する課金処理が行なわれることになる。
次に、図5を参照して、ノードnnの構成及び機能について説明する。
図5は、ノードnnの概要構成例を示す図である。
ノードnnは、図5に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ(例えば、コンテンツデータ、ノード情報、DHT、登録サーバ2d、ログサーバ2e、決済サーバ2f及びライブラリサーバ2gのIPアドレス等)、当該ノードnn固有の秘密鍵(暗号化鍵の一例)、自己が記録すべき番組を示す記録担当情報(表1参照)及びプログラム等を記憶保存(格納)するためのHDD等から構成された番組情報保存手段及び暗号化鍵記憶手段としての記憶部12と、受信されたコンテンツデータを一時蓄積するバッファメモリ13と、コンテンツデータに含まれるエンコードされたビデオデータ(映像情報)及びオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するための復号化手段としてのデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD(Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、受信されたコンテンツデータを暗号化するための暗号化手段としてのエンコーダ部19と、ネットワーク8を通じて他のノードnnや各サーバ2d〜2gとの間の通信制御を行なうための通信部19aと、放送局2aから放送された番組のコンテンツデータを受信するためのチューナ等の受信部19bと、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)19cと、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14、エンコーダ部19、通信部19a、及び受信部19bは、バス19dを介して相互に接続されている。なお、ノードnnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。
このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラム(本発明の処理プログラムを含む)を読み出して実行することにより、全体を統括制御すると共に、上述したユーザノード、中継ノード、ルートノード、キャッシュノード、及びコンテンツ保持ノード等の何れかのノードとしての処理を行なうようになっており、本発明の番組情報受信手段、番組情報保存手段、公開メッセージ送出手段、番組情報送信手段、暗号化鍵記憶手段、暗号化手段、参加登録手段、記録担当情報取得手段、復号化鍵送信手段、検索メッセージ送出手段、ノード情報取得手段、番組情報要求手段、番組情報取得手段、復号化鍵要求情報送信手段、復号化鍵取得手段及び復号化手段として機能し、後述する各種処理を行なうようになっている。
また、本実施形態では、コンテンツデータが暗号化されて記憶保存されるため、例えば、記憶部12に備える暗号化鍵記憶手段としてのセキュアな不揮発性メモリに、各ノードnnに固有の秘密鍵が、例えば当該ノードnnの製造時又は出荷時に記憶保存されるようになっており、かかる秘密鍵は書き換え、消去、及び外部からの取り出しが不可能に保護されている。
なお、上記処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
次に、図6〜図9を参照して、登録サーバ2d、ログサーバ2e、決済サーバ2f及びライブラリサーバ2gの構成及び機能について説明する。なお、本実施形態は、登録サーバ2d及び決済サーバ2fが、本発明のサーバ装置として機能する場合の例である。
先ず、図6を参照して、登録サーバ2dの構成及び機能について説明する。
図6は、登録サーバ2dの概要構成例を示す図である。
登録サーバ2dは、一般のサーバコンピュータを適用可能であり、図6に示すように、CPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成された制御部21と、各種データ(例えば、ログサーバ2e、決済サーバ2f及びライブラリサーバ2gのIPアドレス等)及びプログラム等を記憶(格納)するHDD等から構成された記憶部22と、ネットワーク8を通じてノードnnとの間の通信制御を行なうための通信部23と、を備えて構成され、これらの各構成要素はバス24を介して相互に接続されている。
このような構成において、制御部21は、CPUが記憶部22等に記憶されたプログラムを読み出して実行することにより、全体を統括制御すると共に、本発明のサーバ装置の記録担当情報決定手段及び記録担当情報送信手段、使用者情報管理手段、復号化鍵記憶手段及び復号化鍵送信手段等として機能し、後述する各種処理を行なうようになっている。
登録サーバ2dは、記憶部22にユーザ情報データベース22aを構築し、当該ユーザ情報データベース22aには、ユーザ情報として、各ノードnnのノードIDに対応付けて、
〈1〉当該各ノードnnのユーザの個人情報(例えば、ユーザID、住所、氏名、電子メールアドレス)、
〈2〉各ノードnnが設置されるエリアの郵便番号や電話番号等の地域情報、
〈3〉課金情報、決済方法を示す情報、クレジットカード番号等の決済情報
〈4〉各ノードnnに固有の秘密鍵によって暗号化(スクランブル)されたコンテンツデータを復号化するための公開鍵(復号化鍵の一例)
〈5〉各ノードnnへの公開鍵送信実績
が登録(記憶)されている(表2参照)。
Figure 2008059351
各ノードnnのノードIDは、例えば、当該ノードnnの製造時又は出荷時に製造番号に基づいて生成され登録されたり、ユーザの個人情報、地域情報、決済情報、公開鍵は、当該ユーザによるノードnnの購入時に該ノードID等に対応付けて登録される。或いは、これら各ノードIDや個人情報等は、当該ノードnn購入後のコンテンツ配信システムSへの利用手続完了時(オーバーレイネットワーク9への参加時)に登録されることとなる。そして、登録サーバ2dから決済サーバ2fに決済情報が送られ、決済サーバ2fにて各ノードnnの使用者に対して課金処理が行なわれる他、当該ユーザ情報データベース22aは、他の各サーバ2e〜2gからもアクセス可能に構成され、必要に応じてユーザ情報データベース22aのユーザの個人情報や決済情報が利用できるようになっている。
なお、サーバ処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしてもよい。
次に、図7を参照して、ログサーバ2eの構成及び機能について説明する。
図7は、ログサーバ2eの概要構成例を示す図である。
ログサーバ2eは、一般のサーバコンピュータを適用可能であり、図7に示すように、CPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成された制御部31と、各種データ(例えば、登録サーバ2d、ログサーバ2e及びライブラリサーバ2gのIPアドレス等)及びプログラム等を記憶(格納)するHDD等から構成された記憶部32と、ネットワーク8を通じてノードnnや各サーバとの間の通信制御を行なうための通信部33と、を備えて構成され、これらの各構成要素はバス34を介して相互に接続されている。
記憶部32では、各放送局2a〜2cから放送された各番組の放送後に、システムSを利用して、誰が、どの番組を、何回視聴(ダウンロード)したか等のシステム利用実績を管理する。具体的には、
(i)各ノードnnのユーザ(使用者)毎の利用実績を、各ノードnnに固有のノードIDに対応付けて管理(記憶)し(表3参照)、
(ii)各番組(コンテンツ)毎の利用実績を、各番組に固有のコンテンツIDに対応付けて管理(記憶)する(表4参照)。
Figure 2008059351
Figure 2008059351
そして、定期的に、決済サーバ2fに(i)各ノードnnのシステム利用実績を送信し、決済サーバ2fが当該システム利用実績に応じて各ノードnnに対して課金処理を行なうこととなる。また、登録サーバ2dからの要求に応じて、(ii)各番組の利用実績を送信する。これを受けた登録サーバ2dでは、各番組の利用実績を参考に(つまり、各番組の視聴率を考慮して)、新たなノードnnが記録(録画)すべき記録担当番組の割り当て、及び、各ノードnnが記録(録画)すべき記録担当番組の再割り当てを行なう。
次に、図8を参照して、決済サーバ2fの構成及び機能について説明する。
図8は、決済サーバ2fの概要構成例を示す図である。
決済サーバ2fは、一般のサーバコンピュータを適用可能であり、図8に示すように、CPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成された制御部41と、各種データ(例えば、登録サーバ2d、ログサーバ2e及びライブラリサーバ2gのIPアドレス等)及びプログラム等を記憶(格納)するHDD等から構成された記憶部42と、ネットワーク8を通じてノードnnや各サーバとの間の通信制御を行なうための通信部43と、を備えて構成され、これらの各構成要素はバス44を介して相互に接続されている。
このような構成において、制御部41は、CPUが記憶部42等に記憶されたプログラムを読み出して実行することにより、全体を統括制御すると共に、本発明のサーバ装置の課金処理手段等として機能し、ログサーバ2eから受信した各ノードnnのユーザ(使用者)毎の利用実績に応じて、各ノードnnのユーザに対して利用料金を課する課金処理を行なう。実際に課金処理を行なう際には、登録サーバ2dのユーザ情報データベース22aにアクセスし、ユーザの個人情報及び決済情報を利用して行なう。
次に、図9を参照して、ライブラリサーバ2gの構成及び機能について説明する。
図9は、ライブラリサーバ2gの概要構成例を示す図である。
ライブラリサーバ2gは、一般のサーバコンピュータを適用可能であり、図9に示すように、CPU,作業用RAM,各種データ及びプログラムを記憶するROM等から構成された制御部51と、各種データ(例えば、登録サーバ2d、ログサーバ2e及び決済サーバ2fのIPアドレス等)及びプログラム等を記憶(格納)するHDD等から構成された記憶部52と、ネットワーク8を通じてノードnnや各サーバとの間の通信制御を行なうための通信部53と、を備えて構成され、これらの各構成要素はバス54を介して相互に接続されている。
このような構成において、制御部51は、CPUが記憶部52等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、各放送局2a〜2cから過去に放送された番組を記憶部52に記憶させる。
具体的には、各ノードnnにて記録担当番組を録画しようとしたところ、ノード内の番組記憶領域の記憶容量をオーバーしてしまい、新たな番組を録画するために、既に録画済の番組(例えば、比較的古い番組)を削除しなければならない場合に、当該各ノードnnから削除される番組(コンテンツデータ)を受信(アップロード)して、記憶部52に記憶(管理)する。
このようにコンテンツ配信システムSを構成することにより、各放送局2a〜2cから過去に放送された全ての番組を、記録担当である各ノードnn、或いはライブラリサーバ52gの何れかに必ず記録保存させることができるため、放送された全ての番組について、各ノードnnの配信要求に対応することができる。
[2.コンテンツ配信システムの動作]
次に、コンテンツ配信システムSの動作について説明する。
[2−1.ノードnnの処理]
図10は、ノードnnの制御部11における処理を示すフローチャートである。ノードnnの電源がオンとされることにより、本発明の処理プログラムが制御部11の制御に基づいて実行される。
先ず、電源がオフとされたか否かを判定し(ステップS1)、オフとされていない場合(ステップS1:No)には、ステップS2以下の処理へ移行する。
そして、制御部11は、ユーザが入力部19c等を操作することにより、コンテンツ配信システムSへの参加登録が指示されたか否かを判定し(ステップS2)、コンテンツ配信システムSへの参加登録が指示された場合(ステップS2:Yes)には、「登録処理」を行なう(ステップS3)。
一方、コンテンツ配信システムSへの参加登録が指示されていない場合(ステップS2:No)には、ステップS4へ移行して、記憶部12に記憶された記録担当番組表(表1)を参照して記録担当となっている番組の録画開始時刻が到来したか否かを判定し(ステップS4)、記録担当となっている番組の録画開始時刻が到来した場合(ステップS4:Yes)には、「録画処理」を行なう(ステップS5)。
一方、記録担当となっている番組の録画開始時刻が到来していない場合(ステップS4:No)には、ステップS6へ移行して、コンテンツ視聴ログをログサーバ2eに送信すべき時刻(ログ報告時刻)が到来したか否かを判定する(ステップS6)。
そして、ログ報告時刻が到来した場合(ステップS6:Yes)には、「ログ送信処理」を行ない(ステップS7)、ログ報告時刻が到来していない場合(ステップS6:No)には、ステップS8へ移行する。
次いで、制御部11は、ユーザが入力部19c等を操作することにより、過去に放送局2a〜2cから放送された番組について、再生指示がされたか否かを判定し(ステップS8)、再生指示がされた場合(ステップS8:Yes)には、該番組をコンテンツ配信システムS内で検索すべく、「再生処理」を行なう(ステップS9)。
一方、再生指示がされていない場合(ステップS8:No)には、ステップS1へ戻り、電源がオフとされる(ステップS1:Yes)まで、上記ステップS1〜S9の処理が繰り返し行なわれる。
■ステップS3における登録処理
次に、上記ステップS3における「登録処理」について説明する。なお、当該「登録処理」は、各ノードnnにて記録担当番組を決定し、記録担当番組表として記憶する場合における登録処理と、各ノードnnのシステムSへの参加登録時に、登録サーバ2dから、記録担当番組が割り当てられ、装置内部に記録担当番組表(表1参照)として記憶する場合について説明する。
初めに、図11のフローチャートを用いて、各ノードnnにて記録担当番組を決定する場合における登録処理について説明する。
先ず、制御部11は、ノードnnの使用者(ユーザ)の個人情報、地域情報、決済情報等のユーザ情報を取得する(ステップS21)、具体的には、上記ユーザ情報の入力をユーザに促して、ユーザが入力部19cを操作することにより取得する。
そして、ユーザ情報が取得されたか否かを判定し(ステップS22)、ユーザ情報が取得できれば(ステップS22:Yes)、登録サーバ2dに接続(アクセス)する(ステップS23)。ユーザ情報が取得できなれば(ステップS22:No)、ステップS21に移行して、ユーザ情報が取得できるまで、ユーザ情報の入力を促す等のユーザ情報取得処理を繰り返し行なう。
次いで、登録サーバ2dに接続できたか否かを判定し(ステップS24)、登録サーバ2dに接続できた場合(ステップS24:Yes)には、制御部11は参加登録手段として機能し、ステップS21にて取得したユーザ情報を登録サーバ2dに送信する(ステップS25)。一方、登録サーバ2dに接続できなれば(ステップS24:No)、ステップS23に移行して、登録サーバ2dに接続できるまで、登録サーバ2dへの接続を試みる。
そして、ユーザ情報を登録サーバ2dに送信できたか否かを判定し(ステップS26)、ユーザ情報を送信できた場合(ステップS26:Yes)には、記録担当番組を決定し、記憶部12に自己の記録担当番組表として記憶する(ステップS27)。記録担当番組の決定方法としては、例えば、ノードnn固有の製造番号を、自己が受信可能な放送チャンネルのチャンネル数で割った余りを算出して得た数のチャンネルNoを録画チャンネルとして決定する。そして、製造番号を、時間帯総数で割った余りを算出て得た数に相当する時間を録画時間として決定する。時間帯総数とは、例えば、1日24時間を午前0時から30分ごとのコンテンツデータとして録画する場合には、48個の時間帯(録画タイミング)が発生する。そして、自己の製造番号を48で割った余りが3であれば、3番目の時間帯、つまり、午前1時から午前1時半までの30分間が録画時間となる。この他に、ノード製造時に製造時期や製造場所毎に記録担当番組を複数のノードnnに振り分けて割り当てて記憶させておくことにより、全ての放送チャンネルの番組を複数のノードnnにて網羅するよう構成することもできる。また、各放送チャンネルを受信可能な地域ごとに複数の記録担当情報を予め記憶部12に記憶させておき、当該複数の記録担当情報の中から、ステップS21にて取得したユーザ情報に含まれる地域情報に基づいて、ノードnn自身がノードnnの地域情報に対応する地域の記録担当情報を抽出し、自己の記憶担当番組表として記憶しなおすよう構成することもできる。
一方、ユーザ情報を送信できなかった場合(ステップS26:No)には、送信できるまでステップS25の送信処理を繰り返し行なう。
そして、ステップS28にて、記録担当情報を決定、記憶できたか否かを判定し(ステップS28)、記録担当情報を決定、記憶できた場合(ステップS28:Yes)、「登録処理」を終了し、記録担当情報を決定、記憶できなかった場合(ステップS28:No)には、取得できるまで監視し記録担当決定・記憶処理を繰り返す。
続いて、図12のフローチャートを用いて、登録サーバ2dから、記録担当番組が割り当てられる場合における登録処理について説明する。なお、ステップS31〜S36の処理は、夫々上述したステップS21〜S26の処理と同様であるため、ここでの説明は省略する。
ステップS37では、制御部11が記録担当情報取得手段として機能し、登録サーバ2dから記録担当情報を取得する(ステップS37)。具体的には登録サーバ2dにおける処理において詳述するが、登録サーバ2dでは、ステップS35にて送信したユーザ情報に含まれる地域情報に基づいて、ノードnnの地域情報に対応する地域の記録担当情報が決定され、ノードnnに送信される。
そして、ステップS38にて、記録担当情報を取得できたか否かを判定し(ステップS38)、記録担当情報を取得できた場合(ステップS38:Yes)、「登録処理」を終了し、記録担当情報を取得できなかった場合(ステップS38:No)には、取得できるまで登録サーバ2dからの記録情報の送信を待つ。
■ステップS5における録画処理
次に、上記ステップS5における「録画処理」について図13のフローチャートを用いて説明する。
先ず、制御部11は、番組を記録するための記憶部12の記憶領域が、容量不足であるか否かを判定する(ステップS41)、具体的には、所定閾値以上記憶領域が残されているか否かを判定する。所定閾値は例えば、次の記録時間分(例えば30分)の容量とする。
判定の結果、記憶領域の容量不足である場合(ステップS41:Yes)には、「削除処理」を行ない(ステップS42)、再び、容量不足であるか否かを判定する(ステップS43)。「削除処理」についてはこの後詳述する。そして、「削除処理」を行なってもなお容量不足である場合(ステップS43:Yes)には、処理を終了する。ある番組に対して予め複数のノードnnが記録担当として割り当てられる場合には、1台のノードnnが容量不足によって録画できないとしても、他の記録担当ノードnnが当該番組を記録することで十分カバーできる。
一方、記憶領域の容量が不足していない場合(ステップS41:No、S43:No)には、制御部11は番組情報受信手段及び番組情報保存手段として機能し、録画すべき録画チャンネルの放送を受信してコンテンツデータ(番組)の受信し、録画を開始する(ステップS44)。
そして、録画が適式に行なわれたか否かを判定し(ステップS45)、録画開始が適式に行なわれた場合(ステップS45:Yes)には、制御部11は、暗号化手段として機能し、受信された該コンテンツデータを記憶部12に記憶した自己の固有の秘密鍵(暗号化鍵の一例)でエンコーダ部19により暗号化させながら(つまり、秘密鍵を用いて受信されたコンテンツデータを暗号化する)、記憶部12に記録するように制御する(ステップS46)。
そして、当該録画処理が終了すると、制御部11は、「番組が放送された日時」と「放送チャンネル」(つまり、録画開始時刻と録画ch)に従って固有のコンテンツIDを生成し、暗号化されたコンテンツデータと対応付けて記憶部12に記憶する(ステップS47)。
次いで、制御部11は、公開メッセージ送出手段として機能し、上記コンテンツID及び自己のノード情報を含むパブリッシュメッセージを、そのルートノードに向けて送出し(ステップS48)、当該処理を終了する。そして、送出されたパブリッシュメッセージは、図4(A)を用いて説明したように、幾つかの中継ノードを経由され、上記コンテンツIDのルートノードに辿り着く。そのルートノードは、当該パブリッシュメッセージを受信すると、これに含まれるノード情報を記憶、つまり、インデックス情報中に登録することになる。こうして、上記パブリッシュメッセージを送出したノードnnは、コンテンツ保持ノードとなる。
次に、上記ステップS5における「削除処理」について図14のフローチャートを用いて説明する。
先ず、制御部11は、記憶部12に記憶されているコンテンツデータの中から、削除コンテンツデータを決定する(ステップS51)。削除コンテンツデータの選択方法としては、例えば、記憶部12に記憶されているコンテンツデータのうち、放送日時(録画日時)が最も古いもの、或いは、各コンテンツデータに寿命時間を設けておき、当該寿命時間が既に経過しているもの(寿命時間は、例えば各放送局2a〜2cから番組が放送される際に、当該番組に寿命時間情報を付加しておく等の構成とする)、或いは、最もコンテンツ配信要求の少ないもの、或いは、視聴率の最も少ないもの(視聴率は、各番組の利用実績(表4参照)を管理しているログサーバ2eに問い合わせる等の構成とする)などとすればよい。また、上記S43にて不足とされた容量分の削除コンテンツデータを選択することが好ましい。
そして、ライブラリサーバ2gに接続(アクセス)する(ステップS52)。次いで、ライブラリサーバ2gに接続できたか否かを判定し(ステップS53)、ライブラリサーバ2gに接続できた場合(ステップS53:Yes)には、ステップS51にて決定した削除コンテンツデータがライブラリサーバ2g内に記憶されているか否かをライブラリサーバ2gに問い合わせる(ステップS54)。削除コンテンツデータがライブラリサーバ2g内に記憶されていない場合には、当該ライブラリサーバ2gから、削除コンテンツデータの送信(アップロード)指示がされることとなる。一方、ライブラリサーバ2gに接続できなれば(ステップS55:No)、ステップS52に移行して、ライブラリサーバ2gに接続できるまで、ライブラリサーバ2gへの接続を試みる。
そして、ライブラリサーバ2gから、削除コンテンツデータのアップロード指示(送信指示)がされたか否かを判定し(ステップS55)、削除コンテンツデータのアップロード指示がされていない場合(ステップS55:No)には、ステップS57へ移行し、削除コンテンツデータのアップロード指示がされた場合(ステップS55:Yes)には、削除コンテンツデータをライブラリサーバ2gにアップロード(送信)する(ステップS56)。なお、本実施形態では、ライブラリサーバ2gに削除コンテンツデータを送信する際には、自己の公開鍵にて該コンテンツを復号化した後にライブラリサーバ2gに送信するよう構成する。
続いて、ステップS57にて、削除コンテンツデータを記憶部12から削除する(ステップS57)。そして、削除メッセージ(コンテンツデータを削除したので、ルートノード等に対してノード情報の登録削除の要求をするためのメッセージ)を、当該削除コンテンツデータのコンテンツIDに基づいて、そのルートノードに向けて送出する。これにより、削除メッセージは、公開したときのパブリッシュメッセージと同様に、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そしてルートノードと、該削除メッセージの転送経路における各ノードnnでは、自己のインデックス情報にキャッシュされた削除メッセージ送信元のノードnn(つまり、削除コンテンツデータを保存していたノードnn)のノード情報が削除されることとなる。以上で図14の「削除処理」を終了する。
■ステップS7におけるログ送信処理
次に、上記ステップS7における「ログ送信処理」について図15のフローチャートを用いて説明する。
先ず、制御部11は、ログサーバ2eに接続(アクセス)する(ステップS61)。次いで、ログサーバ2eに接続できたか否かを判定し(ステップS62)、ログサーバ2eに接続できなれば(ステップS62:No)、ステップS61に移行して、ログサーバ2eに接続できるまで、ログサーバ2eへの接続を試みる。
一方、ログサーバ2eに接続できた場合(ステップS62:Yes)には、コンテンツ視聴ログをログサーバ2eへ送信し(ステップS63)、送信できたか否かを判定し(ステップS64)、ログサーバ2eにコンテンツ視聴ログを送信できれば(ステップS64:Yes)、処理を終了し、送信できなれば(ステップS64:No)、ステップS63に移行して、送信できるまで、ログサーバ2eへの送信を試みる。
■ステップS9における再生処理
次に、上記ステップS9における「再生処理」について図16のフローチャートを用いて説明する。当該処理は、ユーザが入力部19c等を操作して再生指示の対象とする番組の放送日時と放送チャンネルが入力されることにより、過去に放送局2a〜2cから放送された番組について、再生指示がされたことにより開始する処理である。
先ず、制御部11は、入力指示された番組の放送日時と放送チャンネルに基づいてコンテンツIDを生成し(ステップS70)、コンテンツ検索処理を実行する。具体的には、制御部11は、検索メッセージ送出手段として機能し、当該生成したコンテンツID及び自己(当該ユーザノード)のノード情報を含むコンテンツ所在問合せ(検索)メッセージを、そのルートノードに向けて送出し、返答を待つ(ステップS71)。
例えば、1つの番組が1つのコンテンツデータとして1つのノードnnに記録されている場合には、入力指示された番組の放送日時と放送チャンネルに基づいて1つのコンテンツIDが生成され、当該コンテンツIDに基づくDHTルーティングに基づく1つのコンテンツ所在問合せメッセージが送出されることとなるが、1つの番組(2時間番組)が、初めの1時間が1つのコンテンツデータとして1つのノードnnにて記録され、後の1時間が1つのコンテンツデータとして別のノードnnにて記録されている場合には、初めの1時間のコンテンツデータに対しては、放送日時(初めの1時間の録画開始時刻)と放送チャンネルに基づいてコンテンツIDが生成され、後の1時間のコンテンツデータに対しては、放送日時(後の1時間の録画開始時刻)と放送チャンネルに基づいてコンテンツIDが生成されて、2つのコンテンツ所在問合せメッセージが送出されることとなる。このように、再生指示をした番組が1つであっても、複数のコンテンツデータを検索し取得する必要があることもある。
そして、送出されたコンテンツ所在問合せ(検索)メッセージは、図4(B)を用いて説明したように、幾つかの中継ノードを経由され、上記コンテンツIDのルートノードに辿り着く。
そして、そのルートノードが、当該コンテンツ所在問合せ(検索)メッセージを受信すると、当該コンテンツIDに対応するコンテンツデータを保存しているコンテンツ保持ノードnnのノード情報がインデックス情報中に登録されているか否かを判断し、登録されている場合には、登録されているコンテンツ保持ノードnn(複数登録されている場合には、そのうちの何れか1つ又は複数のコンテンツ保持ノード)のノード情報を返答メッセージとしてユーザノードに対して送信する。
一方、当該ルートノードは、当該コンテンツIDに対応するコンテンツデータを保存しているコンテンツ保持ノードnnのノード情報がインデックス情報中に登録されていない場合には、登録されていないことを示す返答メッセージを、当該ユーザノードに送信する。
これに対して、ユーザノードが上記返答メッセージを受信すると、その制御部11は、当該返答メッセージを参照して、コンテンツデータを発見できたか否かを判定する(ステップS72)。つまり、ステップS71にて送出した全てのコンテンツ所在問合せメッセージに対して、返答メッセージを受信できたか、受信できた場合には、再生指示をした番組にかかるコンテンツデータを保持するコンテンツ保持ノードnnのノード情報をルートノードから取得できたか否か(ノード情報取得手段)を判定する。判定の結果、全てのコンテンツデータを発見できた場合には(ステップS72:Yes)、制御部11は、復号化鍵要求情報送信手段及び復号化鍵取得手段として機能し、ルートノードから教えてもらった各コンテンツ保持ノードnnのノード情報に含まれるノードIDを含む復号化鍵要求情報を登録サーバ2dに送信して、該登録サーバ2dから、各コンテンツ保持ノードnnの公開鍵を取得する(ステップS73)。1つのルートノードから、複数のコンテンツ保持ノードのノード情報を教えてもらったときは、全てのコンテンツ保持ノードの公開鍵を取得し、全てのコンテンツ保持ノードに対してコンテンツデータの配信を要求してもよく、或いは、何れか1つのコンテンツ保持ノードに対してコンテンツデータの配信を要求してもよい。なお、この際配信要求対象とされるコンテンツのコンテンツIDも共に登録サーバ2dに送信する。登録サーバ2dにて、公開鍵送信実績(表2参照)を記録するためである。
そして、公開鍵を取得できたか否かを判定し(ステップS74)、公開鍵を取得できなれば(ステップS74:No)、ステップS71に移行して、再びコンテンツ所在問合せ(検索)メッセージを送信する。ところで、ある番組は、視聴による記録や重複した記録担当割り当てにより複数のノードnnに記録されその旨が公開されるので、複数のノードnnが当該番組の所在を知る(キャッシュされる)ことなる。従って、例えば同じコンテンツ所在問合せ(検索)メッセージを受けた場合には、同じコンテンツ保持ノードのノード情報を返さないよう構成すれば、コンテンツ所在問合せ(検索)メッセージの再送信に対しては、S74で公開鍵を取得できなかったコンテンツ保持ノードとは別のコンテンツ保持ノードのノード情報を得ることができる。
なお、過去に公開鍵を取得したことがある場合には、ステップS74の処理を行なわなくてもよい。例えば、表2のユーザ情報にかかる公開鍵送信実績と表3の利用実績を比較して説明すると、ノードID「002」のノードnnは、表2の公開鍵送信実績によれば、コンテンツID「112」のコンテンツを復号化するために、公開鍵を登録サーバ2dに1回送信してもらっている。そして、表3の利用実績によれば、該ノードID「002」のノードは、コンテンツID「112」のコンテンツを4回利用していることがわかる。これは例えば、ノードID「002」のノードがコンテンツID「112」のコンテンツを検索し、取得した経験があるが、その都度コンテンツデータ自体は記憶部12から消去しているが、該コンテンツデータの保存元のノードnn(コンテンツ保持ノード)の公開鍵だけは記憶しておいたため、コンテンツデータのみを何度も(表3の例では4回)取得しているのである。
一方、公開鍵を取得できた場合(ステップS74:Yes)には、制御部11は番組情報要求手段として機能し、各コンテンツ保持ノードnnにコンテンツデータの配信を要求する(ステップS75)。そして、コンテンツデータを受信したか否かを判定し(ステップS76)、コンテンツデータを受信できなれば(ステップS76:No)、ステップS75に移行して、コンテンツデータを受信するまでコンテンツデータの配信を要求する。
ステップS72において、コンテンツデータを発見できなかった場合(ステップS72:No)、すなわち、ステップS71にて送出した各コンテンツ所在問合せメッセージのうち、コンテンツ保持ノードnnのノード情報を1つも得られなかったコンテンツ所在問合せメッセージがある場合には、当該コンテンツ所在問合せメッセージにかかるコンテンツデータの配信を、ライブラリサーバ2gに要求する(ステップS77)。例えば、ステップS71にて2つのコンテンツデータに係る2つのコンテンツ所在問合せメッセージを送出した場合、一方のコンテンツデータにかかるコンテンツ保持ノードnnのノード情報はルートノードから得られたが、他方のコンテンツデータにかかるコンテンツ保持ノードnnのノード情報はルートノードから得られなかった場合には、当該他方のコンテンツデータについてのみ、ライブラリサーバ2gに要求する。ライブラリサーバ2gの負荷軽減のためにも、コンテンツ保持ノードnnのノード情報が得られたものは、コンテンツ保持ノードnnに対して配信要求を行ない、できる限り他のノードnnから取得するよう構成することが好ましい。
そして、ライブラリサーバ2gからコンテンツデータを受信したか否かを判定し(ステップS78)、コンテンツデータを受信できなれば(ステップS78:No)、ステップS77に移行して、コンテンツデータを受信するまでライブラリサーバ2gにコンテンツデータの配信を要求する。
続いて、制御部11は番組情報取得手段として機能して、ステップS76、S78にてコンテンツデータを受信(取得)すると(ステップS76:Yes、S78:Yes)、当該受信(取得)したコンテンツデータを記憶部12に記憶して、コンテンツ視聴ログを記録する(ステップS79)。コンテンツ視聴ログは、定期的にログサーバ2eに送信するもので(上記ステップS6,7参照)、コンテンツデータの受信の都度、コンテンツ視聴回数、視聴日時等をコンテンツIDに対応付けて記録する。
そして、コンテンツデータを再生して(ステップS80)、処理を終了する。なお、コンテンツ保持ノードnnから受信(取得)(S76)したコンテンツデータについては、暗号化された状態で取得されているため、制御部11は復号化手段として機能し、ステップS73で登録サーバ2dから取得したコンテンツ保持ノードの公開鍵を用いてデコーダ部14にて復号化しながら再生処理を行なう。
なお、再生したコンテンツデータは、再生後、記憶部12に記憶された自己の秘密鍵を用いて暗号化し、記憶部12に保存するよう構成することにより、ノードnnは再生したコンテンツデータのコンテンツ保持ノードとして機能する。つまり、コンテンツIDと自己のノード情報を含むパブリッシュメッセージをルートノードに向けて送出し、公開する。これにより、人気の高い番組のコンテンツデータほど、多くのユーザにより録画されるため、多くのノードnnに保存されるので、サーバ装置のような特定の装置に負荷をかけることなく、人気の高い番組ほどアクセス(取得)しやすくなり、録画し損ねた番組の番組であっても確実に取得することができる。
[2−2.登録サーバ2dの処理]
図17は、登録サーバ2dの制御部21における処理を示すフローチャートである。なお、ここでは、登録サーバ2dが、各ノードnnに対して記録担当番組を割り当てる場合について説明する。図17に示す処理は登録サーバ2dの電源がオンとされることにより、本発明のサーバ処理プログラムが制御部21の制御に基づいて実行される。
先ず、電源がオフとされたか否かを判定し(ステップS81)、オフとされていない場合(ステップS81:No)には、ステップS82以下の処理へ移行する。
そして、制御部21は、コンテンツ配信システムSに未参加の新たなノードnnから登録要求を受けたか否かを判定し(ステップS82)、登録要求を受けていない場合(ステップS82:No)には、ステップS86へ移行し、登録要求を受けた場合(ステップS82:Yes)には、当該ノードnnからユーザ情報を受信して、ユーザ情報データベース22aに登録する(ステップS83)。
続いて、制御部21は、記録担当情報決定手段及び記録担当情報送信手段として機能し、該ノードnnが記録担当となるべき番組を決定し、記録担当情報としてノードnnに送信する(ステップS84)。このとき、受信したユーザ情報に含まれる地域情報に基づいて、記録担当情報を決定するよう構成することが好ましい。すなわち、地域情報が名古屋を示す場合、名古屋地域で受信可能な放送局の放送チャンネルを録画chとして割り当て、地域情報が東京を示す場合、東京地域で受信可能な放送局の放送チャンネルを録画chとして割り当てる。全ての放送局から放送される全ての番組が、コンテンツ配信システムSに参加する何れかのノードnnにて必ず記録されるよう、記録担当を割り振ることが好ましい。なお、記録担当番組を、各ノードnnにて決定する構成である場合には、当該ステップS84の処理は行なわない。
次に、ステップS83で受信したユーザ情報に含まれる決済情報を決済サーバ2fに送信する(ステップS85)。なお、決済情報を決済サーバ2fに送信後は、ユーザ情報データベース22aから決済情報を削除してもよい。この後、決済サーバ2fでは、決済情報に基づいてノードnnのユーザに対して所定額の利用料金を課する課金処理を行なうこととなる。そして、例えばユーザの銀行口座から当該利用料金が引き落とされ、こうして徴収された利用料金は、予め定められた基準にしたがって番組制作者や放送局側の著作者等に対して支払われることになる。なお、ここで行なわれる課金処理は、コンテンツ配信システムSへの登録時に行なわれる課金処理であって、コンテンツの利用実績に基づいて各ユーザに対して行なわれる課金処理は、後に詳述するログサーバ2eから送信される利用実績に基づいて、後に行なわれることとなる。
続いて、ノードnnから、公開鍵の要求がされたか否かを判定する(ステップS86)。判定の結果、公開鍵の要求がされていない場合(ステップS86:No)には、ステップS81に移行し、公開鍵の要求がされた場合(ステップS86:Yes)には、要求元のノードnnが正式にコンテンツ配信システムSに登録された登録済みのノードnnであるか否かを判定する(ステップS87)。具体的には、要求元のノードnnのノードIDを受信して、当該ノードIDがユーザ情報データベース22aに登録されているか否かに基づいて判定する。このとき、ノードIDだけでなく、該ノードIDと対応付けられたユーザ情報の任意の情報(例えば、電話番号等)を要求元のノードnnにて入力、送信するよう促し、当該送信された情報とユーザ情報データベース22aに登録されている情報とを照合して登録済みか否かを判定するよう構成してもよい。
そして、登録済みのノードnnである場合(ステップS87:Yes)には、制御部21は復号化鍵送信手段として機能し、要求されているコンテンツ保持ノードのノードIDに対応付けられた公開鍵をユーザ情報データベース22aから取得して、要求元のノードnnに送信し、要求元のノードnnのユーザ情報に、当該公開鍵を送信した旨を、該要求元のノードnnのノードIDに対応付けて記録し(ステップS88)、ステップS81に移行する。このとき、要求元のノードnnが取得(再生)を所望しているコンテンツのコンテンツIDに対応付けて公開鍵送信実績を記録する。表2を参照して具体的に説明すると、例えば、ノードID「103」のノードnnが、コンテンツID「121」のコンテンツの取得(再生)を所望して、該コンテンツID「121」のコンテンツデータを保存するコンテンツ保持ノードであるノードID「120」の公開鍵を要求した場合には、登録サーバ2dは、ユーザ情報データベース22aからノードID「120」の公開鍵(120)を取得してノードID「103」のノードnnに送信し、ノードID「103」に対応付けられた公開鍵送信実績のコンテンツID「101」の回数を1加算して更新することとなる。
一方、登録済みのノードnnでない場合(ステップS87:No)には、正規登録者でないため公開鍵を送信できない旨のエラーメッセージを送信し(ステップS89)、ステップS81に移行する。
そして、電源がオフとされる(ステップS81:Yes)まで、上記ステップS81〜S89の処理が繰り返し行なわれる。
また、上述した処理は電源がオンとされている間、繰り返し行なわれる処理であるが、この他に、登録サーバ2dでは、定期的にログサーバ2eから各番組の利用実績(表4参照)を受信して、(つまり、各番組の視聴率を考慮して)、新たなノードnnが記録(録画)すべき記録担当番組の割り当て、及び、各ノードnnが記録(録画)すべき記録担当番組の再割り当てを行なうよう構成する。記録担当番組の再割り当てを行なう場合、登録サーバ2dは、各ノードnnに対して新しい記録担当情報を送信し、古い(これまでの)記録担当情報と書き換えるよう指示し、これを受けたノードnnは、古い(これまでの)記録担当情報に変えて新たな記録担当情報を記憶部12に記憶するよう構成する。
[2−3.ログサーバ2eの処理]
図18は、ログサーバ2eの制御部31における処理を示すフローチャートである。図18に示す処理はログサーバ2eの電源がオンとされることにより、本発明のサーバ処理プログラムが制御部31の制御に基づいて実行される。
先ず、電源がオフとされたか否かを判定し(ステップS91)、オフとされていない場合(ステップS91:No)には、ステップS92以下の処理へ移行する。
そして、制御部31は、ノードnnから接続要求を受けたか否かを判定し(ステップS92)、接続要求を受けていない場合(ステップS92:No)には、ステップS96へ移行し、接続要求を受けた場合(ステップS92:Yes)には、該ノードnnからコンテンツ視聴ログを受信して、システム利用実績を記録する(表3、表4参照)。そして、該ノードnnの利用実績(表3参照)を決済サーバ2fに送信(報告)する(ステップS96)。この後、決済サーバ2fでは、利用実績に基づいてノードnnのユーザに対して所定額の利用料金を課する課金処理を行なうこととなる。そして、コンテンツ配信システムSへの登録時と同様に、例えばユーザの銀行口座から当該利用料金が引き落とされ、予め定められた基準にしたがって番組制作者や放送局側の著作者等に対して支払われることになる。
続いて、制御部31は、登録サーバ2dから接続要求を受けたか否かを判定し(ステップS96)、接続要求を受けていない場合(ステップS96:No)には、ステップS91へ移行し、接続要求を受けた場合(ステップS96:Yes)には、コンテンツの利用実績(表4参照)を登録サーバ2dに送信して(ステップS97)、ステップS91へ移行する。
そして、電源がオフとされる(ステップS91:Yes)まで、上記ステップS91〜S97の処理が繰り返し行なわれる。
[2−4.ライブラリサーバ2gの処理]
図19は、ライブラリサーバ2gの制御部51における処理を示すフローチャートである。図19に示す処理はライブラリサーバ2gの電源がオンとされることにより、本発明のサーバ処理プログラムが制御部51の制御に基づいて実行される。
先ず、電源がオフとされたか否かを判定し(ステップS101)、オフとされていない場合(ステップS101:No)には、ステップS102以下の処理へ移行する。
そして、制御部51は、ノードnnからコンテンツIDを受信してコンテンツデータ有無の問合せがされたか否かを判定する(ステップS102)。この問い合わせは、上述したノードnnにおける削除処理(ステップS5、S54)の処理に呼応する処理である。
判定の結果、コンテンツデータ有無の問合せがされていない場合(ステップS102:No)には、ステップS108に移行し、コンテンツデータ有無の問合せがされた場合(ステップS102:Yes)には、問い合わされたコンテンツデータを記憶しているか否かを判定する(ステップS103)。記憶している場合には、該コンテンツIDにかかるコンテンツのアップロード(送信)は不要である旨を返信し(ステップS104)、ステップS108に移行する。一方、問い合わされたコンテンツデータを記憶していない場合(ステップS103:No)には、該コンテンツIDにかかるコンテンツのアップロード(送信)を指示する(ステップS105)。
そして、コンテンツのアップロードが確実に行なわれたか否かを判定し(ステップS106)、コンテンツのアップロード(送信)が確実に行なわれなかった場合(ステップS106:No)には、ステップS105に移行して、コンテンツのアップロード(送信)が完了するまで監視し指示をし続ける。コンテンツのアップロードが確実に行なわれると(ステップS106:Yes)、アップロードされたコンテンツデータを記憶部52にコンテンツIDに対応付けて保存する(ステップS107)。なお、本実施形態ではライブラリサーバ2gに保存されるコンテンツは、暗号化されていないコンテンツデータであるものとする。従って、ライブラリサーバ2gは、各ノードnnから、当該ノードnnの公開鍵(つまりコンテンツ保持ノードの公開鍵)にて復号化されたコンテンツデータを受信することとなる。この他、例えば、各ノードnnから暗号化されたコンテンツデータを受信し、該ノードnnの公開鍵を、登録サーバ2dから取得して復号化した後に記憶部52に保存するよう構成することもできる。
続いて、ノードnnからコンテンツデータの配信要求があったか否かを判定し(ステップS108)、配信要求がされていない場合(ステップS108:No)には、ステップS101に移行し、配信要求がされた場合(ステップS108:Yes)には、要求元のノードnnが正式にコンテンツ配信システムSに登録された登録済みのノードnnであるか否かを判定する(ステップS109)。具体的には、要求元のノードnnのノードIDを登録サーバ2dに送信して、当該ノードIDがのユーザ情報データベース22aに登録されているか否かを登録サーバ2dに問い合わせて判定する。
そして、登録済みのノードnnである場合(ステップS109:Yes)には、要求されているコンテンツデータを、該要求元のノードnnに配信して(ステップS110)、ステップS101の処理に移行する。一方、登録済みのノードnnでない場合(ステップS109:No)には、正規登録者でないため公開鍵を送信できない旨のエラーメッセージを送信し(ステップS111)、ステップS101に移行する。
そして、電源がオフとされる(ステップS101:Yes)まで、上記ステップS101〜S111の処理が繰り返し行なわれる。
以上説明したように、本実施形態によれば、各放送局2a〜2cから放送される番組を受信する複数のノードnnが、記録担当分として夫々割り当てられた番組に固有のコンテンツIDに対応付けて他のノードnn間で共用可能に保存するように構成したので、各ノードnnの使用者(ユーザ)は、過去に放送された番組を、特定のサーバ等に負担をかけることなく、該番組を記録保存しているノードnnから取得して視聴することができる。
また、各ノードnnは番組を記録保存すると、該番組固有のコンテンツIDをキーとする公開メッセージをルートノードに向けて送出して公開し、かつ、他のノードnnから記録保存した番組の要求を受けると、要求された番組を該他のノードnnへ送信するよう構成したので、ある番組を所望するノード(ユーザノード)は、所望の番組のコンテンツIDを生成し、当該コンテンツIDをキーとしてコンテンツ所在問合せ(検索)メッセージを他のノードnnに向けて送出するだけで、所望の番組のコンテンツデータの所在(これを保存するコンテンツ保持ノードのノード情報)をルートノードを通じて知ることができる。
更に、各ノードnnでは、コンテンツデータを暗号化して保存し、コンテンツデータを要求されると、要求元のノードnnに暗号化したコンテンツデータを送信するようにしたので、セキュリティ性を向上させることができる。また、暗号化されたコンテンツデータを復号する公開鍵(復号化鍵の一例)は、登録サーバ2dが保存管理するよう構成したので、暗号化されたコンテンツデータを取得した際には、登録サーバ2dから暗号化されたコンテンツデータが保存されていたノードnn(コンテンツ保持ノード)の公開鍵を取得することにより、暗号化されたコンテンツデータを復号化して視聴することができる。しかも、暗号化されたコンテンツデータを復号する公開鍵は、各ノードnnに固有の鍵であり、全てのノードnnの公開鍵を知っている登録サーバ2dのみが保存管理するものであるので、あるノードnnにおいて暗号化され保存されたコンテンツデータを復号する公開鍵を他のノードnnが生成することができず、登録サーバ2dにノードnnを指定して公開鍵を取得しない限り、該ノードnnにて復号化されたデータを復号することが出来ない。したがって、安全性をより一層確保することができる。
また、登録サーバ2dが、各ノードnnが記録すべき番組を示す記録担当情報を決定し、各ノードnnに指示するため、各放送局2a〜2cから放送される番組を各ノードnnに対して、偏り無く記録担当として割り振ることができる。
更に、登録サーバ2dは、各ノードnnの地域情報に基づいて各ノードnnが記録すべき番組を示す記録担当情報を決定するため、当該各ノードnnの設置される地域を考慮して記録担当として割り振ることができる。
さらに、ログサーバ2eからコンテンツ毎の利用実績を取得するよう構成することにより、視聴率の高い番組に対しては、より多くのノードnnが記録担当となるよう記録担当情報の再割り振りを行なうよう構成することもできる。
また、上記実施形態においては、番組が2時間等である場合であっても、番組を時間単位で区切り(例えば、30分や1時間づつなど)複数のコンテンツデータとして記録保存、公開、検索の対象とするよう構成したが、番組単位で区切るよう構成することもできる。例えば、番組固有の番組のタイトルや番組固有のコード(例えば、Gコード)等を、ノードIDを生成したときと同じハッシュ関数によりハッシュ化して、コンテンツIDを生成すればよい。
この場合、記録担当情報(記録担当番組表(表1参照))も、各番組毎に区切られるよう構成すればよい。なお、24時間など、1つのノードnnにて記録保存できないような長い番組がある場合には、番組単位ではなく、上記実施形態で説明したように1つの番組を複数の録画時間に区切り、1つの番組を複数のノードnnにて複数のコンテンツデータとして記録保存し、記録担当となった各ノードnnは、「番組が放送された日時」と「放送チャンネル」(つまり、録画開始時刻と録画ch)に従ってコンテンツIDを生成して該コンテンツIDに従って公開する。そして、各ノードnnがコンテンツの検索をする際には、各ノードnnにて所望の番組のタイトルやGコードを入力すると、制御部11が、例えば、システム運営者によって登録サーバ2d等から配布され記憶部12に記憶されたカタログリスト(番組のタイトルや番組固有のコード(例えば、Gコード)等と、「番組が放送された日時」と「放送チャンネル」と、を対応付けて記憶)や、システム運営者によってweb上に公開された上記カタログリストを参照して、入力された番組のタイトルやGコードに対応する「番組が放送された日時」と「放送チャンネル」に基づいて複数のコンテンツIDを生成し、複数のコンテンツ所在問合せメッセージを送出するよう構成する。これにより、長い番組であっても、複数のノードnnで分担して確実に記録することができ、また、コンテンツを検索しようとするユーザにとっては、番組のタイトルやGコード等の入力だけで、所望の1つの番組を構成する全てのコンテンツデータを一度に検索することができる。
また、上記実施形態では、ライブラリサーバ2gには、暗号化されていないコンテンツデータを保存するよう構成したが、各ノードnnから暗号化されたコンテンツデータを受信し、暗号化されたコンテンツデータを保存するよう構成してもよい。この場合、ライブラリサーバ2gから暗号化されたコンテンツデータを取得したノードnnは、ライブラリサーバ2gに、当該暗号化されたコンテンツデータを元々保存していたノードnn(つまり、削除コンテンツデータとして削除するためにライブラリサーバ2gにアップロード(送信)してきたノードnn)のノードIDを問い合わせて、当該ノードIDを登録サーバ2dに送信して該ノードIDに係るノードnnの公開鍵を取得し、復号化するよう構成すればよい。
また、上記実施形態では、コンテンツデータを秘密鍵にて暗号化し、公開鍵を用いて復号化する非対称鍵暗号方式を利用したが、暗号化されたコンテンツデータの復号する際の処理負荷を低減すべく、コンテンツデータを対称暗号鍵方式にて暗号化し、この鍵の受け渡しをする際に非対称鍵暗号方式を利用してもよい。
更に、新しい放送チャンネルが開設された場合には、登録サーバ2dが各ノードnnに新しい放送チャンネルの情報を送信するよう構成する。これにより、各ノードnnは新しい放送チャンネル数を用いて、記録担当番組を再度決定しなおして、新しい放送チャンネルの開設にも対応することができる。
また、各ノードnnにて放送チャンネル受信の電波強度を測定し、この強度が一定レベル(所定閾値)に達しているか否かを判定して、この強度が一定レベルに達していない場合には、ノードnnは記録担当番組を変更(更新)するよう構成してもよい(受信強度判定手段、記録担当番組更新手段)。具体的には、ノードnn自身で記録担当番組を決定する場合には、電波強度が一定レベルに達していない放送チャンネルを除いて記録担当番組を決定しなおし、また、登録サーバ2dから記録担当情報が送信される場合には、電波強度が一定レベルに達していない放送チャンネルは記録することができない旨を登録サーバ2dに返答し、登録サーバ2dにて再度選びなおされた記録担当情報を取得するよう構成する。これにより、常に録画品質が一定以上に保たれたコンテンツデータを記録保存しておくことができる。
更に、上記実施形態では、決済サーバ2fは、ログサーバ2eから各ノードnnの利用実績(表3)の報告を受け(S96)、該利用実績に基づいて課金処理を行なうよう構成したが、登録サーバ2dにて記録される各ノードnnに公開鍵を送信した回数(公開鍵送信実績(表2))を利用して課金処理を行なったり(課金処理手段)、ログサーバ2eから報告された利用実績に基づいて課金処理を行なう際に、登録サーバ2dの公開鍵送信実績と照合することにより、誤った決済処理が行なわれないよう担保するよう構成してもよい。
また、上記実施形態では、複数のサーバを本発明のサーバ装置として機能させたが、ログサーバ2eにて行なわれるログの収集、管理処理、決済サーバ2fにて行なわれる決済処理、ライブラリサーバ2gにて行なわれる過去に放送されたコンテンツデータ(ノードnnにて削除されたコンテンツデータ)の記録保存処理を、全て登録サーバ2dにて行なうことし、当該登録サーバ2dを本発明のサーバ装置として機能させてもよい。
なお、上記説明したコンテンツ配信システムSは、ビデオオンデマンドサービスのシステムに対しても適用可能である。
また、上記実施形態においては、DHTを利用したアルゴリズムによって構築されたオーバーレイネットワーク9を前提として説明したが、本発明はこれに限定されるものではない。
本実施形態に係るコンテンツ配信システムにおける各ノード装置の接続態様の一例を示す図である。 ノードn1が保持するDHTのルーティングテーブルの一例を示す図である。 DHTのノードID空間の一例を示す概念図である。 (A)コンテンツ保持ノードから送出されたパブリッシュメッセージの流れの一例を、DHTのノードID空間にて示した概念図である。(B)ユーザノードから送出されたコンテンツ所在問合せメッセージとコンテンツデータ取得の流れの一例を、DHTのノードID空間にて示した概念図である。 ノードnnの概要構成例を示す図である。 登録サーバ2dの概要構成例を示す図である。 ログサーバ2eの概要構成例を示す図である。 決済サーバ2fの概要構成例を示す図である。 ライブラリサーバ2gの概要構成例を示す図である。 本実施形態に係るノードnnの制御部11における処理を示すフローチャートである。 ノードnnにおける「登録処理」を示すフローチャートである。 ノードnnにおける「登録処理」を示すフローチャートである。 ノードnnにおける「録画処理」を示すフローチャートである。 ノードnnにおける「削除処理」を示すフローチャートである。 ノードnnにおける「ログ送信処理」を示すフローチャートである。 ノードnnにおける「再生処理」を示すフローチャートである。 本実施形態に係る登録サーバ2dの制御部21における処理を示すフローチャートである。 本実施形態に係るログサーバ2eの制御部31における処理を示すフローチャートである。 本実施形態に係るライブラリサーバ2gの制御部51における処理を示すフローチャートである。
符号の説明
nn ノード
2a、2b、2c 放送局
2d 登録サーバ
2e ログサーバ
2f 決済サーバ
2g ライブラリサーバ
8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
19 エンコーダ部
19a 通信部
19b 受信部
19c 入力部
19d バス
21 制御部
22 記憶部
22a ユーザ情報データベース
23 通信部
24 バス
31、41、51 制御部
32、42、52 記憶部
33、43、53 通信部
34、44、54 バス
S コンテンツ配信システム

Claims (15)

  1. ネットワークを介して互いに通信可能な複数のノード装置と、番組情報を放送する少なくとも一以上の放送局と、を備えた情報配信システムに含まれる前記ノード装置であって、
    各前記放送局から放送された番組情報を受信する番組情報受信手段と、
    前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、当該番組情報に固有の識別情報と対応付けて、前記複数のノード装置間で共用可能に保存する番組情報保存手段と、
    を有することを特徴とするノード装置。
  2. 請求項1に記載のノード装置であって、
    前記複数のノード装置間で共用可能とすべく、前記保存された番組情報に固有の前記識別情報を含む公開メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する公開メッセージ送出手段と、
    他の前記ノード装置から保存した前記番組情報の要求を受けると、要求された番組情報を要求元の前記他のノード装置へ送信する番組情報送信手段と、
    を有することを特徴とするノード装置。
  3. 請求項2に記載のノード装置であって、
    当該ノード装置に固有の暗号化鍵を記憶する暗号化鍵記憶手段と、
    前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、前記記憶された暗号化鍵を用いて暗号化する暗号化手段と、を有し、
    前記番組情報保存手段は、暗号化した前記番組情報を前記識別情報と対応付けて保存し、
    前記番組情報送信手段は、前記暗号化された番組情報を要求元の前記他のノード装置へ送信することを特徴とするノード装置。
  4. 請求項1乃至3のいずれか一項に記載のノード装置であって、
    前記情報配信システムに参加する際に、当該情報配信システムに含まれるサーバ装置に対して、参加登録を行なう参加登録手段と、
    前記サーバ装置から、自己が記録すべき記録担当分の番組情報に係る情報を示す記録担当情報を取得する記録担当情報取得手段と、を有し、
    前記番組情報保存手段は、前記受信した番組情報のうち、前記記録担当情報に基づいて記録担当分として割り当てられた番組情報を保存することを特徴とするノード装置。
  5. 請求項4に記載のノード装置であって、
    前記参加登録手段は、前記サーバ装置に対して、当該ノード装置が設置される地域を示す地域情報を送信して参加登録を行ない、
    前記記録担当情報取得手段は、前記サーバ装置から、前記地域情報に基づいて決定された前記記録担当情報を取得することを特徴とするノード装置。
  6. 請求項4又は5に記載のノード装置であって、
    前記参加登録手段は、前記暗号化鍵によって暗号化された情報を復号化するための復号化鍵を、前記サーバ装置に送信する復号化鍵送信手段を有することを特徴とするノード装置。
  7. 請求項6に記載のノード装置であって、
    過去に何れかの前記放送局から放送された前記番組情報の取得を望む場合には、当該番組情報に固有の前記識別情報を含む検索メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する検索メッセージ送出手段と、
    前記番組情報の所在を管理するノード装置から、当該番組情報を記録しているノード装置を示すノード情報を取得するノード情報取得手段と、
    前記ノード情報に基づいて、前記番組情報を記録しているノード装置に対して当該番組情報の送信を要求する番組情報要求手段と、
    前記番組情報を記録しているノード装置から、前記番組情報要求手段にて要求した番組情報であって、暗号化された前記番組情報を取得する番組情報取得手段と、
    前記暗号化された番組情報を復号化するための前記復号化鍵を要求すべく復号化鍵要求情報を前記サーバ装置に送信する復号化鍵要求情報送信手段と、
    前記復号化鍵を前記サーバ装置から取得する復号化鍵取得手段と、
    前記取得した復号化鍵を用いて、前記暗号化された番組情報を復号化する復号化手段と、
    を有することを特徴とするノード装置。
  8. 請求項1乃至7のいずれか一項に記載のノード装置であって、
    記録担当分として割り当てられた番組情報の受信強度を測定し、該受信強度が所定閾値に達しているか否かを判定する受信強度判定手段と、
    判定の結果、受信強度が所定閾値に達していない場合には、該番組情報を放送している前記放送局を除く他の前記放送局から放送される番組情報を新たな記録担当の番組情報として更新する記録担当番組更新手段と、
    を有することを特徴とするノード装置。
  9. コンピュータを、請求項1乃至8の何れか一項に記載のノード装置として機能させることを特徴とする処理プログラム。
  10. ネットワークを介して互いに通信可能な複数のノード装置と、番組情報を放送する少なくとも一以上の放送局と、前記複数のノード装置の参加登録を管理するサーバ装置と、を備えた情報配信システムであって、
    各前記ノード装置は、
    各前記放送局から放送された番組情報を受信する番組情報受信手段と、
    前記サーバ装置に対して、参加登録を行なう参加登録手段と、
    前記サーバ装置から、自己が記録すべき記録担当分の番組情報に係る情報を取得する記録担当情報を取得する記録担当情報取得手段と、
    前記受信した番組情報のうち、前記記録担当情報に基づいて、記録担当分として割り当てられた番組情報を、当該番組情報に固有の識別情報と対応付けて、前記複数のノード装置間で共用可能に保存する番組情報保存手段と、を有し、
    前記サーバ装置は、
    前記ノード装置から参加登録を受けると、当該ノード装置が記録担当となるべき番組情報に係る情報を示す前記記録担当情報を決定する記録担当情報決定手段と、
    前記決定された記録担当情報を前記ノード装置に送信する記録担当情報送信手段と、
    を有することを特徴とする情報配信システム。
  11. 請求項10に記載の情報配信システムであって、
    前記ノード装置の前記参加登録手段は、前記サーバ装置に対して、当該ノード装置が設置される地域を示す地域情報を送信して参加登録を行ない、
    前記サーバ装置の前記記録担当情報決定手段は、前記ノード装置から前記地域情報を受信して参加登録を受けると、前記記録担当情報を前記地域情報に基づいて決定することを特徴とする情報配信システム。
  12. 請求項10又は11に記載の情報配信システムであって、
    各前記ノード装置は、
    当該ノード装置に固有の暗号化鍵を記憶する暗号化鍵記憶手段と、
    前記受信した番組情報のうち、記録担当分として割り当てられた番組情報を、前記記憶された暗号化鍵を用いて暗号化する暗号化手段と、を有し、かつ、
    前記番組情報保存手段は、暗号化した前記番組情報を前記識別情報と対応付けて保存し、かつ、
    前記複数のノード装置間で共用可能とすべく、前記保存された番組情報に固有の前記識別情報を含む公開メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する公開メッセージ送出手段と、
    他の前記ノード装置から保存した前記番組情報の要求を受けると、前記要求された番組情報であって、暗号化された番組情報を要求元の前記他のノード装置へ送信する番組情報送信手段と、を有し、更に、
    前記参加登録手段は、前記暗号化鍵によって暗号化された情報を復号化するための復号化鍵を、前記サーバ装置に送信する復号化鍵送信手段を有し、
    前記サーバ装置は、
    前記ノード装置から、当該ノード装置を示すノード情報と前記復号化鍵を受信すると、当該ノード情報と当該復号化鍵を対応付けて記憶する復号化鍵記憶手段と、
    何れかの前記ノード装置から、前記番組情報を復号化するための前記復号化鍵を要求する復号化鍵要求情報を受信すると、受信した前記復号化鍵要求情報に含まれる前記ノード情報と対応付けて前記復号化鍵記憶手段に記憶された復号化鍵を、当該復号化鍵の要求元のノード装置に送信する復号化鍵送信手段と、を有し、
    前記番組情報の取得を望むノード装置は、
    当該番組情報に固有の前記識別情報を含む検索メッセージを、当該番組情報の所在を管理するノード装置へ向けて送出する検索メッセージ送出手段と、
    前記番組情報の所在を管理するノード装置から、当該番組情報を記録しているノード装置を示すノード情報を取得するノード情報取得手段と、
    前記取得したノード情報に基づいて、前記番組情報を記録しているノード装置に対して当該番組情報の送信を要求する番組情報要求手段と、
    前記番組情報を記録しているノード装置から、前記番組情報要求手段にて要求した番組情報であって、暗号化された前記番組情報を取得する番組情報取得手段と、
    前記暗号化された番組情報を復号化するための前記復号化鍵を要求すべく、前記番組情報を記録しているノード装置を示す前記ノード情報を含む前記復号化鍵要求情報を前記サーバ装置に送信する復号化鍵要求情報送信手段と、
    前記復号化鍵を前記サーバ装置から取得する復号化鍵取得手段と、
    前記取得した復号化鍵を用いて、前記暗号化された番組情報を復号化する復号化手段と、
    を有することを特徴とする情報配信システム。
  13. 請求項10乃至12のいずれか一項に記載の情報配信システムにおいて、
    前記サーバ装置は、
    前記各ノード装置の使用者毎の使用者情報を記憶、管理する使用者情報管理手段と、
    前記復号化鍵要求情報を送信したノード装置の使用者に対して課金処理を行なう課金処理手段と、
    を有することを特徴とする情報配信システム。
  14. 請求項10乃至13のいずれか一項に記載の情報配信システムにおいて、
    全ての前記放送局から放送された全ての前記番組情報が、前記複数のノード装置で分担され、何れかの前記ノード装置にて保存されることを特徴とする情報配信システム。
  15. 1又は複数のコンピュータを、請求項10乃至14の何れか一項に記載のサーバ装置として機能させることを特徴とするサーバ処理プログラム。
JP2006236476A 2006-08-31 2006-08-31 ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム Pending JP2008059351A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006236476A JP2008059351A (ja) 2006-08-31 2006-08-31 ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム
PCT/JP2007/066301 WO2008026489A1 (fr) 2006-08-31 2007-08-22 Dispositif nodal, support d'enregistrement contenant un programme de traitement, systeme de distribution d'informations et support d'enregistrement contenant un programme de traitement pour serveur
US12/292,994 US20090094647A1 (en) 2006-08-31 2008-12-02 Node device, recording medium recording process program, information delivery system and recording medium recording server processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006236476A JP2008059351A (ja) 2006-08-31 2006-08-31 ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム

Publications (1)

Publication Number Publication Date
JP2008059351A true JP2008059351A (ja) 2008-03-13

Family

ID=39135772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006236476A Pending JP2008059351A (ja) 2006-08-31 2006-08-31 ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム

Country Status (3)

Country Link
US (1) US20090094647A1 (ja)
JP (1) JP2008059351A (ja)
WO (1) WO2008026489A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009290478A (ja) * 2008-05-28 2009-12-10 Brother Ind Ltd 情報配信システム及び同システムにおける端末装置並びに情報処理方法
JP2010231576A (ja) * 2009-03-27 2010-10-14 Brother Ind Ltd ノード装置、ノード処理プログラム及びコンテンツ保存方法
JP2010238143A (ja) * 2009-03-31 2010-10-21 Brother Ind Ltd ノード装置、ノード処理プログラム及び検索方法
JP2011142771A (ja) * 2010-01-08 2011-07-21 Yokogawa Electric Corp 電力パケットシステム
JP2012175535A (ja) * 2011-02-23 2012-09-10 Brother Ind Ltd ノード装置、情報処理方法及びプログラム
JP2012524307A (ja) * 2009-04-17 2012-10-11 中国科学院声学研究所 地理位置情報に基づいてコーディングするcdnネットワークシステム及びデータを配信する方法
US8479231B2 (en) 2008-09-29 2013-07-02 Panasonic Corporation Program receiving apparatus, program transmission/reception system, program reception method, program, and recording medium
JP2013535877A (ja) * 2010-07-09 2013-09-12 スリング メディア,インク. 分散ネットワークからコンテンツの除去を制御される方法及び装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387927B2 (en) 2010-01-15 2019-08-20 Dell Products L.P. System and method for entitling digital assets
US9256899B2 (en) 2010-01-15 2016-02-09 Dell Products, L.P. System and method for separation of software purchase from fulfillment
US9235399B2 (en) 2010-01-15 2016-01-12 Dell Products L.P. System and method for manufacturing and personalizing computing devices
US8170783B2 (en) 2010-03-16 2012-05-01 Dell Products L.P. System and method for handling software activation in entitlement
MX2013008044A (es) * 2011-03-01 2013-08-29 Ericsson Telefon Ab L M Metodos y aparatos para reiniciar medios pausados.
JP5754405B2 (ja) * 2012-03-30 2015-07-29 ブラザー工業株式会社 通信システム、情報処理装置、プログラム及び情報処理方法
US9779219B2 (en) 2012-08-09 2017-10-03 Dell Products L.P. Method and system for late binding of option features associated with a device using at least in part license and unique ID information
US20140059236A1 (en) * 2012-08-27 2014-02-27 Yuan-Chang Lo Process for Peer-To-Peer Download of Software Installer
US9313545B2 (en) 2013-08-27 2016-04-12 At&T Mobility Ii Llc Method and apparatus for managing viewing of media content

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004295652A (ja) * 2003-03-27 2004-10-21 Seiko Epson Corp 分散処理システム、情報処理装置、分散処理支援装置、及び制御プログラム
JP2005006041A (ja) * 2003-06-12 2005-01-06 Hitachi Ltd 予約録画方法および予約録画装置
JP2005250529A (ja) * 2004-03-01 2005-09-15 Sony Corp 放送番組コンテンツ管理配信システムおよび方法
JP2006195744A (ja) * 2005-01-13 2006-07-27 Brother Ind Ltd 情報配信システム、配信要求プログラム、転送プログラム、配信プログラム等

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL148080A0 (en) * 2001-02-13 2002-09-12 Hosen Eliav System for distributing video and content on demand
WO2003015377A1 (en) * 2001-08-04 2003-02-20 Kontiki, Inc. Method and apparatus for facilitating distributed delivery of content across a computer network
US7814022B2 (en) * 2005-06-10 2010-10-12 Aniruddha Gupte Enhanced media method and apparatus for use in digital distribution system
US20080066112A1 (en) * 2006-08-24 2008-03-13 Byron Lewis Bailey Method for implementing on-demand pvr peer-to-peer media sharing with content restraint

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004295652A (ja) * 2003-03-27 2004-10-21 Seiko Epson Corp 分散処理システム、情報処理装置、分散処理支援装置、及び制御プログラム
JP2005006041A (ja) * 2003-06-12 2005-01-06 Hitachi Ltd 予約録画方法および予約録画装置
JP2005250529A (ja) * 2004-03-01 2005-09-15 Sony Corp 放送番組コンテンツ管理配信システムおよび方法
JP2006195744A (ja) * 2005-01-13 2006-07-27 Brother Ind Ltd 情報配信システム、配信要求プログラム、転送プログラム、配信プログラム等

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009290478A (ja) * 2008-05-28 2009-12-10 Brother Ind Ltd 情報配信システム及び同システムにおける端末装置並びに情報処理方法
US8479231B2 (en) 2008-09-29 2013-07-02 Panasonic Corporation Program receiving apparatus, program transmission/reception system, program reception method, program, and recording medium
JP2010231576A (ja) * 2009-03-27 2010-10-14 Brother Ind Ltd ノード装置、ノード処理プログラム及びコンテンツ保存方法
JP2010238143A (ja) * 2009-03-31 2010-10-21 Brother Ind Ltd ノード装置、ノード処理プログラム及び検索方法
JP2012524307A (ja) * 2009-04-17 2012-10-11 中国科学院声学研究所 地理位置情報に基づいてコーディングするcdnネットワークシステム及びデータを配信する方法
JP2011142771A (ja) * 2010-01-08 2011-07-21 Yokogawa Electric Corp 電力パケットシステム
JP2013535877A (ja) * 2010-07-09 2013-09-12 スリング メディア,インク. 分散ネットワークからコンテンツの除去を制御される方法及び装置
JP2012175535A (ja) * 2011-02-23 2012-09-10 Brother Ind Ltd ノード装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
US20090094647A1 (en) 2009-04-09
WO2008026489A1 (fr) 2008-03-06

Similar Documents

Publication Publication Date Title
JP2008059351A (ja) ノード装置、処理プログラム、情報配信システム及びサーバ処理プログラム
JP4692297B2 (ja) 情報配信システム、情報配信方法、ノード装置、ノード処理プログラム
JP5337266B2 (ja) マルチメディアコンテンツの安全な転送およびプレイバックのための方法および装置
US7769171B2 (en) Method for transmitting digital data in a local network
CN101427316B (zh) 组播多媒体内容分发系统
US8239446B2 (en) Content distribution architecture
US8134937B2 (en) Distributed content storage system, content storage method, node device, and node processing program
JP4674608B2 (ja) ノード装置及び情報処理方法並びにノード装置用プログラム
US20100268955A1 (en) Content transmission device and content reception device
US20100023593A1 (en) Distributed storage system, node device, recording medium in which node processing program is recorded, and address information change notifying method
US8225411B2 (en) Contents management system, and contents management device
GB2415525A (en) Transferring protected content between playback devices
US8654678B2 (en) Node device, recording medium where storage control program is recorded, and information storing method
JP5059616B2 (ja) マルチメディアコンテンツの安全な転送およびプレイバックのための方法および装置
KR20060097514A (ko) 로컬 서버에서 브로드캐스트 암호화 방식에 따라 암호화된컨텐트를 제공하는 방법 및 장치
JP2008033968A (ja) 廃棄メカニズム上で外部デバイスまたはサービスを利用する復号化方法及び装置、そのための復号化支援方法及び装置
JP2002312225A (ja) データ管理装置及びデータ管理方法
JP5532649B2 (ja) ノード装置、ノード処理プログラム及びコンテンツ保存方法
KR100798508B1 (ko) 네트워크를 이용한 멀티미디어 컨텐츠 공유 서비스 방법 및그 시스템
KR20090091005A (ko) 복사 제한 관리 장치 및 그 방법과 콘텐츠 축적 장치
JP2004260638A (ja) 受信機および放送受信システム
JP4605479B2 (ja) 送信装置および送信方法、受信装置および受信方法、並びに送受信システムおよび送受信方法
US20110246628A1 (en) Information communication system, information processing apparatus, information communication method and computer readable storage medium
JP2008078996A (ja) ツリー型コンテンツ配信システム、コンテンツ配信方法、ノード装置、及びノード処理プログラム
RU2704725C1 (ru) Способ предоставления медиаконтента и система сервиса для его осуществления

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110426

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110906