JP2008210295A - Content distribution system, its information processing method, content administration apparatus, and its program - Google Patents
Content distribution system, its information processing method, content administration apparatus, and its program Download PDFInfo
- Publication number
- JP2008210295A JP2008210295A JP2007048106A JP2007048106A JP2008210295A JP 2008210295 A JP2008210295 A JP 2008210295A JP 2007048106 A JP2007048106 A JP 2007048106A JP 2007048106 A JP2007048106 A JP 2007048106A JP 2008210295 A JP2008210295 A JP 2008210295A
- Authority
- JP
- Japan
- Prior art keywords
- content
- terminal device
- content data
- data
- terminal
- 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
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本発明は、ネットワークを介して互いに接続された複数の端末装置を備えたピアツーピア(Peer to Peer(P2P))型のコンテンツ配信システムの技術分野に関する。 The present invention relates to a technical field of a peer-to-peer (P2P) type content distribution system including a plurality of terminal devices connected to each other via a network.
近年、インターネットなどのネットワークを介して、音楽、映画、トーク番組などのコンテンツデータを配信する、いわゆるコンテンツ配信システムの研究が盛んである。 2. Description of the Related Art In recent years, research on so-called content distribution systems that distribute content data such as music, movies, and talk programs via a network such as the Internet has been actively conducted.
そして、分散ハッシュテーブル(DHT(Distributed Hash Table))を利用して論理的にオーバーレイネットワークを構築することにより、コンテンデータなどの情報を効率的に分散配置して負荷分散を図る技術が提案されている。 Then, a technology has been proposed in which information such as content data is efficiently distributed and distributed to load balance by logically constructing an overlay network using a distributed hash table (DHT). Yes.
この種のコンテンツ配信システムにおいては、各端末装置が当該オーバーレイネットワークに参加している全ての端末装置へのリンク情報(例えば、IPアドレス)を認識しているわけではなく、参加の際などに得られる一部の端末装置へのリンク情報だけを保持しており、かかるリンク情報に基づき、コンテンツデータの検索等を行うようになっている(特許文献1参照)。
ところで、このようなコンテンツ配信システムにおいては、端末装置間で送受信するコンテンツデータが増加したとき、端末装置全体でコンテンツデータを保持する記憶容量を増加させる必要がある。 By the way, in such a content distribution system, when the content data transmitted / received between the terminal devices increases, it is necessary to increase the storage capacity for holding the content data in the entire terminal device.
しかしながら、これらの端末装置の記憶容量に制限がある場合、コンテンツ配信システムにおけるコンテンツデータの需要量に対して、供給量が不足してしまうことになる。このように供給量が不足すると、端末装置間でコンテンツデータの送受信ができない事態が発生する。 However, when the storage capacity of these terminal devices is limited, the supply amount is insufficient with respect to the demand amount of the content data in the content distribution system. If the supply amount is insufficient, content data cannot be transmitted / received between the terminal devices.
そこで、需要量に対する供給量を満たすために、コンテンツ供給装置を設ける方法がある。すなわち、所望のコンテンツデータを端末装置間の送受信によっては取得できない端末装置からの要求に応じて、コンテンツデータをその要求を行った端末装置へ送信するコンテンツ供給装置を設けるのである。 Therefore, there is a method of providing a content supply device in order to satisfy the supply amount with respect to the demand amount. In other words, in response to a request from a terminal device that cannot acquire desired content data by transmission / reception between the terminal devices, a content supply device is provided that transmits the content data to the terminal device that made the request.
ところが、このようにコンテンツ供給装置を配置した場合に、コンテンツ配信システムにおいてさらに供給能力が不足しまうと、コンテンツ供給装置への負荷集中が発生してしまう。このように、上述のコンテンツ配信システムにおいては、供給できるコンテンツデータの数が制限されることになる。すなわち、コンテンツデータの数に対して端末装置の数が少なくなった場合、コンテンツデータの需要量に対して供給量が少なくなり、コンテンツ供給装置を配置した場合であってもコンテンツデータを供給できない可能性がある。 However, when the content supply apparatus is arranged in this way, if the supply capability is further insufficient in the content distribution system, load concentration on the content supply apparatus occurs. Thus, in the above-described content distribution system, the number of content data that can be supplied is limited. In other words, when the number of terminal devices decreases with respect to the number of content data, the supply amount decreases with respect to the demand amount of the content data, and even if the content supply device is arranged, the content data cannot be supplied There is sex.
本発明は、以上の不都合に鑑みてなされたものであり、ネットワークを介して互いに接続された複数の端末装置を備えたピアツーピア型のコンテンツ配信システムにおいて、端末装置間で送受信されるコンテンツデータの数を適切に調整することができるコンテンツ配信システム及び方法等を提供することを課題とする。 The present invention has been made in view of the above disadvantages, and in a peer-to-peer type content distribution system including a plurality of terminal devices connected to each other via a network, the number of content data transmitted and received between the terminal devices. It is an object of the present invention to provide a content distribution system, method, and the like that can appropriately adjust the content.
上記課題を解決するために、請求項1に記載の発明は、ネットワーク上に配置された複数の端末装置から構成され、前記端末装置間でコンテンツデータの送受信を行い、所望のコンテンツデータを他の端末装置から取得できない端末装置からの要求に応じて、前記コンテンツデータを前記ネットワークを介して前記要求を行った端末装置へ送信するコンテンツ供給装置を有するコンテンツ配信システムにおけるコンテンツを管理するコンテンツ管理装置において、前記コンテンツ供給装置の負荷状態を取得する負荷状態取得手段と、前記負荷状態取得手段によって取得した負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するコンテンツ数調整手段とを備えることとした。
In order to solve the above-mentioned problem, the invention described in
また、請求項2に記載の発明は、請求項1に記載の発明において、前記負荷状態取得手段は、前記コンテンツ供給装置における所定期間当たりの平均負荷状態を所定期間毎に演算することによって、前記コンテンツ供給装置の負荷状態を取得することとした。
The invention according to
また、請求項3に記載の発明は、請求項2に記載の発明において、前記コンテンツ数調整手段は、前記コンテンツ供給装置における前記平均負荷状態の変化に応じて、前記所定期間毎に前記端末装置間で送受信可能なコンテンツデータの数を増減させることとした。
The invention according to
また、請求項4に記載の発明は、請求項2に記載の発明において、前記コンテンツ数調整手段は、前記コンテンツ供給装置における前記平均負荷状態が第1の負荷状態を超えていると判定すると、前記端末装置間で送受信可能なコンテンツデータの数を所定数減少させることとした。 According to a fourth aspect of the present invention, in the second aspect of the invention, when the content number adjusting unit determines that the average load state in the content supply device exceeds the first load state, The number of content data that can be transmitted and received between the terminal devices is reduced by a predetermined number.
また、請求項5に記載の発明は、請求項2又は請求項4に記載の発明において、前記コンテンツ数調整手段は、前記コンテンツ供給装置における前記平均負荷状態が第2の負荷状態よりも低い負荷状態であると判定すると、前記端末装置間で送受信可能なコンテンツデータの数を所定数増加させることとした。
Further, the invention according to
また、請求項6に記載の発明は、請求項5に記載の発明において、前記コンテンツ数調整手段は、当該コンテンツ配信システムを構成する端末装置の数に応じて、前記第2の負荷状態を設定することとした。
The invention according to
また、請求項7に記載の発明は、請求項2に記載の発明において、前記コンテンツ供給装置の負荷状態と前記コンテンツデータの数とを関連付けたテーブルを有し、前記コンテンツ数調整手段は、前記テーブルに基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更することとした。
The invention according to
また、請求項8に記載の発明は、請求項1〜7のいずれか一項に記載の発明において、前記端末装置間で送受信可能なコンテンツデータのリストであって、端末装置間でコンテンツデータの送受信を行うために前記端末装置で用いられるコンテンツリストを前記端末装置に提供するコンテンツリスト提供手段を備え、前記コンテンツ数調整手段は、前記コンテンツリストを変更することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行うこととした。
The invention according to claim 8 is a list of content data that can be transmitted and received between the terminal devices according to any one of
また、請求項9に記載の発明は、請求項1〜7のいずれか一項に記載の発明において、前記コンテンツデータを前記端末装置で再生するためのキー情報を、前記端末装置からの要求に応じて送信するキー情報提供手段を備え、前記コンテンツ数調整手段は、前記キー情報の送信を制限することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行うこととした。
The invention according to claim 9 is the invention according to any one of
また、請求項10に記載の発明は、コンピュータを、請求項1〜9のいずれか一項に記載の各手段として機能させるためのプログラムとした。
The invention described in
また、請求項11に記載の発明は、ネットワーク上に配置された複数の端末装置から構成され、前記端末装置間でコンテンツデータの送受信を行うコンテンツ配信システムにおいて、所望のコンテンツデータを他の端末装置から取得できない端末装置からの要求に応じて、前記コンテンツデータを前記ネットワークを介して前記要求を行った端末装置へ送信するコンテンツ供給手段を備えるコンテンツ供給装置と、前記コンテンツ供給手段の負荷状態を取得する負荷取得検出手段を備え、前記負荷状態取得手段によって取得した負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するコンテンツ管理装置とを備えることとした。 According to an eleventh aspect of the present invention, there is provided a content distribution system that includes a plurality of terminal devices arranged on a network and transmits / receives content data between the terminal devices. In response to a request from a terminal device that cannot be acquired from the content device, a content supply device including a content supply unit that transmits the content data to the terminal device that has made the request via the network, and obtains a load state of the content supply unit And a content management device that changes the number of content data that can be transmitted and received between the terminal devices based on the load state acquired by the load state acquisition unit.
また、請求項12に記載の発明は、請求項11に記載の発明において、前記コンテンツ管理装置は、前記端末装置間でコンテンツデータの送受信可能なコンテンツデータのリストであって、端末装置間でコンテンツデータの送受信を行うために前記端末装置で用いられるコンテンツリストを前記端末装置に提供するコンテンツリスト提供手段を備え、前記コンテンツリストを変更することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行うこととした。
The invention according to
また、請求項13に記載の発明は、請求項11に記載の発明において、前記コンテンツ管理装置は、前記コンテンツデータを前記端末装置で再生するための再生キー情報を、前記端末装置からの要求に応じて送信するキー情報提供手段を備え、前記キー情報の送信を制限することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行うこととした。
Further, in the invention described in
また、請求項14に記載の発明は、ネットワーク上に配置された複数の端末装置から構成され、前記端末装置間でコンテンツデータの送受信を行うコンテンツ配信システムであって、所望のコンテンツデータを他の端末装置から取得できない端末装置からの要求に応じて、前記コンテンツデータを前記ネットワークを介して前記要求を行った端末装置へ送信するコンテンツ供給装置を備えたコンテンツ配信システムおける情報処理方法において、前記コンテンツ供給装置の負荷状態を取得するステップと、前記取得したコンテンツ供給装置の負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するステップとを有することとした。 The invention according to claim 14 is a content distribution system comprising a plurality of terminal devices arranged on a network and transmitting / receiving content data between the terminal devices. In the information processing method in a content distribution system including a content supply device that transmits the content data to the terminal device that has made the request via the network in response to a request from the terminal device that cannot be acquired from the terminal device. The method includes the steps of acquiring the load state of the supply device and changing the number of content data that can be transmitted and received between the terminal devices based on the acquired load state of the content supply device.
請求項1,10,11,14に記載の発明によれば、コンテンツ供給装置の負荷状態から、端末装置間で送受信可能なコンテンツデータの数を変更するので、コンテンツ供給装置のサーバ負荷状態を低減させることができる。 According to the first, tenth, eleventh and fourteenth aspects of the present invention, since the number of content data that can be transmitted and received between terminal devices is changed from the load state of the content supply device, the server load state of the content supply device is reduced. Can be made.
また、請求項2に記載の発明によれば、コンテンツ供給装置における所定期間当たりの平均負荷状態をコンテンツ供給装置の負荷状態として取得するので、コンテンツ供給装置における細かい負荷状態の変動に追従することなく、端末装置間で送受信可能なコンテンツデータの数の変更処理が煩雑になることを防止することができる。 According to the second aspect of the present invention, since the average load state per predetermined period in the content supply apparatus is acquired as the load state of the content supply apparatus, it is possible to follow the fine load state fluctuation in the content supply apparatus. Thus, it is possible to prevent the change processing of the number of content data that can be transmitted and received between the terminal devices from becoming complicated.
また、請求項3に記載の発明によれば、コンテンツ供給装置における平均負荷状態の変化に応じて、所定期間毎に端末装置間で送受信可能なコンテンツデータの数を増減させるので、コンテンツ供給装置のサーバ負荷状態を一定範囲に収めることができる。 According to the third aspect of the present invention, the number of content data that can be transmitted / received between the terminal devices is increased / decreased every predetermined period according to the change in the average load state in the content supply device. The server load state can be kept within a certain range.
また、請求項4に記載の発明によれば、コンテンツ供給装置における平均負荷状態が第1の負荷状態を超えていると判定すると、端末装置間で送受信可能なコンテンツデータの数を所定数減少させるので、コンテンツ供給装置が過負荷によりダウンするなどの問題を事前に対応することができる。 According to the fourth aspect of the present invention, when it is determined that the average load state in the content supply device exceeds the first load state, the number of content data that can be transmitted and received between the terminal devices is decreased by a predetermined number. Therefore, it is possible to cope in advance with problems such as the content supply device going down due to overload.
また、請求項5に記載の発明によれば、コンテンツ供給装置における平均負荷状態が第2の負荷状態よりも低い負荷状態であると判定すると、端末装置間で送受信可能なコンテンツデータの数を所定数増加させるので、サーバ負荷状態が大きくなったために減少させたコンテンツデータの数を所定数元に戻すことができる。 According to the fifth aspect of the present invention, when it is determined that the average load state in the content supply device is a load state lower than the second load state, the number of content data that can be transmitted and received between the terminal devices is predetermined. Since the number is increased, the number of content data decreased due to the increased server load state can be returned to a predetermined number.
また、請求項6に記載の発明によれば、コンテンツ配信システムを構成する端末装置の数に応じて、第2の負荷状態を設定するので、例えば、コンテンツ配信システムを構成する端末装置の数に応じて、上述の下限値を設定するようにすれば、第2の負荷状態を適切に設定することができる。すなわち、偶然にコンテンツ供給装置のサーバ負荷が下がっているようなときであっても、コンテンツ配信システムを構成する端末装置の数が多い場合には、端末装置1間で送受信可能なコンテンツデータの数を変更せずに済む。
According to the invention described in
また、請求項7,12に記載の発明によれば、コンテンツリストに掲載するコンテンツデータの数を増減させることによって、端末装置間で送受信可能なコンテンツデータを増減させるため、処理が複雑にならずに済む。 According to the seventh and twelfth aspects of the present invention, since the content data that can be transmitted / received between the terminal devices is increased / decreased by increasing / decreasing the number of content data to be posted in the content list, the processing is not complicated. It will end.
また、請求項8,13に記載の発明によれば、コンテンツキーの送信を拒否する割合を増減させることによって、端末装置間で送受信するコンテンツデータの数を増減させるため、処理が複雑にならずに済む。
Further, according to the inventions of
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、配信する情報を音楽データや映像データなどのコンテンツデータとするコンテンツ配信システムに対して本発明を適用した場合の実施形態である。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described with reference to the drawings. The embodiment described below is an embodiment when the present invention is applied to a content distribution system in which information to be distributed is content data such as music data and video data.
[1.第1実施形態]
[1.1.コンテンツ配信システムSの構成等]
まず始めに、図1を参照して、本実施形態に係るコンテンツ配信システムSの概要構成等について説明する。図1は、本実施形態に係るコンテンツ配信システムSにおける各端末装置の接続態様の一例を示す図である。このコンテンツ配信システムSは、ネットワーク上に分散配置された複数の端末装置から構成され、端末装置間でコンテンツデータの送受信を行うものである。
[1. First Embodiment]
[1.1. Configuration of content distribution system S]
First, a schematic configuration and the like of the content distribution system S according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a connection mode of each terminal device in the content distribution system S according to the present embodiment. This content distribution system S is composed of a plurality of terminal devices distributed on a network, and transmits and receives content data between the terminal devices.
図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4、DSL(Digital Subscriber Line)回線事業者(の装置)5、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界のネットワーク)8が構築されている。
As shown in the
コンテンツ配信システムSは、図1の上部枠100内に示すように、ネットワーク8を介して相互に接続された複数の端末装置1a,1b,1c・・・1x,1y,1z・・・を備えて構成され、ピアツーピア(P2P)方式のネットワークシステムとなっている。各端末装置1a,1b,1c・・・1x,1y,1z・・には、端末装置を示す情報としての固有の製造番号(例えば、MACアドレス)及びIP(Internet Protocol)アドレスが割り当てられている。なお、製造番号及びIPアドレスは、複数の端末装置間で重複しないものである。また、以下の説明において、端末装置1a,1b,1c・・・1x,1y,1z・・・のうち何れかの端末装置又は全ての端末装置を示す場合には、便宜上、端末装置1という場合がある。
As shown in the
[1.1.1.DHTの概要]
以下に、本実施形態に係る分散ハッシュテーブル(以下、「DHT」(Distributed Hash Table)と呼ぶ。)を利用したアルゴリズムについて説明する。
[1.1.1. Outline of DHT]
The algorithm using the distributed hash table (hereinafter referred to as “DHT” (Distributed Hash Table)) according to the present embodiment will be described below.
上述したコンテンツ配信システムSにおいて、当該端末装置1同士が、互いに情報をやり取りする際には、お互いの所在情報であるIPアドレスを知っていなければならない。
In the content distribution system S described above, when the
例えば、コンテンツを互いに共有するシステムにおいては、ネットワーク8に参加している各端末装置1が互いにネットワーク8に参加している全ての端末装置1のIPアドレスを知っておくのが単純な手法であるが、端末数が何万何十万と多数になると、その全ての端末装置1のIPアドレスを覚えておくのは現実的ではない。また、任意の端末装置1の電源が頻繁にON或いはOFFとすると、各端末装置1において記憶している当該任意の端末装置1のIPアドレスの更新が頻繁になり、運用上困難となる。
For example, in a system for sharing content with each other, it is a simple technique for each
そこで、1台の端末装置1では、ネットワーク8に参加している全ての端末装置1のうち、必要最低限の一部の端末装置1のIPアドレスだけを記憶しておき、IPアドレスを記憶していない端末装置1については、各端末装置1間で互いに情報を転送し合うことによりコンテンツを届けるシステムが考案されている。
Therefore, one
このようなシステムの一例として、DHTを利用したアルゴリズムによって、図1の上部枠100内に示すような、オーバーレイネットワーク9が構築されることになる。つまり、このオーバーレイネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するネットワークを意味する。
As an example of such a system, an overlay network 9 as shown in the
本実施形態においては、DHTを利用したアルゴリズムによって構築されたオーバーレイネットワーク9を前提としており、このオーバーレイネットワーク9上に配置された端末装置1を、コンテンツ配信システムSに参加(言い換えれば、オーバーレイネットワーク9に参加)している端末装置という。
In this embodiment, it is assumed that the overlay network 9 is constructed by an algorithm using DHT, and the
コンテンツ配信システムSに参加している各端末装置1の識別番号である端末IDとして、それぞれの端末装置1毎にユニークな番号(固有番号)を付与する。この番号は、端末装置の最大運用台数を収容できるだけのbit数を持たせる必要がある。例えば、128bitの番号とすれば、2128(2の128乗)≒340×1036(10の36乗)台の端末装置を運用できる。
As a terminal ID that is an identification number of each
より具体的には、各端末装置1の端末IDは、それぞれの端末装置1のIPアドレス或いは製造番号等の端末装置1毎に固有の値を、共通のハッシュ関数(ハッシュアルゴリズム)によりハッシュ化して得たハッシュ値であり、一つのID空間に偏りなく分散して配置されることになる。
More specifically, the terminal ID of each
このように共通のハッシュ関数によりハッシュ化されて求められた端末IDは、当該IPアドレス或いは製造番号が異なれば、同じ値になる確率が極めて低いものである。なお、ハッシュ関数については公知であるので詳しい説明を省略する。また、本実施形態では、IPアドレス(グローバルIPアドレス)を共通のハッシュ関数によりハッシュ化した値を端末IDとする。 Thus, the terminal ID obtained by hashing with a common hash function has a very low probability of having the same value if the IP address or the manufacturing number is different. Since the hash function is publicly known, detailed description thereof is omitted. In the present embodiment, a value obtained by hashing an IP address (global IP address) with a common hash function is used as a terminal ID.
また、コンテンツ配信システムSに参加している複数の端末装置1には、一の端末装置1から他の端末装置1に配信される共用情報としてのコンテンツデータ(例えば、音楽データ、映画データ、文書データ等)が分散して記憶されているが、当該コンテンツデータにも、それぞれのコンテンツデータ毎の固有の識別番号(以下、「コンテンツID」と呼ぶ。)を付与する。
Also, content data (for example, music data, movie data, documents, etc.) shared information distributed from one
そして、当該コンテンツIDは、端末IDと同様の長さ(例えば、128bit等)とし、コンテンツの名称(例えば、データファイル名)などが、上記端末IDを得るときと共通のハッシュ関数によりハッシュ化される(つまり、端末装置1のIPアドレスのハッシュ値と同一のID空間に配置される)。 The content ID has the same length as the terminal ID (for example, 128 bits), and the name of the content (for example, the data file name) is hashed by a hash function common to the terminal ID. (That is, it is arranged in the same ID space as the hash value of the IP address of the terminal device 1).
このように、各端末装置1及び各コンテンツデータに付与された端末ID及びコンテンツIDは、共通のハッシュ関数によって生成したため、図2に示すように、同一のリング状のID空間上にさほど偏ることなく、散らばって存在するものとして考えることができる。同図は32bitで端末ID及びコンテンツIDを付与し、図示したものである。図中丸点は端末IDを、四角形はコンテンツIDを示し、反時計回りでIDが増加するものとする。
As described above, since the terminal ID and the content ID assigned to each
本実施形態においては、上述のように「あるコンテンツIDを有するコンテンツデータを管理する端末装置は、そのコンテンツIDに近い端末IDを有する端末装置である」という規則を適用しており、「近い」ことの定義は、当該コンテンツIDを超えず、コンテンツIDと端末IDとの差が一番少ないものとするが、実際には、各コンテンツデータの管理を各端末装置1に割り振る際に、一貫していれば他の定義でもよい。
In the present embodiment, as described above, the rule that “a terminal device that manages content data having a certain content ID is a terminal device that has a terminal ID close to that content ID” is applied. This definition does not exceed the content ID, and the difference between the content ID and the terminal ID is the smallest. However, in reality, when the management of each content data is allocated to each
図2に示す例では、この定義に基づいて、コンテンツIDaは、当該コンテンツIDaに近い端末ID(以下、「端末IDa」と呼ぶ。)を有する端末装置1に管理され、コンテンツIDbは、当該コンテンツIDbに近い端末ID(以下、「端末IDb」と呼ぶ。)を有する端末装置1に管理され、コンテンツIDcは、当該コンテンツIDcに近い端末ID(以下、「端末IDc」と呼ぶ。)を有する端末装置1に管理される。
In the example shown in FIG. 2, based on this definition, the content IDa is managed by the
ここで、「管理」とは、コンテンツデータを保持していることを意味するのではなく、「コンテンツデータが何れの端末装置1に保持されているかを知っている」ことを意味する。すなわち、コンテンツ配信システムS内で送受信するコンテンツデータを保持する端末装置1(以下、「コンテンツ保持端末装置」と呼ぶ。)へのリンク情報(コンテンツ保持端末装置の所在情報であるIPアドレス)を保持することを意味する。例えば、図2においては、端末IDaを有する端末装置1は、コンテンツIDaを有するコンテンツデータが何れの端末装置1に保持されているかを知っており、端末IDbを有する端末装置1及び端末IDcを有する端末装置1も同様にそれぞれコンテンツIDbを有するコンテンツデータ及びコンテンツIDcを有するコンテンツデータが何れの端末装置1に保持されているかを知っている、ということになる。
Here, “management” does not mean holding content data but means “knowing which
このように、あるコンテンツデータが何れの端末装置1に保持されているかを知っている端末装置1を、そのコンテンツデータのルート端末装置と呼ぶ。つまり、端末IDaを有する端末装置1は、コンテンツIDaを有するコンテンツデータのルート端末装置であって、端末IDbを有する端末装置1は、コンテンツIDbを有するコンテンツデータのルート端末装置であって、端末IDcを有する端末装置1は、コンテンツIDcを有するコンテンツデータのルート端末装置である。
In this way, the
また、コンテンツ配信システムSには、図1及び図2に示すように、コンテンツ配信システムS内にコンテンツデータを投入する機能、すなわちコンテンツ配信システムS内の端末装置1をコンテンツ保持端末装置とするためにコンテンツデータを端末装置1へ配布する機能や、端末装置1からの要求に応じてコンテンツデータを送信する機能を有するコンテンツ供給手段としてコンテンツ供給装置10と、コンテンツ配信システムSにおいて端末装置間で送受信可能なコンテンツデータのリストであるコンテンツリスト(カタログ)を生成して端末装置1へ提供する機能と、端末装置1からの要求に応じてコンテンツデータを再生又は取得するためのコンテンツキー(キー情報の一例に相当)を送信する機能などを有し、コンテンツを管理するコンテンツ管理装置20とが設けられている。なお、「コンテンツ配信システムSにコンテンツを投入」とは、コンテンツ供給装置10が、あるコンテンツデータに関して最初にコンテンツ保持端末装置となる端末装置1を決定し、当該決定した端末装置1にコンテンツデータを配布することを意味する。
In addition, as shown in FIGS. 1 and 2, the content distribution system S has a function of inputting content data into the content distribution system S, that is, the
[1.1.2.ルーティングテーブルの作成]
ここで、図3を参照して、DHTで用いるルーティングテーブルの作成手法の一例について説明する。図3は、DHTによってルーティングテーブルが作成される様子の一例を示す図である。
[1.1.2. Create routing table]
Here, an example of a method for creating a routing table used in DHT will be described with reference to FIG. FIG. 3 is a diagram illustrating an example of how a routing table is created by DHT.
まず、図3(a)に示すように、ID空間を幾つかのエリアに分割する。実際には、16分割程度が良く用いられるが、説明を簡単にするためここでは4分割とし、IDをビット長8bitの4進数で表すことにする。そして、端末装置1Nの端末IDを「1133」とし、この端末装置1Nのルーティングテーブルを作る例について説明する。 First, as shown in FIG. 3A, the ID space is divided into several areas. Actually, about 16 divisions are often used, but in order to simplify the explanation, four divisions are used here, and the ID is represented by a quaternary number having a bit length of 8 bits. An example in which the terminal ID of the terminal device 1N is “1133” and the routing table of the terminal device 1N is created will be described.
(レベル1のルーティング)
まず、ID空間を4分割とした場合、それぞれのエリアは4進数で表すと最大桁が異なる4つのエリア「0XXX」「1XXX」、「2XXX」、「3XXX」(Xは0から3の自然数、以下同様。)で分けられる。端末装置1Nは、当該端末装置1N自身の端末IDが「1133」であるため、図3(a)中左下「1XXX」のエリアに存在することになる。そして、端末装置1Nは、参加要求を受信した他の端末装置1などから送信された情報等から、自分の存在するエリア(すなわち、「1XXX」のエリア)以外のエリア(すなわち、「0XXX」のエリア、「2XXX」のエリア、「3XXX」のエリア)に存在する端末装置1を選択し、当該端末装置1の端末ID及びIPアドレスをレベル1のテーブルに記憶する。図4がレベル1のテーブルの一例である。このテーブルでは、「0XXX」のエリアの端末IDとして「0100」、「2XXX」のエリアの端末IDとして「2133」、「3XXX」のエリアの端末IDとして「3213」がそれぞれ選択されている状態を示している。なお、当該レベル1の2列目は端末装置1N自身を示しているため、IPアドレスを記憶する必要はない。
(
First, if the ID space is divided into four areas, each area is represented by four areas “0XXX”, “1XXX”, “2XXX”, “3XXX” (X is a natural number from 0 to 3, The same shall apply hereinafter.) Since the terminal ID of the terminal device 1N itself is “1133”, the terminal device 1N exists in the lower left “1XXX” area in FIG. Then, the terminal device 1N determines, based on information transmitted from the other
(レベル2のルーティング)
次に、図3(b)に示すように、上記ルーティングによって4分割したエリアのうち、自分の存在するエリア「1xxx」を更に4分割し、更に4つのエリア「10XX」、「11XX」、「12XX」、「13XX」と分ける。そして、上記と同様に自分の存在するエリア「11XX」以外のエリアに存在する端末装置1を適当に選択し、当該端末装置1の端末ID及びIPアドレスをレベル2のテーブルに記憶する。図4がレベル2のテーブルの一例である。このテーブルでは、「10XX」のエリアの端末IDとして「1003」、「12XX」のエリアの端末IDとして「1221」が、「13XX」のエリアの端末IDとして「1313」がそれぞれ選択されている状態を示している。なお、レベル2の2列目は端末装置1Nが存在するエリア「11XX」であり、後述するレベル3にてテーブル化されるためIPアドレスを記憶していない。また、上記エリアに端末装置1が存在しない場合には、端末ID及びIPアドレスの欄は空白となる。
(
Next, as shown in FIG. 3B, among the areas divided into four by the above routing, the area “1xxx” where the user exists is further divided into four, and four areas “10XX”, “11XX”, “ Separated from “12XX” and “13XX”. Then, similarly to the above, the
(レベル3のルーティング)
更に、上記ルーティングによって4分割したエリアのうち、自分の存在するエリア「11XX」を更に4分割し、更に4つのエリア「110X」「111X」、「112X」、「113X」と分ける。そして、上記と同様に自分の存在するエリア「113X」以外のエリアに存在する端末装置1を適当に選択し、当該端末装置1の端末ID及びIPアドレスをレベル3のテーブルに記憶する。図4がレベル3のテーブルの一例である。レベル3の4列目は端末装置1Nが存在するエリアであり、後述するレベル4にてテーブル化されるためIPアドレスを記憶していない。また、上記エリアに端末装置1が存在しない場合には、端末ID及びIPアドレスの欄は空白となる。
(
Further, of the areas divided into four by the above routing, the area “11XX” where the user exists is further divided into four, and further divided into four areas “110X”, “111X”, “112X”, and “113X”. Then, similarly to the above, the
このようにして、レベル4まで同様にルーティングテーブルを図4に示すように作成することにより、8bitのID全てを網羅することができる。なお、レベルが上がる毎にテーブルの中に空白が目立つようになる。 In this way, all of the 8-bit IDs can be covered by creating a routing table as shown in FIG. Each time the level goes up, white space stands out in the table.
以上説明した手法に従って作成したルーティングテーブルを、全ての端末装置1が夫々作成して所有することになる。このように、各端末装置1は、コンテンツ配信システムSにおける複数の端末装置1のうち一部の端末装置1の識別情報である端末ID及びIPアドレスを関連付けたルーティングテーブルを有している。
All the
[1.1.3.コンテンツデータの検索方法]
次に、図5を参照して、コンテンツデータを保持している端末装置1の検索方法の一例について説明する。図5は、DHTによりコンテンツデータを保持している端末装置1が検索される様子の一例を示す図である。
[1.1.3. Content data search method]
Next, an example of a search method for the
ここでは、端末ID「1133」の端末装置1Nが、コンテンツID「3020」を有するコンテンツデータを探す際の手順について説明する。なお、以下このようにコンテンツデータを探し、コンテンツデータの送信を要求する端末装置1をリクエスト端末装置と呼ぶ。
Here, a procedure when the terminal device 1N having the terminal ID “1133” searches for content data having the content ID “3020” will be described. Hereinafter, the
リクエスト端末装置1Nは、コンテンツID「3020」を宛先識別情報とし、自己が保持しているルーティングテーブルを参照して、コンテンツ保持端末装置の識別情報の送信要求(以下、「検索メッセージ」と呼ぶ。)を送信する。リクエスト端末装置1Nが、図4の例と同じ値のルーティングテーブルを持っていたとすると、コンテンツID「3020」は「3XXX」のエリアであるため、当該「3XXX」のエリアに属す端末装置1のうち、IPアドレスを知っている(すなわち、自己が保持しているルーティングテーブルにIPアドレスが記憶されている)端末装置1A(端末ID「3213」)に対して検索メッセージを送信する。このように、検索メッセージはコンテンツデータに対応する固有の識別情報であるコンテンツIDを含むものであり、このコンテンツIDは検索メッセージにおいて宛先識別情報として用いられる。
The request terminal device 1N uses the content ID “3020” as the destination identification information, refers to the routing table held by itself, and refers to the content holding terminal device identification information transmission request (hereinafter referred to as “search message”). ). If the request terminal apparatus 1N has a routing table having the same value as that in the example of FIG. 4, the content ID “3020” is an area “3XXX”, and thus the
次に、検索メッセージを受信した端末装置1Aは、この検索メッセージが自端末装置A宛のメッセージであるか否かを判定する。自端末装置A宛のメッセージであるか否かは、宛先識別情報とルーティングテーブルとに基づいて行われる。具体的には、宛先識別情報が自端末装置Aの識別情報である端末IDと近いか否かが判定される。即ち、宛先識別情報に対して、端末装置1A自身が保持しているルーティングテーブル(テーブルの値は図示しない)に記憶されている端末装置1の端末IDから、一番近い端末装置1の端末IDが、自身であるか他の端末装置1であるかを判定する。
Next, the terminal device 1A that has received the search message determines whether or not this search message is a message addressed to the terminal device A itself. Whether the message is addressed to the terminal device A is determined based on the destination identification information and the routing table. Specifically, it is determined whether the destination identification information is close to the terminal ID that is the identification information of the terminal device A itself. That is, for the destination identification information, the terminal ID of the
そして、自端末装置Aの端末IDよりも他の端末装置1の端末IDの方が、宛先識別情報に近いため、端末装置1Aは、当該端末装置1A自身が保持しているルーティングテーブルのレベル2のテーブルを参照して、「30XX」のエリアに属す端末装置1のうち、IPアドレスを知っている端末装置1B(端末ID「3031」)に対して検索メッセージを転送する。
Since the terminal ID of the other
このように、コンテンツIDの桁を上から順に適合していく要領で検索メッセージの転送が進み、最終的に当該コンテンツデータを管理する端末装置1C、すなわちルート端末装置に辿り着くと、当該ルート端末装置は、検索メッセージに含まれるコンテンツID「3020」を、自身が管理している後述のインデックス情報の中から検索し、当該コンテンツデータを所有しているコンテンツ保持端末装置に関する情報(端末IDやIPアドレス等)をリクエスト端末装置1Nに返信するようになっている。なお、検索メッセージなどのメッセージを目的の端末装置1へ辿り着くまでに、上述のように転送する仕組みをDHTルーティングと呼ぶ。
Thus, when the transfer of the search message proceeds in the manner of adapting the digits of the content ID in order from the top and finally reaches the
こうして、リクエスト端末装置1Nは、上記ルート端末装置1Cから、コンテンツID「3020」のコンテンツデータを保持するコンテンツ保持端末装置に関する所在情報であるIPアドレスを受信して知ることになり、当該コンテンツ保持端末装置から、そのコンテンツデータを取得することになる。
In this way, the request terminal device 1N receives and knows the IP address that is the location information related to the content holding terminal device that holds the content data of the content ID “3020” from the
[1.1.4.インデックステーブルへの登録方法]
このような構成のコンテンツ配信システムSの中で、例えば、ある端末装置1が新しいコンテンツデータを、コンテンツ配信システムS上の他の端末装置1から検索可能とする際の手法について図面を参照して説明する。ここでは、コンテンツデータを保持することになった端末装置をノードID「1301」の端末装置1M、コンテンツデータのコンテンツIDを「3020」、コンテンツID「3020」のルート端末装置をノードID「3011」の端末装置ICとして説明する。
[1.1.4. How to register in the index table]
In the content distribution system S having such a configuration, for example, a method for allowing a
図6に示すように、コンテンツ供給装置10から配布されたコンテンツデータを記憶してコンテンツ保持端末装置となった端末装置1Mは、記憶したコンテンツデータのコンテンツID「3020」と同じ端末IDを持つ端末装置1に向けて(この端末装置1が実在するか否かはこの時点ではわからない。)登録メッセージ(端末装置1MのノードID及びそのIPアドレス、コンテンツID「3020」を含む)を送信する。そして、この登録メッセージも、上記検索メッセージと同様にルーティングテーブルに従って、次々と転送されていき、当該登録メッセージに含まれるコンテンツIDに最も近い端末IDを有する端末装置1Cまで転送されたところで、その端末装置1Cはもはや転送先の端末装置1が他にないと判断すると、当該端末装置1自身がそのコンテンツのルート端末装置となるべきだと判断し、当該登録メッセージに含まれる当該コンテンツID及びコンテンツ保持端末装置1Mの端末IDやIPアドレス(以下、これらを「インデックス情報」と呼ぶ。)を記憶する。
As shown in FIG. 6, the
ルート端末装置におけるインデックス情報の保持は、図7に示すようなインデックステーブルにより行われる。図7はルート端末装置1Cにおけるインデックステーブルの例を示したものであり、自端末装置1が管理対象であるコンテンツID「3020」のコンテンツに関するコンテンツ保持端末装置の端末IDやIPアドレスなどを記憶している。
The index information is held in the root terminal device by an index table as shown in FIG. FIG. 7 shows an example of an index table in the
[1.1.5.端末装置1におけるコンテンツデータの取得・再生動作の概略]
次に、コンテンツ配信システムSの端末装置1におけるコンテンツデータの取得・再生動作の概略について図面を参照して具体的に説明する。図8は、端末装置1におけるコンテンツデータの取得・再生動作の概略についての説明図である。ここでは、あるコンテンツXのコンテンツデータ(以下、「コンテンツXのデータ」と呼ぶ。)がコンテンツ配信システムSに投入され、端末装置1によってコンテンツXのデータが取得され再生される場合を例に挙げ説明する。また、図8においては、説明を簡易にするためDHTルーティングの流れを省略している。
[1.1.5. Outline of Content Data Acquisition / Playback Operation in Terminal Device 1]
Next, an outline of content data acquisition / reproduction operations in the
通常、リクエスト端末装置がコンテンツ保持端末装置からコンテンツXのデータを取得して再生することになるが(以下、「コンテンツ保持端末装置からの取得・再生動作」とする。)、コンテンツ保持端末装置が過負荷状態にある等によりコンテンツXのデータをリクエスト端末装置に送信できないときには、リクエスト端末装置はコンテンツ管理装置20からコンテンツXのデータを取得して再生することになる((以下、「コンテンツ管理装置からの取得・再生動作」とする。)。以下、それぞれの取得動作について順に説明する。 Normally, the request terminal device acquires and reproduces the data of the content X from the content holding terminal device (hereinafter referred to as “acquisition / playback operation from the content holding terminal device”). When the content X data cannot be transmitted to the request terminal device due to an overload condition or the like, the request terminal device acquires and reproduces the content X data from the content management device 20 (hereinafter referred to as “content management device”). "Acquisition / reproduction operation from".) Hereinafter, each acquisition operation will be described in order.
(コンテンツ保持端末装置からの取得・再生動作)
まず、リクエスト端末装置がコンテンツ保持端末装置からコンテンツデータを取得する動作について図8を参照して説明する。図8に示すように、コンテンツXのデータをコンテンツ配信システムSに投入するために、コンテンツ供給装置10は、コンテンツXのデータを配布する端末装置1をランダムに決定する。ここでは、コンテンツ供給装置10がコンテンツXのデータを配布する端末装置1の数を1としているが、これに限られない。例えば投入するコンテンツXが人気のコンテンツと推測できるものであれば、その数を増やすようにしてもよい。
(Acquisition / playback operation from content holding terminal device)
First, an operation in which the request terminal device acquires content data from the content holding terminal device will be described with reference to FIG. As shown in FIG. 8, in order to input content X data into the content distribution system S, the
次に、コンテンツ供給装置10は、上記のように決定した端末装置1(ここでは、端末装置1rとする。)に対して、コンテンツXのデータを配布する(図8中(1)参照。)。このようにコンテンツXのデータが端末装置1pに配布されると、端末装置1間でのコンテンツXのデータの送受信が可能となる。すなわち、コンテンツXのデータが配布された端末装置1pは、コンテンツ保持端末装置として機能する。なお、図示しないが、コンテンツXのデータが配布された端末装置1pは、コンテンツXのルート端末装置(ここでは、端末装置1qとする。)へ向けて登録メッセージを送信するようにしており、これにより端末装置1pは自ノード装置の所在情報であるIPアドレス等を含むインデックス情報をコンテンツXのルート端末装置1qに登録する。
Next, the
その後、コンテンツ保持端末装置でない端末装置1(ここでは、端末装置1rとする。)の利用者がコンテンツ配信システムSに投入されたコンテンツXのデータの取得するための操作(以下、「取得要求操作」とする。)を行うと、当該端末装置1rはリクエスト端末装置として、コンテンツXのデータの取得動作を開始する。 Thereafter, an operation (hereinafter referred to as “acquisition request operation”) for the user of the terminal device 1 (here, the terminal device 1r) that is not the content holding terminal device to acquire the data of the content X input to the content distribution system S. ”), The terminal device 1r starts the content X data acquisition operation as a request terminal device.
コンテンツXのデータを取得するために、リクエスト端末装置1rは、まず、コンテンツ管理装置20に対して、取得要求操作に応じたコンテンツXのコンテンツキーの送信を要求する(図8中(2)参照。)。
In order to acquire the content X data, the request terminal device 1r first requests the
コンテンツ管理装置20には、正当な利用者か否かを判定するための利用者リストが記憶されており、コンテンツXのコンテンツキーの送信を要求したリクエスト端末装置が正当な利用者か否かを確認する(図8中(3)参照。)。
The
コンテンツ管理装置20には、コンテンツ配信システムS内で配信可能なコンテンツデータに対応するコンテンツキーが記憶されており、リクエスト端末装置1rが正当な利用者であると判定すると、記憶しているコンテンツXのコンテンツキーを取り出して、リクエスト端末装置1rへ送信する(図8中(4)参照。)。
The
リクエスト端末装置1rは、コンテンツ管理装置20から送信されるコンテンツXのコンテンツキーを受信すると、コンテンツXのコンテンツ保持端末装置を検索するために検索メッセージをルーティングテーブルに基づいて送信する(図8(5)参照。)。
Upon receiving the content key of the content X transmitted from the
検索メッセージを受信したコンテンツXのルート端末装置1qは、自装置のインデックステーブルから、コンテンツXのデータを保持するコンテンツ保持端末装置の所在情報であるIPアドレスを検索し、リクエスト端末装置に対して、検索したコンテンツ保持端末装置のIPアドレスをいくつか送信する(図8中(6)参照。)。 The root terminal device 1q of the content X that has received the search message searches the IP address that is the location information of the content holding terminal device that holds the data of the content X from the index table of its own device, and Several IP addresses of the searched content holding terminal devices are transmitted (see (6) in FIG. 8).
リクエスト端末装置は、ルート端末装置からコンテンツ保持端末装置のIPアドレスをいくつか受信すると、これらのIPアドレスのうち一つのIPアドレスを宛先としてコンテンツXのコンテンツ保持端末装置(ここでは、端末装置1pとする。)に対して、コンテンツXのデータの送信要求を行う(図8中(7)参照。)。 When the request terminal device receives some IP addresses of the content holding terminal device from the root terminal device, the content holding terminal device of content X (here, the terminal device 1p and the IP address of one of these IP addresses) Request for transmission of the content X (see (7) in FIG. 8).
コンテンツXのコンテンツ保持端末装置1pは、リクエスト端末装置の要求に対して、記憶しているコンテンツXのデータをストリーミング形式でリクエスト端末装置1rへ送信する(図8中(8)参照。)。 In response to the request from the request terminal device, the content holding terminal device 1p for content X transmits the stored content X data to the request terminal device 1r in a streaming format (see (8) in FIG. 8).
リクエスト端末装置1rは、コンテンツ保持端末装置1pからストリーミング形式で送信されるコンテンツXのデータを受信する。コンテンツXのデータは所定の暗号化方式で暗号化されており、リクエスト端末装置1rは、コンテンツ供給装置10から受信したコンテンツキーを復号キーとして用いることによりコンテンツXのデータ復号化してストリーム再生する。また、リクエスト端末装置1rは、受信したコンテンツデータを順次内部の記憶部に記憶していき、コンテンツデータを全て記憶したときに、自端末装置1をコンテンツ保持端末装置として動作させ登録メッセージを送信する。
The request terminal device 1r receives content X data transmitted from the content holding terminal device 1p in a streaming format. The content X data is encrypted by a predetermined encryption method, and the request terminal device 1r uses the content key received from the
(コンテンツ管理装置からの取得・再生動作)
次に、リクエスト端末装置がコンテンツ管理装置20からコンテンツデータを取得する動作について図9を参照して説明する。図9には、コンテンツ保持端末装置1pにおける処理能力等の関係(例えば、コンテンツ保持端末装置1pにおいて他の端末装置へコンテンツXのデータを複数送信しているために、リクエスト端末装置へのコンテンツXのデータを供給する処理能力がないときなど)で、コンテンツ保持端末装置1pがリクエスト端末装置1rにコンテンツXのデータを送信できない場合に、端末装置1によってコンテンツXのデータが取得され再生される例が示されている。なお、図9における(1)〜(7)までの処理は、図8における(1)〜(7)までの処理と同様であるため、以下、図9における(8)〜(10)の処理について説明する。
(Acquisition / playback operation from content management device)
Next, an operation in which the request terminal device acquires content data from the
図9に示すように、コンテンツ保持端末装置1pの処理能力などの関係で、コンテンツ保持端末装置1pがリクエスト端末装置1rにコンテンツXのデータを送信できないとき、コンテンツ保持端末装置1pからは、コンテンツXのデータを送信することができない旨の通知(送信不可通知)がリクエスト端末装置1rに送信される(図9(8)参照)。 As shown in FIG. 9, when the content holding terminal device 1p cannot transmit the data of the content X to the request terminal device 1r due to the processing capability of the content holding terminal device 1p, the content holding terminal device 1p Is sent to the request terminal apparatus 1r (see (8) in FIG. 9).
リクエスト端末装置1rは、コンテンツ保持端末装置1pから送信不可通知を受信すると、コンテンツ供給装置10に対して、コンテンツXのデータの送信要求を行う(図9中(9)参照。)。
When the request terminal device 1r receives the transmission disapproval notification from the content holding terminal device 1p, the request terminal device 1r requests the
リクエスト端末装置1rは、リクエスト端末装置1rの要求に対して、記憶しているコンテンツXのデータをストリーミング形式でリクエスト端末装置1rへ送信する(図9中(10)参照。)。 In response to the request from the request terminal apparatus 1r, the request terminal apparatus 1r transmits the stored content X data to the request terminal apparatus 1r in a streaming format (see (10) in FIG. 9).
リクエスト端末装置1rは、リクエスト端末装置1rからストリーミング形式で送信されるコンテンツXのデータを受信する。以降、コンテンツ保持端末装置1pからコンテンツXのデータを受信した時と同様に、コンテンツ管理装置20から受信したコンテンツキーを復号キーとして用いることによりコンテンツXのデータ復号化してストリーム再生する。また、リクエスト端末装置1rは、受信したコンテンツデータを順次内部の記憶部に記憶していき、コンテンツデータを全て記憶したときに、自端末装置1をコンテンツ保持端末装置として動作させ登録メッセージを送信する。
The request terminal device 1r receives content X data transmitted from the request terminal device 1r in a streaming format. Thereafter, similarly to the case where the content X data is received from the content holding terminal device 1p, the content X received from the
[1.1.6.コンテンツ供給装置10の負荷状態に応じた処理について]
本実施形態におけるコンテンツ配信システムSにおいては、コンテンツデータの送受信を端末装置間で行うことを基本とするが、上述のように、コンテンツ保持端末装置からコンテンツデータを供給できない場合には、コンテンツ供給装置10からコンテンツデータを供給することになる。
[1.1.6. About processing according to load state of content supply apparatus 10]
In the content distribution system S according to the present embodiment, content data is basically transmitted and received between terminal devices. However, as described above, when content data cannot be supplied from a content holding terminal device, the content supply device Content data is supplied from 10.
ところで、コンテンツ配信システムS内のコンテンツデータの数(以下、単に「コンテンツ数」とも呼ぶ。)とコンテンツ配信システムSの端末装置1の数(以下、「参加端末数」とも呼ぶ。)との関係で、コンテンツ供給装置10にアクセスが集中してしまう恐れある。このようにコンテンツ供給装置10にアクセスが集中すると、コンテンツ供給装置10の処理負荷(以下、「サーバ負荷」と呼ぶ。)が増大し、その限界(以下、「サーバ性能限界」とする。)に達してしまう事態になるおそれがある。
Incidentally, the relationship between the number of content data in the content distribution system S (hereinafter also simply referred to as “content number”) and the number of
図10は、上記サーバ負荷と参加端末数との関係を、コンテンツ数毎にグラフ化した例を示した図である。この図に示すように、コンテンツ配信システムS内のコンテンツ数が多ければ多いほど、サーバ負荷が増加する。また、コンテンツ配信システムS内のコンテンツ数の増減がない状態で、参加端末数が多くなるに従いサーバ負荷が増加するが、参加端末数がある程度の数になるとそれを境にサーバ負荷が減少していく。例えば、図10においてコンテンツ数が3万のときでは、参加端末数がN1とN4との間の略中央にあるときに、コンテンツ供給装置10のサーバ負荷がピークとなっている。
FIG. 10 is a diagram illustrating an example in which the relationship between the server load and the number of participating terminals is graphed for each number of contents. As shown in this figure, the greater the number of contents in the content distribution system S, the greater the server load. In addition, the server load increases as the number of participating terminals increases while the number of contents in the content distribution system S does not increase or decrease. However, when the number of participating terminals reaches a certain number, the server load decreases as a result. Go. For example, in FIG. 10, when the number of contents is 30,000, the server load of the
このようにコンテンツ配信システムS内のコンテンツ数が端末装置1の数に比べて多い場合には、コンテンツ供給装置10のサーバ負荷が図10に示すようにサーバ性能限界を超えてしまうおそれがある。このような状態の時、コンテンツ配信システムSにおいて利用可能なコンテンツ数(端末装置間で送受信可能なコンテンツデータの数であり、以下、「公開コンテンツ数」とも呼ぶ。)を低減させることにより、コンテンツ供給装置10のサーバ負荷を低減することができる。
Thus, when the number of contents in the content distribution system S is larger than the number of
そこで、本実施形態においては、コンテンツ供給装置10のサーバ負荷の状態(以下、「サーバ負荷状態」とする。)に応じて、公開コンテンツ数を変更するようにして、コンテンツ供給装置10のサーバ負荷状態がサーバ性能限界を超えないようにしている。
Therefore, in the present embodiment, the server load of the
例えば、コンテンツ供給装置10におけるサーバ負荷状態が予め設定された上限値を超える値になったとき、コンテンツ管理装置20は、公開コンテンツ数を減少させる。一方で、コンテンツ供給装置10におけるサーバ負荷状態が予め設定された下限値を下回った値になったとき、コンテンツ管理装置20は、公開コンテンツ数を増加させる。
For example, when the server load state in the
コンテンツ管理装置20による公開コンテンツ数の減少は、コンテンツ配信システムS内にて提供されているコンテンツ(すなわち、端末装置1間でコンテンツデータの送受信可能なコンテンツデータ)の名称がリスト化されたコンテンツリストの内容を変更することによって行う。例えば、コンテンツ配信システムS内に存在するコンテンツデータの数(以下、「全コンテンツ数」とする。)を1万としたときに、コンテンツリストに掲載するコンテンツデータの数(以下、「掲載コンテンツ数」とする。)を4千ほど減少させることによって、公開コンテンツ数を実質的に2/5減少させることができる。
The decrease in the number of published contents by the
また、コンテンツ管理装置20による公開コンテンツ数の増加は、コンテンツリストに掲載するコンテンツデータの制限を緩和或いは解除することによって行われる。例えば、全コンテンツ数を1万としたときの掲載コンテンツ数が6千である状態で、掲載コンテンツ数を2千増加させることによって、公開コンテンツ数を実質的に4/3だけ増加させることができる。
Further, the increase in the number of published contents by the
なお、コンテンツリストに掲載するコンテンツデータの制限が行われていない状態(つまり、全コンテンツ数=掲載コンテンツ数のとき)では、上述の方法では公開コンテンツ数の増加を行うことができない。そこで、本実施形態におけるコンテンツ管理装置20では、コンテンツデータをコンテンツ供給装置10に対して、所要の公開コンテンツ数の増加に応じた数のコンテンツデータを新たに投入するように要求するように設定することができるようにしている。この要求に応じてコンテンツ供給装置10は、コンテンツデータを複数の端末装置1へ投入し、コンテンツ管理装置20はこれに応じてコンテンツリストの掲載コンテンツ数を増加させる。なお、コンテンツデータを新たに投入するのに代えて、すでに投入しているコンテンツデータを端末装置へ送信するようにして、コンテンツ保持端末装置を増加させるようにすることもできる。
In the state where content data to be posted on the content list is not restricted (that is, when the total number of contents = the number of posted contents), the number of published contents cannot be increased by the above-described method. Therefore, in the
ところで、コンテンツ管理装置20は、コンテンツ供給装置10のサーバ負荷状態の取得を行っている。すなわち、コンテンツ供給装置10はそのサーバ負荷状態を定期的にコンテンツ管理装置20へ通知し、コンテンツ管理装置20はこのように通知されたサーバ負荷状態に基づき、公開コンテンツ数の増減を行っている。なお、サーバ負荷状態の取得は、コンテンツ管理装置20からコンテンツ供給装置10へ要求することによって行うようにすることもできる。
By the way, the
以下、コンテンツ配信システムSにおける各装置の構成及び動作について図面を参照して更に具体的に説明する。 Hereinafter, the configuration and operation of each device in the content distribution system S will be described more specifically with reference to the drawings.
[1.2.端末装置1の構成等の説明]
次に、図面を参照して、端末装置1の構成及び動作について説明する。図11は、本実施形態に係るコンテンツ配信システムSにおける端末装置1の概略構成を示す図である。
[1.2. Description of Configuration of Terminal Device 1]
Next, the configuration and operation of the
端末装置1は、専用のコンピュータの他、一般のパーソナルコンピュータを適用可能であり、図11に示すように、CPU(Central Processing Unit)102と、各種プログラム等を記憶する書き換え可能な主記憶装置としての第1記憶部103と、各種データ等を記憶するHDD(Hard Disk Drive)等から構成された第2記憶部104と、ルータ30aを介してネットワーク8に参加している他の端末装置1との間で通信を行うためのネットワークインターフェイス105と、ユーザによって端末装置1を遠隔操作するために所定の赤外線信号を送信及び受信するリモコン106と、このリモコン106と赤外線により通信を行うための赤外線ポート107と、赤外線ポート107を制御する周辺機器制御チップ108と、CPU102の制御によりイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込み、このビデオメモリに書き込んだデータを後述の内蔵ディスプレイ110に表示するビデオチップ109と、内蔵ディスプレイ110と、FM音源やWave Table音源などの音源を有し、オーディオ信号を内蔵スピーカ112に出力することによって内蔵スピーカ112から音波を出力させる音源チップ111と、内蔵スピーカ112とを備えて構成され、これらの各種構成要素はシステムバス101を介して相互に接続されている。なお、本実施形態においては、CPU102と第1記憶部103とで制御部113を構成している。
The
(第1記憶部103について)
また、第1記憶部103には、端末装置1のコンピュータとしての基本的な機能を提供するためのオペレーティングシステム(OS)プログラム114、内蔵ディスプレイ110の制御等を行うための画面制御プログラム115、コンテンツ保持端末装置として機能する他の端末装置1から送信されるコンテンツデータを受信し、また自端末装置がコンテンツ保持端末装置として機能するときには第2記憶部104に記憶したコンテンツデータを配信するためのコンテンツ処理プログラム116、他の端末装置とメッセージの送受信を行うためのメッセージ処理プログラム117、配信されたコンテンツデータの再生等を行うための音楽デコーダプログラム118等を記憶しており、これらはCPU102によって読み出され、CPU102によってこれらのプログラムに従った機能が実行される。また、第1記憶部103には、更にインデックステーブル(図7参照。)を記憶するためのインデックステーブル記憶領域119やルーティングテーブル(図4参照。)を記憶するためのルーティングテーブル記憶領域120が設けられている。
(Regarding the first storage unit 103)
The
ここで、OSプログラム114は、CPU102によって読み出されて実行されることにより、リモコン106の入出力に関する機能や、第1記憶部103や第2記憶部104などのメモリ管理等の端末装置1であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム114がCPU102によって実行された状態で、上述の画面制御プログラム115、コンテンツ処理プログラム116、メッセージ処理プログラム117、音楽デコーダプログラム118等が第1記憶部103から読み出されて実行される。なお、ここでは説明の便宜上各プログラムを分けたが、これらを一つのプログラムとしてもよく、或いは二つのプログラムとしても当然かまわない。
Here, the
なお、OSプログラム114、画面制御プログラム115、コンテンツ処理プログラム116、メッセージ処理プログラム117、音楽デコーダプログラム118等は、例えば、ネットワーク8に接続されたサーバ等から、ネットワークインターフェイス105を介して、第1記憶部103にダウンロードされるようにしてもよく、又CD−ROM等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、第1記憶部103に読み込まれるようにしてもよい。
Note that the
(第2記憶部104について)
第2記憶部104には、コンテンツ供給装置10から投入され、コンテンツ配信システムS内にて提供されているコンテンツの名称がリスト化されたコンテンツリストを記憶するコンテンツリスト記憶領域と、コンテンツ供給装置10等から配信されたコンテンツデータを記憶するコンテンツデータ記憶手段として機能するコンテンツデータ記憶領域と、コンテンツ管理装置20から受信したコンテンツキーを記憶するコンテンツキー記憶手段として機能するコンテンツキー記憶領域等を有している。
(About the second storage unit 104)
In the
(制御部113について)
制御部113は、上述のようにCPU102と第1記憶部103とから構成され、CPU102が第1記憶部103に記憶された各種プログラム114〜118を読み出して実行することにより、端末装置1全体を統括制御し、かつ、後述する表示制御手段、コンテンツデータ取得要求検出手段、コンテンツデータ取得手段、コンテンツデータ送信手段、コンテンツキー取得手段、デコード手段、コンテンツデータ再生手段、メッセージ宛先判定手段、メッセージ転送手段、登録メッセージ送信手段、コンテンツ保持端末情報取得手段、端末識別情報送信手段等として機能するようになっている。
(Regarding the controller 113)
The
なお、CPU102が画面制御プログラム115を実行することによって、表示制御手段等として、またCPU102がコンテンツ処理プログラム116を実行することによって、コンテンツデータ取得要求検出手段、コンテンツデータ取得手段、コンテンツデータ送信手段、コンテンツキー取得手段、コンテンツデータ再生手段等として、またCPU102がメッセージ処理プログラム117を実行することによって、メッセージ宛先判定手段、メッセージ転送手段、登録メッセージ送信手段、コンテンツ保持端末情報取得手段、端末識別情報送信手段等として、またCPU102が音楽デコーダプログラム118を実行することによって、デコード手段等として、それぞれ機能するようになっている。
The
(表示制御手段について)
表示制御手段は、ビデオチップ109及び内蔵ディスプレイ110を制御して、各種の映像情報(画像情報)を表示させる機能を有している。すなわち、表示制御手段は、内蔵ディスプレイ110にどのように映像を表示させるかを制御する。
(Display control means)
The display control means has a function of controlling the
(コンテンツデータ取得要求検出手段について)
コンテンツデータ取得要求検出手段は、利用者によるコンテンツデータの取得要求操作を検出する。例えば、コンテンツ供給装置10から端末装置1が取得したコンテンツリストが表示制御手段によって内蔵ディスプレイ110に表示されているときに、端末装置1の利用者がリモコン106を操作することによって、所望のコンテンツ名称を利用者が選択することによってコンテンツデータの取得要求操作がなされ、この操作をコンテンツデータ取得要求検出手段によって検出する。
(About content data acquisition request detection means)
The content data acquisition request detecting means detects content data acquisition request operation by the user. For example, when the content list acquired by the
なお、コンテンツリストにはコンテンツ配信システムSにおいて配信可能なコンテンツの名称などコンテンツデータを特定するための情報が含まれており、表示制御手段は、内蔵ディスプレイ110にコンテンツリストに含まれるコンテンツ名称の一覧を表示するようにしている。このコンテンツリストは、コンテンツデータ取得要求検出手段が定期的にコンテンツ管理装置20に対して要求を行うことによって、端末装置1は最新のコンテンツリストを取得し、表示する。
Note that the content list includes information for specifying content data such as names of content that can be distributed in the content distribution system S, and the display control means includes a list of content names included in the content list on the built-in
(コンテンツキー取得手段について)
コンテンツキー取得手段は、コンテンツデータ取得要求検出手段により取得要求操作が検出されたとき、取得要求操作に応じたコンテンツデータのコンテンツキーの送信を前記ネットワークを介してコンテンツ管理装置20に要求する。また、コンテンツキー取得手段は、この要求に応じてコンテンツ管理装置20から送信されるコンテンツキーを受信し、第2記憶部104のコンテンツキー記憶領域に記憶する。なお、コンテンツキー取得手段によるコンテンツキーの送信要求は、コンテンツキーに対応するコンテンツデータのコンテンツ名称又はコンテンツIDなどを特定して行う。
(About content key acquisition means)
When the acquisition request operation is detected by the content data acquisition request detection unit, the content key acquisition unit requests the
(コンテンツデータ取得手段について)
コンテンツデータ取得手段は、ネットワークインターフェイス105を介して受信したメッセージがコンテンツ供給装置10からのコンテンツデータの保持要求であるときに、このコンテンツデータをコンテンツ供給装置10から取得する。そして、取得したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶する。
(About content data acquisition means)
The content data acquisition unit acquires the content data from the
また、コンテンツデータ取得手段は、コンテンツデータ取得要求検出手段により利用者による取得要求操作が検出されたときにコンテンツキー取得手段によってコンテンツキーが取得されると、この取得要求操作に応じたコンテンツデータをネットワーク8を介して他の端末装置1から取得する。
In addition, when the content key is acquired by the content key acquisition unit when the acquisition request operation by the user is detected by the content data acquisition request detection unit, the content data acquisition unit obtains the content data corresponding to the acquisition request operation. Obtained from another
ここで、他の端末装置1からコンテンツデータを取得するときには、取得しようとするコンテンツデータを保持するコンテンツ保持端末装置の所在情報であるIPアドレスを検索するための検索メッセージを生成する。検索メッセージは、要求するコンテンツデータの識別情報であるコンテンツIDを宛先識別情報とし、自端末装置の識別情報である端末IDを要求元識別情報としたメッセージである。コンテンツデータ取得手段は、取得しようとするコンテンツデータのコンテンツ名称をコンテンツリストから取り出し、取り出したコンテンツ名称を端末IDを得るときと共通のハッシュ関数によりハッシュ化することによってコンテンツIDを決定する。なお、コンテンツ供給装置10において予めコンテンツリストにコンテンツデータに対応するコンテンツIDを含ませることにしてもよい。
Here, when content data is acquired from another
コンテンツデータ取得手段は、生成した検索メッセージの宛先識別情報であるコンテンツIDに基づいて所定条件を満たす送信先端末装置を選択して、検索メッセージを送信する。ここで、「所定条件」とは、ルーティングテーブルに記憶された端末IDのうち、検索メッセージの宛先識別情報であるコンテンツIDと上位桁がより多く一致する端末IDを選択するという条件である。 The content data acquisition means selects a destination terminal device that satisfies a predetermined condition based on the content ID that is destination identification information of the generated search message, and transmits the search message. Here, the “predetermined condition” is a condition for selecting a terminal ID that matches the content ID, which is the destination identification information of the search message, more frequently among the terminal IDs stored in the routing table.
コンテンツデータ取得手段は、送信した検索メッセージに対してルート端末装置から送信されるコンテンツ保持端末装置の所在情報であるIPアドレスを受信し、この情報に基づいてコンテンツ保持端末装置に対して取得要求操作に応じたコンテンツデータを要求する。この要求に応じてコンテンツ保持端末装置からコンテンツデータがストリーミング配信される。コンテンツデータ取得手段は、ストリーミング配信されるコンテンツデータを順次受信し、第2記憶部104に記憶していく。
The content data acquisition means receives the IP address that is the location information of the content holding terminal device transmitted from the root terminal device in response to the transmitted search message, and performs an acquisition request operation on the content holding terminal device based on this information Request content data according to In response to this request, the content data is streamed from the content holding terminal device. The content data acquisition unit sequentially receives the content data distributed by streaming and stores it in the
また、コンテンツデータ取得手段は、利用者による取得要求操作に対応するコンテンツデータがリクエスト端末装置から取得することができないとき、コンテンツ供給装置10から取得要求操作に対応するコンテンツデータを取得する。
The content data acquisition unit acquires content data corresponding to the acquisition request operation from the
(コンテンツデータ再生手段について)
コンテンツデータ再生手段は、取得要求操作に応じたコンテンツデータをコンテンツ保持端末装置から取得するときには、コンテンツ保持端末装置からストリーミング配信されるコンテンツデータを第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコード手段によってデコードし、ビデオチップ109及び音源チップ111を動作させることによりコンテンツデータを再生する。
(About content data playback means)
When the content data reproducing means acquires content data corresponding to the acquisition request operation from the content holding terminal device, the content data streamed from the content holding terminal device is stored in the content key storage area of the
また、コンテンツデータ再生手段は、第2記憶部104に記憶されたコンテンツデータを再生するときにも、同様に、コンテンツデータを第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコード手段によってデコードし、再生する。
Similarly, when reproducing the content data stored in the
(コンテンツデータ送信手段について)
コンテンツデータ送信手段は、コンテンツデータ記憶手段としての第2記憶部104に記憶したコンテンツデータの送信要求が他の端末装置1からあったとき、この送信要求に対応するコンテンツデータを第2記憶部104から取り出して送信要求をした他の端末装置1へ送信する。
(About content data transmission means)
When there is a request for transmission of the content data stored in the
(デコード手段について)
デコード手段は、第2記憶部104に記憶したコンテンツデータ或いはコンテンツ保持端末装置からストリーミング送信されるコンテンツデータを内蔵ディスプレイ110に表示し、内蔵スピーカ112から出力するためにデコードする。すなわち、再生対象のコンテンツデータは、所定の形式でエンコードされており、このようにエンコードされているコンテンツデータを内蔵ディスプレイ110や内蔵スピーカ112から出力できるようにデコードする。
(Decoding means)
The decoding means displays the content data stored in the
(メッセージ宛先判定手段について)
メッセージ宛先判定手段は、ネットワーク8を介して受信したメッセージの宛先識別情報とルーティングテーブルとに基づいて、受信したメッセージが自端末装置宛であるか否かを判定する。このメッセージ宛先判定手段が判定するメッセージは、コンテンツ保持端末装置の識別情報をルート端末装置に要求するための検索メッセージ、ルート端末装置にコンテンツ保持端末装置の識別情報を登録するための登録メッセージなどである。
(About message destination determination means)
The message destination determination unit determines whether the received message is addressed to the own terminal device based on the destination identification information of the message received via the network 8 and the routing table. The message determined by the message destination determination means is a search message for requesting the root terminal device for identification information of the content holding terminal device, a registration message for registering the identification information of the content holding terminal device in the root terminal device, or the like. is there.
受信したメッセージが自端末装置宛であるか否かの判定は、メッセージに含まれる宛先識別情報を取り出し、第1記憶部103に記憶したルーティングテーブルに基づいて行われる。すなわち、各種のメッセージをネットワークインターフェイス105を介して受信したとき、メッセージ宛先判定手段は、受信したメッセージに含まれる宛先識別情報とルーティングテーブルに記憶した端末IDとを比較し、メッセージに含まれる宛先識別情報と一番近いルーティングテーブル上の端末IDが自端末装置の端末IDであると判定すると、自端末装置宛のメッセージであると判定する。
The determination as to whether or not the received message is addressed to the own terminal device is performed based on the routing table that is extracted from the destination identification information included in the message and stored in the
(メッセージ転送手段について)
メッセージ転送手段は、メッセージ宛先判定手段によりネットワーク8を介して受信したメッセージが自端末装置宛ではないと判定されると、受信したメッセージの宛先識別情報に基づいて、ルーティングテーブルに記憶された端末装置1の識別情報から送信先端末装置を選択して、受信したメッセージを送信先端末装置へ転送する。すなわち、メッセージ転送手段は、ルーティングテーブルに記憶された端末装置1の端末IDのうち、宛先識別情報に近い端末IDを選択し、このように選択した端末IDに対応する端末装置1のIPアドレスを知り、そのIPアドレスをIPパケットの宛先として、メッセージを転送する。
(About message transfer means)
When the message transfer means determines that the message received via the network 8 by the message destination determination means is not addressed to the own terminal apparatus, the message transfer means stores the terminal apparatus stored in the routing table based on the destination identification information of the received message. The destination terminal device is selected from the identification information of 1, and the received message is transferred to the destination terminal device. That is, the message transfer means selects the terminal ID close to the destination identification information from the terminal IDs of the
(登録メッセージ送信手段について)
登録メッセージ送信手段は、コンテンツ供給装置10から受信したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶したとき、当該コンテンツデータの識別情報であるコンテンツIDを宛先識別情報とし、自端末装置の識別情報である端末ID及びIPアドレスとを含む登録メッセージを生成して、ルーティングテーブルに基づいて選択した送信先端末装置へ送信する。また、他のコンテンツ保持端末装置からコンテンツデータを受信したときも同様に、受信したコンテンツデータをコンテンツデータ記憶手段としての第2記憶部104に記憶し、登録メッセージを生成して、ルーティングテーブルに基づいて選択した送信先端末装置へ送信する。
(Registration message transmission means)
When the content message received from the
(コンテンツ保持端末情報取得手段について)
コンテンツ保持端末情報取得手段は、自端末装置において、受信したメッセージが自端末装置宛の登録メッセージであるとき、登録メッセージに含まれるコンテンツ保持端末装置の識別情報である端末IDやIPアドレスなどを取得する。そして、このように取得したインデックス情報をインデックステーブルに記憶する。
(About content holding terminal information acquisition means)
When the received message is a registration message addressed to the own terminal device, the content holding terminal information acquisition unit acquires a terminal ID, an IP address, etc., which are identification information of the content holding terminal device included in the registration message. To do. Then, the index information acquired in this way is stored in the index table.
(端末識別情報送信手段について)
端末識別情報送信手段は、検索メッセージによって要求されたコンテンツに対するコンテンツ保持端末装置の端末IDが記憶されている場合、当該コンテンツ保持端末装置の所在情報であるIPアドレスを、当該検索メッセージを送信したリクエスト端末装置へ向けて送信する。
(About terminal identification information transmission means)
If the terminal ID of the content holding terminal device corresponding to the content requested by the search message is stored, the terminal identification information transmitting means sends the IP address that is the location information of the content holding terminal device to the request that transmitted the search message Send to the terminal device.
[1.3.コンテンツ供給装置10の構成等の説明]
次に、図面を参照して、コンテンツ供給装置10の構成及び動作について説明する。図12は、本実施形態に係るコンテンツ配信システムSにおけるコンテンツ供給装置10の概略構成を示す図である。
[1.3. Description of Configuration of Content Supply Device 10]
Next, the configuration and operation of the
コンテンツ供給装置10は、専用のコンピュータの他、一般のサーバコンピュータを適用可能であり、図12に示すように、CPU(Central Processing Unit)202と、各種プログラム等を記憶する書き換え可能な主記憶装置としての第1記憶部203と、各種データ等を記憶するHDD等から構成された第2記憶部204と、ルータ30bを介してネットワーク8に参加している他の端末装置1やコンテンツ管理装置20との間で通信を行うためのネットワークインターフェイス205と、コンテンツ配信システムSの管理者によってコンテンツ供給装置10の制御を行うために情報を入力する入力手段であるキーボード207やマウス208と、入力手段から入力された情報を処理するための周辺機器制御チップ206と、CPU202の制御によりイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込み、このビデオメモリに書き込んだデータを後述のディスプレイ210に表示するビデオチップ209と、ディスプレイ210等を備えて構成され、これらの各種構成要素はシステムバス201を介して相互に接続されている。なお、本実施形態においては、CPU202と第1記憶部203とで制御部213を構成している。
The
(第1記憶部203について)
また、第1記憶部203には、コンテンツ供給装置10のコンピュータとしての基本的な機能を提供するためのオペレーティングシステム(OS)プログラム214、ディスプレイ210の制御等を行うための画面制御プログラム215、コンテンツ配信システムSにコンテンツデータを新規に投入したり、端末装置1からの要求に応じてコンテンツデータを送信したりするためのコンテンツ供給プログラム216等を記憶しており、これらはCPU202によって読み出され、CPU202によってこれらのプログラムに従った機能が実行される。
(Regarding the first storage unit 203)
The
ここで、OSプログラム214は、CPU202によって読み出されて実行されることにより、キーボード207やマウス208に関する機能や、第1記憶部203や第2記憶部204などのメモリ管理等のコンテンツ供給装置10であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム214がCPU202によって実行された状態で、上述の画面制御プログラム215、コンテンツ供給プログラム216等が第1記憶部203から読み出されて実行される。なお、ここでは説明の便宜上各プログラムを分けたが、これらを一つのプログラムとしてもよく、或いは二つのプログラムとしても当然かまわない。
Here, the
(第2記憶部204について)
第2記憶部204には、コンテンツ配信システムSにおいて提供しているコンテンツデータや提供予定のコンテンツデータを記憶するコンテンツデータ記憶領域217を有している。
(About the second storage unit 204)
The
(制御部213について)
制御部213は、上述のようにCPU202と第1記憶部203とから構成され、CPU202が第1記憶部203に記憶された各種プログラム214〜216を読み出して実行することにより、コンテンツ供給装置10全体を統括制御し、かつ、後述する表示制御手段、コンテンツ投入手段、コンテンツ送信手段、負荷状態通知手段等として機能するようになっている。
(About the control unit 213)
The
なお、CPU202が画面制御プログラム215を実行することによって表示制御手段等として、またCPU202がコンテンツ供給プログラム216を実行することによって、コンテンツ投入手段、コンテンツ送信手段、負荷状態通知手段等として、それぞれ機能するようになっている。
The
(表示制御手段について)
表示制御手段は、ビデオチップ209及びディスプレイ210を制御して、各種の映像情報(画像情報)を表示させる機能を有している。すなわち、表示制御手段は、ディスプレイ210にどのように映像を表示させるかを制御する。
(Display control means)
The display control means has a function of controlling the
(コンテンツ投入手段について)
コンテンツ投入手段は、新規コンテンツデータ記憶領域220に記憶したコンテンツデータを保持させる端末装置1、すなわちコンテンツ保持端末装置をランダムに決定し、決定したコンテンツ保持端末装置にコンテンツデータを送信する。なお、コンテンツ投入手段がランダムに決定するコンテンツ保持端末装置の数は、例えば、上述のよう1台とするようにしてもよく、また、投入するコンテンツの人気度が推測できるものであれば、上述のように推測した人気度に応じて増減させることができる。
(About content input means)
The content input means randomly determines the
(コンテンツ送信手段について)
コンテンツ送信手段は、ネットワークを介して端末装置1からコンテンツデータの送信要求があると、コンテンツ記憶手段としての第2記憶部204から送信要求に対応するコンテンツデータを取り出して、要求元の端末装置1へ送信する。
(About content transmission means)
When there is a content data transmission request from the
(負荷状態通知手段について)
負荷状態通知手段は、第2記憶部204に記憶したコンテンツデータを同時に送信処理できる端末装置の数(以下、「最大送信処理可能数」とする。)と、現在コンテンツデータを送信処理している端末装置の数(以下、「現在送信処理数」とする。)とから、コンテンツ供給装置10のサーバ負荷を演算する。すなわち、現在の送信処理数を最大送信処理可能数で割った値を、コンテンツ供給装置10のサーバ負荷として演算する。ただし、サーバ負荷は、コンテンツ供給装置10の処理負荷を表すことができれば、どのような演算方法であってもよい。
(About load status notification means)
The load state notifying means performs transmission processing on the number of terminal devices that can simultaneously transmit the content data stored in the second storage unit 204 (hereinafter referred to as “maximum number of transmission processing possible”) and the current content data. The server load of the
[1.4.コンテンツ管理装置20の構成等の説明]
次に、図面を参照して、コンテンツ管理装置20の構成及び動作について説明する。図13は、本実施形態に係るコンテンツ配信システムSにおけるコンテンツ管理装置20の概略構成を示す図である。
[1.4. Description of Configuration of Content Management Device 20]
Next, the configuration and operation of the
コンテンツ管理装置20は、専用のコンピュータの他、一般のサーバコンピュータを適用可能であり、図13に示すように、CPU(Central Processing Unit)302と、各種プログラム等を記憶する書き換え可能な主記憶装置としての第1記憶部303と、各種データ等を記憶するHDD等から構成された第2記憶部304と、ルータ30cを介してネットワーク8に参加している他の端末装置1との間で通信を行うためのネットワークインターフェイス305と、コンテンツ配信システムSの管理者によってコンテンツ管理装置20の制御を行うために情報を入力する入力手段であるキーボード307やマウス308と、入力手段から入力された情報を処理するための周辺機器制御チップ306と、CPU302の制御によりイメージデータを受け取り、内部のビデオメモリ(図示せず)に書き込み、このビデオメモリに書き込んだデータを後述のディスプレイ310に表示するビデオチップ309と、ディスプレイ310等を備えて構成され、これらの各種構成要素はシステムバス301を介して相互に接続されている。なお、本実施形態においては、CPU302と第1記憶部303とで制御部313を構成している。
The
(第1記憶部303について)
また、第1記憶部303には、コンテンツ管理装置20のコンピュータとしての基本的な機能を提供するためのオペレーティングシステム(OS)プログラム314、ディスプレイ310の制御等を行うための画面制御プログラム315、コンテンツ供給装置10のサーバ負荷状態に基づいて、端末装置1間で送受信可能なコンテンツデータの数を変更するためのコンテンツ調整プログラム316等を記憶しており、これらはCPU302によって読み出され、CPU302によってこれらのプログラムに従った機能が実行される。
(Regarding the first storage unit 303)
The
ここで、OSプログラム314は、CPU302によって読み出されて実行されることにより、キーボード307やマウス308に関する機能や、第1記憶部303や第2記憶部304などのメモリ管理等のコンテンツ管理装置20であるコンピュータの基本的な機能を実行可能にするものである。そして、このOSプログラム314がCPU302によって実行された状態で、上述の画面制御プログラム315、コンテンツ調整プログラム316等が第1記憶部303から読み出されて実行される。なお、ここでは説明の便宜上各プログラムを分けたが、これらを一つのプログラムとしてもよく、或いは二つのプログラムとしても当然かまわない。
Here, the
なお、OSプログラム314、画面制御プログラム315、コンテンツ調整プログラム316等は、例えば、ネットワーク8に接続されたサーバ等から、ネットワークインターフェイス305を介して、第1記憶部303にダウンロードされるようにしてもよく、又CD−ROM等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、第1記憶部303に読み込まれるようにしてもよい。
Note that the
(第2記憶部304について)
第2記憶部304には、コンテンツ供給装置10から投入され、コンテンツ配信システムSにおいて提供されるコンテンツデータを復号するためのコンテンツキーがコンテンツデータ毎にそのコンテンツIDに対応してそれぞれ記憶されるコンテンツキー記憶手段としてのコンテンツキーデータベース領域320、コンテンツ配信システムS内にて提供されているコンテンツデータの名称がリスト化されたコンテンツリストを記憶するコンテンツリスト記憶手段としてのコンテンツリスト記憶領域321を有している。
(About the second storage unit 304)
Content stored in the
(制御部313について)
制御部313は、上述のようにCPU302と第1記憶部303とから構成され、CPU302が第1記憶部303に記憶された各種プログラム314〜316を読み出して実行することにより、コンテンツ管理装置20全体を統括制御し、かつ、後述する表示制御手段、負荷状態取得手段、コンテンツ数調整手段等として機能するようになっている。
(About the control unit 313)
The
なお、CPU302が画面制御プログラム315を実行することによって表示制御手段等として、またCPU302がコンテンツ調整プログラム316を実行することによって負荷状態取得手段、コンテンツ数調整手段、コンテンツリスト提供手段等として、それぞれ機能するようになっている。
The
(表示制御手段について)
表示制御手段は、ビデオチップ309及びディスプレイ310を制御して、各種の映像情報(画像情報)を表示させる機能を有している。すなわち、表示制御手段は、ディスプレイ310にどのように映像を表示させるかを制御する。
(Display control means)
The display control means has a function of controlling the
(負荷状態取得手段について)
負荷状態取得手段は、コンテンツ供給装置10のサーバ負荷状態をコンテンツ供給装置10から取得する。より具体的には、負荷状態取得手段は、コンテンツ供給装置10からある一定期間毎(たとえば、10秒毎)に送信されるサーバ負荷情報を受信し、このように受信したサーバ負荷情報に基づいて所定期間(たとえば、3分)当たりのサーバ負荷(以下、「平均サーバ負荷」とする。)を演算し、これをコンテンツ供給装置10のサーバ負荷とする。なお、所定期間当たりの平均サーバ負荷をコンテンツ供給装置10に演算させて、負荷状態取得手段はこの平均サーバ負荷の情報をコンテンツ供給装置10から受信するようにすることもできる。
(About load status acquisition means)
The load state acquisition unit acquires the server load state of the
(コンテンツ数調整手段について)
コンテンツ数調整手段は、負荷状態取得手段によって取得した平均サーバ負荷の状態(以下、「平均サーバ負荷状態」とする。)に基づいて、端末装置1間で送受信可能なコンテンツデータの数(公開コンテンツ数)を変更する。
(About the number of contents adjustment means)
The number-of-contents adjusting unit is based on the average server load state acquired by the load state acquiring unit (hereinafter referred to as “average server load state”), and the number of content data that can be transmitted / received between the terminal devices 1 (public content) Number).
コンテンツ数調整手段は、コンテンツ供給装置10における平均サーバ負荷状態が所定の上限値(第1の負荷の一例に相当)よりも高いサーバ負荷状態であると判定すると、公開コンテンツ数を所定数減少させる。例えば、図10に示すような特性をコンテンツ配信システムSが有しているときに、サーバ負荷状態が図10に示す「A」を超えたときに、公開コンテンツ数を所定数減少させる。
When the content number adjusting unit determines that the average server load state in the
また、コンテンツ数調整手段は、コンテンツ供給装置10における平均サーバ負荷状態が所定の下限値(第2の負荷状態に相当)よりも低いサーバ負荷状態であると判定すると、公開コンテンツ数を所定数増加させる。例えば、図10に示すような特性をコンテンツ配信システムSが有しているときに、サーバ負荷状態が図10に示す「B」よりも小さくなったときに、公開コンテンツ数を所定数増加させる。
When the content number adjusting unit determines that the average server load state in the
ここで、このコンテンツ数調整手段には、コンテンツリスト生成手段としての機能が含まれており、コンテンツ数調整手段による公開コンテンツ数の調整は、コンテンツ供給装置10のサーバ負荷状態に応じて、コンテンツリストのリスト内容を変更することによって行われる。
Here, the content number adjusting unit includes a function as a content list generating unit, and the adjustment of the number of public contents by the content number adjusting unit is performed according to the server load state of the
コンテンツリスト生成手段は、コンテンツ供給装置10のサーバ負荷状態に応じて、公開コンテンツ数を増減させる。具体的には、コンテンツ供給装置10のサーバ負荷状態が所定の上限値を超えているとき、コンテンツリスト生成手段は、掲載コンテンツ数を所定の割合で減少させたコンテンツリストを生成してコンテンツリストの更新を行う。また、コンテンツ供給装置10のサーバ負荷状態が所定の下限値を下回っているとき、コンテンツリスト生成手段は、掲載コンテンツ数を所定の割合で増加させたコンテンツリストを生成してコンテンツリストの更新を行う。一方、コンテンツ供給装置10のサーバ負荷状態が所定の上限値以下でかつ所定の下限値のとき、コンテンツリスト生成手段は、コンテンツリストの更新を行わない。
The content list generation means increases or decreases the number of published contents according to the server load state of the
このように、本実施形態におけるコンテンツ管理装置20は、コンテンツ供給装置10における所定期間当たりの平均サーバ負荷の情報を取得し、この平均サーバ負荷状態に応じて、所定期間毎に端末装置間で送受信可能なコンテンツデータの数(公開コンテンツ数)を増減させるようにしている。すなわち、コンテンツ供給装置10は、平均サーバ負荷状態が所定の上限値を超えていると判定すると、公開コンテンツ数を所定数減少させ、この平均サーバ負荷状態が第2の負荷状態よりも低いサーバ負荷状態であると判定すると、公開コンテンツ数を所定数増加させている。したがって、コンテンツ供給装置10が過負荷によりダウンするなどの問題を事前に対応することができる。特に、公開コンテンツ数の増減は、コンテンツリストに掲載するコンテンツデータの数を増減させることによって行うものであるため、処理が複雑にならずに済む。
As described above, the
ここで、公開コンテンツ数を増加させる所定数と、公開コンテンツ数を低減させる所定数とは異なるものであることが好ましい。すなわち、サーバ負荷状態が上限値を超えている場合は、緊急事態なので、多くのコンテンツデータを送受信されないように公開停止にする一方、公開コンテンツ数を増加させる、いわゆる再公開は少しずつ行い、サーバ負荷の微調整をすることで、効果的にサーバ負荷に対応することができる。 Here, the predetermined number for increasing the number of published contents is preferably different from the predetermined number for decreasing the number of published contents. In other words, if the server load state exceeds the upper limit value, it is an emergency, so the public content is stopped so that a large amount of content data is not transmitted and received, while the so-called re-publication is gradually increased to increase the number of public content. By finely adjusting the load, it is possible to effectively cope with the server load.
また、上述では2つの基準値(上限値と下限値)に基づいて、公開コンテンツ数の調整を行うようしたが、複数段階に分けて公開コンテンツ数の調整を行うようにしてもよい。例えば、上述の上限値を超える第2上限値さらに設け、上限値を著しくオーバーして第2上限値を超えるときにはさらに多くのコンテンツを公開停止にする。同様に、上述の下限値をさらに下回る第2下限値を設け、サーバ負荷状態が第2下限値をさらに下回ったときには、さらに多くのコンテンツを再公開にする。このように、複数段階に分けて公開コンテンツ数の調整を行うことで、さらに効果的にサーバ負荷に対応することができる。 In the above description, the number of published contents is adjusted based on two reference values (upper limit value and lower limit value). However, the number of published contents may be adjusted in a plurality of stages. For example, the second upper limit value exceeding the above upper limit value is further provided, and when the upper limit value is significantly exceeded and the second upper limit value is exceeded, more contents are suspended. Similarly, a second lower limit value that is further lower than the above-described lower limit value is provided, and when the server load state further falls below the second lower limit value, more content is republished. In this way, the server load can be more effectively dealt with by adjusting the number of published contents in a plurality of stages.
また、コンテンツ供給装置10のサーバ負荷状態とコンテンツデータの数とを関連付けたテーブルを第2記憶部304に記憶しておき、コンテンツリスト生成手段は、このテーブルに基づいて、公開コンテンツ数を変更するようにすることができる。このように、テーブルを設けることにより、公開コンテンツ数の変更を容易に行うことができる。
Further, a table in which the server load state of the
また、コンテンツ配信システムSを構成する端末装置1の数に応じて、上述の下限値を設定するようにしてもよい。このようにすることで、下限値を適切に設定することができる。すなわち、偶然にコンテンツ供給装置10のサーバ負荷が下がっているようなときであっても、コンテンツ配信システムSを構成する端末装置1の数が多い場合には、端末装置1間で送受信可能なコンテンツデータの数を変更せずに済む。
Further, the above lower limit value may be set according to the number of
なお、コンテンツ配信システムSを構成する端末装置1の数は、端末装置1からのコンテンツリストの要求の数などから推測して求めることができるが、コンテンツ配信システムSに参加している端末装置1から定期的に参加している旨の情報をコンテンツ管理装置20へ送信させ、コンテンツ管理装置20は、このように送信された情報に基づいて、コンテンツ配信システムSを構成する端末装置1の数を検出するようにしてもよい。
Note that the number of
また、コンテンツ管理装置20において、コンテンツ供給装置10の平均サーバ負荷状態から最適なコンテンツ数を算出して、そのコンテンツ数に基づいて、公開コンテンツ数の増減処理を行うようにしてもよく、コンテンツ配信システムSを構成する端末装置1の数から最適なコンテンツ数を算出して、そのコンテンツ量に基づいて、公開コンテンツ数の増減処理を行うようにしてもよい。
Further, the
また、上述においては、所定の基準値との比較により公開コンテンツ数を増減させるようにしたが、コンテンツ供給装置10における平均サーバ負荷状態の変化に応じて、所定期間毎に公開コンテンツ数を増減(例えば、サーバ負荷が10%増加したときには、10%公開コンテンツ数を減少)させるようにしてもよい。このように平均サーバ負荷状態の変化に応じて、公開コンテンツ数を増減することで、コンテンツ供給装置10のサーバ負荷状態を一定範囲に収めることができる。さらに、サーバ負荷の上限値を超えた場合や下限値を下回った場合にのみコンテンツ供給装置10における平均サーバ負荷状態の変化に応じて、公開コンテンツ数を増減させるようにすれば、さらに効果的にサーバ負荷に対応することができる。
In the above description, the number of published contents is increased / decreased by comparison with a predetermined reference value. However, the number of published contents is increased / decreased for each predetermined period according to a change in the average server load state in the content supply apparatus 10 ( For example, when the server load increases by 10%, the number of published contents may be decreased by 10%). As described above, the server load state of the
なお、コンテンツリストから削除するコンテンツは、例えば、古いコンテンツ順、人気のないコンテンツ順など優先順位をつけるようにしてもよい。 Note that the content to be deleted from the content list may be prioritized, for example, in the order of old content or in order of less popular content.
また、コンテンツリスト生成手段は、コンテンツ供給装置10により新規にコンテンツデータがコンテンツ配信システムSに投入される毎に第2記憶部304に記憶したコンテンツリストを更新する。このコンテンツリストへの更新は、新規に投入したコンテンツの名称などコンテンツデータを特定するための情報をコンテンツリストに追加することによって行われる。
The content list generation unit updates the content list stored in the
(コンテンツリスト提供手段について)
コンテンツリスト提供手段は、端末装置1からのコンテンツリスト配布要求に応じて、第2記憶部304に記憶したコンテンツリストを取り出し、配布要求を行った端末装置1へ配布する。
(About content list provision means)
In response to a content list distribution request from the
(キー情報提供手段について)
キー情報提供手段は、端末装置1からコンテンツキーの要求があると、第2記憶部304から要求に応じたコンテンツキーを取り出して要求元の端末装置1へ送信する。なお、端末装置1からのコンテンツキーの要求には、要求に応じたコンテンツの名称やコンテンツIDなどを含んでおり、キー情報提供手段は、このコンテンツの名称やコンテンツIDに対応するコンテンツキーを第2記憶部304のコンテンツキーデータベースから取り出して、要求元の端末装置1へ送信する。
(Key information provision means)
When there is a request for a content key from the
[1.5.コンテンツ配信システムSの動作]
以下、端末装置1、コンテンツ供給装置10及びコンテンツ管理装置20の詳細動作について、フローチャートを用いて更に具体的に説明する。
[1.5. Operation of Content Distribution System S]
Hereinafter, detailed operations of the
(端末装置1の処理フローの説明)
まず、端末装置1の更に具体的な動作の一例について、図14から図16のフローチャートを参照して説明する。図14から図16は端末装置1における処理を示すフローチャートである。なお、以下の各処理は、端末装置1の制御部113が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of terminal device 1)
First, an example of a more specific operation of the
図14に示すように、端末装置1の電源がONになると、端末装置1のCPU102は、第1記憶部103や第2記憶部104のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム115〜118をCPU102による実行状態とし、制御部113としての機能を動作させた後(ステップS100)、ステップS101に処理を移す。
As illustrated in FIG. 14, when the
ステップS101において、制御部113は、コンテンツ管理装置20からコンテンツリストを取得する。このコンテンツリストの取得は、制御部113がコンテンツ管理装置20に対して、コンテンツリストを要求し、当該要求に対して送信されるコンテンツリストを受信することによって行う。また、制御部113は、以後定期的にコンテンツ供給装置10からコンテンツリストを取得する。
In step S <b> 101, the
このコンテンツリストには、上述のようにコンテンツ配信システムSにおいて取得可能な複数のコンテンツデータの名称等が含まれている。制御部113は、コンテンツ管理装置20からこのコンテンツリストを取得し、コンテンツリストの内容を内蔵ディスプレイ110に表示する。端末装置1の利用者は内蔵ディスプレイ110に表示されているコンテンツリストの内容を見ながら、リモコン106等の操作を行って、コンテンツ配信システムSで提供されているコンテンツデータを選択することができる。そして、リモコン106等の操作によって利用者からコンテンツデータの選択されたとき、制御部113は、利用者からのコンテンツの取得要求操作があったと判定する。
The content list includes names of a plurality of content data that can be acquired in the content distribution system S as described above. The
制御部113は、ステップS102において、利用者からのあるコンテンツ(ここでは、コンテンツXとする。)の取得要求操作があったか否かを判定する。
In step S <b> 102, the
この処理において、制御部113は、利用者からのコンテンツXの取得要求操作があったと判定した場合には(ステップS102:YES)、コンテンツX取得再生処理に移行する(ステップS103)。このステップS103の処理は、図15におけるS150〜S154,S156,S157,S160〜S163の処理であり、後で詳説する。
In this process, when the
一方、ステップS102において、利用者からのコンテンツXの取得要求操作がなかったと判定すると(ステップS102:NO)、制御部113は、登録メッセージを受信したか否かを判定する(ステップS110)。登録メッセージを受信したか否かは、コンテンツ保持端末装置からネットワーク8を介して送信される登録メッセージが自端末装置で受信されたか否かによって判断される。
On the other hand, when it is determined in step S102 that there has been no content X acquisition request operation from the user (step S102: NO), the
この処理において、登録メッセージを受信したと判定すると(ステップS110:YES)、制御部113は、自端末装置がルート端末装置であるか否かを判定する(ステップS111)。端末装置1がルート端末装置であるか否かは、受信した登録メッセージの宛先識別情報と第1記憶部103に記憶したルーティングテーブルとに基づいて判断される。
In this process, if it is determined that a registration message has been received (step S110: YES), the
この処理において、制御部113は、自端末装置がルート端末装置であると判定すると(ステップS111:YES)、制御部113は、受信した登録メッセージに含まれるコンテンツ保持端末装置のIPアドレス及びコンテンツ保持端末装置が保持するコンテンツデータのコンテンツID等を関連付けて第1記憶部103のインデックステーブルに追加する(ステップS112)。一方、端末装置がルート端末装置でないと判定すると(ステップS111:NO)、第1記憶部103に記憶したルーティングテーブルに基づいて、登録メッセージを他の端末装置1へ転送する(ステップS113)。
In this process, when the
ステップS110において、登録メッセージを受信しなかったと判定すると(ステップS110:NO)、制御部113は、コンテンツ供給装置10から投入されるコンテンツデータを受信したか否かを判定する(ステップS120)。
If it is determined in step S110 that a registration message has not been received (step S110: NO), the
この処理において、制御部113は、コンテンツ供給装置10から投入されるコンテンツデータを受信したと判定すると(ステップS120:YES)、投入コンテンツ受信処理を行う(ステップS121)。この投入コンテンツ受信処理は、コンテンツ供給装置10から投入されたコンテンツデータを第2記憶部104に記憶して保存するとともに、ルート端末装置のインデックステーブルに登録するものである。すなわち、制御部113は、ステップS120において受信した投入コンテンツデータを第2記憶部104のコンテンツデータ記憶領域に記憶し、保存する。また、制御部113は、自端末装置がルート端末装置ではないと判定したときに、ルーティングテーブルに基づいて、ネットワーク8を介して登録メッセージを他の端末装置1へ送信し、一方自端末装置がルート端末装置であると判定したときにはインデックステーブルにコンテンツIDと自端末装置のIPアドレスを追加して登録する。
In this process, when the
ステップS120において、投入されるコンテンツデータを受信しなかったと判定すると(ステップS120:NO)、制御部113は、他の端末装置1からコンテンツデータの送信要求があるか否かを判定する(ステップS130)。
If it is determined in step S120 that the input content data has not been received (step S120: NO), the
この処理において、制御部113は、他の端末装置1からコンテンツデータの送信要求があったと判定すると(ステップS130:YES)、ステップS131のコンテンツ送信処理に移行する。このステップS131のコンテンツ送信処理は、図16におけるS170〜S172の処理であり、後で詳述する。
In this process, when the
また、ステップS130において、制御部113は、他の端末装置1からコンテンツデータの送信要求がなかったと判定すると(ステップS130:NO)、検索メッセージを受信したか否かを判定する(ステップS140)。検索メッセージを受信したか否かは、ネットワーク8を介してリクエスト端末装置から送信される検索メッセージが受信されたか否かによって判断される。
In step S130, when the
この処理において、制御部113は、検索メッセージを受信したと判定すると(ステップS140:YES)、ステップS141においてコンテンツ検索処理を行う。このコンテンツ検索処理においては、まずステップS140において受信した検索メッセージからコンテンツIDを取得し、このコンテンツIDがインデックステーブルに存在するか否かを判定する。そして、検索メッセージから取得したコンテンツIDがインデックステーブルに存在すると判定すると、インデックステーブルからコンテンツ保持端末装置の所在情報であるIPアドレスを取得し、このコンテンツ保持端末装置のIPアドレスをネットワーク8を介してリクエスト端末装置へ送信する。
In this process, when the
ステップS140において、検索メッセージを受信しなかったと判定されたとき(ステップS140:NO)、ステップS103、ステップS112、ステップS113、ステップS121、ステップS131、ステップS141の処理が終了したとき、制御部113は、自端末装置の電源がOFF状態へ移行したか否かを判定する(ステップS145)。
When it is determined in step S140 that the search message has not been received (step S140: NO), when the processing of step S103, step S112, step S113, step S121, step S131, and step S141 ends, the
ステップS145において、自端末装置の電源がOFF状態へ移行したと判定すると(ステップS145:YES)、制御部113は、メイン処理を終了し、一方、自端末装置の電源がOFF状態へ移行していないと判定すると(ステップS145:NO)、制御部113は、ステップS102からの処理を繰り返す。
If it is determined in step S145 that the power supply of the terminal device has shifted to the OFF state (step S145: YES), the
次に、S103におけるコンテンツX取得再生処理について図15のフローチャートを参照して具体的に説明する。 Next, the content X acquisition / playback processing in S103 will be specifically described with reference to the flowchart of FIG.
図15に示すように、コンテンツX取得再生処理が開始されると、制御部113は、利用者の取得要求操作に応じたコンテンツXのコンテンツキーをネットワーク8を介してコンテンツ管理装置20に要求(ステップS150)し、処理をステップS151に移行する。
As shown in FIG. 15, when the content X acquisition / playback process is started, the
ステップS151において、制御部113は、コンテンツXのコンテンツキーの受信に成功したか否かを判定する。コンテンツキーの受信に成功したか否かは、制御部113が、コンテンツ管理装置20からコンテンツXのコンテンツキーを受信できたか否かによって行う。
In step S151, the
このステップS151の処理において、コンテンツXのコンテンツキーの受信に成功したと判定すると(ステップS151:YES)、制御部113は、処理をステップS152に移行する。
If it is determined in step S151 that the content key of content X has been successfully received (step S151: YES), the
ステップS152において、制御部113は、第2記憶部104にコンテンツXのデータを既に保持しているか否かを判定する。
In step S <b> 152, the
この処理において、第2記憶部104にコンテンツXのデータを保持していないと判定すると(ステップS152:NO)、制御部113はコンテンツXのデータを保持しているコンテンツ保持端末装置の所在情報であるIPアドレスを取得するために、コンテンツXのコンテンツIDを宛先識別情報とした検索メッセージを、第1記憶部103に記憶したルーティングテーブルに基づいて送信する。この検索メッセージはコンテンツ配信システムSのDHTルーティングによってコンテンツXのルート端末装置に到達する。ルート端末装置はこの検索メッセージに対して、コンテンツXのデータを保持するコンテンツ保持端末装置の所在情報であるIPアドレスを送信し、制御部113は、ルート端末装置から送信されるコンテンツ保持端末装置の所在情報であるIPアドレスを取得し(ステップS153)、このコンテンツ保持端末装置がコンテンツXのデータが送信可能であるか否かを判定する(ステップS154)。
In this process, when it is determined that the content X data is not held in the second storage unit 104 (step S152: NO), the
この処理において、制御部113は、コンテンツXのデータを保持するコンテンツ保持端末装置に対して、コンテンツXのデータの送信要求を行って、当該コンテンツ保持端末装置がコンテンツXのデータが送信可能であるか否かを判定する。
In this process, the
ステップS154において、コンテンツ保持端末装置がコンテンツXのデータの送信可能であると判定すると(ステップS154:YES)、制御部113は、その処理をステップS156に移行する。
If it is determined in step S154 that the content holding terminal device can transmit the data of content X (step S154: YES), the
ステップS156において、制御部113は、コンテンツ保持端末装置からストリーミング形式で送信されるコンテンツXのデータを順次受信しつつ、第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコードし、ビデオチップ109及び音源チップ111を動作させることによりコンテンツデータをストリーム再生する。また、受信したコンテンツXのデータを順次第2記憶部104に記憶していく。
In step S156, the
コンテンツデータのストリーム再生が終了し、受信したコンテンツXのデータの第2記憶部104への記憶が終了してコンテンツXの保存が完了すると、その旨をコンテンツ配信システムSに通知する(ステップS157)。すなわち、コンテンツXのコンテンツ保持端末装置として登録メッセージをコンテンツXのルート端末装置へ送信する。
When the stream reproduction of the content data is finished and the storage of the received content X in the
また、ステップS154において、コンテンツ保持端末装置がコンテンツXのデータの送信を行うことができないと判定すると(ステップS154:NO)、制御部113は、その処理をステップS160に移行する。
If it is determined in step S154 that the content holding terminal device cannot transmit the data of content X (step S154: NO), the
ステップS160において、制御部113は、コンテンツ供給装置10に対して、コンテンツXのデータを送信するように要求し、この要求に応じてコンテンツ供給装置10からストリーミング形式で送信されるコンテンツXのデータを順次受信しつつ、第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコードし、ビデオチップ109及び音源チップ111を動作させることによりコンテンツデータをストリーム再生する(ステップS161)。また、受信したコンテンツXのデータを順次第2記憶部104に記憶していく。その後、処理をステップS157に移行する。
In step S160, the
また、ステップS152において、第2記憶部104にコンテンツXのデータを保持していると判定すると(ステップS152:YES)、制御部113は、第2記憶部104からコンテンツXのデータを取り出し、第2記憶部104のコンテンツキー記憶領域に記憶したコンテンツキーによって復号した後、デコードし、ビデオチップ109及び音源チップ111を動作させることによりコンテンツデータを再生する(ステップS163)。
If it is determined in step S152 that the content X data is stored in the second storage unit 104 (step S152: YES), the
従って、利用者の取得要求操作に応じたコンテンツXのデータがコンテンツ供給装置10から投入され自端末装置がコンテンツ保持端末装置として機能されているようなときには、他のコンテンツ保持端末装置へコンテンツXのデータを取得する操作を行うことなく、コンテンツデータの再生を行うことができるので、端末装置1における処理負担を軽減することができる。また、ネットワークへの負荷も軽減することができる。
Therefore, when content X data corresponding to a user's acquisition request operation is input from the
また、ステップS151において、コンテンツXのコンテンツキーの受信に成功しなかったと判定すると(ステップS151:NO)、制御部113は、コンテンツ管理装置20からの通知を内蔵ディスプレイ110に表示する(ステップS162)。
If it is determined in step S151 that the content key of content X has not been successfully received (step S151: NO), the
コンテンツXのコンテンツキーの受信に成功しない場合としては、例えば、不正なリクエストなどがある。この不正なリクエストとは、コンテンツ管理装置20へのアクセスに関して正当な権限がないことを意味するものであり、例えば、端末装置1がコンテンツ配信システムSに参加する権限がなく不正に参加したときや、端末装置1がコンテンツXを取得する権限がないときに通知される。
As a case where the content key of content X is not successfully received, for example, there is an illegal request. This fraudulent request means that there is no legitimate authority regarding access to the
ステップS157,S162,S163の処理が終了したとき、制御部113は、コンテンツX取得再生処理を終了する。
When the processes of steps S157, S162, and S163 are completed, the
次に、S131におけるコンテンツ送信処理について図16のフローチャートを参照して具体的に説明する。 Next, the content transmission processing in S131 will be specifically described with reference to the flowchart of FIG.
図16に示すように、コンテンツ送信処理が開始されると、制御部113は、コンテンツ送信要求に対応するコンテンツデータを送信可能か否かを判定する(ステップS170)。
As shown in FIG. 16, when the content transmission process is started, the
この処理において、制御部113は、ステップS130において受信したコンテンツデータの送信要求に対し、対応するコンテンツデータが送信可能であるか否かを判定する(ステップS170)。
In this process, the
ここで、制御部113は、対応するコンテンツデータが送信可能であるか否かを、自端末装置のCPUの処理負荷、ネットワークの帯域状態などから判定する。
Here, the
ステップS170において、対応するコンテンツデータが送信可能であると判定すると(ステップS170:YES)、制御部113は、送信要求にかかるコンテンツデータを第2記憶部104から取り出して、要求元の端末装置1に対して送信する(ステップS171)。
If it is determined in step S170 that the corresponding content data can be transmitted (step S170: YES), the
一方、対応するコンテンツデータが送信可能ではないと判定すると(ステップS170:NO)、制御部113は、問い合わせに対応するコンテンツデータが送信可能ではない旨を送信元の端末装置1に送信負荷通知を行う(ステップS172)。
On the other hand, if it is determined that the corresponding content data cannot be transmitted (step S170: NO), the
ステップS171,S172の処理が終了したとき、制御部113は、コンテンツ送信処理を終了する。
When the processes of steps S171 and S172 are completed, the
以上のように、本実施形態における端末装置1は、利用者による取得要求操作が検出されたとき、取得要求操作に応じたコンテンツデータのコンテンツキーをネットワークを介してコンテンツ管理装置20から取得した後、コンテンツデータを取得し、再生するようにしている。
As described above, after the acquisition request operation by the user is detected, the
(コンテンツ供給装置10の処理フローの説明)
次に、コンテンツ供給装置10の更に具体的な動作について、図17を参照して説明する。図17はコンテンツ供給装置10における処理全体を示すフローチャートである。なお、以下の各処理は、コンテンツ供給装置10の制御部213が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of content supply apparatus 10)
Next, a more specific operation of the
図17に示すように、コンテンツ供給装置10の電源がONになると、コンテンツ供給装置10のCPU202は、第1記憶部203や第2記憶部204のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム214〜216をCPU202による実行状態とし、制御部213としての機能を動作させた後(ステップS200)、ステップS201に処理を移す。
As shown in FIG. 17, when the power of the
ステップS201において、制御部213は、コンテンツ投入指示があるか否かを判定する。ここで、制御部213は、コンテンツ投入指示があるか否かを、コンテンツ配信システムSの運営者によるキーボード207やマウス208等の入力手段の操作によってコンテンツ投入の操作がなされたか否かにより判断する。このコンテンツ投入指示は、例えば、コンテンツの名称によってコンテンツデータを特定して行われるものである。
In step S201, the
この処理において、コンテンツ投入指示があると判定されると(ステップS201:YES)、制御部213は、コンテンツ管理装置20にコンテンツ投入通知を行う。すなわち、コンテンツ投入指示によって特定されたコンテンツデータに対応するコンテンツの名称やコンテンツIDなどをコンテンツ管理装置20に通知する(ステップS202)。
In this process, when it is determined that there is a content input instruction (step S201: YES), the
その後、制御部213は、コンテンツ投入指示によって特定されたコンテンツデータをコンテンツ配信システムSによって配信可能とするために、コンテンツ投入指示によって特定されたコンテンツデータのコンテンツ保持端末装置となる端末装置1をランダムに1以上決定する。このように決定した端末装置1に対して、制御部213は、コンテンツ投入指示によって特定されたコンテンツデータをネットワーク8を介して送信する(ステップS203)。
Thereafter, in order to enable the content distribution system S to distribute the content data specified by the content input instruction, the
一方、ステップS201において、コンテンツ投入指示がないと判定されると(ステップS201:NO)、制御部213は、端末装置1からコンテンツデータの送信要求があるか否かを判定する(ステップS210)。コンテンツデータの送信要求は、コンテンツの名称やコンテンツIDなどによってコンテンツデータを特定して行われるものである。
On the other hand, when it is determined in step S201 that there is no content input instruction (step S201: NO), the
この処理において、端末装置1からコンテンツデータの送信要求があったと判定されると(ステップS210:YES)、制御部213は、コンテンツデータの送信要求に対応するコンテンツデータを第2記憶部204から取り出し、ネットワーク8を介して端末装置1へ送信する(ステップS211)。
In this process, when it is determined that there is a content data transmission request from the terminal device 1 (step S210: YES), the
ステップS210において、端末装置1からコンテンツデータの送信要求がないと判定したとき(ステップS210:NO)、制御部213は、サーバ負荷の状態を通知する契機(例えば、10秒毎の契機)になったか否かを判定する(ステップS220)。この処理において、サーバ負荷の状態を通知する契機となったと判定すると(ステップS220:YES)、制御部213は、コンテンツ供給装置10の処理負荷を測定して、その測定結果をサーバ負荷の情報を含むサーバ負荷状態通知をコンテンツ管理装置20へ送信する(ステップS221)。
In step S210, when it is determined that there is no content data transmission request from the terminal device 1 (step S210: NO), the
ステップS203,S211,S221の処理が終了したとき、或いはステップS220においてサーバ負荷の状態を通知する契機となっていないと判定したとき(ステップS220:NO)、制御部213は、コンテンツ供給装置10のサービス終了の操作が行われたか否かを判定する(ステップS230)。サービスの終了操作が行われていないと判定すると(S230:NO)、ステップS201からの処理を繰り返し、コンテンツ供給装置10のサービス終了の操作が行われたと判定すると(S230:YES)、処理を終了する。
When the processes in steps S203, S211, and S221 are completed, or when it is determined in step S220 that the server load state is not triggered (step S220: NO), the
以上のように、コンテンツ供給装置10は、コンテンツ配信システムSを構成する端末装置1に対してコンテンツデータを送信して投入した情報をコンテンツ管理装置20に通知するようにしており、これによりコンテンツ管理装置20は、コンテンツリストを生成及び更新し、端末装置1からの要求に応じて送信する。
As described above, the
また、コンテンツ供給装置10では、端末装置1の要求に応じてコンテンツデータを送信するようにしているため、端末装置1の利用者の取得要求操作に対応するコンテンツデータがネットワークを介して他の端末装置1から取得することができないときでも、コンテンツ供給装置10から取得要求操作に対応するコンテンツデータを取得することができ、コンテンツデータの取得可能性を向上させることができる。
In addition, since the
(コンテンツ管理装置20の処理フローの説明)
次に、コンテンツ管理装置20の更に具体的な動作について、図18及び図19を参照して説明する。図18はコンテンツ管理装置20における処理全体を示すフローチャート、図19はコンテンツリスト更新処理を示すフローチャートである。なお、以下の各処理は、コンテンツ管理装置20の制御部313が上述した手段等として機能することによって実行されるものである。
(Description of processing flow of content management apparatus 20)
Next, a more specific operation of the
図18に示すように、コンテンツ管理装置20の電源がONになると、コンテンツ管理装置20のCPU302は、第1記憶部303や第2記憶部304のアクセス許可、作業領域確保を初期化等の初期設定動作を実行し、各プログラム314〜316をCPU302による実行状態とし、制御部313としての機能を動作させた後(ステップS300)、ステップS301に処理を移す。
As shown in FIG. 18, when the power of the
ステップS301において、制御部313は、端末装置1からコンテンツに関するコンテンツキーの送信要求が受信されたか否かを判定する。この処理において、コンテンツXに関するコンテンツキーの送信要求を受信したと判定すると(ステップS301:YES)、制御部313は、コンテンツキーの送信処理を行う(ステップS302)。すなわち、制御部313は、コンテンツキーを要求した端末装置が正当な(すなわち、コンテンツ配信システムSに参加する正当な資格を有する)端末装置であるか否かを判定し、正当な端末装置であるとき、コンテンツXのコンテンツキーを送信する。
In step S <b> 301, the
また、ステップS301において、コンテンツに関するコンテンツキーの送信要求が受信されていないと判定すると(ステップS301:NO)、制御部313は、コンテンツ供給装置10からコンテンツ投入通知があるか否かを判定する(ステップS310)。この処理において、コンテンツ投入通知があったと判定すると(ステップS310:YES)、制御部313は、第2記憶部204に記憶したコンテンツリストを更新する(ステップS311)。このコンテンツリストへの更新は、コンテンツ投入通知に含まれる情報、すなわち新規に投入したコンテンツの名称などコンテンツデータを特定するための情報をコンテンツリストに追加することによって行われる。
If it is determined in step S301 that a content key transmission request regarding content has not been received (step S301: NO), the
ステップS310において、コンテンツ投入通知がないと判定すると(ステップS310:NO)、制御部313は、端末装置1からコンテンツリストの送信要求があるか否かを判定する(ステップS320)。この処理において、端末装置1からコンテンツリストの送信要求があったと判定すると(ステップS320:YES)、制御部313は、第2記憶部からコンテンツリストを取り出し、要求元の端末装置1へコンテンツリストを送信する(ステップS321)。
If it is determined in step S310 that there is no content input notification (step S310: NO), the
一方、ステップS320において、端末装置1からコンテンツリストの送信要求がないと判定すると(ステップS320:NO)、制御部313は、コンテンツ供給装置10からサーバ負荷状態通知があるか否かを判定する(ステップS330)。この処理において、コンテンツ供給装置10からサーバ負荷状態通知があったと判定すると(ステップS330:YES)、制御部313は、コンテンツリスト更新処理を行う(ステップS331)。このステップS331の処理は、図19におけるS350〜S358の処理であり、後で詳説する。
On the other hand, when it is determined in step S320 that there is no content list transmission request from the terminal device 1 (step S320: NO), the
ステップS302,S311,S321,S331の処理が終了したとき、或いはコンテンツ供給装置10からサーバ負荷状態通知がないと判定したとき(ステップS330:NO)、制御部313は、コンテンツ管理装置20のサービス終了の操作が行われたか否かを判定する(ステップS340)。サービスの終了操作が行われていないと判定すると(S340:NO)、ステップS301からの処理を繰り返し、コンテンツ供給装置10のサービス終了の操作が行われたと判定すると(S340:YES)、処理を終了する。
When the processes of steps S302, S311, S321, and S331 are completed, or when it is determined that there is no server load status notification from the content supply apparatus 10 (step S330: NO), the
次に、S331におけるコンテンツリストの更新処理について図19のフローチャートを参照して具体的に説明する。 Next, the content list update processing in S331 will be specifically described with reference to the flowchart of FIG.
図19に示すように、コンテンツリストの更新処理が開始されると、制御部313は、コンテンツ供給装置10から受信したサーバ負荷の情報を第1記憶部303に記憶(ステップS350)して、処理をステップS351に移行する。
As illustrated in FIG. 19, when the content list update process is started, the
ステップS351において、制御部313は、後述のステップS357或いはステップS300における初期化処理によって開始したタイマーカウントに基づいて、所定期間が経過したか否かを判定する。
In step S351, the
この処理において、所定期間が経過したと判定すると(ステップS351:YES)、制御部313は、第1記憶部に記憶したサーバ負荷の情報に基づいて、平均サーバ負荷を演算する(ステップS352)。すなわち、サーバ負荷の情報はコンテンツ供給装置10から一定期間毎(例えば、10秒毎)に送信されており、これよりも長い時間(例えば、1分)を所定期間とし、この所定期間が到来するまで、コンテンツ供給装置10から送信されるサーバ負荷の情報を第1記憶部303に記憶し、所定期間が到来したときに第1記憶部303に記憶された複数のサーバ負荷の情報(例えば、10秒単位でサーバ負荷状態が送信される場合に前記所定期間を1分とすると、6つのサーバ負荷状態情報)の平均値である平均サーバ負荷を演算する。
In this process, when it is determined that the predetermined period has elapsed (step S351: YES), the
次に、制御部313は、上述のように演算した平均サーバ負荷の状態がサーバ負荷の上限値よりも大きいか否かを判定する(ステップS353)。この処理において、平均サーバ負荷状態がサーバ負荷の上限値よりも大きいと判定すると(ステップS353:YES)、制御部313は、コンテンツリストに掲載するコンテンツデータの数(掲載コンテンツ数)を所定数だけ減少して、端末装置間で送受信可能なコンテンツデータの数である公開コンテンツ数を減少させる(ステップS354)。
Next, the
このように、平均サーバ負荷状態が所定の上限値よりも多いとき、コンテンツリストに掲載するコンテンツデータの所定数減少させているため、端末装置1からコンテンツ管理装置20へのコンテンツデータの送信要求を低減することができる。
As described above, when the average server load state is larger than the predetermined upper limit value, since the predetermined number of content data to be posted in the content list is decreased, a request for transmission of content data from the
ステップS353において、平均サーバ負荷状態がサーバ負荷の上限値よりも大きくないと判定すると(ステップS353:NO)、制御部313は、平均サーバ負荷状態がサーバ負荷の下限値よりも小さいか否かを判定する(ステップS355)。この処理において、平均サーバ負荷状態がサーバ負荷の下限値よりも小さいと判定すると(ステップS355:YES)、制御部313は、さらに、コンテンツリストから情報を減少させている状態か否かを判定する(ステップS356)。ここで、「コンテンツリストから情報を減少させている状態」とは、コンテンツ配信システムS内のコンテンツデータのうち、コンテンツリストに掲載していないコンテンツデータがあることを意味する。
If it is determined in step S353 that the average server load state is not larger than the upper limit value of the server load (step S353: NO), the
ステップS356において、コンテンツリストから情報を減少させている状態であると判定すると(ステップS356:YES)、制御部313は、コンテンツリストに掲載するコンテンツデータの数(掲載コンテンツ数)を所定数だけ増加して、端末装置間で送受信可能なコンテンツデータの数を増加させる(ステップS357)。言い換えれば、ステップS355において減少させた掲載コンテンツ数を所定数だけ元に戻すのである。
If it is determined in step S356 that the information is being reduced from the content list (step S356: YES), the
このように、平均サーバ負荷状態が所定の下限値よりも小さいとき、コンテンツリストに掲載するコンテンツデータの所定数増加させているため、サーバ負荷状態が大きくなったために減少させた掲載コンテンツ数を所定数元に戻すことができる。したがって、サーバ負荷状態が過負荷の状態になった後に、コンテンツ配信システムSに参加する端末装置1の数が増加してコンテンツ配信システムS内のコンテンツデータの数との関係で適切な数になったときなどにおいて、コンテンツ配信システムS内のコンテンツデータをすべて掲載したコンテンツリストを提供することができる。
As described above, when the average server load state is smaller than the predetermined lower limit value, the predetermined number of content data to be posted in the content list is increased. It can be returned to a few. Therefore, after the server load state becomes an overload state, the number of
ステップS354,S357の処理が終了したとき、平均サーバ負荷状態がサーバ負荷の下限値よりも小さくないと判定したとき(ステップS355:NO)、コンテンツリストから情報を減少させている状態でないと判定したとき(ステップS356:NO)、制御部313は、所定期間後にステップS352〜S357に示す処理を繰り返すためにタイマーの値をリセットし、タイマーのカウントを開始し(ステップS358)、コンテンツリストの更新処理を終了する。また、ステップS351において、所定期間が経過していないと判定したとき(ステップS351:NO)も同様に、コンテンツリストの更新処理を終了する。
When the processes of steps S354 and S357 are completed, when it is determined that the average server load state is not smaller than the lower limit value of the server load (step S355: NO), it is determined that the information is not being reduced from the content list. When (step S356: NO), the
以上のように、本実施形態におけるコンテンツ管理装置20は、コンテンツ供給装置10のサーバ負荷状態から、端末装置間で送受信可能なコンテンツデータの数である公開コンテンツ数を変更して、コンテンツ供給装置10のサーバ負荷状態を低減させるようにしており、コンテンツ供給装置10が過負荷によりダウンするなどの問題を事前に対応することができる。
As described above, the
[2.第2実施形態]
次に、本発明に係る第2実施形態について説明する。この第2実施形態のコンテンツ配信システムは、第1実施形態と同様に端末装置1とコンテンツ供給装置10とコンテンツ管理装置20とから構成されるものであるが、公開コンテンツ数の調整方法が第1実施形態と異なる。すなわち、第1実施形態においては、コンテンツリストに掲載するコンテンツデータの数を調整することによって公開コンテンツ数を変更するものであったが、第2実施形態においては、コンテンツキーの送信を制限することによって公開コンテンツ数を変更するものである。
[2. Second Embodiment]
Next, a second embodiment according to the present invention will be described. The content distribution system according to the second embodiment is composed of the
コンテンツ管理装置20による公開コンテンツ数の減少は、コンテンツキーの送信を所定割合で制限することによって行われる。例えば、コンテンツキーの要求に対して3回に1回の割合でコンテンツキーの送信を行わないようにする。これにより、公開コンテンツ数を実質的に1/3減少させることができる。また、コンテンツキーの要求に対してコンテンツキーの送信を行わない期間を調整することにより、公開コンテンツ数を実質的に減少させるようにしてもよい。
The decrease in the number of published contents by the
また、コンテンツ管理装置20による公開コンテンツ数の増加は、コンテンツキーの送信制限を緩和或いは解除することによって行われる。例えば、コンテンツキーの要求に対して3回に1回の割合でコンテンツキーの送信を行わないようにしている(送信制限)状態から、6回に1回の割合での送信制限状態とすることによって、公開コンテンツ数を実質的に1/6だけ増加させることができる。
Further, the increase in the number of public contents by the
なお、コンテンツキーの送信制限が行われていない状態では、このコンテンツキーの送信制限での公開コンテンツ数の増加を行うことができない。そこで、第1実施形態と同様に、コンテンツ管理装置20は、コンテンツデータをコンテンツ供給装置10に対して、所要の公開コンテンツ数の増加に応じた数のコンテンツデータを送信或いは追加投入するように要求するように設定することができるようにしている。この要求に応じてコンテンツ供給装置10は、コンテンツデータを複数の端末装置へ送信或いは投入する。
In a state where content key transmission is not restricted, the number of published contents cannot be increased with the content key transmission restriction. Therefore, as in the first embodiment, the
この第2実施形態のコンテンツ配信システムにおいては、端末装置1とコンテンツ供給装置10の構成及び動作は第1実施形態で説明したものと同一であるため、ここではその説明を省略する。なお、説明の便宜上、ここでは、第1実施形態において各装置に付した符号と同一符号を用いるものとする。
In the content distribution system of the second embodiment, the configurations and operations of the
[2.1.コンテンツ管理装置20の構成等の説明]
まず、第2実施形態のコンテンツ管理装置20の構成について説明する。この第2実施形態のコンテンツ管理装置20は、コンテンツ調整プログラム316の内容が一部異なる以外は、第1実施形態のものと異なるところがないため、ここでは、特に異なる部分のみを説明する。
[2.1. Description of Configuration of Content Management Device 20]
First, the configuration of the
第1実施形態と同様に、CPU302はコンテンツ調整プログラム316を実行することによって負荷状態取得手段、コンテンツ数調整手段等として、それぞれ機能するようになっている。なお、この負荷状態取得手段については第1実施形態で説明した機能と同様であるため、ここでは、コンテンツ数調整手段について説明する。
Similar to the first embodiment, the
(コンテンツ数調整手段について)
コンテンツ数調整手段は、負荷状態取得手段によって取得したサーバ負荷の状態に基づいて、端末装置1間で送受信可能なコンテンツデータの数である公開コンテンツ数を変更する。例えば、コンテンツ数調整手段は、コンテンツ供給装置10の平均サーバ負荷状態が所定の上限値(第1の負荷の一例に相当)よりも高い負荷状態であると判定すると、公開コンテンツ数を所定数減少させる。また、コンテンツ数調整手段は、平均サーバ負荷状態が所定の下限値(第2の負荷状態に相当)よりも低い負荷状態であると判定すると公開コンテンツ数を所定数増加させる。
(About the number of contents adjustment means)
The content number adjusting unit changes the number of published contents, which is the number of content data that can be transmitted and received between the
ここで、公開コンテンツ数の変更は、キー情報提供手段によるコンテンツキーの送信規制による調整によって行う。 Here, the change in the number of public contents is performed by adjustment based on the content key transmission restriction by the key information providing means.
まず、キー情報提供手段は、端末装置1からコンテンツキーの要求を受け付ける。このとき、キー情報提供手段は、コンテンツ供給装置10のサーバ負荷状態に応じて、コンテンツキーの送信を行うか否かを判定する。具体的には、コンテンツ供給装置10のサーバ負荷状態が所定の上限値(第1の負荷状態)を超えているか否か、コンテンツ供給装置10のサーバ負荷状態が所定の下限値(第2の負荷状態)を下回っているか否かを判定する。例えば、図10に示すような特性をコンテンツ配信システムSが有しているときに、図10に示す「A」を所定の上限値とし、図10に示す「B」を所定の下限値とする。
First, the key information providing unit accepts a content key request from the
次に、キー情報提供手段は、コンテンツ供給装置10のサーバ負荷状態が所定の上限値以下でかつ所定の下限値のとき、第2記憶部304から要求に応じたコンテンツキーを取り出して要求元の端末装置1へ送信する。なお、端末装置1からのコンテンツキーの要求には、要求に応じたコンテンツIDが含まれており、キー情報提供手段はこのコンテンツIDに対応するコンテンツキーを第2記憶部304のコンテンツキーデータベースから取り出すことになる。
Next, when the server load state of the
一方、コンテンツ供給装置10のサーバ負荷状態が所定の上限値を超えているとき、キー情報提供手段は、コンテンツキーの要求に対して、所定の割合でコンテンツキーの送信を行わずに拒否するこれにより、公開コンテンツ数を前記所定の割合で減少させることができる。例えば、5つのコンテンツキーの要求のうち、1つのコンテンツキーの要求に対しては、コンテンツキーの送信を拒否するメッセージを送信し、4つのコンテンツキーの要求に対しては、第2記憶部304から要求に応じたコンテンツキーを取り出して要求元の端末装置1へ送信する。これにより、公開コンテンツ数の数を4/5に減少させることができる。
On the other hand, when the server load state of the
また、このように所定の割合でコンテンツキーの送信を拒否している状態で、コンテンツ供給装置10のサーバ負荷状態が所定の上限値を超えているとき、キー情報提供手段は、コンテンツキーの送信を拒否する割合を増加させる。例えば、公開コンテンツ数を上述のように4/5に減少させても、コンテンツ供給装置10のサーバ負荷状態が所定の上限値を超えているとき、キー情報提供手段は、コンテンツキーの送信を拒否する割合を増加させる。例えば、5つのコンテンツキーの要求のうち、2つのコンテンツキーの要求に対しては、コンテンツキーの送信を拒否するメッセージを送信する。
In addition, when the server load state of the
また、所定の割合でコンテンツキーの送信を拒否している状態で、コンテンツ供給装置10のサーバ負荷状態が所定の下限値を下回っているとき、キー情報提供手段は、コンテンツキーの送信を拒否する割合を減少させる。例えば、公開コンテンツ数を上述のように3/5に減少させたときに、コンテンツ供給装置10のサーバ負荷状態が所定の下限値を下回ったとき、キー情報提供手段は、コンテンツキーの送信を拒否する割合を、5つのコンテンツキーの要求のうち1つのコンテンツキーの要求に対してのみ、コンテンツキーの送信を拒否するメッセージを送信する。
Further, when the server load state of the
このように本実施形態におけるコンテンツ管理装置20は、コンテンツキーの送信を拒否する割合を増減させることによって、公開コンテンツ数を増減させるため、処理が複雑にならずに済む。
As described above, the
また、上記のようにコンテンツキーの送信を拒否する割合を増減させるのではなく、コンテンツ供給装置10のサーバ負荷状態が所定の上限値を超えているときには、コンテンツキーの送信を全て拒否するようにしてもよい。
In addition, instead of increasing or decreasing the content key rejection rate as described above, when the server load state of the
また、コンテンツキーの送信を拒否するのではなく、コンテンツキーの送信要求をストックしておき、コンテンツキーの送信のタイミングを遅延させるようにしてもよい。 Further, instead of rejecting the content key transmission, a content key transmission request may be stocked to delay the content key transmission timing.
[2.2.コンテンツ管理装置20の処理フローの説明]
次に、コンテンツ管理装置20の更に具体的な動作について、図20及び図21を参照して説明する。図20は第2実施形態のコンテンツ管理装置20における処理全体を示すフローチャート、図21は第2実施形態のコンテンツリスト更新の処理を示すフローチャートである。なお、以下の各処理は、コンテンツ管理装置20の制御部313が上述した手段等として機能することによって実行されるものである。
[2.2. Description of processing flow of content management apparatus 20]
Next, a more specific operation of the
まず、コンテンツ管理装置20におけるメイン処理について図20を参照して説明する。この図20に示すフローチャートと図18に示すフローチャートとは、ステップS202及びステップS402の処理、ステップS231及びステップS431の処理が異なり、その他の処理は同じであるため、ここではステップS402及びステップS431の処理についてのみ説明する。
First, main processing in the
図20に示すように、ステップS401において、コンテンツ投入指示があると判定される(ステップS401:YES)と、制御部313は、第1記憶部303に記憶した後述のコンテンツキー制限値に応じてコンテンツキーの送信の可否を決定し、コンテンツキーを送信する場合には、要求元の端末装置1へコンテンツキーを送信する。一方、コンテンツキーの送信を行わずに拒否する場合には、要求元の端末装置へその旨を通知する(ステップS402)。
As shown in FIG. 20, when it is determined in step S401 that there is a content input instruction (step S401: YES), the
また、ステップS430において、コンテンツ供給装置10からサーバ負荷状態通知があった場合(ステップ430:YES)、制御部313は、コンテンツキー制限値設定処理を行う(ステップS431)。
In step S430, when there is a server load state notification from the content supply apparatus 10 (step 430: YES), the
この処理は、図21におけるS450〜S458に具体的に示す処理であり、以下に図21を参照して説明する。この図21に示すフローチャートと図19に示すフローチャートとは、ステップS354及びステップS454の処理、ステップS357及びステップS457の処理が異なり、その他の処理は同じであるため、ここでは説明を省略し、ステップS454及びステップS457の処理を説明する。 This process is a process specifically shown in S450 to S458 in FIG. 21, and will be described below with reference to FIG. The flowchart shown in FIG. 21 is different from the flowchart shown in FIG. 19 in the processing in step S354 and step S454, the processing in step S357 and step S457, and the other processing is the same. The process of S454 and step S457 will be described.
図21に示すように、ステップS453において、平均サーバ負荷状態がサーバ負荷の上限値よりも大きいと判定すると(ステップS453:YES)、制御部313は、上述したようにコンテンツキーの送信を所定の割合で制限するコンテンツキー制限値を設定する(ステップS454)。
As shown in FIG. 21, when it is determined in step S453 that the average server load state is larger than the upper limit value of the server load (step S453: YES), the
また、ステップS455において、平均サーバ負荷状態がサーバ負荷の下限値よりも小さいと判定すると(ステップS455:YES)、制御部313は、コンテンツ供給装置10がコンテンツキーの送信を制限している状態であるか否かを判定する(ステップS456)。この処理において、コンテンツキーの送信制限が行われていると判定すると(ステップS456:YES)、制御部313は、上述したようにコンテンツキーの送信の制限を所定の割合で解除したコンテンツキー制限値を設定する(ステップS457)。
If it is determined in step S455 that the average server load state is smaller than the lower limit value of the server load (step S455: YES), the
ステップS454,S457の処理が終了したとき、コンテンツキーの送信制限が行われていないと判定したとき(ステップS456:NO)、或いは平均サーバ負荷状態がサーバ負荷の下限値よりも小さくないと判定したとき(ステップS455:NO)、制御部313は、所定期間後にステップS452〜S457に示す処理を繰り返すためにタイマーの値をリセットし、タイマーのカウントを開始し(ステップS458)、コンテンツリストの更新処理を終了する。
When the processes of steps S454 and S457 are completed, when it is determined that the content key transmission restriction is not performed (step S456: NO), or it is determined that the average server load state is not smaller than the lower limit value of the server load. When (step S455: NO), the
以上のように、本実施形態におけるコンテンツ管理装置20は、コンテンツ供給装置10のサーバ負荷状態から、コンテンツキーの送信制限を行うことで、端末装置間で送受信可能なコンテンツデーの数である公開コンテンツ数を変更し、コンテンツ供給装置10のサーバ負荷を低減させるようにしており、コンテンツ供給装置10が過負荷によりダウンするなどの問題を事前に対応することができる。
As described above, the
また、上記実施形態においては、コンテンツ管理装置20から端末装置1に対してコンテンツキーを送信する態様について説明したが、端末装置間で送受信可能なコンテンツデーの数である公開コンテンツ数の変更をコンテンツリストにより行う場合には、コンテンツキーを用いないコンテンツ配信システムとすることもできる。この場合、図8(2)〜図8(4)の処理は行う必要がないため、コンテンツデータの取得・再生処理が簡易になる。
Moreover, in the said embodiment, although the aspect which transmits a content key with respect to the
また、本実施形態においては、コンテンツ供給装置10とコンテンツ管理装置20とを別体の装置として説明したがこれに限られるものではなく、これらを一体としたサーバ装置でもあってもよい。つまり、コンテンツ供給装置10の機能とコンテンツ管理装置20の機能とを実行できるのであればどのような形態であってもよい。
In the present embodiment, the
また、本実施形態においては、端末装置1間でのコンテンツデータの送受信の形式をストリーミング形式として説明したがこれに限られるものではなく、ダウンロード形式であってもよい。
In the present embodiment, the transmission / reception format of content data between the
また、本実施形態においては、コンテンツキーをコンテンツデータを復号するための復号キーとした例を説明したが、これに限られるものではなく、例えば、リクエスト端末装置がコンテンツ保持端末装置からコンテンツデータを取得する際に用いるようにしてもよい。例えば、コンテンツ保持端末装置は正しいコンテンツキーが送信されてきたときに、リクエスト端末装置にコンテンツデータを送信するのである。この場合、コンテンツデータにはコンテンツキーに対応する情報が格納され、リクエスト端末装置はこの情報とリクエスト端末装置から送信されるコンテンツキーとが一致するときに、リクエスト端末装置へコンテンツデータを送信する。 Further, in this embodiment, an example in which the content key is a decryption key for decrypting content data has been described. However, the present invention is not limited to this. For example, the request terminal device receives content data from the content holding terminal device. You may make it use when acquiring. For example, the content holding terminal device transmits content data to the requesting terminal device when a correct content key is transmitted. In this case, information corresponding to the content key is stored in the content data, and the request terminal device transmits the content data to the request terminal device when this information matches the content key transmitted from the request terminal device.
S コンテンツ配信システム
1 端末装置
2 コンテンツ供給装置
3 コンテンツキー管理装置
8 ネットワーク
102 端末装置のCPU
103 端末装置の第1記憶部
104 端末装置の第2記憶部
113 端末装置の制御部
202 コンテンツ供給装置のCPU
203 コンテンツ供給装置の第1記憶部
204 コンテンツ供給装置の第2記憶部
213 コンテンツ供給装置の制御部
302 コンテンツ管理装置のCPU
303 コンテンツ管理装置の第1記憶部
304 コンテンツ管理装置の第2記憶部
S
103 Terminal Device
203
303
Claims (14)
前記コンテンツ供給装置の負荷状態を取得する負荷状態取得手段と、
前記負荷状態取得手段によって取得した負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するコンテンツ数調整手段と、を備える
ことを特徴とするコンテンツ管理装置。 The content data is composed of a plurality of terminal devices arranged on a network, transmits / receives content data between the terminal devices, and responds to a request from a terminal device that cannot acquire desired content data from another terminal device. In a content management device for managing content in a content distribution system having a content supply device that transmits a request to a terminal device that has made the request via the network,
Load status acquisition means for acquiring the load status of the content supply device;
Content management apparatus, comprising: content number adjustment means for changing the number of content data that can be transmitted and received between the terminal devices based on the load status acquired by the load status acquisition means.
前記コンテンツ供給装置における所定期間当たりの平均負荷状態を前記コンテンツ供給装置の負荷状態として取得する
ことを特徴とする請求項1に記載のコンテンツ管理装置。 The load state acquisition means includes
The content management apparatus according to claim 1, wherein an average load state per predetermined period in the content supply apparatus is acquired as a load state of the content supply apparatus.
前記コンテンツ供給装置における前記平均負荷状態の変化に応じて、前記所定期間毎に前記端末装置間で送受信可能なコンテンツデータの数を増減させる
ことを特徴とする請求項2に記載のコンテンツ管理装置。 The content number adjusting means includes:
The content management device according to claim 2, wherein the number of content data that can be transmitted and received between the terminal devices is increased or decreased for each predetermined period in accordance with a change in the average load state in the content supply device.
前記コンテンツ供給装置における前記平均負荷状態が第1の負荷状態を超えていると判定すると、前記端末装置間で送受信可能なコンテンツデータの数を所定数減少させる
ことを特徴とする請求項2に記載のコンテンツ管理装置。 The content number adjusting means includes:
The number of content data that can be transmitted and received between the terminal devices is decreased by a predetermined number when it is determined that the average load state in the content supply device exceeds the first load state. Content management device.
前記コンテンツ供給装置における前記平均負荷状態が第2の負荷状態よりも低い負荷状態であると判定すると、前記端末装置間で送受信可能なコンテンツデータの数を所定数増加させる
ことを特徴とする請求項2又は請求項4に記載のコンテンツ管理装置。 The content number adjusting means includes:
The number of content data that can be transmitted and received between the terminal devices is increased by a predetermined number when the average load state in the content supply device is determined to be a load state lower than a second load state. The content management apparatus according to claim 2 or 4.
当該コンテンツ配信システムを構成する端末装置の数に応じて、前記第2の負荷状態を設定する
ことを特徴とする請求項5に記載のコンテンツ管理装置。 The content number adjusting means includes:
The content management apparatus according to claim 5, wherein the second load state is set according to the number of terminal devices constituting the content distribution system.
前記コンテンツ数調整手段は、
前記テーブルに基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更する
ことを特徴とする請求項2に記載のコンテンツ管理装置。 A table associating the load state of the content supply device with the number of content data;
The content number adjusting means includes:
The content management device according to claim 2, wherein the number of content data that can be transmitted and received between the terminal devices is changed based on the table.
前記コンテンツ数調整手段は、前記コンテンツリストを変更することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行う
ことを特徴とする請求項1〜7のいずれか一項に記載のコンテンツ管理装置。 A list of content data that can be transmitted / received between the terminal devices, comprising: a content list providing unit that provides the terminal device with a content list used in the terminal device to transmit / receive content data between the terminal devices;
The said content number adjustment means changes the number of content data which can be transmitted / received between the said terminal devices by changing the said content list. The content of any one of Claims 1-7 characterized by the above-mentioned. Content management device.
前記コンテンツ数調整手段は、前記キー情報の送信を制限することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行う
ことを特徴とする請求項1〜7のいずれか一項に記載のコンテンツ管理装置。 Key information providing means for transmitting key information for reproducing the content data on the terminal device in response to a request from the terminal device;
The content number adjusting means changes the number of content data that can be transmitted and received between the terminal devices by restricting the transmission of the key information. The content management apparatus described.
所望のコンテンツデータを他の端末装置から取得できない端末装置からの要求に応じて、前記コンテンツデータを前記ネットワークを介して前記要求を行った端末装置へ送信するコンテンツ供給手段を備えるコンテンツ供給装置と、
前記コンテンツ供給手段の負荷状態を取得する負荷取得検出手段を備え、前記負荷状態取得手段によって取得した負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するコンテンツ管理装置と、を備える
ことを特徴とするコンテンツ配信システム。 In a content distribution system configured by a plurality of terminal devices arranged on a network and transmitting / receiving content data between the terminal devices,
A content supply device comprising content supply means for transmitting the content data to the terminal device that has made the request via the network in response to a request from a terminal device that cannot obtain desired content data from another terminal device;
A content management device comprising load acquisition detection means for acquiring the load state of the content supply means, and changing the number of content data that can be transmitted and received between the terminal devices based on the load state acquired by the load state acquisition means; A content distribution system comprising:
前記端末装置間でコンテンツデータの送受信可能なコンテンツデータのリストであって、端末装置間でコンテンツデータの送受信を行うために前記端末装置で用いられるコンテンツリストを前記端末装置に提供するコンテンツリスト提供手段を備え、
前記コンテンツリストを変更することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行う
ことを特徴とする請求項11に記載のコンテンツ配信システム。 The content management device includes:
Content list providing means for providing a content list that can be transmitted / received between the terminal devices and that is used by the terminal device to transmit / receive content data between the terminal devices to the terminal device With
The content distribution system according to claim 11, wherein the number of content data that can be transmitted and received between the terminal devices is changed by changing the content list.
前記コンテンツデータを前記端末装置で再生するための再生キー情報を、前記端末装置からの要求に応じて送信するキー情報提供手段を備え、
前記キー情報の送信を制限することによって、前記端末装置間で送受信可能なコンテンツデータの数の変更を行う
ことを特徴とする請求項11に記載のコンテンツ配信システム。 The content management device includes:
Key information providing means for transmitting reproduction key information for reproducing the content data on the terminal device in response to a request from the terminal device;
The content distribution system according to claim 11, wherein the number of content data that can be transmitted and received between the terminal devices is changed by restricting transmission of the key information.
前記コンテンツ供給装置の負荷状態を取得するステップと、
前記取得したコンテンツ供給装置の負荷状態に基づいて、前記端末装置間で送受信可能なコンテンツデータの数を変更するステップと、を有する
ことを特徴とするコンテンツ配信システムにおける情報処理方法。 A content distribution system that includes a plurality of terminal devices arranged on a network and transmits / receives content data between the terminal devices. In response to a request from a terminal device that cannot acquire desired content data from another terminal device. Accordingly, in an information processing method in a content distribution system including a content supply device that transmits the content data to the terminal device that has made the request via the network.
Obtaining a load state of the content supply device;
Changing the number of content data that can be transmitted and received between the terminal devices based on the acquired load state of the content supply device. An information processing method in a content distribution system, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007048106A JP2008210295A (en) | 2007-02-27 | 2007-02-27 | Content distribution system, its information processing method, content administration apparatus, and its program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007048106A JP2008210295A (en) | 2007-02-27 | 2007-02-27 | Content distribution system, its information processing method, content administration apparatus, and its program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008210295A true JP2008210295A (en) | 2008-09-11 |
Family
ID=39786514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007048106A Pending JP2008210295A (en) | 2007-02-27 | 2007-02-27 | Content distribution system, its information processing method, content administration apparatus, and its program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008210295A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011008711A (en) * | 2009-06-29 | 2011-01-13 | Brother Industries Ltd | Node device, processing program and distributed storage method |
JP2011070588A (en) * | 2009-09-28 | 2011-04-07 | Brother Industries Ltd | Content distribution system, node device, node program, and public message transmitting method |
-
2007
- 2007-02-27 JP JP2007048106A patent/JP2008210295A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011008711A (en) * | 2009-06-29 | 2011-01-13 | Brother Industries Ltd | Node device, processing program and distributed storage method |
JP2011070588A (en) * | 2009-09-28 | 2011-04-07 | Brother Industries Ltd | Content distribution system, node device, node program, and public message transmitting method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008250569A (en) | Content delivery system, information processing method, content management device and program | |
US7882168B2 (en) | Contents distribution system, node apparatus and information processing method thereof, as well as recording medium on which program thereof is recorded | |
JP4640307B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DISTRIBUTION METHOD, TERMINAL DEVICE IN CONTENT DISTRIBUTION SYSTEM, AND PROGRAM THEREOF | |
JP2008059399A (en) | Content distribution system, information processing method for content distribution system, terminal device, and its program | |
US20110099372A1 (en) | Method and system for providing peer-to-peer video on demand | |
US8175267B2 (en) | Communication apparatus, communication system, transmission method, and computer program product | |
US20090282250A1 (en) | Communication apparatus, server, and computer program product therefor | |
JP2008092236A (en) | Terminal in content distribution system, information processing method and program therefor | |
JP4692278B2 (en) | Content distribution system, terminal device, information processing method thereof, and program thereof | |
US8762481B2 (en) | Information distribution system, terminal apparatus used in same system, and recording medium on which information processing program is recorded so as to be computer readable, as well as information processing method | |
JP7397082B2 (en) | Secure data channel in network gaming systems | |
JP2008210295A (en) | Content distribution system, its information processing method, content administration apparatus, and its program | |
JP5168055B2 (en) | COMMUNICATION SYSTEM, TERMINAL DEVICE, AND CONTENT INFORMATION ACQUISITION METHOD | |
JP2009211158A (en) | Content reproducing device and its program, content distribution system and content distribution method | |
JP4797679B2 (en) | CONTENT DISTRIBUTION SYSTEM, CONTENT DATA MANAGEMENT DEVICE, ITS INFORMATION PROCESSING METHOD, AND ITS PROGRAM | |
JP2008294648A (en) | Information distributing system, terminal apparatus to be used for the same, program, and information processing method | |
JP2007336396A (en) | Content distribution system, content distribution method, terminal device and program therefor | |
JP2008061046A (en) | Content distribution system, information processing method in content distribution system, terminal apparatus and its program | |
JP2008242990A (en) | Information communication system, terminal apparatus included therein, information processing method, and program therefor | |
JP5293457B2 (en) | Distributed storage system, node device, and processing method and program thereof | |
JP5287059B2 (en) | Node device, node processing program, and storage instruction method | |
JP2012178641A (en) | Information communication system, information processing method, node device, and program | |
JP2009200725A (en) | Information delivery system, method of forming hierarchical structure in the system, and program | |
JP2009246817A (en) | Server system, and distribution system | |
JP2008084030A (en) | Identification information assigning device, its information processing method, and program therefor |