JP2010251836A - Node device and computer program - Google Patents
Node device and computer program Download PDFInfo
- Publication number
- JP2010251836A JP2010251836A JP2009095934A JP2009095934A JP2010251836A JP 2010251836 A JP2010251836 A JP 2010251836A JP 2009095934 A JP2009095934 A JP 2009095934A JP 2009095934 A JP2009095934 A JP 2009095934A JP 2010251836 A JP2010251836 A JP 2010251836A
- Authority
- JP
- Japan
- Prior art keywords
- node
- content
- node device
- information
- relay
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、P2P(ピア・トゥ・ピア、peer-to-peer)ネットワークを構成する各ノードにおいてコンテンツを分散管理するノード装置及びコンピュータプログラムに関する。 The present invention relates to a node apparatus and a computer program that distribute and manage content in each node constituting a peer-to-peer (P2P) network.
<P2PとDHT(分散ハッシュテーブル)を用いたコンテンツの分散管理>
近年、日本においては、インターネットの普及が急速に進んでおり、2007年末でのインターネットの人口普及率は69.0%に達した。中でもFTTH(Fiber to the home)やxDSL(Digital Subscriber Line)のようなブロードバンド回線の利用者数がインターネット利用者数に占める割合は66.1%となっており、ブロードバンドインターネットを利用した通信が当たり前となりつつある。このようなブロードバンド環境においては、HD(High Definition)映像をはじめとする大容量のコンテンツの配信が可能となる。これまでは、映像をはじめとするコンテンツ配信サービスといえば、パーソナルコンピュータ向けのサービスが中心であったが、2007年11月のアクトビラによる対応受信機向けの有料映像配信サービスの開始、2008年6月のIPTVフォーラムの設立、等に代表されるように、デジタル放送受信機向けの通信を利用したコンテンツ配信サービス(IPTV(Internet Protocol TeleVision)サービス)も盛んになりつつある。
<Distributed Content Management Using P2P and DHT (Distributed Hash Table)>
In recent years, the spread of the Internet is rapidly progressing in Japan, and the Internet population penetration rate reached 69.0% at the end of 2007. Among them, the number of users of broadband lines such as FTTH (Fiber to the home) and xDSL (Digital Subscriber Line) accounted for 66.1% of the Internet users, and communication using broadband Internet is natural. It is becoming. In such a broadband environment, large-capacity content such as HD (High Definition) video can be distributed. Until now, content distribution services such as video were mainly services for personal computers. In November 2007, the launch of paid video distribution services for compatible receivers by Actvila, June 2008 As represented by the establishment of the IPTV Forum, content distribution services (IPTV (Internet Protocol TeleVision) service) using communication for digital broadcast receivers are also becoming popular.
このようなコンテンツ配信サービスでは、クライアント−サーバ型のシステム構築が一般的となっているが、コンテンツ配信事業者のように、大規模なサービスやユーザ数を想定した場合、アクセスの集中によるサーバやネットワークの負荷増大などの問題が発生する。しかし、このような問題を解決するためには、大規模なシステム構築やネットワークインフラ整備などに、莫大なコストが必要となってしまう。例えば、2008年11月現在の地上デジタル放送対応受信機の累計出荷台数は約4400万台であり、受信機の普及規模を想定すると、コストの問題を解決する必要がある。 In such content distribution services, client-server type system construction is common, but when a large-scale service and the number of users are assumed, such as content distribution companies, Problems such as increased network load occur. However, in order to solve such a problem, enormous costs are required for large-scale system construction and network infrastructure maintenance. For example, as of November 2008, the cumulative shipment number of receivers compatible with terrestrial digital broadcasting is about 44 million units, and it is necessary to solve the cost problem when the spread scale of receivers is assumed.
これらの問題の解決策として、P2Pネットワークを用いたコンテンツ配信技術が注目されている。このP2P技術は、サーバからの情報トラフィック量を極力減らすとともに端末間でコンテンツのやり取りなどを行うため、システムやネットワークインフラの構築の規模を抑えられるだけでなく、輻輳によってかかるサーバ負荷やネットワーク負荷を大幅に軽減することが出来るという特徴をもつ。 As a solution to these problems, a content distribution technique using a P2P network has attracted attention. This P2P technology reduces the amount of information traffic from the server as much as possible and exchanges content between terminals, so it not only reduces the scale of system and network infrastructure construction, but also reduces server load and network load caused by congestion. It has the feature that it can be greatly reduced.
このようなP2P技術を用いたコンテンツ配信サービスのシステムを構築するためには、P2Pネットワークにおけるコンテンツの所在を検索し発見できる機能が必須となるが、コンテンツやノードの情報を、サービスに参加している複数のノードで分散管理することにより、コンテンツの検索と発見を可能にする手法が一般的に知られている。そのような手法を実現するための要素技術の一つとして、DHT(分散ハッシュテーブル、Distributed Hash Table)が知られており、ChordやKademliaをはじめとする様々なアルゴリズムが開発されている。 In order to construct such a content delivery service system using the P2P technology, a function for searching and finding the location of the content in the P2P network is indispensable. There is generally known a technique that enables search and discovery of content by performing distributed management with a plurality of nodes. As one of elemental technologies for realizing such a technique, DHT (Distributed Hash Table) is known, and various algorithms such as Chord and Kademlia have been developed.
DHTを用いたコンテンツの分散管理では、コンテンツとノードは同一のハッシュ空間上に存在する。それぞれのノードは、システム全体に存在するコンテンツの所在(コンテンツを保持しているノード)の情報のうち、ハッシュ空間上で近傍に存在するコンテンツの情報(以下、「コンテンツ管理リスト」と呼ぶ)を保持、管理する。また、それぞれのノードは、ハッシュ空間上で近傍に存在するノードのIPアドレスやポートといった転送先の情報(以下、「ノードリスト」と呼ぶ)を保持、管理する。このようなコンテンツ分散管理が行なわれているネットワークにおいて、あるノードが、所望のコンテンツの所在を検索する場合、ノードリストを用いて他のノードに検索のメッセージを送信し、検索のメッセージは、複数のノードを経由して、所望のコンテンツを管理する管理ノードに到達する。そして、コンテンツの管理ノードから検索元のノードに対して、いずれのノードに検索対象のコンテンツが蓄積されているか、すなわち、コンテンツの所在を通知する。また、それぞれのノードは自ノードに蓄積しているコンテンツを管理するための情報(以下、「ダウンロードリスト」と呼ぶ)を保持、管理する。 In the distributed management of content using DHT, the content and the node exist on the same hash space. Each node uses content information (hereinafter referred to as a “content management list”) that exists in the vicinity of the hash space among the information on the location of the content that exists in the entire system (the node that holds the content). Maintain and manage. In addition, each node holds and manages transfer destination information (hereinafter referred to as a “node list”) such as an IP address and a port of a node existing in the vicinity in the hash space. In a network in which content distribution management is performed, when a node searches for the location of desired content, a search message is transmitted to other nodes using a node list. To the management node that manages the desired content. Then, the content management node notifies the search source node of which node the content to be searched is stored, that is, the location of the content. Each node holds and manages information (hereinafter referred to as a “download list”) for managing content stored in the node.
代表的なDHTのアルゴリズムであるChordは、ノードやコンテンツをハッシュ値の順に円環状に並べ、時計回りで測った長さをハッシュ空間上の距離と定義する。また、Kademliaは、ノードやコンテンツをハッシュ値に基づいて二分木のような構造上に配置し、ハッシュ値のハミング距離をハッシュ空間上の距離と定義する。この距離情報を用いることにより、各ノードによるコンテンツやノードの検索を可能にする。 Chord which is a typical DHT algorithm arranges nodes and contents in an annular shape in the order of hash values, and defines a length measured clockwise as a distance in the hash space. Kademlia arranges nodes and contents on a structure such as a binary tree based on a hash value, and defines a Hamming distance of the hash value as a distance in the hash space. By using this distance information, contents and nodes can be searched by each node.
<コンテンツの不正流通とその対策>
インターネットの普及により、デジタルコンテンツの流通がさかんに行われるようになった一方で、映画やテレビ番組、音楽やソフトウェアといった著作権のあるコンテンツを保護する技術が不可欠である。著作権のあるコンテンツの配信サービスにおいては、DRM(Digital Rights Management:デジタル著作権保護)を用いて、利用回数や利用期間といったコンテンツの利用制限を設けてコンテンツを保護する方式が一般的である。
<Unauthorized distribution of content and countermeasures>
With the spread of the Internet, digital content has been widely distributed, but technology that protects copyrighted content such as movies, TV programs, music, and software is essential. In a copyrighted content distribution service, DRM (Digital Rights Management) is generally used to protect content by setting content usage restrictions such as the number of usages and usage period.
P2P型のシステムは大きく二つに分類され、1つは、コンテンツ配信事業者などの管理者により、利用者および流通コンテンツを管理する管理型P2Pであり、もう1つは、管理者が存在せず、不特定多数の利用者が不特定多数のコンテンツを流通させることのできる非管理型P2Pである。そして、配信事業者が管理型P2Pシステムを用いて著作権のあるコンテンツを正規に配信する場合には、コンテンツをDRMで保護して配信することが一般的である。一方、非管理型P2Pにおいては、著作権のあるコンテンツの不正流通による著作権侵害が問題となっている。 P2P type systems are roughly classified into two types, one is a management type P2P in which users and distribution contents are managed by an administrator such as a content distribution company, and the other is that there is no administrator. In other words, it is an unmanaged P2P that allows an unspecified number of users to distribute an unspecified number of contents. And when a distribution company distributes a copyrighted content normally using a management type P2P system, it is common to protect and distribute the content with DRM. On the other hand, in the unmanaged P2P, copyright infringement due to illegal distribution of copyrighted content is a problem.
特許文献1では、あらかじめ事業者が流通を許可するコンテンツを中継サーバに設定し、この中継サーバを通過するコンテンツを検証することで、事業者によるコンテンツの流通制御を実現する手法を開示している。また、非特許文献1では、管理型P2Pシステムにおいて著作権のあるコンテンツを保護するために、コンテンツの取得時に端末間の自律的な認証を実行させることで、事業者によって正規に認められた端末に限ってコンテンツの流通を許可する手法について検討している。このように、DRMで保護されているコンテンツであっても、事業者の管理下の端末のみでしか利用できないように制限を設けている。
著作権のあるコンテンツを配信するコンテンツ配信サービスでは、DRMにより保護したコンテンツを配信することが一般的であり、ユーザは事業者からライセンスを入手しなければそのコンテンツを利用することはできない。しかし、DRMに使用されている暗号方式が不正に解読された場合、ライセンスがなくてもコンテンツを利用することが可能となるため、そのコンテンツの流通を事業者が制御することが困難になる。つまり、ライセンスの付与という手順によって事業者が流通を制御することが可能な範囲の外にコンテンツが流出してしまい、事業者にとっては、著作権の保護を担保することが難しくなる。このため、事業者が提供するコンテンツの流通を制御できるしくみに加えて、不正にコンテンツが流通制御範囲外に流出することを防ぐしくみが必要となってしまう。 In a content distribution service that distributes copyrighted content, it is common to distribute content protected by DRM, and a user cannot use the content without obtaining a license from the operator. However, if the encryption method used in DRM is illegally decrypted, the content can be used without a license, and it becomes difficult for the operator to control the distribution of the content. In other words, the content flows out of the range in which the business operator can control the distribution according to the procedure of granting the license, and it is difficult for the business operator to ensure copyright protection. For this reason, in addition to a mechanism capable of controlling the distribution of the content provided by the business operator, a mechanism for preventing the content from illegally flowing out of the distribution control range is required.
一方、特許文献1や非特許文献1では、P2Pネットワーク上のコンテンツの流通を事業者が制御できる方式を示している。しかし、ノードに実装されているP2PのソフトウェアやOS(Operation System)を不正に攻撃することによって、事業者が提供するコンテンツを取得し、当該事業者の流通制御範囲外に流出させる不正ノードが出現した場合、その不正ノードを検出することが難しい。さらに、特許文献1では、不正ノードを発見したとしても、その不正ノードだけコンテンツの取得を停止させることが困難である。
On the other hand,
本発明は、このような事情を考慮してなされたもので、その目的は、コンテンツを分散管理するP2Pネットワークにおいて、コンテンツを不正に利用しているノードを検出し、この検出されたノードがコンテンツを取得できないようにすることによって、事業者が制御することのできる流通制御範囲外に不正にコンテンツが流出することを防ぐことができるノード装置及びコンピュータプログラムを提供することある。 The present invention has been made in consideration of such circumstances, and an object of the present invention is to detect a node that illegally uses content in a P2P network that distributes and manages content, and the detected node is a content. It is possible to provide a node device and a computer program that can prevent content from being illegally leaked out of a distribution control range that can be controlled by a business operator by making it impossible to acquire.
[1] 本発明の一態様は、複数のノード装置と当該複数のノード装置間を接続するネットワークとからなるコンテンツ分散管理システムを構成し、所定の規則によりコンテンツの所在を管理するノード装置を判断する前記ノード装置であって、前記ネットワークを介して接続される他の前記ノード装置の通信アドレスを設定したノードリストを記憶するノードリスト記憶部と、他の前記ノード装置の識別情報と、コンテンツ検索要求情報の受信時刻とを対応づけた中継履歴情報を記憶する中継履歴記憶部と、前記ネットワークを介して接続される他の前記ノード装置から、検索対象のコンテンツの識別情報と当該他のノード装置の識別情報とを含んだコンテンツ検索要求情報を受信する通信入力部と、前記通信入力部が受信した前記コンテンツ検索要求情報を受信した時刻と、当該コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報とを対応づけた中継履歴情報を前記中継履歴記憶部に書き込むとともに、当該中継履歴記憶部に記憶されている前記中継履歴情報から前記他のノード装置の識別情報に対応した中継処理数を取得する中継履歴管理部と、前記中継履歴管理部が取得した中継処理数が所定の閾値を超えているかを判断する異常検出部と、前記異常検出部により前記中継処理数が所定の閾値を超えていると判断された場合に、前記コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報を出力する情報送出部と、前記所定の規則と、前記コンテンツ検索要求情報に設定されている前記検索対象のコンテンツの識別情報とに基づいて、当該ノード装置が当該検索対象のコンテンツの所在を管理するノード装置であるか否かを判断する管理ノード判断部と、前記異常検出部により前記中継処理数が所定の閾値を超えていないと判断され、かつ、前記管理ノード判断部により当該ノード装置が前記検索対象のコンテンツの所在を管理するノード装置ではないと判断された場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信する通信出力部と、を備えることを特徴とするノード装置である。
この発明によれば、P2Pネットワークを構成するノード装置は、コンテンツの所在を検索するためのコンテンツ検索要求情報を受信した時に、当該コンテンツ検索要求情報送信元のノード装置の識別情報と、受信時刻とを対応づけた中継履歴情報を更新する。そして、この中継履歴情報に基づいてコンテンツ検索要求情報発信元のノード装置から過去に送信されたコンテンツ検索要求情報の中継処理数を得、この得られた中継処理数が不正の疑いがある閾値を超えている場合は、コンテンツ検索要求情報送信元のノード装置の識別情報を出力して中継を中断し、超えていない場合はコンテンツ検索要求情報を中継する。
これにより、P2Pネットワークにおいて、コンテンツの所在の検索時に、コンテンツ検索要求情報を発信したノード装置から、検索対象のコンテンツの所在を管理するノード装置までの経路上に存在する中継ノードが、不正の疑いのあるノード装置を検出し、この検出したノード装置の識別情報を出力するため、管理者等に不正ノードの疑いがあるノード装置の存在を知らせたり、不正の確認を行なわせたりすることが可能になるとともに、コンテンツ検索要求情報の中継を中断するため、不正に取得されるコンテンツの数を抑制することができる。また、各ノード装置が取得可能なコンテンツ数をノード装置単位で制限することも可能となる。
[1] According to one aspect of the present invention, a content distribution management system including a plurality of node devices and a network connecting the plurality of node devices is configured, and a node device that manages the location of content is determined according to a predetermined rule. A node list storage unit that stores a node list in which communication addresses of other node devices connected via the network are set, identification information of the other node devices, and content search The relay history storage unit that stores the relay history information that associates the reception time of the request information, the other node device connected via the network, the identification information of the content to be searched and the other node device A communication input unit that receives content search request information including the identification information of the content, and the content received by the communication input unit. The relay history information in which the time at which the search request information is received and the identification information of the other node device read from the content search request information are associated is written in the relay history storage unit, and the relay history storage unit The relay history management unit that acquires the number of relay processes corresponding to the identification information of the other node device from the stored relay history information, and the number of relay processes acquired by the relay history management unit exceeds a predetermined threshold And when the abnormality detection unit determines that the number of relay processes exceeds a predetermined threshold, the identification information of the other node device read from the content search request information Based on the information sending unit to output, the predetermined rule, and the identification information of the content to be searched set in the content search request information, A management node determination unit that determines whether the node device is a node device that manages the location of the search target content, and the abnormality detection unit determines that the number of relay processes does not exceed a predetermined threshold. When the management node determination unit determines that the node device is not a node device that manages the location of the search target content, the node is read from the node list stored in the node list storage unit And a communication output unit that transmits the content search request information with the communication address as a destination.
According to the present invention, when the node device configuring the P2P network receives the content search request information for searching for the location of the content, the identification information of the node device that is the content search request information transmission source, the reception time, Update the relay history information associated with. Then, based on the relay history information, the number of relay processing of the content search request information transmitted in the past from the node device that is the source of the content search request information is obtained, and the threshold value at which the obtained relay processing number is suspected of fraud is set. If it exceeds, the identification information of the node device that is the source of the content search request information is output and the relay is interrupted. If not, the content search request information is relayed.
As a result, in the P2P network, when searching for the location of content, a relay node existing on the path from the node device that has transmitted the content search request information to the node device that manages the location of the content to be searched is suspected of fraud. The node device with a fault is detected, and the identification information of the detected node device is output, so it is possible to notify the administrator of the existence of a node device that is suspected of an illegal node or to check the illegality. At the same time, since the relay of the content search request information is interrupted, the number of illegally acquired contents can be suppressed. It is also possible to limit the number of contents that each node device can acquire on a node device basis.
[2] 本発明の一態様は、上述するノード装置であって、前記異常検出部は、前記情報出力部が出力した前記他のノード装置の識別情報に対応して当該他のノード装置が不正であることを示す情報を受信した場合に、前記コンテンツ検索要求情報を破棄し、前記通信出力部は、前記情報出力部が出力した前記他のノード装置の識別情報に対応して不正がないことを示す情報を受信した場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信することを特徴とする。
この発明によれば、不正の疑いがあるとして検出したノード装置が不正ではない旨の通知を受信した場合に、コンテンツ検索要求情報を中継し、不正である旨の通知を受信した場合に、コンテンツ検索要求情報を中継せずに破棄する。
これにより、不正の疑いがあるとして検出したノード装置が、実際に不正であるか否かの検証結果に従って、コンテンツ検索要求情報の中継を制御することができる。
[2] One aspect of the present invention is the node device described above, in which the abnormality detection unit is illegal in response to the identification information of the other node device output by the information output unit. The content search request information is discarded when the information indicating that the communication output unit is received, and the communication output unit has no fraud corresponding to the identification information of the other node device output by the information output unit. Is received, the content search request information is transmitted with the communication address read from the node list stored in the node list storage unit as a destination.
According to the present invention, when a notification that a node device detected as suspected of fraud is not fraudulent is received, content search request information is relayed, and when a foul notification is received, Discard search request information without relaying it.
As a result, it is possible to control the relay of the content search request information according to the verification result of whether or not the node device detected as suspected of fraud is actually fraudulent.
[3] 本発明の一態様は、上述するノード装置であって、不正な前記ノード装置の識別情報を記憶するブラックリスト記憶部と、不正な前記ノード装置の識別情報を受信し、受信した当該ノード装置の識別情報を前記ブラックリスト記憶部に書き込むブラックリスト管理部とをさらに備え、前記異常検出部は、前記コンテンツ検索要求情報に設定されている前記他のノード装置の識別情報が前記ブラックリスト記憶部に記憶されている場合に、当該コンテンツ検索要求情報を破棄する、ことを特徴とする。
この発明によれば、不正なノード装置の識別情報を受信した場合、当該識別情報により特定されるノード装置が送信するコンテンツ検索要求情報の中継を制限する。
これにより、複数のノード装置を管理する装置等からの命令により、特定のノード装置から送信されるコンテンツ検索要求情報の中継を、中継ノードにおいて制限することができる。従って、サービス提供者の意思により指定したノード装置によるコンテンツの取得を即座に停止することができる。
[3] One aspect of the present invention is the node device described above, wherein the blacklist storage unit that stores the identification information of the unauthorized node device and the identification information of the unauthorized node device are received and received. A black list management unit for writing identification information of the node device to the black list storage unit, wherein the abnormality detection unit is configured such that the identification information of the other node device set in the content search request information is the black list. The content search request information is discarded when stored in the storage unit.
According to the present invention, when the identification information of an unauthorized node device is received, the relay of the content search request information transmitted by the node device specified by the identification information is restricted.
Accordingly, relaying of content search request information transmitted from a specific node device can be restricted at the relay node by a command from a device or the like that manages a plurality of node devices. Therefore, the content acquisition by the node device designated by the service provider can be stopped immediately.
[4] 本発明の一態様は、上述するノード装置であって、前記通信出力部は、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として中継履歴照会を送信し、前記中継履歴管理部は、前記通信出力部が送信した中継履歴照会に対応して中継履歴情報を受信し、受信した当該中継履歴情報、及び、前記中継履歴記憶部に記憶されている中継履歴情報から、前記コンテンツ検索要求情報に設定されている前記他のノード装置の識別情報に対応した中継処理数を取得する、ことを特徴とする。
この発明によれば、他の中継ノードから中継履歴を取得して、コンテンツ検索要求情報送信元のノード装置についてのこれまでのコンテンツ検索要求情報の中継処理数を得、不正の疑いがあるかを判断することができる。
これにより、各ノード装置の中継ノードが固定されていない場合であっても、不正なノードを検出することができる。
[4] One aspect of the present invention is the node device described above, wherein the communication output unit performs relay history inquiry using the communication address read from the node list stored in the node list storage unit as a destination. The relay history management unit receives the relay history information in response to the relay history inquiry transmitted by the communication output unit, and is stored in the received relay history information and the relay history storage unit The number of relay processes corresponding to the identification information of the other node device set in the content search request information is acquired from the relay history information.
According to the present invention, the relay history is obtained from another relay node, the number of relay processing of the content search request information so far for the node device of the content search request information transmission source is obtained, and whether there is a suspicion of fraud Judgment can be made.
Thereby, even if the relay node of each node device is not fixed, an unauthorized node can be detected.
[5] 本発明の一態様は、複数のノード装置と当該複数のノード装置間を接続するネットワークとからなるコンテンツ分散管理システムを構成し、所定の規則によりコンテンツの所在を管理するノード装置を判断する前記ノード装置として用いられるコンピュータを、前記ネットワークを介して接続される他の前記ノード装置の通信アドレスを設定したノードリストを記憶するノードリスト記憶部、他の前記ノード装置の識別情報と、コンテンツ検索要求情報の受信時刻とを対応づけた中継履歴情報を記憶する中継履歴記憶部、前記ネットワークを介して接続される他の前記ノード装置から、検索対象のコンテンツの識別情報と当該他のノード装置の識別情報とを含んだコンテンツ検索要求情報を受信する通信入力部、前記通信入力部が受信した前記コンテンツ検索要求情報を受信した時刻と、当該コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報とを対応づけた中継履歴情報を前記中継履歴記憶部に書き込むとともに、当該中継履歴記憶部に記憶されている前記中継履歴情報から前記他のノード装置の識別情報に対応した中継処理数を取得する中継履歴管理部、前記中継履歴管理部が取得した中継処理数が所定の閾値を超えているかを判断する異常検出部、前記異常検出部により前記中継処理数が所定の閾値を超えていると判断された場合に、前記コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報を出力する情報送出部、前記所定の規則と、前記コンテンツ検索要求情報に設定されている前記検索対象のコンテンツの識別情報とに基づいて、当該ノード装置が当該検索対象のコンテンツの所在を管理するノード装置であるか否かを判断する管理ノード判断部、前記異常検出部により前記中継処理数が所定の閾値を超えていないと判断され、かつ、前記管理ノード判断部により当該ノード装置が前記検索対象のコンテンツの所在を管理するノード装置ではないと判断された場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信する通信出力部、として機能させることを特徴とするコンピュータプログラムである。
この発明によれば、P2Pネットワークを構成するノード装置は、コンテンツの所在を検索するためのコンテンツ検索要求情報を受信した時に、当該コンテンツ検索要求情報送信元のノード装置の識別情報と、受信時刻とを対応づけた中継履歴情報を更新する。そして、この中継履歴情報に基づいてコンテンツ検索要求情報発信元のノード装置から過去に送信されたコンテンツ検索要求情報の中継処理数を得、この得られた中継処理数が不正の疑いがある閾値を超えている場合は、コンテンツ検索要求情報送信元のノード装置の識別情報を出力して中継を中断し、超えていない場合はコンテンツ検索要求情報を中継する。
これにより、P2Pネットワークにおいて、コンテンツの所在の検索時に、コンテンツ検索要求情報を発信したノード装置から、検索対象のコンテンツの所在を管理するノード装置までの経路上に存在する中継ノードが、不正の疑いのあるノード装置を検出し、この検出したノード装置の識別情報を出力するため、管理者等に不正ノードの疑いがあるノード装置の存在を知らせたり、不正の確認を行なわせたりすることが可能になるとともに、コンテンツ検索要求情報の中継を中断するため、不正に取得されるコンテンツの数を抑制することができる。また、各ノード装置が取得可能なコンテンツ数をノード装置単位で制限することも可能となる。
[5] According to one aspect of the present invention, a content distribution management system including a plurality of node devices and a network connecting the plurality of node devices is configured, and a node device that manages the location of content is determined according to a predetermined rule. A node list storage unit for storing a node list in which a communication address of another node device connected via the network is set, a computer used as the node device, identification information of the other node device, and content A relay history storage unit that stores relay history information in association with the reception time of search request information; from other node devices connected via the network, identification information of content to be searched and the other node devices A communication input unit that receives content search request information including the identification information of the communication, and the communication input unit receives The relay history information in which the time when the content search request information is received and the identification information of the other node device read from the content search request information is associated is written in the relay history storage unit, and the relay history storage A relay history management unit that acquires the number of relay processes corresponding to the identification information of the other node device from the relay history information stored in the unit, and the number of relay processes acquired by the relay history management unit exceeds a predetermined threshold An abnormality detection unit for determining whether the number of relay processes exceeds a predetermined threshold by the abnormality detection unit, the identification information of the other node device read from the content search request information Based on the information transmission unit to be output, the predetermined rule, and the identification information of the search target content set in the content search request information A management node determination unit that determines whether or not the node device is a node device that manages the location of the content to be searched, and the abnormality detection unit determines that the number of relay processes does not exceed a predetermined threshold value. When the management node determination unit determines that the node device is not a node device that manages the location of the search target content, the node is read from the node list stored in the node list storage unit. And a communication output unit that transmits the content search request information with the communication address as a destination.
According to the present invention, when the node device configuring the P2P network receives the content search request information for searching for the location of the content, the identification information of the node device that is the content search request information transmission source, the reception time, Update the relay history information associated with. Then, based on the relay history information, the number of relay processing of the content search request information transmitted in the past from the node device that is the source of the content search request information is obtained, and the threshold value at which the obtained relay processing number is suspected of fraud is set. If it exceeds, the identification information of the node device that is the source of the content search request information is output and the relay is interrupted. If not, the content search request information is relayed.
As a result, in the P2P network, when searching for the location of content, a relay node existing on the path from the node device that has transmitted the content search request information to the node device that manages the location of the content to be searched is suspected of fraud. The node device with a fault is detected, and the identification information of the detected node device is output, so it is possible to notify the administrator of the existence of a node device that is suspected of an illegal node or to check the illegality. At the same time, since the relay of the content search request information is interrupted, the number of illegally acquired contents can be suppressed. It is also possible to limit the number of contents that each node device can acquire on a node device basis.
本発明によれば、コンテンツを分散管理するP2Pネットワークにおいて、コンテンツ検索要求情報を発信したノード装置から検索対象のコンテンツの所在を管理するノード装置に至る経路上に存在する中継ノードにおいて、異常な処理を実行しているノード装置を検出し、その存在を管理者に知らせたり、正当性確認の処理を起動させたりすることができる。そして、この出力に対応してノード装置が実際にコンテンツを不正利用しているか否かの確認を行った結果によって、検索要求を中継するか否かを決定するため、実際に不正なノード装置のみがコンテンツを取得できないようにし、不正利用されるコンテンツの数を抑制することができる。 According to the present invention, in a P2P network that manages content in a distributed manner, abnormal processing is performed in a relay node that exists on a route from a node device that has transmitted content search request information to a node device that manages the location of the content to be searched. Can detect the node device that is executing, and notify the administrator of the existence of the node device, or can start the processing of validity confirmation. In response to this output, the node device determines whether or not to relay the search request based on the result of checking whether or not the content is actually illegally used. Prevents the content from being acquired, and the number of illegally used content can be reduced.
以下、図面を参照しながら本発明の実施形態を詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[1.全体構成]
図1に、本発明を適用可能な、P2Pネットワークを用いたコンテンツ分散管理システムの全体構成図を示す。本コンテンツ分散管理システムは、コンテンツ配信サービスを提供するコンテンツ配信事業者のコンテンツ配信装置7、ノード管理装置8及びライセンス配信装置9と、当該コンテンツ配信サービスを享受する各ユーザの複数のノード装置1とから構成される。各ノード装置1は、コンテンツ配信装置7から放送または通信によりコンテンツを受信する。また、ノード装置1、ノード管理装置8及びライセンス配信装置9は、インターネットなどの通信ネットワークNに接続しており、相互に情報を送受信することができる。
[1. overall structure]
FIG. 1 shows an overall configuration diagram of a content distribution management system using a P2P network to which the present invention can be applied. The content distribution management system includes a
ノード装置1を保有するユーザは、コンテンツ配信サービスを享受するために、あらかじめコンテンツ配信事業者とサービス加入のための契約を締結する。具体的には、コンテンツ配信事業者のノード管理装置8(または、図示しない契約用のサーバ)が、ユーザのノード装置1から当該ユーザの個人情報や、当該ノード装置1のアドレスなど、サービス加入契約のために必要な情報を受信する。二者間で契約が締結されると、ノード管理装置8(または契約用のサーバ)は、コンテンツ配信サービスを提供するためのID(識別子)を発行し、ノード装置1に通知する。この通知されたIDは、ノード装置1に記憶され、当該ノード装置1を一意に特定するノードIDとして使用される。コンテンツ配信事業者のノード管理装置8は、ノード装置1から受信したユーザの個人情報やノード装置1のアドレス、当該ノード装置1に割り当てたノードIDを対応づけて記憶し、これらの情報を用いてユーザおよびノード装置1を管理する。
In order to enjoy the content distribution service, the user who owns the
コンテンツ配信サービスにあたって、コンテンツ配信事業者は、コンテンツ配信装置7からノード装置1に対して、DRM(Digital Rights Management:デジタル著作権保護)により著作権が保護されたコンテンツのディジタルデータであるコンテンツ本体と、コンテンツの一覧を示すデータであるコンテンツガイドを送信する。これらの送信は、通信により行なってもよく、放送により行なってもよい。コンテンツ本体には、当該コンテンツを特定するための識別子であるコンテンツIDが付与されており、ノード装置1は提供されるコンテンツをコンテンツIDにより識別する。なお、著作権保護されているコンテンツ本体を視聴するために必要なライセンスを配信するライセンス配信装置9のアドレスは、サービス加入契約の締結時、ノードIDとともにノード装置1へ通知される。
In the content distribution service, the content distribution company sends a content main body that is digital data of content protected by DRM (Digital Rights Management) from the
[2.コンテンツ分散管理のためのデータ]
図2、図3は、従来技術のDHT(分散ハッシュテーブル、Distributed Hash Table)を用いてコンテンツを分散管理するためにノード装置1が記憶するリストの例を示す図である。以降、代表的なDHTのアルゴリズムであるChordを用いた分散管理を例に説明する。Chordでは、ノードとコンテンツをハッシュ値の順に円環状に並べ、時計回りで測った長さをハッシュ空間上の距離と定義する。
[2. Data for content distribution management]
2 and 3 are diagrams illustrating examples of lists stored in the
図2は、ハッシュ空間上で自ノード装置1の“近傍”に存在するコンテンツが、どのノード装置1に蓄積されているかの所在情報を示すリストであるコンテンツ管理リストを示す。また、図3はハッシュ空間上で自ノード装置1の“近傍”に存在する他ノード装置1のIPアドレスやポートなど通信を行うために必要な情報を示すリストであるノードリストを示す。
FIG. 2 shows a content management list, which is a list indicating location information indicating which
図2において、コンテンツ管理リストには、ノード装置1において所在情報を管理する対象のコンテンツを特定するコンテンツID及び当該コンテンツIDのハッシュ値と、当該コンテンツが蓄積されているノード装置1のノードID及び当該ノード装置1のIPアドレスやポート番号といった通信のために必要な情報とが記述される。
In FIG. 2, the content management list includes a content ID that identifies content whose location information is managed in the
一方、図3に示すノードリストには、ハッシュ空間上の近傍に存在するノード装置1のノードID及び当該ノードIDのハッシュ値、当該ノード装置1のIPアドレスやポート番号といった通信のために必要な情報が記述される。ノードリストは、DHTにおけるルーティングテーブルと同様のものと考えてよい。また、DHTによる分散管理を円滑に行うためには、各ノード装置1が管理すべきコンテンツ、および、把握すべき転送先のノード装置1のハッシュ空間上の“近傍”の範囲を規定する必要がある。なお、すべてのノード装置1においてコンテンツIDおよびノードIDからハッシュ値を算出できるため、必ずしもリストにハッシュ値を記述しなくてもよい。
On the other hand, the node list shown in FIG. 3 is necessary for communication such as the node ID of the
図2および図3では、ノード装置1に付与されたノードIDのハッシュ値が「500」、“近傍”の範囲を「20」とした例を示している。つまり、コンテンツ管理リストでは、コンテンツIDのハッシュ値が500〜520の範囲に存在するコンテンツの所在を管理し、ノードリストでは、ノードIDのハッシュ値が500〜520の範囲に存在するノード装置1の転送先の情報を保持する。なお、コンテンツIDのハッシュ値に基づく近傍の範囲、ノードIDのハッシュ値に基づく近傍の範囲は同一でない場合もある。
2 and 3 show examples in which the hash value of the node ID assigned to the
以下、ノードIDのハッシュ値がXのノード装置1を「ノード装置(X)」、コンテンツIDのハッシュ値がYのコンテンツを「コンテンツ(Y)」と記載する。また、コンテンツ検索要求を発信するノード装置1を発信ノード、情報の中継を行なうノード装置1を中継ノード、コンテンツの所在を管理するノード装置1を管理ノード、コンテンツを蓄積しているノード装置1を蓄積ノードと記載する。
Hereinafter, the
[3.従来技術を使用したコンテンツ配信]
ここでは、コンテンツ配信装置7からコンテンツが放送され、従来と同様の手順により、この放送されたコンテンツの所在が、当該コンテンツの管理ノードであるノード装置1に通知され、コンテンツ管理リストに保持されているものとする。
[3. Content distribution using conventional technology]
Here, the content is broadcast from the
図4に、一般的なDHTを用いてコンテンツの分散管理を行っているシステムにおいて、所望のコンテンツがどのノード装置1に蓄積されているのかを検索する従来の手順について示す。同図においては、ノードIDが「NNNNNN」、当該ノードIDのハッシュ値が「450」であるノード装置1が、コンテンツIDが「AAAAAA」、当該コンテンツIDのハッシュ値が「501」であるコンテンツを蓄積しているノード装置1を検索する例を示している。また、ここでは、近傍の範囲は「20」とする。
FIG. 4 shows a conventional procedure for searching which
(手順1)ノード装置(450)は、所望のコンテンツのコンテンツID「AAAAAA」からハッシュ値「501」を算出する。 (Procedure 1) The node device (450) calculates the hash value “501” from the content ID “AAAAAAA” of the desired content.
(手順2)ノード装置(450)は、ノードIDのハッシュ値が「451」、「455」、「465」となるノード装置1についての情報が記述されたノードリストを記憶している。ノード装置(450)は、自身が記憶しているノードリストから、コンテンツID「AAAAAA」より算出したハッシュ値「501」に最も近いハッシュ値となるノードIDで特定されるノード装置(465)を検出し、当該ノード装置(465)のアドレス情報、すなわち、IPアドレス及びポート番号を読み出す。
(Procedure 2) The node device (450) stores a node list in which information about the
(手順3)ノード装置(450)は、検索したいコンテンツのコンテンツID「AAAAAA」、自身のノードID「NNNNNN」、IPアドレス「10.2.3.4」、ポート番号「5000」を設定したコンテンツ検索要求情報を、(手順2)において読み出したIPアドレス及びポート番号を宛先に設定して送信し、ノード装置(465)に通知する。 (Procedure 3) The node device (450) sets the content ID “AAAAAAA”, the node ID “NNNNNN”, the IP address “10.2.3.4”, and the port number “5000” of the content to be searched. The search request information is transmitted with the IP address and port number read out in (procedure 2) set as the destination, and notified to the node device (465).
(手順4)ノード装置(465)は、コンテンツ検索要求情報を受信すると、当該コンテンツ蓄積更新情報に設定されているコンテンツID「AAAAAA」からハッシュ値「501」を算出する。 (Procedure 4) Upon receiving the content search request information, the node device (465) calculates a hash value “501” from the content ID “AAAAAAA” set in the content storage update information.
(手順5)以下、同様に、(手順2)〜(手順4)の操作を繰り返してコンテンツ検索要求情報を中継する。つまり、ノード装置1は、自身が記憶しているノードリストから、ノードIDのハッシュ値が、コンテンツIDより算出したハッシュ値に最も近い他のノード装置1を検出し、受信したコンテンツ検索要求情報をこの検出した他のノード装置1に通知し、コンテンツ検索要求情報を受信したノード装置1は、当該コンテンツ検索要求情報に設定されているコンテンツIDからハッシュ値を算出する。(手順2)〜(手順4)の操作を繰り返すことにより、ノードIDのハッシュ値がコンテンツ(501)の管理範囲481〜501の範囲内になるノード装置1にコンテンツ検索要求情報が通知される。なお、図4においては、ノード装置(500)に通知する例を示しているが、管理範囲内であればノード装置(485)、ノード装置(495)のような他のノード装置1に通知することでも構わない。
(Procedure 5) Hereinafter, similarly, the operations of (Procedure 2) to (Procedure 4) are repeated to relay the content search request information. That is, the
(手順6)ノード装置(500)は、自身が記憶しているコンテンツ管理リスト内のコンテンツIDと、コンテンツ検索要求情報に設定されているコンテンツIDとを照合し、要求されたコンテンツを蓄積しているノード装置1のノードID、IPアドレス及びポート番号の組を全て読み出すと、読み出した全ての組を設定したコンテンツ検索回答情報を作成する。同図においては、コンテンツ検索要求情報に設定されていた、検索対象のコンテンツのコンテンツID「AAAAAA」と、コンテンツ管理リストから読み出した、ノードID「000001」、IPアドレス「123.123.123.123」及びポート番号「5000」の組、ノードID「000015」、IPアドレス「111.111.001.002」及びポート番号「5000」の組、…が設定されたコンテンツ検索回答情報を作成している。
(Procedure 6) The node device (500) collates the content ID in the content management list stored in itself with the content ID set in the content search request information, and accumulates the requested content. When all the node ID, IP address, and port number pairs of the
(手順7)ノード装置(500)は、コンテンツ検索要求情報に記述されているノード装置(450)のIPアドレスとポート番号を宛先として、(手順6)において作成したコンテンツ検索回答情報をノード装置(450)に通知する。
なお、ノード装置(450)は、受信したコンテンツ検索回答情報に設定されているいずれかのノード装置1のIPアドレス及びポート番号を用いてアクセスし、コンテンツ(501)を取得する。
(Procedure 7) The node device (500) uses the IP address and port number of the node device (450) described in the content search request information as destinations and sends the content search response information created in (procedure 6) to the node device ( 450).
The node device (450) accesses using the IP address and port number of any
上述したように、P2Pネットワーク上でDHTによりコンテンツを分散管理するコンテンツ分散管理システムにおいては、それぞれのノード装置1はハッシュ空間上で自身の近傍のノード装置1しか把握していない。そのため、近傍以外の自身が把握していないノード装置1において管理しているコンテンツの所在を検索して取得するためには、1台もしくは複数台のノード装置1による検索要求の中継が必要となる。
そこで、本発明の実施形態では、コンテンツの所在検索時に、検索要求を発信ノードからコンテンツの所在を管理する管理ノードに至るまでの経路上に存在する、検索要求の中継ノードにおいて、不正の疑いがある発信ノードを検出し、コンテンツの検索を中断する。これにより、不正なノード装置1によるコンテンツの取得自体を防止することができる。
As described above, in the content distribution management system in which content is distributed and managed by DHT on the P2P network, each
Therefore, in the embodiment of the present invention, at the time of content location search, there is a suspicion of fraud at the search request relay node that exists on the route from the originating node to the management node that manages the content location. A certain origination node is detected, and content search is interrupted. Thereby, it is possible to prevent content acquisition itself by an
[4.第1の実施形態]
次に、本発明の第1の実施形態について説明する。第1実施形態は、ノード装置1毎に、自身の管理範囲外のノード装置1宛の信号を送信する際の宛先となる中継ノードが固定的な場合である。つまり、コンテンツ検索要求情報を発信するノード装置1は、予め定められたルールに基づいて決定されるノード装置1、例えば、自身のノードIDのハッシュ値に所定数を加算した数がハッシュ値となるノードIDにより特定されるノード装置1を中継ノードとし、コンテンツ検索要求情報を送信する。なお、本実施形態においては、コンテンツを放送により受信するものとする。
[4. First Embodiment]
Next, a first embodiment of the present invention will be described. 1st Embodiment is a case where the relay node used as the destination at the time of transmitting the signal addressed to the
[4.1 ノード装置の構成]
図5は、第1の実施形態によるノード装置1の機能構成を示すブロック図であり、本発明に関係する機能ブロックのみ抽出してある。同図に示すノード装置1は、例えば、パーソナルコンピュータや携帯電話、テレビジョン受像機などのコンピュータ装置により実現され、放送受信部11、コンテンツ管理部12、コンテンツ記憶部13、ダウンロードリスト管理部14、ダウンロードリスト記憶部15、コンテンツガイド管理部16、コンテンツガイド記憶部17、関数計算部18、管理ノード条件記憶部19、送信先決定部20、送信先選択条件記憶部21、ノードリスト管理部22、ノードリスト記憶部23、通信出力部24、通信入力部25、中継制御部26、コンテンツ管理リスト管理部27、コンテンツ管理リスト記憶部28、入力部29、表示部30、及び、検索部31を含む。
[4.1 Configuration of node device]
FIG. 5 is a block diagram showing a functional configuration of the
放送受信部11は、具体的には、放送波を受信することができるチューナであり、受信した放送波からコンテンツ本体およびコンテンツガイドをデコードする。通信入力部25は、インターネットなどの通信によって、通信ネットワークNを介して送信された各種情報を受信する。通信出力部24は、送信先決定部20により決定された転送先に、インターネットなどの通信によって、通信ネットワークNを介して各種情報を出力する。
Specifically, the
コンテンツ管理部12は、コンテンツ記憶部13に記憶されているコンテンツの管理を行う。コンテンツ記憶部13は、放送受信部11や通信入力部25により取得したコンテンツ本体を記憶する。ダウンロードリスト管理部14は、ダウンロードリスト記憶部15に記憶されているダウンロードリストを管理する。また、コンテンツ記憶部13へのコンテンツの蓄積または削除が実行されると、コンテンツ蓄積更新情報を生成し、通信出力部24に送信する。ダウンロードリスト記憶部15は、コンテンツ管理部12に記憶されているコンテンツの一覧であるダウンロードリストを記憶する。コンテンツガイド管理部16は、コンテンツガイド記憶部17に記憶されているコンテンツガイドを管理し、ユーザにコンテンツの視聴やダウンロードをさせるためのナビゲーションを提供する。また、コンテンツガイド管理部16は、ダウンロードリスト管理部14と連携し、コンテンツ管理部12に記憶されているコンテンツの情報を出力する。コンテンツガイド記憶部17は、放送受信部11や通信入力部25により取得したコンテンツガイドを記憶する。
The
関数計算部18は、SHA−1(Secure Hash Algorithm 1)やMD5(Message Digest 5)などのハッシュ関数を用いて、コンテンツIDやノードIDのハッシュ値を算出する。なお、コンテンツ分散管理システムに存在するノード装置1は共通のハッシュ関数を持つ。管理ノード条件記憶部19は、各コンテンツの管理ノードを決定するための管理ノード条件を記憶する。この管理ノード条件は、コンテンツ分散管理システムに存在するノード装置1全てに共通である。送信先選択条件記憶部21は、情報送信先のノード装置1、つまり、中継ノードを選択するための送信先選択条件を記憶する。この送信先選択条件は、コンテンツ分散管理システムに属するノード装置1全てに共通である。送信先決定部20は、管理ノード条件記憶部19または送信先選択条件記憶部21に記憶されている条件に従って、通信出力部24により送信する情報の送信先を決定する。ノードリスト管理部22は、ノードリスト記憶部23記憶されているノードリストの管理を行う。ノードリスト記憶部23は、図3と同様のノードリストを記憶する。
The
中継制御部26は、他のノード装置1から受信したコンテンツ蓄積更新情報やコンテンツ検索要求情報をさらに他のノード装置1に中継するための制御を行う。このとき、中継制御部26は、コンテンツ検索要求情報を受信した際、ブラックリストや、コンテンツ検索要求情報の中継履歴を基に、中継処理の実行の可否を判断する。また、中継制御部26は、自ノード装置1が管理ノードとして機能する場合、コンテンツ検索要求情報とコンテンツ管理リスト記憶部28のコンテンツ管理リストをもとに、コンテンツ検索回答情報を生成する。
The
コンテンツ管理リスト管理部27は、自ノード装置1がコンテンツの管理ノードとして機能する場合、他ノード装置1より受信したコンテンツ蓄積更新情報に基づいて、コンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リストの更新を行い、コンテンツ管理リストを管理する。また、コンテンツ管理リスト管理部27は、近傍のノード装置1と定期的にコンテンツ管理リストを交換して照合を行い、コンテンツリストを最新の状態に保つ。コンテンツ管理リスト記憶部28は、図2と同様のデータ構成であるコンテンツ管理リストを記憶する。
When the
入力部29は、ノード装置1とユーザとのインタフェースであり、コンテンツガイドにおけるユーザの操作を入力する。入力部29は、例えば、リモートコントローラやボタンなどのデバイスである。表示部30は、具体的にはディスプレイであり、ライセンス配信装置9から取得したライセンス情報によって視聴可能となったコンテンツ本体やコンテンツガイドを表示する。検索部31は、コンテンツガイド管理部16から他ノード装置1に蓄積されているコンテンツのダウンロード要求を受信した場合に、コンテンツ検索要求情報を生成する。
The
図6は、ノード装置1の中継制御部26の機能構成を示すブロック図である。同図において、中継制御部26は、情報受信部41、異常検出部42、中継履歴管理部43、中継履歴記憶部44、ブラックリスト管理部45、ブラックリスト記憶部46、管理ノード判断部47、コンテンツ検索回答情報生成部48、コンテンツ管理リスト照合部49、ノード照会情報生成部50、及び、情報送出部51を備える。
FIG. 6 is a block diagram illustrating a functional configuration of the
情報受信部41は、通信入力部25より、コンテンツ検索要求情報やコンテンツ蓄積更新情報等を受信する。異常検出部42は、コンテンツ検索要求情報から読み出した発信ノードのノードIDに対応して、中継履歴管理部43からその発信ノードの検索処理数、つまり、検索したコンテンツの数を取得し、予め設定したしきい値を基準として異常を検出する。
The
中継履歴管理部43は、中継履歴記憶部44に記憶されている中継履歴情報を管理する。中継履歴記憶部44は、異常検出部42において処理を行なったコンテンツ検索要求情報の発信ノードのノードIDと、コンテンツ検索要求情報の受信時刻とを示す中継履歴情報を記憶するデータベースである。ブラックリスト管理部45は、ブラックリスト記憶部46に記憶されているブラックリストを管理する。ブラックリスト記憶部46は、コンテンツ配信事業者より不正と認定されたノード装置1のノードIDのリストであるブラックリストを記憶する。
The relay
管理ノード判断部47は、管理ノード条件記憶部19に記憶されている管理ノード条件に基づいて自ノード装置1が管理ノードか否かを判断し、この判断結果に基づき、受信したコンテンツ検索要求情報やコンテンツ蓄積更新情報等の中継が必要か否かを判断する。コンテンツ検索回答情報生成部48は、自ノード装置1がコンテンツ検索要求情報により検索対象としているコンテンツの管理ノードである場合、コンテンツ検索回答情報を生成する。コンテンツ管理リスト照合部49は、コンテンツ検索要求情報により検索対象としているコンテンツのコンテンツIDにより、コンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リストを照合する。ノード照会情報生成部50は、異常検出部42において異常が検出された場合、ノード管理装置8へノードの正当性を問い合わせるためのノード照会情報を生成する。情報送出部51は、通信ネットワークNを介して送信すべき各種情報を通信出力部24に転送する。
The management
[4.2 データ記述例]
図7は、ノード装置1の中継履歴記憶部44に記憶される中継履歴情報のデータ例を示す。同図において、中継履歴情報は、コンテンツ検索要求情報の発信ノードであるノード装置1のノードIDと、コンテンツ検索要求情報の受信時刻とを含む複数のレコードからなる。
[4.2 Data description example]
FIG. 7 shows an example of relay history information data stored in the relay
図8は、ノード装置1のブラックリスト記憶部46に記憶されるブラックリストのデータ例を示す。同図において、ブラックリストは、不正なノード装置1のノードIDのリストを示す。
FIG. 8 shows an example of blacklist data stored in the
次に、ノード装置1が送信または受信するコンテンツ検索要求情報、コンテンツ検索回答情報、ノード照会情報、コンテンツ蓄積更新情報の記述例を示す。複数のノード装置1におけるデータの解釈の統一を図るために、これらの情報には共通のフォーマットを用い、汎用的な言語であるXML(extensible markup language)形式により記述する。
Next, description examples of content search request information, content search response information, node query information, and content storage update information transmitted or received by the
図9は、コンテンツ検索要求情報の記述例を示す。同図において、データの種類を区別するため、コンテンツ検索要求情報のデータの先頭には、コンテンツ検索要求情報である旨の種別が記述されている。さらに、コンテンツ検索要求情報の本体には、所在を検索する対象となるコンテンツのコンテンツIDと、当該コンテンツ検索要求情報を発信したノード装置1のノードID、IPアドレス及びポート番号、ならびに、当該コンテンツ検索要求情報を発信した時刻のタイムスタンプを含む発信ノード情報とが記述される。
FIG. 9 shows a description example of content search request information. In the same figure, in order to distinguish the type of data, the type indicating content search request information is described at the top of the data of the content search request information. Further, in the content search request information body, the content ID of the content whose location is to be searched, the node ID, IP address and port number of the
図10は、コンテンツ検索回答情報の記述例を示す。コンテンツ検索回答情報は、図9において示したコンテンツ検索要求情報の回答として生成される。同図において、データの種類を区別するため、コンテンツ検索回答情報のデータの先頭には、コンテンツ検索回答情報である旨の種別が記述されている。さらに、コンテンツ検索回答情報の本体には、所在を通知する対象となるコンテンツのコンテンツIDと、当該コンテンツIDのコンテンツを蓄積しているノード装置1のノードID、IPアドレス及びポート番号のリストである蓄積ノード情報とが記述される。
FIG. 10 shows a description example of content search response information. The content search response information is generated as a response to the content search request information shown in FIG. In the figure, in order to distinguish the types of data, a type indicating content search response information is described at the top of the data of content search response information. Further, the content search response information body includes a content ID of the content to be notified of the location, and a list of the node ID, IP address, and port number of the
図11は、ノード照会情報の記述例を示す。同図において、データの種類を区別するため、ノード照会情報のデータの先頭には、ノード照会情報である旨の種別が記述されている。さらに、ノード照会情報の本体には、照会の対象となるノード装置1のノードID、IPアドレス及びポート番号と、当該ノード装置1を発信ノードとしたコンテンツ検索要求情報の中継処理数とを含む照会ノード情報が記述される。
FIG. 11 shows a description example of node inquiry information. In the figure, in order to distinguish the type of data, the type of node inquiry information is described at the head of the data of the node inquiry information. Furthermore, the main body of the node inquiry information includes a node ID, an IP address, and a port number of the
図12は、コンテンツ蓄積更新情報の記述例を示す。同図において、データの種類を区別するため、コンテンツ蓄積更新情報のデータの先頭には、コンテンツ蓄積更新情報である旨の種別が記述されている。さらに、コンテンツ蓄積更新情報の本体には、更新の対象となるコンテンツのコンテンツIDと、当該コンテンツ蓄積更新情報を発信するノード装置1のノードID、IPアドレス及びポート番号、ならびに、当該コンテンツ蓄積更新情報を発信した時刻のタイムスタンプを含む発信ノード情報とが記述される。
FIG. 12 shows a description example of content storage update information. In the figure, in order to distinguish the type of data, a type indicating content storage update information is described at the head of the data of content storage update information. Further, the content storage update information body includes a content ID of the content to be updated, a node ID, an IP address and a port number of the
[4.3 コンテンツダウンロード時のシステム全体の処理手順]
まず、コンテンツ配信装置7からコンテンツが放送されると、従来と同様の手順により、コンテンツを蓄積したノード装置1が、当該コンテンツの管理ノードにコンテンツを蓄積したことを通知する。
具体的には、ノード装置1の放送受信部11が、コンテンツ配信装置7からの放送によってコンテンツ本体及びコンテンツガイドを受信すると、コンテンツ管理部12はコンテンツ本体をコンテンツ記憶部13に書き込み、ダウンロードリスト管理部14はコンテンツ記憶部13に書き込まれたコンテンツのコンテンツIDをダウンロードリスト記憶部15に書き込み、コンテンツガイド管理部16は、コンテンツガイドをコンテンツガイド記憶部17に書き込む。コンテンツ本体が記憶されると、ノード装置1の関数計算部18は、受信したコンテンツ本体に付与されているコンテンツIDを取得し、このコンテンツIDのハッシュ値を算出する。ダウンロードリスト管理部14は、管理ノード条件記憶部19に記憶されている管理ノード条件に基づいて、算出されたコンテンツIDのハッシュ値から自ノード装置1がコンテンツの管理ノードかを判断する。例えば、管理ノード条件が近傍範囲を示しており、コンテンツIDのハッシュ値をX、近傍範囲をYとした場合、ノード装置(X−Y+1)〜(X)がコンテンツ(X)を管理する管理ノードである。
[4.3 Processing procedure for the entire system when downloading contents]
First, when the content is broadcast from the
Specifically, when the
自ノードIDのハッシュ値が(X−Y+1)〜(X)の範囲内に含まれていない場合、ダウンロードリスト管理部14は、コンテンツ蓄積更新情報である旨を示す種別と、コンテンツ管理部12に蓄積したコンテンツのコンテンツIDと、自ノード装置のノードID、IPアドレス及びポート番号、現在の時刻を設定したタイムスタンプからなる発信ノード情報とを記述したコンテンツ蓄積更新情報を生成する。そして、後述するコンテンツ検索情報の転送と同様の処理によって、通信出力部24は、送信先決定部20が取得した中継ノードのIPアドレスとポート番号を宛先としてコンテンツ蓄積更新情報を送信する。
また、コンテンツ蓄積更新情報の宛先となったノード装置1が、コンテンツ蓄積更新情報を受信した場合の処理も後述する。
When the hash value of the own node ID is not included in the range of (X−Y + 1) to (X), the download
Further, processing when the
図13は、本実施形態による正常時のコンテンツダウンロードシーケンスを示す。ここでは、コンテンツ検索要求情報の発信ノードから、検索対象のコンテンツを管理する管理ノードまで、コンテンツ検索要求情報の中継ノードは1台とする。また、中継ノードでは不正や異常は検出されず、コンテンツ本体のダウンロードが正常に行われたものとする。 FIG. 13 shows a normal content download sequence according to this embodiment. Here, there is one relay node for the content search request information from the content search request information transmission node to the management node for managing the search target content. In addition, it is assumed that the relay node does not detect fraud or abnormality and the content main body has been downloaded normally.
以下、コンテンツのダウンロードを要求する発信ノードをノード装置1a、ノード装置1aから送信されたコンテンツ検索要求情報を中継する中継ノードのノード装置1をノード装置1b、ノード装置1aにより要求されたコンテンツの所在を管理する管理ノードをノード装置1c、ノード装置1aにより要求されたコンテンツのコンテンツ本体を記憶している蓄積ノードをノード装置1dとする。
Hereinafter, the
コンテンツダウンロード指示(ステップS105):ノード装置1aのユーザは、コンテンツ配信装置7から配信されたコンテンツガイドの表示指示を入力部29により入力する。ノード装置1aの表示部30は、コンテンツガイド管理部16がコンテンツガイド記憶部17から読み出したコンテンツの情報を表示部30に表示させる。ユーザが、表示されたコンテンツガイドを閲覧してコンテンツのダウンロードを行うことを決定すると、ダウンロード要求を入力部29に入力する。ノード装置1aのコンテンツガイド管理部16は、ダウンロード要求対象のコンテンツのコンテンツIDを検索部31に出力する。
Content download instruction (step S105): The user of the
ノード装置1aの検索部31は、コンテンツガイド管理部16から受信したコンテンツID、自身のノードID及びアドレス情報を設定したコンテンツ検索要求情報を生成して通信出力部24へ送信し、通信出力部24はコンテンツIDを送信先決定部20へ出力する。送信先決定部20は、送信先選択条件記憶部21に記憶されている送信先選択条件を参照し、コンテンツ検索要求情報の中継先を決定する。例えば、送信先選択条件が、自ノードIDのハッシュ値にBを加算した値が、選択すべきノード装置1のノードIDのハッシュ値であることを示しているとする。この場合、送信先決定部20は、ノード装置1aのノードIDのハッシュ値「A」に加算値「B」を加算した値がハッシュ値となるノードIDにより特定されるノード装置(A+B)を転送先として決定する。送信先決定部20は、ノードリスト記憶部23に記憶されているノードリストから、ノード装置(A+B)、つまり、ノード装置1bのIPアドレスとポート番号をノードリストから読み出す。ノード装置1aの通信出力部24は、送信先決定部20により読み出されたIPアドレス及びポート番号を宛先としてコンテンツ検索要求情報を送信する。
The
中継制御(ステップS110):ノード装置1bの通信入力部25は、ノード装置1aからコンテンツ検索要求情報を受信し、中継制御部26へ転送する。ノード装置1bの中継制御部26は、受信したコンテンツ検索要求情報からノード装置1aのノードIDを取得し、この取得したノードIDがブラックリストに含まれていないかを判断する。ノード装置1aのノードIDがブラックリストに含まれる場合、コンテンツ検索要求情報を破棄する。一方、ノード装置1aのノードIDがブラックリストに含まれない場合、ノード装置1bの中継制御部26は、中継履歴情報を更新し、この更新した中継履歴情報を参照して、現在までの一定時間内に当該ノード装置1bで処理された、ノード装置1aが発信元のコンテンツ検索要求の中継処理数を得ると、得られた中継処理数が所定の閾値を越えていないかを判断する。中継処理数が所定の閾値以下である場合、ノード装置1bの中継制御部26は、自身が管理ノードであるかを判断する。管理ノードではないと判断した場合、中継制御部26は、受信したコンテンツ検索要求情報を転送することを決定する。ノード装置1bの送信先決定部20は、管理ノード条件記憶部19に記憶されている管理ノード条件と、コンテンツIDのハッシュ値とから管理ノードのコンテンツIDのハッシュ値を得ると、ノードリスト記憶部23に記憶されているノードリストから、この管理ノードのハッシュ値により特定されるノード装置1cのIPアドレス及びポート番号を読み出し、この読み出したIPアドレス及びポート番号を宛先としてコンテンツ検索要求情報を転送する。
Relay control (step S110): The
コンテンツ所在通知(ステップS115):ノード装置1cの通信入力部25は、ノード装置1bからコンテンツ検索要求情報を受信する。ノード装置1cの中継制御部26は、自身が管理ノードであると判断した場合、コンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リスト内のコンテンツIDと、受信したコンテンツ検索要求情報に設定されているコンテンツIDとを照合し、要求されたコンテンツを蓄積しているノード装置1のノードID、IPアドレス及びポート番号の組を全て読み出すと、読み出した全ての組を蓄積ノード情報として設定したコンテンツ検索回答情報を作成する。ノード装置1cの通信出力部24は、中継制御部26により作成されたコンテンツ検索回答情報をコンテンツ検索要求情報に記述されているノード装置1aのIPアドレスとポート番号を宛先として、送信する。
Content location notification (step S115): The
コンテンツダウンロード(ステップS120):ノード装置1aの通信入力部25は、ノード装置1cからコンテンツ検索回答情報を受信する。ノード装置1aの検索部31は、ダウンロードを要求するコンテンツのコンテンツID、自身のノードID及びアドレス情報を設定したコンテンツダウンロード要求を生成し、通信出力部24は、生成されたコンテンツダウンロード要求を、受信したコンテンツ検索要求情報に記述されている蓄積ノード情報から選択したノード装置1dのIPアドレスとポート番号を宛先として送信する。
Content download (step S120): The
コンテンツアップロード(ステップS125):ノード装置1dの通信入力部25は、ノード装置1aからダウンロード要求を受信する。ノード装置1dのコンテンツ管理部12は、受信したダウンロード要求からコンテンツIDを取得し、この取得したコンテンツIDにより特定されるコンテンツ本体をコンテンツ記憶部13から読み出す。ノード装置1dの通信出力部24は、コンテンツ管理部12により読み出されたコンテンツ本体を、ダウンロード要求の送信元であるノード装置1aのアドレス情報を宛先として送信する。
Content upload (step S125): The
ダウンロード完了(ステップS130):ノード装置1aの通信入力部25は、ノード装置1dからコンテンツ本体を受信する。ノード装置1aのコンテンツ管理部12はコンテンツ本体をコンテンツ記憶部13に書き込み、ダウンロードリスト管理部14はコンテンツ記憶部13に書き込まれたコンテンツのコンテンツIDをダウンロードリスト記憶部15に書き込む。ノード装置1aのダウンロードリスト管理部14は、ダウンロードしたコンテンツ本体のコンテンツIDと、自身のノードID、IPアドレス及びポート番号とを設定したコンテンツ蓄積更新情報を生成し、通信出力部24は、生成されたコンテンツ蓄積更新情報をコンテンツ検索回答情報の送信元のノード装置1cへ送信する。
Download completion (step S130): The
コンテンツ管理リスト更新(ステップS135):ノード装置1cの通信入力部25は、ノード装置1aからコンテンツ蓄積更新情報を受信する。ノード装置1cの中継制御部26が、コンテンツ蓄積更新情報から取得したコンテンツIDに基づいて、自身が管理ノードであると判断した場合、コンテンツ管理リスト管理部27は、コンテンツ蓄積更新情報から読み出した発信ノード情報内のノードID、IPアドレス及びポート番号と、関数計算部18により算出された当該コンテンツIDのハッシュ値とを設定したレコードをコンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リストに書き込む。
Content management list update (step S135): The
なお、ノード装置1aのダウンロードリスト管理部14は、ダウンロードしたコンテンツ本体のコンテンツIDと、自ノード装置1aのノードIDをライセンス配信装置9へ通知して、コンテンツ本体をデコードするためのライセンス情報を取得する。ライセンス配信装置9は、ノード装置1aのノードIDと、ライセンス情報を送信したコンテンツのコンテンツIDとを対応づけて記憶する。ノード装置1aのコンテンツ管理部12は受信したライセンス情報をコンテンツ記憶部13に書き込み、ダウンロードリスト管理部14はコンテンツ記憶部13にライセンス情報が書き込まれたコンテンツのコンテンツIDをダウンロードリスト記憶部15に書き込む。
The download
図14は、不正検出時のコンテンツダウンロードシーケンスを示す。 FIG. 14 shows a content download sequence when fraud is detected.
ダウンロード要求(ステップS205):図13のステップS105と同様の処理により、ノード装置1aは、コンテンツ検索要求情報をノード装置1bに送信する。
Download request (step S205): The
中継制御(ステップS210):ノード装置1bは、図13のステップS110と同様の処理により、ノード装置1aのノードIDがブラックリストに含まれていないかを判断するとともに、ノード装置1aを発信元とするコンテンツ検索要求情報の現在までの一定時間内における中継処理数を得、所定の閾値を越えていないかを判断する。中継処理数が所定の閾値を超えている場合、ノード装置1bの中継制御部26は、ノード装置1aに不正の疑いがあると判断する。ノード装置1bの中継制御部26は、中継履歴情報からノード装置1aを発信元とするコンテンツ検索要求情報の現在までの総計の中継数処理数を得、コンテンツ検索要求情報から読み出したコンテンツIDと、総計の中継処理数とを設定したノード照会情報を生成する。ノード装置1aの通信出力部24は、中継制御部26により生成されたノード照会情報をノード管理装置8へ送信する。
Relay control (step S210): The
不正調査(ステップS215):ノード管理装置8は、ノード装置1bから受信したノード照会情報に設定されているノード装置1aのアドレス情報を宛先として、ライセンス取得数問合せを送信する。ノード装置1aのダウンロードリスト管理部14は、ダウンロードリスト記憶部15に記憶されているライセンス情報の数を取得し、通信出力部24は、ダウンロードリスト管理部14により得られたライセンス情報の数、すなわち、ライセンス取得数をノード管理装置8へ通知する。さらに、ノード管理装置8は、ライセンス配信装置9に対して、ノード装置1aのノードIDを設定したライセンス提供数問合せを送信する。ライセンス配信装置9は、ライセンス提供数問合せに設定されているノードIDに対応した提供ライセンス数をノード管理装置8へ通知する。
Fraud investigation (step S215): The
不正確認(ステップS220):ノード管理装置8は、ノード装置1aから受信したライセンス取得数と、ノード装置1bから受信したノード照会情報に設定されている中継処理数とを比較し、所定以上の乖離があるかを判断する。所定以上乖離がある場合には、ノード装置1aが不正ノードであると判断する。また、ノード管理装置8は、ライセンス配信装置9から受信したノード装置1aへのライセンス配信数と、ノード装置1bから受信したノード照会情報に設定されている中継処理数とを比較し、所定以上の乖離があれば、ノード装置1aが不正ノードであると判断する。不正ノードであると判断した場合、ノード管理装置8は、ノード照会情報から読み出したノード装置1aのノードIDを設定したブラックリストをノード照会情報の送信元であるノード装置1bに返送する。
Fraud confirmation (step S220): The
不正ノード把握(ステップS225):ノード装置1bの通信入力部25は、ノード管理装置8からブラックリストを受信する。ノード装置1bの中継制御部26は、ブラックリストにノード装置1aのノードIDが設定されていることから、ノード装置1aが不正ノードであることを認識すると、受信したコンテンツ検索要求情報の中継を行わずに破棄する。また、ノード装置1bの中継制御部26は、現在保持しているブラックリストに、受信したブラックリストに記述されているノード装置1aのノードIDを追加する。
Unauthorized node grasp (step S225): The
なお、ステップS220において、不正ではないことが確認された場合には、ノード管理装置8から中継ノードのノード装置1bへ不正なし通知情報を送信する。この場合、ノード装置1bは、図13のステップS110における、自身が管理ノードであるかの判断処理以降の処理を行ない、不正が検出されない場合のシーケンスと同様に、管理ノードであるノード装置1cへコンテンツ検索要求情報の中継を実行する。
If it is confirmed in step S220 that the information is not illegal, the
また、上記のステップS220において、ノード管理装置8はライセンス取得数と中継処理数を比較しているが、ノード照会情報に記述されているノードIDに対応したユーザ情報を画面等に出力することでもよい。この場合、コンテンツ配信事業者は、出力されたユーザ情報に基づいてユーザに問い合わせを行なうなどして、不正が行なわれたかどうかを確認する。そして、その結果をノード管理装置8に入力する。この入力によって、ノード管理装置8は、ブラックリストまたは不正なし通知情報をノード装置1bへ返送する。また、ステップS220において、ブラックリストを中継ノードのノード装置1bだけでなく、全てのノード装置1へ配信してもよい。
In step S220, the
上記のように、各ノード装置1は、他ノード装置1からコンテンツ検索要求情報を受信した場合、まず、ブラックリストに基づきそのノード装置1が不正ノードか否かを確認する。不正ノードである場合は、コンテンツ検索要求情報の中継処理を実行しないことで、不正ノードによるコンテンツの取得を不可能とする。一方、不正ノードと確認されない場合においても、各ノード装置1について、コンテンツ検索要求情報が送信される度に中継履歴情報を記録するとともに、一定時間内の中継処理数より、不正ノードの可能性のある異常なノード装置を検出する。中継ノードで異常を検出すると、コンテンツ配信事業者のノード管理装置8にノード照会情報を送信し、照会を求める。コンテンツ配信事業者は、異常が検出されたノード装置1、もしくはそのユーザとやりとりを行い、不正の事実を確認する。不正が確認されると、不正ノードによるコンテンツの取得を不可能とするために、ブラックリストにその不正ノードを追加する旨の情報を中継ノードに送信する。
As described above, when each
DRMにより保護されたコンテンツの配信サービスの場合、ユーザはコンテンツの視聴時にコンテンツ配信事業者の管理するライセンス配信装置9よりライセンスを取得することが一般的である。ライセンス配信装置9ではノード装置1ごとにライセンスの取得状況を管理している。通常のユーザは、コンテンツの視聴を考慮してコンテンツの所在を検索し、コンテンツ本体を取得するため、ノード装置1あたりのライセンス取得数とコンテンツの検索数、コンテンツ本体の取得数はほぼ同等となることが考えられる。従って、コンテンツ検索数がライセンス取得数をはるかに上回った場合、ユーザは通常ではない利用方法をとっていることが考えられる。そこでコンテンツ配信事業者は、中継ノードより照会を求められた際に、コンテンツ検索数とライセンス取得数の差を、不正利用を検出するための一つの指標として用いることができる。
In the case of a content distribution service protected by DRM, the user generally obtains a license from the
コンテンツ検索要求情報を発信したノード装置1から、検索対象のコンテンツの管理ノードまでハッシュ空間上の距離が大きいと、コンテンツ検索要求情報は一もしくは複数のノード装置1を中継して管理ノードに到達することとなる。このとき、第一番目の中継ノードとなるノード装置1の中継制御部26において不正ノードの検出の処理を行う。例えば、受信したコンテンツ検索要求情報に設定されている発信ノードのノードIDを読み出し、送信先選択条件記憶部21に記憶されている送信先選択条件から決定される当該ノードIDの中継先のノードIDが、自ノードIDである場合に、自身が第一番目の中継ノードであると判断することができる。
If the distance in the hash space is large from the
図15〜図17は、ノード装置1の中継制御部26における処理フローを示す図である。
図15において、ノード装置1の情報受信部41は、通信入力部25が通信ネットワークNを介して受信した情報の種別を判断する(ステップS305)。
受信した情報がコンテンツ検索要求情報であった場合(ステップS305:コンテンツ検索要求情報)、異常検出部42は、コンテンツ検索要求情報に記述されているノードIDを読み出す(ステップS310)。異常検出部42は、読み出した発信ノードのノードIDによりブラックリスト記憶部46に記憶されているブラックリストを検索して、登録されているかの否かの照合を行う(ステップS315)。
15 to 17 are diagrams illustrating a processing flow in the
15, the
When the received information is content search request information (step S305: content search request information), the
発信ノードのノードIDがブラックリストに登録されている場合(ステップS320:はい)、ノード装置1は処理を終了する。従って、コンテンツ検索要求情報は転送されず、破棄される。発信ノードのノードIDがブラックリストに登録されていない場合(ステップS320:いいえ)、異常検出部42は、中継履歴管理部43へ発信ノードのノードIDを転送する(ステップS325)。中継履歴管理部43は、発信ノードのノードIDと、現在時刻を示すコンテンツ検索要求情報受信時刻とを対応づけて中継履歴記憶部44に記憶されている中継履歴情報に追加する(ステップS330)。中継履歴管理部43は、中継履歴記憶部44に記憶されている中継履歴情報から、受信した発信ノードのノードIDと、現在の時刻から所定時間内の時刻を示すコンテンツ検索要求情報受信時刻とが設定されているレコードを特定し、この特定したレコードの数を現在までの所定期間内の中継処理数として得ると、当該中継処理数を異常検出部42に転送する(ステップS335)。
If the node ID of the calling node is registered in the black list (step S320: Yes), the
図16において、異常検出部42は、中継履歴管理部43から受信した所定期間内の中継処理数が閾値を超えているかを判断する(ステップS340)。閾値を超えていない場合(ステップS340:いいえ)、続いて、管理ノード判断部47は、自ノード装置1が検索対象のコンテンツの管理ノードであるか否かを判断する(ステップS345)。具体的には、管理ノード判断部47は、コンテンツ検索要求情報から読み出したコンテンツIDを関数計算部18に出力し、関数計算部18は、受信したコンテンツIDのハッシュ値を算出して管理ノード判断部47に出力する。管理ノード判断部47は、この算出されたハッシュ値と、管理ノード条件記憶部19から読み出した管理ノード条件とから、自ノード装置1が当該コンテンツの管理ノードか否かを判断する。例えば、コンテンツIDのハッシュ値をX、管理ノード条件記憶部19から読み出した管理ノードの範囲をYとした場合、自ノードIDのハッシュ値が(X−Y+1)〜(X)の範囲内に含まれていれば、自ノード装置1が管理ノードであると判断する。
In FIG. 16, the
自ノード装置1が管理ノードであると判断した場合(ステップS345:はい)、異常検出部42は、コンテンツ検索要求情報をコンテンツ検索回答情報生成部48に転送する(ステップS350)。コンテンツ検索回答情報生成部48は、コンテンツ管理リスト照合部49へコンテンツ検索要求情報から読み出したコンテンツIDを出力し、コンテンツ管理リスト照合部49は、コンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リストにおいて、受信したコンテンツIDが設定されているレコードを全て特定し、特定したレコードから蓄積ノードのノードID、IPアドレス及びポート番号の組を読み出してコンテンツ検索回答情報生成部48へ返送する(ステップS355)。
When it is determined that the
コンテンツ検索回答情報生成部48は、コンテンツ検索回答情報を設定したメッセージの種別と、コンテンツ検索要求情報から読み出したコンテンツIDと、コンテンツ管理リスト照合部49がから受信した蓄積ノードのノードID、IPアドレス及びポート番号の組とを設定したコンテンツ検索回答情報を生成すると、コンテンツ検索要求情報の発信ノード情報から読み出したIPアドレス及びポート番号を宛先に設定して情報送出部51に出力する(ステップS360)。情報送出部51は、受信したコンテンツ検索回答情報を通信出力部24に転送し(ステップS365)、通信出力部24は、コンテンツ検索回答情報を、通信ネットワークNを介してコンテンツ検索要求情報送信元のノード装置1へ送信する。
The content search response
一方、自身が管理ノードではない場合(ステップS345:いいえ)、異常検出部42は、受信したコンテンツ検索要求情報を情報送出部51に転送し(ステップS370)、情報送出部51は、当該コンテンツ検索要求情報を通信出力部24へ転送する(ステップS365)。通信出力部24は、コンテンツ検索要求情報から取得したコンテンツIDを送信先決定部20へ出力する。送信先決定部20は、管理ノード条件記憶部19に記憶されている管理ノード条件と、コンテンツIDのハッシュ値とから管理ノードを決定すると、ノードリスト記憶部23に記憶されているノードリストから、選択された管理ノードのノード装置1のIPアドレスとポート番号をノードリストから読み出す。通信出力部24は、送信先決定部20により読み出されたIPアドレス及びポート番号を宛先としてコンテンツ検索要求情報を転送する。
On the other hand, when the node itself is not a management node (step S345: No), the
ステップS340において、所定期間内の中継処理数が閾値を超えていると判断した場合(ステップS340:はい)、中継履歴管理部43は、発信ノードのノードIDが設定されているレコードの数を現在までの中継処理数として取得して異常検出部42へ出力し、異常検出部42は、発信ノードのノードID、IPアドレス及びポート番号と、中継履歴管理部43から受信した中継処理数とをノード照会情報生成部50に転送する(ステップS375)。ノード照会情報生成部50は、発信ノードのノードID、IPアドレス及びポート番号、ならびに、中継処理数を設定した照会ノード情報を含み、宛先にノード管理装置8のアドレスを設定したノード照会情報を生成して、情報送出部51に出力する(ステップS380)。情報送出部51は、受信したノード照会情報を通信出力部24に転送し(ステップS365)、通信出力部24は、ノード照会情報を、通信ネットワークNを介してノード管理装置8へ送信する。
In step S340, when it is determined that the number of relay processes within the predetermined period exceeds the threshold (step S340: Yes), the relay
ノード管理装置8は、ノード照会情報を受信すると、ノード照会情報により特定されているノード装置1の不正調査を行い、その結果を示す不正確認として、不正なし通知情報またはブラックリストを返送する。
Upon receiving the node inquiry information, the
図15のステップS395において、受信した情報が不正なし通知情報であった場合(ステップS305:不正なし通知情報)、図16のステップS345からの処理を行なう。
受信した情報がブラックリストであった場合(ステップS305:ブラックリスト)、情報受信部41は、受信したノード照会応答情報をブラックリスト管理部45に転送する(ステップS390)。ブラックリスト管理部45は、ノード照会応答情報に設定されているブラックリストから読み出したノードIDを、ブラックリスト記憶部46に記憶されているブラックリストに追加し(ステップS395)、処理を終了する。従って、コンテンツ検索要求情報は転送されず、破棄される。
In step S395 in FIG. 15, if the received information is notification information without fraud (step S305: notification information without fraud), the processing from step S345 in FIG. 16 is performed.
When the received information is a black list (step S305: black list), the
図17は、図15のステップS305において、受信した情報の種別がコンテンツ蓄積更新情報であると判断された場合のフローである。
情報受信部41が、受信した情報の種別がコンテンツ蓄積更新情報であると判断した場合(ステップS305:コンテンツ蓄積更新情報)、管理ノード判断部47は、上述したステップS345と同様の処理により、自ノード装置が当該コンテンツの管理ノードか否かを判断する(ステップS400)。
FIG. 17 is a flow when it is determined in step S305 of FIG. 15 that the type of received information is content storage update information.
When the
自ノード装置1が管理ノードであると判断した場合(ステップS400:はい)、情報受信部41は、コンテンツ蓄積更新情報をコンテンツ管理リスト管理部27へ転送する(ステップS405)。コンテンツ管理リスト管理部27は、コンテンツ蓄積更新情報に基づいて、コンテンツ管理リスト記憶部28に記憶されているコンテンツ管理リストを更新する。つまり、コンテンツ管理リスト管理部27は、コンテンツ蓄積更新情報に設定されているコンテンツIDがコンテンツ管理リストにまだ登録されていなければ、そのコンテンツIDと、関数計算部18により算出された当該コンテンツIDのハッシュ値を登録する。さらに、コンテンツ管理リスト管理部27は、当該コンテンツIDに対応づけて、コンテンツ蓄積更新情報から読み出した発信ノード情報のノードID、IPアドレス及びポート番号の組をコンテンツ管理リストに登録する。
If it is determined that the
自ノード装置1が管理ノードではないと判断した場合(ステップS400:いいえ)、情報受信部41は、コンテンツ蓄積更新情報を情報送出部51に出力する(ステップS410)。そして、図16に戻り、情報送出部51は、受信したコンテンツ蓄積更新情報を通信出力部24に転送する(ステップS365)。送信先決定部20は、管理ノード条件記憶部19に記憶されている管理ノード条件と、関数計算部18が算出したコンテンツ蓄積更新情報内のコンテンツIDのハッシュ値とから管理ノードを決定すると、ノードリスト記憶部23に記憶されているノードリストから、管理ノードとして決定されたノード装置1のIPアドレスとポート番号をノードリストから読み出し、通信出力部24は、送信先決定部20により読み出されたIPアドレス及びポート番号を宛先としてコンテンツ蓄積更新情報を転送する。
When it is determined that the
以上、実施形態として、放送のダウンロードサービスにおけるP2Pネットワーク上のコンテンツの分散管理の例を示したが、放送だけでなく、有線あるいは無線の通信によるコンテンツ配信においても、ノード装置1およびシステムが同様の構成をとることで、同様の機能を実現することができる。
As described above, an example of distributed management of content on a P2P network in a broadcast download service has been described. However, the
[5.第2の実施形態]
次に、本発明の第2の実施形態について説明する。第2実施形態は、ノード装置1が、自身の管理範囲外のノード装置1宛ての信号を送信する際の宛先となる中継ノードが複数ある場合である。第1実施形態のように中継ノードが固定的である場合、その中継ノードとなるノード装置1がネットワークから離脱してしまうと、コンテンツの検索およびダウンロードができなくなるノード装置1が生ずる。そこで、各ノード装置1が把握する近傍の複数のノード装置1のいずれかで中継を行うことで、情報伝達における信頼性を向上させることができる。
[5. Second Embodiment]
Next, a second embodiment of the present invention will be described. The second embodiment is a case where the
第1実施形態では、中継ノードがノードごとに固定的であるため、1台のノード装置1の全ての中継履歴情報の管理を、1台の中継ノードによって実現することができる。一方、第2実施形態では、中継履歴情報が複数のノード装置1に分散されるため、分散された中継履歴情報を統合的に処理する処理が必要となる。
以下では、第1の実施形態のとの差分を説明する。
In the first embodiment, since relay nodes are fixed for each node, management of all relay history information of one
Below, the difference with 1st Embodiment is demonstrated.
[5.1 ノード装置の構成]
本実施形態によるノード装置1の構成は、図5、図6に示す第1の実施形態と同様である。ただし、送信先選択条件記憶部21には、中継先が複数選択されうる送信先選択条件が記憶される。また、中継履歴管理部43は、近傍のノード装置1へ中継履歴情報を問い合わせる機能をさらに有する。
[5.1 Configuration of node device]
The configuration of the
[5.2 コンテンツダウンロード時のシステム全体の処理手順]
図18は、本実施形態による正常時のコンテンツダウンロードシーケンスを示す。ここでは、ノード装置1aには、中継ノードとなりうるハッシュ空間上の近傍のノード装置1が複数存在し、この近傍のノード装置1のうち、コンテンツ検索要求情報の中継ノードとなるノード装置1をノード装置1b、中継ノード以外のノード装置1をノード装置1b’とする。同図においては、ノード装置1b’を1つのみ記載しているが、複数存在しうる。
また、ノード装置1b及びノード装置1b’は、ノード装置1aのハッシュ空間上の近傍に含まれているため、ノード装置1bとノード装置1b’もハッシュ空間上の近傍のノード装置1である。つまり、ノード装置1bのノードリストには、ノード装置1b’の情報が登録されており、ノード装置1b’のノードリストには、ノード装置1bの情報が登録されている。
[5.2 Processing Procedure of Entire System at Content Download]
FIG. 18 shows a normal content download sequence according to this embodiment. Here, the
Since the
本実施形態では、ノード装置(X)について、送信先選択条件により示されるハッシュ空間上の近傍の範囲をN、つまり、中継ノードとなりうるノード装置1をノード装置(X+1)〜(X+N)とし、ノードリストに保持するハッシュ空間上の近傍のノード装置1をノード装置(X−N+1)〜(X+N)とする。これにより、最もハッシュ空間上の距離が遠い中継ノードにコンテンツ検索要求情報が送信された場合にも、中継ノードは、ノード装置(X)が中継ノードとして選択しうるノード装置1へ中継履歴情報を問い合わせることができる。
In this embodiment, for the node device (X), the range in the vicinity of the hash space indicated by the destination selection condition is N, that is, the
例えば、ノード装置1aのノードIDのハッシュ値をAとした場合、近傍の範囲にないノード装置1への情報を送信する場合の転送先として、ノード装置(A+1)〜ノード装置(A+N)のいずれかが中継ノードとして選択される。ノード装置1aが中継ノードとしてノード装置(A+N)を選択した場合、この選択されたノード装置(A+N)、つまり、ノード装置1bは、ノード装置1aが中継ノードとして選択しうる他のノード装置(A+1)〜ノード装置(A+N−1)へ中継履歴情報を問合せること可能する。さらに、ノード装置1bは、近傍の範囲にないノード装置1への情報を送信する場合の転送先として、ノード装置((A+N)+1)〜ノード装置((A+N)+N)のいずれかを中継ノードとして選択する。つまり、ノード装置1bは、ノード装置(A+1)〜ノード装置(A+2N)を近傍として把握している。ここで、(A+N)=Xとおけば、上述したように、ノード装置(X)は、ノード装置(X−N+1)〜ノード装置(X+N)を近傍として把握しているということになる。
ただし、ノード装置(X)は、中継ノードとして、通常、自身とハッシュ空間上で最も離れた近傍のノード装置1を選択する確率が高い。そのため、ノード装置(X)は、ノード装置ノード装置(X−N+i)〜ノード装置(X+N)(1<i<(N−1))を近傍の範囲とすることでもよい。iは、例えば、所定以上の確率で中継ノードとして選択される範囲が含まれるよう、統計的な実績から決定することができる。
For example, when the hash value of the node ID of the
However, the node device (X) normally has a high probability of selecting the neighboring
ダウンロード指示(ステップS605):図13のステップS105と同様の手順により、ノード装置1aの検索部31は、コンテンツガイド管理部16からダウンロードを要求するコンテンツのコンテンツIDを受信すると、受信したコンテンツID、自身のノードID及びアドレス情報を設定したコンテンツ検索要求情報を生成して通信出力部24へ送信するとともに、関数計算部18へ当該コンテンツIDを出力する。ノード装置1aの送信先決定部20は、送信先選択条件記憶部21から送信先選択条件を読み出すと、ノードリスト記憶部23に記憶されているノードリストに登録されており、かつ、当該送信先選択条件に合致するノード装置1のうち、関数計算部18により算出されたコンテンツIDのハッシュ値に最も近いハッシュ値となるノードIDのノード装置1を中継ノードとして選択し、この選択した中継ノードのIPアドレス及びポート番号を読み出す。あるいは、ノードリストに登録されている中から、関数計算部18により算出されたコンテンツIDのハッシュ値に最も近いハッシュ値となるノードIDのノード装置1を中継ノードとして選択することでもよい。ノード装置1aの通信出力部24は、送信先決定部20により読み出されたIPアドレス及びポート番号を宛先としてコンテンツ検索要求情報を送信する。
Download instruction (step S605): By the same procedure as step S105 in FIG. 13, when the
中継履歴提供(ステップS610):ノード装置1bの通信入力部25は、ノード装置1aからコンテンツ検索要求情報を受信する。ノード装置1bの中継制御部26は、受信したコンテンツ検索要求情報からノード装置1aのノードIDを取得し、この取得したノードIDがブラックリストに含まれていないかを判断する。ノード装置1aのノードIDがブラックリストに含まれる場合は、コンテンツ検索要求情報を破棄する。一方、ノード装置1aのノードIDがブラックリストに含まれない場合、さらに、ノード装置1bの中継制御部26は、自身が記憶している中継履歴情報と、自身のノードIDとを設定した中継履歴照会情報を生成し、通信出力部24へ出力する。送信先決定部20は、ノードリスト記憶部23に記憶されているノードリストから自身の近傍のノード装置1b’のIPアドレス及びポート番号を読み出す。このとき、ノード装置1aのノードIDと送信先選択条件記憶部21内の送信先選択条件とに基づいて中継ノードとして選択しうるノード装置1b’を特定し、IPアドレス及びポート番号を読み出すことでもよい。ノード装置1bの通信出力部24は、送信先決定部20により読み出されたノード装置1b’のIPアドレス及びポート番号を宛先として中継履歴照会情報を送信する。
Relay history provision (step S610): The
中継履歴情報更新・照会(ステップS615):ノード装置1b’の通信入力部25は、ノード装置1bから中継履歴照会情報を受信する。中継制御部26は、中継履歴照会情報から読み出した中継履歴情報とノード装置1bのノードIDとを対応づけて記憶する。さらに、ノード装置1b’の中継制御部26は、自身が記憶している中継履歴情報を読み出すと、読み出した中継履歴情報及び自身のノードIDを設定した中継履歴更新情報を生成する。ノード装置1b’の通信出力部24は、中継制御部26により生成された中継履歴更新情報を、中継履歴照会情報の送信元であるノード装置1bへ送信する。
Relay history information update / inquiry (step S615): The
中継履歴更新(ステップS620):ノード装置1bの通信入力部25は、ノード装置1b’から中継履歴更新情報を受信する。ノード装置1bの中継制御部26は、中継履歴更新情報から読み出した中継履歴情報と、ノード装置1b’のノードIDとを対応づけて記憶する。
Relay history update (step S620): The
中継制御(ステップS625):ノード装置1bの中継制御部26は、ノード装置1bの中継履歴情報及びノード装置1b’の中継履歴情報から、ノード装置1aのノードIDと、現在から所定時間内の時刻を示すコンテンツ検索要求情報受信時刻とが設定されているレコードを特定し、この特定したレコードの数を所定時間内の合計の中継処理数として得ると、当該中継処理数を異常検出部42に出力する。異常検出部42において、所定時間内の中継処理数が所定の閾値以下であると判断された場合、ノード装置1bの中継制御部26は、通信出力部24へ受信したコンテンツ検索要求情報の転送を指示する。転送先の選択は、ステップS605においてノード装置1aがコンテンツ検索要求情報の中継ノードを決定したときの処理と同様である。つまり、ノード装置1bの送信先決定部20は、ノードリストに登録されている、送信先選択条件に合致するノード装置1のうち、コンテンツIDのハッシュ値に最も近いハッシュ値となるノードIDのノード装置1を中継ノードとして選択するか、ノードリストに登録されている中から、コンテンツIDのハッシュ値に最も近いハッシュ値となるノードIDのノード装置1を中継ノードとして選択し、IPアドレス及びポート番号を読み出す。ノード装置1bの通信出力部24は、送信先決定部20により読み出されたIPアドレス及びポート番号を宛先とし、ノード装置1cへコンテンツ検索要求情報を送信する。
Relay control (step S625): The
ステップS630以降の処理は、図13のステップS115以降の処理と同様である。 The processing after step S630 is the same as the processing after step S115 in FIG.
図19は、本実施形態による不正検出時のコンテンツダウンロードシーケンスシーケンスを示す。
同図においてステップS705〜ステップS720までの処理は、図18のステップS605〜ステップS620までの処理と同様である。
FIG. 19 shows a content download sequence sequence when fraud is detected according to the present embodiment.
In the figure, the processing from step S705 to step S720 is the same as the processing from step S605 to step S620 in FIG.
中継制御(ステップS725):ノード装置1bは、図19のステップS625と同様にして得たノード装置1aの所定時間内の合計の中継処理数を異常検出部42に出力する。所定時間内の中継処理数が所定の閾値を越えている場合、異常検出部42は、ノード装置1aに不正の疑いがあると判断する。ノード装置1bの中継制御部26は、コンテンツ検索要求情報から読み出したコンテンツIDと、ノード装置1bの中継履歴情報及びノード装置1b’の中継履歴情報から得た現在までの中継処理数とを設定したノード照会情報を生成し、通信出力部24は、中継制御部26により生成されたノード照会情報をノード管理装置8へ送信する。
Relay control (step S725): The
ステップS730〜S745の処理は、図14のステップS215〜225の処理と同様である。だだし、ステップS735において、ノード管理装置8は、ノード装置1aのノードIDを設定したブラックリストをノード装置1b及びノード装置1b’にも送信する。
The processes in steps S730 to S745 are the same as the processes in steps S215 to 225 in FIG. However, in step S735, the
不正ノード把握(ステップS750):ノード装置1b’の通信入力部25は、ノード管理装置8からブラックリストを受信する。ノード装置1b’の中継制御部26は、現在保持しているブラックリストに、ノード管理装置8から受信したブラックリストに記述されているノード装置1aのノードIDを追加する。
このように、ノード装置1aの中継ノードとなりうる近傍の複数のノード装置1においてブラックリストの更新を行うことで、不正ノードによるコンテンツの取得を不可能にする。
Unauthorized Node Understanding (Step S750): The
In this way, the blacklist is updated in a plurality of neighboring
なお、各ノード装置1は、定期的に中継履歴情報を送受信し、更新することによって、最新の中継履歴情報を管理する。つまり、各ノード装置1の中継履歴管理部43は、中継履歴記憶部44から読み出した中継履歴情報を、ノードリストに記憶されているアドレス情報を宛先として用いて近傍のノード装置1と定期的に送受信する。各ノード装置1の中継履歴管理部43は、他のノード装置1から受信した中継履歴情報を中継履歴記憶部44に書き込み更新する。
Each
図20は、本実施形態によるノード装置1の中継制御部26における処理フローを示す図である。以下では、図15〜図17に示す第1の実施形態の処理フローとの差分を説明する。
FIG. 20 is a diagram illustrating a processing flow in the
同図において、ノード装置1の情報受信部41は、受信した情報の種別がコンテンツ検索要求情報であるか、コンテンツ蓄積更新情報であるか、中継履歴照会情報であるかを判断する(ステップS805)。
ステップS805において、受信した情報の種別がコンテンツ検索要求情報であった場合、図15のステップS310〜ステップS330と同様の処理を行なう(ステップS810〜ステップS830)。
In the figure, the
If the received information type is content search request information in step S805, the same processing as in steps S310 to S330 in FIG. 15 is performed (steps S810 to S830).
続いて、ノード装置1の中継履歴管理部43は、中継履歴記憶部44に記憶されている中継履歴情報と、自身のノードIDを設定した中継履歴照会情報を生成し、通信出力部24へ出力する(ステップS835)。送信先決定部20は、ノードリスト記憶部23に記憶されているノードリストから自身の近傍のノード装置1、あるいは、送信ノードが中継ノードとして選択しうるノード装置1のIPアドレス及びポート番号を読み出す。ノード装置1bの通信出力部24は、送信先決定部20により読み出されたノード装置1のIPアドレス及びポート番号を宛先として中継履歴照会情報を送信する。
Subsequently, the relay
通信入力部25は、通信ネットワークNを介して、他のノード装置1から中継履歴更新情報を受信し、情報受信部41に出力する(ステップS840)。情報受信部41は、中継履歴更新情報を中継履歴管理部43に出力し、中継履歴管理部43は、中継履歴更新情報から読み出した中継履歴情報及びノードIDを対応づけて中継履歴記憶部44に書き込む(ステップS845)。中継履歴管理部43は、中継履歴記憶部44に記憶されている自身の中継履歴情報及び他のノード装置1より受信した中継履歴情報から、発信ノードのノードIDと、現在の時刻から所定時間内の時刻を示すコンテンツ検索要求情報受信時刻とが設定されているレコードを特定し、この特定したレコードの数を中継処理数として得ると、当該中継処理数を異常検出部42に転送する(ステップS850)。以降は、図16に示す第1の実施形態と同様の処理を行なう。ただし、ステップS370の後、ステップS365においてコンテンツ検索要求情報を転送する場合、送信先決定部20は、送信先選択条件記憶部21に記憶されている送信先選択条件と、コンテンツIDのハッシュ値とから転送先の中継ノードのノードIDのハッシュ値の範囲を決定し、ノード記憶部23に記憶されているノードリストに登録されている中から、決定したハッシュ値の範囲に含まれる、もっとも大きいハッシュ値のレコードを特定して、特定したレコードからIPアドレス及びポート番号を読み出す。
The
また、ステップS805において、受信した情報が不正なし通知情報であると判断された場合(ステップS805:不正なし通知情報)、図16のステップS345からの処理を行なう。 If it is determined in step S805 that the received information is notification information without fraud (step S805: notification information without fraud), the processing from step S345 in FIG. 16 is performed.
また、ステップS805において、受信した情報がブラックリストであると判断された場合(ステップS805:ブラックリスト)、図15のステップS390〜S395と同様の処理を行なう(ステップS860〜S865)。 If it is determined in step S805 that the received information is a black list (step S805: black list), processing similar to steps S390 to S395 in FIG. 15 is performed (steps S860 to S865).
また、ステップS805において、受信した情報の種別がコンテンツ蓄積更新情報であると判断された場合(ステップS805:コンテンツ蓄積更新情報)、図17のステップS400からの処理を行なう。ただし、ステップS410の処理の後、ステップS365においてコンテンツ蓄積更新情報を転送する場合、送信先決定部20は、上述したコンテンツ検索要求情報の転送と同様に送信先を決定する。
If it is determined in step S805 that the type of received information is content storage update information (step S805: content storage update information), the processing from step S400 in FIG. 17 is performed. However, when the content storage update information is transferred in step S365 after the process of step S410, the transmission
また、ステップS805において、受信した情報の種別が中継履歴照会情報であると判断された場合(ステップS805:中継履歴照会情報)、通信入力部25は、中継履歴照会情報を情報受信部41に出力する。情報受信部41は、中継履歴照会情報を中継履歴管理部43に出力し、中継履歴管理部43は、中継履歴照会情報から読み出した中継履歴情報とノードIDとを対応づけて中継履歴記憶部44に書き込む(ステップS870)。ノード装置1の中継履歴管理部43は、中継履歴記憶部44から読み出した中継履歴情報と、自身のノードIDとを設定した中継履歴照会情報を生成し、情報送出部51に出力する(ステップS875)。情報送出部51は、受信した中継履歴照会情報を通信出力部24に転送し(ステップS880)、通信出力部24は、中継履歴照会情報を中継履歴照会情報の送信元のノード装置1のIPアドレス及びポート番号を宛先として送信する。
If it is determined in step S805 that the type of the received information is relay history inquiry information (step S805: relay history inquiry information), the
[6.効果]
上述した実施形態によれば、P2Pネットワークを用いてコンテンツを分散管理するネットワークにおいて、コンテンツの所在の検索時に、検索要求の発信ノードから検索対象コンテンツの管理ノードに至る経路上に存在する中継ノードが、検索要求の中継履歴を発信ノードごとに管理する。そして、中継ノードは、この中継履歴に基づいて、異常な処理を実行しているノード装置を検出し、検出したノード装置の情報を出力することができる。そして、この出力に対応してコンテンツの不正利用の有無を確認し、不正利用が明らかになった場合にはブラックリストに登録し、以降、検索要求の中継を行なわないようにすることができる。これにより、不正なノード装置によるコンテンツの取得を停止することができるため、不正利用されるコンテンツの数を抑制することができる。
[6. effect]
According to the embodiment described above, in a network in which content is distributedly managed using a P2P network, when searching for the location of the content, there is a relay node that exists on the path from the search request source node to the search target content management node. The search request relay history is managed for each source node. The relay node can detect a node device that is executing an abnormal process based on the relay history and output information of the detected node device. Then, in response to this output, whether or not the content is illegally used is confirmed. If the illegal use becomes clear, it is registered in the black list, and thereafter, the search request is not relayed. Thereby, since the acquisition of content by an unauthorized node device can be stopped, the number of content that is illegally used can be suppressed.
多くのノード装置から構成されるP2Pネットワークでは、管理者への負荷を集中させずに、DHTを用いてコンテンツを分散管理する構造型を適用することが多い。このような構造型のP2Pの場合、各ノード装置は、自身の近傍の範囲のノード装置しか把握していないため、コンテンツをダウンロードするためには、必ずコンテンツの所在の検索を行うことになる。また、検索要求を中継するノード装置は、近傍のノード装置に限定される。そこで、発信ノードの近傍のノード装置、つまり、中継ノードにおいて検索の中継回数を制限することにより、コンテンツが実際にダウンロードされる前の段階において、不正なノード装置を検出して、この不正なノード装置がコンテンツを取得できないようにする。従って、不正なノード装置がDRMを不正に解除できた場合であっても、コンテンツ自体を取得することができないため、コンテンツを不正に流通させることはできない。 In a P2P network composed of many node devices, a structural type in which content is distributed and managed using DHT is often applied without concentrating the load on the administrator. In the case of such a structure type P2P, each node device knows only the node devices in the vicinity of itself, and therefore, in order to download the content, the location of the content is always searched. Further, node devices that relay search requests are limited to nearby node devices. Therefore, by limiting the number of search relays in the node device in the vicinity of the originating node, that is, in the relay node, an unauthorized node device is detected before the content is actually downloaded, and this unauthorized node is detected. Prevent the device from acquiring content. Therefore, even if an unauthorized node device can illegally release DRM, the content itself cannot be acquired, and thus the content cannot be distributed illegally.
なお、上述のノード装置1、コンテンツ配信装置7、ノード管理装置8及びライセンス配信装置9は、内部にコンピュータシステムを有している。そして、ノード装置1、コンテンツ配信装置7、ノード管理装置8及びライセンス配信装置9の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、CPU及び各種メモリやOS、周辺機器等のハードウェアを含むものである。
The
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW system is used.
The “computer-readable recording medium” refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, and a CD-ROM, and a storage device such as a hard disk built in the computer system. Furthermore, the “computer-readable recording medium” dynamically holds a program for a short time like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line. In this case, a volatile memory in a computer system serving as a server or a client in that case, and a program that holds a program for a certain period of time are also included. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.
1…ノード装置
11…放送受信部
12…コンテンツ管理部
13…コンテンツ記憶部
14…ダウンロードリスト管理部
15…ダウンロードリスト記憶部
16…コンテンツガイド管理部
17…コンテンツガイド記憶部
18…関数計算部
19…管理ノード条件記憶部
20…送信先決定部
21…送信先選択条件記憶部
22…ノードリスト管理部
23…ノードリスト記憶部
24…通信出力部
25…通信入力部
26…中継制御部
27…コンテンツ管理リスト管理部
28…コンテンツ管理リスト記憶部
29…入力部
30…表示部
31…検索部
41…情報受信部
42…異常検出部
43…中継履歴管理部
44…中継履歴記憶部
45…ブラックリスト管理部
46…ブラックリスト記憶部
47…管理ノード判断部
48…コンテンツ検索回答情報生成部
49…コンテンツ管理リスト照合部
50…ノード照会情報生成部
51…情報送出部
7…コンテンツ配信装置
8…ノード管理装置
9…ライセンス配信装置
DESCRIPTION OF
Claims (5)
前記ネットワークを介して接続される他の前記ノード装置の通信アドレスを設定したノードリストを記憶するノードリスト記憶部と、
他の前記ノード装置の識別情報と、コンテンツ検索要求情報の受信時刻とを対応づけた中継履歴情報を記憶する中継履歴記憶部と、
前記ネットワークを介して接続される他の前記ノード装置から、検索対象のコンテンツの識別情報と当該他のノード装置の識別情報とを含んだコンテンツ検索要求情報を受信する通信入力部と、
前記通信入力部が受信した前記コンテンツ検索要求情報を受信した時刻と、当該コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報とを対応づけた中継履歴情報を前記中継履歴記憶部に書き込むとともに、当該中継履歴記憶部に記憶されている前記中継履歴情報から前記他のノード装置の識別情報に対応した中継処理数を取得する中継履歴管理部と、
前記中継履歴管理部が取得した中継処理数が所定の閾値を超えているかを判断する異常検出部と、
前記異常検出部により前記中継処理数が所定の閾値を超えていると判断された場合に、前記コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報を出力する情報送出部と、
前記所定の規則と、前記コンテンツ検索要求情報に設定されている前記検索対象のコンテンツの識別情報とに基づいて、当該ノード装置が当該検索対象のコンテンツの所在を管理するノード装置であるか否かを判断する管理ノード判断部と、
前記異常検出部により前記中継処理数が所定の閾値を超えていないと判断され、かつ、前記管理ノード判断部により当該ノード装置が前記検索対象のコンテンツの所在を管理するノード装置ではないと判断された場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信する通信出力部と、
を備えることを特徴とするノード装置。 The node device that constitutes a content distribution management system including a plurality of node devices and a network that connects the plurality of node devices, and that determines a node device that manages the location of content according to a predetermined rule,
A node list storage unit for storing a node list in which communication addresses of other node devices connected via the network are set;
A relay history storage unit that stores relay history information in which the identification information of the other node device is associated with the reception time of the content search request information;
A communication input unit that receives content search request information including identification information of content to be searched and identification information of the other node device from the other node device connected via the network;
The relay history information in which the time when the content search request information received by the communication input unit is received and the identification information of the other node device read from the content search request information is associated is written in the relay history storage unit. A relay history management unit that acquires the number of relay processes corresponding to the identification information of the other node device from the relay history information stored in the relay history storage unit,
An abnormality detection unit that determines whether the number of relay processes acquired by the relay history management unit exceeds a predetermined threshold;
An information sending unit that outputs the identification information of the other node device read from the content search request information when the abnormality detection unit determines that the number of relay processes exceeds a predetermined threshold;
Whether the node device is a node device that manages the location of the search target content based on the predetermined rule and the identification information of the search target content set in the content search request information A management node determination unit for determining
The abnormality detection unit determines that the number of relay processes does not exceed a predetermined threshold, and the management node determination unit determines that the node device is not a node device that manages the location of the content to be searched. A communication output unit that transmits the content search request information with the communication address read from the node list stored in the node list storage unit as a destination;
A node device comprising:
前記通信出力部は、前記情報出力部が出力した前記他のノード装置の識別情報に対応して不正がないことを示す情報を受信した場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信することを特徴とする請求項1に記載のノード装置。 When the abnormality detection unit receives information indicating that the other node device is invalid in response to the identification information of the other node device output by the information output unit, the abnormality detection unit displays the content search request information. Destroy,
When the communication output unit receives information indicating that there is no fraud corresponding to the identification information of the other node device output by the information output unit, the node stored in the node list storage unit The node device according to claim 1, wherein the content search request information is transmitted with the communication address read from the list as a destination.
不正な前記ノード装置の識別情報を受信し、受信した当該ノード装置の識別情報を前記ブラックリスト記憶部に書き込むブラックリスト管理部とをさらに備え、
前記異常検出部は、前記コンテンツ検索要求情報に設定されている前記他のノード装置の識別情報が前記ブラックリスト記憶部に記憶されている場合に、当該コンテンツ検索要求情報を破棄する、
ことを特徴とする請求項1または2に記載のノード装置。 A blacklist storage unit for storing identification information of the unauthorized node device;
A black list management unit that receives the identification information of the unauthorized node device and writes the received identification information of the node device to the black list storage unit;
The abnormality detection unit discards the content search request information when the identification information of the other node device set in the content search request information is stored in the blacklist storage unit.
The node device according to claim 1 or 2, characterized in that
前記中継履歴管理部は、前記通信出力部が送信した中継履歴照会に対応して中継履歴情報を受信し、受信した当該中継履歴情報、及び、前記中継履歴記憶部に記憶されている中継履歴情報から、前記コンテンツ検索要求情報に設定されている前記他のノード装置の識別情報に対応した中継処理数を取得する、
ことを特徴とする請求項1から請求項3のいずれかの項に記載のノード装置。 The communication output unit transmits a relay history query with the communication address read from the node list stored in the node list storage unit as a destination,
The relay history management unit receives relay history information corresponding to the relay history inquiry transmitted by the communication output unit, and the received relay history information and the relay history information stored in the relay history storage unit To obtain the number of relay processes corresponding to the identification information of the other node device set in the content search request information,
The node device according to claim 1, wherein the node device is a node device.
前記ネットワークを介して接続される他の前記ノード装置の通信アドレスを設定したノードリストを記憶するノードリスト記憶部、
他の前記ノード装置の識別情報と、コンテンツ検索要求情報の受信時刻とを対応づけた中継履歴情報を記憶する中継履歴記憶部、
前記ネットワークを介して接続される他の前記ノード装置から、検索対象のコンテンツの識別情報と当該他のノード装置の識別情報とを含んだコンテンツ検索要求情報を受信する通信入力部、
前記通信入力部が受信した前記コンテンツ検索要求情報を受信した時刻と、当該コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報とを対応づけた中継履歴情報を前記中継履歴記憶部に書き込むとともに、当該中継履歴記憶部に記憶されている前記中継履歴情報から前記他のノード装置の識別情報に対応した中継処理数を取得する中継履歴管理部、
前記中継履歴管理部が取得した中継処理数が所定の閾値を超えているかを判断する異常検出部、
前記異常検出部により前記中継処理数が所定の閾値を超えていると判断された場合に、前記コンテンツ検索要求情報から読み出した前記他のノード装置の識別情報を出力する情報送出部、
前記所定の規則と、前記コンテンツ検索要求情報に設定されている前記検索対象のコンテンツの識別情報とに基づいて、当該ノード装置が当該検索対象のコンテンツの所在を管理するノード装置であるか否かを判断する管理ノード判断部、
前記異常検出部により前記中継処理数が所定の閾値を超えていないと判断され、かつ、前記管理ノード判断部により当該ノード装置が前記検索対象のコンテンツの所在を管理するノード装置ではないと判断された場合に、前記ノードリスト記憶部に記憶されている前記ノードリストから読み出した前記通信アドレスを宛先として、前記コンテンツ検索要求情報を送信する通信出力部、
として機能させることを特徴とするコンピュータプログラム。 A computer used as the node device that constitutes a content distribution management system including a plurality of node devices and a network that connects the plurality of node devices, and that determines a node device that manages the location of content according to a predetermined rule,
A node list storage unit for storing a node list in which communication addresses of other node devices connected via the network are set;
A relay history storage unit that stores relay history information in which the identification information of the other node device is associated with the reception time of the content search request information;
A communication input unit for receiving content search request information including identification information of content to be searched and identification information of the other node device from the other node device connected via the network;
The relay history information in which the time when the content search request information received by the communication input unit is received and the identification information of the other node device read from the content search request information is associated is written in the relay history storage unit. A relay history management unit that acquires the number of relay processes corresponding to the identification information of the other node device from the relay history information stored in the relay history storage unit,
An abnormality detection unit for determining whether the number of relay processes acquired by the relay history management unit exceeds a predetermined threshold;
An information sending unit that outputs the identification information of the other node device read out from the content search request information when the abnormality detection unit determines that the number of relay processes exceeds a predetermined threshold;
Whether the node device is a node device that manages the location of the search target content based on the predetermined rule and the identification information of the search target content set in the content search request information A management node determination unit for determining
The abnormality detection unit determines that the number of relay processes does not exceed a predetermined threshold, and the management node determination unit determines that the node device is not a node device that manages the location of the content to be searched. A communication output unit that transmits the content search request information with the communication address read from the node list stored in the node list storage unit as a destination,
A computer program that functions as a computer program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009095934A JP5280284B2 (en) | 2009-04-10 | 2009-04-10 | Node device and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009095934A JP5280284B2 (en) | 2009-04-10 | 2009-04-10 | Node device and computer program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010251836A true JP2010251836A (en) | 2010-11-04 |
JP5280284B2 JP5280284B2 (en) | 2013-09-04 |
Family
ID=43313724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009095934A Expired - Fee Related JP5280284B2 (en) | 2009-04-10 | 2009-04-10 | Node device and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5280284B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018160788A (en) * | 2017-03-22 | 2018-10-11 | 富士通株式会社 | Communication control program, communication control method, and communication control device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007067521A (en) * | 2005-08-29 | 2007-03-15 | Nec Corp | Downloading device, streaming content download system, downloading method, and downloading program |
JP2007200203A (en) * | 2006-01-30 | 2007-08-09 | Brother Ind Ltd | Information distribution system, re-registration message transmission method, node device, and node processing program |
-
2009
- 2009-04-10 JP JP2009095934A patent/JP5280284B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007067521A (en) * | 2005-08-29 | 2007-03-15 | Nec Corp | Downloading device, streaming content download system, downloading method, and downloading program |
JP2007200203A (en) * | 2006-01-30 | 2007-08-09 | Brother Ind Ltd | Information distribution system, re-registration message transmission method, node device, and node processing program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018160788A (en) * | 2017-03-22 | 2018-10-11 | 富士通株式会社 | Communication control program, communication control method, and communication control device |
Also Published As
Publication number | Publication date |
---|---|
JP5280284B2 (en) | 2013-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8713145B2 (en) | Information distribution system, information distributing method, node, and recording medium | |
US8478893B2 (en) | Data transmission to offline recipient nodes in a distributed network | |
JP5141494B2 (en) | Content distributed storage system, special content acquisition method, node device, and node processing program | |
US8321586B2 (en) | Distributed storage system, node device, recording medium in which node processing program is recorded, and address information change notifying method | |
US20100008509A1 (en) | Communication apparatus, key server, and management server | |
US20090138714A1 (en) | Communication apparatus, key server, management server, communication server, content distribution system, communication method, and recording medium | |
JP2009169861A (en) | Authentication system, authentication device and computer program | |
WO2007083531A1 (en) | Content distribution system, node device, its information processing method, and recording medium containing the program | |
US7853718B2 (en) | Information delivery system, reregistration message sending method, node device, and recording medium recording node processing program | |
JP5208549B2 (en) | COMMUNICATION DEVICE, SYSTEM, TRANSMISSION METHOD, AND PROGRAM | |
JP4692414B2 (en) | Communication system, content data transmission availability determination method, node device, node processing program, etc. | |
KR102063681B1 (en) | Communicaton method of administration node, requesting node and normal node deleting unvalid contents using contents revocation list in a contents centric network | |
KR20160000731A (en) | Method for Sharing a file by Peer-to-Peer and System thereof | |
US9277025B2 (en) | Distributed content caching | |
JP2009272927A (en) | Communication apparatus, server, and program | |
JP5280284B2 (en) | Node device and computer program | |
CN115225934B (en) | Video playing method, system, electronic device and storage medium | |
JP2020092318A (en) | Relay device, relay method, and computer program | |
JP2009153091A (en) | Communication apparatus, key server, management server, communication server, communication method, and program | |
JP5026388B2 (en) | Node device and computer program | |
JP4926023B2 (en) | Content receiving terminal, content distribution terminal, external server device, peer-to-peer network system, and computer program | |
KR20120136956A (en) | Method of providing a contents service in p2p network through selection of a sender | |
KR101231352B1 (en) | Method of providing an incentive service in a p2p network | |
JP2012178641A (en) | Information communication system, information processing method, node device, and program | |
JP4736527B2 (en) | Distribution system, node device, data packet complementing method, etc. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121018 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121226 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130423 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130522 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |